(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024001388
(43)【公開日】2024-01-10
(54)【発明の名称】学習モデル生成装置、学習モデルの生成方法及びプログラム
(51)【国際特許分類】
G06N 20/20 20190101AFI20231227BHJP
【FI】
G06N20/20
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2022099982
(22)【出願日】2022-06-22
(71)【出願人】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100103894
【弁理士】
【氏名又は名称】家入 健
(72)【発明者】
【氏名】小阪 勇気
(72)【発明者】
【氏名】江口 真透
(57)【要約】
【課題】対象者に合わせた行動計画を推定する学習モデルを好適に生成する。
【解決手段】学習モデル生成装置10は、ターゲットサンプル群に含まれるサンプルのうち、時刻t+1における観測データに対する(t+1)次学習モデルの出力誤差が所定量より大きいサンプルを、ターゲットサンプル群からソースサンプル群に移動させる移動処理を実行する移動部12と、移動処理後のターゲットサンプル群に含まれるサンプル、及び移動処理後のソースサンプル群に含まれるサンプルの、時刻tから時刻Tまでの観測データを少なくとも用いて、複数の弱学習器を生成し、生成した複数の弱学習器の各々と、生成した複数の弱学習器の各々について、移動処理後のターゲットサンプル群に含まれるサンプルの時刻tにおける観測データを用いて評価される分類誤差と、に少なくとも基づいて、t次学習モデルを生成する生成部13とを備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
ターゲットサンプル群に含まれる複数のサンプルのうち、時刻t+1(tは自然数)における観測データに対する(t+1)次学習モデルの出力誤差が所定量より大きいサンプルを、前記ターゲットサンプル群からソースサンプル群に移動させる移動処理を実行する移動部と、
前記移動処理後の前記ターゲットサンプル群に含まれる少なくとも1つのサンプル、及び前記移動処理後の前記ソースサンプル群に含まれる少なくとも1つのサンプルの、時刻tから時刻Tまでの観測データを少なくとも用いて、複数の弱学習器を生成し、
生成した前記複数の弱学習器の各々と、生成した前記複数の弱学習器の各々について、前記移動処理後の前記ターゲットサンプル群に含まれる前記少なくとも1つのサンプルの時刻tにおける観測データを用いて評価される分類誤差と、に少なくとも基づいて、t次学習モデルを生成する生成部と
を備え、
前記観測データは、時刻Tまでの間の特定の時刻におけるサンプルの状態及び行動を少なくとも含み、
前記t次学習モデルは、時刻tにおける状態を少なくとも入力として、時刻tにおける行動を出力する
学習モデル生成装置。
【請求項2】
前記移動部は、前記ソースサンプル群に含まれるサンプルを破棄した後、時刻t+1における観測データに対する(t+1)次学習モデルの出力誤差が所定量より大きいサンプルを、ソースサンプル群に移動させる
請求項1に記載の学習モデル生成装置。
【請求項3】
前記複数の弱学習器は、第1弱学習器及び第2弱学習器を少なくとも含み、
前記生成部は、
サンプル毎に設定された重みで重み付けされた観測データを用いて前記第1弱学習器を生成し、
前記移動処理後の前記ターゲットサンプル群に含まれるサンプルのうち、時刻tにおける観測データに対する前記第1弱学習器の出力誤差が所定量より大きいサンプルについては、重みを増加させ、
前記移動処理後の前記ソースサンプル群に含まれるサンプルのうち、時刻tにおける観測データに対する前記第1弱学習器の出力誤差が所定量より大きいサンプルについては、重みを減少させ、
サンプル毎に更新された重みで重み付けされた観測データを用いて前記第2弱学習器を生成する
請求項1又は2に記載の学習モデル生成装置。
【請求項4】
前記移動処理後の前記ターゲットサンプル群に含まれるサンプルのうち、時刻tにおける観測データに対する前記第1弱学習器の出力誤差が所定量より大きいサンプルについて、前記第1弱学習器について評価される前記分類誤差に応じて重みを増加させ、
前記移動処理後の前記ソースサンプル群に含まれるサンプルのうち、時刻tにおける観測データに対する前記第1弱学習器の出力誤差が所定量より大きいサンプルについて、予め定められた係数に応じて重みを減少させる
請求項3に記載の学習モデル生成装置。
【請求項5】
前記生成部は、前記移動処理後の前記ソースサンプル群に含まれる各サンプルについて、そのサンプルの時刻t+1における観測データに対する(t+1)次学習モデルの出力誤差に基づいて、そのサンプルの観測データの重みの初期値、及びそのサンプルの重みを更新する場合の重みの減少量の少なくとも一方を決定する
請求項3に記載の学習モデル生成装置。
【請求項6】
前記観測データは、時刻Tまでの間の特定の時刻における状態を有するサンプルが、前記特定の時刻における行動により得られる効果の量を含む
請求項1又は2に記載の学習モデル生成装置。
【請求項7】
前記生成部は、前記複数の弱学習器を生成する場合に、前記移動処理後の前記ソースサンプル群に含まれる各サンプルについては、そのサンプルの時刻t+1における効果として、時刻t+1における観測データに含まれる効果の量から(t+1)次学習モデルの出力誤差に応じた量を減じた情報を用いる
請求項6に記載の学習モデル生成装置。
【請求項8】
前記生成部は、前記複数の弱学習器の各々を生成する場合に、コストセンシティブ学習を用いる
請求項1又は2に記載の学習モデル生成装置。
【請求項9】
ターゲットサンプル群に含まれる複数のサンプルのうち、時刻t+1(tは自然数)における観測データに対する(t+1)次学習モデルの出力誤差が所定量より大きいサンプルを、前記ターゲットサンプル群からソースサンプル群に移動させる移動処理を実行し、
前記移動処理後の前記ターゲットサンプル群に含まれる少なくとも1つのサンプル、及び前記移動処理後の前記ソースサンプル群に含まれる少なくとも1つのサンプルの、時刻tから時刻Tまでの観測データを少なくとも用いて、複数の弱学習器を生成し、
生成した前記複数の弱学習器の各々と、生成した前記複数の弱学習器の各々について、前記移動処理後の前記ターゲットサンプル群に含まれる前記少なくとも1つのサンプルの時刻tにおける観測データを用いて評価される分類誤差と、に少なくとも基づいて、t次学習モデルを生成する
学習モデルの生成方法であって、
前記観測データは、時刻Tまでの間の特定の時刻におけるサンプルの状態及び行動を少なくとも含み、
前記t次学習モデルは、時刻tにおける状態を少なくとも入力として、時刻tにおける行動を出力する
生成方法。
【請求項10】
コンピュータに、
ターゲットサンプル群に含まれる複数のサンプルのうち、時刻t+1(tは自然数)における観測データに対する(t+1)次学習モデルの出力誤差が所定量より大きいサンプルを、前記ターゲットサンプル群からソースサンプル群に移動させる移動処理と、
前記移動処理後の前記ターゲットサンプル群に含まれる少なくとも1つのサンプル、及び前記移動処理後の前記ソースサンプル群に含まれる少なくとも1つのサンプルの、時刻tから時刻Tまでの観測データを少なくとも用いて、複数の弱学習器を生成する処理と、
生成した前記複数の弱学習器の各々と、生成した前記複数の弱学習器の各々について、前記移動処理後の前記ターゲットサンプル群に含まれる前記少なくとも1つのサンプルの時刻tにおける観測データを用いて評価される分類誤差と、に少なくとも基づいて、t次学習モデルを生成する処理と
を実行させるためのプログラムであって、
前記観測データは、時刻Tまでの間の特定の時刻におけるサンプルの状態及び行動を少なくとも含み、
前記t次学習モデルは、時刻tにおける状態を少なくとも入力として、時刻tにおける行動を出力する
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、学習モデル生成装置、学習モデルの生成方法及びプログラムに関し、特に動的に行動計画を推定する学習モデルを生成する学習モデル生成装置、学習モデルの生成方法及びプログラムに関する。
【背景技術】
【0002】
医療現場においては、患者の疫病を治療するための治療計画を医者が記録し、治療計画の実施状況を管理している。例えば特許文献1では、医者の操作によって治療計画を作成する疫病管理システムが開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし上述の特許文献1では、医者は患者の各種情報から現状分析をした上で、治療ガイドラインに沿って患者に合わせた治療計画を作成するため、作成負担が大きい。また治療計画の良し悪しは医者の経験値に左右される。そこで患者に合わせた治療計画を学習モデルによって自動的に作成することにより、医療現場における治療計画の作成を支援することが望まれている。上記課題は、医療現場に限らず、教育現場又はスポーツのトレーニング等においても同様である。
【0005】
本開示の目的は、上述した課題に鑑み、対象者に合わせた行動計画を作成する学習モデルを好適に生成する学習モデル生成装置、学習モデルの生成方法及びプログラムを提供することにある。
【課題を解決するための手段】
【0006】
本開示の一態様にかかる学習モデル生成装置は、
ターゲットサンプル群に含まれる複数のサンプルのうち、時刻t+1(tは自然数)における観測データに対する(t+1)次学習モデルの出力誤差が所定量より大きいサンプルを、前記ターゲットサンプル群からソースサンプル群に移動させる移動処理を実行する移動部と、
前記移動処理後の前記ターゲットサンプル群に含まれる少なくとも1つのサンプル、及び前記移動処理後の前記ソースサンプル群に含まれる少なくとも1つのサンプルの、時刻tから時刻Tまでの観測データを少なくとも用いて、複数の弱学習器を生成し、
生成した前記複数の弱学習器の各々と、生成した前記複数の弱学習器の各々について、前記移動処理後の前記ターゲットサンプル群に含まれる前記少なくとも1つのサンプルの時刻tにおける観測データを用いて評価される分類誤差と、に少なくとも基づいて、t次学習モデルを生成する生成部と
を備え、
前記観測データは、時刻Tまでの間の特定の時刻におけるサンプルの状態及び行動を少なくとも含み、
前記t次学習モデルは、時刻tにおける状態を少なくとも入力として、時刻tにおける行動を出力する。
【0007】
本開示の一態様にかかる学習モデルの生成方法は、
ターゲットサンプル群に含まれる複数のサンプルのうち、時刻t+1(tは自然数)における観測データに対する(t+1)次学習モデルの出力誤差が所定量より大きいサンプルを、前記ターゲットサンプル群からソースサンプル群に移動させる移動処理を実行し、
前記移動処理後の前記ターゲットサンプル群に含まれる少なくとも1つのサンプル、及び前記移動処理後の前記ソースサンプル群に含まれる少なくとも1つのサンプルの、時刻tから時刻Tまでの観測データを少なくとも用いて、複数の弱学習器を生成し、
生成した前記複数の弱学習器の各々と、生成した前記複数の弱学習器の各々について、前記移動処理後の前記ターゲットサンプル群に含まれる前記少なくとも1つのサンプルの時刻tにおける観測データを用いて評価される分類誤差と、に少なくとも基づいて、t次学習モデルを生成する。
前記観測データは、時刻Tまでの間の特定の時刻におけるサンプルの状態及び行動を少なくとも含み、
前記t次学習モデルは、時刻tにおける状態を少なくとも入力として、時刻tにおける行動を出力する。
【0008】
本開示の一態様にかかるプログラムは、
コンピュータに、
ターゲットサンプル群に含まれる複数のサンプルのうち、時刻t+1(tは自然数)における観測データに対する(t+1)次学習モデルの出力誤差が所定量より大きいサンプルを、前記ターゲットサンプル群からソースサンプル群に移動させる移動処理と、
前記移動処理後の前記ターゲットサンプル群に含まれる少なくとも1つのサンプル、及び前記移動処理後の前記ソースサンプル群に含まれる少なくとも1つのサンプルの、時刻tから時刻Tまでの観測データを少なくとも用いて、複数の弱学習器を生成する処理と、
生成した前記複数の弱学習器の各々と、生成した前記複数の弱学習器の各々について、前記移動処理後の前記ターゲットサンプル群に含まれる前記少なくとも1つのサンプルの時刻tにおける観測データを用いて評価される分類誤差と、に少なくとも基づいて、t次学習モデルを生成する処理と
を実行させる。
前記観測データは、時刻Tまでの間の特定の時刻におけるサンプルの状態及び行動を少なくとも含み、
前記t次学習モデルは、時刻tにおける状態を少なくとも入力として、時刻tにおける行動を出力する。
【発明の効果】
【0009】
本開示により、対象者に合わせた行動計画を推定する学習モデルを好適に生成する学習モデル生成装置、学習モデルの生成方法及びプログラムを提供できる。
【図面の簡単な説明】
【0010】
【
図1】実施形態1にかかる学習モデル生成装置の構成を示すブロック図である。
【
図2】実施形態1にかかる学習モデルの生成方法の流れを示すフローチャートである。
【
図3】実施形態1にかかるt次学習モデルの生成方法の流れを示すフローチャートである。
【
図4】実施形態2にかかるシステムの全体構成を示すブロック図である。
【
図5】実施形態2にかかるシステムの処理の流れを概略的に示す図である。
【
図6】実施形態2にかかるj次学習モデルに含まれる弱学習器の導出方法を説明するための図である。
【
図7】実施形態2にかかる学習モデル生成装置の構成を示すブロック図である。
【
図8】実施形態2にかかる記憶部のデータ構造の一例を示す図である。
【
図9】実施形態2にかかる学習モデルの生成方法の流れを示すフローチャートである。
【
図10】実施形態2にかかるt次学習モデルの生成方法の流れを示すフローチャートである。
【
図11】実施形態2にかかるt次学習モデルを生成するためのアルゴリズムの一例を示す図である。
【
図12】実施形態3にかかるt次学習モデルを生成するためのアルゴリズムの一例を示す図である。
【
図13】実施形態4にかかるt次学習モデルに含まれる弱学習器の導出方法を説明するための図である。
【
図14】実施形態5にかかるt次学習モデルに含まれる弱学習器の導出方法を説明するための図である。
【
図15】実施形態5にかかるt次学習モデルを生成するためのアルゴリズムの一例を示す図である。
【
図17】関連するシステムの処理の流れを概略的に示す図である。
【
図18】関連するt次学習モデルの導出方法を説明するための図である。
【発明を実施するための形態】
【0011】
以下では、本開示の実施形態について、図面を参照しながら詳細に説明する。各図面において、同一又は対応する要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略される。
【0012】
<実施形態の課題>
まず本開示の少なくとも1つの実施形態の課題を詳細に説明する。
医療現場における患者の治療計画の作成を支援するために、コンピュータにより治療計画を自動的に作成することが行われている。例えば、対象となる患者と同じ病気に罹患する患者の過去の治療計画を見つけ出し、同様の治療計画を対象となる患者の治療計画として作成することが検討されている。
【0013】
しかし、同じ病気の患者でも、特性や病気に関連する遺伝子等の情報には違いがある。したがって患者固有の情報に基づいて、一人ひとりに合った治療計画を作成することが求められている。これにより患者の治療効果を高めることが期待されている。
【0014】
さらに患者個人の履歴を考慮しながら個人の特性に合った治療を、治療開始後に逐次的に選択することが検討されている。これにより治療効果をより高め、また、患者の負担や費用の少ない治療を提案できることが期待されている。
【0015】
このような背景の中、患者の反応に応じて、患者の治療効果を最大化する治療を、逐次的にかつ自動的に選択する学習モデルを用いたシステムが開発されている。尚、上記システムは、医療現場に限らず、教育現場又はスポーツのトレーニング等においても用いられ得る。したがって以下では、「治療」という用語に代えて、上位概念である「行動」という用語を用いる。
【0016】
図17は、関連するシステムの処理の流れを概略的に示す図である。
システムは、時刻j毎に異なる学習モデルを用いて、その時刻に実行されるべき行動であって、患者の治療効果を最大化する行動を提案する。時刻は、絶対的な時刻であってもよいし、相対的な時刻であってもよい。相対的な時刻である場合、時刻はステージと呼ばれてもよい。また時刻は、時間軸上の点を指すものであってもよいし、時間軸上の所定期間を指すものであってもよい。以下では、jは自然数とする。例えば時刻j=1は治療1日目を示し、時刻j=2は治療2日目を示し、時刻j=tは治療t日目を示し、時刻j=T(Tはtより大きい自然数)は最終時刻、つまり治療最終日を示してよい。
【0017】
例えばj次学習モデルD
*
jは、対象者hの時刻jに観測された状態X
jhを入力とする。そしてj次学習モデルD
*
jは、時刻jにおける対象者hの行動A
jhを推定する。推定された行動A
jhは、対象者hが時刻jから最終時刻Tまでに得られる効果の合計を最大化する行動である。例えば
図17には、時刻j=t-1、t、t+1に対応するj次学習モデルとして、それぞれ、(t-1)次学習モデルD
*
t-1、t次学習モデルD
*
t、(t+1)次学習モデルD
*
t+1が示されている。
【0018】
システムの処理は、時刻j=1~Tのj次学習モデルを生成するモデル生成フェーズと、時刻j=1~Tのj次学習モデルを用いて対象者hの行動を計画する推定フェーズとに分かれる。
【0019】
(モデル生成フェーズ)
j次学習モデルD*
jは、時刻jにおけるターゲットサンプル群(以下、Tサンプル群と呼ぶ)TGjの観測データを用いて生成される。Tサンプル群TGは、その観測データが学習時に教師データとして用いられる患者(つまりサンプル)の集合である。尚、サンプルiの時刻jにおける観測データは、状態Xjiと、行動Ajiと、効果Yjiとを組み合わせたベクトル{Xji,Aji,Yji}で表される。効果Yjiは、時刻j=1~Tの中の特定の時刻における状態を有するサンプルが、その時刻における行動により得られる効果の量を示す。まずi=1,2,…,n(nは自然数)のサンプルについての時刻j=1~Tにおける観測データが用意される。
【0020】
例えばj=tの場合のt次学習モデルD*
tの生成に用いられる、時刻tにおけるTサンプル群TGtの観測データは、t次学習モデルD*
tを学習するための教師データである。t次学習モデルD*
tを学習するための教師データは、i=1,2,…,n(nは自然数)のサンプルのうち、Tサンプル群に含まれるサンプルの観測データである。
【0021】
各学習モデルの生成は、時刻jを遡るように後ろ向きに行われる。つまりj=tの場合のt次学習モデルD*
tは、j=(t+1)の場合の(t+1)次学習モデルD*
t+1が生成された後に生成される。(t+1)次学習モデルD*
t+1の学習においては、時刻t+1に対応するTサンプル群TGt+1に含まれるサンプルの観測データが用いられる。ここで(t+1)次学習モデルD*
t+1で最適ではなかったサンプルの観測データは全て、t次学習モデルD*
tでは用いられずに破棄される。したがって時刻tに対応するTサンプル群TGtに含まれるサンプルの観測データは、時刻t+1に対応するTサンプル群TGt+1に含まれるサンプルのうち、(t+1)次学習モデルD*
t+1で最適ではなかったサンプルを除いたサンプルである。つまりそれは、(t+1)次学習モデルD*
t+1で最適であったサンプルである。
【0022】
このため一般的には、時刻tに対応するTサンプル群TGtのサンプル数は、時刻(t+1)に対応するTサンプル群TGt+1のサンプル数よりも小さくなる。サンプル数が減ると、教師データとして用いる観測データ数が減るため、推定精度が高い学習モデルを生成することが困難となる。
【0023】
尚、「j次学習モデルD*
jで最適ではなかったサンプル」とは、そのサンプルiの観測データに含まれる状態Xjiをj次学習モデルD*
jに入力した場合に、観測データに含まれる行動Ajiとj次学習モデルD*
jの出力との間の誤差が所定量より大きいサンプルを示す。以下では、上記誤差を「j次学習モデルD*
jの出力誤差」と呼ぶ。以下では一例として、「j次学習モデルD*
jで最適ではなかったサンプル」は、j次学習モデルD*
jの出力誤差が0より大きいこと、つまりj次学習モデルD*
jが誤分類をしたことを示す。反対に、「j次学習モデルD*
jで最適であったサンプル」は、j次学習モデルD*
jの出力誤差が所定量以下であるサンプルを示す。以下では一例として、「j次学習モデルD*
jで最適であったサンプル」は、観測データに含まれるAjiとj次学習モデルD*
jの出力とが一致している、つまり出力誤差が0であることを示す。
【0024】
(推定フェーズ)
一方、行動の推定は、時刻jの経過とともに前向きに行われる。例えば現時刻jをtとすると、現時刻tに観測された対象者hの状態Xthをt次学習モデルD*
tに入力することで、現時刻tの対象者hの行動Athを得る。そして時間が経過して時刻t+1となった場合、時刻t+1に観測された対象者hの状態X(t+1)hを入力することで、時刻t+1の対象者hの行動A(t+1)hを得る。このように時刻の経過とともに、逐次、とるべき行動を推定していく。したがって行動計画が動的に作成される。
【0025】
上記課題は、数式から把握することもできる。
【0026】
図18は、関連するt次学習モデルD
*
tの導出方法を説明するための図である。t次学習モデルD
*
tは、以下の式(1)で導出できる。
【数1】
【0027】
式(1)に含まれる関数fは、t次学習モデルD*
tに対応する関数である。したがって、関数fを求めることは、t次学習モデルD*
tを求めることと同じである。
【0028】
図18に示すブロック900は、時刻(t+1)から最終時刻Tまでに得られる効果(報酬)の合計を示している。またブロック902は、時刻tでの効果(報酬)を示している。またLは分類損失関数であり、ブロック903は、時刻tにおける損失を示している。
【0029】
ここでブロック901に含まれるブロック904は、出力誤差を示している。ブロック901は、時刻(t+1)から時刻Tまでの全ての時刻で出力誤差が0である場合は1となるが、それ以外の場合は0となることを示している。ブロック901が0となることは、そのサンプルの観測データが破棄されることを意味している。つまり時刻(t+1)から時刻Tまでの間に1度でも出力誤差が0でない時刻があれば、その時点でそのサンプルの観測データは破棄される。したがって時刻が後ろ向きに進めば進むほど、サンプル数が減っていくことが理解できる。
【0030】
以下の実施形態の少なくとも1つは、このような課題を解決するものである。
【0031】
<実施形態1>
次に、本発明の実施形態1について説明する。実施形態1は、後述する実施形態の概要として説明されてよい。
図1は、実施形態1にかかる学習モデル生成装置10の構成を示すブロック図である。学習モデル生成装置10は、動的に行動計画を作成するために、各時刻に対応する学習モデルを順次生成するコンピュータ装置である。具体的には、学習モデル生成装置10は、i=1,2,…,nのサンプルについての時刻j=1~Tにおける観測データを用いて、T個のj次学習モデルD
*
jを、そのモデルに対応する時刻を遡りながら生成していく(D
*
T→D
*
T-1→…→D
*
t+1→D
*
t→…→D
*
1)。学習モデル生成装置10は、1又は複数のコンピュータ装置を含むコンピュータシステムであってもよい。
【0032】
ここでサンプルiの任意の時刻jにおける観測データは、その時刻jにおけるサンプルiの状態Xji及び行動Ajiを少なくとも含む。
【0033】
またj次学習モデルD*
jは、対象者hの時刻jにおける状態Xjhを少なくとも入力として、時刻jにおける行動Ajhを出力する学習済のモデルである。例えばj次学習モデルD*
jは、弱学習器をアンサンブルさせたモデルである。アンサンブルさせたモデルの例として、ブースティングがある。以下では、j次学習モデルD*
jはブースティングの一例であるAdaBoostのアルゴリズムを採用するものとする。またj次学習モデルD*
jは弱学習器の重み付き和で表されるものとして説明する。
【0034】
図1に示すように、学習モデル生成装置10は、移動部12と、生成部13とを備える。
移動部12は、移動処理を実行する。移動処理は、Tサンプル群に含まれる複数のサンプルのうち、時刻t+1における観測データに対する(t+1)次学習モデルD
*
t+1の出力誤差が所定量より大きいサンプルを、Tサンプル群からソースサンプル群に移動させる理である。以下では、ソースサンプル群をSサンプル群と呼ぶ。また所定の時刻に対応するTサンプル群に含まれるサンプルをTサンプル、所定の時刻に対応するSサンプル群に含まれるサンプルをSサンプルと呼ぶことがある。
【0035】
また「移動」とは、物理的に移動させることであってもよいし、論理的に移動させることであってもよい。物理的に移動させることとして、格納先を変更することが挙げられる。論理的に移動させることとして、そのサンプルの属性(所属先や種別)を変更することであってもよい。
【0036】
また「所定量より大きい」とは、これに限らないが、0より大きいことであってよい。つまり移動部12は、時刻t+1において最適ではなかったサンプルを時刻tにおいてTサンプル群からSサンプル群に移動させる。時刻tにおけるTサンプル群には、最適ではなかったサンプルは含まれないことになる。
【0037】
生成部13は、Tサンプル群に含まれるサンプルの、時刻tから時刻Tまでの観測データと、Sサンプル群に含まれるサンプルの、時刻tから時刻Tまでの観測データとを用いて、t次学習モデルD*
tを生成する。
【0038】
具体的には、生成部13は複数の弱学習器を生成し、複数の弱学習器を組み合わせてt次学習モデルD*
tを生成する。t次学習モデルD*
tに含まれる弱学習器は、対象者iの時刻tにおける状態Xtiを少なくとも入力として、時刻tにおける行動Atiを出力する。
【0039】
より具体的には、まず生成部13は、移動処理後のTサンプル群に含まれるサンプル、及び移動処理後のSサンプル群に含まれるサンプルの、時刻tから時刻Tまでの観測データ{Xji,Aji,Yji}(j=t,t+1,…,T、i=1,2,…,n)を教師データとして用いて、複数の弱学習器を生成する。このとき生成部13は、教師データとして、Tサンプル群に含まれる全てのサンプルの時刻tから時刻Tまでの観測データを用いてもよいし、一部のサンプルの時刻tから時刻Tまでの観測データを用いてもよい。Sサンプル群に含まれるサンプルについても同様である。
【0040】
次に生成部13は、複数の弱学習器の各々について、移動処理後のTサンプル群に含まれるサンプルの時刻tにおける観測データを用いて、分類誤差を評価する。つまり生成部13は、Tサンプルに対する分類誤差を算出する。
【0041】
最後に生成部13は、複数の弱学習器の各々と、対応する分類誤差とに少なくとも基づいて、t次学習モデルD*
tを生成する。例えば生成部13は、上述の分類誤差に応じた重みで重み付けされた弱学習器を組み合わせることで、t次学習モデルD*
tを生成する。
【0042】
図2は、実施形態1にかかる学習モデルの生成方法の流れを示すフローチャートである。まず学習モデル生成装置10は、Tサンプル群の各サンプルの観測データを取得する(S10)。次に学習モデル生成装置10の生成部13は、j次学習モデルD
*
jを生成する(S11)。
【0043】
次に学習モデル生成装置10の移動部12は、時刻jにおけるTサンプル群の各サンプルについて、S12~S13に示す処理を繰り返す。S12において、移動部12は、そのサンプルの時刻jにおける観測データに対するj次学習モデルD*
jの出力誤差があるか否かを判定する。出力誤差があるとは、誤判定であることを示す。このとき、移動部12は、j次学習モデルD*
jにそのサンプルiの時刻jにおける観測データに含まれる状態Xjiを入力し、得られた出力値と、観測データに含まれる行動Ajiとの差分を、出力誤差として算出する。出力誤差がある場合(S12でYes)、移動部12は、そのサンプルを、破棄しないでTサンプル群からSサンプル群に移動させる(S13)。一方、出力誤差がない場合(S12でNo)、移動部12は、そのサンプルをTサンプル群からSサンプル群に移動させず、そのままTサンプル群に残す。
【0044】
Tサンプル群に含まれる全てのサンプルについて上記処理を行った後、学習モデル生成装置10は時刻jをデクリメントする(S14)。そして学習モデル生成装置10は、時刻jが0より大きい場合(S15でYes)、処理をS11に戻し、時刻j=0となった場合(S15でNo)、処理を終了する。
【0045】
図3は、j=tの場合の実施形態1にかかるt次学習モデルの生成方法の流れを示すフローチャートである。まず生成部13は、Tサンプル群及びSサンプル群に含まれるサンプルの、時刻j=tから時刻Tまでの観測データを用いて、弱学習器を生成する(S20)。次に生成部13は、弱学習器について、Tサンプル群に含まれる複数のサンプルの時刻tにおける観測データを用いて分類誤差を評価する(S21)。S20~S21により、生成部13は、複数の弱学習器と、各弱学習器に対応する分類誤差とを生成する。次に生成部13は、生成した弱学習器と、対応する分類誤差とに少なくとも基づいて、t次学習モデルを生成する(S22)。
【0046】
尚、生成部13は、生成する弱学習器の数だけS20~S21を繰り返した後、S22を実行してもよい。
【0047】
このように実施形態1によれば、対象となる時刻tに対応する学習モデルに含まれる弱学習器の生成において、Tサンプルに加えて、それより後の時刻t+1に対応する学習モデルで最適でなかったとされたSサンプルを用いる。尚、後の時刻t+1に対応する学習モデルは、対象となる時刻tに対応する学習モデルよりも前に生成される。したがって学習に用いる教師データを水増しできる。これにより、対象者1人ひとりに合わせた各時刻の行動を高精度に推定する学習モデルを生成できる。
【0048】
<実施形態2>
次に、本開示の実施形態2について説明する。
図4は、実施形態2にかかるシステム1の全体構成を示すブロック図である。システム1は、対象者1人ひとりに合わせた行動計画を動的に作成するためのコンピュータシステムである。システム1は、学習モデル生成装置10aと、学習モデル記憶装置20と、推定装置30とを備える。学習モデル生成装置10aと、学習モデル記憶装置20と、推定装置30とは、互いに通信可能に接続されている。
【0049】
学習モデル生成装置10aは、上述した学習モデル生成装置10の一例である。学習モデル生成装置10は各時刻について、その時刻にとるべき行動Aを推定する学習モデルを生成する。とるべき行動Aは、その時刻以降に得られる効果が最大となるような行動である。
【0050】
学習モデル記憶装置20は、学習モデル生成装置10aが生成した各時刻における学習モデルを記憶する記憶装置である。
【0051】
推定装置30は、対象者hの行動計画を動的に作成する。具体的には、推定装置30は、学習モデル記憶装置20に記憶されている学習モデルを読み出し、学習モデルを用いて、対象となる時刻において対象者hがとるべき行動Aを逐次推定していく。
【0052】
図5は、実施形態2にかかるシステム1の処理の流れを概略的に示す図である。実施形態2にかかるシステム1の処理の流れは、
図17に示す処理の流れと基本的に同様である。学習モデル生成装置10aは
図5の点線で示すモデル生成フェーズの処理を実行し、推定装置30は
図5の一点鎖線で示す推定フェーズの処理を実行する。
【0053】
図5では、
図17と同様に、Tサンプル群TG
tから、時刻t+1におけるTサンプル群TG
t+1に含まれるサンプルのうち、(t+1)次学習モデルD
*
t+1で最適でなかったサンプルが除かれることが示されている。但し、
図5では、時刻t+1におけるTサンプル群TG
t+1に含まれるサンプルのうち、(t+1)次学習モデルD
*
t+1で最適ではなかったサンプルは、時刻tにおけるSサンプル群SG
tに含められる点で、
図17と相違する。本実施形態2では、Sサンプル群SG
tには、(t+1)次学習モデルD
*
t+1で最適ではなかったサンプルだけが含まれる。しかしこれらに加えて、Sサンプル群SG
tには、それより後の時刻(例えばj=t+2)に対応する学習モデルで最適ではなかったサンプルの少なくとも一部が含まれていてもよい。
【0054】
そして学習モデル生成装置10aは、t次学習モデルD*
tを生成するとき、Tサンプル群TGtに含まれるサンプルの観測データに加えて、Sサンプル群SGtに含まれるサンプルの観測データを用いる。
【0055】
本実施形態2では、j次学習モデルD
*
jは、M個の弱学習器(第1弱学習器T
(1)、第2弱学習器T
(2)、…第M弱学習器T
(M))の重み付き和で表現される(Mは自然数)。具体的には、j次学習モデルD
*
jは、以下の式(2)で与えられる。
【数2】
α
j
(m)は、j次学習モデルを構成するm番目の弱学習器T
(m)の信頼度である。
【0056】
例えば信頼度α
j
(m)は、以下の式(3)で与えられる。
【数3】
Kは、分類の総数、つまり行動A
jiの種類数である。式(3)に示されるように、信頼度α
j
(m)は、その弱学習器T
(m)の第2分類誤差err
2
(m)に少なくとも基づいて算出される。第2分類誤差err2(m)は、実施形態1の分類誤差の一例であり、その弱学習器T
(m)について、Tサンプル群TGに含まれるサンプルの時刻jにおける観測データを用いて評価される分類誤差である。
【0057】
例えば第2分類誤差err
2
(m)は、以下の式(4)で与えられる。
【数4】
X
i
T及びA
i
Tは、それぞれ、サンプルiがTサンプル群TGに含まれるサンプル(Tサンプル)である場合の、状態及び行動である。
【0058】
尚、第2分類誤差err
2
(m)に含まれる係数ξ
iは、以下の式(5)で与えられる。
【数5】
【0059】
図6は、実施形態2にかかるt次学習モデルD
*
tに含まれる弱学習器T
(m)の導出方法を説明するための図である。
まず弱学習器T
(m)は、式(1)に含まれるfと関連する。式(1)に含まれるfは、以下の式(6)で与えられる。
【数6】
g
(m)(X)は、弱学習器T
(m)と一対一で対応する関数である。つまり、弱学習器T
(m)を学習することは、最適化されたg
(m)(X)を求めることに対応する。
【0060】
g(X)は、K次元ベクトルを表す。g(X)とT(X)との関係は、以下の式(7)で与えられる。
【数7】
g(X)は、T(X)=kの場合にk要素が1をとり、それ以外の要素が-1/(K-1)をとるベクトルである。
【0061】
最適化されたg(X)の導出式は、以下の式(8-1)で与えられる。
【数8】
【0062】
β
mは、m番目の弱学習器用のパラメータである。z
iは患者iのA
tiを表している。ここでzはK次元ベクトルを表し、以下の式(9)で与えられる。
【数9】
A
ti=kの場合は、zベクトルは、k要素が1を取り、それ以外の要素が-1/(K-1)をとるベクトルである。
【0063】
arg min以降に示される目的関数は、第1分類誤差err1と呼ばれることがある。第1分類誤差err1は、弱学習器T(m)について、Tサンプルの時刻tの観測データ及びSサンプルの時刻tの観測データを用いて評価される分類誤差に対応する。
【0064】
最適化されたg(X)を求めることは、第1分類誤差err1を最小化するg(X)を求めることに対応する。
【0065】
式(8)に対応する
図6に含まれるブロック900’は、式(1)に対応する
図18に含まれるブロック900および901に対応する。また式(8)に対応する
図6に含まれるブロック902は、式(1)に対応する
図18に含まれるブロック902と同様である。但し
図6には、ブロック903に代えてブロック100が含まれる点で
図18と相違する。ブロック100は、サンプルiについて、時刻tにおける損失を示す。
【0066】
ブロック100に含まれるω
iは、サンプルiについての損失に加えられる重みである。ω
i
m―1は、式(10)で与えられる。
【数10】
【0067】
尚、fは、m-1の重み付け和であり、以下の式(11)で与えられる。
【数11】
【0068】
重みωiは、g(X)の最適化(つまり弱学習器T(X)の学習)に対して、サンプルiの観測データが及ぼす影響の度合いを示している。本実施形態2では、重みωiは、学習済の弱学習器を1個ずつ生成する度に更新され得る。更新の態様は、対応する時刻においてサンプルiがTサンプル又はSサンプルのどちらに分類されているかによって異なる。サンプルiがTサンプルである場合の重みをωi
T、サンプルiがSサンプルである場合の重みをωi
Sとする。
【0069】
図7は、実施形態2にかかる学習モデル生成装置10aの構成を示すブロック図である。学習モデル生成装置10aは、記憶部11と、移動部12aと、生成部13aと、出力部18とを備える。
【0070】
記憶部11は、i=1~nのサンプルの、時刻j=1~Tまでの観測データを記憶する記憶装置である。
【0071】
移動部12aは、上述した移動部12の一例である。生成部13aは、上述した生成部13の一例である。生成部13aは、弱学習器生成部14と、信頼度算出部15と、重み更新部16と、学習モデル生成部17とを有する。移動部12a及び生成部13aは、j=Tから後ろ向きに順次j次学習モデルD*
jを生成し、生成したj次学習モデルD*
jを出力部18に出力する。
【0072】
出力部18は、生成されたj次学習モデルD*
jを出力する。また出力部18は、生成されたj次学習モデルD*
jを学習モデル記憶装置20に格納する。
【0073】
図8は、実施形態2にかかる記憶部11のデータ構造の一例を示す図である。記憶部11に記憶される観測データは、サンプルi=1~nの、時刻j=1~Tまでの(状態X
ji,行動A
ji,効果Y
ji}である。観測データは、Tサンプル群TGのサンプル(Tサンプル)の観測データd_TGと、Sサンプル群SGのサンプル(Sサンプル)の観測データd_SGと、破棄サンプル群(Nサンプル群)NGのサンプル(Nサンプル)の観測データd_NGとに分けられる。
【0074】
最終時刻j=Tに対応するT次学習モデルD*
Tを生成する時点では、サンプルは全てTサンプル群TGに含まれる。そして記憶部11に記憶される観測データは、全て観測データd_TGに分類される。そしてこのとき、Sサンプル群SGに含まれるサンプルの数は0であり、観測データd_SGは存在しない。またこのとき、Nサンプル群NGに含まれるサンプルの数は0であり、観測データd_NGは存在しない。
【0075】
そして生成する学習モデルに対応するjが小さくなるほど、Tサンプル群TGに含まれるサンプルの数は減少し、Sサンプル群SG及びNサンプル群NGのいずれかに含まれるサンプルの数が増加する。したがってjが小さくなるほど、観測データd_TGに分類される観測データの数は減少し、観測データd_SG及び観測データd_NGのいずれかに分類される観測データの数は増加する。
【0076】
尚、Sサンプル群SGに含まれるサンプルは、生成する学習モデルに対応する時刻(例えば時刻t)の直後の時刻(例えば時刻t+1)に対応する学習モデルによって、最適とされなかったサンプルである。
【0077】
次に、各要素の具体的な処理を
図9~
図11を用いて説明する。
まず
図9は、実施形態2にかかる学習モデルの生成方法の流れを示すフローチャートである。
図9に示すステップは、
図2に示すステップに加えて、S100を有する。
【0078】
S100において、移動部12aは、Sサンプル群SGのサンプルをNサンプル群NGに移動させ、Sサンプル群SGに含まれるサンプルを破棄する。具体的には、移動部12aは、観測データd_SGと分類されていた観測データを、観測データd_NGに分類し直す。Sサンプル群SGの初期化により、直近までは最適であったが、直近だけ最適でなかったサンプルだけを、学習モデルの生成に考慮できる。これにより、最適でなかったサンプルの観測データを教師データに用いることによる学習モデルの推定精度の低下への影響を抑え、好適に教師データを水増しできる。
【0079】
尚、S12~S13において、移動部12aは、Tサンプル群TGのサンプルのうち、時刻t+1の観測データに対して(t+1)次学習モデルD*
t+1の出力誤差が生じるサンプルを、Tサンプル群TGからSサンプル群SGに移動させる。具体的には、移動部12aは、観測データd_TGと分類されていた観測データのうち、(t+1)次学習モデルD*
t+1の出力誤差が生じる観測データを、観測データd_SGに分類し直す。
【0080】
図10は、j=tの場合の実施形態2にかかるt次学習モデルの生成方法の流れを示すフローチャートである。
図11は、実施形態2にかかるt次学習モデルを生成するためのアルゴリズムの一例を示す図である。
【0081】
まず
図10のS110において、生成部13aの弱学習器生成部14は、各種パラメータを設定する。具体的には、
図11の段落1に示すように、弱学習器生成部14は、Sサンプルの重みω
i
Sを更新するために用いられる係数α
S,iを設定する。また
図11の段落2に示すように、各サンプルの重みω
i(ω
i
T又はω
i
S)を初期化する。
【0082】
次に以下のS111~S115に示す処理を、M回繰り返す。Mは予め定められている。
イテレーションmのS111において、弱学習器生成部14は、t次学習モデルD
*
tに含まれるM個の弱学習器のうちm番目の弱学習器T
(m)を生成する。このとき弱学習器生成部14は、各サンプルに設定された重みω
iで重み付された、Tサンプルの時刻t~時刻Tにおける観測データd_TGと、Sサンプルの時刻t~時刻Tにおける観測データd_SGとを用いる。そして弱学習器生成部14は、Tサンプルの観測データ及びSサンプルの観測データを用いて評価される第1分類誤差err
1が最小化するような弱学習器を見つけ、これを弱学習器T
(m)として生成する。具体的には、弱学習器生成部14は、
図11の段落5に示すように、式(8)を用いて弱学習器T
(m)を生成する。
【0083】
S112において、生成部13aの信頼度算出部15は、Tサンプルの時刻tの観測データを用いて弱学習器T
(m)の第2分類誤差err
2
(m)を評価する。具体的には、
図11の段落6-7に示すように、信頼度算出部15は、式(4)を用いて第2分類誤差を算出する。
【0084】
S113において、信頼度算出部15は、第2分類誤差err
2
(m)に基づいて弱学習器T
(m)の信頼度α
j
(m)を算出する。具体的には、
図11の段落8に示すように、信頼度算出部15は、式(3)を用いて信頼度を算出する。
【0085】
次に生成部13aの重み更新部16は、S114~S115に示す処理を、サンプル毎に繰り返す。尚、本処理において、重み更新部16はTサンプルとSサンプルとで異なる処理を実行する。具体的には、重み更新部16は、Tサンプルのうち、時刻tにおける観測データd_TGに対する弱学習器T(m)の出力誤差があるサンプルについては、重みωi
Tを増加させる(S114でYes→S115)。またこれに加えて又は代えて、重み更新部16は、Sサンプルのうち、時刻tにおける観測データd_SGに対する弱学習器T(m)の出力誤差があるサンプルについては、重みωi
Sを減少させる(S114でYes→S115)。一方、重み更新部16は、Tサンプル及びSサンプルに関わらず、出力誤差が所定量以下、又は出力誤差がないサンプルについては、重みを更新しない(S114でNo)。これにより、時刻tで最適であったサンプルの観測データは時刻tで最適でなかったサンプルの観測データよりも、繰り返しが進むにつれて影響度が相対的に大きくなっていく。つまり時刻tで最適であったサンプルを最適でなかったサンプルよりも重視してt次学習モデルを生成できる。したがってt次学習モデルD*
tの推定精度が向上する。
【0086】
より具体的には、重み更新部16は、
図11の段落9-11に示す態様で重みω
i
T及びω
i
Sを更新してもよい。すなわち重み更新部16は、Tサンプルのうち、時刻tにおける観測データd_TGに対する弱学習器T
(m)の出力誤差があるサンプルについては、弱学習器T
(m)の信頼度α
t
(m)に応じて重みω
i
Tを増加させてよい。式(3)に示されるように信頼度α
t
(m)は第2分類誤差err
2
(m)に基づいて算出されるため、重みω
i
Tは、第2分類誤差err
2
(m)に応じて増加する。したがって時刻tで最適であったサンプルについては第2分類誤差が大きいほど、繰り返しが進むにつれて影響度を強めることができる。これにより、t次学習モデルの生成において時刻tで最適であったサンプルを最適でなかったサンプルよりも好適に重視できる。その結果、t次学習モデルD
*
tの推定精度がより向上する。尚、重み更新部16は、Sサンプルのうち、時刻tにおける観測データd_SGに対する弱学習器T(m)の出力誤差があるサンプルについては、S110で設定した係数α
S,i、つまり予め定められた係数α
S,iに応じて重みω
i
Sを減少させてよい。
【0087】
重み更新部16は全てのサンプルについてS114~S115に示す処理を実行した後、処理を次のイテレーションm+1に進める。
【0088】
これをM回繰り返すことで、生成部13aは、M個の弱学習器T(m)(第1弱学習器T(1)、第2弱学習器T(2)、…第M弱学習器T(M))と、各弱学習器に対応する信頼度αt
(m)(第1信頼度αt
(1)、第2信頼度αt
(2)、…第M信頼度αt
(M))を生成する。
【0089】
そしてS116において、生成部13aの学習モデル生成部17は、生成したM個の弱学習器T
(m)の各々に対して、対応する信頼度α
t
(m)で重み付けしたものを組み合わせることで、t次学習モデルD
*
tを生成する。具体的には、
図11の段落13に示すように、学習モデル生成部17は、式(2)を用いて、各弱学習器T
(m)に対して、対応する信頼度α
t
(m)で重み付けしたものを互いに足し合わせてt次学習モデルD
*
tを生成する。
【0090】
このように実施形態2によれば、実施形態1と同様に、学習モデルの生成、特に弱学習器の生成に用いる教師データを水増しできる。これにより、対象者1人ひとりに合わせた各時刻の行動を高精度に推定する学習モデルを生成できる。
【0091】
また学習モデルに含まれる複数の弱学習器を生成する過程で、TサンプルがSサンプルよりも学習への影響度が大きくなるように、影響度を示す重みωiを更新していく。したがって学習モデルの推定精度が向上する。
【0092】
<実施形態3>
次に、本開示の実施形態3について説明する。実施形態3は、t次学習モデルD*
tに含まれる複数の弱学習器を生成する場合に、(t+1)次学習モデルD*
t+1の生成の結果を考慮する。具体的には、生成部13aは、t次学習モデルD*
tに含まれる弱学習器の学習においてSサンプルが与える影響度を示す重みωi
Sを、そのSサンプルが(t+1)次学習モデルD*
t+1を用いて最適でなかったとされる量に応じて決定する。
【0093】
実施形態3にかかるt次学習モデルの生成方法の流れは、
図10に示すステップと基本的に同様であるため、以下では相違する部分のみを、
図12を用いて説明する。
図12は、実施形態3にかかるt次学習モデルD
*
tを生成するためのアルゴリズムの一例を示す図である。
【0094】
まずS110において、弱学習器生成部14は、Sサンプルの時刻tにおける観測データd_SGに対する(t+1)次学習モデルD
*
t+1の出力誤差τ
iに基づいて、重みω
i
Sの初期値を決定する。上記出力誤差τ
iは、上述した「最適でなかったとされる量」に対応する。具体的には
図12の段落1に示すように、弱学習器生成部14は、上記出力誤差τ
iに基づいて、重みω
i
Sの初期値を決定するための係数α
S,iの初期値を決定する。これにより、Sサンプルの間でも、そのSサンプルが与える影響度を出力誤差τ
iに応じて異ならせることができる。例えば弱学習器生成部14は、出力誤差τiが大きいSサンプルほど重みω
i
Sの初期値を小さくして影響度を小さくし、出力誤差τ
iが小さいSサンプルほど、弱学習器の学習に影響を与えるように設計できる。
【0095】
また重み更新部16は、S115においてSサンプルの重みω
i
Sを更新する場合の重みの減少量も、上記出力誤差τ
iに基づいて決定する。具体的には
図12の段落10に示すように、重み更新部16は、次のイテレーションm+1で使用する重みω
i
Sを、上記出力誤差τ
iを含む係数α
S,iと負の相関関係となるように更新する。これにより、出力誤差τ
iが大きいSサンプルほど重みの減少量を大きくして、その結果イテレーション数が増えるたびに影響度を小さくできる。したがってSサンプルの間でも、出力誤差τ
iに応じて、そのSサンプルが与える影響度を顕著に異ならせることができる。
【0096】
図12では、生成部13aは、重みω
i
Sの初期値を出力誤差τ
iに基づいて決定することと、重みω
i
Sを更新する場合の減少量を出力誤差τ
iに基づいて決定することの両方を実行しているが、いずれか一方を省略してもよい。
【0097】
<実施形態4>
次に、本開示の実施形態4について説明する。実施形態4では、生成部13aがt次学習モデルD*
tを生成する場合に、Sサンプルについては、時刻t+1での効果として、時刻t+1における観測データに含まれる効果Yの量から所定量を減じた情報を用いる。これにより、Sサンプルが(t+1)次学習モデルD*
t+1で最適ではなかったとされるサンプルであることを、t次学習モデルD*
tの生成において明示的に教えることができる。
【0098】
図13は、実施形態4にかかるt次学習モデルD
*
tに含まれる弱学習器T
(m)の導出方法を説明するための図である。実施形態4では、弱学習器T
(m)は、式(8)に代えて以下の式(12)から導出できる。
【数12】
【0099】
図13に示すように、式(12)は、ブロック900’に代えて、ブロック900’’を有する点で式(8)と異なる。ブロック900’’においては、時刻t+1における効果に対応するS
t+1,iが、観測データに含まれるY
t+1,iを用いて以下の式(13)(ブロック120)のように与えられる。
【数13】
【0100】
λは1未満の調整パラメータである。λをSサンプルの時刻t+1における効果Yに掛け合わせることで、Sサンプルについては時刻t+1での効果Yの量を減じることができる。一方、Tサンプルについては時刻t+1での効果の量として、観測された効果Yの量を用いる。これによりSサンプルであることを考慮して、学習モデルを生成できる。
【0101】
尚、Sサンプルの時刻t+1における効果に適用されるλは、サンプル毎に、そのサンプルの時刻t+1の観測データに対する(t+1)次学習モデルD*
t+1の出力誤差τiに基づいて決定されてよい。一例として弱学習器生成部14は、出力誤差τiが小さいSサンプルはλ=0.9を割り当て、出力誤差τiが大きいSサンプルはλ=0.5を割り当ててよい。このようにすることで、弱学習器生成部14は、出力誤差τiが大きいSサンプルほど、つまり最適から遠かったSサンプルほど、時刻t+1における効果Yから減じる量を大きくできる。
【0102】
<実施形態5>
次に、本開示の実施形態5について説明する。実施形態5は、生成部13aは、学習モデルに含まれる弱学習器を生成する場合に、コストセンシティブ学習を用いる。
【0103】
図14は、実施形態5にかかるt次学習モデルD
*
tに含まれる弱学習器T
(m)の導出方法を説明するための図である。
【0104】
実施形態5では、弱学習器T
(m)は、式(8)に代えて以下の式(14)から導出できる。
【数14】
【0105】
式(14)では、Σの中に、コスト関数C
*(
図14のブロック130)が導入されている点で式(8)と相違する。コスト関数C
*は、弱学習器T
(m)の出力誤差があった場合、つまり弱学習器T
(m)が誤判定した場合に罰則を与えるものである。例えばコスト関数C
*は、弱学習器T
(m)の出力誤差が大きい場合には、大きな罰則を与え、弱学習器T
(m)の出力誤差が小さい場合には、小さな罰則を与えるように設計される。
【0106】
例えばK=5の場合のコスト関数C
*は、以下の式(15)のように与えられる。尚、C
*(p,q)は、コスト関数を示す行列(コスト行列)のp列q行目の要素を表す。
【数15】
C
*の非対角成分は、弱学習器T
(m)の出力誤差があった場合、つまり弱学習器T
(m)が誤判定した場合に機能する。具体的にはC
*の非対角成分は、出力誤差が大きい場合に罰則が大きくなるようにする。
【0107】
実施形態5にかかるt次学習モデルD
*
tの生成方法の流れは、
図10に示すステップと基本的に同様であるため、以下では相違する部分のみを、
図15を用いて説明する。
図15は、実施形態5にかかるt次学習モデルD
*
tを生成するためのアルゴリズムの一例を示す図である。
【0108】
S111において、弱学習器生成部14は、
図15の段落5に示すように、式(8)に代えて式(14)を用いて弱学習器T
(m)を生成する。したがって、弱学習器T
(m)が推定する行動とサンプルで観測された行動Aとができる限り大きく離れないように、弱学習器T
(m)が学習される。これにより、弱学習器T
(m)が、最適に近かったSサンプルと、最適から遠かったSサンプルとをより明確に分けることができるようになる。つまり弱学習器T
(m)が、最適に近かったSサンプルを、より正確に見つけることができる。
【0109】
続いて、システム1に含まれる学習モデル生成装置10,10a及び推定装置30の物理構成を説明する。
図18は、学習モデル生成装置10,10a又は推定装置30として用いられ得るコンピュータの構成例を示す図である。コンピュータ1000は、プロセッサ1010、記憶部1020、ROM(Read Only Memory)1030、RAM(Random Access Memory)1040、通信インタフェース(IF:Interface)1050、及びユーザインタフェース1060を有する。
【0110】
通信インタフェース1050は、有線通信手段又は無線通信手段などを介して、コンピュータ1000と通信ネットワークとを接続するためのインタフェースである。ユーザインタフェース1060は、例えばディスプレイなどの表示部を含む。また、ユーザインタフェース1060は、キーボード、マウス、及びタッチパネルなどの入力部を含む。尚、ユーザインタフェース1060は、必須ではない。
【0111】
記憶部1020は、各種のデータを保持できる補助記憶装置である。記憶部1020は、必ずしもコンピュータ1000の一部である必要はなく、外部記憶装置であってもよいし、ネットワークを介してコンピュータ1000に接続されたクラウドストレージであってもよい。
【0112】
ROM1030は、不揮発性の記憶装置である。ROM1030には、例えば比較的容量が少ないフラッシュメモリなどの半導体記憶装置が用いられる。プロセッサ1010が実行するプログラムは、記憶部1020又はROM1030に格納され得る。記憶部1020又はROM1030は、例えば学習モデル生成装置10,10a又は推定装置30内の各部の機能を実現するための各種プログラムを記憶する。
【0113】
上記プログラムは、様々なタイプの非一時的なコンピュータ可読媒体を用いて格納され、コンピュータ1000に供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記憶媒体を含む。非一時的なコンピュータ可読媒体の例は、例えばフレキシブルディスク、磁気テープ、又はハードディスクなどの磁気記録媒体、例えば光磁気ディスクなどの光磁気記録媒体、CD(compact disc)、又はDVD(digital versatile disk)などの光ディスク媒体、及び、マスクROM、PROM(programmable ROM)、EPROM(erasable PROM)、フラッシュROM、又はRAMなどの半導体メモリを含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体を用いてコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバなどの有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【0114】
RAM1040は、揮発性の記憶装置である。RAM1040には、DRAM(Dynamic Random Access Memory)又はSRAM(Static Random Access Memory)などの各種半導体メモリデバイスが用いられる。RAM1040は、データなどを一時的に格納する内部バッファとして用いられ得る。プロセッサ1010は、記憶部1020又はROM1030に格納されたプログラムをRAM1040に展開し、実行する。プロセッサ1010は、CPU(Central Processing Unit)又はGPU(Graphics Processing Unit)であってよい。プロセッサ1010がプログラムを実行することで、学習モデル生成装置10,10a又は推定装置30内の各部の機能が実現され得る。プロセッサ1010は、データなどを一時的に格納できる内部バッファを有してもよい。
【0115】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【0116】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
ターゲットサンプル群に含まれる複数のサンプルのうち、時刻t+1(tは自然数)における観測データに対する(t+1)次学習モデルの出力誤差が所定量より大きいサンプルを、前記ターゲットサンプル群からソースサンプル群に移動させる移動処理を実行する移動部と、
前記移動処理後の前記ターゲットサンプル群に含まれる少なくとも1つのサンプル、及び前記移動処理後の前記ソースサンプル群に含まれる少なくとも1つのサンプルの、時刻tから時刻Tまでの観測データを少なくとも用いて、複数の弱学習器を生成し、
生成した前記複数の弱学習器の各々と、生成した前記複数の弱学習器の各々について、前記移動処理後の前記ターゲットサンプル群に含まれる前記少なくとも1つのサンプルの時刻tにおける観測データを用いて評価される分類誤差と、に少なくとも基づいて、t次学習モデルを生成する生成部と
を備え、
前記観測データは、時刻Tまでの間の特定の時刻におけるサンプルの状態及び行動を少なくとも含み、
前記t次学習モデルは、時刻tにおける状態を少なくとも入力として、時刻tにおける行動を出力する
学習モデル生成装置。
(付記2)
前記移動部は、前記ソースサンプル群に含まれるサンプルを破棄した後、時刻t+1における観測データに対する(t+1)次学習モデルの出力誤差が所定量より大きいサンプルを、ソースサンプル群に移動させる
付記1に記載の学習モデル生成装置。
(付記3)
前記複数の弱学習器は、第1弱学習器及び第2弱学習器を少なくとも含み、
前記生成部は、
サンプル毎に設定された重みで重み付けされた観測データを用いて前記第1弱学習器を生成し、
前記移動処理後の前記ターゲットサンプル群に含まれるサンプルのうち、時刻tにおける観測データに対する前記第1弱学習器の出力誤差が所定量より大きいサンプルについては、重みを増加させ、
前記移動処理後の前記ソースサンプル群に含まれるサンプルのうち、時刻tにおける観測データに対する前記第1弱学習器の出力誤差が所定量より大きいサンプルについては、重みを減少させ、
サンプル毎に更新された重みで重み付けされた観測データを用いて前記第2弱学習器を生成する
付記1又は2に記載の学習モデル生成装置。
(付記4)
前記移動処理後の前記ターゲットサンプル群に含まれるサンプルのうち、時刻tにおける観測データに対する前記第1弱学習器の出力誤差が所定量より大きいサンプルについて、前記第1弱学習器について評価される前記分類誤差に応じて重みを増加させ、
前記移動処理後の前記ソースサンプル群に含まれるサンプルのうち、時刻tにおける観測データに対する前記第1弱学習器の出力誤差が所定量より大きいサンプルについて、予め定められた係数に応じて重みを減少させる
付記3に記載の学習モデル生成装置。
(付記5)
前記生成部は、前記移動処理後の前記ソースサンプル群に含まれる各サンプルについて、そのサンプルの時刻t+1における観測データに対する(t+1)次学習モデルの出力誤差に基づいて、そのサンプルの観測データの重みの初期値、及びそのサンプルの重みを更新する場合の重みの減少量の少なくとも一方を決定する
付記3又は4に記載の学習モデル生成装置。
(付記6)
前記生成部は、
前記移動処理後の前記ソースサンプル群に含まれる各サンプルについて、そのサンプルの時刻t+1における観測データに対する(t+1)次学習モデルの出力誤差が大きいほど、そのサンプルの観測データの重みの初期値を小さくする
または
前記移動処理後の前記ソースサンプル群に含まれる各サンプルについて、そのサンプルの時刻t+1における観測データに対する(t+1)次学習モデルの出力誤差が大きいほど、そのサンプルの重みを更新する場合の重みの減少量を大きくする
付記5に記載の学習モデル生成装置。
(付記7)
前記観測データは、時刻Tまでの間の特定の時刻における状態を有するサンプルが、前記特定の時刻における行動により得られる効果の量を含む
付記1から6のいずれか1項に記載の学習モデル生成装置。
(付記8)
前記生成部は、前記複数の弱学習器を生成する場合に、前記移動処理後の前記ソースサンプル群に含まれる各サンプルについては、そのサンプルの時刻t+1における効果として、時刻t+1における観測データに含まれる効果の量から(t+1)次学習モデルの出力誤差に応じた量を減じた情報を用いる
付記7に記載の学習モデル生成装置。
(付記9)
前記生成部は、前記効果の量を減じる場合に、時刻t+1における(t+1)次学習モデルの出力誤差が大きいサンプルほど減じる量を大きくする
付記8に記載の学習モデル生成装置。
(付記10)
前記生成部は、前記複数の弱学習器の各々を生成する場合に、コストセンシティブ学習を用いる
付記1から9のいずれか1項に記載の学習モデル生成装置。
(付記11)
前記生成部は、
生成した前記複数の弱学習器の各々について、その弱学習器の信頼度を、その弱学習器について、前記移動処理後の前記ターゲットサンプル群に含まれる少なくとも1つのサンプルの時刻tの観測データを用いて評価される前記分類誤差、に少なくとも基づいて算出し、
生成した前記複数の弱学習器の各々に対して、対応する信頼度で重み付けしたものを組み合わせることで、前記t次学習モデルを生成する
付記1から10のいずれか1項に記載の学習モデル生成装置。
(付記12)
ターゲットサンプル群に含まれる複数のサンプルのうち、時刻t+1(tは自然数)における観測データに対する(t+1)次学習モデルの出力誤差が所定量より大きいサンプルを、前記ターゲットサンプル群からソースサンプル群に移動させる移動処理を実行し、
前記移動処理後の前記ターゲットサンプル群に含まれる少なくとも1つのサンプル、及び前記移動処理後の前記ソースサンプル群に含まれる少なくとも1つのサンプルの、時刻tから時刻Tまでの観測データを少なくとも用いて、複数の弱学習器を生成し、
生成した前記複数の弱学習器の各々と、生成した前記複数の弱学習器の各々について、前記移動処理後の前記ターゲットサンプル群に含まれる前記少なくとも1つのサンプルの時刻tにおける観測データを用いて評価される分類誤差と、に少なくとも基づいて、t次学習モデルを生成する
学習モデルの生成方法であって、
前記観測データは、時刻Tまでの間の特定の時刻におけるサンプルの状態及び行動を少なくとも含み、
前記t次学習モデルは、時刻tにおける状態を少なくとも入力として、時刻tにおける行動を出力する
生成方法。
(付記13)
コンピュータに、
ターゲットサンプル群に含まれる複数のサンプルのうち、時刻t+1(tは自然数)における観測データに対する(t+1)次学習モデルの出力誤差が所定量より大きいサンプルを、前記ターゲットサンプル群からソースサンプル群に移動させる移動処理と、
前記移動処理後の前記ターゲットサンプル群に含まれる少なくとも1つのサンプル、及び前記移動処理後の前記ソースサンプル群に含まれる少なくとも1つのサンプルの、時刻tから時刻Tまでの観測データを少なくとも用いて、複数の弱学習器を生成する処理と、
生成した前記複数の弱学習器の各々と、生成した前記複数の弱学習器の各々について、前記移動処理後の前記ターゲットサンプル群に含まれる前記少なくとも1つのサンプルの時刻tにおける観測データを用いて評価される分類誤差と、に少なくとも基づいて、t次学習モデルを生成する処理と
を実行させるためのプログラムであって、
前記観測データは、時刻Tまでの間の特定の時刻におけるサンプルの状態及び行動を少なくとも含み、
前記t次学習モデルは、時刻tにおける状態を少なくとも入力として、時刻tにおける行動を出力する
プログラム。
【符号の説明】
【0117】
1 システム
10,10a 学習モデル生成装置
11 記憶部
12,12a 移動部
13,13a 生成部
14 弱学習器生成部
15 信頼度算出部
16 重み更新部
17 学習モデル生成部
18 出力部
20 学習モデル記憶装置
30 推定装置
100,120,130,900,900’,900’’,901,902,903,904 ブロック
1000 コンピュータ
1010 プロセッサ
1020 記憶部
1030 ROM
1040 RAM
1050 通信インタフェース(IF)
1060 ユーザインタフェース(IF)
TG ターゲットサンプル群
SG ソースサンプル群