以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
なお、説明は以下の順序で行うものとする。
1.はじめに
2.構成
2.1.システム構成
2.2.機能構成
3.処理
3.1.音声データに基づくキーワードの抽出
3.2.キーワードに関連するコンテンツの抽出
3.3.コンテンツの抽出結果に応じた情報の提示
3.4.補足
4.変形例
5.ハードウェア構成
6.むすび
<<1.はじめに>>
ネットワーク技術の発展に伴い、ユーザは、各所に点在する多種多様な情報を、インターネット等のネットワークを介して閲覧することが可能となっている。特に近年では、所望のキーワードを指定することで、ネットワークを介してアクセス可能な多種多様な情報の中から、当該キーワードに関連する情報を検索して提示する所謂検索サービスも提供されている。
また、近年では、音声認識技術や自然言語処理技術の発展に伴い、ユーザは、音声を発話することで、情報処理装置や情報処理システムに対して各種情報を入力することが可能となってきている。このような所謂音声入力は、上述した検索サービスのような所謂ネットワークサービスにも適用可能となってきている。
一方で、従来のサービスでは、ユーザに対して情報を提示するためには、検索キーワードの入力等のようなユーザによる能動的な動作に応じたトリガが必要となっていた。また、従来のサービスでは、ユーザにより入力されたキーワードに依存した情報の検索が行われるのみであり、その場の状況により即した情報や、ユーザ個人の嗜好により即した情報が提供されるとは限らない。
これに対して、所謂テレビジョン放送やラジオ放送等のように、ユーザが受動的に情報を取得可能な媒体も各種存在する。しかしながら、テレビジョン放送やラジオ放送により提供される情報は、ユーザ個人に向けて発信された情報とは言い難く、個々のユーザに向けて、当該ユーザの嗜好に即した情報や、その場の状況に即した情報を提供するのが困難な場合がある。
以上のような状況を鑑み、本開示では、ユーザの能動的な操作等のような煩雑な操作を伴わずとも、その時々の状況に応じてユーザの嗜好により即した情報を提供することが可能な技術について提案する。即ち、本開示では、ユーザそれぞれが、受動的に、当該ユーザにあわせてよりパーソナル化された情報を取得することを可能とする技術の一例について提案する。
<<2.構成>>
以下に、本実施形態に係る情報処理システムの構成の一例について説明する。
<2.1.システム構成>
まず、図1を参照して、本開示の一実施形態に係る情報処理システムの概略的なシステム構成の一例について説明する。図1は、本開示の一実施形態に係る情報処理システムのシステム構成の一例を示した図である。
図1に示すように、本実施形態に係る情報処理システム1は、情報処理装置100と、端末装置200とを含む。また、情報処理システム1は、記憶部190を含んでもよい。情報処理装置100と端末装置200とは、ネットワークN11を介して互いに情報を送受信可能に接続されている。なお、ネットワークN11の種別は特に限定されない。具体的な一例として、ネットワークN11は、3G、4G、Wi−Fi(登録商標)、及びBluetooth(登録商標)等の各種規格に基づくネットワークのような、所謂無線のネットワークにより構成されていてもよい。また、ネットワークN11は、インターネット、専用線、LAN(Local Area Network)、または、WAN(Wide Area Network)等により構成されていてもよい。また、ネットワークN11は、複数のネットワークを含んでもよく、少なくとも一部が有線のネットワークとして構成されていてもよい。
端末装置200は、マイクロフォン等の集音部を備え、周囲の環境の音響を集音可能に構成されている。端末装置200は、例えば、自身の周囲に位置し、互いに会話をしているユーザUa及びUbそれぞれが発話した音声を集音する。端末装置200は、音声の集音結果に応じた音声データ(換言すると、音響データ)を、ネットワークN11を介して接続された情報処理装置100に送信する。また、端末装置200は、当該情報処理装置100から各種コンテンツを受信する。例えば、端末装置200は、情報処理装置100に送信した音声データに対する応答として、当該情報処理装置100から、当該音声データに含まれるユーザが発話したキーワードに関連するコンテンツを取得してもよい。
また、端末装置200は、各種情報をユーザに提示するための出力インタフェースを備える。具体的な一例として、端末装置200は、スピーカ等のような音響出力部を備え、当該音響出力部を介して音声や音響を出力することで、所望の情報をユーザに提示してもよい。このような構成により、例えば、端末装置200は、情報処理装置100から取得したコンテンツに応じた音声や音響を、当該音響出力部を介してユーザに提示することも可能となる。より具体的な一例として、端末装置200は、ユーザに対する提示対象となる文字情報を含む文書等のコンテンツを取得した場合には、例えば、Text to Speech等のような技術に基づき当該文字情報に応じた音声を合成し、当該音声を出力してもよい。
また、他の一例として、端末装置200は、ディスプレイ等の表示部を備え、画像(例えば、静止画像や動画像)等のような表示情報を当該表示部に表示させることで、所望の情報をユーザに提示してもよい。このような構成により、例えば、端末装置200は、情報処理装置100から取得したコンテンツに応じた表示情報を、当該表示部を介してユーザに提示することも可能となる。
情報処理装置100は、端末装置200が取得した各種情報を当該端末装置200から取得する。具体的な一例として、情報処理装置100は、端末装置200による周囲の環境の音響の集音結果に応じた音響データ(例えば、当該端末装置200の周囲に位置するユーザが発話した音声の集音結果に応じた音声データ)を、当該端末装置200から取得してもよい。
情報処理装置100は、端末装置200から取得した情報を解析することで、当該情報に含まれるキーワードを抽出する。具体的な一例といて、情報処理装置100は、端末装置200から取得した音声データ(音響データ)に対して所謂音声解析処理を施すことで当該音声データを文字情報に変換する。また、情報処理装置100は、当該文字情報に対して、形態素解析、字句解析、及び意味解析等の所謂自然言語処理技術に基づく解析処理を施すことで、当該文字情報に含まれる所望のキーワード(例えば、名詞に相当する語句)を抽出する。
情報処理装置100は、抽出したキーワードに関連するコンテンツを所望のコンテンツ群から抽出する。具体的な一例として、情報処理装置100は、各種コンテンツのデータが保持された所定の記憶部190(例えば、データベース等)から、抽出したキーワードに関連するコンテンツを抽出してもよい。また、他の一例として、情報処理装置100は、抽出したキーワードに関連するコンテンツを、所定のネットワーク内から抽出してもよい(即ち、各所に点在するコンテンツを、ネットワークを介して取得してもよい)。そして、情報処理装置100は、抽出したコンテンツを端末装置200に送信する。なお、このとき情報処理装置100は、複数のコンテンツが抽出された場合には、所定の条件に応じて、当該複数のコンテンツのうち少なくとも一部のコンテンツを端末装置200に送信してもよい。この場合には、端末装置200は、例えば、前述したように、情報処理装置100から送信された当該コンテンツに応じた情報を、所定の出力インタフェースを介してユーザに提示してもよい。
なお、上述した本実施形態に係る情報処理システム1のシステム構成はあくまで一例であり、上述した端末装置200及び情報処理装置100の各機能が実現されれば、情報処理システム1のシステム構成は必ずしも図1に示す例には限定されない。具体的な一例として、端末装置200と情報処理装置100が一体的に構成されていてもよい。即ち、この場合には、端末装置200と情報処理装置100が一体的に構成された装置が、集音部を備え、周囲の環境の音響を集音してもよい。また、当該装置は、当該音響の集音結果に基づき、キーワードの抽出に係る処理や、当該キーワードに関連するコンテンツの抽出に係る処理を実行してもよい。
また、他の一例として、情報処理装置100の各機能のうち一部の機能が他の装置に設けられていてもよい。具体的な一例として、情報処理装置100の各機能のうち、音声データ等からキーワードの抽出に係る機能が、他の装置(例えば、端末装置200や、情報処理装置100及び端末装置200とは異なる他の装置等)に設けられていてもよい。同様に、端末装置200の各機能のうち一部の機能が他の装置に設けられていてもよい。
また、情報処理装置100の各機能が、複数の装置が連携して動作することで実現されてもよい。より具体的な一例として、情報処理装置100の各機能が、複数の装置が連携して実現される仮想的なサービス(例えば、クラウドサービス)により提供されてもよい。この場合には、当該サービスが、上述した情報処理装置100に相当する。同様に、端末装置200の各機能についても、複数の装置が連携して動作することで実現されてもよい。
以上、図1を参照して、本開示の一実施形態に係る情報処理システムの概略的なシステム構成の一例について説明した。
<2.2.機能構成>
続いて、本実施形態に係る情報処理システムを構成する各装置の機能構成の一例について説明する。
(端末装置200の構成例)
まず、図2を参照して、本実施形態に係る端末装置200の機能構成の一例について説明する。図2は、本実施形態に係る端末装置200の機能構成の一例を示したブロック図である。
図2に示すように、端末装置200は、アンテナ部220及び無線通信部230と、集音部260と、音響出力部270と、記憶部290と、制御部210とを含む。また、端末装置200は、アンテナ部240及び無線通信部250を含んでもよい。また、端末装置200は、表示部280を含んでもよい。
アンテナ部220及び無線通信部230は、端末装置200が、3Gや4G等の規格に基づく無線のネットワークを介して基地局と通信を行うための構成である。アンテナ部220は、無線通信部230により出力される信号を電波として空間に放射する。また、アンテナ部220は、空間の電波を信号に変換し、当該信号を無線通信部230へ出力する。また、無線通信部230は、基地局との間で信号を送受信する。例えば、無線通信部230は、基地局へのアップリンク信号を送信してもよく、基地局からのダウンリンク信号を受信してもよい。このような構成により、端末装置200は、例えば、基地局との間での通信に基づき、インターネット等のネットワークに接続することも可能となり、ひいては当該ネットワークを介して情報処理装置100との間で情報を送受信することも可能となる。
アンテナ部240及び無線通信部250は、端末装置200が、Wi−Fi(登録商標)やBluetooth(登録商標)等の規格に基づき、比較的近傍に位置する他の装置(例えば、ルータや他の端末装置等)との間で無線のネットワークを介して通信を行うための構成である。即ち、アンテナ部240は、無線通信部250により出力される信号を電波として空間に放射する。また、アンテナ部240は、空間の電波を信号に変換し、当該信号を無線通信部250へ出力する。また、無線通信部250は、他の装置との間で信号を送受信する。このような構成により、端末装置200は、例えば、ルータ等のような他の装置を介してインターネット等のネットワークに接続することも可能となり、ひいては当該ネットワークを介して情報処理装置100との間で情報を送受信することも可能となる。また、端末装置200は、他の端末装置との間で通信を行うことで、当該他の端末装置を介して(即ち、当該他の端末装置が通信を中継することで)インターネット等のネットワークに接続することも可能となる。
集音部260は、所謂マイクロフォンのように、外部環境の音響(即ち、外部環境を伝搬して到達する音響)を集音するための集音デバイスとして構成され得る。集音部260は、例えば、端末装置200の周囲に位置するユーザが発話した音声を集音し、集音結果に基づく音響信号に応じた音声データ(即ち、音響データ)を制御部210に出力する。
音響出力部270は、スピーカ等のような発音体を含み、入力された駆動信号(音響信号)を音響に変換して出力する。例えば、音響出力部270は、制御部210からの制御に基づき、ユーザへの提示対象となる情報(例えば、コンテンツ)に応じた音声や音響を出力してもよい。
表示部280は、ディスプレイ等により構成され、画像(例えば、静止画像や動画像)等のような表示情報を表示させることで、ユーザに対して各種情報を提示する。例えば、表示部280は、制御部210からの制御に基づき、ユーザへの提示対象となる情報(例えば、コンテンツ)に応じた静止画像や動画像を出力してもよい。
記憶部290は、各種データを一時的または恒常的に記憶するための記憶領域である。例えば、記憶部290には、端末装置200が各種機能を実行するためのデータが記憶されてもよい。具体的な一例として、記憶部290には、各種アプリケーションを実行するためのデータ(例えば、ライブラリ)や各種設定等を管理するための管理データ等が記憶されていてもよい。また、記憶部290には、各種コンテンツ(例えば、情報処理装置100から送信されたコンテンツ)のデータが一時的または恒常的に記憶されていてもよい。
制御部210は、端末装置200の各種動作を制御する。例えば、制御部210は、集音部260による集音結果に応じた音声データを当該集音部260から取得し、取得した当該音声データが所定のネットワークを介して情報処理装置100に送信されるように無線通信部230または250を制御してもよい。
また、制御部210は、所定のネットワークを介して情報処理装置100から送信されたコンテンツを、無線通信部230または250の動作を制御することで取得し、取得したコンテンツに応じた音声や音響を音響出力部270に出力させてもよい。なお、このとき制御部210は、例えば、Text to Speech等のような技術に基づき、取得したコンテンツに含まれる文字情報に応じた音声を合成し、当該音声を音響出力部270に出力させてもよい。また、制御部210は、取得したコンテンツに応じた静止画像や動画像等の表示情報を表示部280に表示させてもよい。
なお、上述した端末装置200の構成はあくまで一例であり、必ずしも端末装置200の構成を限定するものではない。例えば、端末装置200は、有線のネットワークを介してインターネット等のネットワークに接続可能に構成されていてもよい。この場合には、端末装置200は、当該ネットワークにアクセスするための通信部を有していてもよい。また、端末装置200は、実行し得る機能に応じて、当該機能に対応する構成を含んでもよい。
以上、図2を参照して、本実施形態に係る端末装置200の機能構成の一例について説明した。
(情報処理装置100の構成例)
続いて、図3を参照して、本実施形態に係る情報処理装置100の機能構成の一例について説明する。図3は、本実施形態に係る情報処理装置100の機能構成の一例について説明するための説明図である。
図3に示すように、情報処理装置100は、通信部130と、記憶部190と、制御部110とを含む。
通信部130は、情報処理装置100の各構成が所定のネットワークにアクセスし、他の装置との間で情報を送受信するための構成である。なお、情報処理装置100がアクセスするネットワークの種別は特に限定されない。そのため、通信部130の構成は、当該ネットワークの種別に応じて適宜変更されてもよい。例えば、情報処理装置100が無線のネットワークにアクセスする場合には、通信部130は、図2を参照して説明したアンテナ部220及び無線通信部230や、アンテナ部240及び無線通信部250に相当する構成を含んでもよい。また、情報処理装置100が有線のネットワークにアクセスする場合には、通信部130は、当該有線のネットワークにアクセスするための構成を含んでもよい。このような構成により、情報処理装置100は、例えば、インターネット等のネットワークに接続することも可能となり、ひいては当該ネットワークを介して他の装置(例えば、端末装置200)との間で情報を送受信することも可能となる。
記憶部190は、各種データを一時的または恒常的に記憶するための記憶領域である。例えば、記憶部190には、情報処理装置100が各種機能を実行するためのデータが記憶されてもよい。具体的な一例として、記憶部190には、各種アプリケーションを実行するためのデータ(例えば、ライブラリ)や各種設定等を管理するための管理データ等が記憶されていてもよい。また、記憶部190には、各種コンテンツのデータが一時的または恒常的に記憶されていてもよい。
制御部110は、情報処理装置100の各種動作を制御する。例えば、制御部110は、キーワード取得部111と、コンテンツ抽出部113と、通信制御部115とを含む。
通信制御部115は、所定のネットワークを介した他の装置との間の通信を制御する。例えば、通信制御部115は、通信部130を制御することで、他の装置(例えば、端末装置200)から送信されたデータ(例えば、音声データ)を取得する。また、通信制御部115は、所定のネットワークを介して他の装置に各種データ(例えば、コンテンツ)を送信する。なお、通信制御部115が、「出力制御部」の一例に相当する。
キーワード取得部111は、各種データに文字情報として含まれるキーワードを取得する。例えば、キーワード取得部111は、端末装置200によるユーザが発話した音声の集音結果に応じた音声データに対して音声解析処理を施すことで文字情報に変換し、当該文字情報から所定の条件に基づきキーワードを抽出してもよい。この場合には、キーワード取得部111のうち、音声データを文字情報に変換する部分が「変換部」の一例に相当し、当該文字情報からキーワードを抽出する部分が「取得部」の一例に相当する。また、他の一例として、キーワード取得部111は、他の装置により当該音声データから抽出されたキーワードを、当該他の装置から取得してもよい。この場合には、キーワード取得部111が「取得部」の一例に相当する。そして、キーワード取得部111は、取得したキーワードをコンテンツ抽出部113に出力する。なお、音声データに基づきキーワードを取得する処理については詳細を別途後述する。
コンテンツ抽出部113は、キーワード取得部111からキーワードを取得し、取得した当該キーワードに関連するコンテンツを、1以上のコンテンツが含まれるコンテンツ群から抽出する。例えば、コンテンツ抽出部113は、記憶部190に記憶されたコンテンツ群から、取得したキーワードに関連するコンテンツを抽出してもよい。また、このときコンテンツ抽出部113は、取得したキーワードにより関連性の高いコンテンツを抽出してもよい。また、他の一例として、コンテンツ抽出部113は、所定のネットワーク(例えば、LAN等)にアクセスし、当該ネットワークから(例えば、当該ネットワークを介して接続された各種装置から)、取得したキーワードに関連するコンテンツを抽出してもよい。なお、コンテンツの抽出に係る処理については詳細を別途後述する。なお、コンテンツ抽出部113により抽出されたコンテンツは、例えば、通信制御部115により所定のネットワークを介して端末装置200に送信される。
なお、上述した情報処理装置100の構成はあくまで一例であり、必ずしも情報処理装置100の構成を限定するものではない。例えば、図3に示す情報処理装置100の構成のうち一部の構成が当該情報処理装置100の外部に設けられていてもよい。具体的な一例として、記憶部190が、情報処理装置100の外部に設けられていてもよい。また、他の一例として、制御部110に含まれるキーワード取得部111及びコンテンツ抽出部113のうち一部の構成が情報処理装置100とは異なる他の装置に設けられていてもよい。また、他の一例として、複数の装置が連携して動作することで、情報処理装置100の各機能が実現されてもよい。
以上、図3を参照して、本実施形態に係る情報処理装置100の機能構成の一例について説明した。
<<3.処理>>
続いて、本実施形態に係る情報処理システムの処理の一例について説明する。
<3.1.音声データに基づくキーワードの抽出>
まず、情報処理装置100が、ユーザが発話した音声等の集音結果に応じた音声データに基づきキーワードを抽出する処理の流れの一例について説明する。なお、本説明では、便宜上、情報処理装置100(例えば、キーワード取得部111)が、端末装置200から取得した音声データ(即ち、端末装置200による集音結果に基づく音声データ)に基づきキーワードを抽出するものとする。
例えば、図4は、本実施形態に係る情報処理装置100によるキーワードの抽出に係る概略的な処理の流れの一例について説明するための説明図である。
図4に示すように、まず、情報処理装置100は、端末装置200から取得した音声データD110に対して所謂音声認識処理を施すことで、当該音声データD110を文字情報D130に変換する(S120)。次いで、情報処理装置100は、文字情報D130に対して所謂自然言語処理を施すことで、当該文字情報D130から所定の条件に基づきキーワードD150を抽出する。
次いで、図5を参照して、図4を参照して説明した情報処理装置100の各種処理のうち、参照符号S120で示した音声認識処理の一例についてより詳細に説明する。図5は、本実施形態に係る情報処理装置100による音声認識処理の一例について説明するための説明図である。
図5に示すように、情報処理装置100は、まず取得した音声データD110に対して各種音響解析を施すことで、音声の認識に係る所定の特徴量D121を抽出する(S121)。音声を認識するための特徴量としては、例えば、メル周波数ケプストラム係数(MFCC:Mel−Frequency Cepstral Coefficients)等が用いられる。
次いで、情報処理装置100は、音声データD110から抽出した特徴量D121を、音響モデルD123と比較することにより、音声として認識する候補のスコアリングを行う(S123)。また、情報処理装置100は、認識した音声がどの言葉に対応するかを、認識辞書D125に基づきスコアリングする(S125)。なお、この時点では、同音異義語や、似たような音で発話される言葉等が混在した状態となる。そのため、情報処理装置100は、言語モデルD127に基づき、言葉として成り立つ可能性の高いものをスコアリングする。以上のような処理を経て、情報処理装置100は、最もスコアの高い言葉を採用することで、音声データD110を文字情報D130に変換する。
次いで、図6を参照して、図4を参照して説明した情報処理装置100の各種処理のうち、参照符号S140で示したキーワードの抽出に係る処理の一例についてより詳細に説明する。図6は、本実施形態に係る情報処理装置100によるキーワードの抽出に係る処理の一例について説明するための説明図である。
図6に示すように、情報処理装置100は、まず文字情報D130に対して形態素解析と称される処理を施すことで、当該文字情報D130を形態素に分割する。一般的には、形態素解析としては、主に「単語への分割」、「活用語処理」、及び「品詞判定」の3つの処理が行われる。なお、形態素解析処理については、公知の技術を応用することが可能であるため詳細な説明は省略する。以上のようにして、情報処理装置100は、文字情報D130を形態素に分割することで単語リストD141を生成する(S141)。
ここで、図7を参照して、形態素解析の処理の結果の一例について具体的な例を挙げて説明する。図7は、形態素解析の処理の結果の一例について説明するための説明図である。例えば、入力される文字情報D130が、「私は寿司が好きです。」という文章であるものとする。この場合には、当該文字情報D130から得られる単語リストD141は、図7に示すようになる。
続いて、情報処理装置100は、所定のフィルタリング条件D143に基づき、単語リストD141から少なくとも一部の単語をキーワードD150として抽出する(S143)。具体的な一例として、情報処理装置100は、単語リストD141のうち名詞等のような所定の品詞に該当する単語をキーワードとして抽出してもよい。また、このとき情報処理装置100は、単語リストD141から名詞のみを抽出する場合においても、例えば、「私」、「あなた」、「僕」等のように、一般的な単語、即ち、他の名詞に比べてより特徴的な意味を有しない単語(ストップワード)を、抽出対象から除外してもよい。例えば、図8は、キーワードの抽出結果の一例について説明するための説明図であり、図7に示す単語リストD141から抽出されたキーワードD150の一例を示している。
以上、図4〜図8を参照して、情報処理装置100が、ユーザが発話した音声等の集音結果に応じた音声データに基づきキーワードを抽出する処理の流れの一例について説明した。
<3.2.キーワードに関連するコンテンツの抽出>
続いて、情報処理装置100が、1以上のコンテンツを含むコンテンツ群から、キーワードに関連する少なくとも一部のコンテンツを抽出する処理の一例について説明する。なお、本説明では、便宜上、図1及び図3を参照して説明した記憶部190に、各コンテンツが記憶されているものとする。また、本説明においては、本実施形態に係る情報処理システムの技術的特徴がよりわかりやすいように、抽出対象の候補となるコンテンツとして各種話題に応じた文書が記憶されているものとする。即ち、情報処理装置100(例えば、コンテンツ抽出部113)は、当該記憶部190に記憶されたコンテンツ群(即ち、各種話題に応じた文書群)の中から、キーワードD150に関連する少なくとも一部のコンテンツを抽出するものとする。また、以降では、記憶部190がデータベースとして構成されており、特に、一連のコンテンツ(即ち、上記コンテンツ群)を管理するためのデータベースを「コンテンツデータベース」とも称する。また、以降の説明では、本開示に係る情報処理装置100の技術的特徴をよりわかりやすくするために、当該情報処理装置100が、上記コンテンツとして文書を抽出する場合に着目して説明する。
(コンテンツデータベースへのコンテンツの登録)
まず、情報処理装置100がキーワードD150に関連するコンテンツを抽出可能とするために、当該コンテンツをコンテンツデータベースに登録するための処理の一例について説明する。
情報処理装置100は、インターネット等の各種ネットワークを介して収集された多様なコンテンツに含まれる文章等の文字情報に対して形態素解析を施すことで、当該文字情報を単語(形態素)に分割する。次いで、情報処理装置100は、コンテンツごとに、当該コンテンツに含まれる文字情報から分割された単語に基づき特徴量を算出する。なお、当該特徴量としては、例えば、TF−IDF(Term Frequency−Inverse Document Frequency)等が用いられる。なお、TF−IDFは、以下に(式1)として示す関係式で表される。
(式1)において、変数tは、単語を示しており、変数dは、文書(換言すると、各コンテンツ)を示している。また、tf(t,d)は、単語tの出現頻度を示しており、idf(t,d)は、単語tが出現する文書dの数であるdfの逆数(即ち、逆文書頻度)を示している。tf(t,d)及びidf(t,d)のそれぞれは、以下に(式2)及び(式3)として示す関係式で表される。
上記(式2)及び(式3)において、変数nは、文書d中における単語tの出現数を示している。また、変数Nは、文書d中における全単語の数を示している。また、変数Dは、処理の対象となる文書(例えば、抽出対象となる文書)の総数を示している。また、df(t,d)は、単語tを含む文書の総数を示している。即ち、tf(t,d)は、ある単語tがある文書d中に出現する回数を、当該文書d中における全単語の数で除算した値に相当する。また、idf(t,d)は、単語tを含む文書の総数を示すdf(t,d)の逆数に基づき算出される。このような特性から、TF−IDFは、文書の集合全体から見て、ある文書dに限定してより高い頻度で出現する単語に対して、より大きな数値を示すという特性を有する。
ここで、TF−IDFを用いた特徴量について、以下に具体的な例をあげて説明する。例えば、以下の3つの文書が抽出の対象としてコンテンツデータベース(例えば、記憶部190)に保持されているものとする。
(#1)寿司好きが集まる,
寿司とビールがうまい店特集
(#2)海外で寿司が大ブーム
(#3)銀座でビールイベント開催
上記した文書#1〜#3に基づきTF−IDFの算出を行うと、以下に(式4)として示す特徴量マトリックスIMを得られる。
(コンテンツデータベースからのコンテンツの抽出)
次いで、情報処理装置100が、キーワードD150に関連するコンテンツをコンテンツデータベースから抽出する処理の一例について説明する。例えば、図9は、本実施形態に係る情報処理装置100によるコンテンツの抽出に係る処理の一例について説明するための説明図である。なお、以降では、前述した#1〜#3の文書がコンテンツデータベースに登録されており、情報処理装置100が、当該コンテンツデータベースから少なくとも一部の文書を抽出する場合に着目して、当該情報処理装置100の処理の一例について説明する。
図9に示すように、情報処理装置100は、ユーザが発話した音声等の集音結果に応じたキーワードD150を取得すると、当該キーワードD150に基づき特徴ベクトルKWVを算出する(S161)。
例えば、図7及び図8を参照して説明した例のように、ユーザが「私は寿司が好きです。」と発話し、キーワードとして「寿司」及び「好き」が取得されたものとする。この場合には、当該発話から抽出されたキーワードと、文書#1〜#3それぞれに含まれる単語と、の間の関係性に応じた特徴ベクトルKWVは、以下に(式5)として示すベクトルで表される。
次いで、情報処理装置100は、キーワードに基づき算出した特徴ベクトルKWVと、データベースに登録された文書群に基づく特徴量マトリックスIMと、に基づき、文書ベクトルDvecを算出する(S163)。文書ベクトルDvecは、取得されたキーワードと、データベースに登録された各文書と、の間の関連性を定量的に示した特徴量である。
具体的には、文書ベクトルDvecは、特徴ベクトルKWVと特徴量マトリックスIMとの積で表すことが可能である。例えば、図8に示すキーワードと、#1〜#3として上述した各文書と、の間の関連性に応じた文書ベクトルDvecは、以下に(式6)として示すベクトルで表される。
次いで、情報処理装置100は、算出した文書ベクトルDvecに基づき、データベースに登録された文書群から、取得したキーワードとより関連性の高い文書Dresultを抽出する(S165)。
具体的な一例として、情報処理装置100は、以下に(式7)として示す関係式に基づき、文書#1〜#3のうち、係数がより大きい値を示す文書を抽出することで、ユーザが発話した内容に最も関連性の高い文書Dresultを抽出してもよい。なお、この場合には、文書#1が抽出されることとなる。
以上、図9を参照して、1以上のコンテンツを含むコンテンツ群から、キーワードに関連する少なくとも一部のコンテンツを抽出する処理の一例について説明した。なお、上述した処理はあくまで一例であり、必ずしも情報処理装置100によるコンテンツの抽出に係る処理を限定するものではない。即ち、情報処理装置100が、1以上のコンテンツを含むコンテンツ群の中から、各コンテンツに含まれる文字情報に基づく特徴量に応じてキーワードに関連するコンテンツを抽出することが可能であれば、その方法は特に限定されない。
<3.3.コンテンツの抽出結果に応じた情報の提示>
続いて、キーワードに基づくコンテンツの抽出結果に応じた情報をユーザに提示する処理の一例について説明する。なお、本説明では、情報処理装置100は、上記した例と同様に、コンテンツとして文書を抽出するものとする。
情報処理装置100は、取得したキーワードに基づきデータベースから文書Dresultを抽出すると、当該文書Dresultに応じた情報が、端末装置200を介してユーザに提示されるように制御する。
具体的な一例として、情報処理装置100は、文書Dresult自体、または、文書Dresultに含まれる少なくとも一部の文字情報を、話題データとして端末装置200に送信してもよい。この場合には、例えば、端末装置200は、ディスプレイ等の表示部280を介して、当該話題データ(文字情報)をユーザに提示してもよい。また、他の一例として、端末装置200は、当該話題データ(文字情報)を音声データに変換し、スピーカ等の音響出力部270を介して当該音声データに基づく音声を出力することで、当該話題データに応じた情報をユーザに提示してもよい。
また、他の一例として、情報処理装置100は、文書Dresultに含まれる少なくとも一部の文字情報を音声データに変換し、当該音声データを話題データとして端末装置200に送信してもよい。この場合には、例えば、端末装置200は、スピーカ等の音響出力部270を介して話題データ(音声データ)に基づく音声を出力することで、当該話題データに応じた情報をユーザに提示してもよい。
なお、情報処理装置100は、取得したキーワードに基づき複数のコンテンツを抽出してもよい。この場合には、端末装置200は、例えば、情報処理装置100により抽出されたコンテンツのリストをユーザに提示し、ユーザにより選択されたコンテンツを当該ユーザに提示してもよい。
具体的な一例として、端末装置200は、情報処理装置100からコンテンツの抽出結果(例えば、話題データ)を取得すると、表示部280や音響出力部270を介して、表示情報や音響等を出力することで、ユーザに対して話題情報を閲覧可能であることを通知してもよい。
例えば、図10は、本実施形態に係る端末装置200のUI(ユーザインタフェース)の一例について説明するための説明図であり、表示部280を介してユーザに通知される情報の一例を示している。具体的には、図10に示す例では、端末装置200は、情報処理装置100から取得した話題データに基づくコンテンツのリストV111(即ち、情報処理装置100により抽出されたコンテンツのリスト)が表示された表示画面V110を提示している。このとき、端末装置200は、リストV111に提示された各話題(換言すると、コンテンツ)を選択可能に、当該リストV111をユーザに提示してもよい。
なお、リストV111として提示されたコンテンツを選択するためのインタフェースは特に限定されない。例えば、音声入力により所望の話題が選択されてもよいし、タッチパネル等の入力デバイスを介した操作により所望の話題が選択されてもよい。また、ユーザがリストV111として提示された話題に興味が無い場合に、画面を切り替えるためのインタフェース(例えば、キャンセルボタン等)が提示されてもよい。
また、端末装置200は、リストV111からのユーザによる話題の選択を受けて、当該話題に対応する情報(例えば、コンテンツ)を当該ユーザに提示してもよい。
例えば、図11は、本実施形態に係る端末装置200のUIの一例について説明するための説明図であり、ユーザによる話題の選択に応じて表示部280を介して当該ユーザに提示される情報の一例を示している。具体的には、図11に示す例では、端末装置200は、ユーザにより選択された話題に関連する情報として、選択した話題の見出しを示す情報V121と、当該話題に対応するコンテンツ(例えば、文書)の要約を示す情報V123と、が提示された表示画面V120を提示している。
なお、前述したように、端末装置200による話題データに応じた情報(例えば、文書)の提示態様は特に限定されない。例えば、端末装置200は、話題データに応じた文字情報を表示部280に表示させることで、当該話題データに応じた情報をユーザに提示してもよい。また、他の一例として、端末装置200は、話題データに応じた音声を音響出力部270に出力させることで、当該話題データに応じた情報をユーザに提示してもよい。また、この場合には、話題データに応じた文書に含まれる文字情報を音声データに変換する処理については、端末装置200により実行されてもよいし、情報処理装置100により実行されてもよい。
また、端末装置200は、ユーザによる話題の選択を受けて、当該話題に関連する情報を提示してもよい。例えば、図11に示す例では、端末装置200は、ユーザにより選択された話題に関連する情報として、関連商品を参照するための情報V125(例えば、リンク)を提示している。この場合には、例えば、コンテンツデータベースに蓄積される情報として、コンテンツ等の話題に関するデータに加えて、当該話題に関するデータに関連する他のデータ(例えば、商品に関するデータ)を蓄積しておけばよい。このような構成の基で、例えば、情報処理装置100は、抽出したコンテンツに対して当該コンテンツに関連する情報を関連付けて端末装置200に送信してもよい。また、情報処理装置100は、端末装置200からユーザにより選択された話題に関する情報を取得し、当該話題に対応するコンテンツに関連する他の情報を当該端末装置200に送信してもよい。このような構成により、端末装置200は、ユーザにより選択された話題に関連する他の情報を当該ユーザに提示することが可能となる。
なお、話題に対応するコンテンツに関連する情報として、当該コンテンツに対して複数の情報が関連付けられていてもよい。この場合には、端末装置200は、ユーザにより、話題に関連する情報の提示が入力デバイスを介した操作や音声入力に基づき指示された場合に、当該話題に対応するコンテンツに関連付けられた情報のリストが当該ユーザに提示されてもよい。
例えば、図12は、本実施形態に係る端末装置200のUIの一例について説明するための説明図であり、表示部280を介してユーザに提示される、当該ユーザにより選択された話題に関連する情報の一例を示している。具体的には、図12に示す例では、端末装置200は、ユーザにより選択された話題に関連する情報として、当該話題に対応するコンテンツに関連する商品のリストV131が提示された表示画面V130を提示している。
より具体的な一例として、ユーザが発話した音声の集音結果に関連する話題として、「寿司好きが集まる,
寿司とビールがうまい店特集」という文書が選択されたものとする。この文書に関連する商品として、例えば、以下のような商品がリストV131に提示されてもよい。
(1)本「東京・寿司がうまい店」
(2)本「世界のビール」
(3)クーポン「ビール無料券(江戸前寿司チェーン)」
また、端末装置200は、リストV131に提示された商品のうち、少なくとも一部の商品がユーザに選択された場合には、選択された当該商品に関する情報を当該ユーザに提示してもよい。また、端末装置200は、リストV131に提示された商品のうち、少なくとも一部の商品がユーザに選択された場合に、当該商品の購入に係る処理(手続き)を開始してもよい。なお、リストV131に提示された商品を選択する方法は、特に限定されず、例えば、音声入力により当該選択が行われてもよいし、タッチパネル等の入力デバイスを介した操作により当該選択が行われてもよい。
以上、図10〜図12を参照して、キーワードに基づくコンテンツの抽出結果に応じた情報をユーザに提示する処理の一例について説明した。
<3.4.補足>
上記では、本実施形態に係る情報処理システムの一例について説明した。一方で、上記はあくまで一例であり、上記した情報処理装置100及び端末装置200の各機能を実現することが可能であれば、当該機能を実現するための処理の主体や、当該処理の具体的な内容は特に限定されない。そこで、補足として、本実施形態に係る情報処理システムの構成や動作等の他の一例について以下に説明する。
例えば、ユーザが発話した音声の集音結果に基づく音声データを文字情報に変換する処理や、当該文字情報からキーワードを抽出する処理が、端末装置200により実行されてもよい。この場合には、情報処理装置100は、コンテンツの抽出に利用するキーワードを当該端末装置200から取得してもよい。
また、端末装置200は、ユーザが発話した音声の集音結果に基づく音声データから、当該音声データを文字情報に変換するための特徴量(例えば、MFCC等)を算出し、当該特徴量を示す情報を情報処理装置100に送信してもよい。このような構成とすることで、端末装置200と情報処理装置100との間で送受信される情報から、ユーザが発話した内容を特定することが困難となり、例えば、盗聴等の悪意ある攻撃からユーザのプライバシーを保護する効果も期待できる。
また、本実施形態に係る情報処理システム1(例えば、情報処理装置100)は、ユーザが発話した音声の集音結果に応じた音声データ等に基づき当該ユーザの属性に関する情報を推定することで、当該情報をコンテンツの抽出等に利用してもよい。具体的な一例として、当該音声データに応じて特定または推定される、ユーザが使用する語彙や、当該ユーザの生体の特徴等に関する情報に基づき、当該ユーザの年齢、性別、及び知識レベル等の情報を推定することも可能である。情報処理システム1は、このようなユーザの属性に関する情報を、例えば、データベースからのコンテンツの抽出に利用することで、ユーザにより適した話題に関する情報(例えば、コンテンツ)を当該ユーザに提供することも可能となる。
また、上記では、主に、本実施形態に係る情報処理システム1が、ユーザが発話した情報等に基づき、当該ユーザに提供する話題を自発的に推定する例に着目して説明した。一方で、ユーザが情報処理システム1に対して能動的に問合せを行った場合には、当該情報処理システム1は、ユーザが問合せた内容により関連性の高い話題に関する情報を抽出してもよい。
例えば、ユーザが情報処理システム1に対して「江戸前寿司って何?」と問合せる発話を行い、当該問合せに対して、情報処理システム1が江戸前寿司の説明に関する情報を当該ユーザに提示したものとする。続いて、ユーザ間の会話において、一方のユーザが、「私は寿司が好きです」と発話したものとする。この場合には、一連の流れにおいて(例えば、所定の期間内において)、「寿司」というキーワードが2回発話されたこととなる。この場合における特徴ベクトルKWVは、以下に(式8)として示すベクトルで表される。
また、文書ベクトルDvecについては、特徴量マトリックスIMが前述した(式4)で示される場合には、上記(式8)に示す特徴ベクトルKWVに基づき、以下に(式9)として示すベクトルで表される。
即ち、文書#1の文書ベクトルの数値がより大きくなり、当該文書#1がより適切な話題として抽出されることとなる。また、情報処理システム1は、ユーザが能動的に問合せを行った場合には、当該ユーザの発話内容から抽出されたキーワードの重みがより大きくなるように制御してもよい。具体的な一例として、情報処理システム1は、ユーザが能動的に問合せを行った場合には、当該ユーザの発話内容から抽出されたキーワードの数に応じて加算する数値を「1」から「2」に変更してもよい。このような制御により、よりユーザの意図に沿った話題に関する情報を当該ユーザに提供することも可能となる。
<<4.変形例>>
続いて、本開示の一実施形態に係る情報処理システムの変形例について説明する。上述した実施形態では、複数人のユーザが発話した場合には、各ユーザが発話した内容それぞれからキーワードが抽出され、当該キーワードに応じた話題に対応する情報が提示されることとなる。一方で、同じ場に複数人のユーザが存在する場合においても、当該複数人のユーザ全員が相互に会話を行っているとは限らない。例えば、4人のユーザUc〜Ufが存在する場合において、ユーザUcとユーザUdとが会話をしており、ユーザUeとユーザUfとが会話をしているような状況も想定され得る。この場合には、ユーザUcとユーザUdとのグループにおける会話の話題と、ユーザUeとユーザUfとのグループにおける会話の話題と、は必ずしも一致しているとは限らない。そのため、このような状況下では、会話のグループごとに、キーワードの取得や当該キーワードに応じた情報(コンテンツ)の提供が行われることで、各ユーザに対して会話の内容により関連性の高い話題に関する情報を提供することも可能となる。そこで、変形例として、本開示の一実施形態に係る情報処理システム1が、会話のグループごとにキーワードの取得や当該キーワードに応じた情報(コンテンツ)の提供を行うための仕組みの一例について説明する。
(ユーザのグルーピング)
まず、複数人のユーザの中から、互いに会話をしているユーザ(話者)のグルーピングを行うための仕組みの一例について説明する。例えば、図13は、変形例に係る情報処理システムにおけるユーザのグルーピングを行うための仕組みの一例について説明するための説明図である。なお、図13に示す例では、ユーザUc〜Ufのそれぞれがスマートフォン等のような端末装置300を保持しており、各ユーザが発話した音声は、当該ユーザが保持する端末装置300により集音されるものとする。なお、図13において、端末装置300c、300d、300e、及び300fは、ユーザUc、Ud、Ue、及びUfが保持する端末装置300をそれぞれ示している。
また、図13に示す例では、端末装置300c〜300fのそれぞれは、例えば、Bluetooth(登録商標)等の規格に基づく近距離無線通信を介して他の装置(例えば、他の端末装置300)と通信可能に構成されている。なお、本説明では、当該近距離無線通信は、Bluetooth規格に基づく通信であるものとする。Bluetooth規格では、定期的に当該規格に対応した周囲のデバイスを探索する機能(inquiry)と、当該探索に応じて識別情報(BTID:Bluetooth ID)を送信する機能(inquiry scan)とが規定されている。「inquiry」はマスターの機能であり、「inquiry scan」はスレーブの機能である。端末装置300c〜300fのそれぞれは、マスター/スレーブを適宜切り替えて、上記した「inquiry」及び「inquiry scan」の機能を利用することで、周囲に位置する他の端末装置300のBTIDを取得することが可能である。例えば、図13において、参照符号D30c、D30d、D30e、及びD30fで示した各情報は、端末装置300c、300d、300e、及び300fの識別情報(BTID)をそれぞれ示している。
次いで、図14を参照して、変形例に係る情報処理システムのシステム構成の一例について説明する。図14は、変形例に係る情報処理システムのシステム構成の一例を示した図である。なお、以降の説明では、変形例に係る情報処理システムを、前述した実施形態に係る情報処理システム1と明示的に区別するために、「情報処理システム2」と称する場合がある。
図14に示すように、変形例に係る情報処理システム2は、情報処理装置100’と、端末装置300c〜300fとを含む。また、情報処理システム2は、記憶部190’を含んでもよい。情報処理装置100’と端末装置300c〜300fのそれぞれとは、ネットワークN31を介して互いに情報を送受信可能に接続されている。なお、情報処理装置100’及び記憶部190’は、前述した実施形態に係る情報処理システム1(例えば、図1参照)における情報処理装置100及び記憶部190に相当する。また、ネットワークN31は、前述した実施形態に係る情報処理システム1におけるネットワークN11に相当する。また、端末装置300c〜300fは、図13に示す端末装置300c〜300fに相当する。なお、以降の説明では、端末装置300c〜300fを特に区別しない場合には、単に「端末装置300」と称する。また、本説明では、情報処理システム2の各構成について、前述した実施形態に係る情報処理システム1と異なる部分(例えば、ユーザのグルーピングに係る部分)に着目して説明し、当該情報処理システム1と実質的に同様に部分については詳細な説明は省略する。
端末装置300は、マイクロフォン等の集音部を備え、自身のユーザが発話した音声を集音可能に構成されている。また、図13を参照して説明したように、端末装置300は、自身の周囲に位置する他の端末装置300を探索する機能を有し、当該機能に基づき当該他の端末装置300の識別情報(例えば、BTID)を取得する。端末装置300は、音声の集音結果に応じた音声データと、周辺に位置する他の端末装置300の識別情報とを、ネットワークN31を介して情報処理装置100’に送信する。具体的な一例として、端末装置300cは、ユーザUcの音声の集音結果に応じた音声データと、周辺に位置する端末装置300d〜300fそれぞれの識別情報とを、ネットワークN31を介して情報処理装置100’に送信することとなる。これは、端末装置300d〜300fについても同様である。
情報処理装置100’は、端末装置300c〜300fのそれぞれから、対応するユーザ(即ち、ユーザUc〜Uf)の発話した音声の集音結果に基づく音声データと、当該端末装置300の周辺に位置する他の端末装置300の識別情報とを取得する。情報処理装置100’は、端末装置300c〜300fのそれぞれから送信される、当該端末装置300の周辺に位置する他の端末装置300の識別情報に基づき、端末装置300c〜300fのそれぞれが互いに近傍に位置することを認識することが可能である。即ち、情報処理装置100’は、端末装置300c〜300fのそれぞれのユーザ、即ち、ユーザUc〜Ufが互いに近傍に位置する(換言すると、場を共有している)ことを認識することが可能となる。
情報処理装置100’は、互いに近傍に位置することを認識した端末装置300c〜300fそれぞれから取得した音声データに対して音声解析や自然言語処理等の解析処理を施すことで、各音声データが示す発話内容の「類似性」及び「関連性」を評価する。
なお、本説明において、発話内容の類似性とは、例えば、以下に示す2つの文章のように、文章表現が異なるが実質的に同じ内容を示す文章間の関係を示す。
(a)私は寿司が好きです。
(b)寿司は私の好物です。
また、発話内容の関連性とは、異なる対象を示すものの、何らかの関連性(例えば、概念的な関連性や意味的な関連性)を有する文章(または、単語)間の関係を示す。具体的な一例として、「寿司」と「マグロ」とは、料理とその食材という関連性を有している。なお、以降の説明においては、説明をより簡略にするために、上記「類似性」及び上記「関連性」を総じて、単に「類似度」と称する。
ここで、情報処理装置100’によるグルーピングの処理について、より具体的な例を挙げて説明する。なお、図13及び図14に示す例において、ユーザUcとユーザUdとが会話をしており、ユーザUeとユーザUfとが会話をしているものとする。
例えば、ユーザUcとユーザUdとは、以下のような会話を交わしたものとする。
・ユーザUc「お寿司が食べたいな。」
・ユーザUd「銀座に良いお店があるよ。」
また、同じ時間帯において、ユーザUeとユーザUfとは、以下のような会話を交わしたものとする。
・ユーザUe「今度の週末はサッカーしよう。」
・ユーザUf「やっぱり、野球でしょう。」
情報処理装置100’は、各ユーザに対応する音声データに対して音声解析処理を施すことで文字情報に変換し、当該文字情報に対して自然言語処理を施すことで、当該各ユーザが発話した内容の類似度を評価する。なお、各ユーザが発話した内容の類似度の評価については、例えば、「word2vec」と称される自然言語処理ツールを利用することが可能である。もちろん、当該類似度を評価することが可能であれば、そのための処理の内容は特に限定されない。また、上記類似度の評価に適用する辞書データについては、例えば、インターネット等のような各種ネットワーク上の記事が利用されてもよい。以上により、各ユーザが発話した内容の類似度を評価することで、会話を交わしているユーザの組(グループ)を推定することが可能となる。
例えば、図15は、変形例に係る情報処理システムにおけるユーザのグルーピングに係る処理の結果の一例について説明するための説明図である。図15に示す例では、上述したユーザUc〜Ufそれぞれの発話内容間における類似度の評価結果を数値で示している。図15に示す例において、類似度の数値は、0から1の範囲で設定されており、数値がより高いほど類似度がより高いことを示している。図15に示す例においては、ユーザUc及びユーザUdそれぞれの発話内容の類似度が「0.6762」を示しており、ユーザUe及びユーザUfそれぞれの発話内容の類似度が「0.7173」を示している。なお、それ以外のユーザの組における発話内容の類似度は「0」を示している。このような評価結果から、情報処理装置100’は、ユーザUcとユーザUdとが会話を交わしているグループとして認識し、ユーザUeとユーザUfとが会話を交わしている他のグループとして認識することが可能となる。
以上のような仕組みを利用することで、情報処理装置100’は、音声データが取得された複数のユーザを1以上のグループにグルーピングし、前述したキーワードの取得や、当該キーワードに応じた情報(例えば、コンテンツ)の提供を当該グループごとに制御することも可能となる。即ち、図13〜図15に示す例の場合には、情報処理装置100’は、ユーザUc及びUdの発話内容に応じた音声データから取得されたキーワードに関連性の高い話題に関するコンテンツを抽出し、当該コンテンツに応じた情報をユーザUc及びUdそれぞれの端末装置300に送信してもよい。同様に、情報処理装置100’は、ユーザUe及びUfの発話内容に応じた音声データから取得されたキーワードに関連性の高い話題に関するコンテンツを抽出し、当該コンテンツに応じた情報をユーザUe及びUfそれぞれの端末装置300に送信してもよい。
例えば、図16は、変形例に係る情報処理装置100’の処理の一例について説明するための説明図であり、当該情報処理装置100’が複数のユーザそれぞれの発話内容の類似度を評価したうえでキーワードを抽出する処理の一例について示している。
図16に示すように、情報処理装置100’は、端末装置300c〜300fのそれぞれから取得した音声データD310に対して音声認識処理を施すことで、当該音声データD310を文字情報D330に変換する(S320)。次いで、情報処理装置100’は、端末装置300c〜300fのそれぞれに対応する文字情報D330間の類似度を評価することで、端末装置300c〜300fそれぞれのユーザUc〜Ufにおける会話の組み合わせ(即ち、グループ)を特定する。このとき情報処理装置100’は、会話の組み合わせごとに、各端末装置300(換言すると、各ユーザ)に対応する文字情報D330を統合することで統合データD350を生成してもよい(S340)。そして、情報処理装置100’は、会話の組み合わせごとに音声データD310が変換された文字情報(例えば、統合データD350)から所定の条件に基づきキーワードD370を抽出する(S360)。以上のようにして、会話の組み合わせごとにキーワードD370が抽出されることとなる。
また、情報処理装置100’は、前述した実施形態と同様の手法に基づき、会話の組み合わせ(即ち、グループ)ごとに抽出したキーワードD370に応じてコンテンツを抽出し、当該コンテンツ(または、当該コンテンツに応じた情報)を当該グループに含まれるユーザの端末装置300に送信してもよい。これにより、情報処理装置100’は、グループごとに個別に、当該グループに含まれるユーザ間の会話の内容により関連性の高いコンテンツを抽出し、当該コンテンツに応じた情報を当該グループに含まれるユーザに話題として提供することが可能となる。
なお、上記手法では、互いに異なる複数の組において、類似する話題の会話が行われている場合には、当該複数の組が1つのグループとして認識される場合も想定され得る。このような場合においても、当該複数の組それぞれの会話の内容に関連性の高い話題が提供されることとなる。
以上、変形例として、図13〜図16を参照して、本開示の一実施形態に係る情報処理システム1が、会話のグループごとにキーワードの取得や当該キーワードに応じた情報(コンテンツ)の提供を行うための仕組みの一例について説明した。
なお、上記では、情報処理システム1が、会話の内容に応じてユーザをグルーピングする場合の一例に着目して説明したが、グルーピングの手法は必ずしも上述した例には限定されない。
例えば、GNSS(Global Navigation Satellite System)等により取得された端末装置300の位置情報(換言すると、ユーザの位置情報)に基づき、ユーザのグルーピングが行われてもよい。具体的な一例として、互いに近傍に位置する複数のユーザが1つのグループとして認識されてもよい。また、他の一例として、互いに近接するように移動している複数のユーザが1つのグループとして認識されてもよい。もちろん、これらの例はあくまで一例であり、上記位置情報に基づきユーザのグルーピングを行うことが可能であれば、その方法は特に限定されない。
また、Bluetooth(登録商標)やビーコン等のような端末装置300間における無線通信を利用することで、複数の端末装置300間(ひいては、複数のユーザ間)の相対的な位置関係を認識することも可能である。そのため、当該複数の端末装置300間の相対的な位置関係に応じて、当該複数の端末装置300それぞれのユーザが1つのグループとして認識されてもよい。
また、上記グループが静的に設定されていてもよい。具体的な一例として、複数のユーザそれぞれの端末装置300がグループとしてあらかじめ登録されていてもよい。また、他の一例として、SNS(Social Networking Service)等のようなネットワークサービスの設定が、ユーザのグルーピングに利用されてもよい。例えば、ネットワークサービス内で所望のグループに登録された複数のユーザが、本実施形態に係る情報処理システム1においても、共通のグループに属するものとして認識されてもよい。同様に、メッセージサービス上でグループに登録された複数のユーザが、本実施形態に係る情報処理システム1においても、共通のグループに属するものとして認識されてもよい。
また、本開示の一実施形態に係る情報処理システム1により実現される機能を各種ネットワークサービスに応用することも可能である。例えば、図17は、本開示の一実施形態に係る情報処理システムの応用例について説明するための説明図であり、当該情報処理システム1により実現される機能をメッセージサービスに応用した場合の一例を示している。
図17に示す例では、メッセージサービスにおいて、ユーザUg、Uh、及びUiがグループとして登録されている。また、ユーザUg及びUhが、場を共有して会話をしており、各ユーザの端末装置300による当該会話の集音結果に応じた音声データが、例えば、情報処理システム1によるキーワードの抽出に係る処理に利用されている。即ち、図17に示す例では、例えば、参照符号V211及びV213として示すように、ユーザUg及びUhが発話した内容から抽出されたキーワードがメッセージとして提示されている。
また、このとき抽出されたキーワードに応じた話題に関する情報が、情報処理システム1からメッセージとして提示されてもよい。例えば、図17に示す例の場合には、ユーザUgの発話内容に応じて抽出された「コーンスープ」、「ハンバーグ」、「目玉焼き」等のキーワードに関連する情報(例えば、洋食店等の情報)が提示されてもよい。同様に、ユーザUgの発話内容に応じて抽出された「新宿」、「スマートフォン」、「S社」等のキーワードに関連する情報(例えば、S社の電化製品の紹介等の情報)が提示されてもよい。
また、参照符号V215として示すように、ユーザの笑い声等の音響を文字情報に変換し、当該文字情報がメッセージとして提示されてもよい。なお、音響から文字情報への変換については、例えば、機械学習等を応用することで、音響と文字情報との間の対応付けが行われることで実現することが可能である。もちろん、各種音響を文字情報に変換することが可能であれば、そのための手法は特に限定されない。
以上のような構成により、例えば、会話の場を共有していないユーザUiに対しても、ユーザUg及びUh間の会話から抽出された情報を提示することが可能となる。
なお、参照符号V217として示すように、従来のメッセージサービスと同様にユーザ入力に応じたメッセージを提示させることも可能である。このような構成により、会話の場を共有しているユーザUg及びUhと、その場に居ないユーザUiと、の間のコミュニケーションを実現することも可能となる。
<<5.ハードウェア構成>>
続いて、図18を参照しながら、前述した情報処理装置100や端末装置200のように、本開示の一実施形態に係る情報処理システムを構成する情報処理装置のハードウェア構成の一例について、詳細に説明する。図18は、本開示の一実施形態に係る情報処理システムを構成する情報処理装置のハードウェア構成の一構成例を示す機能ブロック図である。
本実施形態に係る情報処理システムを構成する情報処理装置900は、主に、CPU901と、ROM902と、RAM903と、を備える。また、情報処理装置900は、更に、ホストバス907と、ブリッジ909と、外部バス911と、インタフェース913と、入力装置915と、出力装置917と、ストレージ装置919と、ドライブ921と、接続ポート923と、通信装置925とを備える。
CPU901は、演算処理装置及び制御装置として機能し、ROM902、RAM903、ストレージ装置919又はリムーバブル記録媒体927に記録された各種プログラムに従って、情報処理装置900内の動作全般又はその一部を制御する。ROM902は、CPU901が使用するプログラムや演算パラメタ等を記憶する。RAM903は、CPU901が使用するプログラムや、プログラムの実行において適宜変化するパラメタ等を一次記憶する。これらはCPUバス等の内部バスにより構成されるホストバス907により相互に接続されている。例えば、図2に示す端末装置200の制御部210や、図3に示す情報処理装置100の制御部110は、CPU901により構成され得る。
ホストバス907は、ブリッジ909を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス911に接続されている。また、外部バス911には、インタフェース913を介して、入力装置915、出力装置917、ストレージ装置919、ドライブ921、接続ポート923及び通信装置925が接続される。
入力装置915は、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチ、レバー及びペダル等、ユーザが操作する操作手段である。また、入力装置915は、例えば、赤外線やその他の電波を利用したリモートコントロール手段(いわゆる、リモコン)であってもよいし、情報処理装置900の操作に対応した携帯電話やPDA等の外部接続機器929であってもよい。さらに、入力装置915は、例えば、上記の操作手段を用いてユーザにより入力された情報に基づいて入力信号を生成し、CPU901に出力する入力制御回路などから構成されている。情報処理装置900のユーザは、この入力装置915を操作することにより、情報処理装置900に対して各種のデータを入力したり処理動作を指示したりすることができる。
出力装置917は、取得した情報をユーザに対して視覚的又は聴覚的に通知することが可能な装置で構成される。このような装置として、CRTディスプレイ装置、液晶ディスプレイ装置、プラズマディスプレイ装置、ELディスプレイ装置及びランプ等の表示装置や、スピーカ及びヘッドホン等の音声出力装置や、プリンタ装置等がある。出力装置917は、例えば、情報処理装置900が行った各種処理により得られた結果を出力する。具体的には、表示装置は、情報処理装置900が行った各種処理により得られた結果を、テキスト又はイメージで表示する。他方、音声出力装置は、再生された音声データや音響データ等からなるオーディオ信号をアナログ信号に変換して出力する。例えば、例えば、図2に示す端末装置200の表示部280や音響出力部270は、出力装置917により構成され得る。
ストレージ装置919は、情報処理装置900の記憶部の一例として構成されたデータ格納用の装置である。ストレージ装置919は、例えば、HDD(Hard Disk Drive)等の磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス又は光磁気記憶デバイス等により構成される。このストレージ装置919は、CPU901が実行するプログラムや各種データ等を格納する。例えば、図2に示す端末装置200の記憶部290や、図3に示す情報処理装置100の記憶部190は、ストレージ装置919、ROM902、及びRAM903のいずれか、もしくは、ストレージ装置919、ROM902、及びRAM903のうちの2以上の組み合わせにより構成され得る。
ドライブ921は、記録媒体用リーダライタであり、情報処理装置900に内蔵、あるいは外付けされる。ドライブ921は、装着されている磁気ディスク、光ディスク、光磁気ディスク又は半導体メモリ等のリムーバブル記録媒体927に記録されている情報を読み出して、RAM903に出力する。また、ドライブ921は、装着されている磁気ディスク、光ディスク、光磁気ディスク又は半導体メモリ等のリムーバブル記録媒体927に記録を書き込むことも可能である。リムーバブル記録媒体927は、例えば、DVDメディア、HD−DVDメディア又はBlu−ray(登録商標)メディア等である。また、リムーバブル記録媒体927は、コンパクトフラッシュ(登録商標)(CF:CompactFlash)、フラッシュメモリ又はSDメモリカード(Secure Digital memory card)等であってもよい。また、リムーバブル記録媒体927は、例えば、非接触型ICチップを搭載したICカード(Integrated Circuit card)又は電子機器等であってもよい。
接続ポート923は、情報処理装置900に直接接続するためのポートである。接続ポート923の一例として、USB(Universal Serial Bus)ポート、IEEE1394ポート、SCSI(Small Computer System Interface)ポート等がある。接続ポート923の別の例として、RS−232Cポート、光オーディオ端子、HDMI(登録商標)(High−Definition Multimedia Interface)ポート等がある。この接続ポート923に外部接続機器929を接続することで、情報処理装置900は、外部接続機器929から直接各種のデータを取得したり、外部接続機器929に各種のデータを提供したりする。
通信装置925は、例えば、通信網(ネットワーク)931に接続するための通信デバイス等で構成された通信インタフェースである。通信装置925は、例えば、有線若しくは無線LAN(Local Area Network)、Bluetooth(登録商標)又はWUSB(Wireless USB)用の通信カード等である。また、通信装置925は、光通信用のルータ、ADSL(Asymmetric Digital Subscriber Line)用のルータ又は各種通信用のモデム等であってもよい。この通信装置925は、例えば、インターネットや他の通信機器との間で、例えばTCP/IP等の所定のプロトコルに則して信号等を送受信することができる。また、通信装置925に接続される通信網931は、有線又は無線によって接続されたネットワーク等により構成され、例えば、インターネット、家庭内LAN、赤外線通信、ラジオ波通信又は衛星通信等であってもよい。例えば、図2に示す端末装置200の無線通信部230及び250や、図3に示す情報処理装置100の通信部130は、通信装置925により構成され得る。
以上、本開示の実施形態に係る情報処理システムを構成する情報処理装置900の機能を実現可能なハードウェア構成の一例を示した。上記の各構成要素は、汎用的な部材を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。従って、本実施形態を実施する時々の技術レベルに応じて、適宜、利用するハードウェア構成を変更することが可能である。なお、図18では図示しないが、情報処理システムを構成する情報処理装置900に対応する各種の構成を当然備える。
なお、上述のような本実施形態に係る情報処理システムを構成する情報処理装置900の各機能を実現するためのコンピュータプログラムを作製し、パーソナルコンピュータ等に実装することが可能である。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体も提供することができる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリなどである。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信してもよい。また、当該コンピュータプログラムを実行させるコンピュータの数は特に限定されない。例えば、当該コンピュータプログラムを、複数のコンピュータ(例えば、複数のサーバ等)が互いに連携して実行してもよい。
<<6.むすび>>
以上、説明したように、本実施形態に係る情報処理システムにおいて、情報処理装置は、1以上のユーザにより発話された音声に基づき抽出された1以上のキーワードを取得する。また、当該情報処理装置は、1以上のコンテンツについて当該コンテンツに含まれる文字情報を構成する単語に応じて算出される特徴量と、取得された上記1以上のキーワードと、を比較することで、当該1以上のコンテンツから少なくとも一部のコンテンツを抽出する。当該特徴量としては、例えば、前述した特徴量マトリックスIMや特徴ベクトルKWVが挙げられる。
このような構成により、本実施形態に係る情報処理システムに依れば、その時々でユーザが発話した内容により関連性の高い話題に関する情報、換言すると、その時々の状況に応じたユーザの嗜好により即した情報を抽出して、当該ユーザに提供すること可能となる。
また、本実施形態に係る情報処理システムに依れば、ユーザ間の会話の内容に基づきキーワードを抽出し、当該キーワードにより関連性の高い話題に関する情報を提示することが可能となる。即ち、本実施形態に係る情報処理システムに依れば、ユーザは、検索キーワードの入力等のような能動的な動作(換言すると、煩雑な操作)を行わずとも、その時々の状況に応じた情報や、自身の嗜好により即した情報を受動的に取得することが可能となる。
なお、上記では、キーワードに基づく抽出の対象となるコンテンツが文書等のデータ(即ち、文書データ)の場合に着目して説明したが、文字情報を含めば、抽出の対象となるコンテンツの種別は特に限定されない。具体的な一例として、動画像、静止画像、楽曲等のコンテンツについても、例えば、メタ情報等のような属性情報として文字情報を含む場合には、キーワードに基づく抽出の対象とすることが可能である。即ち、各コンテンツに含まれる文字情報に基づき特徴量(例えば、特徴量マトリックスIM)を算出することで、当該コンテンツを抽出の対象とすることも可能となる。また、クーポンやチケット等が抽出の対象となるコンテンツとして含まれていてもよい。これにより、例えば、ユーザの会話で取り上げられた店に関する情報がキーワードとして抽出された場合に、当該店で使用可能なクーポンを当該ユーザに提示する(提供する)ことも可能となる。
また、上記では、主に、ユーザが発話した音声の集音結果応じた音声データに基づきキーワードが抽出される例について説明したが、キーワードの抽出元となる情報は、必ずしも当該音声データのみには限定されない。例えば、メールや、メッセージサービスに入力されるメッセージ等のデータは、情報として文字情報を含むため、キーワード抽出の対象とすることが可能である。また、撮像により撮像された動画像等のデータについても、音声データを含むため、キーワード抽出の対象とすることが可能である。即ち、文字情報自体、または文字情報に変換可能な情報を含むデータであれば、本実施形態に係る情報処理システムによるキーワード抽出に係る処理の対象とすることが可能である。
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
なお、以下のような構成も本開示の技術的範囲に属する。
(1)
1以上のユーザにより発話された音声に基づき抽出された1以上のキーワードを取得する取得部と、
1以上のコンテンツについて当該コンテンツに含まれる文字情報を構成する単語に応じて算出される特徴量と、取得された前記1以上のキーワードと、を比較することで、前記1以上のコンテンツから少なくとも一部のコンテンツを抽出する抽出部と、
を備える、情報処理装置。
(2)
抽出された前記コンテンツに応じた情報が所定の出力部を介して提示されるように制御する出力制御部を備える、前記(1)に記載の情報処理装置。
(3)
前記取得部は、グループごとに、当該グループに属する前記ユーザにより発話された音声に基づき抽出された前記キーワードを取得し、
前記出力制御部は、前記グループに対応する前記キーワードに基づき抽出された前記コンテンツに応じた情報が、当該グループに属するユーザに提示されるように制御する、前記(2)に記載の情報処理装置。
(4)
前記グループは、前記1以上のユーザそれぞれが発話した音声が示す内容の関連性に応じて設定される、前記(3)に記載の情報処理装置。
(5)
前記グループは、前記1以上のユーザそれぞれの位置関係に基づき設定される、前記(3)に記載の情報処理装置。
(6)
前記グループは、前記1以上のユーザそれぞれに関連付けられた装置間の相対的な位置関係に基づき設定される、前記(3)に記載の情報処理装置。
(7)
前記特徴量は、前記コンテンツに含まれる文字情報における所定の単語の出現頻度に応じた情報を含む、前記(1)〜(6)のいずれか一項に記載の情報処理装置。
(8)
前記特徴量は、所定の単語が文字情報として含まれるコンテンツの数に応じた情報を含む、前記(1)〜(7)のいずれか一項に記載の情報処理装置。
(9)
前記抽出部は、前記1以上のキーワードそれぞれの出現数に応じた特徴ベクトルと、前記1以上のコンテンツそれぞれの前記特徴量に応じた特徴量マトリックスと、に基づき、当該1以上のコンテンツから少なくとも一部のコンテンツを抽出する、
前記(1)〜(8)のいずれか一項に記載の情報処理装置。
(10)
前記音声を文字情報に変換する変換部を備え、
前記取得部は、前記音声が変換された当該文字情報から抽出された前記キーワードを取得する、
前記(1)〜(9)のいずれか一項に記載の情報処理装置。
(11)
前記取得部は、ネットワークを介して接続された他の装置により集音された前記音声に基づき抽出された前記キーワードを取得する、前記(1)〜(10)のいずれか一項に記載の情報処理装置。
(12)
前記音声を集音する集音部を備え、
前記取得部は、前記集音部により集音された前記音声に基づき抽出された前記キーワードを取得する、
前記(1)〜(10)のいずれか一項に記載の情報処理装置。
(13)
前記コンテンツは、文書データとして文字情報を含み、
前記特徴量は、前記文書データに基づき算出される、
前記(1)〜(12)のいずれか一項に記載の情報処理装置。
(14)
前記コンテンツは、属性情報として文字情報を含む、
前記特徴量は、前記属性情報に基づき算出される、
前記(1)〜(13)のいずれか一項に記載の情報処理装置。
(15)
コンピュータが、
1以上のユーザにより発話された音声に基づき抽出された1以上のキーワードを取得することと、
1以上のコンテンツについて当該コンテンツに含まれる文字情報を構成する単語に応じて算出される特徴量と、取得された前記1以上のキーワードと、を比較することで、前記1以上のコンテンツから少なくとも一部のコンテンツを抽出することと、
を含む、情報処理方法。
(16)
コンピュータに、
1以上のユーザにより発話された音声に基づき抽出された1以上のキーワードを取得することと、
1以上のコンテンツについて当該コンテンツに含まれる文字情報を構成する単語に応じて算出される特徴量と、取得された前記1以上のキーワードと、を比較することで、前記1以上のコンテンツから少なくとも一部のコンテンツを抽出することと、
を実行させる、プログラム。