AIの品質:ゴミを入れれば、ゴミが出る
2024年6月11日
0 分で読めます期限切れでカビの生えた材料をデザートに使えば、見た目はよくても味はひどいものになるかもしれません。そんなものをお客さまに出したいとは思わないでしょう。「ゴミを入れれば、ゴミが出る」(GIGO)は、テクノロジーやAIだけに当てはまる話ではありません。レシピに質の悪い材料を使えば、場合によっては有毒なものができてしまいます。もちろん、少し怪しい見た目でも、フロスティングで覆えば誰にも気づかれないかもしれません。いま私たちが目にしているのは、まさにこの危険性です。
AI/MLでは、すべてがよく見えます。お気に入りのボットを使って、素晴らしそうなコードを手に入れることもできます。コメントがあり、インデントも適切で、役立つライブラリまで使っているかもしれません。しかし、牛乳が傷んでいて、ボットが冷蔵庫からそれを取り出していたなら、コードも酸っぱくなっている可能性があります。
GIGOは概念としてよく語られますが、実際にどのように起こるのか、例を見てみましょう。私は大学で人工知能の講義を担当し、授業では決定木を使ったエキスパートシステムを構築しました。
エキスパートシステムとは、特定の領域や知識分野において、人間の専門家の意思決定能力を模倣する人工知能(AI)プログラムの一種です。ルールや知識、論理的な推論に基づいて、複雑な問題の解決、推奨事項の提示、専門家レベルの助言を行うよう設計されています。この例では、ごく単純な問題を解決します。
エキスパートシステムは、知識ベースに依存します。ここには、特定の領域に関する情報、事実、ルール、ヒューリスティックが保存されます。また、推論エンジンもあります。これはエキスパートシステムの推論を担う部分です。知識ベースの情報を使って結論を導き、判断し、問題を解決します。前向き連鎖(既知の事実から結論へ進む)や後ろ向き連鎖(目標から出発し、根拠を探すためにさかのぼる)など、さまざまな推論手法が用いられます。しかし、ここで重要なのは、システム内のデータです。
課題の内容はシンプルでした。ユーザーが入力した属性をもとに、プログラムが動物を当てるというものです。間違えた場合は、システムに新しい属性を追加します。

このエキスパートシステムでは、プログラムが学習しているように見え、ある種の人工知能を示します。たとえば、ユーザーが猫を思い浮かべている場合、システムはまず「4本足ですか?」に「はい」と答え、次に「吠えますか?」に「いいえ」と答えます。そこからシステムは動物の種類を尋ね、「猫と犬を見分けるには、どんな質問をすればよいでしょうか?」と聞きます。
この場合、ユーザーは「ニャーと鳴きますか?」と答えるかもしれません。

ユーザーが動物を1種類ずつ登録してこのシステムを構築するのは、非常に非効率です。ただし、これは決定木とエキスパートシステムについて学ぶための課題にすぎなかったことを思い出してください。ユーザーがこのゲームを100回プレイすれば、動物が新たに100種類追加される可能性があります。別のユーザーがプレイしたときには、その人が思い浮かべている動物をシステムが特定できる可能性が高まります。
しかし、これらすべては、ある一つのものにかかっています。それは、質の高いデータです。
ユーザーが、猫は確かに吠える、馬はニャーと鳴く、牛はブーブー鳴くと判断したらどうなるでしょうか。システムは動き続けるでしょうか? はい。望ましい結果が得られるでしょうか? いいえ。

エキスパートシステム(および多くの他のAIシステム)は、不完全なデータ、偏ったデータ、人間による入力など、さまざまな理由で失敗することがあります。AIにコードの生成を依頼すると、既存のデータ(学習データ)を参照してコードを作ります。そのデータに誤りや不備があったり、何らかの偏りがあったりすれば、出力にもその問題が反映されます。
エキスパートシステムとLLMは大きく異なります。一方は知識ベースに依存し、もう一方はパターンや関連性から学習します。しかし、どちらもGIGOの問題を抱えており、正確なデータに大きく依存しています。
質の低いデータという「ゴミ」をAIシステムに与えれば、「ゴミ」のような結果が返ってきます。そして、その結果は現実世界に影響を及ぼす可能性があります。私たちはすでにその影響を目の当たりにしています。私たちの調査では、潜在的なリスクがあるにもかかわらず、開発者の4分の3以上が、コード補完ツールを使うために既存のプロトコルを迂回していることがわかりました。
AIの脆弱性について、OWASP Top 10 LLM と、AIに関するレッスンを掲載したSecurity Educationプラットフォームで詳しく学びましょう。
