(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024171912
(43)【公開日】2024-12-12
(54)【発明の名称】情報処理方法および情報処理プログラム
(51)【国際特許分類】
G06Q 10/04 20230101AFI20241205BHJP
【FI】
G06Q10/04
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2023089269
(22)【出願日】2023-05-30
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】100104190
【弁理士】
【氏名又は名称】酒井 昭徳
(72)【発明者】
【氏名】牧原 史弥
【テーマコード(参考)】
5L010
5L049
【Fターム(参考)】
5L010AA04
5L049AA04
(57)【要約】
【課題】選択主体が複数の選択肢の中からいずれの選択肢を選択するのかを精度よく推定可能な離散選択モデルを学習し易くすること。
【解決手段】情報処理装置は、過去に選択肢Jを選択したことがある選択主体が、クラス501に確定的に所属するよう、クラス501に所属する確率の期待値を設定する。情報処理装置は、過去に選択肢Jを選択したことがない選択主体が、クラス501と、クラス502とに確率的に所属し、選択肢Jの効果が大きいほど、クラス501に所属する確率が小さくなるよう、クラス501に所属する確率の期待値を設定する。情報処理装置は、それぞれの選択主体が過去に選択した選択肢を表す記録と、設定したそれぞれの期待値とに基づいて、選択モデル511と選択モデル512とのパラメータを推定する。
【選択図】
図5
【特許請求の範囲】
【請求項1】
複数の選択肢のうち、過去に選択された選択肢をそれぞれ表す複数の記録を取得し、
取得した前記複数の記録のうち、第1の選択肢を認知済みの選択主体に対応する1以上の記録のそれぞれの記録に対して、前記第1の選択肢を認知済みの第1のクラスに選択主体が所属する確率の期待値として、確定的に所属することを表す第1の値を設定し、
前記第1のクラスに選択主体が所属する確率の基準値と、前記複数の選択肢のそれぞれの選択肢の効果を表す数式とに基づいて、取得した前記複数の記録のうち、前記1以上の記録とは異なる残余の記録のそれぞれの記録に対して、前記期待値として、確率的に所属することを表す第2の値を設定し、
取得した前記複数の記録のそれぞれの記録と、取得した前記複数の記録のそれぞれの記録に対して設定した前記期待値とに基づいて、前記基準値と、前記数式に含まれるパラメータとを学習する、
処理をコンピュータが実行することを特徴とする情報処理方法。
【請求項2】
前記学習する処理は、
前記基準値と、前記数式のパラメータとを学習することにより、前記複数の選択肢のそれぞれの選択肢に関する特徴量が入力されたことに応じて前記数式を利用して前記複数の選択肢のそれぞれの選択肢が選択される確率を推定するモデルを学習する、ことを特徴とする請求項1に記載の情報処理方法。
【請求項3】
前記学習する処理は、
前記基準値と、前記数式のパラメータとを学習することにより、選択主体が前記第1のクラスに所属する場合に対して、前記複数の選択肢のそれぞれの選択肢に関する特徴量が入力されたことに応じて前記数式を利用して前記複数の選択肢のそれぞれの選択肢が選択される確率を推定する第1のモデルと、選択主体が前記第1のクラスに所属しない場合に対して、前記複数の選択肢のうち、前記第1の選択肢とは異なる残余の選択肢のそれぞれの選択肢に関する特徴量が入力されたことに応じて前記数式を利用して前記残余の選択肢のそれぞれの選択肢が選択される確率を推定する第2のモデルとを学習する、ことを特徴とする請求項2に記載の情報処理方法。
【請求項4】
前記第1の値を設定する処理は、
前記第1の選択肢を表す1以上の記録のそれぞれの記録に対して、前記期待値として、確定的に所属することを表す第1の値を設定する、ことを特徴とする請求項1または2に記載の情報処理方法。
【請求項5】
前記複数の記録は、それぞれ、選択主体の属性値を含み、
前記第1の値を設定する処理は、
前記第1の選択肢を表す記録と同一または類似の属性値を有する1以上の記録のそれぞれの記録に対して、前記期待値として、確定的に所属することを表す第1の値を設定する、ことを特徴とする請求項1または2に記載の情報処理方法。
【請求項6】
前記第2の値を設定する処理は、
前記基準値と、選択主体が前記第1のクラスに所属する場合における、前記複数の選択肢のそれぞれの選択肢の効果を表す数式と、選択主体が前記第1のクラスに所属しない場合における、前記複数の選択肢のうち、前記第1の選択肢とは異なる残余の選択肢のそれぞれの選択肢の効果を表す数式とに基づいて、前記残余の記録のそれぞれの記録に対して、前記期待値として、確率的に所属することを表す第2の値を設定する、ことを特徴とする請求項1または2に記載の情報処理方法。
【請求項7】
前記第2の値を設定する処理は、
前記基準値と、前記複数の選択肢のそれぞれの選択肢の効果を表す数式と、前記残余の記録のそれぞれの記録と前記第1の選択肢を表す記録との類似度とに基づいて、前記残余の記録のそれぞれの記録に対して、前記第1の選択肢を表す記録との類似度が大きいほど、前記期待値が大きくなるよう、前記期待値として、確率的に所属することを表す第2の値を設定する、ことを特徴とする請求項1または2に記載の情報処理方法。
【請求項8】
複数の選択肢のうち、過去に選択された選択肢をそれぞれ表す複数の記録を取得し、
取得した前記複数の記録のうち、第1の選択肢を認知済みの選択主体に対応する1以上の記録のそれぞれの記録に対して、前記第1の選択肢を認知済みの第1のクラスに選択主体が所属する確率の期待値として、確定的に所属することを表す第1の値を設定し、
前記第1のクラスに選択主体が所属する確率の基準値と、前記複数の選択肢のそれぞれの選択肢の効果を表す数式とに基づいて、取得した前記複数の記録のうち、前記1以上の記録とは異なる残余の記録のそれぞれの記録に対して、前記期待値として、確率的に所属することを表す第2の値を設定し、
取得した前記複数の記録のそれぞれの記録と、取得した前記複数の記録のそれぞれの記録に対して設定した前記期待値とに基づいて、前記基準値と、前記数式に含まれるパラメータとを学習する、
処理をコンピュータに実行させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理方法および情報処理プログラムに関する。
【背景技術】
【0002】
従来、選択主体が複数の選択肢の中からいずれの選択肢を選択するのかを推定する離散選択モデルが存在する。離散選択モデルは、具体的には、それぞれの選択肢の効果を表す数式を利用して、選択主体がいずれの選択肢を選択するのかを推定する機能を有する。それぞれ異なる選択主体が過去に複数の選択肢の中から選択した選択肢を表す複数の記録に基づいて、離散選択モデルを学習する技術がある。
【0003】
先行技術としては、例えば、ユーザが希望するテーマに合致または近いカテゴリに分類された画像の集合の中から、よい評価のコメントが付いた画像と、よい評価のコメントが付いた画像以外とを分類するものがある。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来技術では、選択主体が複数の選択肢の中からいずれの選択肢を選択するのかを精度よく推定可能な離散選択モデルを学習することが難しい。具体的には、複数の選択主体のうち、いずれかの選択肢を認知する第1の選択主体と、いずれかの選択肢を認知しない第2の選択主体とが混在する場合が考えられる。この場合、第1の選択主体が過去に選択した選択肢を表す第1の記録と、第2の選択主体が過去に選択した選択肢を表す第2の記録とを同列に扱ってしまうと、離散選択モデルを適切に学習することが難しくなってしまう。
【0006】
1つの側面では、本発明は、選択主体が複数の選択肢の中からいずれの選択肢を選択するのかを精度よく推定可能な離散選択モデルを学習し易くすることを目的とする。
【課題を解決するための手段】
【0007】
1つの実施態様によれば、複数の選択肢のうち、過去に選択された選択肢をそれぞれ表す複数の記録を取得し、取得した前記複数の記録のうち、第1の選択肢を認知済みの選択主体に対応する1以上の記録のそれぞれの記録に対して、前記第1の選択肢を認知済みの第1のクラスに選択主体が所属する確率の期待値として、確定的に所属することを表す第1の値を設定し、前記第1のクラスに選択主体が所属する確率の基準値と、前記複数の選択肢のそれぞれの選択肢の効果を表す数式とに基づいて、取得した前記複数の記録のうち、前記1以上の記録とは異なる残余の記録のそれぞれの記録に対して、前記期待値として、確率的に所属することを表す第2の値を設定し、取得した前記複数の記録のそれぞれの記録と、取得した前記複数の記録のそれぞれの記録に対して設定した前記期待値とに基づいて、前記基準値と、前記数式に含まれるパラメータとを学習する情報処理方法および情報処理プログラムが提案される。
【発明の効果】
【0008】
一態様によれば、選択主体が複数の選択肢の中からいずれの選択肢を選択するのかを精度よく推定可能な離散選択モデルを学習し易くすることが可能になる。
【図面の簡単な説明】
【0009】
【
図1】
図1は、実施の形態にかかる情報処理方法の一実施例を示す説明図である。
【
図2】
図2は、情報処理システム200の一例を示す説明図である。
【
図3】
図3は、情報処理装置100のハードウェア構成例を示すブロック図である。
【
図4】
図4は、情報処理装置100の機能的構成の一例を示すブロック図である。
【
図5】
図5は、情報処理装置100の動作の流れを示す説明図である。
【
図6】
図6は、情報処理装置100の第1の動作例を示す説明図(その1)である。
【
図7】
図7は、情報処理装置100の第1の動作例を示す説明図(その2)である。
【
図8】
図8は、情報処理装置100の第1の動作例を示す説明図(その3)である。
【
図9】
図9は、情報処理装置100の第1の動作例を示す説明図(その4)である。
【
図10】
図10は、情報処理装置100の第1の動作例を示す説明図(その5)である。
【
図11】
図11は、情報処理装置100の第1の動作例を示す説明図(その6)である。
【
図12】
図12は、情報処理装置100の第1の動作例を示す説明図(その7)である。
【
図13】
図13は、情報処理装置100の第1の動作例を示す説明図(その8)である。
【
図14】
図14は、第1学習処理手順の一例を示すフローチャートである。
【
図15】
図15は、第1予測処理手順の一例を示すフローチャートである。
【
図16】
図16は、情報処理装置100の第2の動作例を示す説明図(その1)である。
【
図17】
図17は、情報処理装置100の第2の動作例を示す説明図(その2)である。
【
図18】
図18は、情報処理装置100の第2の動作例を示す説明図(その3)である。
【
図19】
図19は、情報処理装置100の第2の動作例を示す説明図(その4)である。
【
図20】
図20は、情報処理装置100の第2の動作例を示す説明図(その5)である。
【
図21】
図21は、情報処理装置100の第2の動作例を示す説明図(その6)である。
【
図22】
図22は、第2予測処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【0010】
以下に、図面を参照して、本発明にかかる情報処理方法および情報処理プログラムの実施の形態を詳細に説明する。
【0011】
(実施の形態にかかる情報処理方法の一実施例)
図1は、実施の形態にかかる情報処理方法の一実施例を示す説明図である。情報処理装置100は、離散選択モデルを学習するためのコンピュータである。情報処理装置100は、例えば、サーバまたはPC(Personal Computer)などである。
【0012】
離散選択モデルは、選択主体が、複数の選択肢のそれぞれの選択肢を選択する確率を推定するモデルである。離散選択モデルは、例えば、それぞれの選択肢に関する特徴量が入力されたことに応じて、それぞれの選択肢の効果を表す数式を利用して、選択主体がそれぞれの選択肢を選択する確率を推定する機能を有する。離散選択モデルは、具体的には、多項ロジットモデル、ネストロジットモデル、または、混合ロジットモデルなどである。
【0013】
例えば、それぞれ異なる選択主体が過去に複数の選択肢の中から選択した選択肢を表す複数の記録に基づいて、離散選択モデルを学習することがある。記録は、例えば、選択主体が、過去に複数の選択肢の中からいずれかの選択肢を選択した際における、それぞれの選択肢に関する特徴量を含んでいてもよい。ここで、選択主体が複数の選択肢の中からいずれの選択肢を選択するのかを精度よく推定可能な離散選択モデルを学習することが望まれる。
【0014】
しかしながら、選択主体が複数の選択肢の中からいずれの選択肢を選択するのかを精度よく推定可能な離散選択モデルを学習することが難しい場合がある。例えば、複数の選択主体のうち、いずれかの選択肢を認知する第1の選択主体と、いずれかの選択肢を認知しない第2の選択主体とが混在する場合が考えられる。この場合、第1の選択主体が過去に選択した選択肢を表す第1の記録と、第2の選択主体が過去に選択した選択肢を表す第2の記録とを同列に扱ってしまうと、離散選択モデルを適切に学習することが難しくなる。
【0015】
例えば、第1の選択肢を認知する第1の選択主体が過去に選択した第2の選択肢を表す記録は、第1の選択主体にとって、第1の選択肢の効果が第2の選択肢の効果よりも相対的に小さいことを表す記録として扱われてもよいと考えられる。一方で、第1の選択肢を認知しない第2の選択主体が過去に選択した第2の選択肢を表す記録は、第2の選択主体にとって、第1の選択肢の効果が第2の選択肢の効果よりも相対的に小さいことを表す記録として扱われることは好ましくないと考えられる。
【0016】
例えば、従来では、すべての選択主体がすべての選択肢を認知することを前提に、それぞれの選択肢に関して、どのような特徴量が現れる場合に、選択主体が、いずれの選択肢を選択する傾向があるのかを、学習する離散選択モデルに反映することになる。従って、選択主体が、いずれかの選択肢を認知しないため、当該いずれかの選択肢に関する特徴量に拘らず、当該いずれかの選択肢を選択することができなかったことを、学習する離散選択モデルに反映することができない。第1の選択肢を認知しない選択主体が過去に選択した第2の選択肢を表す記録に基づいて、離散選択モデルに、選択主体にとって、第1の選択肢の効果が第2の選択肢の効果よりも相対的に小さいという、誤った認定が反映されてしまうことがある。このため、選択主体が複数の選択肢の中からいずれの選択肢を選択するのかを精度よく推定可能な離散選択モデルを学習することが難しい。例えば、学習した離散選択モデルが、いずれかの選択肢の効果を実体よりも小さく見積もった誤った状態になってしまうことがある。
【0017】
具体的には、複数の選択肢が、それぞれ、移動手段を表す選択肢であることが考えられる。複数の選択肢は、例えば、徒歩、自転車、自動車、および、電動キックボードなどである。自転車は、例えば、レンタル可能であるとする。自動車は、例えば、タクシーであるとする。電動キックボードは、例えば、レンタル可能であるとする。
【0018】
ここで、選択主体となる移動者が、移動手段を選択しようとする事例に関して、すべての移動者が、徒歩、自転車、自動車、および、電動キックボードを、利用可能な移動手段として認知していることを前提として、離散選択モデルを学習することが考えられる。ここで、いずれかの選択主体が、電動キックボードを利用可能な移動手段として認知していないことがある。この場合、電動キックボードの効果を実体よりも小さく見積もった誤った状態の離散選択モデルを学習してしまうことがある。
【0019】
そこで、本実施の形態では、選択主体が複数の選択肢の中からいずれの選択肢を選択するのかを精度よく推定可能な離散選択モデルを学習し易くすることができる情報処理方法について説明する。
【0020】
図1において、複数の選択肢110が存在する。選択肢110は、例えば、移動手段を表す。過去に、複数の選択主体のそれぞれの選択主体が、複数の選択肢110のいずれかの選択肢110を選択したとする。選択主体は、例えば、移動者である。複数の選択肢110は、例えば、第1の選択肢111を含むとする。
【0021】
ここで、複数の選択肢110のうち、過去に選択された選択肢110をそれぞれ表す複数の記録120が存在するとする。複数の記録120は、例えば、同一の選択主体が過去に選択した選択肢110を表す2以上の記録120を含んでいてもよい。複数の記録120は、例えば、異なる選択主体が過去に選択した選択肢110を表す2以上の記録120を含んでいてもよい。
【0022】
情報処理装置100は、例えば、第1の選択肢111を認知済みの第1のクラス130に選択主体が所属する確率の基準値を有する。情報処理装置100は、例えば、複数の選択肢110のそれぞれの選択肢110の効果を表す数式を有する。数式は、例えば、選択主体が、複数の選択肢のそれぞれの選択肢を選択する確率を推定するモデルを形成する要素となる。数式は、具体的には、それぞれの選択肢に関する特徴量が入力されたことに応じて、選択主体が、それぞれの選択肢を選択する確率を推定するモデルを形成する要素となる。
【0023】
(1-1)情報処理装置100は、複数の記録120を取得する。情報処理装置100は、例えば、複数の記録120を、他のコンピュータから受信することにより取得する。情報処理装置100は、例えば、利用者の操作入力に基づき、複数の記録120の入力を受け付けることにより、複数の記録120を取得してもよい。
【0024】
(1-2)情報処理装置100は、取得した複数の記録120のうち、第1の選択肢111を認知済みの選択主体に対応する1以上の記録121を特定する。情報処理装置100は、例えば、複数の記録120のうち、第1の選択肢111を選択したことがある選択主体が選択した選択肢をそれぞれ表す1以上の記録121を特定する。情報処理装置100は、特定した1以上の記録121のそれぞれの記録121に対して、第1のクラス130に選択主体が所属する確率の期待値として、確定的に所属することを表す第1の値を設定する。
【0025】
(1-3)情報処理装置100は、取得した複数の記録120のうち、1以上の記録121とは異なる残余の記録122を特定する。情報処理装置100は、基準値と数式とに基づいて、特定した残余の記録122のそれぞれの記録122に対して、期待値として、確率的に所属することを表す第2の値を設定する。
【0026】
これにより、情報処理装置100は、選択主体が、第1の選択肢111を認知済みであるか否かに応じて、記録121と、記録122とを区別して扱うことができる。情報処理装置100は、記録122に関して、選択主体が、第1の選択肢111を認知済みである場合と、第1の選択肢111を認知済みではない場合とを両方とも考慮することができる。
【0027】
(1-4)情報処理装置100は、取得した複数の記録120のそれぞれの記録120と、期待値とに基づいて、基準値と、数式に含まれるパラメータとを学習する。情報処理装置100は、設定した数式のパラメータに基づいて、複数の選択肢のそれぞれの選択肢を選択する確率を推定するモデルを学習する。モデルは、例えば、離散選択モデルである。
【0028】
これにより、情報処理装置100は、基準値と、数式に含まれるパラメータとを、選択主体が、第1の選択肢111を認知済みである場合と、第1の選択肢111を認知済みではない場合とを考慮した適切な値に設定することができる。情報処理装置100は、設定した数式のパラメータに基づいて、選択主体が、複数の選択肢のそれぞれの選択肢を選択する確率を推定するモデルを形成する要素となる数式を適切に設定することができる。このため、情報処理装置100は、選択主体が、複数の選択肢のそれぞれの選択肢を選択する確率を精度よく推定するモデルを学習し易くすることができる。情報処理装置100は、例えば、選択行為を実施する選択主体の状況または事情などの実体に沿ったモデルを学習し易くすることができる。
【0029】
ここでは、情報処理装置100が、モデルを学習する場合について説明したが、これに限らない。例えば、他のコンピュータが、モデルを学習する場合があってもよい。この場合、情報処理装置100は、設定した数式のパラメータを、他のコンピュータに送信する。
【0030】
ここでは、情報処理装置100が、単独のコンピュータによって実現される場合について説明したが、これに限らない。例えば、情報処理装置100としての機能が、複数のコンピュータによって実現される場合があってもよい。具体的には、クラウド上に、情報処理装置100としての機能が実現される場合があってもよい。
【0031】
(情報処理システム200の一例)
次に、
図2を用いて、
図1に示した情報処理装置100を適用した、情報処理システム200の一例について説明する。
【0032】
図2は、情報処理システム200の一例を示す説明図である。
図2において、情報処理システム200は、情報処理装置100と、クライアント装置201とを含む。
【0033】
情報処理システム200において、情報処理装置100とクライアント装置201とは、有線または無線のネットワーク210を介して接続される。ネットワーク210は、例えば、LAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどである。
【0034】
情報処理装置100は、選択主体が、複数の選択肢のそれぞれの選択肢を選択する確率を推定するモデルを学習し易くするためのコンピュータである。モデルは、例えば、離散選択モデルである。選択主体は、例えば、移動者である。選択肢は、例えば、移動手段である。
【0035】
モデルは、例えば、複数の選択肢のそれぞれの選択肢の効果を表す数式を含む。効果は、選択肢が移動手段であれば、移動手段にかかるコストに対応する。コストは、金銭的、時間的、または、体力的なコストである。数式は、例えば、それぞれの選択肢に関する特徴量に基づいて、複数の選択肢のそれぞれの選択肢の効果の大きさを表す指標値を算出する機能を有する。指標値は、例えば、コストが小さいほど値が大きくなる。
【0036】
情報処理装置100は、複数の選択肢のうち、第1の選択肢を認知済みの第1のクラスに所属する確率の基準値を有する。基準値は、例えば、事前確率である。情報処理装置100は、複数の選択肢のそれぞれの選択肢の効果を表す数式を有する。情報処理装置100は、複数の選択肢のうち、選択主体が過去に選択した選択肢をそれぞれ表す複数の記録を有する。
【0037】
情報処理装置100は、複数の記録のうち、第1の選択肢を認知済みの選択主体に対応する1以上の記録のそれぞれの記録に対して、第1のクラスに選択主体が所属する確率の期待値として、確定的に所属することを表す第1の値を設定する。情報処理装置100は、基準値と数式とに基づいて、残余の記録のそれぞれの記録に対して、第1のクラスに選択主体が所属する確率の期待値として、確率的に所属することを表す第2の値を設定する。情報処理装置100は、複数の記録のそれぞれの記録と、期待値とに基づいて、基準値と、数式に含まれるパラメータとを学習する。情報処理装置100は、設定した数式のパラメータに基づいて、複数の選択肢のそれぞれの選択肢を選択する確率を推定するモデルを学習する。
【0038】
情報処理装置100は、それぞれの選択肢に関する特徴量を含む処理依頼を、クライアント装置201から受信する。情報処理装置100は、処理依頼に含まれるそれぞれの選択肢に関する特徴量に基づいて、学習したモデルを利用して、選択主体がそれぞれの選択肢を選択する確率を推定する。情報処理装置100は、推定したそれぞれの選択肢を選択する確率に基づいて、通知情報を生成する。通知情報は、例えば、推定したそれぞれの選択肢を選択する確率に応じて順序付けた複数の選択肢を示す情報である。情報処理装置100は、生成した通知情報を、クライアント装置201に送信する。情報処理装置100は、例えば、サーバまたはPCなどである。
【0039】
クライアント装置201は、選択主体によって利用されるコンピュータである。クライアント装置201は、選択主体の操作入力に基づき、それぞれの選択肢に関する特徴量を取得する。クライアント装置201は、それぞれの選択肢に関する特徴量を含む処理依頼を生成し、情報処理装置100に送信する。クライアント装置201は、通知情報を、情報処理装置100から受信する。クライアント装置201は、受信した通知情報を、選択主体が参照可能に出力する。クライアント装置201は、例えば、PC、タブレット端末、または、スマートフォンなどである。
【0040】
ここでは、情報処理装置100が、クライアント装置201とは異なるコンピュータである場合について説明したが、これに限らない。例えば、情報処理装置100が、クライアント装置201としての機能を有し、クライアント装置201としても動作する場合があってもよい。
【0041】
(情報処理装置100のハードウェア構成例)
次に、
図3を用いて、情報処理装置100のハードウェア構成例について説明する。
【0042】
図3は、情報処理装置100のハードウェア構成例を示すブロック図である。
図3において、情報処理装置100は、CPU(Central Processing Unit)301と、メモリ302と、ネットワークI/F(Interface)303と、記録媒体I/F304と、記録媒体305とを有する。また、各構成部は、バス300によってそれぞれ接続される。
【0043】
ここで、CPU301は、情報処理装置100の全体の制御を司る。メモリ302は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU301のワークエリアとして使用される。メモリ302に記憶されるプログラムは、CPU301にロードされることにより、コーディングされている処理をCPU301に実行させる。
【0044】
ネットワークI/F303は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して他のコンピュータに接続される。そして、ネットワークI/F303は、ネットワーク210と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。ネットワークI/F303は、例えば、モデムやLANアダプタなどである。
【0045】
記録媒体I/F304は、CPU301の制御に従って記録媒体305に対するデータのリード/ライトを制御する。記録媒体I/F304は、例えば、ディスクドライブ、SSD(Solid State Drive)、USB(Universal Serial Bus)ポートなどである。記録媒体305は、記録媒体I/F304の制御で書き込まれたデータを記憶する不揮発メモリである。記録媒体305は、例えば、ディスク、半導体メモリ、USBメモリなどである。記録媒体305は、情報処理装置100から着脱可能であってもよい。
【0046】
情報処理装置100は、上述した構成部の他、例えば、キーボード、マウス、ディスプレイ、プリンタ、スキャナ、マイク、スピーカーなどを有してもよい。また、情報処理装置100は、記録媒体I/F304や記録媒体305を複数有していてもよい。また、情報処理装置100は、記録媒体I/F304や記録媒体305を有していなくてもよい。
【0047】
(クライアント装置201のハードウェア構成例)
クライアント装置201のハードウェア構成例は、具体的には、
図3に示した情報処理装置100のハードウェア構成例と同様であるため、説明を省略する。
【0048】
(情報処理装置100の機能的構成の一例)
次に、
図4を用いて、情報処理装置100の機能的構成の一例について説明する。
【0049】
図4は、情報処理装置100の機能的構成の一例を示すブロック図である。情報処理装置100は、記憶部400と、取得部401と、第1設定部402と、第2設定部403と、学習部404と、予測部405と、出力部406とを含む。
【0050】
記憶部400は、例えば、
図3に示したメモリ302や記録媒体305などの記憶領域によって実現される。以下では、記憶部400が、情報処理装置100に含まれる場合について説明するが、これに限らない。例えば、記憶部400が、情報処理装置100とは異なる装置に含まれ、記憶部400の記憶内容が情報処理装置100から参照可能である場合があってもよい。
【0051】
取得部401~出力部406は、制御部の一例として機能する。取得部401~出力部406は、具体的には、例えば、
図3に示したメモリ302や記録媒体305などの記憶領域に記憶されたプログラムをCPU301に実行させることにより、または、ネットワークI/F303により、その機能を実現する。各機能部の処理結果は、例えば、
図3に示したメモリ302や記録媒体305などの記憶領域に記憶される。
【0052】
記憶部400は、各機能部の処理において参照され、または更新される各種情報を記憶する。記憶部400は、例えば、複数の記録を記憶する。記録は、例えば、複数の選択肢のうち、選択主体が過去に選択した選択肢を表す情報である。選択肢は、例えば、移動手段を表す。複数の選択肢は、例えば、第1の選択肢を含む。
【0053】
記録は、例えば、選択主体の属性値を含んでいてもよい。属性値は、例えば、選択主体を識別する識別子である。属性値は、例えば、選択主体の年齢、性別、または、所属などであってもよい。属性値は、例えば、選択主体の所在、または、現在の時刻などであってもよい。記録は、例えば、取得部401によって取得される。記録は、例えば、予め利用者によって設定されていてもよい。
【0054】
記憶部400は、例えば、第1のクラスに選択主体が所属する確率の基準値を記憶する。第1のクラスは、例えば、第1の選択肢を認知済みであることを表す。第1のクラスは、第1の選択肢を認知済みの選択主体を分類するクラスである。基準値は、例えば、取得部401によって取得される。基準値は、例えば、予め利用者によって設定されていてもよい。
【0055】
記憶部400は、例えば、複数の選択肢のそれぞれの選択肢の効果を表す数式を記憶する。数式は、例えば、選択主体が、複数の選択肢のそれぞれの選択肢を選択する確率を推定するモデルを形成する要素となる。モデルは、例えば、離散選択モデルである。数式は、複数の選択肢のそれぞれの選択肢の効果を示す指標値を算出する機能を有する。数式は、より具体的には、それぞれの選択肢に関する特徴量に基づいて、複数の選択肢のそれぞれの選択肢の効果を示す指標値を算出する機能を有する。数式は、より具体的には、それぞれの選択肢に関する特徴量と、選択主体の属性値とに基づいて、複数の選択肢のそれぞれの選択肢の効果を示す指標値を算出する機能を有していてもよい。
【0056】
記憶部400は、具体的には、選択主体が第1のクラスに所属する場合における、複数の選択肢のそれぞれの選択肢の効果を表す第1の数式を記憶する。記憶部400は、具体的には、選択主体が第1のクラスに所属しない場合における、複数の選択肢のうち、第1の選択肢とは異なる残余の選択肢のそれぞれの選択肢の効果を表す第2の数式を記憶する。数式は、例えば、取得部401によって取得される。数式は、例えば、予め利用者によって設定されていてもよい。
【0057】
記憶部400は、例えば、それぞれの選択肢に関する特徴量を記憶する。特徴量は、例えば、取得部401によって取得される。特徴量は、例えば、予め利用者によって設定されていてもよい。
【0058】
記憶部400は、例えば、選択主体の属性値を記憶する。属性値は、例えば、取得部401によって取得される。属性値は、例えば、予め利用者によって設定されていてもよい。属性値は、例えば、記録に含まれていてもよい。
【0059】
記憶部400は、例えば、選択主体が、複数の選択肢のそれぞれの選択肢を選択する確率を推定するモデルを記憶する。モデルは、例えば、学習部404によって生成される。
【0060】
取得部401は、各機能部の処理に用いられる各種情報を取得する。取得部401は、取得した各種情報を、記憶部400に記憶し、または、各機能部に出力する。また、取得部401は、記憶部400に記憶しておいた各種情報を、各機能部に出力してもよい。取得部401は、例えば、利用者の操作入力に基づき、各種情報を取得する。取得部401は、例えば、情報処理装置100とは異なる装置から、各種情報を受信してもよい。
【0061】
取得部401は、例えば、複数の記録を取得する。取得部401は、具体的には、複数の記録を、他のコンピュータから受信することにより取得する。取得部401は、具体的には、利用者の操作入力に基づき、複数の記録の入力を受け付けることにより、複数の記録を取得してもよい。
【0062】
取得部401は、例えば、第1のクラスに選択主体が所属する確率の基準値を取得する。取得部401は、具体的には、基準値を、他のコンピュータから受信することにより取得する。取得部401は、具体的には、利用者の操作入力に基づき、基準値の入力を受け付けることにより、基準値を取得してもよい。
【0063】
取得部401は、例えば、複数の選択肢のそれぞれの選択肢の効果を表す数式を取得する。取得部401は、具体的には、数式を、他のコンピュータから受信することにより取得する。取得部401は、具体的には、利用者の操作入力に基づき、数式の入力を受け付けることにより、数式を取得してもよい。
【0064】
取得部401は、例えば、それぞれの選択肢に関する特徴量を記憶する。取得部401は、具体的には、特徴量を、他のコンピュータから受信することにより取得する。取得部401は、具体的には、利用者の操作入力に基づき、特徴量の入力を受け付けることにより、特徴量を取得してもよい。
【0065】
取得部401は、例えば、選択主体の属性値を記憶する。取得部401は、具体的には、属性値を、他のコンピュータから受信することにより取得する。取得部401は、具体的には、利用者の操作入力に基づき、属性値の入力を受け付けることにより、属性値を取得してもよい。
【0066】
取得部401は、モデルを学習することを要求する学習依頼を取得する。取得部401は、具体的には、学習依頼を、他のコンピュータから受信することにより取得する。取得部401は、具体的には、利用者の操作入力に基づき、学習依頼の入力を受け付けることにより、学習依頼を取得してもよい。
【0067】
取得部401は、モデルを利用することを要求する予測依頼を取得する。予測依頼は、例えば、選択主体がそれぞれの選択肢を選択する確率を推定することを要求する。予測依頼は、例えば、選択主体の属性値を含んでいてもよい。予測依頼は、それぞれの選択肢に関する特徴量を含んでいてもよい。取得部401は、具体的には、予測依頼を、他のコンピュータから受信することにより取得する。取得部401は、具体的には、利用者の操作入力に基づき、予測依頼の入力を受け付けることにより、予測依頼を取得してもよい。
【0068】
取得部401は、例えば、予測依頼に含まれる選択主体の属性値を抽出することにより、選択主体の属性値を取得してもよい。取得部401は、例えば、予測依頼に含まれるそれぞれの選択肢の特徴量を抽出することにより、それぞれの選択肢の特徴量を取得してもよい。
【0069】
取得部401は、いずれかの機能部の処理を開始する開始トリガーを受け付けてもよい。開始トリガーは、例えば、利用者による所定の操作入力があったことである。開始トリガーは、例えば、他のコンピュータから、所定の情報を受信したことであってもよい。開始トリガーは、例えば、いずれかの機能部が所定の情報を出力したことであってもよい。取得部401は、具体的には、学習依頼を取得したことを、第1設定部402と、第2設定部403と、学習部404との処理を開始する開始トリガーとして受け付けてもよい。取得部401は、具体的には、予測依頼を取得したことを、予測部405の処理を開始する開始トリガーとして受け付けてもよい。
【0070】
第1設定部402は、取得部401で取得した複数の記録のうち、第1の選択肢を認知済みの選択主体に対応する1以上の記録を特定する。1以上の記録は、例えば、第1の選択肢を表す記録の集まりである。1以上の記録は、例えば、少なくとも過去に1回以上第1の選択肢を選択したことがあるそれぞれの選択主体が選択した、第1の選択肢とは異なる他の選択肢を表す記録を含んでいてもよい。1以上の記録は、例えば、少なくとも過去に1回以上第1の選択肢を選択したことがあるそれぞれの選択主体と属性値が同一または類似する他の選択主体が選択した、第1の選択肢とは異なる他の選択肢を表す記録を含んでいてもよい。これにより、第1設定部402は、選択主体が第1の選択肢を認知済みの状況の記録として扱うことが好ましい1以上の記録を特定することができる。
【0071】
第1設定部402は、特定した1以上の記録のそれぞれの記録に対して、第1のクラスに選択主体が所属する確率の期待値として、確定的に所属することを表す第1の値を設定する。例えば、確率が0~1の値であれば、第1の値は、1である。これにより、第1設定部402は、特定した1以上の記録に基づいて、選択主体が第1の選択肢を認知済みである場合に選択主体がいずれの選択肢を選択する傾向があるのかを、数式のパラメータを学習する際に適切に考慮可能にすることができる。
【0072】
第2設定部403は、取得部401で取得した複数の記録のうち、第1の選択肢を認知済みの選択主体に対応する1以上の記録とは異なる残余の記録を特定する。これにより、第2設定部403は、選択主体が第1の選択肢を認知済みである可能性と、選択主体が第1の選択肢を認知済みではない可能性とが混在する状況の記録として扱うことが好ましい残余の記録を特定することができる。
【0073】
第2設定部403は、基準値と数式とに基づいて、特定した残余の記録のそれぞれの記録に対して、第1のクラスに選択主体が所属する確率の期待値として、確率的に所属することを表す第2の値を設定する。例えば、確率が0~1であれば、第2の値は、0以上1未満である。第2の値は、0以上1以下であってもよい。これにより、第1設定部402は、特定した残余の記録に基づいて、選択主体が第1の選択肢を認知済みではない可能性がある場合に選択主体がいずれの選択肢を選択する傾向があるのかを、数式のパラメータを学習する際に適切に考慮可能にすることができる。
【0074】
第2設定部403は、例えば、残余の記録のそれぞれの記録と第1の選択肢を表す記録との類似度を算出してもよい。第2設定部403は、例えば、基準値と数式とに基づいて、残余の記録のそれぞれの記録に対して、算出した類似度が大きいほど期待値が大きくなるよう、期待値として、確率的に所属することを表す第2の値を設定する。これにより、第1設定部402は、特定した残余の記録に基づいて、選択主体が第1の選択肢を認知済みではない可能性がある場合に選択主体がいずれの選択肢を選択する傾向があるのかを、数式のパラメータを学習する際に適切に考慮可能にすることができる。
【0075】
学習部404は、取得部401で取得したそれぞれの記録と、期待値とに基づいて、基準値と、数式に含まれるパラメータとを学習する。学習部404は、例えば、取得部401で取得したそれぞれの記録と、期待値とに基づいて、基準値と、第1の数式に含まれるパラメータと、第2の数式に含まれるパラメータとを学習する。これにより、学習部404は、選択主体が第1の選択肢を認知済みではない可能性があることを考慮して、基準値と、数式に含まれるパラメータとを精度よく学習することができる。
【0076】
学習部404は、基準値と、数式のパラメータとを学習することにより、複数の選択肢のそれぞれの選択肢に関する特徴量が入力されたことに応じて数式を利用して複数の選択肢のそれぞれの選択肢が選択される確率を推定するモデルを学習する。これにより、学習部404は、選択主体が第1の選択肢を認知済みではない可能性があることを考慮して、モデルを精度よく学習することができる。
【0077】
学習部404は、例えば、基準値と、第1の数式のパラメータとを学習することにより、選択主体が第1のクラスに所属する場合に対して、第1のモデルを学習する。第1のモデルは、例えば、複数の選択肢のそれぞれの選択肢に関する特徴量が入力されたことに応じて、第1の数式を利用して複数の選択肢のそれぞれの選択肢が選択される確率を推定する。これにより、学習部404は、選択主体が第1の選択肢を認知済みである場合について、第1のモデルを精度よく学習することができる。
【0078】
学習部404は、例えば、基準値と、第2の数式のパラメータとを学習することにより、選択主体が第1のクラスに所属しない場合に対して、第2のモデルを学習する。第2のモデルは、例えば、複数の選択肢のうち、第1の選択肢とは異なる残余の選択肢のそれぞれの選択肢に関する特徴量が入力されたことに応じて、第2の数式を利用して残余の選択肢のそれぞれの選択肢が選択される確率を推定する。これにより、学習部404は、選択主体が第1の選択肢を認知済みであるか否かが明確ではない場合について、第2のモデルを精度よく学習することができる。
【0079】
予測部405は、予測依頼に基づいて、選択主体の属性値と、それぞれの選択肢に関する特徴量とを取得する。予測部405は、例えば、選択主体の属性値と、それぞれの選択肢に関する特徴量とに基づいて、学習部404で学習したモデルを利用して、それぞれの選択肢が選択される確率を推定する。これにより、予測部405は、それぞれの選択肢が選択される確率を精度よく推定することができる。
【0080】
予測部405は、具体的には、選択主体の属性値と、それぞれの選択肢に関する特徴量とに基づいて、学習部404で学習した第1のモデルを利用して、それぞれの選択肢が選択される第1の確率を推定してもよい。予測部405は、具体的には、選択主体の属性値と、それぞれの選択肢に関する特徴量とに基づいて、学習部404で学習した第2のモデルを利用して、それぞれの選択肢が選択される第2の確率を推定してもよい。これにより、予測部405は、それぞれの選択肢が選択される確率を精度よく推定することができる。
【0081】
出力部406は、少なくともいずれかの機能部の処理結果を出力する。出力形式は、例えば、ディスプレイへの表示、プリンタへの印刷出力、ネットワークI/F303による外部装置への送信、または、メモリ302や記録媒体305などの記憶領域への記憶である。これにより、出力部406は、各機能部の処理結果を利用者に通知可能にし、情報処理装置100の管理や運用、例えば、情報処理装置100の設定値の更新などを支援することができ、情報処理装置100の利便性の向上を図ることができる。
【0082】
出力部406は、例えば、学習部404で学習したモデルを出力する。出力部406は、具体的には、モデルを、他のコンピュータに送信する。出力部406は、具体的には、モデルを、利用者が参照可能に出力する。これにより、出力部406は、モデルを外部で利用可能にすることができる。
【0083】
出力部406は、例えば、予測部405で推定した確率を出力する。出力部406は、具体的には、確率を、他のコンピュータに送信する。出力部406は、具体的には、確率を、利用者が参照可能に出力する。これにより、出力部406は、確率を外部で利用可能にすることができる。
【0084】
(情報処理装置100の動作の流れ)
次に、
図5を用いて、情報処理装置100の動作の流れについて説明する。
【0085】
図5は、情報処理装置100の動作の流れを示す説明図である。
図5において、情報処理装置100は、複数の選択肢のうち、選択主体が認知しないことがある選択肢Jを記憶する。選択肢Jは、例えば、予め利用者によって設定される。情報処理装置100は、過去に選択肢Jを選択したことがある選択主体が、選択肢Jを認知するクラス501に確定的に所属するよう、当該選択主体が、クラス501に所属する確率の期待値を設定する。
【0086】
情報処理装置100は、過去に選択肢Jを選択したことがない選択主体が、選択肢Jを認知するクラス501と、選択肢Jを認知しないクラス502とに確率的に所属するよう、当該選択主体が、クラス501に所属する確率の期待値を設定する。情報処理装置100は、例えば、選択肢Jの効果が大きいほど、過去に選択肢Jを選択したことがない選択主体が、クラス501に所属する確率が小さくなるよう、当該選択主体が、クラス501に所属する確率の期待値を設定する。
【0087】
情報処理装置100は、それぞれの選択主体が過去に選択した選択肢を表す記録と、設定したそれぞれの期待値とに基づいて、選択モデル511と選択モデル512とのパラメータを推定する。選択モデル511は、例えば、選択肢Jを、選択可能な選択肢集合に含む場合に対応する。選択モデル512は、例えば、選択肢Jを、選択可能な選択肢集合に含まない場合に対応する。選択モデル511と選択モデル512とのパラメータを推定する一例については、
図6~
図13を用いて後述する第1動作例、または、
図16~
図21を用いて後述する第2動作例に示す。
【0088】
(情報処理装置100の第1動作例)
次に、
図6~
図13を用いて、情報処理装置100の第1動作例について説明する。
【0089】
図6~
図13は、情報処理装置100の第1の動作例を示す説明図である。
図6は、第1動作例における情報処理装置100が選択モデルを学習する第1学習処理を実現する機能的構成の具体例を示す。
図6において、情報処理装置100は、取得部601と、記録部602と、モデル設定部603と、認知フラグ付与部604と、学習用データ生成部605と、学習処理部606とを含む。
【0090】
取得部601は、いずれかの選択主体の1回の選択行為を識別する観測番号と、当該選択行為の状況におけるそれぞれの選択肢の選択肢属性と、当該選択行為において選択された選択肢とを含む選択履歴データを取得する。選択肢属性は、例えば、時間的または金銭的なコストなどである。選択履歴データは、選択主体に関する個人情報を含んでいてもよい。個人情報は、例えば、選択主体を識別する個人番号を含んでいてもよい。個人情報は、例えば、選択主体の特徴を表す個人属性を含んでいてもよい。個人属性は、例えば、年齢、性別、所在、または、所属などである。取得部601は、選択履歴データを、記録部602に送信する。
【0091】
記録部602は、選択履歴データを、取得部601から受信する。記録部602は、受信した選択履歴データを、
図7を用いて後述する選択履歴データ管理テーブル700に記録する。ここで、
図7の説明に移行し、選択履歴データ管理テーブル700の記憶内容の一例について説明する。選択履歴データ管理テーブル700は、例えば、
図3に示した情報処理装置100のメモリ302や記録媒体305などの記憶領域により実現される。
【0092】
図7は、選択履歴データ管理テーブル700の記憶内容の一例を示す。
図7に示すように、選択履歴データ管理テーブル700は、観測番号と、個人番号と、選択肢属性と、選択とのフィールドを有する。選択履歴データ管理テーブル700は、選択行為ごとに各フィールドに情報を設定することにより、選択履歴データがレコード700-aとして記憶される。aは、任意の整数である。
【0093】
観測番号のフィールドには、いずれかの選択主体の1回の選択行為を識別する観測番号が設定される。個人番号のフィールドには、上記選択行為を実施した上記いずれかの選択主体を識別する個人番号が設定される。選択肢属性のフィールドには、選択肢属性が設定される。選択肢属性は、例えば、時間的または金銭的なコストなどである。
【0094】
選択肢属性のフィールドは、例えば、徒歩と、自動車と、eスクーターとのフィールドを有する。徒歩のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段として徒歩を選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段として徒歩を選択した場合に発生する時間的なコストを表す所要時間が設定される。
【0095】
自動車のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段として自動車を選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段として自動車を選択した場合に発生する時間的なコストを表す所要時間が設定される。
【0096】
eスクーターのフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段としてeスクーターを選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段としてeスクーターを選択した場合に発生する時間的なコストを表す所要時間が設定される。選択のフィールドには、上記選択行為において選択された選択肢が設定される。
【0097】
図6の説明に戻り、モデル設定部603は、複数の選択肢のいずれかの選択肢を、選択主体が認知済みとは限らない特定の選択肢Jとして設定する。特定の選択肢Jは、例えば、eスクーターである。モデル設定部603は、学習処理部606で学習する選択モデルが参照する、効用関数のパラメータの初期値と、クラス確率の事前確率とを設定する。初期値は、例えば、0である。初期値は、例えば、ランダムな実数であってもよい。クラス確率は、例えば、特定の選択肢Jを認知済みであることを表すクラスに、選択主体が所属する確率である。クラス確率は、例えば、0~1の値である。事前確率は、例えば、ランダムな実数であってもよい。
【0098】
情報処理装置100は、具体的には、選択主体を識別する個人番号nを、下記式(1)に示すように定義する。
【0099】
【0100】
情報処理装置100は、具体的には、選択主体nを分類する潜在クラスを識別する潜在クラスインデックスkを、下記式(2)に示すように定義する。kは、値が1である場合、特定の選択肢Jを認知済みであることを表す潜在クラスを示す。kは、値が2である場合、特定の選択肢Jを認知済みではないことを表す潜在クラスを示す。
【0101】
【0102】
情報処理装置100は、具体的には、k=1の場合におけるそれぞれの選択肢を識別する選択肢インデックスを、下記式(3)に示すように定義する。
【0103】
【0104】
情報処理装置100は、具体的には、k=2の場合におけるそれぞれの選択肢を識別する選択肢インデックスを、下記式(4)に示すように定義する。
【0105】
【0106】
情報処理装置100は、具体的には、それぞれの選択主体nの選択回数tを、下記式(5)に示すように定義する。
【0107】
【0108】
情報処理装置100は、選択主体nが潜在クラスkに所属するか否かを示す指示変数qnkを、下記式(6)および下記式(7)に示すように定義する。
【0109】
【0110】
【0111】
情報処理装置100は、選択主体nが選択回数tで選択した選択肢jを示す指示変数ynjtを、下記式(8)および下記式(9)に示すように定義する。
【0112】
【0113】
【0114】
情報処理装置100は、選択肢属性ベクトルを、Xnjtと定義する。情報処理装置100は、潜在クラスkのクラス確率の事前確率を、πkと定義する。情報処理装置100は、πkを、下記式(10)および下記式(11)に示すように定義する。
【0115】
【0116】
【0117】
情報処理装置100は、潜在クラスkにおける選択主体nの選択回数tに対する選択肢jの確率効用Unjt|kを、下記式(12)に示すように定義する。δnjt|kは、ランダム項である。情報処理装置100は、下記式(12)のうち、確定効用Vnjt|kを、下記式(13)に示すように定義する。βjkは、潜在クラスkにおける選択肢jの効用関数のパラメータである。効用関数は、例えば、潜在クラスk=1,2で共通であってもよい。
【0118】
【0119】
【0120】
情報処理装置100は、クラスk=1における選択主体nが選択回数tで選択肢jを選択する確率p(・)を算出する選択モデルであるクラス1固有選択モデルを、下記式(14)に示すように定義する。ここでは、潜在クラスk=1の場合のqnkを、「qnk|k=1」と表記する。
【0121】
【0122】
情報処理装置100は、クラスk=2における選択主体nが選択回数tで選択肢jを選択する確率p(・)を算出する選択モデルであるクラス2固有選択モデルを、下記式(15)に示すように定義する。ここでは、潜在クラスk=2の場合のqnkを、「qnk|k=2」と表記する。
【0123】
【0124】
次に、
図8の説明に移行し、クラス1固有選択モデルおよびクラス2固有選択モデルに対応するグラフィカルモデル800の一例について説明する。グラフィカルモデル800は、例えば、π
kによって定まるq
nkを算出するノードと、X
njtを算出するノードと、q
nkとβ
jkとX
njtとによって定まるy
njtを算出するノードとによって形成される。
【0125】
図6の説明に戻り、情報処理装置100は、具体的には、徒歩に関する確定効用V
njt|k=V
walkを、下記式(16)に示すように定義する。V
walkは、例えば、潜在クラスk=1,2で共通である。
【0126】
【0127】
情報処理装置100は、具体的には、自動車に関する確定効用Vnjt|k=Vautoを、下記式(17)に示すように定義する。Vautoは、例えば、潜在クラスk=1,2で共通である。
【0128】
【0129】
情報処理装置100は、具体的には、eスクーターに関する確定効用Vnjt|k=Ve-scooterを、下記式(18)に示すように定義する。Ve-scooterは、例えば、潜在クラスk=1,2で共通である。
【0130】
【0131】
認知フラグ付与部604は、選択履歴データ管理テーブル700を参照して、特定の選択肢Jを選択した選択履歴データに対して、認知フラグ=1を付与する。認知フラグ付与部604は、選択履歴データ管理テーブル700を参照して、特定の選択肢Jを選択していない選択履歴データに対して、認知フラグ=0を付与する。認知フラグ付与部604は、選択履歴データ管理テーブル700を参照して、特定の選択肢Jを選択したことがある選択主体を識別する個人番号を含む選択履歴データに対して、認知フラグ=1を付与してもよい。認知フラグ付与部604は、認知フラグを付与した選択履歴データを、学習用データ生成部605に送信する。
【0132】
学習用データ生成部605は、学習処理部606で利用する学習用データを生成する。学習用データ生成部605は、認知フラグが付与された選択履歴データを、認知フラグ付与部604から受信する。学習用データ生成部605は、受信した選択履歴データのうち、移動手段を表す文字列を当該移動手段に対応する番号に置換した、学習用データを生成する。
【0133】
学習用データ生成部605は、生成した学習用データを、
図9を用いて後述する学習用データ管理テーブル900に記録する。ここで、
図9の説明に移行し、学習用データ管理テーブル900の記憶内容の一例について説明する。学習用データ管理テーブル900は、例えば、
図3に示した情報処理装置100のメモリ302や記録媒体305などの記憶領域により実現される。
【0134】
図9は、学習用データ管理テーブル900の記憶内容の一例を示す。
図9に示すように、学習用データ管理テーブル900は、観測番号と、個人番号と、選択肢属性と、選択と、認知フラグとのフィールドを有する。学習用データ管理テーブル900は、選択行為ごとに各フィールドに情報を設定することにより、学習用データがレコード900-bとして記憶される。bは、任意の整数である。
【0135】
観測番号のフィールドには、いずれかの選択主体の1回の選択行為を識別する観測番号が設定される。個人番号のフィールドには、上記選択行為を実施した上記いずれかの選択主体を識別する個人番号が設定される。選択肢属性のフィールドには、選択肢属性が設定される。選択肢属性は、例えば、時間的または金銭的なコストなどである。
【0136】
選択肢属性のフィールドは、例えば、徒歩を示す番号1と、自動車を示す番号2と、eスクーターを示す番号3とのフィールドを有する。1のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段として徒歩を選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段として徒歩を選択した場合に発生する時間的なコストを表す所要時間が設定される。
【0137】
2のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段として自動車を選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段として自動車を選択した場合に発生する時間的なコストを表す所要時間が設定される。
【0138】
3のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段としてeスクーターを選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段としてeスクーターを選択した場合に発生する時間的なコストを表す所要時間が設定される。選択のフィールドには、上記選択行為において選択された選択肢を示す番号が設定される。認知フラグのフィールドには、認知フラグが設定される。
【0139】
図6の説明に戻り、学習処理部606は、収束条件を取得する。収束条件は、例えば、対数尤度の差分値が閾値未満であることである。収束条件は、例えば、効用関数のパラメータβ
jkを所定回数学習したことであってもよい。学習処理部606は、学習用データ管理テーブル900を参照して、学習用データを取得する。学習処理部606は、取得した学習用データに基づいて、収束条件を満たすまで、クラス1固有選択モデルおよびクラス2固有選択モデルを規定するパラメータを学習する。学習処理部606は、例えば、収束条件を満たすまで、クラス1固有選択モデルおよびクラス2固有選択モデルを規定する、効用関数のパラメータβ
jkを学習する。
【0140】
学習処理部606は、具体的には、効用関数のパラメータβjkを初期化する。初期化は、例えば、0を設定することである。初期化は、例えば、ランダムな実数を設定することであってもよい。学習処理部606は、具体的には、いずれかのパラメータβjkが既知であれば、当該いずれかのパラメータβjkに定数を設定してもよい。学習処理部606は、具体的には、それぞれの学習用データに対応するクラス確率の期待値を設定する。この際、学習処理部606は、具体的には、認知フラグ=1の学習用データに対応するクラス確率の期待値を1に固定する。
【0141】
(6-1)学習処理部606は、より具体的には、下記式(19)に従って、特定の選択肢Jを選択したことがない選択主体を識別する個人番号を含むそれぞれの学習用データに対応するクラス確率の期待値を設定する。学習処理部606は、より具体的には、下記式(20)に従って、特定の選択肢Jを選択したことがある選択主体を識別する個人番号を含むそれぞれの学習用データに対応するクラス確率の期待値を設定する。
【0142】
【0143】
【0144】
(6-2)学習処理部606は、より具体的には、下記式(21)に従って、対数尤度の期待値を算出する。ローマ数字2の記号は、指示関数を表す。学習処理部606は、より具体的には、対数尤度の期待値に基づいて、下記式(22)に従って、効用関数のパラメータβkを更新する。学習処理部606は、より具体的には、下記式(23)および下記式(24)に従って、クラス確率を更新する。
【0145】
【0146】
【0147】
【0148】
【0149】
(6-3)学習処理部606は、より具体的には、収束条件を満たすまで、(6-1)および(6-2)に示した処理を繰り返し実施する。これにより、学習処理部606は、効用関数のパラメータβkと、クラス確率とを適切に更新することができる。このため、学習処理部606は、効用関数のパラメータβkを参照する選択モデルを適切に学習することができる。学習処理部606は、効用関数のパラメータβkと、クラス確率とを、記録部602に送信する。
【0150】
記録部602は、学習処理部606で学習した選択モデルのパラメータとなる効用関数のパラメータβ
kを記録する。記録部602は、いずれかの選択主体に対して、学習処理部606で学習したクラス確率を、事後確率として、当該いずれかの選択主体を識別する個人番号に対応付けて記録する。これにより、記録部602は、選択モデルと、事後確率とを利用可能にすることができる。次に、
図10の説明に移行する。
【0151】
図10は、第1動作例における情報処理装置100が選択モデルを利用する第1予測処理を実現する機能的構成の具体例を示す。
図10において、情報処理装置100は、取得部1001と、記録部1002と、予測用データ生成部1003と、予測処理部1004とを含む。
【0152】
取得部1001は、いずれかの選択主体の1回の選択行為を識別する予測番号と、当該選択行為の状況におけるそれぞれの選択肢の選択肢属性とを含む予測対象データを取得する。選択行為は、例えば、実施する予定がある選択行為であって、まだ実施されていなくてもよい。予測対象データは、選択主体を識別する個人番号を含んでいてもよい。予測対象データにおける個人番号は、予測対象データにおける個人番号と共通する。予測対象データは、選択主体の特徴を表す個人属性を含んでいてもよい。取得部1001は、予測対象データを、記録部1002に送信する。
【0153】
記録部1002は、予測対象データを、取得部1001から受信する。記録部1002は、受信した予測対象データを、
図11を用いて後述する予測対象データ管理テーブル1100に記録する。ここで、
図11の説明に移行し、予測対象データ管理テーブル1100の記憶内容の一例について説明する。予測対象データ管理テーブル1100は、例えば、
図3に示した情報処理装置100のメモリ302や記録媒体305などの記憶領域により実現される。
【0154】
図11は、予測対象データ管理テーブル1100の記憶内容の一例を示す。
図11に示すように、予測対象データ管理テーブル1100は、予測番号と、個人番号と、選択肢属性とのフィールドを有する。予測対象データ管理テーブル1100は、実施する予定がある選択行為ごとに各フィールドに情報を設定することにより、予測対象データがレコード1100-cとして記憶される。cは、任意の整数である。
【0155】
予測番号のフィールドには、いずれかの選択主体の1回の選択行為を識別する予測番号が設定される。個人番号のフィールドには、上記選択行為を実施した上記いずれかの選択主体を識別する個人番号が設定される。選択肢属性のフィールドには、選択肢属性が設定される。選択肢属性は、例えば、時間的または金銭的なコストなどである。
【0156】
選択肢属性のフィールドは、例えば、徒歩と、自動車と、eスクーターとのフィールドを有する。徒歩のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段として徒歩を選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段として徒歩を選択した場合に発生する時間的なコストを表す所要時間が設定される。
【0157】
自動車のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段として自動車を選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段として自動車を選択した場合に発生する時間的なコストを表す所要時間が設定される。
【0158】
eスクーターのフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段としてeスクーターを選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段としてeスクーターを選択した場合に発生する時間的なコストを表す所要時間が設定される。
【0159】
図10の説明に戻り、予測用データ生成部1003は、予測対象データ管理テーブル1100を参照して、予測対象データに基づいて、予測処理部1004で参照する予測用データを生成する。予測用データ生成部1003は、受信した選択履歴データのうち、移動手段を表す文字列を当該移動手段に対応する番号に置換した、予測用データを生成する。
【0160】
予測用データ生成部1003は、予測用データに、クラス確率を付与する。予測用データ生成部1003は、予測用データに、個人番号が含まれる場合、記録部1002を利用して、予測用データに、クラス確率として、個人番号に対応する事後確率を付与する。予測用データ生成部1003は、記録部1002を利用して、個人番号に対応する事後確率が存在しないと判定した場合、予測用データに、クラス確率として、事前確率を付与する。予測用データ生成部1003は、予測用データの値を正規化する場合があってもよい。
【0161】
予測用データ生成部1003は、生成した予測用データを、
図12を用いて後述する予測用データ管理テーブル1200に記録する。ここで、
図12の説明に移行し、予測用データ管理テーブル1200の記憶内容の一例について説明する。予測用データ管理テーブル1200は、例えば、
図3に示した情報処理装置100のメモリ302や記録媒体305などの記憶領域により実現される。
【0162】
図12は、予測用データ管理テーブル1200の記憶内容の一例を示す。
図12に示すように、予測用データ管理テーブル1200は、予測番号と、個人番号と、選択肢属性と、クラス確率とのフィールドを有する。予測用データ管理テーブル1200は、選択行為ごとに各フィールドに情報を設定することにより、予測用データがレコード1200-dとして記憶される。dは、任意の整数である。
【0163】
予測番号のフィールドには、いずれかの選択主体の1回の選択行為を識別する予測番号が設定される。個人番号のフィールドには、上記選択行為を実施した上記いずれかの選択主体を識別する個人番号が設定される。選択肢属性のフィールドには、選択肢属性が設定される。選択肢属性は、例えば、時間的または金銭的なコストなどである。
【0164】
選択肢属性のフィールドは、例えば、徒歩を示す番号1と、自動車を示す番号2と、eスクーターを示す番号3とのフィールドを有する。1のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段として徒歩を選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段として徒歩を選択した場合に発生する時間的なコストを表す所要時間が設定される。
【0165】
2のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段として自動車を選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段として自動車を選択した場合に発生する時間的なコストを表す所要時間が設定される。
【0166】
3のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段としてeスクーターを選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段としてeスクーターを選択した場合に発生する時間的なコストを表す所要時間が設定される。クラス確率のフィールドには、クラス確率が設定される。
【0167】
図10の説明に戻り、予測処理部1004は、記録部1002から選択モデルのパラメータを取得する。予測処理部1004は、予測用データ管理テーブル1200を参照して、それぞれの予測用データについて、それぞれの選択肢が選択される選択確率を算出する。
【0168】
予測処理部1004は、例えば、予測用データについて、モデル1固有選択モデルを利用して、それぞれの選択肢が選択される第1選択確率を算出する。予測処理部1004は、例えば、予測用データについて、モデル2固有選択モデルを利用して、それぞれの選択肢が選択される第2選択確率を算出する。予測処理部1004は、例えば、選択肢ごとに、算出した第1選択確率にクラス確率を重みとして乗算した値と、算出した第2選択確率に(1-クラス確率)を重みとして乗算した値との和を、選択確率として算出する。これにより、予測処理部1004は、それぞれの選択肢が選択される選択確率を、精度よく算出することができる。
【0169】
予測処理部1004は、例えば、算出した選択確率を、記録部1002に送信する。記録部1002は、予測用データに対応付けて、受信したそれぞれの選択肢が選択される選択確率を記録する。これにより、記録部1002は、それぞれの選択肢が選択される選択確率を利用可能にすることができる。次に、
図13の説明に移行する。
【0170】
図13は、第1動作例における情報処理装置100が選択モデルを学習する第1学習処理を実現し、かつ、選択モデルを利用する第1予測処理を実現する機能的構成の具体例を示す。
図13において、情報処理装置100は、取得部1301と、記録部1302と、モデル設定部1303と、認知フラグ付与部1304と、学習用データ生成部1305と、学習処理部1306と、予測用データ生成部1307と、予測処理部1308とを含む。
【0171】
取得部1301は、取得部601および取得部1001に対応する。記録部1302は、記録部602および記録部1002に対応する。モデル設定部1303は、モデル設定部603に対応する。認知フラグ付与部1304は、認知フラグ付与部604に対応する。学習用データ生成部1305は、学習用データ生成部605に対応する。学習処理部1306は、学習処理部606に対応する。予測用データ生成部1307は、予測用データ生成部1003に対応する。予測処理部1308は、予測処理部1004に対応する。
【0172】
以上により、情報処理装置100は、選択主体の特定の選択肢Jの認知を考慮した、それぞれの選択肢が選択される選択確率を精度よく推定可能な選択モデルを学習することができる。情報処理装置100は、選択モデルを利用したシミュレーションを実施可能にすることができる。シミュレーションは、例えば、人流、または、購買などに関する。
【0173】
(情報処理装置100の適用例)
情報処理装置100は、例えば、交通シミュレーションの分野に適用することができる。情報処理装置100は、例えば、選択主体となる移動者が、どのような移動手段を選択するのかを模擬するシミュレーションを実施することができる。情報処理装置100は、例えば、シミュレーションにより、渋滞状況、道路課金、移動手段のコストなどの環境の変化により、移動者が選択する移動手段がどのように変化するのかを解析することができる。このため、情報処理装置100は、例えば、都市政策の検討に資する情報を得ることができる。また、情報処理装置100は、例えば、経済の分野に適用することができる。情報処理装置100は、例えば、選択主体となる顧客が、どのような商品を選択するのかを模擬するシミュレーションを実施することができる。
【0174】
(第1学習処理手順)
次に、
図14を用いて、第1動作例における情報処理装置100が実行する、第1学習処理手順の一例について説明する。第1学習処理は、例えば、
図3に示したCPU301と、メモリ302や記録媒体305などの記憶領域と、ネットワークI/F303とによって実現される。
【0175】
図14は、第1学習処理手順の一例を示すフローチャートである。
図14において、情報処理装置100は、複数の選択履歴データを取得する(ステップS1401)。情報処理装置100は、選択モデルのパラメータを初期化する(ステップS1402)。
【0176】
情報処理装置100は、取得した複数の選択履歴データのそれぞれの選択履歴データに対応するクラス確率の期待値を算出する(ステップS1403)。情報処理装置100は、取得した複数の選択履歴データのうち認知フラグが認知を表す1以上の選択履歴データに対応するクラス確率の期待値を補正する(ステップS1404)。
【0177】
情報処理装置100は、対数尤度の期待値を算出する(ステップS1405)。情報処理装置100は、選択モデルのパラメータを更新する(ステップS1406)。情報処理装置100は、収束条件を満たすか否かを判定する(ステップS1407)。ここで、収束条件を満たさない場合(ステップS1407:No)、情報処理装置100は、ステップS1403の処理に戻る。一方で、収束条件を満たす場合(ステップS1407:Yes)、情報処理装置100は、第1学習処理を終了する。
【0178】
(第1予測処理手順)
次に、
図15を用いて、第1動作例における情報処理装置100が実行する、第1予測処理手順の一例について説明する。第1予測処理は、例えば、
図3に示したCPU301と、メモリ302や記録媒体305などの記憶領域と、ネットワークI/F303とによって実現される。
【0179】
図15は、第1予測処理手順の一例を示すフローチャートである。
図15において、情報処理装置100は、予測対象データを取得する(ステップS1501)。
【0180】
情報処理装置100は、取得した予測対象データに含まれる個人番号が、クラス確率を算出済みである既存の個人番号であるか否かを判定する(ステップS1502)。ここで、既存の個人番号である場合(ステップS1502:Yes)、情報処理装置100は、ステップS1503の処理に移行する。一方で、既存の個人番号ではない場合(ステップS1502:No)、情報処理装置100は、ステップS1504の処理に移行する。
【0181】
ステップS1503では、情報処理装置100は、対象に対応するクラス確率に算出済みのクラス確率を設定する(ステップS1503)。そして、情報処理装置100は、ステップS1505の処理に移行する。
【0182】
ステップS1504では、情報処理装置100は、対象に対応するクラス確率に事前確率を設定する(ステップS1504)。そして、情報処理装置100は、ステップS1505の処理に移行する。
【0183】
ステップS1505では、情報処理装置100は、設定したクラス確率に基づいて、それぞれの選択肢の選択確率を算出する(ステップS1505)。情報処理装置100は、第1予測処理を終了する。
【0184】
(情報処理装置100の第2動作例)
次に、
図16~
図21を用いて、情報処理装置100の第2動作例について説明する。第2動作例は、例えば、第1動作例とは異なり、情報処理装置100が、個人属性を利用する場合に対応する。
【0185】
図16~
図21は、情報処理装置100の第2の動作例を示す説明図である。第2動作例における情報処理装置100が選択モデルを学習する第2学習処理を実現する機能的構成の具体例は、
図6に示した機能的構成の具体例と同様である。情報処理装置100は、取得部601と、記録部602と、モデル設定部603と、認知フラグ付与部604と、学習用データ生成部605と、学習処理部606とを含む。
【0186】
取得部601は、いずれかの選択主体の1回の選択行為を識別する観測番号と、当該選択行為の状況におけるそれぞれの選択肢の選択肢属性と、当該選択行為において選択された選択肢とを含む選択履歴データを取得する。選択肢属性は、例えば、時間的または金銭的なコストなどである。選択履歴データは、選択主体に関する個人情報を含む。個人情報は、例えば、選択主体を識別する個人番号を含む。個人情報は、例えば、選択主体の特徴を表す個人属性を含む。個人属性は、例えば、年齢および性別である。取得部601は、選択履歴データを、記録部602に送信する。
【0187】
記録部602は、選択履歴データを、取得部601から受信する。記録部602は、受信した選択履歴データを、
図16を用いて後述する選択履歴データ管理テーブル1600に記録する。ここで、
図16の説明に移行し、選択履歴データ管理テーブル1600の記憶内容の一例について説明する。選択履歴データ管理テーブル1600は、例えば、
図3に示した情報処理装置100のメモリ302や記録媒体305などの記憶領域により実現される。
【0188】
図16は、選択履歴データ管理テーブル1600の記憶内容の一例を示す。
図16に示すように、選択履歴データ管理テーブル1600は、観測番号と、個人番号と、個人属性と、選択肢属性と、選択とのフィールドを有する。選択履歴データ管理テーブル1600は、選択行為ごとに各フィールドに情報を設定することにより、選択履歴データがレコード1600-eとして記憶される。eは、任意の整数である。
【0189】
観測番号のフィールドには、いずれかの選択主体の1回の選択行為を識別する観測番号が設定される。個人番号のフィールドには、上記選択行為を実施した上記いずれかの選択主体を識別する個人番号が設定される。個人属性のフィールドは、例えば、性別と、年齢とのフィールドを有する。性別のフィールドには、上記選択行為を実施した上記いずれかの選択主体の性別が設定される。年齢のフィールドには、上記選択行為を実施した上記いずれかの選択主体の年齢が設定される。
【0190】
選択肢属性のフィールドには、選択肢属性が設定される。選択肢属性は、例えば、時間的または金銭的なコストなどである。選択肢属性のフィールドは、例えば、徒歩と、自動車と、eスクーターとのフィールドを有する。徒歩のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段として徒歩を選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段として徒歩を選択した場合に発生する時間的なコストを表す所要時間が設定される。
【0191】
自動車のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段として自動車を選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段として自動車を選択した場合に発生する時間的なコストを表す所要時間が設定される。
【0192】
eスクーターのフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段としてeスクーターを選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段としてeスクーターを選択した場合に発生する時間的なコストを表す所要時間が設定される。選択のフィールドには、上記選択行為において選択された選択肢が設定される。
【0193】
モデル設定部603は、複数の選択肢のいずれかの選択肢を、選択主体が認知済みとは限らない特定の選択肢Jとして設定する。特定の選択肢Jは、例えば、eスクーターである。モデル設定部603は、学習処理部606で学習する選択モデルが参照する、効用関数のパラメータの初期値と、クラス確率の事前確率と、クラスごとの個人属性の分布を規定するパラメータとを設定する。初期値は、例えば、0である。初期値は、例えば、ランダムな実数であってもよい。クラス確率は、例えば、特定の選択肢Jを認知済みであることを表すクラスに、選択主体が所属する確率である。クラス確率は、例えば、0~1の値である。事前確率は、例えば、ランダムな実数であってもよい。
【0194】
情報処理装置100は、具体的には、選択主体を識別する個人番号nを、下記式(25)に示すように定義する。
【0195】
【0196】
情報処理装置100は、具体的には、選択主体nを分類する潜在クラスを識別する潜在クラスインデックスkを、下記式(26)に示すように定義する。kは、値が1である場合、特定の選択肢Jを認知済みであることを表す潜在クラスを示す。kは、値が2である場合、特定の選択肢Jを認知済みではないことを表す潜在クラスを示す。
【0197】
【0198】
情報処理装置100は、具体的には、k=1の場合におけるそれぞれの選択肢を識別する選択肢インデックスを、下記式(27)に示すように定義する。
【0199】
【0200】
情報処理装置100は、具体的には、k=2の場合におけるそれぞれの選択肢を識別する選択肢インデックスを、下記式(28)に示すように定義する。
【0201】
【0202】
情報処理装置100は、具体的には、それぞれの選択主体nの選択回数tを、下記式(29)に示すように定義する。
【0203】
【0204】
情報処理装置100は、選択主体nが潜在クラスkに所属するか否かを示す指示変数qnkを、下記式(30)および下記式(31)に示すように定義する。
【0205】
【0206】
【0207】
情報処理装置100は、選択主体nが選択回数tで選択した選択肢jを示す指示変数ynjtを、下記式(32)および下記式(33)に示すように定義する。
【0208】
【0209】
【0210】
情報処理装置100は、選択肢属性ベクトルを、Xnjtと定義する。情報処理装置100は、連続値の個人属性ベクトルを、Scnと定義する。情報処理装置100は、離散値の個人属性ベクトルを、Sdnと定義する。情報処理装置100は、潜在クラスkのクラス確率の事前確率を、πkと定義する。情報処理装置100は、πkを、下記式(34)および下記式(35)に示すように定義する。
【0211】
【0212】
【0213】
情報処理装置100は、連続値の個人属性ベクトルScnの分布を、下記式(36)に示すように定義する。
【0214】
【0215】
情報処理装置100は、離散値の個人属性ベクトルSdnの分布を、下記式(37)に示すように定義する。
【0216】
【0217】
情報処理装置100は、潜在クラスkにおける選択主体nの選択回数tに対する選択肢jの確率効用Unjt|kを、下記式(38)に示すように定義する。情報処理装置100は、下記式(38)のうち、確定効用Vnjt|kを、下記式(39)に示すように定義する。βjkは、潜在クラスkにおける選択肢jの効用関数のパラメータである。効用関数は、例えば、潜在クラスk=1,2で共通であってもよい。
【0218】
【0219】
【0220】
情報処理装置100は、クラスk=1における選択主体nが選択回数tで選択肢jを選択する確率p(・)を算出する選択モデルであるクラス1固有選択モデルを、下記式(40)に示すように定義する。ここでは、潜在クラスk=1の場合のqnkを、「qnk|k=1」と表記する。
【0221】
【0222】
情報処理装置100は、クラスk=2における選択主体nが選択回数tで選択肢jを選択する確率p(・)を算出する選択モデルであるクラス2固有選択モデルを、下記式(41)に示すように定義する。ここでは、潜在クラスk=2の場合のqnkを、「qnk|k=2」と表記する。
【0223】
【0224】
次に、
図17の説明に移行し、クラス1固有選択モデルおよびクラス2固有選択モデルに対応するグラフィカルモデル1700の一例について説明する。グラフィカルモデル1700は、例えば、複数のノードによって形成される。複数のノードは、例えば、π
kによって定まるq
nkを算出するノードと、X
njtを算出するノードと、q
nkとβ
jkとX
njtとによって定まるy
njtを算出するノードを含む。複数のノードは、例えば、q
nkとμ
cとΣ
cとによって定まるS
cnを算出するノードと、q
nkとμ
dとによって定まるS
dnを算出するノードとを含む。
【0225】
情報処理装置100は、具体的には、徒歩に関する確定効用Vnjt|k=Vwalkを、上記式(16)に示すように定義する。Vwalkは、例えば、潜在クラスk=1,2で共通である。情報処理装置100は、具体的には、自動車に関する確定効用Vnjt|k=Vautoを、上記式(17)に示すように定義する。Vautoは、例えば、潜在クラスk=1,2で共通である。情報処理装置100は、具体的には、eスクーターに関する確定効用Vnjt|k=Ve-scooterを、上記式(18)に示すように定義する。Ve-scooterは、例えば、潜在クラスk=1,2で共通である。
【0226】
認知フラグ付与部604は、選択履歴データ管理テーブル1600を参照して、特定の選択肢Jを選択した選択履歴データに対して、認知フラグ=1を付与する。認知フラグ付与部604は、選択履歴データ管理テーブル1600を参照して、特定の選択肢Jを選択していない選択履歴データに対して、認知フラグ=0を付与する。認知フラグ付与部604は、選択履歴データ管理テーブル1600を参照して、特定の選択肢Jを選択したことがある選択主体を識別する個人番号を含む選択履歴データに対して、認知フラグ=1を付与してもよい。認知フラグ付与部604は、認知フラグを付与した選択履歴データを、学習用データ生成部605に送信する。
【0227】
学習用データ生成部605は、学習処理部606で利用する学習用データを生成する。学習用データ生成部605は、認知フラグが付与された選択履歴データを、認知フラグ付与部604から受信する。学習用データ生成部605は、受信した選択履歴データのうち、移動手段を表す文字列を当該移動手段に対応する番号に置換し、かつ、個人属性の性別を表す文字列を当該性別に対応する番号に置換した、学習用データを生成する。
【0228】
学習用データ生成部605は、生成した学習用データを、
図18を用いて後述する学習用データ管理テーブル1800に記録する。ここで、
図18の説明に移行し、学習用データ管理テーブル1800の記憶内容の一例について説明する。学習用データ管理テーブル1800は、例えば、
図3に示した情報処理装置100のメモリ302や記録媒体305などの記憶領域により実現される。
【0229】
図18は、学習用データ管理テーブル1800の記憶内容の一例を示す。
図18に示すように、学習用データ管理テーブル1800は、観測番号と、個人番号と、個人属性と、選択肢属性と、選択と、認知フラグとのフィールドを有する。学習用データ管理テーブル1800は、選択行為ごとに各フィールドに情報を設定することにより、学習用データがレコード1800-fとして記憶される。fは、任意の整数である。
【0230】
観測番号のフィールドには、いずれかの選択主体の1回の選択行為を識別する観測番号が設定される。個人番号のフィールドには、上記選択行為を実施した上記いずれかの選択主体を識別する個人番号が設定される。個人属性のフィールドは、例えば、性別と、年齢とのフィールドを有する。性別のフィールドには、上記選択行為を実施した上記いずれかの選択主体の性別を示す番号が設定される。年齢のフィールドには、上記選択行為を実施した上記いずれかの選択主体の年齢が設定される。
【0231】
選択肢属性のフィールドには、選択肢属性が設定される。選択肢属性は、例えば、時間的または金銭的なコストなどである。選択肢属性のフィールドは、例えば、徒歩を示す番号1と、自動車を示す番号2と、eスクーターを示す番号3とのフィールドを有する。
【0232】
1のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段として徒歩を選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段として徒歩を選択した場合に発生する時間的なコストを表す所要時間が設定される。
【0233】
2のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段として自動車を選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段として自動車を選択した場合に発生する時間的なコストを表す所要時間が設定される。
【0234】
3のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段としてeスクーターを選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段としてeスクーターを選択した場合に発生する時間的なコストを表す所要時間が設定される。選択のフィールドには、上記選択行為において選択された選択肢を示す番号が設定される。認知フラグのフィールドには、認知フラグが設定される。
【0235】
学習処理部606は、収束条件を取得する。収束条件は、例えば、対数尤度の差分値が閾値未満であることである。収束条件は、例えば、効用関数のパラメータβjkを所定回数学習したことであってもよい。学習処理部606は、学習用データ管理テーブル1800を参照して、学習用データを取得する。学習処理部606は、取得した学習用データに基づいて、収束条件を満たすまで、クラス1固有選択モデルおよびクラス2固有選択モデルを規定するパラメータを学習する。学習処理部606は、例えば、収束条件を満たすまで、クラス1固有選択モデルおよびクラス2固有選択モデルを規定する、効用関数のパラメータβjkを学習する。
【0236】
学習処理部606は、具体的には、効用関数のパラメータβjkを初期化する。初期化は、例えば、0を設定することである。初期化は、例えば、ランダムな実数を設定することであってもよい。学習処理部606は、具体的には、いずれかのパラメータβjkが既知であれば、当該いずれかのパラメータβjkに定数を設定してもよい。学習処理部606は、具体的には、それぞれの学習用データに対応するクラス確率の期待値を設定する。この際、学習処理部606は、具体的には、認知フラグ=1の学習用データに対応するクラス確率の期待値を1に固定する。
【0237】
(18-1)学習処理部606は、より具体的には、下記式(42)および下記式(43)に従って、特定の選択肢Jを選択したことがない選択主体を識別する個人番号を含むそれぞれの学習用データに対応するクラス確率の期待値を設定する。学習処理部606は、より具体的には、下記式(44)に従って、特定の選択肢Jを選択したことがある選択主体を識別する個人番号を含むそれぞれの学習用データに対応するクラス確率の期待値を設定する。
【0238】
【0239】
【0240】
【0241】
(18-2)学習処理部606は、より具体的には、下記式(45)に従って、対数尤度の期待値を算出する。学習処理部606は、より具体的には、対数尤度の期待値に基づいて、下記式(46)~下記式(50)に従って、効用関数のパラメータβkを更新する。学習処理部606は、より具体的には、下記式(51)に従って、クラス確率を更新する。
【0242】
【0243】
【0244】
【0245】
【0246】
【0247】
【0248】
【0249】
(18-3)学習処理部606は、より具体的には、収束条件を満たすまで、(18-1)および(18-2)に示した処理を繰り返し実施する。これにより、学習処理部606は、効用関数のパラメータβkと、クラス確率とを適切に更新することができる。このため、学習処理部606は、効用関数のパラメータβkを参照する選択モデルを適切に学習することができる。学習処理部606は、効用関数のパラメータβkと、クラス確率とを、記録部602に送信する。
【0250】
記録部602は、学習処理部606で学習した選択モデルのパラメータとなる効用関数のパラメータβ
kを記録する。記録部602は、いずれかの選択主体に対して、学習処理部606で学習したクラス確率を、事後確率として、当該いずれかの選択主体を識別する個人番号に対応付けて記録する。これにより、記録部602は、選択モデルと、事後確率とを利用可能にすることができる。次に、
図19の説明に移行する。
【0251】
図19は、第2動作例における情報処理装置100が選択モデルを利用する第2予測処理を実現する機能的構成の具体例を示す。
図19において、情報処理装置100は、取得部1901と、記録部1902と、予測用データ生成部1903と、予測処理部1904とを含む。
【0252】
取得部1901は、いずれかの選択主体の1回の選択行為を識別する予測番号と、当該選択行為の状況におけるそれぞれの選択肢の選択肢属性とを含む予測対象データを取得する。選択行為は、例えば、実施する予定がある選択行為であって、まだ実施されていなくてもよい。予測対象データは、選択主体を識別する個人番号を含む。予測対象データにおける個人番号は、予測対象データにおける個人番号と共通する。予測対象データは、選択主体の特徴を表す個人属性を含む。取得部1901は、予測対象データを、記録部1902に送信する。
【0253】
記録部1902は、予測対象データを、取得部1901から受信する。記録部1902は、受信した予測対象データを、
図20を用いて後述する予測対象データ管理テーブル2000に記録する。ここで、
図20の説明に移行し、予測対象データ管理テーブル2000の記憶内容の一例について説明する。予測対象データ管理テーブル2000は、例えば、
図3に示した情報処理装置100のメモリ302や記録媒体305などの記憶領域により実現される。
【0254】
図20は、予測対象データ管理テーブル2000の記憶内容の一例を示す。
図20に示すように、予測対象データ管理テーブル2000は、予測番号と、個人番号と、個人属性と、選択肢属性とのフィールドを有する。予測対象データ管理テーブル2000は、実施する予定がある選択行為ごとに各フィールドに情報を設定することにより、予測対象データがレコード2000-gとして記憶される。gは、任意の整数である。
【0255】
予測番号のフィールドには、いずれかの選択主体の1回の選択行為を識別する予測番号が設定される。個人番号のフィールドには、上記選択行為を実施した上記いずれかの選択主体を識別する個人番号が設定される。個人属性のフィールドは、例えば、性別と、年齢とのフィールドを有する。性別のフィールドには、上記選択行為を実施した上記いずれかの選択主体の性別が設定される。年齢のフィールドには、上記選択行為を実施した上記いずれかの選択主体の年齢が設定される。
【0256】
選択肢属性のフィールドには、選択肢属性が設定される。選択肢属性は、例えば、時間的または金銭的なコストなどである。選択肢属性のフィールドは、例えば、徒歩と、自動車と、eスクーターとのフィールドを有する。徒歩のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段として徒歩を選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段として徒歩を選択した場合に発生する時間的なコストを表す所要時間が設定される。
【0257】
自動車のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段として自動車を選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段として自動車を選択した場合に発生する時間的なコストを表す所要時間が設定される。
【0258】
eスクーターのフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段としてeスクーターを選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段としてeスクーターを選択した場合に発生する時間的なコストを表す所要時間が設定される。
【0259】
図19の説明に戻り、予測用データ生成部1903は、予測対象データ管理テーブル2000を参照して、予測対象データに基づいて、予測処理部1904で参照する予測用データを生成する。予測用データ生成部1903は、受信した選択履歴データのうち、移動手段を表す文字列を当該移動手段に対応する番号に置換し、かつ、選択主体の性別を表す文字列を当該性別に対応する番号に置換した、予測用データを生成する。
【0260】
予測用データ生成部1903は、予測用データに、クラス確率を付与する。予測用データ生成部1903は、予測用データに、個人番号が含まれる場合、記録部602を利用して、予測用データに、クラス確率として、個人番号に対応する事後確率を付与する。
【0261】
予測用データ生成部1903は、記録部602を利用して、個人番号に対応する事後確率が存在しないと判定した場合、ベイズの定理に従って、予測用データに、クラス確率を付与する。予測用データ生成部1903は、例えば、ベイズの定理に従って、事前確率と、個人属性の分布とに基づいて、事後確率を算出し、予測用データに、クラス確率として付与する。予測用データ生成部1903は、予測用データの値を正規化する場合があってもよい。
【0262】
予測用データ生成部1903は、生成した予測用データを、
図21を用いて後述する予測用データ管理テーブル2100に記録する。ここで、
図21の説明に移行し、予測用データ管理テーブル2100の記憶内容の一例について説明する。予測用データ管理テーブル2100は、例えば、
図3に示した情報処理装置100のメモリ302や記録媒体305などの記憶領域により実現される。
【0263】
図21は、予測用データ管理テーブル2100の記憶内容の一例を示す。
図21に示すように、予測用データ管理テーブル2100は、予測番号と、個人番号と、個人属性と、選択肢属性と、クラス確率とのフィールドを有する。予測用データ管理テーブル2100は、選択行為ごとに各フィールドに情報を設定することにより、予測用データがレコード1200-hとして記憶される。hは、任意の整数である。
【0264】
予測番号のフィールドには、いずれかの選択主体の1回の選択行為を識別する予測番号が設定される。個人番号のフィールドには、上記選択行為を実施した上記いずれかの選択主体を識別する個人番号が設定される。個人属性のフィールドは、例えば、性別と、年齢とのフィールドを有する。性別のフィールドには、上記選択行為を実施した上記いずれかの選択主体の性別を示す番号が設定される。年齢のフィールドには、上記選択行為を実施した上記いずれかの選択主体の年齢が設定される。
【0265】
選択肢属性のフィールドには、選択肢属性が設定される。選択肢属性は、例えば、時間的または金銭的なコストなどである。選択肢属性のフィールドは、例えば、徒歩を示す番号1と、自動車を示す番号2と、eスクーターを示す番号3とのフィールドを有する。1のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段として徒歩を選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段として徒歩を選択した場合に発生する時間的なコストを表す所要時間が設定される。
【0266】
2のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段として自動車を選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段として自動車を選択した場合に発生する時間的なコストを表す所要時間が設定される。
【0267】
3のフィールドは、例えば、コストと、所要時間とのフィールドを有する。当該コストのフィールドには、具体的には、選択主体が移動手段としてeスクーターを選択した場合に発生する金銭的なコストを表す指標値が設定される。当該所要時間のフィールドには、具体的には、選択主体が移動手段としてeスクーターを選択した場合に発生する時間的なコストを表す所要時間が設定される。クラス確率のフィールドには、クラス確率が設定される。
【0268】
図19の説明に戻り、予測処理部1904は、記録部602から選択モデルのパラメータを取得する。予測処理部1904は、予測用データ管理テーブル2100を参照して、それぞれの予測用データについて、それぞれの選択肢が選択される選択確率を算出する。
【0269】
予測処理部1904は、例えば、予測用データについて、モデル1固有選択モデルを利用して、それぞれの選択肢が選択される第1選択確率を算出する。予測処理部1904は、例えば、予測用データについて、モデル2固有選択モデルを利用して、それぞれの選択肢が選択される第2選択確率を算出する。予測処理部1904は、例えば、選択肢ごとに、算出した第1選択確率にクラス確率を重みとして乗算した値と、算出した第2選択確率に(1-クラス確率)を重みとして乗算した値との和を、選択確率として算出する。これにより、予測処理部1904は、それぞれの選択肢が選択される選択確率を、精度よく算出することができる。
【0270】
予測処理部1904は、例えば、算出した選択確率を、記録部1902に送信する。記録部1902は、予測用データに対応付けて、受信したそれぞれの選択肢が選択される選択確率を記録する。これにより、記録部1902は、それぞれの選択肢が選択される選択確率を利用可能にすることができる。
【0271】
第2動作例における情報処理装置100が選択モデルを学習する第2学習処理を実現し、かつ、選択モデルを利用する第2予測処理を実現する機能的構成の具体例は、
図13に示した機能的構成の具体例と同様であるため、説明を省略する。
【0272】
以上により、情報処理装置100は、選択主体の特定の選択肢Jの認知を考慮した、それぞれの選択肢が選択される選択確率を精度よく推定可能な選択モデルを学習することができる。情報処理装置100は、選択モデルを利用したシミュレーションを実施可能にすることができる。シミュレーションは、例えば、人流、または、購買などに関する。
【0273】
(情報処理装置100の適用例)
情報処理装置100は、交通シミュレーションの分野に適用することができる。情報処理装置100は、例えば、選択主体となる移動者が、どのような移動手段を選択するのかを模擬するシミュレーションを実施することができる。情報処理装置100は、例えば、シミュレーションにより、渋滞状況、道路課金、移動手段のコストなどの環境の変化により、移動者が選択する移動手段がどのように変化するのかを解析することができる。このため、情報処理装置100は、例えば、都市政策の検討に資する情報を得ることができる。また、情報処理装置100は、例えば、経済の分野に適用することができる。情報処理装置100は、例えば、選択主体となる顧客が、どのような商品を選択するのかを模擬するシミュレーションを実施することができる。
【0274】
(第2学習処理手順)
第2動作例における情報処理装置100が実行する第2学習処理手順の一例は、具体的には、
図22に示した、第1動作例における情報処理装置100が実行する第1学習処理手順の一例と同様であるため、説明を省略する。
【0275】
(第2予測処理手順)
次に、
図22を用いて、第2動作例における情報処理装置100が実行する、第2予測処理手順の一例について説明する。第2予測処理は、例えば、
図3に示したCPU301と、メモリ302や記録媒体305などの記憶領域と、ネットワークI/F303とによって実現される。
【0276】
図22は、第2予測処理手順の一例を示すフローチャートである。
図22において、情報処理装置100は、予測対象データを取得する(ステップS2201)。
【0277】
情報処理装置100は、取得した予測対象データに含まれる個人番号が、クラス確率を算出済みである既存の個人番号であるか否かを判定する(ステップS2202)。ここで、既存の個人番号である場合(ステップS2202:Yes)、情報処理装置100は、ステップS2203の処理に移行する。一方で、既存の個人番号ではない場合(ステップS2202:No)、情報処理装置100は、ステップS2204の処理に移行する。
【0278】
ステップS2203では、情報処理装置100は、対象に対応するクラス確率に算出済みのクラス確率を設定する(ステップS2203)。そして、情報処理装置100は、ステップS2205の処理に移行する。
【0279】
ステップS2204では、情報処理装置100は、事前確率と属性値とに基づいて事後確率を算出し、対象に対応するクラス確率に事後確率を設定する(ステップS2204)。そして、情報処理装置100は、ステップS2205の処理に移行する。
【0280】
ステップS2205では、情報処理装置100は、設定したクラス確率に基づいて、それぞれの選択肢の選択確率を算出する(ステップS2205)。情報処理装置100は、第2予測処理を終了する。
【0281】
以上説明したように、情報処理装置100によれば、複数の選択肢のうち、過去に選択された選択肢をそれぞれ表す複数の記録を取得することができる。情報処理装置100によれば、複数の記録のうち、第1の選択肢を認知済みの選択主体に対応する1以上の記録を特定することができる。情報処理装置100によれば、特定した1以上の記録のそれぞれの記録に対して、第1の選択肢を認知済みの第1のクラスに選択主体が所属する確率の期待値として、確定的に所属することを表す第1の値を設定することができる。情報処理装置100によれば、第1のクラスに選択主体が所属する確率の基準値と、複数の選択肢のそれぞれの選択肢の効果を表す数式とを記憶することができる。情報処理装置100によれば、基準値と、数式とに基づいて、特定した1以上の記録とは異なる残余の記録のそれぞれの記録に対して、第1のクラスに選択主体が所属する確率の期待値として、確率的に所属することを表す第2の値を設定することができる。情報処理装置100によれば、取得した複数の記録のそれぞれの記録と、期待値とに基づいて、基準値と、数式に含まれるパラメータとを学習することができる。これにより、情報処理装置100は、基準値と、数式に含まれるパラメータとを精度よく学習することができる。このため、情報処理装置100は、数式を利用して、選択主体が選択する選択肢を精度よく推定するモデルを学習し易くすることができる。
【0282】
情報処理装置100によれば、基準値と、数式のパラメータとを学習することにより、それぞれの選択肢に関する特徴量が入力されたことに応じて数式を利用して複数の選択肢のそれぞれの選択肢が選択される確率を推定するモデルを学習することができる。これにより、情報処理装置100は、選択主体が選択する選択肢を精度よく推定するモデルを学習することができる。
【0283】
情報処理装置100によれば、基準値と、数式のパラメータとを学習することにより、選択主体が第1のクラスに所属する場合に対して、第1のモデルを学習することができる。情報処理装置100によれば、選択主体が第1のクラスに所属しない場合に対して、第2のモデルを学習することができる。これにより、情報処理装置100は、選択主体が第1のクラスに所属するか否かに応じて異なるモデルを学習することができる。情報処理装置100は、モデルを使い分けることにより、選択主体が選択する選択肢を精度よく推定可能にすることができる。
【0284】
情報処理装置100によれば、第1の選択肢を表す1以上の記録のそれぞれの記録に対して、期待値として、確定的に所属することを表す第1の値を設定することができる。これにより、情報処理装置100は、第1の選択肢を認知済みの選択主体に対応すると確定した記録に対して、確定的に所属することを表す第1の値を設定することができる。このため、情報処理装置100は、第1の選択肢を認知済みの選択主体がどのような選択肢を選択するのかを、モデルに反映し易くすることができる。
【0285】
情報処理装置100によれば、第1の選択肢を表す記録と同一または類似の属性値を有する1以上の記録のそれぞれの記録に対して、期待値として、確定的に所属することを表す第1の値を設定することができる。これにより、情報処理装置100は、第1の選択肢を認知済みである可能性が比較的大きい選択主体に対応する記録に対して、確定的に所属することを表す第1の値を設定することができる。このため、情報処理装置100は、第1の選択肢を認知済みの選択主体がどのような選択肢を選択するのかを、モデルに反映し易くすることができる。
【0286】
情報処理装置100によれば、選択主体が第1のクラスに所属する場合における、複数の選択肢のそれぞれの選択肢の効果を表す数式を記憶することができる。情報処理装置100によれば、選択主体が第1のクラスに所属しない場合における、複数の選択肢のうち、第1の選択肢とは異なる残余の選択肢のそれぞれの選択肢の効果を表す数式を記憶することができる。これにより、情報処理装置100は、選択主体が第1の選択肢を認知済みであるか否かを考慮した数式を利用可能にすることができる。
【0287】
情報処理装置100によれば、残余の記録のそれぞれの記録と第1の選択肢を表す記録との類似度を記憶することができる。情報処理装置100によれば、残余の記録のそれぞれの記録に対して、第1の選択肢を表す記録との類似度が大きいほど、期待値が大きくなるよう、期待値として、確率的に所属することを表す第2の値を設定することができる。これにより、情報処理装置100は、類似度に基づいて、期待値を調整することができ、選択主体が選択する選択肢を精度よく推定するモデルを学習し易くすることができる。
【0288】
情報処理装置100によれば、それぞれ移動手段を表す複数の選択肢を処理対象とすることができる。これにより、情報処理装置100は、選択主体が、どのような移動手段を選択するのかを精度よく推定し易くすることができる。
【0289】
なお、本実施の形態で説明した情報処理方法は、予め用意されたプログラムをPCやワークステーションなどのコンピュータで実行することにより実現することができる。本実施の形態で説明した情報処理プログラムは、コンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。記録媒体は、ハードディスク、フレキシブルディスク、CD(Compact Disc)-ROM、MO(Magneto Optical disc)、DVD(Digital Versatile Disc)などである。また、本実施の形態で説明した情報処理プログラムは、インターネットなどのネットワークを介して配布してもよい。
【0290】
上述した実施の形態に関し、さらに以下の付記を開示する。
【0291】
(付記1)複数の選択肢のうち、過去に選択された選択肢をそれぞれ表す複数の記録を取得し、
取得した前記複数の記録のうち、第1の選択肢を認知済みの選択主体に対応する1以上の記録のそれぞれの記録に対して、前記第1の選択肢を認知済みの第1のクラスに選択主体が所属する確率の期待値として、確定的に所属することを表す第1の値を設定し、
前記第1のクラスに選択主体が所属する確率の基準値と、前記複数の選択肢のそれぞれの選択肢の効果を表す数式とに基づいて、取得した前記複数の記録のうち、前記1以上の記録とは異なる残余の記録のそれぞれの記録に対して、前記期待値として、確率的に所属することを表す第2の値を設定し、
取得した前記複数の記録のそれぞれの記録と、取得した前記複数の記録のそれぞれの記録に対して設定した前記期待値とに基づいて、前記基準値と、前記数式に含まれるパラメータとを学習する、
処理をコンピュータが実行することを特徴とする情報処理方法。
【0292】
(付記2)前記学習する処理は、
前記基準値と、前記数式のパラメータとを学習することにより、前記複数の選択肢のそれぞれの選択肢に関する特徴量が入力されたことに応じて前記数式を利用して前記複数の選択肢のそれぞれの選択肢が選択される確率を推定するモデルを学習する、ことを特徴とする付記1に記載の情報処理方法。
【0293】
(付記3)前記学習する処理は、
前記基準値と、前記数式のパラメータとを学習することにより、選択主体が前記第1のクラスに所属する場合に対して、前記複数の選択肢のそれぞれの選択肢に関する特徴量が入力されたことに応じて前記数式を利用して前記複数の選択肢のそれぞれの選択肢が選択される確率を推定する第1のモデルと、選択主体が前記第1のクラスに所属しない場合に対して、前記複数の選択肢のうち、前記第1の選択肢とは異なる残余の選択肢のそれぞれの選択肢に関する特徴量が入力されたことに応じて前記数式を利用して前記残余の選択肢のそれぞれの選択肢が選択される確率を推定する第2のモデルとを学習する、ことを特徴とする付記2に記載の情報処理方法。
【0294】
(付記4)前記第1の値を設定する処理は、
前記第1の選択肢を表す1以上の記録のそれぞれの記録に対して、前記期待値として、確定的に所属することを表す第1の値を設定する、ことを特徴とする付記1または2に記載の情報処理方法。
【0295】
(付記5)前記複数の記録は、それぞれ、選択主体の属性値を含み、
前記第1の値を設定する処理は、
前記第1の選択肢を表す記録と同一または類似の属性値を有する1以上の記録のそれぞれの記録に対して、前記期待値として、確定的に所属することを表す第1の値を設定する、ことを特徴とする付記1または2に記載の情報処理方法。
【0296】
(付記6)前記第2の値を設定する処理は、
前記基準値と、選択主体が前記第1のクラスに所属する場合における、前記複数の選択肢のそれぞれの選択肢の効果を表す数式と、選択主体が前記第1のクラスに所属しない場合における、前記複数の選択肢のうち、前記第1の選択肢とは異なる残余の選択肢のそれぞれの選択肢の効果を表す数式とに基づいて、前記残余の記録のそれぞれの記録に対して、前記期待値として、確率的に所属することを表す第2の値を設定する、ことを特徴とする付記1または2に記載の情報処理方法。
【0297】
(付記7)前記第2の値を設定する処理は、
前記基準値と、前記複数の選択肢のそれぞれの選択肢の効果を表す数式と、前記残余の記録のそれぞれの記録と前記第1の選択肢を表す記録との類似度とに基づいて、前記残余の記録のそれぞれの記録に対して、前記第1の選択肢を表す記録との類似度が大きいほど、前記期待値が大きくなるよう、前記期待値として、確率的に所属することを表す第2の値を設定する、ことを特徴とする付記1または2に記載の情報処理方法。
【0298】
(付記8)前記複数の選択肢は、それぞれ、移動手段を表す選択肢である、ことを特徴とする付記1~7のいずれか一つに記載の情報処理方法。
【0299】
(付記9)複数の選択肢のうち、過去に選択された選択肢をそれぞれ表す複数の記録を取得し、
取得した前記複数の記録のうち、第1の選択肢を認知済みの選択主体に対応する1以上の記録のそれぞれの記録に対して、前記第1の選択肢を認知済みの第1のクラスに選択主体が所属する確率の期待値として、確定的に所属することを表す第1の値を設定し、
前記第1のクラスに選択主体が所属する確率の基準値と、前記複数の選択肢のそれぞれの選択肢の効果を表す数式とに基づいて、取得した前記複数の記録のうち、前記1以上の記録とは異なる残余の記録のそれぞれの記録に対して、前記期待値として、確率的に所属することを表す第2の値を設定し、
取得した前記複数の記録のそれぞれの記録と、取得した前記複数の記録のそれぞれの記録に対して設定した前記期待値とに基づいて、前記基準値と、前記数式に含まれるパラメータとを学習する、
処理をコンピュータに実行させることを特徴とする情報処理プログラム。
【符号の説明】
【0300】
100 情報処理装置
110 選択肢
111 第1の選択肢
120 記録
130 第1のクラス
501,502 クラス
200 情報処理システム
201 クライアント装置
210 ネットワーク
300 バス
301 CPU
302 メモリ
303 ネットワークI/F
304 記録媒体I/F
305 記録媒体
400 記憶部
401,601,1001,1301,1901 取得部
402 第1設定部
403 第2設定部
404 学習部
405 予測部
406 出力部
511,512 選択モデル
602,1002,1302,1902 記録部
603,1303 モデル設定部
604,1304 認知フラグ付与部
605,1305 学習用データ生成部
606,1306 学習処理部
700,1600 選択履歴データ管理テーブル
800,1700 グラフィカルモデル
900,1800 学習用データ管理テーブル
1003,1003,1307,1903 予測用データ生成部
1004,1308,1904 予測処理部
1100,2000 予測対象データ管理テーブル
1200,2100 予測用データ管理テーブル