(57)【要約】【課題】学習不全や過学習を好適に検出する。【解決手段】機械学習装置（１０）は、学習データを複数のグループに分割する分割手段（１１０）と、複数のグループ毎に、複数の層を用いた機械学習を実行する学習手段（１２０）と、複数の層の各々における学習ループ回数及び残差を夫々記憶する記憶手段（１３０）と、記憶手段に記憶された学習ループ回数及び残差を用いて、複数の層の各々における残差同士の相関係数を算出する算出手段（１４０）と、相関係数に基づいて、学習手段における学習度を判定する判定手段（１５０）とを備える。【選択図】図１
2019185359.tif 000002
【特許請求の範囲】
【請求項１】
学習データを複数のグループに分割する分割手段と、
前記複数のグループ毎に、複数の層を用いた機械学習を実行する学習手段と、
前記複数の層の各々における学習ループ回数及び残差を夫々記憶する記憶手段と、
前記記憶手段に記憶された前記学習ループ回数及び前記残差を用いて、前記複数の層の各々における前記残差同士の相関係数を算出する算出手段と、
前記相関係数に基づいて、前記学習手段における学習度を判定する判定手段と
を備えることを特徴とする機械学習装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の学習データを用いて機械学習を実行する機械学習装置の技術分野に関する。
【背景技術】
【０００２】
この種の装置として、過学習の発生を検出するものが知られている。例えば特許文献１では、学習用入力サンプル及び評価用入力サンプルを夫々入力した際の出力と、対応する出力サンプルの誤差とを比較することにより、多層パーセプトロンにおける過学習の発生を検出するという技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平０６−０７５９３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述した特許文献１に記載された技術では、学習後の出力に基づいているため、過学習の検出精度が低くなってしまうという技術的問題点がある。また、検出できるのは過学習のみであり、学習不全については検出できないという技術的問題点もある。
【０００５】
本発明は、例えば上記問題点に鑑みてなされたものであり、学習不全や過学習を好適に検出することが可能な機械学習装置を提供することを課題とする。
【課題を解決するための手段】
【０００６】
本発明に係る機械学習装置の一態様では、学習データを複数のグループに分割する分割手段と、前記複数のグループ毎に、複数の層を用いた機械学習を実行する学習手段と、前記複数の層の各々における学習ループ回数及び残差を夫々記憶する記憶手段と、前記記憶手段に記憶された前記学習ループ回数及び前記残差を用いて、前記複数の層の各々における前記残差同士の相関係数を算出する算出手段と、前記相関係数に基づいて、前記学習手段における学習度を判定する判定手段とを備える。
【図面の簡単な説明】
【０００７】
【図１】本実施形態に係る機械学習装置の構成を示すブロック図である。
【図２】本実施形態に係る機械学習装置の動作の流れを示すフローチャートである。
【図３】中間層における学習パラメータの変動を示すグラフである。
【図４】記憶部に記憶される残差の一例を示す表である。
【図５】学習ループ回数及び残差に基づいて算出される相関係数の一例を示す表である。
【図６】本実施形態に係る機械学習装置による学習度の判定方法を示す表である。
【発明を実施するための形態】
【０００８】
以下、図面を参照して機械学習装置の実施形態について説明する。
【０００９】
＜装置構成＞
まず、本実施形態に係る機械学習装置の全体構成について、図１を参照して説明する。図１は、本実施形態に係る機械学習装置の構成を示すブロック図である。
【００１０】
図１に示すように、本実施形態に係る機械学習装置１０は、入力される複数の学習データを用いて機械学習を行い、その学習結果を出力する構成となっている。機械学習装置１０は、その機能を実現するための処理ブロック又は物理的な処理回路として、データ分割部１１０、学習部１２０、記憶部１３０、相関係数算出部１４０、及び学習度判定部１５０を備えて構成されている。
【００１１】
データ分割部１１０は、機械学習装置１０に入力される複数の学習データを、複数のグループに分割することが可能に構成されている。なお、複数の学習データを具体的にどのように分割するのかについては特に限定されないが、複数のグループに概ね同じ数の学習データが属するように分割するのが好ましい。データ分割部１１０において分割された複数グループの学習データは、学習部１２０に出力される構成となっている。データ分割部１１０は、後述する付記における「分割手段」の一具体例である。
【００１２】
学習部１２０は、多層構造のニューラルネットワークを利用したディープラーニングによって機械学習を実行することが可能に構成されている。学習部１２０は、データ分割部１１０で分割された複数グループの学習データを用いて、グループごとに機械学習を実行する。学習部１２０からの出力は、機械学習装置１０の学習結果として装置外部に出力される構成となっている。また、学習部１２０における学習時の学習パラメータ（具体的には、各層における学習ループ回数及び残差）は、記憶部１３０に出力される構成となっている。学習部１２０は、後述する付記における「学習手段」の一具体例である。
【００１３】
記憶部１３０は、学習部１２０において実行される機械学習の各層における学習ループ回数及び残差を夫々記憶することが可能に構成されている。より具体的には、記憶部１３０は、複数グループの各々に対応する各層について、学習ループ回数及び残差を別々に記憶することが可能とされている。記憶部１３０に記憶された学習ループ回数及び残差については、相関係数算出部１４０によって適宜読み出し可能となっている。記憶部１３０は、後述する付記における「記憶手段」の一具体例である。
【００１４】
相関係数算出部１４０は、記憶部１３０から読み出した学習ループ回数及び残差を用いて、機械学習における各層の残差同士の相関を示す値である相関係数を算出することが可能に構成されている。相関係数算出部１４０による相関係数の具体的な算出方法については、後に詳述する。相関係数算出部１４０で算出された相関関数は、学習度判定部１５０に出力される構成となっている。相関係数算出部１４０は、後述する付記における「算出手段」の一具体例である。
【００１５】
学習度判定部１５０は、相関係数算出部１４０で算出された相関関数に基づいて、学習部１２０における学習の進行度合いを示す値である学習度（具体的には、過学習や学習不全を判定するためのパラメータ）を判定することが可能に構成されている。学習度判定部１５０は更に、判定した学習度に応じて、学習部１２０に対する各種措置（例えば、層追加や層削除）を実行可能に構成されている。学習度判定部１５０は、後述する付記における「判定手段」の一具体例である。
【００１６】
＜動作説明＞
次に、本実施形態に係る機械学習装置１０の動作の流れについて、図２を参照して説明する。図２は、本実施形態に係る機械学習装置の動作の流れを示すフローチャートである。
【００１７】
図２に示すように、本実施形態に係る機械学習装置１０の動作時には、まずデータ分割部１１０が、学習データを複数のグループに分割する（ステップＳ１０１）。続いて、学習部１２０が、分割された複数グループの学習データを用いて、グループ毎に機械学習を実行する（ステップＳ１０２）。なお、学習部１２０による学習時には、各層における学習パラメータ（即ち、学習ループ回数及び残差）を記憶部１３０が記憶する。
【００１８】
ここで、ステップＳ１０２における学習パラメータの記憶について、図３及び図４を参照して具体的に説明する。図３は、中間層における学習パラメータの変動を示すグラフである。図４は、記憶部に記憶される残差の一例を示す表である。
【００１９】
図３に示すように、学習データがグループＡ、グループＢ、及びグループＣの３つに分割されているとする。この時、ある層における学習ループ回数と残差との関係は図のように変動する。記憶部１３０は、このようなグループ毎の学習パラメータの変動の違いを逐次記憶していく。
【００２０】
図４に示すように、学習データのグループをＭｘ（Ｍ１〜Ｍｍａｘ）、学習における各層（レイヤ）をＬｘ（Ｌ１〜Ｌｍａｘ）、学習ループ回数をＩｘ（Ｉ１〜Ｉｍａｘ）とすると、記憶部１３０には、グループＭｘ、レイヤＬｘ、及び学習ループ回数Ｉｘ別に、複数の残差Ｌｏｓｓ（Ｍｘ[Ｌｘ[Ｉｘ]]）が記憶される。例えば、図に示すケースでは、グループＭ１、レイヤＬ１、学習ループ回数Ｉ１の時の残差Ｌｏｓｓの値として“１”が記憶されており、グループＭ１、レイヤＬ２、学習ループ回数Ｉ２の時の残差Ｌｏｓｓの値として“０．４４”が記憶されている。
【００２１】
図２に戻り、続いて、相関係数算出部１４０が、記憶部１３０に記憶された学習ループ回数Ｉｘ及び残差Ｌｏｓｓを用いて、相関係数Ｒを算出する（ステップＳ１０３）。相関係数Ｒは、例えば対象となる２つの値の共分散を、２つの値の標準偏差の積で除した値として算出することができる。より具体的には、グループＭａとＭｂとの相関関数Ｒ［Ｌｘ］[ａ，ｂ]は、学習ループ回数Ｉｘの任意区間における残差の平均値をＬｏｓｓ（Ｍｘ[Ｌｘ＿ａｖｅｒａｇｅ＿Ｉ]）とすると、下記式（１）を用いて算出できる。
【数１】
2019185359.tif 000003
なお、ａ：１〜Ｍｍａｘ、ｂ：２〜Ｍｍａｘ、ａ＜ｂ、Ｌｘ：１〜Ｌｍａｘ、Ｉｘ：Ｉｍｉｎ〜Ｉｍａｘである。
【００２２】
ここで、ステップＳ１０３において算出される相関関数Ｒについて、図５を参照して具体的に説明する。図５は、学習ループ回数及び残差に基づいて算出される相関係数の一例を示す表である。
【００２３】
図５に示すように、相関関数Ｒは、グループＭａとＭｂとの組み合わせに応じて複数算出される。例えば、図に示すケースでは、Ｍ１及びＭ２（即ち、ａ＝１、ｂ＝２）の相関関数Ｒは“０．６”、Ｍ２及びＭ３（即ち、ａ＝２、ｂ＝３）の相関関数Ｒは“０．２”と算出されている。
【００２４】
再び図２に戻り、続いて、学習度判定部１５０が、相関関数Ｒの標準偏差Ｓｃｏｒｅ＿ｄｉｖ［Ｌｘ］を求めて、その値を閾値Ａ及び閾値Ｂと比較することで学習度を判定する（ステップＳ１０４）。なお、閾値Ａは学習不全（アンダーフィッティング）を判定するための閾値であり、標準偏差Ｓｃｏｒｅ＿ｄｉｖ［Ｌｘ］が閾値Ａより大きい場合、学習度判定部１５０は学習不全が生じていると判定する。一方、閾値Ｂは過学習（オーバーフィッティング）を判定するための閾値であり、標準偏差Ｓｃｏｒｅ＿ｄｉｖ［Ｌｘ］が閾値Ｂより小さい場合、学習度判定部１５０は過学習が生じていると判定する。閾値Ａ及びＢは、例えば事前のシミュレーション等によって最適な値を決定すればよい。
【００２５】
ここで、ステップＳ１０４における学習度の判定方法について、図６を参照して具体的に説明する。図６は、本実施形態に係る機械学習装置による学習度の判定方法を示す表である。
【００２６】
図６に示すように、閾値Ａが“０．３”、閾値Ｂが“０．２”として設定されているとする。この時、レイヤＬ１の学習度については、Ｓｃｏｒｅ＿ｄｉｖ［Ｌ１］が“０．２１”として算出されているため、ちょうどよい学習度である（即ち、学習不全も過学習も発生していない状態である）と判定される。レイヤＬ２の学習度については、Ｓｃｏｒｅ＿ｄｉｖ［Ｌ１］が“０．２”として算出されているため、同じくちょうどよい学習度であると判定される。レイヤＬ３の学習度については、Ｓｃｏｒｅ＿ｄｉｖ［Ｌ３］が“０．４”として算出されているため、学習不全が発生していると判定される。レイヤＬｍａｘの学習度については、Ｓｃｏｒｅ＿ｄｉｖ［Ｌｍａｘ］が“０．１”として算出されているため、過学習が発生していると判定される。
【００２７】
再び図２に戻り、学習度判定部１５０は、学習不全及び過学習を解消するために、判定した学習度に応じた処理を実行する（ステップＳ１０５）。具体的には、学習不全が生じている（即ち、標準偏差Ｓｃｏｒｅ＿ｄｉｖ［Ｌｘ］が閾値Ａより大きい）と判定した場合、学習度判定部１５０は、該当するレイヤＬｘを削除する処理を実行する。これにより、以降の学習では、学習不全が解消される方向に進む。一方で、過学習が生じている（即ち、標準偏差Ｓｃｏｒｅ＿ｄｉｖ［Ｌｘ］が閾値Ｂより小さい）と判定した場合、学習度判定部１５０は、該当するレイヤＬｘの前後に新規レイヤを追加する処理を実行する。これにより、以降の学習では、過学習が解消される方向に進む。なお、学習度がちょうどよいと判定された場合には、ステップＳ１０５の処理は省略されてよい。
【００２８】
＜技術的効果＞
次に、本実施形態に係る機械学習装置１０によって得られる技術的効果について説明する。
【００２９】
図１から図６を参照して説明したように、本実施形態に係る機械学習装置１０によれば、機械学習の各層における学習ループ回数Ｉｘ及び残差Ｌｏｓｓを用いて算出される相関係数Ｒに基づいて、学習度が適切なものであるのか、それとも学習不全又は過学習が生じているのかを好適に判定することができる。このように、機械学習装置１０は、複数のグループ間で学習パラメータの類似度を解析することで、学習不全及び過学習の発生を容易かつ的確に検出している。よって、学習度の判定結果に応じた処理を実行すれば、学習不全及び過学習を解消することができ、その結果として、より適切な学習結果を得ることが可能となる。既存の学習作業では、学習度を適切に判定することが難しい故に、属人性（作業熟練度）が必要とされてきたが、本実施形態に係る機械学習装置１０を用いれば、属人性の必要性をなくし、好適に学習作業を進めることができる。
【００３０】
＜付記＞
以上説明した実施形態から導き出される発明の各種態様を以下に説明する。
【００３１】
（付記１）
付記１に記載の機械学習装置は、学習データを複数のグループに分割する分割手段と、前記複数のグループ毎に、複数の層を用いた機械学習を実行する学習手段と、前記複数の層の各々における学習ループ回数及び残差を夫々記憶する記憶手段と、前記記憶手段に記憶された前記学習ループ回数及び前記残差を用いて、前記複数の層の各々における前記残差同士の相関係数を算出する算出手段と、前記相関係数に基づいて、前記学習手段における学習度を判定する判定手段とを備える。
【００３２】
付記１に記載の機械学習装置によれば、学習ループ回数及び残差を用いて算出される相関係数（具体的には、学習における複数の層の各々の残差同士の相関係数）に基づいて、学習度（言い換えれば、学習が適切に進んでいるかを示す度合い）が判定される。本願発明者の研究するところによれば、上記のようにして算出された相関係数を利用すれば、例えば学習結果を利用する場合と比較して、より高い精度で学習度を判定できることが判明している。よって、学習不全や過学習を精度よく検出することが可能である。
【００３３】
本発明は、上述した実施形態に限られるものではなく、請求の範囲及び明細書全体から読み取れる発明の要旨或いは思想に反しない範囲で適宜変更可能であり、そのような変更を伴う機械学習装置もまた本発明の技術的範囲に含まれるものである。
【符号の説明】
【００３４】
１０  機械学習装置
１１０  データ分割部
１２０  学習部
１３０  記憶部
１４０  相関係数算出部
１５０  学習度判定部
【図１】
2019185359.tif 000004
【図２】
2019185359.tif 000005
【図３】
2019185359.tif 000006
【図４】
2019185359.tif 000007
【図５】
2019185359.tif 000008
【図６】
2019185359.tif 000009