JP7299002B2 - 判別装置及び機械学習方法 - Google Patents

判別装置及び機械学習方法 Download PDF

Info

Publication number
JP7299002B2
JP7299002B2 JP2018156624A JP2018156624A JP7299002B2 JP 7299002 B2 JP7299002 B2 JP 7299002B2 JP 2018156624 A JP2018156624 A JP 2018156624A JP 2018156624 A JP2018156624 A JP 2018156624A JP 7299002 B2 JP7299002 B2 JP 7299002B2
Authority
JP
Japan
Prior art keywords
learning
learning data
data
unit
sub
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018156624A
Other languages
English (en)
Other versions
JP2020030692A (ja
Inventor
勇太 並木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Priority to JP2018156624A priority Critical patent/JP7299002B2/ja
Priority to US16/640,729 priority patent/US11461584B2/en
Priority to PCT/JP2019/030247 priority patent/WO2020039882A1/ja
Priority to CN201980004214.7A priority patent/CN111183437A/zh
Priority to DE112019000093.4T priority patent/DE112019000093T5/de
Publication of JP2020030692A publication Critical patent/JP2020030692A/ja
Application granted granted Critical
Publication of JP7299002B2 publication Critical patent/JP7299002B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2132Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on discrimination criteria, e.g. discriminant analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/7715Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/778Active pattern-learning, e.g. online learning of image or video features
    • G06V10/7796Active pattern-learning, e.g. online learning of image or video features based on specific statistical tests
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Operations Research (AREA)
  • Algebra (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Image Analysis (AREA)

Description

本発明は、判別装置及び機械学習方法に関し、特にアノテーションの誤りを検出する判別装置及び機械学習方法に関する。
従来、工場において製造された製品等の対象物の外観を撮像手段で撮像し、撮像した画像に基づいた製品の仕分け作業や、正常品とキズや欠け等がある欠陥品との分類を行なう外観検査等が行なわれている(例えば、特許文献1~3等)。対象物の外観を撮像した画像に基づいて該対象物の外観検査を行う手法として、ディープニューラルネットワーク等の機械学習器を利用した機械学習が用いる手法がある。このような手法を取る場合、画像を用いた外観検査システムで学習を行う前段階として、画像に不良個所があるかどうかを示すラベルを、それぞれの画像データに関連付けるアノテーションと呼ぶ作業を行う。アノテーションは画像を1枚ずつ作業者が確認し、画像内の対象物に不良個所があるかどうかを目視で判断して行っている。
特開2015-021756号公報 特開2005-052926号公報 特開2013-140090号公報
このように画像へのアノテーションは通常人間が手動で行うため、対象物に明らかな変形や傷等がある場合には適切に不良品のラベルを付与することができるが、対象物の特徴の位置や寸法(例えば、製品に空いている穴の位置や寸法等)といったような、良品と比較した際の微妙な違いについては見落としがちで、不整合なくアノテーションすることが困難である。また、人間のケアレスミスによって、明らかに対象物に不良がある場合であっても良品としてしまうことやその逆は容易に起こり得る。
このような人為的ミスによりアノテーションに矛盾が存在することで、的確に不良を判断できる学習器(学習済みモデル)の学習が行えなくなり、その結果、機械学習による検査結果の正解率が実用レベルに達しないということが起こる。人間がこのような間違いを正すためには、すべてのアノテーションを目視で再確認する必要があるが、これは非常に手間のかかる作業になる。このような問題は、画像による外観検査に用いられる機械学習器に特化したものではなく、人間がアノテーションすることで作成された学習データを用いた機械学習を行う場合に同様の問題が生じる。
そこで本発明の目的は、アノテーションの誤りを検出することが可能な判別装置及び機械学習方法を提供することである。
本発明は、学習データのセットから抽出される学習データと検証データとに基づくラベルの判別処理を繰り返し行い、その判別結果について統計的な処理を施すことで、誤っている可能性が高いアノテーションを検知し、これを作業者に提示して是正させる。この手法により、アノテーションの精度を向上させることで機械学習器をより的確に学習させることを可能とし、このような学習により生成した学習済みモデルを用いることで対象物の判別の精度を向上させる。
より具体的には、以下の手順によりアノテーションの誤りを検出する。
手順1)学習データセットからあらかじめ決められた数または割合だけ、学習データを選び出す。選び出す方法はランダムに選び出す等、偏りが起きにくい方法が望ましい。
手順2)手順1で選出された学習データの集合をサブ学習データセットとする。
手順3)手順1で選出されなかった残りの学習データの集合をサブ検証データセットとする。
手順4)サブ学習データセットを使って通常の学習と同じように学習器の学習を行う。
手順5)手順4で生成された学習器を使ってサブ検証データセットに対して判別を行う。
手順6)判別が行われた各学習データについて、その学習データの判別回数を1増やすと共に、判別結果がアノテーションと一致していたらその学習データの正解回数を1増やす。
手順7)手順1での選び方を変えながら、手順1~6をあらかじめ決められた回数だけ行う。
手順8)各学習データについて、正解回数を判別回数で割った値をその学習データのアノテーションが正しい確率として算出する。
手順9)手順8で算出した各学習データの確率があらかじめ定めた閾値より低い学習データを、アノテーションが誤っている可能性がある学習データとしてユーザに提示し、アノテーションが正しいか再確認、必要があれば修正することを促す。
手順10)アノテーションの誤りを修正したのちに、全ての学習データセットを用いて学習を行う。
そして、本発明の一態様は、アノテーションの誤りを検出する判別装置であって、複数の学習データからなる学習データセットを記憶する学習データ記憶部と、判別する対象物に係るデータを取得して学習データとして前記学習データ記憶部に記憶するデータ取得部と、前記学習データに対してラベルを付与するラベル付与部と、前記学習データ記憶部に記憶される学習データセットから、学習に用いるサブ学習データセットと、検証に用いるサブ検証データセットを抽出するサブデータセット抽出部と、前記サブ学習データセットに基づいた教師あり学習を行い、前記対象物に係るデータからラベルを判別する学習済みモデルを生成する学習部と、前記サブ検証データセットに含まれるそれぞれの学習データについて、前記学習済みモデルを用いた判別処理を行う判別部と、前記判別部によるそれぞれの学習データに対する判別処理の結果を該学習データと関連付けて前記学習データ記憶部へと記録する検証結果記録部と、前記学習データ記憶部にそれぞれの学習データと関連付けて記録された判別処理の結果に基づいて、前記ラベル付与部により付与されたラベルが誤っている可能性がある学習データを検出する正誤検出部と、を備え、前記サブデータセット抽出部によるサブ検証データセットの抽出、前記学習部による学習済みモデルの生成及び前記判別部による判別処理は2以上の所定の回数だけ実行され、前記正誤検出部は、前記判別部が2以上の所定の回数だけ実行した判別処理の結果に基づいて前記ラベル付与部により付与されたラベルが正しい確率を算出し、算出したラベルが正しい確率に基づいて前記ラベル付与部により付与されたラベルが誤っている可能性がある学習データを検出する、を備えた判別装置である。
本発明の他の態様は、ラベルが付与されたデータに基づくデータセットから、学習に用いるサブ学習データセットと、検証に用いるサブ検証データセットを抽出する抽出部と、前記サブ学習データセットを用いて学習された学習モデルに前記サブ検証データセットに含まれるデータを入力した際の前記学習モデルからの出力に基づいて、前記サブ検証データセットに含まれるデータについて判別処理を行う判別部と、前記サブ検証データセットに含まれる各データについて、前記判別処理の結果が、付与された前記ラベルと一致していた回数を算出する正誤検出部と、を備え、前記抽出部による抽出および前記判別部による判別処理は、2以上の所定の回数だけ実行され、前記正誤検出部は、前記一致していた回数に基づいて、付与された前記ラベルが誤っている可能性があるデータかを検出する、判別装置である。
本発明の他の態様は、複数の学習データからなる学習データセットを記憶する学習データ記憶部を備える判別装置により実行される、アノテーションの誤りを検出する機械学習方法において、判別する対象物に係るデータを取得して前記学習データとして前期学習データ記憶部に記憶する第1ステップと、前記第1ステップで取得された前記学習データに対してラベルを付与する第2ステップと、前記第2ステップでラベルが付与された学習データのセットから、学習に用いるサブ学習データセットと、検証に用いるサブ検証データセットを抽出する第3ステップと、前記サブ学習データセットに基づいた教師あり学習を行い、前記対象物に係るデータからラベルを判別する学習済みモデルを生成する第4ステップと、前記サブ検証データセットに含まれるそれぞれの学習データについて、前記学習済みモデルを用いた判別処理を行う第5ステップと、前記第5ステップでのそれぞれの学習データに対する判別処理の結果を該学習データと関連付けて記録する第6ステップと、前記第6ステップでそれぞれの学習データと関連付けて記録された判別処理の結果に基づいて、付与されたラベルが誤っている可能性がある学習データを検出する第7ステップと、を実行する機械学習方法であって、前記第3~5ステップは2以上の所定の回数だけ実行され、前記第7ステップは、前記5ステップにおいて2以上の所定の回数だけ実行された判別処理の結果に基づいてそれぞれの学習データに付与されたラベルが正しい確率を算出し、算出したラベルが正しい確率に基づいて、付与されたラベルが誤っている可能性がある学習データを検出する、機械学習方法である。
本発明により、作業者が手作業で行った対象物に係るデータに対するアノテーション(ラベルの付与)について、誤っている可能性があるラベルを自動的に検出することができるようになり、このようにして誤りを検出したラベルを修正することで、正しい学習データに基づいた学習済みモデルを生成することが可能となる。
一実施形態による機械学習装置を備えた判別装置の要部を示す概略的なハードウェア構成図である。 一実施形態による判別装置の概略的な機能ブロック図である。 学習データ記憶部に記憶される学習データセットを例示する図である。 一実施形態による判別装置上で実行される処理の概略的なフローチャートである。
以下、本発明の実施形態を図面と共に説明する。
図1は第1の実施形態による機械学習装置を備えた判別装置の要部を示す概略的なハードウェア構成図である。本実施形態では、アノテーションの間違いを検知する機械学習方法を、外観検査に用いられる判別装置上に実装した場合の例を用いて説明する。
図1は本発明の一実施形態による判別装置の要部を示す概略的なハードウェア構成図である。本実施形態の判別装置1は、工場に設置されているパソコンや、工場に設置される機械を管理するセルコンピュータ、ホストコンピュータ、エッジコンピュータ、クラウドサーバ等のコンピュータとして実装することが出来る。図1は、工場に設置されているパソコンとして判別装置1を実装した場合の例を示している。
本実施形態による判別装置1が備えるCPU11は、判別装置1を全体的に制御するプロセッサである。CPU11は、ROM12に格納されたシステム・プログラムをバス20を介して読み出し、該システム・プログラムに従って判別装置1全体を制御する。RAM13には一時的な計算データ、入力装置71を介して作業者が入力した各種データ等が一時的に格納される。
不揮発性メモリ14は、例えば図示しないバッテリでバックアップされたメモリやSSD等で構成され、判別装置1の電源がオフされても記憶状態が保持される。不揮発性メモリ14には、判別装置1の動作に係る設定情報が格納される設定領域や、入力装置71から入力されたプログラムやデータ等、図示しない外部記憶装置やネットワークを介して読み込まれた学習データセット等が記憶される。不揮発性メモリ14に記憶されたプログラムや各種データは、実行時/利用時にはRAM13に展開されても良い。また、ROM12には、学習データセットを解析するための公知の解析プログラムや後述する機械学習装置100とのやりとりを制御するためのシステム・プログラムなどを含むシステム・プログラムがあらかじめ書き込まれている。
撮像装置4は、例えばCCD等の撮像素子を有する電子カメラであり、撮像により2次元画像を撮像面(CCDアレイ面上)で検出する機能を持つ周知の受光デバイスである。撮像装置4は、例えば図示しないロボットのハンドに取り付けられ、該ロボットにより判別対象となる対象物を撮像する撮像位置に移動され、該対象物を撮像して得られた画像データをインタフェース19を介してCPU11に渡す。撮像装置4による対象物撮像に係る制御は、判別装置1がプログラムを実行することにより行うようにしてもよいし、ロボットを制御するロボットコントローラや、他の装置からの制御により行うようにしても良い。
表示装置70には、メモリ上に読み込まれた各データ、プログラム等が実行された結果として得られたデータ、撮像装置4が撮像して得られた対象物の画像データ、後述する機械学習装置100から出力されたデータ等がインタフェース17を介して出力されて表示される。また、キーボードやポインティングデバイス等から構成される入力装置71は、作業者による操作に基づく指令,データ等を受けて、インタフェース18を介してCPU11に渡す。
インタフェース21は、判別装置1と機械学習装置100とを接続するためのインタフェースである。機械学習装置100は、機械学習装置100全体を統御するプロセッサ101と、システム・プログラム等を記憶したROM102、機械学習に係る各処理における一時的な記憶を行うためのRAM103、及び学習モデル等の記憶に用いられる不揮発性メモリ104を備える。機械学習装置100は、インタフェース21を介して判別装置1で取得可能な各情報(例えば、学習データセット等)を観測することができる。また、判別装置1は、機械学習装置100から出力される処理結果をインタフェース21を介して取得する。
図2は、第1の実施形態による判別装置1と機械学習装置100の概略的な機能ブロック図である。図2に示した各機能ブロックは、図1に示した判別装置1が備えるCPU11、及び機械学習装置100のプロセッサ101が、それぞれのシステム・プログラムを実行し、判別装置1及び機械学習装置100の各部の動作を制御することにより実現される。
本実施形態の判別装置1は、データ取得部30、ラベル付与部32、サブデータセット抽出部34、検証結果記録部40、正誤検出部42を備え、また、判別装置1が備える機械学習装置100は、学習部110、判別部120を備える。
データ取得部30は、撮像装置4や、図示しない外部記憶装置やネットワークを介して、判別する対象物に係るデータを取得する。本実施形態では、判別する対象物は外観検査を行う製品等であるから、データ取得部30が取得する対象物に係るデータは画像データとなる。この時、データ取得部30は、取得したデータを判別装置1の内部で扱うデータ形式へと前処理するようにしても良く、例えば、本実施形態のように対象物に係るデータが画像である場合には、特開2017-091079号公報等により公知となっている画像処理手法により、画像データ内の対象物の位置や姿勢を検出し、検出した位置、姿勢で予め定められた領域の部分画像を切り抜く、といった処理をするようにしても良い。データ取得部30が取得した対象物に係るデータは、不揮発性メモリ14内に記憶領域として確保された学習データ記憶部50に学習データとして記憶される。なお、学習データ記憶部50に記憶されるそれぞれの学習データについて判別回数/正解回数を関連付けて記憶するようにしておき、データ取得部30により学習データ記憶部50に記憶された段階で、該学習データに関する判別回数/正解回数を0にリセットしておく。
ラベル付与部32は、データ取得部30が取得して学習データ記憶部50に記憶した学習データ(対象物に係るデータ)に対してラベルを付与(アノテーション)し、付与したラベルを該学習データと関連付けて学習データ記憶部50に記憶する機能手段である。ラベル付与部32は、例えば学習データ記憶部50に記憶されている学習データを表示装置70に表示させ、これを見た作業者が入力装置71を操作して各学習データに対して付与したラベルを学習データと関連付けて学習データ記憶部50に記憶する。ラベル付与部32は、例えば対象物に係るデータの判別を自動で行う数理的アルゴリズムに基づいて算出された判別値が予め定めた所定の第1の閾値以上であれば良品、予め定めた所定の第2の閾値以下であれば不良品と自動的にラベルを付与するようにし、その結果を表示装置70に表示して作業者に確認乃至修正をさせるようにしても良い。ラベル付与部32が付与するラベルは、例えば外観検査において対象物が良品であるか不良品であるかを判別する場合には良品/不良品という2つのラベルを用いればよいが、その他にも判別装置1による判別の目的に応じて、例えば3つ以上のラベル(大/中/小、種類A/種類B/…、等)を付与するようにしても良い。
サブデータセット抽出部34は、学習データ記憶部50に記憶された複数の学習データの中から、予め定めた所定の数又は所定の割合の学習データをサブ学習データセットとして抽出し、その他の学習データをサブ検証データセットとして抽出する機能手段である。サブデータセット抽出部34が抽出するそれぞれのサブデータセットは、偏りが起きにくいように抽出することが望ましく、例えば学習データ記憶部50に記憶されている学習データの中からサブ学習データセットとしての学習データをランダムに抽出したり、系統抽出法等の統計的な標本抽出法を用いるようにしたりしても良い。また、サブデータセット抽出部34は、後述する判別回数が少ない学習データは、優先してサブ検証データセットとして抽出するようにしても良い。
学習部110は、サブデータセット抽出部34が抽出したサブ学習データセットを用いた教師あり学習を行い、対象物に係るデータから判別結果(ラベル)を推定するために用いられる学習済みモデルを生成する(学習する)機能手段である。本実施形態の学習部110は、例えばニューラルネットワークを学習モデルとして用い、サブデータセット抽出部34が抽出したサブ学習データセットに含まれるそれぞれの学習データの対象物に係るデータを入力データ、該学習データに付与されているラベルを出力データとした教師あり学習を行うように構成しても良い。この様に構成する場合、学習モデルとしては入力層、中間層、出力層の三層を備えたニューラルネットワークを用いても良いが、三層以上の層を為すニューラルネットワークを用いた、いわゆるディープラーニングの手法を用いることで、より効果的な学習及び推論を行うように構成することも可能である。本実施形態による学習部110による学習においては、例えば学習モデルに対して画像データの各画素値を入力して一致度を算出し、算出した一致度と付与されているラベルとの誤差を学習モデルに対して逆伝播し、学習モデルのパラメータを更新する手法(誤差逆伝播法)等を取ることができる。また、学習部110はSVMや他の学習モデルを用いた機械学習を行うように構成してもよく、判別装置1が判別する対象物に係るデータの特性等を考慮して適切な学習モデルを選択すると良い。学習部110が生成した学習済みモデルは、不揮発性メモリ104上に設けられた学習モデル記憶部130に記憶され、判別部120によるサブ検証データセットに基づく推定処理に用いられる。
判別部120は、サブデータセット抽出部34が抽出したサブ検証データセットに含まれるそれぞれの学習データについて、学習部110が生成した学習済みモデルを用いた判別(判別結果の推定)を行う機能手段である。判別部120は、サブ検証データセットに含まれるそれぞれの学習データについて、該学習データの対象物に係るデータを学習モデル記憶部130に記憶されている学習済みモデルに対する入力として判別処理を行い、その結果としての判別結果を検証結果記録部40に出力する。
検証結果記録部40は、サブ検証データセットに含まれる学習データであって、判別部120により判別が行われた各学習データについて、判別の結果を学習データ記憶部50に該学習データと関連付けて記憶する機能手段である。検証結果記録部40は、判別部120により判別が行われた学習データの判別回数を1増加させ、また、判別部120による判別結果がラベル付与部32により該学習データに付与されたラベルと一致していた場合に、その学習データの正解回数を1増加させる。
前記した、サブデータセット抽出部34によるサブ学習データセット及びサブ検証データセットの抽出処理、学習部110によるサブ学習データセットを用いた学習済みモデルの生成処理、判別部120によるサブ検証データセットに対する判別処理、及び検証結果記録部40による判別部120の判別結果の記録処理は、所定の回数だけ繰り返し行われる。この繰り返し回数は、学習データ記憶部50に記憶された学習データの数に基づいて決定するようにしても良い。また、学習データ記憶部50に記憶されるすべての学習データについて、検証結果記録部40が記録する判別回数が、予め所定の回数以上となるまで、この繰り返し処理が繰り返されるようにしても良い。
各繰り返しの回において、サブデータセット抽出部34が抽出するサブ学習データセット及びサブ検証データセットは、毎回異なるデータセットとなることに留意されたい。このようにして、様々なサブデータセットの組み合わせの元で、学習部110による学習と、判別部120による判別が行われ、結果として各学習データについて、複数回の判別処理が行われた上で、検証結果記録部40により、それぞれの学習データの判別回数及び正解回数が記録されることとなる。
正誤検出部42は、学習データ記憶部50に記憶されたそれぞれの学習データについて、正解回数を判別回数で割った値をその学習データに付与されたラベル(アノテーション)が正しい確率として算出する。正誤検出部42は、ラベルが正しい確率が予め定めた所定の閾値より低い学習データについて、該学習データに付与されているラベルが誤っている可能性があるとして表示装置70に表示し、作業者に対してラベルが正しいか否か再確認させ、必要に応じて入力装置71を操作してラベルの修正を行うよう促しても良い。正誤検出部が算出したラベルが正しい確率は、例えば図3に例示されるように、学習データと関連付けて学習データ記憶部50に記憶するようにしても良い。
このような構成を備えた判別装置1では、取得した学習データに対して付与されるラベルについて、他の学習データに付与されたラベルとの関係性の元で、正しくない可能性があるラベルについて作業者に対して修正を促すことができる。そして、作業者により再確認され、正しいラベル付けが為されたと推定される学習データのセットを用いて、改めて学習部110による学習済みモデルの生成を行う。このようにして生成された学習済みモデルは正しいアノテーションに基づいて生成されたものであるため、該学習済みモデルを用いて高い精度で対象物の判別を行えることが見込まれる。
図4は、本実施形態による判別装置1によるアノテーションの誤りを検出する処理の概略的なフローチャートである。
●[ステップSA01]データ取得部30が、対象物に係るデータを取得し、学習データとして学習データ記憶部50に記憶する。
●[ステップSA02]ラベル付与部32が、ステップSA01で取得した対象物に係るデータに対して作業者の操作等に基づいてアノテーション(ラベル付け)を行い、学習データと関連付けて学習データ記憶部50に記憶する。
●[ステップSA03]対象物に係るデータがまだあるか否かを判定する。対象物に係るデータがまだある場合には、ステップSA01へ処理を移行し、対象物に係るデータがない場合には、ステップSA04に処理を移行する。
●[ステップSA04]サブデータセット抽出部34は、学習データ記憶部50に記憶された学習データのセットの中から、サブ学習データセット及びサブ検証データセットを抽出する。
●[ステップSA05]学習部110は、ステップSA04で抽出されたサブ学習データセットを用いた教師あり学習を行い、学習済みモデルを生成する。
●[ステップSA06]判別部120は、ステップSA04で抽出されたサブ検証データセットに含まれるそれぞれの学習データについて、ステップSA05で構築された学習済みモデルを用いた判別処理を行う。
●[ステップSA07]検証結果記録部40は、ステップSA06での判別結果を、各学習データの判定回数/正解回数として学習データと関連付けて学習データ記憶部50に記録する。
●[ステップSA08]ステップSA04~SA07が所定回数繰り返されたか否かを判定する。所定回数繰り返された場合は、ステップSA09へ処理を移行し、所定回数繰り返されていない場合は、ステップSA04へ処理を移行する。
●[ステップSA09]正誤検出部42は、学習データ記憶部50に記憶された学習データの判定回数/正解回数に基づいてそれぞれの学習データに付与されているラベルの正解の確率を算出し、算出したラベルが正解の確率に基づいて誤ったラベルが付与されている可能性がある学習データを抽出し、表示装置70へ表示する。
●[ステップSA10]ラベル付与部32は、作業者の操作に基づいて学習データに付与されているラベルを修正する。
本実施形態の判別装置1の一変形例として、正誤検出部42が算出したそれぞれの学習データに付与されたラベルが正しい確率に基づいて、与えられている学習データ又は学習/判別に用いている学習モデルでは正しくラベルを判別することが難しいこと、即ち学習データセットの判別の困難さを判断し、その旨を表示装置70に表示するように構成しても良い。正誤検出部42は、例えば学習データ記憶部50に記憶されている学習データのセット全体の付与されたラベルが正しい確率について統計的な処理を施し、学習データセットに付与されたラベルが正しい確率の平均が著しく低い場合や分散値が高い場合等、統計的な分布に基づいて、与えられている学習データ又は学習/判別に用いている学習モデルでは正しくラベルを判別することが難しいこと、即ち学習データセットの判別の困難さを判断するようにしても良い。
本実施形態の判別装置1の他の変形例として、判別装置1が判別する対象物に付与されるラベルを、該対象物が属する分類(良品/不良品等の離散値)ではなく、座標値や角度、分量等の連続値や連続値の組とするようにしても良い。ラベルを連続値や連続値の組とした場合、学習部110により生成する学習済みモデルは対象物に係るデータを入力として連続値(数値)乃至連続値の組を出力するものとなり、判別部120は連続値(数値)乃至連続値の組を推定結果として出力するようになる。
この時、学習データに付与されたラベルが正解かどうかを、学習データに付与されたラベルと判別部120が出力するラベルの推定値との距離と所定の閾値と比較することで決定することができる。または計算した距離に基づいて該ラベルが正しい確率を算出するようにしても良い。一例として、学習データ記憶部50に記憶されるそれぞれの学習データについて、正解回数に変えて差分積算値を関連付けて記憶するようにし、判別部120によるサブ検証データセットに含まれるそれぞれの学習データに対する判別処理が行われるたびに、検証結果記録部40は、判別部120による判別結果として出力されたラベルの推定値とラベル付与部32により該学習データに付与されたラベルとの差分の絶対値又は判別部120による判別結果として出力されたラベルの推定値とラベル付与部32により該学習データに付与されたラベルとの距離を差分積算値に積算する。そして、正誤検出部42は、学習データ記憶部50に記憶されたそれぞれの学習データについて、差分積算値を判別回数で割った値に基づいて、学習データに付与されているラベルが正しい確率を算出する(例えば、それぞれの学習データにおける差分積算値を判別回数で割った値の分布に基づいて公知の確率分布に係る統計的手法により該ラベルが正しい確率を算出する等)ようにすれば良い。
以上、本発明の実施の形態について説明したが、本発明は上述した実施の形態の例のみに限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。
例えば、機械学習装置100が実行する学習アルゴリズム、機械学習装置100が実行する演算アルゴリズム、判別装置1が実行する制御アルゴリズム等は、前記したものに限定されず、様々なアルゴリズムを採用できる。
また、上記した実施形態では判別装置1と機械学習装置100が異なるCPU(プロセッサ)を有する装置として説明しているが、機械学習装置100は判別装置1が備えるCPU11と、ROM12に記憶されるシステム・プログラムにより実現するようにしても良い。
上記した実施形態では、対象物に係るデータとして外観検査で用いられる対象物を撮像した画像データを用いた例を示したが、本願発明のアノテーションの誤りの検知方法は画像データ以外にも、例えば対象物から取得される電流/電圧、圧力等の物理量の波形データ、対象物が発する音に係る音声データ等のような他のデータに対しても適用できる。いずれのデータを対象とする場合であっても、作業者が自己の感覚に基づいてアノテーションをする(ラベルを付与する)場合に、適宜適用することが可能である。
1 判別装置
4 撮像装置
11 CPU
12 ROM
13 RAM
14 不揮発性メモリ
17,18,19 インタフェース
20 バス
21 インタフェース
30 データ取得部
32 ラベル付与部
34 サブデータセット抽出部
40 検証結果記録部
42 正誤検出部
70 表示装置
71 入力装置
100 機械学習装置
101 プロセッサ
102 ROM
103 RAM
104 不揮発性メモリ
110 学習部
120 判別部
130 学習モデル記憶部

Claims (5)

  1. アノテーションの誤りを検出する判別装置であって、
    複数の学習データからなる学習データセットを記憶する学習データ記憶部と、
    判別する対象物に係るデータを取得して学習データとして前記学習データ記憶部に記憶するデータ取得部と、
    前記学習データに対してラベルを付与するラベル付与部と、
    前記学習データ記憶部に記憶される学習データセットから、学習に用いるサブ学習データセットと、検証に用いるサブ検証データセットを抽出するサブデータセット抽出部と、
    前記サブ学習データセットに基づいた教師あり学習を行い、前記対象物に係るデータからラベルを判別する学習済みモデルを生成する学習部と、
    前記サブ検証データセットに含まれるそれぞれの学習データについて、前記学習済みモデルを用いた判別処理を行う判別部と、
    前記判別部によるそれぞれの学習データに対する判別処理の結果を該学習データと関連付けて前記学習データ記憶部へと記録する判別結果記録部と、
    前記学習データ記憶部にそれぞれの学習データと関連付けて記録された判別処理の結果に基づいて、前記ラベル付与部により付与されたラベルが誤っている可能性がある学習データを検出する正誤検出部と、
    を備え、
    前記サブデータセット抽出部によるサブ検証データセットの抽出、前記学習部による学習済みモデルの生成及び前記判別部による判別処理は2以上の所定の回数だけ実行され、
    前記正誤検出部は、前記判別部が2以上の所定の回数だけ実行した判別処理の結果に基づいて前記ラベル付与部により付与されたラベルが正しい確率を算出し、算出したラベルが正しい確率に基づいて前記ラベル付与部により付与されたラベルが誤っている可能性がある学習データを検出する、
    を備えた判別装置。
  2. 前記正誤検出部は、算出したラベルが正しい確率が、予め定めた閾値より低い学習データを作業者に提示する、
    請求項1に記載の判別装置。
  3. 前記学習データセットに含まれる学習データのラベルが正しい確率の統計的分布に基づいて、前記学習データセットの判別の困難さを判定する、
    請求項1又は2に記載の判別装置。
  4. ラベルが付与されたデータに基づくデータセットから、学習に用いるサブ学習データセットと、検証に用いるサブ検証データセットを抽出する抽出部と、
    前記サブ学習データセットを用いて学習された学習モデルに前記サブ検証データセットに含まれるデータを入力した際の前記学習モデルからの出力に基づいて、前記サブ検証データセットに含まれるデータについて判別処理を行う判別部と、
    前記サブ検証データセットに含まれる各データについて、前記判別処理の結果が、付与された前記ラベルと一致していた回数を算出する正誤検出部と、
    を備え、
    前記抽出部による抽出および前記判別部による判別処理は、2以上の所定の回数だけ実行され、
    前記正誤検出部は、前記一致していた回数に基づいて、付与された前記ラベルが誤っている可能性があるデータかを検出する、
    判別装置。
  5. 複数の学習データからなる学習データセットを記憶する学習データ記憶部を備える判別装置により実行される、アノテーションの誤りを検出する機械学習方法において、
    判別する対象物に係るデータを取得して前記学習データとして前期学習データ記憶部に記憶する第1ステップと、
    前記第1ステップで取得された前記学習データに対してラベルを付与する第2ステップと、
    前記第2ステップでラベルが付与された学習データのセットから、学習に用いるサブ学習データセットと、検証に用いるサブ検証データセットを抽出する第3ステップと、
    前記サブ学習データセットに基づいた教師あり学習を行い、前記対象物に係るデータからラベルを判別する学習済みモデルを生成する第4ステップと、
    前記サブ検証データセットに含まれるそれぞれの学習データについて、前記学習済みモデルを用いた判別処理を行う第5ステップと、
    前記第5ステップでのそれぞれの学習データに対する判別処理の結果を該学習データと関連付けて記録する第6ステップと、
    前記第6ステップでそれぞれの学習データと関連付けて記録された判別処理の結果に基づいて、付与されたラベルが誤っている可能性がある学習データを検出する第7ステップと、
    を実行する機械学習方法であって、
    前記第3~5ステップは2以上の所定の回数だけ実行され、
    前記第7ステップは、前記5ステップにおいて2以上の所定の回数だけ実行された判別処理の結果に基づいてそれぞれの学習データに付与されたラベルが正しい確率を算出し、算出したラベルが正しい確率に基づいて、付与されたラベルが誤っている可能性がある学習データを検出する、
    機械学習方法。
JP2018156624A 2018-08-23 2018-08-23 判別装置及び機械学習方法 Active JP7299002B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2018156624A JP7299002B2 (ja) 2018-08-23 2018-08-23 判別装置及び機械学習方法
US16/640,729 US11461584B2 (en) 2018-08-23 2019-08-01 Discrimination device and machine learning method
PCT/JP2019/030247 WO2020039882A1 (ja) 2018-08-23 2019-08-01 判別装置及び機械学習方法
CN201980004214.7A CN111183437A (zh) 2018-08-23 2019-08-01 判别装置以及机器学习方法
DE112019000093.4T DE112019000093T5 (de) 2018-08-23 2019-08-01 Diskriminierungsvorrichtung und Maschinenlernverfahren

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018156624A JP7299002B2 (ja) 2018-08-23 2018-08-23 判別装置及び機械学習方法

Publications (2)

Publication Number Publication Date
JP2020030692A JP2020030692A (ja) 2020-02-27
JP7299002B2 true JP7299002B2 (ja) 2023-06-27

Family

ID=69592972

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018156624A Active JP7299002B2 (ja) 2018-08-23 2018-08-23 判別装置及び機械学習方法

Country Status (5)

Country Link
US (1) US11461584B2 (ja)
JP (1) JP7299002B2 (ja)
CN (1) CN111183437A (ja)
DE (1) DE112019000093T5 (ja)
WO (1) WO2020039882A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7107331B2 (ja) 2020-04-10 2022-07-27 株式会社椿本チエイン データ収集方法、データ収集システム、データ収集装置、データ提供方法、及び、コンピュータプログラム
US11818163B2 (en) * 2020-09-18 2023-11-14 Paypal, Inc. Automatic machine learning vulnerability identification and retraining
WO2022123905A1 (ja) * 2020-12-07 2022-06-16 パナソニックIpマネジメント株式会社 処理システム、学習処理システム、処理方法、及びプログラム
JPWO2022239316A1 (ja) * 2021-05-11 2022-11-17
CN113592850A (zh) * 2021-08-12 2021-11-02 苏州鼎纳自动化技术有限公司 一种基于元学习的缺陷检测方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015087903A (ja) 2013-10-30 2015-05-07 ソニー株式会社 情報処理装置及び情報処理方法
JP2018045559A (ja) 2016-09-16 2018-03-22 富士通株式会社 情報処理装置、情報処理方法およびプログラム
JP2018097671A (ja) 2016-12-14 2018-06-21 株式会社グルーヴノーツ サービス構築装置、サービス構築方法及びサービス構築プログラム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4227863B2 (ja) 2003-08-04 2009-02-18 株式会社デンソー 視覚検査装置の教示装置及び教示方法
US7751599B2 (en) * 2006-08-09 2010-07-06 Arcsoft, Inc. Method for driving virtual facial expressions by automatically detecting facial expressions of a face image
US8804005B2 (en) * 2008-04-29 2014-08-12 Microsoft Corporation Video concept detection using multi-layer multi-instance learning
US8385971B2 (en) * 2008-08-19 2013-02-26 Digimarc Corporation Methods and systems for content processing
JP5874398B2 (ja) 2012-01-05 2016-03-02 オムロン株式会社 画像検査装置の検査領域設定方法
WO2013176750A1 (en) * 2012-05-25 2013-11-28 Security Pacific Capital Corporation Methods, systems and apparatus for automated authentication
JP6246513B2 (ja) 2013-07-16 2017-12-13 株式会社キーエンス 三次元画像処理装置、三次元画像処理方法及び三次元画像処理プログラム並びにコンピュータで読み取り可能な記録媒体及び記録した機器
US10592820B2 (en) * 2016-06-09 2020-03-17 International Business Machines Corporation Sequential learning technique for medical image segmentation
JP6729457B2 (ja) * 2017-03-16 2020-07-22 株式会社島津製作所 データ解析装置
US10223610B1 (en) * 2017-10-15 2019-03-05 International Business Machines Corporation System and method for detection and classification of findings in images

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015087903A (ja) 2013-10-30 2015-05-07 ソニー株式会社 情報処理装置及び情報処理方法
JP2018045559A (ja) 2016-09-16 2018-03-22 富士通株式会社 情報処理装置、情報処理方法およびプログラム
JP2018097671A (ja) 2016-12-14 2018-06-21 株式会社グルーヴノーツ サービス構築装置、サービス構築方法及びサービス構築プログラム

Also Published As

Publication number Publication date
DE112019000093T5 (de) 2020-05-20
CN111183437A (zh) 2020-05-19
JP2020030692A (ja) 2020-02-27
US11461584B2 (en) 2022-10-04
WO2020039882A1 (ja) 2020-02-27
US20200193219A1 (en) 2020-06-18

Similar Documents

Publication Publication Date Title
JP7299002B2 (ja) 判別装置及び機械学習方法
US20190266434A1 (en) Method and device for extracting information from pie chart
US8650137B2 (en) Method and apparatus for creating state estimation models in machine condition monitoring
EP3444724B1 (en) Method and system for health monitoring and fault signature identification
EP3220353B1 (en) Image processing apparatus, image processing method, and recording medium
WO2020046960A1 (en) System and method for optimizing damage detection results
US10235629B2 (en) Sensor data confidence estimation based on statistical analysis
JP7106391B2 (ja) 画像判定方法、画像判定装置および画像判定プログラム
CN111814905A (zh) 目标检测方法、装置、计算机设备和存储介质
EP3839680B1 (en) Method and device for controlling a machine using principal component analysis
CN111079348B (zh) 一种缓变信号检测方法和装置
TW202113703A (zh) 作業要素分析裝置及作業要素分析方法
KR102132077B1 (ko) 설비 데이터의 이상 정도 평가 방법
JP6786015B1 (ja) 動作分析システムおよび動作分析プログラム
JP2022082277A (ja) 検知プログラム、検知装置、および検知方法
US11688175B2 (en) Methods and systems for the automated quality assurance of annotated images
JP6930195B2 (ja) モデル同定装置、予測装置、監視システム、モデル同定方法および予測方法
CN112528500B (zh) 一种场景图构造模型的评估方法及评估设备
KR20200051343A (ko) 시계열 데이터 예측 모델 평가 방법 및 장치
KR102245896B1 (ko) 인공 지능 모형 기반의 어노테이션 데이터 검증 방법 및 그 시스템
CN115578329A (zh) 屏幕检测方法、装置、计算机设备及可读存储介质
CN112861689A (zh) 一种基于nas技术的坐标识别模型的搜索方法及装置
CN108735295B (zh) 基于回归树模型的血液分析方法及终端设备
JP2019106213A5 (ja)
Zhang et al. One step closer to unbiased aleatoric uncertainty estimation

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200109

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220621

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220810

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230203

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230516

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230615

R150 Certificate of patent or registration of utility model

Ref document number: 7299002

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150