以下に、本願にかかる情報処理装置、情報処理方法および情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ説明する。なお、この実施形態により本願にかかる情報処理装置、情報処理方法および情報処理プログラムが限定されるものではない。また、以下の実施形態において、同一の部位には同一の符号を付し、重複する説明は省略される。
〔1.情報処理の一例〕
図1を用いて、実施形態にかかる情報処理の一例について説明する。また、実施形態にかかる情報処理の一例をより詳細に説明する場合には適宜図2および図3を用いることにする。図1は、実施形態にかかる情報処理の一例を示す図である。実施形態にかかる情報処理は、図1に示す情報処理装置100によって行われる。図1を用いて実施形態にかかる情報処理の一例を説明する前に、まずは、実施形態にかかる情報処理の概要を示すことにする。
まず、図4を用いて、実施形態にかかる情報処理システムについて説明する。図4は、実施形態にかかる情報処理システム1の構成例を示す図である。実施形態にかかる情報処理システム1は、図4に示すように、端末装置10と、外部装置30と、情報処理装置100とを含む。端末装置10、外部装置30、情報処理装置100は、ネットワークNを介して有線または無線により通信可能に接続される。なお、図4に示す情報処理システム1には、複数台の端末装置10や、複数台の外部装置30や、複数台の情報処理装置100が含まれてよい。
端末装置10は、ユーザによって利用される情報処理装置である。端末装置10は、例えば、スマートフォンや、タブレット型端末や、ノート型PC(Personal Computer)や、デスクトップPCや、携帯電話機や、PDA(Personal Digital Assistant)等である。端末装置10は、ユーザによるインターネット上の行動に応じて、様々な情報処理を実行する。例えば、端末装置10は、表示画面に各種のコンテンツを表示することによりユーザによる閲覧行動を可能にする。また、例えば、端末装置10は、表示画面に各種の商品情報を表示することによりユーザによる購買行動を実現する。もちろん、ユーザによるインターネット上の行動は、閲覧行動や購買行動に限定されるものではない。例えば、インターネット上の行動としては、所定のSNSサイトに対して投稿される文章の入力行動等も挙げられる。
対話エージェントシステム20は、ユーザとの対話を実現する対話ロボットである。対話エージェントシステム20は、据置型の端末装置であってもよいし、アプリケーションとして、例えば、端末装置10内に実現されてもよい。また、対話エージェントシステム20は、ユーザと対話しながら道案内するカーナビゲーションシステムとして実現されてもよい。本実施形態では、据置型の端末装置として室内に設置されているものとする。また、以下では、対話エージェントシステム20を「対話システム20」と略して表記する場合がある。
また、例えば、情報処理装置100は、対話システム20を介して、ユーザ毎に当該ユーザの発話を示す発話情報を発話履歴として取得しているものとする。情報処理装置100は、対話システム20から直接発話情報を取得してもよいし、発話情報が所定のサーバ装置に蓄積されているのであれば、所定のサーバ装置にアクセスして取得してもよい。
外部装置30は、各種サービスを提供するサーバ装置である。例えば、外部装置30は、サービスの数だけ存在するが、本実施形態では、説明を簡単にするために、1台の外部装置30が各種サービスを提供しているものとする。例えば、外部装置30は、ニュース記事等の記事コンテンツが一覧表示されるようなポータルサイトを提供する。また、外部装置30は、例えば、ショッピングサービス、オークションサービス、検索サービス、情報共有サービス、動画配信サービス等の各種サービスを提供する。また、これらサービスに対応するページでは、適宜、広告コンテンツの表示も行われる。また、外部装置30、および、後述する情報処理装置100を管理する事業者は同一であるものとする。したがって、上記の各種サービスは、かかる事業者に運営されるサービスとも言い換えることができる。
ここで、実施形態にかかる情報処理が行われるにあたっての前提について説明する。例えば、人の性格はその人の人間性の形成に寄与するものであるため、長期的には変化することの無い一様なものと解釈できる。一方で、人は、会話している最中、あるいは、運転している最中等に、周りの状況に応じて、性格が一時的に変化する場合がある。例えば、普段は明るく開放的な性格である人も、会話の中で嫌な出来事を思い出したりすると、一時的に精神不安定な性格に変わってしまう場合がある。このような場合、この嫌な出来事を助長させるかのような応答メッセージが出力されてしまったり、この嫌な出来事に関するコンテンツ配信がされてしまうとユーザはより気分を害する可能性がある。
一方で、性格が一時的に変化した場合、この変化にも対応できればユーザの満足度は高くなると考えられる。例えば、精神不安定な性格に変わってしまった場合、元の開放的な性格に戻るような態様の応答メッセージが出力されれば、ユーザの満足度は高くなる。また、精神不安定な性格に変わってしまった場合、例えば、癒しスポットや落ち着く場所に関するコンテンツが配信されれば、このようなコンテンツは今後ユーザにとって役立つコンテンツとなり得る。
ユーザの「性格」についても触れておく。本実施形態でいう「性格」は、嗜好性のような単なるユーザの属性情報とはべつものである。つまり、性格は、ユーザの人間性を形成するうえでベースとなっているもので、先天的傾向に基づく意欲や行動の傾向である。したがって、長期的にみると、性格は、一様なものと解することができる。
上記の前提を踏まえて、実施形態にかかる情報処理装置100は、以下の情報処理を行う。具体的には、情報処理装置100は、第1の期間において取得されたユーザのユーザ情報である第1ユーザ情報に基づき推定されたユーザの性格であって、第1の期間でのユーザの性格である第1の性格に変化が生じたか否かを判定する。そして、情報処理装置100は、第1の性格に変化が生じたと判定された場合には、第1の性格から変化した変化後の性格に応じて、ユーザに提供する情報を制御する。
例えば、情報処理装置100は、第1の期間より短い期間であって、現在の時間経過に対応する期間である第2の期間において取得されたユーザのユーザ情報である第2ユーザ情報と、第1の性格との間での情報の変化に基づいて、第1の性格に変化が生じたか否かを判定する。より具体的には、情報処理装置100は、第2の期間として、時間経過に追従するように期間の始点と終了点が変化する第2の期間において取得された第2ユーザ情報と、第1の性格との間での情報の変化に基づいて、第1の性格に変化が生じたか否かを判定する。例えば、情報処理装置100は、時間経過に応じて第2の期間が変化する度に、変化後の第2の期間において取得された第2ユーザ情報と、第1の性格との間での情報の変化に基づいて、第1の性格に変化が生じたか否かを判定する。
そして、情報処理装置100は、第1の性格に変化が生じたと判定された場合には、変化後の性格に応じて、ユーザの発話入力に対する対話システム20の応答に関する応答制御を行う。また、情報処理装置100は、第1の性格に変化が生じたと判定された場合には、コンテンツ配信に関する制御を行う。
なお、第1の期間とは、数秒間あるいは数分間といった短期間ではなく、例えば、少なくとも1週間程度のまとまった期間(長期間)を指す。後述するが、情報処理装置100は、この第1の期間の間でのユーザ情報(第1ユーザ情報)を用いることで、第1の期間でのユーザの性格である第1の性格を推定する。このように、情報処理装置100が、長期間分の第1ユーザ情報を用いて推定した第1の性格は、ユーザの人間性を形成するうえでベースとなっている性格であって、長い期間で見ると変わることの無い一様な性格を示す。一方で、第2の期間は、第1の期間よりも短く、例えば、数秒間あるいは数分間という短期間を指す。基本的にユーザは、第1の性格の性格の状態で生活している訳だが、第2の期間という短い期間で見ると、一時的に第1の性格から第2の性格へと変化することが起こり得るため、情報処理装置100は、この変化を検出するのである。また、以下の実施形態では、第1の期間は、過去の所定の1ヶ月間であるものとする。
ここからは、図1を用いて実施形態にかかる情報処理の一例について説明する。図1は、実施形態にかかる情報処理の一例を示す図である。図1では、実施形態にかかる情報処理の一例を手順を追って説明する。また、情報処理装置100が有する記憶部についても適宜説明する。
まず、情報処理装置100は、サンプルユーザの性格を推定する推定処理を行う(ステップS11)。サンプルユーザとは、後述するモデルや正解データを生成するために情報が利用されるユーザである。また、以下では、サンプルユーザを「Sユーザ」と表記する場合がある。
例えば、情報処理装置100は、所定の性格診断手法により、各Sユーザの性格を診断(各Sユーザがどの性格特性であるか診断)し、診断結果を診断結果記憶部121に格納する。例えば、情報処理装置100は、Big5とよばれる性格診断手法を用いて、開放性、真面目さ、外向性、協調性、精神安定性といった5項目の性格特性毎にスコアを算出し、算出したスコアに基づいて、各Sユーザがどの性格特性に最も当てはまるかを診断することができる。例えば、情報処理装置100は、Sユーザのうち、ユーザU1についてBig5を行った結果、開放性で最も高いスコアが得られたとすると、ユーザU1は性格特性「開放的」との診断結果を得る。言い換えれば、情報処理装置100は、ユーザU1は開放的な性格(開放性が高い性格)との診断結果を得る。
なお、情報処理装置100は、エコグラムと呼ばれる性格診断手法により、「厳しさ度」、「優しさ度」、「冷静度」、「自由気まま度」、「従順度」といった性格特性のスコアを算出し、算出したスコアに基づいて、各Sユーザがどの性格特性に最も当てはまるかを診断してもよい。また、情報処理装置100は、OKグラムと呼ばれる性格診断手法により、「他者否定性」、「他者肯定性」、「自己否定性」、「自己肯定性」といった性格特性のスコアを算出し、算出したスコアに基づいて、各Sユーザがどの性格特性に最も当てはまるかを診断してもよい。
また、このような性格診断結果は、例えば、予め各Sユーザに対していくつかの質問を行い、質問に対する回答に基づき得られた情報であってもよい。また、このような性格診断結果は、例えば、占いサイトやお見合いサイト等、Sユーザに対して提供された各種サービスにおける利用履歴から推定されたものであってもよい。本実施形態では、Big5に基づく性格診断結果を例に説明することにする。
診断結果記憶部121は、各Sユーザに対する性格診断で得られた性格診断結果を記憶する。図1の例では、診断結果記憶部121は、「性格特性」、「ユーザID」といった項目を有する。「性格特性」は、Big5での診断結果で得られる性格特性の候補を示す。「性格特性」には、開放的、真面目、外向的、協調的、精神不安定といった5項目が存在する。「ユーザID」は、対応する「性格特性」に属するSユーザを識別する識別情報を示す。
図1に示す診断結果記憶部121の例では、性格特性「開放的」に対して、ユーザID「U1、U3、U5」等が対応付けられている。かかる例は、情報処理装置100が、Big5により、ユーザU1、ユーザU3、ユーザU5に対して性格特性「開放的」との診断結果を得たことを示す。つまり、ユーザU1、U3、U5は、「開放的な性格」との診断結果が得られたことを示す。
次に、情報処理装置100は、性格特性毎に、当該性格特性に属する各Sユーザの第1の期間(長期)での行動を示す行動履歴を振り分け(対応付け)、振り分けた結果を分析結果記憶部122に格納する(ステップS12)。例えば、情報処理装置100は、性格特性毎に、当該性格特性に属するSユーザが第1の期間で行った発話を示す発話履歴を振り分ける。また、例えば、情報処理装置100は、性格特性毎に、当該性格特性に属するSユーザが第1の期間で行ったネット上での各種行動を示す行動履歴を振り分ける。この点について、図1に示す分析結果記憶部122の例を用いて説明する。
分析結果記憶部122は、性格特性と、当該性格特性のSユーザが行った行動との関係性が分析された分析結果に関する情報をさらに記憶するが、かかる分析処理については、ステップS13で詳細に説明する。
図1の例では、分析結果記憶部122は、「性格特性」、「発話履歴」、「行動履歴」、「発話傾向」、「行動傾向」といった項目を有する。「発話傾向」および「行動傾向」についてはステップS13の内容と絡めて説明する。「性格特性」は、Big5での性格診断での診断結果で得られる性格特性の候補を示す。「発話履歴」は、過去の所定の1ヶ月間である第1の期間における、各性格特性のSユーザの発話を示す発話情報の履歴を示す。図1に示す分析結果記憶部122では、情報処理装置100は、性格特性「開放的」に対応する「発話履歴」に対して、TK11、TK12、TK13等を振り分けている。かかる例は、開放的な性格ユーザは、TK11、TK12、TK13等で示される発話を行った例を示す。図1の例では、TK11といった概念的な記号で示しているが、実際には、例えば発話内容を示すテキストが入力される。
「行動履歴」は、過去の所定の1ヶ月間である第1の期間における、各性格特性のSユーザのインターネット上での行動を示す行動情報の履歴を示す。インターネット上での行動として、コンテンツの閲覧履歴、検索履歴、購買履歴等が挙げられるが、もちろんこれだけに限定されない。また、例えば、「行動履歴」を「閲覧履歴」とすると、「閲覧履歴」は、各性格特性のSユーザがどのようなコンテンツを閲覧したかを示す履歴情報、すなわち、閲覧された記事コンテンツのURL、閲覧された記事コンテンツの見出し文や詳細文の文字列(テキスト)を含む閲覧履歴である。図1に示す分析結果記憶部122では、情報処理装置100は、性格特性「開放的」に対応する「行動履歴」に対して、AcDA11、AcDA32、AcDA43等を振り分けている。かかる例は、開放的な性格のユーザは、AcDA11、AcDA32、AcDA43等で示されるコンテンツを閲覧した例を示す。
次に、情報処理装置100は、性格特性と、当該性格特性に属するSユーザの行動との関係性を分析する(ステップS13)。例えば、情報処理装置100は、分析結果記憶部122に記憶される性格特性毎の履歴情報(発話履歴、行動履歴)に基づいて、当該性格特性に属するサンプルユーザの第1の期間での行動傾向を分析する。例えば、情報処理装置100は、履歴情報に基づいて、性格特性毎に当該性格特性のSユーザはどのような言葉を発する傾向(発話傾向)にあるか、また、どのような行動(閲覧、検索、購入等)を起こす傾向(行動傾向)にあるかを分析する。そして、情報処理装置100は、分析結果として得られた「発話傾向」を示す情報、および、「行動傾向」を示す情報を分析結果記憶部122に格納する。
ここで、発話傾向は、対応する性格特性のSユーザの発話情報中に頻出する単語や表現、すなわち特徴語であってもよい。このような特徴語を抽出するために、情報処理装置100は、ステップS13において、相互情報量という指標を用いた分析処理を行うことができる。例えば、情報処理装置100は、発話情報に含まれる言葉と、当該発話情報を入力したSユーザの性格特性との間での相互情報量を算出し、算出した相互情報量が所定値以上の言葉を、当該性格特性に応じた特徴語として分類する。例えば、情報処理装置100は、発話情報から単語や頻出する表現等といった文字列を抽出し、抽出した文字列と性格特性との間の相互情報量を計算する。そして、情報処理装置100は、相互情報量の値が高い方から順に所定の数の特徴語をその性格特性に応じた特徴語として分類(選択)する。
また、情報処理装置100は、ステップS13での分析結果(分類結果)を用いて、性格特性が未知のユーザであって、Big5用の回答も得られていないような未知ユーザについて、性格特性を推定するためのモデルを生成し、生成したモデルも分析結果として分析結果記憶部122に格納しておくこともできる。
例えば、情報処理装置100は、性格特性と、当該性格特性に対応する特徴語との関係性を学習することにより、未知ユーザの発話情報が入力された場合に、この未知ユーザの性格特性を示す情報を出力するモデルを生成することができる。例えば、情報処理装置100は、特徴語をモデルに入力した際に、その特徴語と対応する性格特性を示す情報を出力するように、バックプロパゲーション等の技術を用いてモデルの学習を行うことでモデルを生成する。なお、情報処理装置100は、性格特性毎に、入力された特徴語と当該性格特性とが対応する確度を示すスコアを出力するようなモデルの学習を行ってもよい。
また、行動傾向も特徴語であってもよい。具体的には、行動傾向は、対応する性格特性のSユーザに閲覧されたコンテンツ中に頻出する単語や表現、すなわち特徴語であってもよい。ここでも情報処理装置100は、相互情報量という指標を用いた分析処理を行うことができる。例えば、情報処理装置100は、閲覧されたコンテンツに含まれる言葉と、当該コンテンツを閲覧したSユーザの性格特性との間での相互情報量を算出し、算出した相互情報量が所定値以上の言葉を、当該性格特性に応じた特徴語として分類する。例えば、情報処理装置100は、閲覧されたコンテンツから単語や頻出する表現等といった文字列を抽出し、抽出した文字列と性格特性との間の相互情報量を計算する。そして、情報処理装置100は、相互情報量の値が高い方から順に所定の数の特徴語をその性格特性に応じた特徴語として分類(選択)する。
また、情報処理装置100は、性格特性と、当該性格特性に対応する特徴語との関係性を学習することにより、未知ユーザの行動履歴(例えば、閲覧履歴)が入力された場合に、この未知ユーザの性格特性を示す情報を出力するモデルを生成することができる。
そして、図1に示す分析結果記憶部122では、情報処理装置100は、例えば、性格特性「開放的」に対応する「発話履歴」に対して、W11、W32を入力している。かかる例は、開放的な性格のユーザは、W11やW32で示される言葉を含む発話を行う傾向にある例を示す。また、図1に示す分析結果記憶部122では、情報処理装置100は、例えば、性格特性「開放的」に対応する「行動履歴」に対して、FE11、FE32を入力している。かかる例は、開放的な性格のユーザは、FE11やFE32で示される行動を起こす傾向にある例を示す。さらにいうなら、かかる例は、開放的な性格のユーザは、FE11やFE32で示される言葉を含むコンテンツを閲覧する傾向にある例を示す。
また、分析結果記憶部122に記憶される分析結果は、性格特性の推定に用いられる正解データといえる。
次に、情報処理装置100は、処理対象のユーザ(例えば、ユーザUx1)が第1の期間で行った行動を示す行動情報(第1ユーザ情報の一例)を取得する(ステップS14)。例えば、情報処理装置100は、ユーザUx1が第1の期間で行った発話を示す発話情報である第1発話情報を取得する。なお、情報処理装置100は、ユーザUx1が第1の期間で行ったインターネット上での行動を示す第1行動情報を取得してもよい。例えば、情報処理装置100は、外部装置30から第1ユーザ情報を取得することができる。また、ユーザUx1は、Big5等の性格診断が行われておらず現時点において性格特性が未知の未知ユーザである。
次に、情報処理装置100は、ステップS14で取得した行動情報と、分析結果記憶部122に記憶される分析結果とに基づいて、ユーザUx1の性格特性を推定する推定処理を行う(ステップS15)。例えば、情報処理装置100は、第1ユーザ情報として、第1発話情報を取得した場合には、第1発話情報に含まれる言葉と、分析結果記憶部122に記憶される発話傾向(例えば、特徴語)とのマッチングによりユーザUx1の性格特性を推定する。例えば、情報処理装置100は、第1発話情報が示すテキスト中に含まれる文字列(単語や表現等)の中から、第1の期間中に所定回数以上使用された文字列を抽出する。そして、情報処理装置100は、分析結果記憶部122において、抽出した文字列と一致、または、類似する特徴語が発話傾向として対応付けられている性格特性を、第1の期間でのユーザUx1の性格特性である第1の性格と定める。また、情報処理装置100は、発話履歴の分析により生成したモデルに対して第1発話情報を入力することで、出力された性格特性を、第1の期間でのユーザUx1の性格特性である第1の性格と定めてもよい。
また、情報処理装置100は、例えば、第1ユーザ情報として、第1行動情報を取得した場合には、第1行動情報と、分析結果記憶部122に記憶される行動傾向とのマッチングによりユーザUx1の性格特性を推定することができる。例えば、情報処理装置100は、第1行動情報が行動の中から、第1の期間中に所定回数以上行われ行動を示す行動情報を抽出する。そして、情報処理装置100は、分析結果記憶部122において、抽出した行動情報行動と一致、または、類似する行動傾向が対応付けられている性格特性を、第1の期間でのユーザUx1の性格特性である第1の性格と定める。また、情報処理装置100は、行動履歴の分析により生成したモデルに対して第1行動情報を入力することで、出力された性格特性を、第1の期間でのユーザUx1の性格特性である第1の性格と定めてもよい。
図1の例では、情報処理装置100は、ユーザUx1は性格特性「開放的」と推定したものとする。
次に、情報処理装置100は、ステップS15で推定したユーザUx1の第1の性格(開放的)に変化が生じたか否かを判定する判定処理を実行する(ステップS16)。例えば、情報処理装置100は、第1の期間より短い期間であって、現在の時間経過に追従するように始点と終点が変化する第2の期間を設定する。そして、情報処理装置100は、設定した第2の期間が現在の時間経過に応じて変化する度に、当該第2の期間でユーザUx1が行った発話を示す発話情報である第2発話情報(第2ユーザ情報)を取得する。また、情報処理装置100は、第2発話情報に関する情報と、第1の性格との間での情報の変化に基づいて、第1の性格に変化が生じたか否かを判定する。このような判定処理として、2つのバリエーションが挙げられる。したがって、まず、図2を用いて1つの判定処理の一例を示す。図2は、実施形態にかかる判定処理の一例を示す図である。
図2の例では、情報処理装置100は、第2発話情報に関する情報と、第1の性格との間での情報の変化に基づいて、第1の性格に変化が生じたか否かを判定する。例えば、情報処理装置100は、第2発話情報に関する情報と、第1の性格との間での情報の変化として、第2ユーザ情報の中に第1の性格とは異なる他の性格の特徴を示す特徴情報が含まれる度合いが所定値より大きくなったか否かに応じて、第1の性格に変化が生じたか否かを判定する。以下、図2を用いてこの点詳細に説明する。
図2の例では、ユーザUx1と対話システム20との間で対話が行われているため、第2発話情報は、ユーザUx1がこの対話の中で行った発話を示す発話情報に対応する。また、ユーザUx1は、長期的にみると「開放的」という第1の性格にある。このような状態において、情報処理装置100は、ユーザUx1と対話システム20との間で対話が開始されたことを検知すると、現在時の時間軸Tに対して、対話が開始された現在時刻である時刻t0を始点とした、時間間隔X秒(X=任意の数値)の第2の期間SP0を設定する。
そして、情報処理装置100は、第2の期間SP0での第2発話情報を取得し、第2発話情報に含まれる言葉の中に、第1の性格「開放的」とは異なる性格に対応する言葉が含まれる場合には、その言葉と性格特性とを検出する。例えば、情報処理装置100は、第2発話情報に対応するテキストの中から単語や表現を示す文字列を抽出する。そして、情報処理装置100は、抽出した文字列と、分析結果記憶部122に記憶される発話傾向(特徴語)とを比較し、抽出した文字列の中に、性格特性「開放的」以外の性格特性において特徴語となっている文字列が存在する場合には、その文字列とを性格特性とを検出する。例えば、抽出した文字列の中に性格特性「精神不安定」に対応付けられる特徴語の一つである文字列W79が含まれていたとすると、情報処理装置100は、文字列W79および性格特性「精神不安定」を検出する。
次に、情報処理装置100は、第2の期間SP0での文字列W79の数(出現回数、あるいは、使用回数)を計数し、計数結果の累計が所定値(例えば、3回)を超えたか否かを判定する。例えば、情報処理装置100は、第2の期間SP0での第2発話情報の中に含まれる文字列W79の数を計数し、計数結果の累計が所定値(例えば、3回)を超えたか否かを判定する。例えば、情報処理装置100は、計数結果が3回未満であれば、現在の第2の期間SP0では、第1の性格「開放的」に変化なしとの判定する。一方、情報処理装置100は、累計が3回以上であれば、現在の第2の期間SP0において、第1の性格「開放的」に変化が生じたと判定する。図2の例では、情報処理装置100は、第2の期間SP0では、第1の性格「開放的」に変化なしとの判定したものとする。
また、情報処理装置100は、時間経過に応じて(時間経過に追従するよう)、時間間隔X秒の第2の期間を移動させる。したがって、例えば、時刻t0から所定秒経過した現在時刻t1では、情報処理装置100は、時刻t1を始点とした、時間間隔X秒の第2の期間SP1を設定する。この場合、第2の期間SP1の終点は、時刻t1からX秒前の時刻ということになる。このような状態で、情報処理装置100は、第2の期間SP0で説明した一例の判定処理を再び行う。繰り返しになるため詳細な説明は省略するが、情報処理装置100は、第2の期間SP1での第2発話情報を取得し、取得した第2発話情報に含まれる文字列と、分析結果記憶部122に記憶される発話傾向(特徴語)とを比較することにより、第1の性格「開放的」に変化が生じたか否か判定する。図2の例では、情報処理装置100は、第2の期間SP1では、第1の性格「開放的」に変化なしとの判定したものとする。
また、情報処理装置100は、時間経過に応じて(時間経過に追従するよう)、時間間隔X秒の第2の期間を移動させる。したがって、例えば、時刻t1から所定秒経過した現在時刻t2では、情報処理装置100は、時刻t2を始点とした、時間間隔X秒の第2の期間SP2を設定する。この場合、第2の期間SP2の終点は、時刻t2からX秒前の時刻ということになる。このような状態で、情報処理装置100は、第2の期間SP0で説明した一例の判定処理を再び行う。すなわち、情報処理装置100は、第2の期間SP2での第2発話情報を取得し、取得した第2発話情報に含まれる文字列と、分析結果記憶部122に記憶される発話傾向(特徴語)とを比較することにより、第1の性格「開放的」に変化が生じたか否か判定する。
この時点で、情報処理装置100は、第2の期間SP2での第2発話情報の中に含まれる文字列W79の数を計数し、計数結果の累計(第2の期間SP0からこれまでの累計)が3回以上であったとする。かかる場合、情報処理装置100は、現在の第2の期間SP2において、第1の性格「開放的」に変化が生じたと判定する。具体的には、情報処理装置100は、第1の性格「開放的」から、異なる性格である第2の性格「精神不安定」に変化が生じたと判定する。つまり、情報処理装置100は、性格特性「精神不安定」での特徴語一つである文字列W79の出現回数(特徴情報が含まれる度合いの一例)が3回より大きくなった現在時刻t2のタイミングで、第1の性格「開放的」に変化が生じたと判定する。
このように、情報処理装置100は、第1の性格では普段使われないような言葉がだんだんと使われ出すと、時間経過に応じた細かな時間間隔でこの言葉が使われる数を計数し、計数結果に基づき、この言葉が使われる頻度がある程度高くなったタイミングで、第1の性格に変化が生じたと判定する。これにより、情報処理装置100は、第1の性格に変化が生じたタイミングを精度よく検出することができるため、ユーザに違和感を与えることなくユーザに提供する情報を制御することができる。
さて、図2を用いて判定処理の一つの例について説明した。ここからは、図3を用いて判定処理のもう一つの例について説明する。図3は、実施形態にかかる判定処理の一例(2)を示す図である。図3の例では、情報処理装置100は、第2発話情報に関する情報と、第1の性格との間での情報の変化に基づいて、第1の性格に変化が生じたか否かを判定する。例えば、情報処理装置100は、第2発話情報に関する情報と、第1の性格との間での情報の変化として、第2の期間での第2の性格と、第1の期間での第1の性格とが比較された比較結果に基づいて、第1の性格に変化が生じたか否かを判定する。例えば、情報処理装置100は、比較結果が、第2の性格と1の性格とが異なることを示す場合には、第1の性格に変化が生じたと判定する。以下、図3を用いてこの点詳細に説明する。
図2の例でも、ユーザUx1と対話システム20との間で対話が行われているため、第2発話情報は、ユーザUx1がこの対話の中で行った発話を示す発話情報に対応する。また、ユーザUx1は、長期的にみると「開放的」という第1の性格にある。このような状態において、情報処理装置100は、ユーザUx1と対話システム20との間で対話が開始されたことを検知すると、現在時の時間軸Tに対して、対話が開始された現在時刻である時刻t0を始点とした、時間間隔X秒(X=任意の数値)の第2の期間SP0を設定する。
そして、情報処理装置100は、第2の期間SP0での第2発話情報を取得し、取得した第2発話情報に含まれる言葉に基づいて、ユーザUx1の現時点での性格特性を推定する。例えば、情報処理装置100は、第2発話情報に含まれる言葉の中に、第1の性格「開放的」とは異なる性格に対応する言葉が含まれる場合には、その言葉と性格特性とを検出する。例えば、情報処理装置100は、第2発話情報に対応するテキストの中から単語や表現を示す文字列を抽出する。そして、情報処理装置100は、抽出した文字列と、分析結果記憶部122に記憶される発話傾向(特徴語)とを比較することで、第2発話情報に対応するテキストの中に、どの性格特性で特徴語となっている文字列を最も多く含むかを判定する。そして、情報処理装置100は、判定結果に応じて、ユーザUx1の現時点での性格特性を推定する。
例えば、情報処理装置100は、第2の期間SP0での第2発話情報に対応するテキストの中には、性格特性「開放的」で特徴語となっている文字列が最も含まれているとの判定結果を得たとすると、ユーザUx1の現時点での性格特性は「開放的」であると推定する。このように推定された性格特性「開放的」は、第2の期間でのユーザUx1の性格である第2の性格といえる。
そして、このような状態において、情報処理装置100は、第2の性格と、第1の性格とを比較し、比較結果が第2の性格と第1の性格とが異なることを示す場合には、第1の性格に変化が生じたと判定する。情報処理装置100は、現在の第2の期間SP0では、ユーザUx1の第2の性格として「開放的」との推定結果を得ており、また、ユーザUx1の第1の性格も「開放的」であることから、第2の性格と第1の性格は同一との比較結果に基づき、第1の性格に変化なしと判定する。
また、情報処理装置100は、時間経過に応じて(時間経過に追従するよう)、時間間隔X秒の第2の期間を移動させる。したがって、例えば、時刻t0から所定秒経過した現在時刻t1では、情報処理装置100は、時刻t1を始点とした、時間間隔X秒の第2の期間SP1を設定する。この場合、第2の期間SP1の終点は、時刻t1からX秒前の時刻ということになる。このような状態で、情報処理装置100は、第2の期間SP0で説明した一例の判定処理を再び行う。具体的には、情報処理装置100は、第2の期間SP1での第2発話情報を取得し、取得した第2発話情報に含まれる言葉に基づいて、ユーザUx1の現時点での性格特性(第2の性格)を推定する。そして、情報処理装置100は、推定した第2の性格と、第1の性格とを比較し、比較結果が第2の性格と第1の性格とが異なることを示す場合には、第1の性格に変化が生じたと判定する。情報処理装置100は、現在の第2の期間SP1では、ユーザUx1の第2の性格として「開放的」との推定結果を得たとすると、また、第2の性格と第1の性格は同一との比較結果に基づき、第1の性格に変化なしと判定する。
また、情報処理装置100は、時間経過に応じて(時間経過に追従するよう)、時間間隔X秒の第2の期間を移動させる。したがって、例えば、時刻t1から所定秒経過した現在時刻t2では、情報処理装置100は、時刻t2を始点とした、時間間隔X秒の第2の期間SP2を設定する。この場合、第2の期間SP2の終点は、時刻t2からX秒前の時刻ということになる。このような状態で、情報処理装置100は、第2の期間SP0で説明した一例の判定処理を再び行う。具体的には、情報処理装置100は、第2の期間SP2での第2発話情報を取得し、取得した第2発話情報に含まれる言葉に基づいて、ユーザUx1の現時点での性格特性(第2の性格)を推定する。そして、情報処理装置100は、推定した第2の性格と、第1の性格とを比較し、比較結果が第2の性格と第1の性格とが異なることを示す場合には、第1の性格に変化が生じたと判定する。情報処理装置100は、現在の第2の期間SP2では、ユーザUx1の第2の性格として「精神不安定」との推定結果を得たとすると、また、第2の性格と第1の性格は異なるとの比較結果に基づき、第1の性格に変化が生じたと判定する。
具体的には、情報処理装置100は、第1の性格「開放的」から、異なる性格である第2の性格「精神不安定」に変化が生じたと判定する。つまり、情報処理装置100は、性格特性「精神不安定」のユーザが使いやすい言葉(単語や表現)が使われ出した現在時刻t2のタイミングで、第1の性格「開放的」に変化が生じたと判定する。
このように、情報処理装置100は、現在の短い期間での発話の中で使われている言葉がどの性格特性のユーザによってもっとも使われる傾向にあるかに基づいて、第2の性格を推定する。そして、情報処理装置100は、第2の性格と第1の性格とを比較し、双方の性格が異なる場合には、第1の性格に変化が生じたと判定する。これにより、情報処理装置100は、第1の性格に変化が生じたタイミングを精度よく検出することができるため、ユーザに違和感を与えることなくユーザに提供する情報を制御することができる。
ここまで、図2および図3を用いて、ステップS16の判定処理について説明してきた。ここからは、再び図1を用いて、実施形態にかかる情報処理について説明してゆく。情報処理装置100は、第1の性格に変化が生じたと判定された場合には、変化後の性格に応じて、ユーザUx1に提供する情報を制御する(ステップS17)。例えば、情報処理装置100は、ユーザUx1の発話入力に対する対話システム20の応答に関する応答制御を行う。また、例えば、情報処理装置100は、ユーザUx1に対するコンテンツ配信に関する制御を行う。
まず、応答制御の一例について説明する。例えば、情報処理装置100は、ユーザUx1について、第1の性格に変化が生じたと判定したとする。具体的には、情報処理装置100は、ユーザUx1について、第1の性格である性格特性「開放的」から、第2の性格である性格特性「精神不安定」へと変化したと判定したとする。かかる場合、情報処理装置100は、対話システム20が変化後の性格との相性を考慮した応答を行うよう応答制御する。例えば、情報処理装置100は、性格特性毎に、当該性格特性のユーザからの入力情報(例えば、音声入力による入力情報)に対して応答する内容が示されたテンプレート情報が対応付けられた記憶部を有しておくことで、かかる記憶部を参照して応答制御することができる。
また、かかる記憶部には、各性格特性と相性がよいと考えられる定型文がテンプレート情報として記憶される。例えば、ポジティブな性格特性に対しては、現在の状況をユーザとともに共有できるような態様の定型文等が記憶される。また、例えば、ネガティブな性格特性に対しては、ユーザをなだめて落ち着かせることができるような態様の定型文等が記憶される。
例えば、情報処理装置100は、対話システム20を介して、性格特性「精神不安定」へと変化している状態のユーザUx1から「気を付けろ!」との音声入力を受け付けたとする。また、上記記憶部において、性格特性「精神不安定」に対応する入力情報「気を付けろ」に対して、「落ち着いて下さい」といった定型文が対応付けられているとする。そすると、情報処理装置100は、対話システム20に対して「落ち着いて下さい」と応答するよう制御する。
このように、情報処理装置100は、第2の性格の変化しているユーザに対して、ユーザと共感を意識した応答制御を行う。これにより、情報処理装置100は、例えば、嬉しくて気持ちが一時的に高揚しているしているような場合には、その間、嬉しさを共有するような応答を対話システム20に対して行わすことができるため、対話をより盛り上げさせることができる。また、情報処理装置100は、例えば、一時的にイライラしているような場合には、気持ちを落ち着かせるような応答を対話システム20に対して行わすことができるため、安全な対話を実現することができる。
また、情報処理装置100は、対話システム20が変化後の性格との相性を考慮した応答を行うよう応答のスタイルまたはイントネーションを変更することもできる。ここで、説明の便宜上、情報処理装置100は、ユーザUx1について、第1の性格「開放的」から第2の性格「真面目」に変化していると判定しているとする。真面目な性格の人は理論派であることが多い。したがって、かかる場合、情報処理装置100は、入力情報に対応する定型文を丁寧な表現の定型文に変換したうえで変換後の定型文で応答するよう対話システム20を制御する。また、情報処理装置100は、変換後の定型文を目立った特徴のない静かなトーンの音声で応答するよう対話システム20を制御してもよい。
また、説明の便宜上、情報処理装置100は、ユーザUx1について、第1の性格「開放的」から第2の性格「外交的」に変化していると判定しているとする。外交的な性格の人は理論的ではない一方で面白おかしい楽しい会話を好む傾向にある。したがって、かかる場合、情報処理装置100は、擬音語、擬声語、あるいは、擬態語を含めて応答するよう対話システム20を制御する。
このように、情報処理装置100は、第2の性格の変化しているユーザに対して、第2の静アックに合わせて応答スタイルやイントネーションを変更する。これにより、情報処理装置100は、応答によってユーザに不快な思いをさせることを防止したり、対話を盛り上げたりすることができる。
次に、コンテンツ配信に関する制御の一例について説明する。コンテンツは、広告コンテンツや記事コンテンツであるが、もちろんこれ以外のコンテンツであってもよい。例えば、情報処理装置100は、ユーザUx1について、第1の性格である性格特性「開放的」から、第2の性格である性格特性「精神不安定」へと変化したと判定したとする。ユーザUx1の性格が第2の性格である性格特性「精神不安定」へと変化している間、あるいは、第2の性格である性格特性「精神不安定」へと変化した以降についてのコンテンツ配信については、情報処理装置100は、例えば、以下の処理を行う。
例えば、情報処理装置100は、配信候補のコンテンツのうち変化後の性格に応じたコンテンツを、ユーザUx1に配信される配信対象のコンテンツとして決定する。ユーザUx1は性格特性「精神不安定」へと変化したと判定されているため、例えば、情報処理装置100は、癒しスポットや落ち着く場所に関する広告コンテンツや記事コンテンツを配信対象のコンテンツとして決定する。
また、情報処理装置100は、第2発話情報に基づいて、どのような会話が原因でユーザUx1の性格特性が「精神不安定」へと変化したかを特定することで、原因に関連する広告コンテンツや記事コンテンツが配信対象として決定されないよう制御することもできる。例えば、情報処理装置100は、第2発話情報に基づいて、冠婚に関する会話になった途端、Ux1の性格特性が「精神不安定」へと変化したことを特定したとする。つまり、情報処理装置100は、冠婚に関する会話が原因でユーザUx1の性格特性が「精神不安定」へと変化したことを特定したとする。かかる場合、情報処理装置100は、今後、ユーザUx1には冠婚に関する広告コンテンツや記事コンテンツが配信されないよう制御する。
これにより、情報処理装置100は、ユーザの一時的な性格の変化にも対応したコンテンツ配信を実現することができるため、より多岐にわたるコンテンツを配信したり、逆に、ユーザが嫌がるようなコンテンツを精度よく検出しそれが配信されないよう制限させることができる。
また、情報処理装置100は、配信候補のコンテンツの中から決定されたコンテンツであって、ユーザUx1に配信される配信対象のコンテンツの表示態様を、変化後の性格に応じて制御してもよい。例えば、情報処理装置100は、ユーザUx1について、第1の性格である性格特性「開放的」から、第2の性格である性格特性「精神不安定」へと変化したと判定したとする。かかる場合、情報処理装置100は、例えば、配信対象のコンテンツに含まれる文章の表現を性格特性「精神不安定」に応じた表現へと変更する。また、情報処理装置100は、記配信対象のコンテンツに含まれる文章の文字スタイルを性格特性「精神不安定」に応じた文字スタイルへと変更する。
これにより、情報処理装置100は、ユーザの一時的な性格の変化にも対応した表示対応の変更を実現することができるため、コンテンツの訴求力をより高めることができる。
さて、これまで説明してきたように、情報処理装置100は、比較的長めの期間において取得されたユーザ情報に基づいて、ユーザの長期的な性格を推定する。そして、情報処理装置100は、随時変化する短めの期間それぞれにおいて取得されたユーザ情報と、長期的な性格との間での情報の変化に基づいて、長期的な性格に変化が生じたか否か判定する。そして、情報処理装置100は、変化が生じたと判定した場合には、変化後の性格に応じて、ユーザに提供する情報を制御する。これにより、情報処理装置100は、性格の一時的な変化に応じた情報の出し分けを実現することができる。また、この結果、情報処理装置100は、ユーザの満足度を高めることができる。
〔2.情報処理装置の構成〕
次に、図5を用いて、実施形態にかかる情報処理装置100について説明する。図5は、実施形態にかかる情報処理装置100の構成例を示す図である。図5に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130とを有する。例えば、情報処理装置100は、図1~図3で説明した情報処理を行うサーバ装置である。
(通信部110について)
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部110は、ネットワークNと有線または無線で接続され、例えば、端末装置10、対話システム20、外部装置30との間で情報の送受信を行う。
(記憶部120について)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリ素子またはハードディスク、光ディスク等の記憶装置によって実現される。記憶部120は、診断結果記憶部121と、分析結果記憶部122とを有する。これらの記憶部については図1で説明済みであるため、ここでの説明は省略する。
なお、情報処理装置100は、入稿された各種コンテンツ(例えば、記事コンテンツや広告コンテンツ)を記憶する記憶部を有してもよい。
(制御部130について)
制御部130は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、情報処理装置100内部の記憶装置に記憶されている各種プログラムがRAMを作業領域として実行されることにより実現される。また、制御部130は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
図5に示すように、制御部130は、取得部131と、推定部132と、分析部133と、判定部134と、出力制御部135と、配信制御部136とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、図5に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部130が有する各処理部の接続関係は、図5に示した接続関係に限られず、他の接続関係であってもよい。
(取得部131について)
取得部131は、各種情報を取得する。例えば、取得部131は、外部装置30からユーザの行動履歴を取得する。例えば、取得部131は、行動履歴として、発話履歴やネット上での行動履歴を取得する。
また、取得部131は、推定部132により推定された性格特性を示す情報や、分析部133による分析結果を取得する。例えば、診断結果記憶部121に記憶される性格特性(診断結果)が情報処理に利用される際には、取得部131は、診断結果記憶部121から処理に必要な情報を取得し、対応する処理部へと送信する。また、例えば、分析結果記憶部122に記憶される分析結果が情報処理に利用される際には、取得部131は、分析結果記憶部122から処理に必要な情報を取得し、対応する処理部へと送信する。
(推定部132について)
推定部132は、ユーザの性格を推定する。例えば、所定の性格診断手法(Big5、エコグラム、OKグラム等)で性格特性を診断するのに必要な情報が揃っているユーザ、すなわちサンプルユーザについては、かかる情報を用いて、所定の性格診断手法により性格特性を推定する。また、推定部132は、所定の性格診断手法での診断結果を診断結果記憶部121に格納する。
また、推定部132は、処理対象のユーザが、性格特性が未知のユーザであって、Big5用の回答も得られていないような未知ユーザである場合には、分析結果記憶部122に記憶される分析結果に基づいて、処理対象のユーザの性格特性を推定する。例えば、推定部132は、処理対象のユーザに対応する第1ユーザ情報と、分析結果記憶部122に記憶される分析結果とに基づいて、処理対象のユーザの性格特性を推定する。例えば、推定部132は、処理対象のユーザに対応する第1ユーザ情報と、分析結果記憶部122に記憶される分析結果とに基づいて、第1の期間でのユーザの性格特性である第1の性格を推定する。例えば、処理対象のユーザの第1ユーザ情報として、第1発話情報が取得された場合には、推定部132は、第1発話情報に含まれる言葉と、分析結果記憶部122に記憶される発話傾向(例えば、特徴語)とのマッチングにより処理対象のユーザの性格特性を推定する。
例えば、推定部132は、第1発話情報が示すテキスト中に含まれる文字列(単語や表現等)の中から、第1の期間中に所定回数以上使用された文字列を抽出する。そして、推定部132は、分析結果記憶部122において、抽出した文字列と一致、または、類似する特徴語が発話傾向として対応付けられている性格特性を、第1の期間でのユーザの性格特性である第1の性格と定める。また、推定部132は、発話履歴の分析により生成されたモデルに対して第1発話情報を入力することで、出力された性格特性を、第1の期間でのユーザの性格特性である第1の性格と推定してもよい。
また、処理対象のユーザの第1ユーザ情報として、第1行動情報が取得された場合には、推定部132は、第1行動情報と、分析結果記憶部122に記憶される行動傾向とのマッチングにより処理対象のユーザの性格特性を推定することができる。例えば、推定部132は、第1行動情報が示す行動の中から、第1の期間中に所定回数以上行われ行動を示す行動情報を抽出する。そして、推定部132は、分析結果記憶部122において、抽出した行動情報と一致、または、類似する行動傾向が対応付けられている性格特性を、第1の期間でのユーザの性格特性である第1の性格と定める。また、推定部132は、行動履歴の分析により生成したモデルに対して第1行動情報を入力することで、出力された性格特性を、第1の期間でのユーザの性格特性である第1の性格と推定してもよい。このようなことから、推定部132は、例えば、図1で説明したステップS11、S15の処理を行う。
(分析部133について)
次に、分析部133は、性格特性と、当該性格特性に属するSユーザの行動との関係性を分析する。例えば、分析部133は、分析結果記憶部122に記憶される性格特性毎の履歴情報(発話履歴、行動履歴)に基づいて、当該性格特性に属するサンプルユーザの第1の期間での行動傾向を分析する。例えば、分析部133は、履歴情報に基づいて、性格特性毎に当該性格特性のSユーザはどのような言葉を発する傾向(発話傾向)にあるか、また、どのような行動(閲覧、検索、購入等)を起こす傾向(行動傾向)にあるかを分析する。
ここで、発話傾向は、対応する性格特性のSユーザの発話情報中に頻出する単語や表現、すなわち特徴語であってもよい。そうすると、このような特徴語を抽出するために、分析部133は、相互情報量という指標を用いた分析処理を行うことができる。例えば、分析部133は、発話情報に含まれる言葉と、当該発話情報を入力したSユーザの性格特性との間での相互情報量を算出し、算出した相互情報量が所定値以上の言葉を、当該性格特性に応じた特徴語として分類する。例えば、分析部133は、発話情報から単語や頻出する表現等といった文字列を抽出し、抽出した文字列と性格特性との間の相互情報量を計算する。そして、分析部133は、相互情報量の値が高い方から順に所定の数の特徴語をその性格特性に応じた特徴語として分類(選択)する。
また、分析部133は、上記の分析結果(例えば、特徴語)を用いて、性格特性が未知のユーザであって、Big5用の回答も得られていないような未知ユーザについて、性格特性を推定するためのモデルを生成し、生成したモデルも分析結果として分析結果記憶部122に格納しておくこともできる。
例えば、分析部133は、性格特性と、当該性格特性に対応する特徴語との関係性を学習することにより、未知ユーザの発話情報が入力された場合に、この未知ユーザの性格特性を示す情報を出力するモデルを生成することができる。例えば、分析部133は、特徴語をモデルに入力した際に、その特徴語と対応する性格特性を示す情報を出力するように、バックプロパゲーション等の技術を用いてモデルの学習を行うことでモデルを生成する。
また、行動傾向も特徴語であってもよい。具体的には、行動傾向は、対応する性格特性のSユーザに閲覧されたコンテンツ中に頻出する単語や表現、すなわち特徴語であってもよい。この場合、分析部133は、閲覧されたコンテンツに含まれる言葉と、当該コンテンツを閲覧したSユーザの性格特性との間での相互情報量を算出し、算出した相互情報量が所定値以上の言葉を、当該性格特性に応じた特徴語として分類する。例えば、分析部133は、閲覧されたコンテンツから単語や頻出する表現等といった文字列を抽出し、抽出した文字列と性格特性との間の相互情報量を計算する。そして、分析部133は、相互情報量の値が高い方から順に所定の数の特徴語をその性格特性に応じた特徴語として分類(選択)する。
また、分析部133は、性格特性と、当該性格特性に対応する特徴語との関係性を学習することにより、未知ユーザの行動履歴(例えば、閲覧履歴)が入力された場合に、この未知ユーザの性格特性を示す情報を出力するモデルを生成することができる。また、このようなことから、分析部133は、例えば、図1で説明したステップS13の処理を行う。
(判定部134について)
判定部134は、第1の期間において取得されたユーザのユーザ情報である第1ユーザ情報に基づき推定されたユーザの性格特性であって、第1の期間でのユーザの性格特性である第1の性格に変化が生じたか否かを判定する。例えば、判定部134は、第1ユーザ情報として、第1の期間でのユーザの発話を示す発話情報に基づき推定された第1の性格に変化が生じたか否かを判定する。第1の性格がどのような性格特性に対応するかは推定部132によって推定されるため、判定部134は、推定結果として、第1の性格を示す性格特性を推定部132から受け付ける。そして、判定部134は、推定部132から受け付けた推定結果を用いて判定処理を行う。
例えば、判定部134は、第1の期間より短い期間であって、現在の時間経過に対応する期間である第2の期間において取得されたユーザのユーザ情報である第2ユーザ情報と、第1の性格との間での情報の変化に基づいて、第1の性格に変化が生じたか否かを判定する。例えば、判定部134は、第2の期間として、時間経過に追従するように期間の始点と終了点が変化する第2の期間において取得された第2ユーザ情報と、第1の性格との間での情報の変化に基づいて、第1の性格に変化が生じたか否かを判定する。より詳細には、判定部134は、時間経過に応じて第2の期間が変化する度に、変化後の第2の期間において取得された第2ユーザ情報と、第1の性格との間での情報の変化に基づいて、第1の性格に変化が生じたか否かを判定する。
図2で説明したように、判定部134は、情報の変化として、第2ユーザ情報の中に第1の性格とは異なる他の性格の特徴を示す特徴情報が含まれる度合いが所定値より大きくなったか否かに応じて、第1の性格に変化が生じたか否かを判定する。例えば、判定部134は、度合いが所定値より大きくなったタイミングで、第1の性格に変化が生じたと判定する。
また、図3で説明したように、判定部134は、第2ユーザ情報に基づき推定されたユーザの性格であって、第2の期間でのユーザの性格である第2の性格と、第1の性格との変化の間での情報の変化に基づいて、第1の性格に変化が生じたか否かを判定する。例えば、判定部134は、情報の変化として、第2の性格と、第1の性格とが比較された比較結果に基づいて、第1の性格に変化が生じたか否かを判定する。例えば、判定部134は、比較結果が、第2の性格と第1の性格とが異なることを示す場合には、第1の性格に変化が生じたと判定する。
また、情報処理装置100は、判定部134により第1の性格に変化が生じたと判定された場合には、第1の性格から変化した変化後の性格に応じて、ユーザに提供する情報を制御する。例えば、以下の出力制御部135や配信制御部136によってユーザに提供する情報の制御が行われる。
(出力制御部135について)
出力制御部135は、第1の性格に変化が生じたと判定された場合には、変化後の性格に応じて、ユーザの発話入力に対する対話システム20の応答に関する応答制御を行う。例えば、出力制御部135は、変化後の性格に応じて、対話システム20による応答の応答態様を制御する。例えば、出力制御部135は、対話システム20が変化後の性格との相性を考慮した応答を行うよう応答制御する。出力制御部135は、対話システム20が変化後の性格との相性を考慮した応答を行うよう応答のスタイルまたはイントネーションを変更する。このようなことから、出力制御部135は、例えば、図1で説明したステップS17の処理を行う。
(配信制御部136について)
配信制御部136は、第1の性格に変化が生じたと判定された場合には、配信候補のコンテンツのうち変化後の性格に応じたコンテンツを、ユーザに配信される配信対象のコンテンツとして決定する。また、例えば、配信制御部136は、配信候補のコンテンツの中から決定されたユーザに配信される配信対象のコンテンツの表示態様を変化後の性格に応じて制御する。このようなことから、配信制御部136は、例えば、図1で説明したステップS17の処理を行う。
〔3.処理手順〕
次に、図6を用いて、実施形態にかかる情報処理の手順について説明する。図6は、実施形態にかかる情報処理の情報処理手順を示すフローチャートである。
まず、推定部132は、Sユーザの性格診断を行う(ステップS101)。例えば、推定部132は、Big5等の性格診断手法を用いて、Sユーザがどのような性格特性に属する性格であるかを診断(推定)する。また、推定部132は、診断結果を診断結果記憶部121に格納する。
次に、分析部133は、性格特性毎に、当該性格特性に属するSユーザの第1の期間での行動を示す行動履歴を振り分け(対応付け)、振り分けた結果を分析結果記憶部122に格納する(ステップS102)。例えば、分析部133は、性格特性毎に、当該性格特性に属するSユーザが第1の期間で行った発話を示す発話履歴を振り分ける。また、分析部133は、性格特性毎に、当該性格特性に属するSユーザが第1の期間で行ったネット上での各種行動を示す行動履歴を振り分ける。
次に、分析部133は、性格特性と、当該性格特性に属するSユーザの行動との関係性を分析する(ステップS103)。例えば、分析部133は、分析結果記憶部122に記憶される性格特性毎の履歴情報(発話履歴、行動履歴)に基づいて、当該性格特性に属するSユーザの第1の期間での行動傾向を分析する。例えば、分析部133は、履歴情報に基づいて、性格特性毎に当該性格特性のSユーザはどのような言葉を発する傾向(発話傾向)にあるか、また、どのような行動(閲覧、検索、購入等)を起こす傾向(行動傾向)にあるかを分析する。このような傾向として、分析部133は、例えば、特徴語の分析を行うことができる。
次に、取得部131は、処理対象のユーザが第1の期間で行った行動を示す行動情報(第1ユーザ情報の一例)を取得する(ステップS104)。例えば、取得部131は、行動情報として、処理対象のユーザが第1の期間で行った発話を示す発話情報である第1発話情報を取得する。また、取得部131は、行動情報として、処理対象のユーザが第1の期間で行ったインターネット上での行動を示す第1行動情報を取得してもよい。
このような状態において、推定部132は、ステップS104で取得した行動情報と、分析結果記憶部122に記憶される分析結果とに基づいて、処理対象のユーザの第1の性格としての性格特性を推定する(ステップS105)。例えば、推定部132は、第1ユーザ情報として、第1発話情報が取得された場合には、第1発話情報に含まれる言葉と、分析結果記憶部122に記憶される発話傾向(例えば、特徴語)とのマッチングにより処理対象のユーザの性格特性を推定する。また、推定部132は、例えば、第1ユーザ情報として、第1行動情報が取得された場合には、第1行動情報と、分析結果記憶部122に記憶される行動傾向とのマッチングにより処理対象のユーザの性格特性を推定する。
次に、判定部134は、ステップS105で推定した第1の性格に変化が生じたか否かを判定する(ステップS106)。例えば、判定部134は、第1の期間より短い期間であって、現在の時間経過に追従するように始点と終点が変化する第2の期間を設定する。そして、情報処理装置100は、設定した第2の期間が現在の時間経過に応じて変化する度に、当該第2の期間で処理対象のユーザが行った発話を示す発話情報である第2発話情報(第2ユーザ情報)を取得する。また、判定部134は、第2発話情報に関する情報と、第1の性格との間での情報の変化に基づいて、第1の性格に変化が生じたか否かを判定する。
そして、判定部134は、第1の性格に変化なしと判定している間は(ステップS106;No)、第1の性格に変化が生じるまで判定処理を繰り返すとともに、第1の性格に応じた情報提供を継続させる。例えば、判定部134は、第1の性格に変化なしと判定している間は、出力制御部135に対して、第1の性格に応じた態様の応答を対話システム20に行わせるよう指示する。また、判定部134は、第1の性格に変化なしと判定している間は、配信制御部136に対して、第1の性格に応じたコンテンツを決定させる、あるいは、配信対象のコンテンツの態様を第1の性格に応じた態様へと変更させる。
一方、出力制御部135は、第1の性格に変化が生じたと判定された場合には(ステップS106;Yes)、判定部134からの指示に応じて、対話システム20の応答に関する応答制御を行う(ステップS107)。例えば、出力制御部135は、対話システム20が変化後の性格との相性を考慮した応答を行うよう、応答のスタイルまたはイントネーションを変更する。そして、出力制御部135は、変更後の応答スタイルやイントネーションで応答するよう対話システム20を制御する。
また、情報処理装置100は、ステップS107では、対話システム20の応答に関する応答制御ではなく、コンテンツ配信に関する制御を行うこともできる。例えば、配信制御部136は、第1の性格に変化が生じたと判定された場合には(ステップS106;Yes)、配信候補のコンテンツのうち変化後の性格に応じたコンテンツを、処理態様のユーザに配信される配信対象のコンテンツとして決定する(ステップS107)。また、配信制御部136は、処理対象のユーザに配信される配信対象のコンテンツの表示態様を変化後の性格に応じた表示態様へと変更してもよい。
〔4.ハードウェア構成〕
また、上記実施形態にかかる情報処理装置100は、例えば図7に示すような構成のコンピュータ1000によって実現される。図7は、情報処理装置100の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM1300、HDD1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を有する。
CPU1100は、ROM1300又はHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
HDD1400は、CPU1100によって実行されるプログラム、および、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、通信網50を介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータを、通信網50を介して他の機器へ送信する。
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを、入出力インターフェイス1600を介して出力装置へ出力する。
メディアインターフェイス1700は、記録媒体1800に格納されたプログラム又はデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
例えば、コンピュータ1000が実施形態にかかる情報処理装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部130の機能を実現する。また、HDD1400には、記憶部120内のデータが格納される。コンピュータ1000のCPU1100は、これらのプログラムを、記録媒体1800から読み取って実行するが、他の例として、他の装置から、通信網50を介してこれらのプログラムを取得してもよい。
〔5.その他〕
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
以上、本願の実施形態をいくつかの図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、受付部は、受付手段や受付回路に読み替えることができる。