(58)【調査した分野】(Int.Cl.,DB名)
前記ユーザが新たに前記特定行動をした場合における当該特定行動の情報と前記ユーザに関するコンテキストの情報を入力情報として前記学習モデルから前記ユーザの前記端末装置に対する行動の可能性を推定する推定部を備える
ことを特徴とする請求項1または2に記載の情報処理装置。
前記ユーザが新たに前記特定行動をした場合における当該特定行動の情報と前記ユーザに関するコンテキストの情報を入力情報として前記推定モデルから前記特定行動の長さを推定する推定部を備える
ことを特徴とする請求項11に記載の情報処理装置。
【発明を実施するための形態】
【0010】
以下に、本願にかかる情報処理装置、情報処理システム、情報処理方法、および、情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願にかかる情報処理装置、情報処理システム、情報処理方法、および、情報処理プログラムが限定されるものではない。
【0011】
〔1.学習モデル生成処理を含む情報処理〕
実施形態にかかる学習モデル生成処理を含む情報処理について説明する。
図1は、実施形態にかかる情報処理の説明図であり、
図1に示す例では、情報処理装置100によって情報処理が実行される。
【0012】
情報処理装置100は、複数の端末装置10
1〜10
n(以下、端末装置10と総称する場合がある)をそれぞれ有する複数のユーザU
1〜U
n(以下、ユーザUと総称する場合がある)に関する情報(以下、ユーザ関連情報と記載する場合がある)を収集する(ステップS1)。
【0013】
かかるユーザ関連情報は、複数のユーザUが複数種類の特定行動のうちのいずれかの行動をした場合におけるユーザUの端末装置10に対する行動の情報とユーザUに関するコンテキストの情報である。
図1に示す例では、ユーザU
1が特定行動A、B、Cをそれぞれした場合のユーザ関連情報や、ユーザU
nが特定行動A、C、Dをそれぞれした場合のユーザ関連情報などが収集される。
【0014】
上記特定行動は、ユーザUへの割り込みを行うタイミングの候補(以下、ブレークポイントと記載する場合がある)として予め選択されたユーザUの行動である。かかる特定行動は、例えば、ユーザUが歩いている状態から止まるという行動、ユーザUが走っている状態から歩くという行動、座っている状態から立つという行動などである。
【0015】
なお、上述した特定行動の例は、直前の行動を考慮するものであるが、特定行動は、直前の行動を考慮しないものであってもよい。例えば、ユーザUが電子メールを送信するという行動、ユーザUが電気機器を操作(ON/OFF)するという行動、ユーザUが時計を見るという行動などである。
【0016】
また、ユーザUの端末装置10に対する行動(以下、対端末行動と記載する場合がある)は、例えば、ユーザUが情報処理装置100から端末装置10へ提供されたコンテンツに反応するという行動、ユーザUが端末装置10を持つという行動などである。
【0017】
ユーザUに関するコンテキスト(以下、単にコンテキストと記載することがある)は、例えば、ユーザUを取り巻く状況である。かかるコンテキストには、ユーザUに提供されるコンテンツの内容、ユーザUが反応したコンテンツの内容、ユーザUの属性、ユーザUの現在位置、現在時刻、ユーザUが置かれた物理環境、ユーザUが置かれた社会環境、ユーザUの運動状態、および、ユーザUの感情などが含まれる。
【0018】
情報処理装置100は、複数の端末装置10から複数のユーザ関連情報を収集すると、これら複数のユーザ関連情報に基づいて学習モデルを生成する(ステップS2)。具体的には、情報処理装置100は、各特定行動とコンテキストとを特徴量として機械学習を実行し、ユーザUの端末装置10に対する行動の学習モデルを生成する。
【0019】
かかる学習モデルにより、上述した複数のブレークポイントの中から、ユーザUに関するコンテキストを考慮したより適切なユーザ割り込みタイミング(以下、情報提供タイミングと記載する場合がある)を判定することができる。
【0020】
例えば、情報処理装置100は、端末装置10
k(1≦k≦n)のユーザU
kが新たに特定行動を行った場合にこの特定行動の情報とユーザU
kに関するコンテキストの情報を取得する(ステップS3)。
【0021】
この場合、情報処理装置100は、ユーザU
kの新たな特定行動の情報とユーザU
kに関するコンテキストの情報を入力情報として学習モデルからユーザU
kの端末装置10に対する行動の可能性を推定する。情報処理装置100は、例えば、ユーザU
kの端末装置10
kに対する行動の可能性が高いと推定される場合、情報提供タイミングであると判定する。
【0022】
このように、情報処理装置100は、ユーザU
kの新たな特定行動とユーザU
kに関するコンテキストに基づいて、新たに特定行動を行ったユーザU
kへの情報提供タイミングであるか否かを判定することができる(ステップS4)。かかる情報提供タイミングは、上述した複数のブレークポイントの中から選択されるタイミングであり、ゴールデンブレークポイントと呼ぶこともできる。
【0023】
情報処理装置100は、情報提供タイミングであると判定すると、ユーザU
kの端末装置10
kへコンテンツを提供する情報提供を行う(ステップS5)。かかるコンテンツは、例えば、ニュースなどの記事、アプリケーションに関する情報の新着通知、電子メール、クーポンや店舗の紹介などの広告コンテンツなどである。これにより、ユーザU
kが提供情報に注意を払う可能性が高い適切なタイミングで、ユーザU
kの端末装置10
kに対してプッシュ型の情報提供を行うことができる。
【0024】
なお、情報処理装置100は、端末装置10へ学習モデルの情報を送信することができる。この場合、端末装置10は、ユーザUが新たに特定行動を行った場合にこの特定行動の情報とユーザUに関するコンテキストの情報を入力情報として学習モデルからユーザUの端末装置10に対する行動の可能性を推定し、かかる推定結果に基づいてユーザUへ情報提供を行うことができる。
【0025】
〔2.情報処理システム1〕
図2は、情報処理システム1の構成例を示す図である。
図2に示すように、実施形態にかかる情報処理システム1は、複数の端末装置10
1〜10
nと、センサ装置50
1〜50
mと、情報処理装置100とを備える。
【0026】
複数の端末装置10および情報処理装置100は、ネットワーク2を介して無線または有線で互いに通信可能に接続される。ネットワーク2は、例えば、LAN(Local Area Network)や、インターネットなどのWAN(Wide Area Network)である。
【0027】
端末装置10は、デスクトップ型PC(Personal Computer)や、ノート型PCや、タブレット型端末や、携帯電話機、PDA(Personal Digital Assistant)等により実現される。かかる端末装置10は、例えば、情報通知アプリケーションを含む複数のアプリケーションを有しており、情報処理装置100から通知されるコンテンツを取得して表示したりする。
【0028】
センサ装置50
1〜50
m(以下、センサ装置50と総称する場合がある)は、ユーザUの状態を検出して、端末装置10や情報処理装置100へネットワーク2を介して通知することができる。センサ装置50は、例えば、ユーザUの特定行動を検出することができる。また、センサ装置50は、例えば、ユーザUが携帯する装置(例えば、時計やPC)であってもよい。
【0029】
例えば、センサ装置50は、ユーザUが所定の電気機器(例えば、コーヒーメーカ、照明機器、テレビ、冷蔵庫など)を操作(例えば、ON/OFF)したことをユーザUの特定行動として検出することができる。また、センサ装置50は、例えば、鍵の開け閉めやユーザUが運転する自動車の動作状態などをユーザUの特定行動として検出することができる。
【0030】
また、センサ装置50は、例えば、ユーザUを撮像し、かかる撮像結果に基づきユーザ認識を行い、ユーザの特定行動(例えば、歩いている状態から止まるという行動や立っている状態から座るという行動など)を検出することができる。
【0031】
情報処理装置100は、端末装置10やセンサ装置50から情報処理装置100へ提供される情報に基づいて、上述した学習モデルを生成し、かかる学習モデルを用いて、ユーザUへの割り込みにより適したタイミングでユーザUへコンテンツを提供することができる。以下、端末装置10および情報処理装置100の構成について具体的に説明する。
【0032】
〔2.1.端末装置10〕
図3は、端末装置10の構成例を示す図である。
図3に示すように、端末装置10は、通信部11と、表示部12aと、スピーカ12bと、振動部12cと、入力部13と、検知部14と、記憶部15と、制御部16(コントローラ)とを有する。
【0033】
通信部11は、ネットワーク2と有線又は無線で接続され、センサ装置50や情報処理装置100との間で情報の送受信を行う。例えば、通信部11は、NIC(Network Interface Card)等によって実現される。制御部16は、通信部11およびネットワーク2を介して、センサ装置50や情報処理装置100との間で各種の情報を送受信することができる。
【0034】
表示部12aは、タッチパネル式のディスプレイである。端末装置10のユーザUは、表示部12aの画面上を指などで操作することで、表示部12aに表示された画面に対する操作が可能である。かかる表示部12aは、例えば、小型のLCD(Liquid Crystal Display)や有機ELディスプレイである。
【0035】
入力部13は、数字、数字およびスペースを入力するためのキー、エンターキーおよび矢印キーなどを含むキーボードや、選択ボタン、電源ボタンなどを有する。
【0036】
検知部14は、端末装置10に関する各種情報を検知する。具体的には、検知部14は、端末装置10の物理的な状態や周囲の状態を検知する。
図3に示す例では、検知部14は、加速度センサ21と、測位部22と、撮像部23とを有する。
【0037】
加速度センサ21は、例えば、3軸加速度センサであり、端末装置10の移動方向、速度、および、加速度などの端末装置10の物理的な動きを検知する。測位部22は、GPS(Global Positioning System)衛星から送出される電波を受信し、受信した電波に基づいて端末装置10の現在位置を示す位置情報(例えば、緯度および経度)を取得する。撮像部23は、端末装置10の周囲を撮像し、撮像画像を取得する。
【0038】
なお、検知部14は、加速度センサ21、測位部22および撮像部23に限られず、端末装置10の物理的な状態を検知する各種機器を有してもよい。例えば、検知部14は、端末装置10の周囲の音を収集するマイクロフォンや、端末装置10の周囲の照度を検知する照度センサや、端末装置10の周囲の湿度を検知する湿度センサや、端末装置10の所在位置における磁場を検知する地磁気センサ等を有してもよい。
【0039】
記憶部15は、モデル情報31、モード情報32、ユーザ属性情報33などの情報を記憶する。かかる記憶部15は、例えば、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリ素子、または、HDD(Hard Disk Drive)、光ディスク等の記憶装置である。
【0040】
モデル情報31は、ユーザUの端末装置10に対する行動の可能性を推定するモデルの情報であり、例えば、情報処理装置100によって生成される学習モデルや推定モデルの情報を含む。モード情報32は、端末装置10のユーザUによって設定された動作モードの情報である。ユーザ属性情報33は、例えば、ユーザUの属性(例えば、年齢、性別、住所、職業、興味関心など)の情報である。
【0041】
制御部16は、例えば、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、入出力ポートなどを有するマイクロコンピュータや各種の回路を含む。
【0042】
制御部16は、状態判定部41と、取得部42と、送信部43と、タイミング判定部44と、処理部45とを備える。かかる状態判定部41、取得部42、送信部43、タイミング判定部44および処理部45の機能は、例えば、上記CPUが上記ROMに記憶されているプログラムを読み出して実行することにより実現される。
【0043】
なお、状態判定部41、取得部42、送信部43、タイミング判定部44および処理部45は、それぞれ一部または全部がASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等のハードウェアで構成されてもよい。以下、これら状態判定部41、取得部42、送信部43、タイミング判定部44および処理部45について具体的に説明する。
【0044】
〔2.1.1.状態判定部41〕
状態判定部41は、ユーザUの状態を判定する。例えば、状態判定部41は、加速度センサ21によって検出された端末装置10の物理的な動きに基づいて、ユーザUの行動が特定行動であるか否かを判定することができる。また、状態判定部41は、測位部22によって検出された端末装置10の現在位置を示す位置情報に基づいて、ユーザUの行動が特定行動であるか否かを判定することができる。
【0045】
特定行動は、上述したように、例えば、ユーザUが歩いている状態から止まるという行動、ユーザUが走っている状態から歩くという行動、座っている状態から立つという行動、立っている状態から座るという行動などである。
【0046】
また、状態判定部41は、例えば、撮像部23によって撮像された画像から、ユーザUがテレビを見るという行動、ユーザUが時計を見るという行動、ユーザUがコーヒーを飲んでいるという行動などを特定行動として判定することができる。
【0047】
また、状態判定部41は、例えば、センサ装置50によって検出される情報に基づいて、ユーザUの状態を検出することができる。例えば、センサ装置50は、電気機器が操作されたことを検出し、かかる検出結果から状態判定部41は、ユーザUが電気機器を操作したと判定することができる。
【0048】
また、状態判定部41は、ユーザUによる端末装置10の操作を検出することができる。記憶部15にはユーザUが端末装置10で動作するアプリケーションの操作履歴をログ情報として記憶しており、かかるログ情報に基づき、状態判定部41は、ユーザUが端末装置10のアプリケーションを使用したことを特定行動として検出することができる。例えば、状態判定部41は、記憶部15に記憶されたログ情報に基づき、ユーザUが端末装置10からメールを送信したことを特定行動として検出することができる。
【0049】
また、状態判定部41は、加速度センサ21によって検出された端末装置10の物理的な動きに基づいて、ユーザUが端末装置10を保持したか否かを判定することができる。また、状態判定部41は、加速度センサ21によって検出された端末装置10の物理的な動きに基づいて、ユーザUの運動状態を判定することができる。
【0050】
また、状態判定部41は、検知部14の撮像部23によって撮像されたユーザUの顔画像や検知部14のマイクロフォンで収集したユーザUの音声に基づいて、ユーザUの感情を判定することができる。また、状態判定部41は、図示しない心拍数検出部からの情報に基づき、ユーザUの感情を判定することもできる。
【0051】
〔2.1.2.取得部42〕
取得部42は、情報処理装置100から通信部11を介してコンテンツを取得することができる。例えば、取得部42は、プッシュ型の情報提供により情報処理装置100から送信されるコンテンツを取得することができる。また、取得部42は、後述するタイミング判定部44による判定結果に基づいて表示部12aに表示されるコンテンツを情報処理装置100から取得し、記憶部15に記憶することができる。
【0052】
また、取得部42は、状態判定部41によってユーザUの行動が特定行動であると判定された場合におけるユーザUの端末装置10に対する行動である対端末行動の情報とユーザUに関するコンテキストの情報とを含む情報をユーザ関連情報として取得することができる。
【0053】
取得部42は、対端末行動として、例えば、情報処理装置100から提供されて表示部12aに表示されたコンテンツに対して操作を行っているか否かを示す情報を表示部12aのタッチパネルや入力部13から取得することができる。
【0054】
また、取得部42は、ユーザUに関するコンテキストの情報として、例えば、ユーザUの現在位置、現在時刻、ユーザUの属性、ユーザUが反応したコンテンツの内容、ユーザUの運動状態、および、ユーザUの感情などの情報を取得することができる。
【0055】
例えば、取得部42は、測位部22によって検出された端末装置10の現在位置を示す位置情報をユーザUの現在位置の情報として取得することができる。また、取得部42は、制御部16の図示しない計時部によって計時される現在時刻(例えば、年月日および時分)の情報を取得することができる。また、取得部42は、記憶部15からユーザ属性情報33をユーザUの属性の情報として取得することができる。
【0056】
また、取得部42は、状態判定部41によって判定されたユーザUの運動状態やユーザUの感情などの情報を状態判定部41から取得することができる。なお、取得部42は、外部装置(図示せず)から、ユーザUが置かれた物理環境、ユーザUが置かれた社会環境を示す情報を取得することもできる。
【0057】
また、記憶部15には上述したようにログ情報として記憶しており、かかるログ情報に基づき、取得部42は、ユーザUが反応したコンテンツの内容の情報を取得することができる。
【0058】
また、取得部42は、情報処理装置100から学習モデルの情報や推定モデルの情報を取得することができ、取得した学習モデルの情報や推定モデルの情報をモデル情報31として記憶部15に記憶することができる。
【0059】
〔2.1.3.送信部43〕
送信部43は、取得部42によって取得された情報をユーザ関連情報として情報処理装置100へ通信部11を介して送信することができる。かかるユーザ関連情報には、例えば、状態判定部41によって判定されたユーザUの特定行動の種別を示す情報、ユーザUの行動が特定行動である場合におけるユーザUの対端末行動の情報とユーザUに関するコンテキストの情報とが含まれる。
【0060】
送信部43は、モード情報32として第1モードの情報が記憶部15に記憶されている場合、取得部42によって取得されたユーザ関連情報を第1ユーザ関連情報として情報処理装置100へ通信部11を介して送信することができる。また、送信部43は、モード情報32として第2モードの情報が記憶部15に記憶されている場合、取得部42によって取得されたユーザ関連情報を第2ユーザ関連情報として情報処理装置100へ通信部11を介して送信することができる。
【0061】
また、送信部43は、例えば、情報処理装置100以外の装置から端末装置10に通知されている他のコンテンツの種別または内容の情報を情報処理装置100へ通知することができる。また、送信部43は、記憶部15に記憶されたユーザ属性情報33や、ユーザUの端末装置10に対する行動(例えば、端末装置10に表示されたコンテンツに対するユーザUの行動)の情報を情報処理装置100へ送信することができる。
【0062】
〔2.1.4.タイミング判定部44〕
タイミング判定部44は、モード情報32として第2モードの情報が記憶部15に記憶されている場合、情報処理装置100による後述の処理と同様に、学習モデルを用いて、ユーザUへの割り込みに適したタイミングである情報提供タイミングを判定することができる。
【0063】
例えば、タイミング判定部44は、記憶部15に記憶されているモデル情報31に含まれる学習モデルの情報を取得し、取得部42で取得されたユーザ関連情報を入力情報として学習モデルから、ユーザUの端末装置10に対する行動の可能性を推定する。
【0064】
この場合、タイミング判定部44は、例えば、記憶部15に記憶されたコンテンツに対してユーザUの端末装置10に対する行動の可能性を学習モデルから判定することもできる。
【0065】
また、タイミング判定部44は、記憶部15に記憶されたコンテンツに対してユーザUの端末装置10に対する行動の可能性が高いとタイミング判定部44によって推定された場合、情報提供タイミングになったと判定する。
【0066】
〔2.1.5.処理部45〕
処理部45は、例えば、表示部12a、スピーカ12bおよび振動部12cを制御する。例えば、処理部45は、モード情報32として第1モードの情報が記憶部15に記憶されている場合、情報処理装置100からプッシュ型の情報提供により取得したコンテンツをユーザUに提供することができる。例えば、処理部45は、情報処理装置100の要求に応じた通知態様によって、表示部12a、スピーカ12bおよび振動部12cを制御してユーザUにコンテンツ取得の通知を含む情報提供を行うことができる。
【0067】
かかる通知態様には、例えば、「通知方法」、「通知内容」、「通知手段」などの態様が含まれる。「通知方法」は、例えば、コンテンツの出力パターンである。かかる「通知方法」による変更対象は、例えば、スピーカ12bから出力される通知音の大きさ、周波数および音パターン、表示部12aに表示するコンテンツの大きさ、色、形状、および、通知の繰り返しの回数などのうち少なくともいずれか一つである。
【0068】
「通知内容」は、例えば、通知するコンテンツの範囲である。例えば、「通知内容」による変更対象は、通知するコンテンツに含まれる内容のうち通知する内容(例えば、タイトルのみ、タイトルと概要のみ、全文など)や通知するコンテンツの数などである。
【0069】
「通知手段」は、例えば、表示部12a、スピーカ12bおよび振動部12cのうち少なくともいずれか一つである。また、「通知手段」には、例えば、ユーザUの周囲の装置(例えば、腕時計、冷蔵庫、テレビなど)も含まれ、処理部45は、通信部11を介してユーザUの周囲の装置へコンテンツを送信することができ、これにより、ユーザUの周囲の装置からユーザUに情報提供を行うことができる。
【0070】
また、処理部45は、タイミング判定部44によって情報提供タイミングになったと判定された場合、記憶部15に記憶されたコンテンツを表示部12aに表示することができる。
【0071】
図4は、端末装置10の表示画面の一例を示す図である。
図4に示す表示画面60には、情報処理装置100などの外部装置から提供されたコンテンツ71〜73が表示されている。コンテンツ71〜73は、例えば、上述した「通知内容」に応じた範囲の内容で表示画面60に表示される。かかる表示画面60に表示されたコンテンツをユーザUが選択(クリック)した場合に、処理部45は、選択されたコンテンツ全体の内容を表示部12aに表示する。これにより、ユーザUは、コンテンツ全体を把握することができる。
【0072】
コンテンツ71は、着信メールの内容を示すコンテンツであり、かかるコンテンツ71をユーザUが選択(クリック)した場合に、端末装置10のメールアプリケーションによりメール画面が表示部12aに表示される。
【0073】
また、コンテンツ72は、端末装置10の周辺の情報であり、コンテンツ72をユーザUが選択(クリック)した場合に、端末装置10の情報通知アプリケーションにより端末装置10の周辺の具体的な情報を示す画面が表示部12aに表示される。かかるコンテンツ72は、例えば、情報処理装置100の管理者以外の他の管理者の装置から提供されるコンテンツである。
【0074】
また、コンテンツ73は、ニュースの情報であり、コンテンツ73をユーザUが選択(クリック)した場合に、端末装置10の情報通知アプリケーションによりニュースの具体的な記事内容を示す画面が表示部12aに表示される。
【0075】
なお、処理部45は、タイミング判定部44によって情報提供タイミングになったと判定された場合、記憶部15に記憶されたコンテンツのうち表示部12aに表示された他のコンテンツ(例えば、コンテンツ71)の種別または内容の情報に応じたコンテンツをユーザUへ提供することができる。
【0076】
例えば、処理部45は、他のコンテンツと競合しないコンテンツをユーザUへ提供したり、他のコンテンツよりもユーザUの興味度が高いコンテンツをユーザUへ提供したりすることができる。なお、ユーザUの興味度は、例えば、記憶部15に記憶されたユーザ属性情報33に基づいて処理部45で判定される。
【0077】
処理部45は、タイミング判定部44の推定結果に応じた通知態様でコンテンツを表示することができる。例えば、処理部45は、学習モデルにより可能性が高いと推定される対端末行動の種別に応じてコンテンツの通知方法、通知内容および通知手段のうちの少なくとも一つを変えることができる。なお、通知態様を決定する処理は、情報処理装置100による後述の処理と同様の処理であるため、ここでは説明を省略する。
【0078】
〔2.2.情報処理装置100〕
図5は、情報処理装置100の構成例を示す図である。
図5に示すように、情報処理装置100は、通信部101と、記憶部102と、制御部103(コントローラ)とを有する。
【0079】
通信部101は、ネットワーク2と有線又は無線で接続され、端末装置10やセンサ装置50との間で情報の送受信を行う。例えば、通信部101は、NIC(Network Interface Card)等によって実現される。制御部103は、通信部101およびネットワーク2を介して、端末装置10やセンサ装置50との間で各種の情報を送受信することができる。
【0080】
記憶部102は、モデル情報記憶部111と、ユーザ情報記憶部112と、コンテンツ記憶部113とを備える。モデル情報記憶部111、ユーザ情報記憶部112およびコンテンツ記憶部113は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子、または、HDD、光ディスク等の記憶装置である。
【0081】
モデル情報記憶部111は、ユーザUの端末装置10に対する行動の可能性を推定する学習モデルや特定行動の長さを推定する推定モデルの情報を記憶する。ユーザ情報記憶部112は、例えば、ユーザUの属性(例えば、年齢、性別、住所、職業、興味関心など)の情報などユーザUに関する情報を記憶することができる。コンテンツ記憶部113は、ユーザUの端末装置10へ提供するコンテンツの情報を記憶する。
【0082】
制御部103は、例えば、CPU、ROM、RAM、入出力ポートなどを有するマイクロコンピュータや各種の回路を含む。かかる制御部103は、取得部121と、生成部122と、推定部123と、選択部124と、提供部125とを備える。かかる取得部121、生成部122、推定部123、提供部125および選択部124の機能は、例えば、上記CPUが上記ROMに記憶されているプログラムを読み出して実行することにより実現される。
【0083】
なお、取得部121、生成部122、推定部123、選択部124および提供部125は、それぞれ一部または全部がASICやFPGA等のハードウェアで構成されてもよい。以下、これら取得部121、生成部122、推定部123、選択部124および提供部125について具体的に説明する。
【0084】
〔2.2.1.取得部121〕
取得部121は、通信部101を介して端末装置10から送信される情報(例えば、第1ユーザ関連情報や第2ユーザ関連情報)を取得することができる。
【0085】
また、取得部121は、端末装置10から取得したユーザ関連情報やセンサ装置50から取得した検出情報をユーザ情報記憶部112に記憶することができる。また、取得部121は、端末装置10から取得したユーザ属性情報をユーザ情報記憶部112に記憶することができる。
【0086】
なお、センサ装置50は、検出した情報を端末装置10ではなく、情報処理装置100へ送信することができる。この場合、取得部121は、センサ装置50によって検出された情報を通信部101経由でセンサ装置50から取得することができる。
【0087】
なお、取得部121は、ユーザUに関するコンテキストの情報をユーザ情報記憶部112や外部装置から取得することができる。例えば、取得部121は、ユーザ情報記憶部112からユーザUの属性の情報やユーザUが反応したコンテンツの内容の情報を取得することができる。
【0088】
また、取得部121は、ユーザ関連情報に含まれるユーザUの現在位置の情報に基づき、ユーザUが置かれた社会環境(例えば、景気の程度、流行の商品やサービスなど)の情報を外部装置から取得することができる。また、取得部121は、ユーザ関連情報に含まれるユーザUの現在位置の情報に基づき、ユーザUが置かれた物理環境(気温、天候など)の情報を外部装置から取得することができる。
【0089】
〔2.2.2.生成部122〕
生成部122は、記憶部102に記憶されたユーザ関連情報に基づいて、ユーザUの各特定行動とユーザUのコンテキストとを特徴量として機械学習を実行し、ユーザUの端末装置10に対する行動の学習モデルを生成する。生成部122は、生成した学習モデルの情報をモデル情報記憶部111へ記憶する。
【0090】
生成部122は、例えば、ユーザUの端末装置10に対する行動(対端末行動)の正否を目的変数(正解データ)とし、ユーザUの各特定行動の正否およびユーザUのコンテキストの内容の組み合わせを説明変数(素性)とする回帰モデルを学習モデルとして求める。例えば、生成部122は、下記式(1)に示すような回帰モデルを求める。
y=a
11・(x
1,z
1)+a
12・(x
1,z
2)+・・・+a
nm・(x
n,z
m)
【0091】
上記式(1)において、「x
1」〜「x
n」は、ユーザUの各特定行動の情報であり、「z
1」〜「z
m」は、ユーザUのコンテキストの内容別の情報である。また、(x
1,z
1)は、特定行動「x
1」とコンテキストの内容「z
1」との組み合わせを説明変数(素性)としていることを意味し、「x
1」と「z
1」が共に「1」である場合に、(x
1,z
1)=「1」になる。
【0092】
「y」は、ユーザUの対端末行動の正否であり、ユーザUの対端末行動がある場合には、「y」=「1」になり、ユーザUの対端末行動がない場合には、「y」=「―1」になる。生成部122は、対端末行動の種別毎に学習モデルを生成することができる。例えば、ユーザUの対端末行動の種別が第1種別から第n種別があるとした場合、生成部122は、第1〜第n種別の対端末行動の正否を「y
1」〜「y
n」として学習モデルを生成することができる。
【0093】
例えば、「y
1」は、情報処理装置100から提供されたコンテンツに対してユーザUが反応したか否かであり、コンテンツに対してユーザUの反応がある場合、「y
1」=「1」になり、コンテンツに対してユーザUの反応がない場合、「y
1」=「―1」になる。また、「y
2」は、ユーザUが端末装置10を持ったか否かであり、ユーザUが端末装置10を持った場合、「y
2」=「1」になり、ユーザUが端末装置10を持たない場合、「y
2」=「―1」になる。
【0094】
また、「x
1」は、例えば、ユーザUが歩いている状態から止まるという行動であり、「x
2」は、例えば、立っている状態から座るという行動であり、「x
n」は、例えば、コーヒーメーカを操作するという行為である。
【0095】
また、ユーザUに関するコンテキストのうち学習に用いるコンテキストの種別を、ユーザUが反応したコンテンツの内容(車関係、旅行関係、グルメ関係など)とした場合、「z
1」は、例えば、「車」であり、「z
2」は、例えば、「旅行」であり、「z
n」は、例えば、「グルメ」である。これにより、ユーザUが反応したコンテンツの内容を考慮したユーザUの端末装置10に対する行動の学習モデルを生成することができる。なお、生成部122は、ユーザUが反応したコンテンツの内容をユーザ情報記憶部112から取得することができる。
【0096】
また、学習に用いるコンテキストの種別を、現在時刻とした場合、「z
1」は、例えば、「6:00〜6:59」であり、「z
2」は、例えば、「7:00〜7:59」であり、「z
m」は、例えば、「5:00〜5:59」である。なお、「z
1」は、例えば、「平日の6:00〜6:59」、「z
2」は、例えば、「週末の6:00〜6:59」としたりすることができる。これにより、現在時刻を考慮したユーザUの端末装置10に対する行動の学習モデルを生成することができる。
【0097】
また、学習に用いるコンテキストの種別を、ユーザUの現在位置とした場合、例えば、各都道府県や各市町村を「z
1」〜「z
m」としたり、「自宅」、「職場」、「電車内」、「タクシー内」、「出張先」、・・・などを「z
1」〜「z
n」としたりすることができる。これにより、ユーザUの現在位置を考慮したユーザUの端末装置10に対する行動の学習モデルを生成することができる。
【0098】
また、学習に用いるコンテキストの種別を、ユーザUが置かれた物理環境(気温、天候等)とした場合、気温と天候の組み合わせを「z
1」〜「z
m」とすることができる。例えば、「z
1」を「摂氏10度かつ晴れ」とし、「z
2」を「摂氏10度かつ曇り」としたりすることができる。これにより、物理環境を考慮したユーザUの端末装置10に対する行動の学習モデルを生成することができる。
【0099】
また、学習に用いるコンテキストの種別を、ユーザUが置かれた社会環境とした場合、例えば、景気の程度、流行の商品やサービスなどの種々の社会情勢を「z
1」〜「z
m」とすることができる。
【0100】
また、学習に用いるコンテキストの種別を、ユーザUの属性とする場合、例えば、ユーザUの年齢、性別、住所区分、興味関心の種別の少なくともいずれか一つを「z
1」〜「z
m」とすることができる。
【0101】
また、学習に用いるコンテキストの種別を、例えば、ユーザUの運動状態(例えば、走っている時間、歩いている時間、座っている時間など)、ユーザUの感情(例えば、笑っている状態、怒っている状態、困っている状態など)、ユーザUのスケジュール(例えば、現時刻の予定の内容、1時間先の予定の内容など)などとすることができる。
【0102】
なお、上述した例では、学習に用いるコンテキストの種別が一つである場合を説明したが、学習に用いるコンテキストの種別を複数考慮することもできる。この場合、ユーザUの各特定行動の情報である「x
1」〜「x
n」に対して、特徴量として上記と同様に加えることができる。なお、「x
1」〜「x
n」に対して、特徴量を加える方法として、例えば、クロネッカー積などを用いることができる。
【0103】
また、上述した例では、ユーザUの各特定行動の正否およびユーザUのコンテキストの内容の組み合わせを説明変数(素性)としたが、さらに、組み合わせでない説明変数(素性)を考慮することもできる。例えば、生成部122は、下記式(2)に示すような回帰モデルを学習モデルとして求めることもできる。
y=a
1・x
1+a
2・x
2+・・・+a
n・x
n+b
1・z
1+b
2・z
2+・・・+b
n・z
m+c
11・(x
1,z
1)+c
12・(x
1,z
2)+・・・+c
nm・(x
n,z
m) ・・・(2)
【0104】
また、生成部122は、ユーザUの対端末行動毎に情報提供としての適格度合いのスコア(以下、適格性スコアと記載する)を変えることもできる。例えば、生成部122は、対端末行動に応じた適切な適格性スコアになるように、例えば、上述した対端末行動毎の学習モデルにそれぞれ対端末行動に応じた係数を乗じて適格性スコアを算出することができる。
【0105】
また、生成部122は、各特定行動の長さを推定する推定モデルを生成することができる。例えば、生成部122は、ユーザUの各特定行動の長さを目的変数(正解データ)とし、ユーザUの各特定行動の正否およびユーザUのコンテキストの内容の組み合わせを説明変数(素性)とする回帰モデルを長さ推定モデルとして求めることができる。
【0106】
この場合、生成部122は、上記式(1)において「y」をユーザUの各特定行動の長さ(特定行動の継続時間)とした回帰モデルを長さ推定モデルとして生成することができる。生成部122は、生成した長さ推定モデルの情報をモデル情報記憶部111へ記憶する。
【0107】
以上のように、生成部122は、対端末行動の種別毎に学習モデルを生成することができ、さらに、コンテキストの種別毎に学習モデルを生成することができる。また、生成部122は、対端末行動の種別毎かつ2以上のコンテキストの種別毎に学習モデルを生成したり、長さ推定モデルとして生成したりすることができる。
【0108】
生成部122が行う学習モデルの生成は、上述した例に限定されるものではなく、結果的に、対端末行動の種別毎に学習モデルを生成したり、コンテキストの種別毎に学習モデルを生成したりすることなどができればよい。例えば、生成部122は、SVM(Support Vector Machine)やその他の機械学習法を用いて、学習モデルを生成することもできる。また、生成部122は、特徴量(素性)の2乗や3乗などの項を持つ学習モデルを生成することもできる。
【0109】
〔2.2.3.推定部123〕
推定部123は、モデル情報記憶部111に記憶された学習モデルの情報を用いて、取得部121で取得されたユーザ関連情報に含まれる情報を入力情報として学習モデルから、ユーザUの端末装置10に対する行動の可能性を推定する。
【0110】
例えば、推定部123は、モデル情報記憶部111に記憶された各対端末行動の学習モデルの情報に対し、ユーザ関連情報に含まれる特定行動の種別の情報およびコンテキストを入力情報として、ユーザUの各対端末行動の可能性を推定する。
【0111】
例えば、ユーザ関連情報に含まれる特定行動の種別が「x
1」に対応する行動であり、かつ、ユーザ関連情報に含まれるコンテキストの内容が「z
1」である場合、推定部123は、「x
1」=「1」とし、「z
1」=「1」とする。また、コンテキストの内容が「z
1」、「z
3」などのように複数ある場合、「z
1」=「1」、「z
3」=「1」とする。また、推定部123は、取得部121で取得されたユーザ関連情報に含まれる特定行動の種別が「x
1」、「x
n」などのように複数ある場合、「x
1」=「1」、「x
n」=「1」とする。
【0112】
また、推定部123は、提供部125から提供するコンテンツの内容を入力情報として、ユーザUの各対端末行動の可能性を推定することができる。この場合、例えば、推定部123は、ユーザUが反応したコンテンツの内容を考慮した上述の学習モデルに対し、提供部125から提供するコンテンツの内容を入力情報として、ユーザUの各対端末行動の可能性を推定することができる。これにより、提供部125から提供するコンテンツに応じた適切なタイミングを判定することができる。
【0113】
また、推定部123は、複数のコンテンツの内容をそれぞれ入力情報として、ユーザUの対端末行動の可能性を推定し、例えば、対端末行動の可能性が高いコンテンツ(または、適格性スコアが所定値以上のコンテンツ)または対端末行動の可能性が最も高いコンテンツ(または、適格性スコアが所定値以上かつ最も高いコンテンツ)を判定することができる。これにより、適切なコンテンツを適切なタイミングでユーザUへ提供することができる。
【0114】
推定部123は、端末装置10からユーザ関連情報を取得する毎に、かかるユーザ関連情報から、ユーザUの対端末行動(例えば、上述した第1〜第n種別の対端末行動)の可能性を推定することができる。推定部123は、上記式(1)による演算結果である「y」が所定値以上(または、適格性スコアが所定値以上)である場合に、ユーザUの対端末行動の可能性が高いと判定することができる。なお、推定部123は、例えば、一つのユーザUに対して一つ種別の対端末行動の可能性を推定するように構成することもできる。
【0115】
さらに、推定部123は、モデル情報記憶部111に情報が記憶された長さ推定モデルを用いて、ユーザUの特定行動の長さを推定することができる。例えば、推定部123は、学習モデルの場合と同様に、モデル情報記憶部111に情報が記憶された長さ推定モデルから、ユーザ関連情報に含まれる特定行動の種別の情報およびコンテキストを入力情報として、ユーザUの特定行動の長さを推定することができる。
【0116】
〔2.2.4.選択部124〕
選択部124は、推定部123によって推定された特定行動の長さに応じた種別のコンテンツを選択することができる。
【0117】
例えば、選択部124は、推定部123によってユーザUの特定行動が短いと推定された場合には、短時間で確認できるコンテンツ(例えば、メール通知)を選択することができる。一方、推定部123によってユーザUの特定行動が長いと推定された場合には、提供部125は、短時間で確認できないコンテンツ(例えば、記事コンテンツ)を選択することができる。
【0118】
また、選択部124は、推定部123によって推定された特定行動の種別とかかる特定行動の長さに応じた種別のコンテンツを選択することができる。これにより、特定行動の長さに加え、特定行動の種別(例えば、上述した「y
1」〜「y
n」)に応じたコンテンツを選択することができる。すなわち、例えば、座っている状態から立ち上がるという種別の特定行為の長さと、立っている状態から座るという種別の特定行為の長さとが同じである場合であっても、異なるコンテンツを選択することができる。
【0119】
また、選択部124は、例えば、推定部123におい推定された特定行動の長さとこの特定行動の時間的特性に応じた種別のコンテンツを選択することができる。これにより、特定行動の長さに加えて特定行動の時間的特性に応じた種別のコンテンツをユーザUへ提供することができる。
【0120】
例えば、走っている状態から止まるという特定行為(以下、特定行為Gと記載する)と。テレビの電源を消すという特定行為(以下、特定行為Hと記載する)があるとする。この場合において、推定部123によって特定行為Gの長さと特定行為Hの長さとが同じ1分であったとしても、特定行為Gと特定行為Hとでは、情報提供タイミングとしての適格度合い(以下、情報提供適格度合いと記載する)の時間経過による変化が異なる。
【0121】
例えば、特定行為Gでは、時間が経過するほど情報提供適格度合いが減衰する可能性が高い(時間減衰がある)が、特定行為Hでは、時間が経過しても情報提供適格度合いが変化しない可能性が高いと想定される。また、他の特定行為では、時間が経過するほど情報提供適格度合いが高くなる可能性が高い(時間増幅がある)ものもある。
【0122】
そこで、選択部124は、例えば、推定部123におい推定された特定行動の長さに加え、特定行動の時間的特性に基づいて、種別のコンテンツを選択することで、特定行動が発生してからの時間経過に応じた適切なコンテンツを提供することができる。
【0123】
例えば、選択部124は、時間減衰がある特定行為の場合には、短時間で確認できるコンテンツを選択し、時間的特性が一定の特定行動や時間増幅がある特定行動の場合には、短時間で確認できないコンテンツを選択することができる。また、選択部124は、特定行動の時間増減率に応じて種別のコンテンツを選択することもできる。
【0124】
また、選択部124は、端末装置10に通知されている他のコンテンツの種別または内容の情報に応じたコンテンツを選択することができる。端末装置10に通知されている他のコンテンツの種別または内容の情報は、例えば、端末装置10から取得部121によって取得される。
【0125】
例えば、選択部124は、端末装置10に通知されている他のコンテンツよりも、ユーザUが選択する可能性が高いコンテンツを選択することができる。なお、端末装置10に通知されている他のコンテンツは、情報処理装置100以外が提供したコンテンツであっても、情報処理装置100が提供したコンテンツであってもよい。
【0126】
〔2.2.5.提供部125〕
提供部125は、推定部123の推定結果に基づき、ユーザUへの情報提供を実行する。例えば、提供部125は、ユーザUの対端末行動の可能性が高い場合に、コンテンツをユーザUの端末装置10へ通信部101を介して送信し、ユーザUへコンテンツを提供することができる。これにより、動作モードが第1モードに設定された端末装置10のユーザUに対してプッシュ型の情報提供を行うことができる。
【0127】
また、提供部125は、推定部123の推定結果に応じたコンテンツをユーザUへ提供することができる。例えば、提供部125は、対端末行動の可能性が最も高いと推定部123が判定したコンテンツをユーザUの端末装置10へ送信し、ユーザUへコンテンツを提供することができる。
【0128】
また、提供部125は、例えば、推定部123において可能性が高い(または、適格性スコアが閾値以上)と推定される対端末行動の種別(以下、行動種別と記載する)に応じた種別や内容のコンテンツをユーザUの端末装置10へ送信し、ユーザUへコンテンツを提供することができる。また、提供部125は、例えば、推定部123において対端末行動の可能性の度合い(以下、可能性度合いと記載する)に応じた種別や内容のコンテンツをユーザUの端末装置10へ送信し、ユーザUへコンテンツを提供することができる。
【0129】
また、提供部125は、推定部123の推定結果に応じた通知態様で情報提供を行うこともできる。この場合、提供部125は、例えば、行動種別および/または可能性度合いに応じて通知態様を決定し、かかる通知態様にて情報提供を行うように端末装置10に対して要求(指示)することができる。かかる要求には、例えば、情報提供対象であるコンテンツと通知態様の情報とが含まれる。通知態様には、上述したように、例えば、コンテンツの通知方法、通知内容、通知手段などの態様が含まれる。
【0130】
また、提供部125は、例えば、通知音や通知画面を強調して(例えば、大きくして)端末装置10から出力させることで、通知を派手にする通知方法を選択することができ、通知音や通知画面を強調しない(例えば、小さくして)で端末装置10から出力させることで、通知を控えめにする通知方法を選択することができる。また、提供部125は、例えば、通知音や通知画面を繰り返し端末装置10から出力させることで、しつこく通知する通知方法を選択することができる。
【0131】
また、提供部125は、通知内容として、例えば、コンテンツのタイトルのみを通知する通知内容を選択することができ、また、タイトルと概要のみを通知する通知内容を選択することができる。
【0132】
また、提供部125は、例えば、表示部12aへのコンテンツの表示に加え、スピーカ12b、振動部12cおよびユーザUの周囲の機器のうち1以上の通知手段を選択し、選択した通知手段を用いてユーザUに対する通知(コンテンツが通知された旨を示す通知)を行うことができる。
【0133】
例えば、提供部125は、スピーカ12bからの通知音の出力、振動部12cによる振動の出力、ユーザUの周囲の機器からの情報の出力などを行うことができる。なお、提供部125は、例えば、電子メールを通知手段として、電子メールでのユーザUへの通知を行ったり、端末装置10の図示しないLEDの点灯や点滅による通知を行ったりすることができる。
【0134】
また、提供部125は、推定部123によって推定されたユーザUの特定行動の長さに応じた選択部124によって選択されたコンテンツをユーザUの端末装置10へ送信し、ユーザUへコンテンツを提供することができる。これにより、提供部125は、例えば、ユーザUへの割り込みに適した長さのコンテンツをユーザUへ提供することができる。
【0135】
また、提供部125は、推定部123の推定結果に基づき、ユーザUの対端末行動の可能性が高い場合に、端末装置10に通知されている他のコンテンツの種別または内容の情報に応じたコンテンツをユーザUへ提供することができる。この場合、提供部125は、例えば、他のコンテンツと競合しないコンテンツや、他のコンテンツよりもユーザUの興味度が高いコンテンツをユーザUへ提供することができる。
【0136】
また、提供部125は、モデル情報記憶部111に記憶された学習モデルの情報を端末装置10へ提供することができる。また、提供部125は、モデル情報記憶部111に記憶された推定モデルの情報を端末装置10へ提供することができる。
【0137】
〔3.情報処理システム1の処理フロー〕
次に、情報処理システム1における情報処理の手順について説明する。まず、
図6を用いて、端末装置10における情報処理の手順について説明する。
図6は、端末装置10における情報処理の流れを示すフローチャートであり、かかる処理は繰り返し実行される。
【0138】
図6に示すように、端末装置10の制御部16は、記憶部15に記憶されているモード情報32に基づいて、端末装置10の動作モードが第1モードか否かを判定する(ステップS10)。
【0139】
動作モードが第1モードであると判定した場合(ステップS10;Yes)、制御部16は、第1モードの処理を実行する(ステップS11)。ステップS11の処理は、
図7に示すステップS20〜S24の処理であり、後で詳述する。
【0140】
一方、動作モードが第1モードではないと判定した場合(ステップS10;No)、制御部16は、第2モードの処理を実行する(ステップS12)。ステップS12の処理は、
図8に示すステップS30〜S39の処理であり、後で詳述する。ステップS11、S12の処理が終了すると、制御部16は、
図6に示す処理を終了する。
【0141】
次に、ステップS11の第1モードの処理について説明する。
図7は、
図6に示す第1モードの処理の流れを示すフローチャートである。
【0142】
図7に示すように、第1モードの処理を開始すると、制御部16は、ユーザUの行動が特定行動であるか否かを判定する(ステップS20)。ユーザUの行動が特定行動であると判定した場合(ステップS20;Yes)、制御部16は、ユーザ関連情報を第1ユーザ関連情報として送信する(ステップS21)。
【0143】
ユーザUの行動が特定行動ではないと判定した場合(ステップS20;No)、または、ステップS21の処理が終了した場合、制御部16は、情報処理装置100からコンテンツを取得したか否かを判定する(ステップS22)。コンテンツを取得したと判定した場合(ステップS22;Yes)、制御部16は、取得したコンテンツを表示部12aに表示する(ステップS23)。
【0144】
コンテンツを取得していないと判定した場合(ステップS22;No)、または、ステップS23の処理を終了した場合、制御部16は、その他の処理を行って(ステップS24)、
図7に示す処理を終了する。なお、ステップS24の処理において、制御部16は、例えば、ステップS23において表示部12aに表示されたコンテンツに対してユーザUが反応(例えば、クリック)したか否かを判定し、コンテンツに対してユーザUが反応したことを示す情報を記憶部15に記憶することができる。
【0145】
次に、ステップS12の第2モードの処理について説明する。
図8は、
図6に示す第2モードの処理の流れを示すフローチャートである。
【0146】
図8に示すように、第2モードの処理を開始すると、制御部16は、情報処理装置100からモデル情報を取得したか否かを判定する(ステップS30)。モデル情報を取得したと判定した場合(ステップS30;Yes)、制御部16は、取得したモデル情報を記憶部15に記憶する(ステップS31)。
【0147】
ステップS31の処理が終了した場合、または、モデル情報を取得していないと判定した場合(ステップS30;No)、制御部16は、ユーザUの行動が特定行動であるか否かを判定する(ステップS32)。
【0148】
制御部16は、ユーザUの行動が特定行動であると判定した場合(ステップS32;Yes)、ユーザ関連情報を第2ユーザ関連情報として送信する(ステップS33)。また、制御部16は、記憶部15に記憶されたモデル情報31に含まれる学習モデルから、ユーザ関連情報を用いて、ユーザUの端末装置10に対する行動の可能性を推定する(ステップS34)。
【0149】
そして、制御部16は、ユーザUの端末装置10に対する行動の可能性の推定結果に基づいて、情報提供タイミングになったか否かを判定する(ステップS35)。かかる処理において、制御部16は、例えば、ユーザUの端末装置10に対する行動の可能性が高い(例えば、閾値以上)である場合に、情報提供タイミングになったと判定する。
【0150】
情報提供タイミングと判定した場合(ステップS35;Yes)、制御部16は、記憶部15に記憶されたコンテンツを表示部12aに表示する(ステップS36)。なお、制御部16は、情報提供タイミングと判定した場合、情報処理装置100へコンテンツを要求し、かかる要求に応じて取得されたコンテンツを表示部12aに表示することもできる。
【0151】
ステップS36の処理が終了した場合、ユーザUの行動が特定行動でないと判定した場合(ステップS32;No)、または、情報提供タイミングになっていないと判定した場合(ステップS35;No)、制御部16は、情報処理装置100からコンテンツを取得したか否かを判定する(ステップS37)。
【0152】
コンテンツを取得したと判定した場合(ステップS37;Yes)、制御部16は、取得したコンテンツを記憶部15に記憶する(ステップS38)。かかるステップS38の処理が終了した場合、または、コンテンツを取得していないと判定した場合(ステップS37;No)、制御部16は、その他の処理を行い(ステップS39)、
図8に示す処理を終了する。なお、ステップS39の処理は、
図7に示すステップS24の処理と同様である。
【0153】
次に、
図9を用いて、情報処理装置100における情報処理の手順について説明する。
図9は、情報処理装置100における情報処理の流れを示すフローチャートであり、かかる処理は繰り返し実行される。
【0154】
図9に示すように、情報処理装置100の制御部103は、端末装置10から第1ユーザ関連情報を取得したか否かを判定する(ステップS40)。第1ユーザ関連情報を取得したと判定した場合(ステップS40;Yes)、第1ユーザ関連情報を記憶部102に記憶する(ステップS41)。
【0155】
そして、制御部103は、第1ユーザ関連情報を入力情報として学習モデルに基づく推定を行う(ステップS42)。かかる処理において、制御部103は、例えば、第1ユーザ関連情報を入力情報として記憶部102に記憶された学習モデルから、ユーザUの端末装置10に対する行動の可能性を推定する。
【0156】
次に、制御部103は、ユーザUの端末装置10に対する行動の可能性の推定結果に基づいて、情報提供タイミングになったか否かを判定する(ステップS43)。かかる処理において、制御部103は、ユーザUの端末装置10に対する行動の可能性が高い(例えば、閾値以上)である場合に、情報提供タイミングになったと判定する。情報提供タイミングになったと判定した場合(ステップS43;Yes)、制御部103は、通知対象に対応するユーザUの端末装置10へコンテンツを送信する(ステップS44)。
【0157】
ステップS44の処理が終了した場合、第1ユーザ関連情報を取得していないと判定した場合(ステップS40;No)、または、情報提供タイミングになっていないと判定した場合(ステップS43;No)、制御部103は、処理をステップS45へ移行する。
【0158】
ステップS45において、制御部103は、学習モデルの生成契機になったか否かを判定する。なお、制御部103は、新たなユーザ関連情報が記憶部102に所定数記憶される毎や所定期間毎に学習モデルの生成契機を発生させることができる。
【0159】
学習モデルの生成契機になったと判定した場合(ステップS45;Yes)、制御部103は、記憶部102に記憶されたユーザ関連情報を用いて学習モデルを生成または更新し(ステップS46)、生成または更新した学習モデルの情報を含むモデル情報を端末装置10へ送信し、また、生成または更新したモデル情報を記憶部102に記憶する(ステップS47)。
【0160】
ステップS47の処理が終了した場合、または、学習モデルの生成契機になっていないと判定した場合(ステップS45;No)、制御部103は、端末装置10から第2ユーザ関連情報を取得したか否かを判定する(ステップS48)。第2ユーザ関連情報を取得したと判定した場合(ステップS48;Yes)、第2ユーザ関連情報を記憶部102に記憶する(ステップS49)。
【0161】
ステップS49の処理が終了した場合、または、第2ユーザ関連情報を取得していないと判定した場合(ステップS48;No)、制御部103は、その他の処理を行い(ステップS50)、
図9に示す処理を終了する。なお、ステップS50の処理において、制御部103は、例えば、外部装置からユーザUの社会環境の情報や物理環境の情報を取得することができる。
【0162】
〔4.変形例〕
上述した実施形態では、端末装置10においてユーザUの特定行動を判定する例を説明したが、情報処理装置100の制御部103は、端末装置10の検知部14などによって検出される情報やセンサ装置50によって検出された情報に基づいて、ユーザUの特定行動を検出することもできる。また、センサ装置50が端末装置10と同様に、ユーザUの特定行動を検出し、かかる検出結果を端末装置10や情報処理装置100へ通知することもできる。
【0163】
また、上述した実施形態では、一つのユーザUが一つの端末装置10を有するものとして説明したが、一つのユーザUが複数の端末装置10を有することもできる。この場合、情報処理装置100の制御部103は、複数の端末装置10からそれぞれ送信されるユーザ関連情報に基づいて、コンテンツを提供することができる。
【0164】
また、端末装置10は、自装置を含む複数の装置で取得された複数の情報に基づいて、ユーザUが特定行動を行ったか否かを判定するようにしてもよい。すなわち、マルチデバイスによる検出結果に基づいて、ユーザUが特定行動を行ったか否かを判定するようにしてもよい。
【0165】
また、情報処理装置100の生成部122は、複数の端末装置10
1〜10
nのユーザ関連情報に基づいて、2以上の学習モデルを生成することができる。例えば、生成部122は、所定の規準で複数の端末装置10を区分したグループ毎に学習モデルを生成することができる。例えば、生成部122は、年齢や性別で区分したグループ毎に学習モデルを生成することができる。また、生成部122は、ユーザU毎に学習モデルを生成することもできる。
【0166】
また、上述した実施形態では、情報処理装置100の制御部103が学習モデルの生成を行う例を説明したが、学習モデルの生成は端末装置10の制御部16で行うようにしてもよい。また、制御部16は、制御部103が生成した学習モデルを取得したあと、かかる学習モデルを自装置のユーザ関連情報に基づいて更新することもできる。
【0167】
なお、上述した例では、学習モデルにおける「y」に対して「1」と「−1」を選択的に設定する例を説明したが係る例に限定されない。例えば、「y」に対して「1」と「0」を選択的に設定してもよい。また、「y」に対して正の値(例えば、「1」)と負の値(例えば、「−1」)とを選択的に設定して生成した学習モデルの場合、推定部123およびタイミング判定部44は、かかる学習モデルの出力情報(「y」)に対して、sign関数による演算を行うこともできる。この場合、推定部123およびタイミング判定部44は、例えば、sign関数の出力が「1」であれば、ユーザUの端末装置10に対する行動の可能性が高いと判定し、sign関数の出力が「−1」であれば、ユーザUの端末装置10に対する行動の可能性が低いと判定することができる。
【0168】
〔5.ハードウェア構成〕
上述した実施形態における端末装置10および情報処理装置100は、それぞれ例えば
図10に示すような構成のコンピュータ200がプログラムを実行することによって実現される。
【0169】
図10は、プログラムを実行するコンピュータのハードウェア構成の一例を示す図である。コンピュータ200は、CPU(Central Processing Unit)201、RAM202(Random Access Memory)、ROM(Read Only Memory)203、HDD(Hard Disk Drive)204、通信インターフェイス(I/F)205、入出力インターフェイス(I/F)206、およびメディアインターフェイス(I/F)207を備える。
【0170】
CPU201は、ROM203またはHDD204に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM203は、コンピュータ200の起動時にCPU201によって実行されるブートプログラムや、コンピュータ200のハードウェアに依存するプログラム等を格納する。
【0171】
HDD204は、CPU201によって実行されるプログラムによって使用されるデータ等を格納する。通信インターフェイス205は、各通信部11、101に対応し、ネットワーク2を介して他の機器からデータを受信してCPU201へ送り、CPU201が生成したデータを、ネットワーク2を介して他の機器へ送信する。
【0172】
CPU201は、入出力インターフェイス206を介して、ディスプレイやプリンタ等の出力装置、および、キーボードやマウス等の入力装置を制御する。CPU201は、入出力インターフェイス206を介して、入力装置からデータを取得する。また、CPU201は、生成したデータを、入出力インターフェイス206を介して出力装置へ出力する。
【0173】
メディアインターフェイス207は、記録媒体208に格納されたプログラムまたはデータを読み取り、RAM202を介してCPU201に提供する。CPU201は、当該プログラムを、メディアインターフェイス207を介して記録媒体208からRAM202上にロードし、ロードしたプログラムを実行する。記録媒体208は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【0174】
コンピュータ200が端末装置10として機能する場合、コンピュータ200のCPU201は、RAM202上にロードされたプログラムを実行することにより、
図3に示す状態判定部41、取得部42、送信部43、タイミング判定部44および処理部45の各機能を実現する。また、コンピュータ200が情報処理装置100として機能する場合、コンピュータ200のCPU201は、RAM202上にロードされたプログラムを実行することにより、
図5に示す取得部121、生成部122、推定部123、選択部124および提供部125の各機能を実現する。
【0175】
コンピュータ200のCPU201は、オークション情報処理プログラムを、記録媒体208から読み取って実行するが、他の例として、他の装置から、ネットワーク2を介してこれらのプログラムを取得してもよい。
【0176】
なお、HDD204は、各記憶部15、102に対応し、各記憶部15、102と同様のデータを記憶する。また、HDD204に代えて、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリ素子、または、光ディスク等の記憶装置を用いてもよい。
【0177】
〔6.効果〕
上述した実施形態にかかる情報処理装置100は、取得部121と、生成部122とを備える。取得部121は、ユーザUが複数種類の特定行動のうちのいずれかの行動をした場合におけるユーザUの端末装置10に対する行動(対端末行動)の情報とユーザUに関するコンテキストの情報とを取得する。各特定行動の情報とコンテキストの情報とを特徴量として機械学習を実行し、ユーザUの端末装置10に対する行動の学習モデルを生成する。かかる学習モデルにより、ユーザUが提供される情報に注意を払う可能性が高い適切なタイミングを推定することができる。
【0178】
また、情報処理装置100は、推定部123を備える。推定部123は、ユーザUが新たに特定行動をした場合におけるこの特定行動の情報とユーザUに関するコンテキストの情報を入力情報として学習モデルからユーザUの端末装置10に対する行動の可能性を推定する。これにより、ユーザUが提供される情報に注意を払う可能性が高い適切なタイミングを推定することができる。
【0179】
また、情報処理装置100は、提供部125を備える。提供部125は、推定部123の推定結果に基づき、ユーザUへの情報提供を実行する。これにより、ユーザUが提供される情報に注意を払う可能性が高い適切なタイミングで、ユーザUへ情報提供を行うことができる。
【0180】
また、提供部125は、推定部123の推定結果に応じたコンテンツを端末装置10へ提供する情報提供を行う。これにより、推定部123の推定結果に応じた適切なコンテンツをユーザUへ提供することができる。
【0181】
また、取得部121は、端末装置10に提供されたコンテンツに対するユーザUの行動の情報をユーザUの端末装置10に対する行動の情報として取得する。コンテンツに対するユーザUの行動は、ユーザUが注意を払うタイミングであることから、これにより、ユーザUが提供される情報に注意を払う可能性が高い適切なタイミングを推定することができる。
【0182】
また、取得部121は、端末装置10に提供されたコンテンツに対するユーザUの行動の情報をユーザUに関するコンテキストの情報として取得する。これにより、推定部123の推定結果に応じたコンテンツをユーザUへ提供することができる。
【0183】
また、提供部125は、推定部123の推定結果に応じた通知態様で情報提供を行う。これにより、推定結果に応じた通知態様でユーザUに対する情報提供を行うことができる。そのため、例えば、行動種別や可能性度合いに応じて異なる通知態様でユーザUに対する情報提供を行うことができ、これにより、ユーザUに対して適切な情報提供を行うことができる。
【0184】
また、ユーザUに関するコンテキストは、ユーザUの属性、ユーザUの現在位置、現在時刻、ユーザUが置かれた物理環境、ユーザUが置かれた社会環境、ユーザUの運動状態、および、ユーザUの感情のうち少なくとも一つを含む。これにより、例えば、属性、現在位置、現在時刻、物理環境、社会環境、運動状態、および、感情のうち少なくとも一つを考慮したユーザUの端末装置10に対する行動の学習モデルを生成することができる。
【0185】
また、提供部125は、推定部123の推定結果に基づき、端末装置10に通知されている他のコンテンツの種別または内容の情報に応じたコンテンツを端末装置10へ提供する情報提供を行う。他のコンテンツと競合しないコンテンツをユーザUへ提供したり、他のコンテンツよりもユーザUの興味度が高いコンテンツをユーザUへ提供したりすることで、他のコンテンツよりも優先してユーザに選択される可能性を増加させることができるコンテンツを提供することができる。
【0186】
また、生成部122は、各特定行動の情報とコンテキストの情報とを特徴量として機械学習を実行し、特定行動の長さを推定する推定モデルを生成する。かかる推定モデルによって、ユーザUの特定行動の長さを推定することができる。
【0187】
また、推定部123は、ユーザUが新たに特定行動をした場合におけるこの特定行動の情報とユーザUに関するコンテキストの情報を入力情報として推定モデルから特定行動の長さを推定する。これにより、例えば、推定された推定モデル長さに応じた情報提供タイミングやコンテンツを選択することができる。
【0188】
また、情報処理装置100は、選択部124を備える。選択部124は、推定部123によって推定された特定行動の長さに応じた種別のコンテンツを選択する。提供部125は、選択部124によって選択されたコンテンツをユーザURLへ提供する情報通知を行う。これにより、ユーザUの特定行動の長さに応じた適切なコンテンツをユーザUへ提供することができる。
【0189】
また、選択部124は、推定部123によって推定された特定行動の長さとこの特定行動の時間的特性とに応じた種別のコンテンツを選択する。これにより、ユーザUの特定行動が発生してからの時間経過に応じた適切なコンテンツを提供することができる。
【0190】
また、ユーザUの特定行動は、端末装置10およびセンサ装置50(端末装置10以外の装置の一例)の少なくとも一つによって検出される。
【0191】
また、実施形態にかかる情報処理システム1は、情報処理装置100に加え、端末装置10を備える。情報処理装置100の提供部125は、生成部122によって生成された学習モデルの情報を端末装置10へ送信する。端末装置10の取得部42およびタイミング判定部44(推定部の一例)を備える。取得部42は、学習モデルの情報を取得し、記憶部15に記憶する。タイミング判定部44は、ユーザUが新たに特定行動を行った場合におけるこの特定行動の情報とユーザUに関するコンテキストの情報を入力情報として記憶部15に記憶した学習モデルから対端末行動(ユーザUの端末装置10に対する行動の一例)の可能性を推定する。これにより、ネットワーク2を介して、ユーザ関連情報を送信することなく、対端末行動の可能性の推定結果を取得することができる。
【0192】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に多様な変更または改良を加えることが可能であることが当業者には明らかである。また、そのような変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【0193】
また、上述した情報処理装置100は、複数のサーバコンピュータで実現してもよく、また、機能によっては外部のプラットフォーム等をAPI(Application Programming Interface)やネットワークコンピューティングなどで呼び出して実現するなど、構成は柔軟に変更できる。
【0194】
また、上記してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、生成部は、生成手段や生成回路に読み替えることができる。
【解決手段】本願にかかる情報処理装置は、取得部と、生成部とを備える。取得部は、ユーザが複数種類の特定行動のうちのいずれかの行動をした場合におけるユーザの端末装置に対する行動の情報とユーザに関するコンテキストの情報とを取得する。生成部は、各特定行動の情報とコンテキストの情報とを特徴量として機械学習を実行し、ユーザの端末装置に対する行動の学習モデルを生成する。