(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024002431
(43)【公開日】2024-01-11
(54)【発明の名称】学習装置、学習方法及び学習プログラム
(51)【国際特許分類】
G06N 20/00 20190101AFI20231228BHJP
【FI】
G06N20/00 160
【審査請求】有
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022101590
(22)【出願日】2022-06-24
(71)【出願人】
【識別番号】591009705
【氏名又は名称】株式会社 東京ウエルズ
(74)【代理人】
【識別番号】110002181
【氏名又は名称】弁理士法人IP-FOCUS
(74)【代理人】
【識別番号】100208959
【弁理士】
【氏名又は名称】島田 敏史
(72)【発明者】
【氏名】出野 弘揮
(72)【発明者】
【氏名】高橋 龍一
(72)【発明者】
【氏名】加藤 嗣
(57)【要約】
【課題】モデルの学習を適切に行う学習装置、学習方法及び学習プログラムを提供する。
【解決手段】学習装置1は、対象データについて評価値を算出し、良品(第1ラベル)か不良品(第2ラベル)か判定する機械学習のモデルMについて、適切な判定を行えるように学習させる装置である。学習装置1は、データ取得部2、増加処理部3、制御部4、抽出部5、学習部6、表示部7及びラベル変更部8を備える。取り扱うデータは、第1ラベル又は第2ラベルが付与された教師データ11、教師データ11の候補となる教師候補データ12、増加処理部3によって増加処理がなされた変更教師候補データ13である。データ取得部2で母集団14となるデータを取得し、増加処理部3によりデータを増加させ、抽出部5によって抽出データ15を抽出する。抽出部5による抽出処理の前に増加処理部3によりデータを増加させることにより、学習を可能とする。
【選択図】
図1
【特許請求の範囲】
【請求項1】
対象データについて評価値を算出し、前記評価値と所定の閾値を比較して少なくとも第1ラベル又は第2ラベルの何れかのラベルに分類するように教師データを用いて学習するモデルに、学習を行わせる学習装置であって、
少なくとも前記第1ラベル又は前記第2ラベルの何れかに分類された教師候補データを取得するデータ取得部と、
前記教師候補データの内容の一部を変更して一又は複数の変更教師候補データを生成する増加処理部と、
前記教師候補データ及び前記変更教師候補データを母集団として、前記母集団について前記モデルを用いて評価値を算出し、前記評価値が前記閾値を含む所定の抽出範囲にあるデータを抽出する抽出処理を行う抽出部と、
所定の学習率で前記モデルに学習処理を行わせる学習部と、
前記抽出部及び前記学習部を制御する制御部を備え、
前記制御部は、
前記抽出部により前記抽出処理を行った結果抽出された抽出データの数が所定の停止数を超えるときは、前記抽出データを前記教師データに追加して前記学習処理を行うと共に、前記抽出処理を行い、新たな抽出データの数が前記停止数となるまで前記学習処理と前記抽出処理を実行することを特徴とする学習装置。
【請求項2】
請求項1に記載の学習装置であって、
前記制御部は、学習済みのモデルを用いて抽出処理を行う際に、前記母集団から前記抽出データを除いた新たな母集団を作成し、前記新たな母集団に対して前記抽出部によって前記抽出処理を行うことを特徴とする学習装置。
【請求項3】
請求項1に記載の学習装置であって、
前記抽出処理において、変更の基礎となった前記教師候補データが共通する前記変更教師候補データが複数あるときは、一度の前記抽出処理において所定の限度抽出数のみの前記教師候補データ又は前記変更教師候補データを抽出する限定処理を行うことを特徴とする学習装置。
【請求項4】
請求項1に記載の学習装置であって、
前記抽出データを表示させる表示部と、前記表示部に表示された前記抽出データについて前記ラベルの変更が可能なラベル変更部をさらに備え、
前記抽出データを前記教師データに追加する前に、前記ラベル変更部により前記ラベルの変更を可能とする学習装置。
【請求項5】
請求項4に記載の学習装置であって、
前記制御部は、前記抽出データの数が前記停止数を超え、所定の基準データ数未満の場合、前記抽出範囲の幅を広げる拡張処理を行って前記抽出処理を行い、
前記抽出データの数が前記基準データ数以上となったときに前記学習処理を行う学習装置。
【請求項6】
請求項5に記載の学習装置であって、
前記制御部は、前記拡張処理として前記抽出範囲の幅を広げると共に前記学習率を低下させる学習装置。
【請求項7】
対象データについて評価値を算出し、前記評価値と所定の閾値を比較して少なくとも第1ラベル又は第2ラベルの何れかのラベルに分類するように教師データを用いて学習するモデルに、学習を行わせる学習装置であって、
少なくとも前記第1ラベル又は前記第2ラベルの何れかに分類された教師候補データを取得するデータ取得部と、
前記教師候補データを母集団として、前記母集団について前記モデルを用いて評価値を算出し、前記評価値が前記閾値を含む所定の抽出範囲にあるデータを抽出する抽出処理を行う抽出部と、
所定の学習率で前記モデルに学習処理を行わせる学習部と、
前記抽出部及び前記学習部を制御する制御部を備え、
前記制御部は、
前記抽出部により抽出された抽出データの数が所定の停止数を超え、所定の基準データ数未満の場合、前記抽出範囲の幅を広げる拡張処理を行って前記抽出処理を行い、
前記抽出データの数が前記基準データ数以上となったときに、前記抽出データを前記教師データに追加して前記学習処理を行うと共に、前記抽出処理を行い、新たな抽出データの数が前記停止数となるまで前記学習処理と前記抽出処理を実行することを特徴とする学習装置。
【請求項8】
対象データについて評価値を算出し、前記評価値と所定の閾値を比較して少なくとも第1ラベル又は第2ラベルの何れかのラベルに分類するように教師データを用いて学習するモデルに、学習を行わせる学習方法であって、
少なくとも前記第1ラベル又は前記第2ラベルの何れかに分類された教師候補データを取得するデータ取得工程と、
前記教師候補データの内容の一部を変更して一又は複数の変更教師候補データを生成する増加処理工程と、
前記教師候補データ及び前記変更教師候補データを母集団として、前記母集団について前記モデルを用いて所定の学習率で評価値を算出し、前記評価値が前記閾値を含む所定の抽出範囲にあるデータを抽出する抽出工程と、前記モデルに学習を行わせる学習工程とを含み、
前記抽出工程により抽出された抽出データの数が所定の停止数を超えるときは、前記抽出データを前記教師データに追加して前記学習工程を実行すると共に、前記母集団から前記抽出データを除いた新たな母集団を作成し、前記新たな母集団に対して前記抽出工程を実行し、新たな抽出データの数が前記停止数となるまで前記学習工程と前記抽出工程を実行することを特徴とする学習方法。
【請求項9】
コンピュータを請求項1~7の何れか1項に記載の学習装置として機能させるための学習プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、学習装置、学習方法及び学習プログラムに関する。
【背景技術】
【0002】
従来から、画像処理の技術を用いて製品の良否の判定等を行うために、ニューラルネットワークを用いたディープラーニングによる学習結果を利用することが行われている。また、ディープラーニングによる学習を効率化するために、特許文献1において、モデルの学習を適切に行うための学習支援装置、及び学習装置等が提案されている。
【0003】
特許文献1の学習支援装置は、対象データを第1ラベル及び第2ラベルの何れかに分類するように教師データを用いて学習されたモデルと、第1ラベルが付与された第1データ及び第2ラベルが付与された第2データを有する教師データとに基づいて、教師データの特徴量を教師データごとに導出している。
【0004】
また、同装置では、第1ラベル及び第2ラベルの何れかがそれぞれに付与された少なくとも1つの教師候補データとモデルとに基づいて教師候補データの特徴量を教師候補データごとに導出する導出部と、教師候補データと第1データとの距離、及び、教師候補データと第2データとの距離の少なくとも一方を教師候補データごとに算出する算出部と、距離に基づいて教師候補データの中から教師データとして追加するデータを選択する選択部と、を備える。
【0005】
特許文献1の学習支援装置では、第1ラベルに分類された複数の教師候補データの中から、前記距離が第2ラベルの教師データに近いものを選択し、第2ラベルに分類された複数の教師候補データの中から、前記距離が第1ラベルの教師データに近いものを選択する。
【0006】
当該処理によって、第1ラベルである教師候補データのうち第2ラベルに近いもの、即ち、第1ラベルか第2ラベルかの識別が困難な教師候補データを選択することになる。第2ラベルの教師候補データについても同様である。特許文献1の学習支援装置では、このような識別が困難な教師候補データを教師データとすることにより、教師データの質を向上させ、モデルを効率的に学習させることが可能となった。
【先行技術文献】
【特許文献】
【0007】
【発明の概要】
【発明が解決しようとする課題】
【0008】
特許文献1に記載の学習支援装置によって、効率のよい学習を行うことができるようになった。ところで、一般的な学習方法においては、教師データを所定の手法によって増加させる増加処理を行うと、学習効果を高められることが一般に知られている。このため、特許文献1に記載の学習支援装置においても、教師データを増加させることにより、学習効果が高まることが期待される。
【0009】
しかしながら、特許文献1に記載の学習支援装置において、選択された教師データに対して増加処理を行ったところ、最大エポック数に達しても学習の終了条件を満たすことができないケースや、学習時間が過大となるケースが発生することが判明した。
【0010】
本発明は、上記課題に鑑み、モデルの学習を適切に行うことができる学習装置、学習方法及び学習プログラムを提供することを目的とする。
【課題を解決するための手段】
【0011】
上記目的を達成するために、本発明の学習装置は、対象データについて評価値を算出し、前記評価値と所定の閾値を比較して少なくとも第1ラベル又は第2ラベルの何れかのラベルに分類するように教師データを用いて学習するモデルに、学習を行わせる学習装置であって、少なくとも前記第1ラベル又は前記第2ラベルの何れかに分類された教師候補データを取得するデータ取得部と、前記教師候補データの内容の一部を変更して一又は複数の変更教師候補データを生成する増加処理部と、前記教師候補データ及び前記変更教師候補データを母集団として、前記母集団について前記モデルを用いて評価値を算出し、前記評価値が前記閾値を含む所定の抽出範囲にあるデータを抽出する抽出処理を行う抽出部と、所定の学習率で前記モデルに学習処理を行わせる学習部と、前記抽出部及び前記学習部を制御する制御部を備え、前記制御部は、前記抽出部により前記抽出処理を行った結果抽出された抽出データの数が所定の停止数を超えるときは、前記抽出データを前記教師データに追加して前記学習処理を行うと共に、前記抽出処理を行い、新たな抽出データの数が前記停止数となるまで前記学習処理と前記抽出処理を実行することを特徴とする。
【0012】
本発明の学習装置は、教師候補データの内容の一部を変更して一又は複数の変更教師候補データを生成する増加処理部を備えており、教師候補データのみならず変更教師候補データを含めて教師候補データを抽出するための母集団としている。この増加処理部によるデータの増加は、学習処理と抽出処理を行う前に行っているため、学習処理と抽出処理を繰り返すことにより最終的には抽出データの数が所定の停止数となり、学習が終了する。従って、本発明の学習装置は、従来の学習装置と比べて、モデルに対して多くの母集団を用いて効率よく学習させることができる。
【0013】
本発明の学習装置において、前記制御部は、学習済みのモデルを用いて抽出処理を行う際に、前記母集団から前記抽出データを除いた新たな母集団を作成し、前記新たな母集団に対して前記抽出部によって前記抽出処理を行うようにしてもよい。当該構成によれば、学習処理と抽出処理を繰り返す度に母集団のデータ数が減少していくので、制御部における処理の負担を軽減することができる。
【0014】
本発明の学習装置は、前記抽出処理において、変更の基礎となった前記教師候補データが共通する前記変更教師候補データが複数あるときは、一度の前記抽出処理において所定の限度抽出数のみの前記教師候補データ又は前記変更教師候補データを抽出する限定処理を行うようにしてもよい。当該構成によれば、学習処理を行う際の教師候補データ又は変更教師候補データの数が抑えられるので、学習処理を迅速に行うことができる。
【0015】
また、本発明の学習装置において、前記抽出データを表示させる表示部と、前記表示部に表示された前記抽出データについて前記ラベルの変更が可能なラベル変更部をさらに備え、前記抽出データを前記教師データに追加する前に、前記ラベル変更部により前記ラベルの変更を可能としてもよい。当該構成によれば、ユーザはラベル変更部と入力部により、抽出部におけるラベルの判定結果を確認でき、判定結果に誤りがあるときはラベル変更部により変更ができるので、抽出部における判定の精度を向上させることができる。
【0016】
また、本発明の学習装置において、前記制御部が、前記抽出データの数が前記停止数を超え、所定の基準データ数未満の場合、前記抽出範囲の幅を広げる拡張処理を行って前記抽出処理を行い、前記抽出データの数が前記基準データ数以上となったときに前記学習処理を行うようにしてもよい。
【0017】
抽出データが基準データ数より少ない状態で、ユーザがラベル変更部によりラベルの変更を行うと、ラベルの変更の頻度が多くなりユーザに負担が生じる。本発明では、抽出データの数が基準データ数以上となってから学習処理及び抽出処理を行うので、ユーザが選択部によりラベルの選択を行う頻度を減少させることができる。
【0018】
また、本発明の学習装置において、前記制御部が、前記拡張処理として前記抽出範囲の幅を広げると共に前記学習率を低下させるようにしてもよい。このように、抽出範囲を広げることで、抽出データの数を増加させることができる。また、学習率は、1回の学習でニューラルネットワーク内の重みやバイアスを更新する量の調整値である。本発明では、拡張処理において、抽出範囲を広げた際に学習率を低下させることで、抽出データの数の微調整が行われる。
【0019】
また、本発明の学習装置は、対象データについて評価値を算出し、前記評価値と所定の閾値を比較して少なくとも第1ラベル又は第2ラベルの何れかのラベルに分類するように教師データを用いて学習するモデルに、学習を行わせる学習装置であって、少なくとも前記第1ラベル又は前記第2ラベルの何れかに分類された教師候補データを取得するデータ取得部と、前記教師候補データを母集団として、前記母集団について前記モデルを用いて評価値を算出し、前記評価値が前記閾値を含む所定の抽出範囲にあるデータを抽出する抽出処理を行う抽出部と、所定の学習率で前記モデルに学習処理を行わせる学習部と、前記抽出部及び前記学習部を制御する制御部を備え、前記制御部は、前記抽出部により抽出された抽出データの数が所定の停止数を超え、所定の基準データ数未満の場合、前記抽出範囲の幅を広げる拡張処理を行って前記抽出処理を行い、前記抽出データの数が前記基準データ数以上となったときに、前記抽出データを前記教師データに追加して前記学習処理を行うと共に、前記抽出処理を行い、新たな抽出データの数が前記停止数となるまで前記学習処理と前記抽出処理を実行することを特徴とする。
【0020】
上記構成の学習装置によれば、抽出手段による抽出数が所定の基準データ数より少ない場合は、抽出数が多くなるように抽出範囲の幅を広げるため、抽出数が多くなるので、効率よく学習処理を行うことができる。
【0021】
本発明の学習方法は、対象データについて評価値を算出し、前記評価値と所定の閾値を比較して少なくとも第1ラベル又は第2ラベルの何れかのラベルに分類するように教師データを用いて学習するモデルに、学習を行わせる学習方法であって、少なくとも前記第1ラベル又は前記第2ラベルの何れかに分類された教師候補データを取得するデータ取得工程と、前記教師候補データの内容の一部を変更して一又は複数の変更教師候補データを生成する増加処理工程と、前記教師候補データ及び前記変更教師候補データを母集団として、前記母集団について前記モデルを用いて評価値を算出し、前記評価値が前記閾値を含む所定の抽出範囲にあるデータを抽出する抽出工程と、所定の学習率で前記モデルに学習を行わせる学習工程とを含み、前記抽出工程により抽出された抽出データの数が所定の停止数を超えるときは、前記抽出データを前記教師データに追加して前記学習工程を実行すると共に、前記母集団から前記抽出データを除いた新たな母集団を作成し、前記新たな母集団に対して前記抽出工程を実行し、新たな抽出データの数が前記停止数となるまで前記学習工程と前記抽出工程を実行することを特徴とする。
【0022】
本発明の学習プログラムは、コンピュータを上記各学習装置として機能させるためのプログラムである。
【図面の簡単な説明】
【0023】
【
図1】本発明の実施形態の一例である学習装置の機能的構成を示す説明図。
【
図2】本実施形態の学習装置における学習方法を示すフローチャート。
【
図3】本実施形態の学習装置の抽出部による抽出処理のイメージを示す説明図。
【
図4】本実施形態の学習装置の表示部によって表示された表示画面を示す説明図であり、(A)は良品の場合、(B)は不良品の場合を示す。
【
図5】本実施形態の学習装置の増加処理部による増加処理を示す説明図であり、(A)はフリップ処理、(B)はシフト処理、(C)は微小回転処理、(D)はフィルタ処理を示す。
【
図6】本実施形態の学習装置の学習時間とデータ数との関係を示すグラフ。
【発明を実施するための形態】
【0024】
次に、
図1~
図6を参照して、本発明の実施形態である学習装置、学習方法及び学習プログラムについて説明する。
図1は、本実施形態の学習装置1の機能的構成を示す説明図である。
【0025】
本実施形態の学習装置1は、対象データについて評価値を算出して、少なくとも第1ラベルか第2ラベルかを判定して分類するモデルMについて、モデルMが適切な判定を行うことができるように学習をさせる装置である。ここで、モデルとは、コンピュータが判別可能な何らかの入力値を受け取り、何らかの評価・判定をして出力値を出す仕組みをいう。
【0026】
モデルMは、ニューラルネットワークとパラメータとを含む構造を有する。ニューラルネットワークは、複数のニューロンを結合させた構造を有する。一例として、ニューラルネットワークは、複数のニューロンがグループ化された層を連ねた階層型の多層ニューラルネットワークとすることができる。
【0027】
ニューラルネットワークは、ニューロンの個数及び結合関係で定義される。ニューロン間又は層間の結合強度は、パラメータ(重み係数など)を用いて定義される。ニューラルネットワークでは、対象データが入力され、複数のニューロンの演算結果及びパラメータに基づいて、対象データの評価及びラベルの付与が行われる。
【0028】
モデルMは、対象データの内容を認識し、少なくとも第1ラベルか第2ラベルかの判定を行う。例えば、対象データが画像データである場合、ラベルとしては、被写体の種類(人物、乗り物、動物等)、又は被写体の品質(良品、不良品等)とすることができる。このラベルは、対象データに紐付けて記憶される。なお、モデルMの構成は、特許文献1と同様であるので、詳細な説明は省略する。
【0029】
次に、
図1を参照して、本実施形態の学習装置1の機能的構成について説明する。本実施形態の学習装置1は、機能的構成として、データ取得部2、増加処理部3、制御部4、抽出部5、学習部6、表示部7及びラベル変更部8を備えている。
【0030】
本実施形態の学習装置1で取り扱う対象データは、第1ラベル又は第2ラベルの何れかが付与された教師データ11と、教師データ11の候補となる教師候補データ12と、増加処理部3によって増加処理がなされた変更教師候補データ13である。教師候補データ12及び変更教師候補データ13についても、教師データ11と同様に、第1ラベル又は第2ラベルの何れかが付与されている。
【0031】
ここで、教師データとは、モデルMに与えられる例題と解答を示すデータをいう。また、教師候補データとは、モデルMに与える新たな教師データの候補となりうるデータをいう。
【0032】
データ取得部2は、学習装置1によってモデルMの学習を行うために、教師候補データ12を取得するデータ取得工程を行う機能部である。
【0033】
増加処理部3は、教師候補データ12の内容の一部を変更して一又は複数の変更教師候補データ13を生成する機能部である。増加処理としては、例えば、教師候補データ12が画像データの場合、以下のような処理を挙げることができる。
【0034】
例えば、元画像データを左右反転したデータ、上下反転したデータ、及び180°回転したデータを作成するフリップ処理、元画像データをX-Y方向に少しずつ座標をずらしたデータを作成するシフト処理、元画像データを右方向及び左方向に微小角度回転させたデータを作成する微小回転処理、元画像データに中央値フィルタやガウシアンフィルタ等のフィルタをかけるフィルタ処理等である。
【0035】
制御部4は、抽出部5と学習部6を制御してモデルMに効果的な学習処理を行わせる機能部である。抽出部5は、教師候補データ12及び変更教師候補データ13を母集団14として、この母集団14についてモデルMを用いて評価値を算出し、評価値が第1ラベルと第2ラベルとの閾値を含む所定の抽出範囲にあるデータを抽出する抽出処理を行う機能部である。学習部6は、所定の学習率でモデルMに学習処理を行わせる機能部である。学習処理とは、モデルMのパラメータを最適値に近づけるように調整する処理である。
【0036】
表示部7は、対象データの判定を行うユーザが、抽出部5によって抽出された抽出データ15を確認できるように、ディスプレイ等の表示機器にデータを表示させる機能部である。ラベル変更部8は、抽出データ15に付与された第1ラベル又は第2ラベルのラベルについて、ユーザが確認してラベルを変更する必要がある場合に、抽出データ15に付されたラベルを変更することができる機能部である。
【0037】
本実施形態の学習装置1は、主要なハードウェアとしてコンピュータ(図示省略)を備えている。コンピュータは、CPU、GPU等のプロセッサ、RAM、ROM、ハードディスク又はSSD(ソリッドステートドライブ)等の記憶装置、インターネット等のネットワークへの接続を行う通信部等を備えている。また、コンピュータの記憶装置には、コンピュータを本実施形態の学習装置1として作動させるための学習プログラムが記憶されている。なお、コンピュータには、クラウドコンピューティングシステムが含まれる。前記各機能部は、ハードウェアとしてコンピュータと、ソフトウェアである学習プログラムによって実現される。
【0038】
次に、
図2を参照して、本実施形態の学習装置1の作動である学習方法について、対象データが画像である場合を例にして説明する。まず、データ取得部2が教師候補データ12を取得する取得工程を行う(STEP1)。この教師候補データ12は、予め、第1ラベル又は第2ラベルの何れかのラベルが付されている。教師候補データ12の数は、モデルMの学習に必要な数を予め準備しておく。
【0039】
次に、増加処理部3が、教師候補データ12に対して増加処理を行って変更教師候補データ13を生成する増加処理工程を行う(STEP2)。増加処理としては、前述のフリップ処理、シフト処理、微小回転処理及びフィルタ処理の何れか、又はこれらの処理の組み合わせることにより行う。いずれの処理を行うかは、対象データの性質、モデルMの学習の目的、或いはモデルMによる判定の内容によって適宜選択することができる。
【0040】
次に、制御部4が、初回の処理か否かの確認を行う(STEP3)。初回の処理の場合は(STEP3でYES)、学習済みで初期状態のモデルMについて、学習率を初期値に設定する(STEP5)。この学習率の初期値は、例えば0.001に設定することができる。また、抽出部5における抽出範囲を初期値に設定する(STEP5)。この抽出範囲の初期値は、例えば3に設定することができる。なお、抽出範囲の内容については後述する。
【0041】
次に、抽出部5により抽出処理(抽出工程)を行う(STEP6)。抽出処理においては、教師候補データ12と変更教師候補データ13を母集団14として、この母集団14のデータをモデルMに入力し、モデルMにおいて評価値を算出し、この評価値が抽出範囲内であれば抽出データ15として抽出を行い、評価値が抽出範囲外であれば抽出を行わない。
【0042】
図3は、本実施形態の学習装置1における抽出処理をイメージ的に表現したものである。この抽出部5における抽出処理では、母集団14の各データについて、モデルMを用いて評価値を算出する。
図3においては、評価値は図の右側に行くほど高く、左側に行くほど低くなる。本実施形態においては、評価が高い方が第1ラベルとなり、評価が低い方が第2ラベルとなる。
【0043】
図3においては、第1ラベルと第2ラベルとの境界線Bが両ラベルを分ける閾値であり、この閾値を含む所定の範囲を抽出範囲としている。ここで、
図3に示すように、評価値が閾値に近い領域にあるものは、第1ラベルであっても第2ラベルに近いものとなり、良品と不良品の差が少ないものとなる。本実施形態においては、
図3における抽出範囲の値は3に設定されているが、1~20の値で設定することができる。この値は、抽出の条件や学習の対象に応じて適宜変更が可能である。
【0044】
このように、第1ラベルと第2ラベルの所定の領域にあるデータを用いてモデルMの学習を行えば、第1ラベルか第2ラベルかについて見分けが付きにくいデータで学習を行うことができる。このようなデータで学習を行ったモデルMは、些細な差異についての判断を正確に行うことができるようになる。即ち、このようなデータは、効率よくモデルMの学習を行うことができる良質なデータとなる。
【0045】
抽出部5における抽出処理の内容は、特許文献1に記載された処理と同様である。具体的には、教師候補データ12と変更教師候補データ13をモデルMに入力し、モデルMと教師データ11に基づいて、予め定められた次元の特徴空間で表現される特徴量(ベクトル)をデータごとに算出する。また、特徴空間における教師データ11と教師候補データ12及び変更教師候補データ13との距離をそれぞれ算出する。この距離が抽出範囲内にあればそのデータは抽出され、抽出範囲外であれば当該データは抽出しないという処理を行う。なお、特徴空間における距離の算出の手法については、特許文献1と同様であるので、詳細な説明は省略する。
【0046】
本実施形態の学習装置1においては、抽出部5による抽出処理を行う際に、母集団14において、変更教師候補データ13の変更の基礎となった教師候補データ12が共通するデータが複数あるときは、一度の抽出処理において所定の限度抽出数のデータのみを抽出する限定処理を行っている(STEP6)。
【0047】
この限定処理を行うことにより、後述するSTEP5において新たな教師データ11によりモデルMを学習させる際に、急激に教師データ11が増加することがないので、学習処理を迅速に行うことができる。本実施形態では、限度抽出数を1としている。このため、本実施形態では、同じ教師候補データ12から複数の変更教師候補データ13が生成されている場合であっても、1回の抽出処理において1個の教師候補データ12又は変更教師候補データ13のみが抽出される。この限度抽出数は、モデルMの状態やハードウェア等の状態により適宜変更することができる。
【0048】
次に、制御部4が、抽出部5により抽出された抽出データ15の数を確認する(STEP7)。具体的には、(1)として、抽出データ15の数xが、所定の停止数を超えているか、及び所定の基準データ数以上であるか、或いは抽出範囲が拡張範囲であるか否かの確認を行う(
図2のSTEP7においては、「基準データ数」を「基準数」と表記している)。又は、STEP7では、(2)として、抽出データ15が停止数を超えているが、基準データ数未満であるか否かの確認を行う。
【0049】
ここで、停止数は、学習装置1による学習を停止させるか否かの基準となる数字であり、例えば0とすることができる。この場合、抽出部5により抽出されるデータが0になった場合に学習を停止させることになる。
【0050】
また、基準データ数は、後述するユーザの確認作業(STEP8~9)の頻度を低減させるための数字であり、例えば第1ラベルが20、第2ラベルが20とすることができる。この基準データ数は、データの種類や学習環境等の要因により適宜変更することが可能である。
【0051】
この場合、抽出部5により抽出される抽出データ15の数が、第1ラベルが20未満、又は第2ラベルが20未満の場合、ユーザの確認作業を行わずに、再度抽出処理を行って、抽出データ15の数が40以上となった場合にユーザの確認作業を行う。当該処理により、ユーザの確認作業の頻度が減少するので、ユーザの負担軽減を行うことができる。
【0052】
抽出データ15の数が、停止数を超えると共に、基準データ数以上である場合は(STEP7で1)、表示部7に抽出データ15を表示させる(STEP8)。
図4は、表示部7に抽出データ15が表示された状態である。表示画面16には、ラベル変更部8によって抽出データ15に付されたラベル17が適切か否かを確認し、ラベル17の変更を行うための変更表示18が表示される。
【0053】
図4(A)において、表示画面16の上方には、「これは本当に良品ですか?」との記載が表示され、表示画面16の中央には抽出された抽出データ15が表示され、抽出データ15の左側にはラベル17が「良品」として表示され、表示画面16の下方には変更表示18として「はい」「いいえ」「わからない」の3個のボタンが表示される。ユーザがこの変更表示18のボタンをタップする等の操作を行うことにより、抽出データに付されたラベル17(この場合は「良品」)が適切であるか否かを確認し、適切でない場合はラベル17を変更することが可能となる。
【0054】
図4(B)の場合は、ラベル17が「不良品」であり、抽出データ15には不良品と判定された画像が表示される。なお、変更表示18においてユーザが「わからない」を選択した際は、ユーザによる判定を保留して、事後的に判定を行うことができるようになっている。
【0055】
ユーザによる抽出データ15の確認が行われた後、制御部4は、当該抽出データ15を教師データ11として格納し、新たな教師データ11が次回のラベル17の学習に用いられる。また、制御部4は、母集団14から抽出データ15を取り除き、新たな母集団14を作成する(STEP10)。
【0056】
次に、再度初回の処理か否かが確認されるが(STEP3)、この場合は既に初回の処理が終了して2回目以降の処理となるため(STEP3でNO)、制御部4は、新たな教師データ11を加えたモデルMを用いて、学習処理(学習工程)を行う(STEP4)。新たに加えられた教師データ11は、抽出部5によって抽出された学習効果の高い抽出データ15であるので、モデルMによる評価の精度が向上する。その後、学習率を初期値に設定すると共に、抽出部5における抽出範囲を初期値に設定する(STEP5)。
【0057】
制御部4は、以上の抽出処理と学習処理を抽出データ15の数が停止数である0になるまで繰り返す。抽出データ15が停止数である0になったときは(STEP7で3)、処理が終了となる。
【0058】
一方で、抽出データ15が停止数を超えているが、基準データ数未満である場合は(STEP7で2)、抽出範囲の幅を広げて拡張範囲(例えば3.7)とすると共に、学習率を低下(例えば0.0002)させる拡張処理を行う(STEP11)。この状態で抽出処理を行うと(STEP6)、抽出範囲の幅が広がっており、抽出部5によって抽出されるデータ数が増加する。また、この抽出処理により、学習率の微調整が行われる。
【0059】
次に、制御部4は、抽出データ数を確認するが(STEP7)、この場合はSTEP11によって抽出範囲が拡張範囲となっているため(STEP7で1)、抽出処理によって抽出された抽出データの表示及び確認を行う(STEP8~9)。抽出範囲が拡張範囲である場合は、STEP11の拡張処理がなされている状態であり、仮に抽出データ15の数が基準データ数未満であっても、当該基準データ数に近い数のデータが存在することが予想されるためである。
【0060】
次に、
図5を参照して、増加処理部3によって行われる増加処理の具体例について説明する。
図5(A)は、フリップ処理を行った状態を示す説明図であり、オリジナル画像である教師候補データ12から、フリップ処理により、上下反転した画像データ、左右反転した画像データ、及び180°回転させた画像データが生成される。このフリップ処理を行うことで、教師候補データ12に加えて、3個の変更教師候補データ13を得ることができる。
【0061】
図5(B)は、シフト処理を行った状態を示す説明図であり、元画像データである教師候補データ12と、フリップ処理で生成された3個の変更教師候補データ13の合計4個のデータについて、X-Y方向にそれぞれ(-1,-1)、(-1,1)・・・という形で画像を微小移動させる。このシフト処理により、32個の画像データを得ることができる。このシフトの単位は、画像であれば画素(ピクセル)としてもよく、mm、或いはμmとしてもよい。また、シフトの範囲は学習の目的等によって適宜変更することができる。
【0062】
図5(C)は、微小回転処理を行った状態を示す説明図であり、回転無しの画像データに対して、左に1°回転した画像データと、右に1°回転した画像データを生成する。この微小回転の角度は、学習の目的等によって適宜変更することができる。
【0063】
図5(D)は、フィルタ処理を行った状態を示す説明図であり、フィルタ無しの画像データに対して、中央値フィルタを施したデータと、ガウシアンフィルタを施したデータを生成する。中央値フィルタは、メディアンフィルタとも呼ばれており、画像のノイズを除去する際に用いられるフィルタである。ガウシアンフィルタは、平滑化フィルタの一種であり、ガウス分布に従って画像をぼかしてなめらかにするフィルタである。なお、フィルタ処理として、公知の他のフィルタを用いてもよい。
【0064】
増加処理部3において行われる増加処理は、
図5(A)のフリップ処理のみであれば、データ数は4倍となる。さらに、
図5(B)のシフト処理を行うと32倍のデータとなり、シフト処理をしない4個のデータを加えると36倍のデータとなる。さらに、
図5(C)の微小回転処理を行えば、シフト処理を行った32倍のデータがさらに3倍されて96個のデータとなり、最初の4個のデータを加えると100倍のデータとなる。さらに、
図5(D)のフィルタ処理を行えば、100倍のデータが3倍の300倍となる。
【0065】
このように、本実施形態の学習装置1では、増加処理によって教師候補データ12に近似する変更教師候補データ13を多数生成することができるので、抽出処理によって学習効果の高いデータを多数抽出することができる。
【0066】
次に、本実施形態の学習装置1の作用効果について、
図6を参照して説明する。
図6は、対象データ数と学習時間との関係を示すグラフである。グラフにおいて実線で示すデータは本実施形態の学習装置1であり、点線で示すデータは従来の学習装置(比較例)を示している。
図6のグラフに示すように、本実施形態の学習装置1は、対象データ数が300倍である場合も、学習を終了させることができた。一方で、比較例においては、対象データ数の増加倍数が8倍を超えると、学習を終了させることができなかった。
【0067】
以上の通り、本実施形態の学習装置1は、従来の学習装置に比べて対象データを増加させることにより、学習の質を向上させることができると共に、対象データが増加された場合であっても学習を終了させることができる。
【0068】
なお、上記実施形態においては、抽出データ15の数が、停止数を超えると共に、基準データ数以上である場合は(STEP7で1)、抽出データ15を表示部7に表示させてユーザによる確認作業を行っているが、表示部7にデータを表示させずに、抽出データ15を教師データ11に加えるようにしてもよい。例えば、増加処理において、すでに教師候補データ12をもとに作成された変更教師候補データ13が表示されて確認作業を受けていれば、表示部7での表示を省略することができる。
【0069】
また、上記実施形態においては、対象データが画像データである場合について説明したが、対象データは、音声データ、グラフデータ、又は動画データ等のデータであってもよい。また、上記実施形態では、STEP7において確認する停止数を0に設定しているが、これに限らず、他の数字(例えば1或いは10等の整数)としてもよい。
【0070】
また、上記実施形態においては、モデルMは、被写体の良品又は不良品を判定するために、第1ラベル又は第2ラベルの判定を行う例について説明しているが、被写体の種類(人物、乗り物、動物等)の判定を行うモデルMについても、上記実施形態と同様に適用が可能である。
【0071】
例えば、被写体の種類をラベルA,ラベルB及びラベルCに分類するモデルの場合、STEP7において、ラベルA,ラベルB及びラベルCについて、それぞれラベルについての抽出数が全て基準データ数を超えた場合にSTEP8~STEP10の処理を行い、それぞれラベルについての抽出数が停止数を超え、且つ基準データ数未満の場合にSTEP11の処理を行うようにすればよい。
【0072】
また、上記実施形態においては、増加処理として、フリップ処理、シフト処理、微小回転処理及びフィルタ処理を例にしているが、これに限らず、インパルズノイズの付加、コントラスト調整、明度調整、拡大・縮小、部分マスク、トリミング、変形、或いは変色等の各処理を行ってもよい。従って、増加するデータの数は上記実施形態の300倍に限られず、適宜変更することができる。
【0073】
また、上記実施形態においては、学習済みのモデルMを用いた学習の例を示したが、これに限らず、未学習のモデルMを用いて上記処理を行ってもよい。その際、
図2のSTEP1の前処理として、未学習のモデルMに学習用の教師データを用いて学習を行い、その後にSTEP1以降の処理を行えばよい。
【0074】
また、上記実施形態においては、STEP7のにおいて、抽出範囲が拡張範囲である場合に、(1)側に移動して、抽出処理によって抽出された抽出データの表示及び確認を行っているが(STEP8~9)、これに限らず、(2)側に移動して再度抽出範囲を拡張範囲として(STEP11)、抽出処理(STEP6)を行ってもよい。その際、拡張範囲の値を変更してもよく、抽出処理(STEP6)の回数を制限してもよい。
【符号の説明】
【0075】
M…モデル
1…学習装置
2…データ取得部
3…増加処理部
4…制御部
5…抽出部
6…学習部
7…表示部
8…ラベル変更部
11…教師データ
12…教師候補データ
13…変更教師候補データ
14…母集団
15…抽出データ
16…表示画面
17…ラベル
18…変更表示