たとえ個人を直接識別できない情報でも、それが蓄積すると…

元論文:Frontiers | K-anonymity decay in multi-turn clinical large language model conversations

今回の研究は、1回1回の入力では匿名化されているように見えても、AIとの会話を重ねることで特定の患者さんがどんどん特定されやすくなるという問題を取り扱ったものです。

研究の方法

1. データソース

今回の研究では、実際の患者さんのデータの代わりに「SyntheticMass Version 2」という架空の患者さんのデータセットが採用されています。こちらは、年齢や性別などの基本情報、現病歴・既往歴、服用中の薬剤、処置の内容、アレルギー歴、受診歴などを含む133,262人分の合成データになっています。

実際の患者さんのデータを使わなかった理由は、実際のデータで「どの情報を組み合わせると患者さん個人が特定されやすいか」を公表すると、その情報自体が悪用され、患者さんの再識別につながるおそれがあるためであると説明されています。

2. 準識別子の抽出

個人を直接特定するものではないものの、組み合わせると個人を絞り込める可能性がある情報を「準識別子」と呼びます。
具体的には、年齢層、性別、人種、民族、婚姻状況、診断名、処方された薬、受けた処置、アレルギー歴、初めて受診した年などが該当します。

著者らは23個の準識別子をピックアップし、そのうち11個を実際のシミュレーションに使いました。

3. シミュレーション

著者らは、医療従事者がAIとの会話の中で患者さんの情報を少しずつ入力していく状況を想定し、情報の出し方を以下の3パターンに分けてシミュレーションしました。

  • Progressive Refinement model
    実際の臨床現場に近い状況。
    最初に年齢、性別、人種、民族、婚姻状況などの基本情報を伝え、その後に診断名、処方、処置の内容、アレルギー、初めて受診した年などの情報を少しずつ追加していく。
  • Random Ordering model
    情報をランダムな順番で出していくモデル。
    5,000人の患者さんについて、それぞれ30通りのランダムな情報開示のパターンを作り、合計で150,000回のシミュレーションが行われた。
  • Rarity-Ordered model
    珍しい情報から先に出していくモデル。
    具体的には、希少疾患およびその治療に使われるオーファンドラッグの情報、その他その患者さんに特徴的な背景情報などを先に伝える仕組みで、患者さんが特定されやすくなる厳しめの条件を想定したモデルとなっている。
4. k-匿名性

k-匿名性とは、ある情報の組み合わせに該当する人がデータベース内に何人存在するかを示す考え方です。

例えば、「70代」「女性」「Ⅱ型糖尿病」という情報を満たす人を考えたとき、データベース内に該当者が100人いれば、k = 100 となります。
しかし、そこに「透析中」「特定のオーファンドラッグの処方歴あり」「特定の地域に居住している」といった情報が加わると、同じ条件に該当する人は徐々に減っていきます。

その結果、もし該当者が4人になれば k = 4 、1人になれば k = 1 となります。
k = 1 は、データベースの中で「その条件に合う人が1人しかいない」状態のため、たとえ名前が明らかになっていなくても、他の情報と照合できる人にとっては個人を特定しやすい状態といえます。

今回の研究では、AIとの会話の中でk値がどのように下がっていくのかをシミュレーションし、以下の閾値に基づいて評価されました。

  • k < 5
    同じ条件に当てはまる人が5人未満の状態で、他の情報と組み合わせると特定の患者さんが特定されやすくなる可能性がある。
  • k < 11
    同じ条件に当てはまる人が11人未満しかいない状態で、医療関連のデータを集計・公表するときは「k < 11の情報は個人が推測されないように表示を控える」という基準として使われることがある。

結果

1. 79.9%の患者さん(架空のデータ)が、会話中にk < 5の領域に入った

5,000人のシミュレーション対象のうち79.9%が、会話のどこかで k < 5 に到達する結果となりました。また、86.2%が k < 11 に到達し、終了時点では64.6%が k = 1 に到達しています。

ただし、k < 5 になったからといって直ちに現実の患者さんが再識別されることを意味するわけではなく、再識別には会話ログへのアクセス、照合可能なデータベース、標的に関する追加情報が必要であると著者らは整理しています。

2. 小さな情報の積み重ねが、着実にk値を低下させていった
画像
Figure 1:準識別子が増えることによって、k = 133,262から最終的にk = 2まで低下した例
出典:Weatherhead et al. K-anonymity decay in multi-turn clinical large language model conversations, Frontiers in Digital Health, 2026, Figure 1. CC BY. https://doi.org/10.3389/fdgth.2026.1832168

Figure 1では、最初(集団全体)の k = 133,262 の状態に「60代男性」の情報を加えると k = 6,732 に低下し、さらに人種、民族、婚姻状況、診断名、服用中の薬の情報などを加えていった結果、氏名やIDなどが開示されていないにもかかわらず、最終的に k = 2 まで低下したことが示されています。

画像
Figure 2:開示ステップごとのk値の推移
出典:Weatherhead et al. K-anonymity decay in multi-turn clinical large language model conversations, Frontiers in Digital Health, 2026, Figure 2. CC BY. https://doi.org/10.3389/fdgth.2026.1832168
画像
Figure 3:k < 5に到達するまでのステップ数
出典:Weatherhead et al. K-anonymity decay in multi-turn clinical large language model conversations, Frontiers in Digital Health, 2026, Figure 3. CC BY. https://doi.org/10.3389/fdgth.2026.1832168

また、Figure 2,3を見てみると、以下のようなことが読み取れます。

  • Progressive Refinement modelでは、Step 1の年齢層の開示後にkの中央値が133,262から約13,700に、さらに民族情報や主な診断名の追加でk値は大きく減少し、最終的に中央値:7ステップで k < 5 に到達した。
  • Random Ordering modelもProgressive Refinement modelとほぼ同様のk値の減少の仕方となり、最終的に中央値:8ステップで k < 5 に到達した。
  • 先程の2つのモデルと比較すると、先に珍しい情報から出していくRarity-Ordered modelではk値の低下が速く、最終的に中央値:4ステップで k < 5 に到達した。

簡潔にまとめると、通常の臨床現場を模したやり取りに伴う情報の追加でも7ステップ程度で k < 5 に到達し、珍しい情報から追加した場合はさらに短い4ステップ程度で k < 5 に到達するという結果になりました。

画像
Figure 4:閾値(k < 5, k < 11)以上に残る患者さんのデータの割合
出典:Weatherhead et al. K-anonymity decay in multi-turn clinical large language model conversations, Frontiers in Digital Health, 2026, Figure 4. CC BY. https://doi.org/10.3389/fdgth.2026.1832168

最後にFigure 4を見てみると、Progressive Refinement modelでは7ステップ付近でおよそ半数が k < 5 となり、Rarity-Ordered modelでは4ステップ付近でおよそ半数が k < 11 に、5ステップ付近でおよそ半数が k < 5 となったことが示されています。

よって、これまでの結果から、患者さんが特定されるリスクが1つの危険な情報だけで突然発生するというよりは、小さな情報の積み重ねによって徐々に進んでいくということが示唆されました。

注意点

  • Progressive Refinement modelは、あくまで臨床現場における症例提示の慣習に基づく理論モデルであり、実際の医療従事者がAIにどのような順番・粒度で情報を入力しているかを観察したものではありません。実際には、コピー・ペーストで多くの情報を一度に入力するケースも考えられるので、その場合は今回の研究の推定よりもk-匿名性の低下が速くなる可能性があります。
  • 今回の研究は、臨床現場におけるAIとの会話から実際に患者さんが再識別された事例を示したものではありません。

調剤薬局では、さらに多くの情報が入力されうる

薬局内で(AI薬歴等とは別で)ChatGPTやGeminiなどの生成AIを活用されている方であれば、「個人情報は入力しない」「個人が特定できる情報は入力しない」というルールを徹底されているかと思いますが、単体では個人が特定できないような情報であっても、今回の論文で指摘されていたように、組み合わせによっては特定の患者さんにたどり着けてしまう可能性があることに注意しなければなりません。

特に「個人情報っぽく見えない情報」を提示しすぎないように注意が必要です。
具体的に例を挙げると…

  • 家族が毎週受診に付き添っている
  • いつも同じ曜日・同じ時間帯に来局される
  • 仕事の都合で、特定の曜日しか受診できない
  • 旅行や帰省に合わせて長めに処方される予定がある

このような情報は単体では何の手がかりにもなりませんが、複数の準識別子と組み合わせることによって患者さんの特定に至ってしまう可能性もあります。

いちおう誤解のないようにお伝えしておくと、これらを入力すること自体は悪くありません。むしろ、プロブレムに関係するなら前提条件として提示しておくべきです。
ただ、AIとの会話が続いて情報が蓄積していくと、一見無害に見える情報もリスクになりうるということは頭に留めておきましょう。

そもそも、何故一般的な生成AIに個人情報を入力すべきではないのか

医療機関向けに契約・管理された環境、ログの取り扱いが明確な環境、医療機関内だけでAI関連システムの保守・管理・運用が完結する環境(オンプレミス)などでは事情が変わってきますが、前提としてChatGPTやGeminiなどをブラウザやアプリで使う場合は、入力した内容は基本的に外部に送信されるものであると考えておかなければなりません。

そのため、どうしても生成AIに個人情報を入力したいのであれば、最低限以下のような点を確認しておく必要があります。

  • 情報がどこに送られるのか
  • 誰がアクセスできる可能性があるのか
  • ログとして保存されるのか
  • 後から削除できるのか
  • 二次利用されるのか

参考までに、個人アカウントのChatGPTの場合は、ユーザーがチャットを削除してもOpenAIのシステム上では最大30日程度ログが残る可能性があるとされています。
ただし例外として、既に匿名化・アカウントとの関連付け解除が済んでいる場合、またはセキュリティ・法的義務により長期にわたる保持が必要な場合は、30日を超えて保存される可能性があるとも説明されています [1] 。

ゆえに、たとえ学習に使われなかったとしても、一時的とはいえ入力した内容が外部に残るわけですから、ChatGPTへの個人情報の入力は十分リスクになり得るのです。
それだけでなく、今回の研究で示唆されていた「小さな情報の積み重ねによって特定の患者さんに絞り込まれていく」点も考慮すると、単体では個人の特定に至らない情報であっても、生成AIに与えるのは必要最小限にしておいたほうが良いでしょう。


参考資料

[1] OpenAI「ChatGPT のチャットおよびファイルの保持ポリシー」
https://help.openai.com/ja-jp/articles/8983778-chat-and-file-retention-policies-in-chatgpt

コメントを残す

薬剤師のためのAIノートをもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む