JP7354072B2 - 情報処理装置、情報処理方法、及び情報処理プログラム - Google Patents

情報処理装置、情報処理方法、及び情報処理プログラム Download PDF

Info

Publication number
JP7354072B2
JP7354072B2 JP2020155831A JP2020155831A JP7354072B2 JP 7354072 B2 JP7354072 B2 JP 7354072B2 JP 2020155831 A JP2020155831 A JP 2020155831A JP 2020155831 A JP2020155831 A JP 2020155831A JP 7354072 B2 JP7354072 B2 JP 7354072B2
Authority
JP
Japan
Prior art keywords
query
user
information
input
information processing
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
JP2020155831A
Other languages
English (en)
Other versions
JP2022049571A (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.)
Yahoo Japan Corp
Original Assignee
Yahoo Japan 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 Yahoo Japan Corp filed Critical Yahoo Japan Corp
Priority to JP2020155831A priority Critical patent/JP7354072B2/ja
Publication of JP2022049571A publication Critical patent/JP2022049571A/ja
Application granted granted Critical
Publication of JP7354072B2 publication Critical patent/JP7354072B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。
ユーザが入力した文字列であるクエリに対して様々の情報の検索サービスを行うための技術が提供されている。そのような検索サービスにおいては、ユーザが入力したクエリに誤記が含まれる場合等において、その誤記を変換した上で検索結果をユーザに提供する技術が提供されている(例えば特許文献1等)。
特許第6529456号
しかしながら、上記の従来技術では、ユーザが望んだ検索となっていない場合がある。例えば、従来技術では第1文字列とその第1文字列の誤記として入力され得る第2文字列とを対応付けた辞書を用いて、文字列を変換しているに過ぎず、ユーザが第2文字列を用いて検索を行うことを望んでいる場合には対応することが難しい。そのため、ユーザが入力したクエリの変更要否を適切に判定することが望まれている。
本願は、上記に鑑みてなされたものであって、ユーザが入力したクエリの変更要否を適切に判定する情報処理装置、情報処理方法、及び情報処理プログラムを提供することを目的とする。
本願に係る情報処理装置は、第1ユーザが入力したクエリである第1クエリと、前記第1クエリの入力に関するコンテキストを示すコンテキスト情報である第1コンテキスト情報を取得する取得部と、過去に第2ユーザにより入力されたクエリである第2クエリ及び前記第2クエリに対応する前記コンテキスト情報である第2コンテキスト情報を含む履歴情報と、前記第1クエリと、前記第1コンテキスト情報とに基づいて、前記第1クエリの表記に変更が必要か否かを判定する判定部と、を備えたことを特徴とする。
実施形態の一態様によれば、ユーザが入力したクエリの変更要否を適切に判定することができるという効果を奏する。
図1は、実施形態に係る情報処理システムによる処理の一例を示す図である。 図2は、実施形態に係る情報処理装置の構成例を示す図である。 図3は、実施形態に係る学習用データ記憶部の一例を示す図である。 図4は、実施形態に係るモデル情報記憶部の一例を示す図である。 図5は、実施形態に係る端末装置の構成例を示す図である。 図6は、実施形態に係る情報処理装置による処理の一例を示すフローチャートである。 図7は、実施形態に係る端末装置による処理の一例を示すフローチャートである。 図8は、ハードウェア構成の一例を示す図である。
以下に、本願に係る情報処理装置、情報処理方法、及び情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法、及び情報処理プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
(実施形態)
〔1.情報処理〕
図1を用いて、実施形態に係る情報処理の一例について説明する。図1は、実施形態に係る情報処理システムによる処理の一例を示す図である。図1では、情報処理装置100は、ユーザが入力したクエリ(文字列)と、クエリの入力に関するコンテキストを示すコンテキスト情報に基づいて、クエリに変更が必要か否かを判定する。なお、コンテキストについての詳細は後述するが、コンテキストとは、クエリの入力に関する様々な情報を含む概念であり、例えばクエリが入力された際の環境(日時、天候等)やクエリを入力したユーザ等に関連する状況を示す情報を含む。すなわち、コンテキストは、クエリの入力に関するものであれば、クエリを入力したユーザに限らず、様々な状況を示す情報であってもよい。
まず、情報処理システム1の構成について説明する。図1に示すように、情報処理システム1は、端末装置10と、情報処理装置100とが含まれる。端末装置10と、情報処理装置100とは図示しない所定の通信網を介して、有線または無線により通信可能に接続される。なお、図1に示した情報処理システム1には、複数台の端末装置10や、複数台の情報処理装置100が含まれてもよい。
情報処理装置100は、ユーザが入力したクエリであるクエリと、クエリの入力に関するコンテキストを示すコンテキスト情報に基づいて、クエリの変更要否を判定する情報処理装置である。以下では、変更要否の判定対象となるクエリを第1クエリと記載し、モデルの生成に用いられるクエリを第2クエリと記載する場合がある。また、第1クエリを入力したユーザを第1ユーザと記載し、第2クエリを入力したユーザを第2ユーザと記載する場合があるが、第1ユーザは第2ユーザでもあってもよい。また、第1クエリの入力に関するコンテキスト情報を第1コンテキスト情報と記載し、第2クエリの入力に関するコンテキスト情報を第2コンテキスト情報と記載する場合がある。
図1では、情報処理装置100は、第1クエリを入力した第1ユーザが利用する端末装置10に、検索結果を提供する検索装置としても機能する。例えば、情報処理装置100は、ウェブページの対象として検索処理を実行する検索エンジンとしての機能を有する。なお、変更要否を判定し用いるクエリを確定した後の処理、すなわちクエリを用いて検索を行う点は通常の検索エンジンと同様であるため、適宜詳細な説明を省略する。例えば、情報処理装置100は、クエリを用いた検索処理の対象となる対象情報群であるウェブページ群が、インデックスされて格納されたデータベースを有し、そのデータベースの情報を対象として検索処理を実行する。なお、検索される対象は、ウェブページに限らず、クエリを用いて検索可能であれば、どのような情報であってもよく、例えば電子商取引における商品等の取引対象等、様々な検索対象であってもよい。
図1では情報処理装置100が検索装置としても機能する、すなわち情報処理装置100と検索装置とが一体である場合を説明するが、情報処理装置100と検索装置とは別体であってもよい。この場合、情報処理システム1には、クエリを対象とした検索処理を実行し、検索結果を提供する検索サービスを提供する検索装置が含まれる。例えば、情報処理装置100は、ユーザが入力したクエリ、または変更後のクエリを検索装置へ送信し、検索装置から検索結果を受信し、その検索結果をユーザが利用する端末装置10に送信する。なお、検索装置が直接ユーザが利用する端末装置10へ検索結果を送信してもよい。
端末装置10は、ユーザによって利用されるデバイス(コンピュータ)である。端末装置10は、ユーザによる操作を受け付ける。端末装置10は、ユーザによるクエリの入力を受け付ける。端末装置10は、情報処理装置100から提供された検索結果を表示する。
また、端末装置10は、加速度センサやジャイロセンサ等を有し、ユーザの運動状態を検知する。また、端末装置10は、GPSセンサ等の位置センサを有し、ユーザの位置情報を検知する。また、端末装置10は、温度センサや気圧センサ等の種々の機能を有し、温度や気圧等のユーザの置かれている環境情報を検知し、取得可能であってもよい。また、端末装置10は、心拍センサ等の種々の機能を有し、ユーザの生体情報を検知し、取得可能であってもよい。例えば、端末装置10を利用するユーザは、端末装置10と通信可能なウェアラブルデバイスを身に付けることにより、端末装置10によりユーザ自身のコンテキスト情報を取得可能としてもよい。例えば、端末装置10を利用するユーザは、端末装置10と通信可能なリストバンド型のウェアラブルデバイスを身に付けることにより、端末装置10によりユーザ自身の心拍(脈拍)に関する情報を端末装置10が取得可能としてもよい。また、端末装置10は、画像センサを有してもよい。なお、上記は一例であり、端末装置10は、様々な情報を検知するセンサを有してもよい。
また、以下では、端末装置10をユーザと表記する場合がある。すなわち、以下では、ユーザを端末装置10と読み替えることもできる。なお、端末装置10は、例えば、スマートフォンや、タブレット型端末や、ノート型PC(Personal Computer)や、デスクトップPCや、携帯電話機や、PDA(Personal Digital Assistant)等により実現される。図1の例では、端末装置10がタッチパネル機能を有するスマートフォンである場合を示す。
以下、図1を用いて、情報処理の一例を説明する。図1では、ユーザがユーザID「U1」により識別されるユーザ(以下、「ユーザU1」とする場合がある)である場合を示す。
まず、モデルの学習処理について説明する。情報処理装置100は、クエリの変更要否を判定する判定モデルの学習に用いる学習用データ群DS1を取得する(ステップS11)。学習用データ群DS1には、過去に第2ユーザにより入力されたクエリである第2クエリ及び第2クエリに対応する第2コンテキスト情報との組合せと、その第2クエリに変更が必要か否かを示す正解データとのセットが複数含まれる。例えば、「正解データ」は、クエリの変更が必要であった場合「1」が格納され、クエリの変更が必要ではなかった場合「0」となる機械学習に用いる正解情報である。
例えば、クエリQE1は、対応するコンテキスト情報がコンテキスト情報CT1であり、正解データRT1が対応付けられている。クエリQE1は、具体的な文字列である。また、例えば、クエリQE1に変更が必要であった場合、正解データRT1は「1」であり、クエリQE1に変更が必要なかった場合、正解データRT1は「0」である。
コンテキスト情報CT1は、クエリQE1が入力された際の環境やクエリQE1を入力したユーザ等に関連する各種情報が含まれる。このように、コンテキストは、クエリが入力された際の環境やクエリを入力したユーザ等に関連する状況を意味する。コンテキストは、クエリが入力された際の日時、天候、気温、湿度等を示す情報であってもよい。また、コンテキストは、ユーザの属性、ユーザの現在位置、ユーザが置かれた物理環境、ユーザが置かれた社会環境、ユーザの運動状態、および、推定されるユーザの感情、心理状態等の様々なユーザの状況を示す情報であってもよい。例えば、コンテキストは、クエリ入力時のユーザに関連する状況、クエリを入力したユーザの年齢、性別、職業等のデモグラフィック属性またはサイコグラフィック属性、ユーザが過去に入力したクエリの変更要否の傾向等様々な情報が含まれる。例えば、コンテキスト情報には、ユーザが入力ミスをしやすいユーザであるか否かを示す情報が含まれてもよい。この場合、ユーザが過去に入力したクエリの変更が必要であった回数が所定の回数以上である場合、コンテキスト情報には、そのユーザが入力ミスが多いユーザであることを示す情報が含まれる。また、ユーザが過去に入力したクエリの変更が必要であった回数が所定の回数未満である場合、コンテキスト情報には、そのユーザが入力ミスが少ないユーザであることを示す情報が含まれる。
図1の例では、コンテキスト情報として、クエリを入力時にユーザが運動状態であるか否かを示す情報、クエリの入力に用いた端末装置10の仕様(機種や入力形式等)、ユーザの属性を用いる場合を一例として説明する。入力形式には、例えばフリック入力、キーボード入力等のユーザがクエリを入力する際の入力インターフェイスを示す。例えば、コンテキスト情報CT1には、クエリQE1を入力したユーザが運動状態であるか否かを示す情報、クエリQE1の入力に用いられた端末装置10、クエリQE1を入力したユーザの属性を示す情報が含まれる。ユーザが運動状態であるか否かを示す情報は、例えばセンサにより検知されたユーザの速度情報や加速度情報等であってもよい。なお、上記は一例であり、コンテキスト情報には、上記に限らず、例えば、クエリが入力された時点に対応する時間帯を示す情報等、様々な情報が含まれてもよい。
そして、情報処理装置100は、学習用データ群DS1を用いて、クエリとコンテキスト情報とを入力として、そのクエリの変更要否を示すスコアを出力する判定モデルであるモデルM1を学習する(ステップS12)。図1では、情報処理装置100は、クエリとコンテキスト情報とを含む入力用データINの入力に応じて、入力用データINに含まれるクエリの変更要否の度合いを示すスコアを出力するモデルM1を学習する。例えば、情報処理装置100は、ニューラルネットワークのネットワーク構成を有するモデルM1を学習する。なお、モデルM1のネットワーク構成は、クエリの変更要否を示すスコアを出力可能であれば、どのようなネットワーク構成であってもよい。
情報処理装置100は、クエリQE1及びコンテキスト情報CT1が入力された場合に、正解データRT1が出力されるようにモデルM1の重み等のパラメータを学習する。例えば、正解データRT1が「1」の場合、情報処理装置100は、クエリQE1及びコンテキスト情報CT1が入力された場合に、スコア「1」が出力されるようにモデルM1の重み等のパラメータを学習する。また、例えば、正解データRT1が「0」の場合、情報処理装置100は、クエリQE1及びコンテキスト情報CT1が入力された場合に、スコア「0」が出力されるようにモデルM1の重み等のパラメータを学習する。情報処理装置100は、モデルM1のネットワーク構成や学習したパラメータ等を含むモデルデータMTD1を生成する。これにより、情報処理装置100は、判定モデルであるモデルM1を生成する。モデルM1の学習処理には、任意の手法が採用可能である。
例えば、情報処理装置100は、バックプロパゲーション(誤差逆伝播法)等の手法により学習処理を行う。例えば、情報処理装置100は、学習処理により、ノード間で値が伝達する際に考慮される重み(すなわち、接続係数)の値を調整する。このように、情報処理装置100は、モデルM1における出力(スコア)と、入力に対応する正解(正解データ)との誤差が少なくなるようにパラメータ(接続係数)を補正するバックプロパゲーション等の処理によりモデルM1を学習する。例えば、情報処理装置100は、所定の損失(ロス)関数を最小化するようにバックプロパゲーション等の処理を行うことによりモデルM1を生成する。これにより、情報処理装置100は、モデルM1のパラメータを学習する学習処理を行うことができる。
ここから、クエリの変更要否の判定について説明する。端末装置10は、ユーザU1による「XXXX」というクエリの入力を受け付ける(ステップS13)。なお、「XXXX」は具体的な文字列であるものとする。図1に示す例において、ユーザU1は、端末装置10の画面に表示された検索サイトのページ中の検索窓にクエリ「XXXX」を入力し、検索実行のボタンを押下する。
そして、端末装置10は、クエリ「XXXX」と、ユーザU1のコンテキスト情報を情報処理装置100へ送信する(ステップS14)。端末装置10は、クエリ「XXXX」とともに、端末装置10の仕様、ユーザU1がクエリ「XXXX」の入力時に運動状態であったか否かを示す情報、ユーザU1が利用する端末装置10の仕様を示す情報、ユーザU1の属性を示す情報等を含むコンテキスト情報を情報処理装置100へ送信する。
端末装置10からクエリ「XXXX」及びユーザU1に対応するコンテキスト情報を受信した情報処理装置100は、受信したクエリ「XXXX」及びユーザU1に対応するコンテキスト情報をモデルM1に入力する(ステップS15)。クエリ「XXXX」及びユーザU1に対応するコンテキスト情報が入力されたモデルM1は、スコアを出力する(ステップS16)。図1の例では、モデルM1は、出力OTに示すようにスコア「0.7」を出力する。
そして、情報処理装置100は、モデルM1が出力したスコアと閾値との比較に基づいて、クエリ「XXXX」の変更要否を判定する(ステップS17)。図1の例では、閾値は「0.6」であるものとする。なお、情報処理装置100は、外部装置から取得してもよいし、記憶部120(図2参照)に記憶した閾値を用いてもよい。図1では、情報処理装置100は、判定結果RSに示すように、モデルM1が出力したスコア「0.7」が閾値「0.6」以上であるため、クエリ「XXXX」に変更が必要であると判定する。なお、情報処理装置100は、モデルM1が出力したスコアが閾値未満である場合、クエリの表記に変更が必要ではないと判定する。
例えば、情報処理装置100は、変更が必要であると判定したクエリを、所定の情報を用いて変更する変更処理を実行する。例えば、情報処理装置100は、文字列(クエリ)と、その文字列が変更要と判定された場合に、変更先となる文字列(変換後クエリ)とが対応付けられた変換用リストを用いて、変更処理を実行する。図1の例では、変換用リストは、クエリ「XXXX」に、変換後クエリ「YYYY」が対応付けられている。クエリ「XXXX」と変換後クエリ「YYYY」とは、読みは同じであるが、漢字の表記が異なる文字列であってもよい。情報処理装置100は、クエリ「XXXX」を変換後クエリ「YYYY」に変更する。そして、情報処理装置100は、変換後クエリ「YYYY」を用いて、検索処理を実行する。
そして、情報処理装置100は、変換後クエリ「YYYY」の検索結果をユーザU1が利用する端末装置10へ提供する(ステップS18)。図1の例では、情報処理装置100は、クエリ「XXXX」ではなく変換後クエリ「YYYY」での検索結果であることを通知する情報と共に、「YYYY」の検索結果を表示するコンテンツを端末装置10へ提供してもよい。なお、情報処理装置100が行う情報提供が上記限らず、様々な態様であってもよい。例えば、情報処理装置100は、検索結果を提供する前に、クエリ「XXXX」を変換後クエリ「YYYY」に変更するか否かをユーザU1に確認する情報を提供してもよい。この場合、情報処理装置100は、ユーザU1が選択したクエリに対応する検索結果を端末装置10へ提供してもよい。また、情報処理装置100は、変換後クエリ「YYYY」の検索結果とともに、クエリ「XXXX」の検索結果を提供してもよい。
上述したように、情報処理装置100は、ユーザが入力したクエリを、コンテキストに基づいて判定することにより、ユーザが入力したクエリの変更要否を適切に判定することができる。例えば、情報処理装置100は、日本語のように、同じ読みであるが、漢字、仮名、カタカナの組合せによって、異なる意味に対応する文字列があるような言語において、ユーザが入力したクエリの変更要否を適切に判定することができる。すなわち、情報処理装置100は、同じクエリであっても、コンテキストに応じてそのクエリに変更が必要であるか否かを適切に判定することで、あるクエリが入力された場合に一律に変更するのではなく、必要と判定した場合のみクエリを変更することで、適切に変更を行うことができる。
〔1-1.判定〕
なお、上記の例では、判定モデルを用いて、クエリの変更要否を判定する場合を示したが、情報処理装置100は、判定モデルを用いる場合に限らず、例えばルールベースにより、クエリの変更要否を判定してもよい。例えば、情報処理装置100は、クエリに対応するコンテキスト情報がルールベースに規定されたルールに該当する場合、そのクエリに変更が必要であると判定してもよい。この場合、情報処理装置100は、ルールの一覧リストと、どのルールに該当する場合にクエリの変更が必要と判定するかの判定条件とを記憶部120に記憶し、一覧リスト中の各ルールと、コンテキスト情報との比較し、判定条件を満たすか否かにより、クエリの変更要否を判定してもよい。例えば、情報処理装置100は、クエリを入力したユーザが運動中であり、そのユーザが過去に入力したクエリの変更が必要であった回数が所定の回数以上である場合、クエリの表記の変更が必要であると判定する。
〔1-2.正解データの収集〕
なお、学習用データに含まれる正解データは、種々の態様により収集されてもよい。例えば、正解データは、第2クエリに対応する検索結果に対する第2ユーザの行動に基づいて収集されてもよい。
例えば、情報処理装置100は、第2クエリを入力した第2ユーザに対して、第2クエリを変更した変更後のクエリに対する検索結果を提供し、その検索結果を第2ユーザが選択した場合、第2クエリには変更が必要であったとの正解データを第2クエリと第2コンテキスト情報との組合せに対応付ける。
例えば、情報処理装置100は、第2クエリを入力した第2ユーザに対して、第2クエリに対する検索結果を提供し、その検索結果を第2ユーザが選択した場合、第2クエリには変更が不要であったとの正解データを第2クエリと第2コンテキスト情報との組合せに対応付ける。
例えば、情報処理装置100は、第2クエリを入力した第2ユーザに対して、第2クエリに対する検索結果(通常検索結果)、及び第2クエリを変更した変更後のクエリに対する検索結果(変更検索結果)を提供してもよい。この場合、第2ユーザが通常検索結果を第2ユーザが選択した場合、第2クエリには変更が不要であったとの正解データを第2クエリと第2コンテキスト情報との組合せに対応付け、変更検索結果を第2ユーザが選択した場合、第2クエリには変更が不要であったとの正解データを第2クエリと第2コンテキスト情報との組合せに対応付ける。なお、上記は一例であり、情報処理装置100は、種々の情報を適宜用いて正解データを収集してもよいし、外部装置から正解データを取得してもよい。
〔2.情報処理装置の構成〕
次に、図2を用いて、実施形態に係る情報処理装置100の構成について説明する。図2は、実施形態に係る情報処理装置100の構成例を示す図である。図2に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130とを有する。なお、情報処理装置100は、情報処理装置100の管理者等から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示するための表示部(例えば、液晶ディスプレイ等)を有してもよい。
(通信部110)
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部110は、所定の通信網(ネットワーク)と有線または無線で接続され、端末装置10との間で情報の送受信を行う。
(記憶部120)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。実施形態に係る記憶部120は、図2に示すように、学習用データ記憶部121と、モデル情報記憶部122とを有する。
なお、記憶部120は、モデルが出力するスコアとの比較に用いる閾値の情報やクエリの表記に変更が必要と判定した場合に、クエリの表記の変換に用いる一覧表である変換用リストを記憶する。例えば、変換用リストは、第1文字列と、その第1文字列の誤記として入力され得る第2文字列とを対応付けた一覧表である。図1の例では、変換用リストは、第1文字列「YYYY」に、その誤記として入力され得る第2文字列「XXXX」、「ZZZZ」等が対応付けられた一覧表である。なお、変換用リストは、情報処理装置100が生成してもよいし、変換用リストを生成する外部装置から情報処理装置100が取得してもよい。
(学習用データ記憶部121)
実施形態に係る学習用データ記憶部121は、学習に用いるデータに関する各種情報を記憶する。学習用データ記憶部121は、学習に用いる学習データ(データセット)を記憶する。図3は、本開示の実施形態に係る学習用データ記憶部の一例を示す図である。例えば、学習用データ記憶部121は、学習に用いる学習データや精度評価(測定)に用いる評価用データ等の種々のデータに関する各種情報を記憶する。図3に、実施形態に係る学習用データ記憶部121の一例を示す。図3の例では、学習用データ記憶部121は、「データセットID」、「データID」、「クエリ」、「コンテキスト情報」、「正解データ」といった項目が含まれる。
「データセットID」は、データセットを識別するための識別情報を示す。「データID」は、各学習用データを識別するための識別情報を示す。
「クエリ」は、クエリを示す。「クエリ」は、モデルの入力として用いられるクエリ(文字列)である入力用データを示す。図1の例では「クエリ」を「QE1」等の抽象的な符号で図示するが、具体的な文字列であるものとする。
また、「コンテキスト情報」は、対応するクエリを入力したユーザのコンテキスを示すコンテキスト情報である。図1の例では「コンテキスト情報」を「CT1」等の抽象的な符号で図示するが、クエリの入力に関するコンテキストを示す具体的な情報であるものとする。
「正解データ」は、対応するクエリ及びコンテキス情報の組合せに対応する正解を示す。図3の例では、「正解データ」は、クエリ及びコンテキス情報の組合せの場合にそのクエリの表記に変更が必要であるか否かを示す。「正解データ」は、クエリの表記に変更が必要である場合「1」が格納され、クエリの表記に変更が必要ではない場合「0」が格納されてもよい。
図3の例では、データセットID「DS1」により識別されるデータセット(データセットDS1)には、データID「DID1」、「DID2」、「DID3」等により識別される複数の学習用データが含まれることを示す。データID「DID1」により識別される学習用データに含まれるクエリQE1とコンテキスト情報CT1との組合せは、正解データが「RT1」であることを示す。
なお、学習用データ記憶部121は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、学習用データ記憶部121は、各データが学習データであるか、評価用データであるか等を特定可能に記憶してもよい。例えば、学習用データ記憶部121は、学習データと評価用データとを区別可能に記憶する。学習用データ記憶部121は、各データが学習データや評価用データであるかを識別する情報を記憶してもよい。情報処理装置100は、学習データとして用いられるクエリ及びコンテキス情報の組合せと正解データとに基づいて、モデルを学習する。情報処理装置100は、評価用データとして用いられるクエリ及びコンテキス情報の組合せと正解データとに基づいて、モデルの精度を測定する。
(モデル情報記憶部122)
実施形態に係るモデル情報記憶部122は、モデルに関する情報を記憶する。例えば、モデル情報記憶部122は、学習処理により学習(生成)された学習済みモデル(モデル)の情報(モデルデータ)を記憶する。図4は、本開示の第1の実施形態に係るモデル情報記憶部の一例を示す図である。図4に、第1の実施形態に係るモデル情報記憶部122の一例を示す。図4に示した例では、モデル情報記憶部122は、「モデルID」、「用途」、「モデルデータ」といった項目が含まれる。
「モデルID」は、モデルを識別するための識別情報を示す。「用途」は、対応するモデルの用途を示す。「モデルデータ」は、モデルのデータを示す。図4等では「モデルデータ」に「MDT1」といった概念的な情報が格納される例を示したが、実際には、モデルの構成(ネットワーク構成)の情報やパラメータに関する情報等、そのモデルを構成する種々の情報が含まれる。例えば、「モデルデータ」には、ネットワークの各層におけるノードと、各ノードが採用する関数と、ノードの接続関係と、ノード間の接続に対して設定される接続係数とを含む情報が含まれる。
図4に示す例では、モデルID「M1」により識別されるモデル(モデルM1)は、用途が「変更要否判定」であることを示す。すなわち、モデルM1は、入力されたクエリの表記に変更が必要であるか否かを示す情報(スコア)を出力するモデルであることを示す。また、モデルM1のモデルデータは、モデルデータMDT1であることを示す。
なお、モデル情報記憶部122は、上記に限らず、目的に応じて種々の情報を記憶してもよい。
(制御部130)
図2の説明に戻って、制御部130は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、情報処理装置100内部の記憶装置に記憶されている各種プログラム(情報処理プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部130は、コントローラであり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
図2に示すように、制御部130は、取得部131と、学習部132と、判定部133と、処理部134と、提供部135とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、図2に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部130が有する各処理部の接続関係は、図2に示した接続関係に限られず、他の接続関係であってもよい。
(取得部131)
取得部131は、記憶部120から各種の情報を取得する。取得部131は、学習用データ記憶部121から学習に用いるデータを取得する。取得部131は、モデル情報記憶部122からモデルの情報を取得する。
取得部131は、第1ユーザが入力したクエリである第1クエリと、第1クエリの入力に関するコンテキストを示すコンテキスト情報である第1コンテキスト情報を取得する。取得部131は、履歴情報に基づいて学習されたモデルであって、クエリと当該クエリに対応するコンテキスト情報との入力に応じて、当該クエリの表記に変更が必要か否かを示すスコアを出力するモデルを取得する。
取得部131は、第1クエリと、第1クエリの入力時のコンテキストを示す第1コンテキスト情報を取得する。取得部131は、第1クエリと、第1クエリの入力時に第1ユーザが運動状態であるかを示す第1コンテキスト情報を取得する。取得部131は、第1クエリと、第1クエリの入力に用いた端末装置10の仕様を示す第1コンテキスト情報を取得する。取得部131は、第1クエリと、第1クエリの入力時の時間帯を示す第1コンテキスト情報を取得する。取得部131は、第1クエリと、第1ユーザの属性を示す第1コンテキスト情報を取得する。取得部131は、第1クエリと、第1ユーザが過去に入力したクエリの表記の変更要否の傾向を示す第1コンテキスト情報を取得する。
取得部131は、通信部110を介して、端末装置10から情報を受信する。取得部131は、ユーザが入力したクエリと、クエリの入力に関するコンテキスト情報を端末装置10から受信する。
取得部131は、端末装置10から学習用データを取得してもよい。取得部131は、端末装置10において、変更要否判定処理の対象となったクエリと、そのクエリの入力に関するコンテキスト情報と、クエリの表記が変更されたか否かを示す情報(正解データ)とを学習用データとして端末装置10から収集する。
(学習部132)
学習部132は、モデルを学習する。学習部132は、外部の情報処理装置からの情報や記憶部120に記憶された情報に基づいて、各種情報を学習する。学習部132は、学習用データ記憶部121に記憶された情報に基づいて、各種情報を学習する。学習部132は、学習により生成したモデルをモデル情報記憶部122に格納する。
学習部132は、第2クエリと第2コンテキスト情報との各組合せと、各組合せの第2クエリの表記に変更が必要であったか否かを示す正解データとを用いた機械学習の処理により、モデルを学習する。学習部132は、第2クエリに対応する検索結果に対する第2ユーザの行動に基づく正解データを用いて、モデルを学習する。
学習部132は、モデル(ネットワーク)のパラメータを学習する。学習部132は、接続されたノード間の接続係数(重み)等のパラメータを学習する。学習部132は、種々の機械学習に関する技術を用いて、モデルを学習する。学習部132は、モデルに入力するデータと、そのデータが入力された場合の出力を示す正解データとを用いて行う学習処理、すなわち教師有り学習の手法によりモデルのパラメータを学習する。なお、上記は一例であり、学習部132は、モデルのパラメータを学習可能であれば、どのような学習処理により、モデルのパラメータを学習してもよい。
(判定部133)
判定部133は、種々の情報を判定する。判定部133は、過去に第2ユーザにより入力されたクエリである第2クエリ及び第2クエリに対応するコンテキスト情報である第2コンテキスト情報を含む履歴情報と、第1クエリと、第1コンテキスト情報とに基づいて、第1クエリの表記に変更が必要か否かを判定する。例えば、判定部133は、モデル情報記憶部122に記憶されたモデルと、記憶部120に記憶された閾値とを用いて、クエリの変更要否を判定する。判定部133は、学習部132により学習されたモデルを用いて、第1クエリの表記に変更が必要か否かを判定する。
判定部133は、第1クエリと第1コンテキスト情報とをモデルに入力することにより、モデルが出力するスコアに基づいて、第1クエリの表記に変更が必要か否かを判定する。判定部133は、モデルが出力するスコアと閾値との比較に基づいて、第1クエリの表記に変更が必要か否かを判定する。判定部133は、モデルが出力するスコアが閾値以上である場合、第1クエリの表記に変更が必要であると判定する。判定部133は、モデルが出力するスコアが閾値未満である場合、第1クエリの表記に変更が必要ではないと判定する。
判定部133は、第1クエリの入力時の第1ユーザのコンテキストに基づいて、第1クエリの表記に変更が必要か否かを判定する。判定部133は、第1ユーザが運動状態であるか否かに基づいて、第1クエリの表記に変更が必要か否かを判定する。判定部133は、端末装置の仕様に基づいて、第1クエリの表記に変更が必要か否かを判定する。判定部133は、第1クエリの入力時の時間帯に基づいて、第1クエリの表記に変更が必要か否かを判定する。判定部133は、第1ユーザの属性に基づいて、第1クエリの表記に変更が必要か否かを判定する。判定部133は、第1ユーザの傾向に基づいて、第1クエリの表記に変更が必要か否かを判定する。
(処理部134)
処理部134は、各種の処理を実行する。処理部134は、ユーザが入力したクエリに基づく検索処理を実行する。処理部134は、判定部133によりユーザが入力したクエリに変更が不要と判定された場合、ユーザが入力したクエリを用いて検索処理を実行する。処理部134は、ユーザに提供する情報を生成する。処理部134は、ユーザに提供するコンテンツを生成する。
処理部134は、判定部133によりユーザが入力したクエリに変更が必要と判定された場合、ユーザが入力したクエリの表記を変更する。例えば、処理部134は、ユーザが入力したクエリの表記を、記憶部120に記憶された変換用リストを用いて、表記を変更した文字列を生成する。処理部134は、ユーザが入力したクエリと、記憶部120に記憶された変換用リスト中の第2文字列群とを比較し、クエリに一致した第2文字列に対応する第1文字列にクエリの表記を変換する。そして、処理部134は、変換した変換後のクエリを用いて検索処理を実行する。
(提供部135)
提供部135は、通信部110を介して、端末装置10へ情報を送信する。提供部135は、ユーザが利用する端末装置10へ検索サービスを提供する。例えば、提供部135は、処理部134による検索処理の結果である検索結果を端末装置10へ送信する。提供部135は、処理部134により生成された情報を端末装置10へ送信する。
〔3.端末装置の構成〕
次に、図5を用いて、実施形態に係る端末装置10の構成について説明する。図5は、実施形態に係る端末装置10の構成例を示す図である。図5に示すように、端末装置10は、通信部11と、記憶部12と、入力部13と、表示部14と、制御部15とを有する。なお、端末装置10は、各種情報を音声出力するための音声出力部(例えばスピーカ等)を有してもよい。
(通信部11)
通信部11は、例えば、通信回路等によって実現される。そして、通信部11は、図示しない所定の通信網と有線または無線で接続され、情報処理装置100との間で情報の送受信を行う。
(記憶部12)
記憶部12は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部12は、例えば、端末装置10にインストールされているアプリケーション(例えば情報表示アプリ等)に関する情報、例えばプログラム等を記憶する。
(入力部13)
入力部13は、ユーザからの各種操作を受け付ける。入力部13は、音声を検知する機能を有し、ユーザの発話による音声入力を受け付ける。入力部13は、音声を検知するマイクにより検知されたユーザによる発話を入力として受け付ける。
また、入力部13は、タッチパネル機能により表示面を介してユーザからの各種操作を受け付けてもよい。また、入力部13は、端末装置10に設けられたボタンや、端末装置10に接続されたキーボードやマウスからの各種操作を受け付けてもよい。
例えば、入力部13は、端末装置10の表示部14を介してユーザの指定操作等の操作を受け付ける。例えば、入力部13は、タッチパネルの機能によりユーザの操作を受け付ける受付部として機能する。この場合、入力部13と受付部151とは一体であってもよい。なお、入力部13によるユーザの操作の検知方式には、タブレット端末では主に静電容量方式が採用されるが、他の検知方式である抵抗膜方式、表面弾性波方式、赤外線方式、電磁誘導方式など、ユーザの操作を検知できタッチパネルの機能が実現できればどのような方式を採用してもよい。
(表示部14)
表示部14は、例えば液晶ディスプレイや有機EL(Electro-Luminescence)ディスプレイ等によって実現されるタブレット端末等の表示画面であり、各種情報を表示するための表示装置である。
(制御部15)
制御部15は、コントローラであり、例えば、CPUやMPU等によって、端末装置10内部の記憶部12などの記憶装置に記憶されている各種プログラムがRAMを作業領域として実行されることにより実現される。例えば、この各種プログラムは、インストールされているアプリケーション(例えばメッセージアプリ等)のプログラムが含まれる。また、制御部15は、コントローラであり、例えば、ASICやFPGA等の集積回路により実現される。
図5に示すように、制御部15は、受付部151と、送信部152と、受信部153と、処理部154とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部15の内部構成は、図5に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
(受付部151)
受付部151は、各種情報を受け付ける。例えば、受付部151は、入力部13を介してユーザによる入力を受け付ける。受付部151は、ユーザによる操作を受け付ける。受付部151は、表示部14により表示された情報に対するユーザの操作を受け付ける。受付部151は、ユーザによるクエリの入力を受け付ける。例えば、受付部151は、ユーザU1による文字列「XXXX」というクエリの入力を受け付ける。
受付部151は、表示部14に表示された情報に対するユーザの操作を受け付ける。受付部151は、表示部14に表示された検索結果に関する情報に対するユーザの操作を受け付ける。
(送信部152)
送信部152は、通信部11を介して、情報処理装置100へ情報を送信する。送信部152は、ユーザが入力したクエリを情報処理装置100へ送信する。送信部152は、コンテキスト情報を情報処理装置100へ送信する。送信部152は、受付部151によるユーザの操作の受け付けに応じて、ユーザの操作を示す情報を情報処理装置100へ送信する。送信部152は、情報処理装置100から提供された情報に対する、ユーザによる選択を示す情報を情報処理装置100へ送信する。
(受信部153)
受信部153は、通信部11を介して、情報処理装置100から情報を受信する。受信部153は、ユーザが入力したクエリに対応する検索結果を情報処理装置100から受信する。受信部153は、ユーザが入力した第1クエリと異なる第2クエリに関する検索情報を受信する。受信部153は、ユーザが入力した第1クエリと異なる第2クエリを提案する検索情報を受信する。受信部153は、第2クエリを用いて検索を行う事を推奨する検索情報を受信する。
受信部153は、ユーザが入力したクエリの表記が変更されていない場合、ユーザが入力したクエリを用いた検索結果を情報処理装置100から受信する。受信部153は、ユーザが入力したクエリの表記が変更された場合、変換後のクエリに対応する検索結果を含む情報を情報処理装置100から受信する。
(処理部154)
処理部154は、各種の処理を実行する。処理部154は、受信部153が受信した情報を表示部14に表示する。処理部154は、ユーザが入力したクエリに対応する検索結果を表示部14に表示する。
処理部154は、ユーザが入力した第1クエリと異なる第2クエリに関する検索情報を表示部14に表示する。処理部154は、ユーザが入力した第1クエリと異なる第2クエリを提案する検索情報を表示部14に表示する。処理部154は、第2クエリを用いて検索を行う事を推奨する検索情報を表示部14に表示する。
なお、上述した制御部15による各処理は、例えば、JavaScript(登録商標)などにより実現されてもよい。また、上述した表示処理が所定のアプリケーション(例えば情報表示アプリ等)により行われる場合や推論処理等の処理が専用アプリにより行われる場合、制御部15は、例えば、所定のアプリや専用アプリを制御するアプリ制御部を有してもよい。
〔4.処理フロー〕
次に、図6を用いて、実施形態に係る情報処理システム1による情報処理の手順について説明する。図6は、実施形態に係る情報処理装置による処理の一例を示すフローチャートである。
図6に示すように、情報処理装置100は、ユーザが入力したクエリと、クエリの入力に関するコンテキストを示すコンテキスト情報を取得する(ステップS101)。
情報処理装置100は、クエリと、コンテキスト情報とに基づいて、クエリの表記に変更が必要か否かを判定する(ステップS102)。例えば、情報処理装置100は、クエリと、コンテキスト情報とを判定モデル(モデルM1等)に入力し、判定モデルが出力したスコアに基づいて、クエリの表記に変更が必要か否かを判定する。また、情報処理装置100は、クエリの表記に変更要否の判定結果に基づく検索処理を行い、その検索結果をユーザが利用する端末装置10へ提供する。
次に、図7を用いて端末装置10におけるモデルを用いた推論等の処理の流れを示す。図7は、実施形態に係る端末装置による処理の一例を示すフローチャートである。
図7に示すように、端末装置10は、クエリの入力を受け付けていない場合(ステップS201:No)、クエリが入力されるまで待機する。端末装置10は、クエリの入力を受け付けた後(ステップS201:Yes)、クエリとコンテキスト情報とを送信する(ステップS202)。例えば、端末装置10は、クエリとコンテキスト情報とを情報処理装置100へ送信する。
端末装置10は、検索結果を受信する(ステップS203)。例えば、端末装置10は、クエリとコンテキスト情報との送信先である情報処理装置100から、検索結果を受信する。そして、端末装置10は、検索結果を表示する(ステップS204)。
〔5.効果〕
上述してきたように、実施形態に係る情報処理装置100は、取得部131と、判定部133とを有する。取得部131は、第1ユーザが入力したクエリである第1クエリと、第1クエリの入力に関するコンテキストを示すコンテキスト情報である第1コンテキスト情報を取得する。判定部133は、過去に第2ユーザにより入力されたクエリである第2クエリ及び第2クエリに対応するコンテキスト情報である第2コンテキスト情報を含む履歴情報と、第1クエリと、第1コンテキスト情報とに基づいて、第1クエリの表記に変更が必要か否かを判定する。
これにより、実施形態に係る情報処理装置100は、ユーザが入力したクエリと、クエリの入力に関するコンテキストを基に、クエリに変更が必要か否かを判定することにより、ユーザが入力したクエリの変更要否を適切に判定することができる。
また、実施形態に係る情報処理装置100において、取得部131は、履歴情報に基づいて学習されたモデルであって、クエリと当該クエリに対応するコンテキスト情報との入力に応じて、当該クエリの表記に変更が必要か否かを示すスコアを出力するモデルを取得する。判定部133は、第1クエリと第1コンテキスト情報とをモデルに入力することにより、モデルが出力するスコアに基づいて、第1クエリの表記に変更が必要か否かを判定する。
これにより、実施形態に係る情報処理装置100は、過去の履歴を基に学習されたモデルを用いることにより、ユーザが入力したクエリの変更要否を適切に判定することができる。
また、実施形態に係る情報処理装置100において、判定部133は、モデルが出力するスコアと閾値との比較に基づいて、第1クエリの表記に変更が必要か否かを判定する。
これにより、実施形態に係る情報処理装置100は、モデルが出力するスコアと閾値との比較により、クエリの変更要否を判定することにより、ユーザが入力したクエリの変更要否を適切に判定することができる。
また、実施形態に係る情報処理装置100において、判定部133は、モデルが出力するスコアが閾値以上である場合、第1クエリの表記に変更が必要であると判定する。
これにより、実施形態に係る情報処理装置100は、モデルが出力するスコアが閾値以上である場合、クエリに変更が必要であると判定することにより、ユーザが入力したクエリの変更要否を適切に判定することができる。
また、実施形態に係る情報処理装置100において、判定部133は、モデルが出力するスコアが閾値未満である場合、第1クエリの表記に変更が必要ではないと判定する。
これにより、実施形態に係る情報処理装置100は、モデルが出力するスコアが閾値未満である場合、クエリの表記に変更が必要ではないと判定することにより、ユーザが入力したクエリの変更要否を適切に判定することができる。
また、実施形態に係る情報処理装置100において、取得部131は、第1クエリと、第1クエリの入力時のコンテキストを示す第1コンテキスト情報を取得する。判定部133は、第1クエリの入力時の第1ユーザのコンテキストに基づいて、第1クエリの表記に変更が必要か否かを判定する。
これにより、実施形態に係る情報処理装置100は、クエリの入力時のユーザのコンテキストに基づいて、クエリの変更要否を判定することにより、ユーザが入力したクエリの変更要否を適切に判定することができる。
また、実施形態に係る情報処理装置100において、取得部131は、第1クエリと、第1クエリの入力時に第1ユーザが運動状態であるかを示す第1コンテキスト情報を取得する。判定部133は、第1ユーザが運動状態であるか否かに基づいて、第1クエリの表記に変更が必要か否かを判定する。
これにより、実施形態に係る情報処理装置100は、ユーザが運動状態であるか否かに基づいて、クエリの変更要否を判定することにより、ユーザが入力したクエリの変更要否を適切に判定することができる。
また、実施形態に係る情報処理装置100において、取得部131は、第1クエリと、第1クエリの入力に用いた端末装置10の仕様を示す第1コンテキスト情報を取得する。判定部133は、端末装置の仕様に基づいて、第1クエリの表記に変更が必要か否かを判定する。
これにより、実施形態に係る情報処理装置100は、ユーザがクエリの入力に用いた端末装置10の仕様に基づいて、クエリの変更要否を判定することにより、ユーザが入力したクエリの変更要否を適切に判定することができる。
また、実施形態に係る情報処理装置100において、取得部131は、第1クエリと、第1クエリの入力時の時間帯を示す第1コンテキスト情報を取得する。判定部133は、第1クエリの入力時の時間帯に基づいて、第1クエリの表記に変更が必要か否かを判定する。
これにより、実施形態に係る情報処理装置100は、クエリの入力時の時間帯に基づいて、クエリの変更要否を判定することにより、ユーザが入力したクエリの変更要否を適切に判定することができる。
また、実施形態に係る情報処理装置100において、取得部131は、第1クエリと、第1ユーザの属性を示す第1コンテキスト情報を取得する。判定部133は、第1ユーザの属性に基づいて、第1クエリの表記に変更が必要か否かを判定する。
これにより、実施形態に係る情報処理装置100は、ユーザの属性に基づいて、クエリの変更要否を判定することにより、ユーザが入力したクエリの変更要否を適切に判定することができる。
また、実施形態に係る情報処理装置100において、取得部131は、第1クエリと、第1ユーザが過去に入力したクエリの表記の変更要否の傾向を示す第1コンテキスト情報を取得する。判定部133は、第1ユーザの傾向に基づいて、第1クエリの表記に変更が必要か否かを判定する。
これにより、実施形態に係る情報処理装置100は、ユーザが過去に入力したクエリの表記の変更要否の傾向に基づいて、クエリの変更要否を判定することにより、ユーザが入力したクエリの変更要否を適切に判定することができる。
また、実施形態に係る情報処理装置100は、学習部132を有する。学習部132は、第2クエリと第2コンテキスト情報との各組合せと、各組合せの第2クエリの表記に変更が必要であったか否かを示す正解データとを用いた機械学習の処理により、モデルを学習する。判定部133は、学習部132により学習されたモデルを用いて、第1クエリの表記に変更が必要か否かを判定する。
これにより、実施形態に係る情報処理装置100は、第2クエリと第2コンテキスト情報との各組合せと、正解データを用いてモデルを学習し、学習したモデルを用いることにより、ユーザが入力したクエリの変更要否を適切に判定することができる。
また、実施形態に係る情報処理装置100において、学習部132は、第2クエリに対応する検索結果に対する第2ユーザの行動に基づく正解データを用いて、モデルを学習する。
これにより、実施形態に係る情報処理装置100は、ユーザの検索結果に対する行動に基づく正解データを用いることにより、適切にモデルを柔軟に学習することができる。
〔6.ハードウェア構成〕
また、上述した実施形態に係る端末装置10や情報処理装置100は、例えば図8に示すような構成のコンピュータ1000によって実現される。以下、情報処理装置100を例に挙げて説明する。図8は、ハードウェア構成の一例を示す図である。コンピュータ1000は、出力装置1010、入力装置1020と接続され、演算装置1030、一次記憶装置1040、二次記憶装置1050、出力I/F(Interface)1060、入力I/F1070、ネットワークI/F1080がバス1090により接続された形態を有する。
演算装置1030は、一次記憶装置1040や二次記憶装置1050に格納されたプログラムや入力装置1020から読み出したプログラム等に基づいて動作し、各種の処理を実行する。演算装置1030は、例えばCPU(Central Processing Unit)、MPU(Micro Processing Unit)、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等により実現される。
一次記憶装置1040は、RAM(Random Access Memory)等、演算装置1030が各種の演算に用いるデータを一次的に記憶するメモリ装置である。また、二次記憶装置1050は、演算装置1030が各種の演算に用いるデータや、各種のデータベースが登録される記憶装置であり、ROM(Read Only Memory)、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フラッシュメモリ等により実現される。二次記憶装置1050は、内蔵ストレージであってもよいし、外付けストレージであってもよい。また、二次記憶装置1050は、USBメモリやSD(Secure Digital)メモリカード等の取り外し可能な記憶媒体であってもよい。また、二次記憶装置1050は、クラウドストレージ(オンラインストレージ)やNAS(Network Attached Storage)、ファイルサーバ等であってもよい。
出力I/F1060は、ディスプレイ、プロジェクタ、及びプリンタ等といった各種の情報を出力する出力装置1010に対し、出力対象となる情報を送信するためのインターフェイスであり、例えば、USB(Universal Serial Bus)やDVI(Digital Visual Interface)、HDMI(登録商標)(High Definition Multimedia Interface)といった規格のコネクタにより実現される。また、入力I/F1070は、マウス、キーボード、キーパッド、ボタン、及びスキャナ等といった各種の入力装置1020から情報を受信するためのインターフェイスであり、例えば、USB等により実現される。
また、出力I/F1060及び入力I/F1070はそれぞれ出力装置1010及び入力装置1020と無線で接続してもよい。すなわち、出力装置1010及び入力装置1020は、ワイヤレス機器であってもよい。
また、出力装置1010及び入力装置1020は、タッチパネルのように一体化していてもよい。この場合、出力I/F1060及び入力I/F1070も、入出力I/Fとして一体化していてもよい。
なお、入力装置1020は、例えば、CD(Compact Disc)、DVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、又は半導体メモリ等から情報を読み出す装置であってもよい。
ネットワークI/F1080は、ネットワークNを介して他の機器からデータを受信して演算装置1030へ送り、また、ネットワークNを介して演算装置1030が生成したデータを他の機器へ送信する。
演算装置1030は、出力I/F1060や入力I/F1070を介して、出力装置1010や入力装置1020の制御を行う。例えば、演算装置1030は、入力装置1020や二次記憶装置1050からプログラムを一次記憶装置1040上にロードし、ロードしたプログラムを実行する。
例えば、コンピュータ1000が情報処理装置100として機能する場合、コンピュータ1000の演算装置1030は、一次記憶装置1040上にロードされたプログラムを実行することにより、制御部130の機能を実現する。また、コンピュータ1000の演算装置1030は、ネットワークI/F1080を介して他の機器から取得したプログラムを一次記憶装置1040上にロードし、ロードしたプログラムを実行してもよい。また、コンピュータ1000の演算装置1030は、ネットワークI/F1080を介して他の機器と連携し、プログラムの機能やデータ等を他の機器の他のプログラムから呼び出して利用してもよい。
〔7.その他〕
以上、本願の実施形態を説明したが、これら実施形態の内容により本発明が限定されるものではない。また、前述した構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。さらに、前述した構成要素は適宜組み合わせることが可能である。さらに、前述した実施形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換又は変更を行うことができる。
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
例えば、上述した情報処理装置100は、複数のサーバコンピュータで実現してもよく、また、機能によっては外部のプラットホーム等をAPI(Application Programming Interface)やネットワークコンピューティング等で呼び出して実現するなど、構成は柔軟に変更できる。
また、上述してきた実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。
1 情報処理システム
100 情報処理装置
120 記憶部
121 学習用データ記憶部
122 モデル情報記憶部
130 制御部
131 取得部
132 学習部
133 判定部
134 処理部
135 提供部
10 端末装置
11 通信部
12 記憶部
13 入力部
14 表示部
15 制御部
151 受付部
152 送信部
153 受信部
154 処理部

Claims (14)

  1. 第1ユーザが入力したクエリである第1クエリと、前記第1クエリの入力に関するコンテキストを示すコンテキスト情報である第1コンテキスト情報を取得する取得部と、
    過去に第2ユーザにより入力されたクエリである第2クエリ及び前記第2クエリに対応する前記コンテキスト情報である第2コンテキスト情報を含む履歴情報と、前記第1クエリと、前記第1コンテキスト情報とに基づいて、前記第1クエリの表記に変更が必要か否かを判定する判定部と、
    を備え、
    前記取得部は、
    前記履歴情報に基づいて学習されたモデルであって、クエリと当該クエリに対応する前記コンテキスト情報との入力に応じて、当該クエリの表記に変更が必要か否かを示すスコアを出力するモデルを取得し、
    前記判定部は、
    前記第1クエリと前記第1コンテキスト情報とを前記モデルに入力することにより、前記モデルが出力するスコアに基づいて、前記第1クエリの表記に変更が必要か否かを判定する
    ことを特徴とする情報処理装置。
  2. 前記判定部は、
    前記モデルが出力する前記スコアと閾値との比較に基づいて、前記第1クエリの表記に変更が必要か否かを判定する
    ことを特徴とする請求項に記載の情報処理装置。
  3. 前記判定部は、
    前記モデルが出力する前記スコアが前記閾値以上である場合、前記第1クエリの表記に変更が必要であると判定する
    ことを特徴とする請求項に記載の情報処理装置。
  4. 前記判定部は、
    前記モデルが出力する前記スコアが前記閾値未満である場合、前記第1クエリの表記に変更が必要ではないと判定する
    ことを特徴とする請求項または請求項に記載の情報処理装置。
  5. 前記取得部は、
    前記第1クエリと、前記第1クエリの入力時の前記コンテキストを示す前記第1コンテキスト情報を取得し、
    前記判定部は、
    前記第1クエリの入力時の前記第1ユーザの前記コンテキストに基づいて、前記第1クエリの表記に変更が必要か否かを判定する
    ことを特徴とする請求項1~のいずれか1項に記載の情報処理装置。
  6. 前記取得部は、
    前記第1クエリと、前記第1クエリの入力時に前記第1ユーザが運動状態であるかを示す前記第1コンテキスト情報を取得し、
    前記判定部は、
    前記第1ユーザが運動状態であるか否かに基づいて、前記第1クエリの表記に変更が必要か否かを判定する
    ことを特徴とする請求項に記載の情報処理装置。
  7. 前記取得部は、
    前記第1クエリと、前記第1クエリの入力に用いた端末装置の仕様を示す前記第1コンテキスト情報を取得し、
    前記判定部は、
    前記端末装置の仕様に基づいて、前記第1クエリの表記に変更が必要か否かを判定する
    ことを特徴とする請求項または請求項に記載の情報処理装置。
  8. 前記取得部は、
    前記第1クエリと、前記第1クエリの入力時の時間帯を示す前記第1コンテキスト情報を取得し、
    前記判定部は、
    前記第1クエリの入力時の前記時間帯に基づいて、前記第1クエリの表記に変更が必要か否かを判定する
    ことを特徴とする請求項のいずれか1項に記載の情報処理装置。
  9. 前記取得部は、
    前記第1クエリと、前記第1ユーザの属性を示す前記第1コンテキスト情報を取得し、
    前記判定部は、
    前記第1ユーザの前記属性に基づいて、前記第1クエリの表記に変更が必要か否かを判定する
    ことを特徴とする請求項1~のいずれか1項に記載の情報処理装置。
  10. 前記取得部は、
    前記第1クエリと、前記第1ユーザが過去に入力したクエリの表記の変更要否の傾向を示す前記第1コンテキスト情報を取得し、
    前記判定部は、
    前記第1ユーザの前記傾向に基づいて、前記第1クエリの表記に変更が必要か否かを判定する
    ことを特徴とする請求項1~のいずれか1項に記載の情報処理装置。
  11. 前記第2クエリと前記第2コンテキスト情報との各組合せと、前記各組合せの前記第2クエリの表記に変更が必要であったか否かを示す正解データとを用いた機械学習の処理により、前記モデルを学習する学習部、
    をさらに備え、
    前記判定部は、
    前記学習部により学習された前記モデルを用いて、前記第1クエリの表記に変更が必要か否かを判定する
    ことを特徴とする請求項1~10のいずれか1項に記載の情報処理装置。
  12. 前記学習部は、
    前記第2クエリに対応する検索結果に対する前記第2ユーザの行動に基づく前記正解データを用いて、前記モデルを学習する
    ことを特徴とする請求項11に記載の情報処理装置。
  13. コンピュータが実行する情報処理方法であって、
    第1ユーザが入力したクエリである第1クエリと、前記第1クエリの入力に関するコンテキストを示すコンテキスト情報である第1コンテキスト情報を取得する取得工程と、
    過去に第2ユーザにより入力されたクエリである第2クエリ及び前記第2クエリに対応する前記コンテキスト情報である第2コンテキスト情報を含む履歴情報と、前記第1クエリと、前記第1コンテキスト情報とに基づいて、前記第1クエリの表記に変更が必要か否かを判定する判定工程と、
    を含み、
    前記取得工程は、
    前記履歴情報に基づいて学習されたモデルであって、クエリと当該クエリに対応する前記コンテキスト情報との入力に応じて、当該クエリの表記に変更が必要か否かを示すスコアを出力するモデルを取得し、
    前記判定工程は、
    前記第1クエリと前記第1コンテキスト情報とを前記モデルに入力することにより、前記モデルが出力するスコアに基づいて、前記第1クエリの表記に変更が必要か否かを判定する
    ことを特徴とする情報処理方法。
  14. 第1ユーザが入力したクエリである第1クエリと、前記第1クエリの入力に関するコンテキストを示すコンテキスト情報である第1コンテキスト情報を取得する取得手順と、
    過去に第2ユーザにより入力されたクエリである第2クエリ及び前記第2クエリに対応する前記コンテキスト情報である第2コンテキスト情報を含む履歴情報と、前記第1クエリと、前記第1コンテキスト情報とに基づいて、前記第1クエリの表記に変更が必要か否かを判定する判定手順と、
    をコンピュータに実行させ、
    前記取得手順は、
    前記履歴情報に基づいて学習されたモデルであって、クエリと当該クエリに対応する前記コンテキスト情報との入力に応じて、当該クエリの表記に変更が必要か否かを示すスコアを出力するモデルを取得し、
    前記判定手順は、
    前記第1クエリと前記第1コンテキスト情報とを前記モデルに入力することにより、前記モデルが出力するスコアに基づいて、前記第1クエリの表記に変更が必要か否かを判定する
    ことを特徴とする情報処理プログラム。
JP2020155831A 2020-09-16 2020-09-16 情報処理装置、情報処理方法、及び情報処理プログラム Active JP7354072B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020155831A JP7354072B2 (ja) 2020-09-16 2020-09-16 情報処理装置、情報処理方法、及び情報処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020155831A JP7354072B2 (ja) 2020-09-16 2020-09-16 情報処理装置、情報処理方法、及び情報処理プログラム

Publications (2)

Publication Number Publication Date
JP2022049571A JP2022049571A (ja) 2022-03-29
JP7354072B2 true JP7354072B2 (ja) 2023-10-02

Family

ID=80853931

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020155831A Active JP7354072B2 (ja) 2020-09-16 2020-09-16 情報処理装置、情報処理方法、及び情報処理プログラム

Country Status (1)

Country Link
JP (1) JP7354072B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015106354A (ja) 2013-12-02 2015-06-08 古河インフォメーション・テクノロジー株式会社 検索サジェスト装置、検索サジェスト方法、及び、プログラム
JP6037540B1 (ja) 2015-02-27 2016-12-07 楽天株式会社 検索システム、検索方法およびプログラム
US9811592B1 (en) 2014-06-24 2017-11-07 Google Inc. Query modification based on textual resource context

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6168963B2 (ja) * 2013-10-17 2017-07-26 ヤフー株式会社 情報検索装置、情報検索方法、およびプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015106354A (ja) 2013-12-02 2015-06-08 古河インフォメーション・テクノロジー株式会社 検索サジェスト装置、検索サジェスト方法、及び、プログラム
US9811592B1 (en) 2014-06-24 2017-11-07 Google Inc. Query modification based on textual resource context
JP6037540B1 (ja) 2015-02-27 2016-12-07 楽天株式会社 検索システム、検索方法およびプログラム

Also Published As

Publication number Publication date
JP2022049571A (ja) 2022-03-29

Similar Documents

Publication Publication Date Title
US11176212B2 (en) Question answering using entity references in unstructured data
JP6843827B2 (ja) 特定のコンテキストについてのユーザニーズの予測
US20190034793A1 (en) Semantic clustering based retrieval for candidate set expansion
JP7499011B2 (ja) アプリケーションの内容分析を利用してユーザアクセスを制御する方法およびシステム
CN112292674A (zh) 为助理系统处理多模态用户输入
US20150370780A1 (en) Predictive conversion of language input
JP2017513115A (ja) ユーザーの明示宣言に基づく個別化された推薦
KR20150086441A (ko) 콘텐츠 및 상관 거리에 기반하는 사람 연결
JP6648283B2 (ja) 人工知能ベースの関連度計算を用いたノート提供方法及び装置
US20200327197A1 (en) Document-based response generation system
US20200104427A1 (en) Personalized neural query auto-completion pipeline
JP6737384B2 (ja) 情報処理装置、制御方法、およびプログラム
KR20160014675A (ko) 이미지에 대한 문맥형 대체 텍스트
US20190026282A1 (en) Method and apparatus for providing information by using degree of association between reserved word and attribute language
JP7012599B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
US11334612B2 (en) Multilevel representation learning for computer content quality
US20150356640A1 (en) Retrieving reviews based on user profile information
US20160292793A1 (en) Selection and display of a featured professional profile chosen from a social networking service
JP2013214127A (ja) サーバ装置、プログラム及び通信システム
KR101752474B1 (ko) 지식 공유 서비스 제공 장치, 방법 및 컴퓨터 프로그램
JP7354072B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
WO2016204391A1 (ko) 검색 서비스 제공 장치, 방법, 및 컴퓨터 프로그램
CN112352223A (zh) 用于输入建议的方法和系统
JP2019185620A (ja) メッセージ処理装置及びプログラム
WO2021098876A1 (zh) 一种基于知识图谱的问答方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210819

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220712

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220802

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221003

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221220

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230113

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230404

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230704

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20230712

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: 20230912

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230920

R150 Certificate of patent or registration of utility model

Ref document number: 7354072

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350