TT Lab
はじめる
学ぶ 学習パス コース

保険ドメイン深化

名前を消したのに、誰なのか分かってしまった

TT Labで続きを見る

一言でいうと

非識別化は、名前を消すことではなく、残った値の組み合わせでも、1人の人物が特定されないようにすることです。そしてそれができたかどうかは、気分ではなく、kを数えて確認します。

なぜ必要なのか

「請求の支払いがなぜ遅れるのかを分析したい」と言って、データをほしいという依頼が入ります。依頼する側は、社内の分析チームかもしれず、外部のコンサルティングかもしれません。名前と会員番号を消して渡せばよさそうですが、残ったものだけでも人が特定される場合が多くあります。生年月日と性別と住んでいる地域の郵便番号、この3つがそろっていると、ほとんどの人は自分のデータを見分けることができ、同窓会名簿や社内の住所録を持っている人は、他人のデータも見分けます。これが準識別子(quasi-identifier)の問題です。直接識別子は、1つで人を指し示し、準識別子は、複数が集まって人を絞り込みます。

健康情報には、ここにもう1つ層があります。診断コードは、分析に欠かせない値であると同時に、最も機微な値です。国内では個人情報保護法が、健康に関する情報を機微情報として別に規定して、より厳しく扱うよう定めており(第23条)、そのため、「名前だけ消しました」という説明では、持ち出し承認を得にくいです。

どう動くのか

点検項目のお手本としてよく引用されるのが、米国HIPAAの非識別化基準です。45 CFR 164.514は、2つの道を示しています。1つは専門家の判断(expert determination)で、もう1つはSafe Harborです。Safe Harborは、識別子18種類をなくすよう列挙していて、その中に注目すべきルールが3つあります。

この規定は、米国の医療機関とその協力会社に適用されるものであり、韓国の保険会社にはそのまま適用されません。しかし、「何を見落としたか」を確認するリストとしては、依然として役に立ちます。

リストをすべて守っても残るリスクを測るものさしが、k-匿名性です。準識別子の組み合わせが同じ行が何行あるかを数え、その最小値をkと呼びます。kが1なら、その組み合わせを知っている人は、1行を正確に選び出せます。kを上げる方法は2つだけです。値をぼかすか(一般化)、行を除くか(抑制)。一般化は情報の損失が少なく、抑制は確実ですが、分析に使えるデータが減ります。そのため、順序が重要です。まず一般化し、それでも残る小さな組み合わせだけを抑制します。逆にすると、捨てる行が雪だるま式に増えます。

원본:      1971-04-02 · F · 80712  →  이 조합을 가진 줄이 1개 (k=1)
일반화:    1971 · F · 807          →  이 조합을 가진 줄이 9개 (k=9)
작은 지역: 1943 · M · 000          →  인구가 적어 앞자리까지 지움
억제:      조합이 5개 미만인 줄은 반출하지 않음

現場での姿

最もよくある事故は、1つのファイルだけを見て安全だと判断することです。先月送った抽出分と今回の抽出分を並べると、2回とも出た人の組み合わせが減り、お互いを絞り込み合います。そのため、持ち出し記録に、何をいつ誰にどのルールで出したかを残します。記録がなければ、次の依頼が来たときに、リスクを計算し直すこともできません。

2つ目は、kだけを見て安心することです。kが5でも、その5行の診断コードがすべて同じなら、誰なのかはわからなくても、その人がどんな病気で請求したかは現れます。値そのものが漏れるこの問題は、kでは防げません。機微な列は、組み合わせの中で値が何種類あるかを、別に見るのがよいです。

3つ目は、元に戻すための鍵を一緒に送ることです。同じ条文の再識別の条項は、元に戻せるコードを付けるとしても、そのコードが元の値から導かれてはならず、その方法を公開してはならないと書いています。会員番号をそのまま使ったり、会員番号をハッシュして付けたりすると、この条件に違反します。

実務で本当に大切なこと

次のラボですること

合成請求データ800件を作り、直接識別子を取り除いてkを数えたあと、日付の一般化と高齢のまとめ、小さな地域とまれな診断コードの処理を、順に適用します。そのうえでkが5未満の組み合わせを抑制して持ち出し分を作り、再識別を自分で試して、その人が何人の中に隠れているかを測り、持ち出し記録と点検リストを残します。採点ツールは、ステップごとに前のステップのファイルから結果を計算し直して、1行ずつ突き合わせます。