ハウツー: トピック モデリングのオペレーション

このガイドの手順に沿って、トピック モデルの作成、ファインチューニング、デプロイなどのオペレーションを行う方法を学習します。

始める前に

  1. 始める前にの手順を完了します。
  2. サービス アカウントに割り当てられたロールで、トピック モデリングに使用するプロジェクトへの書き込みアクセスと、Cloud Storage API への読み取りアクセスが許可されていることを確認します。

    次の 2 つのロールは書き込みアクセス権を提供します。

    • プロジェクト > オーナー
    • プロジェクト > 編集者

会話のインポートに関するデータ レコメンデーション

V2 モデルは、次のガイドラインに準拠している限り、小規模なデータセットで動作します。

  • エージェントと顧客の間で少なくとも 5 回のやり取りがある会話を 100 件以上使用します。
  • 最適な結果を得るには、1,000 ~ 10,000 件の会話を使用することをおすすめします。

会話データは、音声ファイルまたは JSON 形式のテキスト ファイルとして指定できます。会話データを Cloud Storage にアップロードする形式と手順の詳細については、会話データのリファレンスをご覧ください。

会話データをインポートしたら、API を使用して会話を一覧表示したり、フィルタリングしたりできます。

トピックモデルの作成

次の手順に沿ってトピックモデルを作成します。

コンソール

Customer Experience Insights コンソールでトピック モデルを作成する手順は次のとおりです。

  1. CX Insights コンソールに移動し、Google アカウントでログインして、プロジェクトを選択します。

    CX Insights コンソール

  2. [model_training トピックモデル] > [+ 新規作成] をクリックします。

  3. モデルの表示名を入力し、モデルサイズを選択します。

  4. 省略可: [言語] リストから言語を選択して、英語以外のモデルをトレーニングします。CX Insights は、フランス語、ドイツ語、イタリア語、スペイン語、ポルトガル語をサポートしています。これにより、選択した言語の会話が自動的にフィルタされ、トレーニングで使用されます。

  5. [続行] をクリックします。

  6. すべての会話をインポートするか、会話をフィルタするかを選択します。[インポートした会話をフィルタする] を選択した場合は、フィルタを選択して [続行] をクリックします。

  7. 省略可: [業種別テンプレート] を選択し、[続行] をクリックします。

  8. カスタム トピックを入力またはアップロードします。

  9. [トレーニングを開始] をクリックして、新しいトピックモデルのトレーニングを開始します。

REST API

CX Insights API からトピック モデルを作成する手順は次のとおりです。

  1. issueModel リソースで create メソッドを呼び出します。
  2. モデル定義を使用して、CX Insights API に作成リクエストを送信します。
  3. 表示名とトレーニング データ構成に加えて、リクエストにモデルタイプ TYPE_V2 を含める必要があります。
  4. リクエストで language_code フィールドを指定して、特定の言語のモデルをトレーニングすることもできます。

REST

リクエストのデータを使用する前に、次のように置き換えます。

  • PROJECT_ID: プロジェクト ID。
  • MODEL_NAME: 新しい問題モデルの名前(人が読める形式)。

HTTP メソッドと URL:

POST https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/issueModels

リクエストの本文(JSON):

{
  "display_name": "my new test model",
  "input_data_config": {
      "filter": "medium=\"CHAT\"",
      "custom_taxonomy": {
        "taxonomy_entries": [
          {
            "display_name": "reschedule car service"
          },
          {
            "display_name": "problem with windshield wipers"
          }
        ]
      },
      "industry": "auto",
      "issue_granularity": "STANDARD"
   },
   "model_type": "TYPE_V2",
   "language_code": "en-US"
}

リクエストを送信するには、次のいずれかのオプションを展開します。

次のような JSON レスポンスが返されます。

{
  "name": "projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID"
}

オペレーションのステータス

トピックモデルの作成は長時間実行オペレーションです。これは次の 2 つを意味します。

  1. エンドユーザーとの会話中に、実行時にトピックモデルを作成することはできません。
  2. トピック モデルの作成には時間がかかり、トレーニング データセット内の会話の数によって異なります。会話数が 1,000 件以上のジョブが完了するまでに 1 時間以上かかることがあります。

これらの制限はありますが、オペレーションのステータスをポーリングして、完了したかどうかを確認できます。

トピックモデルをファインチューニングする

CX Insights コンソールを使用してトピック リストを変更し、今後のトピックの割り当てを改善します。

トピックを追加または編集する

モデルがまだ表現していない領域をカバーするトピックを追加することで、トピック リストを変更できます。トピックを追加する手順は次のとおりです。

  1. [トピックモデル] ページで、トピックモデルのいずれかをクリック > [トピックを追加] をクリックします。
  2. [トピック名] と [トピックの説明] を入力し、[完了] をクリックします。

トピックの名前や説明を更新して、ビジネス ユースケースに一致する、またはより適した会話の主題をより適切に説明することもできます。トピックの名前または説明を編集する手順は次のとおりです。

  1. トピック リストからトピックに移動し、more_vert > edit トピックを編集をクリックします。
  2. 名前と説明を入力し、[完了] をクリックします。

トピックを削除する

CX Insights コンソールで、次の手順に沿って、最終的なトピック リストとトピック推論の結果からトピックを削除します。

  1. CX Insights が有効になっているプロジェクトを選択します。
  2. [model_training] [Topic Models] をクリックして、トピック モデルを選択します。
  3. トピックに移動し、more_vert > do_not_disturb_on [トピックを削除] をクリックします。

トピックモデルをデプロイする

次の手順に沿って CX Insights コンソールからトピックモデルをデプロイすると、将来の会話の分析に使用できるようになります。

  1. CX Insights コンソールで、model_training トピック モデルをクリックします。
  2. トピックモデルに移動し、more_vert > [デプロイ] をクリックします。

会話を再分析する

既存の分析に新しい変更を適用するには、次の手順に沿って CX Insights コンソールで会話を再分析します。

  1. [ニュース 会話ハブ] をクリックします。
  2. 次のいずれかを選択します。
    • 1 つの会話を再分析するには、リストから会話を選択して [再分析] をクリックします。
    • 一括分析を行うには、[会話履歴] に移動し、会話フィルタを [分析ステータス = 分析済み] に設定して、[分析] をクリックします。

トピックを推測する

リアルタイムのトピック推論を使用すると、会話中に以前に作成したトピックモデルを使用して、トピックをリアルタイムで推論できます。次の手順に沿って、CX Insights API を使用して、エンドユーザーの発話のトピックをランタイム時に推測します。

  1. analyses リソースの create メソッドを呼び出します。
  2. すべてのアノテーターを実行するには、アノテーター セレクタを指定せずに create メソッドを呼び出します。
  3. トピック推論の結果は analysisResult リソースにあります。

トピック モデルのデプロイを解除する

デプロイされたトピックモデルを使用して新しい会話を分析する前に、そのトピックモデルに変更を加える必要がある場合は、CX Insights API を使用してデプロイを解除できます。

  1. issueModel リソースの undeploy メソッドを呼び出します。

モデルのデプロイ解除は長時間実行オペレーションです。オペレーションのステータスをポーリングして、完了したかどうかを確認できます。

トピック モデルを削除する

最後に、CX Insights API を使用してトピック モデルを削除できます。

  1. issueModel リソースの delete メソッドを呼び出します。

トピックモデルの削除も長時間実行オペレーションであるため、ステータスをポーリングして、完了したかどうかを確認できます。

次のステップ