(57)【要約】【課題】効率的にユーザの状態遷移を促すことを課題とする。【解決手段】モデル生成サーバは、複数の状態のうち特定の状態に対応した各行動者の行動の組み合わせと特定の状態とが関連付けられる複数の訓練データを用いて、複数の訓練データに含まれる複数の行動から生成される各行動の組み合わせと、各行動の組み合わせが前記特定の状態である確からしさを示す尤度とが対応付けられる複数の対応関係を学習した学習モデルに、判定対象者の行動情報を入力する。モデル生成サーバは、学習モデルの出力結果から、複数の対応関係それぞれにおける各行動の組み合わせと、判定対象者の行動情報との各差分を特定する。モデル生成サーバは、各行動の組み合わせに対応付けられる各尤度と、各行動の組み合わせとの各差分とに基づき、判定対象者を特定の状態に遷移させる追加行動を判定する。【選択図】図１２
2020140540.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
複数の状態のうち特定の状態に対応した各行動者の行動の組み合わせと前記特定の状態とが関連付けられる複数の訓練データを用いて、前記複数の訓練データに含まれる複数の行動から生成される各行動の組み合わせと、前記各行動の組み合わせが前記特定の状態である確からしさを示す尤度とが対応付けられる複数の対応関係を学習した学習モデルに、判定対象者の行動情報を入力し、
前記学習モデルの出力結果から、前記複数の対応関係それぞれにおける前記各行動の組み合わせと、前記判定対象者の行動情報との各差分を特定し、
前記各行動の組み合わせに対応付けられる各尤度と、前記各行動の組み合わせとの各差分とに基づき、前記判定対象者を前記特定の状態に遷移させる追加行動を判定する
処理を実行させることを特徴とする判定プログラム。
【請求項２】
前記判定する処理は、前記判定対象者の行動情報が前記特定の状態と判定される閾値以上の尤度が対応付けられる行動の組み合わせを含むようになる前記追加行動を特定し、前記判定対象者に対する推奨行動として決定することを特徴とする請求項１に記載の判定プログラム。
【請求項３】
前記学習モデルから前記出力結果として、前記各行動の組み合わせと、前記尤度と、前記各行動の組み合わせと前記判定対象者の行動情報とを差分を取得し、
前記判定対象者にサービスを提供するサーバ装置に、前記出力結果を出力する、処理を前記コンピュータに実行させることを特徴とする請求項１に記載の判定プログラム。
【請求項４】
前記複数の状態それぞれに対応する各学習モデルに、前記判定対象者の行動情報を入力し、
前記各学習モデルから、前記判定対象者の行動情報が含まれる前記行動の組み合わせに対応付けられる前記尤度を合算したスコアを取得し、
前記各学習モデルから取得される各スコアに基づき、前記判定対象者の状態を特定する、処理を前記コンピュータに実行させることを特徴とする請求項１に記載の判定プログラム。
【請求項５】
前記複数の状態は、最初の状態から最終目的の状態まで順に遷移する状態であり、
前記特定する処理は、前記複数の状態それぞれに対応する各学習モデルから取得された各スコアのうち閾値以上、かつ、前記最終目的の状態に最も近い状態を、前記判定対象者の状態と特定することを特徴とする請求項４に記載の判定プログラム。
【請求項６】
前記特定する処理は、前記判定対象者の状態と特定された第１の状態の次の状態である第２の状態に対応する学習モデルから、前記第２の状態を特徴づける各行動の組み合わせと尤度との対応関係に関し、前記判定対象者の行動情報が前記各行動の組み合わせに含まれる割合を取得し、
前記判定する処理は、前記尤度が閾値以上である前記各行動の組み合わせのうち、前記割合が最も多い組み合わせを特定し、特定した前記組み合わせにおいて、前記判定対象者の行動情報に含まれない行動を、前記追加行動と判定することを特徴とする請求項５に記載の判定プログラム。
【請求項７】
コンピュータが、
複数の状態のうち特定の状態に対応した各行動者の行動の組み合わせと前記特定の状態とが関連付けられる複数の訓練データを用いて、前記複数の訓練データに含まれる複数の行動から生成される各行動の組み合わせと、前記各行動の組み合わせが前記特定の状態である確からしさを示す尤度とが対応付けられる複数の対応関係を学習した学習モデルに、判定対象者の行動情報を入力し、
前記学習モデルの出力結果から、前記複数の対応関係それぞれにおける前記各行動の組み合わせと、前記判定対象者の行動情報との各差分を特定し、
前記各行動の組み合わせに対応付けられる各尤度と、前記各行動の組み合わせとの各差分とに基づき、前記判定対象者を前記特定の状態に遷移させる追加行動を判定する
処理を実行することを特徴とする判定方法。
【請求項８】
複数の状態のうち特定の状態に対応した各行動者の行動の組み合わせと前記特定の状態とが関連付けられる複数の訓練データを用いて、前記複数の訓練データに含まれる複数の行動から生成される各行動の組み合わせと、前記各行動の組み合わせが前記特定の状態である確からしさを示す尤度とが対応付けられる複数の対応関係を学習した学習モデルに、判定対象者の行動情報を入力する入力部と、
前記学習モデルの出力結果から、前記複数の対応関係それぞれにおける前記各行動の組み合わせと、前記判定対象者の行動情報との各差分を特定する特定部と、
前記各行動の組み合わせに対応付けられる各尤度と、前記各行動の組み合わせとの各差分とに基づき、前記判定対象者を前記特定の状態に遷移させる追加行動を判定する判定部と
を有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、判定プログラム、判定方法および情報処理装置に関する。
【背景技術】
【０００２】
デジタルマーケティングなどでは、マーケティング効果を増大させるために、様々な目的の人がアクセスするウェブページの行動ログを解析することが行われている。具体的には、商品の購入に至るまでのユーザの行動の状態遷移は、時系列として表すことができる。例えば、ユーザの行動は、最初は興味が小さい「興味小」状態からはじまり、徐々に興味が大きくなって「興味大」状態に遷移し、最終的には購入を決定する「購入意思」状態に遷移する。基本的には、状態には順序があり、例えば「興味大」状態から「購入意思」状態へは移行できるがその逆はない。
【０００３】
このようなことから、ユーザがどの状態にいるか、どんなアクションをとれば別の状態に移行するかをいち早く察知することで、ユーザへ状態遷移を促すアクションを働きかけることができ、マーケティング効果を増大させることができる。このため、管理者がユーザの行動履歴から現在どの状態にいるか判別し、アクションを決定するルールを生成することが行われている。例えば、アクセス数が１０回以上かつ商品価格ページにアクセスしたユーザには、クーポンを配信するルールなどが利用されている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】金  鍾和，森高  正博，福田  晋，尹  ソク重、“ネットショッピングにおける消費者購買認識の構造分析”，フードシステム研究，2012，19巻，4号，p．382-393，2013/12/05，
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ユーザを次の状態に移行させるために、人手で行動履歴からアクションを考えることが難しく、コストも高い上にルール生成に漏れが生じすることもあり、リアルタイム性もよくない。
【０００６】
このように、人手による解析ではユーザの状態遷移を促すことが難しいことから、行動履歴から状態等を予測する決定木を用いた手法も考えられる。例えば、各ユーザの各状態ｉまでのデータに状態ｉのラベルが付加して訓練データを生成する。そして、各状態ｊについて状態ｊの状態であるか否かを判定する決定木モデルを生成する。このとき、状態の個数だけモデル（決定木）を生成する。その後、ユーザデータと状態ｉが与えられたとき、状態ｉ判定用の決定木が正と判定するような特徴の修正を列挙する。
【０００７】
しかしながら、決定木の修正方法は多くのパターンが存在するが、効果的な修正方法が自明ではなく、決定木のどの部分が重要かもわからないので、最終的には、人手により修正部分の探索などを行うことになる。このように、人手による解析手法も決定木を用いた手法も、効率的な手法とは言い難い。
【０００８】
一つの側面では、効率的にユーザの状態遷移を促すことができる判定プログラム、判定方法および情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
第１の案では、判定プログラムは、コンピュータに、複数の状態のうち特定の状態に対応した各行動者の行動の組み合わせと前記特定の状態とが関連付けられる複数の訓練データを用いて、前記複数の訓練データに含まれる複数の行動から生成される各行動の組み合わせと、前記各行動の組み合わせが前記特定の状態である確からしさを示す尤度とが対応付けられる複数の対応関係を学習した学習モデルに、判定対象者の行動情報を入力する処理を実行させる。判定プログラムは、コンピュータに、前記学習モデルの出力結果から、前記複数の対応関係それぞれにおける前記各行動の組み合わせと、前記判定対象者の行動情報との各差分を特定する処理を実行させる。判定プログラムは、コンピュータに、前記各行動の組み合わせに対応付けられる各尤度と、前記各行動の組み合わせとの各差分とに基づき、前記判定対象者を前記特定の状態に遷移させる追加行動を判定する処理を実行させる。
【発明の効果】
【００１０】
一つの側面では、効率的にユーザの状態遷移を促すことができる。
【図面の簡単な説明】
【００１１】
【図１】図１は、実施例１にかかるシステムの全体構成例を示す図である。
【図２】図２は、実施例１にかかる状態遷移とアクションを説明する図である。
【図３】図３は、実施例１にかかるモデル生成サーバの機能構成を示す機能ブロック図である。
【図４】図４は、想定する状態遷移を説明する図である。
【図５】図５は、訓練データの生成例を説明する図である。
【図６】図６は、各モデルの学習を説明する図である。
【図７】図７は、学習手法を説明する図である。
【図８】図８は、学習手法を説明する図である。
【図９】図９は、ユーザログから特徴量への変換を説明する図である。
【図１０】図１０は、状態判定を説明する図である。
【図１１】図１１は、遷移先の状態を特定する図である。
【図１２】図１２は、ユーザに推薦するアクション内容を特定する図である。
【図１３】図１３は、学習処理の流れを示すフローチャートである。
【図１４】図１４は、アクション判定処理の流れを示すフローチャートである。
【図１５】図１５は、実施例２にかかる状態が既知のときの判定手法の例を説明する図である。
【図１６】図１６は、訓練データの一例を示す説明図である。
【図１７】図１７は、仮説の生成を説明する説明図である。
【図１８】図１８は、仮説の生成を説明する説明図である。
【図１９】図１９は、仮説の生成を説明する説明図である。
【図２０】図２０は、生成された仮説の一例を示す説明図である。
【図２１】図２１は、入力データに適合する仮説を説明する説明図である。
【図２２】図２２は、ロジスティック回帰による重み付けを説明する説明図である。
【図２３】図２３は、ハードウェア構成例を説明する図である。
【発明を実施するための形態】
【００１２】
以下に、本願の開示する判定プログラム、判定方法および情報処理装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、各実施例は、矛盾のない範囲内で適宜組み合わせることができる。
【実施例１】
【００１３】
［全体構成］
図１は、実施例１にかかるシステムの全体構成例を示す図である。図１に示すように、このシステムは、ユーザ端末５、Ｗｅｂサーバ６、データベースサーバ７、モデル生成サーバ１０がネットワークＮを介して相互に通信可能に接続される。なお、ネットワークＮには、有線や無線を問わず、インターネットや専用線などの各種通信網を採用することができる。
【００１４】
ユーザ端末５は、Ｗｅｂブラウザなどを用いてＷｅｂサーバ６にアクセスするユーザが利用する端末の一例であり、例えばスマートフォン、携帯電話、パーソナルコンピュータなどのコンピュータ機器である。例えば、ユーザ端末５は、Ｗｅｂサーバ６にアクセスして、商品の検索や商品の購入などを行う。
【００１５】
Ｗｅｂサーバ６は、ユーザ端末５に、Ｗｅｂサービスを提供するサーバ装置の一例である。例えば、Ｗｅｂサーバ６は、アクセスしてきたユーザ端末５に、Ｗｅｂショッピングや検索サービスなどを提供する。
【００１６】
データベースサーバ７は、Ｗｅｂサーバ６を利用した各ユーザ端末の行動履歴を蓄積するデータベースサーバの一例である。すなわち、データベースサーバ７は、複数のユーザそれぞれのアクセス履歴を記憶する。
【００１７】
モデル生成サーバ１０は、データベースサーバ７が記憶されるユーザの行動履歴を解析して、ユーザの状態を特定するモデルを生成するサーバ装置の一例である。また、モデル生成サーバ１０は、Ｗｅｂサーバ６からユーザのログを取得して、生成済みのモデルによりユーザの状態を推定し、ユーザの状態を遷移させるためのアクションを特定するサーバ装置の一例である。なお、モデルを生成するサーバ装置と、アクションを特定するサーバ装置とは、別々のサーバ装置で実現することもできる。
【００１８】
図２は、実施例１にかかる状態遷移とアクションを説明する図である。図２に示すように、Ｗｅｂサーバ６にアクセスして商品を購入するユーザは、アクセス開始から購入までの時間において、商品への興味が小さい「興味小」状態、商品への興味が大きい「興味大」状態、購入意思を固める「購入意思」状態を順に遷移して、最終的に商品の購入を行うことが一般的である。
【００１９】
しかし、ユーザは、「興味小」状態から「購入意思」状態まで、迷うことなく遷移するとは限らない。例えば、他の商品を見て検討したり、自分に本当に必要な商品かを再検討したりする。そこで、図２に示すように、モデル生成サーバ１０は、ユーザの状態を判定し、ユーザを「購入意思」状態に遷移させることができる次のアクションを特定する。例えば、モデル生成サーバ１０は、「興味大」状態のユーザに対して、アクション「ポップアップ」またはアクション「クーポン配信」を行うことで、ユーザを「購入意思」状態に遷移させることができると判定する。
【００２０】
その後、モデル生成サーバ１０は、Ｗｅｂサーバ６に、特定したアクションの情報を通知する。このアクションの情報を受信したＷｅｂサーバ６は、当該アクションをユーザ端末５に対して実行する。例えば、Ｗｅｂサーバ６は、ユーザ端末５がアクセスに利用中のＷｅｂブラウザ上にクーポンを配信したりする。
【００２１】
このように、モデル生成サーバ１０は、ユーザを次の状態に移行させるために、人手で行動履歴からアクションを自動的に特定することができるので、効率的にユーザの状態遷移を促すことができる。
【００２２】
［機能構成］
図３は、実施例１にかかるモデル生成サーバ１０の機能構成を示す機能ブロック図である。図３に示すように、モデル生成サーバ１０は、通信部１１、記憶部１２、制御部２０を有する。
【００２３】
通信部１１は、他の装置との間の通信を制御する処理部であり、例えば通信インタフェースなどである。例えば、通信部１１は、Ｗｅｂサーバ６からユーザの現在のアクセス状態を示すユーザログを受信し、データベースサーバ７から各ユーザの行動履歴を受信し、Ｗｅｂサーバ６に次の状態に遷移させるためのアクションに関する情報を送信する。
【００２４】
記憶部１２は、データや制御部２０が実行するプログラムなどを記憶する記憶装置の一例であり、例えばメモリやハードディスクなどである。この記憶部１２は、行動履歴ＤＢ１３、訓練データＤＢ１４、モデルＤＢ１５を記憶する。
【００２５】
行動履歴ＤＢ１３は、各ユーザの行動履歴を記憶するデータベースである。例えば、行動履歴ＤＢ１３は、ユーザごとに、アクセスした日時を示す「日時」とアクセスしたＷｅｂページを示す「アクセスページ」とを対応付けて記憶する。
【００２６】
訓練データＤＢ１４は、各状態を判別するモデルごとに、各モデルを学習するための訓練データを記憶するデータベースである。例えば、訓練データＤＢ１４は、モデルごとに、目的変数（ラベル）である「クラス」と、説明変数である「特徴量」とを対応付けた、いわゆる教師データを記憶する。
【００２７】
モデルＤＢ１５は、各状態を判別する各モデルに関する情報を記憶するデータベースである。例えば、モデルＤＢ１５は、学習結果、学習済みの各モデルを構築するための各種パラメータなどを記憶する。
【００２８】
制御部２０は、モデル生成サーバ１０全体を司る処理部であり、例えばプロセッサなどである。この制御部２０は、学習処理部３０と判定処理部４０とを有し、ユーザの状態を特定するモデルの学習処理や状態遷移を促すアクションを特定する判定処理を実行する。なお、学習処理部３０と判定処理部４０は、プロセッサが有する電子回路の一例やプロセッサが実行するプロセスの一例などである。
【００２９】
学習処理部３０は、取得部３１、生成部３２、学習部３３を有し、ユーザの状態を特定するモデルの学習処理を実行する処理部である。ここで、本実施例で想定するユーザの状態を説明する。図４は、想定する状態遷移を説明する図である。図４に示すように、ユーザは、Ｗｅｂサーバ６にアクセスを開始して商品を購入するまで、「興味小」状態、「興味大」状態、「他社と比較検討」状態、「購入意思」状態、「興味なし」状態を遷移する。
【００３０】
ここで、「興味小」状態からは「興味大」状態に遷移し、「興味大」状態からは「他社と比較検討」状態または「購入意思」状態に遷移し、「他社と比較検討」状態からは「購入意思」状態または「興味なし」状態に遷移する。この状態遷移からわかるように、「興味大」状態から２つの状態に遷移するので、ユーザの状態をいち早く特定し、「購入意思」状態へ促すアクションを行うことで、マーケティング効果を増大させることができる。
【００３１】
取得部３１は、各ユーザの行動履歴を取得する処理部である。例えば、取得部３１は、学習を開始するタイミングなどの任意のタイミングで、データベースサーバ７から各ユーザの行動履歴を取得し、行動履歴ＤＢ１３に格納する。
【００３２】
生成部３２は、各ユーザの行動履歴から各モデルの訓練データを生成する処理部である。具体的には、生成部３２は、各状態を特徴づけるアクセス内容までの行動履歴を、各状態を判定するモデル用の訓練データとして生成し、訓練データＤＢ１４に格納する。
【００３３】
図５は、訓練データの生成例を説明する図である。図５に示すように、生成部３２は、あるユーザの行動履歴を参照し、行動履歴の先頭「2019/01/04  トップページアクセス」から、「興味小」状態を特徴づける行動「セミナー参加」までの行動履歴をデータ１とする。そして、生成部３２は、データ１に含まれる行動履歴を特徴量に変換し、状態のラベルを示す「クラス」と対応付けた訓練データを生成する。例えば、生成部３２は、データ１の「クラス」に「興味小」を設定し、特徴量「トップページアクセス、セミナー参加、製品価格ページにアクセス、ページアクセス５回以上、ページアクセス２０回以上」として「Ｙ，Ｙ，Ｎ，Ｙ，Ｎ」を設定した訓練データを生成する。
【００３４】
また、生成部３２は、あるユーザの行動履歴を参照し、行動履歴の先頭「2019/01/04  トップページアクセス」から、「興味大」状態を特徴づける行動「製品価格ページアクセス」までの行動履歴をデータ２とする。そして、生成部３２は、データ２の「クラス」に「興味大」を設定し、特徴量「トップページアクセス、セミナー参加、製品価格ページにアクセス、ページアクセス５回以上、ページアクセス２０回以上」として「Ｙ，Ｙ，Ｙ，Ｙ，Ｙ」を設定した訓練データを生成する。
【００３５】
なお、状態を特徴づける行動は、一例であり、任意に設定変更することができる。また、ラベルの設定内容や特徴量の変換も、一例であり、任意に設定変更することができる。また、上記特徴量の項目は、条件を満たせば「Ｙ」が設定され、条件を満たさなければ「Ｎ」が設定される。例えば、行動履歴内に「トップページにアクセス」した履歴が含まれる場合、特徴量「トップページアクセス」に「Ｙ」を設定し、行動履歴内に「ページアクセス」の履歴が４回含まれる場合、特徴量「ページアクセス５回以上」に「Ｎ」を設定する。
【００３６】
学習部３３は、生成部３２により生成された訓練データを用いて、各状態を判定する各モデルの学習を実行する処理部である。図６は、各モデルの学習を説明する図である。図６に示すように、学習部３３は、訓練データＤＢ１４から「クラス」に「興味小」が設定されるデータ１などのデータを読み出して、「クラス」を目的変数、「特徴量」を説明変数として、「興味小」状態を判定する興味小判定モデルを学習する。
【００３７】
同様に、学習部３３は、訓練データＤＢ１４から「クラス」に「興味大」が設定されるデータ２などのデータを読み出して、「興味大」状態を判定する興味大判定モデルを学習する。このようにして、学習部３３は、「興味小」状態、「興味大」状態、「他社と比較検討」状態、「購入意思」状態、「興味なし」状態の各状態（クラス）に対応する各教師データを用いて、各状態の判定モデルを学習する。そして、学習部３３は、学習結果として、モデルを構築するための各種パラメータなどをモデルＤＢ１５に格納する。
【００３８】
ここで、学習部３３の学習手法の一例を説明する。図７と図８は、学習手法を説明する図である。一般的に、深層学習（Deep  Learning）は、人間の脳の神経回路の構造を模倣したニューラルネットワークを何層にも重ね、１つのモデルを洗練化することで精度向上を実現するので、人間が理解できない複雑なモデルである。一方、図７に示すように、学習部３３は、機械学習の一つである、データ項目を組み合わせて大量の仮説を抽出し、仮説（ナレッジチャンク（以下では、単に「チャンク」と記載する場合がある））の影響度を調整し高精度な分類モデルを構築する機械学習を実行する。ナレッジチャンクとは、人間が理解できる単純なモデルであり、入出力の関係として成立する可能性のある仮説を論理的な表現で記載したモデルである。
【００３９】
具体的には、学習部３３は、入力データのすべてのデータ項目の組合せパターンを仮説（チャンク）とし、各仮説に対する分類ラベルのヒット率で、その仮説の重要度を判断する。そして、学習部３３は、抽出した複数のナレッジチャンクとラベルに基づき分類モデルを構築する。この際に、学習部３３は、ナレッジチャンクを構成する項目が他のナレッジチャンクを構成する項目と重複が多い場合に、分類モデルへの影響度を小さくなるように制御する。
【００４０】
図８を用いて具体例を説明する。ここでは、ある商品やサービスを購入する顧客を判断したい時の例を考える。顧客データには、「性別」、「免許の有無」、「婚姻」、「年齢」、「年収」など様々な項目がある。これらの項目の全ての組合せを仮説とし、各仮説の重要度を考える。例えば、「「男」、「所有」、「既婚」」という項目の組合せである仮説（ａ）に当てはまる顧客がデータの中に１０人いる。この１０人のうち、９人が商品等を購入していれば、「「男」、「所有」、「既婚」の人は購入」というヒット率の高い仮説とし、これをナレッジチャンクとして抽出する。
【００４１】
一方、「「男」、「所有」」という項目の組合せである仮説（ｂ）に当てはまる顧客がデータの中に１００人いる。この１００人のうち６０人しか商品等を購入してない場合、購入するヒット率が６０％となり、閾値（例えば８０）未満であることから、「「男」、「所有」の人は購入」というヒット率の低い仮説とし、ナレッジチャンクとして抽出しない。
【００４２】
また、「「男」、「未所有」、「未婚」」という項目の組合せである仮説（ｃ）に当てはまる顧客がデータの中に２０人いる。この２０人のうち１８人が商品等を未購入の場合、未購入であるヒット率が９０％となり、閾値（例えば８０）以上であることから、「「男」、「未所有」、「未婚」の人は未購入」というヒット率の高い仮説とし、ナレッジチャンクとして抽出する。
【００４３】
このようにして、学習部３３は、購入を支持するナレッジチャンクや未購入を支持するナレッジチャンクを数千万や数億個取り出し、モデルの学習を実行する。このように学習されたモデルは、特徴の組み合わせを仮説（チャンク）として列挙し、各仮説には確からしさを示す尤度の一例である重みが付加され、入力データに出現する仮説の重みの総和がスコアとなり、スコアが閾値以上であれば正例と出力する。
【００４４】
すなわち、スコアとは、その状態の確からしさを示す指標であり、各モデル生成されるチャンク（仮説）のうち、属する特徴をすべて満たすチャンクの重みの合算値である。例えば、チャンクＡに「重み：２０，特徴（Ａ１、Ａ２）」、チャンクＢに「重み：５，特徴（Ｂ１）」、チャンクＣに「重み：１０，特徴（Ｃ１、Ｃ２）」が対応付けられている状態で、ユーザログに行動（Ａ１、Ａ２、Ｂ１、Ｃ１）が存在したとする。このとき、チャンクＡとチャンクＢの特徴がすべて出現していることになるで、スコアは「２０＋５＝２５」となる。また、ここでの特徴とは、ユーザの行動などが該当する。
【００４５】
図３に戻り、判定処理部４０は、変換部４１、判定部４２、アクション決定部４３を有し、学習済みのモデルを用いた状態判定や状態遷移を促すアクションを決定する処理部である。
【００４６】
変換部４１は、ユーザログを特徴量に変換する処理部である。具体的には、変換部４１は、状態判定対象のユーザの現在時点の行動を示すユーザログをＷｅｂサーバ６から取得し、学習処理部３０と同様の基準や手法により、特徴量に変換する。そして、変換部４１は、特徴量を判定部４２に出力する。
【００４７】
図９は、ユーザログから特徴量への変換を説明する図である。図９に示すように、変換部４１は、状態が未知のユーザログとして、「2019/01/04  トップページアクセス」から「2019/01/08  セミナー参加」までを含むユーザログを取得する。そして、変換部４１は、ユーザログに含まれるアクセス内容等を計数し、学習処理部３０で使用された項目と同じ項目を有する特徴量「（トップページアクセス、セミナー参加、製品価格ページにアクセス、ページアクセス５回以上、ページアクセス２０回以上）」に変換する。ここでは、変換部４１が、ユーザログを特徴量「Ｙ，Ｙ，Ｎ，Ｙ，Ｎ」に変換したとする。
【００４８】
判定部４２は、学習済みの各判定モデルと、変換部４１により変換されたユーザログの特徴量とを用いて、ユーザの状態を判定する処理部である。具体的には、判定部４２は、モデルＤＢ１５から各判定モデルのパラメータを取得して、学習済みの各判定モデルを構築する。そして、判定部４２は、変換部４１から取得した特徴量を、学習済みの各モデルに入力して、各モデルの判定結果を取得する。その後、判定部４２は、各モデルの判定結果に基づき、ユーザの状態を判定するとともに、ユーザの状態の次の遷移先を特定し、それらの結果をアクション決定部４３に出力する。
【００４９】
図１０は、状態判定を説明する図である。図１０に示すように、判定部４２は、ユーザログの特徴量を、興味小判定モデル、興味大判定モデル、購入意思判定モデル、他社と比較検討判定モデルの各モデルに入力する。そして、判定部４２は、興味小判定モデルから判定結果「正」、興味大判定モデルから判定結果「負」、購入意思判定モデルから判定結果「負」、他社と比較検討判定モデルから判定結果「負」を取得する。
【００５０】
ここで、各判定モデルは、入力された特徴量から、特徴量の含まれる各項目（特徴）の組み合わせを仮説として生成し、入力データに出現する各仮説の重みの総和であるスコアを算出し、スコアが閾値以上であれば正例と出力する。図１０の例では、判定部４２は、興味小判定モデルの判定結果のみが「正」となったので、ユーザの状態を「興味小」状態と判定し、入力データに判定結果を対応付ける。なお、複数の判定モデルの出力結果が「正」となった場合、最終目的の状態に近い判定モデルの結果を選択する。
【００５１】
また、判定部４２は、各モデルの判定結果に基づき、ユーザの状態の次の遷移先を特定する。図１１は、遷移先の状態を特定する図である。図１１に示すように、判定部４２は、各モデルの判定結果にしたがって状態変更容易度（容易性）を判定する。ここで、状態変更容易度は現在の状態モデルの判定結果が「正」または前状態の状態モデルの判定結果が「正」であれば「容易」と出力され、それ以外が「困難」と出力される。
【００５２】
図１１の例では、判定部４２は、興味小判定モデルに関して、判定結果が「正」であることから、容易性を「容易」と判定する。また、判定部４２は、興味大判定モデルに関して、判定結果が「負」であるが、前状態を判定する興味小判定モデルの判定結果が「正」であることから、容易性を「容易」と判定する。また、判定部４２は、購入意思判定モデルと他社と比較検討判定モデルのいずれに関しても、判定結果が「負」であるとともに、前状態の判定結果も「負」であることから、容易性を「困難」と判定する。なお、判定部４２は、複数の状態の容易性が「容易」と判定された場合、容易性が「容易」な状態のうち最終目的状態に一番近い状態を選択する。
【００５３】
アクション決定部４３は、判定部４２により容易性が「容易」と判定された状態（以下では「次の状態」と記載する場合がある）へ遷移させるためのアクションを決定する処理部である。具体的には、アクション決定部４３は、次の状態に対応する判定モデルが正と判定するようなチャンクの修正を、重みが大きく修正の個数が少ないチャンクを優先的に列挙する。
【００５４】
図１２は、ユーザに推薦するアクション内容を特定する図である。図１２に示すように、アクション決定部４３は、遷移先と判定された次の状態に該当する興味大判定モデルのチャンク（仮説）の結果を取得する。ここでは、重みとして「８０」が設定されたチャンクＡには、特徴として「セミナー参加、ページアクセス２０回以上、製品価格ページにアクセス」が含まれ、「セミナー参加」はユーザログに出現済みであり、「ページアクセス２０回以上、製品価格ページにアクセス」はユーザログに未出現である。すなわち、チャンクの特徴のうち出現済みの特徴の割合が３分の１である。
【００５５】
また、重みとして「１０」が設定されたチャンクＢには、特徴として「セミナー参加、製品価格ページにアクセス」が含まれ、「セミナー参加」はユーザログに出現済みであり、「製品価格ページにアクセス」はユーザログに未出現である。また、重みとして「１」が設定されたチャンクＣには、特徴として「セミナー参加」が含まれ、ユーザログに出現済みである。
【００５６】
そして、アクション決定部４３は、例えば重みが１０以上のチャンクの中から修正個数の少ないものを順に列挙する。図１２の場合、アクション決定部４３は、重みが１０以上であるチャンクＡとチャンクＢを特定する。続いて、アクション決定部４３は、チャンクＡではユーザログに未出現の特徴が「ページアクセス２０回以上」と「製品価格ページにアクセス」の２つであり、チャンクＢではユーザログに未出現の特徴が「製品価格ページにアクセス」の１つであると判定する。
【００５７】
この結果、アクション決定部４３は、チャンクＢとチャンクＡの順で、各チャンクと特徴一覧とユーザログに出現しなかった特徴を、修正案としてＷｅｂサーバ６に出力する。この修正案を受信したＷｅｂサーバ６は、修正案にしたがって、ポップアップやクーポン配信などを実行する。
【００５８】
例えば、Ｗｅｂサーバ６は、チャンクＢの特徴を満たすためには「製品価格ページにアクセス」が必要であることが特定できたので、ユーザ端末にクーポン配信を配信して、製品価格ページへのアクセスを促す。また、Ｗｅｂサーバ６は、チャンクＡの特徴を満たすためには、少なくとも「ページアクセス２０回以上」が必要であることが特定できたので、製品ページをポップアップでユーザ端末に表示させて、ページアクセスを促す。
【００５９】
なお、アクション決定部４３は、１つの修正案のみをＷｅｂサーバ６に提示することもできる。上記例の場合、アクション決定部４３は、修正量が少ないチャンクＢと、未出現の特徴「製品価格ページにアクセス」のみをＷｅｂサーバ６に提示する。
【００６０】
また、アクション決定部４３は、修正案ではなく、実行対象のアクションをＷｅｂサーバ６に提示することもできる。上記例の場合、アクション決定部４３は、製品価格ページへのアクセスを促すためのアクションとして「クーポン配信」を推奨行動としてＷｅｂサーバ６に提示する。
【００６１】
［学習処理の流れ］
図１３は、学習処理の流れを示すフローチャートである。図１３に示すように、管理者の指示受信や定期的なタイミングに到達するなどにより、学習開始のタイミングになると（Ｓ１０１：Ｙｅｓ）、学習処理部３０の取得部３１は、データベースサーバ７から各ユーザの行動履歴を取得する（Ｓ１０２）。
【００６２】
続いて、生成部３２は、各ユーザの行動履歴から、状態ごとの訓練データを生成する（Ｓ１０３）。そして、学習部３３は、訓練データを用いて、状態ごとの学習を実行し（Ｓ１０４）、状態ごとの判定モデルを生成する（Ｓ１０５）。
【００６３】
［判定処理の流れ］
図１４は、アクション判定処理の流れを示すフローチャートである。図１４に示すように、管理者等の指示により判定処理の開始タイミングになると（Ｓ２０１：Ｙｅｓ）、判定処理部４０の変換部４１は、Ｗｅｂサーバ６から判定対象のユーザログを取得する（Ｓ２０２）。続いて、変換部４１は、学習時と同様に、ユーザログを特徴量に変換する（Ｓ２０３）。
【００６４】
そして、判定部４２は、ユーザログの特徴量を、学習済みの各判定モデルに入力して各判定結果を取得する（Ｓ２０４）。続いて、判定部４２は、各判定結果から、ユーザの状態および各状態への状態遷移の容易性を判定する（Ｓ２０５）。その後、判定部４２は、ユーザの現状態および容易性に基づき、状態遷移先を判定する（Ｓ２０６）。
【００６５】
そして、アクション決定部４３は、次の遷移先と判定された状態に対応する判定モデルの出力結果から、修正対象のチャンクを特定し（Ｓ２０７）、修正対象のチャンクをＷｅｂサーバ６等に出力する（Ｓ２０８）。
【００６６】
［効果］
上述したように、モデル生成サーバ１０は、ユーザデータが与えられたときに、数ある状態の中から最終目的状態へと近く、状態の変更が最も容易なものを検出し、その状態が正と判断されるような特徴の修正を効果の高いものから順に列挙することができる。したがって、モデル生成サーバ１０は、ユーザ状態に遷移させるために、人手で行動履歴からアクションを考えることもなく、コストも低減でき、リアルタイムに処理することができるので、効率的にユーザの状態遷移を促すことができる。
【実施例２】
【００６７】
ところで、上記実施例１では、ユーザ状態が未知の場合を例にして説明したが、これに限定されるものではなく、ユーザ状態が既知の場合であっても同様に処理することができる。そこで、実施例２では、ユーザ状態が既知の場合に、次の状態へ遷移させるためのアクションを決定する例を説明する。なお、学習方法は、実施例１と同様である。
【００６８】
図１５は、実施例２にかかる状態が既知のときの判定手法の例を説明する図である。図１５に示すように、モデル生成サーバ１０は、状態（クラス）が「興味小」状態であるユーザのユーザログを特徴量「（トップページアクセス、セミナー参加、製品価格ページにアクセス、ページアクセス５回以上、ページアクセス２０回以上）＝（Ｙ，Ｙ，Ｎ，Ｙ，Ｎ）」に変換する。
【００６９】
続いて、モデル生成サーバ１０は、ユーザログの特徴量（Ｙ，Ｙ，Ｎ，Ｙ，Ｎ）を、興味小判定モデル、興味大判定モデル、購入意思判定モデル、他社と比較検討判定モデルの各学習済みの判定モデルに入力する。
【００７０】
そして、モデル生成サーバ１０は、各学習済みのモデルから、判定結果を取得する。ここでは、モデル生成サーバ１０は、興味小判定モデルからスコア「８０」、興味大判定モデルからスコア「３０」、購入意思判定モデルからスコア「２０」、他社と比較検討判定モデルからスコア「５」を取得する。
【００７１】
その後、モデル生成サーバ１０は、既知の状態である「興味小」状態の次の状態に対応する興味大判定モデルの判定結果を取得する。そして、モデル生成サーバ１０は、興味大判定モデルにより得られるチャンクのうち、未達成のチャンクとその特徴をＷｅｂサーバ６に提示する。このとき、モデル生成サーバ１０は、未達成のチャンクすべてを提示することもでき、未達成のチャンクのうち重みが最大のチャンクを提示することもできる。また、モデル生成サーバ１０は、既知の状態である「興味小」状態以外の各状態のスコアと未達成のチャンク一覧とをＷｅｂサーバ６に提示することもできる。
【００７２】
また、モデル生成サーバ１０は、既知の状態である「興味小」状態以外の各状態のスコアについて、どの行動（アクション）を修正すれば、その状態に遷移できるかを示す情報を提示することもできる。例えば、モデル生成サーバ１０は、購入意思判定モデルのスコアが「２０」であることから、「正」と判定できる閾値（例えば８０）までにはあと「６０」の重みが必要であると判定する。そして、モデル生成サーバ１０は、未達成のチャンクのうち、合計値が「６０」になるチャンクを選択する。その後、モデル生成サーバ１０は、選択したチャンクおよびそのチャンクの未達成の行動（特徴）を提示する。
【００７３】
上述したように、モデル生成サーバ１０は、現在の状態から各状態へ遷移するためのアクションを特定することができるので、ユーザの行動に合わせたアクションを行うこともできる。例えば、モデル生成サーバ１０は、数日間に跨ってアクセスしている慎重なユーザに対しては、最終目的状態により近い状態に一気に遷移させるように促すこともできる。また、モデル生成サーバ１０は、アクセスしている時間や日数が少ないユーザに対しては、段階的に最終目的状態に遷移させるように促すこともできる。
【実施例３】
【００７４】
ここで、上記各実施例で用いた仮説の生成および重みの算出について、公知の手法を採用することができるが、その一例を説明する。
【００７５】
［仮説の生成］
図１６は、訓練データの一例を示す説明図である。訓練データは、複数の事例ごとの教師付きデータであり、データの性質を説明するＡ〜Ｄの説明変数と、＋または−への分類結果（正解情報）である目的変数とを含む。
【００７６】
なお、訓練データ（Ｐ１〜Ｐ４、Ｎ１〜Ｎ３）は、データの性質を説明するＡ〜Ｄの説明変数（予測に用いる情報）と、＋または−へのＣｌａｓｓ（分類）を示す正解情報である目的変数（予測したい情報）とを含む。例えば、訓練データＰ１〜Ｐ４は、目的変数Ａ〜Ｄそれぞれが０または１であり、＋に分類されるデータである。同様に、訓練データＮ１〜Ｎ３は、目的変数Ａ〜Ｄそれぞれが０または１であり、−に分類されるデータである。
【００７７】
例えば、医療の分野などにおいて、検査データから検査結果を分類する予測モデルを生成するための訓練データ（Ｐ１〜Ｐ４、Ｎ１〜Ｎ３）の場合、Ａ〜Ｄの説明変数は検査項目ごとの検査値などに対応する。また、目的変数は、陽性／陰性などの検査結果に対応する。
【００７８】
次いで、モデル生成サーバ１０は、訓練データ（Ｐ１〜Ｐ４、Ｎ１〜Ｎ３）に含まれる説明変数について、それぞれとり得る値（使用しない＝＊、値＝１、値＝０）の組み合わせ、すなわち仮説を網羅的に列挙する。
【００７９】
なお、組み合わせる説明変数の数は、所定の数以下とするように制限（条件）を設けてもよい。例えば、Ａ〜Ｄの４説明変数の場合、組み合わせる説明変数の数を２以下とする（４説明変数のうち「使用しない＝＊」とするものを少なくとも２つ組み合わせる）ように制限してもよい。これにより、組み合わせが増大することを事前に抑止できる。
【００８０】
次いで、モデル生成サーバ１０は、列挙した組み合わせから所定の組み合わせを選択する。次いで、モデル生成サーバ１０は、訓練データ（Ｐ１〜Ｐ４、Ｎ１〜Ｎ３）の説明変数および目的変数をもとに、選択した組み合わせが訓練データ（Ｐ１〜Ｐ４、Ｎ１〜Ｎ３）のいずれかを分類し、特定の条件を満たす有効な組み合わせであるか否かを判定する。
【００８１】
図１７は、仮説の生成を説明する説明図である。図１７では、Ａ〜Ｄの４説明変数の全てが「＊」である組み合わせＣ０１からＣＤ（ＡＢは「＊」）である組み合わせＣ０９が一例として示されている。
【００８２】
図１７に示すように、モデル生成サーバ１０は、訓練データ（Ｐ１〜Ｐ４、Ｎ１〜Ｎ３）の説明変数をもとに、組み合わせＣ０１〜Ｃ０９それぞれの仮説（ルール）に該当する訓練データ（Ｐ１〜Ｐ４、Ｎ１〜Ｎ３）を列挙する。
【００８３】
例えば、組み合わせＣ０２のＤバー（残り３説明変数は「使用しない＝＊」）のルールには、訓練データＰ２、Ｎ１、Ｎ２が該当する。この組み合わせＣ０２のルール（Ｄバー）では、目的変数が＋である訓練データ（Ｐ２）と、目的変数が−である訓練データ（Ｎ１、Ｎ２）とが混在している。したがって、組み合わせＣ０２は、あるクラスに分類することを正しく説明する仮説としての可能性が低く、有効な組み合わせとは言えない。
【００８４】
ここで、組み合わせＣ０４のルール（Ｃバー）には、目的変数が＋である訓練データ（Ｐ１、Ｐ３、Ｐ４）が該当する。すなわち、組み合わせＣ０４は、＋のクラスに分類される訓練データ（Ｐ１、Ｐ３、Ｐ４）の数または割合が所定の値以上であり、＋のクラスに分類することを正しく説明するルールとしての可能性が高い。よって、モデル生成サーバ１０は、組み合わせＣ０４（Ｃバー）を、＋のクラスに分類する有効な組み合わせ（仮説）と判定する。同様に、モデル生成サーバ１０は、組み合わせＣ０５、Ｃ０６についても＋のクラスに分類する有効な組み合わせ（仮説）と判定する。
【００８５】
また、組み合わせＣ０８のルール（ＣＤバー）には、目的変数が−である訓練データ（Ｎ１、Ｎ２）が該当する。すなわち、組み合わせＣ０８は、−のクラスに分類される訓練データ（Ｎ１、Ｎ２）の数または割合が所定の値以上であり、−のクラスに分類することを正しく説明するルールとしての可能性が高い。よって、モデル生成サーバ１０は、組み合わせＣ０８（ＣＤバー）を、−のクラスに分類する有効な組み合わせ（仮説）と判定する。
【００８６】
有効な組み合わせと判定するための条件である、所定のクラスに分類される訓練データ（Ｐ１〜Ｐ４、Ｎ１〜Ｎ３）の数または割合は、任意に設定してもよい。例えば、訓練データにはノイズが混じる場合があることから、所定のクラス（例えば＋）とは逆のクラス（例えば−）を所定数許容するように設定してもよい。
【００８７】
一例として、訓練データ１つ分のノイズを許容する場合、組み合わせＣ０３（Ｄ）については、＋のクラスに分類する有効な組み合わせ（仮説）と判定される。同様に、組み合わせＣ０７（Ｃ）については、−のクラスに分類する有効な組み合わせ（仮説）と判定される。
【００８８】
また、モデル生成サーバ１０は、組み合わせが有効でない場合、選択した組み合わせを仮説集合に加えることなく、処理を進める。一方、モデル生成サーバ１０は、組み合わせが有効である場合、選択した組み合わせが仮説集合に含まれる他の仮説の特殊ケースになっているか否かを判定する。
【００８９】
例えば、図１７における組み合わせＣ０５のＣバーＤと、組み合わせＣ０６のＣバーＤバーとは、組み合わせＣ０４のＣバーに新たなリテラルを付加して作られるものである。このような組み合わせＣ０５、Ｃ０６について、モデル生成サーバ１０は、組み合わせＣ０４のＣバーの特殊ケースになっているものと判定する。
【００９０】
図１８は、仮説の生成を説明する説明図である。図１８に示すように、モデル生成サーバ１０は、Ｃバーの特殊ケースになっている組み合わせ（組み合わせＣ０５、Ｃ０６）は省略し、Ｃバーの組み合わせＣ０４ａを仮説集合として残すようにする。
【００９１】
特殊ケースになっていない場合、モデル生成サーバ１０は、選択した組み合わせを仮説集合データ２３の仮説集合に加える。次いで、モデル生成サーバ１０は、列挙した全ての組み合わせを選択済みであるか否かを判定する。上述した処理を繰り返すことで、訓練データの目的変数に応じた予測となることを正しく説明している可能性のある仮説をもれなく仮説集合に列挙する。
【００９２】
図１９は、仮説の生成を説明する説明図であり、具体的には図１７、１８の内容をカルノー図例で説明する図である。図１９に示すように、モデル生成サーバ１０は、Ａ（残り３説明変数は「使用しない＝＊」）の組み合わせ（Ｓ３１）、Ａバー（残り３説明変数は「使用しない＝＊」）の組み合わせ…の順に組み合わせを変更して有効な組み合わせを検討する（Ｓ３１〜Ｓ３５…）。
【００９３】
ここで、Ｓ３３の（Ｃバー）の組み合わせでは、目的変数が＋である訓練データ（Ｐ１、Ｐ３、Ｐ４）が該当する。すなわち、Ｓ３３では、＋のクラスに分類される訓練データ（Ｐ１、Ｐ３、Ｐ４）の数または割合が所定の値以上である。よって、Ｓ３３の（Ｃバー）の組み合わせを＋のクラスに分類する有効な組み合わせ（仮説）と判定する。なお、以下の処理では、（Ｃバー）にリテラルを加える組み合わせは除外する。
【００９４】
次いで、３説明変数を「使用しない＝＊」とする全ての組み合わせの検討後に、２説明変数を「使用しない＝＊」とする組み合わせの検討を開始する（Ｓ３４）。ここで、Ｓ３５の（ＡバーＢ）の組み合わせでは、目的変数が＋である訓練データ（Ｐ１、Ｐ２）が該当する。すなわち、Ｓ３５では、＋のクラスに分類される訓練データ（Ｐ１、Ｐ２）の数または割合が所定の値以上である。よって、Ｓ３５の（ＡバーＢ）の組み合わせを＋のクラスに分類する有効な組み合わせ（仮説）と判定する。
【００９５】
図２０は、生成された仮説の一例を示す説明図である。図２０に示すように、訓練データ（Ｐ１〜Ｐ４、Ｎ１〜Ｎ３）からは、分類結果が＋または−となる仮説Ｈ１〜Ｈ１１の仮説が生成され、仮説集合データとして記憶部等に格納される。
【００９６】
この仮説Ｈ１〜Ｈ１１のそれぞれは、訓練データ（Ｐ１〜Ｐ４、Ｎ１〜Ｎ３）の分類結果が＋または−となることについて正しく説明していることを要件とする独立した仮説である。よって、仮説Ｈ２と、仮説Ｈ６のように、相互には矛盾した仮説が含まれる場合がある。
【００９７】
また、訓練データ（Ｐ１〜Ｐ４、Ｎ１〜Ｎ３）に含まれていない入力データ（ＩＮ１、ＩＮ２、ＩＮ３）については、仮説Ｈ１〜Ｈ１１の中で適合する仮説から予測結果を得ることができる。
【００９８】
図２１は、入力データ（ＩＮ１、ＩＮ２、ＩＮ３）に適合する仮説を説明する説明図である。図２１に示すように、入力データＩＮ１については、仮説Ｈ２のＣＤバー⇒−、仮説Ｈ６のＢＤバー⇒＋、仮説Ｈ８のＡバーＢ⇒＋が適合する仮説である。また、入力データＩＮ２については、仮説Ｈ４のＢバーＤ⇒＋、仮説Ｈ５のＢバーＣ⇒−、仮説Ｈ７のＡバーＤ⇒＋、仮説Ｈ９のＡバーＢバー⇒−が適合する仮説である。また、入力データＩＮ３については、仮説Ｈ１のＣバー⇒＋、仮説Ｈ７のＡバーＤ⇒＋、仮説Ｈ８のＡバーＢ⇒＋が適合する仮説である。
【００９９】
［重みの算出］
モデル生成サーバ１０は、未選択の組み合わせがない場合、訓練データ（Ｐ１〜Ｐ４、Ｎ１〜Ｎ３）それぞれに対する、仮説集合データの仮説集合に含まれる各仮説（Ｈ１〜Ｈ１１）の成立有無に基づき、各仮説（Ｈ１〜Ｈ１１）の重みを算出し、算出結果を重みデータとして記憶部等に格納する。
【０１００】
モデル生成サーバ１０における重み算出は、例えば次の３つの手法のいずれであってもよい。
・どのルール（Ｈ１〜Ｈ１１）も重み１（ルールの数による多数決）とする。
・ルール（Ｈ１〜Ｈ１１）を支持（該当）する訓練データ（Ｐ１〜Ｐ４、Ｎ１〜Ｎ３）の数に応じた重みとする。
・訓練データ（Ｐ１〜Ｐ４、Ｎ１〜Ｎ３）を適用したロジスティック回帰による重み付けを行う。
【０１０１】
図２２は、ロジスティック回帰による重み付けを説明する説明図である。ロジスティック回帰では、図２２に示すように、モデル式に訓練データ（Ｐ１〜Ｐ４、Ｎ１〜Ｎ３）適用し、仮説Ｈ１〜Ｈ１１に関する重み（β１〜β１１）を求める。ここで、ロジスティック回帰などで得られた各仮説（Ｈ１〜Ｈ１１）の重みに応じて、仮説の選別を行ってもよい。
【０１０２】
上述した手法により、モデル生成サーバ１０は、訓練データから仮説を選定し、仮説に重みを算出し、各状態を判定する各判定モデルの学習を実行する。
【実施例４】
【０１０３】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。
【０１０４】
［学習］
例えば、学習処理を終了するタイミングは、所定数以上の訓練データを用いた学習が完了した時点や各モデルの損失が閾値未満となった時点など任意に設定することができる。また、学習手法も一般的な機械学習を用いることもできる。また、上記実施例で説明した特徴、チャンク、アクション内容などは、あくまで一例であり、任意に変更することができる。
【０１０５】
［処理対象］
上記実施例では、Ｗｅｂサーバ上のアクセスログを例にして説明したが、これに限定されるものではなく、例えば歩行ログ、システムログなどを用いることもできる。歩行ログの場合、状態としては疲れ小、疲れ大などを判定し、システムログの場合、状態としては通常動作、故障予兆、故障などを判定する。
【０１０６】
［判定モデル］
上記実施例では、複数の状態それぞれに対応した複数の判定モデルを用いた例を説明したが、これに限定されるものではない。例えば、「購入意思」状態などある状態に遷移させたいときは、ある状態に対応した判定モデルのみを用いることもできる。このとき、モデル生成サーバ１０は、当該判定モデルの判定結果として、当該判定モデルを特徴づける仮説一覧（重み、特徴）を表示することもできる。また、モデル生成サーバ１０は、閾値以上の重みを有する仮説について、不足する特徴のみをＷｅｂサーバ６等に提示することもできる。なお、各判定モデルは、学習モデルの一例である。
【０１０７】
［システム］
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【０１０８】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、学習処理部３０と判定処理部４０とを別々の装置で実現することもできる。なお、判定部４２は、入力部と特定部の一例であり、アクション決定部４３は、判定部の一例である。
【０１０９】
さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【０１１０】
［ハードウェア］
図２３は、ハードウェア構成例を説明する図である。図２３に示すように、モデル生成サーバ１０は、通信装置１０ａ、ＨＤＤ（Hard  Disk  Drive）１０ｂ、メモリ１０ｃ、プロセッサ１０ｄを有する。また、図２３に示した各部は、バス等で相互に接続される。
【０１１１】
通信装置１０ａは、ネットワークインタフェースカードなどであり、他のサーバとの通信を行う。ＨＤＤ１０ｂは、図３に示した機能を動作させるプログラムやＤＢを記憶する。
【０１１２】
プロセッサ１０ｄは、図３に示した各処理部と同様の処理を実行するプログラムをＨＤＤ１０ｂ等から読み出してメモリ１０ｃに展開することで、図３等で説明した各機能を実行するプロセスを動作させる。すなわち、このプロセスは、モデル生成サーバ１０が有する各処理部と同様の機能を実行する。具体的には、プロセッサ１０ｄは、学習処理部３０と判定処理部４０等と同様の機能を有するプログラムをＨＤＤ１０ｂ等から読み出す。そして、プロセッサ１０ｄは、学習処理部３０と判定処理部４０等と同様の処理を実行するプロセスを実行する。
【０１１３】
このようにモデル生成サーバ１０は、プログラムを読み出して実行することでモデル生成方法を実行する情報処理装置として動作する。また、モデル生成サーバ１０は、媒体読取装置によって記録媒体から上記プログラムを読み出し、読み出された上記プログラムを実行することで上記した実施例と同様の機能を実現することもできる。なお、この他の実施例でいうプログラムは、モデル生成サーバ１０によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
【符号の説明】
【０１１４】
１０  モデル生成サーバ
１１  通信部
１２  記憶部
１３  行動履歴ＤＢ
１４  訓練データＤＢ
１５  モデルＤＢ
２０  制御部
３０  学習処理部
３１  取得部
３２  生成部
３３  学習部
４０  判定処理部
４１  変換部
４２  判定部
４３  アクション決定部
【図１】
2020140540.tif 000003
【図２】
2020140540.tif 000004
【図３】
2020140540.tif 000005
【図４】
2020140540.tif 000006
【図５】
2020140540.tif 000007
【図６】
2020140540.tif 000008
【図７】
2020140540.tif 000009
【図８】
2020140540.tif 000010
【図９】
2020140540.tif 000011
【図１０】
2020140540.tif 000012
【図１１】
2020140540.tif 000013
【図１２】
2020140540.tif 000014
【図１３】
2020140540.tif 000015
【図１４】
2020140540.tif 000016
【図１５】
2020140540.tif 000017
【図１６】
2020140540.tif 000018
【図１７】
2020140540.tif 000019
【図１８】
2020140540.tif 000020
【図１９】
2020140540.tif 000021
【図２０】
2020140540.tif 000022
【図２１】
2020140540.tif 000023
【図２２】
2020140540.tif 000024
【図２３】
2020140540.tif 000025