モデル・テスト

次に、自然言語を理解するためのモデルをテストするためのベスト・プラクティスを示します。

各スキルのモデルの理解をテストし、後でデジタル・アシスタント全体についてテストする必要があります。ドメイン内メッセージをインテントに正しくマップする方法を理解し、ドメイン外メッセージに応答しないスキルの十分にトレーニングされたモデルは、十分にトレーニングされたデジタル・アシスタントの重要な柱です。

Oracle Digital Assistantは、モデルがユーザー・メッセージからインテントをどの程度適切に解決するかの手動およびバッチ・テストを実行できる発話テスターをスキルで提供します。バッチ・テストでは、インテントに対して定義したが、テストのために保持した発話の20%を使用します。

一般的に、モデルのテストは頻繁に行う必要がありますが、スキルのインテントに対して十分な発話が得られるまでは行わないでください。テストの目的は、モデルがインテントの解決に高いレベルの信頼を得ることです。

ベースラインの作成

開発が完了したら、テストを実行し、結果を使用してモデルの理解レベルのベースラインを確立する必要があります。このベースラインは、トレーニング・モデルを追加および改善された発話で更新するとき、および後でデジタル・アシスタント・プラットフォームの更新されたバージョンでスキルをテストするときに、比較ポイントとして使用できます。これらのテストおよび将来のテストでは、十分な数の品質発話でトレーニングされたモデルが必要です。

正および負のテストの実行

ポジティブ・テストとネガティブ・テストの両方が必要です。

  • 肯定的なテストでは、指定したインテントに発話を解決します。テストに合格すれば合格するほど、モデルがトレーニングされます。

  • 負のテストの場合、発話を解決しないようにします。負のテストは、インテントに対する理解の境界を狭めるのに役立ちます。

たとえば、ポジティブ・テストの場合、経費精算書スキルで経費の作成インテントをテストするとします。ポジティブ・テストのすべての発話には、このインテントに解決する必要があるメッセージが含まれます。そのため、テストに合格すれば合格するほど、モデルがトレーニングされます。

負のテストには、次のタイプのテストが含まれます。

  • ネイバー・テスト: 作成した発話でインテントをテストして、スキル内の他のインテントをテストします。

  • ドメイン外テスト: これらのテストでは、意味的にインテントに属していないが類似の単語を使用する発話を試みます。たとえば、経費レポートでは、新しい経費の申告を要求するユーザーとして「仕事のために家族カレンダーを購入しました」を理解する必要がありますが、「家族カレンダーに新しいエントリを作成」には応答しないでください。

  • ランダム・フレーズ・テスト: ランダム・メッセージの試行は、テストするインテントに解決しないでください。たとえば、「cookie cutter cuts cookies」や「I am on a stairway to heaven」は、「create expense」インテントの照合にはなりません。

モデル・テストのチェックリスト

  • ☑ 早期にテストし、頻繁にテストします。
  • ☑ トレーニングされていないモデルをテストしないでください。
  • ☑ポジティブ・テストとネガティブ・テストを使用します。
  • ☑テストに使用される発話は、トレーニング発話と同じ品質である必要がありますが、トレーニングに使用される発話と同じではありません。
  • ☑発話をテストする際の信頼度しきい値を超えた結果を目指します。(ただし、100%の信頼度は目標ではありません。)
  • ☑スキルを本番環境に移行する前に、実行する将来のテストのベースラインとしてテスト結果をノートにとります。

さらに学ぶ