(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024040934
(43)【公開日】2024-03-26
(54)【発明の名称】選別装置、選別方法、および選別プログラム
(51)【国際特許分類】
G06N 20/00 20190101AFI20240318BHJP
G06V 10/72 20220101ALI20240318BHJP
【FI】
G06N20/00 130
G06V10/72
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2022145597
(22)【出願日】2022-09-13
(71)【出願人】
【識別番号】000001122
【氏名又は名称】株式会社日立国際電気
(74)【代理人】
【識別番号】110001678
【氏名又は名称】藤央弁理士法人
(72)【発明者】
【氏名】山根 慶大
(72)【発明者】
【氏名】長谷川 圭吾
(72)【発明者】
【氏名】小野 豪一
(72)【発明者】
【氏名】北山 晃
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096GA51
5L096KA04
(57)【要約】 (修正有)
【課題】追加学習に用いるデータの選別精度の向上を図る選別装置、方法及びプログラムを提供する。
【解決手段】方法は、各々正解ラベルが付与された学習用データ群にアクセス可能であり、学習用データ群で学習された予測モデルに正解ラベルが付与されていない選別対象データを入力した結果出力される第1予測結果の曖昧さを示す第1不確実度に基づいて、選別対象データが予測モデルの追加学習にどの程度寄与するかを示す第1学習効果評価値を算出する算出処理S602と、算出処理で算出した第1学習効果評価値に基づいて、選別対象データを予測モデルの追加学習用データ又は非追加学習用データに選別する選別処理S603と、選別処理によって選別された追加学習用データについて、正解ラベルを付与可能に設定する設定処理S604と、設定処理によって正解ラベルが付与された追加学習用データを学習用データ群に追加する追加処理S605と、を実行する。
【選択図】
図6
【特許請求の範囲】
【請求項1】
プログラムを実行するプロセッサと、前記プログラムを記憶する記憶デバイスと、を有する選別装置であって、
各々正解ラベルが付与された学習用データ群にアクセス可能であり、
前記プロセッサは、
前記学習用データ群で学習された予測モデルに前記正解ラベルが付与されていない選別対象データを入力した結果出力される第1予測結果の曖昧さを示す第1不確実度に基づいて、前記選別対象データが前記予測モデルの追加学習にどの程度寄与するかを示す第1学習効果評価値を算出する算出処理と、
前記算出処理によって算出された第1学習効果評価値に基づいて、前記選別対象データを前記予測モデルの追加学習用データまたは非追加学習用データに選別する選別処理と、
前記選別処理によって選別された追加学習用データについて、前記正解ラベルを付与可能に設定する設定処理と、
前記設定処理によって前記正解ラベルが付与された前記追加学習用データを前記学習用データ群に追加する追加処理と、
を実行することを特徴とする選別装置。
【請求項2】
請求項1に記載の選別装置であって、
前記算出処理では、前記プロセッサは、前記第1予測結果に基づいて前記第1不確実度を算出する、
ことを特徴とする選別装置。
【請求項3】
請求項1に記載の選別装置であって、
前記プロセッサは、
前記選別処理によって前記非追加学習用データに選別された選別対象データを、当該選別対象データを含む選別対象データ群から削除する削除処理と、
を実行することを特徴とする選別装置。
【請求項4】
請求項1に記載の選別装置であって、
前記算出処理では、前記プロセッサは、前記第1不確実度を前記第1学習効果評価値に変換する変換式に、前記第1不確実度を入力することにより、前記第1学習効果評価値を算出する、
ことを特徴とする選別装置。
【請求項5】
請求項4に記載の選別装置であって、
各々正解ラベルが付与された参照データ群にアクセス可能であり、
前記プロセッサは、
前記予測モデルに前記参照データ群の各々の参照データを入力した結果出力される前記参照データごとの第2予測結果の曖昧さを示す第2不確実度に基づいて、前記参照データ群を複数の部分集合に分割し、前記複数の部分集合の各々で前記予測モデルを追加学習し、追加学習後における前記予測モデルの性能評価値を前記部分集合ごとに算出する分割学習処理と、
前記部分集合ごとの前記第2不確実度の代表値と、前記分割学習処理によって算出された前記部分集合ごとの前記性能評価値と、に基づいて、前記変換式を生成する生成処理と、を実行し、
前記算出処理では、前記プロセッサは、前記生成処理によって生成された変換式に、前記第1不確実度を入力することにより、前記第1学習効果評価値を算出する、
ことを特徴とする選別装置。
【請求項6】
請求項5に記載の選別装置であって、
前記分割学習処理では、前記プロセッサは、前記第2不確実度の大きさ順の一定数の前記参照データを前記部分集合の単位として、前記参照データ群を前記複数の部分集合に分割する、
ことを特徴とする選別装置。
【請求項7】
請求項5に記載の選別装置であって、
前記生成処理では、前記プロセッサは、前記部分集合ごとの前記第2不確実度の代表値と、前記部分集合ごとの前記性能評価値と、の相関に基づいて、前記変換式を生成する、
ことを特徴とする選別装置。
【請求項8】
請求項1に記載の選別装置であって、
前記選別処理では、前記プロセッサは、前記第1不確実度が第1しきい値以下で、かつ、前記第1学習効果評価値が第2しきい値以上となる前記選別対象データを前記追加学習用データに選別する、
ことを特徴とする選別装置。
【請求項9】
請求項1に記載の選別装置であって、
前記選別処理では、前記プロセッサは、前記第1不確実度が第1しきい値より大きく、かつ、前記第1学習効果評価値が第3しきい値以下となる前記選別対象データを前記非追加学習用データに選別する、
ことを特徴とする選別装置。
【請求項10】
請求項1に記載の選別装置であって、
前記プロセッサは、
前記追加処理による追加前の前記予測モデルに前記選別対象データを入力した結果出力される前記第1不確実度と、前記追加処理による追加後の前記学習用データ群で追加学習された前記予測モデルに前記選別対象データを入力した結果出力される第3不確実度と、の差分に基づいて、前記選別対象データを選別対象外に決定する決定処理を実行し、
前記算出処理では、前記プロセッサは、前記第3不確実度に基づいて、前記選別対象データが前記追加学習後の前記予測モデルの追加学習にどの程度寄与するかを示す第2学習効果評価値を算出し、
前記選別処理では、前記プロセッサは、前記第2学習効果評価値に基づいて、前記決定処理によって前記選別対象外に決定されなかった前記選別対象データを前記追加学習後の前記予測モデルの追加学習用データまたは非追加学習用データに選別する、
ことを特徴とする選別装置。
【請求項11】
プログラムを実行するプロセッサと、前記プログラムを記憶する記憶デバイスと、を有する選別装置が実行する選別方法であって、
前記選別装置は、各々正解ラベルが付与された学習用データ群にアクセス可能であり、
前記選別方法は、
前記プロセッサが、
前記学習用データ群で学習された予測モデルに前記正解ラベルが付与されていない選別対象データを入力した結果出力される第1予測結果の曖昧さを示す第1不確実度に基づいて、前記選別対象データが前記予測モデルの追加学習にどの程度寄与するかを示す第1学習効果評価値を算出する算出処理と、
前記算出処理によって算出された第1学習効果評価値に基づいて、前記選別対象データを前記予測モデルの追加学習用データまたは非追加学習用データに選別する選別処理と、
前記選別処理によって選別された追加学習用データについて、前記正解ラベルを付与可能に設定する設定処理と、
前記設定処理によって前記正解ラベルが付与された前記追加学習用データを前記学習用データ群に追加する追加処理と、
を実行することを特徴とする選別方法。
【請求項12】
各々正解ラベルが付与された学習用データ群にアクセス可能なプロセッサに、
前記学習用データ群で学習された予測モデルに前記正解ラベルが付与されていない選別対象データを入力した結果出力される第1予測結果の曖昧さを示す第1不確実度に基づいて、前記選別対象データが前記予測モデルの追加学習にどの程度寄与するかを示す第1学習効果評価値を算出する算出処理と、
前記算出処理によって算出された第1学習効果評価値に基づいて、前記選別対象データを前記予測モデルの追加学習用データまたは非追加学習用データに選別する選別処理と、
前記選別処理によって選別された追加学習用データについて、前記正解ラベルを付与可能に設定する設定処理と、
前記設定処理によって前記正解ラベルが付与された前記追加学習用データを前記学習用データ群に追加する追加処理と、
を実行させることを特徴とする選別プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データを選別する選別装置、選別方法、および選別プログラムに関する。
【背景技術】
【0002】
選別装置100はニューラルネットワークなどの公知の学習手段によりモデルを学習し、入力されたデータに基づく予測を出力する装置である。選別装置100は、入力されたデータに基づいて予測を行うモデルと、そのモデルをニューラルネットワークなどの公知の手段により生成する学習装置と、から構成される。たとえば、カメラで撮影された画像を入力として、その画像に映る物体が何であるかを出力する技術が知られている。
【0003】
ところで、選別装置は、様々なパターンのデータを学習することでモデルの予測性能を向上できるため、使用者は、センサ、カメラ、ユーザーインターフェース等から出力された大量のデータの中から、モデルの性能向上に寄与する学習効果の高いデータを選別する必要がある。そして、選別されたデータを用いて学習されたモデルは、予測性能の要求を満たす必要がある。
【0004】
しかし、データ数が非常に多い場合には、使用者が学習効果の高いデータを選別する作業に要する時間およびその人的コストが膨大になり、ひいてはモデルの生成に要する時間およびその人的コストが増大してしまう。
【0005】
また、学習効果の高低を判別するには、様々なデータで学習した際にモデルの性能がどう変化するかをあらかじめ把握しておく必要があり、選別作業者に高度なノウハウが求められるという課題がある。
【0006】
そこで、各データの学習効果の高低を表す指標を導入し、指標に基づいて学習効果の高いデータを選別することで、前述のデータ選別作業を自動化する技術が知られている(たとえば、下記特許文献1を参照)。
【0007】
特許文献1の画像検査装置は、複数の画像の良否判定の安定性を示す安定性評価値を算出し、その安定性評価値に基づいて、識別器に追加学習させる候補画像を使用者に提示する。画像検査装置は、提示された候補画像の中から、使用者による追加学習画像としての指定を受け付ける。画像検査装置は、使用者により指定された追加学習画像を良品画像又は不良品画像として追加学習し、識別器を更新する。
【0008】
また、学習効果の高低を表す指標の算出方法は様々だが、実際の学習効果と相関しない場合がある。たとえば、モデルが出力する予測結果の不確実度を算出し、不確実度が高いデータを学習効果が高いデータであるとして選別する手法がある(たとえば、下記特許文献2を参照)。
【0009】
特許文献2の情報処理装置は、分割部と、算出部と、統合部と、を備える。分割部は、データを入力して処理結果を出力する処理の対象とする入力データを、複数の部分データに分割する。算出部は、複数の部分データごとに処理を実行し、処理の不確実性を示す複数の不確実度を算出する。統合部は、複数の不確実度を統合し、入力データの不確実度として出力する。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】特開2020-187072号公報
【特許文献2】特開2021-149818号公報
【発明の概要】
【発明が解決しようとする課題】
【0011】
しかしながら、被選別対象のデータの中には、母集団から逸脱した外れ値データや、モデルの学習に必要となる理想的な予測結果を表す正解ラベルが誤って付与されたデータなど、学習効果の低いデータが含まれている。
【0012】
このような一部の学習効果の低いデータに対しては、前述の不確実度が高い値が得られる。したがって、不確実度が高いデータを学習効果が高いデータであるとして選別する手法においては、学習効果の低いデータを誤って選別してしまい、それらのデータを学習することでモデル性能が劣化する。
【0013】
本発明は、追加学習に用いるデータの選別精度の向上を図ることを目的とする。
【課題を解決するための手段】
【0014】
本願において開示される発明の一側面となる選別装置は、プログラムを実行するプロセッサと、前記プログラムを記憶する記憶デバイスと、を有する選別装置であって、各々正解ラベルが付与された学習用データ群にアクセス可能であり、前記プロセッサは、前記学習用データ群で学習された予測モデルに前記正解ラベルが付与されていない選別対象データを入力した結果出力される第1予測結果の曖昧さを示す第1不確実度に基づいて、前記選別対象データが前記予測モデルの追加学習にどの程度寄与するかを示す第1学習効果評価値を算出する算出処理と、前記算出処理によって算出された第1学習効果評価値に基づいて、前記選別対象データを前記予測モデルの追加学習用データまたは非追加学習用データに選別する選別処理と、前記選別処理によって選別された追加学習用データについて、前記正解ラベルを付与可能に設定する設定処理と、前記設定処理によって前記正解ラベルが付与された前記追加学習用データを前記学習用データ群に追加する追加処理と、を実行することを特徴とする。
【発明の効果】
【0015】
本発明の代表的な実施の形態によれば、追加学習に用いるデータの選別精度の向上を図ることができる。前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【0016】
【
図1】
図1は、選別装置のハードウェア構成例を示すブロック図である。
【
図2】
図2は、選別装置の機能的構成例を示すブロック図である。
【
図3】
図3は、モデル生成部の詳細な機能的構成を示すブロック図である。
【
図4】
図4は、実施例1にかかるデータ選別部の詳細な機能的構成を示すブロック図である。
【
図5】
図5は、分割学習部および変換式生成部の具体例を示す説明図である。
【
図6】
図6は、実施例1にかかる選別装置によるデータ選別処理手順例を示すフローチャートである。
【
図7】
図7は、分割学習部および変換式生成部による変換式生成処理手順例を示すフローチャートである。
【
図8】
図8は、実施例2にかかるデータ選別部の詳細な機能的構成を示すブロック図である。
【
図9】
図9は、実施例2にかかる選別装置によるデータ選別処理手順例を示すフローチャートである。
【
図10】
図10は、決定部による決定処理(ステップS900)の詳細な処理手順例を示すフローチャートである。
【発明を実施するための形態】
【実施例0017】
<選別装置のハードウェア構成例>
図1は、選別装置のハードウェア構成例を示すブロック図である。選別装置100は、プロセッサ101と、記憶デバイス102と、入力デバイス103と、出力デバイス104と、通信インターフェース(通信IF)105と、を有する。プロセッサ101、記憶デバイス102、入力デバイス103、出力デバイス104、および通信IF105は、バス106により接続される。プロセッサ101は、選別装置100を制御する。記憶デバイス102は、プロセッサ101の作業エリアとなる。また、記憶デバイス102は、各種プログラムやデータを記憶する非一時的なまたは一時的な記録媒体である。記憶デバイス102としては、たとえば、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)、フラッシュメモリがある。入力デバイス103は、データを入力する。入力デバイス103としては、たとえば、キーボード、マウス、タッチパネル、テンキー、スキャナ、マイク、センサがある。出力デバイス104は、データを出力する。出力デバイス104としては、たとえば、ディスプレイ、プリンタ、スピーカがある。通信IF105は、ネットワークと接続し、データを送受信する。
【0018】
<選別装置100の機能的構成例>
図2は、選別装置100の機能的構成例を示すブロック図である。選別装置100は、データの選別を支援する計算機であり、正解ラベル設定部201と、モデル生成部202と、データ選別部203と、選別対象データプール210と、学習用データ記憶部211と、評価用データ記憶部212と、を有する。
【0019】
正解ラベル設定部201、モデル生成部202、およびデータ選別部203は、具体的には、たとえば、
図1に示した記憶デバイス102に記憶されたプログラムをプロセッサ101に実行させることにより実現される。また、選別対象データプール210、学習用データ記憶部211、および評価用データ記憶部212は、
図1に示した記憶デバイス102により実現される。
【0020】
選別対象データプール210は、選別対象データを記憶するデータベースである。選別対象データは、画像データでもよく、テキストデータでもよい。選別対象データには、正解ラベルは付与されていない。
【0021】
学習用データ記憶部211は、学習用データを記憶するデータベースである。学習用データは、モデル生成部202による予測モデル(以下、単に「モデル」)Mの学習の都度、選別対象データプール210の中からランダムに選択される選別対象データ(ただし、評価用データを除く)である。学習用データには正解ラベルが付与されている。評価用データは、モデル生成部202によるモデルMの性能評価において使用される選別対象データであり、選別対象データプール210の中からあらかじめ選択される。評価用データには正解ラベルが付与されている。
【0022】
正解ラベル設定部201は、選別対象データプール210から選別対象データを抽出し、抽出した選別対象データに正解ラベルを付与可能に設定する。具体的には、たとえば、正解ラベル設定部201は、抽出した選別対象データを表示させる。ユーザの操作により、正解ラベルの入力が受け付けられると、正解ラベル付きの学習用データおよび正解ラベル付きの評価用データが設定される。
【0023】
モデル生成部202は、学習用データ記憶部211に格納された正解ラベル付きの学習用データを入力して、予測を行うモデルMを生成する。また、モデル生成部202は、評価用データ記憶部212に格納された評価用データに対して生成したモデルMによる予測を行う。モデル生成部202は、正解ラベルと予測結果との差分の大小をモデルMの性能とみなして、モデルMの性能評価値を算出する。モデルMの性能評価値は、正解ラベルと予測結果との差分が小さいほど高い値となる。
【0024】
データ選別部203は、モデル生成部202による予測結果に基づいて追加学習対象となるデータ(以下、追加学習用データ)を選別対象データプール210の中から選別する。データ選別部203は、選別対象データプール210から選別した追加学習用データについて、正解ラベル設定部201に正解ラベルの設定を要請する。この場合、要請を受けた正解ラベル設定部201は、データ選別部203によって選別された追加学習用データについて正解ラベルを設定する。
【0025】
図3は、モデル生成部202の詳細な機能的構成を示すブロック図である。モデル生成部202は、モデル学習部301と、モデル評価部302と、予測処理部303と、を有する。モデル学習部301は、学習用データ記憶部211に格納された正解ラベル付きの学習用データを入力して、予測を行うモデルMを学習する。
【0026】
モデル評価部302は、評価用データ記憶部212に格納された正解ラベル付きの評価用データを入力して、モデル学習部301によって生成されたモデルMを評価する。具体的には、たとえば、モデル評価部302は、評価用データをモデルMに入力した結果出力される出力データと、評価用データに付与された正解ラベルと、の差に基づいて、損失関数に基づく性能評価値を算出する。性能評価値は、たとえば、高いほど性能が良いことを示す。この性能評価値はモデル学習部301に渡され、モデル学習部301は、性能評価値が高くなるようにモデルMを再学習する。
【0027】
予測処理部303は、モデル学習部301によって生成されたモデルMを用いて選別対象データプール210に格納された選別対象データに対して予測処理を実行し、予測結果を出力する。データ選別部203は、予測処理部303によって出力された予測結果に基づいて、選別対象データを選別する。
【0028】
図4は、実施例1にかかるデータ選別部203の詳細な機能的構成を示すブロック図である。
図4に示すように、データ選別部203は、不確実度算出部401と、学習効果算出部402と、選別処理部403と、変換式記憶部404と、参照データ記憶部405と、分割学習部406と、変換式生成部407と、を有する。不確実度算出部401、学習効果算出部402、選別処理部403、分割学習部406、および変換式生成部407は、具体的には、たとえば、
図1に示した記憶デバイス102に記憶されたプログラムをプロセッサ101に実行させることにより実現される。変換式記憶部404および参照データ記憶部405は、
図1に示した記憶デバイス102により実現される。
【0029】
不確実度算出部401は、モデル生成部202によって出力された予測結果に基づいて、たとえば、特許文献2に示したように、予測結果の不確実性を示す不確実度を算出する。不確実性とは、モデルMによるデータに対する予測結果の曖昧さを表す指標である。不確実性を示す度合いが不確実度である。
【0030】
すなわち、不確実度は、生成されたモデルMによる予測結果の確実性が高いか低いかを把握可能な評価値であり、学習効果に相関がある。一般的には、不確実度が高い場合は、その選別対象データに対するモデルMの予測結果が不確実であり、その選別対象データは追加学習の必要が高いデータであると判断される。一方、不確実度の値が低い選別対象データは、その選別対象データに対するモデルMによる予測結果が確実であり、その選別対象データは追加学習の必要性が低いデータであると判断される。
【0031】
不確実度は、具体的には、たとえば、確率最大の正解ラベルの確率(=予測結果)の低さ、1番目に確率の高い正解ラベルと2番目に確率の高い正解ラベルとの確率差、または、モデルMの予測分布のエントロピーの大きさであったりする。
【0032】
学習効果算出部402は、不確実度算出部401によって算出された不確実度から、変換式記憶部404に格納された変換式に基づいて学習効果評価値を算出する。学習効果評価値とは、モデルMの性能向上に寄与する学習効果を評価する値である。すなわち、学習効果評価値とは、正解ラベルが付与されていない選別対象データをモデルMの追加学習に用いると性能が向上する(すなわち、学習効果がある)ことを示す評価値であり、学習効果評価値が大きい選別対象データほど追加学習用データに選別すべきであることを示す。
【0033】
選別処理部403は、選別対象データプール210に格納された選別対象データを、学習効果評価値に基づいて追加学習用データまたは非追加学習用データに選別する。具体的には、たとえば、選別処理部403は、学習効果算出部402からの学習効果評価値がしきい値以上であれば、その学習効果評価値の算出元となった予測結果に対応する選別対象データを追加学習用データに選別し、学習効果評価値がしきい値以上でなければ、非追加学習用データに選別する。そして、選別処理部403は、追加学習用データについて正解ラベル設定部201に正解ラベル設定を要請する。
【0034】
なお、選別処理部403は、正解ラベル設定部201に正解ラベル設定を要請されなかった選別対象データ(すなわち、非追加学習用データ)を、選別対象データプール210から削除してもよい。これにより、選別対象データプール210によるメモリ使用量の低減化を図ることができる。
【0035】
変換式記憶部404は、変換式を記憶する。変換式は、任意の予測結果に対する不確実度を、その選別対象データを用いてモデルMを学習した際の学習効果の高低を表す学習効果評価値に変換する変換式である。変換式の目的は、不確実度の高い選別対象データであっても、選別対象データプール210内の選別対象データ群から逸脱した外れ値データや選別対象データに付与された正解ラベルに誤りがあるといった学習効果の低い選別対象データを取り除くことである。
【0036】
このような選別対象データは、不確実度が高くても変換式によって学習効果評価値が低いと判断される。また、不確実度が高く、前記学習効果の低い選別対象データ以外の選別対象データについては学習効果評価値が高く算出される。したがって、選別対象データプール210に、追加学習に用いるべきでない選別対象データが含まれる場合であっても、追加学習の必要性が高い選別対象データを精度よく選別することが可能となる。
【0037】
参照データ記憶部405は、参照データを記憶する。参照データは、選別対象データプール210から抽出されたデータであり、学習用データと同様、正解ラベルが付与されている。
【0038】
分割学習部406は、モデル生成部202によって生成されたモデルMを取得する。分割学習部406は、取得したモデルMに、参照データ記憶部405に格納された参照データを入力して予測結果を出力する。分割学習部406は、予測結果を不確実度算出部401に出力して、不確実度算出部401に予測結果の不確実度を算出させる。分割学習部406は、予測結果ごとの不確実度を取得して、当該不確実度に基づいて参照データ群を複数のバッチに分割する。分割学習部406は、バッチを用いてモデルMの追加学習を実行する。
【0039】
変換式生成部407は、分割学習部406においてバッチに含まれる参照データの平均不確実度と、分割学習部406において追加学習されたバッチごとのモデルの性能評価値と、の相関から、不確実度を学習効果評価値に変換する変換式を生成し、変換式記憶部404に格納する。
【0040】
図5は、分割学習部406および変換式生成部407の具体例を示す説明図である。分割学習部406は、参照データ記憶部405に格納された参照データ群Rsの各参照データRを不確実度算出部401に出力し、不確実度算出部401から各参照データRの不確実度を取得する。
【0041】
分割学習部406は、各参照データRの不確実度の昇順に参照データRを配列し、配列した参照データ群Rsをk個(kは2以上の整数)のバッチB1~Bkに分割する。バッチB1~Bkを区別しない場合、バッチBi(iは1≦i≦kを満たす整数)と表記する。
【0042】
たとえば、参照データRの数がNで、k個のバッチを生成する場合、不確実度が低い順に参照データRを並べ、1番目からN/k番目までの参照データRを1つ目のバッチB1とし、つぎに、(N/k+1)番目から2N/kの参照データRを2つ目のバッチB2とする、という流れで参照データ群Rsをk個のバッチB1~Bkに分割する。その後、生成された複数のバッチB1~Bkを用いてそれぞれモデルMの追加学習L1~Lkを実行し、バッチ数kと同数のモデルM1~Mkを生成する。
【0043】
変換式生成部407は、分割学習部406において各モデルM1~Mkの追加学習L1~Lkに用いられたバッチB1~Bkの各々に含まれる参照データRの平均不確実度を算出する。なお、ここでは、参照データRの不確実度の平均値を求めたが、平均値に限らず、バッチBi内における不確実度の最大値、最小値、中央値のような代表値(代表不確実度)でもよい。
【0044】
また、変換式生成部407は、モデル評価部302と同様に、評価用データを用いて各モデルM1~Mkの性能評価値を算出する。そして、変換式生成部407は、バッチBiについて、参照データRの平均不確実度とモデルMiの性能評価値との相関によりデータ点P1~Pkを求め、求めたデータ点P1~Pkのフィッティングにより、不確実度を性能評価値に変換する変換式Fを生成して、変換式記憶部404に格納する。
【0045】
具体的には、たとえば、変換式生成部407は、横軸をバッチBiの平均不確実度とし、縦軸を学習Li後のモデルMiの性能評価値としたグラフ500において、データ点P1~Pkをプロットし、多項式近似により変換式Fを生成する。学習効果評価値が高い参照データRを多く含むバッチBiを追加学習したモデルMiについては、性能評価値がより向上する。したがって、バッチBiの平均不確実度とモデルMiの性能評価値の相関とによって生成された変換式Fに不確実度を入力した場合の出力を、学習効果を評価する学習効果評価値とし、データ選別部203に出力する。
【0046】
また、
図5に示したような変換式Fでは、データ点P1~Piまでは平均不確実度が大きくなるにつれて性能評価値が高くなるという関係にある。データ点Piを超えるとこのような関係はなくなり、性能評価値が低下するが、領域501では性能評価値が高いため、領域501内のデータ点については、不確実度が高く学習効果評価値が高い選別対象データを追加学習データに選別することができる。
【0047】
具体的には、たとえば、不確実度が第1しきい値T1以下で、かつ、変換式Fから出力される学習効果評価値が第2しきい値T2以上であれば、その選別対象データは、追加学習データに選別される。これにより、たとえば、学習効果評価値が高い選別対象データの選別漏れを抑制したり、学習効果評価値が低いにもかかわらず追加対象データに選別してしまうといった誤検出を抑制したりすることができる。
【0048】
また、領域501からさらに領域502のように平均不確実度が大きくなると、さらに性能評価値が低下する。したがって、選別装置100は、そのような選別対象データを選別対象外とすることにより、追加学習での使用を回避することができる。
【0049】
具体的には、たとえば、不確実度が第1しきい値T1より大きく、かつ、変換式Fから出力される学習効果評価値が第3しきい値T3(>T2)以下であれば、その選別対象データは、非追加学習データに選別される。これにより、たとえば、選別対象データ内の目標物が明瞭でない場合(たとえば、ピンボケ画像)やオクルージョンが発生している選別対象データを、不確実度が高くかつ学習効果評価値が低い選別対象データであるとして、選別対象外にすることができる。
【0050】
<データ選別処理>
図6は、実施例1にかかる選別装置100によるデータ選別処理手順例を示すフローチャートである。まず予測処理部303が、選別対象データプール210内のデータに対して、モデル学習部301が生成したモデルMを用いて予測を行い、予測結果を出力する(ステップS601)。
【0051】
つぎに、不確実度算出部401は、予測結果を入力として、予測結果の不確実度を算出する。そして、学習効果算出部402は、その不確実度を、変換式記憶部404に格納された変換式に入力して、性能評価値を算出する(ステップS602)。
【0052】
その後、選別処理部403は、変換された性能評価値に基づいて、選別対象データプール210内の選別対象データを追加学習用データに選別し、選別された追加学習用データに対して正解ラベル設定を正解ラベル設定部201に要請する(ステップS603)。
【0053】
上述したように、学習効果が高い参照データRを多く含むバッチBiを追加学習したモデルMiほど性能が向上するため、算出された性能評価値は学習効果評価値となる。したがって、選別処理部403は、算出された性能評価値である学習効果評価値に基づいて、選別対象データを追加学習用データに選別することができる。このようにして、学習効果評価値が高いほど選別対象データが追加学習用データに選別されやすくなり、学習効果評価値が低いほど非追加学習用データに選別されやすくなる。
【0054】
正解ラベル設定部201は、正解ラベル設定を実行する(ステップS604)。具体的には、たとえば、正解ラベル設定部201は、追加学習用データを表示して、ユーザからの正解ラベルの入力を受け付け、正解ラベルが入力されると、追加学習用データに関連付ける(ステップS604)。
【0055】
ステップS604の後、正解ラベル設定部201は、正解ラベルが付与された追加学習用データを学習用データ記憶部211に追加する(ステップS605)。モデル生成部202は、モデル学習部301により、正解ラベル付きの追加学習用データを用いて、モデルMの追加学習を行ってモデルMを更新する(ステップS606)。
【0056】
モデル評価部302は、更新後のモデルMに対して、評価用データ記憶部212に格納された評価用データを用いて更新後のモデルMの性能を評価する(ステップS607)。評価の結果、モデル評価部302は、モデルMの性能が要求性能に達していれば(ステップS608:Yes)、データ選別処理を終了し、未達成の場合は(ステップS608:No)、ステップS601からデータ選別処理を再度実行する。
【0057】
このように、
図6に示したデータ選別処理によれば、各データの学習効果評価値を精度よく求めることができ、学習効果評価値の高いデータを選定する。これにより、モデルMの効率的な学習が可能となる。
【0058】
図7は、分割学習部406および変換式生成部407による変換式生成処理手順例を示すフローチャートである。まず、分割学習部406は、参照データ記憶部405に格納された参照データRをモデルMに入力して参照データRごとの予測結果を出力する(ステップS701)。
【0059】
つぎに、分割学習部406は、参照データRごとの予測結果に基づいて、不確実度算出部401に不確実度を算出させ、不確実度算出部401から参照データRごとの不確実度を取得する(ステップS702)。そして、分割学習部406は、参照データRごとの不確実度に基づいて、参照データ群Rsをk個のバッチB1~Bkに分割する(ステップS703)。
【0060】
つぎに、分割学習部406は、性能評価ループを開始する(ステップS704)。具体的には、たとえば、分割学習部406は、iをi=1に初期設定し、ステップS705、S706を実行する。ステップS707において性能評価が終了していないと判定された場合、分割学習部406は、ステップS701でiをインクリメントして、インクリメント後のiについてステップS705、S706を実行する。
【0061】
ステップS707では、分割学習部406は、i=kであるか否かを判定し、i=kでない場合は性能評価が終了していないと判定してステップS704に遷移する。一方、i=kである場合は、モデルM1~Mkの性能評価が終了したとして、ステップS708に移行する。
【0062】
i番目のループでのステップS705、S706において、分割学習部406は、バッチBiを用いてモデルMiの学習Liを実行し(ステップS7005)、学習後のモデルMiを性能評価して(ステップS706)、ステップS70に移行する。
【0063】
ステップS707においてモデルM1~Mkの性能評価が終了したと判定された場合、変換式生成部407は、各バッチBiに含まれる参照データに対する不確実度を平均化して平均不確実度を算出し、バッチBiごとに、バッチBiの平均不確実度と、当該バッチBiで学習Liを実行したモデルMiの性能評価値と、の相関に基づいて、変換式Fを生成して、変換式記憶部404に格納する(ステップS708)。これにより、変換式生成処理が終了する。
【0064】
学習効果評価値が高い参照データRを多く含むバッチBiを追加学習したモデルMiほど性能評価値がより向上する。したがって、バッチBiの平均不確実度とモデルMiの性能評価値の相関とによって生成された変換式Fに不確実度を入力した場合の出力を、学習効果を評価する学習効果評価値とすることにより、学習効果評価値を用いて選別対象データを精度よく選別することが可能となる。
実施例2について説明する。実施例2は、実施例1において、不要な選別対象データを選別対象外に設定する例である。実施例1と同一構成には同一符号を付し、その説明を省略する。
決定部801は、不確実度記憶部800に記憶された不確実度に基づいて、追加学習前後の各選別対象データに対する不確実度の変化量を算出する。具体的には、たとえば、決定部801は、選別対象データの各々について、学習後の不確実度から学習前の不確実度を引いた差分を変化量として算出する。変化量が大きい選別対象データは、追加学習を行っても予測の正確性が向上しない外れ値データとなる可能性が高い。
決定部801は、変化量に基づいて、選別対象データを選別対象外に決定する。具体的には、たとえば、選別処理部403は、変化量がしきい値以上となる選別対象データを、追加学習を行っても予測の正確性が向上しない外れ値データであると判断し、選別対象データを選別対象外に決定する。
また、決定部801は、変化量および学習効果評価値(性能評価値)が算出された選別対象データ群のうち、変化量の大きさが上位n番目までの選別対象データを、追加学習を行っても予測が正確にならない外れ値データであると判断し、選別対象データを選別対象外に設定してもよい。
決定部801は、選別対象外に設定されなかった選別対象データ(外れ値データではない選別対象データ)を選別処理部403に出力する。なお、決定部801は、外れ値データであると判断された選別対象データを削除することにより、選別対象データを選別対象外に設定してもよい。これにより、決定部801によるメモリ使用量の低減化を図ることができる。
また、決定部801または選別処理部403は、外れ値データについて外れ値データであることを示す外れ値ラベルを付与して、選別対象データプール210に上書き保存してもよい。この場合、選別処理部403は外れ値ラベルがある選別対象データを抽出しない。これにより、追加学習を行っても予測の正確性が向上しない選別対象データの抽出を防止することができる。
また、決定部801または選別処理部403は、決定部801により外れ値データであると判断された選別対象データを、選別対象データプール210から削除してもよい。これにより、追加学習を行っても予測の正確性が向上しない選別対象データの抽出を防止することができる。また、選別対象データプール210によるメモリ使用量の低減化を図ることができる。
決定部801は、選別対象データごとについて、変化量に基づいて外れ値データであるか否かを判定する(ステップS1002)。外れ値データである場合(ステップS1002:Yes)、決定部801は、選別対象データを選別対象外に決定して(ステップS1003)、ステップS603に移行する。一方、外れ値データでない場合(ステップS1002:No)、ステップS603に移行する。
なお、上述した実施例1および実施例2では、変換式生成部407が変換式Fを生成する例としたが、あらかじめ変換式記憶部404に変換式Fを記憶させておいてもよい。
また、モデル生成部202、選別対象データプール210、学習用データ記憶部211、評価用データ記憶部212、参照データ記憶部405および不確実度算出部401は、選別装置100内に実装する必要はなく、選別装置100とインターネット、LAN(Local Area Network)、WAN(Wide Area Network)などのネットワークを介してアクセス可能な選別装置100外のコンピュータに実装されてもよい。
また、上述した実施例1および実施例2において、予測モデルは2クラスの分類器(たとえば、人物かそうでないかを識別)でもよく、3クラス以上の他クラス分類器(たとえば、男性か、女性か、それらでないかを識別)でもよい。
以上説明したように、上述した選別装置100によれば、入力された選別対象データに対してモデルMが出力した予測結果の不確実度に基づいて、学習に効果的な選別対象データを精度よく追加学習用データに選別することが可能となる。したがって、学習効果の高い追加学習用データを用いて効率的な追加学習を行うことができる。
なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。たとえば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加、削除、または置換をしてもよい。
また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、たとえば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサがそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよい。
各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD(Solid State Drive)等の記憶装置、又は、IC(Integrated Circuit)カード、SDカード、DVD(Digital Versatile Disc)の記録媒体に格納することができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。