個人を特定できる情報 (PII) エンティティを認識する

完了

PII (個人を特定できる情報) の検出は、Azure AI Language によって提供される機能です。 非構造化テキストに含まれる個人を特定できる情報 (PII) を識別、分類、編集します。 PII には、メール アドレス、電話番号、支払い情報などが含まれます。

PII 検出 API を呼び出すには、いくつかの方法があります。 ここでは、azure_ai 拡張機能を使用して、SQL クエリのテキストから PII を処理します。

前提条件

azure_ai 拡張機能が有効で構成された Azure Database for PostgreSQL フレキシブル サーバーが必要です。 また、言語リソースのキーとエンドポイントを設定して、Azure Cognitive Services で承認する必要があります。

シナリオ

PII 検出は、次のような複数のアプリケーションに使用できます。

  • 秘密度ラベル:PII の種類に応じて、ドキュメントまたは電子メールを秘密度別に分類します。 電話番号を含むテキストは機密としてマークされる場合があります。一方、クレジット カードまたは銀行口座番号には非常に秘密度の高いラベルが付けられます。
  • サポートと運用の編集:インシデント トリアージやサポート ルーティングなどの多くの運用タスクでは、個人情報は必要ありません。 企業は PII の編集を使用して、従業員のタスクに不要な顧客情報をフィルター処理できます。
  • 無意識の偏りを減らすために個人情報を減らす:企業は、無意識の性別やその他の偏りを軽減するために、名前や住所、その他の情報を削除できます。

Azure Cognitive Services を使用した SQL 内の PII の検出

Azure Database for PostgreSQL フレキシブル サーバーの azure_ai 拡張機能は、SQL 内から AI 機能に直接アクセスするためのユーザー定義関数 (UDF) を提供します。 PII 検出 API には、azure_ai によって提供される azure_cognitive.recognize_pii_entities 関数を使用してアクセスします。

azure_cognitive.recognize_pii_entities(
 text text,
 language text,
 timeout_ms integer DEFAULT 3600000,
 throw_on_error boolean DEFAULT true,
 domain text DEFAULT 'none'::text,
 disable_service_logs boolean DEFAULT false
)

必要なパラメーターは text (入力)、および language (text が書かれた言語) です。 たとえば、en-us は米国英語、fr はフランス語などです。 使用可能な言語の完全な一覧については、「言語サポート」を参照してください。

既定では、3,600,000 ミリ秒 = 1 時間で終了しない場合、エンティティの認識は停止されます。 この遅延は、timeout_ms を変更することでカスタマイズできます。

エラーが発生した場合、既定の動作では例外がスローされ、トランザクションがロールバックされます。 throw_on_error を false に設定することで、この動作を無効にできます。

domain パラメーターを使用して、識別される個人データの種類をカスタマイズできます。 現時点では、既定の none では一般的な PII が使用され、ドメイン phi は個人の健康情報を識別します。

パラメーターの完全なドキュメントについては、「Azure Cognitive Services 拡張機能のドキュメント」を参照してください。

たとえば、次のクエリを呼び出します。

SELECT azure_cognitive.recognize_pii_entities('My phone number is +1555555555, and the address of my office is 16255 NE 36th Way, Redmond, WA 98052.', 'en-us');

次の結果が得られます。

("My phone number is ***********, and the address of my office is ************************************.","{""(+1555555555,PhoneNumber,\\""\\"",0.8)"",""(\\""16255 NE 36th Way, Redmond, WA 98052\\"",Address,\\""\\"",1)""}")

PII サービスは電話番号を信頼度スコア 0.8 で、住所を信頼度スコア 1 で検出しました。 また、2 つの PII データ ポイントを編集した入力も返されました。

入力テキストには次のテーブル列を使用できます。

SELECT description, azure_cognitive.recognize_pii_entities(description, 'en-us')
FROM listings LIMIT 1;

次の値が返されます (\x 拡張表示が有効にした場合)。

recognize_pii_entities | ("New modern house built in 2013. Spectacular sunset/water views, light, rooftop deck and lounge area, hot tub, 5 bedrooms, gourmet kitchen. Perfect for 2-3 families, walk to downtown. Located in highly desirable Queen Anne neighborhood. Our house is modern, light and fresh with a warm simple palette accented with barnwood, steel and concrete. Open living spaces for entertaining, gourmet kitchen, deck off the kitchen, reading nook, half bath and smaller tv room off kitchen. Fireplace with sofa and sitting area. Basement room is great for ****...this room has patio access and a garage door that opens into the space with basketball hoop right outside. A queen bedroom and full bath are in the basement with concrete heated floors. A queen sleeper sofa is in the tv area in the basement. This room has a door if privacy is needed. Great for a second ****** with ****. The 2nd floor has 4 bedrooms (one queen in master, one twin bedroom, another bedroom has twin bunk beds and the last","{""(kids,PersonType,\\""\\"",0.73)"",""(family,PersonType,\\""\\"",0.71)"",""(kids,PersonType,\\""\\"",0.65)""}")

まとめ

PII 検出では、非構造化入力テキストに含まれる個人を特定できる情報が識別され、分類されます。 Azure Cognitive Services 言語モデルで負荷が高い作業を行い、Azure Database for PostgreSQL の azure_ai 拡張機能では、SQL クエリ内から直接 PII を検出して編集する azure_cognitive.recognize_pii_entities API が提供されます。