知識ベース (G検定)

知識ベース

1. 定義と概要

知識ベースとは、専門分野の知識をIF-THENルールや事実の形でコンピュータが扱えるように整理・蓄積したデータベースです。エキスパートシステム(専門家の知識をコンピュータに持たせ、専門家のように判断させるプログラム)を構成する2大要素の一方であり、もう一方の推論エンジン(知識ベースに蓄積された知識を使って結論を導き出す仕組み)と対になります。MYCINやDENDRAL、常識知識の蓄積を目指したCycプロジェクトなど、代表的なエキスパートシステムはいずれも固有の知識ベースを土台に構築されています。

第2次AIブーム(1980年代を中心に、エキスパートシステムが研究の主役となった時期)では、特定分野の専門知識をコンピュータに与えて専門家並みの判断をさせるエキスパートシステムが研究の中心でした。専門知識をどう表現し蓄積するかという課題に対し、知識をルールや事実として整理する知識ベースという形式が確立されました。知識ベースと、それを使って結論を導く推論エンジンを分離する設計が定着し、知識の追加・更新は知識ベース側の修正だけで済むという運用面の利点が生まれました。一方で、専門家の頭の中にある知識を人手でルールへ落とし込む作業には大きな労力がかかり、この難しさがエキスパートシステム普及の壁の一つになりました。

2. 試験対策ポイント

理解するうえで中心になるのは、知識ベースの定義そのものです。専門家の知識をIF-THENルールや事実の形で蓄積したデータベースであり、エキスパートシステムを構成する2要素(知識ベース・推論エンジン)のうち、知識を格納する側を指すという理解が求められます。

あわせて重要なのが、知識ベースと推論エンジンの役割分担です。知識ベースは知識を蓄積する可変の部分、推論エンジンはその知識を使って結論を導く固定の仕組みという分離構造にあり、知識が増えたり変わったりした場合は知識ベースだけを修正すればよいという設計上の利点とあわせて整理されます。

知識ベース構築上の課題としてセットで扱われるのが、知識獲得のボトルネック(専門家の知識を聞き出してルール化する作業が膨大で難しいという課題)です。専門家からルールを聞き出して言語化する作業は膨大な労力を要し、特に経験や勘のように言葉にしにくい暗黙知(言葉で説明しにくい知識)の取り込みが難しい点は、エキスパートシステムの限界を語るうえで欠かせない論点です。

代表的なエキスパートシステムと、その知識ベースが扱う領域は次のとおりです。

システム 支援した内容 知識ベースが扱う領域
MYCIN 血液感染症の診断 医療(分野固有)
DENDRAL 化学構造の特定(世界初とされる) 化学(分野固有)
Cycプロジェクト 人間の常識的な知識の蓄積 常識全般(汎用)

いずれも分野固有または汎用の知識ベースを土台に構築されており、各システムがどのような知識ベースを持つかという対応関係も押さえておきたいポイントです。

3. 関連概念との比較・相違点

推論エンジンとの最大の違いは、両者が担う役割にあります。知識ベースは専門知識を蓄積する可変の格納庫であるのに対し、推論エンジンは、その知識を使って結論を導く比較的固定の仕組みです。エキスパートシステムはこの2つが分離した構成で成り立っており、知識を追加・修正する際は知識ベース側だけを直せばよいというモジュール性が特徴になります。知識ベース自体が結論を導き出すわけではなく、あくまで知識を格納する側であるという線引きが、両者を取り違えないための軸になります。

一般的なデータベース(DB)との違いは、目的にあります。一般的なDBは顧客情報や取引記録といった事実データを蓄積し、検索・照合してそのまま値を取り出す用途が中心です。これに対し知識ベースは、IF-THENルールなど推論(知識をもとに結論を導き出す処理)に使うための知識を構造化して保持し、推論エンジンによる規則の適用を経て、初めて結論が得られる点で異なります。単なる事実の集合を格納するDBに対し、知識ベースは判断のための規則までを含めて蓄積する点に特徴があります。

4. ビジネス・実務での活用シナリオ

コールセンターや社内サポートの現場では、FAQやトラブルシューティングの手順をナレッジベース化し、チャットボット(利用者からの質問に自動で返答するプログラム)の回答元として活用します。社内規定や製品仕様が変わった際は、応答の仕組みを変えずに知識ベースの記述を追加・修正するだけで対応範囲を広げられます。

医療の臨床意思決定支援では、薬剤の相互作用や診療ガイドラインをルールとして知識ベースに蓄積し、医師の処方判断を補助するCDSS(臨床意思決定支援システム。医師の診断や治療方針の決定を支援するコンピュータシステム)に活用します。新しい薬剤や改訂されたガイドラインが出た際は、知識ベース側を更新する運用がとられます。

法務・コンプライアンスの分野では、社内規程や法令の要件をIF-THENルールとして知識ベース化し、契約書チェックや取引審査を支援します。法改正が起きた際は、該当するルールを知識ベースの中で差し替えるだけで対応できます。

5. 要点まとめ

  • 知識ベースとは、専門家の知識をIF-THENルールや事実の形で蓄積したデータベースであり、エキスパートシステムを構成する2要素の一方にあたります。
  • もう一方の推論エンジンは知識ベースの知識を使って結論を導く役割を担い、両者を分離することで知識の更新は知識ベース側の修正だけで済みます。
  • 専門家の知識を人手でルール化する知識獲得のボトルネックは、知識ベース構築における代表的な課題としてセットで扱われます。

6. 確認問題

問1知識ベースとは、専門家が持つ知識をIF-THENルールや事実の形でコンピュータが扱えるように蓄積したデータベースであり、エキスパートシステムを構成する要素の一つである。

解答・解説をみる

○ 正しい

知識ベースはエキスパートシステムの2大要素(知識ベース・推論エンジン)のうち、専門知識を格納する側を指します。もう一方の推論エンジンとあわせて理解しておく基本の定義です。

問2エキスパートシステムにおいて、知識ベースに蓄積された知識をもとに結論を導き出す処理は、知識ベース自身が担っている。

解答・解説をみる

× 誤り

結論を導く処理は推論エンジンの役割です。知識ベースはあくまで知識を格納する側であり、推論エンジンが知識ベースの知識を使って結論を導きます。役割を入れ替えた説明は取り違えやすい選択肢です。

問3知識ベースと推論エンジンを分離した設計には、知識が追加・変更された際に知識ベースだけを修正すればよいという利点がある。

解答・解説をみる

○ 正しい

推論エンジンは知識ベースを使って結論を導く仕組みとして比較的固定される一方、知識ベースは可変です。この分離により、推論エンジン自体を作り直さなくても知識の更新が行えます。