本文へ移動

G検定(ジェネラリスト検定)

ちしきかくとくのぼとるねっく

知識獲得のボトルネック

Knowledge Acquisition Bottleneck

知識獲得のボトルネックは、専門家が持つ知識を聞き取り、コンピュータが扱える形に書き起こしてシステムへ入れる作業に時間と手間がかかり、その作業の遅さがエキスパートシステム作り全体の進み具合を制限してしまうという課題を指す呼び名です。

詳しい説明

知識を移す作業がシステム作りの流れを細くする

知識獲得のボトルネックは、エキスパートシステムを作るときに、専門家の知識をシステムへ移す作業がなかなか進まず、それがシステム作り全体の進み具合を決めてしまうという課題を指す呼び名です。

ここでいう知識獲得とは、専門家が頭の中に持っている知識を聞き出し、コンピュータが扱える形に書き起こしてシステムに入れる作業のことです。エキスパートシステムでは、知識はたとえば「もし条件が成り立つならば、この結論を導く」というIF-THEN形式のルールとして書き込まれます。

ボトルネック(bottleneck)は英語で瓶の首を意味します。瓶の口が細いと、中身の量が多くても一度に注げる量は口の太さで決まります。そこから、全体の流れを制限している最も狭い箇所を指す言葉として使われます。この語では、知識獲得の作業がその狭い箇所にあたる、という見方を表しています。

エキスパートシステムの作り方から生まれる課題

エキスパートシステムは、知識を蓄える知識ベースと、その知識を使って推論を進める推論エンジンに分けて作られます。推論の仕組みを作り終えても、知識ベースの中身は、その分野の専門家の知識を人が書き起こさなければ増えません。

1977年に、エドワード・A・ファイゲンバウム(Edward A. Feigenbaum)は、このように専門家の知識をプログラムに持たせてシステムを作る仕事を知識工学(knowledge engineering)と呼び、その実践例としてDENDRAL・マイシン(MYCIN)・PUFFなどのシステムを紹介しました。知識工学に携わり、専門家の知識をシステムに組み込む役を担う人は、知識工学者と呼ばれます。

1977年の論文が挙げた問題

ファイゲンバウムは同じ論文の結びの部分で、知識獲得の問題(knowledge acquisition problem)に集中して取り組む必要があると述べています。あわせて、知識工学者がその時点で直面している問題として、専門家の知識を移すことの難しさ、適切なハードウェアの不足、知識工学者の人数の不足などを挙げています。

つまり、エキスパートシステムを作る現場では、専門家の知識をどう引き出して書き起こすかが、早い時期から取り組むべき問題として意識されていたことが分かります。

なぜ時間と手間がかかるのか

知識獲得に手間がかかる理由は、いくつかに分けて考えることができます。

1つ目は、専門家が自分の判断の理由をいつも言葉にできるとは限らないことです。説明のための仮の例を挙げます。経験の長い医師が患者を診て「この人は様子を見てよい」と判断したとき、その理由を尋ねても、医師自身が根拠をすべてルールの形で答えられるとは限りません。言葉にならない判断は、IF-THENルールに書き起こすことが難しくなります。

2つ目は、システムが扱える範囲が、書き込まれたルールの範囲に限られることです。ルールに書かれていない状況に対応させたければ、専門家から聞き取ってルールを書き足す作業をもう一度行う必要があります。

3つ目は、この作業を担える人が限られることです。専門家の時間を借りながら、その話をシステムの形に書き起こせる人がいなければ、作業は進みません。ファイゲンバウムが知識工学者の不足を問題に挙げているのも、この点に関わります。

呼び名の由来について分かっていること

知識獲得のボトルネックという呼び名が誰によっていつ最初に使われたのかは、はっきりしていません。このページで確認したファイゲンバウムの1977年の論文(要旨と第1・2・5節)には、知識獲得の問題という言い方はありますが、ボトルネックという語を使った表現は見当たりませんでした。ボトルネックというたとえがいつからこの課題に使われるようになったのかも、確認できていません。

そのため、この語は特定の人物が名付けた用語として覚えるよりも、専門家の知識をシステムへ移す作業が難しく、それが開発の制約になるという課題の中身で理解しておくのが確かです。また、この課題がAIの研究や開発の歴史のどの出来事をどれだけ引き起こしたかについても、このページで確認した資料だけでは言い切れません。

機械学習との関係

機械学習は、判断のための規則を人がすべて書き込む代わりに、データからその規則をコンピュータ自身に見つけさせる方法です。人が専門家から聞き取ってルールを1本ずつ書く作業を必要としない点で、エキスパートシステムとは知識の入れ方が違います。

ただし、機械学習を使えば知識を用意する手間が消えるわけではありません。人がルールを書く手間の代わりに、学習に使うデータを集め、正解の付いたデータを用意する手間がかかります。知識獲得のボトルネックという語を理解するときは、機械学習は課題の形を変える方法であり、準備の手間そのものは別の形で残るという点もあわせて押さえておくとよいでしょう。

試験で問われること

G検定

  • 専門家の知識を聞き出し、ルールなどコンピュータが扱える形に書き起こす知識獲得の作業が、エキスパートシステム作り全体の進み具合を制限してしまうという課題を指します。
  • 推論エンジンを作り終えても、知識ベースの中身は専門家の知識を人が書き起こさなければ増えないことが、この課題の出どころです。
  • 手間がかかる理由には、専門家が判断の理由をいつも言葉にできるとは限らないこと、ルールに書かれていない状況には対応できないこと、書き起こしを担える人が限られることがあります。
  • ファイゲンバウムは1977年の論文で知識獲得の問題に集中して取り組む必要を述べ、専門家の知識を移すことの難しさや知識工学者の不足を問題として挙げています。ただし、ボトルネックという呼び名を誰がいつ最初に使ったかは確認できていません。
  • 機械学習は人がルールを書く代わりにデータから規則を見つけさせる方法ですが、学習用のデータを集めて整える手間が代わりに生じます。

最終更新日: 2026/09/23