(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-09-22
(45)【発行日】2022-10-03
(54)【発明の名称】情報処理装置、情報処理方法および情報処理プログラム
(51)【国際特許分類】
G06F 16/9535 20190101AFI20220926BHJP
【FI】
G06F16/9535
(21)【出願番号】P 2020022874
(22)【出願日】2020-02-13
【審査請求日】2021-09-16
(73)【特許権者】
【識別番号】319013263
【氏名又は名称】ヤフー株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】山本 貴之
(72)【発明者】
【氏名】清水 徹
【審査官】齊藤 貴孝
(56)【参考文献】
【文献】特開2008-015694(JP,A)
【文献】特開2011-154591(JP,A)
【文献】国際公開第2016/194996(WO,A1)
【文献】特開2019-164402(JP,A)
【文献】特開2017-091437(JP,A)
【文献】特開2005-346609(JP,A)
【文献】特開2005-044248(JP,A)
【文献】特開2003-018584(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
(57)【特許請求の範囲】
【請求項1】
各利用者のサービス利用の遷移を示すシーケンスデータであって、所定のターゲットサービスの利用を含むシーケンスデータを取得する取得部と、
前記シーケンスデータから、前記利用者が前記ターゲットサービスを利用してから当該ターゲットサービスを再度利用するまでの期間を示す離脱期間情報を出力するようにモデルに学習させる学習部と
を有することを特徴とする情報処理装置。
【請求項2】
前記学習部は、前記モデルとして、LSTMの構成を有するモデルに学習させる
ことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記取得部は、前記シーケンスデータとして、前記利用者が利用した複数のサービスと、各サービスを利用した順序とを示すデータを取得し、
前記学習部は、前記利用者が利用した各サービスを示す情報を、各サービスを利用した順序で前記モデルに入力した際に、前記離脱期間情報を出力するように前記モデルに学習させる
ことを特徴とする請求項1又は2に記載の情報処理装置。
【請求項4】
前記学習部は、前記利用者が利用したサービスを示す情報を入力した際に、当該利用者が次に利用するサービスを示す情報を出力するように前記モデルに学習させ、その後、各サービスを利用した順序で当該モデルに入力した際に、前記離脱期間情報を出力するように前記モデルに学習させる
ことを特徴とする請求項3に記載の情報処理装置。
【請求項5】
前記学習部は、前記離脱期間情報として、前記利用者が前記ターゲットサービスを利用してから当該ターゲットサービスを再度利用するまでに利用した他のサービスの数を出力するように、前記モデルに学習させる
ことを特徴とする請求項1~4のうちいずれか1つに記載の情報処理装置。
【請求項6】
前記学習部は、前記離脱期間情報として、前記利用者が前記ターゲットサービスを利用してから当該ターゲットサービスを再度利用するまでに経過した時間を出力するように、前記モデルに学習させる
ことを特徴とする請求項1~4のうちいずれか1つに記載の情報処理装置。
【請求項7】
前記取得部は、前記所定のターゲットサービスの利用を含み、かつ、他のサービスの利用態様が所定の条件を満たすシーケンスデータを取得する
ことを特徴とする請求項1~6のうちいずれか1つに記載の情報処理装置。
【請求項8】
前記学習部により学習が行われたモデルを用いて、各シーケンスデータに対応する前記離脱期間情報を生成する生成部と、
前記離脱期間情報が示す期間が所定の条件を満たすシーケンスデータを出力する出力部と
をさらに有することを特徴とする請求項1~7のうちいずれか1つに記載の情報処理装置。
【請求項9】
前記出力部は、前記離脱期間情報が示す期間が長い方から順に、前記シーケンスデータを出力する
ことを特徴とする請求項8に記載の情報処理装置。
【請求項10】
前記出力部は、前記離脱期間情報が示す期間が長い方から順に、所定の数の前記シーケンスデータを出力する
ことを特徴とする請求項9に記載の情報処理装置。
【請求項11】
前記取得部は、前記シーケンスデータとして、1つのアプリの各機能をサービスとしたシーケンスデータを取得する
ことを特徴とする請求項1~10のうちいずれか1つに記載の情報処理装置。
【請求項12】
情報処理装置が実行する情報処理方法であって、
各利用者のサービス利用の遷移を示すシーケンスデータであって、所定のターゲットサービスの利用を含むシーケンスデータを取得する取得工程と、
前記シーケンスデータから、前記利用者が前記ターゲットサービスを利用してから当該ターゲットサービスを再度利用するまでの期間を示す離脱期間情報を出力するようにモデルに学習させる学習工程と
を含むことを特徴とする情報処理方法。
【請求項13】
各利用者のサービス利用の遷移を示すシーケンスデータであって、所定のターゲットサービスの利用を含むシーケンスデータを取得する取得手順と、
前記シーケンスデータから、前記利用者が前記ターゲットサービスを利用してから当該ターゲットサービスを再度利用するまでの期間を示す離脱期間情報を出力するようにモデルに学習させる学習手順と
をコンピュータに実行させるための情報処理プログラム。
【請求項14】
各利用者のサービス利用の遷移を示すシーケンスデータであって、所定のターゲットサービスの利用を含むシーケンスデータを取得する取得部と、
前記シーケンスデータから、前記ターゲットサービスに対する前記利用者の印象の指標となる指標情報を出力するようにモデルに学習させる学習部と
を有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法および情報処理プログラムに関する。
【背景技術】
【0002】
オンラインサービスに対する利用者の離脱の実態を把握する技術が開示されている。例えば、利用者が利用したオンラインサービスのコンテンツ遷移を検知し、そしてコンテンツ毎に他のコンテンツへの遷移の度合いから、当該状態に滞在した確率である遷移固有ベクトルを算出し、各コンテンツから何れの他のコンテンツへも遷移しない度合いを離脱確率としてコンテンツ毎に算出し、コンテンツ毎の遷移固有ベクトルにコンテンツ毎の離脱確率を乗算した値を離脱要因値として算出する技術が知られている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記の従来技術では、利用者の離脱態様を詳細に推定しているとは言えない場合がある。例えば、上記の従来技術では、コンテンツごとの離脱確率に基づいて、利用者の離脱態様を推定しているに過ぎない。このため、利用者がどのような意図(コンテキスト)で離脱しているかを適切に推定しているとは言えない。
【0005】
本願は、上記に鑑みてなされたものであって、より効果的に離脱原因を探り当てることを目的とする。
【課題を解決するための手段】
【0006】
本願に係る情報処理装置は、各利用者のサービス利用の遷移を示すシーケンスデータであって、所定のターゲットサービスの利用を含むシーケンスデータを取得する取得部と、前記シーケンスデータから、前記利用者が前記ターゲットサービスを利用してから当該ターゲットサービスを再度利用するまでの期間を示す離脱期間情報を出力するようにモデルに学習させる学習部とを備えることを特徴とする。
【発明の効果】
【0007】
実施形態の一態様によれば、より効果的に離脱原因を探り当てることができる。
【図面の簡単な説明】
【0008】
【
図1】
図1は、実施形態に係る情報処理方法の概要を示す説明図である。
【
図2A】
図2Aは、利用目的予測モデルの概要を示す説明図である。
【
図2B】
図2Bは、離脱期間予測モデルの概要を示す説明図である。
【
図2C】
図2Cは、1つのアプリの各機能への遷移シーケンスを示す説明図である。
【
図3】
図3は、実施形態に係る情報処理システムの構成例を示す図である。
【
図4】
図4は、実施形態に係る情報処理装置の構成例を示す図である。
【
図5】
図5は、利用者データベースの一例を示す図である。
【
図6】
図6は、シーケンスデータベースの一例を示す図である。
【
図7】
図7は、離脱期間データベースの一例を示す図である。
【
図8】
図8は、実施形態に係る処理手順を示すフローチャートである。
【
図9】
図9は、ハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【0009】
以下に、本願に係る情報処理装置、情報処理方法、および情報処理プログラムを実施するための形態(以下、「実施形態」と記載する)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法、および情報処理プログラムが限定されるものではない。また、以下の実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【0010】
〔1.情報処理方法の概要〕
まず、
図1を参照し、実施形態に係る情報処理装置が行う情報処理方法の概要について説明する。
図1は、実施形態に係る情報処理方法の概要を示す説明図である。なお、
図1では、ターゲットサービスの離脱原因(利用者がそのサービスを利用しなくなった理由)を機械学習で推定する場合を例に挙げて説明する。
【0011】
図1に示すように、情報処理システム1は、端末装置10と情報処理装置100と情報提供装置200とを含む。端末装置10と情報処理装置100と情報提供装置200とは、それぞれネットワークN(
図3参照)を介して有線又は無線で互いに通信可能に接続される。
【0012】
端末装置10は、利用者Uにより利用されるスマートフォンやタブレット等のスマートデバイスであり、4G(Generation)やLTE(Long Term Evolution)等の無線通信網を介して任意のサーバ装置と通信を行うことができる情報処理装置である。また、端末装置10は、液晶ディスプレイ等の画面であって、タッチパネルの機能を有する画面を有し、利用者から指やスタイラス等によりタップ操作、スライド操作、スクロール操作等、コンテンツ等の表示データに対する各種の操作を受付ける。なお、画面のうち、コンテンツが表示されている領域上で行われた操作を、コンテンツに対する操作としてもよい。また、端末装置10は、スマートデバイスのみならず、デスクトップPC(Personal Computer)やノートPC等の情報処理装置であってもよい。
【0013】
情報提供装置200は、各利用者Uの端末装置10に対して、各種サービスを提供する情報処理装置であり、サーバ装置やクラウドシステム等により実現される。情報提供装置200は、複数台であってもよい。また、情報提供装置200は、利用者Uの端末装置10からの検索要求に応じて、インターネットに存在するウェブページ、ウェブサイト、および/または、画像ファイル等のコンテンツを検索する機能を提供する検索サーバ(検索エンジン)であってもよい。例えば、情報提供装置200は、ポータルサイト等を含む検索サイトを提供してもよい。ここで、情報提供装置200は、端末装置10等が情報提供装置200にアクセスした際に、端末装置10等からウェブブラウザを介して、情報提供装置200とウェブブラウザとの間で状態を管理する通信プロトコル、またはそこで用いられるウェブブラウザに保存されたデータであるHTTP Cookie等を取得してもよい。また、情報提供装置200は、中継サーバ(Proxy)やリダイレクタ(Redirector)等であってもよい。
【0014】
情報処理装置100は、各利用者Uの離脱原因を分析する情報処理装置であり、サーバ装置やクラウドシステム等により実現される。なお、情報処理装置100は、情報提供装置200の1つであってもよい。すなわち、情報処理装置100も、サービスを提供する情報処理装置であってもよい。
【0015】
例えば、利用者Uは、端末装置10を用いて、各情報提供装置200により提供される各種サービスを利用する(ステップS1)。
【0016】
各情報提供装置200は、各利用者Uの端末装置10からのアクセスを集計して、各利用者Uのアクセスログを生成する(ステップS2)。
【0017】
情報処理装置100は、各情報提供装置200から、各利用者Uのアクセスログを取得する(ステップS3)。
【0018】
このとき、情報処理装置100は、アクセスログの利用に予め同意した利用者Uのアクセスログのみを取得するようにしてもよい。例えば、情報処理装置100は、予め登録された利用者Uのアクセスログのみを取得するようにしてもよい。
【0019】
なお、情報処理装置100は、自身が各利用者Uの端末装置10に対してサービスを提供している場合には、自身が提供するサービスに関する各利用者Uのアクセスログを生成することができる。
【0020】
情報処理装置100は、各利用者Uのアクセスログから、同一セッションでのサービスの利用に関するサービス利用遷移シーケンスデータを作成する(ステップS4)。
【0021】
なお、実際には、所定の期間内における利用者Uの一連のアクセスを、同一セッションでのサービスの利用としてもよい。また、所定の期間内に行われたアクセス以外にも、例えばリンクを辿った場合なども同一セッションでのサービスの利用としてもよい。
【0022】
また、同一ブラウザや同一アプリケーションからのアクセス以外にも、異なるブラウザや異なるアプリケーションからの同一時間帯のアクセスを、同一セッションでのサービスの利用としてもよい。すなわち、同一ブラウザ等から連続してアクセスした場合以外にも、所定の期間内に連続して行われたアクセスを、同一セッションでのサービスの利用としてもよい。
【0023】
また、サービスは、任意のサービスであってもよい。例えば、サービスは、ウェブコンテンツであってもよいし、アプリケーション(以下、アプリ)であってもよい。また、サービスは、API(Application Programming Interface)を介して端末装置10に提供されるプログラムの機能やデータ等であってもよい。また、サービスの単位は、ウェブコンテンツごと、アプリごと、ドメインごと、サブドメインごと等でもよい。また、情報処理装置100は、分析したい利用者の行動を任意の粒度でサービスとみなし、サービスごとの遷移を示すサービス利用遷移シーケンスデータを作成してもよい。
【0024】
ここで、情報処理装置100は、例えば利用者Uがアクセスしたドメインの順番、利用者Uがアクセスしたアプリの順番、あるいは利用者Uがアクセスしたウェブコンテンツの順番等、任意の粒度でアクセスログをまとめ、利用者Uが利用したサービスの内容やその順序を示すサービス利用遷移シーケンスデータを作成する。
【0025】
図1に示す例では、このサービス利用遷移シーケンスデータは、「第1検索サイト」、「ローカルまとめサイト」、「第1マップWEB」、「第1マップアプリ」、「第1検索サイト」、「トラベルサイト」および「宿泊予約サイト」を含み、これらの順にサービスの利用が遷移していることを示す。
【0026】
「第1検索サイト」は、Webブラウザを介して提供される検索サービス(検索エンジン)を示す。また、「ローカルまとめサイト」は、利用者UがWebブラウザを用いてアクセスした地域発の情報や観光情報等のまとめサイトを示す。また、「第1マップWEB」は、Webブラウザを介して提供されるマップサービスを示す。また、「第1マップアプリ」は、マップ専用アプリを介して提供されるマップサービスを示す。また、「トラベルサイト」は、利用者UがWebブラウザを用いてアクセスした旅行関連サイトを示す。また、「宿泊予約サイト」は、利用者UがWebブラウザを用いてアクセスした宿泊施設等の予約サイトを示す。
【0027】
なお、このようなサービス利用遷移シーケンスデータの生成においては、各サービスを跨いで利用者Uが共通して用いる利用者IDを利用してもよい。例えば、各サービスにおいて利用者Uが個別に用いる利用者IDを共通する利用者IDへと変換するテーブルを用いてもよい。また、この利用者IDは、例えば端末装置10の識別情報であってもよい。
【0028】
情報処理装置100は、モデルに、サービス利用遷移シーケンスデータを入力して、同一セッションにおいて利用者Uがサービスを利用した意図(利用目的)を学習させ、その学習結果に基づいて、離脱期間(Absence Time)を予測するモデルを作成する(ステップS5)。なお、実際には、利用目的を学習させず、最初から離脱期間を予測するモデルの学習を行ってもよい。
【0029】
このとき、情報処理装置100は、離脱期間を正解データとして、ディープラーニング(深層学習)によりモデルに学習させる。例えば、シーケンスデータは、利用者Uが利用したサービスと、利用者Uが利用した順序を示している。そこで、情報処理装置100は、サービスと順序とを入力した際に、離脱期間を出力するようにモデルの学習を行う。そして、情報処理装置100は、離脱期間を予測するモデルに基づいて、予測された離脱期間を生成して出力する。
【0030】
情報処理装置100は、事前に学習データのうち一定の割合のデータをテストデータとして取り分けておき、モデルにそのテストデータの全てのサービス利用遷移シーケンスデータを入力して、予測された離脱期間が長い順に並べ替え、ターゲットサービスの離脱原因を推定する(ステップS6)。なお、テストデータだけでなく、学習データも入力して離脱期間を予測してもよい。
【0031】
ここでは、情報処理装置100は、ターゲットサービスの利用終了時から次回のターゲットサービスの利用開始時までのインターバル(間隔)を離脱期間と定義する。なお、離脱期間は、時間に限らず、例えば直近のターゲットサービスの利用時から次回のターゲットサービスの利用時までに利用者Uが利用したサービスの数(コンテンツ数)などであってもよい。すなわち、離脱期間は、利用者Uがターゲットサービスを利用してから当該ターゲットサービスを再度利用するまでの期間を示す離脱期間情報である。
【0032】
また、セッションを考慮して、利用シーケンスを、直近のターゲットサービスの利用時から次回のセッションでのターゲットサービスの利用時までとしてもよい。すなわち、直近のターゲットサービスの利用時から次回のセッションでのターゲットサービスの利用時までを1サイクルとしたサービス利用遷移シーケンスデータを作成するようにしてもよい。
【0033】
なお、利用者Uがそのサービスを次に利用しない限り、離脱期間は増大し続ける。仮に、利用者Uがそのサービスを二度と利用しない場合には、離脱期間は無限大に近づいていく。この場合、離脱期間に上限値を定めてもよい。例えば、情報処理装置100は、離脱期間が所定の閾値に達した場合には、離脱期間を当該閾値に固定し、利用者Uがそのサービスから完全に離脱した(利用しなくなった)と判定するようにしてもよい。また、利用者Uがそのサービスを次に利用していない状態か、それ以外かの2値分類としてもよい。
【0034】
また、サービスの不具合やメンテナンス等、利用者U側の事情によらず、物理的にそのサービスを利用できない期間がある場合には、その期間を離脱期間から除外するようにしてもよい。但し、このような不具合やメンテナンス等の多発は、利用者Uが不満を抱いて当該サービスを利用しなくなる離脱原因にもなり得るため、積極的に離脱期間に含めるようにしてもよい。この場合、例えば、離脱期間の内訳として、利用者U側の要因による離脱期間と、サービス側の要因(不具合やメンテナンス等)による離脱期間とを示すようにしてもよい。
【0035】
また、離脱期間は、利用者Uがそのサービスに満足している/魅力を感じているか否かを示す指標となる。例えば、相対的に/所定の閾値と比較して、離脱期間が短い場合には、利用者Uがそのサービスを積極的に利用しており、利用者Uがそのサービスに満足している/魅力を感じていると推測される。反対に、離脱期間が長い場合には、利用者Uがそのサービスをあまり利用しておらず、利用者Uがそのサービスに不満を抱いている/魅力を感じていないと推測される。すなわち、離脱期間は、ターゲットサービスに対する利用者の印象の指標となる指標情報にもなり得る。
【0036】
したがって、情報処理装置100は、ターゲットサービスの離脱期間が長いサービス利用遷移シーケンスデータの中に、ターゲットサービスの離脱原因が含まれていると判断することができる。そのサービス利用遷移シーケンスデータを調べることで、ターゲットサービスの離脱原因を推定し、サービスを改善することができる。
【0037】
ここで、サービス利用遷移シーケンスデータについて、日常的に利用されるサービスと、盆/正月/ゴールデンウィーク(GW)等の年間の特定の時期に利用されるサービスとでは、シーケンスパターンおよび離脱期間のスパンが異なる。
【0038】
また、同じ地図アプリでも、雨雲レーダのような天気予報確認目的で利用される場合と、連休中の渋滞予測のような交通情報確認目的で利用される場合とでは、シーケンスパターンおよび離脱期間のスパンが異なる。
【0039】
そこで、本実施形態では、先にシーケンス毎の利用目的を特定した上で、次にターゲットサービスの離脱期間を予測するモデルを作成する。
【0040】
〔1-1.利用目的予測モデル〕
図2Aを参照し、利用目的予測モデルについて説明する。
図2Aは、利用目的予測モデルの概要を示す説明図である。
【0041】
本実施形態では、情報処理装置100は、モデルに、サービス利用遷移シーケンスデータを入力し、当該シーケンスの利用目的について学習させる。
【0042】
モデルは、任意の種別のモデルが採用可能である。例えば、情報処理装置100は、SVM(Support Vector Machine)やDNN(Deep Neural Network)をモデルとして採用してもよい。ここで、DNNは、CNN(Convolutional Neural Network)やRNN(Recurrent Neural Network)であってもよい。また、RNNは、LSTM(Long short-term memory)等であってもよい。すなわち、モデルは、任意の形式のモデルが採用可能である。また、モデルは、例えば、CNNとRNNとを組み合わせたモデル等、複数のモデルを組み合わせることで実現されるモデルであってもよい。
【0043】
また、情報処理装置100は、分析したい利用者の行動を任意の粒度でサービスとみなし、サービスごとの遷移を示すサービス利用遷移シーケンスデータを作成し、作成したサービス利用遷移シーケンスデータが示す特徴(サービス利用の遷移態様が有する特徴)から、モデルの生成を行ってもよい。
【0044】
本実施形態では、モデルの一例として、LSTMを使用する場合について説明する。LSTMは、時系列データ(sequential data)に対するモデルである。
【0045】
まず、情報処理装置100は、LSTMに、サービス利用遷移シーケンスデータを入力し、サービス利用遷移シーケンスデータに含まれる各サービスについて、そのサービスの次に利用されるサービスを予測するようにモデルに学習させる。すなわち、そのサービスの次に利用される確率が高いサービスを求めるようにモデルに学習させる。
【0046】
ここで、情報処理装置100は、サービス「第1検索サイト」をLSTMに入力すると、そのサービスの次に利用されるサービスとして、サービス「ローカルまとめサイト」を予測するようにモデルに学習させる。
【0047】
実際に、入力されたサービス利用遷移シーケンスデータにおいて、サービス「第1検索サイト」の次にサービス「ローカルまとめサイト」が利用されているため、この予測は正しいと推定される。
【0048】
情報処理装置100は、同様の手順で、サービス「ローカルまとめサイト」以降のサービスについても、そのサービスの次に利用されるサービスを予測するようにモデルに学習させる。
【0049】
このように、
図2Aに示す例では、「第1検索サイト」、「ローカルまとめサイト」、「第1マップweb」...というように、「各サービスを示す値」を、各サービスが利用された順に入力する。この際、情報処理装置100は、入力されたサービスの次のサービスを予測するように、モデルのプレトレーニング(事前学習)を行う。例えば、モデルは、「第1検索サイト」を入力すると「ローカルまとめサイト」を出力するようにプレトレーニングが行われる。なお、実際には、プレトレーニングを行わなくてもよい。
【0050】
このようなモデルは、最終的に、シーケンスデータにおいてターゲットサービスを利用した際の利用者の印象(利用目的、満足しているか否か、若しくはその度合等)を学習することとなる。
【0051】
なお、各サービスに近い利用目的のサービスは、別途、情報処理装置100が各サービスの利用目的を定量化することにより求めてもよい。
【0052】
例えば、情報処理装置100は、ベクトル表現化方式(例えば、Word2Vec)等の学習手法や同様の手法を用いて、モデルにサービス利用遷移シーケンスデータが有する特徴を学習させる。そして、情報処理装置100は、学習済のモデルを用いて、サービス毎のベクトルを生成する。情報処理装置100は、サービス毎のベクトルを可視化して分析することにより、各サービスに近い利用目的のサービスを推定する。
【0053】
また、
図2Aに示すLSTMのモデルの右端最上段には、当該シーケンスの利用目的を示す分散表現(単語埋め込み)が生成される。分散表現は、単語を高次元(200次元ほど)の実数ベクトルで表現する。分散表現では、近い意味の単語を近いベクトルに対応させる。ここでは、分散表現には、当該シーケンスの利用目的が表現されている。
【0054】
〔1-2.離脱期間予測モデル〕
図2Bを参照し、離脱期間予測モデルについて説明する。
図2Bは、離脱期間予測モデルの概要を示す説明図である。なお、利用目的予測モデルを学習させず、最初から離脱期間予測モデルの学習を行ってもよい。
【0055】
情報処理装置100は、モデルに、上記の利用目的予測モデルで学習された全てのサービス利用遷移シーケンスデータを入力する。モデルは、例えばLSTMである。但し、LSTMは一例に過ぎない。
【0056】
これにより、情報処理装置100は、サービス利用遷移シーケンスデータをモデルに入力し、二乗誤差(Squared Error)を算出する。そして、情報処理装置100は、二乗誤差を小さくするようにモデルの学習を行う。
【0057】
なお、二乗誤差とは、実際の値とモデルによる予測値との誤差である。すなわち、実際の離脱期間と、モデルにより予測された離脱期間とのずれを示す。
【0058】
情報処理装置100は、事前に学習データのうち一定の割合のデータをテストデータとして取り分けておき、モデルにそのテストデータの全てのサービス利用遷移シーケンスデータを入力して、予測された離脱期間が長い順に並べ替える。また、入力するデータは学習に用いたものを使用してもよい。例えば、情報処理装置100は、離脱期間が長い方から順に、サービス利用遷移シーケンスデータを出力する。このとき、情報処理装置100は、出力されるサービス利用遷移シーケンスデータの数を所定の数に制限してもよい。また、情報処理装置100は、入力された全てのサービス利用遷移シーケンスデータに対し、予測された離脱期間に基づいて、昇順/降順にソート(並べ替え)したり、重複データをマージ(併合)したりしてもよい。また、情報処理装置100は、離脱期間が長い方から順にサービス利用遷移シーケンスデータを出力したものを、離脱期間が短い方から順にサービス利用遷移シーケンスデータを出力したものと比較してもよい。これにより、離脱期間の長い(離脱確率の高い)遷移シーケンス群、すなわち、離脱原因が含まれる遷移シーケンス群の特徴があぶり出される。その結果、この遷移シーケンス群に離脱原因があると解釈して、サービス改善を実施することができる。
【0059】
このように、
図2Bに示す例では、情報処理装置100は、上記の
図2Aに示す例のようなプレトレーニングを行ったモデルに対し、シーケンスデータの各サービスを順に入力した際に出力される予測値と実際の値との二乗誤差を算出し、二乗誤差が小さくなるように、モデルの再学習を行う。なお、実際には、プレトレーニングを行わなくてもよい。
【0060】
この結果、情報処理装置100は、シーケンスデータから、離脱期間を推定するモデルに学習させることができる。
【0061】
〔1-3.粒度の細かいサービス利用遷移シーケンスの一例〕
ここまで、異なるサイトへの遷移等の粒度の粗いサービス利用遷移シーケンスデータを入力した場合について説明してきたが、1つのアプリの各機能への遷移等の粒度の細かいサービス利用遷移シーケンスデータを入力した場合についても同様に処理することができる。
【0062】
図2Cを参照し、粒度の細かいサービス利用遷移シーケンスデータを入力した場合について説明する。
図2Cは、1つのアプリの各機能への遷移シーケンスを示す説明図である。
【0063】
図2Cに示すように、マップサービス「第1マップ」内の各機能への遷移シーケンスであって、「グルメアイコン」がシーケンス内に含まれるものに限定して、学習されたシーケンスパターンを入力する。
【0064】
図2Cに示す例では、このシーケンスパターンは、マップサービス「第1マップ」について、「第1マップアプリ起動」に始まり、「マップ検索」、「結果画面スクロール」、「グルメアイコン」、「結果画面スクロール」、「グルメ詳細表示」および「電話」の順に遷移していることを示す。
【0065】
このようにすることで、1つのアプリの各機能の利用目的を推定して、各機能の遷移シーケンスの中での離脱原因を見つけ出すことができる。例えば、離脱期間が長くなっているシーケンスパターンに、ある機能の利用が特徴的な場合には、アプリの作り込みが甘いために時代の変化とともにその機能が使い難くなっているか、利用者Uがその機能に対して不満を感じるようになったと推測される。これにより、サービス改善のための課題が明らかになる。
【0066】
本実施形態では、ターゲットサービスの離脱原因をディープラーニング(深層学習)で推定する。これにより、利用者が最も離脱する使い方のシーケンスをモデルが導き出すことができる。
【0067】
〔2.情報処理システムの構成例〕
次に、
図3を用いて、実施形態に係る情報処理装置100が含まれる情報処理システム1の構成について説明する。
図3は、実施形態に係る情報処理システム1の構成例を示す図である。
図3に示すように、実施形態に係る情報処理システム1は、端末装置10と情報処理装置100と情報提供装置200とを含む。これらの各種装置は、ネットワークNを介して、有線又は無線により通信可能に接続される。ネットワークNは、例えば、LAN(Local Area Network)や、インターネット等のWAN(Wide Area Network)である。
【0068】
また、
図3に示す情報処理システム1に含まれる各装置の数は図示したものに限られない。例えば、
図3では、図示の簡略化のため、端末装置10や情報提供装置200をそれぞれ1台のみ示したが、これはあくまでも例示であって限定されるものではなく、2台以上であってもよい。
【0069】
端末装置10は、利用者Uによって使用される情報処理装置である。例えば、端末装置10は、スマートフォンやタブレット端末等のスマートデバイス、フィーチャーフォン、PC(Personal Computer)、PDA(Personal Digital Assistant)、カーナビゲーションシステム、スマートウォッチやヘッドマウントディスプレイ等のウェアラブルデバイス(Wearable Device)、スマートグラス等である。
【0070】
また、かかる端末装置10は、LTE(Long Term Evolution)、4G(4th Generation)、5G(5th Generation:第5世代移動通信システム)等の無線通信網や、Bluetooth(登録商標)、無線LAN(Local Area Network)等の近距離無線通信を介してネットワークNに接続し、情報処理装置100や情報提供装置200と通信することができる。
【0071】
情報処理装置100や情報提供装置200は、例えばPCやサーバ、あるいはメインフレーム又はワークステーション等である。なお、情報処理装置100および情報提供装置200は、クラウドコンピューティングにより実現されてもよい。
【0072】
〔3.情報処理装置の構成例〕
次に、
図4を用いて、実施形態に係る情報処理装置100の構成について説明する。
図4は、実施形態に係る情報処理装置100の構成例を示す図である。
図4に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130とを有する。
【0073】
(通信部110)
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。また、通信部110は、ネットワークN(
図3参照)と有線又は無線で接続される。
【0074】
(記憶部120)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現される。
図4に示すように、記憶部120は、利用者データベース121と、シーケンスデータベース122と、離脱期間データベース123とを有する。
【0075】
(利用者データベース121)
利用者データベース121は、利用者Uに関する各種情報を記憶する。例えば、利用者データベース121は、利用者Uの属性等の種々の情報を記憶する。
図5は、利用者データベース121の一例を示す図である。
図5に示した例では、利用者データベース121は、「利用者ID(Identifier)」、「年齢」、「性別」、「自宅」、「勤務地」、「サービス」、「アクセスログ」といった項目を有する。
【0076】
「利用者ID」は、利用者Uを識別するための識別情報を示す。また、「年齢」は、利用者IDにより識別される利用者Uの年齢を示す。なお、「年齢」は、例えば35歳など、利用者IDにより識別される利用者Uの具体的な年齢であってもよい。また、「性別」は、利用者IDにより識別される利用者Uの性別を示す。
【0077】
また、「自宅」は、利用者IDにより識別される利用者Uの自宅の位置情報を示す。なお、
図5に示す例では、「自宅」は、「LC11」といった抽象的な符号を図示するが、緯度経度情報等であってもよい。また、例えば、「自宅」は、地域名や住所であってもよい。
【0078】
また、「勤務地」は、利用者IDにより識別される利用者Uの勤務地(学生の場合は学校)の位置情報を示す。なお、
図5に示す例では、「勤務地」は、「LC12」といった抽象的な符号を図示するが、緯度経度情報等であってもよい。また、例えば、「勤務地」は、地域名や住所であってもよい。
【0079】
また、「サービス」は、利用者IDにより識別される利用者Uが現在利用しているサービスを示す。なお、「サービス」は、複数であってもよい。すなわち、1人の利用者Uが複数のサービスを同時に利用してもよい。
【0080】
また、「アクセスログ」は、利用者IDにより識別される利用者Uのアクセスログであって、各情報提供装置200から取得した利用者Uのアクセスログを示す。
【0081】
例えば、
図5に示す例において、利用者ID「U1」により識別される利用者Uの年齢は、「20代」であり、性別は、「男性」であることを示す。また、例えば、利用者ID「U1」により識別される利用者Uは、自宅が「LC11」であることを示す。また、例えば、利用者ID「U1」により識別される利用者Uは、勤務地が「LC12」であることを示す。また、例えば、利用者ID「U1」により識別される利用者Uは「サービス#11」を利用しており、そのアクセスログが「ログ#1」に記録されていることを示す。
【0082】
ここで、
図5に示す例では、「U1」、「LC11」、「LC12」、「サービス#11」および「ログ#1」といった抽象的な値を用いて図示するが、「U1」、「LC11」、「LC12」、「サービス#11」および「ログ#1」には、具体的な文字列や数値等の情報が記憶されるものとする。以下、他の情報に関する図においても、抽象的な値を図示する場合がある。
【0083】
なお、利用者データベース121は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、利用者データベース121は、利用者Uの端末装置10に関する各種情報を記憶してもよい。また、利用者データベース121は、利用者Uのデモグラフィック(人口統計学的属性)、サイコグラフィック(心理学的属性)、ジオグラフィック(地理学的属性)、ベヘイビオラル(行動学的属性)等の属性に関する情報を記憶してもよい。例えば、利用者データベース121は、氏名、家族構成、職業、職位、収入、資格、居住形態(戸建、マンション等)、車の有無、通学・通勤時間、通学・通勤経路、定期券区間(駅、路線等)、利用頻度の高い駅(自宅・勤務地の最寄駅以外)、行動履歴(利用頻度の高い位置情報)、習い事(場所、時間帯等)、趣味、興味、ライフスタイル等の情報を記憶してもよい。また、利用者データベース121は、利用者Uが検索エンジン等に入力した検索クエリ(検索キーワード)に関する情報を記憶してもよい。
【0084】
(シーケンスデータベース122)
シーケンスデータベース122は、利用者Uの同一セッションでのサービスの利用に関するアクセスログから作成したサービス利用遷移シーケンスデータに関する各種情報を記憶する。
図6は、シーケンスデータベース122の一例を示す図である。
図6に示した例では、シーケンスデータベース122は、「利用者ID」、「シーケンスID」、「サービス利用遷移シーケンス」といった項目を有する。
【0085】
「利用者ID」は、利用者Uを識別するための識別情報を示す。また、「シーケンスID」は、サービス利用遷移シーケンスデータを識別するための識別情報を示す。また、「サービス利用遷移シーケンス」は、サービス利用遷移シーケンスデータに含まれる各サービスとその利用順序を示す。なお、各サービスを示す情報は、各サービスを識別するための識別情報であってもよい。
【0086】
さらに、「サービス利用遷移シーケンス」は、「サービス」、「利用日時」といった項目を含む。「サービス」は、利用者Uにより利用されたサービスを示す。また、「利用日時」は、利用者Uがそのサービスを利用した日時を示す。なお、「利用日時」は、利用者Uがそのサービスを利用した順番を示す情報(例えば、「1,2,3,・・・」、「A,B,C,・・・」など)であってもよい。
【0087】
例えば、
図6に示す例において、利用者ID「U1」により識別される利用者Uの同一セッションでのサービスの利用に関するアクセスログから、シーケンスID「SQ1」により識別されるサービス利用遷移シーケンスデータが作成されたことを示す。また、シーケンスID「SQ1」により識別されるサービス利用遷移シーケンスデータでは、利用者Uにより利用されたサービスが、「第1検索サイト」、「ローカルまとめサイト」、「第1マップWEB」、「第1マップアプリ」、「第1検索サイト」、「トラベルサイト」および「宿泊予約サイト」の順に遷移していることを示す。
【0088】
なお、シーケンスデータベース122は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、シーケンスデータベース122は、サービス利用遷移シーケンスデータに含まれる各サービスの利用日時に関する情報を記憶してもよい。また、シーケンスデータベース122は、サービス利用遷移シーケンスデータに含まれる各サービスの利用場所に関する情報を記憶してもよい。
【0089】
(離脱期間データベース123)
離脱期間データベース123は、ターゲットサービスの離脱期間(Absence Time)に関する各種情報を記憶する。
図7は、離脱期間データベース123の一例を示す図である。
図7に示した例では、離脱期間データベース123は、「シーケンスID」、「ターゲットサービス」、「離脱期間」といった項目を有する。
【0090】
「シーケンスID」は、サービス利用遷移シーケンスデータを識別するための識別情報を示す。また、「ターゲットサービス」は、サービス利用遷移シーケンスデータに含まれるターゲットサービスを示す。また、「離脱期間」は、ターゲットサービスの離脱期間を示す。
【0091】
例えば、
図7に示す例において、シーケンスID「SQ1」により識別されるサービス利用遷移シーケンスデータにおけるターゲットサービス「第1マップアプリ」の離脱期間は「離脱期間#1」であることを示す。
【0092】
なお、離脱期間データベース123は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、離脱期間データベース123は、ターゲットサービスの離脱原因(利用者がそのサービスを利用しなくなった理由)に関する情報を記憶してもよい。また、離脱期間データベース123は、二乗誤差に関する情報を記憶してもよい。
【0093】
(制御部130)
図4に戻り、説明を続ける。制御部130は、コントローラ(Controller)であり、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等によって、情報処理装置100内部の記憶装置に記憶されている各種プログラム(情報処理プログラムの一例に相当)がRAM等の記憶領域を作業領域として実行されることにより実現される。
図4に示す例では、制御部130は、受付部131と、取得部132と、作成部133と、学習部134と、分析部135と、提供部136とを有する。
【0094】
(受付部131)
受付部131は、通信部110を介して、各利用者Uの端末装置10から、各利用者Uに関する各種情報の登録を受付け、利用者データベース121に記憶する。
【0095】
(取得部132)
取得部132は、通信部110を介して、各情報提供装置200から、各利用者Uのアクセスログを取得する。
【0096】
(作成部133)
作成部133は、取得された各利用者Uのアクセスログから、同一セッションでのサービスの利用に関するサービス利用遷移シーケンスデータを作成する。
【0097】
また、作成部133は、各利用者Uの端末装置10が情報処理装置100により提供されるサービスを利用している場合には、情報処理装置100により提供されるサービスに関するアクセスログを自動的に作成してもよい。
【0098】
また、作成部133は、所定のターゲットサービスの利用を含み、かつ、他のサービスの利用態様が所定の条件を満たすサービス利用遷移シーケンスデータを作成してもよい。例えば、シーズン物(季節的な要因に左右される)サービスが含まれているシーケンスだけを抽出して、学習用のサービス利用遷移シーケンスデータを作成する。
【0099】
なお、作成部133は、取得部132と一体化していてもよい。例えば、取得部132が取得したアクセスログをそのままサービス利用遷移シーケンスデータとして使用してもよい。また、作成部133がサービス利用遷移シーケンスデータを作成することで、サービス利用遷移シーケンスデータを取得したとみなすこともできる。
【0100】
(学習部134)
学習部134は、モデルに、サービス利用遷移シーケンスデータを入力し、同一セッションにおいて利用者Uがサービスを利用した意図(利用目的)について学習させる。また、学習部134は、その学習結果に基づいて、離脱期間を予測するモデルを作成する。このとき、学習部134は、離脱期間を正解データとしてモデルに学習させる。図示は省略するが、学習部134は、算出部134Aと、生成部134Bとを含む。
【0101】
算出部134Aは、サービス利用遷移シーケンスデータに基づいて、ターゲットサービスの二乗誤差(Squared Error)を算出する。
【0102】
生成部134Bは、ターゲットサービスの二乗誤差に基づいて、ターゲットサービスの離脱期間を予測するモデルを作成する。また、生成部134Bは、離脱期間を予測するモデルに基づいて、ターゲットサービスの離脱期間情報を生成する。
【0103】
モデルは、例えばLSTM(Long short-term memory)等である。但し、LSTMは一例に過ぎない。モデルは、任意の種別のモデルが採用可能である。
【0104】
学習は、例えばディープニューラルネットワーク(DNN:Deep Neural Network)を利用したディープラーニング(深層学習)等である。また、データマイニングやその他の機械学習アルゴリズムを利用してもよい。学習部134は、上述した各種の学習手法により、モデルの学習を行う。
【0105】
(分析部135)
分析部135は、モデルに、学習された全てのサービス利用遷移シーケンスデータを入力し、ターゲットサービスの離脱原因を分析する。図示は省略するが、分析部135は、並べ替え部135Aと、推定部135Bとを含む。
【0106】
並べ替え部135Aは、入力された全てのサービス利用遷移シーケンスデータを、予測された離脱期間が長い順に並べ替える。例えば、並べ替え部135Aは、離脱期間が長い方から順に、サービス利用遷移シーケンスデータを出力する。すなわち、並べ替え部135Aは、出力部であってもよい。このとき、並べ替え部135Aは、出力されるサービス利用遷移シーケンスデータの数を所定の数に制限してもよい。これにより、離脱期間の長い(離脱確率の高い)遷移シーケンス群、すなわち、離脱原因が含まれる遷移シーケンス群の特徴があぶり出される。
【0107】
推定部135Bは、サービス利用遷移シーケンスデータに含まれる離脱原因を推定する。例えば、推定部135Bは、サービス利用遷移シーケンスデータに含まれるサービスのうち、ターゲットサービスの離脱原因の可能性があるサービスを推定する。
【0108】
(提供部136)
提供部136は、通信部110を介して、ターゲットサービスの離脱原因に関する情報を外部に提供する。例えば、提供部136は、外部からの要求に応じて、ターゲットサービスの離脱原因に関するレポートを提供してもよい。なお、提供部137は、ターゲットサービスの離脱原因に関する情報を、ディスプレイ等の表示装置に表示させる表示制御部として機能してもよい。
【0109】
また、提供部136は、通信部110を介して、離脱確率の高いサービス利用遷移シーケンス群に関する情報を外部に提供してもよい。例えば、提供部136は、外部からの要求に応じて、離脱確率の高いサービス利用遷移シーケンス群に関する情報を外部に提供してもよい。
【0110】
また、提供部136は、通信部110を介して、各利用者Uの端末装置10に対して、各種サービスを提供してもよい。
【0111】
〔4.処理手順〕
次に、
図8を用いて実施形態に係る情報処理装置100による処理手順について説明する。
図8は、実施形態に係る処理手順を示すフローチャートである。なお、以下に示す処理手順は、情報処理装置100の制御部130によって繰り返し実行される。
【0112】
情報処理装置100の制御部130は、通信部110を介して、各情報提供装置200から、各利用者Uのアクセスログを取得する(ステップS101)。
【0113】
制御部130は、各利用者Uのアクセスログから、同一セッションでのサービスの利用に関するサービス利用遷移シーケンスデータを作成する(ステップS102)。
【0114】
制御部130は、モデルに、サービス利用遷移シーケンスデータを入力し、同一セッションにおいて利用者Uがサービスを利用した意図(利用目的)を学習させる(ステップS103)。なお、実際には、利用目的を学習させず、最初から離脱期間を予測するモデルの学習を行ってもよい。
【0115】
制御部130は、モデルに、サービス利用遷移シーケンスデータを入力し、実際の値とモデルによる予測値との誤差である二乗誤差(Squared Error)を算出する(ステップS104)。
【0116】
制御部130は、二乗誤差を小さくするようにモデルの学習を行い、離脱期間を予測するモデルを作成する(ステップS105)。
【0117】
制御部130は、事前に学習データのうち一定の割合のデータをテストデータとして取り分けておき、モデルにそのテストデータの全てのサービス利用遷移シーケンスデータを入力して、予測された離脱期間が長い順に並べ替える(ステップS106)。これにより、離脱期間の長い(離脱確率の高い)遷移シーケンス群、すなわち、離脱原因が含まれる遷移シーケンス群の特徴があぶり出される。
【0118】
制御部130は、離脱期間の長い(離脱確率の高い)遷移シーケンス群から、ターゲットサービスの離脱原因を推定する(ステップS107)。
【0119】
〔5.変形例〕
上述した端末装置10および情報処理装置100は、上記実施形態以外にも種々の異なる形態にて実施されてよい。そこで、以下では、実施形態の変形例について説明する。
【0120】
上記の実施形態において、同じ属性を持つ利用者Uの同一セッションでのサービスの利用に関するアクセスログから、サービス利用遷移シーケンスデータを作成してもよい。例えば、サービス利用遷移シーケンスは利用者Uの属性(性別/年齢層/居住地域/家族構成/趣味等)によっても異なると考えられるため、利用者Uの属性に応じて分類したサービス利用遷移シーケンスデータを作成してもよい。この結果、モデルが、利用者Uの属性ごとに作成されることとなる。
【0121】
また、上記の実施形態において、利用者Uのサービス利用時の状況(コンテキスト)に応じて、同一セッションでのサービスの利用に関するアクセスログから、サービス利用遷移シーケンスデータを作成してもよい。例えば、サービスの離脱原因は利用者Uの置かれた状況や環境の変化(転居、車購入、進学・就職、転職、結婚、出産・育児など)によっても変化すると考えられるため、利用者Uの置かれた状況で分類したサービス利用遷移シーケンスデータを作成してもよい。この結果、モデルが、利用者Uの置かれた状況ごとに作成されることとなる。
【0122】
また、上記の実施形態において、「離脱期間」を予測するモデルを作成しているが、同様の手法で、正解データを「離脱期間」から「ターゲットサービスに対する利用者の印象」とすることで、「シーケンスデータが示す順序でサービスを利用した際における利用者の印象」を推定するモデルの学習を行ってもよい。
【0123】
例えば、ウェブ検索からマップサービスを利用した場合には、満足度が高いが、ショッピングからマップサービスの利用を行うと、印象が悪いといったことを推定することができるようになる。
【0124】
また、例えば、情報処理装置100は、クラウドソージング等の技術を用いて、シーケンスデータと、そのシーケンスでターゲットサービスを利用した際の印象を示す値を利用者から取得する。ここで、印象を示す値は、例えば、0点(不満足)から10点(満足)といった値である。そして、情報処理装置100は、上述した技術により、モデルのプレトレーニング、および、満足度の学習を行う。
【0125】
このような学習処理を行ったモデルは、シーケンスデータから、そのシーケンスデータが示すシーケンスにおいてターゲットサービスに対する利用者の満足度を推定することができる。
【0126】
なお、印象を示す値は、利用者が入力した各種の評価以外にも、例えば、カメラ等を用いて、シーケンスデータが示すシーケンスのうちターゲットサービスを利用した際の利用者の表情や脈拍等の各種生体情報を取得し、表情や生体情報から推定された値であってもよい。
【0127】
また、情報処理装置100は、上述した離脱期間を、利用者の印象を示唆する情報としてもよい。すなわち、情報処理装置100は、利用者の印象を推定する各種の公知技術を用いて、利用者の印象を示すスコアを算出し、算出されたスコアを推定するように、モデルの学習を行ってもよい。
【0128】
また、上記の実施形態において、サービスを示す情報をシーケンスに従って入力することで順番を学習させているが、これに限定されるものではない。例えば、サービスを示す情報と、順序を示す数値とをモデルに入力し、離脱期間や利用者の印象を出力するようにCNN等といった再帰型ではないモデルの学習を行ってもよい。
【0129】
〔6.効果〕
上述してきたように、本願に係る情報処理装置100は、取得部と、学習部とを有する。取得部は、各利用者のサービス利用の遷移を示すシーケンスデータであって、所定のターゲットサービスの利用を含むシーケンスデータを取得する。学習部は、シーケンスデータから、利用者がターゲットサービスを利用してから当該ターゲットサービスを再度利用するまでの期間を示す離脱期間情報を出力するようにモデルに学習させる。これにより、より効果的に離脱原因を探り当てることができる。
【0130】
学習部は、モデルとして、LSTM(Long short-term memory)の構成を有するモデルに学習させる。これにより、時系列データであるシーケンスデータに基づいて、分析ターゲットサービスの離脱原因を推定することができる。
【0131】
取得部は、シーケンスデータとして、利用者が利用した複数のサービスと、各サービスを利用した順序とを示すデータを取得する。学習部は、利用者が利用した各サービスを示す情報を、各サービスを利用した順序でモデルに入力した際に、離脱期間情報を出力するようにモデルに学習させる。これにより、より効果的に離脱原因を探り当てるための具体的な学習を行うことができる。
【0132】
学習部は、利用者が利用したサービスを示す情報を入力した際に、当該利用者が次に利用するサービスを示す情報を出力するようにモデルに学習させ、その後、各サービスを利用した順序で当該モデルに入力した際に、離脱期間情報を出力するようにモデルに学習させる。これにより、ターゲットサービスの利用目的について、モデルのプレトレーニング(事前学習)を行うことができる。
【0133】
学習部は、離脱期間情報として、利用者がターゲットサービスを利用してから当該ターゲットサービスを再度利用するまでに利用した他のサービスの数を出力するように、モデルに学習させる。これにより、離脱期間として、時間ではなく、その間に利用したコンテンツ数を用いることができる。
【0134】
学習部は、離脱期間情報として、利用者がターゲットサービスを利用してから当該ターゲットサービスを再度利用するまでに経過した時間を出力するように、モデルに学習させる。これにより、離脱期間として、その間に経過した時間を用いることができる。
【0135】
取得部は、所定のターゲットサービスの利用を含み、かつ、他のサービスの利用態様が所定の条件を満たすシーケンスデータを取得する。これにより、コンテキストのフィルタリングを行うことができる。例えば、シーズン物サービスが含まれているシーケンスだけを抽出して、学習用のシーケンスデータを作成することができる。
【0136】
また、本願に係る情報処理装置100は、生成部と、出力部とをさらに有する。生成部は、学習部により学習が行われたモデルを用いて、各シーケンスデータに対応する離脱期間情報を生成する。出力部は、離脱期間情報が示す期間が所定の条件を満たすシーケンスデータを出力する。これにより、離脱期間に応じてシーケンスデータを出力させることができる。
【0137】
出力部は、離脱期間情報が示す期間が長い方から順に、シーケンスデータを出力する。これにより、離脱期間の長い順にシーケンスデータを並べ替えることができる。
【0138】
出力部は、離脱期間情報が示す期間が長い方から順に、所定の数のシーケンスデータを出力する。これにより、出力されるシーケンスデータの数を制限することができる。その結果、離脱期間が長い方のシーケンスデータのみを対象とすることができる。
【0139】
取得部は、シーケンスデータとして、1つのアプリの各機能をサービスとしたシーケンスデータを取得する。これにより、粒度の細かいシーケンスデータを対象とすることができる。その結果、1つのアプリの機能の離脱原因を推定することができる。
【0140】
他の観点では、本願に係る情報処理装置100は、取得部と、学習部とを有する。取得部は、各利用者のサービス利用の遷移を示すシーケンスデータであって、所定のターゲットサービスの利用を含むシーケンスデータを取得する。学習部は、シーケンスデータから、ターゲットサービスに対する利用者の印象の指標となる指標情報を出力するようにモデルに学習させる。これにより、利用者の満足/不満足について推定することができる。
【0141】
〔7.ハードウェア構成〕
また、上述した実施形態に係る端末装置10や情報処理装置100は、例えば
図9に示すような構成のコンピュータ1000によって実現される。以下、情報処理装置100を例に挙げて説明する。
図9は、ハードウェア構成の一例を示す図である。コンピュータ1000は、出力装置1010、入力装置1020と接続され、演算装置1030、一次記憶装置1040、二次記憶装置1050、出力I/F(Interface)1060、入力I/F1070、ネットワークI/F1080がバス1090により接続された形態を有する。
【0142】
演算装置1030は、一次記憶装置1040や二次記憶装置1050に格納されたプログラムや入力装置1020から読み出したプログラム等に基づいて動作し、各種の処理を実行する。演算装置1030は、例えばCPU(Central Processing Unit)、MPU(Micro Processing Unit)、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等により実現される。
【0143】
一次記憶装置1040は、RAM(Random Access Memory)等、演算装置1030が各種の演算に用いるデータを一次的に記憶するメモリ装置である。また、二次記憶装置1050は、演算装置1030が各種の演算に用いるデータや、各種のデータベースが登録される記憶装置であり、ROM(Read Only Memory)、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フラッシュメモリ等により実現される。二次記憶装置1050は、内蔵ストレージであってもよいし、外付けストレージであってもよい。また、二次記憶装置1050は、USBメモリやSD(Secure Digital)メモリカード等の取り外し可能な記憶媒体であってもよい。また、二次記憶装置1050は、クラウドストレージ(オンラインストレージ)やNAS(Network Attached Storage)、ファイルサーバ等であってもよい。
【0144】
出力I/F1060は、ディスプレイ、プロジェクタ、およびプリンタ等といった各種の情報を出力する出力装置1010に対し、出力対象となる情報を送信するためのインターフェイスであり、例えば、USB(Universal Serial Bus)やDVI(Digital Visual Interface)、HDMI(登録商標)(High Definition Multimedia Interface)といった規格のコネクタにより実現される。また、入力I/F1070は、マウス、キーボード、キーパッド、ボタン、およびスキャナ等といった各種の入力装置1020から情報を受信するためのインターフェイスであり、例えば、USB等により実現される。
【0145】
また、出力I/F1060および入力I/F1070はそれぞれ出力装置1010および入力装置1020と無線で接続してもよい。すなわち、出力装置1010および入力装置1020は、ワイヤレス機器であってもよい。
【0146】
また、出力装置1010および入力装置1020は、タッチパネルのように一体化していてもよい。この場合、出力I/F1060および入力I/F1070も、入出力I/Fとして一体化していてもよい。
【0147】
なお、入力装置1020は、例えば、CD(Compact Disc)、DVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、又は半導体メモリ等から情報を読み出す装置であってもよい。
【0148】
ネットワークI/F1080は、ネットワークNを介して他の機器からデータを受信して演算装置1030へ送り、また、ネットワークNを介して演算装置1030が生成したデータを他の機器へ送信する。
【0149】
演算装置1030は、出力I/F1060や入力I/F1070を介して、出力装置1010や入力装置1020の制御を行う。例えば、演算装置1030は、入力装置1020や二次記憶装置1050からプログラムを一次記憶装置1040上にロードし、ロードしたプログラムを実行する。
【0150】
例えば、コンピュータ1000が情報処理装置100として機能する場合、コンピュータ1000の演算装置1030は、一次記憶装置1040上にロードされたプログラムを実行することにより、制御部130の機能を実現する。また、コンピュータ1000の演算装置1030は、ネットワークI/F1080を介して他の機器から取得したプログラムを一次記憶装置1040上にロードし、ロードしたプログラムを実行してもよい。また、コンピュータ1000の演算装置1030は、ネットワークI/F1080を介して他の機器と連携し、プログラムの機能やデータ等を他の機器の他のプログラムから呼び出して利用してもよい。
【0151】
〔8.その他〕
以上、本願の実施形態を説明したが、これら実施形態の内容により本発明が限定されるものではない。また、前述した構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。さらに、前述した構成要素は適宜組み合わせることが可能である。さらに、前述した実施形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換又は変更を行うことができる。
【0152】
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【0153】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
【0154】
例えば、上述した情報処理装置100は、複数のサーバコンピュータで実現してもよく、また、機能によっては外部のプラットホーム等をAPI(Application Programming Interface)やネットワークコンピューティング等で呼び出して実現するなど、構成は柔軟に変更できる。
【0155】
また、上述してきた実施形態および変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【0156】
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。
【符号の説明】
【0157】
1 情報処理システム
10 端末装置
100 情報処理装置
110 通信部
120 記憶部
121 利用者データベース
122 シーケンスデータベース
123 離脱期間データベース
130 制御部
131 受付部
132 取得部
133 作成部
134 学習部
135 分析部
136 提供部
200 情報提供装置