JP2017527926A - 社交的会話入力に対するコンピュータレスポンスの生成 - Google Patents

社交的会話入力に対するコンピュータレスポンスの生成 Download PDF

Info

Publication number
JP2017527926A
JP2017527926A JP2017521040A JP2017521040A JP2017527926A JP 2017527926 A JP2017527926 A JP 2017527926A JP 2017521040 A JP2017521040 A JP 2017521040A JP 2017521040 A JP2017521040 A JP 2017521040A JP 2017527926 A JP2017527926 A JP 2017527926A
Authority
JP
Japan
Prior art keywords
conversation
input
classifier
data
response
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017521040A
Other languages
English (en)
Other versions
JP2017527926A5 (ja
Inventor
ウィリアムズ,ジェイソン
ツウェイグ,ゲオフリー
ラクシュミラタン,アパルナ
ガルシア ジュラド スアレズ,カルロス
ガルシア ジュラド スアレズ,カルロス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2017527926A publication Critical patent/JP2017527926A/ja
Publication of JP2017527926A5 publication Critical patent/JP2017527926A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1822Parsing for meaning understanding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Child & Adolescent Psychology (AREA)
  • Hospice & Palliative Care (AREA)
  • Psychiatry (AREA)
  • Signal Processing (AREA)
  • Machine Translation (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

人間とコンピュータシステムとの間の会話的インタラクションは、会話タイプによって入力を分類し、かつ、会話タイプについて人間が創作したレスポンスを提供するコンピュータシステムによって提供され得る。入力分類は、訓練されたバイナリ分類器を使用して実行され得る。トレーニングは、入力を会話タイプのポジティブ例またはネガティブ例のいずれかにラベル付けすることによって実行され得る。会話レスポンスは、分類器のトレーニングにおいて使用された入力をラベル付けした同一の個人によって創作されてよい。いくつかの場合において、分類器のトレーニングのプロセスは、新たな会話タイプの示唆を結果として生じ得る。人間の創作者は、新たな分類器のための入力をラベル付けし、そして、新たな会話タイプのためのレスポンスについてコンテンツを書くことができる。

Description

コンピュータのレスポンスが魅力的なユーザ体験を生成するように、個人からの会話入力、つまり、会話的な自然言語入力に対して適切な会話レスポンスをコンピュータに提供させるようにすることはチャレンジである。チャレンジの一部は、自然言語において固有の変動を考えて、入力を理解することである。チャレンジの別の部分は、入力に対するあらゆるレスポンスが適切であることを確保することである。レスポンスが適切であると考えられるか否かには、多くの要因が影響する。語彙の選択、トーン(tone)、「人格(”personality”)」またはブランドとの一貫性、および、レスポンスが愉快であり、機知に富み、魅力的であり、攻撃的でないか否か、等といったものである。
いくつかのシステムにおいて、このチャレンジは、標準的な表現を使用することによるといった、手動でパターンを特定すること、および、そうしたパターンに対して人間が創作した(human authored)コンテンツを関連付けすることによって取り扱われる。入力が標準的な表現と一致する場合は、そして、一致した標準的な表現と関連付けされたコンテンツがレスポンスとして提供され得る。そうしたシステムは、標準的な表現を書くこと及び分析することにおいて専門的なスキルを持った人々、典型的にはコンピュータプログラマー、によって、および、レスポンスについて適切なコンテンツを書くことにおけるスキルを持ったさらに他の人々、典型的にはコンテンツ編集者、によって開発されている。
いくつかのシステムにおいて、このチャレンジは、大規模なデータセットからの会話マイニング(mining)により自動的にレスポンスを生成することによって取り扱われる。入力が、一つまたはそれ以上の以前の会話の入力と一致する場合、次に、レスポンスが、以前の会話からの入力に対するあらゆるレスポンスに基づいて自動的に生成され得る。そうしたシステムにおいては、コンピュータがレスポンスを創作する以前に、自動的に生成されるレスポンスが人間によって点検されず、不適切なレスポンスを生成するリスクを増加している。
この概要は、以下の詳細な説明部分においてさらに記述されるコンセプトの選択を簡素化された形式において紹介するために提供されるものである。この概要は、請求される技術的事項の主要な特徴または本質的な特徴を特定するように意図されたものではなく、また、請求される技術的事項の範囲を限定するように意図されたものでもない。
人間とコンピュータシステムとの間の会話的インタラクション(conversational interaction)は、会話タイプによって入力を分類し、そして、会話タイプについて人間が創作したレスポンスを提供するコンピュータシステムによって提供され得るものである。入力分類は、訓練された(trained)バイナリ分類器(binary classifier)を使用して実行され得る。トレーニングは、入力を、会話タイプのポジティブ(positive)例またはネガティブ(negative)例のいずれかにラベル付けすることによって実行され得る。会話レスポンスは、分類器のトレーニングにおいて使用された入力をラベル付けした同一の個人によって創作されてよい。いくつかの場合において、分類器のトレーニングのプロセスは、新たな会話タイプの示唆を結果として生じ得る。それについて、人間の創作者は、新たな分類器のための入力をラベル付けし、そして、新たな会話タイプのためのレスポンスについてコンテンツを書くことができる。
本発明は、コンピュータシステムとして、そうしたコンピュータシステムに係るあらゆる個々のコンポーネントとして、そうしたコンピュータシステム又はそうしたコンピュータシステムに係るあらゆる個々のコンポーネントによって実行されるプロセスとして具現化され得る。もしくは、コンピュータプログラムインストラクションが保管されているコンピュータストレージを含み、かつ、コンピュータによって処理されると、そうしたコンピュータシステム又はそうしたコンピュータシステムに係るあらゆる個々のコンポーネントをそれらのコンピュータに提供させる、製造品(article of manufacture)として具現化され得る。
以降の説明においては、添付の図面が参照される。図面は、明細書の一部を構成しており、説明図として、本技術に係る所定の実施例が示されている。本開示の範囲を逸脱することなく、他の実施例が使用され、そして、構成の変更がなされ得ることが理解される。
図1は、アプリケーション環境の一つの例に係るブロックダイヤグラムであり、そこにおいては、コンピュータシステムが、会話入力に対するレスポンスの生成を支援している。 図2は、入力処理モジュールの一つの実施例を説明しているデータフローダイヤグラムである。 図3は、入力処理モジュールの一つのオペレーション例を説明しているフローチャートである。 図4は、トレーニングプロセスの一つの実施例を説明しているフローチャートである。 図5は、トレーニング処理モジュールの一つの実施例に係るデータフローダイヤグラムである。 図6は、そうしたシステムのコンポーネントが実施され得るコンピュータの一つの例に係るブロックダイヤグラムである。
以降のセクションは、会話入力に対するレスポンスの生成を支援するコンピュータに係る動作環境の一つの例を説明している。
図1を参照すると、コンピュータ100は、エンティティ104からの会話入力102を受け取る。会話入力102は、入力の受け取る人に対して意味を伝えるように意図されたデータを含んでいる。会話入力は、あらゆる多種多様なデバイスおよび処理を通じて受け取ることができる。会話入力の簡単な例は、「シアトルの今日の天気は?(”What is the weather today in Seattle?”)」である。
会話入力102に応じて、コンピュータ100は、会話レスポンス106を生成する。会話レスポンス106は、会話入力102が提供されたエンティティ104に対して意味を伝えるように意図されたデータを含んでいる。会話レスポンス106は、あらゆる多種多様なデバイスおよび処理を通じて、エンティティ104に対して届けられてよい。会話レスポンスの簡単な例は、「シアトルは今日は雨が降っている(”It is raining today in Seattle。”)」である。
会話レスポンスを創作するために、コンピュータ100は、入力処理モジュール108を含んでいる。その一つの実施例は、図2と図3に関連して、以下により詳細に説明される。
入力処理モジュール108は、トレーニングプロセスを使用して設定されたパラメータ110を有している。トレーニングプロセスは、トレーニング処理モジュール112を通じて実施される。トレーニング処理モジュールは、トレーニングデータ114を受け取る入力(input)およびパラメータ110を提供する出力(output)を有している。トレーニング処理モジュールの一つの実施例は、図4と図5に関連して、以下により詳細に説明される。
図1において、コンピュータ100は、入力処理モジュール108とトレーニング処理モジュール112の両方を含んでいる。コンピュータ100は、一つまたはそれ以上の別個の汎用コンピュータまたは他の別個のコンピューティングデバイスを含んでよく、それぞれが、一つまたはそれ以上のプロセッサまたは処理装置を含んでよい。従って、モジュール108と112は、同一のコンピューティングデバイスまたは分離したコンピューティングデバイスにおいて存在してよく、もしくは、その部分が同一のコンピューティングデバイスにおいて存在してよい。それぞれのモジュール108と112は、一つまたはそれ以上のコンピューティングデバイスであり得るものである。
図1においては、一つの実施において、トレーニング処理モジュール112が、入力処理モジュールのパラメータを直接的にアップデートすることができる。別の実施において、トレーニング処理モジュールは、入力処理モジュールから離れてアップデートされたパラメータを創作することができ、そして、次に、アップデートされたパラメータを、時々、入力処理モジュールに転送することができる。
いくつかの実施においては、トレーニング処理モジュールによるトレーニングが、一回発生してよい。他の実施において、トレーニングは、進行中のプロセス(ongoing process)として実行されてよく、そして、入力処理モジュールのパラメータは、時々アップデートされてよい。定期的に、といったものである。
トレーニング処理モジュールは、異なるコンピューティングデバイスにおける複数の異なる入力処理モジュールによって使用され、そして、従って共有される、パラメータの一つのセットを創作することができる。複数の異なるトレーニング処理モジュールは、パラメータの異なるセットを創作することができる。異なる入力モジュールのため、または、そこから選択されるため、のいずれかであり、そして、一つの入力処理モジュールによって使用されるものである。例えば、一人のエンドユーザのため、または、異なるエンドユーザ達に対する異なる状況のためである。
図1は、また、会話入力102を受け取り、そして、エンティティ104に対する会話レスポンスを提供する、コンピュータ100も示している。エンティティ104は、典型的には、個人である。
会話入力102は、典型的には、自然言語における一つまたはそれ以上のワード(word)またはフレーズ(phrase)である。他の入力は、これらに限定されるわけではなく、意味を伝達するために会話的に使用されるシンボル(symbol)を含み得るが、自然言語の一部として正式に認められるものではないだろう。数学的シンボル、顔文字(emoticon)、等といったものである。会話入力に関する他のデータは、入力デバイスからのジェスチャデータ、ウェアラブルセンサおよび環境センサからのセンサデータ、イメージデータ、ビデオデータ及び/又はオーディオデータ、を含んでよく、様々なメタデータも、また、そこから抽出され得る。エンティティのジェスチャ、声のトーン、顔の表情、見込まれる感情、等に関するメタデータは、役に立ち得るものである。
そうした入力は、多くのやり方で提供され得る。例えば、エンティティは、キーボードをタイプすることができる。エンティティは、マイクロフォンに向かって話すことができ、そして、コンピュータ100は、音声認識を実行することができる。エンティティは、イメージまたはビデオデータを提供することができ、そして、コンピュータ100は、画像認識または他の画像処理を実行することができる。エンティティは、テキストデータを提供することができ、そして、コンピュータ100は、ワードとフレーズを抽出するためにテキストを処理することができる。
会話レスポンス106は、典型的には、自然言語における一つまたはそれ以上のワードまたはフレーズである。他の入力は、これらに限定されるわけではなく、意味を伝達するために会話的に使用されるシンボルを含み得るが、自然言語の一部として正式に認められるものではないだろう。数学的シンボル、顔文字、等といったものである。他のデータも、また、ユーザに対するレスポンスの伝達に関する様々な目的のために生成され得るものである。
そうした会話出力は、多くのやり方で提供され得る。例えば、レスポンスは、ディスプレイスクリーン上にテキストとして表示され得る。レスポンスは、スピーカまたはヘッドフォンにおいて再生されるオーディオデータを提供するために、音声生成(speech generation)を使用して処理され得る。レスポンスがテキストに限定されない場合に、レスポンスは、他のイメージデータへ変換され、そして、イメージデータが表示され得る。例えば、そうしたイメージデータは、エンティティについてのジェスチャおよび顔の表情を示しているエンティティのアバター(avatar)を含み得る。ユーザによって選択された所望のインタラクションフォーマット(点字(Braille)、印刷、または、他のタイプの出力デバイス)に応じて、他の出力フォーマットが生成され得る。
コンピュータ100、又はそのパーツは、エンティティ104によって使用され得るデバイス(図示なし)の一部であってよく、または、エンティティ104によって使用され得るデバイスから分離されてよい。
例えば、エンティティは、マイクロフォン、スピーカ、および、おそらくはタッチスクリーンディスプレイ上のキーボードを伴うモバイルフォンといった、ハンドヘルドデバイスを使用してよい。そうしたハンドヘルドデバイスは、典型的には、コンピュータを含んでいる。一つの実施において、ハンドヘルドデバイスにおけるコンピュータは、入力処理モジュール108を含み得る。別の実施において、ハンドヘルドデバイスは、別のコンピューティングデバイスにおける入力処理モジュールに対して会話入力102を伝達することができる。次に、他のコンピューティングデバイスは、ハンドヘルドデバイスに対して会話レスポンス106を提供することができる。ハンドヘルドデバイスと他のコンピューティングデバイスとの間の接続は、あらゆる種類の通信ネットワークにわたるものであってよい。公共(public)コンピュータネットワーク、携帯電話接続、等といったものである。ハンドヘルドデバイスと同様に、また、ウェアラブルコンピューティングデバイスは、リストバンド、腕時計、イヤホン(earpiece)、またはメガネの形状をしているが、同様なコンフィグレーションを有することもできる。
別の例として、エンティティは、自動車または他の車両(vehicle)の中に居てよい。マイクロフォンとスピーカ、および、見込まれる他の入力と出力デバイスを有し得るものである。車両は、車両の中の様々なデバイスからの入力を処理し、かつ、それらに対して出力を提供する、オンボードコンピュータを含み得る。一つの実施において、オンボードコンピュータは、入力処理モジュール108を含み得る。別の実施において、オンボードコンピュータは、オンボードコンピュータと無線通信している別のコンピューティングデバイスにおける入力処理モジュールに対して、入力データを伝達することができる。携帯電話接続または衛星通信接続といったものを通じてである。次に、他のコンピューティングデバイスは、オンボードコンピュータに対して会話レスポンス106を送信することができる。
別の例として、エンティティは、多くのデバイスを含み得るホームエンターテイメントシステムを使用している住居環境に居てよい。これらに限定されるわけではないが、ゲームコンソール、セットトップボックス、スマートテレビ又は他のディスプレイ、および、スマートフォン、タブレットコンピュータ、及び/又はリモートコントロールといった一つまたはそれ以上のハンドヘルドデバイス、を含むものである。これらのデバイスに係るあらゆる一つまたはそれ以上のものは、一つまたはそれ以上の入力デバイスを含み得る。マイクロフォン、キーボード、または、タッチスクリーンディスプレイといったものであり、環境におけるエンティティからの会話入力をそれから受けることができる。同一の環境におけるこれらのデバイスに係るあらゆる一つまたはそれ以上のものは、また、一つまたはそれ以上の出力デバイスを含み得る。それを通じてエンティティに対して会話レスポンスが提供され得るものである。一つまたはそれ以上のこれらのデバイスにおけるコンピュータは、入力処理モジュール108を含み得る。このコンピュータは、入力デバイス及び/又は出力デバイスのいずれかを含むデバイスとは異なるデバイスの中にあってよい。様々なデバイス間の接続は、あらゆる種類のデータ通信ネットワークにわたるものであってよい。これらに限定されるわけではないが、私的(private)ローカルエリアネットワーク、無線通信接続、携帯電話接続、等を含むものである。
今や、動作環境の例が説明されてきたので、図1における入力処理モジュール108に係る一つの実施例の詳細が、図2と図3に関連して、これから説明される。
入力処理モジュールは、複数の分類器200を含んでおり、各分類器は、異なる会話タイプのためのものである。各分類器は、入力(input)を有し、入力データから生じた特徴データ(feature data)202を受け取る。各分類器は、出力(output)を有し、分類器の入力に対して適用された特徴データがその分類器のための会話タイプと一致するか否かを示す適合データ(match data)204を提供する。各分類器は、パラメータを有している。それらは、他の分類器のパラメータとは異なるものであり、そして、トレーニングプロセスに応じて設定されたものである。
あらゆる様々なタイプのパターン分類器が、入力処理モジュールにおいて使用される。決定木(decision tree)、神経ネットワーク、ベクターマシン(vector machine)、等といったものである。一般的に、パターン分類器は、複数の特徴によって定められた入力を受け取り、そして、その入力が、その分類器が適合するように訓練されてきたパターンとどれだけ上手く一致するかを示す出力を提供する。一般的に、出力は、0から1までといった、定められた範囲内のスコアであり、類似性、または距離メトリック(distance metric)、または確率手段の形式を使用して計算される。分類器のパラメータ、類似性または距離または確率メトリックといったものは、トレーニングプロセスを通じて設定される。一つの実施例において、分類器は、ロジスティック回帰(logistic regression)分類方法を使用するバイナリ分類器を使用して実施され得る。
分類器によって使用される特徴は、一般的に、カノニカル(canonical)形式であり、入力は、その形式へと変換される。会話入力について、そうした特徴は、会話入力におけるワードの形式、それらのワードのシーケンス、それらのワードのnグラム(n−gram)、および、他の関連情報といった情報を含み得る。他の関連情報は、会話入力のソース、利用可能であり得るあらゆる感情または音的な手がかり、環境データ、関連するキーワード、等といったものである。一つの例として、特徴は、存在する全てのワード、ワードのnグラム(例えば、「何歳ですか?(”how old are you?”)」について2または3ワードのシーケンス、nグラムの例は、how_old、old_are、are_you、等といったもの)、ワードにおける発話の長さ、各ワードのスピーチの部分(例えば、「古い(”old”)」は形容詞である)、同様なワードのセットを記述する埋め込み(数字)、入力を記述している解析木(parse tree)、等、を含み得る。
セレクタ(selector)206は、分類器200からの適合データ204を受け取るように接続された入力(input)を有している。セレクタは、分類器から受け取った適合データに基づいて、各会話タイプのための会話レスポンスのコレクション(collection)212から、会話レスポンス208を提供する出力(output)を有している。会話レスポンス208は、様々なやり方において生成され得るものである。
一つの実施例において、分類器によって出力された適合データ204は、分類器によって計算されたスコアであり、そして、セレクタ206は、ベストスコアを生じている分類器に対応している会話タイプを選択する。別の例として、ベストスコアの範囲内のスコアを生じている全ての分類器が、考慮されてよい。複数の分類器を選択することは、会話タイプのヒエラルキー(hierarchy)が存在する場合に、特に役立つものである。より一般的なタイプの分類器とより特定的なタイプの分類器の両方が好適な適合スコアを生じている場合に、会話タイプは、より多くの特定的な会話タイプを伴う分類器に基づいて選択され得る。スコアが会話入力の存在を示すのに十分高いことを確保するために、全てのスコアに対して閾値が適用され得る。次に、セレクタは、会話レスポンスのコレクション212にアクセスして、選択された会話タイプについて保管されたものの中から会話レスポンスを選択する。セットからの一つの会話レスポンスの選択は、様々なやり方で実行され得る。ランダム、擬似ランダム、準ランダム選択、ラウンドロビン選択、最も長く使われていないもの(least recently used)、フィードバック、および、レスポンスの格付け(rating)、等といったものである。
各会話タイプのための会話レスポンスのコレクション212は、一般的に、そうしたサービスのためのコンテンツの創作において経験を有する個人によって作成される。これらの人間が創作したレスポンスは、以下により詳細に説明されるように、分類器の入力に対してラベルを提供することによって、分類器のトレーニングにも関与する個人によって作成され得る。会話入力に対して適用されるラベルは、会話入力が、会話タイプのポジティブ例であるかネガティブ例であるかどうかを示すものである。コレクション212は、各会話レスポンスを会話タイプと関連付けするやり方において、会話レスポンスを保管する。従って、コレクション212は、会話レスポンス/会話タイプのペアを表わしているデータのセットであり、会話タイプが与えられると直ちに会話レスポンスにアクセスして選択できる様々なやり方において保管されてよい。会話レスポンスは、一般的には、キャラクタの文字列(string)を使用して表現され、一貫性のある保管フォーマットを提供するように所定の長さのキャラクタに制限され得る。会話タイプは、英数字識別子(identifier)といった、あらゆる識別子を用いて表現されてよく、直接的または間接的いずれかで、その会話タイプのための分類器と関連付けされ得るものである。
分類器のセットによって出力された適合データ204に基づいてコレクション212から会話レスポンスを選択するために、あらゆる多種多様な他の技術が使用され得る。
いくつかの実施において、対話状態(dialog state)214を記述している情報も、また、保管されてよく、そして、次に、セレクタ206または分類器200によって使用され得る。対話状態は、一つまたはそれ以上の会話入力、会話レスポンス、および、会話タイプを記述しているデータであってよい。そうした情報は、セレクタ206によって提供されるものと図示されているが、また、分類器200または対話状態を追跡するように特定的にデザインされたシステムの別のコンポーネントによっても提供され得るものである。そうした情報は、分類器の一つに対して提供されているように図示されているが、全ての分類器、分類器のサブセットに対して提供されもよく、または、分類器に提供されなくてもよい。いくつかの実施において、対話状態は、分類器に対して適用される特徴202として取り扱われ得るものである。現在処理されている会話入力のための会話タイプの分類は、対話状態214によって影響され得る。代替的に、または、組合せにおいて、現在処理されている会話入力のための会話タイプと会話レスポンスの選択は、対話状態214によって影響され得る。一つの実用的な例として、会話入力が「フィラデルフィアの今日の天気はどうですか?(”What is the weather like today in Philadelphia?”)」である場合には、天気関連の会話レスポンスが生成される。次の会話入力が「明日はどうですか?(”How about tomorrow?”)」である場合には、天気関連の会話レスポンスが生成されることを確保するために、対話状態情報214が使用され得る。
図3におけるフローチャートは、入力処理モジュールのこの例に係るオペレーションを説明している。
図3において、オペレーションは、会話入力を受け取ること300で開始する。会話入力から生じる特徴が、複数の分類器の入力に対して適用される302。複数の分類器から適合データが受け取られ304、そして、会話タイプを選択する306ために使用される。選択された会話タイプに基づいて、次に、会話レスポンスが出力される308。
今や、入力処理モジュールが説明されてきたので、分類器のためのトレーニングプロセスの実施例が、これからより詳細に説明される。
一つの実施においては、会話分類器のために会話トレーニングプロセスが使用される。既知の、有限な会話タイプのセットおよび対応する例を用いて開始するものである。ランダムサンプリング又はいくつかの他のアプローチを使用して、分類器に対して例が適用される。そして、分類器の出力と分類器に対して適用された例との間における誤り(error)に基づいて、分類器のパラメータが調整される。分類器は、所与の会話タイプについて訓練された後で、会話レスポンスを生成するために使用され得る。
一つの実施において、分類器は、バイナリ分類器であってよく、アクティブ学習プロセスを使用して訓練され得る。そうしたプロセスにおいて、トレーニングは、会話入力に係る、例えば10個の、ポジティブ例のセット、および、例えば10個の、ネガティブ例のセットを選択すること400によって開始する。ポジティブ例は、分類器の会話タイプと一致する会話入力である。例えば、分類器のための会話タイプが「場所における今日の天気に関する質問(”Question about today’s weather in a location”)」である場合には、「シアトルの今日の天気は?」はポジティブ例であり、「何歳ですか?(”How old are you?”)」はネガティブ例である。バイナリ分類器を使用する一つの実施においては、「0」または「1」のラベルが発話の例に対して適用される。ここで、「1」は、この発話において分類器がとても良いことを示し、かつ、「0」は、分類器が良くないことを示している。
会話技術を使用するポジティブ例とネガティブ例のセットを使用して分類器の初期パラメータを設定することによって、分類器が初期化される402。初期化された分類器が与えられると、分類器に対して会話入力のトレーニングセット(それぞれがトレーニング入力と呼ばれている)を適用する404ことによって、トレーニングが実行される。トレーニングセットは、サービスと関連して保管されてきた実際の会話入力といった、様々なソースから収集され得る。この例において、トレーニング入力は、実際の会話入力から生じた特徴である。各トレーニング入力は、分類器からのスコアを結果として生じる。結果が明らかにポジティブ例またはネガティブ例である場合、つまり、スコア範囲のいずれかの極値に係る閾値量の範囲内であれば、トレーニング入力に自動的に成績を付けることが可能である。しかしながら、そうした自動的なラベル付けは、誤りを創成し、かつ、次に、促進し得るものであり、そして、望ましいものではない。そうでなければ、ポジティブ一致またはネガティブ一致のいずれでもない、曖昧な結果を伴うあらゆるトレーニング入力が、この分類器のための会話タイプに係るポジティブ例またはネガティブ例のいずれかとして、ラベル付けのために個人に対して示される406。分類器は、次に、これらの追加的なトレーニング入力に係るラベル付けを使用してアップデートされる408。プロセスは、次に、ステップ404への矢印によって示されるように、1回またはそれ以上繰り返される。
図5は、図4において説明されたオペレーションにおいて使用されるトレーニング処理モジュールの一つの実施例に係るデータフローダイヤグラムである。図5においては、会話入力のコレクション500が、コンピュータで読取り可能なストレージに保管されている。保管された入力それぞれは、トレーニング入力と呼ばれる。トレーニング入力は、ラベルおよび対応する会話タイプと関連付けされ得る。複数のトレーニングタイプを用いて、トレーニング入力は、複数のラベルと関連付けされ得る。トレーニングモジュール502は、会話入力から生じた特徴504とラベル506を受け取る。これらは、会話タイプのための分類器510についてパラメータ508を設定するために使用される。
ラベルは、トレーニング入力を評価し、そして、会話タイプのポジティブ例またネガティブ例としてそれらをラベル付けする個人512によって、一般的に入力される。個人512は、トレーニング入力と会話タイプと共に(514に示されている)、ユーザデバイスにおけるユーザインターフェイス516を通じて、表されている。個人は、ユーザインターフェイス516を通じて、トレーニング入力のためのラベル518を提供する。
個人512は、また、ユーザインターフェイス516または別のユーザインターフェイスのいずれかを通じて、同一または異なるユーザデバイスのいずれかにおいて、会話タイプに対する会話レスポンス520を提供することもできる。これらの会話レスポンスは、図2に示されるような、入力処理モジュールにおいて保管される。
同一の個人に、会話レスポンスと会話入力のラベルの両方を準備させることによって、システムは、所与の入力に対して適切なレスポンスを有していることのより高い確率を有する。そうした能力は、ラベル付けされた入力、および、会話タイプによって選択された会話レスポンスを使用して、会話タイプにより、分類器を訓練させることによって提供される。別の言葉で言えば、会話レスポンスを生成する個人が、会話入力のためのラベルを提供している同一の個人であるので、コンピュータは、会話入力に対して適切なレスポンスを提供する。ラベル付けされた会話入力に係るポジティブ例とネガティブ例によって訓練された、会話タイプごとの分類器を使用することによって、コンテンツ編集者は、ラベラ(labeler)と編集者の両方であり得る。
会話入力に係る大きなコーパス(corpus)を使用して、コンピュータは、様々な形式のクラスタリング(clustering)アルゴリズムを使用することによって、見込まれる会話タイプを特定することができる。トレーニングのためのサンプルは、発話が位置付けされる会話タイプに基づいて選択され、そして、新たな会話タイプも、また、特定され得る。クラスタリングアルゴリズムは、同様な会話入力を一つのセットへとグループ化することができ、それぞれのセットが同様な会話タイプを有している複数の異なるセットを結果として生じている。セットからのサンプルは、そのセットについて対応している会話タイプのためのポジティブ例として使用され得るものであり、他のセットからのサンプルはネガティブ例として使用され得る。
一つの実施例として、自動的なクラスタリングは、発話のベクトル空間表現(vector−space representation)に対してk平均法(k−means)を適用することを含む。例えば、語の袋(bag−of−word)ベクトル、もしくは、潜在意味解析(latent semantic analysis、LSA)または潜在ディリクレ解析(latent dirichlet analysis、LSA)を使用した発話の投射(projection)、を使用するものである。別の実施例においては、既存の分類器を使用することができ、そして、分類器が辞めになる発話、つまり、既知の会話タイプに係る発話が排除される。分類器が辞めになることを生じさせない残りの発話は、新たな会話タイプと関連付けされ得る。
一つの実施において、分類器は、また、社交的会話(social conversation)のための語句(words and phrases)のクラスを含むように拡張され得る。会話タイプは、上記のように、ヒエラルキーへとグループ化され得る。そうしたヒエラルキーは、会話入力と関連付けされたキーワード、または、会話入力のセットから生じる他のクラス情報に基づいてよい。そうしたクラスは、例えば、自動クラスタリングを使用して、自動的に特定され得るものである。一つの特定的な例として、自動クラスタリングは、ワードを連続空間の中へ投射すること(projecting)、そして、その連続空間においてクラスタリングすることによって実行され得る。例えば、投射は、LSA、LDA、または、神経ネットワークを用いて学習されたワードエンベディング(word embedding)を使用して実行され得るものであり、そして、次に、k平均法を使用してクラスタリングが実行され得る。クラスを導入するための別の方法は、コンテンツ編集者について、語句の例(example words/phrases)を提供すること、そして、自動的にクラスを拡張することである。例えば、コンテンツ編集者が、「誕生(”born”)」、「成長(”grow up”)」、「幼少(”childhood”)」を提供した場合、より多くの用語が自動的に追加され得る。「育った(”raised in”)」、「出身である(”I’m from”)」、「学校へ通った(”went to school in”)」などである。クラスタリング技術(LSA、LDA、または、ワードエンベディングといったもの)の準教師付き(semi−supervised)変形も、また、使用され得る。
一つの態様において、会話入力は、会話入力から生じた複数の分類器に対して適用されている特徴に基づいて、会話レスポンスを選択するための手段を使用して処理される。各分類器は、会話タイプに関連付けされている。会話レスポンスは、また、会話タイプとも関連付けされている。
別の態様において、会話入力は、会話入力を表わしている入力データをメモリの中に受け取ることによって処理され得る。入力データから生じる特徴データは、複数の分類器に対して適用され得るものであり、各分類器は、複数の会話タイプのうちからの会話タイプを代表している。分類器は、入力特徴データに応じて、適合データを出力する。会話レスポンスは、分類器によって出力された適合データに従った複数の会話タイプのうちからの一つまたはそれ以上の会話タイプに応じて選択される。
このセクションにおける、あらゆる前出の態様において、特徴は、会話入力から生成されたnグラムを含み得る。そうした特徴は、会話入力に関連する感情を示すデータを含み得る。そうした特徴は、会話入力の技術的事項(subject matter)に対する一つまたはそれ以上のクラスを示すデータを含み得る。
このセクションにおける、あらゆる前出の態様において、各分類器は、バイナリ分類器であってよく、適合データの出力が、特徴データに応じて、特徴データがバイナリ分類器に関連付けされた会話タイプのポジティブ例であるとしてラベル付けされた会話入力と一致する確率を表わしている。
このセクションにおける、あらゆる前出の態様において、特徴データは、会話入力と会話入力に関連付けされた他の情報とから生じ得るものである。
このセクションにおける、あらゆる前出の態様において、会話レスポンスは、複数の会話タイプに対する複数の会話レスポンスを保管しているコレクションから選択され得るものである。
このセクションにおける、あらゆる前出の態様において、一つまたはそれ以上の会話タイプは、分類器によって出力される適合データに応じて複数の会話タイプの中から選択され得るものである。会話レスポンスは、選択された一つまたはそれ以上の会話タイプに応じて選択され得る。一つまたはそれ以上の会話タイプは、分類器によって出力された適合データの中からのスコアに基づいて選択され得る。
このセクションにおける、あらゆる前出の態様において、各分類器は、スコアを出力することができる。スコアは、あらゆる範囲の値であってよく、所定の値を用いて分類器によって表される会話タイプの特徴に対する一致を示し、ある値は一致しないことを示している。一致を示す値は、範囲における最大値のような、範囲の極値であってよい。スコアは、代替的に、会話タイプに対する一致の確率を示し得る。
このセクションにおける、あらゆる前出の態様において、対話状態情報が維持され得る。会話レスポンスは、また、維持された対話状態情報に基づいて選択されてもよい。会話レスポンスは、また、維持された対話状態情報と会話タイプのヒエラルキー情報に基づいて選択されてもよい。
このセクションにおける、あらゆる前出の態様において、会話入力のエンティティからの入力と会話レスポンスのエンティティに対する出力は、他のデバイスおよびコンピュータから離れた一つまたはそれ以上のデバイスにおいて実行され得るものであり。会話入力から特徴を生成し、分類器に対してそれらの分類を適用し、そして、会話レスポンスを選択する。そうした場合に、入力を受け取るデバイスは、会話入力に関する情報を送信するように、一つまたはそれ以上のコンピュータに対して接続されている。同様に、会話レスポンスに関する情報を伴う送信を受け取るデバイスは、そうした送信を受信するために一つまたはそれ以上のコンピュータに対して接続されている。そうしたデバイスまたはコンピュータのそれぞれは、メモリ、それを通じて入力データが受信される入力(input)、入力されたデータを処理するように構成されているプロセス、および、それを通じて出力データが別のデバイスまたはコンピュータに対して提供され得る出力(output)、を含んでいる。
このセクションにおける、あらゆる前出の態様において、会話入力を提供し、かつ、会話レスポンスを受け取るためにエンティティによって使用されるデバイスまたは複数のデバイスは、あらゆる数量のデバイスであってよい。これらに限定されるわけではないが、モバイルフォン、タブレットコンピュータ、ハンドヘルドコンピューティングデバイス、自動車ベースコンポーネント、ラップトップコンピュータ、ポータブルコンピュータ、サーバーコンピュータ、ノートブックコンピュータ、スレートコンピュータ、デスクトップコンピュータ、ホームコンピュータシステム、ゲームコンソール、ケーブル衛星または他のテレビジョンを受け取るためのセットトップボックス、テレビ、スマートディスプレイデバイス、等を含んでいるものである。
あらゆる前出の態様において、分類器は、会話入力を会話タイプへと分類するように訓練され得るものである。そうしたトレーニングプロセスは、会話入力の第一数(first number)を会話タイプのポジティブ例としてラベル付けし、かつ、会話入力の第二数(second number)を会話タイプのネガティブ例としてラベル付けすることによって実施され得る。分類器は、ラベル付けされた会話入力を使用して構築される。会話入力のコーパスがアクセスされる。会話入力について分類器から出力を獲得するために、分類器に対してコーパスからの会話入力が適用される。会話入力に対する分類器からの出力に基づいてラベル付けするために、一人以上の個人に対して追加の会話入力が示される。示された追加の会話入力に対する一人以上の個人からのラベルが受け取られる。追加のラベル付けされた会話入力を使用して、分類器が再教育(retain)される。
分類器の訓練を含む、このセクションにおける、あらゆる前出の態様において、分類器は、適用すること、示すこと、受け取ること、および、再教育された分類器を使用して、再教育すること、に係るステップを繰り返すプロセスを使用して訓練され得るものである。
あらゆる前出の態様において、会話レスポンスは、一人以上の個人がラベル付けを行った分類器と関連付けされた会話タイプについて、ラベル付けを行った個人から受け取ることができる。
あらゆる前出の態様において、追加の会話タイプは、会話入力のコーパスから特定され得るものである。例えば、コーパスにおける会話入力はクラスタリングされ、そして、会話タイプがクラスタに対して割り当てられ得る。別の例として、会話入力は、複数の分類器に対して適用され得る。複数の分類器のいずれもが一致を示さない会話入力が、特定される。一つまたはそれ以上の新たな会話タイプが、特定された会話入力に対して割り当てられる。
あらゆる前出の態様において、ラベル付けのために会話入力を表わすことは、分類器の出力が、分類器に対する追加の会話入力がポジティブ一致またはネガティブ一致のいずれでもないことを示すか否かに応じて、表されるべき追加の会話入力を選択することを含んでよい。
あらゆる前出の態様において、分類器の会話タイプは、会話タイプのヒエラルキーに含まれてよい。会話タイプは、閾値より上のスコアを伴う分類器に基づいて選択されてよく、そして、より特定的な会話タイプが、より一般的な会話タイプの上に選択される。会話入力のコーパスの自動的なクラスタリングは、会話入力に対するクラス情報を提供し得る。
このセクションにおける、あらゆる前出の態様は、一つまたはそれ以上のコンピュータシステムにおいて具現化され得る。そうしたコンピュータシステムに係るあらゆる個々のコンポーネントまたは複数のコンポーネントとして、そうしたコンピュータシステムの一つまたはそれ以上のもの又はそうしたコンピュータシステムのあらゆる個々のコンポーネントによって実行されるプロセスとして、もしくは、コンピュータプログラムのインストラクションが保管されているコンピュータストレージを含む一つまたはそれ以上の製造品としてである。そして、コンピュータプログラムは、一つまたはそれ以上のコンピュータによって処理されるときに、そうしたコンピュータシステム、または、そうしたコンピュータシステムのあらゆる個々のコンポーネントを提供するように、それらのコンピュータを構成する。
図1から図5に関連して説明された実施例においては、2つのアプリケーションが存在し得る。一つは、分類器の構築についてのもの(例えば、トレーニング処理モジュール)であり、そして、別のものは、会話入力に応じるために訓練された分類器を使用すること(例えば、入力処理モジュール)についてである。これらのアプリケーションのそれぞれは、アプリケーションの異なるコンポーネントを実施している複数のアプリケーションから成ってよい。それぞれのアプリケーションは、分離したプラットフォーム(例えば、コンピュータ上で実行されているアプリケーションによるコンピュータのリソースに対するアクセスを管理するオペレーティングシステムを用いるコンピュータ)において実行するようにデザインされてよい。コンピュータは、図6に関して以下に説明されるように実施される。
図6は、一つのコンピュータの例を説明しており、図1−5のシステムに係る様々なコンピュータがそれを用いて実施され得る。コンピュータは、あらゆる多種多様な汎用または専用コンピューティングハードウェアコンフィグレーションであってよい。使用され得るコンピュータのタイプのいくつかの例は、これらに限定されるわけではないが、パーソナルコンピュータ、ゲームコンソール、セットトップボックス、ハンドヘルド又はラップトップデバイス(例えば、メディアプレーヤ、ノートブックコンピュータ、タブレットコンピュータ、携帯電話、パーソナルデータアシスタント、ボイスレコーダ)、サーバーコンピュータ、マルチプロセッサシステム、マイクロコントローラベースのシステム、プログラマブル家電、ネットワークPC,ミニコンピュータ、メインフレームコンピュータ、および、上記のコンピュータ又はデバイスのうちあらゆるものを含む分散コンピューティング環境、等を含むものである。
図6を参照すると、一つの例のコンピュータ600は、少なくとも一つの処理装置602とメモリ604を含んでいる。コンピュータは、複数の処理装置を含んでよい。処理装置602は、相互に独立して動作する一つまたはそれ以上の処理コア(図示なし)を含み得る。追加のコプロセッシング(co−processing)装置、グラフィクス処理装置620といったものも、また、コンピュータの中に存在してよい。メモリ604は、揮発性(ダイナミックランダムアクセスメモリ(DRAM)または他のランダムアクセスメモリといったもの)、不揮発性(読出し専用メモリ、フラッシュメモリ、等)、または2つのいくつかの組合せであってよい。メモリのこのコンフィグレーションは、破線606によって図6において図示されている。コンピュータ600は、追加のストレージ(リムーバブル及び/又は非リムーバブル)を含んでよい。これらに限定されるわけではないが、磁気的記録または光記録されたディスクもしくはテープを含んでいる。そうした追加のストレージは、リムーバブルストレージ608および非リムーバブルストレージ610によって図1に図示されている。図6における様々なコンポーネントは、一般的に、一つまたはそれ以上のバス630といった、相互接続メカニズムによってインターコネクトされている。
コンピュータストレージ媒体は、データを保管することができ、かつ、コンピュータによってアドレス可能な物理的ストレージロケーションから取り出すことができるあらゆる媒体である。コンピュータストレージ媒体は、揮発性と不揮発性メモリ、および、リムーバブルと非リムーバブルストレージ媒体を含んでいる。メモリ604と606、リムーバブルストレージ608と非リムーバブルストレージ610は、コンピュータストレージ媒体の全ての例である。コンピュータストレージ媒体のいくつかの例は、RAM、ROM、EEPROM、フラッシュメモリ又は他のメモリ技術、CD−ROM、デジタル多目的ディスク(DVD)又は他の光または光磁気記録ストレージデバイス、磁気カセット、磁気テープ、磁気ディスクストレージ又は他の磁気ストレージデバイス、である。コンピュータストレージ媒体と通信媒体は、相互に排他的な媒体のカテゴリーである。
コンピュータ600は、また、通信接続612も含み、コンピュータは、通信媒体を通じて他のデバイスと通信することができる。通信媒体は、典型的には、有線又は無線サブスタンスを通じて、コンピュータプログラムインストラクション、データ構造、プログラムモジュール、または他のデータを送信する。サブスタンスを通じて搬送波または他の輸送メカニズムといった変調されたデータ信号を伝搬することによるものである。用語「変調されたデータ信号(”modulated data signal”)」は、一つまたはそれ以上の特性セットを有し、または、信号の中の情報をエンコードするような方法で変更された信号を意味するものであり、それにより、その信号の受信デバイスのコンフィグレーションまたは状態が変化する。例として、かつ限定ではなく、通信媒体は、有線ネットワーク又は直接有線(direct−wired)接続、といった有線媒体、および、アコースティック、RF、赤外線、および他の無線媒体、といった無線媒体を含んでいる。通信接続612は、ネットワークインターフェイスまたはラジオ送信器といった、デバイスであり、通信媒体を通じてデータを送信し、かつ、通信媒体からデータを受信するために通信媒体とインターフェイスするものである。
コンピュータ600は、キーボード、マウス、ペン、カメラ、タッチ入力デバイス、等といった、様々な入力デバイス614を有してよい。ディスプレイ、スピーカ、プリンタ、等といった出力デバイス616も、また、含まれてよい。これらのデバイス全ては、図6におけるコンピュータの様々なコンポーネントを収容するハウジングの部分であってよく、または、ハウジングから分離され、かつ、シリアルバス、無線通信接続、等といった様々な接続インターコネクトを通じてコンピュータに対して接続されてよい。様々な入力および出力デバイスは、ナチュラルユーザインターフェイス(NUI)を実施することができる。ユーザが、デバイスと「自然な(”natural”)」やり方で相互作用できるようにするあらゆるインターフェイス技術であり、マウス、キーボード、リモートコントロール、等といった入力デバイスによって課される人工的な制約から解放されるものである。
NUI方法の例は、音声認識、タッチおよびスタイラス(stylus)認識、スクリーンとスクリーン隣接の両方におけるジェスチャ認識、エアージェスチャ(air gesture)、頭と眼のトラッキング、声とスピーチ、ビジョン、タッチ、ジェスチャ、および、機械知能(machine intelligence)に依存するものを含み、そして、以下の使用を含んでよい。タッチ感応ディスプレイ、音声認識、意図と目的理解、深度カメラ(立体カメラシステム、赤外線カメラシステム、および、他のカメラシステム、そして、これらの組合せ)を使用した動作ジェスチャ検出、加速度計またはジャイロスコープを使用した動作ジェスチャ検出、顔面認識、3次元ディスプレイ、頭、目、および注視トラッキング、没入型拡張現実と仮想現実システム、より自然なインターフェイスを提供する全てのものであり、電界検出電極(EEGおよび関連する方法)を使用する脳活動を検出するための技術も同様である。
様々なストレージ610、通信接続612、出力デバイス616、および入力デバイス614は、ハウジングの中にコンピュータの残りと共に統合され得るか、または、コンピュータにおける入力/出力インターフェイスデバイスを通じて接続され得る。その場合に、参照番号810、812、814、および816は、デバイスに対する接続のためのインターフェイスまたはデバイス自身のいずれかを、場合によって示すことができる。
上記に図1−5で説明されたようなシステムに係る、各コンポーネント(「モジュール(”module”)」または「エンジン(”engine”)」等とも呼ばれるもの)、そして、コンピュータにおいて動作するものは、一つまたはそれ以上のコンピュータに係る一つまたはそれ以上の処理装置、および、一つまたはそれ以上の処理装置によって処理される一つまたはそれ以上のコンピュータプログラムを使用して、実施され得る。コンピュータプログラムは、コンピュータで実行可能な(computer−executable)インストラクション、及び/又は、コンピュータで解釈される(computer−intepreted)インストラクションを含んでいる。プログラミングモジュールといったものであり、インストラクションは、一つまたはそれ以上のコンピュータにおける一つまたはそれ以上の処理装置によって処理される。一般的に、そうしたインストラクションは、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造、等を定め、処理装置によって処理されるときに、データについてオペレーションを実行するように、または、様々なコンポーネントまたはデータ構造を実施するためにプロセッサまたはコンピュータを構成するように、処理装置に対して指示する。そうしたコンポーネントは、ストレージまたはメモリにおいてデータをアクセスすること、および、ストレージまたはメモリにデータを保管することによる入力と出力を有している。
このコンピュータシステムは、通信ネットワークにわたりリンクされた複数のコンピュータによってオペレーションが実行される、分散コンピューティング環境において実践されてよい。分散コンピューティング環境において、コンピュータプログラムは、ローカルとリモート両方のコンピュータストレージ媒体に置かれてよい。
代替的に、または追加で、ここにおいて説明された一つまたはそれ以上の様々なコンポーネントの機能は、少なくとも部分的に、一つまたはそれ以上のハードウェア論理コンポーネントによって実行され得る。例えば、かつ限定なしに、使用され得るハードウェア論理コンポーネントのタイプの実例は、フィールドプログラマブルゲートアレイ(FPGA)、特定プログラム集積回路(ASIC)、特定プログラム標準品(ASSP)、システムオンチップシステム(SOC)、複合プログラマブル論理デバイス(CPLD)、等を含んでいる。
添付の請求項のプリアンブルにおける用語「製品(”article of manufacture”)」、「プロセス(”process”)」、「マシン(”machine”)」、および「組成物(”composition of matter”)」は、米国特許法第101条(35U.S.C.§101)においてこれらの用語の使用により定められる特許可能な技術的事項(subject matter)の範囲内にあるものと見做される技術的事項について請求項を限定するように意図されたものである。
添付の請求項において定められる技術的事項は、上述された特定の実施例について必ずしも限定されないことが理解されるべきである。上述された特定の実施は、例としてだけ開示されたものである。

Claims (15)

  1. 入力データを創作するように構成された入力デバイスであり、前記入力データは会話入力を表わしている、入力デバイスと、
    前記入力データを受け取り、かつ、保管するように構成されたメモリと、
    複数の分類器の入力に対して前記メモリからの前記入力データから生じた特徴データが適用されるようにするために構成された処理システムであり、各分類器は、複数の会話タイプの中から一つの会話タイプを表わしており、かつ、入力特徴データに応じて適合データを出力しており、
    前記処理システムは、さらに、前記会話入力に対する会話レスポンスを示すデータを前記メモリの中に受け取るように構成されており、前記データは、前記複数の分類器によって出力される前記適合データに応じて選択されたものである、処理システムと、
    前記会話レスポンスを示す受け取られたデータに基づいて出力データを提供するように構成された出力デバイスと、
    を含む、装置。
  2. 前記処理システムは、さらに、前記会話レスポンスを選択するために、
    前記分類器によって出力される前記適合データに応じて前記複数の会話タイプの中から一つまたはそれ以上の会話タイプを選択し、かつ、
    選択された前記一つまたはそれ以上の会話タイプに応じて前記会話レスポンスを生成する、
    ように構成されている、請求項1に記載の装置。
  3. 前記特徴は、前記会話入力から生成されたnグラムを含む、
    請求項1または2に記載の装置。
  4. 前記特徴は、前記会話入力に関する感情を示すデータを含む、
    請求項1乃至3いずれか一項に記載の装置。
  5. 前記特徴は、前記会話入力の技術的事項に対する一つまたはそれ以上のクラスを示すデータを含む、
    請求項1乃至4いずれか一項に記載の装置。
  6. 前記処理システムは、さらに、前記会話入力および前記会話入力に関連する他の情報から前記特徴データを生じるように構成されている、
    請求項1乃至5いずれか一項に記載の装置。
  7. 各分類器は、バイナリ分類器であり、
    前記適合データの出力は、特徴データに応じて、前記特徴データがバイナリ分類器に関連付けされた前記会話タイプのポジティブ例であるとしてラベル付けされた会話入力と一致する確率を表わす、
    請求項1乃至6いずれか一項に記載の装置。
  8. 前記処理システムは、さらに、前記会話レスポンスを選択するために、
    前記複数の会話タイプに対する複数の会話レスポンスを保管しているコレクションから一つの会話レスポンスを選択するように構成されている、
    請求項1乃至7いずれか一項に記載の装置。
  9. 前記処理システムは、さらに、前記会話タイプを選択するために、
    前記分類器からの前記適合データの出力の中からベストスコアを有する一つの会話タイプを選択するように構成されている、
    請求項1乃至8いずれか一項に記載の装置。
  10. 前記処理システムは、さらに、
    会話入力を会話タイプへと分類するために前記分類器を訓練するように構成されている、
    請求項1乃至9いずれか一項に記載の装置。
  11. 前記処理システムは、さらに、会話タイプについて分類器を訓練するために、
    会話入力の第一数を前記会話タイプのポジティブ例としてラベル付けし、かつ、会話入力の第二数を前記会話タイプのネガティブ例としてラベル付けし、
    前記ラベル付けされた会話入力を使用して、前記分類器を構築し、
    会話入力のコーパスにアクセスし、
    各会話入力について前記分類器から出力を獲得するために、前記分類器に対して前記コーパスからの会話入力を適用し、
    前記会話入力に対する前記分類器からの出力に基づいてラベル付けするために、一人以上の個人に対して追加の会話入力を示し、
    示された追加の会話入力に対する前記一人以上の個人からのラベルを受け取り、
    追加のラベル付けされた会話入力を使用して、前記分類器を再教育する、
    ように構成されている、
    請求項1乃至10いずれか一項に記載の装置。
  12. 前記分類器は、前記一人以上の個人が前記ラベル付けを行った分類器と関連付けされた会話タイプについて、前記一人以上の個人のうちの一人以上によって準備された会話レスポンスを含む、
    請求項11に記載の装置。
  13. 前記処理システムは、さらに、
    会話入力の前記コーパスからの追加の会話タイプを特定するように構成されている、
    請求項11に記載の装置。
  14. 会話入力を表わす入力データを、入力デバイスを通じて受け取り、かつ、メモリの中に保管する、ステップと、
    処理システムが、前記メモリからの前記入力データから生じた特徴データを複数の分類器の入力に対して適用されるようにするステップであり、各分類器は、複数の会話タイプの中から一つの会話タイプを表わしており、かつ、入力された特徴データに応じて適合データを出力する、ステップと、
    前記処理システムが、前記メモリの中へ、前記会話入力に対する会話レスポンスを示すデータを受け取るステップであり、前記データは前記複数の分類器によって出力された前記適合データに応じて選択されたものである、ステップと、
    受け取った前記会話レスポンスを示すデータに基づいて、出力デバイスを通じて、出力データを提供するステップと、
    を含む、プロセス。
  15. 請求項14に記載のプロセスを、処理システムに実行させるように構成されたインストラクションを含む、コンピュータプログラム。
JP2017521040A 2014-07-03 2015-07-02 社交的会話入力に対するコンピュータレスポンスの生成 Pending JP2017527926A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/323,050 2014-07-03
US14/323,050 US9547471B2 (en) 2014-07-03 2014-07-03 Generating computer responses to social conversational inputs
PCT/US2015/038923 WO2016004266A2 (en) 2014-07-03 2015-07-02 Generating computer responses to social conversational inputs

Publications (2)

Publication Number Publication Date
JP2017527926A true JP2017527926A (ja) 2017-09-21
JP2017527926A5 JP2017527926A5 (ja) 2018-08-09

Family

ID=53718156

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017521040A Pending JP2017527926A (ja) 2014-07-03 2015-07-02 社交的会話入力に対するコンピュータレスポンスの生成

Country Status (6)

Country Link
US (1) US9547471B2 (ja)
EP (1) EP3164864A2 (ja)
JP (1) JP2017527926A (ja)
KR (1) KR102333505B1 (ja)
CN (1) CN106663426A (ja)
WO (1) WO2016004266A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020067585A (ja) * 2018-10-25 2020-04-30 トヨタ自動車株式会社 コミュニケーション装置およびコミュニケーション装置の制御プログラム

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9405448B2 (en) 2012-08-30 2016-08-02 Arria Data2Text Limited Method and apparatus for annotating a graphical output
US8762133B2 (en) 2012-08-30 2014-06-24 Arria Data2Text Limited Method and apparatus for alert validation
US8762134B2 (en) 2012-08-30 2014-06-24 Arria Data2Text Limited Method and apparatus for situational analysis text generation
US9135244B2 (en) 2012-08-30 2015-09-15 Arria Data2Text Limited Method and apparatus for configurable microplanning
US9336193B2 (en) 2012-08-30 2016-05-10 Arria Data2Text Limited Method and apparatus for updating a previously generated text
US9600471B2 (en) 2012-11-02 2017-03-21 Arria Data2Text Limited Method and apparatus for aggregating with information generalization
WO2014076524A1 (en) 2012-11-16 2014-05-22 Data2Text Limited Method and apparatus for spatial descriptions in an output text
WO2014076525A1 (en) 2012-11-16 2014-05-22 Data2Text Limited Method and apparatus for expressing time in an output text
US9990360B2 (en) 2012-12-27 2018-06-05 Arria Data2Text Limited Method and apparatus for motion description
US10115202B2 (en) 2012-12-27 2018-10-30 Arria Data2Text Limited Method and apparatus for motion detection
GB2524934A (en) 2013-01-15 2015-10-07 Arria Data2Text Ltd Method and apparatus for document planning
US9946711B2 (en) 2013-08-29 2018-04-17 Arria Data2Text Limited Text generation from correlated alerts
US9244894B1 (en) 2013-09-16 2016-01-26 Arria Data2Text Limited Method and apparatus for interactive reports
US9396181B1 (en) 2013-09-16 2016-07-19 Arria Data2Text Limited Method, apparatus, and computer program product for user-directed reporting
US10664558B2 (en) 2014-04-18 2020-05-26 Arria Data2Text Limited Method and apparatus for document planning
US10460720B2 (en) 2015-01-03 2019-10-29 Microsoft Technology Licensing, Llc. Generation of language understanding systems and methods
US10157178B2 (en) * 2015-02-06 2018-12-18 International Business Machines Corporation Identifying categories within textual data
US20190026265A1 (en) * 2016-04-08 2019-01-24 Sony Corporation Information processing apparatus and information processing method
US9864743B2 (en) * 2016-04-29 2018-01-09 Fujitsu Limited Textual emotion detection
US10445432B1 (en) 2016-08-31 2019-10-15 Arria Data2Text Limited Method and apparatus for lightweight multilingual natural language realizer
US10540513B2 (en) 2016-09-13 2020-01-21 Microsoft Technology Licensing, Llc Natural language processor extension transmission data protection
US10503767B2 (en) 2016-09-13 2019-12-10 Microsoft Technology Licensing, Llc Computerized natural language query intent dispatching
US10467347B1 (en) 2016-10-31 2019-11-05 Arria Data2Text Limited Method and apparatus for natural language document orchestrator
CN108021985B (zh) * 2016-11-03 2022-05-10 北京如布科技有限公司 一种模型参数训练方法及装置
US11205103B2 (en) 2016-12-09 2021-12-21 The Research Foundation for the State University Semisupervised autoencoder for sentiment analysis
US11341174B2 (en) * 2017-03-24 2022-05-24 Microsoft Technology Licensing, Llc Voice-based knowledge sharing application for chatbots
US11462212B2 (en) * 2017-05-17 2022-10-04 Nippon Telegraph And Telephone Corporation Document identification device, document identification method, and program
JP6767322B2 (ja) * 2017-08-18 2020-10-14 ヤフー株式会社 出力制御装置、出力制御方法及び出力制御プログラム
US20190066669A1 (en) * 2017-08-29 2019-02-28 Google Inc. Graphical data selection and presentation of digital content
US10607612B2 (en) 2017-10-19 2020-03-31 International Business Machines Corporation Hierarchical intimacy for cognitive assistants
US11886823B2 (en) * 2018-02-01 2024-01-30 International Business Machines Corporation Dynamically constructing and configuring a conversational agent learning model
US11120225B2 (en) * 2019-02-05 2021-09-14 International Business Machines Corporation Updating an online multi-domain sentence representation generation module of a text classification system
EP3731201B1 (en) * 2019-04-24 2022-11-09 ABB Schweiz AG A support system for an operator
US11270077B2 (en) * 2019-05-13 2022-03-08 International Business Machines Corporation Routing text classifications within a cross-domain conversational service
KR20190096853A (ko) * 2019-07-30 2019-08-20 엘지전자 주식회사 음성 처리 방법 및 음성 처리 장치
CN110827798B (zh) * 2019-11-12 2020-09-11 广州欢聊网络科技有限公司 一种音频信号处理的方法及装置
KR20210095431A (ko) * 2020-01-23 2021-08-02 삼성전자주식회사 전자 장치 및 그 제어 방법
US11972220B2 (en) 2020-11-30 2024-04-30 Oracle International Corporation Enhanced logits for natural language processing

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7152029B2 (en) 2001-07-18 2006-12-19 At&T Corp. Spoken language understanding that incorporates prior knowledge into boosting
US7548847B2 (en) * 2002-05-10 2009-06-16 Microsoft Corporation System for automatically annotating training data for a natural language understanding system
US7398209B2 (en) * 2002-06-03 2008-07-08 Voicebox Technologies, Inc. Systems and methods for responding to natural language speech utterance
US7606714B2 (en) * 2003-02-11 2009-10-20 Microsoft Corporation Natural language classification within an automated response system
KR100486735B1 (ko) * 2003-02-28 2005-05-03 삼성전자주식회사 최적구획 분류신경망 구성방법과 최적구획 분류신경망을이용한 자동 레이블링방법 및 장치
US7412383B1 (en) 2003-04-04 2008-08-12 At&T Corp Reducing time for annotating speech data to develop a dialog application
US7280965B1 (en) 2003-04-04 2007-10-09 At&T Corp. Systems and methods for monitoring speech data labelers
US7716056B2 (en) * 2004-09-27 2010-05-11 Robert Bosch Corporation Method and system for interactive conversational dialogue for cognitively overloaded device users
US20060224579A1 (en) * 2005-03-31 2006-10-05 Microsoft Corporation Data mining techniques for improving search engine relevance
US7596498B2 (en) 2005-09-02 2009-09-29 Microsoft Corporation Monitoring, mining, and classifying electronically recordable conversations
US8321220B1 (en) * 2005-11-30 2012-11-27 At&T Intellectual Property Ii, L.P. System and method of semi-supervised learning for spoken language understanding using semantic role labeling
GB2433150B (en) * 2005-12-08 2009-10-07 Toshiba Res Europ Ltd Method and apparatus for labelling speech
US7844457B2 (en) * 2007-02-20 2010-11-30 Microsoft Corporation Unsupervised labeling of sentence level accent
US20080249764A1 (en) * 2007-03-01 2008-10-09 Microsoft Corporation Smart Sentiment Classifier for Product Reviews
US8010471B2 (en) * 2007-07-13 2011-08-30 Microsoft Corporation Multiple-instance pruning for learning efficient cascade detectors
US7987188B2 (en) * 2007-08-23 2011-07-26 Google Inc. Domain-specific sentiment classification
US8050929B2 (en) * 2007-08-24 2011-11-01 Robert Bosch Gmbh Method and system of optimal selection strategy for statistical classifications in dialog systems
US7996214B2 (en) 2007-11-01 2011-08-09 At&T Intellectual Property I, L.P. System and method of exploiting prosodic features for dialog act tagging in a discriminative modeling framework
US8086549B2 (en) 2007-11-09 2011-12-27 Microsoft Corporation Multi-label active learning
US7958068B2 (en) * 2007-12-12 2011-06-07 International Business Machines Corporation Method and apparatus for model-shared subspace boosting for multi-label classification
CN101178705A (zh) * 2007-12-13 2008-05-14 中国电信股份有限公司 一种自然语言理解方法和人机交互智能系统
US8239189B2 (en) * 2008-02-26 2012-08-07 Siemens Enterprise Communications Gmbh & Co. Kg Method and system for estimating a sentiment for an entity
US9129008B1 (en) * 2008-11-10 2015-09-08 Google Inc. Sentiment-based classification of media content
CN101488342A (zh) * 2008-12-31 2009-07-22 广东协联科贸发展有限公司 人机语言交互演绎系统及人机语言交互需求应答的智能化实现方法
CN101566998B (zh) * 2009-05-26 2011-12-28 华中师范大学 一种基于神经网络的中文问答系统
US20110106807A1 (en) * 2009-10-30 2011-05-05 Janya, Inc Systems and methods for information integration through context-based entity disambiguation
US8412530B2 (en) * 2010-02-21 2013-04-02 Nice Systems Ltd. Method and apparatus for detection of sentiment in automated transcriptions
US8589317B2 (en) 2010-12-16 2013-11-19 Microsoft Corporation Human-assisted training of automated classifiers
CN102637433B (zh) * 2011-02-09 2015-11-25 富士通株式会社 识别语音信号中所承载的情感状态的方法和系统
US8554701B1 (en) * 2011-03-18 2013-10-08 Amazon Technologies, Inc. Determining sentiment of sentences from customer reviews
US20120253792A1 (en) * 2011-03-30 2012-10-04 Nec Laboratories America, Inc. Sentiment Classification Based on Supervised Latent N-Gram Analysis
US9104655B2 (en) * 2011-10-03 2015-08-11 Aol Inc. Systems and methods for performing contextual classification using supervised and unsupervised training
CN102411611B (zh) * 2011-10-15 2013-01-02 西安交通大学 一种面向即时交互文本的事件识别与跟踪方法
US9158761B2 (en) * 2012-03-28 2015-10-13 Lockheed Martin Corporation Identifying cultural background from text
EP2839391A4 (en) 2012-04-20 2016-01-27 Maluuba Inc CONVERSATION AGENT
CN102968409B (zh) * 2012-11-23 2015-09-09 海信集团有限公司 智能人机交互语义分析方法及交互系统
US9582490B2 (en) 2013-07-12 2017-02-28 Microsoft Technolog Licensing, LLC Active labeling for computer-human interactive learning
CN103474065A (zh) * 2013-09-24 2013-12-25 贵阳世纪恒通科技有限公司 基于自动分类技术的语音意图判定识别方法
US9886669B2 (en) 2014-02-26 2018-02-06 Microsoft Technology Licensing, Llc Interactive visualization of machine-learning performance

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020067585A (ja) * 2018-10-25 2020-04-30 トヨタ自動車株式会社 コミュニケーション装置およびコミュニケーション装置の制御プログラム
JP7063230B2 (ja) 2018-10-25 2022-05-09 トヨタ自動車株式会社 コミュニケーション装置およびコミュニケーション装置の制御プログラム

Also Published As

Publication number Publication date
WO2016004266A2 (en) 2016-01-07
CN106663426A (zh) 2017-05-10
US9547471B2 (en) 2017-01-17
WO2016004266A3 (en) 2016-03-10
EP3164864A2 (en) 2017-05-10
KR102333505B1 (ko) 2021-12-01
US20160005395A1 (en) 2016-01-07
KR20170026593A (ko) 2017-03-08

Similar Documents

Publication Publication Date Title
KR102333505B1 (ko) 소셜 대화형 입력들에 대한 컴퓨터 응답 생성
US10410625B2 (en) Machine learning dialect identification
EP3469592B1 (en) Emotional text-to-speech learning system
Metallinou et al. Context-sensitive learning for enhanced audiovisual emotion classification
CN105895087B (zh) 一种语音识别方法及装置
US10134389B2 (en) Clustering user utterance intents with semantic parsing
KR102449875B1 (ko) 음성 신호 번역 방법 및 그에 따른 전자 장치
Yeh et al. Topic detection and tracking for conversational content by using conceptual dynamic latent Dirichlet allocation
KR20190094315A (ko) 스타일을 고려하여 텍스트와 음성을 상호 변환하는 인공 지능 장치 및 그 방법
US20200134398A1 (en) Determining intent from multimodal content embedded in a common geometric space
US20200357382A1 (en) Oral, facial and gesture communication devices and computing architecture for interacting with digital media content
Kaushik et al. Automatic sentiment detection in naturalistic audio
US11881209B2 (en) Electronic device and control method
CN118043885A (zh) 用于半监督语音识别的对比孪生网络
WO2022271331A1 (en) Machine-learning-model based name pronunciation
US10915819B2 (en) Automatic real-time identification and presentation of analogies to clarify a concept
CN110827799A (zh) 用于处理语音信号的方法、装置、设备和介质
US11809480B1 (en) Generating dynamic knowledge graph of media contents for assistant systems
US9077813B2 (en) Masking mobile message content
US20210337274A1 (en) Artificial intelligence apparatus and method for providing visual information
US11887600B2 (en) Techniques for interpreting spoken input using non-verbal cues
Guo et al. Sign-to-911: Emergency Call Service for Sign Language Users with Assistive AR Glasses
US20210217437A1 (en) Method and apparatus for processing voice
US20230267934A1 (en) Display apparatus and operating method thereof
KR102185784B1 (ko) 음향 데이터 탐색 방법 및 장치

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180627

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180627

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190329

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190507

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190802

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20200128