Artificial-intelligence-quick-guide
人工知能-概要
コンピュータまたはマシンの発明以来、さまざまなタスクを実行する能力は指数関数的に成長しました。 人間は、さまざまな作業領域、速度の向上、時間に関するサイズの縮小という点で、コンピューターシステムの能力を開発してきました。
_Artificial Intelligence_という名前のコンピューターサイエンスの部門は、人間と同じくらいインテリジェントなコンピューターまたはマシンの作成を追求しています。
人工知能とは何ですか?
人工知能の父、ジョン・マッカーシーによると、それは「インテリジェントな機械、特にインテリジェントなコンピュータープログラムを作る科学と工学」です。
人工知能は、インテリジェントな人間が考えるのと同じ方法で、*コンピューター、コンピューター制御ロボット、またはソフトウェアにインテリジェントに思考させる*方法です。
AIは、人間の脳がどのように考え、問題を解決しようとして人間がどのように学び、決定し、働くかを研究し、この研究の結果をインテリジェントなソフトウェアとシステムの開発の基礎として使用することによって達成されます。
AIの哲学
人間の好奇心であるコンピューターシステムの力を利用しながら、「機械は人間のように考えて振る舞えますか?」_
したがって、AIの開発は、人間で高く評価されていると見なされるマシンで同様のインテリジェンスを作成することから始まりました。
AIの目標
- *エキスパートシステムを作成するには-インテリジェントな動作を示し、学習、実証、説明、およびユーザーへのアドバイスを行うシステム。
- マシンにヒューマンインテリジェンスを実装するには-人間のように理解、思考、学習、行動するシステムを作成します。
AIに貢献するものは何ですか?
人工知能は、コンピューターサイエンス、生物学、心理学、言語学、数学、工学などの分野に基づいた科学技術です。 AIの主な目的は、推論、学習、問題解決など、人間の知能に関連するコンピューター機能の開発です。
以下の領域のうち、1つまたは複数の領域がインテリジェントシステムの構築に貢献できます。
AIを使用した場合と使用しない場合のプログラミング
AIを使用した場合と使用しない場合のプログラミングは、次の点で異なります-
Programming Without AI | Programming With AI |
---|---|
A computer program without AI can answer the *specific *questions it is meant to solve. | A computer program with AI can answer the* generic* questions it is meant to solve. |
Modification in the program leads to change in its structure. | AI programs can absorb new modifications by putting highly independent pieces of information together. Hence you can modify even a minute piece of information of program without affecting its structure. |
Modification is not quick and easy. It may lead to affecting the program adversely. | Quick and Easy program modification. |
AIテクニックとは何ですか?
現実の世界では、知識にはいくつかの歓迎されない特性があります-
- そのボリュームは想像を絶するほど大きなものです。
- よく組織化されておらず、フォーマットも整っていません。
- それは絶えず変化し続けます。
AIテクニックは、次のように効率的に知識を整理して使用する方法です-
- それを提供する人々が知覚できるはずです。
- エラーを修正するために簡単に変更できる必要があります。
- 不完全または不正確ですが、多くの状況で役立つはずです。
AI技術は、搭載されている複雑なプログラムの実行速度を向上させます。
AIの応用
AIは次のようなさまざまな分野で支配的です-
- ゲーム-AIはチェス、ポーカー、三目並べなどの戦略的なゲームで重要な役割を果たします。マシンでは、ヒューリスティックな知識に基づいて多数の可能な位置を考えることができます。
- 自然言語処理-人間が話す自然言語を理解するコンピューターと対話することが可能です。
- エキスパートシステム-推論と助言を与えるために、マシン、ソフトウェア、および特別な情報を統合するいくつかのアプリケーションがあります。 ユーザーに説明とアドバイスを提供します。
- ビジョンシステム-これらのシステムは、コンピューター上の視覚入力を理解、解釈、および理解します。 例えば、
- 偵察機は写真を撮ります。写真は、空間情報や地域の地図を把握するために使用されます。
- 医師は臨床エキスパートシステムを使用して患者を診断します。
- 警察は、法医学者によって作成された保存された肖像画で犯罪者の顔を認識することができるコンピューターソフトウェアを使用します。
- 音声認識-一部のインテリジェントシステムは、人間が話しかけている間、文とその意味に関して言語を聞き取り、理解することができます。 さまざまなアクセント、俗語、背景のノイズ、風邪による人間のノイズの変化などを処理できます。
- 手書き認識-手書き認識ソフトウェアは、紙にペンで、または画面にスタイラスで書かれたテキストを読み取ります。 文字の形状を認識し、編集可能なテキストに変換できます。
- インテリジェントロボット-ロボットは人間によって与えられたタスクを実行できます。 彼らは、光、熱、温度、動き、音、バンプ、圧力などの現実世界からの物理データを検出するセンサーを持っています。 効率的なプロセッサ、複数のセンサー、巨大なメモリを備えており、インテリジェンスを示します。 さらに、彼らは自分の過ちから学ぶことができ、新しい環境に適応することができます。
AIの歴史
これが20世紀のAIの歴史です-
Year | Milestone/Innovation |
---|---|
1923 | Karel Čapek play named “Rossum’s Universal Robots” (RUR) opens in London, first use of the word "robot" in English. |
1943 | Foundations for neural networks laid. |
1945 | Isaac Asimov, a Columbia University alumni, coined the term Robotics. |
1950 | Alan Turing introduced Turing Test for evaluation of intelligence and published Computing Machinery and Intelligence. Claude Shannon published Detailed Analysis of Chess Playing as a search. |
1956 | John McCarthy coined the term Artificial Intelligence. Demonstration of the first running AI program at Carnegie Mellon University. |
1958 | John McCarthy invents LISP programming language for AI. |
1964 | Danny Bobrow’s dissertation at MIT showed that computers can understand natural language well enough to solve algebra word problems correctly. |
1965 | Joseph Weizenbaum at MIT built ELIZA, an interactive problem that carries on a dialogue in English. |
1969 | Scientists at Stanford Research Institute Developed Shakey, a robot, equipped with locomotion, perception, and problem solving. |
1973 | The Assembly Robotics group at Edinburgh University built Freddy, the Famous Scottish Robot, capable of using vision to locate and assemble models. |
1979 | The first computer-controlled autonomous vehicle, Stanford Cart, was built. |
1985 | Harold Cohen created and demonstrated the drawing program, Aaron. |
1990 |
Major advances in all areas of AI −
|
1997 | The Deep Blue Chess Program beats the then world chess champion, Garry Kasparov. |
2000 | Interactive robot pets become commercially available. MIT displays Kismet, a robot with a face that expresses emotions. The robot Nomad explores remote regions of Antarctica and locates meteorites. |
人工知能-インテリジェントシステム
人工知能を勉強しながら、知性とは何かを知る必要があります。 この章では、インテリジェンスのアイデア、種類、およびインテリジェンスのコンポーネントについて説明します。
インテリジェンスとは?
システムが関係や類推を計算、推論、知覚し、経験から学習し、メモリから情報を保存および取得し、問題を解決し、複雑なアイデアを理解し、自然言語を流useに使用し、新しい状況を分類、一般化、および適応させる能力
知能の種類
アメリカの発達心理学者であるハワード・ガードナーによって説明されているように、知性は多面的です-
Intelligence | Description | Example |
---|---|---|
Linguistic intelligence | The ability to speak, recognize, and use mechanisms of phonology (speech sounds), syntax (grammar), and semantics (meaning). | Narrators, Orators |
Musical intelligence | The ability to create, communicate with, and understand meanings made of sound, understanding of pitch, rhythm. | Musicians, Singers, Composers |
Logical-mathematical intelligence | The ability of use and understand relationships in the absence of action or objects. Understanding complex and abstract ideas. | Mathematicians, Scientists |
Spatial intelligence | The ability to perceive visual or spatial information, change it, and re-create visual images without reference to the objects, construct 3D images, and to move and rotate them. | Map readers, Astronauts, Physicists |
Bodily-Kinesthetic intelligence | The ability to use complete or part of the body to solve problems or fashion products, control over fine and coarse motor skills, and manipulate the objects. | Players, Dancers |
Intra-personal intelligence | The ability to distinguish among one’s own feelings, intentions, and motivations. | Gautam Buddhha |
Interpersonal intelligence | The ability to recognize and make distinctions among other people’s feelings, beliefs, and intentions. | Mass Communicators, Interviewers |
マシンまたはシステムは、少なくとも1つ、多くてもすべてのインテリジェンスが搭載されている場合、*人工的に*インテリジェントであると言えます。
構成されているインテリジェンスとは何ですか?
知性は無形です。 それはで構成されています-
- 推論
- 学び
- 問題解決
- 知覚
- 言語知能
すべてのコンポーネントを簡単に見てみましょう-
- 推論-判断、意思決定、予測の基礎を提供できるプロセスのセットです。 大きく2つのタイプがあります-
Inductive Reasoning | Deductive Reasoning |
---|---|
It conducts specific observations to makes broad general statements. | It starts with a general statement and examines the possibilities to reach a specific, logical conclusion. |
Even if all of the premises are true in a statement, inductive reasoning allows for the conclusion to be false. | If something is true of a class of things in general, it is also true for all members of that class. |
Example − "Nita is a teacher. Nita is studious. Therefore, All teachers are studious." | Example − "All women of age above 60 years are grandmothers. Shalini is 65 years. Therefore, Shalini is a grandmother." |
- 学習-何かを勉強、練習、教えられたり、体験したりして知識やスキルを獲得する活動です。 学習は研究の主題の認識を高めます。 +学習能力は、人間、一部の動物、およびAI対応システムに備わっています。 学習は次のように分類されます-
- 聴覚学習-リスニングとヒアリングによる学習です。 たとえば、録音された音声講義を聞く学生。
- エピソード学習-目撃または経験した一連の出来事を思い出して学習します。 これは線形で整然としています。
- 運動学習-筋肉の正確な動きによる学習です。 たとえば、オブジェクトの選択、書き込みなど。
- 観察学習-他人を見て模倣することで学習する。 たとえば、子供は親をまねて学習しようとします。
- 知覚学習-以前に見た刺激を認識することを学習しています。 たとえば、オブジェクトと状況の識別と分類。
- 関係学習-絶対的な特性ではなく、関係特性に基づいてさまざまな刺激を区別する学習が含まれます。 たとえば、塩を大さじ1杯加えて調理したときに、最後に塩辛いジャガイモを調理したときに「少し少ない」塩を追加します。
- 空間学習-画像、色、地図などの視覚刺激による学習です。 たとえば、実際に道路をたどる前に、人はロードマップを作成できます。
- 刺激応答学習-特定の刺激が存在するときに特定の動作を実行することを学習しています。 たとえば、犬はドアベルを聞いて耳を上げます。
- 問題解決-既知または未知のハードルによってブロックされている何らかのパスをたどることにより、現在の状況から目的のソリューションを認識して到達しようとするプロセスです。 +問題解決には*意思決定*も含まれます。これは、目的に到達するために複数の選択肢から最適な選択肢を選択するプロセスです。
- 知覚-感覚情報を取得、解釈、選択、整理するプロセスです。 +知覚は*センシング*を前提としています。 人間では、知覚は感覚器官によって助けられます。 AIの領域では、知覚メカニズムがセンサーによって取得されたデータを意味のある方法でまとめます。
- 言語インテリジェンス-それは、口頭および書き言葉を使用し、理解し、話し、そして書く能力です。 それは対人コミュニケーションにおいて重要です。
人間と機械の知能の違い
- 人間はパターンで知覚しますが、マシンはルールとデータのセットで知覚します。
- 人間はパターンごとに情報を保存および呼び出し、機械はアルゴリズムを検索してそれを行います。 たとえば、40404040という番号は、パターンが単純であるため、記憶、保存、および呼び出しが簡単です。
- 人間は、オブジェクトの一部が欠落または歪んでいる場合でも、完全なオブジェクトを把握できます。一方、マシンは正しく実行できません。
人工知能-研究分野
人工知能の領域は広さと幅が巨大です。 進行中、AIの分野で広く一般的で繁栄している研究分野を検討します-
音声および音声認識
これらの両方の用語は、ロボット工学、エキスパートシステム、自然言語処理で一般的です。 これらの用語は同じ意味で使用されますが、目的は異なります。
Speech Recognition | Voice Recognition |
---|---|
The speech recognition aims at understanding and comprehending *WHAT *was spoken. | The objective of voice recognition is to recognize* WHO *is speaking. |
It is used in hand-free computing, map, or menu navigation. | It is used to identify a person by analysing its tone, voice pitch, and accent, etc. |
Machine does not need training for Speech Recognition as it is not speaker dependent. | This recognition system needs training as it is person oriented. |
Speaker independent Speech Recognition systems are difficult to develop. | Speaker dependent Speech Recognition systems are comparatively easy to develop. |
音声および音声認識システムの動作
マイクで話されたユーザー入力は、システムのサウンドカードに送られます。 コンバータは、音声処理のためにアナログ信号を同等のデジタル信号に変換します。 データベースは、音声パターンを比較して単語を認識するために使用されます。 最後に、データベースに逆フィードバックが行われます。
このソース言語のテキストは翻訳エンジンへの入力になり、翻訳エンジンはそれをターゲット言語のテキストに変換します。 これらは、対話型GUI、語彙の大規模なデータベースなどでサポートされています。
研究分野の実生活への応用
AIが日常生活の中で一般の人々にサービスを提供しているアプリケーションは多数あります-
Sr.No. | Research Areas | Real Life Application |
---|---|---|
1 |
例-飛行追跡システム、臨床システム。 |
Expert Systems Application |
2 |
Natural Language Processing 例:Google Now機能、音声認識、自動音声出力。 |
NLP Application |
3 |
Neural Networks 例-顔認識、文字認識、手書き認識などのパターン認識システム。 |
Neural Networks Application |
4 |
Robotics 例-移動、スプレー、塗装、精度チェック、穴あけ、クリーニング、コーティング、彫刻などのための産業用ロボット |
Robotics Application |
5 |
Fuzzy Logic Systems 例-家電、自動車など |
Fuzzy Logic Application |
AIのタスク分類
AIのドメインは、フォーマルタスク、ありふれたタスク、エキスパートタスクに分類されます
人工知能のタスクドメイン
ありふれた(通常の)タスク
正式なタスク
エキスパートタスク
知覚
- コンピュータビジョン
- 音声、音声
- 数学
- 幾何学
- 論理
- 統合と差別化
- エンジニアリング
- 障害発見
- 製造業
- モニタリング
自然言語処理
- 理解
- 言語生成
- 言語翻訳
ゲーム
- Go
- チェス(ディープブルー)
- ケッカーズ
科学分析
常識
検証
財務分析
推論
定理証明
医療診断
滑走
創造性
ロボティクス
- 機関車
人間は、生まれてから*普通の(普通の)タスク*を学びます。 彼らは、知覚、会話、言語の使用、および機関車によって学習します。 正式なタスクとエキスパートタスクをこの順序で後ほど学習します。
人間にとって、ありふれたタスクは最も簡単に学ぶことができます。 マシンにありふれたタスクを実装しようとする前に、同じことが当てはまりました。 以前は、AIのすべての作業はありふれたタスクドメインに集中していました。
後になって、日常的なタスクを処理するためにより多くの知識、複雑な知識表現、複雑なアルゴリズムが必要になることが判明しました。 エキスパートタスクドメインには常識のない専門知識が必要であり、表現と処理が容易になるため、これが*エキスパートタスクドメインでAI作業がより盛んになった理由です。
AI-エージェントと環境
AIシステムは、エージェントとその環境で構成されます。 エージェントはそれぞれの環境で行動します。 環境には他のエージェントが含まれる場合があります。
エージェントと環境とは何ですか?
- エージェント*は、*センサー*を介して環境を認識できるものであり、*エフェクター*を介してその環境に作用します。
- *人間のエージェント*には、目、耳、鼻、舌、皮膚などの感覚器官がセンサーと平行であり、その他の器官(エフェクター、手、脚、口など)があります。
- *ロボットエージェント*は、センサー用のカメラと赤外線距離計、およびエフェクター用のさまざまなモーターとアクチュエータに取って代わります。
- *ソフトウェアエージェント*は、プログラムおよびアクションとしてビット文字列をエンコードしています。
エージェントの用語
- エージェントのパフォーマンス測定-これは、エージェントの成功度を決定する基準です。
- エージェントの行動-これは、エージェントが特定の知覚シーケンスの後に実行するアクションです。
- 知覚-特定のインスタンスでのエージェントの知覚入力です。
- 知覚シーケンス-これは、エージェントが日付まで知覚したすべての履歴です。
- エージェント機能-教訓シーケンスからアクションへのマップです。
合理性
合理性とは、合理的で分別があり、判断力が高いというステータスに他なりません。
合理性は、エージェントが認識した内容に応じて予想されるアクションと結果に関係します。 有用な情報を取得する目的でアクションを実行することは、合理性の重要な部分です。
理想的なRational Agentとは何ですか?
理想的な合理的なエージェントは、に基づいて、パフォーマンスの測定値を最大化するために予想されるアクションを実行できるエージェントです-
- その知覚シーケンス
- 組み込みのナレッジベース
エージェントの合理性は以下に依存します-
- 成功の程度を決定する*パフォーマンス測定値*。
- これまでのエージェントの*知覚シーケンス*。
- エージェントの*環境に関する事前知識*。
- エージェントが実行できる*アクション*。
合理的なエージェントは常に正しいアクションを実行します。正しいアクションとは、与えられた知覚シーケンスでエージェントを最も成功させるアクションを意味します。 エージェントが解決する問題の特徴は、パフォーマンス測定、環境、アクチュエーター、センサー(PEAS)です。
インテリジェントエージェントの構造
エージェントの構造は次のように見ることができます-
- エージェント=アーキテクチャ+エージェントプログラム
- アーキテクチャ=エージェントが実行される機械。
- エージェントプログラム=エージェント機能の実装。
シンプルな反射エージェント
彼らは現在の知覚のみに基づいて行動を選択します。
それらは、現在の教訓に基づいてのみ正しい決定がなされた場合にのみ合理的です。
彼らの環境は完全に観察可能です。
*Condition-Action Rule* -状態(条件)をアクションにマッピングするルールです。
モデルベースの反射エージェント
彼らは世界のモデルを使用して自分の行動を選択します。 内部状態を維持します。
モデル-「世界で物事がどのように起こるか」についての知識。
内部状態-知覚履歴に応じて、現在の状態の観察されていない側面の表現です。
- 状態を更新するには、-*に関する情報が必要です
- 世界がどのように進化するか。
- エージェントの行動が世界に与える影響。
目標ベースのエージェント
彼らは目標を達成するために行動を選択します。 意思決定をサポートする知識が明示的にモデル化されるため、目標ベースのアプローチは反射エージェントよりも柔軟性があり、それにより修正が可能になります。
目標-それは望ましい状況の説明です。
ユーティリティベースのエージェント
彼らは、各状態の設定(ユーティリティ)に基づいてアクションを選択します。
次の場合、目標は不十分です-
- 矛盾する目標がありますが、達成できる目標はわずかです。
- 目標には達成の不確実性があり、成功の可能性と目標の重要性を比較検討する必要があります。
環境の性質
一部のプログラムは、キーボード入力、データベース、コンピューターファイルシステム、および画面上の文字出力に限定された完全に*人工的な環境*で動作します。
対照的に、一部のソフトウェアエージェント(ソフトウェアロボットまたはソフトボット)は、豊富で無制限のソフトボットドメインに存在します。 シミュレータには、*非常に詳細で複雑な環境*があります。 ソフトウェアエージェントは、さまざまなアクションからリアルタイムで選択する必要があります。 顧客のオンライン設定をスキャンし、興味深いアイテムを顧客に表示するように設計されたソフトボットは、*実際の*環境と*人工の*環境で動作します。
最も有名な*人工環境*は* Turing Test環境*であり、1つの実際のエージェントと他の人工エージェントが同じ場所でテストされます。 これは、ソフトウェアエージェントが人間と同様に実行することが非常に難しいため、非常に困難な環境です。
チューリング試験
システムのインテリジェントな動作の成功は、チューリングテストで測定できます。
2人と評価対象のマシンがテストに参加します。 2人のうち、1人がテスターの役割を果たします。 それぞれが異なる部屋に座っています。 テスターは、誰が機械であり、誰が人間であるかを知りません。 彼は質問を入力して両方のインテリジェンスに送信し、入力された応答を受け取ります。
このテストは、テスターをだますことを目的としています。 テスターが人間の応答からマシンの応答を判断できない場合、そのマシンはインテリジェントであると言われます。
環境の特性
環境には複数のプロパティがあります-
- 離散/連続-明確に定義された明確な環境の状態の数が限られている場合、環境は離散的です(たとえば、チェス)。それ以外の場合は連続的です(たとえば、運転)。
- 観察可能/部分的に観察可能-知覚から各時点で環境の完全な状態を判断できる場合、それは観察可能です。それ以外の場合、部分的にしか観察できません。
- 静的/動的-エージェントが行動している間に環境が変化しない場合、それは静的です。それ以外の場合は動的です。
- 単一エージェント/複数エージェント-環境には、エージェントと同じまたは異なる種類の他のエージェントが含まれる場合があります。
- アクセス可能/アクセス不可-エージェントの感覚器が環境の完全な状態にアクセスできる場合、そのエージェントは環境にアクセスできます。
- 決定性/非決定性-環境の次の状態が現在の状態とエージェントのアクションによって完全に決定される場合、環境は決定性です。それ以外の場合は、非決定的です。
- エピソード/非エピソード-エピソード環境では、各エピソードはエージェントが知覚してから行動することで構成されます。 アクションの品質は、エピソード自体に依存します。 後続のエピソードは、前のエピソードのアクションに依存しません。 エージェントは先を考える必要がないため、エピソード環境ははるかに単純です。
AI-人気のある検索アルゴリズム
検索は、AIにおける問題解決の普遍的な手法です。 タイルゲーム、数独、クロスワードなどのシングルプレイヤーゲームがいくつかあります。 検索アルゴリズムは、このようなゲームの特定の位置を検索するのに役立ちます。
単一エージェントのパス検索の問題
3X3 8タイル、4X4 15タイル、および5X5 24タイルパズルなどのゲームは、単一エージェントパス検索の課題です。 それらは、空白のタイルを持つタイルのマトリックスで構成されます。 プレイヤーは、目的を達成するために、タイルを縦方向または横方向に空白スペースにスライドさせてタイルを配置する必要があります。
シングルエージェントパス検索の問題の他の例は、巡回セールスマン問題、ルービックキューブ、定理証明です。
検索用語
- 問題スペース-検索が行われる環境です。 (これらの状態を変更するための一連の状態と一連の演算子)
- 問題インスタンス-初期状態+目標の状態。
- 問題空間グラフ-問題の状態を表します。 状態はノードで表示され、演算子はエッジで表示されます。
- 問題の深さ-初期状態から目標状態までの最短経路またはオペレーターの最短シーケンスの長さ。
- スペースの複雑さ-メモリに保存されるノードの最大数。
- 時間の複雑さ-作成されるノードの最大数。
- 許容-常に最適なソリューションを見つけるためのアルゴリズムのプロパティ。
- 分岐係数-問題空間グラフの子ノードの平均数。
- 深さ-初期状態から目標状態までの最短経路の長さ。
ブルートフォース検索戦略
ドメイン固有の知識を必要としないため、最も簡単です。 少数の可能な状態で正常に動作します。
要件-
- 状態の説明
- 有効な演算子のセット
- 初期状態
- 目標状態の説明
幅優先検索
ルートノードから開始し、最初に隣接ノードを探索し、次のレベルの隣接ノードに向かって移動します。 ソリューションが見つかるまで、一度に1つのツリーを生成します。 FIFOキューのデータ構造を使用して実装できます。 このメソッドは、ソリューションへの最短パスを提供します。
分岐係数(特定のノードの子ノードの平均数)= bおよび深さ= dの場合、レベルd = b ^ d ^のノード数。
最悪の場合に作成されるノードの総数は、b + b ^ 2 ^ + b ^ 3 ^ … b ^ d ^です。
欠点-ノードの各レベルは次のノードを作成するために保存されるため、多くのメモリスペースを消費します。 ノードを保存するためのスペース要件は指数関数的です。
その複雑さはノードの数に依存します。 重複ノードをチェックできます。
深さ優先検索
LIFOスタックデータ構造を使用して再帰的に実装されます。 Breadth-Firstメソッドと同じノードのセットを、異なる順序でのみ作成します。
単一パス上のノードはルートノードからリーフノードへの各反復で保存されるため、ノードを保存するためのスペース要件は線形です。 分岐係数_b_および深さ_m_を使用すると、ストレージスペースは_bm._
欠点-このアルゴリズムは終了せず、1つのパスで無限に続く可能性があります。 この問題の解決策は、カットオフ深度を選択することです。 理想的なカットオフが_d_であり、選択したカットオフが_d_よりも小さい場合、このアルゴリズムは失敗する可能性があります。 選択したカットオフが_d_より大きい場合、実行時間が増加します。
その複雑さは、パスの数に依存します。 重複ノードをチェックすることはできません。
双方向検索
初期状態から順方向に、目標状態から逆方向に検索して、両方が一致するまで共通の状態を特定します。
初期状態からのパスは、目標状態からの逆パスと連結されます。 各検索は、合計パスの半分までしか実行されません。
均一コスト検索
ソートは、ノードへのパスのコストを増加させて行われます。 常に最小コストのノードを展開します。 各遷移のコストが同じ場合、幅優先検索と同じです。
コストの増加順にパスを探索します。
欠点-コスト≤C *の長いパスが複数存在する可能性があります。 Uniform Cost検索では、すべてを調査する必要があります。
反復深化深さ優先検索
レベル1に対して深さ優先検索を実行し、最初からやり直し、レベル2に対して完全な深さ優先検索を実行し、ソリューションが見つかるまでこのような方法で続行します。
下位ノードがすべて生成されるまで、ノードは作成されません。 ノードのスタックのみを保存します。 アルゴリズムは、深さ_d_で解を見つけると終了します。 深さ_d_で作成されるノードの数はb ^ d ^で、深さ_d-1_で作成されるノードの数はb ^ d-1 ^です。
さまざまなアルゴリズムの複雑さの比較
私たちはさまざまな基準に基づいてアルゴリズムのパフォーマンスを見てみましょう-
Criterion | Breadth First | Depth First | Bidirectional | Uniform Cost | Interactive Deepening |
---|---|---|---|---|---|
Time | bd | bm | bd/2 | bd | bd |
Space | bd | bm | bd/2 | bd | bd |
Optimality | Yes | No | Yes | Yes | Yes |
Completeness | Yes | No | Yes | Yes | Yes |
インフォームド(ヒューリスティック)検索戦略
多数の可能な状態で大きな問題を解決するには、問題固有の知識を追加して、検索アルゴリズムの効率を高める必要があります。
ヒューリスティック評価関数
2つの状態間の最適パスのコストを計算します。 スライディングタイルゲームのヒューリスティック関数は、各タイルが目標状態から行う動きの数をカウントし、これらの動きの数をすべてのタイルに追加することによって計算されます。
純粋な発見的検索
ヒューリスティック値の順にノードを展開します。 既に展開されたノードの閉じたリストと、作成されたが展開されていないノードの開いたリストの2つのリストを作成します。
各反復では、最小のヒューリスティック値を持つノードが展開され、そのすべての子ノードが作成されて閉じたリストに配置されます。 次に、ヒューリスティック関数が子ノードに適用され、それらのヒューリスティック値に従ってオープンリストに配置されます。 短いパスは保存され、長いパスは破棄されます。
検索
これは、ベストファースト検索の最も有名な形式です。 すでに高価なパスを拡張することは避けますが、最も有望なパスを最初に拡張します。
f(n)= g(n)+ h(n)、ここで
- g(n)ノードに到達するためのコスト(これまで)
- h(n)ノードからゴールまでの推定コスト
- f(n)は、nからゴールまでのパスの推定総コストです。 f(n)を増やすことにより、優先度キューを使用して実装されます。
貪欲な最高の最初の検索
目標に最も近いと推定されるノードを展開します。 f(n)= h(n)に基づいてノードを展開します。 優先度キューを使用して実装されます。
短所-ループに陥る可能性があります。 最適ではありません。
ローカル検索アルゴリズム
彼らは将来の解決策から始めて、次に隣の解決策に移ります。 終了する前に中断された場合でも、有効なソリューションを返すことができます。
登山検索
これは、問題に対する任意の解決策から始まり、解決策の単一の要素を段階的に変更することにより、より良い解決策を見つけようとする反復アルゴリズムです。 変更によってより良いソリューションが生成される場合、インクリメンタルな変更が新しいソリューションとして採用されます。 このプロセスは、さらに改善されるまで繰り返されます。
関数Hill-Climbing(問題)は、極大値である状態を返します。
inputs: problem, a problem
local variables: current, a node
neighbor, a node
current <-Make_Node(Initial-State[problem])
loop
do neighbor <- a highest_valued successor of current
if Value[neighbor] ≤ Value[current] then
return State[current]
current <- neighbor
end
欠点-このアルゴリズムは完全でも最適でもありません。
ローカルビーム検索
このアルゴリズムでは、任意の時点でk個の状態を保持します。 最初は、これらの状態はランダムに生成されます。 これらのk状態の後続は、目的関数を使用して計算されます。 これらの後継者のいずれかが目的関数の最大値である場合、アルゴリズムは停止します。
それ以外の場合(最初のk個の状態とk個の状態の後継者= 2k)の状態はプールに配置されます。 その後、プールは数値順にソートされます。 最も高いk個の状態が新しい初期状態として選択されます。 このプロセスは、最大値に達するまで続きます。
関数BeamSearch(problem、k)は、解の状態を返します。
start with k randomly generated states
loop
generate all successors of all k states
if any of the states = solution, then return the state
else select the k best successors
end
焼き鈍し法
アニーリングとは、金属を加熱および冷却して内部構造を変化させ、物理的特性を変更するプロセスです。 金属が冷えると、その新しい構造が捕捉され、金属は新しく得られた特性を保持します。 シミュレーテッドアニーリングプロセスでは、温度は可変に保たれます。
最初に温度を高く設定し、アルゴリズムが進むにつれてゆっくりと「冷却」します。 温度が高い場合、アルゴリズムは高い頻度でより悪い解を受け入れることができます。
開始
- 初期化k = 0; L =変数の整数数;
- i→jから、パフォーマンスの差Δを検索します。
- Δ⇐ 0の場合、exp(-Δ/T(k))> random(0,1)の場合はelseを受け入れ、受け入れます。
- L(k)ステップについて、ステップ1と2を繰り返します。
- k = k&plus; 1;
基準が満たされるまで、手順1〜4を繰り返します。
End
巡回セールスマン問題
このアルゴリズムの目的は、都市から出発し、途中ですべての都市を一度だけ訪問し、同じ出発都市で終わる低コストのツアーを見つけることです。
Start
Find out all (n -1)! Possible solutions, where n is the total number of cities.
Determine the minimum cost by finding out the cost of each of these (n -1)! solutions.
Finally, keep the one with the minimum cost.
end
人工知能-ファジーロジックシステム
ファジーロジックシステム(FLS)は、不完全、あいまい、歪んだ、または不正確な(ファジー)入力に応じて、許容できるが明確な出力を生成します。
ファジーロジックとは
ファジーロジック(FL)は、人間の推論に似た推論方法です。 FLのアプローチは、デジタル値YESとNOの間のすべての中間的な可能性を含む人間の意思決定の方法を模倣します。
コンピューターが理解できる従来の論理ブロックは、正確な入力を受け取り、TRUEまたはFALSEとして明確な出力を生成します。これは、人間のYESまたはNOと同等です。
ファジーロジックの発明者であるLotfi Zadehは、コンピューターとは異なり、人間の意思決定には次のようなYESとNOの間の可能性の範囲が含まれることを観察しました-
CERTAINLY YES | POSSIBLY YES | CANNOT SAY | POSSIBLY NO | CERTAINLY NO |
ファジーロジックは、入力の可能性のレベルで機能し、明確な出力を実現します。
実装
- 小型のマイクロコントローラーからネットワーク化されたワークステーションベースの大型制御システムまで、さまざまなサイズと機能を備えたシステムに実装できます。
- ハードウェア、ソフトウェア、または両方の組み合わせで実装できます。
ファジーロジックを使用する理由
ファジーロジックは、商業的および実用的な目的に役立ちます。
- 機械と消費者製品を制御できます。
- それは正確な推論を与えないかもしれませんが、許容できる推論をします。
- ファジーロジックは、エンジニアリングの不確実性に対処するのに役立ちます。
ファジーロジックシステムアーキテクチャ
それは示されるように4つの主要な部分を持っています-
- ファジー化モジュール-鮮明な数値であるシステム入力をファジーセットに変換します。 入力信号を次のような5つのステップに分割します-
LP | x is Large Positive |
MP | x is Medium Positive |
S | x is Small |
MN | x is Medium Negative |
LN | x is Large Negative |
- ナレッジベース-エキスパートが提供するIF-THENルールを保存します。
- 推論エンジン-入力およびIF-THENルールでファジー推論を行うことにより、人間の推論プロセスをシミュレートします。
- 非ファジー化モジュール-推論エンジンによって取得されたファジーセットを鮮明な値に変換します。
メンバーシップ関数はファジー変数のセットで機能します。
メンバーシップ機能
メンバーシップ関数を使用すると、言語用語を定量化し、ファジーセットをグラフィカルに表すことができます。 談話Xのユニバース上のファジー_set A_の*メンバーシップ関数*は、μ〜A〜:X→[0,1]として定義されます。
ここで、_X_の各要素は0〜1の値にマッピングされます。 *メンバーシップ値*または*メンバーシップの程度*と呼ばれます。 _X_の要素のファジーセット_A_に対するメンバーシップの度合いを定量化します。
- x軸は談話の世界を表します。
- y軸は、[0、1]区間のメンバーシップの度合いを表します。
数値をファジー化するために適用可能な複数のメンバーシップ関数があります。 複雑な関数を使用しても出力の精度が向上しないため、単純なメンバーシップ関数が使用されます。
- LP、MP、S、MN、、および *LN のすべてのメンバーシップ関数は以下のように表示されます-
三角形のメンバーシップ関数の形状は、台形、シングルトン、ガウスなどの他のさまざまなメンバーシップ関数の形状の中で最も一般的です。
ここで、5レベルのファジファイアへの入力は、-10ボルトから+10ボルトまで変化します。 したがって、対応する出力も変更されます。
ファジーロジックシステムの例
5レベルのファジー論理システムを備えた空調システムを考えてみましょう。 このシステムは、室温と目標温度値を比較して、エアコンの温度を調整します。
アルゴリズム
- 言語変数と用語の定義(開始)
- それらのメンバーシップ関数を作成します。 (開始)
- ルールの知識ベースの構築(開始)
- メンバーシップ関数を使用して、鮮明なデータをファジーデータセットに変換します。 (ファジー化)
- ルールベースのルールを評価します。 (推論エンジン)
- 各ルールの結果を結合します。 (推論エンジン)
- 出力データを非ファジー値に変換します。 (非ファジー化)
開発
ステップ1-言語変数と用語の定義
言語変数は、単純な単語または文の形式の入力変数および出力変数です。 室温の場合、寒い、暖かい、暑いなどは言語用語です。
温度(t)= \ {非常に寒い、寒い、暖かい、非常に暖かい、熱い}
このセットのすべてのメンバーは言語用語であり、全体の温度値の一部をカバーできます。
ステップ2-それらのメンバーシップ関数を構築します
温度変数のメンバーシップ関数は次のとおりです-
- Step3-知識ベースルールの構築*
空調システムが提供すると予想される室温値と目標温度値のマトリックスを作成します。
RoomTemp./Target | Very_Cold | Cold | Warm | Hot | Very_Hot |
---|---|---|---|---|---|
Very_Cold | No_Change | Heat | Heat | Heat | Heat |
Cold | Cool | No_Change | Heat | Heat | Heat |
Warm | Cool | Cool | No_Change | Heat | Heat |
Hot | Cool | Cool | Cool | No_Change | Heat |
Very_Hot | Cool | Cool | Cool | Cool | No_Change |
IF-THEN-ELSE構造の形式で知識ベースに一連のルールを構築します。
Sr. No. | Condition | Action |
---|---|---|
1 | IF temperature=(Cold OR Very_Cold) AND target=Warm THEN | Heat |
2 | IF temperature=(Hot OR Very_Hot) AND target=Warm THEN | Cool |
3 | IF (temperature=Warm) AND (target=Warm) THEN | No_Change |
ステップ4-ファジー値を取得
ファジー集合演算は、ルールの評価を実行します。 ORとANDに使用される演算は、それぞれMaxとMinです。 評価のすべての結果を組み合わせて、最終結果を作成します。 この結果はファジー値です。
ステップ5-非ファジー化を実行
次に、出力変数のメンバーシップ関数に従って非ファジー化が実行されます。
ファジーロジックの応用分野
ファジーロジックの主要なアプリケーション領域は、次のとおりです-
自動車システム
- 自動ギアボックス
- 四輪ステアリング
- 車両環境制御
消費者向け電子製品
- Hi-Fiシステム
- コピー機
- 静止画およびビデオカメラ
- テレビ
国産品
- 電子レンジ
- 冷蔵庫
- トースター
- 掃除機
- 洗濯機
環境制御
- エアコン/ドライヤー/ヒーター
- 加湿器
FLSの利点
- ファジー推論内の数学的概念は非常に単純です。
- ファジーロジックの柔軟性により、ルールを追加または削除するだけでFLSを変更できます。
- ファジーロジックシステムは、不正確で歪んだノイズの多い入力情報を取得できます。
- FLSは簡単に構築して理解できます。
- ファジーロジックは、人間の推論や意思決定に似ているため、医学を含む生活のあらゆる分野の複雑な問題の解決策です。
FLSの欠点
- ファジーシステムの設計に対する体系的なアプローチはありません。
- それらは単純な場合にのみ理解可能です。
- 高精度を必要としない問題に適しています。
AI-自然言語処理
自然言語処理(NLP)は、英語などの自然言語を使用してインテリジェントシステムと通信するAIメソッドを指します。
ロボットなどのインテリジェントシステムを指示どおりに実行する場合、対話ベースの臨床エキスパートシステムなどから決定を聞きたい場合などには、自然言語の処理が必要です。
NLPの分野では、コンピューターが人間が使用する自然言語で有用なタスクを実行できるようにします。 NLPシステムの入力と出力はすることができます-
- スピーチ
- 書面
NLPのコンポーネント
与えられたようにNLPの2つのコンポーネントがあります-
自然言語理解(NLU)
理解には次のタスクが含まれます-
- 自然言語で与えられた入力を有用な表現にマッピングします。
- 言語のさまざまな側面の分析。
自然言語生成(NLG)
それは、内部表現から自然言語の形で意味のあるフレーズや文を生成するプロセスです。
それが含まれます-
- テキスト計画-それは知識ベースから関連コンテンツを取得することを含みます。
- 文の計画-必要な単語の選択、意味のあるフレーズの形成、文の調子の設定が含まれます。
- テキストの実現-文プランを文構造にマッピングしています。
NLUはNLGよりも困難です。
NLUの問題
NLは非常に豊富な形式と構造を持っています。
とてもあいまいです。 あいまいさのさまざまなレベルがあります-
- 字句の曖昧さ-単語レベルなどの非常に原始的なレベルです。
- たとえば、「ボード」という単語を名詞または動詞として扱いますか?
- 構文レベルのあいまいさ-文はさまざまな方法で解析できます。
- たとえば、「彼は赤い帽子でカブトムシを持ち上げました。」-彼はカブトムシを持ち上げるためにキャップを使用しましたか、または彼は赤い帽子のカブトムシを持ち上げましたか?
- 参照曖昧さ-代名詞を使用して何かを指す。 たとえば、リマはガウリに行きました。 彼女は言った、「私は疲れています。」-正確に誰が疲れていますか?
- 1つの入力は異なる意味を意味する場合があります。
- 多くの入力が同じことを意味する場合があります。
NLPの用語
- 音韻-それは体系的に音を整理する研究です。
- 形態-それは、原始的な意味のある単位からの単語の構成の研究です。
- 形態素-言語の意味の原始単位です。
- 構文-それは文を作るために単語を配置することを指します。 また、文およびフレーズ内の単語の構造的な役割を決定することも含まれます。
- セマンティクス-単語の意味と、単語を組み合わせて意味のあるフレーズと文にする方法に関する。
- Pragmatics -さまざまな状況での文の使用と理解、および文の解釈への影響を扱います。
- 談話-直前の文が次の文の解釈にどのように影響するかを扱います。
- 世界の知識-世界に関する一般的な知識が含まれています。
NLPの手順
一般的な5つのステップがあります-
- 字句解析-単語の構造の特定と分析が含まれます。 言語の辞書とは、ある言語の単語や語句の集合を意味します。 字句解析は、txtのチャンク全体を段落、文、および単語に分割します。
- 構文解析(構文解析)-文法のための文中の単語の分析と、単語間の関係を示す方法での単語の配置が含まれます。 「The school goes to boy」などの文は、英語の構文解析ツールによって拒否されます。
- セマンティック分析-テキストから正確な意味または辞書の意味を引き出します。 テキストの意味がチェックされます。 これは、タスクドメイン内の構文構造とオブジェクトをマッピングすることにより行われます。 セマンティックアナライザーは、「ホットアイスクリーム」などの文を無視します。
- 談話の統合-文の意味は、直前の文の意味に依存します。 また、すぐに続く文の意味ももたらします。
- Pragmatic Analysis -この間、言われたことは実際に何を意味していたかを再解釈します。 それには、実世界の知識を必要とする言語の側面を導き出すことが含まれます。
構文解析の実装の側面
構文解析のために研究者が開発した多くのアルゴリズムがありますが、次の単純な方法のみを考慮します-
- 文脈自由文法
- トップダウンパーサー
それらを詳細に見てみましょう-
文脈自由文法
書き換えルールの左側に単一のシンボルを持つルールで構成される文法です。 文を解析するための文法を作成しましょう-
「鳥は穀物をつつく」
記事(DET) − a | |その
名詞-鳥|鳥|穀物|穀類
名詞句(NP)-記事&plus;名詞|記事&plus;形容詞&plus;名詞
DET N | DET ADJ N
動詞-ペック|つつく|くちばし
動詞句(VP)-NP V | V NP
形容詞(ADJ)-美しい|小さい|チャープ
構文解析ツリーは、コンピューターが簡単に理解して処理できるように、文を構造化された部分に分解します。 解析アルゴリズムがこの解析ツリーを構築するには、どのツリー構造が正当であるかを記述する一連の書き換えルールを構築する必要があります。
これらの規則は、特定のシンボルが他のシンボルのシーケンスによってツリー内で展開される可能性があることを示しています。 一次論理規則によれば、名詞句(NP)と動詞句(VP)の2つの文字列がある場合、NPにVPが続く文字列は文になります。 文の書き換えルールは次のとおりです-
*S→NP VP*
*NP→DET N | DET ADJ N*
*VP→V NP*
レキソコン-
DET→a |その
ADJ→美しい|止まる
N→鳥|鳥|穀物|穀類
V→ペック|ペック|つつく
解析ツリーは次のように作成できます-
次に、上記の書き換えルールを検討します。 Vは「ペック」または「ペック」の両方で置き換えることができるため、「鳥が穀物をつつく」などの文は誤って許可される可能性があります。 i. e. 件名と動詞の合意の誤りは正しいものとして承認されます。
メリット-文法の最も単純なスタイル、したがって広く使用されているもの。
デメリット-
- 彼らは非常に正確ではありません。 たとえば、「穀物は鳥をつつく」は構文解析的に正しい構文ですが、それが意味をなさない場合でも、構文解析はそれを正しい文と見なします。
- 高精度を引き出すには、複数の文法セットを準備する必要があります。 単数形と複数形のバリエーション、受動文などを解析するために、まったく異なるルールのセットが必要になる場合があり、管理できない巨大なルールのセットが作成される可能性があります。
トップダウンパーサー
ここでは、パーサーはS記号で始まり、それが完全に終端記号で構成されるまで、入力文の単語のクラスに一致する一連の_終端記号_に書き換えようとします。
これらは入力文でチェックされ、一致するかどうかが確認されます。 そうでない場合、プロセスは異なるルールのセットで再度開始されます。 これは、文の構造を記述する特定のルールが見つかるまで繰り返されます。
メリット-実装は簡単です。
デメリット-
- エラーが発生した場合、検索プロセスを繰り返す必要があるため、非効率的です。
- 作業速度が遅い。
人工知能-エキスパートシステム
エキスパートシステム(ES)は、AIの主要な研究領域の1つです。 スタンフォード大学のコンピューター科学部の研究者によって紹介されています。
エキスパートシステムとは何ですか?
エキスパートシステムは、特別な人間の知性と専門知識のレベルで、特定のドメインの複雑な問題を解決するために開発されたコンピューターアプリケーションです。
エキスパートシステムの特徴
- ハイパフォーマンス
- わかりやすい
- 信頼性のある
- 応答性が高い
エキスパートシステムの機能
エキスパートシステムは可能です-
- アドバイス
- 意思決定における人間への指導と支援
- デモンストレーション
- ソリューションの導出
- 診断
- 説明する
- 入力の解釈
- 結果の予測
- 結論を正当化する
- 問題の代替オプションを提案する
彼らはできません-
- 人間の意思決定者を代替する
- 人間の能力を所有している
- 不十分な知識ベースのための正確な出力の生成
- 自分の知識を磨く
エキスパートシステムのコンポーネント
ESのコンポーネントが含まれます-
- 知識ベース
- 推論エンジン *ユーザーインターフェース
それらを一つ一つ簡単に見てみましょう-
知識ベース
ドメイン固有の高品質の知識が含まれています。
知性を発揮するには知識が必要です。 ESの成功は、非常に正確で正確な知識の収集に大きく依存します。
知識とは何ですか?
データは事実の集合です。 情報は、タスクドメインに関するデータと事実として整理されます。* データ、情報*、*過去の経験*を組み合わせて知識と呼びます。
ナレッジベースのコンポーネント
ESの知識ベースは、事実知識と発見的知識の両方のストアです。
- 事実知識-それは、タスクドメインの知識技術者や学者によって広く受け入れられている情報です。
- ヒューリスティックな知識-練習、正確な判断、評価能力、推測についてです。
知識表現
これは、知識ベース内の知識を整理および形式化するために使用される方法です。 IF-THEN-ELSEルールの形式です。
知識の獲得
エキスパートシステムの成功は、知識ベースに保存されている情報の品質、完全性、正確性に大きく依存します。
知識ベースは、さまざまな専門家、学者、および*ナレッジエンジニア*からのリーディングによって形成されます。 ナレッジエンジニアは、共感、迅速な学習、ケース分析のスキルを備えた人です。
彼は、記録、インタビュー、職場での観察などにより、主題の専門家から情報を取得します。 次に、干渉マシンで使用されるIF-THEN-ELSEルールの形式で、意味のある方法で情報を分類および整理します。 ナレッジエンジニアは、ESの開発も監視します。
推論エンジン
推論エンジンによる効率的な手順とルールの使用は、正しい完全なソリューションを差し引くために不可欠です。
知識ベースのESの場合、推論エンジンは知識ベースから知識を取得して操作し、特定のソリューションに到達します。
ルールベースのESの場合、それ-
- 以前のルール適用から取得したファクトにルールを繰り返し適用します。
- 必要に応じて、知識ベースに新しい知識を追加します。
- 特定のケースに複数のルールが適用される場合、ルールの競合を解決します。
ソリューションを推奨するには、推論エンジンは次の戦略を使用します-
- フォワードチェーン
- 後方連鎖
フォワードチェーン
「次に何ができるのか?」という質問に答えるのは、エキスパートシステムの戦略です
ここで、推論エンジンは一連の条件と派生に従い、最終的に結果を推測します。 すべての事実とルールを考慮し、ソリューションに結び付ける前にそれらを並べ替えます。
この戦略は、結論、結果、または効果に取り組むために行われます。 たとえば、金利の変化の影響としての株式市場の状況の予測。
後方連鎖
この戦略では、エキスパートシステムが質問への答えを見つけます。「なぜこれが起こったのですか?」*
すでに発生したことに基づいて、推論エンジンは、この結果について過去にどの条件が発生した可能性があるかを見つけようとします。 原因または理由を見つけるために、この戦略に従います。 たとえば、ヒトの血液がんの診断。
ユーザーインターフェース
ユーザーインターフェイスは、ESのユーザーとES自体の間の対話を提供します。 通常、タスクドメインに精通しているユーザーが使用できるように、自然言語処理です。 ESのユーザーは、必ずしも人工知能の専門家である必要はありません。
ESが特定の推奨事項に到達した方法を説明します。 説明は、次の形式で表示される場合があります-
- 画面に表示される自然言語。
- 自然言語の言語ナレーション。
- 画面に表示されるルール番号のリスト。
ユーザーインターフェイスにより、控除の信頼性を簡単に追跡できます。
効率的なESユーザーインターフェイスの要件
- これは、ユーザーが最短時間で目標を達成するのに役立つはずです。
- ユーザーの既存または希望する作業方法で機能するように設計する必要があります。
- その技術は、ユーザーの要件に適応できる必要があります。逆ではありません。
- ユーザー入力を効率的に使用する必要があります。
エキスパートシステムの制限
簡単で完全なソリューションを提供できるテクノロジーはありません。 大規模システムはコストがかかり、開発にかなりの時間とコンピューターリソースを必要とします。 ESには次のような制限があります-
- 技術の限界
- 難しい知識の習得
- ESは維持が難しい
- 高い開発コスト
エキスパートシステムの応用
次の表は、ESを適用できる場所を示しています。
Application | Description |
---|---|
Design Domain | Camera lens design, automobile design. |
Medical Domain | Diagnosis Systems to deduce cause of disease from observed data, conduction medical operations on humans. |
Monitoring Systems | Comparing data continuously with observed system or with prescribed behavior such as leakage monitoring in long petroleum pipeline. |
Process Control Systems | Controlling a physical process based on monitoring. |
Knowledge Domain | Finding out faults in vehicles, computers. |
Finance/Commerce | Detection of possible fraud, suspicious transactions, stock market trading, Airline scheduling, cargo scheduling. |
エキスパートシステムテクノロジー
ESテクノロジーにはいくつかのレベルがあります。 エキスパートシステムテクノロジーには以下が含まれます−
- エキスパートシステム開発環境-ES開発環境にはハードウェアとツールが含まれています。 彼らは-
- ワークステーション、ミニコンピューター、メインフレーム。
- * LIS t P * rogramming(LISP)や* PRO grammation en LOG * ique(PROLOG)などの高レベルのシンボリックプログラミング言語。
- 大規模なデータベース。
- ツール-エキスパートシステムの開発に伴う労力とコストを大幅に削減します。
- マルチウィンドウを備えた強力なエディターとデバッグツール。
- ラピッドプロトタイピングを提供します
- モデル、知識表現、推論設計の定義を組み込みます。
- シェル-シェルは知識ベースのないエキスパートシステムに他なりません。 シェルは、開発者に知識獲得、推論エンジン、ユーザーインターフェイス、および説明機能を提供します。 例えば、いくつかのシェルは以下に与えられています-
- エキスパートシステムを作成するための完全に開発されたJava APIを提供するJava Expert System Shell(JESS)。
- Vidwan、1993年にムンバイの国立ソフトウェア技術センターで開発されたシェル。 IF-THENルールの形式でナレッジエンコーディングが可能になります。
エキスパートシステムの開発:一般的な手順
ES開発のプロセスは反復的です。 ESの開発手順には、以下が含まれます-
問題領域を特定する
- 問題は、それを解決するエキスパートシステムに適している必要があります。
- ESプロジェクトのタスクドメインの専門家を見つけます。
- システムの費用対効果を確立します。
システムを設計する
- ESテクノロジーを特定する
- 他のシステムおよびデータベースとの統合の程度を知り、確立します。
- 概念がどのようにドメイン知識を最もよく表すことができるかを理解します。
プロトタイプを開発する
ナレッジベースから:ナレッジエンジニアは次の作業を行います-
- 専門家からドメイン知識を取得します。
- If-THEN-ELSEルールの形式で表します。
プロトタイプのテストと改良
- ナレッジエンジニアは、サンプルケースを使用して、パフォーマンスの欠陥がないかプロトタイプをテストします。
- エンドユーザーはESのプロトタイプをテストします。
ESの開発と完成
- ESとエンドユーザー、データベース、その他の情報システムを含む環境のすべての要素との相互作用をテストし、確認します。
- ESプロジェクトを適切に文書化します。
- ESを使用するようにユーザーをトレーニングします。
システムを維持する
- 定期的なレビューと更新により、ナレッジベースを最新の状態に保ちます。
- システムが進化するにつれて、他の情報システムとの新しいインターフェイスに対応します。
エキスパートシステムの利点
- 可用性-ソフトウェアの大量生産により、簡単に入手できます。
- 低生産コスト-生産コストは合理的です。 これにより、手頃な価格になります。
- スピード-彼らは素晴らしいスピードを提供します。 それらは、個人が投入する作業量を削減します。
- エラー率-エラー率は人為的エラーと比較して低いです。
- リスクの低減-人間にとって危険な環境で働くことができます。
- 安定した応答-彼らは動いたり、緊張したり、疲れたりすることなく着実に動作します。
人工知能-ロボット工学
ロボット工学は、インテリジェントで効率的なロボットを作成する研究を扱う人工知能の分野です。
ロボットとは?
ロボットは、現実世界の環境で動作する人工エージェントです。
目的
ロボットは、オブジェクトの知覚、ピッキング、移動、オブジェクトの物理的特性の変更、破壊、または退屈、気晴らし、または疲れることなく反復機能を実行することによる労働力の解放によってオブジェクトを操作することを目的としています。
ロボティクスとは何ですか?
ロボット工学は、ロボットの設計、構築、および応用のための電気工学、機械工学、およびコンピューターサイエンスで構成されるAIのブランチです。
ロボティクスの側面
- ロボットには、特定のタスクを達成するために設計された*機械的構造*、形状、または形状があります。
- それらには、機械を駆動および制御する*電気部品*があります。
- それらには、ロボットが何か、いつ、どのように何かをするかを決定する*コンピュータープログラム*が含まれています。
ロボットシステムと他のAIプログラムの違い
ここに2つの違いがあります-
AI Programs | Robots |
---|---|
They usually operate in computer-stimulated worlds. | They operate in real physical world |
The input to an AI program is in symbols and rules. | Inputs to robots is analog signal in the form of speech waveform or images |
They need general purpose computers to operate on. | They need special hardware with sensors and effectors. |
ロボット移動
移動とは、ロボットを環境内で移動できるようにするメカニズムです。 さまざまな種類の移動があります-
- 脚付き
- 車輪付き
- 脚歩行と車輪移動の組み合わせ
- 追跡されたスリップ/スキッド
脚歩行
- このタイプの移動は、歩行、ジャンプ、速歩、ホップ、上り下りなどを示す際により多くの電力を消費します。
- 動きを実現するには、より多くのモーターが必要です。 不規則な表面や滑らかすぎる表面が車輪付きの移動のためにより多くの電力を消費する、荒い地形と滑らかな地形に適しています。 安定性の問題のため、実装するのはほとんど困難です。
- さまざまな1本、2本、4本、および6本の脚が付属しています。 ロボットに複数の脚がある場合、移動には脚の調整が必要です。
ロボットが移動できる*歩行*(各総脚のリフトおよびリリースイベントの定期的なシーケンス)の合計数は、その脚の数によって異なります。
ロボットにk個の脚がある場合、可能なイベントの数N =(2k-1)!。
2脚ロボット(k = 2)の場合、可能なイベントの数はN =(2k-1)です! =(2 * 2-1)! = 3! = 6.
したがって、6つの可能な異なるイベントがあります-
- 左脚を持ち上げる
- 左脚を離す
- 右脚を持ち上げる
- 右脚を離す
- 両足を一緒に持ち上げる
- 両足を一緒に離す
k = 6レッグの場合、39916800の可能なイベントがあります。 したがって、ロボットの複雑さは脚の数に正比例します。
車輪付き移動
運動を行うために必要なモーターの数が少なくなります。 車輪の数が多い場合の安定性の問題が少ないため、実装は簡単ではありません。 脚のある歩行に比べて電力効率が良いです。
- 標準ホイール-ホイール軸と接点の周りを回転します
- キャスターホイール-ホイール軸とオフセットステアリングジョイントを中心に回転します。
- スウェーデン語45 ^ o ^およびスウェーデン語90 ^ o ^車輪-全輪、接触点、車輪軸、およびローラーの周りを回転します。
- ボールまたは球面ホイール-実装が技術的に難しい全方向性ホイール。
スリップ/スキッド移動
このタイプでは、車両は戦車のようにトラックを使用します。 ロボットは、同じ方向または反対方向に異なる速度でトラックを移動することにより操縦されます。 軌道と地面の接触面積が大きいため、安定性があります。
ロボットのコンポーネント
ロボットは以下で構成されています-
- 電源-ロボットは、バッテリー、太陽光発電、油圧、または空気圧の動力源によって駆動されます。
- アクチュエータ-エネルギーを運動に変換します。
- 電動モーター(AC/DC)-回転運動に必要です。
- 空気の空気の筋肉-空気が吸い込まれると、ほぼ40%収縮します。
- 筋線-電流が流れると5%収縮します。
- ピエゾモーターおよび超音波モーター-産業用ロボットに最適。
- センサー-タスク環境に関するリアルタイム情報の知識を提供します。 ロボットには、環境の深さを計算するためのビジョンセンサーが装備されています。 触覚センサーは、人間の指先のタッチ受容体の機械的特性を模倣します。
コンピュータビジョン
これは、ロボットが見ることができるAIの技術です。 コンピュータービジョンは、安全性、セキュリティ、健康、アクセス、エンターテイメントの分野で重要な役割を果たします。
コンピュータービジョンは、単一の画像または一連の画像から有用な情報を自動的に抽出、分析、および理解します。 このプロセスには、自動視覚理解を達成するためのアルゴリズムの開発が含まれます。
コンピュータビジョンシステムのハードウェア
これには-
- 電源
- カメラなどの画像取得デバイス
- プロセッサ
- ソフトウェア
- システムを監視するための表示デバイス
- カメラスタンド、ケーブル、コネクタなどのアクセサリ
コンピュータービジョンのタスク
- OCR -コンピューターの領域で、光学式文字リーダー、スキャンされた文書を編集可能なテキストに変換するソフトウェアで、スキャナーに付属しています。
- 顔検出-多くの最新のカメラにはこの機能が搭載されており、顔を読み取ってその完璧な表情を撮影することができます。 ユーザーが正しい一致でソフトウェアにアクセスできるようにするために使用されます。
- オブジェクト認識-スーパーマーケット、カメラ、BMW、GM、ボルボなどの高級車に搭載されています。
- 推定位置-人体の腫瘍の位置のように、カメラに対するオブジェクトの位置を推定しています。
コンピュータービジョンのアプリケーションドメイン
- 農業
- 自動運転車
- 生体認証
- 文字認識
- フォレンジック、セキュリティ、および監視
- 産業品質検査
- 顔認識
- ジェスチャー分析
- 地球科学
- 医療画像
- 汚染モニタリング
- プロセス制御
- リモートセンシング
- ロボティクス
- 輸送
ロボット工学の応用
ロボティクスは、次のようなさまざまな分野で役立っています-
- 産業-ロボットは、材料の取り扱い、切断、溶接、カラーコーティング、穴あけ、研磨などに使用されます。
- 軍事-自律ロボットは、戦争中にアクセスできない危険なゾーンに到達する可能性があります。 防衛研究開発機構(DRDO)によって開発された_Daksh_という名前のロボットは、生命を脅かす物体を安全に破壊するために機能しています。
- 医学-ロボットは、数百の臨床検査を同時に実施し、障害のある人々をリハビリし、脳腫瘍などの複雑な手術を行うことができます。
- 探査-宇宙探査に使用されるロボットロッククライマー、海洋探査に使用される水中ドローンをいくつか挙げます。
- エンターテインメント-ディズニーのエンジニアは、映画制作のために何百ものロボットを作成しました。
人工知能-ニューラルネットワーク
AIのさらに別の研究分野であるニューラルネットワークは、人間の神経系の自然なニューラルネットワークから着想を得ています。
人工ニューラルネットワーク(ANN)とは何ですか?
最初のニューロコンピューターの発明者、博士。 ロバート・ヘクト・ニールセンは、ニューラルネットワークを次のように定義します-
'_「…シンプルで高度に相互接続された多数の処理要素で構成されるコンピューティングシステム。外部入力に対する動的な状態応答によって情報を処理します。」_
ANNの基本構造
ANNのアイデアは、適切な接続を行うことによる人間の脳の働きは、生きている*ニューロン*および*樹状突起*としてシリコンとワイヤを使用して模倣できるという信念に基づいています。
人間の脳は neurons と呼ばれる860億個の神経細胞で構成されています。それらは Axons によって他の1000個の細胞に接続されています。 これらの入力は、電気的インパルスを作成し、それがニューラルネットワークをすばやく移動します。 ニューロンは、メッセージを他のニューロンに送信して問題を処理するか、またはメッセージを転送しません。
ANNは、人間の脳の生物学的な*ニューロン*を模倣する複数の*ノード*で構成されています。 ニューロンはリンクで接続されており、相互作用します。 ノードは入力データを取得し、そのデータに対して簡単な操作を実行できます。 これらの操作の結果は、他のニューロンに渡されます。 各ノードでの出力は、*アクティベーション*または*ノード値*と呼ばれます。
各リンクは* weight。*に関連付けられています。ANNは学習が可能であり、これは重みの値を変更することで行われます。 次の図は、単純なANNを示しています-
人工ニューラルネットワークの種類
*FeedForward* および* Feedback。*の2つの人工ニューラルネットワークトポロジがあります。
FeedForward ANN
このANNでは、情報の流れは単方向です。 ユニットは、情報を受信しない他のユニットに情報を送信します。 フィードバックループはありません。 これらは、パターンの生成/認識/分類に使用されます。 入力と出力が固定されています。
フィードバックANN
ここでは、フィードバックループが許可されています。 連想メモリで使用されます。
ANNの働き
示されているトポロジ図では、各矢印は2つのニューロン間の接続を表し、情報の流れの経路を示しています。 各接続には、2つのニューロン間の信号を制御する整数である重みがあります。
ネットワークが「良好または望ましい」出力を生成する場合、重みを調整する必要はありません。 ただし、ネットワークが「不良または望ましくない」出力またはエラーを生成する場合、システムは、後続の結果を改善するために重みを変更します。
ANNの機械学習
ANNは学習が可能であり、訓練を受ける必要があります。 いくつかの学習戦略があります-
- 教師あり学習-ANN自体よりも学者である教師が関与します。 たとえば、教師は、教師が既に回答を知っているサンプルデータをフィードします。 +たとえば、パターン認識。 ANNは認識しながら推測を行います。 次に、教師がANNに回答を提供します。 次に、ネットワークは推測を教師の「正しい」回答と比較し、エラーに応じて調整します。
- 教師なし学習-既知の回答を持つサンプルデータセットがない場合に必要です。 たとえば、非表示のパターンを検索します。 この場合、クラスタリング、つまり 未知のパターンに従って要素のセットをグループに分割することは、存在する既存のデータセットに基づいて実行されます。
- 強化学習-この戦略は観察に基づいています。 ANNは、その環境を観察して決定を下します。 観測値が負の場合、ネットワークは重みを調整して、次回に別の必要な決定を行えるようにします。
逆伝播アルゴリズム
これは、トレーニングまたは学習アルゴリズムです。 例によって学習します。 ネットワークに何をさせたいかの例をアルゴリズムに送信すると、トレーニングの終了時に特定の入力に対して望ましい出力を生成できるように、ネットワークの重みが変更されます。
バックプロパゲーションネットワークは、単純なパターン認識およびマッピングタスクに最適です。
ベイジアンネットワーク(BN)
これらは、一連のランダム変数間の確率的関係を表すために使用されるグラフィカル構造です。 ベイジアンネットワークは、 Belief Networks または Bayes Nets とも呼ばれます。BNは不確実なドメインに関する理由です。
これらのネットワークでは、各ノードは特定の命題を持つランダム変数を表します。 たとえば、医療診断ドメインでは、ノードCancerは、患者にがんがあるという命題を表します。
ノードを接続するエッジは、これらのランダム変数間の確率的依存関係を表します。 2つのノードのうち、一方が他方に影響している場合は、効果の方向に直接接続する必要があります。 変数間の関係の強さは、各ノードに関連付けられた確率によって定量化されます。
BNのアークには、単純に有向アークに従うだけではノードに戻ることができない唯一の制約があります。 したがって、BNは有向非巡回グラフ(DAG)と呼ばれます。
BNは、複数値の変数を同時に処理できます。 BN変数は2つの次元で構成されています-
- 前置詞の範囲
- 各前置詞に割り当てられた確率。
離散確率変数の有限集合X = \ {X〜1〜、X〜2〜、…、X〜n〜}を考えます。各変数_X〜i〜_は、_Val( X〜i〜)._変数_X〜i〜_から変数_X〜j〜、_への有向リンクがある場合、変数_X〜i〜_は直接の依存関係を示す変数_X〜j〜_の親になります変数間。
BNの構造は、事前知識と観測データを組み合わせるのに理想的です。 BNを使用して、データが欠落している場合でも、因果関係を学習し、さまざまな問題領域を理解し、将来のイベントを予測できます。
ベイジアンネットワークの構築
ナレッジエンジニアは、ベイジアンネットワークを構築できます。 ナレッジエンジニアが構築中に実行する必要があるステップがいくつかあります。
問題の例-_肺癌。_患者が息切れに苦しんでいる。 彼は医者を訪ね、彼は肺癌にかかっていると疑っています。 医師は、肺がんを除けば、結核や気管支炎など、患者が持つ可能性のある他のさまざまな病気があることを知っています。
問題の関連情報を収集
- 患者は喫煙者ですか? はいの場合、がんと気管支炎の可能性が高くなります。
- 患者は大気汚染にさらされていますか? はいの場合、どのような大気汚染ですか?
- X線を撮る正のX線は結核または肺がんのいずれかを示します。
興味深い変数を特定する
ナレッジエンジニアは質問に答えようとします-
- どのノードを表すか?
- 彼らはどんな価値を取ることができますか どの状態になりますか?
とりあえず、離散値のみを持つノードを考えてみましょう。 変数は、一度にこれらの値のいずれか1つだけを引き継ぐ必要があります。
離散ノードの一般的なタイプは-
- ブールノード-命題を表し、バイナリ値TRUE(T)およびFALSE(F)を取ります。
- 順序付けられた値-ノード_Pollution_は、患者の汚染への暴露の程度を表す\ {low、medium、high}の値を表し、その値を取る場合があります。
- 積分値-_Age_と呼ばれるノードは、1〜120の可能な値で患者の年齢を表すことがあります。 この初期段階でさえ、モデリングの選択が行われています。
肺がんの例で考えられるノードと値-
ノード名
Type
値
ノード作成
汚染
バイナリ
\ {低、高、中}
喫煙者
ブール値
\ {TRUE、FASLE}
肺がん
ブール値
\ {TRUE、FASLE}
X線
バイナリ
\ {正、負}
ノード間にアークを作成
ネットワークのトポロジは、変数間の定性的な関係をキャプチャする必要があります。
たとえば、患者が肺がんを起こす原因は何ですか? -汚染と喫煙。 次に、ノード_Pollution_およびノード_Smoker_からノード_Lung-Cancer._にアークを追加します
同様に、患者が肺がんの場合、X線の結果は陽性になります。 次に、ノード_Lung-Cancer_からノード_X-Ray._にアークを追加します
トポロジの指定
従来、BNは、アークが上から下を向くようにレイアウトされていました。 ノードXの親ノードのセットは、Parents(X)によって与えられます。
Lung-Cancer_ノードには2つの親(理由または原因)があります:_Pollution_および_Smoker、ノード_Smoker_はノード_X-Ray_の*祖先*です。 同様に、_X-Ray_は、ノード_Lung-Cancer_の子(結果または効果)であり、ノード_Smoker_および_Pollution._の*後継者*です。
条件付き確率
次に、接続されたノード間の関係を定量化します。これは、各ノードの条件付き確率分布を指定することにより行われます。 ここでは離散変数のみが考慮されるため、これは* Conditional Probability Table(CPT)*の形式を取ります。
まず、各ノードについて、それらの親ノードの値の可能なすべての組み合わせを調べる必要があります。 このような各組み合わせは、親セットの*インスタンス化*と呼ばれます。 親ノード値の個別のインスタンス化ごとに、子が取る確率を指定する必要があります。
たとえば、_Lung-Cancer_ノードの親は_Pollution_および_Smokingです。_は、可能な値= \ {(H、T)、(H、F)、(L、T)、(L、F)}を取ります。 CPTは、これらの各ケースの癌の確率をそれぞれ<0.05、0.02、0.03、0.001>と指定しています。
各ノードには、次のように関連付けられた条件付き確率があります-
ニューラルネットワークのアプリケーション
彼らは人間には簡単ですが、マシンには難しいタスクを実行できます-
- 航空宇宙-自動操縦航空機、航空機の故障検出。
- 自動車-自動車案内システム。
- 軍事-武器の方向とステアリング、ターゲットの追跡、オブジェクトの識別、顔の認識、信号/画像の識別。
- エレクトロニクス-コードシーケンス予測、ICチップレイアウト、チップ故障解析、マシンビジョン、音声合成。
- 金融-不動産鑑定、ローンアドバイザー、住宅ローン審査、社債格付け、ポートフォリオ取引プログラム、企業財務分析、通貨価値予測、ドキュメントリーダー、クレジットアプリケーション評価者。
- 産業-製造プロセス制御、製品設計と分析、品質検査システム、溶接品質分析、紙品質予測、化学製品設計分析、化学プロセスシステムの動的モデリング、機械保守分析、プロジェクト入札、計画、管理
- 医療-がん細胞分析、EEGおよびECG分析、補綴設計、移植時間オプティマイザー。
- 音声-音声認識、音声分類、テキストから音声への変換。
- 通信-画像とデータの圧縮、自動化された情報サービス、リアルタイムの音声言語翻訳。
- 輸送-トラックブレーキシステムの診断、車両のスケジューリング、ルーティングシステム。
- ソフトウェア-顔認識、光学式文字認識などのパターン認識
- 時系列予測-ANNは、在庫と自然災害の予測に使用されます。
- 信号処理-ニューラルネットワークを訓練して、音声信号を処理し、補聴器で適切にフィルタリングすることができます。
- コントロール-ANNは、物理的な車両のステアリングの決定によく使用されます。
- 異常検出-ANNはパターンの認識に精通しているため、パターンに合わない異常が発生した場合に出力を生成するようにトレーニングすることもできます。
人工知能-問題
AIはこのような信じられないほどの速度で開発されており、時には魔法のように思えます。 研究者や開発者の間では、AIが非常に強力に成長する可能性があり、人間が制御するのは難しいとの意見があります。
人間は、可能な限りすべての知性を導入することでAIシステムを開発しました。
プライバシーに対する脅威
音声を認識し、自然言語を理解するAIプログラムは、理論的には、電子メールおよび電話での各会話を理解できます。
人間の尊厳に対する脅威
AIシステムは、いくつかの業界ですでに人間に取って代わり始めています。 看護師、外科医、裁判官、警察官などの倫理に関連する尊厳ある地位にある部門の人々に取って代わるべきではありません。
安全への脅威
自己改善型AIシステムは、人間よりも強力になる可能性があり、目標を達成するのを止めるのが非常に難しく、意図しない結果を招く可能性があります。
人工知能-用語
AIのドメインで頻繁に使用される用語のリストは次のとおりです-
Sr.No | Term & Meaning |
---|---|
1 |
Agent エージェントは、1つまたは複数の目標に向けて自律的、目的的、推論できるシステムまたはソフトウェアプログラムです。 また、アシスタント、ブローカー、ボット、ドロイド、インテリジェントエージェント、ソフトウェアエージェントとも呼ばれます。 |
2 |
Autonomous Robot ロボットは外部からの制御や影響を受けず、独自に制御できます。 |
3 |
Backward Chaining 問題の理由/原因を突き止めるための戦略。 |
4 |
Blackboard これは、協力するエキスパートシステム間の通信に使用されるコンピューター内部のメモリです。 |
5 |
Environment これは、エージェントが居住する実世界または計算世界の一部です。 |
6 |
Forward Chaining 問題の結論/解決のために前進する戦略。 |
7 |
Heuristics それは、試行錯誤、評価、および実験に基づいた知識です。 |
8 |
Knowledge Engineering 人間の専門家やその他のリソースから知識を獲得する。 |
9 |
Percepts これは、エージェントが環境に関する情報を取得する形式です。 |
10 |
Pruning AIシステムで不必要で無関係な考慮事項を無効にします。 |
11 |
Rule これは、エキスパートシステムで知識ベースを表現する形式です。 IF-THEN-ELSEの形式です。 |
12 |
Shell シェルは、推論システム、知識ベース、およびエキスパートシステムのユーザーインターフェイスの設計に役立つソフトウェアです。 |
13 |
Task これは、エージェントが達成しようとする目標です。 |
14 |
Turing Test 人間の知能と比較して機械の知能をテストするために、アランチューリングによって開発されたテスト。 |