(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-26
(45)【発行日】2024-09-03
(54)【発明の名称】データ作成支援装置及びデータ作成支援方法
(51)【国際特許分類】
G06N 3/08 20230101AFI20240827BHJP
【FI】
G06N3/08
(21)【出願番号】P 2021003982
(22)【出願日】2021-01-14
【審査請求日】2023-02-16
(73)【特許権者】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110000176
【氏名又は名称】弁理士法人一色国際特許事務所
(72)【発明者】
【氏名】明神 智之
(72)【発明者】
【氏名】來間 啓伸
(72)【発明者】
【氏名】佐藤 直人
(72)【発明者】
【氏名】小川 秀人
【審査官】渡辺 順哉
(56)【参考文献】
【文献】国際公開第2019/229977(WO,A1)
【文献】特開2020-154386(JP,A)
【文献】特開2018-106463(JP,A)
【文献】LIU, Hong ほか,Universal Adversarial Perturbation via Prior Driven Uncertainty Approximation,Proceedings of 2019 IEEE/CVF International Conference on Computer Vision (ICCV),2019年,pp.2941-2949,[retrieved on 2024.03.26], Retrieved from the Internet: <URL: https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=9008259>
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00-99/00
(57)【特許請求の範囲】
【請求項1】
教師あり機械学習に用いるニューラルネットワークモデルと、正解ラベル付帯のテストデータを保持する記憶装置と、
前記ニューラルネットワークモデルに前記テストデータを入力することで、前記ニューラルネットワークモデルによる推論結果の不確実性を特定する処理と、前記不確実性を損失とした逆伝播処理により前記テストデータの勾配情報を取得する処理と、前記テストデータに微小変化を与えた微小変化テストデータを複数生成し、当該複数の微小変化テストデータそれぞれと前記テストデータとの偏差を算定する処理と、前記不確実性の情報、前記勾配情報、及び前記偏差に基づき、前記不確実性を上昇又は減少させる前記微小変化又は当該微小変化を与えた前記微小変化テストデータを特定する処理を実行する演算装置、
を備えることを特徴とするデータ作成支援装置。
【請求項2】
前記演算装置は、
前記不確実性の特定処理において、前記テストデータを入力として、前記ニューラルネットワークモデルに含まれるニューロンの出力をランダムに0にして推論結果を出力する、ドロップアウト推論の処理を複数回実行し、当該ドロップアウト推論の結果を複数取得し、当該複数のドロップアウト推論結果に関する分散を前記不確実性として特定するものである、
ことを特徴とする請求項1に記載のデータ作成支援装置。
【請求項3】
前記演算装置は、
前記勾配情報の取得に際し、前記複数取得した前記ドロップアウト推論の結果の分散を損失関数とした逆伝播処理により前記テストデータの勾配を算出し、
前記
微小変化テストデータの特定に際し、前記微小変化テストデータと前記勾配情報を比較して、前記勾配情報が示す勾配と最も類似している微小変化テストデータと微小変化ベクトルを特定するものである、
ことを特徴とする請求項2に記載のデータ作成支援装置。
【請求項4】
前記演算装置は、
前記ドロップアウト推論の処理に際し、前記ニューラルネットワークの中間層までの推論結果を用いるものである、
ことを特徴とする請求項2に記載のデータ作成支援装置。
【請求項5】
前記演算装置は、
複数の前記ニューラルネットワークモデルそれぞれに、前記テストデータを入力することで、前記複数のニューラルネットワークそれぞれによる推論結果を取得し、当該推論結果に関する分散を前記不確実性として特定するものである、
ことを特徴とする請求項4に記載のデータ作成支援装置。
【請求項6】
前記演算装置は、
前記微小変化テストデータと、前記微小変化テストデータの不確実性情報との組を表示する処理をさらに実行するものである、
ことを特徴とする請求項1に記載のデータ作成支援装置。
【請求項7】
前記演算装置は、
前記微小変化テストデータと、前記微小変化テストデータの不確実性情報との組と、前記不確実性情報が所定の閾値を上回っている又は下回っていることを表示する処理をさらに実行するものである、
ことを特徴とする請求項1に記載のデータ作成支援装置。
【請求項8】
前記記憶装置は、
教師あり機械学習に用いる訓練データを正解ラベルとともに複数保持し、
前記演算装置は、
前記訓練データを入力として、前記微小変化テストデータに含まれる微小変化ベクトルを用いて、前記訓練データを微小変化した微小変化訓練データを生成し、前記微小変化訓練データを前記ニューラルネットワークモデルに与えることで、前記ニューラルネットワークモデルの再学習処理をさらに実行するものである、
ことを特徴とする請求項1に記載のデータ作成支援装置。
【請求項9】
前記演算装置は、
前記再学習を経た前記ニューラルネットワークモデルを用いて、前記テストデータを入力として前記不確実性を特定し、当該不確実性が所定の閾値を上回っている又は下回っている旨についての情報を表示する処理と、
前記不確実性が所定の閾値を上回っている又は下回っている場合、前記微小変化訓練データを前記ニューラルネットワークモデルに与えることで、前記ニューラルネットワークモデルの再学習処理を実行するものである、
ことを特徴とする請求項8に記載のデータ作成支援装置。
【請求項10】
情報処理装置が、
教師あり機械学習に用いるニューラルネットワークモデルと、正解ラベル付帯のテストデータを保持して、
前記ニューラルネットワークモデルに前記テストデータを入力することで、前記ニューラルネットワークモデルによる推論結果の不確実性を特定する処理と、
前記不確実性を損失とした逆伝播処理により前記テストデータの勾配情報を取得する処理と、
前記テストデータに微小変化を与えた微小変化テストデータを複数生成し、当該複数の微小変化テストデータそれぞれと前記テストデータとの偏差を算定する処理と、
前記不確実性の情報、前記勾配情報、及び前記偏差に基づき、前記不確実性を上昇又は減少させる前記微小変化又は当該微小変化を与えた前記微小変化テストデータを特定する処理と、
を実行することを特徴とするデータ作成支援方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ作成支援装置及びデータ作成支援方法に関する。
【背景技術】
【0002】
IoT(Internet Of Things)技術の普及などもあり、大量の観測データが取得可能となった昨今、当該データから何らかの有意な事象や法則性を効率良く特定する機械学習技術は更なる進化を続けている。
【0003】
そうした機械学習のうち、いわゆる教師あり機械学習においては、ラベルが付与された訓練データ群を学習モデルに与えることで、当該訓練データが示す事象の特徴を精度良く認識し、正しい推論結果すなわちラベルの値を導き出す学習が進むこととなる。
【0004】
表面的には、こうした機械学習による推論結果が正解であることにのみ重きを置くケースもあるが、その「正解」の中には、例えば、訓練データに含まれない(分布が異なる)データで本来ならば正解を導出しにくいものに関してまで「正解」してしまった結果も含まれうる。
【0005】
勿論、汎化性能として、訓練データ外の特徴を獲得することが機械学習の利点ではあるが、明らかに学習していないものについてまで正解してしまう状況が好ましいとは言えない。
【0006】
このような教師あり機械学習に関する従来技術としては、例えば、予測の精度および不確実性について同時に最適化するように深層学習ネットワークのパラメータを調整する技術(特許文献1参照)などが提案されている。
【0007】
この技術は、予め定義されたベースアーキテクチャの深層学習アーキテクチャパラメータを初期化し、前記深層学習アーキテクチャパラメータに基づいてモデル訓練を実施して、訓練されたモデルを生成し、前記生成された訓練されたモデルにモンテカルロ(MC)ドロップアウトを反復的に適用して予測および不確実性を取得し、前記訓練されたモデルの前記予測の精度および不確実性を評価するように適合度関数が構成され、前記訓練されたモデルが最適化されていないことを前記適合度関数が示す場合、前記深層学習アーキテクチャパラメータを更新して、前記訓練されたモデルの生成と前記適合度関数の評価とを反復し、前記訓練されたモデルが最適化されたことを前記適合度関数が示す場合、前記訓練されたモデルを予測のために提供する管理方法である。
【先行技術文献】
【特許文献】
【0008】
【発明の概要】
【発明が解決しようとする課題】
【0009】
上述した「正解」に関する課題認識において、ポイントとなるのが精度と不確実性の違いである。本来ならば、学習していないにもかかわらず、開発者の意図と関わりなく正解してしまうケースは、精度は高いが不確実性も高い状況であって望ましくはない。
【0010】
そのため、学習済みの機械学習モデルが、仕様(訓練データ)通りの推論結果をテストデータで出力するのか、仕様からどれぐらい離れたデータでもその推論結果が信用できる
のか、単純に正解する(精度が高い)だけではなく、正解すべきものを正解して不正解であるべきものを正解にしていないか、といった観点での検証が必要となる。
【0011】
従来技術によれば、そうした不確実性と精度を同時に最適化する学習方法が提示されているが、どのようなデータが(推論結果にてどのように)不確実性/確実性を示すのかを検証する仕組みは開示されていない。ひいては、学習モデルの頑健性の検証や向上を効率的に図ることはできていない。
【0012】
そこで本発明の目的は、教師あり機械学習の学習モデルに関する、頑健性の検証や向上を効率的に図る技術を提供することにある。
【課題を解決するための手段】
【0013】
上記課題を解決する本発明のデータ作成支援装置は、教師あり機械学習に用いるニューラルネットワークモデルと、正解ラベル付帯のテストデータを保持する記憶装置と、前記ニューラルネットワークモデルに前記テストデータを入力することで、前記ニューラルネットワークモデルによる推論結果の不確実性を特定する処理と、前記不確実性を損失とした逆伝播処理により前記テストデータの勾配情報を取得する処理と、前記テストデータに微小変化を与えた微小変化テストデータを複数生成し、当該複数の微小変化テストデータそれぞれと前記テストデータとの偏差を算定する処理と、前記不確実性の情報、前記勾配情報、及び前記偏差に基づき、前記不確実性を上昇又は減少させる前記微小変化又は当該微小変化を与えた前記微小変化テストデータを特定する処理を実行する演算装置、を備えることを特徴とする。
【0014】
また、本発明のデータ作成支援方法は、情報処理装置が、教師あり機械学習に用いるニューラルネットワークモデルと、正解ラベル付帯のテストデータを保持して、前記ニューラルネットワークモデルに前記テストデータを入力することで、前記ニューラルネットワークモデルによる推論結果の不確実性を特定する処理と、前記不確実性を損失とした逆伝播処理により前記テストデータの勾配情報を取得する処理と、前記テストデータに微小変化を与えた微小変化テストデータを複数生成し、当該複数の微小変化テストデータそれぞれと前記テストデータとの偏差を算定する処理と、前記不確実性の情報、前記勾配情報、及び前記偏差に基づき、前記不確実性を上昇又は減少させる前記微小変化又は当該微小変化を与えた前記微小変化テストデータを特定する処理と、を実行することを特徴とする。
【発明の効果】
【0015】
本発明によれば、教師あり機械学習の学習モデルに関する、頑健性の検証や向上を効率的に図ることができる。
【図面の簡単な説明】
【0016】
【
図1】本実施形態のデータ作成支援装置のハードウェア構成例を示す図である。
【
図2】本実施形態のデータ作成支援装置の機能構成例を示す図である。
【
図3】実施例1におけるデータ作成支援装置の機能構成例を示す図である。
【
図4】実施例1におけるデータ作成支援方法のフロー例を示す図である。
【
図5】実施例1におけるデータ作成支援方法の概念例を示す図である。
【
図6】実施例1におけるデータ作成支援方法の概念例を示す図である。
【
図7】実施例1におけるデータ作成支援方法の概念例を示す図である。
【
図8】実施例2におけるデータ作成支援装置の機能構成例を示す図である。
【
図9】実施例2におけるデータ作成支援方法のフロー例を示す図である。
【
図11】実施例3におけるデータ作成支援装置の機能構成例を示す図である。
【
図12】実施例3におけるデータ作成支援方法のフロー例を示す図である。
【
図13】実施例3におけるデータ作成支援方法の概念例を示す図である。
【発明を実施するための形態】
【0017】
<装置構成の例>
以下に本発明の実施形態について図面を用いて詳細に説明する。
図1は、本実施形態のデータ作成支援装置100のハードウェア構成例を示す図である。
図1に示すデータ作成支援装置100は、教師あり機械学習の学習モデルに関する、頑健性の検証や向上を効率的に図るコンピュータ装置である。
【0018】
こうしたデータ作成支援装置100のハードウェア構成は以下の如くとなる。すなわちデータ作成支援装置100は、記憶装置101、メモリ103、演算装置104、入力装置105、及び出力装置106を備えている。
【0019】
このうち記憶装置101は、SSD(Solid State Drive)やハードディスクドライブなど適宜な不揮発性記憶素子で構成される。
【0020】
また、メモリ103は、RAMなど揮発性記憶素子で構成される。
【0021】
また、演算装置104は、記憶装置101に保持されるプログラム102をメモリ103に読み出すなどして実行し装置自体の統括制御を行なうとともに各種判定、演算及び制御処理を行なうCPUである。
【0022】
本実施形態におけるプログラム102は、情報処理装置において当然備わるOS(Operating System)や、当該OS上で稼働してデータ作成支援方法を実装するプログラムに加えて、機械学習プログラム1021を保持している。機械学習プログラム1021は、例えば、ニューラルネットワークモデルなど適宜な学習済みモデル110にテストデータなどの適宜なデータを与えることで、当該データに関して所定の判定、推定等を行うアルゴリズムである。
【0023】
また、入力装置105は、ユーザからのキー入力や音声入力を受け付ける、キーボードやマウス、マイクなどの適宜な装置である。
【0024】
また、出力装置106は、演算装置104での処理データの表示を行うディスプレイ、スピーカー等の適宜な装置である。
【0025】
なお、記憶装置101内には、上述のプログラム102に加えて、学習済みモデル110、テストデータ120、及び訓練データ130を保持可能である。これらの具体的な内容等については後述する。
<機能構成の例>
図2は、本実施形態におけるデータ作成支援装置100における機能構成例を示す図である。本実施形態のデータ作成支援装置100は、上述の機械学習プログラム1021、学習済みモデル110(ニューラルネットワークモデル)、テストデータ120、及び訓練データ130、といった機械学習機能として必要な構成に加え、不確実性逆伝播部111、不確実性推論部112、微小変化付与部113、勾配偏差比較部114、不確実性データ表示部115、不確実性収束判定部116、及びモデル学習部117を備えている。
【0026】
こうした機能部を備えるデータ作成支援装置100は、訓練データ130を機械学習プログラム1021に与えることでニューラルネットワークモデルである学習済みモデル110の学習を随時進める。
【0027】
訓練データ130は、正解ラベルが付与されているデータであって、例えば、被写体の名称や属性が正解として規定された画像データ、機器での故障発生の可能性が正解として規定されたIoTデータ、などである。
【0028】
したがって、テストデータ等の処理対象となるデータが用意され、これが機械学習プログラム1021により学習済みモデル110に与えられると、例えば、「30代男性」、「猫」、「故障発生確率60%」、などといった、当該データの意味するところが推定結果として出力されることになる。
【0029】
こうして更新されていく学習済みモデル110は、上述のとおりニューラルネットワークモデルであるため、テストデータ120に対する推定結果として、上述のような一意に特定できる情報の他、その不確実性の情報として、当該推定結果の分布の平均や分散が得られる。
【0030】
そこで、データ作成支援装置100は、例えば上述の分散の値を損失とした逆伝播処理を実行して、当該テストデータ120の勾配データ123を取得する。機械学習アルゴリズムにおける逆伝播処理や、それに伴い勾配データを得る手法自体は既存技術を適宜に採用すればよい。
【0031】
また、データ作成支援装置100は、上述のテストデータ120に、所定の微小変化を与えることで、微小変化テストデータ122を複数生成する。この時、微小変化の方向性がユーザの開発意図等と異なる又はデータ特性からして好ましくない(例:文字や画像の主たる形状などが全く異なり、人間でも認識が難しくなる方向へ変化するもの。例えば、耳が特徴的な動物の耳画像の有無や外形を明らかに改変する変化、など)ものとなることは回避する必要がある。
【0032】
そのため、データ作成支援装置100は、そうした微小変化の好適な方向性を示す微小変化候補ベクトル121を、予めユーザから指定を受けて、又は所定の手法により取得し、上述の微小変化に際して適用すると好適である。この手法としては、例えば、上述の勾配データが示す勾配と類似する微小変化の方向、すなわちベクトルを特定するものである。
【0033】
データ作成支援装置100は、上述のように作成した複数の微小変化テストデータ122それぞれと、テストデータ120との偏差を算定し、ここまでに得ている推定結果の分散(不確実性の情報)、勾配データ123、及び偏差に基づき、推定結果の分散(不確実性)が上昇又は減少する微小変化又は当該微小変化を与えた微小変化テストデータを、不確実性テストデータ125として取得、保持する。
【0034】
データ作成支援装置100は、この不確実性テストデータ125の情報を所定の画面フォーマットにセットするなどして可視化データ126を生成し、これを出力装置106にて表示させる。
【0035】
また、データ作成支援装置100は、記憶装置101において保持する訓練データ130(正解ラベル付帯)を入力として、微小変化テストデータ122に含まれる微小変化ベクトル131を用いて、訓練データ130を微小変化した微小変化訓練データ132を生成する。
【0036】
また、データ作成支援装置100は、上述の微小変化訓練データ132を、機械学習プログラム1021の学習済みモデル110に与えることで、当該学習済みモデル110(すなわちニューラルネットワークモデル)の再学習処理をさらに実行する。
【0037】
この場合、データ作成支援装置100は、再学習を経た学習済みモデル110を用いて、所定のテストデータを入力として上述の分散など不確実性の評価値124を特定し、当該不確実性が所定の閾値を上回っている又は下回っているか判定する。データ作成支援装置100は、その判定結果を不確実性収束の判定結果134として取得し、例えば、出力装置106にて表示する。
【0038】
データ作成支援装置100は、上述の不確実性が所定の閾値を上回っている又は下回っている場合、微小変化訓練データ132を学習済みモデル110に与えることで、当該学習済みモデル110の再学習処理をさらに進めることとなる。
<実施例1>
以下、本実施形態におけるデータ作成支援方法の実際手順について図に基づき説明する。以下で説明するデータ作成支援方法に対応する各種動作は、データ作成支援装置100がメモリ等に読み出して実行するプログラムによって実現される。そして、このプログラムは、以下に説明される各種の動作を行うためのコードから構成されている。
【0039】
図3は、実施例1におけるデータ作成支援装置100の機能構成例を示す図であり、また
図4は、実施例1におけるデータ作成支援方法のフロー例を示す図である。なお、
図3で例示する各機能等の働きについては既に述べたとおりである。
【0040】
この場合、データ作成支援装置100は、入力装置105を介して、例えばユーザによる操作にて、ニューラルネットワークモデルである学習済みモデル110と、そのテストデータ120を取得する(s10)。
【0041】
その後、データ作成支援装置100の不確実性推論部112は、上述のテストデータ120を学習済みモデル110に与えることで、当該テストデータ120に対する推定結果の不確実性の評価値124として、当該推定結果の分布の分散を得る(s11)。
【0042】
また、データ作成支援装置100の不確実性逆伝播部111は、上述のs11で得た分散の値を損失とした逆伝播処理を実行し、当該テストデータ120の勾配データ123を取得する(s12)。
【0043】
なお、機械学習アルゴリズムにおける逆伝播処理や、それに伴い勾配データを得る手法自体は既存技術を適宜に採用すればよい。
【0044】
また、データ作成支援装置100の微小変化付与部113は、上述のテストデータ120に所定の微小変化を与えることで、微小変化テストデータ122を複数生成する(s13)。この時、微小変化の方向性がユーザの開発意図等と異なる又はデータ特性からして好ましくない(例:文字や画像の主たる形状などが全く異なり、人間でも認識が難しくなる方向へ変化するもの。例えば、耳が特徴的な動物の耳画像の有無や外形を明らかに改変する変化、など)ものとなることは回避する必要がある。
【0045】
そのため、データ作成支援装置100は、そうした微小変化の好適な方向性を示す微小変化候補ベクトル121を、予めユーザから指定を受けて、又は所定の手法により取得し、上述の微小変化に際して適用するものとする。
【0046】
この手法としては、例えば、上述の勾配データが示す勾配と類似する微小変化の方向、すなわちベクトルを特定するものを想定できる。
【0047】
続いて、データ作成支援装置100の勾配偏差比較部114は、上述のように作成した
複数の微小変化テストデータ122それぞれと、テストデータ120との偏差を算定し、ここまでに得ている推定結果の分散(不確実性の情報)、勾配データ123、及び偏差に基づき、推定結果の分散(不確実性)が上昇又は減少する微小変化又は当該微小変化を与えた微小変化テストデータを、不確実性テストデータ125として特定、保持し(s14)、処理を終了する。
【0048】
この場合、データ作成支援装置100の勾配偏差比較部114は、微小変化テストデータ122のうち不確実性テストデータ125とするものの特定に際し、微小変化テストデータ122と勾配データを比較して、勾配データが示す勾配と最も類似しているものを特定する。類似の判定は、例えば、各微小変化テストデータ122と勾配データとの各ベクトルの内積を算定し、算定値が最も大きいものが類似度最大とする概念を採用できる。
【0049】
こうした、学習済みモデル110による推定結果の平均や分散の値を得るアルゴリズムとしては、ベイジアンニューラルネットワーク又はその近似手法のMCドロップアウト(Monte Carlo Dropout Sampling)を採用すればよい。よって、データ作成支援装置100における機械学習プログラム1021は、こうしたMCドロップアウトのアルゴリズムを予め実装し利用可能であるものとする。
【0050】
上述のフローが示す不確実性の特定や、微小変化テストデータ122の生成に際しては、
図5に示すように、まず、ベースとなるテストデータX1を学習済みモデル110に与えることで、上述のMCドロップアウトによる処理にて、当該テストデータX1に関して得られる推論結果の平均、分散の各値を特定することになる。
【0051】
また、ここで得た不確実性の値である分散を損失として、テストデータX1に関する逆伝播処理を実行することで、その勾配データを取得する。
【0052】
また、データ作成支援装置100の微小変化付与部113は、上述のテストデータX1に所定の微小変化を与えることで、微小変化テストデータX2を複数生成する。こうして作成した複数の微小変化テストデータX2のうち、推定結果の分散(不確実性)が上昇する微小変化又は当該微小変化を与えた微小変化テストデータを、不確実性テストデータ125として取得、保持することとなる。
【0053】
なお、こうした分散や勾配データの特定や、微小変化テストデータ生成に際し、
図6に例示するように、テストデータを入力として、学習済みモデル110に含まれる中間層のニューロンの出力をランダムに0にして推論結果を出力する、ドロップアウト推論の処理を複数回実行するとすればさらに好適である。
【0054】
この場合、データ作成支援装置100は、当該ドロップアウト推論の結果を複数取得し、当該複数のドロップアウト推論結果に関する分散を不確実性として特定することになる。
【0055】
こうした処理を行うことで、いわゆるオーバーフィッティングの問題への効果的に対処を、限られたリソースで効率的に実行することが可能となる。
【0056】
また
図6にて示すように、データ作成支援装置100が、複数の学習済みモデル110を予め保持した構成を想定してもよい。
【0057】
この場合、データ作成支援装置100は、複数の学習済みモデル110それぞれに、テストデータを入力することで、複数の学習済みモデル110それぞれによる推論結果を取得し、当該推論結果に関する分散を集計(例:各分散の値の平均算定)することで、当該
テストデータの不確実性データを得ることとなる。
<実施例2>
続いて、実施例2におけるデータ作成支援方法のフロー例について図に基づき説明する。
図8は、実施例2におけるデータ作成支援装置100の機能構成例を示す図であり、また、
図9は、実施例2におけるデータ作成支援方法のフロー例を示す図である。なお、
図8の構成のうち、不確実性データ表示部115が、実施例1(
図3の構成)における構成との差分となる。
【0058】
この場合、不確実性データ表示部115は、勾配偏差比較部114が得た不確実性テストデータ125の情報を、予め保持する画面フォーマットにセットするなどして可視化データ126を生成する(s20)。
【0059】
また、不確実性データ表示部115は、上述の可視化データ126を出力装置106にて表示させ(s21)、処理を終了する。
【0060】
この可視化データ126を表示させた画面G10の例を、
図10に示す。可視化データ126は、
図1の画面G10で示すように、例えば「5」を示す画像を微小変化テストデータG11とし、それらをその微小変化の方向性ごとの軸平面に配列したものとなる。ここでの例は、「5」の画像の回転角の変化を横軸に、明度変化を縦軸にした軸平面を想定している。
【0061】
図示するように、「5」の画像は、軸平面上で右にいくほど右回転し、左にいくほど左回転した形となっている。また、そうした「5」の画像は、軸平面上で上にいくほど明度が上昇し、下にいくほど明度が下降した形となっている。
【0062】
さらに、画面G10においては、それぞれの微小変化テストデータである各画像G11には、その不確実性の評価値である分散の値G12が対応付けられている。
【0063】
また、画面G10においては、微小変化テストデータの各画像G11と、当該微小変化テストデータである各画像G11の分散の値G12との組に関して、その分散の値が所定の閾値を上回っている又は下回っていることについて示すべく、例えば、当該画像G11に関して色や模様を他の画像G11と異ならせる強調表示等を行うものとする。
図10の例では、破線G13の範囲内の画像については、その分散が許容範囲内に収まっていることをユーザが指定しているが、特定の画像については許容範囲内に収まっていない。
【0064】
また、画面G20で示すように、各画像G11の分散の値を、その値の大きさに応じた色彩で順次変化させて表示するとしてもよい。こうした表示制御を行う場合、画面G20のごとくヒートマップ表示の形態となる。
<実施例3>
続いて、実施例3におけるデータ作成支援方法のフロー例について図に基づき説明する。
図11は実施例3におけるデータ作成支援装置100の機能構成例を、
図12は、実施例3におけるデータ作成支援方法のフロー例を、また
図13は実施例3における機能概要例をそれぞれ示す図である。
【0065】
この実施例3は、テストデータとは別に、訓練データ作成を行う形態に該当する。この場合、データ作成支援装置100は、記憶装置101において、教師あり機械学習に用いる訓練データ130を正解ラベルとともに複数保持しているものとする。
【0066】
この場合、データ作成支援装置100の微小変化付与部113は、記憶装置101において保持する訓練データ130(正解ラベル付帯)を入力として、微小変化テストデータ
122に含まれる微小変化ベクトル131を用いて、訓練データ130を微小変化した微小変化訓練データ132を生成する(s30)。
【0067】
また、データ作成支援装置100のモデル学習部117は、上述のs30で得た微小変化訓練データ132を、機械学習プログラム1021の学習済みモデル110に与えることで、当該学習済みモデル110(すなわちニューラルネットワークモデル)の再学習処理をさらに実行する(s31)。
【0068】
この場合、データ作成支援装置100の不確実性推論部112は、再学習を経た学習済みモデル110を用いて、所定のテストデータを入力として上述の分散など不確実性の評価値124を特定する(s32)。
【0069】
また、不確実性収束判定部116は、当該不確実性すなわち分散が所定の閾値を上回っている又は下回っているか判定し、その判定結果を不確実性収束の判定結果134として取得する(s33)。ここまでの判定に至る各処理は、例えば、分散の値が閾値に達するまで繰り返し実行することとする。
【0070】
不確実性収束判定部116は、ここで得た判定結果134を、例えば出力装置106にて表示するものとする。
【0071】
また、データ作成支援装置100のは、上述の不確実性である分散が所定の閾値を上回っている(又は下回っている)場合、微小変化訓練データ132を学習済みモデル110に与えることで、当該学習済みモデル110の再学習処理をさらに進め(s34)、処理を終了する。
【0072】
以上、本発明を実施するための最良の形態などについて具体的に説明したが、本発明はこれに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【0073】
こうした本実施形態によれば、大量のテストデータを事前に用意しなくても、仕様(様々な微小変化)に対する学習モデルの頑健性を検証可能となり、また、学習モデルにとって不確実なデータ(弱点)を用いて頑健性を向上することができる。
【0074】
すなわち、教師あり機械学習の学習モデルに関する、頑健性の検証や向上を効率的に図ることが可能となる。
【0075】
本明細書の記載により、少なくとも次のことが明らかにされる。すなわち、本実施形態のデータ作成支援装置において、前記演算装置は、前記不確実性の特定処理において、前記テストデータを入力として、前記ニューラルネットワークモデルに含まれるニューロンの出力をランダムに0にして推論結果を出力する、ドロップアウト推論の処理を複数回実行し、当該ドロップアウト推論の結果を複数取得し、当該複数のドロップアウト推論結果に関する分散を前記不確実性として特定するものである、としてもよい。
【0076】
これによれば、ベイジアンニューラルネットワークのように、必要なリソースが大きくなりがちな手法と比べて、効率的かつ迅速に推論を行って分散の情報を得ることが可能となる。ひいては、教師あり機械学習の学習モデルに関する、頑健性の検証や向上をより効率的に図ることが可能となる。
【0077】
また、本実施形態のデータ作成支援装置において、前記演算装置は、前記勾配情報の取得に際し、前記複数取得した前記ドロップアウト推論の結果の分散を損失関数とした逆伝播処理により前記テストデータの勾配を算出し、前記変化テストデータの特定に際し、前
記微小変化テストデータと前記勾配情報を比較して、前記勾配情報が示す勾配と最も類似している微小変化テストデータと微小変化ベクトルを特定するものである、としてもよい。
【0078】
これによれば、勾配の傾向が近い微小変化をさせたテストデータを効率的に特定、生成し、学習モデルに提供することが可能となる。ひいては、教師あり機械学習の学習モデルに関する、頑健性の検証や向上をより効率的に図ることが可能となる。
【0079】
また、本実施形態のデータ作成支援装置において、前記演算装置は、前記ドロップアウト推論の処理に際し、前記ニューラルネットワークの中間層までの推論結果を用いるものである、としてもよい。
【0080】
これによれば、ニューラルネットワークにおいて、テストデータが示す事象に関する部分的な認識に対しても不確実性を計測可能となる。ひいては、教師あり機械学習の学習モデルに関する、頑健性の検証や向上をより効率的に図ることが可能となる。
【0081】
また、本実施形態のデータ作成支援装置において、前記演算装置は、複数の前記ニューラルネットワークモデルそれぞれに、前記テストデータを入力することで、前記複数のニューラルネットワークそれぞれによる推論結果を取得し、当該推論結果に関する分散を前記不確実性として特定するものである、としてもよい。
【0082】
これによれば、学習済モデルを複数内包する巨大なモデルを1つのモデルとして、上述の部分的な認識に対する不確実性の計測をより効率的に行うことが期待される。ひいては、教師あり機械学習の学習モデルに関する、頑健性の検証や向上をより効率的に図ることが可能となる。
【0083】
また、本実施形態のデータ作成支援装置において、前記演算装置は、前記微小変化テストデータと、前記微小変化テストデータの不確実性情報との組を表示する処理をさらに実行するものである、としてもよい。
【0084】
これによれば、機械学習モデルの管理・構築担当者等は、テストデータにおける微小変化の方向性とその場合の不確実性の観点について、視覚的な情報を得て、その確認を容易なものとできる。また、そうして確認した結果は、その後の作業にフィードバックできることになる。ひいては、教師あり機械学習の学習モデルに関する、頑健性の検証や向上をより効率的に図ることが可能となる。
【0085】
また、本実施形態のデータ作成支援装置において、前記演算装置は、前記微小変化テストデータと、前記微小変化テストデータの不確実性情報との組と、前記不確実性情報が所定の閾値を上回っている又は下回っていることを表示する処理をさらに実行するものである、としてもよい。
【0086】
これによれば、機械学習モデルの管理・構築担当者等は、テストデータにおける微小変化の方向性とその場合の不確実性の観点について視覚的な情報を得て、その微小変化の方向性の良否を的確に判断し、その後の作業にフィードバックできることになる。ひいては、教師あり機械学習の学習モデルに関する、頑健性の検証や向上をより効率的に図ることが可能となる。
【0087】
また、本実施形態のデータ作成支援装置において、前記記憶装置は、 教師あり機械学
習に用いる訓練データを正解ラベルとともに複数保持し、前記演算装置は、前記訓練データを入力として、前記微小変化テストデータに含まれる微小変化ベクトルを用いて、前記
訓練データを微小変化した微小変化訓練データを生成し、前記微小変化訓練データを前記ニューラルネットワークモデルに与えることで、前記ニューラルネットワークモデルの再学習処理をさらに実行するものである、としてもよい。
【0088】
これによれば、訓練データについてもテストデータと同様に微小変化させて、頑健性の検証や向上の効率化を図ることが可能となる。ひいては、教師あり機械学習の学習モデルに関する、頑健性の検証や向上をより効率的に図ることが可能となる。
【0089】
また、本実施形態のデータ作成支援装置において、前記演算装置は、 前記再学習を経
た前記ニューラルネットワークモデルを用いて、前記テストデータを入力として前記不確実性を特定し、当該不確実性が所定の閾値を上回っている又は下回っている旨についての情報を表示する処理と、前記不確実性が所定の閾値を上回っている又は下回っている場合、前記微小変化訓練データを前記ニューラルネットワークモデルに与えることで、前記ニューラルネットワークモデルの再学習処理を実行するものである、としてもよい。
【0090】
これによれば、テストデータに基づく不確実性の良否に応じて微小変化訓練データを利用し、ニューラルネットワークモデルの頑健性の検証や向上の効率化をさらに図ることが可能となる。ひいては、教師あり機械学習の学習モデルに関する、頑健性の検証や向上をより効率的に図ることが可能となる。
【符号の説明】
【0091】
100 データ作成支援装置
101 記憶装置
102 プログラム
1021 機械学習プログラム
103 メモリ
104 演算装置
105 入力装置
106 出力装置
110 学習済みモデル(ニューラルネットワークモデル)
111 不確実性逆伝播部
112 不確実性推論部
113 微小変化付与部
114 勾配偏差比較部
115 不確実性データ表示部
116 不確実性収束判定部
117 モデル学習部
120 テストデータ
121 微小変化候補ベクトル
122 微小変化テストデータ
123 勾配データ
124 不確実性評価値
125 不確実性テストデータ
126 可視化データ
130 訓練データ
131 微小変化ベクトル
132 微小変化訓練データ
133 不確実性評価値
134 判定結果