見出し画像

ChatGPTの嘘を防ぐ:医療現場での活用に向けた実践的アプローチ

Ubie株式会社で医療プラットフォームの開発に携わっている医師の白石 達也です。現在、「ユビー生成AI」の開発チームに所属しています。

ChatGPT✖️医師の本を書いています。(2025年2月に出版予定)

医療現場で、ChatGPTをはじめとする生成AI活用が期待される一方で、その回答が不正確であったり、事実と異なる情報が出力されるという課題も存在します。本記事では、この生成AIが『嘘をつくこと』を克服し、医療現場でより安全かつ効果的に活用するための実践的なアプローチについて解説します。

Ubie生成AIアドベントカレンダーの記事になります。)


ハルシネーションの基本的な原因


あいまいなプロンプト

質問内容が不明確な場合、AIは不正確な回答を生成しやすくなります。また複数回出力したときに回答のばらつきが大きくなります。同じプロンプトでも、複数回実行すると回答にばらつきが生じることがあります。回答がばらつくプロンプトは、詳細な指示を追加することで改善の余地があります。

生成の長さが長い

生成される応答が長くなるほど、ハルシネーションが発生する可能性が高くなります。

明確なコンテキストの欠如

生成AIの学習時点でデータ・にコンテキストが欠けていると、正確に回答できず、結果としてハルシネーションを起こす可能性があります。

外部参照ソースの欠如

データベースや検索エンジンなどの外部ソースにアクセスできない LLM では、特定の情報を生成する必要があるときにエラーが発生する可能性があります。

ハルシネーションを減らすための戦略


ハルシネーションを減らすためには、以下の戦略が有効です。

「わからない」と回答させる

不明確な情報や確信が持てない場合は、AIに「わからない」「情報が不十分」と明示的に回答させることで、不確実な情報を出力するリスクを減らせます。「記載がない」「該当なし」など、状況に応じた適切な表現を事前に定義しておくと良いでしょう。
プロンプト例:

心筋梗塞について、以下の項目について答えてください。
・運動が心筋梗塞の予防になるか
・どこまでの筋トレが心筋梗塞の予防にとってよいか
・ヨーグルトを食べることが心筋梗塞の予防になるか
・納豆を食べることが心筋梗塞の予防になるか
不明な点がある場合は、「自信を持って回答するには情報が不十分です」と答えてください。

事実の根拠として直接引用を使用する

回答を生成する前に、参照元のテキストから引用を抽出するように指示します。これにより、回答が実際の情報に基づいていることを保証し、ハルシネーションを抑制できます。特に、長い文章を要約する場合に有効です。
プロンプト例:

心筋梗塞について、以下それぞれの質問項目について参考文を元にして答えてください。
1. 参考文の最も関連のある箇所から正確な引用を抽出します。関連する引用が見つからない場合は、「関連する引用は見つかりませんでした」と記載します。
2. 引用を使用して、質問文に対する回答を作成します。回答は、抽出した引用のみに基づいて行います。

<質問項目>
・運動が心筋梗塞の予防になるか
・どこまでの筋トレが心筋梗塞の予防にとってよいか
・ヨーグルトを食べることが心筋梗塞の予防になるか
・納豆を食べることが心筋梗塞の予防になるか
不明な点がある場合は、「自信を持って回答するには情報が不十分です」と答えてください。

<参考文>
(略〜ガイドラインなど)

引用による検証

回答の根拠となる引用と出典を提示させることで、回答の信頼性を高めます。回答を生成した後で、裏付けとなる引用を見つけるように指示することも有効です。引用が見つからない場合は、回答を削除する必要があります。
プロンプト例:

心筋梗塞について、以下それぞれの質問項目に対する回答を参考文を元にして答えてください。
作成後、各回答について、それを裏付けるドキュメントからの直接引用を見つけます。主張を裏付ける引用が見つからない場合は、その回答を削除し、削除した場所に [引用できず]と記載します。
<質問項目>
・運動が心筋梗塞の予防になるか
・どこまでの筋トレが心筋梗塞の予防にとってよいか
・ヨーグルトを食べることが心筋梗塞の予防になるか
・納豆を食べることが心筋梗塞の予防になるか
不明な点がある場合は、「自信を持って回答するには情報が不十分です」と答えてください。

<参考文>
(ガイドラインなど)

また、特に参考文などがない場合においても、何を根拠に回答しているかを確認することも有用です。
プロンプト例:

この答えを、この出来事に関する既知の歴史的事実と照らし合わせて検証してください。

ステップバックプロンプト

AIに自身の回答を再評価させ、正確性を確認させる手法です。AIが自身の誤りを認識し、修正するのに役立ちます。
プロンプト例:

心筋梗塞の原因を説明してください。次に、一歩下がって、説明がすべての重要なポイントを正確にカバーしているかどうかを確認してください。

出力を制限する

回答の長さや範囲を制限することで、AIが話題から逸れたり、不必要な情報を生成するリスクを減らせます。トークン数や単語数を制限することで、出力の長さを制御できます。
プロンプト例:

100 語以内で、心筋梗塞の主な概念を説明してください。

出力用のテンプレートを用意する

複雑なタスクや長い文章の要約などを行う場合、テンプレートを使用することで、回答の構造を明確にし、混乱を最小限に抑えることができます。
プロンプト例:

提供された文章に基づいて、病気の特徴を要約してください。
回答の形式は、以下のようになります。
1. 原因
2. 治療
3. 検討中の最新の治療

思考の連鎖の検証

最終的な答えを出す前に、その推論を段階的に説明してもらいます。これにより、誤った論理や仮定が明らかになることがあります。

Best-of-N 検証

同じプロンプトを複数回実行させ、出力を比較します。出力間の不一致はハルシネーションを示していることがあります。

検索拡張生成(RAG)を使用する

外部の検索システムと連携し、検索結果に基づいて回答を生成します。参照するデータを制限したり、検索方法を工夫することで、より正確な回答を得ることができます。
Perplexity.aiGenspark.aifelo.aiなどの仕組みになります。参照するデータを制限する(例えば社内のものだけにする)、検索の仕方を工夫する(例えば検索キーを生成AIに考えてもらう)などの方法でカスタマイズすることが可能です。生成AIによる出力結果の一部をプレースホルダーとして、検索システムの回答で置換したり、テンプレートの一部のみを生成AIで生成するなどの方法も有効です。

画像解釈のハルシネーションを減らす方法


以下のようにまずしっかり観察してそれに基づいて答える、というようなやり方をとると画像解釈においてのハルシネーションが減ったと言う報告があります。

以下のルールの画像に基づいて質問に答えてください:

画像を注意深く観察し画像の内容に基づいて解答する。

画像があなたの知識や常識と相反する場合、知識や常識に反する場合は、そのイメージに優先順位をつける。

(論文では英語での指示になっています。)

紹介・弊社について


Ubie(ユビー)株式会社では、「ユビー生成AI」をはじめとした医療機関向けのサービスに加え、一般向けに症状チェック・PHR・医療機関検索・医療メディアを提供しております。うまくつながった体験を作って医療に関わる方の体験の向上を目指しています。

医療機関向け「ユビー生成AI」について気になった方は以下をご覧下さい。

医療×生成AI・ITの企業ユビーの採用が気になる方は以下をご覧ください。

他のおすすめ記事


医療とAIに関してメインに発信しております。

参考







いいなと思ったら応援しよう!