推論

推論エンジン 編集

主な記事です。 推論システム、推論エンジン、エキスパートシステム、ビジネスルールエンジン

AIシステムが最初に提供したのは自動化された論理的推論で、かつては非常に人気のある研究テーマでしたが、エキスパートシステムや後にはビジネスルールエンジンの形で産業界に応用されました。

推論システムの仕事は、知識ベースを自動的に拡張することです。

推論システムの仕事は、知識ベースを自動的に拡張することです。知識ベース(KB)は、システムが世界について知っていることを表す命題のセットです。 そのシステムは、有効な推論によってKBを拡張するために、いくつかの技術を使用することができます。

Prolog engineEdit

Prolog (Programming in Logic)は、述語論理学のサブセットに基づいたプログラミング言語です。 主な仕事は、後方連鎖と呼ばれるアルゴリズムを使って、ある命題がKB(知識ベース)から推測できるかどうかをチェックすることです。

mortal(X) :- man(X).man(socrates). 

( ここで :- は「if」と読み替えられます。 一般的には、If P → {displaystyle ˶‾᷄ -̫ ‾᷅˵}となります。

to

Q (if P then Q) ならば、PrologではQ:-P (Q if P)とコーディングします)
これで、すべての人間は死すべき存在であり、ソクラテスは人間であることがわかりました。 ここで、PrologシステムにSocratesについて質問してみましょう。

?- mortal(socrates).

(ここで ?- は問い合わせを意味します。

一方、Prologシステムに次のように尋ねると、

?- mortal(plato).

「いいえ」という答えが返ってきます。

これは、Prologがプラトンについて何も知らないため、プラトンに関するいかなる性質も偽であるというデフォルト(いわゆる閉じた世界の仮定)になっているためです。 最後に- mortal(X) (Is anything mortal) は、”Yes” (そして、いくつかの実装では、”Yes”: X=socrates)
Prologは、非常に複雑な推論タスクに使用することができます。

Semantic webEdit

最近、自動推論機はセマンティックウェブに新しい応用分野を見出しました。

Bayesian statistics and probability logicEdit

Main article: ベイズ推論

ベイズ推論の枠組みに従う哲学者や科学者は、確率の数学的ルールを用いて、この最適な説明を見つけます。

ベイズの考え方にはいくつかの望ましい特徴がありますが、その一つは演繹的(確かな)論理をサブセットとして組み込んでいることです(このことから、E. T. ジェインズに倣って、ベイズの確率を「確率論理」と呼ぶ作家もいます)。

ベイズの人々は、確率を信念の度合いと見なし、確かに真の命題は確率1、確かに偽の命題は確率0とします。

確率の法則によって、結論の確率と選択肢の確率を計算することができます。 最良の説明は、最も確率の高いものと識別されることがほとんどです(ベイズの決定論を参照)。

Fuzzy logicEdit

Main article: ファジー理論

このセクションは拡張が必要です。 あなたはそれを追加することで手助けすることができます。 (2016年10月)

Non-monotonic logicEdit

Main article: 非単調論理

推論の関係は、前提条件を追加しても以前に達した結論が損なわれない場合は単調であり、そうでない場合は非単調となります。演繹的推論は単調であり、ある前提条件に基づいて結論が得られた場合、さらに前提条件を追加してもその結論は成立します。

これに対して、日常の推論は、リスクを伴うため、ほとんどが非単調です。私たちは、演繹的に不十分な前提から結論に飛びつきます。 しかし、このような推論は、新しい情報によって古い結論が覆される可能性があるという、ディフェーブル(defeasible)なものであることも認識しています。 これまで、様々な種類の「敗北可能だが著しく成功した推論」が哲学者の関心を集めてきた(帰納法の理論、Peirceのアブダクションの理論、最良の説明への推論など)。 最近では、論理学者が形式的な観点からこの現象にアプローチし始めました。

その結果、哲学、論理学、人工知能の境界線上に、多くの理論が存在することになりました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です