Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7063080B2 - 機械学習プログラム、機械学習方法および機械学習装置 - Google Patents
[go: Go Back, main page]

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

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

Info

Publication number
JP7063080B2
JP7063080B2 JP2018081907A JP2018081907A JP7063080B2 JP 7063080 B2 JP7063080 B2 JP 7063080B2 JP 2018081907 A JP2018081907 A JP 2018081907A JP 2018081907 A JP2018081907 A JP 2018081907A JP 7063080 B2 JP7063080 B2 JP 7063080B2
Authority
JP
Japan
Prior art keywords
tensor
data
classification
learning
machine learning
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.)
Active
Application number
JP2018081907A
Other languages
English (en)
Other versions
JP2019191783A (ja
Inventor
達 松尾
泉 新田
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 JP2018081907A priority Critical patent/JP7063080B2/ja
Priority to US16/380,537 priority patent/US20190325312A1/en
Publication of JP2019191783A publication Critical patent/JP2019191783A/ja
Application granted granted Critical
Publication of JP7063080B2 publication Critical patent/JP7063080B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting
    • G06Q10/1091Recording time for administrative or management purposes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0499Feedforward networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/60ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/20ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/30ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for calculating health indices; for individual health risk assessment
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H20/00ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
    • G16H20/70ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to mental therapies, e.g. psychological therapy or autogenous training

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Human Resources & Organizations (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Public Health (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Epidemiology (AREA)
  • Primary Health Care (AREA)
  • Economics (AREA)
  • Databases & Information Systems (AREA)
  • Pathology (AREA)
  • Educational Administration (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Description

本発明は、機械学習プログラム、機械学習方法および機械学習装置に関する。
従業員の出勤簿データから、数か月先のメンタル不調を予測し、カウンセリング等の対応を早期に実施することで、休職(療養)を回避することが行われている。一般的には、専任スタッフが、頻繁な出張、長時間残業、連続する急な欠勤、無断欠勤、これらの組合せなどなどの特徴的な特徴パターンの勤務状態に該当する従業員を目視で探している。このような特徴パターンは、各専任スタッフにより基準が異なることもあり、明確に定義することが難しい。近年では、決定木、ランダムフォレスト、SVM(Support Vector Machine)などを用いた機械学習によって、メンタル不調を特徴づける特徴パターンを学習し、専任スタッフが行っている判断を機械的に予測することが行われている。
特開2016-151979号公報
しかしながら、一般的な機械学習においては、機械学習モデルにデータを入力する際に、機械学習モデルの入力形式に対応した形のデータ変換が行われるので、データ変換の際に未認識の関係性については、データ変換の際に失われてしまい、学習が適切に行われない。
具体的には、一般的な機械学習では、出勤簿データを特徴ベクトル化することになるが、出勤簿データの各要素の属性や関連性など、出勤簿データが有するカレンダーの特徴が欠落した状態で学習および予測が実行されてしまう。ここで、図13から図15を用いて、一般的な機械学習の問題点を説明する。図13は、一般的な機械学習のデータ形式を説明する図である。図14は、一般的な機械学習の学習手法を説明する図である。図15は、一般的な機械学習による問題点を説明する図である。なお、図13から図15の出勤簿データ内に示される数字は、区分を示す情報であり、例えば出社=0、休職=1、積立休暇=2、有給休暇=3などを示す。
図13に示すように、一般的な機械学習では、固定長の特徴ベクトルの入力が前提であり、出勤簿データにおける毎日の状況を出勤簿データの矢印の順にベクトル化した訓練データを生成する。具体的には、6月1日の出欠状況、6月1日の出張状況、6月1日の出勤時刻情報、6月1日の退勤時刻情報、6月2日の出欠状況、6月2日の出張状況、6月2日の出勤時刻情報、6月2日の退勤時刻情報のように、各要素に設定された値を順にベクトル化する。
このように、訓練データのデータ形式は、単なるベクトル情報であり、ベクトルの各要素の属性情報は有さないので、どの値が出欠情報に該当し、どの値が出張情報に該当するのかを区別できない。このため、図14に示すように、同じ属性(出欠)であることを考慮しない学習、同じ日付の属性であることを考慮しない学習となり、結果として、ベクトル内の要素間の関係性を考慮しない学習となる。
例えば、図15に示すように、メンタル不調が発生した従業員1の出勤簿データに対応する訓練データにおける(a)の属性値が出勤簿データに含まれていることがメンタル不調の原因だったとすると、学習装置は、この属性値(a)のベクトル内での位置を特徴パターンとして学習する。したがって、学習装置は、従業員2の出勤簿データに対応する予測対象データでは、学習された従業員1の出勤簿データと同じ位置に属性値(a)を検出するので、メンタル不調と予測することができる。しかし、学習装置は、従業員3の出勤簿データに対応する予測対象データには、学習された従業員1の出勤簿データと同じ値の属性値(a)が含まれるが、含まれる位置が異なることから、メンタル不調と予測することが困難である。
一つの側面では、学習対象データに含まれる複数の属性の関係性を考慮した機械学習を実行することができる機械学習プログラム、機械学習方法および機械学習装置を提供することを目的とする。
第1の案では、機械学習プログラムは、コンピュータに、複数の項目を有し、カレンダーに対応した複数のレコードを有する時系列データを受け付ける処理を実行させる。機械学習プログラムは、コンピュータに、前記時系列データから、カレンダー情報、および、前記複数の項目それぞれを別次元としてテンソル化した、テンソルデータを生成する処理を実行させる。機械学習プログラムは、コンピュータに、前記テンソルデータを入力テンソルデータとしてテンソル分解してニューラルネットワークに入力する学習モデルに対し、前記ニューラルネットワークの深層学習および前記テンソル分解の方法の学習を行う処理を実行させる。
一実施形態によれば、学習対象データに含まれる複数の属性の関係性を考慮した機械学習を実行することができる。
図1は、実施例1にかかる機械学習の全体例を説明する図である。 図2は、グラフ構造とテンソルとの関係の一例を示す図である。 図3は、部分グラフ構造の抽出の一例を示す図である。 図4は、ディープテンソルの学習例を説明する図である。 図5は、実施例1にかかる学習装置の機能構成を示す機能ブロック図である。 図6は、出勤簿データDBに記憶される出勤簿データの例を示す図である。 図7は、ラベル設定の例を示す図である。 図8は、テンソルデータの生成を説明する図である。 図9は、テンソル化の具体例を説明する図である。 図10は、学習処理の流れを示すフローチャートである。 図11は、効果を説明する図である。 図12は、ハードウェア構成例を説明する図である。 図13は、一般的な機械学習のデータ形式を説明する図である。 図14は、一般的な機械学習の学習手法を説明する図である。 図15は、一般的な機械学習による問題点を説明する図である。
以下に、本願の開示する機械学習プログラム、機械学習方法および機械学習装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、各実施例は、矛盾のない範囲内で適宜組み合わせることができる。
[全体例]
図1は、実施例1にかかる機械学習の全体例を説明する図である。図1に示すように、実施例1にかかる学習装置100は、機械学習装置の一例であり、社員の日々の出勤、退勤時間、休暇取得、出張などの状況を含む出勤簿データを機械学習して学習モデルを生成し、学習後の学習モデルを用いて、予測対象のある社員の出勤簿データから、当該社員が療養(休職)するか療養(休職)しないかを予測するコンピュータ装置の一例である。なお、ここでは、学習装置100が学習と予測とを実行する例で説明するが、別々の装置に実行することもできる。
具体的には、学習装置100は、休職したことがある体調不良者の出勤簿データ(ラベル=療養あり)と、休職したことがない通常者の出勤簿データ(ラベル=療養なし)とを教師有データとして、グラフ構造のデータを深層学習(ディープラーニング・Deep Learning;DL)するディープテンソルによって学習モデルを生成する。その後、学習結果を適用した学習モデルを用いて新規なグラフ構造のデータの正確な事象(ラベル)の推定を実現する。
例えば、学習装置100は、複数の項目を有し、カレンダーに対応した複数のレコードを有する出勤簿データを受け付ける。学習装置100は、出勤簿入力データから、カレンダー情報、および、複数の項目それぞれを別次元としてテンソル化した、テンソルデータを生成する。そして、学習装置100は、テンソルデータを入力としてテンソル分解してニューラルネットワークに入力する学習モデルに対し、ニューラルネットワークの深層学習およびテンソル分解の方法の学習を行う。このようにして、学習装置100は、出勤簿データのテンソルデータから、「療養する」か「療養しない」かを分類する学習モデルを生成する。
その後、学習装置100は、判別対象の従業員の出勤簿データを同様にテンソル化してテンソルデータを生成し、学習済みの学習モデルに入力する。そして、学習装置100は、当該従業員が「療養する」か「療養しない」かの予測結果を示す出力値を出力する。
ここで、ディープテンソルについて説明する。ディープテンソルとは、テンソル(グラフ情報)を入力とするディープラーニングであり、ニューラルネットワークの学習とともに、判別に寄与する部分グラフ構造を自動的に抽出する。この抽出処理は、ニューラルネットワークの学習とともに、入力テンソルデータのテンソル分解のパラメータを学習することによって実現される。
次に、図2および図3を用いてグラフ構造について説明する。図2は、グラフ構造とテンソルとの関係の一例を示す図である。図2に示すグラフ20は、4つのノードがノード間の関係性(例えば「相関係数が所定値以上」)を示すエッジで結ばれている。なお、エッジで結ばれていないノード間は、当該関係性がないことを示す。グラフ20を2階のテンソル、つまり行列で表す場合、例えば、ノードの左側の番号に基づく行列表現は「行列A」で表され、ノードの右側の番号(囲み線で囲んだ数字)に基づく行列表現は「行列B」で表される。これらの行列の各成分は、ノード間が結ばれている(接続している)場合「1」で表され、ノード間が結ばれていない(接続していない)場合「0」で表される。以下の説明では、この様な行列を隣接行列ともいう。ここで、「行列B」は、「行列A」の2,3行目および2,3列目を同時に置換することで生成できる。ディープテンソルでは、この様な置換処理を用いることで順序の違いを無視して処理を行う。すなわち、「行列A」および「行列B」は、ディープテンソルでは順序性が無視され、同じグラフとして扱われる。なお、3階以上のテンソルについても同様の処理となる。
図3は、部分グラフ構造の抽出の一例を示す図である。図3に示すグラフ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階のテンソル、つまり行列が用いられる。)の積で近似する。この分解は一意ではなく、入力データが表すグラフ構造中の任意の部分グラフ構造をコアテンソルに含める事ができる。
続いて、ディープテンソルの学習について説明する。図4は、ディープテンソルの学習例を説明する図である。図4に示すように、学習装置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は、分類誤差をターゲットコアテンソルまで伝搬させ、予測に寄与するグラフの部分構造、すなわち休職者の特徴を示す特徴パターンもしくは通常者の特徴を示す特徴パターンに近づくように、ターゲットコアテンソルを修正する。このようにすることで、最適化されたターゲットコアテンソルには予測に寄与する部分パターンが抽出されるようになる。
なお、予測時には、テンソル分解により、入力テンソルをコアテンソル(入力テンソルの部分パターン)に変換し、コアテンソルをニューラルネットに入力することで、予測結果を得ることができる。テンソル分解では、コアテンソルがターゲットコアテンソルに類似するように変換される。つまり、予測に寄与する部分パターンを持つコアテンソルが抽出される。
[機能構成]
図5は、実施例1にかかる学習装置100の機能構成を示す機能ブロック図である。図5に示すように、学習装置100は、通信部101、記憶部102、制御部110を有する。
通信部101は、他の装置との通信を制御する処理部であり、例えば通信インタフェースである。例えば、通信部101は、管理者の端末から、処理開始指示、出勤簿データなどを受信する。また、通信部101は、管理者の端末に対して、学習結果や学習後の予測結果などを出力する。
記憶部102は、プログラムやデータを記憶する記憶装置の一例であり、例えばメモリやハードディスクなどである。この記憶部102は、出勤簿データDB103、テンソルDB104、学習結果DB105、予測対象DB106を記憶する。
出勤簿データDB103は、ユーザ等により入力された、社員等の出勤に関する出勤簿データを記憶するデータベースであり、時系列データの一例である。ここで記憶される出勤簿データは、複数の項目を有し、カレンダーに対応した複数のレコードを有する。また、出勤簿データは、各企業で使用される出勤簿をデータ化したものであり、公知の様々な出勤管理システムなどから取得することができる。図6は、出勤簿データDB103に記憶される出勤簿データの例を示す図である。図6に示すように、出勤簿データは、カレンダーに対応した各月(月度)の日単位のレコードより構成され、各レコードは出勤情報として、「出欠区分、出張有無、出勤時刻、退勤時刻」などの各項目の値を対応付けて記憶する。図6の例では、「9月1日は、出張ではなく、9時に出勤し21時に退勤した」ことを示す。
なお、出欠区分の項目では、例えば出社、療養(休職)、積立休暇、有給休暇などの値が設定される。出張有無の項目には、出張の有無の値が設定され、出張ありまたは出張なしのいずれかに対応した値が格納される。なお、これらの値は、番号等により区別することができる。例えば、出社=0、療養=1、積立休暇=2、有給休暇=3などのように区別することもできる。なお、出勤簿データのカレンダーに対応したレコードの単位は、日単位とは限らず、週単位や月単位であってもよい。また、休暇が時間単位で取ることができる場合に対応して、時間休暇=4、という値を設けてもよい。また、項目は、属性の一例である。
ここで記憶される出勤簿データは、学習データであり、教師ラベルが付加されている。図7は、ラベル設定の例を示す図である。図7の(a)は、ラベルとして「療養あり」が付加されている、休職した体調不良者の出勤簿データである。図7の(b)は、ラベルとして「療養なし」が付加されている、休職しなかった通常者の出勤簿データである。例えば、6か月の出勤簿データを1つの訓練データとしテンソル化し、その後の3か月以内に休職しており休職期間がある場合に、ラベルとして「療養あり」を設定し、その後の3か月以内に休職しておらず休職期間がない場合に、ラベルとして「療養なし」を設定することができる。
テンソルDB104は、各従業員の出勤簿データから生成された各テンソル(テンソルデータ)を記憶するデータベースである。このテンソルDB104は、各テンソルとラベルとを対応付けた訓練データを記憶する。例えば、テンソルDB104は、「テンソルデータ、ラベル」として「テンソルデータ1、ラベル(療養あり)」や「テンソルデータ2、ラベル(療養なし)」などを記憶する。
なお、上述の学習データにおけるレコードの項目やテンソルデータのラベルの設定は一例であり、「療養あり」と「療養なし」の値およびラベルに限らず、「休職者」と「通常者」、「休職あり」と「休職なし」などのように、体調不良者の有無を区別できる様々な値およびラベルを用いることもできる。
学習結果DB105は、学習結果を記憶するデータベースである。例えば、学習結果DB105は、制御部110による学習データの判別結果(分類結果)、機械学習やディープラーニングによって学習された、NNの各種パラメータやディープテンソルの各種パラメータなどを記憶する。
予測対象DB106は、学習された予測モデルを用いて、休職の発生有無を予測する対象の出勤簿データを記憶するデータベースである。例えば、予測対象DB106は、予測対象の出勤簿データ、または、予測対象の出勤簿データから生成されたテンソルデータなどを記憶する。
制御部110は、学習装置100全体の処理を司る処理部であり、例えばプロセッサなどである。この制御部110は、テンソル生成部111、学習部112、予測部113を有する。なお、テンソル生成部111、学習部112、予測部113は、プロセッサなどが有する電子回路やプロセッサなどが実行するプロセスの一例である。
テンソル生成部111は、各出勤簿データをテンソル化したテンソルデータを生成する処理部である。図8は、テンソルデータの生成を説明する図である。図8に示すように、テンソル生成部111は、各出勤簿データに含まれる各項目「月度、日付、出欠区分、出張有無、出勤時刻、退勤時刻」のそれぞれを次元としてテンソル化する。そして、テンソル生成部111は、ユーザ等から指定されたラベル(療養ありもしくは療養なし)、または、出勤簿データの出欠区分から特定したラベル(療養ありもしくは療養なし)を、テンソルデータに対応付けてテンソルDB104に格納する。ここで、生成されたテンソルデータを入力としてディープテンソルによる学習を実行される。なお、ディープテンソルでは、学習時に、予測に影響を与える出勤簿データの部分パターンを識別するターゲットコアテンソルを抽出し、予測時には、抽出したターゲットコアテンソルに基づいて予測を実行する。
具体的には、テンソル生成部111は、頻繁な出張、長時間残業、連続する急な欠勤、無断欠勤、これらの組合せなど休職する傾向を特徴づけると想定される各項目を各次元として、出勤簿データからテンソルを生成する。例えば、テンソル生成部111は、月度、日付、出欠区分、出張有無の4要素を用いた4次元の4階テンソルを生成する。なお、4か月分のデータである場合は、月度の要素数は「4」、各月の曜日数の最大値が31であることから日付の要素数は「31」、出欠の種類が出社・休暇・休日であることから出欠区分の要素数は「3」、出張はありとなしであることから出張有無の要素数は「2」となる。したがって、出勤簿データから生成されるテンソルは、「4×31×3×2」のテンソルとなり、出勤簿データの各月度、日付における出欠区分、出張有無に対応する要素の値が1、そうでない要素の値が0となる。なお、テンソルの次元とする項目は、任意に選択することができ、過去の事例等から決定することもできる。
図9は、テンソル化の具体例を説明する図である。図9に示すように、テンソル生成部111が生成するテンソルは、横方向に月度、縦方向に日付、奥行き方向に出欠区分、左から出張ありのデータで途中から出張なしのデータとなる。日付は、上から1日目を順に示し、出欠区分は、手前から出社、休暇、休日を示す。例えば、図9の(a)は、月度1の1日目に出社して出張した要素を示し、図9の(b)は、月度1の2日目に休暇を取得して出張しなかった要素を示す。
なお、本実施例では、上述したテンソルを簡略化して図9の(c)のように記載することとする。すなわち、月度、日付、出欠区分、出張有無の各要素を重ねたキューブ状で表現することとし、各月度かつ日付の出張有無を区別して表現し、各月度かつ日付の出欠区分を区別して表現することとする。
学習部112は、出勤簿データから生成された各テンソルデータおよびラベルを入力として、ディープテンソルによる学習モデルの学習を実行する処理部である。具体的には、学習部112は、図4で説明した手法と同様、入力対象のテンソルデータ(入力テンソル)からコアテンソルを抽出してNNに入力し、NNからの分類結果と入力テンソルに付与されているラベルとの誤差(分類誤差)を算出する。そして、学習部112は、分類誤差を用いて、NNのパラメータの学習およびターゲットコアテンソルの最適化を実行する。その後、学習部112は、学習が終了すると、各種パラメータを学習結果として学習結果DB105に格納する。
予測部113は、学習結果を用いて、判別対象のデータのラベルを予測する処理部である。具体的には、予測部113は、学習結果DB105から各種パラメータを読み出し、各種パラメータを設定したニューラルネットワーク等を含むディープテンソルを構築する。そして、予測部113は、予測対象DB106から予測対象の出勤簿データを読み出してテンソル化して、ディープテンソルに入力する。その後、予測部113は、療養ありまたは療養なしかを示す予測結果を出力する。そして、予測部113は、予測結果をディスプレイに表示したり、管理者端末に送信したりする。
[処理の流れ]
次に、学習処理の流れを説明する。図10は、学習処理の流れを示すフローチャートである。図10に示すように、処理開始が指示されると(S101:Yes)、テンソル生成部111は、出勤簿データDB103から出勤簿データを読み込み(S102)、テンソルデータ化する(S103)。
続いて、テンソル生成部111は、当該出勤簿データに対応する従業員が休職者である場合(S104:Yes)、ラベル(療養あり)を付与し(S105)、当該出勤簿データに対応する従業員が休職者ではない場合(S104:No)、ラベル(療養なし)を付与する(S106)。
その後、出勤簿データのテンソル化が終了しておらず、未処理の出勤簿データが存在する場合(S107:No)、S102以降が繰り返される。一方、出勤簿データのテンソル化が終了した場合(S107:Yes)、テンソル化された各テンソルデータを用いて、学習部112による学習処理が実行される(S108)。
[効果]
上述したように、学習装置100は、学習対象データに含まれる複数の項目の関係性を考慮した機械学習を実行することができる。例えば、学習装置100は、カレンダーの特徴を欠落させずに学習や予測を実行できるので、予測精度を向上させることができる。
図11は、効果を説明する図である。図11に示すように、学習装置100は、月度と日付の次元を持たせることでカレンダーの基本構造を考慮できる。学習装置100は、各月度、日付の各項目(出欠、出張等)を異なる次元で扱うことで項目の違いも考慮できる。学習装置100は、テンソルの1要素が各月度、日付における各項目の組み合わせに対応するため、同日の項目同士を関連付けることができる。
したがって、図11の(a)で抽出される予測に影響を与える部分パターンが、図11の(b)に示すように図11の(a)と異なる場所に存在する場合でも、同じ部分パターンと認識することができるので、学習精度および予測精度の向上を実現できる。つまり、ディープテンソルは、予測に寄与するグラフの部分構造(テンソルの部分パターン)をターゲットコアテンソルとして抽出することができるので、テンソルの部分パターンを入力とした学習および予測を実行できる。この結果、出勤簿データ上の部分パターン(頻繁な出張など)がどの月度、日付に出現してもそれを認識することができ、適切な予測を行うことができる。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。
[学習]
上述した学習処理は、任意の回数だけ実行することもできる。例えば、すべての訓練データを用いて実行することもでき、所定回数だけ実行することもできる。また、分類誤差の算出方法は、最小二乗法など公知の算出手法を採用することができ、NNで用いられる一般的な算出手法を採用することもできる。なお、学習データを用いて、事象(例えば療養ありと療養なし)を分類できるように、テンソルをニューラルネットワークに入力してニューラルネットワークの重み等を学習することが学習モデルの一例に対応する。
また、6か月の出勤簿データを予測に用いるデータ例として説明したが、これに限定されるものではなく、4か月など任意に変更することができる。また、6か月の出勤簿データに対して、その後3か月以内に休職したか否かによってラベルを付与する例を説明したが、これに限定されるものではなく、2か月以内など任意に変更することができる。また、テンソルデータも四次元に限らず、四次元未満のテンソルデータを生成することもでき、五次元以上のテンソルデータを生成することもできる。また、出勤簿データに限らず、従業員等の出退勤や休暇の取得状況などがわかる勤怠データであれば、データの形式を問わず採用することができる。また、1月から6月までの出勤簿データ、2月から7月までの出勤簿データの様に、始期を異ならせたデータを用いることもできる。
[ニューラルネットワーク]
本実施例では、RNN(Recurrent Neural Networks)やCNN(Convolutional Neural Network)など様々なニューラルネットワークを用いることができる。また、学習の手法も、誤差逆伝播以外にも公知の様々な手法を採用することができる。また、ニューラルネットワークは、例えば入力層、中間層(隠れ層)、出力層から構成される多段構成であり、各層は複数のノードがエッジで結ばれる構造を有する。各層は、「活性化関数」と呼ばれる関数を持ち、エッジは「重み」を持ち、各ノードの値は、前の層のノードの値、接続エッジの重みの値(重み係数)、層が持つ活性化関数から計算される。なお、計算方法については、公知の様々な手法を採用できる。
また、ニューラルネットワークにおける学習とは、出力層が正しい値となるように、パラメータ、すなわち、重みとバイアスを修正していくことである。誤差逆伝播法においては、ニューラルネットワークに対して、出力層の値がどれだけ正しい状態(望まれている状態)から離れているかを示す「損失関数(loss function)」を定め、最急降下法等を用いて、損失関数が最小化するように、重みやバイアスの更新が行われる。
[システム]
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。また、実施例で説明した具体例、分布、数値などは、あくまで一例であり、任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
[ハードウェア]
図12は、ハードウェア構成例を説明する図である。図12に示すように、学習装置100は、通信装置100a、HDD(Hard Disk Drive)100b、メモリ100c、プロセッサ100dを有する。また、図12に示した各部は、バス等で相互に接続される。
通信装置100aは、ネットワークインタフェースカードなどであり、他のサーバとの通信を行う。HDD100bは、図5に示した機能を動作させるプログラムやDBを記憶する。
プロセッサ100dは、図5に示した各処理部と同様の処理を実行するプログラムをHDD100b等から読み出してメモリ100cに展開することで、図5等で説明した各機能を実行するプロセスを動作させる。すなわち、このプロセスは、学習装置100が有する各処理部と同様の機能を実行する。具体的には、プロセッサ100dは、テンソル生成部111、学習部112、予測部113等と同様の機能を有するプログラムをHDD100b等から読み出す。そして、プロセッサ100dは、テンソル生成部111、学習部112、予測部113等と同様の処理を実行するプロセスを実行する。
このように学習装置100は、プログラムを読み出して実行することで学習方法を実行する情報処理装置として動作する。また、学習装置100は、媒体読取装置によって記録媒体から上記プログラムを読み出し、読み出された上記プログラムを実行することで上記した実施例と同様の機能を実現することもできる。なお、この他の実施例でいうプログラムは、学習装置100によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
このプログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD-ROM、MO(Magneto-Optical disk)、DVD(Digital Versatile Disc)などのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することができる。
100 学習装置
101 通信部
102 記憶部
103 出勤簿データDB
104 テンソルDB
105 学習結果DB
106 予測対象DB
110 制御部
111 テンソル生成部
112 学習部
113 予測部

Claims (5)

  1. コンピュータに、
    複数の項目を有し、カレンダーに対応した複数のレコードを有する時系列データを受け付け、
    前記時系列データから、カレンダー情報、および、前記複数の項目それぞれを別次元としてテンソル化したテンソルデータと第1の分類を示す正解ラベルとを含む訓練データを生成し、
    入力されたテンソルデータをテンソル分解して得られたコアテンソルをニューラルネットワークに入力して前記第1の分類に分類されるか否かの予測結果を出力する学習モデルに対し前記訓練データを入力することによって、前記ニューラルネットワークの訓練および前記テンソル分解のパラメータの更新を行う、
    処理を実行させる機械学習プログラム。
  2. 前記時系列データは、出勤簿データであって、
    前記複数の項目は、月度、日付、出欠区分、出張区分の項目を含み、
    前記テンソルデータは、月度、日付、出欠区分、出張区分のそれぞれを別次元とする四次元テンソルデータである、
    ことを特徴とする請求項1に記載の機械学習プログラム。
  3. 前記訓練データを生成する処理は、前記出勤簿データのうち、休職期間がある第1の出勤簿データから第1のテンソルデータを生成し、休職期間がない第2の出勤簿データから第2のテンソルデータを生成し、前記第1のテンソルデータに前記第1の分類を示す正解ラベルを対応づけ、前記第2のテンソルデータに第2の分類を示す正解ラベルを対応づける、処理を含む、
    ことを特徴とする請求項2に記載の機械学習プログラム。
  4. コンピュータが、
    複数の項目を有し、カレンダーに対応した複数のレコードを有する時系列データを受け付け、
    前記時系列データから、カレンダー情報、および、前記複数の項目それぞれを別次元としてテンソル化したテンソルデータと第1の分類を示す正解ラベルとを含む訓練データを生成し、
    入力されたテンソルデータをテンソル分解して得られたコアテンソルをニューラルネットワークに入力して前記第1の分類に分類されるか否かの予測結果を出力する学習モデルに対し前記訓練データを入力することによって、前記ニューラルネットワークの訓練および前記テンソル分解のパラメータの更新を行う、
    処理を実行する機械学習方法。
  5. 複数の項目を有し、カレンダーに対応した複数のレコードを有する時系列データを受け付ける受付部と、
    前記時系列データから、カレンダー情報、および、前記複数の項目それぞれを別次元としてテンソル化したテンソルデータと第1の分類を示す正解ラベルとを含む訓練データを生成する生成部と、
    入力されたテンソルデータをテンソル分解して得られたコアテンソルをニューラルネットワークに入力して前記第1の分類に分類されるか否かの予測結果を出力する学習モデルに対し前記訓練データを入力することによって、前記ニューラルネットワークの訓練および前記テンソル分解のパラメータの更新を行う学習部と
    を有する機械学習装置。
JP2018081907A 2018-04-20 2018-04-20 機械学習プログラム、機械学習方法および機械学習装置 Active JP7063080B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018081907A JP7063080B2 (ja) 2018-04-20 2018-04-20 機械学習プログラム、機械学習方法および機械学習装置
US16/380,537 US20190325312A1 (en) 2018-04-20 2019-04-10 Computer-readable recording medium, machine learning method, and machine learning apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018081907A JP7063080B2 (ja) 2018-04-20 2018-04-20 機械学習プログラム、機械学習方法および機械学習装置

Publications (2)

Publication Number Publication Date
JP2019191783A JP2019191783A (ja) 2019-10-31
JP7063080B2 true JP7063080B2 (ja) 2022-05-09

Family

ID=68238080

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018081907A Active JP7063080B2 (ja) 2018-04-20 2018-04-20 機械学習プログラム、機械学習方法および機械学習装置

Country Status (2)

Country Link
US (1) US20190325312A1 (ja)
JP (1) JP7063080B2 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10915663B1 (en) * 2019-01-29 2021-02-09 Facebook, Inc. Systems and methods for protecting data
US12034747B2 (en) * 2019-03-08 2024-07-09 International Business Machines Corporation Unsupervised learning to simplify distributed systems management
JP7272443B2 (ja) * 2019-08-13 2023-05-12 日本電信電話株式会社 推定装置、推定方法、及び推定プログラム
KR102298414B1 (ko) * 2019-12-16 2021-09-06 주식회사 카카오 캘린더 서비스를 제공하는 방법 및 그 장치
CN111191715A (zh) * 2019-12-27 2020-05-22 深圳市商汤科技有限公司 图像处理方法及装置、电子设备和存储介质
CN113537485B (zh) * 2020-04-15 2024-09-06 北京金山数字娱乐科技有限公司 一种神经网络模型的压缩方法及装置
JP7496499B2 (ja) * 2020-11-30 2024-06-07 パナソニックIpマネジメント株式会社 学習装置、学習方法、および故障予知システム
JP7524778B2 (ja) 2021-01-27 2024-07-30 富士通株式会社 機械学習プログラム、機械学習方法及び機械学習装置
CN114169966B (zh) * 2021-12-08 2022-08-05 海南港航控股有限公司 一种用张量提取货物订单元数据的方法及系统
CN116524204B (zh) * 2023-05-16 2025-07-25 电子科技大学 一种基于四阶空时张量的红外目标检测方法及系统
CN116559681A (zh) * 2023-07-12 2023-08-08 安徽国麒科技有限公司 基于深度学习时序算法的退役电池容量预测方法和装置
CN116910692B (zh) * 2023-07-24 2025-06-06 福州大学 异步联邦学习中基于张量块分解的多模态融合方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016035336A1 (ja) 2014-09-03 2016-03-10 日本電気株式会社 休職予測システム、予測ルール学習装置、予測装置、休職予測方法及びコンピュータ読み取り可能記録媒体

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016035336A1 (ja) 2014-09-03 2016-03-10 日本電気株式会社 休職予測システム、予測ルール学習装置、予測装置、休職予測方法及びコンピュータ読み取り可能記録媒体

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
丸橋 弘治,研究開発最前線,FUJITSU Vol.68 No.5 ,富士通株式会社,第68巻
西野 琢也 ,テンソル分解に基づくグラフ分類による組織内ネットワーク攻撃活動検知 ,CSS2017 コンピュータセキュリティシンポジウム2017 論文集 合同開催 マルウェア対策研究人材育成ワークショップ2017 プライバシーワークショップ2017 ユーザブルセキュリティワークショップ2017 情報処理学会シンポジウムシリーズ Vol.2017 No.2 [CD-ROM] ,日本,一般社団法人情報処理学会 コンピュータセキュリティ研究会 セキュリティ心理学とトラスト研究会,第2017巻

Also Published As

Publication number Publication date
JP2019191783A (ja) 2019-10-31
US20190325312A1 (en) 2019-10-24

Similar Documents

Publication Publication Date Title
JP7063080B2 (ja) 機械学習プログラム、機械学習方法および機械学習装置
JP7067235B2 (ja) 機械学習プログラム、機械学習方法および機械学習装置
US11829867B2 (en) Computer-readable recording medium and learning data generation method
JP7409080B2 (ja) 学習データ生成方法、学習データ生成プログラムおよび情報処理装置
US11836580B2 (en) Machine learning method
Gosavi et al. Simulation-based optimization
CN110503531A (zh) 时序感知的动态社交场景推荐方法
JP6481794B1 (ja) 学習用データ生成方法、学習用データ生成プログラム
JP7063079B2 (ja) 機械学習プログラム、機械学習方法および機械学習装置
Gordon et al. Interactive scenarios
CN119398715B (zh) 一种基于生成对抗网络的项目管理系统及方法
JP2020119101A (ja) テンソル生成プログラム、テンソル生成方法およびテンソル生成装置
JP7067236B2 (ja) 機械学習用データ生成方法および機械学習用データ生成プログラム
Ibe Fundamentals of stochastic networks
JP6843109B2 (ja) 医療用のデータ構造
JP2021096511A (ja) 学習データ生成方法、学習データ生成プログラムおよび情報処理装置
JP2021068163A (ja) 予測プログラム、予測方法及び予測装置
JP7841897B2 (ja) マッチング装置およびプログラム
JP7381143B2 (ja) 情報処理装置、情報処理方法、プログラム及び記録媒体
WO2021240714A1 (ja) 心理状態分析方法、心理状態分析装置及びプログラム
JP2020004446A5 (ja)
JP7700565B2 (ja) 説明情報出力プログラム、説明情報出力方法および情報処理装置
Ling et al. Socialgrid: A tcn-enhanced method for online discussion forecasting
Ridhagen et al. A comparative study of Neural Network Forecasting models on the M4 competition data
James Fong et al. Composite Monte Carlo decision making under high uncertainty of novel coronavirus epidemic using hybridized deep learning and fuzzy rule induction

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210113

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220214

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220322

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220404

R150 Certificate of patent or registration of utility model

Ref document number: 7063080

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150