(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022025392
(43)【公開日】2022-02-10
(54)【発明の名称】機械学習装置及び機械学習方法
(51)【国際特許分類】
G06N 3/08 20060101AFI20220203BHJP
G06T 7/00 20170101ALI20220203BHJP
G06N 20/00 20190101ALI20220203BHJP
【FI】
G06N3/08
G06T7/00 350C
G06N20/00 130
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2020128180
(22)【出願日】2020-07-29
(71)【出願人】
【識別番号】306024148
【氏名又は名称】公立大学法人秋田県立大学
(74)【代理人】
【識別番号】100097113
【弁理士】
【氏名又は名称】堀 城之
(74)【代理人】
【識別番号】100162363
【弁理士】
【氏名又は名称】前島 幸彦
(74)【代理人】
【識別番号】100194283
【弁理士】
【氏名又は名称】村上 大勇
(72)【発明者】
【氏名】間所 洋和
(72)【発明者】
【氏名】山本 聡史
(72)【発明者】
【氏名】西村 洋
(72)【発明者】
【氏名】佐藤 和人
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096EA39
5L096HA11
5L096JA22
5L096KA04
5L096KA15
(57)【要約】 (修正有)
【課題】少ない学習データで学習精度を向上させる機械学習装置及び機械学習方法を提供する。
【解決手段】機械学習装置1において、対向伝播ネットワーク部20は、小規模データセット10を入力として、対向伝播ネットワークにより教師あり学習を行い、学習された結合荷重とラベルとを出力する。転移学習部40は、小規模データセット10及び/又は対向伝播ネットワーク部20により学習された結合荷重とラベルとから転移学習を行う。ドメイン適応部50は、転移学習部40による転移学習の学習結果に基づいてドメイン適応を行う。
【選択図】
図1
【特許請求の範囲】
【請求項1】
小規模データセットを入力として、対向伝播ネットワークにより教師あり学習を行い、学習結果に基づいた結合荷重とラベルとを出力する対向伝播ネットワーク部と、
前記小規模データセット、及び/又は、前記対向伝播ネットワーク部により学習された前記結合荷重と前記ラベルとから転移学習を行う転移学習部と、
前記転移学習部による前記転移学習の学習結果に基づいてドメイン適応を行うドメイン適応部とを備える
ことを特徴とする機械学習装置。
【請求項2】
前記対向伝播ネットワーク部は、
近傍と競合に基づく教師あり学習を行い、
前記学習結果に対して、前記小規模データセットを入力した際の結合荷量と前記ラベルとの組み合わせを、学習データセットとして生成する
ことを特徴とする請求項1に記載の機械学習装置。
【請求項3】
前記対向伝播ネットワーク部は、
前記小規模データセットに含まれるカテゴリの分布特性を、二次元の特徴地図となるカテゴリマップとして可視化する
ことを特徴とする請求項1又は2に記載の機械学習装置。
【請求項4】
前記結合荷重は、カテゴリ間又はカテゴリ内の関係性若しくは/並びに複雑度を、隣接する結合荷重の距離情報から深度特徴として写像され、可視化される
ことを特徴とする請求項1乃至3のいずれか1項に記載の機械学習装置。
【請求項5】
前記転移学習部は、
大規模データセットにより事前学習されており、前記小規模データセットのカテゴリに沿った再学習として、前記転移学習を行う
ことを特徴とする請求項1乃至4のいずれか1項に記載の機械学習装置。
【請求項6】
前記転移学習部は、
前記学習データセットにより転移学習を行う荷重カテゴリ学習部と、
前記小規模データセットを用いて転移学習を行う小規模データ学習部とを含む
ことを特徴とする請求項2乃至5のいずれか1項に記載の機械学習装置。
【請求項7】
前記荷重カテゴリ学習部と前記小規模データ学習部とは、互いに識別精度を比較し合う
ことを特徴とする請求項6に記載の機械学習装置。
【請求項8】
前記ドメイン適応部は、
前記荷重カテゴリ学習部による学習を引き継いで、前記小規模データセットによりドメイン適応を行う荷重カテゴリ小規模適応部と、
前記小規模データ学習部による学習を引き継いで、前記学習データセットによりドメイン適応を行う小規模荷重カテゴリ適応部とを含む
ことを特徴とする請求項6又は7に記載の機械学習装置。
【請求項9】
前記荷重カテゴリ小規模適応部と前記小規模荷重カテゴリ適応部とは、互いに識別精度を比較し合う
ことを特徴とする請求項8に記載の機械学習装置。
【請求項10】
機械学習装置により実行される機械学習方法であって、前記機械学習装置は、
小規模データセットを入力として、対向伝播ネットワークにより教師あり学習を行い、学習結果に基づいた結合荷重とラベルとを出力し、
前記小規模データセット、及び/又は、学習された前記結合荷重と前記ラベルとから転移学習を行い、
前記転移学習の学習結果に基づいてドメイン適応を行う
ことを特徴とする機械学習方法。
【請求項11】
機械学習装置により実行される機械学習プログラムであって、前記機械学習装置を、
小規模データセットを入力として、対向伝播ネットワークにより教師あり学習を行い、学習結果に基づいた結合荷重とラベルとを出力させ、
前記小規模データセット、及び/又は、学習された前記結合荷重と前記ラベルとから転移学習を行わせ、
前記転移学習の学習結果に基づいてドメイン適応を行わせる
ことを特徴とする機械学習プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、特に人工ニューラルネットワークで機械学習を行う機械学習装置及び機械学習方法に関する。
【背景技術】
【0002】
従来から、人工ニューラルネットワーク(Artificial Neural Network。以下、「NN」という。)により画像、音声、文章等を認識する機械学習装置が存在する。近年の第三次人工知能ブームでは、三層以上のディープニューラルネットワーク(Deep Neural Network。以下、「DNN」という。)が実用化されて、認識精度が飛躍的に向上している。
【0003】
ここで、DNNでは、学習データが量的に不足すると、精度に結び付かないことが、課題のひとつとして知られている。そのため、少ないデータでも、様々なタスクに対してDNNを使用する手法が模索されている。このような手法として、異カテゴリ間での追加学習を行う転移学習、同一カテゴリでの追加学習となるドメイン適応の技術が発達してきている。
【0004】
特許文献1を参照すると、各々が所定の条件下における検出対象の特徴を有する複数の学習用データを含む目標ドメインと、所定の条件と異なる条件下における検出対象の特徴を有する学習候補データを含む事前ドメインとを取得する取得部と、取得部により取得された目標ドメイン及び事前ドメインを用いて転移学習を導入した機械学習を実行して、検出対象の検出に用いられる決定木を生成する試行転移学習部と、試行転移学習部により生成された決定木を構成する全てのリーフノードを用いて、取得部により取得された事前ドメインが転移学習に有効であるか否かを判断する判断部とを備える機械学習装置が開示されている。
特許文献1の技術では、事前ドメインが転移学習に有効であるかを判断することができる。
【先行技術文献】
【特許文献】
【0005】
【非特許文献】
【0006】
【非特許文献1】間所洋和、他1名、「データの位相構造をカテゴリマップとして可視化する適応的写像ネットワーク」、知能と情報(日本知能情報ファジィ学会誌)、2014年、vol.26、no.6、p.903-912
【非特許文献2】R.H.Nielsen他、「Counterpropagation Networks」、Applied Optics、1987年、Vol 27、no.23、p.4970-4984
【非特許文献3】T.Kohonen他、「Self-organizing maps」、Springer Series in Information Sciences、1995年
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、特許文献1の技術では、少ない学習データを量的かつ質的に拡張して、機械学習の精度を上げること自体はできなかった。
【0008】
本発明は、このような状況に鑑みてなされたものであって、上述の問題点を解消する機械学習装置を提供することを課題とする。
【課題を解決するための手段】
【0009】
本発明の機械学習装置は、小規模データセットを入力として、対向伝播ネットワークにより教師あり学習を行い、学習結果に基づいた結合荷重とラベルとを出力する対向伝播ネットワーク部と、前記小規模データセット、及び/又は、前記対向伝播ネットワーク部により学習された前記結合荷重と前記ラベルとから転移学習を行う転移学習部と、前記転移学習部による前記転移学習の学習結果に基づいてドメイン適応を行うドメイン適応部とを備えることを特徴とする。
本発明の機械学習装置は、前記対向伝播ネットワーク部は、近傍と競合に基づく教師あり学習を行い、前記学習結果に対して、前記小規模データセットを入力した際の結合荷量と前記ラベルとの組み合わせを、学習データセットとして生成することを特徴とする。
本発明の機械学習装置は、前記対向伝播ネットワーク部は、前記小規模データセットに含まれるカテゴリの分布特性を、二次元の特徴地図となるカテゴリマップとして可視化することを特徴とする。
本発明の機械学習装置は、前記結合荷重は、カテゴリ間又はカテゴリ内の関係性若しくは/並びに複雑度を、隣接する結合荷重の距離情報から深度特徴として写像され、可視化されることを特徴とする。
本発明の機械学習装置は、前記転移学習部は、大規模データセットにより事前学習されており、前記小規模データセットのカテゴリに沿った再学習として、前記転移学習を行うことを特徴とする。
本発明の機械学習装置は、前記転移学習部は、前記学習データセットにより転移学習を行う荷重カテゴリ学習部と、前記小規模データセットを用いて転移学習を行う小規模データ学習部とを含むことを特徴とする。
本発明の機械学習装置は、前記荷重カテゴリ学習部と前記小規模データ学習部とは、互いに識別精度を比較し合うことを特徴とする。
本発明の機械学習装置は、前記ドメイン適応部は、前記荷重カテゴリ学習部による学習を引き継いで、前記小規模データセットによりドメイン適応を行う荷重カテゴリ小規模適応部と、前記小規模データ学習部による学習を引き継いで、前記学習データセットによりドメイン適応を行う小規模荷重カテゴリ適応部とを含むことを特徴とする。
本発明の機械学習装置は、前記荷重カテゴリ小規模適応部と前記小規模荷重カテゴリ適応部とは、互いに識別精度を比較し合うことを特徴とする。
本発明の機械学習方法は、機械学習装置により実行される機械学習方法であって、前記機械学習装置は、小規模データセットを入力として、対向伝播ネットワークにより教師あり学習を行い、学習結果に基づいた結合荷重とラベルとを出力し、前記小規模データセット、及び/又は、学習された前記結合荷重と前記ラベルとから転移学習を行い、前記転移学習の学習結果に基づいてドメイン適応を行うことを特徴とする。
本発明の機械学習プログラムは、機械学習装置により実行される機械学習プログラムであって、前記機械学習装置を、小規模データセットを入力として、対向伝播ネットワークにより教師あり学習を行い、学習結果に基づいた結合荷重とラベルとを出力させ、前記小規模データセット、及び/又は、学習された前記結合荷重と前記ラベルとから転移学習を行わせ、前記転移学習の学習結果に基づいてドメイン適応を行わせることを特徴とする。
【発明の効果】
【0010】
本発明によれば、小規模データセットを入力として、対向伝播ネットワークにより教師あり学習を行い、学習結果に基づいた結合荷重とラベルとを出力し、小規模データセット、及び/又は、結合荷重とラベルとから転移学習を行い、転移学習の学習結果に基づいてドメイン適応を行うことで、少ない学習データから機械学習の精度を向上させる機械学習装置を提供することができる。
【図面の簡単な説明】
【0011】
【
図1】本発明の実施の形態に係る機械学習装置の機能構成を示すブロック図である。
【
図2】
図1に示す対向伝播ネットワーク部の構造を示す概念図である。
【
図3】本発明の実施の形態に係る機械学習処理のフローチャートである。
【発明を実施するための形態】
【0012】
<実施の形態>
〔機械学習装置1の機能構成〕
ここで、
図1を参照し、機械学習装置1の機能構成について説明する。
本実施形態の機械学習装置は、NN等のいわゆるAI(Artificial Intelligence)による機械学習(Machine Learning)を行い、新規データにその学習結果を適用して、必要な出力結果を得る演算装置である。
【0013】
本実施形態の機械学習装置は、カテゴリに分類された又は分類されていない各種データセットを設定し、下記で説明する各部のネットワーク構造(モデル)、活性化関数、損失関数、評価関数等を設定して、主に教師付き学習を行う。この教師付き学習では、各部は、誤差逆伝播法(Backpropagation、以下、「BP」という。)により、NNの各演算ノード又はユニット(以下、単に「ユニット」という。)間の重み(荷重)が調整される。
【0014】
具体的に説明すると、本実施形態の機械学習装置1は、小規模データセット10、対向伝播ネットワーク部20、学習データセット30、転移学習部40、及びドメイン適応部50を備える。
【0015】
小規模データセット10は、機械学習装置1の学習データである。具体的には、小規模データセット10は、当業者に一般的に利用可能なカテゴリと比較した場合、相対的にデータ量が少ないカテゴリである少数派カテゴリのデータ群(データセット)である。ここで、本実施形態の小規模データセット10は、少数派カテゴリのデータであるため、DNNを学習させる際に必要な、大規模データセットよりもデータ量が少なくてもよい。本実施形態においては、小規模データセット10は、例えば、後述する実施例で示すFruits360、WSDC等に示されるような、小規模の画像データセットを用いることが可能である。この画像データセットは、例えば、いもち病等の病害が発生した、及び、発生していない正常の植物の写真データについて、学習を行うユーザによる手動、又は自動ラベリング装置等により、ラベル(カテゴリラベル)が付されたデータ等であってもよい。
【0016】
対向伝播ネットワーク部20は、小規模データセット10を入力として、自己組織化NNであるCPNにより位相写像と競合学習とに基づいた教師あり学習を行う。この上で、対向伝播ネットワーク部20は、CPNの学習結果に基づいた結合荷重とラベルとを出力する。具体的には、対向伝播ネットワーク部20は、このCPNの学習結果に対して、小規模データセット10を再度入力した際の結合荷量とラベルとを組み合わせて、学習データセット30として生成する。さらに、対向伝播ネットワーク部20は、小規模データセット10に含まれるカテゴリの分布特性を、二次元の自己組織化マップ(Self-Organizing Map、以下「SOM」という。)のカテゴリ特徴地図(カテゴリマップ)として、可視化することも可能である。
対向伝播ネットワーク部20の詳細については後述する。
【0017】
学習データセット30は、本実施形態に係る対向伝播ネットワーク部20のCPNの学習結果に基づいた結合荷重の疑似画像及びラベルを含む、ソースドメイン学習用データセットである。すなわち、学習データセット30は、小規模データセット10を拡充し、各NNを学習するソース(元データ)のドメイン(学習させるデータセットの領域、学習範囲)となるデータセットである。
本実施形態の学習データセット30は、例えば、学習完了したCPNに、小規模データセット10の各画像データが再度入力され、カテゴリマップ層(中間層)に入力される際の重みの合計(結合荷重)が擬似的な画像データ(疑似画像データ)に変換され、これに対応するラベルと組み合わせられて生成される。すなわち、学習データセット30の結合荷重は、カテゴリ間若しくはカテゴリ内の関係性若しくは/並びに複雑度を、隣接する結合荷重の距離情報から深度特徴として写像され、可視化されたデータである。
【0018】
転移学習部40は、小規模データセット10、及び/又は、対向伝播ネットワーク部20により学習された結合荷重並びにラベルから転移学習を行う。ここで、転移学習(Transfer Learning)とは、既にあるドメインで学習した学習済みモデルを、別のドメインで用いるように、効率的に学習させる手法である。本実施形態においては、転移学習部40は、既に学習済みのNNの一部の層のみ、荷重を変更可能にして学習させる。これは、DNNの一例である畳み込みニューラルネットワーク(Convolutional Neural Network、以下「CNN」という。)等では、限られた上位層のみ再学習すれば、別のドメインでも使用可能となるためである。すなわち、CNNでは、入力層に近い下位層では普遍的な特徴を、出力層に近い上位層ではより抽象的な特徴を捉えているため、この抽象的な特徴のみ学習されれば良いためである。
【0019】
本実施形態の転移学習部40は、例えば、大規模データセットにより事前学習されており、小規模データセット10のカテゴリに沿った再学習として、転移学習を行うことが可能である。具体的には、転移学習部40は、例えば、小規模データセット10よりも一般的なカテゴリであり、即ち、大量のデータが存在する大規模データセットで既に学習された荷重データを備えたCNNを初期値として使用する。この上で、転移学習部40は、このCNNの上位層のいくつかのユニットの荷重を、小規模データセット10又は学習データセット30によりファインチューニング(Fine Tuning)等により学習させることで、別のドメインに適用させる。
この転移学習部40の詳細な構成については後述する。
【0020】
ドメイン適応部50は、転移学習部40による転移学習の結果を入力として教師ありドメイン適応を行う。ここで、ドメイン適応は、上述の転移学習の一種であり、ドメインは違うものの確率分布(Probability Distributions)のみが異なるデータに適用するものである。本実施形態においては、ドメイン適応として、転移学習部40の学習結果を初期値として、同一カテゴリでの追加学習する。具体的には、小規模データセット10で転移学習したものを学習データセット30でドメイン適応し、又は学習データセット30で転移学習したものを小規模データセット10でドメイン適応する。このドメイン適応としては、例えば、上述のようにデータセットを変更したファインチューニング、又は、データのバイアスの補正と予測誤差の最小化を同時に行うDNNを利用したモデル(例えば、<URL="https://arxiv.org/pdf/1409.7495.pdf">参照。)等を用いることが可能である。
このドメイン適応部50の詳細な構成については後述する。
【0021】
ここで、本実施形態に係る対向伝播ネットワーク部20は、詳細は後述する三層の対向伝播ネットワーク(Counter Propagation Networks。以下、「CPN」という。)で構成される例について説明する。一方、転移学習部40及びドメイン適応部50は、三層以上~数百層もあるようなDNNで構成される例について説明する。このDNNについては、フィードフォーワード型NN(Feedforward Neural Network)であっても、他構造のNNであってもよい。
【0022】
より詳しく説明すると、転移学習部40は、荷重カテゴリ学習部41及び小規模データ学習部42を備える。
ドメイン適応部50は、荷重カテゴリ小規模適応部51及び小規模荷重カテゴリ適応部52を備える。
【0023】
荷重カテゴリ学習部41は、対向伝播ネットワーク部20により生成された学習データセット30により転移学習を行う。本実施形態においては、荷重カテゴリ学習部41は、例えば、対向伝播ネットワーク部20により学習された学習データの結合荷重による疑似画像データ及びラベルのデータセットを用いて、本実施形態に係るCNNの上位層を転移学習する。
【0024】
小規模データ学習部42は、小規模データセット10を用いて転移学習を行う。本実施形態においては、例えば、小規模データ学習部42は、小規模データセット10の画像データセット及びラベルそのものを用いて、本実施形態に係るCNNの上位層を転移学習する。
【0025】
本実施形態においては、荷重カテゴリ学習部41と小規模データ学習部42とは、互いに識別精度を比較し合うことが可能である。これにより、いずれか、精度の高い方を出力することが可能である。
【0026】
荷重カテゴリ小規模適応部51は、荷重カテゴリ学習部41による学習を引き継いで、小規模データセット10によりドメイン適応を行う。本実施形態においては、例えば、荷重カテゴリ小規模適応部51は、荷重カテゴリ学習部41により学習された状態の荷重データを初期値として、小規模データセット10の画像データを用いて、ドメイン適応を行う。
【0027】
小規模荷重カテゴリ適応部52は、小規模データ学習部42による学習を引き継いで、学習データセット30によりドメイン適応を行う。本実施形態においては、例えば、小規模荷重カテゴリ適応部52は、小規模データ学習部42により学習された荷重データを初期値として、対向伝播ネットワーク部20により学習された学習データセット30の結合荷重による疑似画像データ及びラベルのデータセットを用いて、ドメイン適応を行う。
【0028】
本実施形態においては、荷重カテゴリ小規模適応部51と小規模荷重カテゴリ適応部52とについても、互いに識別精度を比較し、精度の高い方を出力することが可能である。これにより、いずれか、精度の高い方を出力することが可能である。
【0029】
次に、
図2により、本実施形態の対向伝播ネットワーク部20の詳細について説明する。
図2は、本実施形態に係るCPNのネットワーク構造の概略を示す。本実施形態に係るCPNは、KohonenのSOMを基にした、教師ありNNとして、Nielsenにより開示されたものである(非特許文献2、3を参照)。
本実施形態の対向伝播ネットワーク部20のCPNは、入力層、カテゴリマップ層(Kohonen層)、出力層(Grossberg層)を備える。
【0030】
CPNの入力層は、小規模データセット10が入力され、カテゴリマップ層へ伝搬するための層である。
図2では省略しているものの、本実施形態においては、入力層では、各ユニットに対して、小規模データセット10の画像データセットの各画像データの画素がそれぞれ入力される。すなわち、例えば、後述する実施例で示すように50×50画素の画像データが用いられる場合、各ユニットには、0~1等の範囲で正規化された各画素の画素値が入力される。
【0031】
カテゴリマップ層は、入力層から伝搬されたデータが、近傍学習と競合の勝者占有(Winner-Takes-All。以下、「WTA」という。)により位相写像される層である。本実施形態においては、カテゴリマップ層は、可視化特性の高いSOM様の二次元構造である。加えて、カテゴリマップ層の各ユニットは、下記で説明する出力層への荷重により、ラベルが設定されている。すなわち、本実施形態においては、対向伝播ネットワーク部20は、小規模データセット10に含まれるカテゴリの分布特性を二次元の特徴地図として、このカテゴリマップ層を画像データとして出力することが可能である。
【0032】
出力層は、ラベルに設定された各カテゴリが出力され、学習時にはBP用の教師信号が入力される層である。出力層の各ユニットは、例えば、ラベルに設定された各カテゴリに対応している。すなわち、出力層の各ユニットは、例えば、ラベルに設定された各カテゴリについて、正しいカテゴリのラベルのみが「1」であり、他のカテゴリのラベルは「0」になるように学習される。
加えて、本実施形態においては、カテゴリマップ層の各ユニットについて、当該ユニットから出力層への荷重のうち、荷重が最大値のユニットに対応するカテゴリが、当該ユニットのラベルとして設定される。
【0033】
なお、入力層とカテゴリマップ層とは、特徴量に合わせて任意の構造とすることが可能である。
【0034】
〔機械学習装置1のシステム構成〕
機械学習装置1は、システム構成として、上述の各機能部ロックを実行するためのハードウェア資源を備えている。
このハードウェア資源は、制御演算手段である制御部、及び、一時的でない記録媒体である記憶部を含む。
【0035】
制御部は、CPU(Central Processing Unit、中央処理装置)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)、GPU(Graphics Processing Unit)、TPU(Tensor Processing Unit)、FPGA(Field-Programmable Gate Array)、ASIC(Application Specific Integrated Circuit、特定用途向けプロセッサー)、その他のAI用演算アクセレレーター等である。
制御部は、記憶部に格納されている制御プログラムを実行することで、各機能ブロックの各部として動作させられる。また、制御部は、外部の端末や入力部から入力された所定の指示情報に応じて、装置全体の制御を行う。
【0036】
記憶部は、ROM(Read Only Memory)、RAM(Random Access Memory)等の半導体メモリやHDD(Hard Disk Drive)等の一時的でない記録媒体である。記憶部のROMやHDDには機械学習装置1の動作制御を行うための制御プログラム、上述の各データが格納されている。
【0037】
本実施形態の制御プログラムは、例えば、各種OS(Operating System)上で、NNを実行するための各種ミドルウェア及びカバーライブラリ等と、これらの上で作動する定義ファイル、学習済みの荷重データ等から構成される。
【0038】
本実施形態においては、対向伝播ネットワーク部20、転移学習部40、及びドメイン適応部50は、制御部により実行される。
小規模データセット10、及び学習データセット30は、記憶部に格納される。また、大規模データセットも、記憶部に格納されていてもよい。
【0039】
なお、機械学習装置1において、制御部及び記憶部は、メモリ内蔵GPU、チップ・オン・モジュールパッケージ、SOC(System On a Chip)等のように、一体的に形成されていてもよい。
【0040】
これに加えて、機械学習装置1は、キーボードやボタンやポインティングデバイス等の入力部と、LCD(Liquid Crystal Display)や有機ELディスプレイ等の表示部と、外部ネットワークに接続するためのLANボードや無線送受信機等のネットワーク送受信部とを備えていてもよい。
また、機械学習装置1は、学習時と実行時とで、別々のハードウェアで実行されてもよい。また、各機能ブロックについても、別々のハードウェアで実行されてもよい。
【0041】
〔機械学習装置1による機械学習処理〕
次に、
図3を参照して、本発明の実施の形態に係る機械学習装置1による機械学習処理の説明を行う。
以下で、
図3のフローチャートを参照して、機械学習処理の各学習の一例について、詳細をステップ毎に説明する。
【0042】
(ステップS101)
まず、対向伝播ネットワーク部20が、CPN処理を行う。
対向伝播ネットワーク部20は、小規模データセット10の各画像データを入力し、CPNによる学習を行う。対向伝播ネットワーク部20は、小規模データセット10に含まれる画像データセット(Images)を入力データとして、近傍学習とWTAとによる教師あり学習を行う。この対向伝播ネットワーク部20の教師信号は、入力された小規模データセット10の画像データに付されたラベルを用いる。
【0043】
学習完了後、対向伝播ネットワーク部20は、各ユニットがラベル付けされたカテゴリマップ層をカテゴリマップの画像データとして、記憶部に格納する。これにより、小規模データセット10に含まれるカテゴリの分布特性を、二次元の特徴地図となるカテゴリマップとして可視化することが可能となる。
【0044】
さらに、対向伝播ネットワーク部20は、小規模データセット10の各画像データを再びCPNに入力し、入力層の各ユニットからカテゴリマップ層の各ユニットへの荷重の合計である結合荷重を算出し、これを正規化して、疑似画像データを生成する。この疑似画像データは、出力層のカテゴリによりラベル付けされる。対向伝播ネットワーク部20は、このラベル付けされた疑似画像データのデータセット(結合荷重及びラベル)を学習データとして出力し、記憶部に格納する。
【0045】
このように、カテゴリマップ層の各ユニットの結合荷重を可視化することで、画像として特徴を保持し、少数派カテゴリの画像データを拡張することが可能となる。加えて、CPNを用いることで、学習データの位相構造を保存しつつ、学習データの圧縮や拡張が期待できる。
【0046】
(ステップS102)
次に、転移学習部40が、転移学習処理を行う。
本実施形態においては、転移学習部40は、学習データセット30の結合荷重及びラベル(Weights)、及び小規模データセット10の画像データセットを用いて、CNNを転移学習する。たとえば、転移学習部40は、複数層の畳み込み層と、畳み込み層より少ない層(数層)の全結合層で構成されるCNNで、各ユニット間の荷重が大規模データセットで事前学習されたものを初期値として使用する。この上で、転移学習部40は、数層の全結合層のみをファインチューニング等で転移学習する。すなわち、転移学習部40は、小規模データセット10のカテゴリに沿った再学習を行う。
【0047】
具体的には、転移学習部40は、荷重カテゴリ学習部41の各ユニットについては、学習データセット30の結合荷重及びラベル(Weights)で転移学習を行う。一方、転移学習部40は、小規模データ学習部42の各ユニットについては、小規模データセット10の画像データセット(Images)で転移学習を行う。この際の学習結果が、荷重カテゴリ学習部41及び小規模データ学習部42の各ユニットの荷重にそれぞれ適用される。
ここで、転移学習部40は、荷重カテゴリ学習部41及び小規模データ学習部42の学習結果の精度比較により精度の高い方の出力を選択可能である。
【0048】
(ステップS103)
次に、ドメイン適応部50が、ドメイン適応処理を行う。
ここでは、ドメイン適応部50は、学習データセット30の結合荷重及びラベル(Weights)から小規模データセット10の画像データセット(Images)、及び、学習データセット30の結合荷重(Weights)から小規模データセット10の画像データセット(Images)へのドメイン適応を行う。
【0049】
具体的には、ドメイン適応部50は、荷重カテゴリ学習部41で転移学習され更新された各ユニットの荷重データを、荷重カテゴリ小規模適応部51の各ユニットの荷重の初期値に適用する。この上で、ドメイン適応部50は、小規模データセット10の画像データセット(Images)を用いてドメイン適応を行う。
一方、ドメイン適応部50は、小規模データ学習部42で転移学習され更新された各ユニットの荷重データを、小規模荷重カテゴリ適応部52の各ユニットの荷重の初期値に適用する。この上で、ドメイン適応部50は、学習データセット30の結合荷重(Weights)を用いてドメイン適応する。
【0050】
この際の学習結果が、荷重カテゴリ小規模適応部51及び小規模荷重カテゴリ適応部52の各ユニットの荷重にそれぞれ適用される。
ここで、ドメイン適応部50も、荷重カテゴリ小希望適応部及び小規模荷重カテゴリ適応部52の学習結果の精度比較により、精度の高い方の出力を選択可能である。
以上により、本発明の実施の形態に係る機械学習処理を終了する。
【0051】
学習終了後に、荷重カテゴリ学習部41、小規模データ学習部42、荷重カテゴリ小規模適応部51、及び小規模荷重カテゴリ適応部52により、小規模データセット10と同様のカテゴリの新規データの画像データ等について、カテゴリの識別が可能となる。この際に、上述の精度比較により最も高い精度のNNを適用可能である。また、これらの学習済みの各部の各ユニットの荷重データを保存し、これをエッジコンピューティング等の機器で読み込んで実行して、カメラ画像等からリアルタイムでカテゴリの識別等を行うことが可能である。
【0052】
以上のように構成することで、以下のような効果を得ることができる。
近年の第三次人工知能ブームに伴い、DNNを用いた機械学習装置が普及してきている。ここで、DNNでは、大量の学習時間を要することが深層学習を運用する上で課題となっている。これに関しては、クラウドやエッジ環境が活用されている。
しかしながら、DNNでは、学習データ量が少ないと精度が向上しないことが問題となってきている。このため、少ないデータを用いて、様々なタスクに対して深層学習を使用する手法が模索されている。
しかしながら、特許文献1の技術では、この際に、実際に少ないデータを拡張すること自体はできず、精度を向上させることはできなかった。
【0053】
これに対して、本発明の実施の形態に係る機械学習装置1は、小規模データセット10を入力として、対向伝播ネットワークにより教師あり学習を行い、学習された結合荷重とラベルとを出力する対向伝播ネットワーク部20と、小規模データセット10、及び/又は、対向伝播ネットワーク部20により学習された結合荷重とラベルとから転移学習を行う転移学習部40と、転移学習部40による転移学習の学習結果に基づいてドメイン適応を行うドメイン適応部50とを備えることを特徴とする。
【0054】
このように構成することで、CPNの結合荷重を転移学習に用いて、その後、ドメイン適応でも連続的に使用することにより、DNNの上位層から下位層まで全体を最適化できる。すなわち、従来技術では、転移学習とドメイン適応とは個別に用いられていたものの、本実施形態の機械学習装置1では、両者を同時に扱うことができる。これにより、少ないデータで学習精度を向上させることができる。特に、後述する実施例の比較実験結果で示すように、カテゴリマップの可視化画像の精度が保障された条件下では、従来の手法の精度を上回る精度となる。
【0055】
従来、DNNを学習させるためのデータセットは、人工物体や一般的な情景から構成される画像群が大半であるため、生物や農作物等から構成されるデータセットを用いたDNNの精度を向上させることは難しかった。
これに対して、本実施形態に係る機械学習装置1は、後述する実施例で示すように、生物や農作物等から構成される小規模データセット10を用いて、より精度を向上させることができる。たとえば、限られたデータを有効活用し、リモート農業において、ドローン等で、いもち病の植物を容易に判定するといった用途に用いることが可能となる。
【0056】
従来、異カテゴリ間での追加学習となる転移学習は、インターネット等から学習用データセットを容易に入手できる。一方、同一カテゴリでの追加学習となるドメイン適応は、データセットの収集が必要である。
このため、従来、(1)データの再収集、(2)CG等による人工データの作成、(3)敵対的生成ネットワーク(Generative Adversarial Network、以下「GAN」という。)による疑似データの生成等の手法が用いられてきた。しかしながら、(1)再収集、(2)作成に伴う人的コスト、(3)計算コストやメモリ容量が課題となっていた。
しかしながら、各々の手法は日進月歩で進化発展しているものの、決定的な手法は存在せず、データセットによっては、精度が拮抗していた。
【0057】
これに対して、本発明の実施の形態に係る機械学習装置1では、対向伝播ネットワーク部20は、近傍と競合に基づく教師あり学習を行い、学習結果に対して、小規模データセット10を入力した際の結合荷量とラベルとの組み合わせを、学習データセット30として生成することを特徴とする。
このように構成し、学習結果の結合荷重から疑似画像データを生成して、学習用データセットを生成する。これを基にドメイン適応を行うと、従来より認識精度を高めることができる。すなわち、従来よりもドメイン適応に適した学習データセット30を提供することが可能となる。
【0058】
本発明の実施の形態に係る機械学習装置1では、小規模データセット10に含まれるカテゴリの分布特性を、二次元の特徴地図となるカテゴリマップとして可視化することを特徴とする。
このように構成することで、少数派カテゴリの分布特性を可視化すると共に、分布構造をラベルと結合荷重の両側面から分析できる。
【0059】
本発明の実施の形態に係る機械学習装置1では、結合荷重は、カテゴリ間若しくはカテゴリ内の関係性若しくは/並びに複雑度を、隣接する結合荷重の距離情報から深度特徴として写像され、可視化されることを特徴とする。
このように構成することで、入力特徴の位相構造を保持しながら競合と近傍の学習に基づきデータを拡張することができる。この結果として、(1)少量のデータからカテゴリマップのマップサイズに応じて学習データセット30が生成でき、(2)カテゴリマップは自動的にラベル付け(ラベリング)されるため、アノテーションに伴う負担が生じず、(3)CPNのユーグリッド距離に基づく演算のみで計算負荷も小さく、並列化や高速化にも適しているという効果が得られる。
【0060】
また、本発明の実施の形態に係る機械学習装置1では、転移学習部40は、大規模データセットにより事前学習されており、小規模データセット10のカテゴリに沿った再学習として、転移学習を行うことを特徴とする。
このように構成することで、インターネット等で提供されているDNNの学習済みの荷重データを有効活用し、より精度を高めることが可能となる。
【0061】
また、本発明の実施の形態に係る機械学習装置1では、転移学習部40は、学習データセット30により転移学習を行う荷重カテゴリ学習部41と、小規模データセット10を用いて転移学習を行う小規模データ学習部42とを含むことを特徴とする。
このように構成することで、小規模データセット10のみを用いて転移学習を行い、更に、CPNを基にした学習データセット30により転移学習を行うことが可能となる。これにより、小規模データセット10のデータの性質等により最適な転移学習を行うことができる。
【0062】
また、本発明の実施の形態に係る機械学習装置1では、荷重カテゴリ学習部41と小規模データ学習部42とは、互いに識別精度を比較し合うことを特徴とする。
このように構成することで、小規模データセット10のみを用いて転移学習を行い、更に、CPNを基にした学習データセット30により転移学習を行った結果を比較して、より精度の高い方を出力することができる。すなわち、精度比較により優越解が選択できる。
【0063】
また、本発明の実施の形態に係る機械学習装置1では、ドメイン適応部50は、荷重カテゴリ学習部41による学習を引き継いで、小規模データセット10によりドメイン適応を行う荷重カテゴリ小規模適応部51と、小規模データ学習部42による学習を引き継いで、学習データセット30によりドメイン適応を行う小規模荷重カテゴリ適応部52とを含むことを特徴とする。
このように構成することで、CPNの学習結果を、小規模データセット10及び学習データセット30により転移学習を行った結果について、それぞれドメイン適応することができる。
【0064】
また、本発明の実施の形態に係る機械学習装置1では、荷重カテゴリ小規模適応部51と小規模荷重カテゴリ適応部52とは、互いに識別精度を比較し合うことを特徴とする。
このように構成することで、転移学習後のドメイン適応にて、生成されたカテゴリマップを基にした学習結果と、小規模データセット10を基にした学習結果との順序交換により、二種類の識別器を構築できる。このため、精度比較により優越解が選択できる。
【0065】
〔他の実施の形態〕
なお、上述の実施形態においては、学習データセット30の疑似画像データのラベルに、出力層の最大の荷重を持つカテゴリを付する例について記載した。
しかしながら、入力された小規模データセット10の画像データのラベルを直接、当該疑似画像データのラベルとすることも可能である。
【0066】
また、上述の実施形態においては、小規模データセット10について前処理を行わないで、対向伝播ネットワーク部20による処理を行った例について記載した。
しかしながら、後述する実施例で示すWDSCのように特徴抽出が困難なドメインのデータセットに対しては、特徴量をそのまま入力するのではなく、前処理をしてから入力して、CPNの精度を更に高めることも可能である。この前処理としては、セグメンテーションや特徴抽出等を行うことが可能である。また、カラーのデータをグレースケールに変換する場合、色分類を行う等の処理も可能である。また、CPNの学習時の写像特性を考慮しつつ、次元数削減が可能な各種の前処理を行うことも可能である。
【0067】
これにより、CPNを用いて少数派カテゴリの疑似画像を生成する際には、カテゴリ固有の特徴抽出が可能な前処理を行うことで、CPNの精度向上と疑似画像の妥当性を保持することが可能である。これにより、例えば、類似した配色や見た目を持つ、分類が難しいカテゴリ等に対して精度を向上させられる。
【0068】
上述の実施形態においては、機械学習装置1として、データセットを格納した計算機による学習を行う例について記載した。
しかしながら、学習が完了したネットワーク構造及び荷重データ(モデル)を、他の情報処理装置に適用することも可能である。さらに、本実施形態に係る機械学習方法を実行するプログラム及びデータを、別途、情報処理装置にインストール等することで、本実施形態の機械学習装置を実現することも可能である。
【0069】
また、本発明の機械学習装置は、PC等以外の情報処理装置にも適用できる。すなわち、ドローン、ロボット、自動運転車、無人航空機等にも適用可能である。さらに、IoT(Internet of Things)等の適用により、リモート農業や畜産用に用いることも可能である。
【0070】
また、上述の実施形態においては、各機能ブロックを別々のNNとして構成し、学習する例について記載した。
しかしながら、結合層等を設けて単一又は複数の機能ブロックを結合したような構造のNNを用いることも可能である。
【0071】
また、上述の実施形態においては、DNNとしてCNNを用いる例について記載した。
しかしながら、転移学習部40及びドメイン適応部50について、CNN以外のNNについても対応可能である。さらに、フィードフォーワード型NN以外のRNN(Recurrent Neural Network)、その他の構造のネットワーク等にも用いることが可能である。
また、小規模データセット10及び大規模データセットについても、画像データ以外であってもよく、この場合でも、学習させることが可能である。
【0072】
なお、上記実施の形態の構成及び動作は例であって、本発明の趣旨を逸脱しない範囲で適宜変更して実行することができることは言うまでもない。
【実施例0073】
次に、実施例に基づいて本発明をより詳細に説明するが、以下の具体例は本発明を限定するものではない。
【0074】
〔方法と条件〕
(各部の構成)
本実施例においては、上述の実施形態に係る機械学習装置1を用いて、教師ありドメイン適応に基づいた機械学習を行った。
【0075】
対向伝播ネットワーク部20では、ドメイン適応用のデータを拡張するため、小規模データセット10で教師あり学習を行った。教師データには、カテゴリマップ内の各ユニットにおけるラベルを用いた。この学習結果を基に、ソースドメイン学習用データセットとなる学習データセット30を生成した。すなわち、画像データセットを拡張するため、位相写像と競合学習に基づくCPNでの学習時に生成された結合荷重から、ラベル付けされた疑似画像データのデータセットを生成した。
本実施例では、小規模データセット10の画像データセット(以下、「Images」という。)を入力データとして、学習を行った。この学習結果について、Imagesを再度入力し、その結合荷重を、疑似画像の画像データセット(以下、「Weights」という。)として可視化し、学習データセット30とした。これにより、画像として特徴を保持した。
【0076】
転移学習部40では、Weights、Imagesを用いて、DNNを転移学習した。DNNの学習アルゴリズムには、13層の畳み込み層と3層の全結合層で構成されるCNN(Convolutional Neural Networks)を使用した。また、このCNNの初期状態としては、Image Net(<URL="http://www.image-net.org/">)を事前学習して、更新された荷重データを用いた。このときの学習結果の各ユニット間の荷重データ(以下、「WTL-W,WTL-I」として示す。)が、荷重カテゴリ学習部41及び小規模データ学習部42に、それぞれ、適応された。
【0077】
ドメイン適応部50では、WeightsからImages、又は、ImagesからWeightsへのドメイン適応を行った。このときの学習結果の各ユニット間の荷重が、荷重カテゴリ小規模適応部51及び小規模荷重カテゴリ適応部52にドメイン適応された。これらの初期値としては、それぞれ荷重カテゴリ学習部41及び小規模データ学習部42で更新された荷重データ(WTL-W,WTL-I)を用いた。
【0078】
(ベンチマーク用のデータセット)
本実施例では、世間一般に存在するカテゴリと比較した場合、相対的にデータ量が少ないカテゴリを少数派カテゴリと定義する。特に、本実施例では、人工物と比較してデータの量的確保に負荷や困難を来すことの多い自然物の少数派カテゴリを対象とした。
このため、本実施例では、ベンチマーク用の小規模データセット10としてFruits360(<URL="https://www.kaggle.com/moltean/fruits">)及びWeed Detectionin SoybeanCrops(WDSC)(<URL="https://data.mendeley.com/datasets/3fmjm7ncc6/2">)を用いた。
【0079】
Fruits360は120カテゴリの果物と野菜から構成されるデータセットであり、本実施例では少数派カテゴリに着目しているため、特徴が類似しているClementine(CL)、Kumquats(KU)、Mandarine(MA)、Orange(OR)、PomeloSweetie(PS)、Tangelo(TA)の6カテゴリを用いて、学習に使用した。
【0080】
WDSCは、broadleaf(BL)、grass(GR)、soil(SO)、及び、soybean(SB)の4カテゴリから構成されるデータセットである。本実施例では、WDSCにおいては、一枚の元画像データより50×50画素の局所画像を4枚抽出し、それぞれ学習に使用する画像データとした。
【0081】
(評価方法)
評価基準として、認識率Raccを次式に定義した。
Racc = Stest/Ntest×100……式(1)
ここで、Ntestはテスト画像の総枚数、Stestは正解画像枚数を示す。
【0082】
(ベンチマークの手法)
まず、小規模データセット10を用いてCPNのパラメータを最適化し、学習を行った。この上で、学習データセット30を生成した。次に、生成された学習用データセットでCNNを学習したときの認識精度を比較した。さらに得られた結合荷重を用いて原画像へのドメイン適応の結果を算出し、少数派カテゴリのデータを量的かつ質的に拡張できるかどうかを検証した。
【0083】
〔結果と考察〕
(CPNのパラメータ最適化結果)
まず、CPNにおける主要パラメータの最適化を行った。
Fruits360は、マップサイズが125×125ユニットの場合、WDSCは100×100ユニットの場合、Raccが最大となった。すなわち、これらを最適値とした。
マップサイズのRaccの推移をみると、マップサイズを拡大しても、必ずしも精度は向上しなかった。
【0084】
また、Fruits360は、学習回数Oが100,000回でRaccが収束した。一方、WDSCは、学習回数Oが増大しても、大幅な精度改善が見込めず、十分に学習できなかった。
両ベンチマークデータセットを考慮して、マップサイズは100×100ユニット、学習回数Oは1,000,000回を最適値と設定した。
【0085】
出力されたFruits360のカテゴリマップを検討したところ、Fruits360は十分に分類されていることが確認された。一方、WDSCのカテゴリマップでは、局所的に大きなクラスタが形成されているものの、小さなクラスタが多く形成されており、十分に分類されていないと推測された。またクラスタの境界付近で単一ユニットが形成されたことから、隣接するカテゴリ間の関係性が複雑であることを示唆していた。
【0086】
(転移学習による実験結果)
ここでは、Weightsで転移学習した認識精度と、Imagesで転移学習した認識精度を比較した。
Fruits360及びWDSCにおいて、小規模データ学習部42が、荷重カテゴリ学習部41を上回る結果となった。要因のひとつとして、CPNで生成された結合荷重と教師データの関係性が一致していないケースの発生が考えられる。
誤認識に至った原因と考えられる疑似画像データを検討したところ、境界付近に位置するユニットが、隣接するカテゴリの特徴が混在するため、曖昧な教師データの混入が考えられた。またWDSCに関しては、元々のCPNのRaccが低い。そのためFruits360のように教師データが一致しないことに加え、Weights自体が不明瞭に生成されたとも考えられる。
【0087】
(ドメイン適応による実験結果)
さらに本実施例で得られた結合荷重を用いて、原画像と疑似画像との間のドメイン適応の結果を算出し、少ないデータを量的かつ質的に拡張できるかどうかを検証した。
Fruits360において荷重カテゴリ小規模適応部51と小規模荷重カテゴリ適応部52の精度は、高い傾向にあった。また同程度の精度に収束していることから、互いのドメインに適応するように、WTL-W,WTL-Iが更新されたと考えられる。また、WDSCにおいては、Fruits 360に比べ荷重カテゴリ小規模適応部51と小規模荷重カテゴリ適応部52の精度が低い傾向にあった。特に小規模荷重カテゴリ適応部52は、精度の高い小規模データ学習部42で更新されたWTL-Iを用いてもRaccが低下した。これは、小規模データセット10に含まれる画像データセットと結合荷重との間において特徴の類似性が小さいことを示唆している。
【0088】
(総合比較と考察)
結果として、Fruits360に関しては、荷重カテゴリ小規模適応部51が、小規模データ学習部42よりRaccが高い結果が確認された。
たとえば、従来のイメージによる転移学習のみだとFruits360のRaccは最高で88%程度であったのに対し、本実施例の荷重カテゴリ小規模適応部51と小規模荷重カテゴリ適応部52のRaccは、いずれも92%を超えていた。
これは、疑似画像データが拡張されたことで、少数の原画像における質の影響力を上回ったことを示唆している。また、荷重カテゴリ小規模適応部51が、小規模データ学習部42と比べ早い段階でRaccが収束しているため、計算時間の短縮にも期待できる。
CPNによる分類実験では、データセット間で精度の変動が大きい結果となった。CPNは、Fruits360のような単純な分類には頑強であることが確認された。
ソースドメインで確からしい特徴抽出が可能である条件下において、本実施例の教師ありドメイン適応により、少数派カテゴリ等のデータ入手困難なカテゴリに対する分類タスクの精度向上が期待できる。
【0089】
(結言)
本実施例では、CPNを用いたデータの拡張を目的とし、疑似画像の転移学習、原画像と疑似画像間におけるドメイン適応と、従来手法における転移学習の比較と評価を行った。特に、Fruits360のようにCPNの精度が高い、すなわち疑似画像の精度が保障されている条件において、本実施例における教師ありドメイン適応では、従来の転移学習の精度を上回ることが明らかになった。