対話システムの構築は比較的専門的で複雑なプロセスであり、通常は 3 つの主要な段階に分かれています。最初のステップは需要分析であり、次にプラットフォーム構築スキルを使用し、最後に継続的な最適化を行います。 需要分析 最後の段階は需要分析です。この段階には、製品マネージャーや需要アナリストなどの役割が関与する必要があります。
以下では、電車のチケットを予約するシナリオを使用して、プロセス全体で何を行う必要があるかを説明します。 ビジネスシナリオ分析: 境界を決定し、目標を明確にする まず、ビジネス シナリオを分析して、シナリオ内でロボットが何をすべきか、何をすべきでないかを確認します。 鉄道チケットのシナリオでは、予約、払い戻し、変更、問い合わせ、鉄道チケット関連の規則や規制など、よくある質問への回答を提供する必要があります。そして、目的のない世間話はすべきではありません。 機能定義: 優先順位と主要な情報要素を決定する 境界と目標を決定したら、次は電車の切符会話ロボットの機能を定義します。 機能定義段階では、まず各機能の優先順位を決定し、各機能に対応するエンティティ要素を決定する必要があります。明らかに、列車のチケットの場合、予約、払い戻し、変更、問い合わせが最適な機能です。 機能定義が完了したら、通常の会話ロジックと異常な会話ロジックを含む、ビジネス シナリオ内の会話ロジックを整理する必要があります。また、質疑応答形式の会話については、実際にはユーザーから一定の規則や規制について質問されるものであり、これらの質問には定型的で固定された回答があります。このタイプの対話ロジックの組み合わせは、実際には問題を分類したり、知識を分類したりするためのものです。 シナリオ データ収集: 実際のシナリオではユーザーはどのような質問をするでしょうか? 会話の論理的分析が完了したら、ニーズ分析の最後のステップはデータを収集することです。 タスクベースの会話では、実際のシナリオでユーザーがチケットを購入するときに尋ねるさまざまな質問を収集する必要があります。多ければ多いほど良いです。質疑応答の会話では、これまでの知識分類に基づいて、各カテゴリの質問と回答、つまり質疑応答のペアを収集する必要があります。 このフェーズで収集されたデータは、後のスキル構築の第 2 フェーズで使用されます。 スキルの構築 Baidu アカウントを登録し、(http://unit.baidu.com) を開いて、UNIT と入力します。 1. 新しいスキルを作成する UNIT プラットフォーム上で会話スキルを構築する最初のステップは、スキルを作成することです。 2. カスタムスキルを定義する: 新しい会話/質問と回答のインテントを作成する 作成後はスキル定義段階に入ります。スキルはカスタムスキルとプリセットスキルに分かれます。 各スキルは複数の関連するインテントから構成されます。この段階で新しく作成されたインテントは、要件分析段階の機能定義に対応します。たとえば、チケット予約機能は、チケット予約インテント BOOK_TICKET に変換できます。チケット予約のキー情報は、チケット予約インテントを実現するための単語スロットとして定義できます。ここでは、シンプルに、出発時刻、出発駅、到着駅、列車番号の 4 つの単語スロットのみを定義します。これらは、それぞれ user_time、user_from、user_to、trainnumber という名前です。 具体的な手順は次のとおりです。 2.1 新しい会話の意図を作成する [Train Ticket]スキルをクリックしてスキルモジュールに入り、カスタムスキルで[新しいダイアログインテントを作成する]をクリックします。 2.2 単語スロットの追加 最初のステップでは、 [メソッドの追加]を選択し、 「カスタムスロットの作成」を選択して、スロット名 (user_time) とスロットエイリアス (出発時刻) を設定します。 2番目のステップは、 [システムスロット辞書]のスイッチをオンにして、システム辞書sys_time(時間)を選択することです。
3 番目のステップは、単語スロットとインテントに関連付けられた属性を設定することです。ここでは、列車のチケットの出発時刻がチケット予約に必要な重要な情報であるため、[必須] を選択します。明確化言語は、チケット予約のニーズを表す文に出発時刻が欠落している場合に、ユーザーに積極的に明確にするよう求めるためにダイアログ スキルで使用される言語です。また、説明を求めるのをやめる前に、ユーザーに何回説明を求めるかを設定することもできます。デフォルトは 3 回です。 すべての単語スロットを追加すると、次の図が表示されます。 スロットの明確化の順序はスロット リストで調整できます。 2.3 返信の設定 スキル応答とは、スキルがユーザーの意図と必要なすべてのスロット値を認識したときにユーザーに提供されるフィードバックです。 応答方法は、 [返信]、[会話意図のガイド]、[質問と回答意図のガイド]の3つがあります。 2.4 新しい質問と回答の意図を作成する 3. トレーニングデータを追加する スキル定義が完了したら、2 番目のステップに進み、モデルがユーザーのクエリの意図を理解できるように、スキルにトレーニング データを追加します。 3.1 ダイアログテンプレートの設定 最初のステップは、ダイアログ テンプレートを構成することです。ダイアログ テンプレートは、ユーザーのニーズを表現するためのルールの抽象化です。必須フィールドとオプション フィールド、前面フィールドと背面フィールドの順序、テンプレート フラグメントのしきい値サイズを構成することで、一定の一般化能力をすばやく獲得できます。 複数のダイアログ テンプレートがある場合、それらのテンプレート間には優先順位があります。リスト内の位置が前であるほど、優先順位が高くなります。ダイアログ テンプレートを選択して上下に移動すると、優先順位を調整できます。 3.2 対話サンプルの注釈付け この部分では、需要分析の最初の段階で収集された会話データが UNIT プラットフォームに追加され、それらの意図と単語スロットが 1 つずつ注釈付けされます。ディープラーニング戦略のトレーニング後、対話モデルはより優れた対話理解能力を獲得でき、データが豊富であればあるほど、モデルの一般化効果は向上します。 次に、ダイアログ サンプル セットに新しい「電車のチケットを購入」サンプル セットを作成し、そこにデータを追加します。 データが豊富になればなるほど、機械学習の一般化能力はますます強くなります。しかし、大量の会話サンプルを集めるのが難しい場合はどうすればよいでしょうか。 UNIT プラットフォームは、会話サンプルを推奨するツールを提供します。実際のシナリオから 50 個の会話サンプルを収集し、それをシード サンプルとして使用して類似のサンプルを推奨するだけで済みます。シード サンプルの品質が高いほど、推奨されるサンプルの品質も高くなります。 3.3 質問と回答のペアの追加 需要分析フェーズで収集され、分類された質問と回答のデータは、質問と回答セットにインポートできます。 すべてのシナリオで、会話を有効にするために上記の 3 種類のトレーニング データを追加する必要はありません。これは、シナリオ内の会話の種類とデータ収集状況によって異なります。
3.4 トレーニングモデル スキルをトレーニングする方法は2つあります。1つは上記で設定したダイアログテンプレートをトレーニングする方法、もう1つはダイアログサンプルとダイアログテンプレートを同時にトレーニングする方法です。 ダイアログ テンプレートにラベルを付けたかどうかに関係なく、システムはデフォルトでダイアログ テンプレートをトレーニングする必要があります。迅速に効果を発揮する戦略を選択すると、モデルをトレーニングしてサンドボックスで効果を発揮させるまでに 15 ~ 30 秒かかります。 会話サンプルセットを選択して、ディープトレーニング戦略を使用することもできます。対応するバックエンドトレーニングでは、モデルのトレーニングにディープラーニング戦略が使用されます。このとき、トレーニング速度はラベル付けされた会話サンプルの数に比例します。ここでは、スキルの誤ったリコールを減らすために、つまり、どのクエリがチケット購入ではなくチャットであるかをスキルに伝えるために、システムに組み込まれている「チャットネガティブサンプル」を選択することをお勧めします。 4. テスト経験 モデルのトレーニングが完了したら、テスト ウィンドウでスキルとチャットして最終的な効果を確認できます。 UNIT の使用に関するヒントと継続的な最適化 ドメインの問題を正確に理解する
効率的な建設現場のリソース 効率的な単語スロットの構築 まず、組み込みの単語スロットとカスタム辞書およびルールの関係を見てみましょう。
では、単語スロットをどのように定義し、システムに含まれていない単語スロットを効率的に拡張するにはどうすればよいでしょうか。 拡張方法:各単語スロット/特徴語に対して少なくとも 3 ~ 5 個のインスタンスが生成され、リソース (ツリー構造、構造化情報、オープン分類)、関連性 (コンテキストの類似性、単語の埋め込み)、およびコーパス (セット拡張アルゴリズム) に基づいて拡張できます。 マイニング方法:垂直 Web サイトの単語スロットをクロールするか、オフラインのナレッジ ベースにダンプすることができます。 もちろん、最初に単語スロットをマイニングしてから拡張するという、マイニング + 拡張の方法を採用することもできます。また、品質検査も非常に重要であり、マイニング量が多い場合はクラウドソーシングを利用するという選択肢もあります。 自然言語理解設定ダイアログテンプレートの設定のヒント
ダイアログサンプルの設定のヒント
定期的な評価と最適化 定期評価とは、定期的にランダムにビジネス ログを記録し、その結果を手動で評価することを指し、次の点に重点を置きます。
|
<<: ディスカッション | 人工知能は同時通訳に取って代わることができるか?
>>: UNITのハイライト - 対話システムの技術的原理を素早く習得
20 年後の旅行と交通の未来はどうなるでしょうか? おそらく、この質問への答えははるかに複雑です。...
歴史的に、これらの国や地域は旧植民地帝国によって貧困化しており、ヨーロッパの植民地主義は土地の暴力的...
さまざまなライブラリとフレームワークの助けを借りて、たった 1 行のコードで機械学習アルゴリズムを実...
絵を描くだけで高精細な絵画が現れます。たとえば中世の城を描くには、ドアと道を描くだけで、美しい城が現...
著者: 徐潔成校正:Yun Zhao誰も予想していなかったのは、人工知能の火が世界中に広がっていた時...
[[242005]]ターゲットこの記事の目的は、基本的な LSTM モデルを構築するために使用できる...
この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式...
人工知能 (AI) はブラックボックスの実践と見なされることが多く、テクノロジー自体の仕組みではなく...
2018年にバイトダンスがカラオケアプリ「Musical.ly」を買収し、TikTokとしてブランド...
マイクロソフトは、動画や写真から対象者の感情を識別できると主張するツールを含む、人工知能による顔分析...
著者 |張開峰ソフトウェア業界は長い間、コスト削減と効率性向上に取り組んできました。長期にわたる開発...