SGD:スキーマガイド付き対話学習用データセット(1/2)

  • 2019.11.05
  • AI
SGD:スキーマガイド付き対話学習用データセット(1/2)

1.SGD:スキーマガイド付き対話学習用データセット(1/2)まとめ

・バーチャルアシスタントの保守運用や機能追加の難しさは適切なデータセットがない事が一因
・Schema-Guided Dialogueデータセット(SGD)はこの問題に対処する最大のタスク指向ダイアログコーパス
・スキーマに基づくアプローチとBERTのような事前訓練言語モデルの能力により対話状態が追跡可能になる

2.SGDとは?

以下、ai.googleblog.comより「Introducing the Schema-Guided Dialogue Dataset for Conversational Assistants」の意訳です。元記事の投稿は2019年10月28日、Abhinav RastogiさんとPranav Khaitanさんによる投稿です。

現在のバーチャルアシスタントは、飛行機のフライト情報の検索、近くのイベントや映画上映スケジュールの検索、予約の申し込み、インターネットから情報の入手など、ユーザーの様々な日常作業を支援します。これらのバーチャルアシスタントは、Web上の様々なサービスを統一された自然言語インターフェイスで使えるようにする事で、この機能を実現しています。

Google Assistantのような大規模なバーチャルアシスタントは、様々な領域で機能が重複する可能性のある多数の絶えず増加するサービスと統合する必要があります。将来の成長に対応するには、追加のデータを収集したり、モデルを再トレーニングしたりすることなく、簡単に新しいサービスをサポートし、保守作業の負荷を減らすことが必要です。 しかし、最近の驚異的な進歩にもかかわらず、これらの課題は最先端のモデルでは見過ごされがちです。これは、一部には、バーチャルアシスタントが直面する規模と複雑さに一致する適切なデータセットがない事が原因です。

最近の論文「Towards Scalable Multi-domain Conversational Agents: The Schema-Guided Dialogue Dataset」では、これらの問題に対処するための新しいデータセットを紹介しています。Schema-Guided Dialogueデータセット(SGD)は、17の領域にまたがる18,000を超える対話形式のデータ(ダイアログ)を備えた、公開されている最大のタスク指向ダイアログコーパスです。

様々な注釈を備えたこのデータセットは、大規模なバーチャルアシスタントのタスクの中でも特に、意図予測(intent prediction)、スロット充填(slot filling:宿泊予約など、条件に合った空き枠を特定する作業)、状態追跡(state tracking:つまり、ユーザーの目標の推定)、及び言語生成などを効果的に検証出来るように設計されています。

また、前述の課題の解決策として、バーチャルアシスタントを構築するためのスキーマガイドアプローチも提案します。

私たちのアプローチは、全てのサービスと領域にわたって単一のモデルを利用し、領域固有のパラメーターを持ちません。スキーマに基づくアプローチとBERTのような事前に訓練された言語モデルの能力に基づいて、対話の状態を追跡できるモデルをオープンソース化します。このモデルは通常設定では比較競争力を維持しながらも、ゼロショット設定(つまり、新しいサービスやAPI用のトレーニングデータを必要としない)で適用する事ができます。

データセット
SGDデータセットをリリースする主な目的は、既存のデータセットでは十分に捕捉されない現実世界の多くの課題に立ち向かうことです。SGDデータセットは、人間とバーチャルアシスタント間で想定される会話で構成されています。様々な領域において、特定のタスクを行う際に行われる会話、すなわちタスク指向の会話を18,000以上含みます。これらの会話には、銀行やメディアのイベント、カレンダー、旅行、天気に至るまで、17の領域にわたるサービスやAPIとのやり取りが含まれます。

これらの領域のほとんどについて、SGDデータセットには複数の異なるAPIが含まれており、その多くは機能が重複しています。しかし、それぞれのインターフェースは異なっており、これは現実世界で想定される一般的なシナリオを反映しています。

SGDは、このように様々な領域をカバーし、領域毎に複数のAPIを提供する最初のデータセットです。更に、APIインターフェースの変更または新しいAPIの追加に対するモデルの堅牢性を定量化するために、評価セットにはトレーニングセットにはない多くの新しいサービスが含まれています。

SGDデータセットの作成では、対話に含まれる注釈の多様性と精度を優先しました。当初はオズの魔法使い法(Wizard-of-Oz:デジタルアシスタントのふりをした人間が依頼者に対応する事で、対話事例を収集していく手法)により2名の対話を行い、その後にクラウドソーシングによって対話に注釈を付与しました。

最初の取り組みにより、この方法を使用して一貫した注釈を取得することが困難であることが明らかになったため、複雑な手動による注釈付与の必要性を最小限に抑え、データ収集の時間とコストを大幅に削減する新しいデータ収集プロセスを開発しました。

この代替アプローチでは、対応する注釈(対話の状態やシステムアクションなど)とともに、任意のAPIの組み合わせで対話の骨組みを生成する「複数領域対話シミュレーター(multi-domain dialogue simulator)」を開発しました。

シミュレータは、ユーザーとバーチャルアシスタントの役割を果たす2つのエージェントで構成されます。両方のエージェントは、遷移順が指定されている対話の集合である有限のアクションセットを使用して相互に対話します。これは確率的オートマトンを通じて、様々な対話の軌跡をキャプチャするように設計されています。

シミュレーターによって生成されたアクションは、一連のテンプレートを使用して自然言語の発生に変換されます。クラウドソーシングは、対話をより自然で一貫性のあるものにするために、これらのテンプレート化された対話を言い換える事にのみ使用されます。

このやり方により、複雑な領域固有の指示が不要になり、クラウドソーシングのタスクがシンプルに保たれ、一貫性のある高品質な注釈が付いた自然な対話が生成されます。


対話を生成するための手順。アシスタントは赤文字、ユーザーは青文字でマークされています。左図:シミュレーターは、有限のアクションセットを使用して対話の骨組みを生成します。中央図:アクションはテンプレート(サービスごとに最大50)を使用して発話に変換され、空白は自然なバリエーションに置き換えられます。 右図:クラウドソーシングを介して言い換えることにより、会話の流れを充実させます。

3.SGD:スキーマガイド付き対話学習用データセット(1/2)関連リンク

1)ai.googleblog.com
Introducing the Schema-Guided Dialogue Dataset for Conversational Assistants

2)arxiv.org
Towards Scalable Multi-domain Conversational Agents: The Schema-Guided Dialogue Dataset

3)github.com
google-research/schema_guided_dst