トレーニング
ラーニング パス
Use advance techniques in canvas apps to perform custom updates and optimization - Training
Use advance techniques in canvas apps to perform custom updates and optimization
このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
重要
LUIS は 2025 年 10 月 1 日に廃止され、2023 年 4 月 1 日から新しい LUIS リソースを作成できなくなります。 継続的な製品サポートと多言語機能のベネフィットを得るために、LUIS アプリケーションを会話言語理解に移行することをお勧めします。
Language Understanding (LUIS) アプリ スキーマには、サブジェクト ドメインに関連する意図とエンティティが含まれています。 意図はユーザーの発話を分類し、エンティティはユーザー発話からデータを抽出します。 サブジェクト ドメインに関連する意図とエンティティ。 意図により、ユーザーの発話が分類されます。
LUIS アプリは、反復的に開発すると、最も効率的に学習して実行します。 次に、一般的な反復サイクルを示します。
LUIS アプリはサブジェクト ドメインが中心です。 たとえば、旅行アプリではチケット、フライト、ホテル、レンタカーの予約を扱うことが考えられます。 また、エクササイズ、フィットネスの努力の追跡、目標設定に関連するコンテンツを提供するアプリなどもあります。 ドメインを特定することで、ドメインに関連する単語やフレーズを見つけやすくなります。
ヒント
LUIS には、多くの一般的なシナリオに対応する事前構築済みのドメインが用意されています。 事前構築されたドメインをベースに、ご自身のアプリを作成できるかどうかを検討してください。
ご自身のアプリケーションのタスクにとって重要な意図について考えます。
たとえば、フライトを予約し、目的地の天気を確認する機能を備えた旅行アプリの例で見てみましょう。 これらのアクションに対して BookFlight と GetWeather の 2 つの意図を定義できます。
さらに多くの機能を備えたより複雑なアプリでは、意図がさらに多くなる可能性が高いため、意図を定義するときは、細かくなりすぎないように気を付ける必要があります。 たとえば、BookFlight と BookHotel はそれぞれ別の意図にする必要があると思われますが、BookInternationalFlight と BookDomesticFlight は非常に似ています。
注意
使用する意図の数は、ご自身のアプリで実行する必要がある機能の数に合わせることをお勧めします。 定義する意図が多すぎると、LUIS で発話を正しく分類するのが難しくなります。 少なすぎると、一般的になりすぎて、重複する可能性があります。
全体的なユーザーの意図を特定する必要がない場合は、すべてのユーザーの発話例を None
の意図に追加します。 アプリで必要な意図が増えた場合は、後で作成できます。
最初は、意図ごとに発話を作成し過ぎないようにします。 アプリで必要な意図を特定したら、意図ごとに 15 個から 30 個の発話の例を作成します。 各発話は、以前に提供された発話とは異なる必要があります。 さまざまな単語数、単語の選択、動詞の時制、句読点を含めます。
詳細については、LUIS アプリに適した発話の概要に関する記事を参照してください。
発話の例では、抽出するエンティティを特定します。 フライトを予約するには、目的地、日付、航空会社、チケットの種類、搭乗クラスなどの情報が必要です。 これらのデータ型のエンティティを作成し、発話例のエンティティをマークします。 意図を達成するにはエンティティが重要です。
どのエンティティをアプリで使用するかを判断するときは、オブジェクトの種類の間の関係を把握するための多種多様なエンティティがあることに留意してください。 さまざまな種類の詳細については、「LUIS のエンティティ」を参照してください。
ヒント
LUIS には、一般的な会話ユーザーのシナリオに合わせて構築済みのエンティティが用意されています。 アプリケーション開発の出発点として、構築済みのエンティティを使用することを検討してください。
意図は、発話 全体 の目的とする結果であり、エンティティは発話から抽出されたデータの一部です。 通常、意図はクライアント アプリケーションで実行する必要があるアクションに関連付けられています。 エンティティは、このアクションを実行するために必要な情報です。 プログラミングの観点からは、意図によってメソッドの呼び出しがトリガーされ、そのエンティティがメソッド呼び出しのパラメーターとして使用されます。
この発話は、意図を持つ 必要があり、多くのエンティティを持つ 場合があります。
"シアトルからカイロの航空券を購入する"
この発話には 1 つの意図があります。
この発話にはいくつかのエンティティがある 場合があります。
多くの場合、特に自然な会話を操作するときには、ユーザーは複数の機能 (つまり、意図) を含む可能性がある発話を提供します。 これに対処するための一般的な方法は、出力を意図とエンティティの両方で表すことができることを理解することです。 この表現は、クライアント アプリケーションのアクションにマッピングできる必要があり、意図に限定される必要はありません。
Int-ent-ties は、アクション (通常は意図として理解される) が、アプリの出力でエンティティとしてもキャプチャされ、特定のアクションにマップされるという概念です。 "たとえば、否定は、一般的に"、完全な抽出のために意図とエンティティに依存します。 次の 2 つの発話について考えてみます。非常によく似た単語の選択ですが、結果は異なります。
2 つの別々の意図を使用する代わりに、FlightAction 機械学習エンティティを使用して 1 つの意図を作成する必要があります。 この機械学習エンティティでは、スケジュールおよびキャンセルの両方の要求に対するアクションの詳細と、出発地または到着地のどちらかを抽出する必要があります。
この FlightAction エンティティは、次の最上位機械学習エンティティとサブエンティティで構成されます。
抽出に役立つように、サブエンティティに特徴を追加します。 ユーザーの発話で予想されるボキャブラリと、予測応答で返す必要がある値に基づいて、特徴を選択します。
アプリのスキーマを作成し始める前に、このアプリを使用する方法と場所を特定する必要があります。 詳細かつ具体的な計画を立てると、アプリの品質が向上します。
10 ~ 15 個の発話を追加したら、トレーニングして公開します。 これにより、予測精度への影響を確認することができます。 1 つの発話を追加しても、スコアに目に見える影響は出ない可能性があります。
LUIS は、言語モデルのドメインに固有です。 一般的な自然言語トレーニング プラットフォームとして動作するようには作られていません。
各作成サイクルは、既存のバージョンから複製された新しいバージョン内に含める必要があります。
適切な計画を立てずにアプリの公開を急ぎすぎると、次のようないくつかの問題が発生する可能性があります。
バッチ テスト セットを使用して予測精度を監視します。
発話の例またはエンドポイント発話として使用されていない発話のセットを個別に保持します。 ご自身のテスト セット用のアプリは改善し続けてください。 実際のユーザーの発話が反映されるようにテスト セットを調整します。 このテスト セットを使用して、アプリの各イテレーションまたはバージョンを評価します。
フレーズ リストには数個の例を提供します。すべての単語またはフレーズではありません。 LUIS で汎用化が行われ、コンテキストが考慮されます。
トレーニング
ラーニング パス
Use advance techniques in canvas apps to perform custom updates and optimization - Training
Use advance techniques in canvas apps to perform custom updates and optimization
ドキュメント
LUIS における意図とは - Azure AI services
意図および LUIS でのその使用方法について説明します
LUIS で意図を使用する方法 - Azure AI services
LUIS で意図を使用する方法について説明します。
この記事では、LUIS のパターンと特徴について説明します