OpenAIがテキスト中の個人情報を検出・マスキングする「OpenAI Privacy Filter」をオープンソースで公開しました。ローカル環境で処理でき、F1スコア96%の高精度を実現し、複数言語に対応しています。
OpenAIがテキスト中の個人情報を検出してマスキングするモデル「OpenAI Privacy Filter」を公開しました。このツールは個人を特定できる情報の検出と伏せ字化に特化した小型モデルで、未加工の文書を外部サーバーに送らずローカル環境で処理できる点が特徴です。Apache 2.0ライセンスの下、GitHubとHugging Faceを通じて提供されています。
OpenAI Privacy Filterは、文書中の個人名、住所、メールアドレス、電話番号、URL、日付、口座番号、パスワードやAPIキーなどの機密情報を含む8種類の情報を対象に検出を行います。
自己回帰型の事前学習済みモデルをベースに、双方向のトークン分類モデルへ変換する設計になっており、入力文を1トークンずつ生成するのではなく、一度の推論で全体をラベル付けしていく仕組みを採用しています。固有表現のBIOESタグと制約付きViterbiデコードを使って連続した伏せ字範囲を整える方式により、長文でも高速に処理できます。最大12万8000トークンのコンテキストを扱え、モデル規模は総計15億パラメータで、実行時に有効なのは5000万パラメータです。
従来のPII検出ツールは電話番号やメールアドレスのような定型フォーマットには強い一方で、文脈依存の個人情報や微妙なケースを見落としやすいとされます。OpenAI Privacy Filterは言語理解と文脈認識を組み合わることで、公開情報として残すべきものと、私的な個人情報として隠すべきものをより細かく見分けられるよう設計されています。
性能面では、PII-Masking-300kベンチマークでF1スコアが96%、精度94.04%、再現率98.04%を記録しました。OpenAIが注釈上の問題を補正した版ではF1スコアが97.43%、精度が96.79%、再現率が98.08%に達しています。コードベース内の認証情報検出を評価するCredDataでも検出を行い、トークン単位のF1スコアは補正版で84.4%でした。
法務相談や医療相談を模したSPYデータセットでは、追加学習前のF1が54.5%だったのに対し、学習データの10%だけで96.2%まで改善しており、ドメインごとの方針に合わせた微調整のしやすさが強調されています。
OpenAIは言語別評価も行っており、PII-Masking-300kでは英語、オランダ語、フランス語、ドイツ語、イタリア語、スペイン語で結果を示しています。追加の多言語合成評価では日本語、中国語、韓国語、ヒンディー語、アラビア語、ロシア語なども検証され、日本語では再現率86.6%、適合率89.7%、F1スコア88.1%という値が示されています。
ただし、OpenAI Privacy Filterは完全な多言語対応モデルとして打ち出されているわけではなく、対応言語は「主に英語」とされています。OpenAIは「英語以外のテキストや非ラテン文字、学習分布と異なる表記では性能が低下する可能性がある」と注意を促しています。
なおOpenAIは、OpenAI Privacy Filterを匿名化そのものや法令順守の保証として使うべきではないと明記しています。あくまでプライバシー保護の一要素であり、組織ごとに異なるマスキング方針には追加学習が必要になる場合があります。医療、法務、金融、行政のような高リスク分野では人手による確認を残すべきだとしています。
