以下に、本願に係る情報処理装置、情報処理方法、および情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法、および情報処理プログラムが限定されるものではない。
〔1.情報提供システム〕
図1は、実施形態に係る情報処理システムの構成例を示す図である。図1に示すように、実施形態に係る情報処理システム100は、スマートスピーカ1と、情報提供装置2と、端末装置3と、複数の機器41〜4n(nは2以上の整数)と、複数のセンサ装置51〜5m(mは2以上の整数)とを備える。以下、機器41〜4nの各々を区別せずに示す場合、機器4と記載し、センサ装置51〜5mの各々を区別せずに示す場合、センサ装置5と記載する。
スマートスピーカ1、情報提供装置2、端末装置3、機器4、およびセンサ装置5は、ネットワーク6を介して無線または有線で互いに通信可能に接続される。ネットワーク6は、例えば、LAN(Local Area Network)や、インターネットなどのWAN(Wide Area Network)であり、1以上のネットワークで構成される。
スマートスピーカ1、端末装置3、機器4、およびセンサ装置5は、ユーザU1の周囲の領域AR1に配置されている。領域AR1は、例えばユーザU1の部屋または家である。また、図示していないがユーザU2〜Uk(kは2以上の整数)の領域AR2〜ARkの各々にも、領域AR1と同様に、スマートスピーカ1、端末装置3、機器4、およびセンサ装置5が配置されている。以下、ユーザU1〜Ukの各々を区別せずに示す場合、ユーザUと記載する。
スマートスピーカ1は、対話型の音声操作に対応するAI(人工知能:Artificial Intelligence)アシスタント機能を利用可能なスピーカであり、ユーザUは、スマートスピーカ1と対話することで様々な情報を取得することができる。例えば、スマートスピーカ1は、ユーザUからの指示を示す入力情報を情報提供装置2へ送信し、入力情報応じた情報提供装置2からネットワーク6を介して提供されるコンテンツ(例えば、音楽、ニュース、交通情報、天候などの各種情報)を取得し、内蔵している音声出力器から取得したコンテンツを出力することができる。
また、スマートスピーカ1は、ユーザUからの指示に従って機器4を制御することができる。例えば、機器4が照明機器である場合、スマートスピーカ1は、ユーザUからの指示に従って照明機器である機器4のオンとオフを制御することができる。
情報提供装置2は、スマートスピーカ1から出力される情報に基づいて、ユーザUからの指示に応じたコンテンツをスマートスピーカ1へネットワーク6を介して提供することができる。例えば、情報提供装置2は、スマートスピーカ1から送信されるユーザUの発話情報に基づき、ユーザUの指示を判定し、判定した指示に応じたコンテンツをスマートスピーカ1へ提供することができる。
端末装置3は、例えば、スマートフォン、デスクトップ型PC(Personal Computer)、ノート型PC、タブレット型端末、携帯電話機、PDA(Personal Digital Assistant)等により実現される。かかる端末装置3は、例えば、情報通知アプリケーションを含む複数のアプリケーションを有しており、情報提供装置2から通知されるコンテンツを取得して表示したりする。端末装置3は、端末装置3の動作状態を示す情報やユーザUによる端末装置3の操作履歴を示す情報をスマートスピーカ1や情報提供装置2へ通知することができる。
機器4は、ユーザUの周囲に存在する機器である。例えば、機器4には、冷蔵庫、照明機器、洗濯機、エアーコンディショナー、テレビジョン受像機、食器洗浄機、食器乾燥機、電磁調理器、電子レンジといった種々の機器が含まれる。機器4は、機器4の動作状態を示す情報やユーザUによる機器4の操作履歴を示す情報をスマートスピーカ1や情報提供装置2へ通知することができる。
センサ装置5は、ユーザUの周囲に存在するセンサである。センサ装置5は、例えば、温度センサ、湿度センサ、照度センサ、気圧センサ、ドアの開閉を検出する開閉センサといったセンサを含む。また、センサ装置5は、ユーザUを撮像する撮像部を含む。センサ装置5は、温度の計測値、湿度の計測値、照度の計測値、気圧の計測値、ドアの開閉情報、撮像画像の情報といったセンサ情報をスマートスピーカ1や情報提供装置2へ通知することができる。なお、センサ装置5は、スマートスピーカ1や機器4に内蔵されていてもよい。
実施形態に係る情報処理システム100は、スマートスピーカ1の音声出力器から出力された音声情報がユーザUに受容されたか否かを判定する音声情報効果判定処理を実行することができる。以下、音声情報効果判定処理について具体的に説明する。図2は、実施形態に係る音声情報効果判定処理の説明図であり、図2に示す例では、音声情報効果判定処理の一例である情報提供装置2によって音声情報効果判定処理が実行される。以下においては、音声広告を音声情報の一例に挙げて説明する。
情報提供装置2は、音声広告をスマートスピーカ1へネットワーク6を介して出力する(ステップS1)。これにより、音声広告がスマートスピーカ1から出力される。音声広告は、音声の広告コンテンツであり、例えば、人の声、音楽、効果音などが含まれる。
情報提供装置2は、音声広告がスマートスピーカ1から出力された場合のユーザUの振る舞いを検出するための情報をスマートスピーカ1やセンサ装置5から取得し、取得した情報に基づいて、ユーザUの振る舞いを検出する(ステップS2)。
ステップS2において、情報提供装置2は、スマートスピーカ1から音声広告の出力が開始された後にスマートスピーカ1、端末装置3、またはセンサ装置5で撮像される撮像画像に基づいて、ユーザUの振る舞いを検出することができる。例えば、情報提供装置2は、ユーザUの身体的な振る舞い(例えば、目線の動き、頭部の動き、手の動き、足の動き、口の動きなど)や、ユーザUの機器4への振る舞い(例えば、機器4をオフ)を検出することができる。
また、情報提供装置2は、音声広告出力期間内にスマートスピーカ1に入力される音の情報に基づいて、ユーザUの振る舞いを検出することができる。例えば、情報提供装置2は、スマートスピーカ1に入力される音の情報に基づいて、ユーザUの発話による振る舞い、およびユーザUが行っていた作業における振る舞いなどを検出することができる。
情報提供装置2は、検出したユーザUの振る舞いに基づいて、音声広告がユーザUに受容されたか否かを判定する(ステップS3)。例えば、情報提供装置2は、会話中のユーザUが発話を止めたり、会話中のユーザUが発話の音量を下げたりした場合、音声広告がユーザUに受容されたと判定することができる。一方、情報提供装置2は、例えば、ユーザUが音量を下げずに会話を継続した場合、音声広告がユーザUに受容されていないと判定することができる。
また、情報提供装置2は、例えばユーザUが音声広告に関する発話をしたり、ユーザUが機器4をオフする行為をしたりした場合に、音声広告がユーザUに受容されたと判定することができる。一方、情報提供装置2は、音声広告の広告対象の商品またはサービスに対しユーザUが否定的な発話をした場合に、音声広告がユーザUに受容されていないと判定することができる。
また、情報提供装置2は、例えば、広告出力期間においてユーザUが一定時間以上視線をスマートスピーカ1に向けたり、移動中のユーザUが広告出力期間において一定時間移動を停止したりした場合、音声広告がユーザUに受容されたと判定することができる。一方、情報提供装置2は、例えば、移動中のユーザUが音声広告の出力後にも移動を継続した場合、音声広告がユーザUに受容されていないと判定することができる。
情報提供装置2は、音声広告がユーザUに受容されたと判定すると、音声広告の広告効果を更新する(ステップS4)。例えば、情報提供装置2は、テキスト広告またはバナー広告のクリックに相当する広告効果を付加する。具体的には、情報提供装置2は、音声広告の出力回数に対する音声広告の受容回数の割合を演算し、演算した割合を音声広告効果とすることができる。これにより、音声広告においてCTR(Click Through Rate)に相当する広告効果指標を得ることができる。
このように、情報提供装置2は、音声広告による新たな広告効果を測定することができ、これにより、広告主に対して適切な広告効果指標を提供することが可能になる。
〔2.スマートスピーカ1の構成〕
次に、実施形態に係るスマートスピーカ1の構成について具体的に説明する。図3は、実施形態に係るスマートスピーカ1の構成例を示す図である。図3に示すように、スマートスピーカ1は、通信部10と、音声出力器11と、音声入力器12と、撮像部13と、記憶部14と、制御部15とを備える。
通信部10は、ネットワーク6を介して情報提供装置2、端末装置3、機器4、およびセンサ装置5などの装置と通信可能な通信インターフェイスである。制御部15は通信部10を介して情報提供装置2、端末装置3、機器4、およびセンサ装置5と情報の送受信を行うことができる。なお、スマートスピーカ1は、通信部10以外の通信部によって端末装置3、機器4、およびセンサ装置5と通信する構成であってもよい。
例えば、ネットワーク6がLANとWANで構成され、且つ通信部10がLANに接続される場合、制御部15は、LANを介して端末装置3、機器4、およびセンサ装置5と情報の送受信を行い、LANおよびWANを介して情報提供装置2と情報の送受信を行う。
音声出力器11は、制御部15から出力される電気信号に応じた振動を行うことで、電気信号に応じた音波をスマートスピーカ1の外部へ出力する。音声出力器11は、例えば、振動板と、電気信号に応じて振動板を振動させる駆動機構とを備える。なお、図3に示す例では、一つの音声出力器11のみ図示しているが、スマートスピーカ1には、音声出力器11が複数設けられてもよい。
音声入力器12は、マイクロフォンであり、外部から入力される音波を電気信号に変換し、変換した電気信号を制御部15へ出力する。なお、図3に示す例では、一つの音声入力器12のみ図示しているが、スマートスピーカ1には、音声入力器12が複数設けられてもよい。
撮像部13は、例えば、COMS(Complementary Metal Oxide Semiconductor)イメージセンサを有しており、スマートスピーカ1の周囲を撮像する。撮像部13は、撮像結果である撮像情報を制御部15へ出力する。撮像情報には、スマートスピーカ1の周囲の撮像画像の情報が含まれる。
記憶部14は、スマートスピーカ1へのユーザUの操作履歴20、および自発的な発話を行うための発話テーブル21を記憶する。
操作履歴20は、スマートスピーカ1への操作内容と操作時刻とがユーザUの操作毎に関連付けられた情報である。操作内容は、例えば、各種のコンテンツ(例えば、スケジュール、メール、ニュース、音楽、交通情報など)の音声出力器11からの出力を開始する音声操作、各種のコンテンツの音声出力器11からの出力を停止する音声操作などの種々の操作が含まれる。
図4は、実施形態に係る発話テーブル21の一例を示す図である。図4に示す発話テーブル21は、「コンテンツID」と、「発話内容」と、「モデル」とが互いに関連付けられた情報を含む。「コンテンツID」は、コンテンツに固有の識別情報である。
「発話内容」は、例えば、コンテンツの利用の可否の問い合わせを行うための発話情報である。例えば、「発話内容」は、コンテンツがニュースである場合、「今日のニュースはいかがですか?」、「ニュースが“X”件あります」などである。また、「発話内容」は、コンテンツがメールである場合、「メールが“X”通届いています」などであり、コンテンツがスケジュールである場合、「本日は、“X”件の予定があります」などである。なお、“X”の情報は、情報提供装置2から制御部15が取得して発話内容に追加することができる。
また、「発話内容」は、コンテンツそのものであってもよい。この場合、発話テーブル21には発話内容は設定されず、制御部15がコンテンツIDに基づいて情報提供装置2からコンテンツを取得する。
「モデル」は、発話に対する過去のユーザUの反応と発話時の過去のユーザUに関するコンテキスト情報とに基づいて生成されるタイミング判定モデルであり、コンテンツ毎に異なる。例えば、タイミング判定モデルは、発話に対する過去のユーザUの反応を目的変数とし、ユーザUに関するコンテキストを説明変数とする回帰モデルである。目的変数は、教師データとも呼ばれ、説明変数は、素性または特徴量とも呼ばれる。タイミング判定モデルにおいて説明変数の数は多いほど精度が良くなるが、説明変数の数は一つであってもよい。
図3に示す制御部15は、入力処理部31と、情報出力部32と、情報取得部33と、出力処理部34と、コンテキスト取得部35と、タイミング決定部36とを備える。入力処理部31は、音声入力器12から出力される電気信号からユーザUの音声を認識する。
また、入力処理部31は、撮像部13から出力される撮像情報からユーザUのジェスチャーを判定する。なお、入力処理部31は、撮像部を含むセンサ装置5から撮像情報を取得し、取得した撮像情報に基づいて、ユーザUのジェスチャーを判定することができる。
また、入力処理部31は、撮像部13から出力される撮像情報からユーザUの口の動きを検出し、検出した口の動きからユーザUの口パク(無音発声)の内容を判定することができる。すなわち、入力処理部31は、撮像部13から出力される撮像情報から読唇を行うことができる。入力処理部31は、読唇の結果をユーザUの発話情報とする。なお、入力処理部31は、ユーザUの音声が識別できる場合、読唇を行わない。
情報出力部32は、ユーザUがウェークアップワードを発話したと入力処理部31によって認識された場合、ウェークアップワードに続くユーザUの発話情報を情報提供装置2へ出力する。発話情報は、ユーザUの音声情報そのものであっても、テキスト情報であってもよい。また、情報出力部32は、入力処理部31によって判定されたジェスチャーの情報であるジェスチャー情報を情報提供装置2へ出力する。なお、ウェークアップワードは、スマートスピーカ1に予め設定されたワードであるが、情報出力部32は、ウェークアップワードの発話にかかわらずユーザUの発話情報およびジェスチャー情報を情報提供装置2へ出力することもできる。
また、情報出力部32は、例えば、情報提供装置2からコンテキスト情報を取得しない場合などにおいて、コンテキスト取得部35で取得したコンテキスト情報を継続して繰り返し情報提供装置2へ出力することもできる。
また、情報出力部32は、音声出力器11からの音声広告の出力が開始されたときから予め設定された期間(以下、広告出力期間と記載する場合がある)において、音声入力器12へ入力される音を含む音情報および撮像部13から出力される撮像情報を含む撮像情報を情報提供装置2へ出力する。なお、予め設定された期間は、例えば、音声出力器11からの音声広告の出力が開始されたときから開始し、音声広告の出力が停止または終了されたときに終了する期間、または、音声出力器11からの音声広告の出力が開始されたときから開始し、音声広告の出力が停止または終了されてから一定期間後に終了する期間である。なお、情報出力部32は、広告出力期間において、端末装置3の音声入力器またはセンサ装置5へ入力される音を含む音情報を端末装置3またはセンサ装置5から取得して情報提供装置2へ出力することもできる。
情報取得部33は、情報提供装置2からコンテンツ毎のタイミング判定モデルを含むモデル情報を取得し、取得したタイミング判定モデル情報を発話テーブル21に設定することができる。また、情報取得部33は、情報提供装置2からコンテンツを取得する。出力処理部34は、情報取得部33によって取得されたコンテンツを電気信号へ変換して音声出力器11へ出力する。これにより、スマートスピーカ1からコンテンツが音として出力される。
なお、出力処理部34は、コンテンツを情報提供装置2から文字情報として取得した場合、文字情報を音声合成処理によって音声信号(電気信号)へ変換して音声出力器11へ出力する。また、出力処理部34は、コンテンツを情報提供装置2から音声情報として取得した場合、音声情報をデジタルアナログ変換によって音声信号(電気信号)へ変換して音声出力器11へ出力する。
コンテキスト取得部35は、ユーザUに関するコンテキスト情報を取得するコンテンツ取得処理を実行する。コンテキスト取得部35は、端末装置3、機器4、およびセンサ装置5から直接または情報提供装置2を介してコンテキスト情報を取得することができる。
具体的には、コンテキスト取得部35は、ユーザUの周囲の状況を示す周囲情報をコンテキスト情報の少なくとも一部として取得することができる。例えば、コンテキスト取得部35は、ユーザUの周囲に存在する1以上のセンサ装置5から出力されるセンサ情報から周囲情報を取得することができる。
センサ情報は、例えば、ユーザUの周囲の明るさを示す照度情報、ユーザUの周囲の気温を示す気温情報、およびユーザUの周囲の湿度を示す湿度情報の少なくとも一つが含まれている。コンテキスト取得部35は、照度情報、気温情報、および湿度情報を周囲情報として取得することができる。
また、コンテキスト取得部35は、ユーザUの周囲に存在する1以上の機器の状態を示す機器情報から周囲情報を取得することができる。ここで、1以上の機器とは、スマートスピーカ1、端末装置3、および機器4のうち1以上の機器である。機器情報は、例えば、機器のオン/オフといった機器の稼動状態を示す情報や、動作状態を示す情報である。
例えば、端末装置3の場合、動作状態を示す情報には、端末装置3で表示中のアプリケーションの種別や表示中のコンテンツの内容などが含まれる。また、機器がエアコンである場合、動作状態を示す情報には、エアコンの設定風量や設定温度などの情報が含まれる。
また、コンテキスト取得部35は、ユーザUの周囲に存在する1以上の機器への操作履歴を示す操作履歴情報から周囲情報を取得することができる。1以上の機器とは、スマートスピーカ1、端末装置3、および機器4のうち1以上の機器である。操作履歴情報には、例えば、機器への操作内容と操作時刻とが関連付けられた情報がユーザUの操作毎に含まれる。コンテキスト取得部35は、スマートスピーカ1の操作履歴情報を記憶部14から取得することができる。
また、コンテキスト取得部35は、例えば、ユーザUの撮像情報を示す撮像情報を撮像部13、端末装置3、機器4、またはセンサ装置5から取得することができる。コンテキスト取得部35は、取得した撮像情報からユーザUの状況を示す情報といったコンテキスト情報を取得することができる。
また、コンテキスト取得部35は、例えば、音声入力器12へ入力される音を含む音情報から、ユーザUの会話の状態、ユーザUの発話状態、ユーザUの周囲の音(機器4の音を含む)などのコンテキスト情報を取得することができる。
タイミング決定部36は、コンテキスト取得部35によって取得されたコンテキスト情報に基づいて、音声出力器11からの発話に対する過去のユーザUの反応を考慮した発話のタイミングである発話タイミングを決定する。
例えば、タイミング決定部36は、記憶部14に記憶された発話テーブルに含まれるコンテンツ毎のタイミング判定モデルにコンテキスト取得部35で取得されたコンテキスト情報を入力情報として入力してモデルを用いた演算を行う。タイミング決定部36は、タイミング判定モデルの演算結果であるスコアが予め設定された閾値であるか否かを判定する。
タイミング決定部36は、タイミング判定モデルの演算結果であるスコアが閾値以上であると判定した場合、発話テーブル21において、スコアが閾値以上であるタイミング判定モデルに関連付けられた発話内容を出力するタイミングになったと判定する。また、タイミング決定部36は、スコアが閾値以上であるタイミング判定モデルが同時に2以上ある場合、スコアが閾値以上であるタイミング判定モデルのうち最も高いスコアのタイミング判定モデルに関連付けられた発話内容を出力するタイミングになったと判定する。
なお、タイミング決定部36は、タイミング判定モデルの演算結果であるスコアが閾値以上であると判定した場合でも、発話内容を出力するタイミングになったとは判定しないことができる。例えば、タイミング決定部36は、スコアが閾値以上であるタイミング判定モデルに関連付けられた発話内容を前回出力してから予め設定した期間(以下、出力禁止期間と記載する)を経過していない場合、発話タイミングになったとは判定しないことができる。
また、タイミング決定部36は、スコアが閾値以上であるタイミング判定モデルに関連付けられた発話内容を現時刻から予め設定された期間(以下、設定期間と記載する)前までの間に予め設定された回数(以下、出力上限回数と記載する)を超えた場合、発話タイミングになったとは判定しないことができる。
また、タイミング決定部36は、タイミング判定モデルの演算結果であるスコアが閾値以上であると判定した場合でも、ユーザUがスマートスピーカ1を操作中の場合や音声出力器11からコンテンツや発話が出力中であれば、発話タイミングになったとは判定しない。この場合、タイミング決定部36は、ユーザUによるスマートスピーカ1の操作が終了した時点で、継続してスコアが閾値以上であるタイミング判定モデルがあれば、ユーザUによるスマートスピーカ1の操作が終了してから一定期間後に、発話内容を出力するタイミングになったと判定することができる。
また、タイミング決定部36は、ユーザUによる音声操作に基づいて、上述した出力禁止期間、および出力上限回数をコンテンツ毎に発話テーブル21に設定することができる。なお、コンテンツ毎に設定可能な情報は、出力禁止期間、および出力上限回数に限定されない。また、出力禁止期間、および出力上限回数といった情報はユーザUの設定によらず予め発話テーブル21に設定されていてもよい。
このように、タイミング決定部36は、コンテキスト情報に基づいて、発話タイミングと、かかる発話タイミングで出力すると判定した発話内容(以下、出力対象発話内容と記載する場合がある)とを決定することができる。タイミング決定部36は、発話タイミングと出力対象発話内容とを音声出力器11からの発話に対する過去のユーザUの反応を考慮して、発話タイミングと出力対象発話内容とを決定することから、発話タイミングをより適切に決定することができる。
例えば、ユーザUが暗い場所に位置し、ユーザUの周囲に収集車(例えば、ゴミ収集車)がいる状況で何度発話しても、発話に対するユーザUの反応がないとする。この場合、タイミング判定モデルは、ユーザUが暗い場所に位置し、かつ、ユーザUの周囲に収集車がいることを示す場合に出力するスコアが閾値よりも小さくなるように生成される。そのため、タイミング決定部36は、ユーザUが暗い場所に位置し、かつ、ユーザUの周囲に収集車がいることをコンテキスト情報が示す場合、発話タイミングでないと判定する。
また、食器洗浄機と電子レンジとが共に使用されている状態では、発話に対するユーザUの反応がないとする。この場合、タイミング判定モデルは、食器洗浄機と電子レンジとが共に使用されている状態である場合に出力するスコアが閾値よりも小さくなるように生成される。そのため、タイミング決定部36は、食器洗浄機と電子レンジとが共に使用されていることをコンテキスト情報が示す場合、発話タイミングでないと判定する。
また、ユーザUが端末装置3を操作中(例えば、端末装置3でウェブページを閲覧中、または端末装置3で音楽を再生中)である場合に、発話に対するユーザUの反応がないとする。この場合、タイミング判定モデルは、ユーザUが端末装置3を操作中である場合に出力するスコアが閾値よりも小さくなるように生成される。そのため、タイミング決定部36は、ユーザUが端末装置3を操作中であることをコンテキスト情報が示す場合、発話タイミングでないと判定する。
また、例えば、発話が開始された後において、ユーザUの会話が続く場合やユーザUが「やめて」と発話した場合を不正解データとして、且つ発話時のコンテキスト情報を特徴量としてタイミング判定モデルが生成される。この場合、タイミング決定部36は、ユーザUがユーザUの会話を続けるようなコンテキストやユーザUが「やめて」と発話するようなコンテキストでは、発話タイミングでないと判定することができる。
このように、タイミング決定部36は、現在のユーザUに関するコンテキストが発話に適したコンテキストである場合に、発話タイミングであると決定することができる。また、タイミング判定モデルはコンテンツ毎に生成されているため、コンテンツ毎の適切な発話タイミングが決定される。例えば、朝の時間帯であれば、交通機関の運行状態に関するコンテンツやニュースのコンテンツにユーザUが反応することが多い。そのため、交通機関の運行状態に関するコンテンツやニュースのコンテンツには、朝の時間帯が発話タイミングになりやすいタイミング判定モデルが生成される。
出力処理部34は、タイミング決定部36によって決定された発話タイミングで、タイミング決定部36によって決定された出力対象発話内容を音声出力器11から出力する。例えば、発話テーブル21が図4に示す状態で、出力対象発話内容が「発話内容XA」である場合、出力処理部34は、発話内容XAに基づく電信信号を音声出力器11へ出力することで、発話内容XAが音声出力器11から音声で出力される。
〔3.情報提供装置2の構成〕
次に、実施形態に係る情報提供装置2の構成について具体的に説明する。図5は、実施形態に係る情報提供装置2の構成例を示す図である。図5に示すように、情報提供装置2は、通信部41と、記憶部42と、制御部43とを備える。
通信部41は、ネットワーク6を介してスマートスピーカ1、端末装置3、機器4、およびセンサ装置5などの装置と通信可能な通信インターフェイスである。制御部43は通信部41を介して情報提供装置2、スマートスピーカ1、端末装置3、機器4、およびセンサ装置5と情報の送受信を行うことができる。
記憶部42は、発話テーブル記憶部51と、コンテンツ記憶部52と、音声広告記憶部53と、ユーザ情報記憶部54と、コンテキスト記憶部55と、出力態様判定情報記憶部56とを有する。
発話テーブル記憶部51は、スマートスピーカ1毎の発話テーブル21の情報を記憶する。図6は、実施形態に係る発話テーブル記憶部51に記憶される発話テーブルの一例を示す図である。図6に示す発話テーブル71は、「コンテンツID」と、「発話内容」と、「モデル」とが互いに関連付けられた情報を「機器ID」毎に含む。
発話テーブル71における「コンテンツID」、「発話内容」、および「モデル」は、発話テーブル21における「コンテンツID」、「発話内容」、および「モデル」と同様の情報である。「機器ID」は、スマートスピーカ1毎に固有の識別情報である。
図5に示すコンテンツ記憶部52は、スマートスピーカ1へ提供する各種のコンテンツを記憶する。図7は、実施形態に係るコンテンツ記憶部52に記憶されるコンテンツテーブルの一例を示す図である。図7に示すコンテンツテーブル72は、「コンテンツID」と、「コンテンツ」とが互いに関連付けられた情報である。
「コンテンツ」には、聴覚的出力用コンテンツと、視覚的出力用コンテンツとが含まれる。聴覚的出力用コンテンツは、音声で出力されるコンテンツであり、視覚的出力用コンテンツは文字、画像などといった音声以外の態様で出力されるコンテンツである。
図5に示す音声広告記憶部53は、音声広告の情報などを記憶する。図8は、実施形態に係る音声広告記憶部53に記憶される音声広告テーブルの一例を示す図である。図8に示す音声広告テーブル73は、「広告ID」と、「音声広告」と、「出力回数」と、「受容回数」と、「受容率」とが互いに関連付けられた情報である。「広告ID」は、音声広告毎に固有の識別情報である。
「音声広告」は、音声広告のコンテンツであり、例えば、スマートスピーカ1の音声出力器11または端末装置3の音声出力器から出力される。なお、音声広告テーブル73の「音声広告」は、音声広告のコンテンツそのものであるが、音声広告のコンテンツの格納場所を示す情報であってもよい。
「出力回数」は、音声広告がユーザUに提供された回数を示す情報であり、例えば、音声広告がスマートスピーカ1や端末装置3へ出力される度に制御部43によってインクリメントされる。「受容回数」は、音声広告がユーザUに受容された回数であり、例えば、音声広告がユーザUに受容される度に制御部43によってインクリメントされる。「受容率」は、出力回数に対する受容回数の割合であり、例えば、制御部43によって演算される。
例えば、図8に示す音声広告テーブル73において、広告ID「A101」の音声広告は、出力回数が29817回で、受容回数が827回で、受容率が0.0278であることを示している。また、広告ID「A102」の音声広告は、出力回数が8372回で、受容回数が352回で、受容率が0.0420であることを示している。
図5に示すユーザ情報記憶部54は、ユーザUの情報を記憶する。図9は、実施形態に係るユーザ情報記憶部54に記憶されるユーザ情報テーブルの一例を示す図である。図9に示すユーザ情報テーブル74は、「ユーザID」と、「ユーザ属性」と、「機器ID」と、「機器アドレス」とが互いに関連付けられた情報である。
「ユーザID」は、ユーザU毎に固有の識別情報である。「ユーザ属性」は、ユーザUの属性を示す情報である。ユーザUの属性は、例えば、性別、および年齢の他、住所、職業などのデモグラフィック属性であるが、ユーザUの嗜好などを示すサイコグラフィック属性を含んでもよい。「機器ID」は、ユーザUが所有するスマートスピーカ1に固有の識別情報、およびユーザUが所有する端末装置3に固有の識別情報を含む。「機器アドレス」は、ユーザUが所有するスマートスピーカ1または端末装置3のネットワーク6上のアドレスである。
出力態様判定情報記憶部56は、スマートスピーカ1からコンテンツの出力要求があった場合に、出力要求の対象となるコンテンツの出力態様を決定するための出力態様判定情報を含む。出力態様には、上述したように、コンテンツの出力種別、およびコンテンツの出力先の少なくとも一つが含まれる。
出力態様判定情報は、例えば、ユーザUに関するコンテキストと各出力態様との関係を規定する情報であり、モデルまたはテーブルを含む。出力態様判定情報に含まれるテーブルは、ユーザUに関するコンテキストと各出力態様との関係を規定するテーブルである。また、出力態様判定情報に含まれるモデルは、学習部64による学習によって生成されるモデルである。
図5に示す制御部43は、情報取得部61と、情報出力部62と、コンテキスト取得部63と、学習部64と、出力態様決定部65と、検出部66と、判定部67と、広告効果更新部68とを備える。
情報取得部61は、スマートスピーカ1から送信される情報を取得する。例えば、情報取得部61は、スマートスピーカ1からユーザUの指示を示す入力情報(例えば、発話情報、ジェスチャーによる操作内容を示す情報)を取得することができる。また、情報取得部61は、例えば、ユーザUの撮像画像を示す撮像情報をスマートスピーカ1、端末装置3、機器4、またはセンサ装置5から取得することができる。
また、情報取得部61は、ユーザUの周囲に存在する1以上の機器(例えば、スマートスピーカ1、端末装置3、機器4など)への操作履歴を示す操作履歴情報をスマートスピーカ1、端末装置3、または機器4から取得することができる。
情報出力部62は、出力態様決定部65によって決定される出力態様に基づいて、ユーザUの入力情報に応じたコンテンツ(聴覚的出力用コンテンツ)をコンテンツ記憶部52から取得する。例えば、情報出力部62は、出力態様決定部65によって決定される出力種別が聴覚的出力である場合、ユーザUの入力情報に応じたコンテンツであって音声のコンテンツをコンテンツ記憶部52から取得する。
また、情報出力部62は、出力態様決定部65によって決定される出力種別が視覚的出力である場合、ユーザUの入力情報に応じたコンテンツであって文字または画像のコンテンツ(視覚的出力用コンテンツ)をコンテンツ記憶部52のコンテンツテーブル72から取得する。また、情報出力部62は、出力態様決定部65によって決定される出力種別が聴覚的出力および視覚的出力である場合、ユーザUの入力情報に応じたコンテンツであって音声および文字(または画像)を含むコンテンツをコンテンツ記憶部52のコンテンツテーブル72から取得する。
情報出力部62は、出力態様決定部65によって決定される出力態様に基づいて、記憶部42から取得したコンテンツをスマートスピーカ1および端末装置3の少なくとも一つに出力する。情報出力部62は、出力態様決定部65によって決定される出力先の機器アドレスを記憶部42のユーザ情報テーブル74から取得し、取得した機器アドレス宛にコンテンツを送信する。
例えば、情報出力部62は、出力態様決定部65によって決定される出力先がスマートスピーカ1である場合、記憶部42から取得したコンテンツをスマートスピーカ1の機器アドレス宛へ送信する。また、情報出力部62は、出力態様決定部65によって決定される出力先が端末装置3である場合、記憶部42から取得したコンテンツを端末装置3の機器アドレス宛へ送信する。
コンテキスト取得部63は、ユーザUに関するコンテキスト情報を取得するコンテンツ取得処理を実行する。コンテキスト取得部63は、情報取得部61で取得した情報からコンテキスト情報を取得することができる。コンテキスト取得部63によって取得されるコンテキスト情報は、コンテキスト取得部35によって取得されるコンテキスト情報と同じであるが、コンテキスト取得部35によって取得されるコンテキスト情報と一部または全部が異なる情報であってもよい。
なお、コンテキスト取得部63が取得するコンテキスト情報には、ユーザUの指示の種別を示す入力種別情報が含まれる。入力種別情報は、例えば、ユーザUの指示が音声、ジェスチャー、および口の動きのいずれであるかを示す情報である。なお、コンテキスト取得部63は、スマートスピーカ1、端末装置3、機器4、またはセンサ装置5からユーザUの撮像画像が情報提供装置2へ送信される場合、ユーザUの撮像画像からユーザUのジェスチャーや口の動きを判定することで、入力種別情報を取得することもできる。
学習部64は、コンテキスト取得部63によって取得されるユーザU毎のコンテキスト情報に基づいて、発話テーブル71のタイミング判定モデルをユーザU毎且つコンテンツ毎に生成することができる。かかるタイミング判定モデルは、上述したように、発話に対する過去のユーザUの反応と発話時の過去のユーザUに関するコンテキスト情報とに基づいて生成されるモデルである。
学習部64は、スマートスピーカ1からの自発的な発話を開始してから予め設定された期間においてコンテキスト情報に含まれるユーザUの動作またはユーザUの発話がスマートスピーカ1からの自発的な発話に対して肯定的な反応であるか否かを教師データとする。
例えば、学習部64は、スマートスピーカ1の自発的発話に対するユーザUの発話が肯定的である場合、スマートスピーカ1の自発的発話に対して肯定的な反応であると判定する。例えば、学習部64は、「今日のニュースはいかがですか?」などの自発的発話に対して、ユーザUの発話が例えば「よろしく」、「うん」などである場合、肯定的な反応であると判定することができる。
また、学習部64は、スマートスピーカ1の自発的発話に対するユーザUの発話がない場合、またはスマートスピーカ1の自発的発話に対するユーザUの発話が否定的である場合、スマートスピーカ1の自発的発話に対して肯定的な反応ではないと判定する。例えば、学習部64は、「今日のニュースはいかがですか?」などの自発的発話に対して、ユーザUの発話がない場合、またはユーザUの発話が例えば「いらない」、「やめて」などである場合、肯定的な反応ではないと判定することができる。
なお、自発的発話に対するユーザUの反応が肯定的であるか否かは、上述した例に限定されない。例えば、学習部64は、ユーザUが頷いた場合に、自発的発話に対して肯定的な反応であると判定することができる。また、学習部64は、ユーザUがスマートスピーカ1から遠ざかった場合に、自発的発話に対して肯定的な反応ではないと判定することができる。
学習部64は、上述のように自発的発話に対して肯定的な反応であるか否かを教師データとし、自発的発話を開始してから予め設定された期間においてコンテキスト情報に含まれる1以上の情報を特徴量として機械学習を行ってタイミング判定モデルを生成および更新する。
なお、タイミング判定モデルは、上述した例に限定されるものではなく、例えば、SVM(Support Vector Machine)やその他の機械学習法を用いて生成されるモデルであってもよい。また、タイミング判定モデルの生成は、深層学習(ディープラーニング)の技術を用いて行われてもよい。例えば、タイミング判定モデルの生成は、DNN(Deep Neural Network)やRNN(Recurrent Neural Network)やCNN(Convolutional Neural Network)等の種々のディープラーニングの技術を適宜用いて行われてもよい。
学習部64は、生成したタイミング判定モデルを発話テーブル71に設定する。また、学習部64は、発話テーブル71に設定されたタイミング判定モデルを、新たに取得される発話に対するユーザUの反応とコンテキスト情報とに基づいてタイミング判定モデルを更新することができる。例えば、学習部64は、情報提供装置2の処理負荷が少ない時間帯(例えば、深夜)などにタイミング判定モデルを更新することができる。
また、学習部64は、複数のユーザUに共通のタイミング判定モデル(以下、共通判定モデルと記載する場合がある)をコンテンツ毎または特定のコンテンツについて生成することができる。この場合、学習部64は、発話に対する過去の複数のユーザUの反応と発話時の過去の複数のユーザUに関するコンテキスト情報とに基づいて、共通判定モデルを生成することができる。
また、学習部64は、共通判定モデルをコンテンツ毎に生成した後、かかる共通判定モデルをベースにして新たに取得される発話に対する各ユーザUの反応とコンテキスト情報とに基づいて、各ユーザUに固有のタイミング判定モデルを生成することもできる。
また、学習部64は、複数のコンテンツに共通かつ複数のユーザUに共通のタイミング判定モデルを生成することもできる。この場合、学習部64は、任意の発話に対する過去の複数のユーザUの反応と任意の発話時の過去の複数のユーザUに関するコンテキスト情報とに基づいて、複数のユーザUに共通のタイミング判定モデルを生成することができる。
また、学習部64は、コンテンツに対する過去のユーザUの反応と過去のユーザUに関するコンテキスト情報とに基づいて出力態様毎に出力態様判定モデルを生成することができる。例えば、ユーザUの反応が否定的な反応であるか否かまたは肯定的な反応であるか否かを教師データとし、ユーザUの反応時のコンテキスト情報を特徴量として機械学習を行うことができる。
否定的な反応は、例えば、スマートスピーカ1からコンテンツが音声として出力された場合におけるユーザUの否定的な発話(例えば、「いらない」や「やめて」など)である。また、否定的な反応は、例えば、端末装置3からコンテンツが文字または画像として出力された場合におけるユーザUの端末装置3に対する非操作である。
また、肯定的な反応は、例えば、スマートスピーカ1からコンテンツが音声として出力された場合におけるユーザUの否定的な発話がない状態である。肯定的な反応は、例えば、端末装置3からコンテンツが文字または画像として出力された場合における端末装置3に対する操作である。
出力態様決定部65は、コンテンツの出力要求があった場合、コンテキスト取得部63によって取得されたコンテキスト情報に基づいて、ユーザUに提供されるコンテンツの出力態様を決定する。出力態様には出力種別および出力先が含まれるが、出力態様決定部65は、出力種別および出力先の一方のみを決定することもできる。出力態様決定部65による出力態様の決定は、出力態様判定情報記憶部56に記憶された上述の出力態様判定情報を用いて行われる。
出力態様決定部65は、コンテキスト情報に含まれるユーザUの状況を示す状況情報に基づいて、出力態様を決定することができる。例えば、出力態様決定部65は、ユーザUが移動中である場合、出力種別を聴覚的出力とし且つ出力先をスマートスピーカ1とする態様を、コンテンツの出力態様として決定することができる。これにより、ユーザUは移動しながら端末装置3の画面を見ることなくコンテンツを把握することができる。
また、出力態様決定部65は、スマートスピーカ1および端末装置3のうちユーザUの現在位置に近い機器を出力先とすることができ、これにより、ユーザUによるコンテンツの把握を容易にすることができる。
また、出力態様決定部65は、ユーザUが会話中である場合、出力種別を視覚的出力とし且つ出力先を端末装置3とする態様を、コンテンツの出力態様として決定することができる。これにより、ユーザUが会話を中断することなくコンテンツを把握することができる。
また、出力態様決定部65は、コンテキスト情報に含まれるユーザUの周囲の状況を示す周囲情報に基づいて、出力態様を決定することができる。例えば、出力態様決定部65は、ユーザUの周囲に他人が存在する場合に、出力種別を視覚的出力とし且つ出力先を端末装置3とする態様を、コンテンツの出力態様として決定することができる。これにより、例えば、コンテンツがユーザUのスケジュールやユーザUへのメールである場合に、スマートスピーカ1からコンテンツで音声出力されないため、ユーザUのスケジュールやメールを他人に知られることを防止することができる。
出力態様決定部65は、ユーザUの周囲に存在する他人が寝ている場合に、出力種別を視覚的出力とし且つ出力先を端末装置3とする態様を、コンテンツの出力態様として決定することができる。これにより、例えば、ユーザUの周囲で寝ている他人をコンテンツの出力によって起こしてしまうといった事態を回避することができる。
また、出力態様決定部65は、ユーザUの周囲の音が大きい場合に、出力種別を視覚的出力とし且つ出力先を端末装置3とする態様を、コンテンツの出力態様として決定することができる。これにより、ユーザUの周囲の騒音や機器4の発する音でコンテンツが把握できなくなるといった事態を回避することができる。
また、出力態様決定部65は、ユーザUの周囲に他人が存在しない場合や、ユーザUの周囲の音が小さい場合、出力種別を聴覚的出力とし且つ出力先をスマートスピーカ1とする態様を、コンテンツの出力態様として決定することができる。これにより、ユーザUは端末装置3の画面を見ることなく、コンテンツを把握することができる。
また、出力態様決定部65は、スマートスピーカ1への入力種別がジェスチャーまたは口の動きである場合、出力種別を視覚的出力とし且つ出力先を端末装置3とする態様を、コンテンツの出力態様として決定することができる。また、出力態様決定部65は、スマートスピーカ1への発話(有音発話)である場合、出力種別を聴覚的出力とし且つ出力先をスマートスピーカ1とする態様を、コンテンツの出力態様として決定することができる。
これにより、ユーザUは、所望の出力態様に応じた入力種別でスマートスピーカ1へ入力することができ、ユーザUは、スマートスピーカ1または端末装置3から所望の出力態様でコンテンツを確認することができる。出力態様決定部65が出力態様判定モデルに基づいて入力種別に応じた出力態様を決定する場合、出力態様判定モデルは、例えば、入力種別を特徴量としての重みを大きくしたり、特徴量を入力種別のみとしたりすることで、出力態様決定部65は、入力種別に応じた出力態様を決定することができる。なお、出力態様決定部65は、入力種別と出力態様とが入力種別毎に対応付けられた出力態様判定テーブルに基づいて、入力種別に応じた出力態様を決定することもできる。
また、出力態様決定部65は、出力態様判定情報として出力態様毎の出力態様判定モデルを含む場合、出力態様毎の出力態様判定モデルにコンテキスト情報を入力する。出力態様決定部65は、出力態様毎の出力態様判定モデルの出力に基づいて、コンテンツの出力態様を決定する。
例えば、ユーザUの反応が否定的な反応であるか否かを教師データとして出力態様判定モデルが生成される場合、出力態様決定部65は、出力するスコアが最も低い出力態様判定モデルに対応する出力態様を、コンテンツの出力態様として決定することができる。また、ユーザUの反応が肯定的な反応であるか否かを教師データとして出力態様判定モデルが生成される場合、出力態様決定部65は、出力するスコアが最も高い出力態様判定モデルに対応する出力態様を、コンテンツの出力態様として決定することができる。
このように、出力態様決定部65は、ユーザUの状況やユーザUの周囲の状況に応じてコンテンツの出力態様を決定することができるため、ユーザUへのコンテンツの提供を適切に行うことができる。
検出部66は、スマートスピーカ1の音声出力器11または端末装置3の音声出力器(図示せず)から音声広告が出力された場合のユーザUの振る舞いを検出する。検出部66は、情報取得部61によって取得される撮像情報を画像解析することで、音声広告が出力された場合のユーザUの振る舞いを検出することができる。
例えば、検出部66は、情報取得部61によって取得される撮像情報に基づいて、ユーザUの目線の動き、ユーザUの頭部の動き、ユーザUの口の動き、ユーザUの手の動き、およびユーザUの足の動きのうち少なくとも一つの身体的振る舞いをユーザUの振る舞いとして検出することができる。
また、検出部66は、情報取得部61によって取得される撮像情報に基づいて、ユーザUが行っている作業の状態を検出することができる。例えば、検出部66は、ユーザUが食器洗い、ミシンでの縫製、および料理といった作業を中断したか否かを検出することができる。
また、検出部66は、情報取得部61によって取得される音情報を音響解析することで、音声広告が出力された場合のユーザUの振る舞いを検出することができる。例えば、検出部66は、音情報に基づいて、ユーザUの会話における振る舞い、ユーザUによるスマートスピーカ1への発話による問いかけ、ユーザUが行っていた作業における振る舞い、およびユーザUの機器4への振る舞いなどを検出することができる。
具体的には、検出部66は、音情報に基づいて、会話中のユーザUが発話を止める、および会話中のユーザUが発話の音量を下げるといった振る舞いを検出することができる。また、検出部66は、ユーザUが情報を検索するための発話、およびユーザUが情報を確認するための発話といった振る舞いを検出することができる。
また、検出部66は、音情報に基づいて、食器洗いや料理といった作業をユーザUが中断したか否かを検出することができる。例えば、検出部66は、水道の蛇口から水が吐出する音が消えた場合や食器を洗う音が消えた場合、食器洗いを中断したと判定することができる。
また、ユーザUが機器4をオフすることで機器4から出力される音である機器音が停止するため、検出部66は、音情報に基づいて、ユーザUが機器4をオフする振る舞いを行ったことを検出することができる。検出部66が音情報に基づいてオフを検出する機器4は、例えば、電子レンジ、洗濯機、食器洗浄機、ミシン、テレビジョン受像機、ラジオ受信器などの比較的大きな音を発する機器である。
また、検出部66は、情報取得部61によって取得された操作履歴情報に基づいて、スマートスピーカ1、端末装置3、または機器4へのユーザUの振る舞いを検出することができる。例えば、検出部66は、操作履歴情報に基づいて、ユーザUが機器をオフしたりオンしたりする振る舞いおよびユーザUが情報を検索する振る舞いなどを検出することができる。
判定部67は、検出部66によって検出されたユーザUの振る舞いに基づいて音声広告がユーザUに受容されたか否かを判定する。例えば、判定部67は、検出部66によって検出されたユーザUの身体的な振る舞いが特定の振る舞いである場合に、音声広告がユーザUに受容されたと判定する。
特定の振る舞いは、例えば、広告出力期間においてユーザUが一定時間以上視線をスマートスピーカ1に向ける、音声広告の出力開始時に移動中のユーザUが広告出力期間において一定時間以上移動を停止する、および広告出力期間においてユーザUが頷くなどといった振る舞いである。また、特定の振る舞いは、音声広告の出力開始前に継続的に手が動いていたユーザUが広告出力期間において一定時間以上手を止める、およびユーザUが特定のジェスチャーをしたなどといった振る舞いである。
また、判定部67は、検出部66が音情報に基づいて検出したユーザUの振る舞いが特定の振る舞いである場合に、音声広告がユーザUに受容されたと判定する。特定の振る舞いは、例えば、会話中のユーザUが発話を止める、会話中のユーザUが発話の音量を下げる、ユーザUが音声広告に関する発話をする、ユーザUが作業を中断する、およびユーザUが機器をオフするなどといった振る舞いである。なお、ユーザUによる音声広告に関する発話は、例えば、「それで?」、「続きは?」などである。
また、判定部67は、検出部66が操作履歴情報に基づいて検出したユーザUの振る舞いが特定の振る舞いである場合に、音声広告がユーザUに受容されたと判定する。特定の振る舞いは、例えば、ユーザUが音声広告の広告対象の商品またはサービスに関する検索をする、およびユーザUが機器をオフするなどといった振る舞いである。
判定部67は、ユーザUの振る舞いが否定的な振る舞いである場合に、音声広告がユーザUに受容されていないと判定することができる。否定的な振る舞いは、例えば、ユーザUが否定的な発話をする、およびユーザUが否定的な身体的振る舞いをするなどといった振る舞いである。
例えば、判定部67は、ユーザUが「やめて」、「聞きたくない」、および「嫌い」といった否定的な発話をした場合に、ユーザUが否定的な振る舞いをしたと判定することができる。また、例えば、判定部67は、ユーザUが耳を手で塞いだ場合に、ユーザUが否定的な振る舞いをしたと判定することができる。
なお、判定部67は、ユーザUの振る舞いが特定の振る舞いでないと判定した場合、音声広告がユーザUに受容されていないと判定することもできる。これにより、判定部67はユーザUが否定的な振る舞いをしたか否かを判定しなくてもよく、処理負荷が軽減される。
また、判定部67は、ユーザUの振る舞いが特定の振る舞いでも否定的な振る舞いでもないと判定した場合、ユーザUによる音声広告の非受容度が低いと判定し、ユーザUの振る舞いが否定的な振る舞いである場合、ユーザUによる音声広告の非受容度が高いと判定することもできる。
また、判定部67は、ユーザUの振る舞いが特定の振る舞いである場合に、音声広告がユーザUに受容されたと判定する処理を行わないこともできる。例えば、判定部67は、ユーザUの振る舞いが否定的な振る舞いである場合に、音声広告がユーザUに受容されていないと判定し、ユーザUの振る舞いが否定的な振る舞いではない場合に、音声広告がユーザUに受容されていると判定することができる。
上述した特定の振る舞いおよび否定的な振る舞いは、ユーザUの属性に応じて設定される。ユーザUの属性は、例えば、性別、年齢、住所、および職業の少なくとも一つを含む。例えば、判定部67は、ユーザUが子供である場合、ユーザUが飛び跳ねる、およびユーザUが踊り出すといった振る舞いをした場合、音声広告がユーザUに受容されたと判定する。
なお、判定部67は、ユーザUに受容されたと判定する基準とする特定の振る舞いを音声広告の時間的長さや種類に応じて変更することもできる。また、判定部67は、一つの音声広告を出力している期間(例えば、30秒)における所定期間(例えば、5秒)毎に、音声広告がユーザUに受容されているか否かを判定することもできる。
広告効果更新部68は、音声広告がユーザUに受容されたと判定すると、音声広告テーブル73において音声広告の受容回数を更新する。これにより、テキスト広告またはバナー広告のクリックに相当する広告効果を音声広告に対して得ることができる。そして、広告効果更新部68は、音声広告の出力回数に対する音声広告の受容回数の割合である受容率を演算し、演算した受容率を音声広告効果として音声広告テーブル73に設定することができる。これにより、音声広告においてCTRに相当する広告効果指標を得ることができる。
また、広告効果更新部68は、音声広告のコンバージョン回数を外部装置から取得することができる。音声広告のコンバージョン回数とは、商品やサービスの購入、サンプルの申し込み、およびパンフレットの申し込みといった音声広告の目的を達成した回数である。広告効果更新部68は、音声広告の受容回数に対する音声広告のコンバージョン回数の割合であるコンバージョン率を演算し、演算したコンバージョン率を音声広告効果とすることができる。これにより、音声広告においてCVR(Conversion Rate)に相当する広告効果指標を得ることができる。
また、判定部67によって非受容度が判定された場合、広告効果更新部68は、音声広告の出力回数に対する音声広告の非受容度毎の非受容回数の割合を演算することができる。この場合、広告効果更新部68は、例えば、非受容度が2の非受容回数を音声広告の受容回数から減算し、減算結果を音声広告の受容回数とすることもできる。
〔4.情報処理システム100の処理フロー〕
次に、実施形態に係る情報処理システム100による発話制御処理の手順について説明する。図10および図11は、実施形態に係る情報処理システム100による発話制御処理の一例を示すフローチャートである。
まず、スマートスピーカ1の発話制御処理について説明する。図10に示すように、スマートスピーカ1の制御部15は、コンテンツ出力処理中か否かを判定する(ステップS10)。制御部15は、ステップS10の処理において、例えば、制御部15がユーザUからコンテンツの出力要求を受け付けてから出力要求に対応するコンテンツの出力が完了するまでの間をコンテンツ出力処理中として扱う。
制御部15は、コンテンツ出力中ではないと判定した場合(ステップS10:No)、発話処理中か否かを判定する(ステップS11)。制御部15は、ステップS11の処理において、例えば、音声入力器12からの発話の出力を開始してから発話に対するユーザUの要求を受け可能な期間が終了するまでの期間を発話処理中として扱う。
制御部15は、発話処理中ではないと判定した場合(ステップS11:No)、ユーザUに関するコンテキスト情報を取得し(ステップS12)、取得したコンテキスト情報を発話テーブル21に含まれる各タイミング判定モデルに入力する(ステップS13)。
つづいて、制御部15は、予め設定された閾値以上のスコアを出力するタイミング判定モデルがあるか否かを判定する(ステップS14)。制御部15は、閾値以上のスコアを出力するタイミング判定モデルがあると判定した場合(ステップS14:Yes)、閾値以上のスコアを出力するタイミング判定モデルが複数であるか否かを判定する(ステップS15)。
制御部15は、タイミング判定モデルが複数であると判定した場合(ステップS15:Yes)、最もスコアが高いタイミング判定モデルを選択する(ステップS16)。また、制御部15は、タイミング判定モデルが複数ではないと判定した場合(ステップS15:No)、閾値以上のスコアを出力するタイミング判定モデルを選択する(ステップS17)。制御部15は、選択したタイミング判定モデルに関連付けられた発話内容を発話テーブル21から取得し、取得した発話内容を音声入力器12から出力する(ステップS18)。
制御部15は、ステップS18の処理が終了した場合、コンテンツ出力中であると判定した場合(ステップS10:Yes)、発話処理中であると判定した場合(ステップS11:Yes)、または閾値上のスコアを出力するタイミング判定モデルがないと判定した場合(ステップS14:No)、図10に示す処理を終了する。
次に、情報提供装置2の処理を説明する。図11に示すように、情報提供装置2の制御部43は、スマートスピーカ1が自発的に発話をする時のユーザUの反応を示す反応情報を取得する(ステップS20)。また、制御部43は、スマートスピーカ1が自発的に発話をする時のユーザUに関するコンテキスト情報を取得する(ステップS21)。制御部43は、ステップS20で取得した反応情報とステップS21で取得したコンテキスト情報を記憶部42に記憶する(ステップS22)。
つづいて、制御部43は、記憶部42に記憶した反応情報およびコンテキスト情報に基づいて、コンテンツ毎のタイミング判定モデルを生成または更新し(ステップS23)、図11に示す処理を終了する。例えば、制御部43は、発話テーブル71にタイミング判定モデルが生成されていないコンテンツのタイミング判定モデルを生成した場合、発話テーブル71にタイミング判定モデルを追加する。また、制御部43は、発話テーブル71のタイミング判定モデルを更新した場合、更新したタイミング判定モデルを発話テーブル71に上書きする。
次に、情報処理システム100による出力制御処理について説明する。図12は、実施形態に係る情報処理システム100による出力制御処理の一例を示すフローチャートである。
図12に示すように、制御部43は、スマートスピーカ1からコンテンツの出力要求があるか否かを判定する(ステップS30)。制御部43は、コンテンツの出力要求があると判定した場合(ステップS30:Yes)、出力要求を行ったスマートスピーカ1のユーザUに関するコンテキスト情報を取得する(ステップS31)。
そして、制御部43は、取得したコンテキスト情報に基づいて、出力要求されたコンテンツの出力態様を決定する(ステップS32)。制御部43は、ステップS32で決定した出力態様でコンテンツを出力する(ステップS33)。制御部43は、ステップS33の処理が終了した場合、または出力要求がないと判定した場合(ステップS30:No)、図12に示す処理を終了する。
次に、情報処理システム100による音声情報効果判定処理について説明する。図13は、実施形態に係る情報処理システム100による音声情報効果判定処理の一例を示すフローチャートである。
図13に示すように、情報提供装置2の制御部43は、音声広告の出力タイミングであるか否かを判定する(ステップS40)。制御部43は、音声広告の出力タイミングであると判定した場合(ステップS40:Yes)、音声広告をスマートスピーカ1へ出力する(ステップS41)。
つづいて、制御部43は、音声広告テーブル73において、ステップS41で出力した音声広告の出力回数をインクリメントする(ステップS42)。また、制御部43は、音声出力期間における撮像情報、音情報および機器操作情報をスマートスピーカ1、端末装置3、機器4、およびセンサ装置5の少なくとも一つから取得する(ステップS43)。
制御部43は、ステップS43で取得した情報に基づいて、ユーザUの振る舞いを検出し(ステップS44)、検出した振る舞いが特定の振る舞いであるか否かを判定する(ステップS45)。制御部43は、ステップS44で検出した振る舞いが特定の振る舞いであると判定した場合(ステップS45:Yes)、音声広告がユーザUに受容されたと判定し(ステップS46)、音声広告テーブル73において、ステップS41で出力した音声広告の受容回数をインクリメントする(ステップS47)。
一方、制御部43は、ステップS44で検出した振る舞いが特定の振る舞いではないと判定した場合(ステップS45:No)、音声広告がユーザUに受容されていないと判定する(ステップS48)。制御部43は、ステップS47またはステップS48の処理が終了した場合、または、音声広告の出力タイミングではないと判定した場合(ステップS40:No)、図13に示す処理を終了する。
〔5.変形例〕
上述した例では、情報提供装置2において、タイミング判定モデルを生成する学習部64が設けられるが、スマートスピーカ1に学習部64が設けられてもよい。また、上述した例では、スマートスピーカ1において、コンテキスト取得部35およびタイミング決定部36が設けられるが、情報提供装置2において、コンテキスト取得部35およびタイミング決定部36が設けられてもよい。
また、上述した例では、タイミング判定モデルを用いて発話タイミングを決定したが、過去の発話に対するユーザUの反応を考慮して発話タイミングを決定することができればよく、上述した例に限定されない。例えば、スマートスピーカ1は、タイミング判定モデルに代えて、過去の発話に対する反応情報とコンテキスト情報とに基づいて生成される判定条件情報によって、現在のコンテキストが発話に適しているコンテキストであるか否かを判定することもできる。なお、上記判定条件情報には、発話タイミングであると判定するコンテキストの条件が含まれる。
また、上述した例では、ユーザUのジェスチャーや口の動きをスマートスピーカ1で検出したが、ユーザUのジェスチャーや口の動きを情報提供装置2で検出する構成であってもよい。
また、上述した例では、スマートスピーカ1から出力される音声情報の一例として音声広告を挙げて説明したが、スマートスピーカ1から出力される音声情報は、音声広告に限定されない。例えば、情報提供装置2の制御部43は、「今日は晴れですね」、「今日は仕事お休みですね」といったプッシュ発話型の音声情報などをスマートスピーカ1から出力した場合のユーザUの振る舞いに基づいて、音声情報がユーザUに受容されたか否かを判定することができる。そして、情報提供装置の制御部43は、音声情報の出力回数に対する音声情報の受容回数の割合を演算し、演算した割合を音声情報効果とすることができる。これにより、音声情報においてCTRに相当する効果指標を得ることができる。
なお、効果の判定対象となる音声情報は、情報提供装置2からスマートスピーカ1へ出力する音声情報に限定されず、スマートスピーカ1に記憶された音声情報であってもよい。
また、上述した例では、情報処理システム100は、ユーザUの肯定的な反応でない場合であっても、ユーザUが受容したと判定する場合があるが、ユーザUが肯定的な反応である場合のみ、ユーザUが受容したと判定することもできる。すなわち、情報処理システム100は、音声情報効果判定処理において、発話制御処理および出力制御処理におけるユーザUの肯定的な反応があったと判定されるユーザUの状態を、ユーザUの受容し、それ以外をユーザの非受容とすることができる。また、情報処理システム100は、発話制御処理および出力制御処理において、音声情報効果判定処理におけるユーザUが受容したと判定されるユーザUの状態を、ユーザUの肯定的な反応とし、それ以外をユーザの肯定的でない反応とすることができる。
〔6.プログラム〕
上述した実施形態におけるスマートスピーカ1および情報提供装置2の各々は、例えば図14に示すような構成のコンピュータ200がプログラムを実行することによって実現される。図14は、プログラムを実行するコンピュータのハードウェア構成の一例を示す図である。コンピュータ200は、CPU(Central Processing Unit)201、RAM(Random Access Memory)202、ROM(Read Only Memory)203、HDD(Hard Disk Drive)204、通信インターフェイス(I/F)205、入出力インターフェイス(I/F)206、およびメディアインターフェイス(I/F)207を備える。
CPU201は、ROM203またはHDD204に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM203は、コンピュータ200の起動時にCPU201によって実行されるブートプログラムや、コンピュータ200のハードウェアに依存するプログラム等を格納する。 HDD204は、CPU201によって実行されるプログラムによって使用されるデータ等を格納する。通信インターフェイス205は、ネットワーク6を介して他の機器からデータを受信してCPU201へ送り、CPU201が生成したデータを、ネットワーク6を介して他の機器へ送信する。
CPU201は、入出力インターフェイス206を介して、ディスプレイやプリンタ等の出力装置、および、キーボードやマウス等の入力装置を制御する。CPU201は、入出力インターフェイス206を介して、入力装置からデータを取得する。また、CPU201は、生成したデータを、入出力インターフェイス206を介して出力装置へ出力する。
メディアインターフェイス207は、記録媒体208に格納されたプログラムまたはデータを読み取り、RAM202を介してCPU201に提供する。CPU201は、当該プログラムを、メディアインターフェイス207を介して記録媒体208からRAM202上にロードし、ロードしたプログラムを実行する。記録媒体208は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
コンピュータ200が上述した実施形態に係るスマートスピーカ1として機能する場合、コンピュータ200のCPU201は、RAM202上にロードされたプログラムを実行することにより、図3に示す入力処理部31、情報出力部32、情報取得部33、出力処理部34、コンテキスト取得部35、およびタイミング決定部36の各機能を実現する。また、例えば、HDD204は、図3に示す記憶部14と同様の情報を記憶する。
また、コンピュータ200が上述した実施形態に係る情報提供装置2として機能する場合、コンピュータ200のCPU201は、RAM202上にロードされたプログラムを実行することにより、図5に示す情報取得部61、情報出力部62、コンテキスト取得部63、学習部64、出力態様決定部65、検出部66、判定部67、および広告効果更新部68の各機能を実現する。また、例えば、HDD204は、図5に示す記憶部42と同様の情報を記憶する。
コンピュータ200のCPU201は、プログラムを、記録媒体208から読み取って実行するが、他の例として、他の装置から、ネットワーク6を介してこれらのプログラムを取得してもよい。
〔7.効果〕
上述したように、実施形態に係る情報提供装置2(情報処理装置の一例)は、音声出力器11から音声広告が出力された場合のユーザUの振る舞いを検出する検出部66と、検出部66によって検出された振る舞いに基づいて音声情報がユーザUに受容されたか否かを判定する判定部67とを備える。これにより、ユーザUに提供される音声情報の効果を測定することができる。
また、検出部66は、ユーザUを撮像する撮像部から出力されるユーザUの撮像画像に基づいて、ユーザUの振る舞いを検出する。これにより、ユーザUの発話による音声情報への反応がない場合であっても、音声情報がユーザUに受容されたか否かを判定することが可能となる。
また、検出部66は、ユーザUの発話をユーザUの振る舞いとして検出する。判定部67は、ユーザUの発話の状態に基づいて、音声情報がユーザUに受容されたか否かを判定する。例えば、判定部67は、音声情報の出力開始後にユーザUの発話が止まった場合に、音声情報がユーザUに受容されたと判定する。また、判定部67は、音声情報の出力開始後に音声情報に関する音声をユーザUが音声入力器12に入力した場合に、音声情報がユーザUに受容されたと判定する。これにより、音声情報がユーザUに受容されたか否かをより適切に判定することができる。
また、検出部66は、ユーザUの周囲に存在する機器4から出力される音である機器音の変化をユーザUの振る舞いとして検出する。判定部67は、音声情報の出力開始後に機器音が停止または変更された場合に、音声情報がユーザUに受容されたと判定する。これにより、ユーザUからの発話や身体的な振る舞いがない場合であっても、音声情報がユーザUに受容されたか否かを適切に判定することができる。
また、検出部66は、音声情報の出力開始後のユーザUによる機器4の操作履歴に基づいて、ユーザUの振る舞いを検出する。これにより、ユーザUからの発話や身体的な振る舞いがない場合であっても、音声情報がユーザUに受容されたか否かを適切に判定することができる。
また、検出部66は、ユーザUの目線の動き、頭部の動き、口の動き、手の動き、および足の動きのうち少なくとも一つの身体的な振る舞いを検出する。これにより、例えば、ユーザUが音声情報を受容する身体的な振る舞いをした場合に、音声情報がユーザUに受容されたか否かを判定することが可能となる。
また、検出部66は、ユーザUの周囲に存在する音声入力器12に入力される音に基づいて、ユーザUの振る舞いを検出する。これにより、例えば、ユーザUやユーザUの周囲を撮像する撮像部がない場合であっても、ユーザUの振る舞いを検出することができる。
また、判定部67は、音声出力器11から音声情報が出力された場合のユーザUによる機器の操作履歴に音声情報に関する検索が含まれる場合に、音声情報がユーザUに受容されたと判定する。これにより、ユーザUからの発話や身体的な振る舞いがない場合であっても、音声情報がユーザUに受容されたか否かを適切に判定することができる。
また、判定部67は、検出部66によって検出されたユーザUの振る舞いが特定の振る舞いである場合に、音声情報がユーザUに受容されたと判定する。そして、特定の振る舞いは、ユーザUの属性に応じて設定される。これにより、音声情報がユーザUに受容されたか否かを適切に判定することができる。
また、情報提供装置2は、音声情報のユーザUへの出力回数(提供回数の一例)と音声情報のユーザUによる受容回数とに基づいて、音声情報の効果を更新する広告効果更新部68(効果更新部の一例)を備える。これにより、音声情報の効果を精度よく測定することができる。
〔8.その他〕
また、上記実施形態及び変形例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。
この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
例えば、情報処理システム100は、入力処理部31、コンテキスト取得部35およびタイミング決定部36の少なくとも一つをスマートスピーカ1とは異なる情報提供装置2または別の装置に設ける構成であってもよい。また、スマートスピーカ1は、上述した情報提供装置2の処理の一部または全部を行うことができる構成であってもよい。なお、情報提供装置2は、複数のサーバコンピュータで実現してもよく、また、機能によっては外部のプラットフォーム等をAPI(Application Programming Interface)やネットワークコンピューティングなどで呼び出して実現するなど、構成は柔軟に変更できる。
また、上述してきた実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、入力処理部31は、入力処理手段や入力処理回路に読み替えることができる。