(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024157418
(43)【公開日】2024-11-07
(54)【発明の名称】教師データ抽出装置および教師データ抽出方法
(51)【国際特許分類】
G06F 18/2113 20230101AFI20241030BHJP
G06N 20/00 20190101ALI20241030BHJP
【FI】
G06F18/2113
G06N20/00 130
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2023071777
(22)【出願日】2023-04-25
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110001807
【氏名又は名称】弁理士法人磯野国際特許商標事務所
(72)【発明者】
【氏名】小野 哲嗣
(72)【発明者】
【氏名】志賀 雅人
(57)【要約】
【課題】適切な教師データの抽出を可能とする。
【解決手段】教師データ抽出装置100は、教師データ130のなかで説明変数の値が抽出範囲内である教師データを抽出教師データ160として抽出し、抽出教師データ160の数が所定数以上になるまで抽出範囲を拡大する探索部112を備える。教師データ抽出装置100は、抽出教師データ160を用いて機械学習モデル121を生成する学習部113と、機械学習モデル121の精度を測定する精度測定部114と、をさらに備えてもよい。探索部112は、精度が所定の目標を満たすまで所定数を増やしてもよい。
【選択図】
図1
【特許請求の範囲】
【請求項1】
教師データのなかで説明変数の値が抽出範囲内である教師データを抽出教師データとして抽出し、
前記抽出教師データの数が所定数以上になるまで前記抽出範囲を拡大する探索部を備える
教師データ抽出装置。
【請求項2】
前記抽出教師データを用いて機械学習モデルを生成する学習部と、
前記機械学習モデルの精度を測定する精度測定部と、をさらに備え、
前記探索部は、
前記精度が所定の目標を満たすまで前記所定数を増やす
請求項1に記載の教師データ抽出装置。
【請求項3】
前記探索部は、
指定された説明変数の範囲から始めて前記抽出範囲を拡大する
請求項1に記載の教師データ抽出装置。
【請求項4】
前記説明変数は複数あり、
前記探索部は、
前記説明変数それぞれの値の範囲を拡大することで、前記抽出範囲を拡大する
請求項1に記載の教師データ抽出装置。
【請求項5】
教師データ抽出装置が、
教師データのなかで説明変数の値が抽出範囲内である教師データを抽出教師データとして抽出するステップと、
前記抽出教師データの数が所定数以上になるまで前記抽出範囲を拡大するステップと、を実行する
教師データ抽出方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、機械学習モデルの学習に用いられる教師データを抽出する教師データ抽出装置および教師データ抽出方法に関する。
【背景技術】
【0002】
様々な分野でデータ蓄積およびデータ活用が行われている。データ活用の主な用途として、将来予測や機器の異常判定などがある。データ活用の手法として機械学習がある。機械学習では、教師データを用いて機械学習モデルを生成し、学習済みの機械学習モデルを用いて将来予測や異常判定を行う。教師データとしては、蓄積された過去の実績データが用いられるのが一般的である。
【0003】
機械学習の分野では、多種多様な手法が存在する。サポートベクターマシンやランダムフォレストなど古典的な手法に加え、人間の脳の構造を模したニューラルネットワークを基礎とする手法として畳み込みニューラルネットワークやリカレントニューラルネットワークなどが提案されている。また、統計分析的なアプローチとして、ベイズ統計を基にしたモデルも存在する。
【0004】
何れの機械学習の手法においても課題としてあげられるのは、教師データの適切な選定が難しい点である。教師データが少なすぎると、機械学習モデルの予測や判定の精度が低くなる一方、教師データを増やしすぎると学習時間が長く掛かるという問題がある。対策の一つとして、過去の実績データを全て教師データとして用いるのでなく、一部のデータを抽出して教師データとして用いる手法がある。
【0005】
特許文献1では、用意された教師データ(学習データ)のなかから一部を利用して機械学習モデルを生成する場合を想定し、局所的な学習データの分布の偏りによる精度低下を防ぐためのデータ抽出範囲決定手法を含む異常判定方法が開示されている。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【発明が解決しようとする課題】
【0007】
実績データの一部を抽出して教師データとして用いることで、学習時間の低減の効果がある。さらに特定の条件(例えば季節)で教師データを抽出すれば、条件別でのデータの特徴を学習して機械学習モデルが生成されるため、精度向上の効果も期待できる。しかしながら、特許文献1では局所的な学習データを切り出して機械学習モデルを作成することを想定しており、局所的なデータ分布を捉えた推定精度向上は考慮されていない。
【0008】
過去の実績データから一部を抽出して教師データに採用する場合、どれだけのデータ数があれば十分かを理論的に求めるのは困難である。また、条件別に機械学習モデルを作成することで精度向上を狙う場合、どの範囲のデータを抽出すれば高い精度向上の効果が得られるかについては、データの特性や用いる機械学習の手法に依存するため、一律に決定することが困難である。
本発明は、このような背景に鑑みてなされたものであり、適切な教師データの抽出を可能とする教師データ抽出装置および教師データ抽出方法を提供することを課題とする。
【課題を解決するための手段】
【0009】
上記した課題を解決するため、本発明に係る教師データ抽出装置は、教師データのなかで説明変数の値が抽出範囲内である教師データを抽出教師データとして抽出し、前記抽出教師データの数が所定数以上になるまで前記抽出範囲を拡大する探索部を備える。
【発明の効果】
【0010】
本発明によれば、適切な教師データの抽出を可能とする教師データ抽出装置および教師データ抽出方法を提供することができる。上記した以外の課題、構成および効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【0011】
【
図1】本実施形態に係る教師データ抽出装置の機能ブロック図である。
【
図2】本実施形態に係る教師データのデータ構成図である。
【
図3】本実施形態に係る集計データのデータ構成図である。
【
図4】本実施形態に係る教師データ抽出処理のフローチャートである。
【
図5】本実施形態に係る抽出範囲の拡大を説明するための図である。
【発明を実施するための形態】
【0012】
≪教師データ抽出装置の概要≫
以下に本発明を実施するための形態(実施形態)における教師データ抽出装置について説明する。教師データ抽出装置は、収集された実績データである教師データのなかから、説明変数の値が特定条件に近い教師データを抽出教師データとして抽出し、当該抽出教師データを用いて当該特定条件用の機械学習モデルを訓練して生成する。特定条件とは例えば月や季節である。例えば教師データ抽出装置は、夏の1日のうちで12時台の商品売上げを推定する機械学習モデル用の教師データを抽出する。なお以下の説明では、教師データの説明変数は月と時(時間帯)であり、目的変数は商品売上げとする。
【0013】
教師データ抽出装置は、例えば特定条件である8月の12時台から始めて、月方向および時方向で説明変数の値の範囲(抽出範囲)を拡大しながら教師データを抽出する。教師データ抽出装置は、例えば、8月の12時台、8月の11~13時台、7~9月の11~13時台といったように抽出範囲(説明変数の値の範囲)を拡大しながら教師データを抽出する。教師データ抽出装置は、あるデータ数以上の数の教師データを抽出するまで抽出範囲を拡大する。換言すれば教師データ抽出装置は、教師データの数がある数以上になるまで抽出範囲を拡大する。また教師データ抽出装置は、機械学習モデルを生成して精度を算出する。教師データ抽出装置は、目標を満たす精度が得られるまでデータ数を大きくする。
【0014】
このようにすることで教師データ抽出装置は、教師データ数を抑えつつ目標となる精度を満たす、特定条件向けの機械学習モデルを生成することができるようになる。教師データ数を抑えることで、学習時間を短縮することができる。また説明変数の値の範囲を絞った教師データを用いることで機械学習モデルの推定や判定の精度が向上することが期待できる。
【0015】
≪教師データ抽出装置の構成≫
図1は、本実施形態に係る教師データ抽出装置100の機能ブロック図である。教師データ抽出装置100はコンピュータであり、制御部110、記憶部120、および入出力部180を備える。入出力部180には、ディスプレイやキーボード、マウスなどのユーザインターフェイス機器が接続される。入出力部180が通信デバイスを備え、他の装置とのデータ送受信が可能であってもよい。また入出力部180にメディアドライブが接続され、記録媒体を用いたデータのやり取りが可能であってもよい。
【0016】
≪教師データ抽出装置:記憶部≫
記憶部120は、ROM(Read Only Memory)やRAM(Random Access Memory)、SSD(Solid State Drive)などの記憶機器を含んで構成される。記憶部120には、教師データ130、精度測定用データ140、集計データ150、抽出教師データ160、機械学習モデル121、精度KPI122、閾値情報123、およびプログラム128が記憶される。
【0017】
機械学習モデル121は、商品の売上げ予測や、機器の異常検知などを行う機械学習技術のモデルである。以下では機械学習モデル121は、月と時(時間帯)を基に、当月のある日の当時間帯における商品売上げの予測に用いられる機械学習モデルとする。
機械学習モデル121は、特定の月かつ特定の時間帯の商品売上げを予測するための機械学習モデルである。機械学習モデル121は、例えば1月から3月の0時台から2時台の商品売上げを予測するための機械学習モデルである。以下では、特定の月かつ特定の時間帯のことを特定条件と記す。
【0018】
図2は、本実施形態に係る教師データ130のデータ構成図である。教師データ130は、機械学習モデル121の学習データの基となる売上げの実績を含むデータであり、例えば表形式のデータである。教師データ130の1つの行(レコード)は、1つの個別の教師データを示し、識別情報、月、日、時、天候および売上げの列(属性)を含む。
【0019】
識別情報(
図2では「ID」と記載)は、個々の教師データの識別情報である。天候は、月に示される月の、日に示される日の、時に示される時間帯の天気を示す。売上げは、当該時間帯の商品の売上げを示す。例えば識別情報が「1」であるレコードは、1月1日7時台の天気が晴れであり、商品の売上げが7であったことを示す。なお売上げの単位は千円とする。
【0020】
図1に戻って、記憶部120の説明を続ける。
精度測定用データ140は、機械学習モデル121の予測精度を測定するためのデータであり、実績を含むデータである。精度測定用データ140のデータ構成は、教師データ130と同様である。
【0021】
図3は、本実施形態に係る集計データ150のデータ構成図である。集計データ150は、複数の表形式のデータ(以下、表データと記す)を含み、月、時および売上げ別の教師データ130の件数(レコード数)を示す。売上げは、5単位で区切られる。
図3において、1番目の表データ151は売上げが0以上5未満の月および時別の件数を示し、2番目の表データ152は売上げが5以上10未満の月および時別の件数を示し、3番目の表データ153は売上げが10以上15未満の月および時別の件数を示す。例えば、2月の1時台で売上げが0以上5未満である教師データ130のレコード数は2である(表データ151参照)。
【0022】
図1に戻って、記憶部の説明を続ける。
抽出教師データ160は、教師データ130から抽出されたデータであり、機械学習モデル121の生成に用いられる教師データである。
精度KPI122は、機械学習モデル121の精度を示す。機械学習モデル121の性能評価指標として、例えば正答率、適合率、再現率、F値、平均二乗誤差、決定係数などがある。精度KPI122は、これらを組み合わせた精度であって、例えば決定係数であってもよいし、適合率と再現率との平均値であってもよい。
【0023】
閾値情報123は、機械学習モデル121を生成するのに用いられる教師データとなる抽出教師データ160の件数(レコード数)の下限値である。閾値情報123は、抽出教師データ160の件数の上限値や、件数を決める際の精度を含んでもよい。
プログラム128は、教師データ抽出処理(後記する
図4参照)の記述を含む。
【0024】
≪教師データ抽出装置:制御部≫
制御部110は、CPU(Central Processing Unit)を含んで構成され、集計部111、探索部112、学習部113、および精度測定部114が備わる。制御部110は、GPU(Graphics Processing Unit)、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)などを含んで構成されてもよい。
【0025】
集計部111は、教師データ130(
図2参照)にあるレコードを月、時および売上げ別に集計して、集計データ150(
図3参照)を生成する。
探索部112は、教師データ130から抽出教師データ160を抽出する抽出範囲を探索する。また探索部112は、教師データ130のなかで説明変数の値が抽出範囲内である教師データを抽出教師データ160として抽出する。
【0026】
抽出範囲とは、抽出される教師データ130における説明変数の値の範囲であり、集計データ150の表データにおける範囲(表データの欄の集合)である。本実施形態において抽出範囲は、月と時(時間帯)との組み合わせで示され、例えば月が1月から3月で、時が0時~2時(0時台、1時台および2時台)という範囲である。
【0027】
学習部113は、抽出教師データ160を用いて機械学習モデル121を生成(訓練)する。
精度測定部114は、精度測定用データ140を用いて機械学習モデル121の精度KPI122を算出する。
【0028】
以上に説明したように教師データ抽出装置100は、抽出教師データ160を用いて機械学習モデル121を生成する学習部113を備える。
教師データ抽出装置100は、機械学習モデル121の精度を測定する精度測定部114をさらに備える。
【0029】
≪教師データ抽出処理≫
図4は、本実施形態に係る教師データ抽出処理のフローチャートである。
図4を参照して、件数が閾値情報123にある下限値以上で、精度KPI122が目標を満たす機械学習モデル121を生成するための抽出教師データ160を、教師データ130から抽出する処理を説明する。
【0030】
ステップS11において集計部111は、教師データ130(
図2参照)を月、時および売上げ別に集計して集計データ150(
図3参照)を生成する。
ステップS12において探索部112は、抽出教師データ160の抽出数(レコード数)の候補(抽出数候補)を算出する。詳しく説明すると探索部112は、閾値情報123にある下限値からから始めて、精度の間隔で上限値までを、抽出数候補として算出する。例えば下限値が1000、上限値が5000、精度が50とすると、探索部112は抽出数候補として、1000、1050、1100、・・・、4950、5000を算出する。
【0031】
ステップS13において探索部112は、ステップS12で算出した抽出数候補ごとにステップS13~S20を繰り返す処理を開始する。以下では抽出数候補を下限値から上限値に向けて順に繰り返す個々の処理における抽出数候補を、対象抽出数候補と記す。
ステップS14において探索部112は、抽出範囲を該当セルとする。該当セルとは、特定条件に合致する、月および時(時間帯)に対応した表データ(
図3参照)の欄(セル)の集合のことである。
【0032】
ステップS15において探索部112は、抽出範囲のデータ数を算出する。詳しく説明すると探索部112は、教師データ130のなかで月および時が抽出範囲にあるデータ数(教師データ130のレコード数)を算出する。抽出範囲が2月で1時であるとすると探索部112は、集計データ150(
図3参照)の売上げ別の表データについて、月が2月で時が1時である欄のレコード数の和を算出することで、抽出範囲にあるデータ数を算出する。
【0033】
ステップS16において探索部112は、ステップS15で算出したデータ数が対象抽出数候補以上であれば(ステップS16→YES)ステップS18に進む。探索部112は、ステップS15で算出したデータ数が対象抽出数候補未満であれば(ステップS16→NO)ステップS17に進む。
【0034】
ステップS17において探索部112は、抽出範囲を拡大してステップS15に戻る。
図5は、本実施形態に係る抽出範囲の拡大を説明するための図である。表データ510は、集計データ150の表データに対応する。集計データ150は売上げ別の複数の表データを含む。表データ510は、売上げ別の件数(レコード数)の和を取って売上げ別の複数の表データを1つにまとめた表データである。以下では、特定条件を月が4月で時が2時とする。すると該当セルは4月で2時の欄であり、ステップS14における抽出範囲は抽出範囲511となる。
【0035】
探索部112は、抽出範囲を月方向(表データ510の横(行)方向)および時方向(表データ510の縦(列)方向)の交互に広げる。1回目の拡大において探索部112は、抽出範囲511を月方向に拡大して抽出範囲512とする。2回目の拡大において探索部112は、抽出範囲512を時方向に拡大して抽出範囲513とする。3回目の拡大において探索部112は、抽出範囲513を月方向に拡大して抽出範囲514とする。以下、探索部112はこれを繰り返す。
【0036】
図4に戻って教師データ抽出処理の説明を続ける。ステップS18において探索部112は、教師データ130から抽出範囲に対応するレコードを抽出して抽出教師データ160を生成する。次に学習部113は、抽出教師データ160を用いて機械学習モデル121を生成する。
ステップS19において精度測定部114は、ステップS18で生成した機械学習モデル121の精度KPI122を、精度測定用データ140を用いて算出する。
【0037】
ステップS20において探索部112は、条件に合致すれば(ステップS20→YES)ステップS13~S20の繰り返し処理から抜けて教師データ抽出処理を終え、条件に合致しなければ(ステップS20→NO)ステップS14に戻り次の抽出数候補について処理する。条件とは、ステップS19で算出した精度KPI122が、目標を満たすことである。他の条件として、ステップS13~S20の繰り返し処理において、ステップS19で算出した精度KPI122が2回続けて低下するという条件を採用してもよい。この条件でステップS13~S20の繰り返し処理が終わった場合は、機械学習モデル121の生成に失敗したことになる。
【0038】
以上に説明したように教師データ抽出装置100は、教師データ130のなかで説明変数の値が抽出範囲内である教師データを抽出教師データ160として抽出し、抽出教師データ160の数が所定数(抽出数候補)以上になるまで抽出範囲を拡大する探索部112を備える。
探索部112は、(機械学習モデル121の)精度が所定の目標を満たすまで所定数(抽出数候補)を増やす。
【0039】
探索部112は、指定された説明変数の範囲(特定条件に合致する抽出範囲、該当セル)から始めて抽出範囲を拡大する(ステップS14参照)。
説明変数は複数あり、探索部112は、説明変数それぞれの値の範囲を拡大することで、抽出範囲を拡大する(
図5参照)。
【0040】
≪教師データ抽出装置の特徴≫
教師データ抽出装置100は、教師データ130のなかで説明変数の値が特定条件に近いレコードを抽出して、レコード数が閾値情報123にある下限値以上となる抽出教師データ160を生成する。さらに教師データ抽出装置100は、この抽出教師データ160を用いて、精度KPI122が目標値以上となる機械学習モデル121を生成する。
【0041】
このようにすることで教師データ抽出装置100は、特定条件に合った適切な教師データを抽出して、延いては機械学習モデル121を生成することができる。このため機械学習モデル121は、説明変数が特定条件を満たす場合には、高精度に売上げが予測できると期待できる。
【0042】
≪変形例:抽出範囲≫
上記した実施形態において抽出範囲となる説明変数は、月と時(時間帯)の2つであったが、これに限らず1つや3つ以上であってもよい。複数の説明変数がある場合に抽出範囲の拡大手法として、特定条件を満たす値の範囲から始めて、それぞれの説明変数における値の範囲を順に拡げることで抽出範囲を拡大するようにしてもよい。また説明変数は、月と時である必要はなく、他の説明変数であってもよい。
【0043】
また集計データ150(
図3参照)が表データのように集計されている場合に、縦または横に隣り合う欄の距離を1として、特定条件を満たす欄からのマンハッタン距離が所定値内にある範囲を抽出範囲とし、この所定値を大きくすることで抽出範囲を拡大するようにしてもよい。
特定条件を満たす値の範囲からの距離から所定値内にある説明変数の値の範囲を抽出範囲とし、この所定値を大きくすることで抽出範囲を拡大するようにしてもよい。距離はユークリッド距離に限らず、マンハッタン距離やチェビシェフ距離などであってもよい。
【0044】
≪変形例:教師データ抽出処理≫
教師データ抽出処理(
図4参照)において、精度KPI122が目標値を満たす場合、または精度KPI122が2回続けて下がった場合に、繰り返し処理が終わる。繰り返し処理を途中で終えることなく、全ての抽出数候補について精度KPI122を算出するようにしてもよい。この場合、精度KPI122が最大となる抽出教師データ160、および、精度KPI122となる機械学習モデル121が、教師データ抽出処理の出力となる。
【0045】
≪変形例≫
以上、本発明のいくつかの実施形態について説明したが、これらの実施形態は、例示に過ぎず、本発明の技術的範囲を限定するものではない。本発明はその他の様々な実施形態を取ることが可能であり、さらに、本発明の要旨を逸脱しない範囲で、省略や置換等種々の変更を行うことができる。これら実施形態やその変形は、本明細書等に記載された発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0046】
100 教師データ抽出装置
111 集計部
112 探索部
113 学習部
114 精度測定部
121 機械学習モデル
122 精度KPI
123 閾値情報
128 プログラム
130 教師データ
140 精度測定用データ
150 集計データ
160 抽出教師データ