Azure AI 言語のテキスト分析機能について

完了

Azure AI Language は、非構造化テキストに対して高度な自然言語処理を実行できる Azure AI サービス オファリングの一部です。 Azure AI Language のテキスト分析機能は次のとおりです。

  • 名前付きエンティティ認識 は、人、場所、イベントなどを識別します。 この機能は、カスタム カテゴリを抽出するようにカスタマイズすることもできます。
  • エンティティ リンク は、既知のエンティティと Wikipedia へのリンクを識別します。
  • 個人識別情報 (PII) 検出 は、個人の健康情報 (PHI) を含む個人の機密情報を識別します。
  • 言語検出 はテキストの言語を識別し、英語の場合は "en" などの言語コードを返します。
  • 感情分析とオピニオン マイニング は、テキストが肯定的か否定的かを識別します。
  • 要約では 、最も重要な情報を識別してテキストを要約します。
  • キー フレーズ抽出 では、非構造化テキストの主な概念が一覧表示されます。

これらの機能の一部を詳しく見てみましょう。

エンティティの認識とリンク

非構造化テキストを Azure AI Language に提供すると、認識されるテキスト内の エンティティ の一覧が返されます。 エンティティは、特定の型またはカテゴリの項目です。場合によっては、サブタイプを次に示します。

タイプ サブタイプ
Person "Bill Gates"、"John"
ロケーション "Paris"、"New York"
組織 "Microsoft"
数量 数値 "6" または "六"
数量 百分率 "25%" または "50%"
数量 序数 "1st" または "first"
数量 年齢 "90 日経過" または "30 歳"
数量 通貨 "10.99"
数量 ディメンション "10 マイル"、"40 cm"
数量 気温 "45 度"
日付と時間 "2012 年 2 月 4 日午後 6 時 30 分"
日付と時間 日付 "2017年5月2日" または "2017/05/02"
日付と時間 間隔 "午前 8 時" または "8:00"
日付と時間 DateRange 「5月2日~5月5日」
日付と時間 時間範囲 "午後 6 時から午後 7 時まで"
日付と時間 期間 "1 分 45 秒"
日付と時間 オン "毎週火曜日"
URL https://www.bing.com
電子メール support@microsoft.com
米国ベースの電話番号 "(312) 555-0176"
IP アドレス "10.0.1.125"

Azure AI Language では、特定の参照に リンク することでエンティティのあいまいさを解消するために役立つエンティティ リンクもサポートされています。 認識されたエンティティの場合、サービスは関連する Wikipedia 記事の URL を返します。

たとえば、Azure AI 言語を使用して、次のレストラン レビューの抽出でエンティティを検出するとします。

先週シアトルのレストランで食事をしました。

エンティティ タイプ サブタイプ Wikipedia URL
シアトル ロケーション https://en.wikipedia.org/wiki/Seattle
先週 日付と時間 DateRange

言語検出

Azure AI 言語の言語検出機能を使用して、テキストが書き込まれる言語を特定できます。 送信されたドキュメントごとに、サービスは次の内容を検出します。

  • 言語名 (例: "English")。
  • ISO 6391 言語コード (例: "en")。
  • 言語検出の信頼度を示すスコア。

たとえば、レストランを所有して運営するシナリオを考えてみましょう。 お客様はアンケートを完了し、食べ物、サービス、スタッフなどのフィードバックを提供できます。 顧客から次のレビューを受け取ったとします。

レビュー1: "ランチに素晴らしい場所。スープが美味しかった。"

レビュー 2: "Comida maravillosa y gran servicio."

レビュー3:「クロック・ムッシュ・アヴェック・フリットは素晴らしかった。Bon appetit!"

Azure AI Language のテキスト分析機能を使用して、これらの各レビューの言語を検出できます。次の結果で応答する場合があります。

ドキュメント 言語名 ISO 6391 コード スコア
レビュー 1 英語 en 1.0
レビュー 2 スペイン語 es 1.0
レビュー 3 英語 en 0.9

レビュー 3 で検出された言語は、英語とフランス語の組み合わせが含まれているテキストにもかかわらず、英語であることに注意してください。 言語検出サービスは、テキスト内の 主要な 言語に焦点を当てています。 このサービスでは、アルゴリズムを使用して、テキスト内の他の言語と比較して、フレーズの長さや言語のテキストの総量など、主要な言語を決定します。 主要な言語は、言語コードと共に返される値です。 言語が混在するテキストの結果、信頼度スコアが 1 未満になる場合があります。

本質的にあいまいなテキストや、言語コンテンツが混在しているテキストが存在する可能性があります。 このような状況は、課題となる可能性があります。 あいまいなコンテンツの例は、ドキュメントに制限付きのテキストが含まれている場合、または句読点のみが含まれている場合です。 たとえば、Azure AI Language を使用してテキスト ":-) を分析すると、言語名と言語識別子に対して 不明 な値が生成され、 スコアが NaN ( 数値ではないことを示すために使用されます) になります。

感情分析とオピニオン マイニング

Azure AI Language のテキスト分析機能では、テキストを評価し、各文のセンチメント スコアとラベルを返すことができます。 この機能は、ソーシャル メディア、顧客レビュー、ディスカッション フォーラムなどの肯定的および否定的な感情を検出するのに役立ちます。

Azure AI Language では、事前構築済みの機械学習分類モデルを使用してテキストを評価します。 サービスは、肯定的、中立、負の 3 つのカテゴリでセンチメント スコアを返します。 各カテゴリでは、0 ~ 1 のスコアが提供されます。 スコアは、指定されたテキストが特定のセンチメントである可能性を示します。 1 つのドキュメント センチメントも提供されます。

たとえば、次の 2 つのレストラン レビューでセンチメントを分析できます。

レビュー 1: "私たちは最後の夜にこのレストランで夕食を食べたし、私が最初に気づいたのは、スタッフがいかに親切だったかでした。私たちはフレンドリーな方法で迎えられ、すぐにテーブルに連れて行かれた。お部屋は清潔で、椅子も快適で、食べ物も素晴らしかったです。

および

レビュー2:「このレストランでの食事の経験は、私が今まで経験した中で最悪の一つでした。サービスが遅く、食べ物がひどかった。私はこの施設で二度と食べない。

最初のレビューのセンチメント スコアは、次のようになります。ドキュメントのセンチメント: 肯定的なスコア: 0.90 ニュートラル スコア: 0.10 負のスコア: 0.00

場合によっては、レビューの2回目で応答が返されることがあります。文書の感情分析: ネガティブ ポジティブスコア: 0.00 ニュートラルスコア: 0.00 ネガティブスコア: 0.99

キー フレーズ抽出

キー フレーズ抽出は、テキストからの主要なポイントを識別します。 前に説明したレストランのシナリオについて考えてみましょう。 アンケートの数が多い場合は、レビューを読むのに時間がかかる場合があります。 代わりに、言語サービスのキー フレーズ抽出機能を使用して、主要なポイントをまとめることができます。

次のようなレビューが表示される場合があります。

お誕生日のお祝いでここで夕食を取り、素晴らしい経験をしました。私たちは親切なホステスに迎えられ、すぐに席に案内されました。雰囲気はリラックスしており、料理は素晴らしく、サービスも素晴らしかったです。素晴らしい料理と丁寧なサービスがお好きなら、ぜひこの場所を試してみてください。

キー フレーズ抽出では、次のフレーズを抽出することで、このレビューにコンテキストを提供できます。

  • 誕生祝い
  • 素晴らしい経験
  • フレンドリーなホステス
  • 素晴らしい食べ物
  • きめ細かなサービス
  • 夕食
  • テーブル
  • 雰囲気
  • 場所

次に、Azure AI Language の会話型 AI 機能を見てみましょう。