IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士通株式会社の特許一覧

特開2024-179747機械学習モデル生成支援プログラム、機械学習モデル生成支援装置、及び機械学習モデル生成支援方法
<>
  • 特開-機械学習モデル生成支援プログラム、機械学習モデル生成支援装置、及び機械学習モデル生成支援方法 図1
  • 特開-機械学習モデル生成支援プログラム、機械学習モデル生成支援装置、及び機械学習モデル生成支援方法 図2
  • 特開-機械学習モデル生成支援プログラム、機械学習モデル生成支援装置、及び機械学習モデル生成支援方法 図3
  • 特開-機械学習モデル生成支援プログラム、機械学習モデル生成支援装置、及び機械学習モデル生成支援方法 図4
  • 特開-機械学習モデル生成支援プログラム、機械学習モデル生成支援装置、及び機械学習モデル生成支援方法 図5
  • 特開-機械学習モデル生成支援プログラム、機械学習モデル生成支援装置、及び機械学習モデル生成支援方法 図6
  • 特開-機械学習モデル生成支援プログラム、機械学習モデル生成支援装置、及び機械学習モデル生成支援方法 図7
  • 特開-機械学習モデル生成支援プログラム、機械学習モデル生成支援装置、及び機械学習モデル生成支援方法 図8
  • 特開-機械学習モデル生成支援プログラム、機械学習モデル生成支援装置、及び機械学習モデル生成支援方法 図9
  • 特開-機械学習モデル生成支援プログラム、機械学習モデル生成支援装置、及び機械学習モデル生成支援方法 図10
  • 特開-機械学習モデル生成支援プログラム、機械学習モデル生成支援装置、及び機械学習モデル生成支援方法 図11
  • 特開-機械学習モデル生成支援プログラム、機械学習モデル生成支援装置、及び機械学習モデル生成支援方法 図12A
  • 特開-機械学習モデル生成支援プログラム、機械学習モデル生成支援装置、及び機械学習モデル生成支援方法 図12B
  • 特開-機械学習モデル生成支援プログラム、機械学習モデル生成支援装置、及び機械学習モデル生成支援方法 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024179747
(43)【公開日】2024-12-26
(54)【発明の名称】機械学習モデル生成支援プログラム、機械学習モデル生成支援装置、及び機械学習モデル生成支援方法
(51)【国際特許分類】
   G06T 7/00 20170101AFI20241219BHJP
   G01N 21/88 20060101ALI20241219BHJP
【FI】
G06T7/00 610Z
G06T7/00 350B
G01N21/88 J
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2023098860
(22)【出願日】2023-06-16
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110004185
【氏名又は名称】インフォート弁理士法人
(74)【代理人】
【識別番号】100121083
【弁理士】
【氏名又は名称】青木 宏義
(74)【代理人】
【識別番号】100138391
【弁理士】
【氏名又は名称】天田 昌行
(74)【代理人】
【識別番号】100074099
【弁理士】
【氏名又は名称】大菅 義之
(72)【発明者】
【氏名】横田 泰斗
【テーマコード(参考)】
2G051
5L096
【Fターム(参考)】
2G051AA90
2G051AB02
2G051EB05
2G051EC01
5L096BA03
5L096HA09
5L096KA04
(57)【要約】
【課題】画像に含まれる異常の種類を適切に特定する機械学習モデルを生成する。
【解決手段】コンピュータは、第1機械学習により生成された評価モデルを用いて、複数の画像それぞれを正常又は異常に分類し、かつ、複数の画像のうち異常に分類された特定数の画像それぞれの評価値を求める。コンピュータは、特定数の画像それぞれの評価値と、特定数の画像それぞれに対して付与された異常種類とを用いた第2機械学習により、異常種類分類モデルを生成する。異常種類分類モデルは、分類対象の異常画像の評価値を複数の異常種類のうち何れかに分類するモデルである。
【選択図】図2
【特許請求の範囲】
【請求項1】
第1機械学習により生成された評価モデルを用いて、複数の画像それぞれを正常又は異常に分類し、かつ、前記複数の画像のうち前記異常に分類された特定数の画像それぞれの評価値を求め、
前記特定数の画像それぞれの評価値と、前記特定数の画像それぞれに対して付与された異常種類とを用いた第2機械学習により、分類対象の異常画像の評価値を複数の異常種類のうち何れかに分類する異常種類分類モデルを生成する、
処理をコンピュータに実行させるための機械学習モデル生成支援プログラム。
【請求項2】
前記評価モデルを用いて、分類対象の画像を前記正常又は前記異常に分類し、
前記分類対象の画像が前記異常に分類された場合、前記評価モデルを用いて、前記分類対象の画像の評価値を求め、
前記異常種類分類モデルを用いて、前記分類対象の画像の評価値を前記複数の異常種類のうち何れかに分類する、
処理を前記コンピュータにさらに実行させることを特徴とする請求項1記載の機械学習モデル生成支援プログラム。
【請求項3】
前記分類対象の画像に対して、前記複数の異常種類の何れとも異なる特定の異常種類が付与された場合、前記分類対象の画像の評価値と前記特定の異常種類とを用いた第3機械学習により、前記異常種類分類モデルから出力される前記複数の異常種類に前記特定の異常種類を追加する処理を、前記コンピュータにさらに実行させることを特徴とする請求項2記載の機械学習モデル生成支援プログラム。
【請求項4】
前記特定数の画像各々の評価値は、複数の異常属性それぞれのスコアを含むことを特徴とする請求項1乃至3の何れか1項に記載の機械学習モデル生成支援プログラム。
【請求項5】
前記評価モデルは、前記複数の画像それぞれを正常又は異常に分類する判別モデルと、前記特定数の画像それぞれの評価値を求める評価値計算モデルとを含むことを特徴とする請求項1乃至3の何れか1項に記載の機械学習モデル生成支援プログラム。
【請求項6】
第1機械学習により生成された評価モデルを用いて、複数の画像それぞれを正常又は異常に分類し、かつ、前記複数の画像のうち前記異常に分類された特定数の画像それぞれの評価値を求める評価部と、
前記特定数の画像それぞれの評価値と、前記特定数の画像それぞれに対して付与された異常種類とを用いた第2機械学習により、分類対象の異常画像の評価値を複数の異常種類のうち何れかに分類する異常種類分類モデルを生成する生成部と、
を備えることを特徴とする機械学習モデル生成支援装置。
【請求項7】
第1機械学習により生成された評価モデルを用いて、複数の画像それぞれを正常又は異常に分類し、かつ、前記複数の画像のうち前記異常に分類された特定数の画像それぞれの評価値を求め、
前記特定数の画像それぞれの評価値と、前記特定数の画像それぞれに対して付与された異常種類とを用いた第2機械学習により、分類対象の異常画像の評価値を複数の異常種類のうち何れかに分類する異常種類分類モデルを生成する、
処理をコンピュータが実行することを特徴とする機械学習モデル生成支援方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、機械学習モデル生成支援技術に関する。
【背景技術】
【0002】
近年、製造業等において、部品又は製品の欠陥の有無を検査する外観検査を自動化するために、ディープラーニング技術を用いた画像検査AI(Artificial Intelligence)が使用されている。このような画像検査AIとしては、例えば、画像分類モデル及び画像生成モデルが挙げられる。
【0003】
画像分類モデルは、入力画像を、機械学習により学習された複数のクラスのうち何れかに分類する。画像分類モデルの場合、多クラスの分類が可能であるが、機械学習には、クラス毎に大量の訓練データが用いられる。
【0004】
画像生成モデルは、エンコーダ及びデコーダを含み、入力画像から、機械学習により学習された正常画像を生成して出力する。そして、画像生成モデルは、入力画像と出力画像の差分から、入力画像が正常又は異常の何れであるかを判定する。画像生成モデルの場合、2クラスの分類のみが可能であり、機械学習には、大量の正常画像の訓練データが用いられる。画像生成モデルは、オートエンコーダと呼ばれることもある。
【0005】
画像の分類に関して、画像を視覚的特徴に基づいて分類する画像分類方法が知られている(例えば、特許文献1を参照)。検査対象に存在する欠陥の分類精度を向上させることが可能な欠陥分類装置も知られている(例えば、特許文献2を参照)。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開平11-345340号公報
【特許文献2】特開2022-55953号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
外観検査では、画像検査AIの運用時に、部品又は製品の画像を異常の種類毎に多クラスで分類して、検出された異常の種類及び量を分析できることが望ましい。
【0008】
しかしながら、事前に欠陥品を大量に収集することは困難であるため、実際の欠陥品の異常画像を画像分類モデルの訓練データとして利用することは難しい。このため、画像分類モデルの機械学習では、正常画像を人為的に加工して異常画像を作成し、作成された異常画像を訓練データとして使用することが多い。
【0009】
この場合、加工された画像はすべて異常画像である。しかし、すべての異常の種類を事前に収集することは不可能であり、画像検査AIの開発時にすべての異常の種類を網羅的に定義することは難しい。このため、画像分類モデルによる分類は、正常クラスと正常以外のクラスの2クラスの分類になってしまう。仮に、すべての異常の種類を網羅的に定義できたとしても、それらの種類の欠陥品の異常画像を大量に収集することは困難であるため、画像分類モデルにより異常の種類を正確に特定することは難しい。
【0010】
また、画像生成モデルは、入力画像が正常又は異常の何れであるかを判定する2クラスの分類のみが可能であり、異常の種類を特定することは難しい。
【0011】
このように、画像検査AIは、検査対象の入力画像を正常又は異常に分類する2クラスの分類を行うことが多い。
【0012】
なお、かかる問題は、外観検査のための画像検査AIに限らず、様々な入力画像に含まれる異常の種類を特定する場合において生ずるものである。
【0013】
1つの側面において、本発明は、画像に含まれる異常の種類を適切に特定する機械学習モデルを生成することを目的とする。
【課題を解決するための手段】
【0014】
1つの案では、機械学習モデル生成支援プログラムは、以下の処理をコンピュータに実行させる。
【0015】
コンピュータは、第1機械学習により生成された評価モデルを用いて、複数の画像それぞれを正常又は異常に分類し、かつ、複数の画像のうち異常に分類された特定数の画像それぞれの評価値を求める。
【0016】
コンピュータは、特定数の画像それぞれの評価値と、特定数の画像それぞれに対して付与された異常種類とを用いた第2機械学習により、異常種類分類モデルを生成する。異常種類分類モデルは、分類対象の異常画像の評価値を複数の異常種類のうち何れかに分類するモデルである。
【発明の効果】
【0017】
1つの側面によれば、画像に含まれる異常の種類を適切に特定する機械学習モデルを生成することができる。
【図面の簡単な説明】
【0018】
図1】実施形態の機械学習モデル生成支援装置の機能的構成図である。
図2】機械学習モデル生成処理のフローチャートである。
図3】機械学習モデル生成支援装置の具体例を示す機能的構成図である。
図4】訓練データを示す図である。
図5】学習前の機械学習モデルを示す図である。
図6】評価モデルを示す図である。
図7】異常画像を示す図である。
図8】異常属性のスコアを示す図である。
図9】評価モデルに連結された異常種類分類モデルを示す図である。
図10】異常画像の評価値を示す図である。
図11】開発処理のフローチャートである。
図12A】運用処理のフローチャート(その1)である。
図12B】運用処理のフローチャート(その2)である。
図13】情報処理装置のハードウェア構成図である。
【発明を実施するための形態】
【0019】
以下、図面を参照しながら、実施形態を詳細に説明する。
【0020】
図1は、実施形態の機械学習モデル生成支援装置の機能的構成例を示している。図1の機械学習モデル生成支援装置101は、評価部111及び生成部112を含む。
【0021】
図2は、図1の機械学習モデル生成支援装置101が行う機械学習モデル生成処理の例を示すフローチャートである。まず、評価部111は、第1機械学習により生成された評価モデルを用いて、複数の画像それぞれを正常又は異常に分類し、かつ、複数の画像のうち異常に分類された特定数の画像それぞれの評価値を求める(ステップ201)。
【0022】
次に、生成部112は、特定数の画像それぞれの評価値と、特定数の画像それぞれに対して付与された異常種類とを用いた第2機械学習により、異常種類分類モデルを生成する(ステップ202)。異常種類分類モデルは、分類対象の異常画像の評価値を複数の異常種類のうち何れかに分類するモデルである。
【0023】
図1の機械学習モデル生成支援装置101によれば、画像に含まれる異常の種類を適切に特定する機械学習モデルを生成することができる。
【0024】
図3は、図1の機械学習モデル生成支援装置101の具体例を示している。図3の機械学習モデル生成支援装置301は、受付部311、第1訓練部312、取得部313、評価部314、第2訓練部315、出力部316、及び記憶部317を含む。評価部314及び第2訓練部315は、図1の評価部111及び生成部112にそれぞれ対応する。
【0025】
機械学習モデル生成支援装置301は、製造業等における部品又は製品の外観検査、建築物又は土木構造物の外観検査、監視カメラの映像の分析等の用途に適用される。機械学習モデル生成支援装置301は、機械学習モデルを開発する開発処理と、開発された機械学習モデルを運用する運用処理とを行う。
【0026】
記憶部317は、正常画像集合321を記憶している。正常画像集合321は、開発処理において訓練データとして用いられる複数の正常画像を含む。
【0027】
開発処理において、受付部311は、ユーザから入力された属性定義情報322を受け付けて、記憶部317に格納する。属性定義情報322は、1つ又は複数の異常属性を含む。各異常属性は、画像に含まれる異常の特徴を示す属性である。異常の特徴としては、幾何学的な特徴、色の特徴、模様の特徴等が用いられる。幾何学的な特徴は、直線、円形、三角形等であってもよい。
【0028】
第1訓練部312は、正常画像集合321に含まれる各正常画像を加工することで、属性定義情報322に含まれる異常属性が示す異常を含む異常画像を生成する。そして、第1訓練部312は、正常画像集合321に含まれる複数の正常画像と、正常画像集合321から生成された複数の異常画像とを含む、訓練データ323を生成して、記憶部317に格納する。正常画像を加工して異常画像を生成することで、収集が困難な異常画像を用意する必要がなくなる。
【0029】
図4は、タイルの外観検査で用いられる訓練データ323の例を示している。タイルの外観検査は、タイルの画像を用いて、タイルに欠陥があるか否かをチェックする検査である。
【0030】
図4(a)は、正常なタイルを撮影した正常画像の例を示している。図4(b)は、図4(a)の正常画像から生成された、直線の異常を含む異常画像の例を示している。図4(c)は、図4(a)の正常画像から生成された、円形の異常を含む異常画像の例を示している。図4(d)は、図4(a)の正常画像から生成された、三角形の異常を含む異常画像の例を示している。
【0031】
第1訓練部312は、正常画像中のランダムな位置にランダムな色及び大きさを有する図形を描画することで、図4(b)~図4(d)の異常画像を自動的に生成する。
【0032】
ユーザは、訓練データ323に含まれる各画像に対してラベルを付与し、機械学習モデル生成支援装置301に入力する。受付部311は、入力されたラベルを受け付ける。そして、第1訓練部312は、受け付けられたラベルを、訓練データ323に含まれる各画像に付加する。
【0033】
ラベルは、正常又は異常を示すクラスと、クラスが異常を示す場合の評価値と含む。評価値は、属性定義情報322に含まれる各異常属性のスコアを含む。異常属性のスコアは、異常画像に含まれる異常と異常属性との間の類似度を表す。例えば、直線、円形、及び三角形の3つの異常属性が属性定義情報322に含まれている場合、評価値は、直線、円形、及び三角形それぞれのスコアを含む。
【0034】
例えば、各異常属性のスコアが0~1の範囲の実数で表される場合、図4(b)の異常画像の直線のスコアは1であってもよく、円形及び三角形のスコアは0であってもよい。図4(c)の異常画像の円形のスコアは1であってもよく、直線及び三角形のスコアは0であってもよい。図4(d)の異常画像の三角形のスコアは1であってもよく、直線及び円形のスコアは0であってもよい。
【0035】
次に、第1訓練部312は、訓練データ323を用いた教師あり機械学習により、学習前の機械学習モデルを訓練することで、評価モデル324を生成して、記憶部317に格納する。評価モデル324は、学習済みの機械学習モデルである。訓練データ323を用いた教師あり機械学習は、第1機械学習に対応する。
【0036】
評価モデル324は、判別モデル及び評価値計算モデルを含む。判別モデルは、分類対象の画像を正常又は異常に分類し、評価値計算モデルは、異常に分類された画像の評価値を計算する。
【0037】
図5は、学習前の機械学習モデルの例を示している。図5の機械学習モデルは、機械学習モデル501及び機械学習モデル502を含む。本実施例では、機械学習モデル501及び機械学習モデル502は、ニューラルネットワークである場合を例に説明する。機械学習モデル501は、第1層511-1~第N層511-N(Nは2以上の整数)を含み、機械学習モデル502は、畳込層521及び全結合層522を含む。
【0038】
機械学習モデル502は、機械学習モデル501の第(n-1)層511-(n-1)に接続されており、第(n-1)層511-(n-1)は、第n層511-n及び畳込層521へデータを出力する。nは、1以上かつN未満の整数である。nは、N-1であってもよい。
【0039】
第1訓練部312は、訓練データ323に含まれる各画像を第1層511-1の入力データとして与え、各画像に付加されているラベル内のクラスを第N層511-Nの出力データとして与えることで、機械学習モデル501を訓練する。
【0040】
さらに、第1訓練部312は、訓練データ323に含まれる各異常画像を第1層511-1の入力データとして与え、各異常画像に付加されているラベル内の評価値を全結合層522の出力データとして与えることで、機械学習モデル502を訓練する。
【0041】
図6は、図5の機械学習モデル501及び機械学習モデル502から生成された評価モデル324の例を示している。図6の評価モデル324は、判別モデル601及び評価値計算モデル602を含む。判別モデル601は、第1層611-1~第N層611-Nを含み、評価値計算モデル602は、畳込層621及び全結合層622を含む。第i層611-i(i=1~N)は、図5の第i層511-iに対応し、畳込層621及び全結合層622は、図5の畳込層521及び全結合層522にそれぞれ対応する。
【0042】
評価モデル324に含まれる判別モデル及び評価値計算モデルとして、ランダムフォレスト等の他の機械学習モデルを用いてもよい。
【0043】
運用処理において、取得部313は、外部のデータベース等から分類対象の画像325を取得して、記憶部317に格納する。評価部314は、評価モデル324に含まれる判別モデルを用いて、画像325を正常又は異常に分類し、画像325が異常に分類された場合、評価モデル324に含まれる評価値計算モデルを用いて、画像325の評価値を求める。評価値は、属性定義情報322に含まれる各異常属性のスコアを含む。
【0044】
判別モデル及び評価値計算モデルを含む評価モデル324を用いることで、画像325が異常に分類された場合における、その画像325の評価値を求めることが可能になる。なお、処理に時間を要するものの、画像325が正常に分類された場合であっても、その画像325の評価値を求めることも可能である。
【0045】
評価部314は、複数の画像325について分類及び評価値計算を繰り返すことで、異常画像集合326を生成して、記憶部317に格納する。異常画像集合326は、異常に分類された画像325と、その画像325の評価値との組み合わせを含み、複数の異常画像の情報が異常画像集合326内に蓄積される。
【0046】
図7は、タイルの外観検査で蓄積される異常画像の例を示している。図7(a)は、ひび割れを含むタイルを撮影した異常画像の例を示している。図7(b)は、ビニールテープが貼られたタイルを撮影した異常画像の例を示している。図7(c)は、汚れが付着したタイルを撮影した異常画像の例を示している。図7(d)は、オイルが付着したタイルを撮影した異常画像の例を示している。図7(e)は、削られた跡を有するタイルを撮影した異常画像の例を示している。
【0047】
異常画像集合326内にK枚(Kは2以上の整数)の異常画像の情報が蓄積された場合、評価部314は、出力部316を介して、それらの異常画像を出力する。Kは、特定数の一例である。
【0048】
ユーザは、異常画像集合326に含まれる各画像325を参照しながら、各画像325に対してラベルを付与し、機械学習モデル生成支援装置301に入力する。受付部311は、入力されたラベルを受け付ける。そして、第2訓練部315は、受け付けられたラベルを、異常画像集合326に含まれる各画像325に付加する。ラベルは、画像325に含まれる異常の異常種類を示すクラスを含む。
【0049】
次に、第2訓練部315は、異常画像集合326を訓練データとして用いた教師あり機械学習により、学習前の機械学習モデルを訓練することで、異常種類分類モデル327を生成して、記憶部317に格納する。異常種類分類モデル327は、学習済みの機械学習モデルである。異常画像集合326を用いた教師あり機械学習は、第2機械学習に対応する。
【0050】
第2訓練部315は、異常画像集合326に含まれる各画像325の評価値を入力データとして与え、各画像325に付加されているラベルを出力データとして与えることで、機械学習モデルを訓練する。異常種類分類モデル327は、分類対象の異常画像の評価値を複数の異常種類のうち何れかに分類する。
【0051】
異常種類分類モデル327としては、サポートベクタマシン(Support Vector Machine,SVM)、決定木、ランダムフォレスト、ニューラルネットワーク等が用いられる。非ディープラーニング技術の分類器であるSVM等を異常種類分類モデル327として用いることで、運用処理における機械学習の学習コストを低く抑えることができる。
【0052】
図8は、異常属性のスコアの例を示している。図8(a)は、異常属性A1及び異常属性A2それぞれのスコアを含む評価値を2次元平面にプロットした評価値分布の例を示している。横軸は、異常属性A1のスコアを表し、縦軸は、異常属性A2のスコアを表す。白丸は、評価値を表す。
【0053】
図8(b)は、図8(a)の評価値を有する画像325に割り当てられた異常種類の例を示している。この例では、異常種類B1、異常種類B2、又は異常種類B3の何れかが、各評価値を有する画像325に割り当てられている。
【0054】
図8(c)は、図8(b)の異常種類を示すラベルから異常種類分類モデル327が学習した評価値の境界の例を示している。境界801は、異常種類B1に属する評価値と異常種類B2に属する評価値との間の境界を表し、境界802は、異常種類B2に属する評価値と異常種類B3に属する評価値との間の境界を表す。
【0055】
異常種類分類モデル327が生成された後、評価部314は、評価モデル324に異常種類分類モデル327を連結する。そして、評価部314は、次に取得された分類対象の画像325を、評価モデル324に含まれる判別モデルを用いて、正常又は異常に分類する。画像325が異常に分類された場合、評価部314は、評価モデル324に含まれる評価値計算モデルを用いて、画像325の評価値を求め、異常種類分類モデル327を用いて、求められた評価値を複数の異常種類のうち何れかに分類する。
【0056】
次に、評価部314は、出力部316を介して、画像325の分類結果を出力する。分類結果は、画像325と、正常又は異常を示すクラスと、クラスが異常を示す場合の異常種類を示すクラスと含む。
【0057】
図9は、評価モデル324に連結された異常種類分類モデル327の例を示している。図9の異常種類分類モデル327は、図6の評価値計算モデル602の全結合層622に接続されており、全結合層622は、異常種類分類モデル327へ評価値を出力する。
【0058】
図10は、タイルの外観検査における異常画像の評価値の例を示している。図10の評価値は、直線、円形、及び三角形の3つの異常属性それぞれのスコアを含み、異常画像は、ひび割れ、ビニールテープ、汚れ、オイル、又は削られた跡のうち何れかの異常種類に分類されている。
【0059】
図10(a)は、円形及び直線のスコアを含む2次元平面に評価値をプロットした評価値分布の例を示している。横軸は、円形のスコアを表し、縦軸は、直線のスコアを表す。
【0060】
5個の白丸は、ひび割れに分類された5枚の画像325の評価値を表す。5個の黒丸は、ビニールテープに分類された5枚の画像325の評価値を表す。5個の白の三角形は、汚れに分類された5枚の画像325の評価値を表す。5個の黒の三角形は、オイルに分類された5枚の画像325の評価値を表す。5個の黒の星は、削られた跡に分類された5枚の画像325の評価値を表す。
【0061】
図10(b)は、三角形及び直線のスコアを含む2次元平面に評価値をプロットした評価値分布の例を示している。横軸は、三角形のスコアを表し、縦軸は、直線のスコアを表す。図10(c)は、円形及び三角形のスコアを含む2次元平面に評価値をプロットした評価値分布の例を示している。横軸は、円形のスコアを表し、縦軸は、三角形のスコアを表す。
【0062】
画像325に含まれる異常の異常種類に応じて、異常と各異常属性との間の類似度が異なるため、異常種類に応じて各異常属性のスコアが変化する。
【0063】
例えば、タイルのひび割れは直線に類似しているため、図10(a)~図10(c)に示されるように、ひび割れに分類された白丸の評価値では、直線のスコアが大きくなり、円形及び三角形のスコアが小さくなる。また、タイルに付着しているオイルは円形に類似しているため、図10(a)~図10(c)に示されるように、オイルに分類された黒の三角形の評価値では、円形のスコアが大きくなり、直線及び三角形のスコアが小さくなる。
【0064】
このように、異常種類に応じて直線、円形、及び三角形それぞれのスコアの傾向が異なるため、これらの異常属性のスコアを用いることで、異なる異常種類の評価値がおおまかに分離されていることが分かる。
【0065】
図3の機械学習モデル生成支援装置301によれば、画像に含まれる異常の特徴を示す異常属性を定義して、異常属性のスコアを含む評価値を求めることで、異常画像を何れかの異常種類に分類することが可能になる。特に、複数の異常属性それぞれのスコアを含む評価値を用いることで、異常種類の分類精度が向上する。
【0066】
開発処理において異常属性を定義しておくことで、異常種類を定義しなくても、評価モデル324の機械学習を実施することができる。
【0067】
運用処理において一定数の異常画像が蓄積された時点で、異常種類分類モデル327の機械学習を実施することで、事前に異常画像を収集しなくても、画像325の異常種類を適切に特定する異常種類分類モデル327を生成することができる。
【0068】
ところで、運用処理において、異常種類分類モデル327が生成された後に、新たな異常種類を含む異常画像が発生することもあり得る。この場合、その異常画像に対して新たな異常種類を示すラベルを付与して、異常種類分類モデル327の再訓練を実施することも可能である。新たな異常種類は、複数の異常種類の何れとも異なる特定の異常種類の一例である。
【0069】
異常種類分類モデル327の再訓練を実施する場合、ユーザは、新たな異常種類の異常を含む画像325に対して既に付与されているラベルを、新たな異常種類を示すラベルに変更する。
【0070】
第2訓練部315は、新たな異常種類の異常を含む画像325の評価値とその異常種類を示すラベルとを訓練データとして用いた教師あり機械学習により、異常種類分類モデル327を訓練することで、異常種類分類モデル327を更新する。これにより、異常種類分類モデル327から出力される異常種類のクラスに、新たな異常種類が追加される。新たな異常種類の異常を含む画像325の評価値とその異常種類を示すラベルとを用いた教師あり機械学習は、第3機械学習の一例である。
【0071】
その後、評価部314は、更新された異常種類分類モデル327を用いて、異常に分類された画像325の評価値を、追加された異常種類を含む複数の異常種類のうち何れかに分類する。異常種類分類モデル327の更新は、新たな異常種類が検出される度に行われる。
【0072】
運用処理における評価モデル324の再訓練は不要であるため、異常種類分類モデル327の再訓練を実施するだけで、新たな異常種類のクラスを追加することができる。特に、評価モデル324が学習コストの高いディープラーニング技術の機械学習モデルであり、かつ、異常種類分類モデル327が学習コストの低い非ディープラーニング技術の機械学習モデルである場合に、効率よく異常種類を追加することができる。
【0073】
図11は、図3の機械学習モデル生成支援装置301が行う開発処理の例を示すフローチャートである。以下では、一例として、図5の機械学習モデル501及び機械学習モデル502を用いた開発処理について説明する。
【0074】
まず、受付部311は、ユーザから入力された属性定義情報322を受け付ける(ステップ1101)。
【0075】
次に、第1訓練部312は、正常画像集合321に含まれる各正常画像を加工することで、属性定義情報322に含まれる異常属性が示す異常を含む異常画像を生成する(ステップ1102)。そして、第1訓練部312は、正常画像集合321に含まれる複数の正常画像と、正常画像集合321から生成された複数の異常画像とを含む、訓練データ323を生成する(ステップ1103)。
【0076】
ユーザは、訓練データ323に含まれる各画像に対してラベルを付与し、機械学習モデル生成支援装置301に入力する。受付部311は、ユーザから入力されたラベルを受け付ける(ステップ1104)。そして、第1訓練部312は、受け付けられたラベルを、訓練データ323に含まれる各画像に付加する(ステップ1105)。
【0077】
次に、第1訓練部312は、訓練データ323を用いた教師あり機械学習により、機械学習モデル501を訓練する(ステップ1106)。ステップ1106において、第1訓練部312は、訓練データ323に含まれる1枚の画像を機械学習モデル501の入力データとして与え、その画像に付加されているラベル内の正常又は異常を示すクラスを、機械学習モデル501の出力データとして与える。
【0078】
次に、第1訓練部312は、クラスが異常を示しているか否かをチェックする(ステップ1107)。クラスが異常を示している場合(ステップ1107,YES)、第1訓練部312は、訓練データ323を用いた教師あり機械学習により、機械学習モデル502を訓練する(ステップ1108)。ステップ1108において、第1訓練部312は、機械学習モデル501に与えられた画像に付加されているラベル内の評価値を、機械学習モデル502の出力データとして与える。
【0079】
次に、第1訓練部312は、訓練データ323に含まれるすべての画像が機械学習モデル501に入力されたか否かをチェックする(ステップ1109)。未入力の画像が残っている場合(ステップ1109,NO)、機械学習モデル生成支援装置301は、次の画像についてステップ1106以降の処理を繰り返す。
【0080】
クラスが正常を示している場合(ステップ1107,NO)、第1訓練部312は、ステップ1109以降の処理を行う。すべての画像が機械学習モデル501に入力された場合(ステップ1109,YES)、機械学習モデル生成支援装置301は、処理を終了する。
【0081】
図11の開発処理により、図6の判別モデル601及び評価値計算モデル602を含む評価モデル324が生成される。判別モデル601は、学習済みの機械学習モデル501に対応し、評価値計算モデル602は、学習済みの機械学習モデル502に対応する。
【0082】
図12A及び図12Bは、図3の機械学習モデル生成支援装置301が行う運用処理の例を示すフローチャートである。まず、取得部313は、外部のデータベース等から分類対象の画像325を取得する(ステップ1201)。
【0083】
次に、評価部314は、評価モデル324に含まれる判別モデルを用いて、画像325を正常又は異常に分類し、画像325が異常に分類されたか否かをチェックする(ステップ1202)。画像325が正常に分類された場合(ステップ1202,NO)、機械学習モデル生成支援装置301は、次の画像325についてステップ1201以降の処理を繰り返す。
【0084】
画像325が異常に分類された場合(ステップ1202,YES)、評価部314は、評価モデル324に含まれる評価値計算モデルを用いて、画像325の評価値を求める(ステップ1203)。そして、評価部314は、画像325と評価値の組み合わせを異常画像集合326に記録する。
【0085】
次に、評価部314は、異常画像集合326にK枚の画像325の情報が記録されたか否かをチェックする(ステップ1204)。記録された画像325がK枚に達していない場合(ステップ1204,NO)、機械学習モデル生成支援装置301は、次の画像325についてステップ1201以降の処理を繰り返す。
【0086】
記録された画像325がK枚に達した場合(ステップ1204,YES)、評価部314は、出力部316を介して、それらの画像325を出力する(ステップ1205)。
【0087】
ユーザは、出力された画像325を参照しながら、各画像325に対してラベルを付与し、機械学習モデル生成支援装置301に入力する。受付部311は、入力されたラベルを受け付ける(ステップ1206)。そして、第2訓練部315は、受け付けられたラベルを、異常画像集合326に含まれる各画像325に付加する(ステップ1207)。
【0088】
次に、第2訓練部315は、異常画像集合326を訓練データとして用いた教師あり機械学習により、学習前の機械学習モデルを訓練することで、異常種類分類モデル327を生成する(ステップ1208)。そして、評価部314は、評価モデル324に異常種類分類モデル327を連結する。
【0089】
ステップ1208において、第2訓練部315は、異常画像集合326に含まれる各画像325の評価値を機械学習モデルの入力データとして与え、各画像325に付加されたラベル内の異常種類を示すクラスを、機械学習モデルの出力データとして与える。
【0090】
次に、取得部313は、外部のデータベース等から分類対象の画像325を取得する(ステップ1209)。
【0091】
次に、評価部314は、評価モデル324に含まれる判別モデルを用いて、画像325を正常又は異常に分類し、画像325が異常に分類されたか否かをチェックする(ステップ1210)。画像325が正常に分類された場合(ステップ1210,NO)、評価部314は、出力部316を介して、画像325の分類結果を出力する(ステップ1217)。そして、機械学習モデル生成支援装置301は、次の画像325についてステップ1209以降の処理を繰り返す。
【0092】
画像325が異常に分類された場合(ステップ1210,YES)、評価部314は、評価モデル324に含まれる評価値計算モデルと異常種類分類モデル327とを用いて、画像325を何れかの異常種類に分類する(ステップ1211)。そして、評価部314は、出力部316を介して、画像325の分類結果を出力する(ステップ1212)。
【0093】
ユーザは、分類結果を参照しながら、画像325の異常種類を変更するか否かを決定する。異常種類を変更する場合、ユーザは、画像325に対して新たな異常種類を示す新たなラベルを付与し、機械学習モデル生成支援装置301に入力する。
【0094】
受付部311は、新たなラベルが入力されたか否かをチェックする(ステップ1213)。新たなラベルが入力されていない場合(ステップ1213,NO)、機械学習モデル生成支援装置301は、次の画像325についてステップ1209以降の処理を繰り返す。
【0095】
新たなラベルが入力された場合(ステップ1213,YES)、受付部311は、入力されたラベルを受け付ける(ステップ1214)。そして、第2訓練部315は、受け付けられたラベルを、異常に分類された画像325に付加する(ステップ1215)。
【0096】
次に、第2訓練部315は、新たな異常種類の異常を含む画像325の評価値とその異常種類を示すラベルとを訓練データとして用いた教師あり機械学習により、異常種類分類モデル327を訓練する。これにより、第2訓練部315は、異常種類分類モデル327を更新する(ステップ1216)。そして、機械学習モデル生成支援装置301は、次の画像325についてステップ1209以降の処理を繰り返す。
【0097】
図1の機械学習モデル生成支援装置101及び図3の機械学習モデル生成支援装置301の構成は一例に過ぎず、機械学習モデル生成支援装置の用途又は条件に応じて一部の構成要素を省略又は変更してもよい。例えば、図3の機械学習モデル生成支援装置301において、開発処理が外部の装置により行われる場合は、第1訓練部312を省略することができる。
【0098】
図2図11図12A、及び図12Bのフローチャートは一例に過ぎず、機械学習モデル生成支援装置の構成又は条件に応じて、一部の処理を省略又は変更してもよい。例えば、図3の機械学習モデル生成支援装置301において、異常種類分類モデル327を更新しない場合は、図12Bのステップ1213~ステップ1216の処理を省略することができる。
【0099】
図4(a)に示した正常画像、図4(b)~図4(d)に示した異常画像、及び図7(a)~図7(e)に示した異常画像は一例に過ぎず、正常画像及び異常画像は、機械学習モデル生成支援装置301の用途に応じて変化する。
【0100】
図5に示した学習前の機械学習モデルは一例に過ぎず、機械学習モデルの構成は、機械学習モデル生成支援装置301の用途に応じて変化する。図6及び図9に示した評価モデル324は一例に過ぎず、評価モデル324の構成は、学習前の機械学習モデルに応じて変化する。
【0101】
図8及び図10に示した異常属性のスコアは一例に過ぎず、異常属性のスコアは、異常画像に応じて変化する。
【0102】
図13は、図1の機械学習モデル生成支援装置101及び図3の機械学習モデル生成支援装置301として用いられる情報処理装置(コンピュータ)のハードウェア構成例を示している。図13の情報処理装置は、CPU(Central Processing Unit)1301、メモリ1302、入力装置1303、出力装置1304、補助記憶装置1305、媒体駆動装置1306、及びネットワーク接続装置1307を含む。これらの構成要素はハードウェアであり、バス1308により互いに接続されている。
【0103】
メモリ1302は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)等の半導体メモリであり、処理に用いられるプログラム及びデータを記憶する。メモリ1302は、図3の記憶部317として動作してもよい。
【0104】
CPU1301(プロセッサ)は、例えば、メモリ1302を利用してプログラムを実行することにより、図1の評価部111及び生成部112として動作する。CPU1301は、メモリ1302を利用してプログラムを実行することにより、図3の受付部311、第1訓練部312、取得部313、評価部314、及び第2訓練部315としても動作する。
【0105】
入力装置1303は、例えば、キーボード、ポインティングデバイス等であり、ユーザからの指示又は情報の入力に用いられる。出力装置1304は、例えば、表示装置、プリンタ等であり、ユーザへの問い合わせ又は指示、及び処理結果の出力に用いられる。処理結果は、画像325の分類結果であってもよい。出力装置1304は、図3の出力部316として動作してもよい。
【0106】
補助記憶装置1305は、例えば、磁気ディスク装置、光ディスク装置、光磁気ディスク装置、テープ装置等である。補助記憶装置1305は、ハードディスクドライブ又はSSD(Solid State Drive)であってもよい。情報処理装置は、補助記憶装置1305にプログラム及びデータを格納しておき、それらをメモリ1302にロードして使用することができる。補助記憶装置1305は、図3の記憶部317として動作してもよい。
【0107】
媒体駆動装置1306は、可搬型記録媒体1309を駆動し、その記録内容にアクセスする。可搬型記録媒体1309は、メモリデバイス、フレキシブルディスク、光ディスク、光磁気ディスク等である。可搬型記録媒体1309は、CD-ROM(Compact Disk Read Only Memory)、DVD(Digital Versatile Disk)、USB(Universal Serial Bus)メモリ等であってもよい。ユーザは、可搬型記録媒体1309にプログラム及びデータを格納しておき、それらをメモリ1302にロードして使用することができる。
【0108】
このように、処理に用いられるプログラム及びデータを格納するコンピュータ読み取り可能な記録媒体は、メモリ1302、補助記憶装置1305、又は可搬型記録媒体1309のような、物理的な(非一時的な)記録媒体である。
【0109】
ネットワーク接続装置1307は、WAN(Wide Area Network)、LAN(Local Area Network)等の通信ネットワークに接続され、通信に伴うデータ変換を行う通信インタフェース回路である。情報処理装置は、プログラム及びデータを外部の装置からネットワーク接続装置1307を介して受信し、それらをメモリ1302にロードして使用することができる。ネットワーク接続装置1307は、図3の出力部316として動作してもよい。
【0110】
なお、情報処理装置が図13のすべての構成要素を含む必要はなく、情報処理装置の用途又は条件に応じて一部の構成要素を省略又は変更してもよい。例えば、可搬型記録媒体1309又は通信ネットワークを使用しない場合は、媒体駆動装置1306又はネットワーク接続装置1307を省略することができる。
【0111】
開示の実施形態とその利点について詳しく説明したが、当業者は、特許請求の範囲に明確に記載した本発明の範囲から逸脱することなく、様々な変更、追加、省略をすることができるであろう。
【0112】
図1乃至図13を参照しながら説明した実施形態に関し、さらに以下の付記を開示する。
(付記1)
第1機械学習により生成された評価モデルを用いて、複数の画像それぞれを正常又は異常に分類し、かつ、前記複数の画像のうち前記異常に分類された特定数の画像それぞれの評価値を求め、
前記特定数の画像それぞれの評価値と、前記特定数の画像それぞれに対して付与された異常種類とを用いた第2機械学習により、分類対象の異常画像の評価値を複数の異常種類のうち何れかに分類する異常種類分類モデルを生成する、
処理をコンピュータに実行させるための機械学習モデル生成支援プログラム。
(付記2)
前記評価モデルを用いて、分類対象の画像を前記正常又は前記異常に分類し、
前記分類対象の画像が前記異常に分類された場合、前記評価モデルを用いて、前記分類対象の画像の評価値を求め、
前記異常種類分類モデルを用いて、前記分類対象の画像の評価値を前記複数の異常種類のうち何れかに分類する、
処理を前記コンピュータにさらに実行させることを特徴とする付記1記載の機械学習モデル生成支援プログラム。
(付記3)
前記分類対象の画像に対して、前記複数の異常種類の何れとも異なる特定の異常種類が付与された場合、前記分類対象の画像の評価値と前記特定の異常種類とを用いた第3機械学習により、前記異常種類分類モデルから出力される前記複数の異常種類に前記特定の異常種類を追加する処理を、前記コンピュータにさらに実行させることを特徴とする付記2記載の機械学習モデル生成支援プログラム。
(付記4)
前記特定数の画像各々の評価値は、複数の異常属性それぞれのスコアを含むことを特徴とする付記1乃至3の何れか1項に記載の機械学習モデル生成支援プログラム。
(付記5)
前記評価モデルは、前記複数の画像それぞれを正常又は異常に分類する判別モデルと、前記特定数の画像それぞれの評価値を求める評価値計算モデルとを含むことを特徴とする付記1乃至3の何れか1項に記載の機械学習モデル生成支援プログラム。
(付記6)
第1機械学習により生成された評価モデルを用いて、複数の画像それぞれを正常又は異常に分類し、かつ、前記複数の画像のうち前記異常に分類された特定数の画像それぞれの評価値を求める評価部と、
前記特定数の画像それぞれの評価値と、前記特定数の画像それぞれに対して付与された異常種類とを用いた第2機械学習により、分類対象の異常画像の評価値を複数の異常種類のうち何れかに分類する異常種類分類モデルを生成する生成部と、
を備えることを特徴とする機械学習モデル生成支援装置。
(付記7)
前記評価部は、前記評価モデルを用いて、分類対象の画像を前記正常又は前記異常に分類し、前記分類対象の画像が前記異常に分類された場合、前記評価モデルを用いて、前記分類対象の画像の評価値を求め、前記異常種類分類モデルを用いて、前記分類対象の画像の評価値を前記複数の異常種類のうち何れかに分類することを特徴とする付記6記載の機械学習モデル生成支援装置。
(付記8)
前記生成部は、前記分類対象の画像に対して、前記複数の異常種類の何れとも異なる特定の異常種類が付与された場合、前記分類対象の画像の評価値と前記特定の異常種類とを用いた第3機械学習により、前記異常種類分類モデルから出力される前記複数の異常種類に前記特定の異常種類を追加することを特徴とする付記7記載の機械学習モデル生成支援装置。
(付記9)
前記特定数の画像各々の評価値は、複数の異常属性それぞれのスコアを含むことを特徴とする付記6乃至8の何れか1項に記載の機械学習モデル生成支援装置。
(付記10)
前記評価モデルは、前記複数の画像それぞれを正常又は異常に分類する判別モデルと、前記特定数の画像それぞれの評価値を求める評価値計算モデルとを含むことを特徴とする付記6乃至8の何れか1項に記載の機械学習モデル生成支援装置。
(付記11)
第1機械学習により生成された評価モデルを用いて、複数の画像それぞれを正常又は異常に分類し、かつ、前記複数の画像のうち前記異常に分類された特定数の画像それぞれの評価値を求め、
前記特定数の画像それぞれの評価値と、前記特定数の画像それぞれに対して付与された異常種類とを用いた第2機械学習により、分類対象の異常画像の評価値を複数の異常種類のうち何れかに分類する異常種類分類モデルを生成する、
処理をコンピュータが実行することを特徴とする機械学習モデル生成支援方法。
(付記12)
前記評価モデルを用いて、分類対象の画像を前記正常又は前記異常に分類し、
前記分類対象の画像が前記異常に分類された場合、前記評価モデルを用いて、前記分類対象の画像の評価値を求め、
前記異常種類分類モデルを用いて、前記分類対象の画像の評価値を前記複数の異常種類のうち何れかに分類する、
処理を前記コンピュータがさらに実行することを特徴とする付記11記載の機械学習モデル生成支援方法。
(付記13)
前記分類対象の画像に対して、前記複数の異常種類の何れとも異なる特定の異常種類が付与された場合、前記分類対象の画像の評価値と前記特定の異常種類とを用いた第3機械学習により、前記異常種類分類モデルから出力される前記複数の異常種類に前記特定の異常種類を追加する処理を、前記コンピュータがさらに実行することを特徴とする付記12記載の機械学習モデル生成支援方法。
(付記14)
前記特定数の画像各々の評価値は、複数の異常属性それぞれのスコアを含むことを特徴とする付記11乃至13の何れか1項に記載の機械学習モデル生成支援方法。
(付記15)
前記評価モデルは、前記複数の画像それぞれを正常又は異常に分類する判別モデルと、前記特定数の画像それぞれの評価値を求める評価値計算モデルとを含むことを特徴とする付記11乃至13の何れか1項に記載の機械学習モデル生成支援方法。
【符号の説明】
【0113】
101、301 機械学習モデル生成支援装置
111、314 評価部
112 生成部
311 受付部
312 第1訓練部
313 取得部
315 第2訓練部
316 出力部
317 記憶部
321 正常画像集合
322 属性定義情報
323 訓練データ
324 評価モデル
325 画像
326 異常画像集合
327 異常種類分類モデル
501、502 機械学習モデル
511-1~511-N、611-1~611-N 第1層~第N層
521、621 畳込層
522、622 全結合層
601 判別モデル
602 評価値計算モデル
801、802 境界
1301 CPU
1302 メモリ
1303 入力装置
1304 出力装置
1305 補助記憶装置
1306 媒体駆動装置
1307 ネットワーク接続装置
1308 バス
1309 可搬型記録媒体
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12A
図12B
図13