JP7386878B2 - アシスタントの応答を動的に適応させること - Google Patents

アシスタントの応答を動的に適応させること Download PDF

Info

Publication number
JP7386878B2
JP7386878B2 JP2021544624A JP2021544624A JP7386878B2 JP 7386878 B2 JP7386878 B2 JP 7386878B2 JP 2021544624 A JP2021544624 A JP 2021544624A JP 2021544624 A JP2021544624 A JP 2021544624A JP 7386878 B2 JP7386878 B2 JP 7386878B2
Authority
JP
Japan
Prior art keywords
intent
response
user
intimacy
automated assistant
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.)
Active
Application number
JP2021544624A
Other languages
English (en)
Other versions
JP2022522104A (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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of JP2022522104A publication Critical patent/JP2022522104A/ja
Application granted granted Critical
Publication of JP7386878B2 publication Critical patent/JP7386878B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/253Grammatical analysis; Style critique
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/453Help systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • 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/1815Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
    • 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/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
    • 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
    • G10L2015/228Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of application context

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

自動アシスタント(「パーソナルアシスタント」、「モバイルアシスタント」などとしても知られる)は、スマートフォン、タブレットコンピュータ、ウェアラブルデバイス、自動車システム、スタンドアロンのパーソナルアシスタントデバイスなどの様々なクライアントデバイスを介して、ユーザによって相互作用され得る。自動アシスタントは、話された自然言語入力(すなわち、発話)を含む、ユーザからの入力を受信し、アクションを実行することによって、別のデバイスを制御することによって、ならびに/または応答性のあるコンテンツ(たとえば、視覚的および/もしくは聴覚的自然言語出力)を提供することによって応答し得る。クライアントデバイスを介して相互作用される自動アシスタントは、クライアントデバイス自体を介して、および/またはクライアントデバイスとネットワーク通信している1つもしくは複数のリモートコンピューティングデバイス(たとえば、クラウド内のコンピューティングデバイス)を介して実装され得る。
本明細書で説明する実装形態は、ユーザの動的な親密性尺度に基づいて、アシスタントの応答を動的に適応させることを対象とする。本明細書で説明するように、ユーザの親密性尺度は、自動アシスタントとのユーザの過去の相互作用の1つまたは複数の態様を定量化するパラメータなど、時間とともに変化する様々なパラメータに基づいて生成することができる。したがって、ユーザの親密性尺度は、親密性尺度を決定する際に利用されるパラメータが変化するにつれて、時間とともに動的に変化する(たとえば、高まる、および/または減少する)。さらに、様々な実装形態では、自動アシスタント応答を適応させるかどうか、および/または適応させる方法を決定する際に生成される親密性尺度は、自動アシスタント応答が応答するユーザ入力に関連付けられる1つまたは複数のインテント(および/または任意でインテントの値/引数)に合わせて調整される。たとえば、応答を生成する際に利用されるパラメータのうちの1つまたは複数は、要求に含まれるインテント、および任意で関連するインテントに特定化することができる。したがって、所与のユーザに対して生成される親密性尺度は、ユーザからのユーザ入力に関連付けられるインテントに応じて異なる可能性がある。
実装形態は、親密性尺度がより親密性を示すようになるにつれて、アシスタントの応答を、より短縮されるように、および/またはリソース効率がより高いものになるように適応させる。たとえば、「月曜日のサーモスタットのスケジュールを変更してください」という話されたコマンドがクライアントデバイスの自動アシスタントインターフェースに提供されたと仮定する。ユーザの親密性尺度が親密性はまったくない/ほとんどないことを示している場合、応答は、タスクを実行する際にユーザに追加のガイダンスを提供するために比較的堅牢である。たとえば、応答は、「承知しました、時間と所望のサーモスタット温度を毎回述べてください」というコンピュータ生成のスピーチであってよい。ユーザの親密性がより親密性を示している場合、応答は、「承知しました、時間と所望の温度をお願いします」などの、簡略化されたコンピュータ生成のスピーチであってよい。ユーザの親密性尺度がさらなる親密性を示している場合、応答をさらに簡略化することができる(たとえば、「時間と温度」)。本明細書でより詳細に説明するように、決定された親密性尺度に適合する応答を生成するために、様々な技法を利用することができる。たとえば、いくつかの実装形態は、それぞれが対応する親密性尺度に関連付けられている複数の候補応答から適切な応答を選択することができる。また、たとえば、いくつかの実装形態では、初期/標準応答を取得し、次いで親密性尺度に従って初期応答を簡略化することができる。たとえば、より簡略化されたバージョンを生成するために、初期応答のテキストを要約したり、初期応答の用語を削除したり、初期応答の用語を対応する代名詞に置き換えたり、および/または初期応答を他の方法で操作したりすることができる。
さらに、ユーザが(所望の時間と温度の要求に応答して)所望の時間と温度でさらなる話された入力を提供するとき、親密性尺度に基づいて、自動アシスタントからのさらなる応答を動的に適応させることができる。たとえば、親密性がまったくない/ほとんどないことを示している場合、「あなたの月曜日のスケジュールが[時間と温度の言い換え]に適応されました」というコンピュータ生成のスピーチであってよく、より親密性を示している場合、それは「あなたのスケジュールは適応されました」というコンピュータ生成のスピーチであってよく、さらなる親密性を示している場合、それは、任意でクライアントデバイスに事前に記憶することができる単なる確認の「チーン(ding)」(または、他の非スピーチ音)であってよい。
したがって、様々な実装形態は、技術的タスクの実行において人間/自動アシスタントの相互作用をガイドするための技法を示し、ユーザの親密性尺度がより親密性を示すようになるにつれて、相互作用がより効率的になることを可能にする方法でそれを行う。たとえば、ユーザの親密性尺度がより親密性を示すようになるにつれて、より簡略化された応答が提供される。より簡略化された応答は、あまり簡略化されていない応答よりも少ないバイトで構成することができるため、自動アシスタントサーバにおいて生成されてクライアントデバイスに送信される際に利用されるネットワークリソースが少なくなる。さらに、簡略化された応答は、クライアントデバイスにおいて可聴出力としてレンダリングされる場合、クライアントデバイスによってより効率的にレンダリングすることができる。さらに、簡略化された応答をより迅速にレンダリングすることができるため、人間/自動アシスタントの相互作用の期間が短縮され、クライアントデバイスとリモート自動アシスタントコンポーネントとの間の通信セッションの期間が短縮される。さらに、ユーザの親密性尺度があまり親密性を示さない場合、あまり簡略化されていない(または、簡略化されていない)応答が提供されるが、人間/自動アシスタントの相互作用は依然として効率的な方法でガイドされる。たとえば、あまり簡略化されていない応答は、あまり親密性のないユーザにより多くのガイダンスを提供できるため、ユーザが、追加のガイダンスを積極的に求めるために、リソースを大量に消費するフォローアッププロンプトまたは他の相互作用を提供する必要性が軽減される。本明細書で説明するように、インテントに対するユーザの親密性尺度は、ユーザが最近の時間期間にインテントの入力をまったく(もしくは、ほとんど)提供しなかった結果として、および/または、親密性尺度を決定する際に利用される追加または代替の動的パラメータの変更の結果として、それらのインテントに対するユーザの初期入力に対する親密性が低いことを示すことができる。
様々な実装形態では、動的な親密性尺度に基づいてアシスタントの応答を適応させることに加えて、ユーザ入力に応答して発行されたコマンドは、親密性尺度および/または過去のユーザ入力に基づいて適応させることもできる。たとえば、ユーザは「サーモスタットを上げる」の入力を提供することができ、ユーザの親密性尺度が低い親密性を示した場合、アシスタントは、(親密性尺度に基づいて)「度数を指定してください、さもなければデフォルトの1度が使用されます」という応答を提供することができる。次いで、ユーザの応答(存在する場合)に基づいてサーモスタットを制御するためにコマンドが提供される。たとえば、ユーザが応答を提供しない場合、コマンドはサーモスタットを1度上げる。一方、応答が提供された場合、コマンドは、ユーザの応答に従ってサーモスタットを上げる。ユーザの親密性尺度は親密性が高いことを示している場合、「サーモスタットを上げる」の入力に対する応答は、単に「OK」または「チーン」という音である可能性がある。それらの実装形態のいくつかでは、サーモスタットを制御するために提供されるコマンドによって指定された増分量を自動的に決定するために、「度数を指定してください、さもなければデフォルトの1度が使用されます」という過去のプロンプトに応答するユーザの過去のユーザ入力が使用される。たとえば、ユーザが量を指定したことがない場合、またはかつて1度しか指定していない場合、1度を利用することができる。また、たとえば、ユーザが常に3度を指定した場合、3度を利用することができる。
他の実装形態は、上記および/または本明細書の他の場所に記載された方法のうちの1つまたは複数などの方法を実行するために、1つまたは複数のプロセッサ(たとえば、中央処理装置(CPU)、グラフィックス処理装置(GPU)および/またはテンソル処理装置(TPU))によって実行可能な命令を記憶する非一時的コンピュータ可読ストレージ媒体を含み得る。さらに他の実装形態は、上記および/または本明細書の他の場所に記載された方法のうちの1つまたは複数などの方法を実行するために、記憶された命令を実行するように動作可能な1つまたは複数のプロセッサを含む、1つまたは複数のコンピュータおよび/または1つまたは複数のロボットのシステムを含み得る。
前述の概念および本明細書でより詳細に説明される追加の概念のあらゆる組合せは、本明細書に開示される主題の一部であると考えられることを理解されたい。たとえば、本開示の終わりに現れる特許請求される主題のあらゆる組合せは、本明細書に開示される主題の一部であると考えられる。
様々な実装形態を実装することができる例示的な環境を示すブロック図である。 本明細書に開示される実装形態による例示的なプロセスを示すフローチャートである。 本明細書に開示される実装形態による別の例示的なプロセスを示す別のフローチャートである。 コンピューティングデバイスの例示的なアーキテクチャを示すブロック図である。
様々な実装形態では、ユーザインターフェース入力に関連付けられる1つまたは複数のインテントを決定するために、クライアントデバイスの自動アシスタントのユーザによって提供されるユーザインターフェース入力(たとえば、自然言語の話された入力、テキスト入力、ジェスチャ入力など)を処理することができる。インテントは、ユーザインターフェース入力の少なくとも1つの対応するインテント、および任意で1つまたは複数の関連するインテントを含むことができる。たとえば、ユーザは「アシスタント、キッチンライトをオフにしてください」という話された入力を自動アシスタントに提供することができ、対応するインテントは、接続されたスマートライトをオフにすることである。この場合、「キッチンライト」がオフにされる接続されたスマートライトの識別子であることを示す値などの、1つまたは複数の値をインテントに関連付けることができる。
自動アシスタントは、多くの場合、話された入力に応答してレンダリングされる応答を提供する。たとえば、キッチンライトをオフにするために適切なコマンドを送信することに加えて、自動アシスタントは、「キッチンライトをオフにしてください」という話された応答などのクライアントデバイスのスピーカを介して話された応答を提供することもできる。本明細書に記載の実装形態は、初期の自動アシスタント応答の代わりに提供するための簡略化された応答(すなわち、短縮された応答)を選択的に生成するために利用することができる。たとえば、「キッチンライトを消してください」が初期/標準応答である場合、その応答は、ユーザの親密性尺度が「ライトをオン/オフにしてください」というインテント、「スマートライトを制御してください」というインテント、および/またはユーザインターフェース入力に関連付けられる他のインテントに対して低い親密性ことを示したときに提供することができる。しかしながら、親密性尺度がインテントとのより親密性を示していることに応答して、自動アシスタントは、「ライトをオフにしてください」(「キッチン」という修飾語を省略している)、「それをオフにしてください」(「キッチンライト」を代名詞「それ」に置き換えている)などの簡略化された話された応答、またはいかなる話された応答も提供しない音のみをユーザに提供することができる。追加および/または代替の簡略化された応答が提供される場合がある。さらに、本明細書で説明するように、インテントに対するユーザの親密性尺度が動的に変化するにつれて、異なる簡略化された応答を時間とともに提供することができる。たとえば、「ライトをオフにしてください」を「それをオフにしてください」に置き換えることができ、次いで、音のみに置き換えることができ、次いで、「それをオフにしてください」に置き換えることができる。(たとえば、親密性尺度に基づいて「元に戻してください」を「それをオフにしてください」に戻すと、ユーザによる自動アシスタント相互作用がないため、あまり親密性を示さなくなる)。
本明細書で説明するように、初期応答は、特定のインテントに対する応答を提供する際に自動アシスタントによってユーザに提供される応答であり、対応するインテントに関連する詳細な情報を頻繁に提供する。たとえば、「OK、[スマートライトの総数]ライトをオフにしてください」(ライトの総数は、制御されている接続されたスマートライトの総数)は、「アシスタント、すべてのライトをオフにしてください」という自然言語のユーザ入力に関連付けられる初期応答である。同様に、「OK、[スマートライトの総数]ライトをオフにします」という応答は、「アシスタント、すべてのキッチンライトをオフにしてください」という自然言語入力に関連付けられる初期応答である。言い換えれば、同じインテントを有するユーザによって提供された両方の自然言語の話された入力は、同じ初期応答に対応する。
多くの実装形態では、初期応答は、親密性尺度の値に基づいて簡略化された応答に切り捨てることができ、親密性尺度は、自動アシスタントとのユーザの過去の相互作用を示す1つまたは複数のパラメータに基づいて決定される。様々な実装形態では、親密性尺度は、フィードフォワードニューラルネットワークモデル、畳み込みニューラルネットワークモデル、リカレントニューラルネットワークモデル、および/または追加のニューラルネットワークモデルなどの機械学習モデルを使用してパラメータを処理することによって決定することができる。
様々な実装形態において親密性尺度を決定する際に利用されるパラメータは、アシスタントタイプパラメータ、インテント固有パラメータ、値固有パラメータ、デバイスタイプパラメータ、および/または追加パラメータを含むことができる。アシスタントタイプのパラメータは、ユーザと自動アシスタントとの過去の相互作用にそれぞれ基づくパラメータを含むことができる。たとえば、アシスタントタイプのパラメータには、ユーザが特定のクライアントデバイス上で自動アシスタントと行った相互作用の総数、ユーザが任意のクライアントデバイス上で自動アシスタントと行った相互作用の総数、ユーザが自動アシスタントを使用している時間の長さ、ユーザが最後に自動アシスタントを使用してからの時間の長さ、ユーザが時間範囲内で自動アシスタントと行った相互作用の総数(たとえば、先週、先月)、自動アシスタントとの相互作用の頻度(一定の時間単位と比較して)、および/または追加のアシスタントタイプパラメータを含むことができる。様々な実装形態では、1つまたは複数(たとえば、すべて)のアシスタントタイプパラメータは、インテントにとらわれない、および/または値にとらわれない。言い換えれば、それらのパラメータは、それらの相互作用が、親密性尺度が決定されているユーザ入力によって指定されたインテントおよび/または値に関連するかどうかに関係なく、相互作用の量に基づいている。しかしながら、そのようなインテントおよび/または値にとらわれないパラメータは、依然として親密性尺度を生成する際に処理することができ、生成された親密性尺度に有意義な影響を与える可能性がある。
インテント固有のパラメータは、1つまたは複数の特定のインテントに対するユーザと自動アシスタントの過去の相互作用を含むことができる。たとえば、インテント固有のパラメータは、特定のクライアントデバイスにおけるインテントについてのユーザと自動アシスタントとの相互作用の総数、任意のクライアントデバイスにおけるインテントについてのユーザと自動アシスタントとの相互作用の総数、ユーザがインテントについて自動アシスタントと最後に相互作用してからの時間の長さ、インテントおよび関連するインテントについてのユーザと自動アシスタントとの相互作用の総数(たとえば、「キッチンライトをオフにしてください」、「キッチンライトを暗くしてください」、および「キッチンライトをオンにしてください」は関連するインテントである)、ユーザがインテントおよび関連するインテントについて自動アシスタントと相互作用してからの時間の長さ、ユーザが時間的範囲(先週、先月など)内でインテントについて行った相互作用の総数、インテントについての自動アシスタントとの相互作用の頻度(一定の時間単位と比較して)、および/または追加のインテント関連パラメータを含むことができる。いくつかの実装形態では、インテント固有のパラメータは、追加的または代替的に、ユーザ入力によって指定されたインテントに固有であり、インテントの1つまたは複数の値/引数に固有の1つまたは複数のインテント固有パラメータを含むことができる。たとえば、第1のユーザ入力「オフィスライトを暗くしてください」の場合、「オフィスライト」を識別する値を減光インテントに指定することができる。ユーザ入力「リビングルームのライトを暗くしてください」の場合、「リビングルームのライト」を識別する値を減光インテントに指定することができる。第1の入力のパラメータは、「減光」のインテントと「オフィスライト」の値についてのユーザの相互作用の量に基づく1つまたは複数を含むことができる。第2の入力のパラメータは、第1の入力のパラメータとは異なる1つまたは複数のパラメータを含むことができ、これは、第2の入力のパラメータは、「減光」のインテントと「リビングルームのライト」の値についてのユーザの相互作用の量に基づくパラメータを含むことができるためである。したがって、様々な実装形態では、1つまたは複数のパラメータは、インテント固有と値固有の両方にすることができる。
値固有のパラメータは、ユーザ入力によって指定された1つまたは複数の値/引数についてのユーザと自動アシスタントとの過去の相互作用を含むことができる(任意で、ユーザ入力によって指定されたインテントに関係なく)。たとえば、値固有のパラメータは、特定のクライアントデバイスにおける値についてのユーザと自動アシスタントとの相互作用の総数、任意のクライアントデバイスにおける値についてのユーザと自動アシスタントとの相互作用の総数、ユーザが値について自動アシスタントと最後に相互作用してからの時間の長さ、時間範囲(たとえば、先週、先月)内に値についてユーザが行った相互作用の総数、値についての自動アシスタントとの相互作用の頻度(一定の時間単位と比較して)、および/または追加の値に関連するパラメータを含むことができる。たとえば、「サーモスタットをオフにしてください」のユーザ入力の場合、値固有のパラメータは、「オフにする」インテントに対する、ならびに/または、「温度を上げる/下げる」インテント、「変更モード」(たとえば、冷却モード、加熱モード、離れモード、エコモードなど)インテント、および/もしくは他のインテントなどの付加的なインテントに対する、サーモスタットについての相互作用を含む、サーモスタットに関連するユーザの相互作用の量に基づく1つまたは複数を含むことができる。したがって、値固有のパラメータは、任意でインテントに関係なく、1つまたは複数の値についてのユーザの過去の相互作用の指標を提供することができる。しかしながら、上記のように、いくつかの実装形態では、パラメータは、追加的または代替的に、値固有およびインテント固有の両方である1つまたは複数を含むことができる。
デバイスタイプパラメータは、クライアントデバイスタイプ、現在のクライアントデバイスモダリティ、利用可能なすべてのクライアントデバイスモダリティ、クライアントデバイスに接続されたスマートデバイス、および/または追加のデバイスパラメータなどのクライアントデバイスに関連する情報を含むことができる。
追加的または代替的に、パラメータは、現在のダイアログセッションに関連する1つまたは複数のパラメータを含むことができる。たとえば、パラメータは、ユーザがインテントについて自動アシスタントと相互作用するダイアログセッションの総数、ユーザが現在のセッション内でインテントについて自動アシスタントと行った相互作用の総数、現在のセッション内のインテントおよび関連するインテントについてユーザが自動アシスタントと行った相互作用の総数、ならびに/または追加のセッションパラメータを含むことができる。本明細書で使用される場合、「ダイアログセッション」は、ユーザと自動アシスタント(および、場合によっては他の人間の参加者)との間の1つまたは複数のメッセージの論理的に自己完結型の交換を含み得る。自動アシスタントは、時間の経過、セッション間のユーザコンテキストの変更(たとえば、場所、スケジュールされた会議の前/中/後など)などの様々な信号、ユーザと自動アシスタントとの間のダイアログ以外の、ユーザとクライアントデバイスの間の1つまたは複数の介在する相互作用の検出(たとえば、ユーザがしばらくの間アプリケーションを切り替えた後、ユーザが離れて、後でスタンドアロンの音声起動製品に戻る)、セッション間のクライアントデバイスのロック/スリープ、自動アシスタントの1つまたは複数のインスタンスとのインターフェースに使用されるクライアントデバイスの変更などに基づいて、ユーザとの複数のダイアログセッションを区別し得る。
親密性スコアが決定されると、自動アシスタント応答の簡略化されたバージョンを生成するために、本明細書に記載の技法を利用することができる。いくつかの実装形態では、初期応答の話された部分は削除することができる。いくつかのそのような実装形態では、応答の視覚的、音的、および/または他の部分は、話された部分が削除された後も残る。たとえば、*チーン*という音の簡略化された応答は、「OK、午後3時に架空のカフェにおける予約をしました*チーン*」という初期応答から生成することができる。いくつかの実装形態では、初期応答における名詞(および/または名詞を含むフレーズ)は、代名詞に置き換えることができる。たとえば、「OK、キッチンライトをオフにします」という初期応答から、「キッチンライト」というフレーズを代名詞「それら」に置き換えることによって、「OK、それらをオフにします」という簡略化された応答を生成することができる。いくつかの実装形態では、話された初期応答は、簡略化された応答を生成するために切り捨てることができる。たとえば、「OK、Hypothetical Cafeにおける予約をしました」という簡略化された応答を生成するために、「OK、火曜日の午後7時にHypothetical Cafeにおける予約をしました」という初期応答を切り捨てることができる。
多くの実装形態では、応答の簡略化されたバージョンは時間とともに変化する可能性がある(たとえば、インテントへのユーザの親密性が高まるにつれて、関連するインテントへのユーザの親密性が高まるにつれて、インテントへのユーザの親密性が減少するにつれて)。たとえば、第1の簡略化された応答は初期応答から生成することができ、その後、第2の簡略化された応答は初期応答から生成することができ、第2の簡略化された応答は第1の簡略化された応答よりも短い。たとえば、「ok、それらをオフにします」という第1の簡略された応答は、「ok、22個のライトをオフにします*チーン*」という初期応答から決定することができる。親密性尺度は時間とともに動的に変化するため、初期応答から「ok、*チーン*」という第2の簡略化された応答を決定することができる。簡略化された応答の長さは、動的な親密性尺度の値の変化に応じて、時間とともに減少および/または増加し続ける可能性がある。したがって、様々な実装形態は、送信および/またはレンダリングするのに効率的なアシスタント応答を提供しようとする方法で、人間/自動アシスタントの相互作用を適応する技法を示し、また、アシスタント応答が現在の親密性尺度に適応されていることを確認する(これにより、ユーザがさらなる説明を要求する可能性が軽減され、さらなるリソースの消費につながる)。
ここで図1に目を向けると、動的な親密性尺度を使用して自動アシスタント応答を動的に適応させることができる例示的な環境が示されている。図1は、自動アシスタントクライアント104のインスタンスを実行するクライアントコンピューティングデバイス102を含む。1つまたは複数のクラウドベースの自動アシスタントコンポーネント114は、一般的に112において示される1つまたは複数のローカルおよび/またはワイドエリアネットワーク(たとえば、インターネット)を介してクライアントデバイス102に通信可能に結合された1つまたは複数のコンピューティングシステム(まとめて「クラウド」コンピューティングシステムと呼ばれる)上に実装することができる。
自動アシスタントクライアント104のインスタンスは、1つまたは複数のクラウドベースの自動アシスタントコンポーネント114との相互作用によって、ユーザの観点からは、ユーザが人間とコンピュータとのダイアログに従事し得る自動アシスタント100の論理インスタンスであるように見えるもののためにあり得る。そのような自動アシスタント100のインスタンスが図1に示されている。したがって、いくつかの実装形態では、自動アシスタント100は、ユーザが自動アシスタント100のその特定のインスタンスによって実際に「サービス」されているかどうかに関係なく、任意のユーザからの要求に応答し得ることを理解されたい。
クライアントコンピューティングデバイス102は、たとえば、デスクトップコンピューティングデバイス、ラップトップコンピューティングデバイス、タブレットコンピューティングデバイス、モバイル電話コンピューティングデバイス、ユーザの車両のコンピューティングデバイス(たとえば、車載通信システム、車載エンターテインメントシステム、車載ナビゲーションシステム)、スタンドアロンインタラクティブスピーカ、スマートテレビなどのスマートアプライアンス、および/またはコンピューティングデバイスを含むユーザのウェアラブル装置(たとえば、コンピューティングデバイスを有するユーザの時計、コンピューティングデバイスを有するユーザの眼鏡、仮想または拡張現実コンピューティングデバイス)であり得る。追加および/または代替のクライアントコンピューティングデバイスが提供され得る。様々な実装形態では、クライアントコンピューティングデバイス102は、任意で、自動アシスタントクライアント104に加えて、メッセージ交換クライアント(たとえば、SMS、MMS、オンラインチャット)、ブラウザなどである1つまたは複数の他のアプリケーションを動作し得る。それらの様々な実装形態のいくつかでは、他のアプリケーションのうちの1つまたは複数は、任意で(たとえば、アプリケーションプログラミングインターフェースを介して)自動アシスタント100とインターフェースするか、または自動アシスタントアプリケーションの独自のインスタンス(クラウドベースの自動アシスタントコンポーネント114ともインターフェースし得る)を含むことができる。
自動アシスタント100は、クライアントデバイス102のユーザインターフェース入力および出力デバイスを介して、ユーザとの人間からコンピュータへのダイアログセッションに従事する。ユーザのプライバシーを保護するため、および/またはリソースを節約するために、多くの場合、ユーザはしばしば、自動アシスタントが話された発話を完全に処理する前に、自動アシスタント100を明示的に呼び出す必要がある。自動アシスタント100の明示的な呼出しは、クライアントデバイス102において受信された特定のユーザインターフェース入力に応答して発生する可能性がある。たとえば、クライアントデバイス102を介して自動アシスタント100を呼び出すことができるユーザインターフェース入力は、任意で、クライアントデバイス102のハードウェアおよび/または仮想ボタンの作動を含むことができる。さらに、自動アシスタントクライアントは、1つまたは複数の話された呼出しフレーズの存在を検出するように動作可能な呼出しエンジンなど、1つまたは複数のローカルエンジン110を含むことができる。呼出しエンジンは、話された呼出しフレーズのうちの1つの検出に応答して、自動アシスタント100を呼び出すことができる。たとえば、呼出しエンジンは、「ねえ、アシスタント」、「OK、アシスタント」、および/または「アシスタント」などの話された呼出しフレーズの検出に応答して、自動アシスタント100を呼び出すことができる。呼出しエンジンは、クライアントデバイス102の1つまたは複数のマイクロフォンからの出力に基づくオーディオデータフレームのストリームを継続的に処理して(たとえば、「非アクティブ」モードでない場合)、話された呼出しフレーズの発生を監視することができる。話された呼出しフレーズの発生を監視している間、呼出しエンジンは、話された呼出しフレーズを含まないオーディオデータフレームを破棄する(たとえば、バッファに一時的に保存した後)。しかしながら、呼出しエンジンが、処理されたオーディオデータフレーム内の話された呼出しフレーズの発生を検出すると、呼出しエンジンは、自動アシスタント100を呼び出すことができる。本明細書で使用される場合、自動アシスタント100を「呼び出す」ことは、自動アシスタント100の1つまたは複数の以前は非アクティブであった機能をアクテ
ィブ化させることを含むことができる。たとえば、自動アシスタント100を呼び出すことは、1つまたは複数のローカルエンジン110および/またはクラウドベースの自動アシスタントコンポーネント114に、どの呼出しフレーズが検出されたかに基づいてオーディオデータフレームを、および/または1つもしくは複数の後続のオーディオデータをさらに処理させることを含むことができる(一方、呼び出す前は、オーディオデータフレームのそれ以上の処理は発生していない)。
自動アシスタント100の1つまたは複数のローカルエンジン110は任意であり、たとえば、上記の呼出しエンジン、ローカルのスピーチ-テキスト(「STT」)エンジン(キャプチャされたオーディオデータをテキストに変換する)、ローカルのテキスト-スピーチ(「TTS」)エンジン(テキストをスピーチに変換する)、ローカルの自然言語プロセッサ(オーディオおよび/またはオーディオから変換されたテキストのセマンティック意味を決定する)、および/または他のローカルコンポーネントを含むことができる。クライアントデバイス102は、コンピューティングリソース(たとえば、プロセッササイクル、メモリ、バッテリなど)に関して比較的制約されているので、ローカルエンジン110は、クラウドベースの自動アシスタントコンポーネント114に含まれる対応物と比較して制限された機能を有し得る。
クラウドベースの自動アシスタントコンポーネント114は、ローカルエンジン110の対応物と比較して、オーディオデータおよび/または他のユーザインターフェース入力のより堅牢な、および/またはより正確な処理を実行するために、クラウドの事実上無制限のリソースを活用する。この場合も、様々な実装形態では、クライアントデバイス102は、オーディオデータおよび/または他のデータを、話された呼出しフレーズを検出する、または自動アシスタント100の他の何らかの明示的な呼出しを検出する呼出しエンジンに応答して、クラウドベースの自動アシスタントコンポーネント114に提供することができる。
図示されたクラウドベースの自動アシスタントコンポーネント114は、クラウドベースのTTSモジュール116、クラウドベースのSTTモジュール118、自然言語プロセッサ120、ダイアログ状態トラッカ122、およびダイアログマネージャ124を含む。図示されたクラウドベースの自動アシスタントコンポーネント114はまた、ユーザパラメータに基づいてユーザ親密性尺度を動的に生成する際にモデル108を利用する親密性エンジン106を含む。いくつかの実装形態では、自動アシスタント100のエンジンおよび/またはモジュールのうちの1つまたは複数は、省略され、組み合わされ、および/または自動アシスタント100とは別のコンポーネントに実装され得る。たとえば、いくつかの実装形態では、親密性エンジン106および/またはモデル108は、全体的または部分的に、クライアントデバイス102上に実装することができる。さらに、いくつかの実装形態では、自動アシスタント100は、追加および/または代替のエンジンおよび/またはモジュールを含むことができる。
親密性エンジン106は、機械学習モデル108を使用してパラメータを処理することによって、親密性尺度を動的に決定することができる。追加的または代替的に、親密性エンジン106は、1つまたは複数のインテントに対応するパラメータを決定し、親密性尺度に基づいてインテントへの応答を決定する際に利用することができる。
クラウドベースのSTTモジュール118は、オーディオデータをテキストに変換することができ、次いで、自然言語プロセッサ120に提供され得る。追加的または代替的に、クラウドベースのTTSモジュール116は、テキストデータ(たとえば、自動アシスタント100によって作成された自然言語応答)を、コンピュータ生成のスピーチ出力に変換することができる。いくつかの実装形態では、TTSモジュール116は、たとえば1つまたは複数のスピーカを使用して直接出力されるように、コンピュータ生成のスピーチ出力をクライアントデバイス102に提供し得る。他の実装形態では、自動アシスタント100によって生成されたテキストデータ(たとえば、自然言語応答)は、ローカルエンジン110のうちの1つに提供され得、次いで、テキストデータを、ローカルに出力されるコンピュータ生成のスピーチに変換し得る。
自動アシスタント100の自然言語プロセッサ120は、自由形式の自然言語入力を処理し、自然言語入力に基づいて、自動アシスタント100の他の1つまたは複数のコンポーネントによって使用するための注釈付き出力を生成する。たとえば、自然言語プロセッサ120は、クライアントデバイス102を介してユーザによって提供されたオーディオデータの、STTモジュール118による変換であるテキスト入力である自然言語自由形式入力を処理することができる。生成された注釈付き出力は、自然言語入力のうちの1つまたは複数の注釈、および任意で、自然言語入力の用語のうちの1つまたは複数(たとえば、すべて)を含み得る。
いくつかの実装形態では、自然言語プロセッサ120は、自然言語入力における様々なタイプの文法情報を識別し、注釈を付けるように構成される。たとえば、自然言語プロセッサ120は、用語にそれらの文法的役割で注釈を付けるように構成されたスピーチタガーの一部(図示せず)を含み得る。また、たとえば、いくつかの実装形態では、自然言語プロセッサ120は、自然言語入力における用語間の構文関係を決定するように構成された依存関係パーサ(図示せず)を追加的および/または代替的に含み得る。
いくつかの実装形態では、自然言語プロセッサ120は、人への参照(たとえば、文学者、有名人、公人などを含む)、組織、場所(実在および架空)などの1つまたは複数のセグメント内のエンティティ参照に注釈を付けるように構成されたエンティティタガー(図示せず)を追加および/または代替で含み得る。自然言語プロセッサ120のエンティティタガーは、高レベルの粒度において(たとえば、人などのエンティティクラスへのすべての参照の識別を可能にするために)、および/または低レベルの粒度で(たとえば、特定の人などの特定のエンティティへのすべての参照の識別を可能にするために)エンティティへの参照に注釈を付けることができる。エンティティタガーは、特定のエンティティを解決するために自然言語入力のコンテンツに依存してもよく、および/または任意で、特定のエンティティを解決するために知識グラフまたは他のエンティティデータベースと通信してもよい。
いくつかの実装形態では、自然言語プロセッサ120は、追加的および/または代替的に、1つまたは複数の文脈的手がかりに基づいて同じエンティティへの参照をグループ化または「クラスタ化」するように構成された共参照リゾルバ(図示せず)を含み得る。たとえば、自然言語入力「前回そこで食べたときにHypothetical Cafeが好きだった」の「そこ」という用語を「Hypothetical Cafe」に解決するために、共参照リゾルバが利用され得る。
いくつかの実装形態では、自然言語プロセッサ120の1つまたは複数のコンポーネントは、自然言語プロセッサ120の他の1つまたは複数の他のコンポーネントからの注釈に依存し得る。たとえば、いくつかの実装形態では、名前付きエンティティタガーは、特定のエンティティへのすべての言及に注釈を付ける際に、共参照リゾルバおよび/または依存関係パーサからの注釈に依存し得る。また、たとえば、いくつかの実装形態では、共参照リゾルバは、同じエンティティへの参照をクラスタリングする際に、依存関係パーサからの注釈に依存し得る。いくつかの実装形態では、特定の自然言語入力を処理する際に、自然言語プロセッサ120の1つまたは複数のコンポーネントは、1つまたは複数の注釈を決定するために、特定の自然言語入力の外部の関連する事前入力および/または他の関連データを使用し得る。
いくつかの実装形態では、ダイアログ状態トラッカ122は、たとえば、人からコンピュータへのダイアログセッションの過程にわたって、および/または複数のダイアログセッションにわたって、1人または複数のユーザの目標(または、「インテント」)の信念状態を含む「ダイアログ状態」を追跡するように構成され得る。ダイアログ状態を決定する際に、一部のダイアログ状態トラッカは、ダイアログセッションにおけるユーザおよびシステムの発話に基づいて、ダイアログにおいてインスタンス化されるスロットの最も可能性の高い値を決定しようとする場合がある。いくつかの技法は、スロットのセットとそれらのスロットに関連付けられる値のセットを定義する固定オントロジを利用する。いくつかの技法は、追加的または代替的に、個々のスロットおよび/またはドメインに合わせて調整され得る。たとえば、いくつかの技法は、各ドメインにおけるスロットタイプごとにモデルのトレーニングが必要になる場合がある。
ダイアログマネージャ124は、たとえば、ダイアログ状態トラッカ122によって提供される現在のダイアログ状態を、自動アシスタント100によって実行される複数の候補応答アクションの1つまたは複数の「応答アクション」にマッピングするように構成され得る。応答アクションは、現在のダイアログの状態に応じて、様々な形式で発生する可能性がある。たとえば、最後のターンの前に発生するダイアログセッションのターンに対応する初期および中間のダイアログ状態(たとえば、最終的なユーザが望むタスクが実行されるとき)は、追加の自然言語ダイアログを出力する自動アシスタント100、非スピーチ音(たとえば、「チーン」)、および/またはグラフィック表示を含む様々な応答アクションにマッピングされ得る。この応答ダイアログは、たとえば、ダイアログ状態トラッカ122が、ユーザが実行しようとしていると信じる何らかのアクション(すなわち、スロットを埋める)のためのパラメータをユーザが提供する要求を含み得る。いくつかの実装形態では、応答アクションは、「要求」(たとえば、スロットを埋めるためのパラメータを探す)、「提供」(たとえば、ユーザにアクションまたは一連のアクションを提案する)、「選択」、「通知」(たとえば、要求された情報をユーザに提供する)、「一致しない」(たとえば、ユーザの最後の入力が理解されていないことをユーザに通知する)、周辺デバイスへのコマンド(たとえば、電球をオフにする)などのアクションを含み得る。
本明細書で説明するように、応答アクションが、ユーザ入力に応答してレンダリングされるコンテンツを含む場合、そのようなコンテンツは、動的に決定された親密性尺度に基づいて生成することができる。たとえば、動的に決定された親密性尺度にマッピングされる選択されたコンテンツに基づいて、それぞれが対応する親密性尺度にマッピングされる複数の候補コンテンツアイテムからコンテンツを選択することができる。また、たとえば、決定された親密性尺度に基づいて決定される程度に初期/標準コンテンツを修正することによって、および/または決定された親密性尺度に基づいて選択される技法を使用することによって、コンテンツを生成することができる。さらに、応答アクションが周辺デバイスへのコマンドを含む場合、ユーザの親密性尺度も1つまたは複数のしきい値を満たしている場合、そのようなコマンドを、ユーザの過去のアクションに基づいて任意で生成することができる。
図2は、本明細書に開示される実装形態による例示的なプロセス200を示すフローチャートである。便宜上、フローチャートの動作は、動作を実行するシステムを参照して説明されている。このシステムは、自動アシスタント100を実装するコンピューティングシステムの1つまたは複数のコンポーネントなどの、様々なコンピュータシステムの様々なコンポーネントを含み得る。さらに、プロセス200の動作は特定の順序で示されているが、これは限定することを意味するものではない。1つまたは複数の動作を並べ替えたり、省略したり、および/または追加したりすることができる。
ブロック202において、システムは、クライアントデバイスの自動アシスタントインターフェースにおいてユーザによって提供されたユーザ入力を受信する。ユーザ入力は、話された入力、ジェスチャ入力、テキスト入力、物理的入力、入力のタイプの組合せ、および/または追加のタイプのユーザ入力を含む、様々なタイプの入力を含むことができる。たとえば、ユーザ入力は、ユーザによって話され、クライアントデバイスの少なくとも1つのマイクロフォンによってキャプチャされた自然言語スピーチを含むことができる。
ブロック204において、システムは、ユーザ入力に関連付けられる少なくとも1つのインテントを決定するために、ユーザ入力を処理する。多くの実装形態では、ユーザ入力は単一のインテントを含むことができる。たとえば、ユーザはライトスイッチをオンにするジェスチャを提供することができ、これは、ライトをオンにするインテントを決定するために処理することができる。また、たとえば、ユーザは、「スマートプラグをオフにする」という話された入力を提供することができる。話された入力をテキストに変換し、スマートプラグをオフにするインテントを決定するためにテキストを処理することができる。追加的または代替的に、ユーザ入力は、複数のインテントを含むことができる。たとえば、ユーザは、「すべてのライトをオンにして、「架空の歌」を再生する」という話された入力を提供することができ、これは、ライトをオンにすることと曲を再生することの両方のインテントを含む。インテントは、図1に関して説明したように、ダイアログマネージャ124などの自動アシスタントの1つまたは複数のエンジンを含む多くの方法で決定することができる。
いくつかの実装形態では、ブロック204において、ユーザ入力によって指定されたインテントのみが決定される。たとえば、「ライトを暗くしてください」のユーザ入力については、「減光」および/または「ライトを暗くする」のインテントのみを決定することができる。いくつかの実装形態では、ブロック204において、1つまたは複数の関連するインテントが追加的または代替的に決定される。関連するインテントが決定される実装形態では、関連するインテントは、インテント固有のパラメータを決定する際に利用することができ(インテント固有の親密性尺度を決定する際に利用される)、一方、ユーザ入力において指定されたインテントは、応答を決定する際に利用することができる(これは、親密性尺度に合わせて調整ですることができる)。インテントは、指定されたインテントの属のインテントである場合、ユーザ入力において指定されたインテントに関連付けることができる。たとえば、「スマートライトを制御する」は、「スマートライトをオンにする」、「スマートライトを暗くする」、および「スマートライトの色を変更する」という属のインテントである。また、たとえば、「天気予報」は「今日の天気予報」、「3日間の天気予報」、および「5日間の天気予報」の属のインテントである。インテントは、同じデバイスおよび/またはデバイスタイプの制御に関連する場合、ユーザ入力において指定されたインテントに追加的または代替的に関連付けることができる。たとえば、「スマートライトをオンにする」は、「スマートライトを暗くする」に関連付けることができ、これは、両方のインテントがスマートライトの制御に関連しているためである。ユーザ入力において指定されたインテントに関連するインテントを決定するために、追加および/または代替の技法を利用することができる。様々な実装形態では、ユーザ入力において指定されたインテントに関連するインテントを識別するために、記憶されているインテントの分類法にアクセスすることができる。記憶された分類法は、たとえば、属のインテントとそれらの属のインテントの種を識別することができ、および/または同じデバイスおよび/またはデバイスタイプの制御に関連するインテントを識別することができる。
ブロック206において、システムは、任意で、ユーザ入力に関連付けられるユーザプロファイルを決定する。たとえば、話された入力に関連付けられる出力を生成するために、話された入力を処理する(たとえば、追加の機械学習モデルによって処理する)ことができる。ユーザ入力に関連付けられるユーザプロファイルは、出力をクライアントデバイスに関連付けられる1つまたは複数のユーザプロファイルと比較することによって選択することができる。たとえば、出力は、話された入力の埋込みであってよく、所与のユーザプロファイルで記憶されたスピーカの埋込みと比較することができ、出力と記憶されたスピーカの埋込みが近さのしきい値を満たしている場合は、所与のユーザプロファイルが選択される。別の例として、ユーザプロファイルは、ユーザの許可を得た他の生体認証技法(たとえば、顔認識)に基づいて、ユーザが提供したピンもしくは他の検証に基づいて、および/または他のユーザ認証技法に基づいて選択することができる。ユーザプロファイルが決定されると、システムはユーザプロファイルに関連付けられるパラメータを決定することができる。ユーザプロファイルに関連付けられるパラメータは、たとえば、ユーザプロファイルがすべてのクライアントデバイスにわたって自動アシスタントと行った相互作用の総数、ユーザプロファイルが様々なインテントを呼び出した頻度などを含むことができる。
ブロック208において、システムは、ブロック204において決定されたインテントについての自動アシスタントとのユーザの過去の相互作用に基づいて、1つまたは複数のインテント固有のパラメータを含むパラメータを決定する。パラメータは、様々なインテント固有のパラメータと、様々なインテントにとらわれないパラメータを含むことができる。たとえば、インテント固有のパラメータは、インテントが呼び出される頻度、ユーザが最後にインテントを呼び出してからの期間などの尺度を含むことができる。インテントにとらわれないパラメータは、ユーザプロファイルが自動アシスタントを呼び出してからの時間の長さ、ユーザが自動アシスタントを呼び出す頻度、クライアントデバイスのタイプなどの尺度を含むことができる。たとえば、インテントが最後に呼び出されてからの時間の長さを示す尺度はインテント関連のパラメータであるが、自動アシスタントが(任意のインテントに対して)呼び出されてからの時間の長さを示す尺度はインテントにとらわれないパラメータである。
インテント固有のパラメータがブロック208において決定される実装形態では、ブロック210において生成され親密性尺度は、インテントに固有である。たとえば、機械学習モデルは、インテント固有のパラメータである1つまたは複数を含む、複数のパラメータを入力として受け入れることができる。たとえば、機械学習モデルは、ユーザ入力によって指定されたインテントがユーザによって最後に利用されてからの日数、ユーザ入力によって指定されたインテントがユーザによって利用された合計回数、ユーザ入力によって指定されたインテントが過去30日間に利用された合計回数を30で割ったもの、また、任意の関連するインテントがユーザによって利用された合計回数を含む、インテント固有のパラメータを受け入れることができる。所与の時間におけるユーザ入力が「ライトを暗くする」のインテントを指定した場合、第1のインテント固有のパラメータが決定される。一方、所与の時間におけるユーザ入力が「ライドシェアリングライドを取得する」というインテントを指定した場合、異なる第2のインテント固有のパラメータが決定される。したがって、所与の時間における機械学習モデルを使用して処理される非インテント固有のパラメータは2つのインテント間で同じであるが、ユーザ入力のインテントに応じて異なるインテント固有のパラメータが利用される。したがって、ユーザ入力によって指定されたインテントに応じて、所与の時間に対して異なる親密性尺度を生成することができる。
ブロック210において、システムは、親密性尺度を生成するために、機械学習モデルを使用してパラメータを処理する。様々な実装形態では、システムは少なくとも2つのインテント関連パラメータを処理することができ、インテントにとらわれないパラメータは処理することができない。たとえば、システムは、3つのインテント関連パラメータを含む(インテントにとらわれないパラメータを含まない)パラメータのセットを処理することができる。様々な実装形態では、システムは、少なくとも1つのインテント関連パラメータと少なくとも1つのインテントにとらわれないパラメータを処理することができる。たとえば、システムは、5つのインテント関連パラメータと7つのインテントにとらわれないパラメータを含むパラメータのセットを処理することができる。
多くの実装形態では、機械学習モデルは、フィードフォワードニューラルネットワーク、畳み込みニューラルネットワーク、および/または追加のタイプのニューラルネットワークなどのニューラルネットワークモデルとすることができる。多くの実装形態では、機械学習モデルは、クライアントデバイスにローカルに記憶することができる。多くの実装形態では、機械学習モデルはクライアントデバイスからリモートで記憶することができる。いくつかの実装形態では、すべてのインテントの親密性尺度を処理するために単一の機械学習を利用することができるが、異なるインテントの異なるインテント固有のパラメータに少なくとも部分的に基づいて、所与の時間における異なるインテントについて異なる親密性尺度をもたらす可能性がある。いくつかの実装形態では、複数の機械学習モデルをトレーニングすることができ、各モデルは、1つまたは複数の対応する特定のインテントの親密性尺度を生成するようにトレーニングされる。多くの実装形態では、ユーザのグループの各ユーザ(たとえば、すべてのユーザ)の親密性尺度を決定するために、単一の機械学習モデルを利用することができる。多くの実装形態では、各ユーザプロファイルは、ユーザプロファイル専用の親密性尺度を生成するようにトレーニングされた個々の機械学習モデルに関連付けることができる。たとえば、「基本」機械学習モデルは、特定のユーザに適応された応答を生成する際に機械学習モデルの使用中に特定のユーザによって提供されたフィードバックに基づいて、特定のユーザに適応することができる。
ブロック212において、システムは、親密性尺度に基づいて、および少なくとも1つのインテントに基づいて、ユーザ入力に対する自動アシスタントの応答を決定する。様々な実装形態では、ユーザ入力に対する初期応答を決定することができ、応答の簡略化されたバージョンは、親密性尺度を使用して決定することができる。様々な実装形態では、初期応答は、図1の1つまたは複数のクラウドベースの自動アシスタントコンポーネント114などのクライアントデバイスから離れたシステムにおいて決定することができる。それらの実装形態のいくつかでは、リモートシステムは、親密性尺度を使用して応答の簡略化されたバージョンを決定し、ユーザにレンダリングするために応答の簡略化されたバージョンのみをクライアントデバイスに送信することができる。他のいくつかの実装形態では、リモートシステムは初期応答全体をクライアントデバイスに送信することができ、クライアントデバイスの1つまたは複数のエンジンは初期応答の簡略化されたバージョンを決定することができる。
応答の簡略化されたバージョンを生成するために初期応答が修正される実装形態では、初期応答を自動的に修正するために、1つまたは複数の技法を利用することができる。たとえば、応答のテキスト内の名詞を、名詞よりも文字数が少ない可能性のある代名詞に置き換えるために、代名詞化を利用することができる。また、たとえば、テキスト要約は、追加的または代替的に、テキストをテキストの短縮バージョンに変換するために利用することができる。そのような短縮された、および/または代名詞化されたテキストを応答として提供することができ、および/またはテキストに基づいて生成されたコンピュータ生成のスピーチを応答として提供することができる。別の例として、初期応答からすべてのテキストおよび/またはコンピュータ生成のスピーチを削除することができ、既存の(初期応答における)非スピーチ音がレンダリングされる唯一の応答である可能性があり、または、応答において利用するために、非スピーチ音(初期応答において既存ではない)を選択することができる。さらに別の例として、親密性尺度が高度の親密性を示すいくつかの状況では、応答を提供することができない。いくつかの実装形態では、採用された技法および/またはそのような技法の適用は、親密性尺度の大きさに基づくことができる。たとえば、親密性尺度が0から1までの数値であり、数値が大きいほど親密性が高いことを示していると仮定する。そのような例では、0.00~0.20の親密性尺度は初期応答の修正をもたらさず、0.21~0.35の尺度は代名詞化のみを利用した修正をもたらすことができ、0.36~0.50の尺度は第1の程度の要約を利用した修正をもたらすことができ、0.50~0.75の尺度は、第1の程度よりも積極的な(すなわち、第1の程度よりも少ない用語につながる)第2の程度の要約を利用した修正をもたらすことができ、0.76~0.90の尺度は、すべてのテキストを省略し、既存または選択された非スピーチ音のみを含めることによって修正をもたらすことができ、0.90~1.00の尺度は、応答を提供しないことによって修正をもたらすことができる。
多くの実装形態では、自動アシスタントを制御するパーティに加えて、サードパーティによって初期応答を提供することができる。たとえば、「サードパーティのライドシェアリング会社が私の家に車を届けるのにどのくらい時間がかかりますか」というユーザ入力に応答して、自動アシスタントは、サードパーティシステムから「標準的な車は約10分であなたの家に着くことができます」という初期応答を受信するために、サードパーティのライドシェアリング会社のシステムとインターフェースすることができる。たとえば、自動アシスタントは、アプリケーションプログラミングインターフェイス(API)を使用して、構造化インテント要求をサードパーティシステムに送信し、構造化インテント要求に応答する初期応答を受信することができる。次いで、自動アシスタントは、親密性尺度に応じて、任意で初期応答を簡略化することができる(たとえば、「約10分」の簡略化された応答を生成する)。いくつかの実装形態では、サードパーティに、親密性スコア(および/または、親密性スコアを決定するためのパラメータ)を提供することができ、初期応答の代わりに応答の簡略化されたバージョンを提供することができる。たとえば、自動アシスタントは、構造化されたインテント要求を親密性尺度とともにサードパーティシステムに送信して、親密性尺度に適切な場合にサードパーティシステムが簡略化された応答を生成できるようにすることができる。
他の実装形態では、初期応答の修正に基づいて簡略化された応答を生成する代わりに、親密性尺度にマッピングされた応答に基づいて、親密性尺度の応答を生成することができる。たとえば、「[ライト]をオフにしてください」というユーザ入力は、(a)「OK、[スマートライトの総数]ライトをオフにします」、(b)「OK、それら/それをオフにします」、および(c)「*チーン*(非スピーチ音のみ)」という応答オプションにマッピングすることができる。さらに、応答オプション(a)は、親密性尺度の第1の範囲(たとえば、0.0~0.40であり、親密性尺度は0から1の数字であり、数字が大きいほど親しみやすさを示す)にマッピングすることができ、応答オプション(b)は親密性尺度の第2の範囲(たとえば、0.41~0.70)にマッピングすることができ、応答オプション(c)は親密性尺度の第3の範囲(たとえば、0.71~1.0)にマッピングすることができる。したがって、そのような例では、応答オプションは、ユーザの現在の親密性尺度にマッピングされることに基づいて選択することができる。
ブロック214において、システムは、クライアントデバイスに決定された応答をレンダリングさせる。いくつかの実装形態では、クライアントデバイスは直接応答をレンダリングする。いくつかの実装形態では、クライアントデバイスは応答に基づいて出力をレンダリングする。たとえば、クライアントデバイスは、テキスト-スピーチエンジンを使用して、テキスト応答を話された出力に変換することができる。また、たとえば、サーバは、オーディオデータ(コンピュータ生成のスピーチおよび/または非スピーチ音を含む)として応答を提供し、レンダリング用にオーディオデータをクライアントデバイスに提供することができる。親密性尺度に基づいて適切な応答を選択することによって、ネットワークリソースをより有効に活用するために、クライアントデバイスに送信されるオーディオデータなどのデータ量が適応され得る。さらに、必要のない場合に不必要に詳細な音声フィードバックの送信を防ぐだけでなく、この送信を制限すると、クライアントデバイスとサーバとの間に通信チャネルが確立される必要がある時間を短縮し得る。これにより、ネットワークリソースとサーバリソースの両方の使用率が向上し得る。
本明細書で説明するように、様々な実装形態では、システムは、ユーザ入力に応答する1つまたは複数の追加の応答アクションも実行する。たとえば、ユーザ入力のインテントがスマートデバイスを制御することである場合、システムは、スマートデバイスを制御させるためのコマンドを提供することができる。本明細書でさらに説明するように、それらの様々な実装形態のいくつかにおいて、提供されたコマンドは、親密性尺度がしきい値を満たしている場合、同じインテント(および、任意でインテントの同じ値)に対するあまり簡略化されていない応答に対するユーザの過去の応答に基づくことができる。たとえば、より簡略化された応答は、スマートデバイスの状態が変更される特定の程度を指定するためにユーザの要求を省略することができ、その結果、程度を推測し、提供されたコマンドに程度を組み込むために、代わりに、ユーザの過去の入力を利用することができる。たとえば、「ライトを暗くしてください」というユーザ入力に対して以前に提供された(以前の親密性尺度の)あまり簡略化されていない応答により、ユーザは、ライトを暗くするパーセンテージを指定するように促された可能性がある。より簡略化されたバージョンは、そのようなプロンプトを省略し得、以前の応答においてユーザによって指定されたパーセンテージを利用することができる。
いくつかの実装形態では、親密性尺度を生成する際に使用される機械学習モデルの1つまたは複数の重み(ブロック210)は、応答の少なくとも一部のレンダリング後のさらなるユーザ入力および/またはセンサデータの分析によって示されるように、レンダリングされた応答に対するユーザの満足および/または不満に基づいて更新することができる。システムは、所与の応答に対するユーザの反応を示す1つまたは複数のフィードバック値を生成し、機械学習モデルを更新するためにフィードバック値を使用することができる。ユーザの反応は様々な形で発生する可能性がある。いくつかの実装形態では、ユーザの反応は、追加のユーザ入力を提供するユーザの形をとることができる。それらの実装形態のいくつかでは、ユーザの実際の親密性レベル、生成された親密性レベル(応答の生成に使用される)と比較したユーザの実際の親密性レベル、および機械学習モデルの重みの更新のエラーを生成するために利用される比較を推測するために、追加のユーザ入力の特性を利用することができる。たとえば、ユーザの推定された親密性レベルが実際の親密性尺度と同じである場合、モデルが更新されない場合がある。しかしながら、推定されたユーザの親密性レベルが実際の親密性レベルと異なる場合、モデルを更新するためにエラーを利用することができ、任意で、エラーは推定された親密性尺度と実際の親密性尺度との間の差の程度に基づく。
一例として、簡略化された応答が提供され、追加のユーザ入力が異なるインテントを示し、簡略化された応答の完全なレンダリングに続いて提供される場合、これは、簡略化された応答に関する正のフィードバックとして解釈することができる。たとえば、「温度を5度上げてください」という追加のユーザ入力のインテントは、「ライトをオフにしてください」というユーザ入力のインテントとは異なる。ユーザ入力と追加のユーザ入力の間のこのインテントの変化は、ユーザがライトをオフにするインテントに対する応答を理解したというフィードバックを提供することができる(たとえば、応答はユーザの親密性を考えると適切であった)。対照的に、「温度を5度上げてください」という元のユーザ入力に続いて、「私は温度を5度上げてくださいと言いました」という追加のユーザ入力は、ユーザが元のユーザ入力に対する簡略化された応答を理解していなかった(たとえば、ユーザの実際の親密性を考えると、応答が簡略化されすぎている)というフィードバックを提供することができる。結果として、これは、機械学習モデルを更新するために利用される負のフィードバックおよび対応するエラーとして解釈することができる。たとえば、エラーは、生成された親密性尺度よりもあまり親密性を示さない推定された親密性尺度と比較して、生成された親密性尺度に基づくことができる。別の例として、応答(簡略化された、または簡略化されていない)が提供され、追加のユーザ入力が異なるインテントを示し、応答が完全にレンダリングされる前に提供された場合、これは、応答が十分に簡略化されていないことを示すことができる(追加入力のインテントは異なるが、応答が完全にレンダリングされる前にユーザが追加入力の提供を開始したため、ユーザはすでに応答に精通していることを示す)。結果として、これは、機械学習モデルを更新するために利用される負のフィードバックおよび対応するエラーとして解釈することもできる。たとえば、エラーは、生成された親密性尺度よりもより親密性を示す推定された親密性尺度と比較して、生成された親密性尺度に基づくことができる。
フィードバック値を生成するために、追加または代替のユーザ反応を利用することができる。たとえば、いくつかの実装形態では、ユーザは、親密性レベルに対する応答の適切性に関する明示的なフィードバック、およびフィードバック値を生成するために利用される明示的なフィードバックを提供するように促されることがある。たとえば、「この応答における詳細レベルは適切でしたか?」というプロンプトを提供することができ、フィードバック値はプロンプトへの応答に基づいて適応される。プロンプトは視覚的および/または可聴であり得、フィードバックは、たとえば、話された入力および/または対応するグラフィック要素の選択であり得る。たとえば、「はい」という話された応答または選択応答は、正のフィードバック信号(たとえば、モデルの更新なし)として利用することができ、「いいえ」という応答は、負のフィードバック信号として利用される(たとえば、「標準」エラーを使用してモデルの重みを更新する)。別の例として、フィードバックを生成するために、後続のスピーチにおけるユーザのトーンを利用することができる。たとえば、それが欲求不満を示しているかどうかを決定するためにユーザの直後のスピーチを処理することができ、不満を示している場合、親密性レベルが適切でなかったことを示すために、フィードバック値を生成することができる。言い換えれば、モデルの重みは、応答のレンダリングに続く(たとえば、直後に続く)話された入力に存在する欲求不満および/または他の特性に応じて更新することができる。
図3は、本明細書に開示される実装形態による例示的なプロセス300を示すフローチャートである。便宜上、フローチャートの動作は、動作を実行するシステムを参照して説明されている。このシステムは、自動アシスタント100を実装するコンピューティングシステムの1つまたは複数のコンポーネントなどの、様々なコンピュータシステムの様々なコンポーネントを含み得る。さらに、プロセス300の動作は特定の順序で示されているが、これは限定することを意味するものではない。1つまたは複数の動作を並べ替えたり、省略したり、および/または追加したりすることができる。
ブロック302において、システムは、パラメータ部分および親密性尺度部分を含む親密性トレーニングインスタンスを選択する。多くの実装形態では、パラメータ部分は、少なくとも1つのインテント関連パラメータ、ならびに追加のインテント関連パラメータおよび/またはインテントにとらわれないパラメータを含む。さらに、トレーニングインスタンスは、トレーニングインスタンスのパラメータ部分に含まれるパラメータに対応する結果として得られる親密性尺度を示す親密性尺度部分を含む。多くの実装形態では、トレーニングインスタンスの親密性尺度部分は、人間(または、複数の人間)によって提供されるユーザインターフェース入力に基づいてラベル付けすることができる。たとえば、第1の人間は、トレーニングインスタンスの所与のパラメータ部分から第1の親密性尺度を決定することができ、第2の人間は、トレーニングインスタンスの所与のパラメータ部分などから第2の親密性尺度を決定することができ、トレーニングインスタンスの親密性尺度部分は、第1の親密性尺度、第2の親密性尺度などの平均として決定することができる。
ブロック304において、予測された親密性尺度を生成するために、システムは、親密性トレーニングインスタンスのパラメータ部分を機械学習モデルへの入力として適用する。多くの実装形態では、機械学習モデルは、人間によって提供される手動で調整されたパラメータを使用して(たとえば、トレーニングを開始する前に)初期化することができる。
ブロック306において、システムは、トレーニングインスタンスの予測された親密性尺度と親密性尺度部分との間の差を決定する。
ブロック308において、システムは、決定された差に基づいて機械学習モデルを更新する。たとえば、システムは、決定された差に基づいて、機械学習モデルの1つまたは複数の重みを更新することができる。たとえば、システムは、決定された差に基づくエラーのバックプロパゲーションによって、機械学習モデルの重みを更新することができる。
ブロック310において、システムは、追加のトレーニングインスタンスを選択するかどうかを決定する。選択する場合、システムはブロック302に戻り、異なる親密性トレーニングインスタンスを選択し、ブロック304、306、および308に進む。いくつかの実装形態では、システムは、1つまたは複数の追加の未処理のトレーニングインスタンスがある場合、および/または他の基準/複数の基準がまだ満たされていない場合、追加のトレーニングインスタンスを選択することを決定することができる。他の基準/複数の基準は、たとえば、エポックのしきい値数が発生したかどうか、および/またはトレーニングのしきい値期間が発生したかどうかを含むことができる。プロセス300は、非バッチ学習技法に関して説明されているが、バッチ学習は、追加的におよび/または代替的に利用され得る。ブロック310の反復において、システムが追加のトレーニングインスタンスを選択しないことを決定した場合、プロセス300は終了する。
図3のプロセス300は、教師ありトレーニングの例を利用する機械学習モデルのトレーニングについて説明しており、この例では、レビュー担当者は、グラウンドトゥルースの親密性尺度を示すラベルを割り当てることができる。しかしながら、様々な実装形態では、機械学習モデルは、上記のように、機械学習モデルの展開中にユーザからのフィードバックを使用して、追加的または代替的にトレーニングすることができる。たとえば、たとえユーザによって提供されたフィードバックの一部(または、すべて)が、決定されるべき「グラウンドトゥルース」の親密性尺度を明示的に示していない場合でも、対応する生成された親密性尺度が適切であったかどうかを決定し、適切でない場合はモデルの重みを更新するために、フィードバックを利用することができる。言い換えれば、ユーザフィードバックは、報酬信号として利用することができ、報酬信号は、半教師あり学習手法においてモデルを更新するために利用できる報酬関数に適用される。そのような報酬信号に基づくトレーニングを複数回繰り返すことで、正確で堅牢な親密性尺度を提供するために、機械学習モデルを収束させることができる。いくつかの実装形態では、機械学習モデルは、図3のプロセス300を利用して最初にトレーニングし、次いで、展開中にフィードバックを使用してさらにトレーニングすることができる。他のいくつかの実装形態では、機械学習モデルは、フィードバックを利用して、また図3のプロセス300を利用して第1にトレーニングされることなしに、トレーニングすることができる。
図4は、本明細書に記載の技法の1つまたは複数の態様を実行するために任意で利用され得る例示的なコンピューティングデバイス410のブロック図である。いくつかの実装形態では、クライアントコンピューティングデバイスの1つもしくは複数、および/または他のコンポーネントは、例示的なコンピューティングデバイス410の1つまたは複数のコンポーネントを備え得る。
コンピューティングデバイス410は、典型的には、バスサブシステム412を介していくつかの周辺デバイスと通信する少なくとも1つのプロセッサ414を含む。これらの周辺デバイスは、たとえば、メモリサブシステム425およびファイルストレージサブシステム426を含むストレージサブシステム424、ユーザインターフェース出力デバイス420、ユーザインターフェース入力デバイス422、およびネットワークインターフェースサブシステム416を含み得る。入力および出力デバイスは、コンピューティングデバイス410とのユーザ相互作用を可能にする。ネットワークインターフェースサブシステム416は、外部ネットワークへのインターフェースを提供し、他のコンピューティングデバイス内の対応するインターフェースデバイスに結合される。
ユーザインターフェース入力デバイス422は、キーボード、マウス、トラックボール、タッチパッド、またはグラフィックタブレットなどのポインティングデバイス、スキャナ、ディスプレイに組み込まれたタッチスクリーン、音声認識システム、マイクなどのオーディオ入力デバイス、および/または他のタイプの入力デバイスを含み得る。一般に、「入力デバイス」という用語の使用は、コンピューティングデバイス410または通信ネットワークに情報を入力するためのすべての可能なタイプのデバイスおよび方法を含むことを意図している。
ユーザインターフェース出力デバイス420は、ディスプレイサブシステム、プリンタ、ファックス機、またはオーディオ出力デバイスなどの非視覚的ディスプレイを含み得る。ディスプレイサブシステムは、陰極線管(「CRT」)、液晶ディスプレイ(「LCD」)などのフラットパネルデバイス、投影デバイス、または可視画像を作成するための他の何らかのメカニズムを含み得る。ディスプレイサブシステムはまた、オーディオ出力デバイスを介するなどの非視覚的ディスプレイを提供し得る。一般に、「出力デバイス」という用語の使用は、コンピューティングデバイス410からユーザに、または別の機械もしくはコンピューティングデバイスに情報を出力するためのすべての可能なタイプのデバイスおよび方法を含むことを意図している。
ストレージサブシステム424は、本明細書で説明されるモジュールのうちのいくつかまたはすべての機能を提供するプログラミングおよびデータ構造を記憶する。たとえば、ストレージサブシステム424は、図2および図3のプロセスのうちの1つまたは複数の選択された態様を実行するための、ならびに図1に示されている様々なコンポーネントを実装するための論理を含み得る。
これらのソフトウェアモジュールは、一般に、プロセッサ414によって単独で、または他のプロセッサと組み合わせて実行される。ストレージサブシステム424において使用されるメモリ425は、プログラム実行中に命令およびデータを記憶するためのメインランダムアクセスメモリ(「RAM」)430、および固定命令が記憶される読取り専用メモリ(「ROM」)432を含む多数のメモリを含むことができる。ファイルストレージサブシステム426は、プログラムおよびデータファイルのための永続的なストレージを提供することができ、ハードディスクドライブ、フロッピーディスクドライブと関連付けられるリムーバブルメディア、CD-ROMドライブ、光学ドライブ、またはリムーバブルメディアカートリッジを含み得る。特定の実装形態の機能を実装するモジュールは、ファイルストレージサブシステム426によって、ストレージサブシステム424、またはプロセッサ414によってアクセス可能な他の機械に記憶され得る。
バスサブシステム412は、コンピューティングデバイス410の様々なコンポーネントおよびサブシステムが意図されたように互いに通信できるようにするためのメカニズムを提供する。バスサブシステム412は、単一のバスとして概略的に示されているが、バスサブシステムの代替の実装形態は、複数のバスを使用し得る。
コンピューティングデバイス410は、ワークステーション、サーバ、コンピューティングクラスタ、ブレードサーバ、サーバファーム、または他の任意のデータ処理システムもしくはコンピューティングデバイスを含む様々なタイプのものであり得る。コンピュータおよびネットワークの絶えず変化する性質のために、図4に示されるコンピューティングデバイス410の説明は、いくつかの実装形態を説明するための特定の例としてのみ意図されている。コンピューティングデバイス410の他の多くの構成は、図4に示されるコンピューティングデバイスよりも多いまたは少ないコンポーネントを有することが可能である。
本明細書に記載されているシステムがユーザ(もしくは、本明細書ではしばしば「参加者」と呼ばれる)に関する個人情報を収集する状況、または個人情報を利用する可能性がある状況では、ユーザは、プログラムもしくは機能がユーザ情報(たとえば、ユーザのソーシャルネットワーク、ソーシャルアクションまたはアクティビティ、職業、ユーザの好み、もしくはユーザの現在の地理的位置に関する情報)を収集するかどうかを制御する機会、またはユーザにより関連性のあるコンテンツをコンテンツサーバから受信するかどうか、および/もしくは受信する方法を制御する機会を提供され得る。また、特定のデータは、記憶または使用される前に1つまたは複数の方法で処理され得るため、個人を特定できる情報は削除される。たとえば、ユーザの個人を特定できる情報を決定できないように、ユーザのIDが処理され得、または、ユーザの特定の地理的位置が決定されないように、地理的位置情報が取得される場所でユーザの地理的位置が一般化され得る(都市、郵便番号、州レベルなど)。したがって、ユーザは、ユーザに関する情報がどのように収集されるか、および/または使用されるかを制御し得る。
いくつかの実装形態では、1つまたは複数のプロセッサによって実装される方法が提供され、ユーザ入力を受信するステップを含む。ユーザ入力は、クライアントデバイスの自動アシスタントインターフェースにおいてユーザによって提供され、自動アシスタントインターフェースは、クライアントデバイスおよび/または1つもしくは複数のリモートコンピューティングデバイス上で実行される自動アシスタントと相互作用するためのインターフェースである。本方法は、ユーザ入力に関連付けられる少なくとも1つのインテントを決定するためにユーザ入力を処理するステップと、および少なくとも1つのインテントについての親密性尺度を生成するステップとをさらに含む。少なくとも1つのインテントについての親密性尺度を生成するステップは、親密性尺度を生成するために、機械学習モデルを使用して、複数のパラメータを処理するステップを含む。親密性尺度を生成するために、機械学習モデルを使用して処理される複数のパラメータは、少なくとも1つのインテントについて、自動アシスタントとのユーザの過去の相互作用に基づく1つまたは複数のインテント固有パラメータを含む。本方法は、親密性尺度に基づいて、および少なくとも1つのインテントに基づいて、ユーザ入力に対する自動アシスタントの応答を決定するステップをさらに含む。本方法は、クライアントデバイスに決定された応答をレンダリングさせるステップをさらに含む。
本明細書に開示される技術のこれらおよび他の実装形態は、以下の特徴のうちの1つまたは複数を含むことができる。
いくつかの実装形態では、親密性尺度に基づいて、および決定された少なくとも1つのインテントに基づいて応答を決定するステップは、親密性尺度がしきい値を満たすかどうかを決定するステップを含む。それらの実装形態のいくつかでは、親密性尺度がしきい値を満たさない場合、本方法は、応答に、インテントに応答するコンピュータ生成のスピーチ、またはクライアントデバイスが決定された応答をレンダリングするときにコンピュータ生成のスピーチに変換されるテキストをさらに含む。それらの実装形態のいくつかでは、親密性尺度がしきい値を満たしている場合、本方法は、コンピュータ生成のスピーチおよびテキストを応答から省略するステップをさらに含む。コンピュータ生成のスピーチおよびテキストを省略するステップは、任意で、初期応答から、コンピュータ生成のスピーチおよび/またはテキストを削除するステップを含むことができる。
いくつかの実装形態では、親密性尺度に基づいて、および決定された少なくとも1つのインテントに基づいて応答を決定するステップは、決定されたインテントに基づいて、第1のバイト数を含む初期応答を決定するステップと、親密性尺度がしきい値を満たしていると決定するステップに応答して、第1のバイト数よりも少ない第2のバイト数を含む簡略化された応答を生成するために、初期応答を修正するステップとを含む。それらの実装形態のいくつかでは、簡略化された応答を生成するために初期応答を修正するステップは、初期応答から、コンピュータ生成のスピーチまたはクライアントデバイスが決定された応答をレンダリングするときにコンピュータ生成のスピーチに変換されるテキストを削除するステップと、テキスト内の名詞を、名詞よりも文字数が少ない代名詞に置き換えるステップ、および/またはテキストをテキストの短縮バージョンに変換するためにテキストの要約を実行するステップを含む。
いくつかの実装形態では、応答を決定するステップは、クライアントデバイスから離れた自動アシスタントの1つまたは複数のサーバにおいて発生し、クライアントデバイスに応答をレンダリングさせるステップは、1つまたは複数のネットワークを介してサーバのうちの1つまたは複数によって応答をクライアントデバイスに送信するステップを含む。
いくつかの実装形態では、ユーザ入力は話されたユーザ入力であり、本方法は、話されたユーザ入力が自動アシスタントにアクセス可能なユーザプロファイルに対応すると決定するために、話されたユーザ入力、または話されたユーザ入力に先行する話された呼出しを処理するステップと、話されたユーザ入力がユーザプロファイルに対応すると決定することに応答して、ユーザプロファイルに関連付けて記憶されたデータに基づいて、複数のパラメータにおける1つまたは複数(たとえば、すべて)のパラメータを決定するステップとをさらに含む。
いくつかの実装形態では、本方法は、決定されたインテントに関係なくそれぞれ決定される1つまたは複数のインテントにとらわれないパラメータを決定するステップをさらに含み、親密性尺度を生成する際に機械学習モデルを使用して処理されるパラメータは、1つまたは複数のインテントにとらわれないパラメータをさらに含む。それらの実装形態のいくつかでは、1つまたは複数のインテントにとらわれないパラメータを決定するステップは、決定された少なくとも1つのインテントに対応しない過去の相互作用を含む、追加の自動アシスタントとのユーザの過去の相互作用に基づいてインテントにとらわれないパラメータのうちの少なくとも1つを決定するステップを含む。それらの実装形態のいくつかのバージョンでは、1つまたは複数のインテントにとらわれないパラメータを決定するステップは、ユーザと自動アシスタントとの間の追加の過去の相互作用の量に基づいて、インテントにとらわれないパラメータのうちの少なくとも1つを決定するステップを含む。それらのバージョンのいくつかでは、ユーザと自動アシスタントとの間の過去の相互作用の量に基づいて決定される1つまたは複数のインテントにとらわれないパラメータは、追加の過去の相互作用の総数および/または追加の過去の相互作用の頻度に基づく1つまたは複数のインテントにとらわれないパラメータを含む。
いくつかの実装形態では、1つまたは複数のインテント固有のパラメータを決定するステップは、少なくとも1つのインテントについてのユーザと自動アシスタントとの間の過去の相互作用の量および/または少なくとも1つのインテントについてのユーザと自動アシスタントとの間の最新の相互作用からの時間の長さに基づいて、インテント固有のパラメータのうちの少なくとも1つを決定するステップを含む。それらの実装形態のいくつかでは、1つまたは複数のインテント固有のパラメータは、複数のインテント固有のパラメータを含み、これは、インテントについてのユーザと自動アシスタントとの間の過去の相互作用の量に基づく少なくとも1つを含み、任意で、インテントについてのユーザと自動アシスタントとの間の最新の相互作用からの時間の長さに基づく少なくとも追加の1つを含む。
いくつかの実装形態では、少なくとも1つのインテントは、ユーザ入力によって参照される1つまたは複数のインテントのみを含む。
いくつかの実装形態では、少なくとも1つのインテントは、ユーザ入力によって参照される1つまたは複数のインテント、ならびにインテントの記憶された分類法でインテントに関連して定義される1つまたは複数の追加のインテントを含む。
いくつかの実装形態では、少なくとも1つのインテントは、少なくとも1つのスマートデバイスを制御するために、ユーザ入力において指定された所与のインテントを含む。それらの実装形態のいくつかのバージョンでは、親密性尺度に基づいて、および少なくとも1つのインテントに基づいて応答を決定するステップは、親密性尺度がしきい値を満たしていると決定するステップに応答して、応答から、少なくとも1つのスマートデバイスの制御の値を要求するプロンプトを省略するステップを含む。それらの実装形態のいくつかのバージョンでは、本方法は、所与のインテントに応答し、プロンプトを含んだ以前の応答に対する、ユーザの1つまたは複数の以前のユーザ入力に基づいて、少なくとも1つのスマートデバイスの制御のための値を自動的に生成するステップと、自動生成された値に基づく1つまたは複数のコマンドを送信するステップとをさらに含む。1つまたは複数のコマンドを送信すると、自動生成された値に基づいて、少なくとも1つのスマートデバイスが制御される。
いくつかの実装形態では、親密性尺度を生成するために、機械学習モデルを使用して処理される複数のパラメータは、クライアントデバイスの現在のモダリティを含む。
いくつかの実装形態では、1つまたは複数のプロセッサによって実装される方法が提供され、ユーザ入力を受信するステップを含む。ユーザ入力は、クライアントデバイスの自動アシスタントインターフェースにおいてユーザによって提供され、自動アシスタントインターフェースは、クライアントデバイスおよび/または1つもしくは複数のリモートコンピューティングデバイス上で実行される自動アシスタントと相互作用するためのインターフェースである。本方法は、ユーザ入力によって指定された少なくとも1つのインテントと、そのインテントに対してユーザ入力によって指定された少なくとも1つの値とを決定するために、ユーザ入力を処理するステップをさらに含む。本方法は、親密性尺度を生成するステップをさらに含む。親密性尺度を生成するステップは、親密性尺度を生成するために、機械学習モデルを使用して、複数のパラメータを処理するステップを含む。親密性尺度を生成するために、機械学習モデルを使用して処理される複数のパラメータは、少なくとも1つの値について、自動アシスタントとのユーザの過去の相互作用に基づく1つまたは複数の値固有のパラメータを含む。本方法は、親密性尺度に基づいて、および少なくとも1つのインテントに基づいて、ユーザ入力に対する自動アシスタントの応答を決定するステップをさらに含む。本方法は、クライアントデバイスに決定された応答をレンダリングさせるステップをさらに含む。
本明細書に開示される技術のこれらおよび他の実装形態は、以下の特徴のうちの1つまたは複数を含むことができる。
いくつかの実装形態では、1つまたは複数の値固有のパラメータは、少なくとも1つの値について、およびユーザ入力によって指定された少なくとも1つのインテントに追加される少なくとも1つの追加のインテントを含む複数のインテントについて、自動アシスタントとのユーザの過去の相互作用に基づく所与の値固有のパラメータを含む。
いくつかの実装形態では、1つまたは複数の値固有のパラメータは、少なくとも1つの値、およびユーザ入力によって指定された少なくとも1つのインテントについて、自動アシスタントとのユーザの過去の相互作用に基づく所与の値固有のパラメータを含む。
いくつかの実装形態では、親密性尺度を生成するために、機械学習モデルを使用して処理される複数のパラメータは、少なくとも1つのインテントおよび複数の値について、ユーザ入力によって指定された少なくとも1つの値に追加される少なくとも1つの追加の値を含む、自動アシスタントとのユーザの過去の相互作用に基づく1つまたは複数のインテント固有パラメータを含む。
いくつかの実装形態では、1つまたは複数のプロセッサによって実装される方法が提供され、ユーザ入力を受信するステップを含む。ユーザ入力は、クライアントデバイスの自動アシスタントインターフェースにおいてユーザによって提供され、自動アシスタントインターフェースは、クライアントデバイスおよび/または1つもしくは複数のリモートコンピューティングデバイス上で実行される自動アシスタントと相互作用するためのインターフェースである。本方法は、ユーザ入力によって指定された少なくとも1つの属性を決定するために、ユーザ入力を処理するステップをさらに含む。本方法は、親密性尺度を生成するステップをさらに含む。親密性尺度を生成するステップは、親密性尺度を生成するために、機械学習モデルを使用して、複数のパラメータを処理するステップを含む。親密性尺度を生成するために、機械学習モデルを使用して処理される複数のパラメータは、少なくとも1つの属性について、自動アシスタントとのユーザの過去の相互作用に基づく1つまたは複数の特定のパラメータを含む。親密性尺度を生成するために、機械学習モデルを使用して処理される複数のパラメータは、少なくとも1つの属性に加えて属性を含む過去の相互作用を含む、自動アシスタントとのユーザの過去の相互作用に基づく1つまたは複数のとらわれないパラメータを含む。本方法は、親密性尺度に基づいて、および少なくとも1つの属性に基づいて、ユーザ入力に対する自動アシスタントの応答を決定するステップをさらに含む。本方法は、クライアントデバイスに決定された応答をレンダリングさせるステップをさらに含む。
本明細書に開示される技術のこれらおよび他の実装形態は、以下の特徴のうちの1つまたは複数を含むことができる。
いくつかの実装形態では、少なくとも1つの属性は、少なくとも1つのインテントおよび/または少なくとも1つのインテントの少なくとも1つの値を含む。
100 自動アシスタント
102 クライアントコンピューティングデバイス
104 自動アシスタントクライアント
106 親密性エンジン
107 自動アシスタント
108 機械学習モデル
110 ローカルエンジン
114 クラウドベースの自動アシスタントコンポーネント
116 クラウドベースのTTSモジュール
118 クラウドベースのSTTモジュール
120 自然言語プロセッサ
122 ダイアログ状態トラッカ
124 ダイアログマネージャ
200 プロセス
300 プロセス
410 コンピューティングデバイス
412 バスサブシステム
414 プロセッサ
416 ネットワークインターフェースサブシステム
420 ユーザインターフェース出力デバイス
422 ユーザインターフェース入力デバイス
424 ストレージサブシステム
425 メモリサブシステム
426 ファイルストレージサブシステム
430 ランダムアクセスメモリ(「RAM」)
432 読取り専用メモリ(「ROM」)

Claims (16)

  1. ユーザ入力を受信するステップであって、前記ユーザ入力が、クライアントデバイスの自動アシスタントインターフェースにおいてユーザによって提供され、前記自動アシスタントインターフェースが、前記クライアントデバイスおよび/または1つもしくは複数のリモートコンピューティングデバイス上で実行される自動アシスタントと相互作用するためのインターフェースである、ステップと、
    前記ユーザ入力に関連付けられる少なくとも1つのインテントを決定するために前記ユーザ入力を処理するステップであって、前記少なくとも1つのインテントが、少なくとも1つのスマートデバイスを制御するために、前記ユーザ入力において指定された所与のインテントを含む、ステップと、
    前記少なくとも1つのインテントについての親密性尺度を生成するステップであって、
    前記少なくとも1つのインテントについての前記親密性尺度を生成するステップが、前記親密性尺度を生成するために、機械学習モデルを使用して、複数のパラメータを処理するステップを含み、
    前記親密性尺度を生成するために、前記機械学習モデルを使用して処理される前記複数のパラメータが、前記少なくとも1つのインテントについて、前記自動アシスタントとの前記ユーザの過去の相互作用に基づく1つまたは複数のインテント固有パラメータを含み、
    前記1つまたは複数のインテント固有パラメータは、前記少なくとも1つのインテントとインテントの記憶された分類法で前記少なくとも1つのインテントに関連して定義される1つまたは複数の追加のインテントとについての前記自動アシスタントとの前記ユーザの過去の相互作用の総数を含む、ステップと、
    前記親密性尺度に基づいて、および前記少なくとも1つのインテントに基づいて、前記ユーザ入力に対する前記自動アシスタントの応答を決定するステップと、
    前記クライアントデバイスに前記決定された応答をレンダリングさせるステップと
    を含む、1つまたは複数のプロセッサによって実装される方法。
  2. 前記親密性尺度に基づいて、および前記決定された少なくとも1つのインテントに基づいて、前記応答を決定するステップが、
    前記親密性尺度がしきい値を満たすかどうかを決定するステップを含み、
    前記親密性尺度が前記しきい値を満たさない場合、
    前記応答に、
    前記インテントに応答するコンピュータ生成のスピーチ、または
    前記クライアントデバイスが前記決定された応答をレンダリングするときにコンピュータ生成のスピーチに変換されるテキストを含め、
    前記親密性尺度が前記しきい値を満たしている場合、
    コンピュータ生成のスピーチおよびテキストを前記応答から省略する、請求項1に記載の方法。
  3. 前記親密性尺度に基づいて、および前記決定された少なくとも1つのインテントに基づいて、前記応答を決定するステップが、
    前記決定されたインテントに基づいて初期応答を決定するステップであって、前記初期応答が、第1のバイト数を含む、ステップと、
    前記親密性尺度がしきい値を満たしているとの決定に応答して、
    簡略化された応答を生成するために前記初期応答を修正するステップであって、前記簡略化された応答が、前記第1のバイト数よりも少ない第2のバイト数を含む、ステップと
    を含む、請求項1または2のいずれか一項に記載の方法。
  4. 前記簡略化された応答を生成するために前記初期応答を修正するステップが、
    前記初期応答から、コンピュータ生成のスピーチ、または前記クライアントデバイスが前記決定された応答をレンダリングするときにコンピュータ生成のスピーチに変換されるテキストを削除するステップ、
    前記テキスト内の名詞を、前記名詞よりも文字数が少ない代名詞に置き換えるステップ、および/または
    前記テキストを前記テキストの短縮バージョンに変換するためにテキストの要約を実行するステップ
    を含む、請求項3に記載の方法。
  5. 前記応答を決定するステップが、前記クライアントデバイスから離れた前記自動アシスタントの1つまたは複数のサーバにおいて発生し、前記クライアントデバイスに前記応答をレンダリングさせるステップが、1つまたは複数のネットワークを介して前記サーバのうちの1つまたは複数によって前記応答を前記クライアントデバイスに送信するステップを含む、請求項1から4のいずれか一項に記載の方法。
  6. 前記ユーザ入力が、話されたユーザ入力であり、
    前記話されたユーザ入力が、前記自動アシスタントにアクセス可能なユーザプロファイルに対応すると決定するために、前記話されたユーザ入力、または前記話されたユーザ入力に先行する話された呼出しを処理するステップと、
    前記話されたユーザ入力が、前記ユーザプロファイルに対応するとの決定に応答して、
    前記ユーザプロファイルに関連付けて記憶されたデータに基づいて、前記複数のパラメータにおける1つまたは複数のパラメータを決定するステップと
    をさらに含む、請求項1から5のいずれか一項に記載の方法。
  7. 前記決定されたインテントに関係なくそれぞれ決定される1つまたは複数のインテントにとらわれないパラメータを決定するステップ
    をさらに含み、
    前記親密性尺度を生成する際に前記機械学習モデルを使用して処理される前記パラメータが、前記1つまたは複数のインテントにとらわれないパラメータをさらに含む、請求項1から6のいずれか一項に記載の方法。
  8. 前記1つまたは複数のインテントにとらわれないパラメータを決定するステップが、
    前記決定された少なくとも1つのインテントに対応しない過去の相互作用を含む、前記自動アシスタントとの前記ユーザの追加の過去の相互作用に基づいて、前記インテントにとらわれないパラメータのうちの少なくとも1つを決定するステップ
    を含む、請求項7に記載の方法。
  9. 前記1つまたは複数のインテントにとらわれないパラメータを決定するステップが、前記ユーザと前記自動アシスタントとの間の前記追加の過去の相互作用の量に基づいて、前記インテントにとらわれないパラメータのうちの少なくとも1つを決定するステップを含む、請求項8に記載の方法。
  10. 前記ユーザと前記自動アシスタントとの間の過去の相互作用の前記量に基づいて決定される前記1つまたは複数のインテントにとらわれないパラメータが、前記追加の過去の相互作用の総数および/または前記追加の過去の相互作用の頻度に基づく1つまたは複数のインテントにとらわれないパラメータを含む、請求項9に記載の方法。
  11. 前記1つまたは複数のインテント固有のパラメータを決定するステップが、前記少なくとも1つのインテントについての前記ユーザと前記自動アシスタントとの間の前記過去の相互作用の量および/または前記少なくとも1つのインテントについての前記ユーザと前記自動アシスタントとの間の最新の相互作用からの時間の長さに基づいて、前記インテント固有のパラメータのうちの少なくとも1つを決定するステップを含む、請求項1から10のいずれか一項に記載の方法。
  12. 前記1つまたは複数のインテント固有のパラメータが、複数のインテント固有のパラメータであって、前記インテントについての前記ユーザと前記自動アシスタントとの間の前記過去の相互作用の前記量に基づく少なくとも1つを含み、任意で、前記インテントについての前記ユーザと前記自動アシスタントとの間の前記最新の相互作用からの時間の前記長さに基づく少なくとも追加の1つを含む、複数のインテント固有のパラメータを含む、請求項11に記載の方法。
  13. 前記少なくとも1つのインテントが、前記ユーザ入力によって参照される1つまたは複数のインテントのみを含む、請求項1から12のいずれか一項に記載の方法。
  14. 前記親密性尺度に基づいて、および前記少なくとも1つのインテントに基づいて、前記応答を決定するステップが、
    前記親密性尺度がしきい値を満たしているとの決定に応答して、
    前記応答から、前記少なくとも1つのスマートデバイスの前記制御の値を要求するプロンプトを省略するステップを含み、前記方法が、
    前記所与のインテントに応答し、前記プロンプトを含んだ以前の応答に対する、前記ユーザの1つまたは複数の以前のユーザ入力に基づいて、前記少なくとも1つのスマートデバイスの前記制御のための前記値を自動的に生成するステップと、
    前記自動生成された値に基づく1つまたは複数のコマンドを送信するステップであって、前記1つまたは複数のコマンドを送信すると、前記自動生成された値に基づいて、前記少なくとも1つのスマートデバイスが制御される、ステップと
    をさらに含む、請求項1から13のいずれか一項に記載の方法。
  15. 請求項1から14のいずれか一項に記載の方法を実行するための1つまたは複数のプロセッサを備える、システム。
  16. 命令を備える、コンピュータ可読ストレージ媒体であって、前記命令は、1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサに、請求項1から14のいずれか一項に記載の方法を実行させる、コンピュータ可読ストレージ媒体。
JP2021544624A 2019-03-01 2019-03-01 アシスタントの応答を動的に適応させること Active JP7386878B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2019/020394 WO2020180286A1 (en) 2019-03-01 2019-03-01 Dynamically adapting assistant responses

Publications (2)

Publication Number Publication Date
JP2022522104A JP2022522104A (ja) 2022-04-14
JP7386878B2 true JP7386878B2 (ja) 2023-11-27

Family

ID=65763906

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021544624A Active JP7386878B2 (ja) 2019-03-01 2019-03-01 アシスタントの応答を動的に適応させること

Country Status (7)

Country Link
US (2) US11875790B2 (ja)
EP (1) EP3724874B1 (ja)
JP (1) JP7386878B2 (ja)
KR (1) KR20210134741A (ja)
CN (2) CN113557566B (ja)
AU (1) AU2019432912B2 (ja)
WO (1) WO2020180286A1 (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
KR20240132105A (ko) 2013-02-07 2024-09-02 애플 인크. 디지털 어시스턴트를 위한 음성 트리거
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770428A1 (en) 2017-05-12 2019-02-18 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US10978069B1 (en) * 2019-03-18 2021-04-13 Amazon Technologies, Inc. Word selection for natural language interface
US10762890B1 (en) 2019-08-19 2020-09-01 Voicify, LLC Development of voice and other interaction applications
US10614800B1 (en) 2019-08-19 2020-04-07 Voicify, LLC Development of voice and other interaction applications
US11508365B2 (en) * 2019-08-19 2022-11-22 Voicify, LLC Development of voice and other interaction applications
CN111243587A (zh) * 2020-01-08 2020-06-05 北京松果电子有限公司 语音交互方法、装置、设备及存储介质
US11270080B2 (en) * 2020-01-15 2022-03-08 International Business Machines Corporation Unintended bias detection in conversational agent platforms with machine learning model
US11550605B2 (en) * 2020-06-30 2023-01-10 Kasisto, Inc. Building and managing cohesive interaction for virtual assistants
US11531821B2 (en) * 2020-08-13 2022-12-20 Salesforce, Inc. Intent resolution for chatbot conversations with negation and coreferences
US11935527B2 (en) 2020-10-23 2024-03-19 Google Llc Adapting automated assistant functionality based on generated proficiency measure(s)
US11978445B1 (en) * 2021-03-30 2024-05-07 Amazon Technologies, Inc. Confidence scoring for selecting tones and text of voice browsing conversations
US11776542B1 (en) 2021-03-30 2023-10-03 Amazon Technologies, Inc. Selecting dialog acts using controlled randomness and offline optimization
US20230056003A1 (en) * 2021-08-23 2023-02-23 International Business Machines Corporation Automated document adaptation based on topic classification
US11804215B1 (en) * 2022-04-29 2023-10-31 Apple Inc. Sonic responses
CN115334024B (zh) * 2022-08-01 2024-07-09 鼎捷软件股份有限公司 即时响应系统以及即时响应方法
US20240169163A1 (en) * 2022-11-23 2024-05-23 Allstate Insurance Company Systems and methods for user classification with respect to a chatbot

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010107614A (ja) 2008-10-29 2010-05-13 Mitsubishi Motors Corp 音声案内応答方法
JP2016071050A (ja) 2014-09-29 2016-05-09 シャープ株式会社 音声対話装置、音声対話システム、端末、音声対話方法およびコンピュータを音声対話装置として機能させるためのプログラム
US20160210116A1 (en) 2015-01-19 2016-07-21 Ncsoft Corporation Methods and systems for recommending responsive sticker
JP2018021953A (ja) 2016-08-01 2018-02-08 トヨタ自動車株式会社 音声対話装置および音声対話方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7920682B2 (en) * 2001-08-21 2011-04-05 Byrne William J Dynamic interactive voice interface
CN103761083B (zh) * 2013-12-31 2017-04-05 华为技术有限公司 一种数据分享方法、装置及终端
JP6257368B2 (ja) * 2014-02-18 2018-01-10 シャープ株式会社 情報処理装置
US20160092160A1 (en) 2014-09-26 2016-03-31 Intel Corporation User adaptive interfaces
US10614799B2 (en) * 2014-11-26 2020-04-07 Voicebox Technologies Corporation System and method of providing intent predictions for an utterance prior to a system detection of an end of the utterance
KR101751113B1 (ko) * 2015-06-15 2017-06-27 포항공과대학교 산학협력단 기억 능력을 이용하는 다중 사용자 기반의 대화 관리 방법 및 이를 수행하는 장치
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
KR102453603B1 (ko) 2015-11-10 2022-10-12 삼성전자주식회사 전자 장치 및 그 제어 방법
EP4030295B1 (en) 2016-04-18 2024-06-05 Google LLC Automated assistant invocation of appropriate agent
US10613213B2 (en) * 2016-05-13 2020-04-07 Google Llc Systems, methods, and devices for utilizing radar with smart devices
US10049663B2 (en) * 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
US20180054523A1 (en) * 2016-08-16 2018-02-22 Rulai, Inc. Method and system for context sensitive intelligent virtual agents
US11086593B2 (en) * 2016-08-26 2021-08-10 Bragi GmbH Voice assistant for wireless earpieces
US10860898B2 (en) * 2016-10-16 2020-12-08 Ebay Inc. Image analysis and prediction based visual search
US10467510B2 (en) 2017-02-14 2019-11-05 Microsoft Technology Licensing, Llc Intelligent assistant
GB2565315B (en) * 2017-08-09 2022-05-04 Emotech Ltd Robots, methods, computer programs, computer-readable media, arrays of microphones and controllers
CN107978311B (zh) * 2017-11-24 2020-08-25 腾讯科技(深圳)有限公司 一种语音数据处理方法、装置以及语音交互设备
WO2019128541A1 (en) * 2017-12-31 2019-07-04 Midea Group Co., Ltd. Method and system for controlling multiple home devices
KR20200098079A (ko) * 2019-02-11 2020-08-20 현대자동차주식회사 대화 시스템 및 대화 처리 방법
US20200279553A1 (en) * 2019-02-28 2020-09-03 Microsoft Technology Licensing, Llc Linguistic style matching agent

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010107614A (ja) 2008-10-29 2010-05-13 Mitsubishi Motors Corp 音声案内応答方法
JP2016071050A (ja) 2014-09-29 2016-05-09 シャープ株式会社 音声対話装置、音声対話システム、端末、音声対話方法およびコンピュータを音声対話装置として機能させるためのプログラム
US20160210116A1 (en) 2015-01-19 2016-07-21 Ncsoft Corporation Methods and systems for recommending responsive sticker
JP2018021953A (ja) 2016-08-01 2018-02-08 トヨタ自動車株式会社 音声対話装置および音声対話方法

Also Published As

Publication number Publication date
WO2020180286A1 (en) 2020-09-10
AU2019432912B2 (en) 2022-10-06
CN113557566A (zh) 2021-10-26
EP3724874A1 (en) 2020-10-21
US11875790B2 (en) 2024-01-16
EP3724874B1 (en) 2024-07-17
CN113557566B (zh) 2024-04-12
JP2022522104A (ja) 2022-04-14
US20210082420A1 (en) 2021-03-18
AU2019432912A1 (en) 2021-08-05
KR20210134741A (ko) 2021-11-10
CN118351843A (zh) 2024-07-16
US20240153502A1 (en) 2024-05-09

Similar Documents

Publication Publication Date Title
JP7386878B2 (ja) アシスタントの応答を動的に適応させること
CN111033492B (zh) 为自动化助手提供命令束建议
EP3788620B1 (en) Supplementing voice inputs to an automated assistant according to selected suggestions
KR102599607B1 (ko) 자동화된 어시스턴트를 호출하기 위한 다이내믹 및/또는 컨텍스트 특정 핫워드
JP7418563B2 (ja) オンデバイスの機械学習モデルの訓練のための自動化アシスタントの機能の訂正の使用
US11482217B2 (en) Selectively activating on-device speech recognition, and using recognized text in selectively activating on-device NLU and/or on-device fulfillment
US11217247B2 (en) Determining whether to automatically resume first automated assistant session upon cessation of interrupting second session
KR20220166848A (ko) 핫워드/키워드 검출을 위한 사용자 중재
JP2022539674A (ja) 特定話者スピーチモデルを使用した話者認識
US20230237312A1 (en) Reinforcement learning techniques for selecting a software policy network and autonomously controlling a corresponding software client based on selected policy network
CN115769298A (zh) 缺少自动化助理应用编程接口功能的外部应用的自动化助理控制
KR20230147157A (ko) 어시스턴트 명령(들)의 컨텍스트적 억제
CN114981772A (zh) 在不需要自动助理的基于语音的调用的情况下基于检测到的环境状况来选择性地调用自动助理
US20240304184A1 (en) Controlling a style of large language model(s) during ongoing dialog(s) through utilization of natural language based response style tag(s)
KR20230153450A (ko) 자동 스피치 인식의 로컬 실행을 위한 디바이스 중재
KR20230025907A (ko) 생성된 능숙도 측정치에 기초하여 자동화된 어시스턴트 기능 조정

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210930

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210930

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220920

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221003

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221223

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230410

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230810

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20230824

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231016

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231114

R150 Certificate of patent or registration of utility model

Ref document number: 7386878

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150