(57)【要約】【課題】ユーザにとって有益な情報を提供すること。【解決手段】本願に係る推定装置は、第１取得部と、推定部とを有する。第１取得部は、ユーザの発話に由来する検索要求に含まれる第１のキーワードを取得する。推定部は、第１取得部によって取得された第１のキーワードに基づいて、検索結果の種類に関する第１のドメインであって、ユーザが意図する第１のドメインを推定する。【選択図】図４
2020016960.tif 000002
【特許請求の範囲】
【請求項１】
ユーザの発話に由来する検索要求に含まれる第１のキーワードを取得する取得部と、
前記取得部によって取得された第１のキーワードに基づいて、検索結果の種類に関する第１のドメインであって、前記ユーザが意図する第１のドメインを推定する推定部と、
を備えることを特徴とする推定装置。
【請求項２】
前記検索要求が、検索結果の種類に関する第２のドメインを示す第２のキーワードを含まない場合に、前記検索要求に対応する当該第２のドメインが明確でないと判定する判定部をさらに備え、
前記推定部は、
前記判定部によって前記検索要求に対応する前記第２のドメインが明確でないと判定された場合に、前記ユーザが意図する前記第１のドメインを推定する
ことを特徴とする請求項１に記載の推定装置。
【請求項３】
前記判定部によって前記検索要求に対応する前記第２のドメインが明確でないと判定された場合に、前記ユーザが意図する前記第１のドメインを確認する確認部をさらに備える
ことを特徴とする請求項２に記載の推定装置。
【請求項４】
前記確認部は、
前記第１のキーワードが検索結果の種類に関する第３のドメインに対応するという確信の度合いを示す確信度が所定の条件を満たす場合に、前記ユーザが意図する前記第１のドメインを確認する
ことを特徴とする請求項３に記載の推定装置。
【請求項５】
前記ユーザの前記確認に対する応答に含まれる前記第１のドメインと、前記取得部によって取得された第１のキーワードとに基づいて、前記検索要求に対応する検索結果を提供する提供部をさらに備える
ことを特徴とする請求項３又は４に記載の推定装置。
【請求項６】
前記ユーザの前記確認に対する応答に含まれる前記第１のドメインと、前記第１のキーワードとを含む訓練データを用いて、検索結果の種類に関するドメインであって、検索要求に含まれるキーワードに対応するドメインを推定するためのモデルを生成する生成部をさらに備える
ことを特徴とする請求項３〜５のいずれか一つに記載の推定装置。
【請求項７】
前記取得部は、
前記訓練データとして、前記検索要求に対応する検索結果を提供するサービスと異なるサービスにおけるデータであって、検索結果の種類に関するドメインと検索要求に含まれるキーワードとの関連性を示すデータを取得する
ことを特徴とする請求項６に記載の推定装置。
【請求項８】
ユーザの発話に由来する検索要求に含まれる第１のキーワードを取得する取得工程と、
前記取得工程によって取得された第１のキーワードに基づいて、検索結果の種類に関する第１のドメインであって、前記ユーザが意図する第１のドメインを推定する推定工程と、
を含むことを特徴とする推定方法。
【請求項９】
ユーザの発話に由来する検索要求に含まれる第１のキーワードを取得する取得手順と、
前記取得手順によって取得された第１のキーワードに基づいて、検索結果の種類に関する第１のドメインであって、前記ユーザが意図する第１のドメインを推定する推定手順と、
をコンピュータに実行させることを特徴とする推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、推定装置、推定方法及び推定プログラムに関する。
【背景技術】
【０００２】
従来、ユーザの会話を分析し、分析結果に基づいてユーザに適した情報を提供する技術が提案されている。例えば、会話のデータから単語（例えば、「雨」）を抽出し、抽出された単語に関連付けられた話題（例えば、「天気」）に関連する情報を提供する技術が提案されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−００５０７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の従来技術では、ユーザにとって有益な情報を提供できるとは限らない。例えば、上記の従来技術では、抽出された単語に関連付けられた話題が、ユーザにとって関心のある話題であるとは限らない。
【０００５】
本願は、上記に鑑みてなされたものであって、ユーザにとって有益な情報を提供できる推定装置、推定方法及び推定プログラムを提供することを目的とする。
【０００６】
本願に係る推定装置は、ユーザの発話に由来する検索要求に含まれる第１のキーワードを取得する取得部と、前記取得部によって取得された第１のキーワードに基づいて、検索結果の種類に関する第１のドメインであって、前記ユーザが意図する第１のドメインを推定する推定部とを備えることを特徴とする。
【発明の効果】
【０００７】
実施形態の一態様によれば、ユーザにとって有益な情報を提供できるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、実施形態に係るネットワークシステムの構成例を示す図である。
【図２】図２は、実施形態に係る推定処理の一例を示す図である。
【図３】図３は、実施形態に係る推定処理の一例を示す図である。
【図４】図４は、実施形態に係る推定装置の構成例を示す図である。
【図５】図５は、実施形態に係る検索履歴情報記憶部の一例を示す図である。
【図６】図６は、実施形態に係るキーワード情報記憶部の一例を示す図である。
【図７】図７は、実施形態に係る確認応答データ記憶部の一例を示す図である。
【図８】図８は、実施形態に係る訓練データ記憶部の一例を示す図である。
【図９】図９は、実施形態に係る確信度情報記憶部の一例を示す図である。
【図１０】図１０は、実施形態に係る推定装置による推定処理手順を示すフローチャートである。
【図１１】図１１は、ハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【０００９】
以下に、本願に係る推定装置、推定方法及び推定プログラムを実施するための形態（以下、「実施形態」と呼ぶ）について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る推定装置、推定方法及び推定プログラムが限定されるものではない。また、各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略する。
【００１０】
〔１．ネットワークシステムの構成〕
まず、図１を参照して、実施形態に係るネットワークシステム１の構成について説明する。図１は、実施形態に係るネットワークシステム１の構成例を示す図である。図１に示すように、実施形態に係るネットワークシステム１には、端末装置１０１〜１０ｎと、推定装置１００とが含まれる（ｎは任意の自然数）。本明細書では、端末装置１０１〜１０ｎを区別する必要がない場合は、端末装置１０１〜１０ｎを「端末装置１０」と総称する。端末装置１０および推定装置１００は、それぞれネットワークＮと有線又は無線により接続される。図１中では図示していないが、ネットワークシステム１は、複数台の推定装置１００を含んでもよい。
【００１１】
端末装置１０は、ユーザによって利用される情報処理装置である。端末装置１０は、スマートフォン、デスクトップ型ＰＣ（Personal  Computer）、ノート型ＰＣ、タブレット型ＰＣ、ＰＤＡ（Personal  Digital  Assistant）を含む、任意のタイプの情報処理装置であってもよい。
【００１２】
推定装置１００は、ユーザの検索意図を推定するサーバ装置である。推定装置１００は、ネットワークＮを介して、有線又は無線により端末装置１０と通信を行う。
【００１３】
〔２．推定処理〕
次に、図２および図３を参照して、実施形態に係る処理の一例について説明する。図２および図３は、実施形態に係る推定処理の一例を示す図である。
【００１４】
図２および図３の例では、端末装置１０１が、ユーザＵ１によって利用される。図２および図３の例において、端末装置１０１は、スマートフォンとして示されている。
【００１５】
図２および図３の例では、端末装置１０１は、音声アシスタントアプリケーションを介して、ユーザＵ１の発話に由来する検索要求を推定装置１００に送信する。一例では、ユーザＵ１が検索要求を発話した場合に、ユーザＵ１の音声データを音声認識サーバ（図示せず）に送信する。ユーザＵ１の音声データの受信に応じて、音声認識サーバは、ユーザＵ１の音声データを音声認識し、ユーザＵ１の発話内容を示すテキストデータを生成する。その後、端末装置１０１は、生成されたテキストデータを音声認識サーバから受信し、受信されたテキストデータを、検索要求として推定装置１００に送信する。
【００１６】
図２および図３の例では、推定装置１００は、音声アシスタントアプリケーションを介して、音声検索サービスを端末装置１０１に提供する。例えば、ユーザＵ１が検索要求を発話した場合に、端末装置１０１にインストールされた音声アシスタントアプリケーションは、ユーザＵ１の発話に由来する検索要求を、推定装置１００に送信する。そして、推定装置１００は、音声アシスタントアプリケーションを介して、検索要求に対応する検索結果を端末装置１０１に送信する。
【００１７】
図２および図３の例では、推定装置１００の記憶部１２０（図示せず）は、ドメインを識別するための機械学習モデルを記憶する。機械学習モデル（例えば、ニューラルネット）は、機械学習モデルにキーワードに対応するデータ（例えば、埋め込みベクトル）が入力された場合に、かかるキーワードが所定のドメインに対応するという確信の度合いを示す確信度を出力する。また、推定装置１００の記憶部１２０は、上述の確信度に関する閾値「０．５」を記憶する。
【００１８】
本明細書で使用される「ドメイン」という用語は、検索結果の種類、検索のタイプ、検索対象の種類等を表す。例えば、ドメインは、ウェブページ、ニュース、画像、地図、動画、ショッピング、本、ファイナンス、ウィキペディア（登録商標）等を含む。一例では、「ニュースドメイン」からの検索結果は、ニュース記事の検索結果である。別の例では、「画像ドメイン」からの検索結果は、画像検索の検索結果である。上述の確信度を出力する機械学習モデルについては、図２および図３に関連して後述される。
【００１９】
図２および図３の例では、推定装置１００は、記憶部１２０に記憶された機械学習モデルに、キーワードに対応するデータを入力することによって、上述の確信度をドメインごとに出力する。例えば、推定装置１００は、機械学習モデルに、キーワードに対応するデータを入力することによって、かかるキーワードがドメイン「ニュース」に対応するという確信の度合いを示す確信度と、かかるキーワードがドメイン「画像」に対応するという確信の度合いを示す確信度とを出力する。同様に、推定装置１００は、ニュースおよび画像以外のドメイン（例えば、地図、動画等）に対応する確信度を出力する。
【００２０】
図２および図３の例では、推定装置１００は、検索要求に含まれる検索クエリに対応するキーワードが所定のドメインに対応するという確信の度合いを示す確信値に基づいて、ユーザが意図するドメインを決定する。より具体的には、かかる確信値が上述の閾値「０．５」以上である場合に、推定装置１００は、かかる所定のドメインを、ユーザが意図するドメインとして決定する。一方、かかる確信度が閾値「０．５」以上でない場合に、推定装置１００は、かかる所定のドメインを、ユーザが意図するドメインとして決定しない。
【００２１】
図２の例では、はじめに、推定装置１００は、音声アシスタントアプリケーションを介して、検索要求「女優ＡＭ１を検索して」を端末装置１０１から受信する。
【００２２】
次いで、推定装置１００は、受信された検索要求「女優ＡＭ１を検索して」から検索クエリ「女優ＡＭ１」を抽出する。より具体的には、推定装置１００は、正規表現を用いて、「女優ＡＭ１」という単語を検索クエリとして抽出する。
【００２３】
次いで、推定装置１００は、抽出された検索クエリ「女優ＡＭ１」を用いて、ユーザＵ１が意図するドメインを推定する。上述のように、検索クエリに対応するキーワードが所定のドメインに対応するという確信の度合いを示す確信度が閾値「０．５」以上である場合に、推定装置１００は、ユーザＵ１が意図するドメインは、かかる所定のドメインであると判定する。一例として、推定装置１００は、機械学習モデル（例えば、ニューラルネット）に、検索クエリ「女優ＡＭ１」に対応するデータ（例えば、「女優ＡＭ１」に対応する埋め込みベクトル）を入力することで、ドメイン「ニュース」に対応する確信度「０．７」を出力するともに、ニュース以外の複数のドメイン（例えば、画像、地図、動画等）にそれぞれ対応する複数の確信度「０．３」を出力する。この例では、ドメイン「ニュース」に対応する確信度が閾値「０．５」以上であるため、推定装置１００は、ユーザＵ１が意図するドメインは「ニュース」であると判定する。すなわち、図２の例では、推定されたドメインは、「ニュース」である。
【００２４】
その後、推定装置１００は、推定されたドメイン「ニュース」と、抽出された検索クエリ「女優ＡＭ１」とに基づいて、受信された検索要求「女優ＡＭ１を検索して」に対応する検索結果を端末装置１０１に送信する。図２の例では、推定装置１００は、ニュースコンテンツＮＣ１を、ニュース検索の検索結果として送信する。図２のニュースコンテンツＮＣ１は、女優ＡＭ１についてのニュース記事を含む。
【００２５】
一方、図３の例では、はじめに、推定装置１００は、音声アシスタントアプリケーションを介して、検索要求「カッパドキアを検索して」を端末装置１０１から受信する。
【００２６】
次いで、推定装置１００は、図２の例と同様に、受信された検索要求「カッパドキアを検索して」から検索クエリ「カッパドキア」を抽出する。
【００２７】
次いで、推定装置１００は、抽出された検索クエリ「カッパドキア」に基づいて、ユーザＵ１が意図するドメインを推定する。図２の例と同様に、検索クエリに対応するキーワードが所定のドメインに対応するという確信の度合いを示す確信度が閾値「０．５」以上である場合に、推定装置１００は、ユーザＵ１が意図するドメインはかかる所定のドメインであると判定する。一例として、推定装置１００は、機械学習モデルに、検索クエリ「カッパドキア」に対応するデータ（例えば、「カッパドキア」に対応する埋め込みベクトル）を入力することで、ドメイン「画像」に対応する確信度「０．４」を出力するともに、画像以外の複数のドメイン（例えば、ニュース、地図、動画等）にそれぞれ対応する複数の確信度「０．３」を出力する。この例では、複数のドメインにそれぞれ対応する複数の確信度のうちのいずれもが閾値「０．５」以上でないため、推定装置１００は、複数のドメインからドメインを１つに決定しない。言い換えると、検索クエリ「カッパドキア」に対応する複数の確信度のうちのいずれもが閾値以上でない場合に、推定装置１００は、検索クエリ「カッパドキア」に基づいて、ユーザＵ１が意図するドメイン候補を複数のドメインのいずれかに絞らない。
【００２８】
複数のドメインにそれぞれ対応する複数の確信度のうちのいずれもが閾値以上でない場合に、推定装置１００は、ユーザが意図するドメインを確認するための確認情報ＣＩ１を端末装置１０１に送信する。図３の確認情報ＣＩ１は、「どれで検索しましょうか？  １．画像検索  ２．地図検索」という質問を含む。言い換えると、推定装置１００は、検索クエリに対応する複数の確信度のうちのいずれもが閾値以上でない場合には、検索クエリに基づいてドメイン候補を決定したり、ドメイン候補をランダムに決定したりせず、複数のドメインの中からユーザが意図するドメインを対話的に絞り込む。
【００２９】
次いで、推定装置１００は、音声アシスタントアプリケーションを介して、確認情報ＣＩ１に対する応答「画像検索」を端末装置１０１から受信する。
【００３０】
その後、推定装置１００は、受信された応答に含まれるドメイン「画像」と、抽出された検索クエリ「カッパドキア」とに基づいて、受信された検索要求「カッパドキアを検索して」に対応する検索結果を端末装置１０１に送信する。図３の例では、推定装置１００は、画像コンテンツＩＣ１を、画像検索の検索結果として送信する。図３の画像コンテンツＩＣ１は、カッパドキアの画像を含む。
【００３１】
ここで、上述の確信度の算出について説明する。上述のように、検索クエリに対応し、かつ閾値以上の確信度に対応付けられたキーワードが推定装置１００の記憶部１２０の中に記憶されていない場合に、推定装置１００は、ユーザが意図するドメインを確認する。推定装置１００は、ユーザが意図するドメインを用いて、上述の確信度を算出することができる。
【００３２】
例えば、推定装置１００は、検索クエリおよび確認されたドメインに基づいて、ドメインを識別するための分類モデルを生成する。一例では、分類モデルは、順伝播型ニューラルネットである。この例では、推定装置１００は、検索クエリに対応する埋め込みベクトル（例えば、検索クエリに対応する分散表現）を、訓練データの入力として用いる。また、推定装置１００は、確認されたドメインの出現確率（例えば、確認されたドメインに対応するone  hot表現）を、訓練データの出力として用いる。そして、推定装置１００は、訓練データに対応する目的関数（例えば、負の対数尤度）が最小化されるようにニューラルネットを訓練することで、分類モデルを生成する。推定装置１００は、生成された分類モデルを用いて、検索クエリに対応するキーワードが所定のドメインに属する事後確率を、上述の確信度として算出することができる。
【００３３】
一般的には、ユーザがかかるユーザが意図するドメインを伝える前には、ユーザのみしか、ユーザが意図するドメインを知らない。ところで、一般的な機械学習技術では、例えば、アノテータがデータに正解ラベルを付ける。しかし、一般的には、アノテータは、ユーザが意図するドメイン（すなわち、ユーザの心の中に存在するユーザの意図）を知らない。したがって、一般的な機械学習技術では、検索クエリに対応するキーワードに、ユーザが意図するドメインを正解ラベルとして付与することが困難である。この点に関し、推定装置１００は、ユーザが意図するドメインを対話的に確認することができる。このため、推定装置１００は、確信度を学習するための訓練データを蓄積し、漸進的にドメインの推定処理を改善することができる。
【００３４】
上述のように、実施形態に係る推定装置１００は、ユーザの発話に由来する検索要求に含まれる検索クエリに基づいて、ユーザが意図するドメインを推定する。そして、検索クエリに対応し、かつ閾値以上の確信度に対応するキーワードが存在する場合に、推定装置１００は、かかるキーワードに対応するドメインと、検索クエリとに基づいて、検索要求に対応する検索結果を端末装置１０１に送信する。一方、検索クエリに対応し、かつ閾値以上の確信度に対応するキーワードが存在しない場合に、推定装置１００は、ユーザが意図するドメインを確認し、確認されたドメインと、検索クエリとに基づいて、検索要求に対応する検索結果を端末装置１０１に送信する。これにより、推定装置１００は、ユーザの検索意図に応じた音声検索サービスを提供することができる。
【００３５】
例えば、ドメインに関する確信度が所定の閾値以下である場合には、推定装置１００は、ドメインをランダムに決定するのではなく、ユーザが意図するドメインを対話的に適宜確認する。また、ドメインに関する確信度が所定の閾値以上である場合には、推定装置１００は、ユーザが意図するドメインを確認しない。このようにして、推定装置１００は、ユーザが意図しないドメインから検索結果を提供することなく、また、検索要求の度にドメインを確認することなく、ユーザの検索意図に応じた検索結果を提供することができる。
【００３６】
ところで、図２および図３の例では、推定装置１００は、音声アシスタントアプリケーションを介して、音声検索サービスを、スマートフォンである端末装置１０１に提供した。一般的に、スマートフォンは、表示画面サイズに制約があるため、端末装置１０１は、複数のドメインの検索結果を提示することができない場合がある。例えば、端末装置１０１は、ウェブ検索の検索結果と画像検索の検索結果とを同時に適切なサイズで表示することができない場合がある。この点に関し、表示画面サイズに制約がある場合でも、推定装置１００は、ユーザの検索意図に応じて、検索結果を絞り込むことができる。以下、このような推定処理を実現する推定装置１００について詳細に説明する。
【００３７】
〔３．推定装置の構成〕
次に、図４を参照して、実施形態に係る推定装置１００の構成例について説明する。図４は、実施形態に係る推定装置１００の構成例を示す図である。図４に示すように、推定装置１００は、通信部１１０と、記憶部１２０と、制御部１３０とを有する。なお、推定装置１００は、推定装置１００を利用する管理者等から各種操作を受け付ける入力部（例えば、キーボードやマウス等）や、各種情報を表示するための表示部（液晶ディスプレイ等）を有してもよい。
【００３８】
（通信部１１０）
通信部１１０は、例えば、ＮＩＣ（Network  Interface  Card）等によって実現される。通信部１１０は、ネットワーク網と有線又は無線により接続され、ネットワーク網を介して、端末装置１０との間で情報の送受信を行う。
【００３９】
（記憶部１２０）
記憶部１２０は、例えば、ＲＡＭ（Random  Access  Memory)、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。図４に示すように、記憶部１２０は、検索履歴情報記憶部１２１と、キーワード情報記憶部１２２と、確認応答データ記憶部１２３と、訓練データ記憶部１２４と、ドメイン推定モデル記憶部１２５と、確信度情報記憶部１２６とを有する。
【００４０】
（検索履歴情報記憶部１２１）
図５は、実施形態に係る検索履歴情報記憶部１２１の一例を示す図である。検索履歴情報記憶部１２１は、ユーザの検索履歴情報を記憶する。例えば、検索履歴情報記憶部１２１は、受信部１３１によって受信されたユーザの検索履歴情報を記憶する。図５の例では、検索履歴情報記憶部１２１には、「検索履歴情報」が「ユーザＩＤ」ごとに記憶される。例示として、「ユーザ情報」には、項目「検索要求」および「キーワード」が含まれる。
【００４１】
「ユーザＩＤ」は、ユーザを識別するための識別子を示す。「検索要求」は、ユーザの発話に由来する検索要求を示す。例えば、検索要求は、音声アシスタントアプリケーションを介して受信された音声信号の音声認識結果である。「キーワード」は、ユーザの発話に由来する検索要求に含まれるキーワードを示す。例えば、キーワードは検索クエリである。一例では、検索クエリは、正規表現に基づいて、検索要求から抽出される。
【００４２】
例えば、図５は、ユーザＩＤ「Ｕ１」で識別されるユーザが、キーワード「女優ＡＭ１」を含む検索要求「女優ＡＭ１を検索して」を発話したことを示している。
【００４３】
（キーワード情報記憶部１２２）
図６は、実施形態に係るキーワード情報記憶部１２２の一例を示す図である。キーワード情報記憶部１２２は、検索結果の種類に関するドメインを示すキーワードのキーワード情報を記憶する。例えば、キーワード情報記憶部１２２は、受信部１３１によって受信されたキーワード情報を記憶する。図６の例では、キーワード情報記憶部１２２には、「キーワード情報」が「キーワードＩＤ」ごとに記憶される。例示として、「キーワード情報」には、項目「キーワード」および「ドメイン」が含まれる。
【００４４】
「キーワードＩＤ」は、検索結果の種類に関するドメインを示すキーワードを識別するための識別子を示す。「キーワード」は、キーワードの文字列を示す。「ドメイン」は、検索結果の種類に関するドメインを示す。
【００４５】
例えば、図６は、キーワードＩＤ「ＤＫ１」で識別されるキーワードが、文字列「ニュース」であり、ドメイン「ニュース」を示すことを示している。また、例えば、図６は、キーワードＩＤ「ＤＫ２」で識別されるキーワードが、文字列「結果」であり、ドメイン「ニュース」を示すことを示している。また、例えば、図６は、キーワードＩＤ「ＤＫ３」で識別されるキーワードが、文字列「最新」であり、ドメイン「ニュース」を示すことを示している。言い換えると、図６は、「ニュース」、「最新」および「結果」が、ニュースドメインを暗示する語句であることを示している。
【００４６】
（確認応答データ記憶部１２３）
図７は、実施形態に係る確認応答データ記憶部１２３の一例を示す図である。確認応答データ記憶部１２３は、ユーザが意図するドメインの確認に応答する確認応答データを記憶する。例えば、確認応答データ記憶部１２３は、確認部１３６によって送信された確認情報を記憶する。また、例えば、確認応答データ記憶部１２３は、受信部１３１によって受信された応答を記憶する。図７の例では、確認応答データ記憶部１２３には、「確認応答データ」が「ユーザＩＤ」ごとに記憶される。例示として、「確認応答データ」には、項目「検索要求」、「確認」および「応答」が含まれる。
【００４７】
上述のように、「ユーザＩＤ」は、ユーザを識別するための識別子を示す。上述のように、「検索要求」は、ユーザの発話に由来する検索要求を示す。「確認」は、ユーザが意図するドメインを確認するための確認情報を示す。「応答」は、確認情報に対する応答を示す。
【００４８】
例えば、図７は、ユーザＩＤ「Ｕ１」で識別されるユーザの発話に由来する検索要求が、「カッパドキアを検索して」という要求であることを示している。また、例えば、図７は、ユーザＩＤ「Ｕ１」で識別されるユーザが意図するドメインを確認するための確認情報が、「どれで検索しましょうか？  １．画像検索  ２．地図検索」という情報であることを示している。また、例えば、図７は、「どれで検索しましょうか？  １．画像検索  ２．地図検索」という情報に対する応答が、「画像検索」という応答であることを示している。
【００４９】
（訓練データ記憶部１２４）
図８は、実施形態に係る訓練データ記憶部１２４の一例を示す図である。訓練データ記憶部１２４は、ドメイン推定モデルを生成するための訓練データを記憶する。ドメイン推定モデルは、例えば、ユーザが意図するドメインを識別するための分類モデルである。訓練データ記憶部１２４は、例えば、受信部１３１によって受信された訓練データを記憶する。図８の例では、訓練データ記憶部１２４には、「訓練データ」が「訓練データＩＤ」ごとに記憶される。例示として、「訓練データ」には、項目「検索クエリ情報」および「ドメイン情報」が含まれる。
【００５０】
「訓練データＩＤ」は、訓練データを識別するための識別子を示す。「検索クエリ情報」は、検索要求に含まれるキーワードに関する情報を示す。例えば、検索クエリ情報は、検索要求に含まれるキーワードに対応する埋め込みベクトルを示す。キーワードに対応する埋め込みベクトルは、例えば、ニューラル言語モデル等によって生成された単語分散表現である。「ドメイン情報」は、ユーザが意図するドメインを確認するための確認情報に対する応答に含まれるドメインを示す。例えば、ドメイン情報は、応答に含まれるドメインの出現確率を示す。一例では、ドメインの出現確率は、応答に含まれるドメインに対応する成分のみが１で、他の成分が０のベクトルで表現される。
【００５１】
例えば、図８は、訓練データＩＤ「ＴＤ１」で識別される訓練データの検索クエリが「カッパドキア」であることを示している。この場合、訓練データの入力値は、例えば、「カッパドキア」の埋め込みベクトルである。また、例えば、図８は、訓練データＩＤ「ＴＤ１」で識別される訓練データのドメインが「画像」であることを示している。この場合、訓練データの出力値は、例えば、ドメイン「画像」の出現確率をベクトル成分とするベクトルである。
【００５２】
（ドメイン推定モデル記憶部１２５）
図４に戻ると、ドメイン推定モデル記憶部１２５は、ドメイン推定モデルを記憶する。ドメイン推定モデル記憶部１２５は、例えば、生成部１３８によって生成されたドメイン推定モデルを記憶する。
【００５３】
（確信度情報記憶部１２６）
図９は、実施形態に係る確信度情報記憶部１２６の一例を示す図である。確信度情報記憶部１２６は、キーワードが所定のドメインに対応するという確信の度合いを示す確信度を記憶する。例えば、確信度情報記憶部１２６は、生成部１３８によって生成されたドメイン推定モデルの出力を、確信度として記憶する。ドメイン推定モデルの出力は、例えば、検索クエリに対応するキーワードが所定のドメインのクラス（例えば、画像）に属する確率である。図９の例では、確信度情報記憶部１２６には、各ドメインに対応する確信度が、「キーワードＩＤ」ごとに記憶される。例示として、「確信度情報」には、項目「キーワード」、「ニュースドメイン」および「画像ドメイン」が含まれる。確信度情報記憶部１２６は、確信度に関する閾値を記憶してもよい。
【００５４】
「キーワードＩＤ」は、キーワードを識別するための識別子を示す。かかるキーワードは、例えば、検索要求に含まれる検索クエリに対応する。「キーワード」は、キーワードの文字列を示す。「ニュースドメイン」は、キーワードがドメイン「ニュース」に対応するという確信の度合いを示す。「ニュースドメイン」は、例えば、キーワードがドメイン「ニュース」のクラスに属する確率を示す。「画像ドメイン」は、キーワードがドメイン「画像」に対応するという確信の度合いを示す。「画像ドメイン」は、例えば、キーワードがドメイン「画像」のクラスに属する確率を示す。
【００５５】
例えば、図９は、キーワードＩＤ「ＳＫ１」で識別されるキーワードが文字列「女優ＡＭ１」であることを示している。また、例えば、図９は、キーワードＩＤ「ＳＫ１」で識別されるキーワードがドメイン「ニュース」に対応するという確信の度合いを示す確信度が「０．７」であることを示している。また、例えば、図９は、キーワードＩＤ「ＳＫ１」で識別されるキーワードがドメイン「画像」に対応するという確信の度合いを示す確信度が「０．４」であることを示している。
【００５６】
図９の例では、確信度情報記憶部１２６は、キーワード「女優ＡＭ１」を、ドメイン「ニュース」に対応する確信度「０．７」に対応付けて記憶する。かかる確信度「０．７」は、キーワード「女優ＡＭ１」がドメイン「ニュース」に対応するという確信の度合いを示す数値である。また、確信度情報記憶部１２６は、キーワード「カッパドキア」を、ドメイン「画像」に対応する確信度「０．４」に対応付けて記憶する。かかる確信度「０．４」は、キーワード「カッパドキア」がドメイン「画像」に対応するという確信の度合いを示す数値である。
【００５７】
（制御部１３０）
制御部１３０は、コントローラ（controller）であり、例えば、ＣＰＵ（Central  Processing  Unit）、ＭＰＵ（Micro  Processing  Unit）等のプロセッサによって、推定装置１００内部の記憶装置に記憶されている各種プログラムがＲＡＭ等を作業領域として実行されることにより実現される。また、制御部１３０は、コントローラ（controller）であり、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路により実現されてもよい。
【００５８】
制御部１３０は、図４に示すように、受信部１３１と、第１取得部１３２と、第２取得部１３３と、判定部１３４と、推定部１３５と、確認部１３６と、提供部１３７と、生成部１３８と、出力部１３９とを有し、以下に説明する情報処理の機能や作用を実現又は実行する。なお、制御部１３０の内部構成は、図４に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
【００５９】
（受信部１３１）
受信部１３１は、ユーザの発話に由来する検索要求を受信する。受信部１３１は、ユーザの発話に由来する検索要求に含まれるキーワードを受信してもよい。例えば、受信部１３１は、ユーザの発話に由来する検索要求に含まれる検索クエリを受信してもよい。一例では、受信部１３１は、音声アシスタントアプリケーションを介して、検索要求を端末装置１０から受信する。受信部１３１は、受信された検索要求を、検索履歴情報記憶部１２１に格納してもよい。また、受信部１３１は、受信されたキーワードを、検索履歴情報記憶部１２１に格納してもよい。
【００６０】
受信部１３１は、ユーザが意図するドメインの確認に対する応答を受信する。一例では、受信部１３１は、音声アシスタントアプリケーションを介して、ドメインの確認に対する応答を端末装置１０から受信する。受信部１３１は、受信された応答を、確認応答データ記憶部１２３に格納してもよい。
【００６１】
受信部１３１は、キーワードが検索結果の種類に関するドメインに対応するという確信の度合いを示す確信度を、所定のサーバから受信してもよい。受信部１３１は、受信された確信度を、確信度情報記憶部１２６に格納してもよい。また、受信部１３１は、検索結果の種類に関するドメインを示すキーワードを、所定のサーバから受信してもよい。受信部１３１は、受信されたキーワードを、キーワード情報記憶部１２２に格納してもよい。
【００６２】
（第１取得部１３２）
第１取得部１３２は、検索要求に関連する情報を取得する。検索要求は、例えば、ユーザの発話に由来する検索要求である。
【００６３】
第１取得部１３２は、ユーザの発話に由来する検索要求に含まれるキーワードを取得する。例えば、第１取得部１３２は、受信部１３１によって受信されたキーワードを取得する。第１取得部１３２は、受信部１３１によって受信された検索要求から、キーワードを抽出してもよい。例えば、第１取得部１３２は、正規表現を用いて、キーワードを検索クエリとして抽出してもよい。第１取得部１３２は、検索履歴情報記憶部１２１から、ユーザの発話に由来する検索要求に含まれるキーワードを取得してもよい。
【００６４】
（第２取得部１３３）
第２取得部１３３は、ドメインに関連する情報を取得する。ドメインは、例えば、検索結果の種類、検索のタイプ、検索対象の種類等である。
【００６５】
第２取得部１３３は、キーワードが検索結果の種類に関するドメインに対応するという確信の度合いを示す確信度を取得する。第２取得部１３３は、確信度を算出するためのデータを取得してもよい。例えば、第２取得部１３３は、キーワードと所定のドメインとの対応関係を示す訓練データを、所定のサーバから取得してもよい。
【００６６】
第２取得部１３３は、生成部１３８によって生成されたドメイン推定モデルの出力（例えば、キーワードが所定のドメインのクラスに属する事後確率）を、確信度として取得する。第２取得部１３３は、受信部１３１によって受信された確信度を取得してもよい。第２取得部１３３は、確信度情報記憶部１２６から、確信度を取得してもよい。例えば、第２取得部１３３、推定部１３５によって推定されたドメインに対応する確信度を、確信度情報記憶部１２６から取得する。
【００６７】
（判定部１３４）
判定部１３４は、検索要求に対応するドメインが明確であるか否かを判定する。検索要求が、検索結果の種類に関するドメインを示すキーワードを含まない場合に、判定部１３４は、かかる検索要求に対応するドメインが明確でないと判定する。一方、検索要求が、検索結果の種類に関するドメインを示すキーワードを含む場合に、判定部１３４は、かかる検索要求に対応するドメインが明確であると判定する。検索結果の種類に関するドメインを示すキーワードは、例えば、ドメインを暗示する検索クエリである。例えば、判定部１３４は、ユーザの発話に由来する検索要求が、検索結果の種類に関するドメインを示す検索クエリを含まない場合に、かかる検索要求に対応するドメインが明確でないと判定する。
【００６８】
例えば、判定部１３４は、検索要求が、キーワード情報記憶部１２２に記憶されたキーワードに対応する検索クエリを含むか否かを判定する。一例では、判定部１３４は、検索要求が、検索結果の種類に関するドメインを示すキーワードを含むか否かを判定する。例えば、判定部１３４は、検索要求が、ニュース、結果、最新、画像、写真、風景等のキーワードを含むか否かを判定する。この例では、ニュース、結果、最新等のキーワード（すなわち、検索クエリ）は、ニュースドメインを暗示している。また、画像、写真、風景等のキーワードは、画像ドメインを暗示している。
【００６９】
判定部１３４は、検索要求が、キーワード情報記憶部１２２に記憶されたキーワードに対応する検索クエリを含む場合に、かかる検索要求に対応するドメインが明確であると判定する。一例では、判定部１３４は、検索要求が、キーワード「結果」を含む場合に、かかる検索要求に対応するドメインが「ニュース」であると決定する。一方、判定部１３４は、検索要求が、キーワード情報記憶部１２２に記憶されたキーワードに対応する検索クエリを含まない場合に、かかる検索要求に対応するドメインが明確でないと判定する。
【００７０】
（推定部１３５）
推定部１３５は、キーワードに基づいて、検索結果の種類に関するドメインであって、ユーザが意図するドメインを推定する。例えば、推定部１３５は、第１取得部１３２によって取得されたキーワードに基づいて、検索結果の種類に関するドメインであって、ユーザが意図するドメインを推定する。一例では、推定部１３５は、確信度情報記憶部１２６に記憶されたキーワードと第１取得部１３２によって取得されたキーワードのマッチングを行うことにより、ユーザが意図するドメインを推定する。例えば、推定部１３５は、確信度情報記憶部１２６に記憶されたキーワードから、第１取得部１３２によって取得されたキーワードに対応するキーワードを識別することで、ユーザが意図するドメインを推定する。
【００７１】
判定部１３４によって検索要求に対応するドメインが明確でないと判定された場合に、推定部１３５は、ユーザが意図するドメインを推定する。例えば、判定部１３４によって、検索要求が、キーワード情報記憶部１２２に記憶されたキーワードに対応する検索クエリを含まないと判定された場合に、推定部１３５は、ユーザが意図するドメインを推定する。
【００７２】
確信度情報記憶部１２６に記憶されたキーワードが、確信度に対応付けられておらず、所定のドメインに対応付けられて場合に、推定部１３５は、第１取得部１３２によって取得されたキーワードとマッチするかかるキーワードに基づいて、ユーザが意図するドメインを推定してもよい。
【００７３】
より具体的には、推定部１３５は、確信度に対応付けられていないキーワードが第１取得部１３２によって取得されたキーワードにマッチするか否かを決定する。そして、確信度に対応付けられていないキーワードが第１取得部１３２によって取得されたキーワードにマッチするという決定に応じて、推定部１３５は、確信度に対応付けられていないキーワードに対応するドメインを、ユーザが意図するドメインとして決定する。このようにして、推定部１３５は、ユーザが意図するドメインを推定してもよい。すなわち、確信度情報記憶部１２６に記憶されたキーワードが、所定のドメインに対応付けられている場合に、推定部１３５は、第１取得部１３２によって取得されたキーワードにマッチするキーワードであって、確信度情報記憶部１２６に記憶されたキーワードに対応するドメインを、ユーザが意図するドメインとして決定してもよい。
【００７４】
推定部１３５は、推定されたドメインに対応する確信度が所定の条件を満たすか否かを判定する。上述のように、確信度は、キーワードが検索結果の種類に関するドメインに対応するという確信の度合いを示す。例えば、推定部１３５は、第２取得部１３３によって取得された、推定されたドメインに対応する確信度が、閾値（すなわち、確信度に関する閾値）以上であるか否かを判定する。また、例えば、推定部１３５は、確信度情報記憶部１２６に記憶され、かつ推定されたドメインに対応する確信度が、閾値以上であるか否かを判定する。閾値は、例えば、確信度情報記憶部１２６に記憶された確信度に関する閾値である。
【００７５】
推定されたドメインに対応する確信度が所定の条件を満たさない場合に（例えば、推定されたドメインに対応する確信度が、閾値以上である場合に）、推定部１３５は、ユーザが意図するドメインは、かかる確信度に対応するドメインであると判定する。言い換えると、推定されたドメインに対応する確信度が、閾値以上である場合に、推定部１３５は、推定されたドメインに対応する確信度が所定の条件を満たさないと判定する。一方、推定されたドメインに対応する確信度が所定の条件を満たす場合に（例えば、推定されたドメインに対応する確信度が、閾値以上でない場合に）、推定部１３５は、ユーザが意図するドメインは、かかる確信度に対応するドメインでないと判定する。言い換えると、推定されたドメインに対応する確信度が、閾値以上でない場合に、推定部１３５は、推定されたドメインに対応する確信度が所定の条件を満たすと判定する。
【００７６】
一例では、推定部１３５は、検索要求に含まれる検索クエリに対応するキーワードが所定のドメインに対応するという確信の度合いを示す確信値に基づいて、ユーザが意図するドメインを決定する。より具体的には、かかる確信値が閾値以上である場合に、推定部１３５は、かかる所定のドメインを、ユーザが意図するドメインとして決定する。一方、かかる確信度が閾値以上でない場合に、推定部１３５は、かかる所定のドメインを、ユーザが意図するドメインとして決定しない。すなわち、検索クエリに対応するキーワードが所定のドメインに対応するという確信の度合いを示す確信度が閾値以上である場合に、推定部１３５は、ユーザが意図するドメインは、かかる所定のドメインであると判定する。また、検索クエリに対応する複数の確信度のうちのいずれもが閾値以上でない場合に、推定部１３５は、検索クエリに基づいて、ユーザが意図するドメイン候補を複数のドメインのいずれかに絞らない。
【００７７】
一例では、推定部１３５は、検索クエリに対応するキーワードが閾値以上の確信度に対応付けられて確信度情報記憶部１２６に記憶されている場合に、推定部１３５は、ユーザが意図するドメインは、かかる確信度に対応するドメインであると判定する。この例では、推定部１３５は、検索クエリに対応するキーワードが閾値以上の確信度に対応付けられて確信度情報記憶部１２６に記憶されていない場合に、推定部１３５は、ユーザが意図するドメインは、かかる確信度に対応するドメインでないと判定する。
【００７８】
推定部１３５は、第１の確信度および第２の確信度が閾値以上である場合に、第１の確信度および第２の確信度のうち最大の確信度である最大確信度を特定してもよい。そして、推定部１３５は、特定された最大確信度に対応するドメインが、ユーザが意図するドメインであると判定してもよい。
【００７９】
（確認部１３６）
確認部１３６は、ユーザが意図するドメインを確認する。例えば、確認部１３６は、ユーザが意図するドメインを確認するための確認情報を端末装置１０に送信する。確認情報は、例えば、ユーザが意図するドメインに関する質問を含む。
【００８０】
確認部１３６は、判定部１３４によって検索要求に対応するドメインが明確でないと判定された場合に、ユーザが意図するドメインを確認する。例えば、検索要求に対応するドメインが明確でないという判定に応じて、確認部１３６は、ユーザが意図するドメインを確認するための確認情報を端末装置１０に送信する。例えば、複数のドメインにそれぞれ対応する複数の確信度のうちのいずれもが閾値以上でない場合に、確認部１３６は、ユーザが意図するドメインを確認するための確認情報を端末装置１０に送信する。
【００８１】
確認部１３６は、キーワードが検索結果の種類に関するドメインに対応するという確信の度合いを示す確信度が所定の条件を満たす場合に、ユーザが意図するドメインを確認する。例えば、推定部１３５によって、推定されたドメインに対応する確信度が所定の条件を満たすと判定された場合に、確認部１３６は、ユーザが意図するドメインを確認する。より具体的には、推定部１３５によって、推定されたドメインに対応する確信度が閾値以上でないと判定された場合に、確認部１３６は、ユーザが意図するドメインを確認する。
【００８２】
判定部１３４によって検索要求に対応するドメインが明確でないと判定された場合に、確認部１３６は、所定の確率で、ユーザが意図するドメインを確認してもよい。所定の確率は、例えば、ユーザが意図するドメインを確認する確率である質問率である。ユーザが意図するドメインの確認と、音声アシスタントアプリケーションのユーザビリティとはトレードオフの関係にあることが考えられる。したがって、質問率は、音声アシスタントアプリケーションのユーザビリティを考慮して決定される。
【００８３】
（提供部１３７）
提供部１３７は、検索要求に対応する検索結果を提供する。例えば、ユーザの発話に由来する検索要求に対応する検索結果を、端末装置１０に提供する。提供部１３７は、ユーザが意図するドメインの確認に対する応答に含まれるドメインと、第１取得部１３２によって取得されたキーワードとに基づいて、検索要求に対応する検索結果を提供する。例えば、ドメイン「画像」が、受信部１３１によって受信された応答に含まれる場合に、提供部１３７は、画像コンテンツを、画像検索の検索結果として端末装置１０に送信する。
【００８４】
判定部１３４によって検索要求に対応するドメインが明確であると判定された場合に、提供部１３７は、検索要求に対応するドメインと、第１取得部１３２によって取得されたキーワードとに基づいて、検索要求に対応する検索結果を提供する。より具体的には、検索要求が、検索結果の種類に関するドメインを示すキーワード（例えば、ドメインを暗示する検索クエリ）を含む場合に、提供部１３７は、かかるドメインと、第１取得部１３２によって取得されたキーワードとに基づいて、検索要求に対応する検索結果を提供する。一例では、検索要求「カッパドキアの画像を検索して」が受信部１３１によって受信された場合に、第１取得部１３２は、「カッパドキア」をキーワードとして取得する。また、判定部１３４は、検索要求「カッパドキアの画像を検索して」が、画像ドメインを示すキーワード「画像」を含むと判定する。この例では、提供部１３７は、カッパドキアの画像を画像検索の検索結果として提供する。
【００８５】
推定部１３５によって、推定部１３５によって推定されたドメインに対応する確信度が所定の条件を満たさないと判定された場合に、提供部１３７は、推定部１３５によって推定されたドメインと、第１取得部１３２によって取得されたキーワードとに基づいて、検索要求に対応する検索結果を提供する。より具体的には、推定部１３５によって推定されたドメインに対応する確信度が、閾値以上である場合に、提供部１３７は、推定されたドメインと、取得されたキーワードとに基づいて、検索要求に対応する検索結果を提供する。
【００８６】
推定部１３５によって、推定部１３５によって推定されたドメインに対応する確信度が所定の条件を満たすと判定された場合に、提供部１３７は、ドメイン「ウェブページ」と、第１取得部１３２によって取得されたキーワードとに基づいて、検索要求に対応する検索結果を提供してもよい。この場合、提供部１３７は、ウェブページを、ウェブ検索の検索結果として提供する。
【００８７】
（生成部１３８）
生成部１３８は、ユーザの確認に対する応答に含まれるドメインと、第１取得部１３２によって取得されたキーワードとを含む訓練データを用いて、検索結果の種類に関するドメインであって、検索要求に含まれるキーワードに対応するドメインを推定するためのモデルを生成する。かかるモデルは、例えば、機械学習モデル（例えば、ニューラルネット）である。機械学習モデルは、機械学習モデルにキーワードに対応するデータ（例えば、埋め込みベクトル）が入力された場合に、かかるキーワードが所定のドメインに対応するという確信の度合いを示す確信度を出力する。ユーザの確認に対する応答は、例えば、受信部１３１によって受信された、ユーザが意図するドメインの確認に対する応答である。
【００８８】
例えば、生成部１３８は、ユーザの確認に対する応答に含まれるドメインと、検索クエリとに基づいて、ドメインを識別するための分類モデルを生成する。一例では、分類モデルは、順伝播型ニューラルネットである。この例では、生成部１３８は、検索クエリに対応する埋め込みベクトルを、訓練データの入力として用いる。また、生成部１３８は、ユーザの確認に対する応答に含まれるドメインの出現確率を、訓練データの出力として用いる。そして、生成部１３８は、訓練データに対応する目的関数（例えば、負の対数尤度）が最小化されるようにニューラルネットを訓練することで、分類モデルを生成する。
【００８９】
（出力部１３９）
出力部１３９は、生成部１３８によって生成されたドメインを推定するためのモデルに、キーワードを入力することによって、かかるキーワードが所定のドメインのクラスに属する事後確率を出力する。そして、出力部１３９は、モデルによって出力された、所定のドメインに対応する事後確率を、キーワードに対応付けて確信度情報記憶部１２６に格納する。
【００９０】
出力部１３９は、最大事後確率を有するドメインを、キーワードに対応付けて確信度情報記憶部１２６に格納してもよい。この場合、キーワードは、最大事後確率に対応付けられて確信度情報記憶部１２６に記憶されなくてもよい。すなわち、キーワード（例えば、カッパドキア）が、最大事後確率を有するドメイン（例えば、画像）に対応付けて確信度情報記憶部１２６に記憶されてもよい。
【００９１】
出力部１３９は、ドメイン推定モデル記憶部１２５に記憶されたモデル（例えば、機械学習モデル）に、キーワードに対応するデータを入力することによって、上述の確信度をドメインごとに出力してもよい。例えば、出力部１３９は、機械学習モデルに、キーワードに対応するデータを入力することによって、かかるキーワードがドメイン「ニュース」に対応するという確信の度合いを示す確信度と、かかるキーワードがドメイン「画像」に対応するという確信の度合いを示す確信度とを出力する。同様に、出力部１３９は、ニュースおよび画像以外のドメイン（例えば、地図、動画等）に対応する確信度を出力する。
【００９２】
例えば、出力部１３９は、機械学習モデルに、検索クエリに対応するデータ（例えば、検索クエリに対応する埋め込みベクトル）を入力することで、所定のドメインに対応する確信度を出力するともに、かかる所定のドメイン以外の複数のドメインにそれぞれ対応する複数の確信度を出力する。
【００９３】
〔４．推定処理のフロー〕
次に、実施形態に係る推定装置１００による提供処理の手順について説明する。図１０は、実施形態に係る推定装置１００による推定処理手順を示すフローチャートである。
【００９４】
図１０に示すように、はじめに、推定装置１００は、ユーザの発話に由来する検索要求を受信する（ステップＳ１０１）。一例では、推定装置１００は、音声アシスタントアプリケーションを介して、検索要求を端末装置１０から受信する。
【００９５】
次いで、推定装置１００は、受信された検索要求に含まれるキーワードを取得する（ステップＳ１０２）。一例では、推定装置１００は、正規表現を用いて、キーワードを検索クエリとして抽出する。
【００９６】
次いで、推定装置１００は、受信された検索要求に対応するドメインが明確であるか否かを判定する（ステップＳ１０３）。一例では、推定装置１００は、検索要求が、検索結果の種類に関するドメインを示すキーワード（例えば、ニュース、結果、最新といった画像ドメインを暗示するキーワード）を含むか否かを判定する。
【００９７】
次いで、受信された検索要求に対応するドメインが明確であると判定された場合に（ステップＳ１０４；Ｙｅｓ）、推定装置１００は、検索要求に対応するドメインと、取得されたキーワードとに基づいて、検索要求に対応する検索結果を提供する（ステップＳ１０５）。一方、受信された検索要求に対応するドメインが明確でないと判定された場合に（ステップＳ１０４；Ｎｏ）、推定装置１００は、取得されたキーワードに基づいて、検索結果の種類に関するドメインであって、ユーザが意図するドメインを推定する（ステップＳ１０７）。
【００９８】
次いで、推定装置１００は、キーワードが検索結果の種類に関するドメインに対応するという確信の度合いを示す確信度であって、推定されたドメインに対応する確信度が所定の条件を満たすか否かを判定する（ステップＳ１０７）。例えば、推定されたドメインに対応する確信度が閾値以上である場合に、推定装置１００は、推定されたドメインに対応する確信度が所定の条件を満たさないと判定する。一方、推定されたドメインに対応する確信度が閾値以上でない場合に、推定装置１００は、推定されたドメインに対応する確信度が所定の条件を満たすと判定する。
【００９９】
次いで、確信度が所定の条件を満たさないと判定された場合に（ステップＳ１０８；Ｎｏ）、推定装置１００は、推定されたドメインと、取得されたキーワードとに基づいて、検索要求に対応する検索結果を提供する（ステップＳ１０９）。一方、確信度が所定の条件を満たすと判定された場合に（ステップＳ１０８；Ｙｅｓ）、推定装置１００は、ユーザが意図するドメインを確認する（ステップＳ１１０）。例えば、推定装置１００は、ユーザが意図するドメインを確認するための確認情報を端末装置１０に送信する。
【０１００】
次いで、推定装置１００は、ユーザが意図するドメインの確認に対する応答を受信する（ステップＳ１１１）。一例では、推定装置１００は、音声アシスタントアプリケーションを介して、ドメインの確認に対する応答を端末装置１０から受信する。
【０１０１】
次いで、推定装置１００は、ユーザが意図するドメインの確認に対する応答に含まれるドメインと、取得されたキーワードとに基づいて、検索要求に対応する検索結果を提供する（ステップＳ１１２）。
【０１０２】
〔５．変形例〕
上述の実施形態に係る推定装置１００は、上記の実施形態以外にも、種々の異なる形態で実施されてよい。そこで、以下では、上記の推定装置１００の他の実施形態について説明する。
【０１０３】
〔５−１．ドメイン推定モデルの訓練データ〕
第２取得部１３３は、訓練データとして、検索要求に対応する検索結果を提供するサービスと異なるサービスにおけるデータであって、検索結果の種類に関するドメインと検索要求に含まれるキーワードとの関連性を示すデータを取得してもよい。
【０１０４】
例えば、第２取得部１３３は、訓練データとして、所定のサーバから、検索サービスにおけるデータを取得する。検索サービスにおけるデータは、例えば、検索クエリと、かかる検索クエリによって検索された検索結果のドメインとを含む。一例では、検索クエリは、検索サービスの検索ウィンドウに入力された検索クエリである。一例では、検索結果のドメインは、例えば、検索サービスの検索ウィンドウとともに表示される検索対象（例えば、ウェブページ、ニュース、画像、地図、動画等の項目）に対応する。
【０１０５】
〔５−２．ドメインのトレンド〕
提供部１３７は、ドメインのトレンドに関するトレンド情報に基づいて、検索要求に対応する検索結果を提供してもよい。
【０１０６】
例えば、第１取得部１３２は、検索要求に含まれるキーワード「ビットコイン」を取得する。さらに、第２取得部１３３は、所定のサーバから、トレンド情報を取得する。トレンド情報は、例えば、所定の期間における検索クエリの検索回数と、かかる検索クエリによって検索された検索結果のドメインとを含む。一例では、トレンド情報は、「２０１８年５月２０日から２０１８年７月２０日」までの期間に、検索クエリ「ビットコイン」がニュース検索された検索回数を含む。この例では、かかる期間および検索回数が、所定の条件を満たす場合に、提供部１３７は、ドメイン「ニュース」と、キーワード「ビットコイン」とに基づいて、検索要求に対応する検索結果を提供する。例えば、提供部１３７は、ビットコインのニュースコンテンツを、ニュース検索の検索結果として提供する。
【０１０７】
〔５−３．その他〕
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の一部を手動的に行うこともできる。あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【０１０８】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【０１０９】
例えば、図４に示した記憶部１２０の一部又は全部は、推定装置１００によって保持されるのではなく、ストレージサーバ等に保持されてもよい。この場合、推定装置１００は、ストレージサーバにアクセスすることで、検索履歴情報やキーワード情報等の各種情報を取得する。
【０１１０】
〔５−４．ハードウェア構成〕
また、上述してきた実施形態に係る推定装置１００は、例えば図１１に示すような構成のコンピュータ１０００によって実現される。図１１は、ハードウェア構成の一例を示す図である。コンピュータ１０００は、出力装置１０１０、入力装置１０２０と接続され、演算装置１０３０、一次記憶装置１０４０、二次記憶装置１０５０、出力ＩＦ（Interface）１０６０、入力ＩＦ１０７０、ネットワークＩＦ１０８０がバス１０９０により接続された形態を有する。
【０１１１】
演算装置１０３０は、一次記憶装置１０４０や二次記憶装置１０５０に格納されたプログラムや入力装置１０２０から読み出したプログラム等に基づいて動作し、各種の処理を実行する。一次記憶装置１０４０は、ＲＡＭ等、演算装置１０３０が各種の演算に用いるデータを一時的に記憶するメモリ装置である。また、二次記憶装置１０５０は、演算装置１０３０が各種の演算に用いるデータや、各種のデータベースが登録される記憶装置であり、ＲＯＭ(Read  Only  Memory)、ＨＤＤ、フラッシュメモリ等により実現される。
【０１１２】
出力ＩＦ１０６０は、モニタやプリンタといった各種の情報を出力する出力装置１０１０に対し、出力対象となる情報を送信するためのインタフェースであり、例えば、ＵＳＢ（Universal  Serial  Bus）やＤＶＩ（Digital  Visual  Interface）、ＨＤＭＩ（登録商標）（High  Definition  Multimedia  Interface）といった規格のコネクタにより実現される。また、入力ＩＦ１０７０は、マウス、キーボード、およびスキャナ等といった各種の入力装置１０２０から情報を受信するためのインタフェースであり、例えば、ＵＳＢ等により実現される。
【０１１３】
なお、入力装置１０２０は、例えば、ＣＤ（Compact  Disc）、ＤＶＤ（Digital  Versatile  Disc）、ＰＤ（Phase  change  rewritable  Disk）等の光学記録媒体、ＭＯ（Magneto-Optical  disk）等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等から情報を読み出す装置であってもよい。また、入力装置１０２０は、ＵＳＢメモリ等の外付け記憶媒体であってもよい。
【０１１４】
ネットワークＩＦ１０８０は、ネットワークＮを介して他の機器からデータを受信して演算装置１０３０へ送り、また、ネットワークＮを介して演算装置１０３０が生成したデータを他の機器へ送信する。
【０１１５】
演算装置１０３０は、出力ＩＦ１０６０や入力ＩＦ１０７０を介して、出力装置１０１０や入力装置１０２０の制御を行う。例えば、演算装置１０３０は、入力装置１０２０や二次記憶装置１０５０からプログラムを一次記憶装置１０４０上にロードし、ロードしたプログラムを実行する。
【０１１６】
例えば、コンピュータ１０００が推定装置１００として機能する場合、コンピュータ１０００の演算装置１０３０は、一次記憶装置１０４０上にロードされたプログラムを実行することにより、制御部１３０の機能を実現する。
【０１１７】
〔６．効果〕
上述してきたように、実施形態に係る推定装置１００は、第１取得部１３２と、推定部１３５とを有する。第１取得部１３２は、ユーザの発話に由来する検索要求に含まれる第１のキーワードを取得する。推定部１３５は、第１取得部１３２によって取得された第１のキーワードに基づいて、検索結果の種類に関する第１のドメインであって、ユーザが意図する第１のドメインを推定する。
【０１１８】
また、実施形態に係る推定装置１００は、検索要求が、検索結果の種類に関する第２のドメインを示す第２のキーワードを含まない場合に、検索要求に対応する第２のドメインが明確でないと判定する判定部を有する。また、実施形態に係る推定装置１００において、推定部１３５は、判定部１３４によって検索要求に対応する第２のドメインが明確でないと判定された場合に、ユーザが意図する第１のドメインを推定する。
【０１１９】
また、実施形態に係る推定装置１００は、判定部１３４によって検索要求に対応する第２のドメインが明確でないと判定された場合に、ユーザが意図する第１のドメインを確認する確認部１３６を有する。
【０１２０】
また、実施形態に係る推定装置１００において、確認部１３６は、第１のキーワードが検索結果の種類に関する第３のドメインに対応するという確信の度合いを示す確信度が所定の条件を満たす場合に、ユーザが意図する第１のドメインを確認する。
【０１２１】
また、実施形態に係る推定装置１００は、ユーザの確認に対する応答に含まれる第１のドメインと、第１取得部１３２によって取得された第１のキーワードとに基づいて、検索要求に対応する検索結果を提供する提供部１３７を有する。
【０１２２】
また、実施形態に係る推定装置１００は、ユーザの確認に対する応答に含まれる第１のドメインと、第１のキーワードとを含む訓練データを用いて、検索結果の種類に関するドメインであって、検索要求に含まれるキーワードに対応するドメインを推定するためのモデルを生成する生成部１３８を有する。
【０１２３】
また、実施形態に係る推定装置１００において、第１取得部１３２は、訓練データとして、ユーザの発話に由来する検索要求に対応する検索結果を提供するサービスと異なるサービスにおけるデータであって、検索結果の種類に関するドメインと検索要求に含まれるキーワードとの関連性を示すデータを取得する。
【０１２４】
上述した各処理により、推定装置１００は、ユーザの検索意図に応じた音声検索サービスを提供することができる。
【０１２５】
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【０１２６】
また、上述した推定装置１００は、複数のサーバコンピュータで実現してもよく、また、機能によっては外部のプラットフォーム等をＡＰＩ（Application  Programming  Interface）やネットワークコンピューティングなどで呼び出して実現するなど、構成は柔軟に変更できる。
【０１２７】
また、上述してきた「部（section、module、unit）」は、「手段」や「回路」などに読み替えることができる。例えば、受信部は、受信手段や受信回路に読み替えることができる。
【符号の説明】
【０１２８】
１  ネットワークシステム
１０  端末装置
１００  推定装置
１２０  記憶部
１２１  検索履歴情報記憶部
１２２  キーワード情報記憶部
１２３  確認応答データ記憶部
１２４  訓練データ記憶部
１２５  ドメイン推定モデル記憶部
１２６  確信度情報記憶部
１３０  制御部
１３１  受信部
１３２  第１取得部
１３３  第２取得部
１３４  判定部
１３５  推定部
１３６  確認部
１３７  提供部
１３８  生成部
１３９  出力部
【図１】
2020016960.tif 000003
【図２】
2020016960.tif 000004
【図３】
2020016960.tif 000005
【図４】
2020016960.tif 000006
【図５】
2020016960.tif 000007
【図６】
2020016960.tif 000008
【図７】
2020016960.tif 000009
【図８】
2020016960.tif 000010
【図９】
2020016960.tif 000011
【図１０】
2020016960.tif 000012
【図１１】
2020016960.tif 000013