以下、本発明の実施の形態を図面に基づいて説明する。先ず、本実施例に係るシステムの概要を説明する。図1は、システムの概要を説明するための図である。図1において、システム1000は、サーバ装置100と、端末200とを有し、端末200は、ネットワーク2(図2)を介して、サーバ装置100と接続可能である。図1では、同一ユーザ5について1台の端末200を示しているが、サーバ装置100は、複数のユーザ5の端末200と接続可能である。
サーバ装置100は、端末100から行動履歴情報1dを受信すると、行動履歴DB(データベース)141に送信元の識別情報と関連付けて蓄積する。送信元の識別情報とは、端末100を特定可能な情報又はユーザ5を特定可能な情報であればよい、以下、「送信元識別情報」という。
例えば、観光前の状態Iにおいて、ユーザ5は観光旅行(例えば、富山城の訪問)を計画しているものとする。富山城を含む様々な観光情報を提供するアプリケーション175(図3)を利用して富山城の情報を閲覧すると(ステップI−1)、このユーザ5の行動履歴情報1dが端末200からサーバ装置100へ送信される。サーバ装置100へ送信された行動履歴情報1dは、行動履歴DB141に蓄積される(ステップI−2)。
観光前の状態Iでは、観光スポットの閲覧を示す行動履歴情報1dが蓄積される。ユーザ5による端末200への観光スポットの閲覧の操作に応じて、指定された処理に対応するアプリケーション175により様々な情報等が提供される。このように、アプリケーション175は、目的に応じた情報を提供する「サービス」を行う。本実施例における情報提供(サービス)には、文書による情報提供の他、ユーザ5が所望する目的地までのナビゲーション機能等を含む。
観光前の状態Iにおける行動履歴情報1dには、送信元識別情報、サービス利用履歴を示す行動種別、ログ情報等が含まれる。ログ情報は、アプリケーション175を特定するアプリID、起動時刻等の情報を含む。
数日後、ユーザ5が実際に富山城を訪問すると(観光中の状態II)、ユーザ5の端末200は、観光スポットである富山城にいることを示す行動履歴情報1dがサーバ装置100へ送信される(ステップII−1)。サーバ装置100は、行動履歴情報1dを行動履歴DB141に蓄積する(ステップII−2)。観光スポットを包含するエリアにジオフェンス1fが設定されている場合、プレイスサービスとして富山城を特定する場所情報を端末200に受信させることで、端末200は、富山城に対応づけられた場所情報を行動履歴情報1dに含めてサーバ装置100に送信できる。
観光中の状態IIにおける行動履歴情報1dには、送信元識別情報、訪問履歴を示す行動種別、ログ情報等が含まれる。ログ情報は、ユーザ5が訪問した場所を特定する場所ID、到達時刻を示すチェックイン時刻、滞在時間等の情報を含む。
観光スポットの富山城を観光後に端末200でアプリケーション175を使って観光スポットのお勧めを表示する際、端末200は、サーバ装置100に、複数の観光スポットそれぞれに対する関心度を示した情報を要求する関心推定要求8を送信する(ステップIII−1)。なお、観光スポットの富山城を観光後は、ユーザ5が観光目的を達成したと感じている期間(観光後の状態III)に対応する。
このとき、サーバ装置100は、関心推定要求8に含まれる送信元識別情報を用いて、ユーザ5の関心度3cを推定した結果として関心推定結果9を端末200に提供する(ステップIII−2)。端末200では、お勧めとして得られた観光スポットの情報のうち、関心推定結果9を反映したお勧めが表示される。観光後の状態IIIでは、ユーザ5が観光目的を達成しているため、本実施例では、訪問した富山城の情報はお勧めから除外して表示される。なお、お勧めとして得られた観光スポットは、ユーザ5から指定された検索キーワードなどを加味した結果であってもよい。
更に、数日経過し、ユーザ5が以前観光した富山城への興味が再び強くなる(興味が回復する)時期に、端末200を用いて観光スポットのお勧め表示の操作を行うと、関心推定要求8がサーバ装置100へと送信される(ステップIV−1)。
サーバ装置100は、関心推定要求8に含まれる送信元識別情報を用いて、ユーザ5の関心度3cを推定した結果として関心推定結果9を端末200に提供する(ステップIV−2)。端末200では、お勧めの観光スポットの情報に対して関心推定結果9が反映されて表示される。観光後の状態IVでは、ユーザ5が観光した富山城への興味が回復しつつあるため、本実施例では、訪問した富山城の情報を含むお勧め順が端末200に表示される。
状態Iから状態IVのいずれにおいても、端末200は、ユーザ5のアプリケーション175の利用の検知に応じて、アプリケーション175の情報を含む行動履歴情報1dをサーバ装置100へ送信する。また、端末200は、現在位置を特定可能な情報を含む行動履歴情報1dをサーバ装置100へ送信する。
現在位置を特定可能な情報は、端末200がGPS(Global Positioning System)により検出した位置を示す情報(位置情報)、アプリケーション175が推奨した特定の場所への入出を予め定めたジオフェンスにより検出した場所情報等である。アプリケーション175が推奨した特定の場所とは、観光スポット、ショッピング、グルメ等の訪問スポット等を含む。以下、位置情報及び場所情報を、総称して、「場所ID」という。
例えば、特定のジオフェンスに侵入した端末200に対して、ジオフェンスに含まれる特定のスポットに関する情報を配信するサービスがある。当該サービスを想定して設置されたジオフェンスを利用することで、サーバ装置100は、ユーザ5がどのスポットを訪問したかを検出することができる。
サーバ装置100は、ユーザ5の端末200から受信した、ユーザ5が利用したアプリケーション175の情報又は端末200の場所IDを含む行動履歴情報1dを行動履歴DB141に蓄積する。サーバ装置100は、蓄積された行動履歴情報1dを定期的に、又は、端末200からの関心推定要求8に応じて、関心推定処理153pを実施する。関心推定要求8の受信により関心推定処理153pを行う場合について概要を説明する。関心推定要求8には、送信元識別情報が含まれる。
サーバ装置100は、関心推定処理153pを定期的に実行し、行動履歴DB141に蓄積された行動履歴情報1dを用いて、送信元識別情報ごとに行動ベクトル3aを生成する(ステップP−1)。行動ベクトル3aは、行動履歴情報1dのそれぞれに対して作成され、行動履歴情報1dを用いて特定される観光スポットの情報をベクトル化し、時間の経過による人の記憶の程度又は興味の回復の程度で重み付けしたベクトルである。
そして、サーバ装置100は、提供情報DB142から得られる単語文書行列2dと、送信元識別情報ごとに行動ベクトル3aを合計した関心ベクトル3bとによりサービスごとの関心度3cを推定する(ステップP−2)。関心ベクトル3bは、行動ベクトル3aの累積により、ユーザ5の情報の閲覧、訪問などの回数に応じた観光スポットへの関心の高さを表すベクトルである。サーバ装置100において、各サービスの関心度3cは送信元識別情報ごとに管理される。単語文書行列2dは、「ドキュメント空間D」を表す行列である。
また、端末200は、関心推定要求8を送信する(ステップIII−1又はステップIV−1)。サーバ装置100は、関心推定要求8の受信に応じて、関心推定要求8で指定される送信元識別情報に対して、上述したステップP−1及びステップP−2による関心推定処理153pを行う。
本実施例に係るシステム1000において、観光前の状態Iでは、観光スポットの閲覧を示す行動履歴情報1dが行動履歴DB141に蓄積される。観光中の状態IIでは、観光スポットの場所IDを含む行動履歴情報1dが行動履歴DB141に蓄積され、ユーザ5の訪問が検知される。
サーバ装置100により、ユーザ5が訪問した観光スポットに対する興味が低下したとみなされる期間(状態III)では、訪問済みの観光スポットに対して、関心度3cは低く設定される。その結果、端末200におけるお勧めには、興味達成後の観光スポットの情報は除外されて表示される。このようなお勧めに係る表示制御により、ユーザ5は、訪問したばかりの観光スポットの情報に煩わされることがない。また、ユーザ5に、新たな観光スポットの情報に興味を持たせることもできる。
観光後の状態IIIから更に時間経過したのちは、興味が回復したとみなされた観光スポットの情報を含めたままのお勧めが端末200に表示される(状態IV)。つまり、ユーザ5の訪問した観光スポットへの興味が回復したとみなされた時期からは、訪問済みの観光スポットに関する情報も、端末200に表示される。ユーザ5は、訪問した観光スポットであっても、興味が回復している時期であるため、表示された情報に対して煩わしいと感じることなく、また、懐かしい等の気持ちから過去に訪問した観光スポットの情報にアクセスする可能性がある。
本実施例におけるシステム1000では、上述したような、時間の経過に伴う興味回復の程度を考慮してユーザ5の関心度3cを推定する関心推定処理153pが行われる。よって、本実施例におけるシステム1000は、お勧めとして表示される情報を、ユーザ5の観光スポットの訪問後の時間経過に従って制御することができる。
図2は、サーバ装置及び端末それぞれのハードウェア構成例を示す図であり。図2において、上述したシステム1000におけるサーバ装置100は、情報処理装置である。サーバ装置100は、CPU(Central Processing Unit)111と、主記憶装置112と、補助記憶装置113と、入力装置114と、表示装置115と、通信I/F(InterFace)117と、ドライブ装置118とを有し、バスB1に接続される。主記憶装置112と、補助記憶装置13、及びサーバ装置100がアクセス可能な外部記憶装置を含めて、後述する機能ブロック図(図3)における記憶部130に相当する。
CPU111は、サーバ装置100を制御するプロセッサに相当し、記憶部130に格納されたプログラムを実行することで、以下に説明する本実施例に係る様々な処理を実現する。入力装置14は、ユーザによって操作され、操作に応じてデータを入力し、表示装置115は、ユーザーインタフェースとして様々な画面を表示する。通信I/F117は、外部装置との通信を制御する。
記憶媒体119に記憶された本実施例に係る関心推定処理153pを実現するプログラムは、ドライブ装置118を介して記憶部130にインストールされ、CPU111によって実行可能となる。一例として、記憶媒体119は、CD−ROM(Compact Disc Read-Only Memory)等である。
尚、本実施例に係るプログラムを格納する記憶媒体119はCD−ROMに限定されず、コンピュータが読み取り可能な、構造(structure)を有する1つ以上の非一時的(non-transitory)な、有形(tangible)な媒体であればよい。コンピュータ読取可能な記憶媒体として、CD−ROMの他に、DVD(Digital Versatile Disk)ディスク、USBメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリであっても良い。
上述したシステム1000における端末200は、コンピュータによって制御されるタブレット型、携帯電話、スマートウォッチ(ウェアラブル端末)等の情報処理端末である。端末200は、CPU211と、主記憶装置212と、ユーザI/F216と、通信I/F217と、ドライブ装置218とを有し、バスB2に接続される。
CPU211は、主記憶装置212に格納されたプログラムに従って端末200を制御するプロセッサに相当する。主記憶装置212には、RAM(Random Access Memory)、ROM(Read Only Memory)等が用いられ、CPU211によって実行されるプログラム、CPU211での処理に必要なデータ、CPU211での処理にて得られたデータ等を記憶又は一時保存する。主記憶装置212に格納されているプログラムが、CPU211に実行されることによって、各種処理が実現される。CPU211によって実行されるプログラムには、本実施例に係る種々のアプリケーション175が含まれる。
ユーザI/F216は、CPU211の制御のもとに必要な各種情報を表示し、また、ユーザによる操作入力を可能とするタッチパネル等である。通信I/F217による通信は無線又は有線に限定されるものではない。通信I/F217によってGPSの位置情報を受信する。
端末200によって行われる処理を実現するプログラムは、ネットワーク2を介して外部装置からダウンロードされる。或いは、予め端末3の主記憶装置212又は記憶媒体2
19に記憶されていても良い。主記憶装置212、記憶媒体219等が、後述する機能ブロック図(図3)における記憶部230に相当する。
ドライブ装置218は、ドライブ装置218にセットされた記憶媒体219(例えば、SD(Secure Digital)メモリカード等)と端末200とのインターフェースを行う。尚、記憶媒体219は、コンピュータが読み取り可能な、構造(structure)を有する1つ以上の非一時的(non-transitory)な、有形(tangible)な媒体であればよい。
端末200は、ノートブック型、ラップトップ型等の情報処理端末であっても良く、そのハードウェア構成は、サーバ装置100と同様であるので、その説明を省略する。
図3は、サーバ装置及び端末それぞれの機能構成例を示す図である。図3において、サーバ装置100は、主な処理部として、収集部151と、送受信部152と、関心推定部153と、複数のアプリケーション175とを有する。各処理部151〜153は、サーバ装置100にインストールされたプログラムが、サーバ装置100のCPU111に実行させる処理により実現される。また、記憶部130は、行動履歴DB141、提供情報DB142、関心情報DB143等を記憶する。
収集部151は、端末200から行動履歴情報1dを受信し、受信した行動履歴情報1dを行動履歴DB141に蓄積する。収集部151は、2以上の端末200から行動履歴情報1dを収集してもよい。
送受信部152は、端末200から関心推定要求8を受信すると、関心推定部153に関心推定要求8を通知する。また、送受信部152は、関心推定部153から関心推定要求8に応じた関心推定結果9を受けると、端末200に関心推定結果9を提供する。関心推定要求8には送信元識別情報が含まれる。
関心推定部153は、定期的に、又は、関心推定要求8を通知に応じて、関心推定処理153pを実行する。関心推定処理153pによって推定される関心度3cは、各送信元に対して、サービスごとに関心情報DB143で管理される。また、関心推定要求8に対しては、推定した各サービスの関心度3cを示した関心推定結果9で応答される。
本実施例では、関心推定部153は、行動履歴DB141を参照し、観光スポットへの興味を達成するまでと、観光スポットへの興味が達成された後とにおいて、異なる推定方法を行う。推定方法については後述される。観光スポットへの興味を達成するまでと、観光スポットへの興味が達成された後とで推定方法を切り替えることで、ユーザ5の情報検索の目的に適切な観光スポットのお勧めを実現する。
行動履歴DB141は、収集部151が端末200から受信した行動履歴情報1dが蓄積される。提供情報DB142は、端末200で動作するアプリケーション175により端末200に表示される各スポットも紹介文からその特徴を単語群で表現した多次元のドキュメント空間D(後述される)に相当する。関心情報DB143は、送信元別にサービスごとの最新の関心度3cを記憶する。これらデータベース141〜143については後述される。
複数のアプリケーション175により異なるサービスが提供される。複数のアプリケーション175は、提供するサービスの特性によりさまざまなジャンルに分類される。ジャンルの例として、観光施設、グルメ、ツアー、ショッピング等である。各アプリケーション175がどのジャンルに属するかは、アプリケーション175を特定するアプリID、アプリケーション名に含まれる特定の単語、アプリケーション175に関連付けられた紹介文等に基づいて判断されればよい。最も簡単な例として、アプリIDにジャンル名を含めればよい。
端末200は、主な処理部として、履歴収集部271と、履歴送信部272と、取得部273と、アプリ制御部274とを有する。各処理部271〜274は、端末200にインストールされたプログラムが、端末200のCPU211に実行させる処理により実現される。履歴収集部271と、履歴送信部272とは、履歴管理部210に相当し、取得部273と、アプリ制御部274とは、情報提供部220に相当する。また、記憶部230は、行動履歴情報1d、関心推定結果9等を記憶する。
履歴収集部271は、アプリケーション175の実行、場所IDの受信に応じて記憶部230に記憶された行動履歴情報1dを読み出して、履歴送信部272にサーバ装置100への送信要求を行う。履歴送信部272は、履歴収集部271からの送信要求に応じて、通信I/F217を制御してサーバ装置100へ行動履歴情報1dを送信する。履歴収集部271は、行動履歴情報1dが記憶部230に記憶されるごとにサーバ装置100へ送信してもよいし、所定間隔でサーバ装置100へ送信してもよい。
取得部273は、アプリ制御部274からの関心推定結果9の取得要求に応じて、通信I/F217を制御してサーバ装置100へ関心推定要求8を送信し、サーバ装置100から関心推定結果9を受信し、記憶部230に記憶する。また、取得部273は、アプリ制御部274に関心推定結果9の受信を通知する。
アプリ制御部274は、ユーザ5の操作に応じて、ユーザ5が選択したサービスに対応するアプリケーション175を実行する。アプリ制御部274は、ユーザ5の閲覧を目的とした操作や、検索の指示操作を検出し、対応するアプリケーション175を実行する。
複数のアプリケーション175は、検索用のアプリケーションと、閲覧用のアプリケーションとを含む。複数のアプリケーション175のうち、観光スポットの検索処理を行うアプリケーションを、「検索アプリケーション」といい、ユーザ5が閲覧を目的とした観光スポットを紹介するアプリケーションを「閲覧アプリケーション」という。
アプリ制御部274は、ユーザ5の閲覧アプリケーションの選択を検知すると、記憶部230に行動履歴情報1dを記憶する。また、アプリ制御部274は、ユーザ5の検索アプリケーションの選択を検知すると、取得部273に関心推定結果9の取得要求を行う。そして、サーバ装置100から関心推定結果9を取得すると、アプリ制御部274は、検索アプリケーションに関心推定結果9に基づくお勧め順を作成させ、端末200のユーザI/F216に表示させる。
アプリ制御部274から通知された関心推定結果9には、閲覧アプリケーションごとの関心度3cに従ったお勧め順が含まれる。検索アプリケーションは、おすすめ順に従って、閲覧アプリケーションに対応付けられた観光地の名称を一覧にし、かつユーザ5によって選択可能に端末200に表示する。選択された閲覧プリケーションは、アプリ制御部274の制御により実行される。その際、アプリ制御部274は、行動履歴情報1dを生成し、記憶部230に記憶する。
本実施例では、複数のアプリケーション175は特定の地域での観光に関連する情報提供をサービスとするアプリケーションの場合で説明するが、本実施例の利用の形態は、この例に限定されない。
本実施例における複数のアプリケーション175は、サーバ装置100で管理され、ユーザ5が必要に応じて、サーバ装置100から端末200へとダウンロード可能であればよい。
上述したようなシステム1000では、関心推定部153が観光スポットへの興味を達成するまでと、観光スポットへの興味が達成された後とにおいて、異なる推定方法を行う。興味達成後に行われる推定方法により、達成感により一旦薄らいだ興味が回復するまで、訪問済みの観光スポットに関する情報の配信又は表示に係る情報提供制御を可能とする。
図4は、サーバ装置の関心推定部の機能構成例を示す図である。図4において、サーバ装置100の関心推定部153は、主な処理部として、興味回復率更新部154と、推定方法制御部155と、関心度算出部156とを有する。各処理部154〜156は、サーバ装置100にインストールされたプログラムが、サーバ装置100のCPU111に実行させる処理により実現される。また、記憶部130は、初期範囲テーブル144、パラメータ更新テーブル145、行動ベクトルテーブル146、関心ベクトルテーブル147等を記憶する。
興味回復率更新部154は、時間経過により興味が回復する程度(興味回復率PR)のパラメータαを更新する(後述)。パラメータ更新テーブル145に存在しない初めての送信元識別情報の場合、又は、送信元識別情報はパラメータ更新テーブル145に存在するが初めてパラメータαを決定するジャンルである場合に、パラメータαの初期値が定められる。その際には、興味回復率更新部154は、初期範囲テーブル144を参照してパラメータαの初期値を設定する。
一方、既にパラメータ更新テーブル145に送信元識別情報とジャンルのパラメータ値とが存在する場合、興味回復率PRが1になるようなパラメータαの値を求めて、パラメータ更新テーブル145を更新する。パラメータαは、ユーザ5の興味が回復するまでの時間長(例えば、日、時間、分、秒等の単位で示される)を表す。
推定方法制御部155は、行動履歴DB141から、行動履歴情報1dを読み込んで解析し、行動履歴情報1dに応じた推定方法を選択する。本実施例では、行動履歴情報1dの行動種別がサービス利用履歴を示す場合、すなわち、ユーザ5がアプリケーション175を利用した場合、推定方法制御部155は、第1ベクトル生成部155aによる第1ベクトル生成処理を行う。一方、行動履歴情報1dの行動種別が訪問履歴を示す場合、すなわち、ユーザ5が観光スポットを訪問した場合、推定方法制御部155は、第2ベクトル生成部155bによる第2ベクトル生成処理を行う。
第1ベクトル生成部155aは、行動履歴情報1dの行動種別がサービス利用履歴の場合に、時間経過により記憶率Pが減少する状態を表す関数を用いて、行動ベクトル3aを生成する。生成された行動ベクトル3aは、利用したアプリケーション175に出現する単語ごとに現時点での記憶の度合を示したベクトルである。記憶率Pの変化を表す関数として、エビングハウスの忘却曲線、指数的な減少を表す関数等を用いればよい。
第2ベクトル生成部155bは、行動履歴情報1dの行動種別が訪問履歴の場合に、ユーザ5の観光スポットの訪問後には興味が減少するものの、時間経過による興味回復率PRを表す関数を用いて、行動ベクトル3aを生成する。興味回復率PRを表す関数として、エビングハウスの忘却曲線に類する形状の曲線、指数的な減少を表す関数等の逆関数を用いる。
第1ベクトル生成部155a又は第2ベクトル生成部155bによって生成された行動ベクトル3aは行動ベクトルテーブル146に記憶される。
関心度算出部156は、行動ベクトル3aを用いて、関心度3cを推定し、推定した関心度3cを含む関心推定結果9を関心情報DB143に記憶する。関心度算出部156は、行動ベクトルテーブル146から、送信元識別情報ごとに、行動ベクトル3aを読み込んで合計し、関心ベクトル3bを生成する。
行動ベクトル3aが合算された関心ベクトル3bは、利用したアプリケーション175の履歴と訪問したスポットの履歴とからサービスに対する、ユーザ5の興味の度合が示されている。関心度算出部156は、生成した関心ベクトル3bと、提供情報DB142を利用して得られた単語文書行列2d(図6)との内積の結果(ジャンル毎の関心度3c)を用いて関心情報3dを生成する。得られた関心情報3dを含む関心推定結果9が関心情報DB143に記憶される。
図5は、行動履歴DBのデータ構成例を示す図である。図5において、行動履歴DB141は、端末200又はユーザ5ごとに行動履歴情報1dを蓄積するログデータベースに相当し、送信元識別情報、行動種別、ログ情報等の項目を有する。
送信元識別情報は、端末200の識別情報を示す。端末200又はユーザ5のいずれかを識別する情報であればよい。行動種別は、訪問履歴又はサービス利用履歴を示す。ログ情報は、端末200から受信した行動履歴情報1dに含まれる観光スポットの訪問又はサービス利用の情報が記録される。
この例では、送信元識別情報「device1」に関して、行動種別が訪問履歴の場合、
{"placeid": "gps1", "checkintime": "2018/09/10 13:30:00", "staytime": "900"},
{"placeid": "gps2", "checkintime": "2018/09/10 15:15:00", "staytime": "1800"},
{"placeid": "グルメ250_お座敷とやま鮨", "checkintime": "2018/09/12 13:00:08, "staytime": "3600"}
等の3件以上のログ情報が記録されている。
訪問履歴のログ情報において、"placeid"に対して、gps1及びgps2は経度緯度を示し端末200がGPSで取得した情報を示す。経度緯度ではない値の場合、ジオフェンス1fへの進入によりプレイスサービスによって得られた予め設定された観光スポットの場所情報が示される。一例として、「グルメ250_お座敷とやま鮨」等である。場所情報には、場所を紹介した閲覧アプリケーションを特定するアプリIDを含むことが望ましい。更に、アプリIDには、ジャンル名を含めることが望ましい。この例では、「グルメ250」がアプリIDに相当し、ジャンルは「グルメ」である。
また、"checkintime"によりジオフェンス1fへと端末200が進入したときの日時(進入時刻)を示し、"staytime"により、ジオフェンス1fから退出するまでの滞在した時間長(滞在時間)を示している。
また、送信元識別情報「device1」に関して、行動種別が訪問履歴の場合、
{"appid": "ツアー88_二上山", "activatetime": "2018/09/01 22:30:00"},
{"appid": "スポット18_ものづくり_能作", "activatetime": "2018/09/01 22:30:50"},
{"appid": "スポット39_富山城址公園", "activatetime": "2018/09/05 22:32:20"},
{"appid": "ツアー100_黒部市生地のまち歩き", "activatetime": "2018/09/09 11:00:35"},
{"appid": "グルメ250_お座敷とやま鮨", "activatetime": "2018/09/10 11:02:35"}
等の5件以上のログ情報が記録されている。
サービス利用履歴のログ情報では、"appid"により、利用したアプリケーション175(即ち、サービス)を特定するアプリID又はアプリIDを含む情報が示される。この例では、「ツアー88」、「スポット18」、「スポット39」、「ツアー100」、そして「グルメ250」がアプリIDに相当する。
また、"activatetime"により、アプリケーション175の起動時刻(サービスの実施時刻)を示している。サービス利用履歴他のログ情報においても、アプリID、及び実施時刻が同様の形式で示される。
送信元識別情報「device2」に関して、行動種別が訪問履歴については、未だログ情報を収集しておらず空(Null)データである。行動種別がサービス利用履歴については、1件以上のログ情報が上述した形式で記録されている。
図6は、ドキュメント空間の例を示す図である。図6において、ドキュメント空間Dは、前処理により得られた、アプリケーション175が提供する紹介文の特徴を表す単語に対する特徴量を示す。ドキュメント空間Dは、予め準備され提供情報DB142で管理される。
ドキュメント空間Dの作成では、ツアーアプリケーションの各ツアー、観光ナビアプリケーションの各スポット、鮨アプリケーションの各店舗等の単位で区別される情報を文書とみなし、単位ごとに文書に出現する単語列2eを作成する。そして、各単語に対して計算されたtf-idf(Term Frequency - Inverse Document Frequency)値が記憶される。
図6の例では、ジャンル「ツアー」に分類されるツアー1、ツアー2、及びツアー3の3つの閲覧アプリケーションであり、ジャンル「観光施設」に分類されるスポット1、スポット2、及びスポット3の3つの閲覧アプリケーションの場合で説明する。
ドキュメント空間Dは、全アプリケーション(全サービス)の総数を行の次元とし全アプリケーションの全ての紹介文から単語を抽出し、抽出した単語数を列の次元数とした空間に相当する。
行には、ツアー1、ツアー2、・・・、スポット1、スポット2、スポット3が示され、列には、抽出された単語が示される。抽出した単語を含む単語列2eとして、例えば、「番屋街、氷見、唐島、阿尾城、富山、・・・、城」を得る。紹介文ごとに、得られた単語列2eの各単語のtf-idf値を算出する。単語列2eは、任意で定めることが可能であるが、全てのアプリケーションに対して同一とする。
ジャンル「ツアー」のドキュメント空間Dtourでは、ツアー1、ツアー 2、及びツアー3の行に各単語のtf-idf値が示され、他の行の値には「0」が設定されている。ジャンル「観光施設」のドキュメント空間Dnaviでは、スポット1、スポット2、及びスポット3の行に各単語のtf-idf値が示され、他の行の値には「0」が設定されている。他のジャンルのドキュメント空間についても同様に、対応する行には各単語のtf-idf値が示され、他の行は全て「0」が設定されている。
ドキュメント空間Dは、全てのジャンルを対象として、アプリケーションごとに各単語のtf-idf値を計算することで得られる。ドキュメント空間Dの作成は前処理として行われる。このように、アプリケーションごとの各単語のtf-idf値を示す行列を、単語文書行列2dという。
図7は、提供情報DBのデータ例を示す図である。図7では、作成されたドキュメント空間Dを管理する提供情報DB142の具体的なデータ例を図7で示す。提供情報DB142は、紹介文名ごとに、予め定めた単語列2eに従って、単語ごとのtf-idf値を記憶し管理するデータベースである。
図7の例では、単語列2eは、「城、武士、桜、食事、景色、・・・」である。それぞれの単語が列の項目に相当する。紹介文名は、各ツアー、各スポット、各店舗等の名称を示し、行の名称として示している。
紹介文名「富山城」はスポットを特定し、「富山城」の紹介文では、単語列2eのうち、
「城」、「桜」、「景色」に対してそれぞれtf-idf値が「0.4」、「0.2」、「0.2」が設定され、他の単語のtf-idf値は「0.0」を示している。tf-idf値は、0〜1の範囲の値を示し、1に近いほど、特徴をより表している単語であることを示している。他の紹介文についても同様に単語列2eの各単語に対してtf-idf値が設定されている。
このような提供情報DB142を用いて、関心推定部153は、単語文書行列2dを取得し、単語文書行列2dと、行動履歴DB141を用いて得られた関心ベクトル3bとにより、関心度3cを推定する。次に、関心度3cの推定方法について説明する。本実施例では、行動履歴情報1dの行動種別に応じて推定方法を切り替える。先ず、本実施例における、行動種別がサービス利用履歴の場合に行われる第1の推定方法について説明する。
図8は、記憶率の曲線の例を示す図である。図8に示すように、記憶率Pは、時間tが0のときを100%の記憶率とし、時間tの経過に応じて0に漸近するような指数関数的な曲線で表される。
このような記憶率Pは、エビングハウスの忘却曲線のように指数的に減少する関数で表され、例えば、
のように表される。数1において、tは時間であり、βはtに対する重みパラメータであり、任意の値でよい(設計時に与えられればよい)。数1は、第1ベクトル生成部156aによって用いられる。数1を「忘却関数」と呼ぶものとする。
次に、行動種別が訪問履歴の場合に行われる興味回復率PRを用いた第2の推定方法について説明する。
図9は、第1の推定方法における興味回復率を表す曲線の例を示す図である。図9に例示する興味回復率PRは、時間tが0のときを積極的に興味を示さない状態であるとし、時間tの経過に応じて1に漸近するような指数関数的な曲線で表される。このような曲線を「興味回復率曲線」というものとする。
このような興味回復率PRは、エビングハウスの忘却曲線のように指数的に減少する関数の逆数で表され得ることを、発明者等は見出した。例えば、
のように表される。数2において、tは時間であり、αは第2ベクトル生成部155bにより決定されるパラメータである。数2を「興味回復関数」と呼ぶものとする。興味回復関数は、パラメータαによって、時間経過に係る回復率のスピードが制御される関数である。
図10は、初期範囲テーブルのデータ構成例を示す図である。図10において、初期範囲テーブル144は、ジャンルごとに興味回復率PRを得るためのパラメータαの初期範囲を予め記憶したテーブルである。
このデータ例では、ジャンルが「観光施設」の場合、初期範囲「3 < α ≦ 10」とすることが定められ、ジャンルが「グルメ」の場合、初期範囲「2 < α ≦ 3」とすることが定められている。また、ジャンルが「ツアー」の場合、初期範囲「2 < α ≦ 3」とすることが定められ、ジャンルが「ショッピング」の場合、初期範囲「1 < α ≦ 2」とすることが定められている。
本実施例では、ジャンルごとにパラメータαの初期範囲を決めておくことで、ジャンルごとに興味が回復するスピードが異なることを考慮し、興味回復率PRの曲線形状の変化範囲を定めておく。更に、本実施例では、関心推定処理153pを行うごとに、各送信識別情報に対して、ジャンルごとにパラメータαが学習され更新されるため、ユーザ5ごとに興味回復の程度を調整して適切なタイミングで、過去にお勧めした情報の提供を再開させることができる。
また、ユーザ5ごとに調整された興味回復の程度に応じて、お勧めに含まれる情報の提示を制御することができるため、ユーザ5が既に目的を達成した直後であっても、目的の達成前と同様の情報がお勧めに含まれることによる煩わしさを改善することができる。
図11は、パラメータ更新テーブルのデータ構成例を示す図である。図11において、パラメータ更新テーブル145は、各ユーザ5又は端末200に対して、利用したアプリケーション175のジャンルごとに興味回復率PRのパラメータαを記憶するテーブルであり、送信元識別情報、パラメータα等の項目を有する。また、パラメータ更新テーブル145により、興味回復率更新部154により更新された最新のパラメータがジャンルごとに管理される。
送信元識別情報は、ユーザ5又は端末200を特定する情報である。ジャンルは、利用されたアプリケーション175のジャンルを示し、パラメータαは、利用したアプリケーション175のジャンルに対する値を示す。
この例では、送信元識別情報「device1」に対して、少なくとも「観光施設」及び「ツアー」のそれぞれのジャンルに対して、パラメータαが「30」及び「9」であることが示されている。ジャンルの項目には、初期範囲テーブル144で管理されているジャンルの値が設定される。
図9において、時間tの1単位が1週間であるとする。送信元識別情報「device1」のジャンル「観光施設」の場合、訪問後29週(t=29)経過すると、数2より、
log30(29+1) = 1
を得る。即ち、興味回復率PRは1となる。本実施例では、興味回復率PRが1に達すると、ジャンル「観光施設」に分類されていた、ユーザ5が訪問した観光スポットの情報提供が通常のお勧め順で再開される。
言い換えると、経過日数が29週未満で定めた閾値に達していない場合、ユーザ5が訪問した観光スポットの情報提供は抑制される。日数が閾値以上であり29週未満の場合、調整されたお勧め順で観光スポットの情報提供が行われる。例えば、訪問済み観光スポットの情報提供には重み付けをし、訪問前のお勧め順での順位より低い順位となるように調整する。
送信元識別情報「device1」のジャンル「ツアー」の場合、訪問後には閾値の日数経過するまで、ユーザ5の端末200へのツアーの情報提供は抑止される。閾値の一例として、興味回復率PR「0.5」を設定してもよく、この値に限定されない。
送信元識別情報「device7」に対しては、ジャンル「観光施設」のみが存在し、パラメータαは値「9」である。送信元識別情報「device8」に対しては、少なくともジャンル「グルメ」が存在し、パラメータαは値「8」である。ジャンルに対応する情報提供の制限及び再開は、上述した送信元識別情報「device1」の場合と同様である。
複数のアプリケーション175は、提供するサービスの特性により、いずれかのジャンルに分類され、同一のジャンルに分類されるアプリケーション175の利用の場合、同一のパラメータαの値が適用される。
図12は、関心度の算出例を示す図である。図12より、あるユーザ5の関心度3cを求める場合、関心ベクトルテーブル147からアプリケーション175ごと(スポットの情報ごと)の関心ベクトル3bを用いて、関心ベクトル行列3mを作成し、提供情報DB142から取得した単語文書行列2dとの内積を算出する。
内積を算出することで、アプリケーション175ごとのあるユーザ5の関心度3cを示した関心情報3dを得ることができる。関心情報3dは送信元ごとに作成され、関心情報DB143に記憶される。
図13は、関心情報DBのデータ構成例を示す図である。図13において、関心情報DB143は、各送信元に対して、複数のアプリケーション175のそれぞれに対して推定した関心度3cを記憶したテーブルであり、送信元識別情報、推定時刻、関心情報等の項目を有する。
送信元識別情報には、行動履歴DB141から得られた送信元識別情報が設定される。推定時刻には、関心推定部153(具体的には、関心度算出部156)が関心情報DB143に記憶した時刻が関心度3cを推定した時刻として設定される。関心情報には、関心度算出部156が算出したアプリケーション175ごとの関心度3cを示す関心情報3dが設定される。
この例では、送信元識別情報「device1」に対する推定時刻「2018/11/30 12:00:00」の関心情報3dは、{"ツアー1": 0.8, "ツアー2": 0.0, "スポット1": 0.3, "スポット2": 0.4, ...}である。この関心情報3dにより、device1のユーザ5のアプリケーション175ごとの関心度3cが示される。ツアー2の関心度3は「0.0」を示すため、ツアー2で特定される閲覧アプリケーションで紹介されているツアーを利用したと考えられ、一旦、ユーザ5のツアー2に対する関心がなくなったと判断されている。そのため、検索結果においてツアー2が含まれていても除外される。
送信元識別情報「device1」に対する推定時刻「2019/01/01 12:30:00」の関心情報3dは、{""ツアー1": 0.9, "ツアー2": 0.5, "スポット1": 0.8, "スポット2": 0.4, ...}である。この関心情報3dにより、device1のユーザ5のアプリケーション175ごとの関心度3cが示される。ツアー2の関心度3の「0.5」は、ユーザ5の一旦消失したツアー2に対する関心が、回復してきたことを示している。検索結果においてツアー2が含まれている場合、関心度3に基づいてお勧め順のランキングが調整される。
また、送信元識別情報「device2」に対する関心情報3dは、{"ツアー1": 0.0, "ツアー2": 0.2, "スポット1": 0.0, "スポット2": 0.7, ...}であり、device2のユーザのアプリケーション175ごとの関心度3cが示されている。
上述したように、関心度3が「0.0」を示す値のうち、ある期間を経て増加する場合、興味回復率PRにより関心度3が調整されている可能性がある。
本実施例における関心情報3dにより示されるアプリケーション175ごとの関心度3cは、記憶率P及び興味回復率PRに基づいて調整されたtf-idf値である。
図14は、ユーザのアプリケーションの利用状況と観光客の旅行状況との対応を示す図である。図14に示す行動データ80は、発明者等が分析した、2018年7月から2018年12月までの、観光客としての富山県へのリピータであるユーザがアプリケーション175を利用した状況を示すデータの一部である。
行動データ80では、利用データ81と旅行データ82とが時系列に対応付けて示されている。利用データ81では、3つのジャンル「観光施設」、「ツアー」、及び「グルメ」のそれぞれに分類される観光アプリ、ツアーアプリ、及びグルメアプリの利用実績が示されている。旅行データ82では、ユーザが実際に観光した時期と滞在期間の概要を示している。
この行動データ80は、2018年7月に富山県に旅行したユーザを対象としたデータを示している。ユーザは、富山県に旅行した後に(1回目の滞在)、2018年8月にグルメアプリを利用した。さらに、ユーザはグルメアプリを利用した1ヶ月程後である2019年9月に、再度富山県を訪れ、2週間程滞在している(2回目の滞在)。グルメアプリについては、この2回目の滞在の直後に再度利用している。その後、ユーザは、富山県へ最大約2か月間の間隔をあけて度々訪問している。
ユーザが利用していたグルメアプリは、富山湾鮨アプリであった。富山湾鮨アプリについては、2018年8月の最初の閲覧から9月の2回目の閲覧までの期間は約1ヶ月であった。その後、ユーザは、約1ヶ月の間隔を置いて富山湾鮨アプリを、さらに閲覧している。
また、ユーザは、2018年9月の中旬からツアーアプリを閲覧するようになり、その後、11月下旬までの期間において、約2週間間隔から約1週間間隔へと短い間隔で閲覧するようになっている。
一方、ユーザは、2018年9月初旬に観光アプリを利用し、約2カ月後の11月中旬に再度観光アプリを利用している。閲覧された観光アプリは、立山黒部の観光アプリであった。この観光アプリの2回目の閲覧後、ユーザは、実際に立山及び黒部を訪れている。
図14に示す行動データ80は、一部のデータ例であるが、このようなデータを含めて分析を行い、発明者等は、ジャンルに応じて、ユーザが閲覧する期間にある程度の傾向があることに着目した。
更に、上述した本実施例により、サーバ装置100が、アプリケーション175が提供するサービスの特性に応じたジャンルごとに、利用状況を学習することで、特定の情報の提供タイミングを調整できるため、効果的な情報提供を実現できる。上述したように、本実施例では、記憶率Pを用いて、ユーザ5が過去に閲覧した情報の記憶(興味)を持ち続けられるようにし、新たに興味回復率PRを導入したことで、訪問済みの観光スポットに関する同様な情報の提供による煩わしさを低減させることができる。
更に、興味回復率PRにより、訪問済みの観光スポットであっても、興味が回復したタイミングを推定することが可能となる。この仕組みにより、ユーザ5に、観光スポット、旅行中に訪れたレストラン、ショッピングした店舗等を懐かしく思い出させ、リピータとして観光地へと引き寄せ、経済を活性化させる効果も期待できる。
図15及び図16は、本実施例に係るシステムにおける処理の全体概要を説明するためのシーケンス図である。システム1000における処理は、処理フェーズA、B、C、及びDを有する。図15及び図16中、アプリ制御部274の制御配下で動作するアプリケーション175は省略している。
処理フェーズAは、サービス利用履歴の行動履歴情報1dの収集フェーズに相当し、処理フェースBは、関心推定処理153pの実施フェーズに相当する。また、処理フェーズCは、訪問履歴の行動履歴情報1dの収集フェーズに相当し、処理フェーズDは、関心推定結果の取得フェーズに相当する。
図15より、処理フェーズAでは、ユーザ5の端末200での操作によりアプリ制御部274が起動されると(ステップS301)、ユーザ5がサービスを選択するごとに対応するアプリケーション175が実行される(ステップS302)。実行ごとに、アプリケーション175は、行動履歴情報1dを作成して端末200の記憶部230に記憶する(ステップS303)。
履歴収集部271は、一定間隔で記憶部230に記憶された新たな行動履歴情報1dの確認後、サーバ装置100への送信依頼を履歴送信部272に行う(ステップS304)。履歴送信部272は、履歴収集部271からの送信依頼に応じて、通信I/F217によりサーバ装置100へ行動履歴情報1dを送信する(ステップS305)。
サーバ装置100では、収集部151が、通信I/F117が受信した行動履歴情報1dを行動履歴DB141に蓄積する(ステップS306)。このような処理フェーズAにより、様々な端末200から行動履歴情報1dが収集され、行動履歴DB141に蓄積される。
処理フェーズBでは、関心推定部153は、起動されると(ステップS321)、単語文書行列2dを提供情報DB142から取得する(ステップS322)。そして、関心推定部153は、一定間隔で、行動履歴情報DB141から行動履歴情報1dを読み出して、関心ベクトル3bを生成した後、単語文書行列2dを用いてジャンルごとの関心度3cを取得する(ステップS323)。関心推定部153は、得られたジャンルごとの関心度3cを示した関心情報3dを含む関心推定結果9を関心情報DB143に記憶する(ステップS324)。
処理フェーズCでは、アプリ制御部274が起動された状態で、場所IDが検知されるごとに(ステップS332)、検知した場所IDを含む行動履歴情報1dが記憶部230に記憶される(ステップS333)。
履歴収集部271は、一定間隔で記憶部230に記憶された新たな行動履歴情報1dの確認後、サーバ装置100への送信依頼を履歴送信部272に行う(ステップS334)。履歴送信部272は、履歴収集部271からの送信依頼に応じて、通信I/F217によりサーバ装置100へ行動履歴情報1dを送信する(ステップS335)。
サーバ装置100では、収集部151が、通信I/F117が受信した行動履歴情報1dを行動履歴DB141に蓄積する(ステップS336)。このような処理フェーズA及びCにより、様々な端末200から行動履歴情報1dが収集され、行動履歴DB141に蓄積される。サーバ装置100により関心推定処理153pが行われ、関心推定結果9が関心情報DB143に蓄積される(ステップS323〜S324)。
図16より、処理フェーズDでは、ユーザ5の端末200での操作によりアプリ制御部274が起動されると(ステップS341)、ユーザ5による検索を行う操作によるイベントを検出すると(ステップS342)、取得部273を呼び出す(ステップS343)。アプリ制御部274からの呼び出しに応じて、取得部273は、関心推定要求8をサーバ装置100に送信する(ステップS344)。
関心推定要求8を受信した送受信部152は、関心推定部153へと通知する(ステップS345)。関心推定部153は、関心情報DB143から関心推定結果9を取得し(ステップS346)、送受信部152に関心推定結果9の送信要求を行うことで、端末200へ関心推定結果9を関心推定要求8に対する応答として送信する(ステップS348)。
端末200では、取得部273が、関心推定結果9をサーバ装置100から取得すると、関心推定結果9は記憶部230に記憶されると共に、アプリ制御部274に通知される(ステップS349)。アプリ制御部274は、検索アプリケーションに関心推定結果9に従った検索結果をユーザI/F216に表示させる(ステップS350)。
次に、システム1000における、サーバ装置100及び端末200による種々の処理についてフローチャートで説明する。
図17は、端末でのアプリ制御部によるアプリ制御処理を説明するためのフローチャート図である。図17において、アプリ制御部274は、起動されると、ステップS401〜S409の処理を行う。
アプリ制御部274は、ユーザ5の操作が閲覧であるか検索であるかを判定する(ステップS401)。一例として、起動時に、アプリ制御部274は、メニュー画面をユーザI/F261に表示させ、ユーザ5にサービスの選択を促し、ユーザ5により指定されたサービス(アプリケーション175)が観光に関する検索を目的とする場合か否かを判定すればよい。検索を目的としない場合、閲覧を目的とすると判断すればよい。
選択されたサービス(アプリケーション175)が閲覧用(閲覧アプリケーション)である場合、アプリ制御部274は、閲覧アプリケーションの選択を受け付け(ステップS402)、閲覧アプリケーションを実行する(ステップS403)。
そして、アプリ制御部274は、実行した閲覧アプリケーションの行動履歴情報1dを作成して記憶部230に記憶する(ステップS404)。行動履歴情報1dには、検索アプリケーションを特定するアプリID、検索アプリケーションの起動時刻等が示される。
その後、アプリ制御部274は、ユーザ5により終了操作がなされたか否かを判断する(ステップS405)。終了操作ではない場合(ステップS405のNO)、アプリ制御部274は、ステップS401へと戻る。終了操作の場合(ステップS405のYES)、アプリ制御部274は、このアプリ制御処理を終了する。
検索アプリケーションが選択された場合、アプリ制御部274は、関心推定要求8をサーバ装置100へ送信する(ステップS407)。その後、アプリ制御部274は、サーバ装置100から関心推定結果9を取得したか否かを判断する(ステップS407)。
関心推定結果9を取得できなかった場合(ステップS407のYES)、アプリ制御部274は、関心推定結果9から閲覧アプリケーションごとの関心度3cを示す関心情報3dを取得する(ステップS408)。そして、アプリ制御部274は、検索アプリケーションに取得した関心情報3dを用いたお勧め順で観光情報を表示させる(ステップS409)。
その後、アプリ制御部274は、ユーザ5により終了操作がなされたか否かを判断する(ステップS405)。終了操作ではない場合(ステップS405のNO)、アプリ制御部274は、ステップS401へと戻る。終了操作の場合(ステップS405のYES)、アプリ制御部274は、このアプリ制御処理を終了する。
関心推定結果9を取得できなかった場合(ステップS407のNO)、アプリ制御部274は、検索アプリケーションに通常のお勧め順で観光情報を表示させる(ステップS410)。通常のお勧め順とは、本実施例の適用がない場合のお勧め順に相当する。その後、アプリ制御部274は、ユーザ5により終了操作がなされたか否かを判断する(ステップS405)。終了操作ではない場合(ステップS405のNO)、アプリ制御部274は、ステップS401へと戻る。終了操作の場合(ステップS405のYES)、アプリ制御部274は、このアプリ制御処理を終了する。
図18は、履歴収集部による履歴収集処理を説明するための図である。図18において、履歴収集部271は、一定時間が経過したか否かを判断する(ステップS421)。一定時間が経過していない場合(ステップS421のNO)、履歴収集部271は、ステップS421を繰り返す。
一定時間が経過した場合(ステップS421のYES)、履歴収集部271は、記憶部230から行動履歴情報1dを読み出して、履歴送信部272に対して送信要求を行うことでサーバ装置100へ送信する(ステップS422)。
その後、履歴収集部271は、アプリ制御部274は終了しているか否かを判定する(ステップS423)。アプリ制御部274が終了していない場合(ステップS423のNO)、履歴収集部271は、ステップS421へと戻り、上述した同様の処理を繰り返す。アプリ制御部274が終了している場合、(ステップS423のYES)、履歴収集部271は、この履歴収集処理を終了する。
図19及び図20は、サーバ装置の関心推定部による関心推定処理を説明するためのフローチャート図である。図19において、関心推定部153は、起動されると、提供情報DB142から単語文書行列2dを読み込む(ステップS501)。
関心推定部153は、一定時間が経過したか否かを判断する(ステップS502)。一定時間が経過していない場合(ステップS502のNO)、関心推定部153は、ステップS502を繰り返す。
一定時間が経過している場合(ステップS502のYES)、関心推定部153における興味回復率更新部154が、興味回復率PRのパラメータαを更新するパラメータ更新処理を行う(ステップS503)。パラメータ更新処理の詳細は後述される。
興味回復率PRのパラメータαの更新後、関心推定部153では、推定方法制御部155が、行動履歴DB141から行動履歴情報1dを順に取得する(ステップS504)。そして、推定方法制御部155は、取得した行動履歴情報1dの行動種別がサービス利用履歴を示すか否かを判定する(ステップS505)。
行動種別がサービス利用履歴の場合(ステップS505のYES)、推定方法制御部155は、第1ベクトル生成部155aにより、記憶率P及び操作種類の重みとを付与した行動ベクトル3aを生成する(ステップS506:第1ベクトル生成処理)。そして、推定方法制御部155は、生成された行動ベクトル3aを行動ベクトルテーブル146に記憶する(ステップS509)。
一方、行動種別がサービス利用履歴でない場合(ステップS505のNO)、推定方法制御部155は、更に、行動種別は訪問履歴か否かを判断する(ステップS507)。行動種別がサービス利用履歴でもなく訪問履歴でもない場合(ステップS507のNO)、推定方法制御部155は、ステップS511へと進む。
行動種別が訪問履歴の場合(ステップS507のYES)、推定方法制御部155は、第2ベクトル生成部155bにより、興味回復率PRのパラメータαを決定し、重みを付与した行動ベクトル3aを生成する(ステップS508:第2ベクトル生成処理)。興味回復率PRは、訪問時には0を示し、訪問からの時間の経過に応じて1に近付く。興味回復率PRで重み付けすることで、ユーザ5の訪問済みのスポットに対する興味の回復を加味した行動ベクトル3を生成できる。そして、推定方法制御部155は、生成された行動ベクトル3aを行動ベクトルテーブル146に記憶する(ステップS509)。
その後、推定方法制御部155は、行動履歴情報1dに位置情報が付与されているか否かを判断する(ステップS510)。行動履歴情報1dに位置情報が付与されていない場合(ステップS510のNO)、推定方法制御部155は、ステップS504へと戻り、
上述同様の処理を繰り返す。一方、行動履歴情報1dに位置情報が付与されている場合(ステップS510のYES)、推定方法制御部155は、図20のステップS511へと進む。
図20において、推定方法制御部155は、位置情報から近隣スポットを判定する(ステップS511)。判定方法の一例として、推定方法制御部155は、予め定めた観光スポットごとのジオフェンスに基づいて、位置情報から最も近い観光スポットを特定すればよい。
そして、推定方法制御部155は、第2ベクトル生成部155bにより、興味回復率PRのパラメータαを決定し、重みを付与した行動ベクトル3aを生成する(ステップS512)。興味回復率PRで重み付けして、ユーザ5の訪問済みのスポットに対する興味の回復を加味した行動ベクトル3を生成する。そして、推定方法制御部155は、生成された行動ベクトル3aを行動ベクトルテーブル146に記憶する(ステップS513)。
推定方法制御部155は、対象の行動情報履歴1dを全て処理したか否かを判断する(ステップS514)。対象範囲は、1以上の年数、レコード数等が予め与えられても良いし、サーバ装置100の管理者により適宜設定されてもよい。対象の行動情報履歴1dが残っている場合(ステップS514のNO)、推定方法制御部155は、ステップS504へと進み、上記同様の処理を繰り返す。
一方、対象の行動情報履歴1dを全て処理した場合(ステップS514のYES)、推定方法制御部155は、関心度算出部156により、送信元識別情報ごとに、行動ベクトル3aを合算して、関心ベクトル3bを生成する(ステップS515)。生成された関心ベクトル3bは、関心ベクトルテーブル147に記憶される。関心ベクトル3bは、予め定められた単語列2eに従って、単語ごとに記憶率P及び操作の種類と、興味回復率PRとにより重み付けされた値を示す。
関心度算出部156は、関心ベクトルテーブル147から同一送信元識別ごとに関心ベクトル3bを取得して関心ベクトル行列3mを作成し、単語文書行列2dとの内積を計算することで、ジャンルごとの関心度3cを取得する(ステップS516)。図12に示すように、関心度算出部156は、関心ベクトル3bを、単語文書行列2dの行を特定するサービス識別情報に一致させて並べることで関心ベクトル行列3mを作成して、単語文書行列2dとの内積を計算する。その結果、サービス識別情報ごとの関心度3cを得ることができる。
関心度算出部156は、各送信元識別情報に対して、ジャンルごとに得られた関心度3cを関心情報DB143に記憶する(ステップS517)。送信元識別情報と推定時刻とに対応付けてジャンルごとの関心度3cを示す関心情報3dが関心情報DB143に記憶される。その後、関心推定部153は、この関心推定処理153pを終了する。
上述した関心推定処理153pは、端末200からの関心推定要求8により必要となった場合には関心推定要求8で指定される送信元識別情報についてのみ、関心度3cを求めればよい。
関心度算出部156によるステップS515〜S517は、以下に示す算出式により表すことができる。
数3及び数4において、
・R:特徴値(ジャンルごとの関心度3cを示す関心情報3dに相当)
・D:ドキュメント空間(単語文書行列2dに相当)(観光アプリ内で提供されているサービス全体をドキュメントとみなし、サービス全体で出現する単語の出現頻度を行列として持つ)
・p(m):観光客の行動履歴から得られる関心領域ベクトル
・M
1:記憶率P。忘却曲線関数y=e
−atのような指数関数。αはパラメータ
・A(a):行動に対する重み
・a(t):行動(閲覧)、鮨アプリを開いた、タクシーアプリを開いた、観光ナビの〇〇スポットを閲覧した等の行動
・M
2:興味回復率
・G(t):行動(結果)、店舗、観光スポットへの訪問、商品の購入等
を示す。
図21は、図19のステップS503における興味回復率のパラメータを更新する更新処理を説明するためのフローチャート図である。図21では、興味回復率更新部154は、行動履歴DB141から行動種別がサービス利用履歴の行動履歴情報1dを取得する(ステップS531)。興味回復率更新部154は、取得した行動履歴情報1dを送信元識別情報ごとに分類する(ステップS532)。
そして、興味回復率更新部154は、送信元識別情報を1つ選択して、同一の送信元識別情報の行動履歴情報1dで示されるそれぞれのアプリIDに基づいて、行動履歴情報1dをジャンル毎に分類する(ステップS533)。そして、興味回復率更新部154は、ジャンル毎に行動履歴情報1dの総数をカウントする(ステップS534)。記憶部130に、ジャンルごとの行動履歴情報1dの総数が記録される。
次に、興味回復率更新部154は、ジャンルを1つ選択し(ステップS535)、選択したジャンルでサービス利用履歴がない、又は1つしかないか否かを判定する(ステップS356)。記憶部130から選択したジャンルに対応付けられた総数が1以下であるか否かを判断すればよい。
判定結果が肯定的である場合、即ち、総数が1以下である場合(ステップS536のYES)、興味回復率更新部154は、ジャンルに対する興味回復率PRのパラメータαを初期値に設定する(ステップS537)。興味回復率更新部154は、初期範囲テーブル144(図10)の初期範囲内で予め定めたパラメータαの値を初期値に設定し、ステップS540へと進む。
判定結果が否定的である場合、即ち、総数が2以上である場合(ステップS536のNO)、興味回復率更新部154は、行動履歴情報を起動時刻で時系列にソートし、起動時刻間の時刻差Δtを全て求めて、平均値を算出する(ステップS538)。そして、興味回復率更新部154は、平均値のときに興味回復率が1になるパラメータαを求める(ステップS539)。求めたパラメータαは、送信元識別情報と、ジャンルとに対応付けて記憶部130に記憶される。
興味回復率更新部154は、全ジャンルを終了したか否かを判断する(ステップS540)。未選択のジャンルがある場合(ステップS540のNO)、興味回復率更新部154は、ステップS533へと進む。
全ジャンルを終了した場合、(ステップS540のYES)、興味回復率更新部154は、更に、全送信元に対して処理を終了したか否かを判断する(ステップS541)。未選択の送信元識別情報があるか否かを判断すればよい。未選択の送信元識別情報がある場合(ステップS541のNO)、興味回復率更新部154は、ステップS533へと戻り、上述した同様の処理を繰り返す。
全送信元に対して処理を終了した場合、即ち、送信元識別情報の全てに対して各ジャンルのパラメータαを更新した場合(ステップS541のYES)、興味回復率更新部154は、各デバイスのジャンル毎のパラメータαの値でパラメータ更新テーブル145を更新する(ステップS542)。
図22は、図19のステップS506における第1ベクトル生成処理を説明するためのフローチャート図である。図22において、第1ベクトル生成部155aは、行動ベクトル3aを初期化する(ステップS561)。行動ベクトル3aは、単語列2eにおける単語数に相当する次元を有し、全ての要素が0に設定される。
第1ベクトル生成部155aは、サービス利用履歴の行動履歴情報からアプリID(appidの値)を取得する(ステップS562)。そして、第1ベクトル生成部155aは、行動ベクトル3aにおいて、アプリIDで特定される紹介文に単語列2eの単語が存在する場合に要素値を1に設定する(ステップS563)。単語の存在の有無の判断方法の一例として、単語文書行列2dにおいてアプリIDに相当する行の値を参照し、0以外を1に変更して行動ベクトル3aの要素値を設定するればよい。
次に、第1ベクトル生成部155aは、数1を用いて記憶率P(図8)を算出する(ステップS564)。そして、第1ベクトル生成部155aは、アプリケーション175の処理の種別に応じた重み3wを付与して、行動ベクトル3aの各要素に乗算することで行動ベクトル3aを生成し(ステップS565)、この第1ベクトル生成処理を終了する。
第1ベクトル生成処理による行動ベクトル3aの生成例を、図22のフローチャートに基づいて説明する。単語列2eは、図5に示す(番屋街、氷見、唐島、阿尾城、富山、・・・、城)であるとする。先ず、行動ベクトル3aを初期化することで(ステップS561)、
(0、0、0、0、0、・・・、0)
となる。
アプリIDが「ツアー2」の場合(ステップS562)、ツアー2の紹介文には「氷見」、「番屋街」等の単語が存在するため、単語列2eに対応する要素に1を設定すると、行動ベクトル3aは、
(1、1、0、0、0、・・・、0)
となる(ステップS563)。
次に、行動履歴情報1dで示される起動時刻(activetime)を用いて時刻tを設定することで、記憶率Pを算出する(ステップS564)。更に、アプリケーションの処理の種類に応じた重みを記憶率Pに付与して、各要素に乗算することで行動ベクトル3aを生成する(ステップS565)。行動ベクトル3aは行動ベクトルテーブル146に記憶される。
ここでは、アプリケーション175の処理の種類は、「閲覧」又は「検索」であり、重みを、「閲覧」では「1」、また、「検索」では「2」とする。そして、アプリIDから実行されたアプリケーション175は閲覧アプリケーションであり、算出された記憶率Pは「0.5」であったとする。記憶率P「0.5」に「閲覧」の重み「1」を掛けて得た「0.5」を行動ベクトル3aの要素値に乗算し、
(0.5、0.5、0、0、0、・・・、0)
を得る。この行動ベクトル3aが行動ベクトルテーブル146に記憶される。
一方、アプリケーション175の処理の種類が検索アプリケーションであり、記憶率Pが「0.5」の場合、記憶率P「0.5」に「検索」の重み「2」を掛けて得た「1.0」が行動ベクトル3aの要素値に乗算される。
アプリケーション175の処理の種類の判別は、全てのアプリケーション175を「閲覧」か「検索」かに予め分類したテーブルを備え、参照することで判別してもよい。アプリIDに処理の種類を判別するためのキーワードを含め、キーワードを「閲覧」か「検索」かに予め分類したテーブルを備え、参照することで判別してもよい。処理の種類が判別できれば、これらの手段に限定されない。
図23は、図19のステップS508における第2ベクトル生成処理を説明するためのフローチャート図である。図23において、第2ベクトル生成部155bは、行動履歴情報1dのログ情報から場所IDを取得し、取得した場所IDが場所情報か位置情報かを判断する(ステップS581)。場所情報であれば、アプリIDを特定可能な識別子が含まれる。また、位置情報であれば、GPSにより取得した経度緯度が示される。
場所情報である場合、第2ベクトル生成部155bは、場所情報を対象スポットに設定する(ステップS582)。具体的には、場所情報からアプリIDを取得する。そして、第2ベクトル生成部155bは、ログ情報を参照して、進入時刻(checkintime)に滞在時間(staytime)を加算して、ジオフェンス1fから出た退出時刻を取得して対象時刻に設定し(ステップS583)、ステップS587へと進む。
一方、位置情報の場合、第2ベクトル生成部155bは、位置情報に基づいて近隣スポットを推定し、対象スポットに設定する(ステップS584)。位置情報で示される経度緯度から最短の観光スポットを特定する。次に、第2ベクトル生成部155bは、処理中の行動履歴情報1dから得られる進入時刻に最も近い進入時刻又は起動時刻の行動履歴情報1dを行動履歴DB141から取得する(ステップS585)。
そして、第2ベクトル生成部155bは、取得した行動履歴情報1dの行動種別に応じて、対象時刻を設定する(ステップS586)。
・行動種別がサービス利用履歴の場合
第2ベクトル生成部155bは、起動時刻(activatetime)を取得して対象時刻に設定する。
・行動種別が訪問履歴の場合
第2ベクトル生成部155bは、進入時刻(checkintime)に滞在時間(staytime)を加算して退出時刻を取得して対象時刻に設定する。
対象スポットと対象時刻とが設定されると、第2ベクトル生成部155bは、対象スポットが予め定めたジオフェンス1f内のエリアであるか否かを判断する(ステップS587)。エリア内である場合(ステップS587のYES)、第2ベクトル生成部155bは、この第2ベクトル生成処理を終了する。
一方、エリア内でない場合(ステップS587のNO)、第2ベクトル生成部155bは、対象時刻から現在時刻までの経過時間を算出し(ステップS588)、対象スポットからジャンルを決定する(ステップS589)。
次に、第2ベクトル生成部155bは、パラメータ更新テーブル145から行動履歴情報1dの送信元識別情報に対応付けられたジャンルに対するパラメータαの値を取得する(ステップS590)。そして、第2ベクトル生成部155bは、経過時間とパラメータαの値とを興味回復関数に入力し、決定したジャンルの興味回復率PRを算出する(ステップS591)。
第2ベクトル生成部155bは、行動ベクトルを初期化し(ステップS592)、対象スポットに対応するアプリIDで特定される紹介文に単語列2eの単語が存在する場合に要素値を1に設定する(ステップS593)。
そして、第2ベクトル生成部155bは、興味回復率PRを重みとして要素値に付与して行動ベクトル3aを生成し(ステップS594)、この第2ベクトル生成処理を終了する。
図24は、関心推定部において行われる関心推定要求の受信制御処理を説明するためのフローチャート図である。図24では、関心推定部153は、関心推定要求8を受信したか否かを確認する(ステップS601)。関心推定要求8を送受信部152から受信していない場合(ステップS601のNO)、関心推定部153は、図19のステップS502へと進み、関心推定処理153pを行う。関心推定処理153pが終了すると、関心推定部153は、ステップS601へ戻る。
関心推定要求8を送受信部152から受信している場合(ステップS601のYES)、関心推定部153は、行動履歴DB141が更新されているか否かを判断する(ステップS602)。関心推定部153は、関心推定要求8で指定されている送信元識別情報を用いて、関心情報DB143を参照して推定時刻を取得し、行動履歴DB141に、取得した推定時刻以降に当該送信元識別情報を含む新たな行動履歴情報1dが追加されているかを判断する。
更新されていない場合(ステップS602のNO)、関心推定部153は、ステップS603へと進む。更新されている場合(ステップS602のYES)、関心推定部153は、図19のステップS504へと進み、関心推定要求8で指定されている送信元識別情報について、関心推定を行う。
関心推定部153は、関心情報DB143から関心推定要求8で指定されている送信元識別情報と関心情報3dとを含む関心推定結果9を取得して、関心推定要求8の送信元の端末200へ送信する(ステップS604)。
図25は、興味回復率の変化例を説明するための図である。図25では、9月5日から9月19日までの興味回復率PRがどのように変化するかの一例を示している。この例の興味回復率PRは、ジャンル「グルメ」の値を示すものとする。興味回復率PRの初期値は1であり、ユーザ5の観光スポットへの訪問を契機として興味回復率PRが変化する。ユーザ5がいずれの観光スポットへの訪問がない場合、閲覧アプリケーションの履歴に基づいて、観光スポットがお勧め順で示される。
例えば、9月5日にユーザ5がスポット1の閲覧アプリケーションを利用すると、端末200からスポット1の閲覧に関する行動履歴情報1dがサーバ装置100へ送信される。この時点において、ユーザ5が検索アプリケーションの利用によるお勧め順91は、
「1位: スポット39、 2位: スポット9、 3位: ツアー88、・・・」
であったとする。
その後、ユーザ5がツアー100の閲覧アプリケーションを利用すると、端末200からツアー100の閲覧に関する行動履歴情報1dがサーバ装置100へ送信される。このツアー100の閲覧の行動履歴情報1dが考慮されることによって、ユーザ5が検索アプリケーションを利用した場合、ユーザ5へのお勧め順92は、
「1位: ツアー100、 2位: スポット18、 3位: スポット1、・・・」
に変化する。このお勧め順では、1位が「ツアー100」になり、2位は「スポット18」であり、前回は1位であったスポット1が3位に変更されている。本願発明では、ユーザが9月5日より以前に閲覧したスポット18について、記憶率Pが考慮されたことにより、比較的直前で閲覧されたスポット1よりも上位の2位にランキングされたと考え得る。
その後、ユーザ5がグルメ250の閲覧アプリケーションを利用すると、端末200からグルメ250の閲覧に関する行動履歴情報1dがサーバ装置100へ送信される。このグルメ250の閲覧の行動履歴情報1dが考慮されることによって、ユーザ5の検索アプリケーションの利用により提示されるお勧め順93は、
「1位: グルメ250、 2位: ツアー100、 3位: スポット39、・・・」
となる。このお勧め順では、1位が「グルメ250」であり、2位が「ツアー100」であり、3位が「スポット39」である。
グルメ250の閲覧後の9月12日に、ユーザ5がグルメ250を訪問した場合、端末200からグルメ250の訪問に関する行動履歴情報1dがサーバ装置100へ送信される。グルメ250の訪問の行動履歴情報1dの検出により、ユーザ5又は端末200を特定する送信元識別情報に対して、グルメ250の閲覧アプリケーションが分類されるジャンル「グルメ」の興味回復率PRは0に設定される。PR=0の場合、「グルメ」に関する行動ベクトル3aの各要素の値が0になるため、お勧め順から除外される。従って、ユーザ5がグルメ250の訪問後の、ユーザ5の検索アプリケーションの利用により提示されるお勧め順94は、
「1位: ツアー100、 2位: スポット39、 3位: スポット18、・・・」
となる。このお勧め順には、「グルメ」のスポットは含まれない。
9月19日に、時間経過により、興味回復率PRが0から0.5に変化したとする。PR=0.5のときに、ユーザ5が検索アプリケーションを利用すると、ユーザ5へのお勧め順95は、
「1位: ツアー100、 2位: グルメ250、 3位: スポット39、・・・」
となる。ジャンル「グルメ」に分類されるグルメ250が2位に示されている。興味回復率PRに応じて、ユーザ5の興味の回復に応じたお勧め順で観光スポットの紹介を行える。
次に、図26から図29を参照して、本実施例におけるお勧め順と行動履歴DB141内のログ情報との関係を説明する。
図26は、本実施例におけるお勧め順の変化例を示す図である。図26において、端末200に表示されたお勧め画面G26は、検索アプリケーションにより提供される画面例である。お勧め画面G26は、お勧め順に観光スポットの名称を一覧表示する表示領域26aと、検索用のキーワードを入力する入力領域26bと、操作領域26c等とを有する。表示領域26aでは、ユーザ5により選択可能な表示領域であり、観光スポットの名称は、アプリIDとリンクされ、選択に応じて閲覧アプリケーションの実行が可能である。
図26(A)から図26(C)では、日数経過に応じたお勧め画面G26のお勧め順の変化を示している。この例では、ユーザ5は、「お座敷富山鮨」を訪問するものとする。図26(A)は、訪問前(PR=1.0)の、図25のお勧め順93に相当するお勧め画面G26の表示例を示す。図26(B)は、訪問直後(PR=0)の、図25のお勧め順94に相当するお勧め画面G26の表示例を示す。図26(C)は、訪問後(PR=0.5)の、図25のお勧め順95に相当するお勧め画面G26の表示例を示している。図26(A)から図26(C)において、ユーザ5は、入力領域26bに同じキーワード「鮨、体験、城」を入力した場合で説明する。
図26(A)の9月5日のお勧め画面G26では、ユーザ5によるキーワードの入力により、お勧め順93に従って観光スポットの名称が、
「お座敷富山鮨」 (グルメ250、グルメ)
「黒部市生地のまち歩き」 (ツアー100、ツアー)
「富山城址公園」 (スポット39、観光施設)
「能作」 (スポット18、観光施設)
「二上山」 (ツアー88、 ツアー)
のように表示される。ジャンル「グルメ」に対しては、興味回復率PRは1に設定されているため、お勧め順に影響を与えない。上記では、( )内に、観光スポットの名称と関連付けられるアプリIDと、アプリIDで特定される閲覧アプリケーションが属するジャンルを示している。以下の説明でも同様である。ユーザ5は、このようなお勧め画面G26に表示された観光スポットの名称をクリックすると、対応する閲覧アプリケーションが実行される。
その後、ユーザ5が「お座敷富山鮨」を訪問することで、ジャンル「グルメ」の興味回復率PRは0に設定される。お勧め画面G26は、図26(B)のように、お勧め順94に従って観光スポットの名称が、
「黒部市生地のまち歩き」 (ツアー100、ツアー)
「富山城址公園」 (スポット39、観光施設)
「能作」 (スポット18、観光施設)
「二上山」 (ツアー88、 ツアー)
のように表示されるが、訪問直後の「お座敷富山鮨」は表示されない。
「お座敷富山鮨」の訪問後の日数の経過により、ジャンル「グルメ」の興味回復率PRが0.5になると、お勧め画面G26は、図26(B)のように、お勧め順95に従って観光スポットの名称が、
「黒部市生地のまち歩き」 (ツアー100、ツアー)
「お座敷富山鮨」 (グルメ250、グルメ)
「富山城址公園」 (スポット39、観光施設)
「能作」 (スポット18、観光施設)
「二上山」 (ツアー88、 ツアー)
のように表示される。ジャンル「グルメ」の興味回復率PRが0.5の値により、図26(A)では、1番目にランクされていた「お座敷富山鮨」が2番目にランクされている。更なる時間の経過によりジャンル「グルメ」の興味回復率PRが1に戻ると、図26(A)のようなお勧め順となり得る。
図26では、ジャンル「グルメ」の興味回復率PRに着目したお勧め順の変化例を示している。そのため、他のジャンルの興味回復率PRの影響、記憶率Pの影響、ユーザ5の閲覧アプリケーションの実行による行動履歴情報1dの影響等を考慮した場合には、ユーザ5の興味により精度良くお勧め順が定まる。
図27〜図29は、行動履歴DB141における端末200の行動履歴情報1dの蓄積状態例を示す。端末200の送信元識別情報は「device1」であるとする。
図27は、図26(A)における行動履歴DBのデータ例を示す図である。図27の行動履歴DB141を参照すると、送信元識別情報「device1」に関して、時系列には、ログ情報LG01〜LG07が記憶されている。
行動種別がサービス利用履歴では、
・ログ情報LG01:9月1日に、ツアー88で特定される閲覧アプリケーションが利用され、
・ログ情報LG02:9月1日に、スポット18で特定される閲覧アプリケーションが利用され、
・ログ情報LG03:9月5日に、スポット39で特定される閲覧アプリケーションが利用され、
・ログ情報LG04:9月7日に、ツアー100で特定される閲覧アプリケーションが利用され、
・ログ情報LG05:9月10日に、グルメ250で特定される閲覧アプリケーションが利用
されたことが記録されている。
更に、行動種別が訪問履歴では、
・ログ情報LG06:9月10日に、位置情報1(gps1)の場所に訪れ、
・ログ情報LG07:9月10日に、位置情報2(gps2)の場所に訪れた
ことが記録されている。この時点では、ジャンルに関する観光スポット等の場所のログ情報は記録されておらず、位置情報のみが記録されている。従って、ユーザ5へのお勧め順の表示制御は行われない。
図28は、図26(B)における行動履歴DBのデータ例を示す図である。図28の行動履歴DB141を参照すると、送信元識別情報「device1」に関して、時系列には、ログ情報LG01〜LG07に加えてログ情報LG08が記憶されている。ログ情報LG01〜LG07は、図27と同様であるため説明を省略する。
行動種別が訪問履歴において、ログ情報LG06及びLG07に加えて、
・ログ情報LG08:9月12日に、お座敷とやま鮨(グルメ250)を訪問
したことが記録されている。
お座敷とやま鮨(グルメ250)はジャンルが「グルメ」の"お座敷とやま鮨"の閲覧アプリケーションで紹介されている。サービス利用履歴のログ情報を参照すると、ログ情報LG05でこのアプリケーションが訪問前に利用されていたことが分かる。ユーザ5は、閲覧アプリケーションを利用し、"お座敷とやま鮨"に興味を持ち、実際に訪問したことで興味を達成したものと考えられる。
本実施例では、ジャンル「グルメ」に分類される閲覧アプリケーションに対して、興味回復率PRが0に設定される。そのため、図26(B)に示すように、訪問直後から所定期間の間は、図26(A)に示すお勧めの1番目となる"お座敷とやま鮨"は、表示領域26aには表示されない。
時間経過によりジャンル「グルメ」の興味回復率PRの値が増え始め、PR=0.5になり、"お座敷とやま鮨"がお勧め順の上位にランク付けされると、"お座敷とやま鮨"がお勧めの表示領域26aに出現するようになる。
図29は、図26(C)における行動履歴DBのデータ例を示す図である。図29の行動履歴DB141を参照すると、送信元識別情報「device1」に関して、時系列には、ログ情報LG01〜LG08が記憶されている。ログ情報LG01〜LG08は、図28と同様であるため説明を省略する。
即ち、送信元識別情報「device1」に対してログ情報に変化がなかったとしても、図26(C)では、時間経過により興味回復率PRの値が0ではなくなる。興味回復率PRの値が大きくなることで、ジャンル「グルメ」のお勧め順への表示抑制が解除され、興味回復率PRの値によりランクが調整されてお勧め画面G26の表示領域26aに表示され始める。
図26(A)では、"お座敷とやま鮨"は1番目であったが、図26(C)では、興味回復率PRの値によりランクが調整され2番目に表示されている。ジャンル「グルメ」の興味回復率PRの値が1に到達すると、図26(A)のようにお勧め順が表示される。
上述した本実施例では、履歴管理部210と情報提供部220とを端末200に実装することで、サーバ装置100の処理負担を各端末200へ分散させることができる。更に、複数のアプリケーション175を、アプリ制御部274と共にまとめて端末200にインストールしてもよい。
一方、上述した本実施例のように、履歴管理部210と情報提供部220とを端末200に実装する構成としているが、サーバ装置100に実装し、端末200ごとに情報の配信を制御するようにしてもよい。この場合、端末200は、サーバ装置100にブラウザ等からアクセスするのみでよく、記憶部230の資源を消費することなく本実施例による適切な情報提供を受けることができる。
また、1つのアプリケーションが1つのサービスを行うものとしたが、1つのアプリケーションが複数のサービスをユーザ5の選択によりインタラクティブで行う場合等、関心推定結果9に基づき提供するサービスを制限する制御を行ってもよい。
更に、上述した本実施例では、検索する場合の適用例で説明したが、端末200に表示する広告の選択に適用してもよい。本実施例により、訪問前には観光スポットの画像、紹介文等を広告として表示し、訪問直後には表示させず、ユーザ5が次に興味を持っているであろう観光スポットについて表示させることができる。
上述より、本実施例によれば、ある地域に関する様々な観光スポットについて複数の情報を提供する実施形態において、ある観光スポットにユーザ5が訪問した後、当該スポットに対する興味が一度なくなったとみなし、当該観光スポットの情報の配信や表示を抑制する。つまり、たとえ、ユーザ5が指定したキーワードにより訪問した観光スポットの情報(アプリケーション175)が検索されたとしても、当該観光スポットの情報は表示されない。
一方で、時間経過を考慮して興味が回復する期間を推定し、興味が回復したタイミングで、再度、ユーザ5の端末200に、観光スポットの情報を検索結果又は広告として配信又は表示させる。
更に、本実施例では、発明者等が考案した興味回復率RP(図9)を得る関数のパラメータα(図11)を、ジャンルごとにを定めることで、興味の回復スピードが異なるジャンルに対応することができる。
上述した実施例における関心推定部153は、制御部の一例であり、アプリ制御部274は、表示制御部の一例である。興味回復関数は、人の興味の回復率を表す関数の一例である。行動履歴情報1dは、履歴情報の一例である。関心推定結果9は、複数のスポットに関する情報の一例であり、関心推定要求は、複数のスポットに関する情報の要求の一例である。第1ベクトル生成部155aによって生成された行動ベクトル3aは、第1ベクトルの一例である。第2ベクトル生成部155bによって生成された行動ベクトル3aは、第2ベクトルの一例である。
本発明の実施形態は詳細に説明されているが、本発明の精神及び範囲から外れることなく、様々な変更、置換及び修正をこれに加えることが可能であることを理解されたい。
以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
(付記1)
ユーザが所持する端末装置から、複数のスポットに関する情報の要求を受信し、
訪問からの時間の経過に伴う人の興味の回復率を表す関数に基づく前記要求の受信時点での前記ユーザの興味の回復率を用いて、前記複数のスポットのうちの訪問済みのスポットの情報提供を制御する
処理をコンピュータが行う情報提供方法。
(付記2)
前記訪問済みのスポットについて、前記回復率に基づき、前記訪問済みのスポットの情報提供を停止させる、または、前記複数のスポットのなかで前記訪問済みのスポットの情報の表示順位を下げる
ことを特徴とする付記1記載の情報提供方法。
(付記3)
前記関数は、前記時間の経過に対する前記回復率のスピードに関するパラメータを含み、
前記パラメータは、前記複数のスポットのジャンルに応じて決定される
ことを特徴とする付記1または2に記載の情報提供方法。
(付記4)
前記端末装置が、前記複数のスポットのいずれかに対応して仮想的に設定されたジオフェンスへの進入が検出された場合、前記ジオフェンスに対応するスポットを前記訪問済みスポットとして、特定する
ことを特徴とする付記1乃至3のいずれかに記載の情報提供方法。
(付記5)
前記関数は、前記訪問からの時間の経過に伴う前記興味の回復率を示した曲線である
ことを特徴とする付記1ないし5のいずれかに記載の情報提供方法。
(付記6)
前記曲線は、対数で表され、
前記パラメータは、前記曲線を表す対数の底である
ことを特徴とする付記3記載の情報提供方法。
(付記7)
前記関数は、エビングハウスの忘却曲線の逆数である
ことを特徴とする付記1ないし6のいずれかに記載の情報提供方法。
(付記8)
前記コンピュータは、
前記端末装置からスポットの情報の利用を示す履歴情報を受信して、記憶部に記憶し、
前記記憶部に記憶された複数の前記履歴情報に基づいて、ジャンルごとに前記スポットの情報を利用した時間の間隔の平均値を算出し、前記関数において、得られた平均値のときに前記回復率が1となる前記パラメータを求めて、前記記憶部に記憶する
処理を行うことを特徴とする付記5記載の情報提供方法。
(付記9)
前記コンピュータは、
前記端末装置から、スポットへの訪問を示す履歴情報を更に受信して前記記憶部に記憶し、
前記記憶部に記憶されたスポットの情報の利用を示す履歴情報に基づいて、該利用からの時間の経過による現在の記憶率を忘却曲線に従って算出し、算出した該記憶率該スポットの情報に含まれる単語の有無を表すベクトルを重み付けして第1ベクトルを生成し、
前記記憶部に記憶されたスポットへの訪問を示す履歴情報に基づいて、該スポットに基づくジャンルの前記パラメータを用いた前記関数により前記回復率を算出し、算出した該回復率で該スポットの情報に含まれる単語の有無を表すベクトルを重み付けして第2ベクトルを生成し、
前記複数のスポットの情報ごとに、生成した前記第1ベクトルと前記第2ベクトルとを合算することで、前記ユーザの該スポットに対する記憶の程度及び興味の回復の程度に基づく関心の高さを表す関心ベクトルを生成し、
前記複数のスポットの情報それぞれの前記関心ベクトルを用いて関心ベクトル行列を作成し、作成した該関心ベクトル行列と、前記複数のスポットの情報のそれぞれに含まれる単語の特徴度を示した単語文書行列との内積を算出し、前記ユーザの該複数のスポットそれぞれに対する関心度を取得する
処理を行うことを特徴とする付記6記載の情報提供方法。
(付記10)
ユーザが所持する端末装置から、複数のスポットに関する情報の要求を受信し、
訪問からの時間の経過に伴う人の興味の回復率を表す関数に基づく前記要求の受信時点での前記ユーザの興味の回復率を用いて、前記複数のスポットのうちの訪問済みのスポットの情報提供を制御する
処理をコンピュータに行わせる情報提供プログラム。
(付記11)
ユーザが所持する端末装置から、複数のスポットに関する情報の要求を受信する受信部と、
訪問からの時間の経過に伴う人の興味の回復率を表す関数に基づく前記要求の受信時点での前記ユーザの興味の回復率を用いて、前記複数のスポットのうちの訪問済みのスポットの情報提供を制御する制御部と、
を有する情報提供装置。
(付記12)
自装置を所持するユーザの複数のスポットに関する情報の要求を情報提供装置に送信し、該情報提供装置から該情報を取得する取得部と、
前記情報提供装置から取得した、訪問からの時間の経過に伴う前記ユーザの興味の回復率に基づく前記情報に従って、前記複数のスポットのうち該ユーザが訪問したスポットの情報表示を制御する表示制御部と、
を有する端末装置。