JP2020047079A - 学習プログラム、学習方法および学習装置 - Google Patents

学習プログラム、学習方法および学習装置 Download PDF

Info

Publication number
JP2020047079A
JP2020047079A JP2018176277A JP2018176277A JP2020047079A JP 2020047079 A JP2020047079 A JP 2020047079A JP 2018176277 A JP2018176277 A JP 2018176277A JP 2018176277 A JP2018176277 A JP 2018176277A JP 2020047079 A JP2020047079 A JP 2020047079A
Authority
JP
Japan
Prior art keywords
learning
tensor
data
classifier
medical treatment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2018176277A
Other languages
English (en)
Inventor
俊一 渡邉
Shunichi Watanabe
俊一 渡邉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2018176277A priority Critical patent/JP2020047079A/ja
Publication of JP2020047079A publication Critical patent/JP2020047079A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】学習精度の低下を抑制することを課題とする。【解決手段】学習装置は、第1の要素を含む多次元から成る第1のテンソルおよび第1の正解データに基づいて第1の分類器を学習する。学習装置は、多次元から成る第2のテンソルの入力に対し、学習された第1の分類器が予測した正例および負例の割合を示す推論結果に基づき、第1の要素に重みを反映した第2の要素を含む第2のテンソルを生成する。学習装置は、第2の要素を含む第2のテンソルおよび第2の正解データに基づいて第2の分類器を学習する。【選択図】図1

Description

本発明は、学習プログラム、学習方法および学習装置に関する。
グラフ構造のデータを深層学習することが可能なグラフ構造学習技術(以降、このようなグラフ構造学習を行う装置の一形態を「ディープテンソル(DeepTensor:DT)」と呼ぶ。)が知られている。DTは、入力としてグラフ構造を用い、グラフ構造をテンソルデータ(以下では、テンソルと記載する場合がある)として扱う。そして、DTでは、予測に寄与するグラフの部分構造(テンソルの部分パターン)をコアテンソルとして抽出することで、高精度な予測を実現する。
特開2014−229142号公報 特表2017−520068号公報 特表2018−517956号公報 特開2010−218045号公報
しかしながら、上記DTを用いた学習では、異なる要因であるにも関わらず、テンソルの部分パターンが類似する場合があり、学習精度が低下する。
例えば、正例データである体調不良者の出勤簿データ、および、負例データである通常者の出勤簿データをDTに入力して予測モデルを学習し、学習済みの予測モデルに、判別対象者の出勤簿データを入力して、判別対象者が療養(休職)する可能性を予測する例を考える。この例では、出勤簿データにおける欠勤パターンを学習するが、うつ病などのメンタル要因による欠勤パターンと、交通事故や脳卒中などのフィジカル要因による欠勤パターンとが類似する場合がある。
DTは、メンタル疾患となる要因を正例データ内の部分パターンから認識することに努めるが、メンタル要因の欠勤パターンとフィジカル要因の欠勤パターンが混在することから、本来重要であるメンタル要因の部分パターンの認識率が低下する。この結果、DTの学習精度が低下し、判別精度の低下に繋がる。なお、フィジカル要因の混入度合や混入箇所は専門家でも判断し難く、人手による適切なラベル付けを以て予め除去するといった対応は困難である。
一つの側面では、学習精度の低下を抑制することができる学習プログラム、学習方法および学習装置を提供することを目的とする。
第1の案では、学習プログラムは、コンピュータに、第1の要素を含む多次元から成る第1のテンソルおよび第1の正解データに基づいて第1の分類器を学習する処理を実行させる。学習プログラムは、コンピュータに、多次元から成る第2のテンソルの入力に対し、学習された前記第1の分類器が予測した正例および負例の割合を示す推論結果に基づき、前記第1の要素に重みを反映した第2の要素を含む前記第2のテンソルを生成する処理を実行させる。学習プログラムは、コンピュータに、前記第2の要素を含む前記第2のテンソルおよび第2の正解データに基づいて第2の分類器を学習する処理を実行させる。
一つの側面では、学習精度の低下を抑制することができる。
図1は、実施例1にかかる学習装置の全体例を説明する図である。 図2は、学習データの例を説明する図である。 図3は、グラフ構造とテンソルとの関係の一例を示す図である。 図4は、部分グラフ構造の抽出の一例を示す図である。 図5は、ディープテンソルの学習例を説明する図である。 図6は、入力テンソルを説明する図である。 図7は、実施例1にかかる学習装置の機能構成を示す機能ブロック図である。 図8は、出勤簿データDBに記憶される情報の例を示す図である。 図9は、実施例1にかかる第1学習データDBに記憶される情報の例を示す図である。 図10は、実施例1にかかる第2学習データDBに記憶される情報の例を示す図である。 図11は、実施例1にかかる混合判別結果DBに記憶される情報の例を示す図である。 図12は、テンソル化を説明する図である。 図13は、第1の学習を説明する図である。 図14は、混合割合の判別を説明する図である。 図15は、第2の学習を説明する図である。 図16は、学習処理の流れを示すフローチャートである。 図17は、ハードウェア構成例を説明する図である。
以下に、本願の開示する学習プログラム、学習方法および学習装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、各実施例は、矛盾のない範囲内で適宜組み合わせることができる。
[全体構成]
近年、従業員の体調管理などは、企業にとっても取り組むべき重要な事項に位置づけられており、従業員の出勤簿データから、数か月先のメンタル不調を予測し、カウンセリング等の対応を早期に実施することが行われている。一般的には、専任スタッフが、膨大な人数の従業員の出勤簿データを閲覧し、頻繁な出張、長時間残業、連続する欠勤、無断欠勤、これらの組合せなどの特徴的なパターンの勤務状態に該当する従業員を目視で探している。このような特徴的なパターンは、各専任スタッフにより基準が異なることもあり、明確に定義することが難しい。
そこで、本実施例では、ディープテンソルを用いた深層学習の一例として、従業員等の出勤簿データを学習対象とし、体調不良者の出勤簿データおよび通常者の出勤簿データをディープテンソルに入力して従業員のメンタル不調を予測する予測モデルを学習する例を説明する。実施例1にかかる学習装置100は、社員の日々の出勤、退勤時間、休暇取得、出張などの状況を含む出勤簿データを機械学習して予測モデルを生成し、学習後の予測モデルを用いて、予測対象のある社員の出勤簿データから、当該社員が療養(休職)するか療養しないかを予測するコンピュータ装置の一例である。なお、ここでは、学習装置100が学習処理と予測処理とを実行する例で説明するが、別々の装置で実行することもできる。
具体的には、学習装置100は、療養したことがある体調不良者の出勤簿データ(ラベル=療養あり)と、療養したことがない通常者の出勤簿データ(ラベル=療養なし)とを学習データとして、グラフ構造のデータを深層学習(ディープラーニング・Deep Learning;DL)するディープテンソルによって予測モデルを生成する。その後、学習結果を適用した予測モデルを用いて新規なグラフ構造のデータの正確な事象(ラベル)の推定(予測)を実現する。
ここで、出勤簿データにおいて、メンタル要因者が療養した特徴を示す特徴パターンと、交通事故や脳卒中などのフィジカル要因者が療養した特徴を示す特徴パターンとが類似することがあり、メンタル不調が疑われる従業員を特定することをさらに困難にしている。そこで、実施例1にかかる学習装置100は、2段階の分類器(学習モデル)を用いることで、メンタル要因者の特徴パターンの抽出精度を向上させ、メンタル不調者の予測精度を向上させる。
図1は、実施例1にかかる学習装置の全体例を説明する図である。図1に示すように、学習装置100は、フィジカル要因による療養期間を有するフィジカル要因者の出勤簿データと、フィジカル要因による療養期間を有さない通常者の出勤簿データとを用意する。そして、学習装置100は、フィジカル要因者の出勤簿データを正例、通常者の出勤簿データを負例として、ディープテンソルによる学習を実行し、第1の学習モデルを生成する。ここで生成される第1の学習モデルは、フィジカル要因による療養の発生を予測するモデルである。
その後、学習装置100は、メンタル要因による療養期間を有する療養者の出勤簿データである学習データA1を第1の学習モデルに入力し、推定結果A1「推定値(フィジカル非要因率)、推定値(フィジカル要因率)」として「0.75、0.25」を取得する。ここで取得される予測結果は、学習データA1におけるフィジカル要因の特徴を示す特徴パターンの混合割合などである。図1の例では、学習データA1に含まれる出勤簿のパターンには、フィジカル要因の特徴を示す特徴パターンに該当する割合が0.25、フィジカル要因の特徴パターンに該当しない割合が0.75であることを示している。
続いて、学習装置100は、メンタル要因による療養期間を有する療養者の出勤簿データである学習データA1を正例、療養期間を有さない通常者の出勤簿データである学習データB1を負例として学習を実行し、第2の学習モデルを生成する。このとき、学習装置100は、学習データA1においてフィジカル要因の特徴パターンではない割合が0.75であることから、学習データA1の重みを1から0.75に変更して学習を実行する。ここで生成される第2の学習モデルは、療養者の出勤簿データにおけるフィジカル要因の割合を考慮した学習モデルであり、メンタル要因の療養の発生を予測するモデルである。
その後、学習装置100は、予測対象の出勤簿データである予測対象データを、第2の学習モデルに入力し、その出力結果を取得する。そして、学習装置100は、出力結果に基づいて、予測対象データに対応する従業員が療養する可能性があるか否かを判定する。
ここで、ディープテンソルに入力する学習データについて説明する。図2は、学習データの例を説明する図である。学習データは、6か月ごとの出勤簿データと、その6か月以降から3か月以内に療養実績があるか否かを示すラベルとから構成される。図2の(a)は、ラベル(療養あり)が付される体調不良者の出勤簿データであり、図2の(b)は、療養しなかったラベル(療養なし)が付される通常者の出勤簿データである。図2に示すように、実施例1にかかる学習装置100は、「6か月分の出勤簿データ、ラベル(療養あり)」と、「6か月分の出勤簿データ、ラベル(療養なし)」とを学習データとして予測モデルを学習する。学習装置100は、学習後、ある人の6か月分の出勤簿データから3か月以内に療養するか否かを予測する。なお、図2内の網掛けは、休暇を示す。
次に、ディープテンソルについて説明する。ディープテンソルとは、テンソル(グラフ情報)を入力とするディープラーニングであり、ニューラルネットワーク(以降ではNNと記載する場合がある)の学習とともに、判別に寄与する部分グラフ構造を自動的に抽出する。この抽出処理は、ニューラルネットワークの学習とともに、入力テンソルデータのテンソル分解のパラメータを学習することによって実現される。
次に、図3および図4を用いてグラフ構造について説明する。図3は、グラフ構造とテンソルとの関係の一例を示す図である。図3に示すグラフ20は、4つのノードがノード間の関係性(例えば「相関係数が所定値以上」)を示すエッジで結ばれている。なお、エッジで結ばれていないノード間は、当該関係性がないことを示す。グラフ20を2階のテンソル、つまり行列で表す場合、例えば、ノードの左側の番号に基づく行列表現は「行列A」で表され、ノードの右側の番号(囲み線で囲んだ数字)に基づく行列表現は「行列B」で表される。これらの行列の各成分は、ノード間が結ばれている(接続している)場合「1」で表され、ノード間が結ばれていない(接続していない)場合「0」で表される。以下の説明では、この様な行列を接続行列ともいう。ここで、「行列B」は、「行列A」の2,3行目および2,3列目を同時に置換することで生成できる。ディープテンソルでは、この様な置換処理を用いることで順序の違いを無視して処理を行う。すなわち、「行列A」および「行列B」は、ディープテンソルでは順序性が無視され、同じグラフとして扱われる。なお、3階以上のテンソルについても同様の処理となる。
図4は、部分グラフ構造の抽出の一例を示す図である。図4に示すグラフ21は、6つのノードがエッジで結ばれたものである。グラフ21は、行列(テンソル)で表すと行列22に示すように表現できる。行列22に対して、特定の行および列を入れ替える演算、特定の行および列を抽出する演算、ならびに、接続行列における非ゼロ要素をゼロに置換する演算を組み合わせることで、部分グラフ構造を抽出できる。例えば、行列22の「ノード1,4,5」に対応する行列を抽出すると、行列23となる。次に、行列23の「ノード4,5」間の値をゼロに置換すると、行列24となる。行列24に対応する部分グラフ構造は、グラフ25となる。
このような部分グラフ構造の抽出処理は、テンソル分解と呼ばれる数学的演算によって実現される。テンソル分解とは、入力されたn階テンソルをn階以下のテンソルの積で近似する演算である。例えば、入力されたn階テンソルを1つのn階テンソル(コアテンソルと呼ばれる。)、および、より低階のn個のテンソル(n>2の場合、通常は2階のテンソル、つまり行列が用いられる。)の積で近似する。この分解は一意ではなく、入力データが表すグラフ構造中の任意の部分グラフ構造をコアテンソルに含める事ができる。
続いて、ディープテンソルの学習について説明する。図5は、ディープテンソルの学習例を説明する図である。図5に示すように、学習装置100は、療養ありなどの教師ラベル(ラベルA)が付された出勤簿データから入力テンソルを生成する。そして、学習装置100は、入力テンソルにテンソル分解を行って、初回にランダムに生成されたターゲットコアテンソルに類似するようにコアテンソルを生成する。そして、学習装置100は、コアテンソルをニューラルネットワーク(NN:Neural Network)に入力して分類結果(ラベルA:70%、ラベルB:30%)を得る。その後、学習装置100は、分類結果(ラベルA:70%、ラベルB:30%)と教師ラベル(ラベルA:100%、ラベルB:0%)との分類誤差を算出する。
ここで、学習装置100は、誤差逆伝搬法を拡張した拡張誤差伝搬法を用いて予測モデルの学習およびテンソル分解の方法の学習を実行する。すなわち、学習装置100は、NNが有する入力層、中間層、出力層に対して、分類誤差を下層に伝搬させる形で、分類誤差を小さくするようにNNの各種パラメータを修正する。さらに、学習装置100は、分類誤差をターゲットコアテンソルまで伝搬させ、予測に寄与するグラフの部分構造、すなわち体調不良者の特徴を示す特徴パターンもしくは通常者の特徴を示す特徴パターンに近づくように、ターゲットコアテンソルを修正する。
また、実施例1で説明するテンソル分解は、ターゲットコアテンソルに類似するようにコアテンソルを算出することにより、分類に重要な構造をコアテンソルの類似の位置に配置する。そして、このコアテンソルを用いてNNを学習することにより、精度の高い分類を実現する。テンソル分解は、2段階の最適化により計算される。図6は、入力テンソルを説明する図である。図6に示すように、第1段階では、与えられたターゲットコアテンソルを用いて、入力テンソルを最もよく近似するように要素行列のみ最適化される。第2段階では、第1段階で最適化された要素行列を用いて、入力テンソルを最もよく近似するようにコアテンソルを最適化する。
なお、学習後の予測時には、テンソル分解により、入力テンソルをコアテンソル(入力テンソルの部分パターン)に変換し、コアテンソルをニューラルネットに入力することで、予測結果を得ることができる。テンソル分解では、コアテンソルがターゲットコアテンソルに類似するように変換される。
[機能構成]
図7は、実施例1にかかる学習装置100の機能構成を示す機能ブロック図である。図7に示すように、学習装置100は、通信部101、記憶部102、制御部130を有する。
通信部101は、他の装置との通信を制御する処理部であり、例えば通信インタフェースである。例えば、通信部101は、管理者の端末から、処理開始指示、各学習データ、各学習データがテンソル化された入力テンソルなどを受信する。また、通信部11は、管理者の端末に対して、学習結果や学習後の予測結果などを出力する。
記憶部102は、プログラムやデータを記憶する記憶装置の一例であり、例えばメモリやハードディスクなどである。この記憶部102は、出勤簿データDB103、第1学習データDB104、第1テンソルDB105、第1学習結果DB106、第2学習データDB107、第2テンソルDB108、混合判別結果DB109、第2学習結果DB110、予測対象DB111を記憶する。
出勤簿データDB103は、社員等の出勤に関する出勤簿データを記憶するデータベースである。ここで記憶される出勤簿データは、各企業で使用される出勤簿をデータ化したものであり、公知の様々な出勤管理システムなどから取得することができる。図8は、出勤簿データDB103に記憶される情報の例を示す図である。図8に示すように、出勤簿データは、「従業員No、日付、曜日、出欠区分、出勤時刻、退勤時刻、残業時間、出張」を対応付けて記憶する。なお、出欠区分には、出社、療養、休暇などの種別が格納される。
図8の例は、従業員No.100の従業員の出勤簿データを示している。例えば、図8の2行目は、「2015年4月2日木曜日」の出勤簿データであり、この日は、出張がなく、「8:49」に出社して「0:00」に退社し、残業時間が「360分」である例を示す。また、図8の7行目は、「2015年8月24日水曜日」の出勤簿データであり、この日から「2015年10月4日火曜日」まで「療養」したことを示す。なお、出勤簿データの単位は、日ごとに限らず、週単位や月単位であってもよい。
第1学習データDB104は、テンソル化対象となる、フィジカル要因による療養期間を有するフィジカル要因者の特徴パターンを学習するために使用する第1の学習データを記憶するデータベースである。図9は、実施例1にかかる第1学習データDB104に記憶される情報の例を示す図である。図9に示すように、第1学習データDB104は、[データID、学習データ、ラベル」として「Y1、学習データC1、フィジカル要因」や「Y2、学習データC2、通常者」などを記憶する。
例えば、6か月の出勤簿データを1つの学習データとし、その後の3か月以内にフィジカル要因により療養した療養期間がある場合に、ラベルとして「フィジカル要因」が設定され、その後の3か月以内に療養期間がない場合に、ラベルとして「通常者」が設定される。
第1テンソルDB105は、第1の学習データから生成された各テンソル(テンソルデータ)を記憶するデータベースである。この第1テンソルDB105は、各テンソルとラベルとを対応付けたテンソルデータを記憶する。例えば、第1テンソルDB105は、「データNo、ラベル」として「テンソルNo.1、フィジカル要因」や「テンソルNo.2、通常者」などを記憶する。なお、ここで記憶される各テンソルは、学習装置100以外の別の装置で生成してもよく、学習装置100が生成することもできる。
第1学習結果DB106は、第1の学習結果を記憶するデータベースである。具体的には、第1学習結果DB106は、フィジカル要因による療養の有無を予測する第1の学習モデルに関する情報を記憶する。例えば、第1学習結果DB106は、制御部130による第1の学習データの判別結果(分類結果)、機械学習やディープラーニングによって学習された、NNの各種パラメータやディープテンソルの各種パラメータなどを記憶する。
第2学習データDB107は、テンソル化対象となる、メンタル要因による療養期間を有するメンタル要因者の特徴を示す特徴パターンを学習するために使用される第2の学習データを記憶するデータベースである。図10は、実施例1にかかる第2学習データDB107に記憶される情報の例を示す図である。図10に示すように、第2学習データDB107は、「データID、学習データ、ラベル」として「X1、学習データA1、療養あり」や「X2、学習データA2、療養なし(通常者)」などを記憶する。
例えば、6か月の出勤簿データを1つの学習データとし、その後の3か月以内に療養した療養期間がある場合に、ラベルとして「療養あり」が設定され、その後の3か月以内に療養期間がない場合に、ラベルとして「療養なし」が設定される。なお、6か月の出勤簿データに療養期間が含まれている場合、そのデータは学習データとして採用されない。これは、予測時に、予測元のデータ(入力)となる6か月分の出勤簿データにすでに「療養」が入っている人は、明らかに直近で療養しているとわかっており、この先3か月の療養予測の対象にはしないためである。
第2テンソルDB108は、第2の学習データから生成された各テンソル(テンソルデータ)を記憶するデータベースである。この第2テンソルDB108は、各テンソルとラベルとを対応付けたテンソルデータを記憶する。例えば、第2テンソルDB108は、「データNo、ラベル」として「テンソルNo.1、療養あり」や「テンソルNo.2、療養なし(通常者)」などを記憶する。なお、ここで記憶される各テンソルは、学習装置100以外の別の装置で生成してもよく、学習装置100が生成することもできる。
混合判別結果DB109は、第2の学習データに含まれる、フィジカル要因の特徴パターンと、フィジカル要因以外の特徴パターンとの混合割合を記憶するデータベースである。具体的には、混合判別結果DB109は、第2学習処理部150により予測された結果であり、第2の学習データを第1の学習モデルに入力して得られる判別結果である。
図11は、実施例1にかかる混合判別結果DB109に記憶される情報の例を示す図である。図11に示すように、混合判別結果DB109は、「データID、学習データ、推論値0(フィジカル非要因率)、推論値1(フィジカル要因率)」を対応付けて記憶する。ここで記憶される「データID」は、データを識別する識別子であり、「学習データ」は、ラベルに「療養あり」が設定された第2の学習データである。「推論値0(フィジカル非要因率)」は、学習データにフィジカル要因ではない特徴パターンが含まれる予測値(割合)であり、「推論値1(フィジカル要因率)」は、学習データにフィジカル要因の特徴パターンが含まれる予測値(割合)である。図11の例は、データIDが「X1」である学習データA1について、フィジカル要因の特徴パターンの割合が0.245、フィジカル要因以外の特徴パターンの割合が0.755と予測されたことを示す。
第2学習結果DB110は、第2の学習結果を記憶するデータベースである。具体的には、第2学習結果DB110は、メンタル要因による療養の発生有無を予測する第2の学習モデルに関する情報を記憶する。例えば、第2学習結果DB110は、制御部110による第2の学習データの判別結果(分類結果)、機械学習やディープラーニングによって学習された、NNの各種パラメータやディープテンソルの各種パラメータなどを記憶する。
予測対象DB111は、学習された第2の学習モデルを用いて、新規に療養の有無を予測する対象の出勤簿データを記憶するデータベースである。例えば、予測対象DB111は、予測対象の出勤簿データ、または、予測対象の出勤簿データから生成されたテンソルなどを記憶する。
制御部130は、学習装置100全体の処理を司る処理部であり、例えばプロセッサなどである。この制御部110は、第1学習処理部140、第2学習処理部150、療養予測部160を有する。なお、第1学習処理部140、第2学習処理部150、療養予測部160は、プロセッサなどが有する電子回路やプロセッサなどが実行するプロセスの一例である。
第1学習処理部140は、第1生成部141と第1学習部142を有し、フィジカル要因による療養の有無を予測するための第1の学習モデルを構築する処理部である。
第1生成部141は、第1の学習データの生成および第1の学習データに対応するテンソルを生成する処理部である。例えば、第1生成部141は、出勤簿データDB103に記憶される1月から12月の出勤簿データのうち1月から6月の出勤簿データを抽出し、そのうち7月から9月の3か月にフィジカル要因の療養期間がない場合はラベル「療養なし」を、抽出した出勤簿データに付加した第1の学習データを生成する。また、第1生成部141は、1月から12月の出勤簿データから、2月から7月の出勤簿データを抽出し、そのうち8月から10月の3か月にフィジカル要因の療養期間がある場合はラベル「療養あり」を、抽出した出勤簿データに付加した第1の学習データを生成する。そして、第1生成部141は、生成した第1の学習データを第1学習データDB104に格納する。なお、ここで記憶される情報は、管理者等によって格納することもでき、学習装置100により生成することもできる。
また、第1生成部141は、第1学習データDB104に記憶される各第1の学習データを読み出し、テンソル化して第1テンソルDB105に格納する。このとき、第1生成部141は、第1の学習データに付加されるラベル(フィジカル要因)またはラベル(通常者)を、テンソルに対応付けて格納する。
具体的には、第1生成部141は、フィジカル要因による療養の傾向を特徴づけると想定される各属性を各次元として、第1の学習データからテンソルを生成する。例えば、第1生成部141は、月度、日付、出欠区分、出張有無の4要素を用いた4次元の4階テンソルを生成する。なお、6か月分のデータである場合は、月度の要素数は「6」、各月の日付数の最大値が31であることから日付の要素数は「31」、出欠の種類が出社・休暇・休日であれば出欠区分の要素数は「3」、出張はありとなしであることから出張有無の要素数は「2」となる。したがって、第1の学習データから生成されるテンソルは、「6×31×3×2」のテンソルとなり、学習データの各月度、日付における出欠区分、出張有無に対応する要素の値が1、そうでない要素の値が0となる。
図12は、テンソル化を説明する図である。図12に示すように、第1生成部141が生成するテンソルは、横方向に月度、縦方向に日付、奥行き方向に出欠区分、左側が出張あり、右側が出張なしのデータとなる。日付は、上から1日目を順に示し、出欠区分は、手前から出社、休暇、休日を示す。例えば、図12の(a)は、月度1の1日目に出社して出張した要素を示し、図12の(b)は、月度1の2日目に休暇を取得して出張しなかった要素を示す。
なお、本実施例では、上述したテンソルを簡略化して図12の(c)のように記載することとする。すなわち、月度、日付、出欠区分、出張有無の各要素を重ねたキューブ状で表現することとし、各月度かつ日付の出張有無を区別して表現し、各月度かつ日付の出欠区分を区別して表現することとする。
なお、第1生成部141は、予測時には、学習時と同様の手法で、予測対象DB111に記憶される各予測対象の出勤簿データから、ニューラルネットワークへの入力対象となるテンソルを生成することもできる。
第1学習部142は、各第1の学習データから生成された各テンソルおよびラベルを入力として、ディープテンソルによる学習モデルの学習およびテンソル分解の方法の学習を実行する処理部である。具体的には、第1学習部142は、フィジカル要因による療養期間を有する学習データと、療養期間を有さない通常者の学習データとを含む第1の学習データを用いて、ディープテンソルによるニューラルネットワークの学習を実行し、フィジカル要因による療養有無を判別(予測)する第1の学習モデルを生成する。言い換えると、第1学習部142は、フィジカル要因の特徴パターンの混合割合を判別する第1の学習モデルを生成する。
つまり、第1学習部142は、ディープテンソルの「グラフ(テンソル)の部分構造を認識することができる」という性質を利用して、学習を実行する。例えば、第1学習部142は、図5で説明した手法と同様、入力対象のテンソル(入力テンソル)からコアテンソルを抽出してNNに入力し、NNからの分類結果と入力テンソルに付与されているラベルとの誤差(分類誤差)を算出する。そして、第1学習部142は、分類誤差を用いて、NNのパラメータの学習およびターゲットコアテンソルの最適化を実行する。その後、第1学習部142は、学習が終了すると、各種パラメータを学習結果として第1学習結果DB106に格納する。
図13は、第1の学習を説明する図である。図13に示すように、第1の学習データのデータセットイメージは、療養期間を有する出勤簿データのうちフィジカル要因の特徴パターンを含む出勤簿データ(ラベル:フィジカル要因)と、療養期間を有さない出勤簿データ(ラベル:通常者)とから構成される。そして、第1学習部142は、交通事故や脳卒中などのフィジカル要因の療養期間を含む第1の学習データY1やフィジカル要因の療養期間を含まない第1の学習データY2などをNNに入力して学習を実行し、フィジカル要因による療養の発生有無を判別するための第1の学習モデルを生成する。
DTによるニューラルネットワークへの入力データとなるテンソル表現は、図11に示すように、要素として、データを識別する「データID」と、ノード間の線形量を示す「Node_dimension」と、重みを示す「value」と、「ラベル」とを含む。ここで、第1の学習時では、各第1の学習データを同様の重要度で扱うことから、第1学習部142は、図11に示すように、各第1の学習データに対応するテンソル表現の「value」を「1.0」としてDTに入力して学習を実行する。
すなわち、テンソルは線形の量なのであることから、長さを変えることができるが、第1の学習では元々の長さのまま学習を実行する。つまり、フィジカル要因の療養期間を含む第1の学習データY1やフィジカル要因の療養期間を含まない第1の学習データY2などの各第1の学習データの重要度を同じに扱ってDTの学習を実行する。
図7に戻り、第2学習処理部150は、第2生成部151と混合判別部152と第2学習部153とを有し、フィジカル要因による療養の影響度を小さくし、メンタル要因による療養の有無を予測するための第2の学習モデルを構築する処理部である。
第2生成部151は、第2の学習データの生成および第2の学習データに対応するテンソルを生成する処理部である。例えば、第2生成部151は、第2学習データDB107に記憶される各第2の学習データを読み出し、テンソル化して第2テンソルDB108に格納する。このとき、第2生成部151は、第2の学習データに付加されるラベル(フィジカル要因)またはラベル(通常者)を、テンソルに対応付けて格納する。なお、テンソル化する手法は、第1生成部141と同様なので、詳細な説明は省略する。また、第2の学習データの生成方法は、第1の学習データの手法と同様なので、詳細な説明は省略する。
混合判別部152は、第1学習部によって生成された第1の学習モデルを用いて、第2の学習データに含まれるフィジカル要因の特徴パターンの混合割合を判別する処理部である。具体的には、混合判別部152は、第1学習結果DB106から各種パラメータを取得し、各種パラメータを設定したNNである第1の学習モデルを構築する。そして、混合判別部152は、第2テンソルDB108から第2の学習データに対応するテンソルデータを取得し、第1の学習モデルに入力して、判別結果(推論結果)を取得する。その後、混合判別部152は、取得した判別結果を混合判別結果DB109に格納する。
図14は、混合割合の判別を説明する図である。図14に示すように、混合割合の判別対象となる第2の学習データのデータセットイメージは、療養期間を有する出勤簿データのうち、フィジカル要因の特徴パターンやメンタル要因の特徴パターンを含む可能性が高く、判断の難しい出勤簿データである。そして、混合判別部152は、このような療養原因の判別が難しい第2の学習データを、フィジカル要因の療養の発生有無を判別するために学習された第1の学習モデルに入力し、判別結果を取得する。
そして、混合判別部152は、予測結果として「療養なし:0.755、療養あり:0.245」を取得したとする。この場合、混合判別部152は、第2の学習データに、フィジカル要因の特徴パターンに該当または類似する休暇パターンが「0.245」の割合で含まれている可能性があると判別する。言い換えると、混合判別部152は、第2の学習データに、フィジカル要因以外による特徴パターンに該当または類似する休暇パターンが「0.755」の割合で含まれている可能性があると判別することができる。
第2学習部153は、各第2の学習データから生成された各テンソルおよびラベルを入力として、ディープテンソルによる予測モデルの学習およびテンソル分解の方法の学習を実行する処理部である。具体的には、第2学習部153は、メンタル要因による療養期間を有する学習データと、療養期間を有さない通常者の学習データとを用いて、ディープテンソルによるニューラルネットワークの学習を実行し、メンタル要因による療養有無を予測する第2の学習モデルを生成する。そして、第2学習部153は、学習が終了すると、各種パラメータを学習結果として第2学習結果DB110に格納する。なお、NNの学習手法は、第1学習部142と同様なので、詳細な説明は省略する。
図15は、第2の学習を説明する図である。図15に示すように、第2の学習データのデータセットイメージは、療養期間を有する出勤簿データのうちフィジカル要因かメンタル要因かは区別できないがいずれかの療養期間を含み、その混合割合が不明な出勤簿データと、療養期間を有さない出勤簿データとから構成される。
そして、第2学習部153は、混合割合が不明確な第2の学習データXや療養期間を含まない第2の学習データZなどをNNに入力して学習を実行し、メンタル要因による療養の発生有無を予測するための第2の学習モデルを生成する。
このとき、第2学習部153は、混合割合が不明確な第2の学習データX(ラベル:療養あり)に対しては、混合判別部152による判別結果にしたがって、テンソル表現の「value」を変更してNNに入力する。例えば、図14を例にして説明すると、第2学習部153は、テンソル表現の「value」をデフォルト値の「1」から、フィジカル要因に該当しないと判別された割合である「0.755」に変更して、NNに入力する。一方、第2学習部153は、療養期間を含まない第2の学習データZ(ラベル:療養なし)については、テンソル表現の「value」をデフォルト値の「1」のままでNNに入力する。
つまり、第2学習部153は、混合割合が不明確な第2の学習データについては、混合判別部152による判別結果にしたがって、第2の学習モデルにおける学習の重要度を下げることで、フィジカル要因による特徴パターンの学習が進むことを抑制する。
療養予測部160は、第2の学習モデルを用いて、予測対象データのラベルを予測する処理部である。具体的には、療養予測部160は、第2学習結果DB110からパラメータ等を取得し、各種パラメータ等を設定したニューラルネットワークである第2の学習モデルを構築する。そして、療養予測部160は、予測対象DB111に記憶される予測対象の出勤簿データから生成されたテンソルを、第2の学習モデルに入力する。
その後、療養予測部160は、第2の学習モデルの出力結果である、療養するまたは療養しないかの予測結果を取得する。そして、療養予測部160は、予測結果をディスプレイに表示したり、管理者端末に送信したりする。例えば、療養予測部160は、療養する確率と療養しない確率とを含む予測結果を取得し、療養する確率の方が高い場合は、予測対象データに対応する従業員がメンタル要因による療養の可能性が高いと予測し、療養しない確率の方が高い場合は、当該従業員がメンタル要因による療養の可能性が低いと予測する。
[処理の流れ]
図16は、学習処理の流れを示すフローチャートである。図16に示すように、第1学習処理部140は、学習処理の開始指示を受け付けると(S101:Yes)、出勤簿データDB103から、フィジカル要因の療養期間を有する療養者の出勤簿データを第1の学習データとして抽出する(S102)。
続いて、第1学習処理部140は、第1の学習データを1つ選択し(S103)、テンソル化を実行し(S104)、テンソルをNNに入力して、フィジカル要因の特徴パターンを学習する第1の学習モデルを生成する第1の学習を実行する(S105)。
ここで第1の学習を継続する場合は(S106:No)、S103以降が繰り返される。一方、第1の学習を終了すると(S106:Yes)、第2学習処理部150は、出勤簿データDB103から、特定の要因に関わらず療養期間を有する療養者の出勤簿データを第2の学習データとして抽出する(S107)。
続いて、第2学習処理部150は、第2の学習データを1つ選択し(S108)、テンソル化を実行し(S109)、学習済みの第1の学習モデルに入力して、混合割合を判別する(S110)。そして、第2学習処理部150は、判別結果を混合判別結果DB109に格納する(S111)。
ここで判別処理を継続する場合は(S112:No)、S108以降が繰り返される。一方、判別処理を終了すると(S112:Yes)、第2学習処理部150は、第2の学習データを選択し(S113)、対応するテンソルと混合割合とをNNに入力して、メンタル要因の特徴パターンを学習する第2の学習モデルを生成する第2の学習を実行する(S114)。
ここで第2の学習を継続する場合は(S115:No)、S113以降が繰り返される。一方、第2の学習を終了すると(S115:Yes)、療養予測部160は、予測対象データを取得し(S116)、テンソル化を実行する(S117)。なお、テンソル化は、第1学習処理部140など他の処理部が実行することもできる。
続いて、療養予測部160は、予測対象データのテンソルを第2の学習モデルに入力して予測結果を取得し(S118)、予測結果を記憶部102等に格納する(S119)。そして、予測を継続する場合(S120:No)、S116以降が実行され、予測を終了する場合(S120:Yes)、学習処理全体が終了する。
[効果]
上述したように、学習装置100は、正例データ内に存在する予測対象でない要素の混在程度をテンソルの重みを最適化し反映させることで、本来の目的に焦点を当てた部分パターン認識を高めることができる。したがって、学習装置100は、フィジカル要因の混在程度をテンソルの重みで調整することで、本来のメンタル不調予測に影響を与える部分パターンを識別するコアテンソルの認識を維持することができる。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。
[学習]
上述した学習処理は、任意の回数だけ実行することもできる。例えば、すべての学習データを用いて実行することもでき、所定回数だけ実行することもできる。また、分類誤差の算出方法は、最小二乗法など公知の算出手法を採用することができ、NNで用いられる一般的な算出手法を採用することもできる。なお、学習データや出勤簿データは、外部の装置から取得することもできる。なお、第1の学習モデルや第2の学習モデルは、分類器の一例である。
また、学習装置100は、混合判別結果に基づいて、第2の学習データを選択することもできる。例えば、学習装置100は、推論値0(フィジカル非要因率)が閾値未満の第2の学習データや推論値1(フィジカル要因率)が閾値以上の第2の学習データなどを、学習対象から除外することもできる。また、上記実施例では、フィジカル要因の療養期間とメンタル要因の療養期間とを例示して説明したが、これに限定されるものではなく、異なる要因の療養期間であれば、実施例1と同様の手法を適用することができる。
[ラベル]
上記実施例では、学習時、出勤簿データから自動で6か月や3か月の期間抽出の上、「療養あり」、「療養なし」、「フィジカル要因」、「通常者」などのラベルを付与し学習する例を説明したが、これに限定されるものではない。例えば、ユーザによりあらかじめ期間抽出やラベルが付与されている場合は、与えられたデータや付与済みのラベルを使用することもできる。また、ラベルの設定例も一例であり、療養ありと療養なしに限らず、体調不良者と通常者、休職ありと休職なしなどのように、体調不良者の有無を区別できる様々なラベルを用いることもできる。
また、6か月の出勤簿データを予測に用いるデータとして使用したが、これに限定されるものではなく、4か月など任意に変更することができる。また、6か月の出勤簿データに対して、その後3か月以内に療養したか否かによってラベルを付与する例を説明したが、これに限定されるものではなく、2か月以内など任意に変更することができる。また、上記実施例では、学習装置100が出勤簿データをテンソル化する例を説明したが、他の装置がテンソル化したデータを取得して上記各処理を実行することもできる。
[想定システム]
上記実施例では、出勤簿データを学習して療養する可能性がある従業員を予測する例で説明したが、これに限定されるものではない。例えば、電子部品の動作データを用いた故障予測、通信データを用いた攻撃予測、道路の交通量データを用いた渋滞予測などにも適用することができる。
[ニューラルネットワーク]
本実施例では、RNN(Recurrent Neural Networks)やCNN(Convolutional Neural Network)など様々なニューラルネットワークを用いることができる。また、学習の手法も、誤差逆伝播以外にも公知の様々な手法を採用することができる。また、ニューラルネットワークは、例えば入力層、中間層(隠れ層)、出力層から構成される多段構成であり、各層は複数のノードがエッジで結ばれる構造を有する。各層は、「活性化関数」と呼ばれる関数を持ち、エッジは「重み」を持ち、各ノードの値は、前の層のノードの値、接続エッジの重みの値(重み係数)、層が持つ活性化関数から計算される。なお、計算方法については、公知の様々な手法を採用できる。
また、ニューラルネットワークにおける学習とは、出力層が正しい値となるように、パラメータ、すなわち、重みとバイアスを修正していくことである。誤差逆伝播法においては、ニューラルネットワークに対して、出力層の値がどれだけ正しい状態(望まれている状態)から離れているかを示す「損失関数(loss function)」を定め、最急降下法等を用いて、損失関数が最小化するように、重みやバイアスの更新が行われる。
[システム]
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。また、実施例で説明した具体例、分布、数値などは、あくまで一例であり、任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
[ハードウェア]
図17は、ハードウェア構成例を説明する図である。図17に示すように、学習装置100は、通信装置100a、HDD(Hard Disk Drive)100b、メモリ100c、プロセッサ100dを有する。また、図17に示した各部は、バス等で相互に接続される。
通信装置100aは、ネットワークインタフェースカードなどであり、他のサーバとの通信を行う。HDD100bは、図7に示した機能を動作させるプログラムやDBを記憶する。
プロセッサ100dは、図7に示した各処理部と同様の処理を実行するプログラムをHDD10b等から読み出してメモリ100cに展開することで、図7等で説明した各機能を実行するプロセスを動作させる。すなわち、このプロセスは、学習装置100が有する各処理部と同様の機能を実行する。具体的には、プロセッサ100dは、第1学習処理部140、第2学習処理部150、療養予測部160等と同様の機能を有するプログラムをHDD100b等から読み出す。そして、プロセッサ100dは、第1学習処理部140、第2学習処理部150、療養予測部160等と同様の処理を実行するプロセスを実行する。
このように学習装置100は、プログラムを読み出して実行することで学習方法を実行する情報処理装置として動作する。また、学習装置100は、媒体読取装置によって記録媒体から上記プログラムを読み出し、読み出された上記プログラムを実行することで上記した実施例と同様の機能を実現することもできる。なお、この他の実施例でいうプログラムは、学習装置100によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
このプログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD−ROM、MO(Magneto−Optical disk)、DVD(Digital Versatile Disc)などのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することができる。
100 学習装置
101 通信部
102 記憶部
103 出勤簿データDB
104 第1学習データDB
105 第1テンソルDB
106 第1学習結果DB
107 第2学習データDB
108 第2テンソルDB
109 混合判別結果DB
110 第2学習結果DB
111 予測対象DB
130 制御部
140 第1学習処理部
141 第1生成部
142 第1学習部
150 第2学習処理部
151 第2生成部
152 混合判別部
153 第2学習部
160 療養予測部

Claims (5)

  1. コンピュータに、
    第1の要素を含む多次元から成る第1のテンソルおよび第1の正解データに基づいて第1の分類器を学習し、
    多次元から成る第2のテンソルの入力に対し、学習された前記第1の分類器が予測した正例および負例の割合を示す推論結果に基づき、前記第1の要素に重みを反映した第2の要素を含む前記第2のテンソルを生成し、
    前記第2の要素を含む前記第2のテンソルおよび第2の正解データに基づいて第2の分類器を学習する、
    処理を実行させることを特徴とする学習プログラム。
  2. 前記第1の分類器を学習する処理は、第1の事象に該当する第1の学習データから生成された前記第1のテンソルおよび前記第1の事象であることを示す前記第1の正解データを用いて、前記第1の分類器を学習し、
    前記生成する処理は、前記第1の事象および第2の事象の混合割合が不明な第2の学習データから生成された前記第2のテンソルを学習済みの前記第1の分類器に入力して前記推論結果を取得し、前記推論結果により推定される前記第1の事象および第2の事象の混合割合に基づき、前記第2のテンソルの重みを変更し、
    前記第2の分類器を学習する処理は、重みが変更された前記第2のテンソルおよび前記第2の事象に該当することを示す前記第2の正解データに基づいて、前記第2の分類器を学習する、ことを特徴とする請求項1に記載の学習プログラム。
  3. 前記生成する処理は、前記推論結果に含まれる前記第1の事象に該当する第1の確率値および前記第1の事象に該当しない第2の確率値に基づき、前記第2のテンソルの重みとして前記第2の確率値を設定し、
    前記第2の分類器を学習する処理は、前記第2の確率値に基づいて、前記第2のテンソルが前記第2の分類器の学習に与える影響度を変更して、前記第2の分類器を学習する、ことを特徴とする請求項2に記載の学習プログラム。
  4. コンピュータが、
    第1の要素を含む多次元から成る第1のテンソルおよび第1の正解データに基づいて第1の分類器を学習し、
    多次元から成る第2のテンソルの入力に対し、学習された前記第1の分類器が予測した正例および負例の割合を示す推論結果に基づき、前記第1の要素に重みを反映した第2の要素を含む前記第2のテンソルを生成し、
    前記第2の要素を含む前記第2のテンソルおよび第2の正解データに基づいて第2の分類器を学習する、
    処理を実行することを特徴とする学習方法。
  5. 第1の要素を含む多次元から成る第1のテンソルおよび第1の正解データに基づいて第1の分類器を学習する第1学習部と、
    多次元から成る第2のテンソルの入力に対し、学習された前記第1の分類器が予測した正例および負例の割合を示す推論結果に基づき、前記第1の要素に重みを反映した第2の要素を含む前記第2のテンソルを生成する生成部と、
    前記第2の要素を含む前記第2のテンソルおよび第2の正解データに基づいて第2の分類器を学習する第2学習部と
    を有することを特徴とする学習装置。
JP2018176277A 2018-09-20 2018-09-20 学習プログラム、学習方法および学習装置 Pending JP2020047079A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018176277A JP2020047079A (ja) 2018-09-20 2018-09-20 学習プログラム、学習方法および学習装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018176277A JP2020047079A (ja) 2018-09-20 2018-09-20 学習プログラム、学習方法および学習装置

Publications (1)

Publication Number Publication Date
JP2020047079A true JP2020047079A (ja) 2020-03-26

Family

ID=69901588

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018176277A Pending JP2020047079A (ja) 2018-09-20 2018-09-20 学習プログラム、学習方法および学習装置

Country Status (1)

Country Link
JP (1) JP2020047079A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022013954A1 (ja) * 2020-07-14 2022-01-20 富士通株式会社 機械学習プログラム、機械学習方法および情報処理装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022013954A1 (ja) * 2020-07-14 2022-01-20 富士通株式会社 機械学習プログラム、機械学習方法および情報処理装置
JP7364083B2 (ja) 2020-07-14 2023-10-18 富士通株式会社 機械学習プログラム、機械学習方法および情報処理装置

Similar Documents

Publication Publication Date Title
Fong et al. Composite Monte Carlo decision making under high uncertainty of novel coronavirus epidemic using hybridized deep learning and fuzzy rule induction
Nsoesie et al. A simulation optimization approach to epidemic forecasting
US11816727B2 (en) Credit scoring method and server
JP2019212155A (ja) 学習用データ生成プログラムおよび学習用データ生成方法
JP2019191783A (ja) 機械学習プログラム、機械学習方法および機械学習装置
JP7067235B2 (ja) 機械学習プログラム、機械学習方法および機械学習装置
Yu et al. The reference effect of delay announcements: A field experiment
US11347972B2 (en) Training data generation method and information processing apparatus
Mosthaf Do scarring effects of low‐wage employment and non‐employment differ between levels of qualification?
Hathaway et al. Personalized priority policies in call centers using past customer interaction information
Cheng et al. FROG: A fast and reliable crowdsourcing framework
JP6481794B1 (ja) 学習用データ生成方法、学習用データ生成プログラム
Pandey et al. Modeling human annotation errors to design bias-aware systems for social stream processing
CN107832578B (zh) 基于态势变化模型的数据处理方法及装置
JP6832329B2 (ja) データ構造
JP7067236B2 (ja) 機械学習用データ生成方法および機械学習用データ生成プログラム
CN109543918A (zh) 数据预测方法、装置、计算机装置和计算机可读存储介质
JP2020047079A (ja) 学習プログラム、学習方法および学習装置
JP7063079B2 (ja) 機械学習プログラム、機械学習方法および機械学習装置
Davami et al. Improving the performance of mobile phone crowdsourcing applications
JP2021096511A (ja) 学習データ生成方法、学習データ生成プログラムおよび情報処理装置
CN112784177A (zh) 一种空间距离自适应的下一个兴趣点推荐方法
JP2020101901A (ja) 医療用のデータ構造
JP2021068163A (ja) 予測プログラム、予測方法及び予測装置
Jia et al. Partner with a Third-Party Delivery Service or Not?--a Prediction-and-Decision Tool for Restaurants Facing Takeout Demand Surges During a Pandemic