(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-19
(45)【発行日】2022-10-27
(54)【発明の名称】機械学習装置、機械学習方法、機械学習プログラム、及び検査装置
(51)【国際特許分類】
G06N 20/00 20190101AFI20221020BHJP
G01N 21/88 20060101ALI20221020BHJP
G06T 7/00 20170101ALI20221020BHJP
【FI】
G06N20/00 130
G01N21/88 Z
G06T7/00 350C
(21)【出願番号】P 2019010486
(22)【出願日】2019-01-24
【審査請求日】2021-11-29
(31)【優先権主張番号】P 2018168190
(32)【優先日】2018-09-07
(33)【優先権主張国・地域又は機関】JP
【新規性喪失の例外の表示】特許法第30条第2項適用 ▲1▼発行日 平成30年10月29日 ▲2▼刊行物「ディープラーニング活用の教科書」第3章 126~130頁 ▲3▼公開者 日経BP社
(73)【特許権者】
【識別番号】000005186
【氏名又は名称】株式会社フジクラ
(74)【代理人】
【識別番号】110000338
【氏名又は名称】特許業務法人HARAKENZO WORLD PATENT & TRADEMARK
(72)【発明者】
【氏名】黒澤 公紀
(72)【発明者】
【氏名】中鳥 真一
【審査官】北川 純次
(56)【参考文献】
【文献】特開2017-062677(JP,A)
【文献】特開2017-054331(JP,A)
【文献】特開2017-111733(JP,A)
【文献】米国特許出願公開第2017/0024641(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 20/00
G06N 3/02-3/10
G01N 21/88
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
複数のグループの各々に属する物品の状態を、該物品を被写体として含む画像を参照して分類する複数の分類器からなる分類器群に、機械学習を行わせる機械学習装置であって、
上記分類器群に含まれる各分類器の分類精度をグループ毎に評価する評価部と、
上記分類器群に含まれる少なくとも1つの分類器の分類精度が予め定められた基準に達しない場合、上記分類器群が次のグループに属する物品に対する分類処理を実行する前に、上記分類器群に含まれる、上記少なくとも1つの分類器以外の分類器に追加学習を行わせる学習制御部と、を備えている、
ことを特徴とする機械学習装置。
【請求項2】
上記評価部は、上記分類器群に含まれる各分類器の分類精度を、該分類器が各物品の状態を分類することにより得られた分類結果と、人が各物品の状態を分類することにより得られた分類結果と、を比較することによって評価する、
ことを特徴とする請求項1に記載の機械学習装置。
【請求項3】
上記複数の分類器のうち、初期学習フェーズにおいて達成された分類精度が最も高い分類器を主分類器として、
上記評価部は、上記分類器群に含まれる各分類器の分類精度を、該分類器が各物品の状態を分類することにより得られた分類結果と、上記主分類器が各物品の状態を分類することにより得られた分類結果と、を比較することによって評価する、
ことを特徴とする請求項1に記載の機械学習装置。
【請求項4】
上記複数の分類器のうち、初期学習フェーズにおいて達成された分類精度が最も高い分類器を主分類器として、
第1の追加学習フェーズにおいて、
上記評価部は、上記分類器群に含まれる各分類器の分類精度を、該分類器が各物品の状態を分類することにより得られた分類結果と、人が各物品の状態を分類することにより得られた分類結果と、を比較することによって評価し、
上記第1の追加学習フェーズに後続する第2の追加学習フェーズにおいて、
上記評価部は、上記分類器群に含まれる各分類器の分類精度を、該分類器が各物品の状態を分類することにより得られた分類結果と、上記主分類器が各物品の状態を分類することにより得られた分類結果と、を比較することによって評価する、
ことを特徴とする請求項1に記載の機械学習装置。
【請求項5】
上記学習制御部は、上記分類器に含まれる上記主分類器以外の分類器の分類精度が予め定められた基準に達しない場合、上記分類器群が次のグループに属する物品に対する分類処理を実行する前に、上記主分類器に追加学習を行わせる、
ことを特徴とする請求項3又は4に記載の機械学習装置。
【請求項6】
上記学習制御部は、上記分類器群に含まれる少なくとも1つの分類器の分類精度が予め定められた基準に達しない場合、上記分類器群が次のグループに属する物品に対する分類処理を実行する前に、上記分類器群に含まれる全ての分類器に追加学習を行わせる、
ことを特徴とする請求項1~5の何れか1項に記載の機械学習装置。
【請求項7】
複数のグループの各々に属する物品の状態を、該物品を被写体として含む画像を参照して分類する複数の分類器からなる分類器群に、機械学習を行わせる機械学習方法であって、
上記分類器群に含まれる各分類器の分類精度をグループ毎に評価する評価ステップと、
上記分類器群に含まれる少なくとも1つの分類器の分類精度が予め定められた基準に達しない場合、上記分類器群が次のグループに属する物品に対する分類処理を実行する前に、上記分類器群に含まれる、上記少なくとも1つの分類器以外の分類器に追加学習を行わせる学習制御ステップと、を含んでいる、
ことを特徴とする機械学習方法。
【請求項8】
コンピュータを請求項1~6の何れか1項に記載の機械学習装置として動作させる機械学習プログラムであって、上記コンピュータを上記機械学習装置の各部として機能させることを特徴とする機械学習プログラム。
【請求項9】
請求項1~6の何れか1項に記載の機械学習装置と上記分類器群とを備え、上記分類器群を用いてロットに分けられた複数の物品の検査を行う、
ことを特徴とする検査装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、分類器に機械学習を行わせる機械学習装置、機械学習方法、及び機械学習プログラムに関する。また、本発明は、物品の検査を行う検査装置に関する。
【背景技術】
【0002】
物品を被写体として含む画像を参照して該物品の状態を分類する技術が広く用いられている。このような技術を、機械学習により構築された分類器を用いて実現する場合、長期に亘って分類精度を保つことが困難である。なぜなら、機械学習により構築された分類器の汎化能力が発揮されるのは、教師データとして用いられた画像に含まれる物品、或いは、その物品に類似する物品に対してであり、分類の対象となる物品そのものや、分類の対象となる物品を取り巻く環境などが変化すると、分類対象とする物品が分類器の汎化能力が発揮される範囲を超えてしまうからである。
【0003】
このような問題の解決に資する可能性のある技術としては、例えば、特許文献1に記載の音源種別識別装置が挙げられる。この音源種別判別装置は、ニューラルネットワーク(本明細書における分類器に相当)を用いて音源種別の判定を行う装置であり、ニューラルネットワークの学習結果を審査する審査手段と、審査手段の審査結果に基づいてニューラルネットワークの再学習(本明細書における追加学習に相当)を行う再学習手段と、を備えている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2001-33304号公報(2001年2月9日公開)
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に記載の音源種別判定手段のように、分類器の追加学習を行うことによって、分類の対象となる物品そのものや、分類の対象となる物品を取り巻く環境が変化しても、分類器の分類精度を長期に亘って保つことが可能になる。しかしながら、このような方法で追加学習を行う場合、物品の分類に用いる分類器の分類精度が低下する前に該分類器の追加学習を行うことができない。つまり、物品の分類に用いる分類器の一時的な分類精度の低下は避けられない。
【0006】
本発明は、上記の問題に鑑みてなされたものであり、物品の分類に用いる分類器の分類精度が低下する前に該分類器の追加学習を行うことが可能な機械学習装置、機械学習方法、及び機械学習プログラムを実現することにある。また、このような機械学習装置を備えた検査装置を実現することにある。
【課題を解決するための手段】
【0007】
上記の課題を解決するために、本発明の一態様に係る機械学習装置は、複数のグループの各々に属する物品の状態を、該物品を被写体として含む画像を参照して分類する複数の分類器からなる分類器群に、機械学習を行わせる機械学習装置であって、上記分類器群に含まれる各分類器の分類精度をグループ毎に評価する評価部と、上記分類器群に含まれる少なくとも1つの分類器の分類精度が予め定められた基準に達しない場合、上記分類器群が次のグループに属する物品に対する分類処理を実行する前に、上記分類器群に含まれる、上記少なくとも1つの分類器以外の分類器に追加学習を行わせる学習制御部と、を備えている。
【0008】
上記の課題を解決するために、本発明の一態様に係る機械学習方法は、複数のグループの各々に属する物品の状態を、該物品を被写体として含む画像を参照して分類する複数の分類器からなる分類器群に、機械学習を行わせる機械学習方法であって、上記分類器群に含まれる各分類器の分類精度をグループ毎に評価する評価ステップと、上記分類器群に含まれる少なくとも1つの分類器の分類精度が予め定められた基準に達しない場合、上記分類器群が次のグループに属する物品に対する分類処理を実行する前に、上記分類器群に含まれる、上記少なくとも1つの分類器以外の分類器に追加学習を行わせる学習制御ステップと、を含んでいる。
【0009】
上記の課題を解決するために、本発明の一態様に係る機械学習プログラムは、コンピュータを上述の機械学習装置として動作させる機械学習プログラムであって、上記コンピュータを上記機械学習装置の各部として機能させる。
【0010】
上記の課題を解決するために、本発明の一態様に係る検査装置は、上述の機械学習装置と上記分類器群とを備え、上記分類器群を用いてロットに分けられた複数の物品の検査を行う。なお、各ロットに含まれる物品の個数は、一律であってもよいし、一律でなくてもよい。
【0011】
これらの構成によれば、ある分類器の分類精度が低下したことをトリガーとして、その分類器以外の分類器の追加学習を行うことができる。すなわち、物品の分類に用いる分類器(その分類器以外の分類器)の分類精度が低下する前に、物品の分類に用いる分類器(その分類器以外の分類器)の追加学習を行うことができる。
【0012】
本発明の一態様に係る機械学習装置において、上記評価部は、上記分類器群に含まれる各分類器の分類精度を、該分類器が各物品の状態を分類することにより得られた分類結果と、人が各物品の状態を分類することにより得られた分類結果と、を比較することによって評価する、ことが好ましい。
【0013】
上記の構成によれば、各分類器の分類精度が、人が物品の状態を分類した結果に基づいて評価される。このため、主分類器の汎化能力に依らずに、追加学習を実施するべきタイミングを適切に特定することができる。
【0014】
本発明の一態様に係る機械学習装置において、上記複数の分類器のうち、初期学習フェーズにおいて達成された分類精度が最も高い分類器を主分類器として、上記評価部は、上記分類器群に含まれる各分類器の分類精度を、該分類器が各物品の状態を分類することにより得られた分類結果と、上記主分類器が各物品の状態を分類することにより得られた分類結果と、を比較することによって評価する、ことが好ましい。
【0015】
上記の構成によれば、各分類器の分類精度が、主分類器が物品の状態を分類した結果に基づいて評価される。このため、人が物品の状態を分類する作業を行うことなく、追加学習を実施するべきタイミングを適切に特定することができる。
【0016】
本発明の一態様に係る機械学習装置において、上記複数の分類器のうち、初期学習フェーズにおいて達成された分類精度が最も高い分類器を主分類器として、第1の追加学習フェーズにおいて、上記評価部は、上記分類器群に含まれる各分類器の分類精度を、該分類器が各物品の状態を分類することにより得られた分類結果と、人が各物品の状態を分類することにより得られた分類結果と、を比較することによって評価し、上記第1の追加学習フェーズに後続する第2の追加学習フェーズにおいて、上記評価部は、上記分類器群に含まれる各分類器の分類精度を、該分類器が各物品の状態を分類することにより得られた分類結果と、上記主分類器が各物品の状態を分類することにより得られた分類結果と、を比較することによって評価する、ことが好ましい。
【0017】
上記の構成によれば、第1の追加学習フェーズにおいては、主分類器の汎化能力に依らずに、追加学習を実施するべきタイミングを適切に特定することができ、第2の追加学習フェーズにおいては、人が物品の状態を分類する作業を行うことなく、追加学習を実施するべきタイミングを適切に特定することができる。
【0018】
本発明の一態様に係る機械学習装置において、上記学習制御部は、上記分類器に含まれる上記主分類器以外の分類器の分類精度が予め定められた基準に達しない場合、上記分類器群が次のグループに属する物品に対する分類処理を実行する前に、上記主分類器に追加学習を行わせる、ことが好ましい。
【0019】
上記の構成によれば、主分類器以外の分類器の分類精度が低下したことをトリガーとして、主分類器の追加学習を行うことができる。すなわち、物品の分類に用いる主分類器の分類精度が低下する前に、主分類器の追加学習を行うことができる。
【0020】
本発明の一態様に係る機械学習装置において、上記学習制御部は、上記分類器群に含まれる少なくとも1つの分類器の分類精度が予め定められた基準に達しない場合、上記分類器群が次のグループに属する物品に対する分類処理を実行する前に、上記分類器群に含まれる全ての分類器に追加学習を行わせる、ことが好ましい。
【0021】
上記の構成によれば、物品の分類に用いる分類器の分類精度の低下の予兆を検知する、その分類器以外の分類器の検知精度を、維持することができる。
【発明の効果】
【0022】
本発明の一態様によれば、物品の分類に用いる分類器の分類精度が低下する前に該分類器の追加学習を行うことが可能な機械学習装置、機械学習方法、及び機械学習プログラムを実現することができる。また、本発明の一態様によれば、このような機械学習装置を備えた検査装置を実現することができる。
【図面の簡単な説明】
【0023】
【
図1】本発明の第1の実施形態に係る機械学習装置の物理的構成を示すブロック図である。
【
図2】
図1に示す機械学習装置の機能的構成を示すブロック図である。
【
図3】(a)は、
図1に示す機械学習装置が第1の追加学習フェーズにおいて実行する機械学習方法S1の流れを示すフローチャートである。(b)は、第2の追加学習フェーズにおいて実行する機械学習方法S2の流れを示すフローチャートである。
【
図4】本発明の第2の実施形態に係る検査装置の機能的構成を示すブロック図である。
【
図5】
図4に示す検査装置の実施例における、半導体レーザの製造プロセスの流れを示す模式図である。
【
図6】
図4に示す検査装置の実施例において、分類器群に含まれる各分類器の分類精度をグループ毎に示した箱髭図である。
【発明を実施するための形態】
【0024】
〔第1の実施形態〕
(機械学習装置の物理的構成)
本発明の第1の実施形態に係る機械学習装置1の物理的構成について、
図1を参照して説明する。
図1は、機械学習装置1の物理的構成を示すブロック図である。
【0025】
機械学習装置1は、
図1に示すように、バス10と、主メモリ11と、プロセッサ12と、補助メモリ13と、入出力インターフェース14と、を備えたコンピュータである。主メモリ11、プロセッサ12、補助メモリ13、及び入出力インターフェース14は、バス10を介して互いに接続されている。主メモリ11としては、例えば、単一又は複数の半導体RAM(random access memory)が用いられる。プロセッサ12としては、例えば、単一又は複数のマイクロプロセッサ、単一又は複数のデジタルシグナルプロセッサ、単一又は複数のマイクロコントローラ、又はこれらの組み合わせが用いられる。補助メモリ13としては、例えば、単一又は複数のHDD(Hard Disk Drive)、単一又は複数のSSD(Solid State Drive)、又はこれらの組み合わせが用いられる。また、補助メモリ13の一部又は全部は、通信インタフェース(図示せず)を介して接続されたネットワーク上のストレージであってもよい。入出力インターフェース14としては、例えば、USB(Universal Serial Bus)インターフェース、赤外線やBluetooth(登録商標)等の近距離通信インターフェース、又はこれらの組み合わせが用いられる。
【0026】
入出力インターフェース14には、例えば、入力装置20及び出力装置30が接続される。入力装置20としては、例えば、キーボード、マウス、タッチパッド、マイク、又はこれらの組み合わせ等が用いられる。出力装置30としては、例えば、ディスプレイ、プリンタ、スピーカ、又はこれらの組み合わせが用いられる。なお、機械学習装置1は、ノート型コンピュータのように、入力装置20として機能するキーボート及びタッチパッド、並びに、出力装置30として機能するディスプレイを内蔵していてもよい。また、機械学習装置1は、スマートフォン又はタブレット型コンピュータのように、入力装置20及び出力装置30として機能するタッチパネルを内蔵していてもよい。
【0027】
補助メモリ13には、後述する機械学習方法S1をプロセッサ12に実行させるためのプログラムPが格納されている。プロセッサ12は、補助メモリ13に格納されたプログラムPを主メモリ11上に展開し、主メモリ11上に展開されたプログラムPに含まれる各命令を実行することによって、後述する機械学習方法S1に含まれる各ステップを実行する。また、補助メモリ13には、後述する機械学習方法S1を実行するためにプロセッサ12が参照する各種データが格納されている。
【0028】
なお、ここでは、内部記憶媒体である補助メモリ13に格納されているプログラムPに従ってプロセッサ12が後述する機械学習方法S1を実行する形態について説明したが、これに限定されない。すなわち、外部記録媒体に格納されているプログラムPに従ってプロセッサ12が後述する機械学習方法S1を実行する形態を採用してもよい。この場合、外部記録媒体としては、コンピュータが読み取り可能な「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、又はプログラマブル論理回路などを用いることができる。あるいは、通信インタフェース(図示せず)を介して接続されるネットワーク上から取得したプログラムPに従ってプロセッサ12が後述する機械学習方法S1を実施する形態を採用してもよい。この場合、ネットワークとしては、例えば、インターネット、有線LAN(Local Area Network)、無線LAN、又はこれらの少なくとも一部の組み合わせ等などを用いることができる。
【0029】
また、ここでは、単一のコンピュータを用いて機械学習装置1を実現する形態について説明したが、これに限定されない。すなわち、互いに通信可能に構成された複数のコンピュータを用いて機械学習装置1を実現する形態を採用してもよい。この場合、後述する機械学習方法S1を構成する各ステップを、これらのコンピュータにより並列的に実行することが可能になる。
【0030】
(機械学習装置の機能的構成)
機械学習装置1の機能的構成について、
図2を参照して説明する。
図2は、機械学習装置1の機能的構成を示すブロック図である。
【0031】
機械学習装置1は、
図2に示すように、分類器群101と、評価部102と、学習制御部103と、を備えている。これらのブロックは、上述したプロセッサ12が上述したプログラムPの命令を実行することにより実現される機能ブロックである。
【0032】
分類器群101は、複数の分類器C1,C2,…,Cnの集合である。ここで、nは、分類器C1,C2,…,Cnの個数を表す任意の自然数である。各分類器Ci(i=1,2,…,n)は、物品を被写体として含む画像を参照して該物品の状態を分類する分類処理を、機械学習により定められたアルゴリズム(以下、「モデル」と記載する)を用いて実行する。分類処理に利用可能なモデルとしては、例えば、物品を被写体として含む画像を入力とし、該物品の状態を出力とするニューラルネットワークが挙げられる。本実施形態においては、第1コンボリューション層(例えば、conv32 3*3)、第1ポーリング層(例えば、MaxPooling(2,2))、第2コンボリューション層(例えば、conv32 3*3)、第2ポーリング層(例えば、MaxPooling(2,2))、…、第6ポーリング層(例えば、MaxPooling(2,2))、第6コンボリューション層(例えば、conv32 3*3)、第7ポーリング層(例えば、MaxPooling(2,2))、第7コンボリューション層(例えば、GlobalAveragePooling)、及び、ソフトマックス層(例えば、softmax)をこの順に連結したCNN(Convolutional Nural Network)を分類処理に用いる。
【0033】
各分類器Ciが用いるモデルは、分類器群101の運用を開始する前に実施される初期学習フェーズにおいて構築され、分類器群101の運用を開始した後に実施される追加学習フェーズにおいて最適化される。初期学習フェーズにおいては、(1)モデルの選択、(2)モデルの調整(ネットワーク構造及びハイパーパラメータの調整)、及び、(3)モデルの機械学習(以下、「初期学習」と記載する)が行われる。追加学習フェーズにおいては、(1)モデルの機械学習(以下、「追加学習」と記載する)が行われる。本実施形態においては、モデルとしてCNNを用いているため、初期学習フェーズ及び追加学習フェーズにおけるモデルの機械学習は、深層学習により実現される。
【0034】
なお、本実施形態において、各分類器Ciが用いるモデルの構造は、共通である。また、本実施形態において、各分類器Ciが用いるモデルの教師用データは、共通である。この場合でも、各分類器Ciが用いるモデルは、重み係数の異なる互いに独立なモデルとなる。なぜなら、各分類器Ciが用いるモデルの学習には、乱数が用いられるからである。このため、各分類器Ciの汎化能力は、互いに異なり得る。以下、分類器群101に含まれる分類器C1,C2,…,Cnのうち、初期学習フェーズ終了時において分類精度が最も高い(汎化能力が最も高い)分類器を「主分類器」と記載する。また、分類器群101に含まれる分類器C1,C2,…,Cnのうち、主分類器以外の分類器を「副分類器」と記載する。ここでは、説明の便宜上、分類器C1が主分類器であり、分類器C2,C3,…,Cnが副分類器であると仮定する。分類器群101の運用時においては、主分類器C1による分類結果が、分類器群101による分類結果として参照される。分類器C2,C3,…,Cnによる分類結果は、追加学習フェーズにおいて学習制御のため(特に、追加学習を実施するタイミングを特定するため)に参照される。
【0035】
なお、分類の対象となる物品は、予め複数のグループに分けられている。分類器群101は、物品の状態を分類する分類処理をグループ毎に実行する。すなわち、分類器群101は、例えば、第1のグループに属する各物品に対する分類処理を終えてから、第2のグループに属する各物品に対する分類処理を始め、第2のグループに属する各物品に対する分類処理を終えてから、第3のグループに属する物品の分類処理を始める。
【0036】
評価部102は、分類器群101に含まれる各分類器Ciの分類精度を評価する評価処理をグループ毎に実行するブロックである。本実施形態において、評価部102は、追加学習フェーズの前半(以下、「第1の追加学習フェーズ」と記載する)においては、第1の評価方法に従って評価処理を実行し、追加学習フェーズの後半(以下、「第2の追加学習フェーズ」と記載する)においては、第2の評価方法に従って評価処理を実行する。なお、第1の追加学習フェーズの終了タイミング(第2の追加学習フェーズの開始タイミング)及び第2の追加学習フェーズの終了タイミングは、任意である。第2の追加学習フェーズは、分類器群101の運用終了時まで継続しても構わない。
【0037】
第1の評価方法は、各分類器Ciの分類精度を、グループから選択された各物品について、該分類器Ciが該物品の状態を分類した結果と、人が該物品の状態を分類した結果とを比較する方法である。ここで、グループから選択される物品は、グループに属する物品の全部であってもよいし、一部であってもよい。この場合、例えば、グループから選択された物品のうち、分類器Ciが状態を分類した結果と人が状態を分類した結果とが一致する物品の個数を、グループから選択された物品の個数で除した商(人が状態を分類した結果を正解としたときの分類器Ciの正解率)が、分類器Ciの分類精度となる。
【0038】
第2の評価方法は、各分類器Ciの分類精度を、グループから選択された各物品について、該分類器Ciが該物品の状態を分類した結果と、主分類器C1が該物品の状態を分類した結果とを比較する方法である。ここで、グループから選択される物品は、グループに属する物品の全部であってもよいし、一部であってもよい。この場合、例えば、グループから選択された物品のうち、分類器Ciが状態を分類した結果と主分類器C1が状態を分類した結果とが一致する物品の個数を、グループから選択された物品の個数で除した商(主分類器C1が分類した結果を正解としたときの分類器Ciの正解率)が、分類器Ciの分類精度となる。
【0039】
学習制御部103は、分類器群101に含まれる少なくとも1つの分類器Ciの分類精度が予め定められた基準に達しない場合、分類器群101が次のグループに属する物品に対する分類処理を実行する前に、分類機群101に含まれる分類器Ci以外の少なくとも1つの分類器Cj(j≠i)に追加学習を行わせる学習制御処理を実行するブロックである。本実施形態において、学習制御部103は、分類器群101に含まれる少なくとも1つの分類器Ciの分類精度が予め定められた基準に達しない場合、分類器群101が次のグループに属する物品に対する分類処理を実行する前に、分類機群101に含まれる全ての分類器C1,C2,…,Cnに追加学習を行わせる。各分類器Ciの分類精度が予め定められた基準に達しているか否かの判定は、例えば、評価部102にて評価された分類器Ciの分類精度を予め定められた閾値と比較することによって実現される。
【0040】
ここで、分類器Ciに追加学習を行わせるとは、分類器Ciが分類処理に用いるモデルの重み係数を、教師データ(物品を被写体として含む画像と該物品の状態を人が分類した結果とのペアの集合)を用いて最適化することを指す。なお、分類器Ciが状態Aと分類するべき物品を状態Bと分類する誤分類を行った場合、追加学習に用いる教師データは、状態Aと分類するべき物品を被写体として含む画像と該物品の状態を人が分類した結果(状態A)とのペア、及び、状態Bと分類するべき物品を被写体として含む画像と該物品の状態を人が分類した結果(状態B)とのペアの少なくとも一方(好ましくは両方)を含むことが望ましい。これにより、分類器Ciの汎化能力を効率的に向上させることが可能になるからである。
【0041】
(機械学習装置の効果)
物品を被写体として含む画像を参照して該物品の状態を分類する技術を、機械学習により構築された分類器を用いて実現する場合、長期に亘って分類精度を保つことが困難である。なぜなら、機械学習により構築された分類器の汎化能力が発揮されるのは、教師データとして用いられた画像に含まれる物品、或いは、その物品に類似する物品に対してであり、分類の対象となる物品そのものや、分類の対象となる物品を取り巻く環境などが変化すると、分類対象とする物品が分類器の汎化能力が発揮される範囲を超えてしまうからである。一例として、製造現場において利用される分類器、例えば、製造物を被写体として含む画像を参照して該製造物の状態を分類する分類器では、製造条件(人、機械、原材料、製造方法等)に変更が生じることがあるので、このような問題が頻繁に生じ得る。
【0042】
これに対して、機械学習装置1においては、分類器群101に含まれる少なくとも1つの分類器Ciの分類精度が閾値を下回ったことを、製造条件の変化に起因して主分類器C1の分類精度の低下が生じる「予兆」として捉え、主分類器C1を含む全ての分類器C1,C2,…,Cnの追加学習を実施する。このため、主分類器C1の分類精度の低下が生じる前に主分類器C1に追加学習を行わせることができ、主分類器C1の分類精度を高く維持することが可能になる。なお、主分類器C1に追加学習を行わせる際に、副分類器C2,C3,…,Cnにも追加学習を行わせる構成を採用しているのは、副分類器C2,C3,…,Cnが上述した「予兆」を検知する検知精度を維持するためである。
【0043】
(第1の追加学習フェーズにおける機械学習方法)
第1の追加学習フェーズにおいて実施される機械学習方法S1の流れについて、
図3の(a)を参照して説明する。
図3の(a)は、第1の追加学習フェーズにおいて機械学習方法S1の流れを示すフローチャートである。
【0044】
機械学習方法S1は、物品の状態を分類し終えたグループを対象グループとして、対象グループの次のグループに属する物品の分類を開始する前に実施される処理であり、
図3の(a)に示すように、評価ステップS101と、判定ステップS102と、追加学習ステップS103と、を含む。
【0045】
評価ステップS101は、分類器群101に含まれる各分類器Ciの分類精度を第1の評価方法に従って評価する評価処理を評価部102が実行するステップである。ここで、第1の評価方法とは、上述したように、各分類器Ciの分類精度を、対象グループから選択された各物品について、該分類器Ciが該物品の状態を分類した結果と、人が該物品の状態を分類した結果とを比較する方法である。評価ステップS101においては、例えば、対象グループから選択された物品のうち、分類器Ciが状態を分類した結果と人が状態を分類した結果とが一致する物品の個数を、対象グループから選択された物品の個数で除した商(人が状態を分類した結果を正解としたときの分類器Ciの正解率)が、分類器Ciの分類精度として算出される。
【0046】
判定ステップS102は、評価ステップS101にて評価された分類精度が予め定められた閾値を下回る分類器Ciが存在するか否かを判定するステップである。分類精度が閾値を下回る分類器Ciが存在する場合には、後述する追加学習ステップS103が実行される。逆に、分類精度が閾値を下回る分類器Ciが存在しない場合には、後述する追加学習ステップS103がされない。
【0047】
追加学習ステップS103は、分類機群101に含まれる全ての分類器C1,C2,…,Cnに学習制御部103が追加学習を行わせるステップである。追加学習ステップS103においては、各分類器Ciが分類処理に用いるモデルの重み係数が、教師データを用いて最適化される。
【0048】
以上のように、第1の追加学習フェーズにおいては、各分類器Ciの分類精度が、人が物品の状態を分類した結果に基づいて評価される。このため、主分類器C1の汎化能力に依らずに、追加学習を実施するべきタイミングを適切に特定することができる。
【0049】
(第2の追加学習フェーズにおける機械学習方法)
第2の追加学習フェーズにおいて実施される機械学習方法S2の流れについて、
図3の(b)を参照して説明する。
図3の(b)は、第2の追加学習フェーズにおいて実施される機械学習方法S2の流れを示すフローチャートである。
【0050】
機械学習方法S2は、物品の状態を分類し終えたグループを対象グループとして、対象グループの次のグループに属する物品の分類を開始する前に実施される処理であり、
図3の(b)に示すように、評価ステップS201と、判定ステップS202と、追加学習ステップS203と、を含む。
【0051】
評価ステップS201は、分類器群101に含まれる各分類器Ciの分類精度を第2の評価方法に従って評価する評価処理を評価部102が実行するステップである。ここで、第2の評価方法とは、上述したように、各分類器Ciの分類精度を、対象グループから選択された各物品について、該分類器Ciが該物品の状態を分類した結果と、主分類器C1が該物品の状態を分類した結果とを比較する方法である。評価ステップS201においては、例えば、対象グループから選択された物品のうち、分類器Ciが状態を分類した結果と主分類器C1が状態を分類した結果とが一致する物品の個数を、対象グループから選択された物品の個数で除した商(主分類器C1が分類した結果を正解としたときの分類器Ciの正解率)が、分類器Ciの分類精度として算出される。
【0052】
判定ステップS202は、評価ステップS201にて評価された分類精度が予め定められた閾値を下回る分類器Ciが存在するか否かを判定するステップである。分類精度が閾値を下回る分類器Ciが存在する場合には、後述する追加学習ステップS203が実行される。逆に、分類精度が閾値を下回る分類器Ciが存在しない場合には、後述する追加学習ステップS203が実行されない。
【0053】
追加学習ステップS203は、分類機群101に含まれる全ての分類器C1,C2,…,Cnに学習制御部103が追加学習を行わせるステップである。追加学習ステップS203においては、各分類器Ciが分類処理に用いるモデルの重み係数が、教師データを用いて最適化される。
【0054】
以上のように、第2の追加学習フェーズにおいては、各分類器Ciの分類精度が、主分類器C1が物品の状態を分類した結果に基づいて評価される。このため、人が物品の状態を分類する作業を行うことなく、追加学習を実施するべきタイミングを適切に特定することができる。
【0055】
(変形例)
本実施形態においては、分類器群101の運用を開始した後に第1の追加学習フェーズ(各分類器Ciの分類精度を、該分類器Ciが物品の状態を分類した結果と人が該物品の状態を分類した結果とを比較することによって評価する)と第2の追加学習フェーズ(各分類器Ciの分類精度を、該分類器Ciが物品の状態を分類した結果と主分類器C1が該物品の状態を分類した結果とを比較することによって評価する)とを実施する構成を採用しているが、本発明は、これに限定されない。例えば、分類器群101の運用を開始した後に第1の追加学習フェーズのみを実施する構成を採用してもよいし、分類器群101の運用を開始した後に第2の追加学習フェーズのみを実施する構成を採用してもよい。
【0056】
(変形例2)
本実施形態においては、分類器群101が機械学習装置1の内部に含まれている(機械学習装置1と同じコンピュータで実行されている)構成を採用しているが、本発明は、これに限定されない。例えば、分類器群101が機械学習装置1の内部に含まれていない(機械学習装置1と異なるコンピュータで実行される)構成を採用しても構わない。すなわち、分類器群101は、機械学習装置1の必須の構成要素ではない。
【0057】
〔第2の実施形態〕
(検査装置2の機能的構成)
本発明の第2の実施形態に係る検査装置2の機能的構成について、
図4を参照して説明する。
図4は、検査装置2の機能的構成を示すブロック図である。なお、検査装置2の物理的構成は、
図1に示す機械学習装置1の物理的構成と同様である。このため、検査装置2の物理的構成については、詳細な説明を省略する。
【0058】
検査装置2は、グループ(例えばロット)に分けられた複数の物品の検査を行うための装置であり、
図4に示すように、機械学習装置1を含む。すなわち、検査装置2は、分類器群101と、評価部102と、学習制御部103と、を備えている。なお、検査対象とする複数の物品は、予めグループに分けされていてもよいし、予め定められた複数の時間帯の各々において検査した物品をそれぞれひとつのグループとしてもよい(例えば、第1の時間帯において検査した物品を第1のグループとし、第1の時間帯に続く第2の時間帯において検査した物品を第2のグループとするなど)。
【0059】
分類器群101は、各物品を被写体として含む画像を参照して該物品の状態を分類する分類処理を、学習により定められたアルゴリズムに従い実行する複数の分類器C1,C2,…,Cnからなる。評価部102は、分類器群101に含まれる各分類器Ciの分類精度をグループ毎に評価する評価処理を実行する。学習制御部103は、分類器群101に含まれる少なくとも1つの分類器Ciの分類精度が予め定められた基準に達しない場合、次のグループに属する物品の検査を行う前に、分類器群101に含まれる、上記少なくとも1つの分類器Ci以外の分類器Cjに追加学習(又は再学習)を行わせる。例えば、分類器群101に含まれる少なくとも1つの分類器Ciの分類精度が予め定められた基準に達しない場合、次のロットに属する物品の検査を行う前に、分類器群101に含まれる全ての分類器C1,C2,…,Cnに追加学習(又は再学習)を行わせる。なお、分類器群101、評価部102、及び学習制御部103の機能の詳細は、第1の実施形態において説明した通りである。なお、検査装置2における機械学習方法の流れは、
図3を参照して説明した機械学習装置1における機械学習方法S1,S2の流れと同様である。
【0060】
(実施例1)
検査装置2の実施例について、
図5及び
図6を参照して説明する。
【0061】
図5は、半導体レーザの製造プロセスの流れを示す模式図である。
【0062】
半導体レーザの製造プロセスは、
図5の上段に示すように、結晶成長プロセス、電極プロセス、素子化プロセスにより構成される。半導体レーザの製造プロセスにおいては、結晶成長プロセスにおいて形成されたウエハの外観検査が行われる。
【0063】
ウエハの外観検査は、
図5の下段に示すように、(1)ウエハの一部を撮像する撮像工程と、(2)撮像工程にて得られた画像から各LDチップに対応する部分画像を切り出す切出工程と、(3)切出工程にて得られた部分画像(LDチップを被写体として含む画像)に基づいてLDチップの状態を分類する分類工程と、を含んでいる。
【0064】
本実施例に係る検査装置2は、3つの分類器C1,C2,C3からなる分類器群101を用いてこの分類工程を実施する。各分類器Ciは、LDチップを被写体として含む部分画像に基づいて、該LDチップの状態を下記の7状態の何れかに分類する。状態が状態1~3の何れかに分類されたLDチップは、良品と見做され、状態が状態4~7の何れかに分類されたLDチップは、不良品と見做さる。
【0065】
状態1:欠陥なし、
状態2:チップ上に形成されたストライプの内部に薄い点欠陥がある、
状態3:上記ストライプ上に欠陥がある、
状態4:上記ストライプの内部に濃い点欠陥がある、
状態5:上記ストライプの内部に点欠陥以外の欠陥がある、
状態6:上記ストライプの外部に何らかの欠陥がある、
状態7:チップ上に粒子状異物が存在する。
【0066】
図6は、分類器群101に含まれる各分類器Ciの分類精度をグループ毎に示した箱髭図である。本実施例においては、グループ5に対する検査において、分類器C2の分類精度が閾値98%を下回り、グループ9に対する検査において、分類器C3の分類精度が閾値98%を下回っている。このため、本実施例では、グループ6及びグループ10に対する検査を開始する前に、3つの分類器C1,C2,C3の追加学習が実施される。なお、
図6においては、分類器群101に含まれる少なくとも1つの分類器Ciの分類精度が閾値を下回ることを、「予兆」と表現している。また、
図6においては、分類器群101に含まれる3つの分類器C1,C2,C3の追加学習を実施することを、「打ち手」と表現している。
【0067】
〔付記事項〕
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【符号の説明】
【0068】
1 機械学習装置
2 検査装置
10 バス
11 主メモリ
12 プロセッサ
13 補助メモリ
14 入出力インターフェース
20 入力装置
30 出力装置
101 分類器群
102 評価部
103 学習制御部
C1、C2、C3、Ci、Cj 分類器