JP6832329B2 - データ構造 - Google Patents

データ構造 Download PDF

Info

Publication number
JP6832329B2
JP6832329B2 JP2018236435A JP2018236435A JP6832329B2 JP 6832329 B2 JP6832329 B2 JP 6832329B2 JP 2018236435 A JP2018236435 A JP 2018236435A JP 2018236435 A JP2018236435 A JP 2018236435A JP 6832329 B2 JP6832329 B2 JP 6832329B2
Authority
JP
Japan
Prior art keywords
data
tensor
learning
attendance
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.)
Active
Application number
JP2018236435A
Other languages
English (en)
Other versions
JP2020098476A (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 JP2018236435A priority Critical patent/JP6832329B2/ja
Priority to US16/697,179 priority patent/US11836580B2/en
Publication of JP2020098476A publication Critical patent/JP2020098476A/ja
Application granted granted Critical
Publication of JP6832329B2 publication Critical patent/JP6832329B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2237Vectors, bitmaps or matrices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/10Interfaces, programming languages or software development kits, e.g. for simulating neural networks
    • G06N3/105Shells for specifying net layout

Landscapes

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

Description

本発明は、データ構造に関する。
グラフ構造のデータを深層学習することが可能なグラフ構造学習技術(以降、このようなグラフ構造学習を行う装置の一形態を「ディープテンソル(DeepTensor:DT)」と呼ぶ。)が知られている。DTは、入力としてグラフ構造を用い、グラフ構造をテンソルデータ(以下では、テンソルと記載する場合がある)として扱う。そして、DTでは、予測に寄与するグラフの部分構造(テンソルの部分パターン)をコアテンソルとして抽出することで、高精度な予測を実現する。
特開平08−329196号公報
しかしながら、上記DTでは、コアテンソルで部分的な共通パターンを処理することができるが、部分的なテンソル上は類似しているが実はデータ全体でみると特徴が異なるデータも同じ共通パターンとして処理される場合があり、予測精度が低下する。
例えば、出勤簿データをDTで学習する場合、体調不良者の出勤簿データおよび通常者の出勤簿データをDTに入力して予測モデルを学習する。そして、学習済みの予測モデルに、判別対象者の出勤簿データを入力して、判別対象者が療養(休職)する可能性を予測する。
このような学習では、過去にメンタル疾患などを発症して療養経験のある既往者の出勤簿データが、復職して通常勤務している状態であっても、休暇や遅刻が頻出するなど、乱れがあることがある。このとき、新規療養前の兆候である出勤の乱れがある出勤簿データと、部分的なテンソル上では似た状態になることがある。しかし、その後で療養が発生するとは限らない。よって、既往者の出勤簿データがノイズとなり、新規療養者の予測精度を低下させる。
一つの側面では、予測精度の劣化を抑制することができるデータ構造を提供することを目的とする。
第1の案では、データ構造は、複数の要素から構成される従業員の出勤簿データと、前記従業員が療養した経験がある体調不良者または前記従業員が療養したことがない通常者かのいずれかを特定する正解情報と、を含む。学習装置は、ターゲットコアテンソルと、過去に療養経験があるが復職している従業員を示す既往者の出勤簿データへの重み付けルールとを記憶する記憶部と、前記出勤簿データからテンソルデータを生成する生成部とを有する。データ構造は、学習装置が、前記従業員が前記既往者に該当する場合、前記重みづけルールにしたがって、前記出勤簿データのいずれかの要素の重みを変更して前記テンソルデータを変更し、前記ターゲットコアテンソルと類似するように前記変更されたテンソルデータからコアテンソルを生成し、ディープテンソルを用いた学習器に前記コアテンソルを入力して教師有学習を実行する処理に用いられる。
一実施形態によれば、予測精度の劣化を抑制することができる。
図1は、実施例1にかかる機械学習の全体例を説明する図である。 図2は、学習データの例を説明する図である。 図3は、グラフ構造とテンソルとの関係の一例を示す図である。 図4は、部分グラフ構造の抽出の一例を示す図である。 図5は、ディープテンソルの学習例を説明する図である。 図6は、実施例1にかかる学習装置の機能構成を示す機能ブロック図である。 図7は、重み情報DBに記憶される重み情報の例を示す図である。 図8は、出勤簿データDBに記憶される情報の例を示す図である。 図9は、学習データDBに記憶される情報の例を示す図である。 図10は、療養期間の判定と重み設定を説明する図である。 図11は、テンソル化を説明する図である。 図12は、テンソルデータの比較例を示す図である。 図13は、既往者のテンソルデータ上における重み変更を説明する図である。 図14は、重み変更の対象外である学習データを説明する図である。 図15は、重み変更の対象である学習データを説明する図である。 図16は、重み変更が与える影響を説明する図である。 図17は、学習処理の流れを示すフローチャートである。 図18は、予測時の処理の流れを示すフローチャートである。 図19は、ハードウェア構成例を説明する図である。
以下に、本願の開示するデータ構造の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、各実施例は、矛盾のない範囲内で適宜組み合わせることができる。
[全体例]
近年、従業員の体調管理などは、企業にとっても取り組むべき重要な事項に位置づけられており、従業員の出勤簿データから、数か月先のメンタル不調を予測し、カウンセリング等の対応を早期に実施することが行われている。一般的には、専任スタッフが、膨大な人数の従業員の出勤簿データを閲覧し、頻繁な出張、長時間残業、連続する欠勤、無断欠勤、これらの組合せなどの特徴的なパターンの勤務状態に該当する従業員を目視で探している。このような特徴的なパターンは、各専任スタッフにより基準が異なることもあり、明確に定義することが難しい。
そこで、本実施例では、ディープテンソルを用いた深層学習の一例として、従業員等の出勤簿データを学習対象とし、体調不良者の出勤簿データおよび通常者の出勤簿データをディープテンソルに入力して従業員のメンタル不調を予測する予測モデルを学習する。
図1は、実施例1にかかる機械学習の全体例を説明する図である。図1に示すように、実施例1にかかる学習装置100は、社員の日々の出勤、退勤時間、休暇取得、出張などの状況を含む出勤簿データを機械学習して予測モデルを生成する。そして、学習装置100は、学習後の予測モデルを用いて、予測対象のある社員の出勤簿データから、当該社員が療養(休職)するか療養しないかを予測するコンピュータ装置の一例である。なお、ここでは、学習装置100が学習処理と予測処理とを実行する例で説明するが、別々の装置で実行することもできる。
例えば、学習装置100は、複数の要素から構成される従業員の出勤簿データと、従業員が療養した経験がある体調不良者か療養したことがない通常者か否かを特定する従業員情報(ラベル)と、を含む学習データを記憶する。また、学習装置100は、ターゲットコアテンソルと過去に療養経験があるが復職している従業員を示す既往者の出勤簿データへの重み付けルールとを記憶する。
このような状態で、学習装置100は、既往者に該当しない学習データに対しては、テンソル化対象の出勤簿データに対する重みを変更することなく(例えば1のまま)、テンソル化を実行する。そして、学習装置100は、テンソル化されたテンソルデータをテンソル分解して、ターゲットコアテンソルに類似するようにコアテンソルを生成する。その後、学習装置100は、ディープテンソルを用いた学習器にコアテンソルを入力して教師有学習を実行する。
一方、学習装置100は、既往者に該当する学習データに対しては、予め記憶する重みづけルールにしたがって、テンソル化対象の出勤簿データのいずれかの要素の重みを変更してテンソルデータを変更する。そして、学習装置100は、重みが変更されたデータをテンソル分解して、ターゲットコアテンソルと類似するようにコアテンソルを生成する。その後、学習装置100は、ディープテンソルを用いた学習器にコアテンソルを入力して教師有学習を実行する。
ここで、ディープテンソルに入力する学習データについて説明する。図2は、学習データの例を説明する図である。学習データは、6か月ごとの出勤簿データと、その6か月以降から3か月以内に療養実績があるか否かを示すラベルとから構成される。図2の(a)は、ラベル(療養あり)が付される体調不良者の出勤簿データであり、図2の(b)は、療養しなかったラベル(療養なし)が付される通常者の出勤簿データである。図2に示すように、実施例1にかかる学習装置100は、「6か月分の出勤簿データ、ラベル(療養あり)」と、「6か月分の出勤簿データ、ラベル(療養なし)」とを学習データとして予測モデルを学習する。学習装置100は、学習後、ある人の6か月分の出勤簿データから3か月以内に療養するか否かを予測する。なお、図2内の網掛けは、休暇を示す。
次に、ディープテンソルについて説明する。ディープテンソルとは、テンソル(グラフ情報)を入力とするディープラーニングであり、ニューラルネットワークの学習とともに、判別に寄与する部分グラフ構造を自動的に抽出する。この抽出処理は、ニューラルネットワークの学習とともに、入力テンソルデータのテンソル分解のパラメータを学習することによって実現される。
次に、図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階のテンソル、つまり行列が用いられる。)の積で近似する。この分解は一意ではなく、入力データが表すグラフ構造中の任意の部分グラフ構造をコアテンソルに含める事ができる。
なお、出勤簿データは、複数のノードと複数のノードを接続するエッジとから成るグラフデータを構成することができる。ここで、複数のノードは、日付、月度および出欠区分のノードから構成される。日付、月度および出欠区分のノードは、日付、月度および出欠区分の数だけそれぞれ存在する。各ノードには、日付、月度および出欠区分の状況に応じた値が格納される。例えば、日付が1なら値「1」、出欠区分が「休暇」なら値「2」で「出社」なら値「1」などが設定される。エッジは、日付のノードと、月度のノードと、出欠区分のノードをうち関連のあるノードを接続される。
続いて、ディープテンソルの学習について説明する。図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は、分類誤差をターゲットコアテンソルまで伝搬させ、予測に寄与するグラフの部分構造、すなわち体調不良者の特徴を示す特徴パターンもしくは通常者の特徴を示す特徴パターンに近づくように、ターゲットコアテンソルを修正する。
なお、学習後の予測時には、テンソル分解により、ターゲットコアテンソルに類似するように、入力テンソルをコアテンソル(入力テンソルの部分パターン)に変換し、コアテンソルをニューラルネットに入力することで、予測結果を得ることができる。
そして、学習装置100は、通常者と体調不良者のそれぞれの出勤簿データから生成されたテンソルを用いて学習する際に、1つの学習データとして切り出された期間(例えば、6か月+ラベル用の3か月)内に療養が含まれるか否かに関わらず、出勤簿データの全期間を参照し、過去に療養経験がある者(既往者)を特定する。そして、学習装置100は、コアテンソル化(部分パターン抽出)した際に、療養前の兆候となる乱れた出勤簿のパターンと部分的に類似のデータを持つ恐れがある既往者の療養明け(復職後)期間のデータについてのテンソルの重みを減らす。
このようにすることで、学習装置100は、既往者の出勤簿データが、休暇や遅刻が頻発するなど、新規に療養に入る前の体調不良者の出勤簿データと部分的に類似していても、既往者と体調不良者(新規療養者)とを別々のコアテンソルと抽出することができる。よって、学習装置100は、体調不良者の特徴を正確に学習することができるので、新規療養の予測精度の劣化を抑制することができる。
[機能構成]
図6は、実施例1にかかる学習装置100の機能構成を示す機能ブロック図である。図6に示すように、学習装置100は、通信部101、記憶部102、制御部110を有する。
通信部101は、他の装置との通信を制御する処理部であり、例えば通信インタフェースである。例えば、通信部101は、管理者の端末から、処理開始指示、学習データ、学習データがテンソル化された入力テンソルなどを受信する。また、通信部101は、管理者の端末に対して、学習結果や予測結果などを出力する。
記憶部102は、プログラムやデータを記憶する記憶装置の一例であり、例えばメモリやハードディスクなどである。この記憶部102は、重み情報DB103、出勤簿データDB104、学習データDB105、テンソルDB106、学習結果DB107、予測対象DB108を記憶する。
重み情報DB103は、テンソルデータに設定する重みの設定内容を示す重み付けルールを記憶するデータベースである。図7は、重み情報DB103に記憶される重み情報の例を示す図である。図7に示すように、重み情報DB103は、「種別、設定値(重み)」を対応付けて記憶する。ここで記憶される「種別」は、データの種別を示し、「設定値(重み)」は、設定する値を示す。
図7の例では、既往者の療養期間後のテンソルデータに対しては重み「0.5」を設定することを示し、それ以外のテンソルデータに対しては重み「1.0」を設定することを示す。なお、重み「1.0」とは、テンソルデータを変化させないと解釈することができるので、デフォルト値などを用いることができる。また、重み「0.5」とは、テンソルデータの重みの一部を変化させて重要度を下げることと解釈することができるので、デフォルト値よりも小さい値を採用することができる。なお、重みの設定は、月度や出欠区分などの要素ごとに設定することもできる。
出勤簿データDB104は、社員等の出勤に関する出勤簿データを記憶するデータベースである。ここで記憶される出勤簿データは、各企業で使用される出勤簿をデータ化したものであり、公知の様々な出勤管理システムなどから取得することができる。図8は、出勤簿データDB104に記憶される情報の例を示す図である。図8に示すように、出勤簿データは、「従業員No、日付、曜日、出欠区分、出勤時刻、退勤時刻、残業時間、出張」を対応付けて記憶する。なお、出欠区分には、出社、療養、休暇などの種別が格納される。また、日付や曜日などは、出勤簿データを構成する要素の一例である。
図8の例は、従業員No.100の従業員の出勤簿データを示している。例えば、図8の2行目は、「2015年4月2日木曜日」の出勤簿データであり、この日は、出張がなく、「8:49」に出社して「0:00」に退社し、残業時間が「360分」である例を示す。また、図8の7行目は、「2015年8月24日水曜日」の出勤簿データであり、この日から「2015年10月4日火曜日」まで「療養」したことを示す。なお、出勤簿データの単位は、日ごとに限らず、週単位や月単位であってもよい。
学習データDB105は、テンソル化対象となる学習データを記憶するデータベースである。具体的には、学習データDB105は、出勤簿データを6か月の期間で切出されたデータと、ラベルの組となる各学習データを記憶する。
例えば、6か月の出勤簿データを1つの学習データとし、その後の3か月以内に療養した療養期間がある場合に、ラベルとして「療養あり」が設定され、その後の3か月以内に療養期間がない場合に、ラベルとして「療養なし」が設定される。なお、6か月の出勤簿データに療養期間が含まれている場合、そのデータは学習データとして採用されない。これは、予測時に、予測元のデータ(入力)となる6か月分の出勤簿データにすでに「療養」が入っている人は、明らかに直近で療養しているとわかっており、この先3か月の療養予測の対象にはしないためである。
図9は、学習データDB105に記憶される情報の例を示す図である。図9に示すように、学習データDB105は、「従業員、データ(説明変数)、ラベル(目的変数)」を対応付けて記憶する。ここで記憶される「従業員」は、学習データの生成元となった出勤簿データに対応する従業員であり、データを説明変数、ラベルを目的変数とする学習データが記憶される。
図9の例では、従業員Aの1月から6月までの出勤簿データには、ラベルとして「療養なし」が設定されていることを示し、従業員Aの2月から7月までの出勤簿データには、ラベルとして「療養なし」が設定されていることを示す。また、従業員Aの3月から8月までの出勤簿データには、ラベルとして「療養あり」が設定されていることを示す。
テンソルDB106は、各従業員の学習データから生成された各テンソル(テンソルデータ)を記憶するデータベースである。このテンソルDB106は、各テンソルとラベルとを対応付けたテンソルデータを記憶する。例えば、テンソルDB106は、「データNo、ラベル」として「テンソルNo.1、ラベル(療養なし)」や「テンソルNo.2、ラベル(療養あり)」などを記憶する。なお、ここで記憶される各テンソルは、学習装置100以外の別の装置で生成してもよく、学習装置100が生成することもできる。
学習結果DB107は、学習結果を記憶するデータベースである。例えば、学習結果DB107は、制御部110による学習データの判別結果(分類結果)、機械学習やディープラーニングによって学習された、NNの各種パラメータやディープテンソルの各種パラメータなどを記憶する。
予測対象DB108は、学習された予測モデルを用いて、新規に療養の有無を予測する対象の出勤簿データを記憶するデータベースである。例えば、予測対象DB108は、予測対象の出勤簿データ、または、予測対象の出勤簿データから生成されたテンソルなどを記憶する。
制御部110は、学習装置100全体の処理を司る処理部であり、例えばプロセッサなどである。この制御部110は、学習データ生成部111、既往者判定部112、重み設定部113、テンソル生成部114、学習部115、予測部116を有する。なお、学習データ生成部111、既往者判定部112、重み設定部113、テンソル生成部114、学習部115、予測部116は、プロセッサなどが有する電子回路やプロセッサなどが実行するプロセスの一例である。
学習データ生成部111は、出勤簿データDB104に記憶される各出勤簿データから、始期の異なる一定期間のデータと、始期に対応したラベルの組となる学習データを生成する処理部である。具体的には、学習データ生成部111は、一人の出勤簿データから重複を許して、指定された期間のデータをサンプリングする。学習データ生成部111は、各出勤簿データから、期間のはじまり(始期)が異なる複数のデータを抽出し、各データについて、データの終期から3か月以内に療養期間があればラベル「療養あり」を設定し、データの終期から3か月以内に療養期間がなければラベル「療養なし」を設定する。その後、学習データ生成部111は、抽出したデータと設定したラベルとを対応付けた学習データを学習データDB105に格納する。
例えば、学習データ生成部111は、1月から12月の出勤簿データから、1月から6月の出勤簿データを抽出する。そして、学習データ生成部111は、7月から9月の3か月間に療養期間がない場合はラベル「療養なし」を、抽出した出勤簿データに付加して学習データを生成する。続いて、学習データ生成部111は、1月から12月の出勤簿データから、2月から7月の出勤簿データを抽出する。そして、学習データ生成部111は、8月から10月の3か月間に療養期間がある場合はラベル「療養あり」を、抽出した出勤簿データに付加して学習データを生成する。
既往者判定部112は、各学習データの元となった出勤簿データに基づいて、該当する従業員が既往者か否かを判定する処理部である。例えば、既往者判定部112は、予測に用いる「6か月」などの区間切り出しではなく、該当従業員の全データ区間である出勤簿データを参照し、過去に「療養期間」がある場合は既往者と判定し、過去に「療養期間」がない場合は通常者と判定する。そして、既往者判定部112は、各学習データに対する判定結果を重み設定部113に通知する。
なお、既往者とは、1つの学習データとして使用する期間に限らず、過去の出勤簿データ全体において療養期間がある従業員を指す。例えば、療養期間が学習時から2年前の場合、直近6か月のデータだけみると「体調不良者」ではないが、「既往者」に該当する場合がある。
重み設定部113は、各学習データが既往者の療養明け期間に該当するか否かを判定し、その判定結果に応じてテンソルデータの重みの一部を変更する処理部である。具体的には、重み設定部113は、学習データDB105に記憶される各学習データに対して、重み情報DB103に記憶される重み付けルールにしたがって重みを設定する。そして、重み設定部113は、重みが設定された結果をテンソル生成部114に出力する。
例えば、重み設定部113は、既往者判定部112によって既往者であると判定されるとともに療養期間後に該当する出勤簿データから生成された学習データに対して、重み「0.5」を設定する。また、重み設定部113は、「既往者かつ療養期間後」以外の各学習データに対しては、重み「1.0」を設定する。つまり、重み設定部113は、ある条件の一例である既往者の学習データについて、療養明けで復職した療養期間明けに該当するデータの重要度を減少させるために、重みを設定する。
ここで、図10を用いて、療養区間と重みの設定について説明する。図10は、療養期間の判定と重み設定を説明する図である。図10に示すように、重み設定部113は、テンソル化に際して、各学習データが「療養期間」の前後のいずれに該当するかを判定する。図10の例では、重み設定部113は、「2015年8月24日」から「2015年10月4日」まで「療養期間」を検出すると、療養開始の「2015年8月24日」より前に該当する学習データについては重みを「1」に設定し、療養終了の「2015年10月4日」より後の学習データについては重みを「0.5」に設定する。
つまり、療養期間より前の療養前期間は、療養要因となる部分パターンであるコアテンソル(予測に影響を与える部分パターン)として抽出するのに重要と判定され、重みとして「1」を設定する。一方で、療養期間より後の療養後期間は、療養要因となる部分パターンであるコアテンソルとして抽出する対象としては重要ではないと判定し、重みとして「0.5」を設定する。このようにして、既往者の療養期間後に該当する学習データについては、テンソルデータの重みの一部を変化させる。
テンソル生成部114は、各学習データをテンソル化する処理部である。具体的には、テンソル生成部114は、学習データDB105に記憶される各学習データであって、重み設定部113による重み設定が完了した各学習データについて、各学習データに含まれる要素で構成されるテンソルを生成して、テンソルDB106に格納する。例えば、テンソル生成部114は、各学習データについて、各学習データに含まれる4要素で構成される4階テンソルを生成して、テンソルDB106に格納する。このとき、テンソル生成部114は、学習データに付加されるラベル(療養あり)またはラベル(療養なし)を、テンソルに対応付けて格納する。
具体的には、テンソル生成部114は、療養する傾向を特徴づけると想定される各属性を各次元として、学習データからテンソルを生成する。例えば、テンソル生成部114は、月度、日付、出欠区分、出張有無の4要素を用いた4次元の4階テンソルを生成する。なお、6か月分のデータである場合は、月度の要素数は「6」、各月の日付数の最大値が31であることから日付の要素数は「31」、出欠の種類が出社・休暇・休日であれば出欠区分の要素数は「3」、出張はありとなしであることから出張有無の要素数は「2」となる。したがって、学習データから生成されるテンソルは、「6×31×3×2」のテンソルとなり、学習データの各月度、日付における出欠区分、出張有無に対応する要素の値が1、そうでない要素の値が0となる。
図11は、テンソル化を説明する図である。図11に示すように、テンソル生成部114が生成するテンソルは、横方向に月度、縦方向に日付、奥行き方向に出欠区分、左側が出張あり、右側が出張なしのデータとなる。日付は、上から1日目を順に示し、出欠区分は、手前から出社、休暇、休日を示す。例えば、図11の(a)は、月度1の1日目に出社して出張した要素を示し、図11の(b)は、月度1の2日目に休暇を取得して出張しなかった要素を示す。
なお、本実施例では、上述したテンソルを簡略化して図11の(c)のように記載することとする。すなわち、月度、日付、出欠区分、出張有無の各要素を重ねたキューブ状で表現することとし、各月度かつ日付の出張有無を区別して表現し、各月度かつ日付の出欠区分を区別して表現することとする。
学習部115は、各学習データから生成された各テンソルおよびラベルを入力として、ディープテンソルによる予測モデルの学習およびテンソル分解の方法の学習を実行する処理部である。具体的には、学習部115は、ディープテンソルの「グラフ(テンソル)の部分構造を認識することができる」という性質を利用して、学習を実行する。例えば、学習部115は、図5で説明した手法と同様、入力対象のテンソル(入力テンソル)からコアテンソルを抽出してNNに入力し、NNからの分類結果と入力テンソルに付与されているラベルとの誤差(分類誤差)を算出する。そして、学習部115は、分類誤差を用いて、NNのパラメータの学習およびターゲットコアテンソルの最適化を実行する。その後、学習部115は、学習が終了すると、各種パラメータを学習結果として学習結果DB107に格納する。
なお、実施例1で説明するテンソル分解は、ターゲットコアテンソルに類似するようにコアテンソルを算出することにより、分類に重要な構造をコアテンソルの類似の位置に配置する。そして、このコアテンソルを用いてNNを学習することにより、精度の高い分類を実現する。
予測部116は、学習結果を用いて、判別対象のデータのラベルを予測する処理部である。具体的には、予測部116は、学習結果DB107から各種パラメータを読み出し、各種パラメータを設定したニューラルネットワークを構築する。そして、予測部116は、予測対象DB108から予測対象の出勤簿データを読み出し、学習時と同様の手法により、予測対象の出勤簿データから、ニューラルネットワークへの入力対象となるテンソルを生成する。
その後、予測部116は、学習済みのニューラルネットワーク(予測モデル)から、療養するまたは療養しないかの予測結果を取得する。そして、予測部116は、予測結果をディスプレイに表示したり、管理者端末に送信したりする。
また、予測部116は、予測対象の従業員の出勤簿データを参照して、予測対象の出勤簿データ期間よりも前に療養期間が含まれているか否かを判定し、療養期間が含まれていない通常者の場合に予測を実行し、療養期間が含まれている既往者である場合にアラートを出力することもできる。
[重み変更の影響]
次に、図12から図16を用いて、既往者の療養期間後の出勤簿データの重みが0.5に変更されることで、NNの学習に与える影響について説明する。図12は、テンソルデータの比較例を示す図である。図13は、既往者のテンソルデータ上における重み変更を説明する図である。図14は、重み変更の対象外である学習データを説明する図である。図15は、重み変更の対象である学習データを説明する図である。図16は、重み変更が与える影響を説明する図である。
ここでは、ラベル「療養あり」が付与される体調不良者に該当する従業員Aの出勤簿データと、ラベル「療養なし」が付与される既往者に該当する従業員Bの出勤簿データとを例にして説明する。また、従業員Bの出勤簿データは、療養期間後の出勤簿データとする。
また、図6等では、既往者かつ療養期間後の出勤簿データに対しては、すべての要素の一律に重み「0.5」を設定する例を説明したが、ここでは、1つの要素の重みを変更する例を説明する。すなわち、出勤簿データの日付、月度および出欠区分のうちの出欠区分の重みを0.5に変更して、出欠区分以外の重みを1.0とする例を説明する。なお、どの要素の重みを変更するかは、重み付けルールで設定することができる。
図12に示すように、ラベル「療養あり」が付与される従業員A(体調不良者)の出勤簿データから生成されたテンソルデータと、ラベル「療養なし」が付与される従業員B(既往者)の出勤簿データから生成されたテンソルデータとは、1年や2年などの長い期間で比較すると、異なるデータである。しかし、6か月間などの短期間Pの範囲内に注目すると、類似するデータまたは同じデータとなり、特徴が区別できない。すなわち、本来、別々として扱われるべきデータが、学習データとして抽出される抽出対象の6か月間のデータでは同じ特徴量を持つ類似データとして扱われる。したがって、予測モデルの学習において、これらは同じ事例として処理されるので、既往者のデータがノイズとなり、ターゲットコアテンソルの最適化やNNの学習の精度劣化に繋がる結果、予測モデルの精度劣化が発生する。
そこで、図13に示すように、重み設定部113による重み設定により、コアテンソル化(部分パターン抽出)した際に、部分的に類似のデータを持つ恐れがある既往者(従業員B)の療養明けのデータは、テンソルの重みの一部を変化させる。例えば、療養期間がある既往者であれば、療養後のデータ区間の重みの一部として、「出欠区分」のうち「年次休暇」や「準欠勤」などの休暇に該当するレコードの値を「0.5」にする。すなわち、エッジの長さを変えたり、ノードに設定する値を変更したりする。
このように、既往者の療養期間後のデータの重みを変更することで、グラフ構造のエッジが変更され、結果としてテンソルデータを変更することになる。この結果、出勤簿データから抽出されるコアテンソルを差別化することができるので、既往者かつ療養期間後の出勤簿データの特徴を、それ以外の出勤簿データの特徴と区別することができる。
具体的には、図14に示すように、学習装置100は、ラベル「療養あり」が付与される体調不良者に該当する従業員Aの出勤簿データに対しては、出欠区分に年次休暇等の休暇が含まれていたとしても、全部のレコードに対して重み「1.0」を設定する。このため、出勤簿データは、データ値そのままのグラフ構造となり、テンソル化される。
一方、図15に示すように、ラベル「療養なし」が付与される従業員Bの出勤簿データに対しては、基本的に全部のレコードに対して重み「1.0」が設定されるが、そのうち出欠区分に年次休暇または準欠勤が含まれるレコード(データ)に対しては重みが「0.5」に変更される。このため、出勤簿データを表すグラフ構造の形状が重み「1.0」の場合とは異なる形状になるので、テンソル化後のテンソルデータも重み「1.0」の場合とは異なるものとなる。
このように、重みを変更することで、出勤簿データ上では類似するデータであっても、異なるテンソルデータを生成することができる。したがって、コアテンソルの抽出元である出勤簿データが類似するデータ同士であっても、それぞれから別々のテンソルデータを生成できるので、別々の特徴としてNNを学習させることができる。
具体的には、図16に示すように、重みの変更前後では、入力データとなる各グラフ構造の形状が変化することから、それぞれから生成されてコアテンソルの生成元となる各入力テンソル(テンソルデータ)の形状も変化する。このとき、入力テンソルの主成分方向は確定しない不確かな状態であることから、重み変更前後で主成分方向が一致する可能性もある。
ところが、その後に、入力テンソルからコアテンソルを抽出するテンソル分解を行うと、重みの変更前後において分解元である入力テンソルが異なることから、別々のコアテンソルが生成される。ここで、入力テンソルの特徴量を示すコアテンソルでは主成分方向が確定されることから、重み変更前後では、主成分方向が異なる別々のコアテンソルが抽出される。つまり、類似する出勤簿データであっても、重みを変更することにより、異なるコアテンソルの抽出が可能となる。この結果、既往者かつ療養期間後の出勤簿データを学習データと用いたとしても、予測モデルの精度低下を抑制できる。
[学習処理の流れ]
図17は、学習処理の流れを示すフローチャートである。図17に示すように、学習データ生成部111は、出勤簿データを出勤簿データDB104から読み込み(S101)、学習対象の従業員1人を選択する(S102)。
続いて、学習データ生成部111は、出勤簿データから6か月期間のデータを切出すとともに、続く3か月間の出勤簿データ内の療養期間の有無によって、切出された各データにラベルを付与して、学習データを生成する(S103)。なお、6か月のデータ内に療養が含まれている場合は学習データとして採用されない。
その後、学習データ生成部111は、学習データを1つ選択し(S104)、当該学習データに対応する従業員の過去の全出勤簿データを参照して、療養期間が含まれるか否かを判定する(S105)。そして、学習データ生成部111は、療養期間が含まれる場合(S105:Yes)、学習データのラベルに「療養あり」を設定する(S106)。一方、学習データ生成部111は、療養期間が含まれない場合(S105:No)、学習データのラベルに「療養なし」を設定する(S107)。
そして、未処理の学習データが存在する場合(S108:Yes)、S104以降を繰り返し、未処理の学習データが存在しなくなると(S108:No)、S109以降が実行される。
具体的には、既往者判定部112は、学習データを1つ選択し(S109)、「条件:既往者かつ療養期間明け」に該当するか否かを判定する(S110)。ここで、重み設定部113は、条件に該当する学習データの場合(S110:Yes)、重み付けルールにしたがって、重みを「0.5」に変更し(S111)、条件に該当しない学習データの場合(S110:No)、重み「1.0」をそのまま設定する(S112)。
そして、テンソル生成部114は、重み付けされた学習データのテンソル化を実行してテンソルデータを生成する(S113)。その後、未処理の学習データが存在する場合(S114:Yes)、S109以降が繰り返され、未処理の学習データがなくなると(S114:No)、S115以降が実行される。
具体的には、未処理の学習対象の従業員が残っている場合(S115:Yes)、S102以降が繰り返される。一方、全ての従業員について処理が終了した場合(S115:No)、学習データを用いた学習部115による学習処理が実行される(S116)。
[予測の流れ]
図18は、予測時の処理の流れを示すフローチャートである。なお、予測対象の出勤簿データについても、学習時と同様、期間6か月分を入力とし、その後3か月以内に療養する/しないを予測する。図18に示すように、予測部116は、予測対象DB108から出勤簿データを読み込み(S201)、予測対象の従業員1人を選択する(S202)。
続いて、予測部116は、対象の従業員の出勤簿データを参照して、既往者に該当するか否かを判定する(S203)。
ここで、既往者に該当しない場合(S203:No)、予測部116は、出勤簿データのテンソル化を実行し(S204)、学習済みの予測モデルを用いて予測を実行し(S205)、該当従業員が3か月以内に療養するまたは療養しないを示す予測結果のラベルを記憶部102等に格納する(S206)。
その後、次の対象となる従業員がいる場合(S207:Yes)、S202以降が実行され、次の対象となる従業員がいない場合(S207:No)、処理を終了する。また、S203において、予測部116は、既往者に該当すると判定した場合(S203:Yes)、予測結果に既往者であることを示す既往者アラートを格納する(S208)。なお、S203で既往者に該当するとは、対象従業員が、予測対象の出勤簿データ(6か月分)よりも前の期間の出勤簿データに療養を含んでいる既往者である場合の他、予測対象の出勤簿データ(6か月分)内に療養を含んでおり予測対象外となる場合もある。
[効果]
上述したように、体調不良者の特徴を学習させたい場合に、体調不良者の出勤簿データと既往者の療養期間明けの出勤簿データとが類似することから、ノイズを含む学習となり、予測モデルの精度低下が発生する。そこで、実施例1にかかる学習装置100は、既往者の療養期間明けの出勤簿データの重みを変更することで、出勤簿データのグラフ構造を変更することができるので、NNへ入力されるコアテンソルを差別化することができる。
具体的には、学習装置100は、重み付けルールにしたがって、通常者に該当する学習データ(ラベル:療養なし)、体調不良者(療養あり)に該当する学習データ、既往者かつ療養期間前に該当する学習データ(ラベル:療養あり)には重みとして「1.0」を設定する。一方で、学習装置100は、既往者かつ療養期間後に該当する学習データ(ラベル:療養あり)に対しては、重みを「0.5」に変更する。
このようにすることで、学習装置100は、各学習データの特徴量(コアテンソル)を明確に差別化する。この結果、学習装置100は、ディープテンソルの「予測に寄与するグラフの部分構造(テンソルの部分パターン)をコアテンソルとして抽出することができる」という性質を有効利用することができ、少ない学習データ量でも精度良く予測が可能である。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。
[学習]
上述した学習処理は、任意の回数だけ実行することもできる。例えば、すべての学習データを用いて実行することもでき、所定回数だけ実行することもできる。また、分類誤差の算出方法は、最小二乗法など公知の算出手法を採用することができ、NNで用いられる一般的な算出手法を採用することもできる。なお、学習データや出勤簿データは、外部の装置から取得することもできる。
[重みの設定例]
上記実施例では、既往者かつ療養期間後に該当する学習データについては重み「0.5」を設定し、それ以外には重み「1.0」を設定したが、これに限定されるものではない。具体的には、既往者の療養期間明けにおける休暇の挙動を、新規の体調不良者と異なる挙動に変更できる手法を採用することもできる。
例えば、学習装置100は、出欠区分の重みを、休暇種別を区別することなく、1より小さい値に一律に変更する。例を挙げると、学習装置100は、重み変更前での学習期間(6か月)の1か月平均休暇日数をDa、学習期間よりも十分に長い期間(例えば1年間)での1か月平均休暇日数をDbとする。そして、学習装置100は、既往者かつ療養期間後に該当する学習データに対する重みの修正値としてDb/Daを与える。このようにすることで、通常、Da>Dbとなることが予想できるので、既往者かつ療養期間後に該当する学習データの休暇日数パターンを、既往者の本来の休暇日数パターンに近づけることができる。
また、学習装置100は、通常者の1か月平均休暇日数Dcを算出し、既往者かつ療養期間後に該当する学習データに対する重みの修正値としてDc/Daを与える。このようにすることで、既往者の挙動を通常者の挙動に近づけることができる。また、学習装置100は、休暇状況に左右されにくくなり、確実に、新規休職者とは区別するために、既往者かつ療養期間後に該当する学習データに対する重みとして、0.1などのように極端に小さい値を設定することもできる。また、学習装置100は、年次休暇や準欠勤などの休暇種別のうち、準欠勤の重みを0.5よりもさらに小さい値に変更することもできる。
また、学習装置100は、既往者かつ療養期間後に対応する出勤簿データを、通常者の出勤簿データに置き換えて、学習データとして生成することもできる。つまり、学習装置100は、既往者かつ療養期間後に対応する学習データを、通常者の学習データに置き換えることもできる。
[重みの変更対象]
実施例1では、既往者かつ療養期間後に該当する学習データの重みを変更する例を説明したが、これに限らず、例えば、既往者に対応する学習データに対しては、療養期間前後に関係なく、重みとして「0.5」を設定することもできる。また、実施例1では、出勤簿データの各要素のうち、出欠区分の重みを0.5に変更し、その他の要素(月度など)については重みを1.0とする例を説明したが、これに限定されるものではなく、重みを変更する要素は任意に変更することができる。
また、実施例1では、過去に療養経験のある既往者のテンソルデータの重みを変更する例を説明したが、これに限定されるものではない。たとえば、育児や介護をしている従業員など、本人の体調不良には起因しない勤務の乱れがあるような従業員のデータも、新規療養予測のノイズとなりうるため、これらの従業員を対象とするなど、テンソルデータの重みを変更する条件は、任意に変更できる。
また、上記実施例では、学習時、出勤簿データから自動で6か月や3か月の期間抽出の上、「療養あり」「療養なし」のラベルを付与し学習する例を説明したが、これに限定されるものではない。例えば、ユーザによりあらかじめ期間抽出やラベルが付与されている場合は、与えられたデータや付与済みのラベルを使用することもできる。
また、ラベルの設定例も一例であり、療養ありと療養なしに限らず、体調不良者と通常者、休職ありと休職なしなどのように、体調不良者の有無を区別できる様々なラベルを用いることもできる。また、各実施例で説明した値なども一例であり、任意に変更することができる。
また、6か月の出勤簿データを予測に用いるデータとして使用したが、これに限定されるものではなく、4か月など任意に変更することができる。また、6か月の出勤簿データに対して、その後3か月以内に療養したか否かによってラベルを付与する例を説明したが、これに限定されるものではなく、2か月以内など任意に変更することができる。また、上記実施例では、学習装置100が出勤簿データをテンソル化する例を説明したが、他の装置がテンソル化したデータを取得して上記各処理を実行することもできる。なお、実施例では、実際は4階テンソルであるが説明を簡略化するために3階テンソルで説明したが、あくまで一例であり、任意に変更することができる。また、次元数も任意に変更することができる。
[想定システム]
上記実施例では、出勤簿データを学習して療養する可能性がある従業員を予測する例で説明したが、これに限定されるものではない。例えば、電子部品の動作データを用いた故障予測、通信データを用いた攻撃予測、道路の交通量データを用いた渋滞予測などにも適用することができる。
[ニューラルネットワーク]
本実施例では、RNN(Recurrent Neural Networks)やCNN(Convolutional Neural Network)など様々なニューラルネットワークを用いることができる。また、学習の手法も、誤差逆伝播以外にも公知の様々な手法を採用することができる。また、ニューラルネットワークは、例えば入力層、中間層(隠れ層)、出力層から構成される多段構成であり、各層は複数のノードがエッジで結ばれる構造を有する。各層は、「活性化関数」と呼ばれる関数を持ち、エッジは「重み」を持ち、各ノードの値は、前の層のノードの値、接続エッジの重みの値(重み係数)、層が持つ活性化関数から計算される。なお、計算方法については、公知の様々な手法を採用できる。
また、ニューラルネットワークにおける学習とは、出力層が正しい値となるように、パラメータ、すなわち、重みとバイアスを修正していくことである。誤差逆伝播法においては、ニューラルネットワークに対して、出力層の値がどれだけ正しい状態(望まれている状態)から離れているかを示す「損失関数(loss function)」を定め、最急降下法等を用いて、損失関数が最小化するように、重みやバイアスの更新が行われる。
[システム]
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。また、実施例で説明した具体例、分布、数値などは、あくまで一例であり、任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
[ハードウェア]
図19は、ハードウェア構成例を説明する図である。図19に示すように、学習装置100は、通信装置100a、HDD(Hard Disk Drive)100b、メモリ100c、プロセッサ100dを有する。また、図19に示した各部は、バス等で相互に接続される。
通信装置100aは、ネットワークインタフェースカードなどであり、他のサーバとの通信を行う。HDD100bは、図6に示した機能を動作させるプログラムやDBを記憶する。
プロセッサ100dは、図6に示した各処理部と同様の処理を実行するプログラムをHDD10b等から読み出してメモリ10cに展開することで、図6等で説明した各機能を実行するプロセスを動作させる。すなわち、このプロセスは、学習装置100が有する各処理部と同様の機能を実行する。具体的には、プロセッサ100dは、学習データ生成部111、既往者判定部112、重み設定部113、テンソル生成部114、学習部115、予測部116等と同様の機能を有するプログラムをHDD100b等から読み出す。そして、プロセッサ100dは、学習データ生成部111、既往者判定部112、重み設定部113、テンソル生成部114、学習部115、予測部116等と同様の処理を実行するプロセスを実行する。
このように学習装置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
107 学習結果DB
108 予測対象DB
110 制御部
111 学習データ生成部
112 既往者判定部
113 重み設定部
114 テンソル生成部
115 学習部
116 予測部

Claims (5)

  1. 少なくとも日付、月度、従業員が出勤したか否かを示す出欠区分を各要素とする複数のレコードから構成される従業員の出勤簿データと、
    前記出勤簿データの所定期間ごとを教師有学習の説明変数である1つの学習データとし、各学習データに対して設定された、前記所定期間から指定期間以内の間に前記出欠区分に療養が設定される療養期間がある場合に前記従業員が療養した経験がある体調不良者を示し、前記所定期間から指定期間以内の間に前記出欠区分に療養が設定される療養期間がない場合に前記従業員が療養したことがない通常者を示すと共に前記教師有学習の学習器による出力結果との分類誤差が最小化するようにニューラルネットワークのパラメータを変更させ且つ前記分類誤差に基づいてターゲットコアテンソルの特徴パターンを前記体調不良者の特徴パターンに類似するようにターゲットコアテンソルを変更させる目的変数である正解情報と、前記学習データ毎に設定される前記出勤簿データから生成されるテンソルデータの形状を変化させる重みを示す重み情報と、を含むデータ構造であって、
    前記ターゲットコアテンソルと、過去に療養期間があるが復職している従業員を示す既往者への重み付けルールとを記憶する記憶部と、前記出勤簿データから生成された各学習データに基づきテンソルデータを生成する生成部とを有する学習装置が、
    前記従業員が前記既往者に該当する場合、前記重み情報と前記重み付けルールとにしたがって、前記従業員の前記出勤簿データから生成された各学習データのうち前記過去の療養期間後の学習データに対して、前記過去の療養期間後の学習データのいずれかの要素の重みを変更することで、重みを変更する前の学習データから生成された元のテンソルデータの形状を変化させたテンソルデータに前記テンソルデータを変更し、前記ターゲットコアテンソルと類似するように前記形状が変化されたテンソルデータからコアテンソルを生成し、前記学習器に前記コアテンソルを入力して、前記学習器による出力結果と前記過去の療養期間後の学習データ対して設定される前記目的変数である正解情報との分類誤差が最小化するようにニューラルネットワークのパラメータを変更すると共に前記分類誤差に基づいて前記ターゲットコアテンソルの特徴パターンを前記体調不良者の特徴パターンに類似するように前記ターゲットコアテンソルを変更する教師有学習を、前記学習データのうち未処理の学習データがなくなるまで繰り返し実行する処理に用いられる、データ構造。
  2. 前記学習装置が、前記従業員が前記既往者に該当する場合、前記重み付けルールにしたがって、前記出勤簿データの日付、月度および出欠区分のうちの第一の次元の要素のそれぞれの重みを変更して、前記第一の次元とは異なる第二の次元の要素の重みをそのままとする、請求項1に記載のデータ構造。
  3. 複数のノードと、前記複数のノードを接続するエッジとから成るグラフデータから構成された従業員の出勤簿データであって、
    前記複数のノードは、日付、月度および出欠区分のノードから構成され、
    当該日付、月度および出欠区分のノードは、日付、月度および出欠区分の数だけそれぞれ存在し、
    各ノードには、日付、月度および出欠区分の状況に応じた値が格納されており、
    前記エッジは、日付のノードと、月度のノードと、出欠区分のノードのうち関連のあるノードを接続し、
    前記学習装置が
    前記従業員が前記既往者に該当する場合であって、前記学習データの日付、月度および出欠区分のうちの第一の次元の要素のそれぞれの重みを変更したときに、前記重みに基づいて前記第一の次元に対応するノードに格納された値を変更したグラフデータを示す前記形状を変化させたテンソルデータを生成し、前記ターゲットコアテンソルと類似するように前記形状を変化させたテンソルデータから第一のコアテンソルを生成し、ディープテンソルを用いた学習器に前記第一のコアテンソルを入力し、
    前記従業員が前記既往者に該当しない場合は、ノードに格納された値を変更しない状態のグラフデータを示すテンソルデータを生成し、前記ターゲットコアテンソルと類似するように前記テンソルデータから第二のコアテンソルを生成し、ディープテンソルを用いた学習器に第二のコアテンソルを入力し、
    前記学習器が、
    前記第一のコアテンソルが入力されたときは、前記既往者の特徴を示すノードとエッジの関係を学習し、
    前記第二のコアテンソルが入力されたときは、療養した経験がない従業員の特徴を示すノードとエッジの関係を学習する、
    請求項2に記載のデータ構造。
  4. 前記重み付けルールは、重み変更前後で各学習データのグラフ構造の形状が変化するように、前記グラフ構造のノードの値またはエッジの長さを変更する情報であることを特徴とする請求項1に記載のデータ構造。
  5. 前記学習装置が、前記体調不良者の出勤簿データに基づく学習データから生成される第1のテンソルデータに類似する前記既往者の出勤簿データに基づく学習データから生成される第2のテンソルデータに含まれる要素のうちいずれかの要素の重みを変更することで、テンソル分解によって前記第1のテンソルデータから生成されるコアテンソルの主成分方向と、前記第2のテンソルデータから生成されるコアテンソルの主成分方向とを差別化して、前記体調不良者の特徴量と前記既往者の特徴量のそれぞれを前記学習器に学習させる、ことを特徴とする請求項1に記載のデータ構造。
JP2018236435A 2018-12-18 2018-12-18 データ構造 Active JP6832329B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018236435A JP6832329B2 (ja) 2018-12-18 2018-12-18 データ構造
US16/697,179 US11836580B2 (en) 2018-12-18 2019-11-27 Machine learning method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018236435A JP6832329B2 (ja) 2018-12-18 2018-12-18 データ構造

Publications (2)

Publication Number Publication Date
JP2020098476A JP2020098476A (ja) 2020-06-25
JP6832329B2 true JP6832329B2 (ja) 2021-02-24

Family

ID=71072737

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018236435A Active JP6832329B2 (ja) 2018-12-18 2018-12-18 データ構造

Country Status (2)

Country Link
US (1) US11836580B2 (ja)
JP (1) JP6832329B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112184939B (zh) * 2020-09-03 2022-03-18 珠海格力电器股份有限公司 员工考勤情况的判定方法、装置、存储介质及电子设备
US20220247146A1 (en) * 2021-02-04 2022-08-04 Nec Laboratories America, Inc Multilinear domain-specific domain generalization

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3469677B2 (ja) 1995-05-31 2003-11-25 三洋電機株式会社 文字認識装置およびその学習方法
US7089200B2 (en) * 1999-12-21 2006-08-08 Third Millennium Management Pty Ltd Payroll management method and apparatus
US9418182B2 (en) * 2009-06-01 2016-08-16 Paradigm Sciences Ltd. Systems and methods for building axes, co-axes and paleo-geographic coordinates related to a stratified geological volume
US8732627B2 (en) * 2012-06-18 2014-05-20 International Business Machines Corporation Method and apparatus for hierarchical wafer quality predictive modeling
US9747178B2 (en) * 2015-08-26 2017-08-29 Netapp, Inc. Configuration inconsistency identification between storage virtual machines
US10789544B2 (en) * 2016-04-05 2020-09-29 Google Llc Batching inputs to a machine learning model
US10922604B2 (en) * 2016-09-09 2021-02-16 Cylance Inc. Training a machine learning model for analysis of instruction sequences
US10896367B2 (en) * 2017-03-07 2021-01-19 Google Llc Depth concatenation using a matrix computation unit
US11315032B2 (en) * 2017-04-05 2022-04-26 Yahoo Assets Llc Method and system for recommending content items to a user based on tensor factorization
EP3631690A4 (en) * 2017-05-23 2021-03-31 Intel Corporation METHOD AND DEVICE FOR IMPROVING A NEURAL NETWORK USING BINARY TENSOR AND SCALE FACTOR PAIRS
US10268646B2 (en) * 2017-06-06 2019-04-23 Facebook, Inc. Tensor-based deep relevance model for search on online social networks
US10248908B2 (en) * 2017-06-19 2019-04-02 Google Llc Alternative loop limits for accessing data in multi-dimensional tensors
US10956875B2 (en) * 2017-10-09 2021-03-23 Ricoh Company, Ltd. Attendance tracking, presentation files, meeting services and agenda extraction for interactive whiteboard appliances
US20190130268A1 (en) * 2017-10-27 2019-05-02 Wave Computing, Inc. Tensor radix point calculation in a neural network
CN111886606A (zh) * 2018-02-23 2020-11-03 Asml荷兰有限公司 用于图案的语义分段的深度学习
US20190324606A1 (en) * 2018-04-19 2019-10-24 Adobe Inc. Online training of segmentation model via interactions with interactive computing environment
US20210176262A1 (en) * 2018-05-02 2021-06-10 Visa International Service Association Event monitoring and response system and method
US10565229B2 (en) * 2018-05-24 2020-02-18 People.ai, Inc. Systems and methods for matching electronic activities directly to record objects of systems of record
US10720151B2 (en) * 2018-07-27 2020-07-21 Deepgram, Inc. End-to-end neural networks for speech recognition and classification
EP3732630A1 (en) * 2018-08-03 2020-11-04 Google LLC Distributing tensor computations across computing devices
US20200074270A1 (en) * 2018-09-05 2020-03-05 International Business Machines Corporation Estimate ore content based on spatial geological data through 3d convolutional neural networks
US11822918B2 (en) * 2018-10-13 2023-11-21 Affirm, Inc. Code search and code navigation
US10970187B2 (en) * 2018-10-31 2021-04-06 Jpmorgan Chase Bank, N.A. System and method for proactively healing a mainframe computer system
US10937173B2 (en) * 2018-11-15 2021-03-02 Qualcomm Incorporated Predicting subject body poses and subject movement intent using probabilistic generative models
US10878173B2 (en) * 2018-11-29 2020-12-29 Adobe Inc. Object recognition and tagging based on fusion deep learning models
US11586883B2 (en) * 2018-12-14 2023-02-21 Microsoft Technology Licensing, Llc Residual quantization for neural networks
US10915663B1 (en) * 2019-01-29 2021-02-09 Facebook, Inc. Systems and methods for protecting data
US10467504B1 (en) * 2019-02-08 2019-11-05 Adhark, Inc. Systems, methods, and storage media for evaluating digital images
US11075933B1 (en) * 2019-03-27 2021-07-27 Ca, Inc. Abnormal user behavior detection
US11354564B2 (en) * 2019-06-27 2022-06-07 Intel Corporation Tuning of loop orders in blocked dense basic linear algebra subroutines
US11494740B1 (en) * 2021-10-29 2022-11-08 People Center, Inc. Techniques for providing alerts in a time and attendance system

Also Published As

Publication number Publication date
US20200193327A1 (en) 2020-06-18
JP2020098476A (ja) 2020-06-25
US11836580B2 (en) 2023-12-05

Similar Documents

Publication Publication Date Title
JP6562121B1 (ja) 学習用データ生成プログラムおよび学習用データ生成方法
Fong et al. Composite Monte Carlo decision making under high uncertainty of novel coronavirus epidemic using hybridized deep learning and fuzzy rule induction
JP7063080B2 (ja) 機械学習プログラム、機械学習方法および機械学習装置
JP7067235B2 (ja) 機械学習プログラム、機械学習方法および機械学習装置
US11347972B2 (en) Training data generation method and information processing apparatus
Arnold et al. Forecasting mortality trends allowing for cause-of-death mortality dependence
JP6832329B2 (ja) データ構造
De la Sen et al. On a Sir epidemic model for the COVID-19 pandemic and the logistic equation
JP6481794B1 (ja) 学習用データ生成方法、学習用データ生成プログラム
Huang et al. Demand forecasting and smoothing capacity planning for products with high random demand volatility
CN115221396A (zh) 基于人工智能的信息推荐方法、装置及电子设备
Bermúdez et al. A new parametric model for fitting fertility curves
JP7067236B2 (ja) 機械学習用データ生成方法および機械学習用データ生成プログラム
JP6843109B2 (ja) 医療用のデータ構造
JP7063079B2 (ja) 機械学習プログラム、機械学習方法および機械学習装置
Das et al. Functional regression-based monitoring of quality of service in hospital emergency departments
JP2021096511A (ja) 学習データ生成方法、学習データ生成プログラムおよび情報処理装置
Tabatabaei et al. With a little help from my friends: A computational model for the role of social support in mood regulation
CN111768031A (zh) 一种基于arma算法预测人群聚集趋势的方法
Habib et al. Modeling residential and spatial search behaviour: evidence from the greater Toronto area
JP2021068163A (ja) 予測プログラム、予測方法及び予測装置
James Fong et al. Composite Monte Carlo decision making under high uncertainty of novel coronavirus epidemic using hybridized deep learning and fuzzy rule induction
Montibeller Making Reasoned Health Security Decisions: Key Concepts and Main Benefits
Bårdsen et al. Dynamic time series modelling and forecasting of COVID-19 in Norway
Shair et al. Predictions of Malaysia Age-Specific Fertility Rates using the Lee-Carter and the Functional Data Approaches

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190115

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20190116

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20190125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190408

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20190702

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190805

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20190805

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20190814

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20190820

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20190906

C211 Notice of termination of reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C211

Effective date: 20190910

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20200602

C30 Protocol of an oral hearing

Free format text: JAPANESE INTERMEDIATE CODE: C30

Effective date: 20200917

C13 Notice of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: C13

Effective date: 20200923

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201112

C23 Notice of termination of proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C23

Effective date: 20201222

C03 Trial/appeal decision taken

Free format text: JAPANESE INTERMEDIATE CODE: C03

Effective date: 20210126

C30A Notification sent

Free format text: JAPANESE INTERMEDIATE CODE: C3012

Effective date: 20210126

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210201

R150 Certificate of patent or registration of utility model

Ref document number: 6832329

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150