(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-28
(45)【発行日】2024-12-06
(54)【発明の名称】パターン検査装置
(51)【国際特許分類】
G06T 7/00 20170101AFI20241129BHJP
G06V 10/82 20220101ALI20241129BHJP
【FI】
G06T7/00 350C
G06T7/00 610Z
G06V10/82
(21)【出願番号】P 2022514871
(86)(22)【出願日】2021-04-09
(86)【国際出願番号】 IB2021052938
(87)【国際公開番号】W WO2021209867
(87)【国際公開日】2021-10-21
【審査請求日】2024-03-29
(31)【優先権主張番号】P 2020073779
(32)【優先日】2020-04-17
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000153878
【氏名又は名称】株式会社半導体エネルギー研究所
(72)【発明者】
【氏名】岡野 達也
(72)【発明者】
【氏名】中里 諒
【審査官】菊池 伸郎
(56)【参考文献】
【文献】国際公開第2019/189026(WO,A1)
【文献】特表2019-530488(JP,A)
【文献】米国特許出願公開第2020/0034693(US,A1)
【文献】特開2018-180628(JP,A)
【文献】特開2020-35282(JP,A)
【文献】特開2004-354251(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
G06V 10/82
G01N 21/88
(57)【特許請求の範囲】
【請求項1】
撮像部と、検査装置と、分類装置と、を有するパターン検査装置であって、
前記撮像部は、検査対象を撮像する機能を有し、
前記検査装置は、前記撮像部が撮像した異なる素子の2つの画像の差分を基に不良が含まれているか否かの判断を行う機能を有し、
前記分類装置は、記憶部と、処理部と、分類器と、を有し、
前記記憶部には、
不良が含まれると判断された複数の画像データと、識別モデルと、が格納され、
前記識別モデルは、複数の畳み込み層と、複数のプーリング層と、第1の全結合層と、第2の全結合層と、第3の全結合層と、第4の全結合層と、第5の全結合層と、を有し、
前記第5の全結合層は、出力層であり、
前記第4の全結合層は、前記第5の全結合層と接続しており、
前記第3の全結合層は、前記第4の全結合層と接続しており、
前記第2の全結合層は、前記第3の全結合層と接続しており、
前記第1の全結合層は、前記第2の全結合層と接続しており、
前記処理部に、前記複数の画像データのうち、第1乃至第n(nは2以上の整数である)の画像データが供給され、
前記処理部は、前記識別モデルに基づいて、第k(kは1以上n以下の整数である)の画像データの、第kの特徴量を出力する機能を有し、
前記処理部から出力される特徴量は、前記第1の全結合層が有するニューロンの数値、前記第2の全結合層が有するニューロンの数値、または、前記第3の全結合層が有するニューロンの数値であり、
前記分類器に、前記処理部から出力された第1乃至第nの特徴量が供給され、
前記分類器は、前記第1乃至第nの特徴量に基づいて、前記第1乃至第nの画像データのクラスタリングを行う機能を有する、パターン検査装置。
【請求項2】
撮像部と、検査装置と、分類装置と、を有するパターン検査装置であって、
前記撮像部は、検査対象を撮像する機能を有し、
前記検査装置は、前記撮像部が撮像した異なる素子の2つの画像の差分を基に不良が含まれているか否かの判断を行う機能を有し、
前記分類装置は、記憶部と、処理部と、分類器と、を有し、
前記記憶部には、
不良が含まれると判断された複数の画像データと、識別モデルと、が格納され、
前記識別モデルは、複数の畳み込み層と、複数のプーリング層と、全結合層と、を有し、
前記全結合層は、出力層であり、
前記処理部に、前記複数の画像データのうち、第1乃至第n(nは2以上の整数である)の画像データが供給され、
前記処理部は、前記識別モデルに基づいて、第k(kは1以上n以下の整数である)の画像データの、第kの特徴量を出力する機能を有し、
前記処理部から出力される特徴量は、前記複数の畳み込み層のいずれか一が有するニューロンの数値、または、前記複数のプーリング層のいずれか一が有するニューロンの数値であり、
前記分類器に、前記処理部から出力された第1乃至第nの特徴量が供給され、
前記分類器は、前記第1乃至第nの特徴量に基づいて、前記第1乃至第nの画像データのクラスタリングを行う機能を有する、パターン検査装置。
【請求項3】
撮像部と、検査装置と、分類装置と、を有するパターン検査装置であって、
前記撮像部は、検査対象を撮像する機能を有し、
前記検査装置は、前記撮像部が撮像した異なる素子の2つの画像の差分を基に不良が含まれているか否かの判断を行う機能を有し、
前記分類装置は、記憶部と、処理部と、分類器と、を有し、
前記記憶部には、
不良が含まれると判断された複数の画像データと、識別モデルと、が格納され
、
前記識別モデルは、入力層と、中間層と、出力層と、を有し、
前記処理部に、前記複数の画像データのうち、第1乃至第n(nは2以上の整数である)の画像データが供給され、
前記処理部は、前記識別モデルに基づいて、第k(kは1以上n以下の整数である)の画像データの、第kの特徴量を出力する機能を有し、
前記処理部から出力される特徴量は、前記中間層が有するニューロンの数値であり、
前記分類器に、前記処理部から出力された第1乃至第nの特徴量が供給され、
前記分類器は、前記第1乃至第nの特徴量に基づいて、前記第1乃至第nの画像データのクラスタリングを行う機能を有する、パターン検査装置。
【請求項4】
撮像部と、検査装置と、分類装置と、を有するパターン検査装置であって、
前記撮像部は、検査対象を撮像する機能を有し、
前記検査装置は、前記撮像部が撮像した異なる素子の2つの画像の差分を基に不良が含まれているか否かの判断を行う機能を有し、
前記分類装置は、記憶部と、加工部と、処理部と、分類器と、を有し、
前記記憶部には、
不良が含まれると判断された複数の画像データと、識別モデルと、が格納され
、
前記識別モデルは、入力層と、中間層と、出力層と、を有し、
前記加工部に、前記複数の画像データのうち、第1乃至第n(nは2以上の整数である)の画像データが供給され、
前記加工部は、第k(kは1以上n以下の整数である)の画像データの一部を除去することで、第(n+k)の画像データを生成する機能を有し、
前記処理部に、第(n+1)乃至第(2n)の画像データが供給され、
前記処理部は、前記識別モデルに基づいて、前記第(n+k)の画像データの、第kの特徴量を出力する機能を有し、
前記処理部から出力される特徴量は、前記中間層が有するニューロンの数値であり、
前記分類器に、前記処理部から出力された第1乃至第nの特徴量が供給され、
前記分類器は、前記第1乃至第nの特徴量に基づいて、前記第1乃至第nの画像データのクラスタリングを行う機能を有する、パターン検査装置。
【請求項5】
請求項1乃至請求項
4のいずれか一において、
前記処理部から出力される特徴量の次元数は、32以上256以下である、パターン検査装置。
【請求項6】
請求項1乃至請求項
5のいずれか一において、
前記識別モデルは、不良が含まれると判別された画像データに対して、不良のタイプが推論されるように、教師あり学習が行われており、
前記クラスタリングには、階層的手法が用いられる、パターン検査装置。
【請求項7】
請求項1乃至請求項
6のいずれか一において、
前記記憶部、前記処理部、および前記分類器に加えて、出力部を有し、
前記出力部は、前記分類器で行われたクラスタリングの結果を表示する機能を有する、パターン検査装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の一態様は、分類装置に関する。また、本発明の一態様は、画像分類方法に関する。また、本発明の一態様は、パターン検査装置に関する。
【背景技術】
【0002】
半導体製造工程の不良検出手段として、外観検査が挙げられる。外観検査を自動で行うための装置(外観検査装置)として、例えば、パターン検査装置が挙げられる。外観検査装置を利用して取得された画像に対して、不良の検出および識別が行われる。不良の検出および識別が目視で行われる場合、不良の検出および識別の精度に個人差が生じる場合がある。また、画像データの数が多いと、不良の検出および識別に膨大な時間がかかる。
【0003】
近年、ニューラルネットワークを利用して、不良(欠陥)の識別を行う技術が報告されている。例えば、特許文献1では、欠陥に関する情報を入力して欠陥の識別結果を出力するように学習させたニューロ処理ユニットを用いて、欠陥を識別する欠陥種別判定装置が開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ニューロ処理ユニットを学習させるには、欠陥に関する情報と欠陥の種別との関連付けをあらかじめ行う必要がある。特許文献1では、欠陥に関する情報は、欠陥の面積、欠陥の形状、欠陥の位置などであり、画像処理装置を用いて取得されている。しかしながら、複数の欠陥が重なる、または同じ領域に存在する場合、欠陥に関する情報の精度が低下する恐れがある。
【0006】
不良が検知された場合、リワーク工程を行うか否かを判断する必要がある。リワーク工程を行うか否かの判断は、不良の種類だけでなく、各不良の発生頻度、ロット・基板内の不良の分布など、俯瞰して行われる必要がある。
【0007】
そこで、本発明の一態様は、新規の分類装置を提供することを課題の一つとする。また、本発明の一態様は、新規の画像分類方法を提供することを課題の一つとする。また、本発明の一態様は、新規のパターン検査装置を提供することを課題の一つとする。
【0008】
なお、これらの課題の記載は、他の課題の存在を妨げるものではない。なお、本発明の一態様は、これらの課題の全てを解決する必要はないものとする。なお、これら以外の課題は、明細書、図面、請求項などの記載から、自ずと明らかとなるものであり、明細書、図面、請求項などの記載から、これら以外の課題を抽出することが可能である。
【課題を解決するための手段】
【0009】
本発明の態様は、記憶部と、処理部と、分類器と、を有する分類装置である。記憶部には、複数の画像データと、識別モデルと、が格納される。識別モデルは、複数の畳み込み層と、複数のプーリング層と、第1の全結合層と、第2の全結合層と、第3の全結合層と、第4の全結合層と、第5の全結合層と、を有する。第5の全結合層は、出力層である。第4の全結合層は、第5の全結合層と接続している。第3の全結合層は、第4の全結合層と接続している。第2の全結合層は、第3の全結合層と接続している。第1の全結合層は、第2の全結合層と接続している。処理部に、複数の画像データのうち、第1乃至第n(nは2以上の整数である)の画像データが供給される。処理部は、識別モデルに基づいて、第k(kは1以上n以下の整数である)の画像データの、第kの特徴量を出力する機能を有する。処理部から出力される特徴量は、第1の全結合層が有するニューロンの数値、第2の全結合層が有するニューロンの数値、または、第3の全結合層が有するニューロンの数値である。分類器に、処理部から出力された第1乃至第nの特徴量が供給される。分類器は、第1乃至第nの特徴量に基づいて、第1乃至第nの画像データのクラスタリングを行う機能を有する。
【0010】
本発明の他の一態様は、記憶部と、処理部と、分類器と、を有する分類装置である。記憶部には、複数の画像データと、識別モデルと、が格納される。識別モデルは、複数の畳み込み層と、複数のプーリング層と、第1の全結合層と、第2の全結合層と、第3の全結合層と、を有する。第3の全結合層は、出力層である。第2の全結合層は、第3の全結合層と接続している。第1の全結合層は、第2の全結合層と接続している。処理部に、複数の画像データのうち、第1乃至第n(nは2以上の整数である)の画像データが供給される。処理部は、識別モデルに基づいて、第k(kは1以上n以下の整数である)の画像データの、第kの特徴量を出力する機能を有する。処理部から出力される特徴量は、第1の全結合層が有するニューロンの数値、または、第2の全結合層が有するニューロンの数値である。分類器に、処理部から出力された第1乃至第nの特徴量が供給される。分類器は、第1乃至第nの特徴量に基づいて、第1乃至第nの画像データのクラスタリングを行う機能を有する。
【0011】
本発明の他の一態様は、記憶部と、処理部と、分類器と、を有する分類装置である。記憶部には、複数の画像データと、識別モデルと、が格納される。識別モデルは、複数の畳み込み層と、複数のプーリング層と、全結合層と、を有する。全結合層は、出力層である。処理部に、複数の画像データのうち、第1乃至第n(nは2以上の整数である)の画像データが供給される。処理部は、識別モデルに基づいて、第k(kは1以上n以下の整数である)の画像データの、第kの特徴量を出力する機能を有する。処理部から出力される特徴量は、複数の畳み込み層のいずれか一が有するニューロンの数値、または、複数のプーリング層のいずれか一が有するニューロンの数値である。分類器に、処理部から出力された第1乃至第nの特徴量が供給される。分類器は、第1乃至第nの特徴量に基づいて、第1乃至第nの画像データのクラスタリングを行う機能を有する。
【0012】
上記分類装置において、複数の画像データのそれぞれは、不良が含まれると判別された画像データであることが好ましい。
【0013】
本発明の他の一態様は、記憶部と、処理部と、分類器と、を有する分類装置である。記憶部には、複数の画像データと、識別モデルと、が格納される。複数の画像データのそれぞれは、不良が含まれると判別された画像データである。識別モデルは、入力層と、中間層と、出力層と、を有する。処理部に、複数の画像データのうち、第1乃至第n(nは2以上の整数である)の画像データが供給される。処理部は、識別モデルに基づいて、第k(kは1以上n以下の整数である)の画像データの、第kの特徴量を出力する機能を有する。処理部から出力される特徴量は、中間層が有するニューロンの数値である。分類器に、処理部から出力された第1乃至第nの特徴量が供給される。分類器は、第1乃至第nの特徴量に基づいて、第1乃至第nの画像データのクラスタリングを行う機能を有する。
【0014】
本発明の他の一態様は、記憶部と、加工部と、処理部と、分類器と、を有する分類装置である。記憶部には、複数の画像データと、識別モデルと、が格納される。複数の画像データのそれぞれは、不良が含まれると判別された画像データである。識別モデルは、入力層と、中間層と、出力層と、を有する。加工部に、複数の画像データのうち、第1乃至第n(nは2以上の整数である)の画像データが供給される。加工部は、第k(kは1以上n以下の整数である)の画像データの一部を除去することで、第(n+k)の画像データを生成する機能を有する。処理部に、第(n+1)乃至第(2n)の画像データが供給される。処理部は、識別モデルに基づいて、第(n+k)の画像データの、第kの特徴量を出力する機能を有する。処理部から出力される特徴量は、中間層が有するニューロンの数値である。分類器に、処理部から出力された第1乃至第nの特徴量が供給される。分類器は、第1乃至第nの特徴量に基づいて、第1乃至第nの画像データのクラスタリングを行う機能を有する。
【0015】
上記分類装置において、処理部から出力される特徴量の次元数は、32以上256以下であることが好ましい。
【0016】
上記分類装置において、識別モデルは、不良が含まれると判別された画像データに対して、不良のタイプが推論されるように、教師あり学習が行われており、クラスタリングには、階層的手法が用いられることが好ましい。
【0017】
また、上記分類装置において、記憶部、処理部、および分類器に加えて、出力部を有し、出力部は、分類器で行われたクラスタリングの結果を表示する機能を有することが好ましい。
【0018】
また、本発明の他の一態様は、上記分類装置と、撮像部と、検査装置と、を有するパターン検査装置である。撮像部は、検査対象を撮像する機能を有する。検査装置は、撮像部が撮像することで取得される画像データ内に不良が含まれるか否かの判別を行う機能を有する。
【0019】
本発明の他の一態様は、第1のステップにおいて、第1乃至第n(nは2以上の整数である)の画像データを処理部に供給し、第2のステップにおいて、処理部を用いて、識別モデルに基づいて、第1乃至第nの画像データに対する、第1乃至第nの特徴量を抽出し、第3のステップにおいて、第1乃至第nの特徴量を分類器に供給し、第4のステップにおいて、分類器を用いて、第1乃至第nの特徴量に基づいて、第1乃至第nの画像データのクラスタリングを行う、画像分類方法であって、第1乃至第nの画像データのそれぞれは、不良が含まれると判別された画像データであり、識別モデルは、入力層と、中間層と、出力層と、を有し、処理部から出力される特徴量は、中間層が有するニューロンの数値である、画像分類方法である。
【0020】
上記画像分類方法において、識別モデルは、不良が含まれると判別された画像データに対して、不良のタイプが推論されるように、教師あり学習が行われており、クラスタリングには、階層的手法が用いられることが好ましい。
【0021】
上記画像分類方法において、処理部から出力される特徴量の次元数は、32以上256以下であることが好ましい。
【0022】
また、上記画像分類方法において、第5のステップにおいて、分類器で行われたクラスタリングの結果を出力部に供給し、第6のステップにおいて、結果を表示することが好ましい。
【発明の効果】
【0023】
本発明の一態様により、新規の分類装置を提供することができる。また、本発明の一態様により、新規の画像分類方法を提供することができる。また、本発明の一態様により、新規のパターン検査装置を提供することができる。
【0024】
なお、本発明の一態様の効果は、上記列挙した効果に限定されない。上記列挙した効果は、他の効果の存在を妨げるものではない。なお、他の効果は、以下の記載で述べる、本項目で言及していない効果である。本項目で言及していない効果は、当業者であれば、明細書、図面などの記載から導き出せるものであり、これらの記載から適宜抽出することができる。なお、本発明の一態様は、上記列挙した効果、及び/又は他の効果のうち、少なくとも一つの効果を有するものである。したがって本発明の一態様は、場合によっては、上記列挙した効果を有さない場合もある。
【図面の簡単な説明】
【0025】
図1は、分類装置の一例を示すブロック図である。
図2は、画像データおよびラベルの一例を示す図である。
図3A、及び
図3Bは、ニューラルネットワークの構成例を示す模式図である。
図4A、及び
図4Bは、分類装置の一例を示すブロック図である。
図5は、画像データを分類する方法の一例を示すフローチャートである。
図6は、画像データおよび特徴量の一例を示す図である。
図7は、画像データを分類する方法の一例を示すフローチャートである。
図8は、学習済みの識別モデルを生成する方法の一例を示すフローチャートである。
図9は、分類装置のハードウェアの一例を示す図である。
図10は、分類装置のハードウェアの一例を示す図である。
図11は、パターン検査装置の一例を示すブロック図である。
図12は、クラスタリングの結果を説明する図である。
図13A乃至
図13Dは、画像データの一例を示す図である。
【発明を実施するための形態】
【0026】
実施の形態について、図面を用いて詳細に説明する。但し、本発明は以下の説明に限定されず、本発明の趣旨およびその範囲から逸脱することなくその形態及び詳細を様々に変更し得ることは当業者であれば容易に理解される。したがって、本発明は以下に示す実施の形態の記載内容に限定して解釈されるものではない。
【0027】
なお、以下に説明する発明の構成において、同一部分または同様な機能を有する部分には同一の符号を異なる図面間で共通して用い、その繰り返しの説明は省略する。
【0028】
また、図面において示す各構成の、位置、大きさ、範囲などは、理解の簡単のため、実際の位置、大きさ、範囲などを表していない場合がある。このため、開示する発明は、必ずしも、図面に開示された位置、大きさ、範囲などに限定されない。
【0029】
また、本明細書にて用いる「第1」、「第2」、「第3」という序数詞は、構成要素の混同を避けるために付したものであり、数的に限定するものではないことを付記する。
【0030】
また、本明細書において、上限と下限の数値が規定されている場合は、自由に組み合わせる構成も開示されているものとする。
【0031】
本明細書では、機械学習モデルの学習および評価に用いるデータセットを、学習用データセットと表記する。機械学習モデルの学習および評価を行う際、学習用データセットは、学習データ(訓練データともいう)と、テストデータ(評価データともいう)と、に分割される。さらに、学習データは、学習データと、検証データと、に分割されることがある。なお、テストデータは、学習用データセットから予め分割されていてもよい。
【0032】
学習データとは、機械学習モデルの学習に使用するデータである。検証データとは、機械学習モデルの学習結果の評価に使用するデータである。テストデータとは、機械学習モデルの評価に使用するデータである。機械学習が教師あり学習である場合、学習データ、検証データ、およびテストデータには、ラベルが付与されている。
【0033】
本明細書などにおいて、半導体素子は、半導体特性を利用することで機能しうる素子を指す。一例としては、トランジスタ、ダイオード、発光素子、または受光素子などの半導体素子である。また別の一例の半導体素子は、容量、抵抗、インダクタなどの、導電膜、または絶縁膜などによって生成される受動素子である。また別の一例の半導体素子は、半導体素子、または受動素子を有する回路を備える半導体装置である。
【0034】
(実施の形態1)
本実施の形態では、本発明の一態様の分類装置について、
図1乃至
図4を用いて説明する。
【0035】
分類装置は、ユーザが利用するパーソナルコンピュータなどの情報処理装置に設けられることができる。または、分類装置をサーバに設け、クライアントPCからネットワークを介して利用することができる。
【0036】
分類装置は、画像データをクラスタリングする機能を有する。本実施の形態では、当該分類装置が、半導体製造工程で検出される不良をクラスタリングするものとして説明する。つまり、当該画像データは、半導体製造工程で検出される不良を含む画像データであるとする。
【0037】
半導体製造工程で検出される不良として、例えば、異物の混入、膜抜け、パターン不良、膜残り、膜浮き、断線などがある。異物の混入とは、半導体製造工程における、作業者、材料、製造装置、作業環境などを発生源とする異物が、基板(シリコンウェハなどの半導体基板、ガラス基板、プラスチック基板、金属基板、SOI基板など)上に付着することで生じる不良を指す。また、膜抜けとは、正常なパターンが剥がれてしまったことで生じる不良を指す。また、パターン不良とは、パターンが設計通りに形成されなかったことで生じる不良を指す。
【0038】
上記画像データは、製造工程の途中である半導体素子、または製造工程が終了した半導体素子において、半導体膜、絶縁膜、配線などのパターン(以下、単にパターンと呼ぶ)が正常でない領域が撮影された画像データである。つまり、当該画像データは、不良が観察される領域が撮影された画像データと言い換えることができる。当該画像データを、単に、不良を含む画像データと呼ぶ場合がある。
【0039】
<分類装置100>
本発明の一態様である分類装置の一例を、
図1に示す。
図1は、分類装置100の構成を示す図である。分類装置100は、
図1に示すように、記憶部101、処理部102、分類器103、および出力部104を備える。
【0040】
[記憶部101]
記憶部101には、画像データが格納される。当該画像データは、不良を含む画像データである。
【0041】
ここで、記憶部101に格納される画像データについて、
図2を用いて説明する。記憶部101には、複数の画像データ50が格納される。
図2に示すように、複数の画像データ50は、画像データ51_1乃至画像データ51_s(sは1以上の整数である。)、および、画像データ52_1乃至画像データ52_t(tは1以上の整数である。)を有する。
【0042】
画像データ51_1乃至画像データ51_sのそれぞれには、ラベルが付与されている。
図2では、画像データ51_1、および画像データ51_2には、ラベル61Aが付与されている。また、画像データ51_sには、ラベル61Fが付与されている。本実施の形態では、画像データ51_1乃至画像データ51_sに付与されるラベルは、半導体製造工程で検出される不良に対応する。別言すると、ラベル61A、ラベル61Fなどのそれぞれは、半導体製造工程で検出される不良のいずれか一または複数に対応する。なお、半導体製造工程で検出される不良のタイプは、数値配列として与えられる。
【0043】
画像データ52_1乃至画像データ52_tには、不良に対応するラベルが付与されていない。なお、
図2内の“-”は、画像データにラベルが付与されていないことを表す。
【0044】
[処理部102]
処理部102は、学習済みの識別モデルによる処理を行う機能を有する。具体的には、処理部102は、学習済みの識別モデルを用いて、画像データから特徴量を抽出する機能を有する。処理部102には、画像データ53_1乃至画像データ53_n(nは2以上の整数である。)が記憶部101から供給される。ここで、画像データ53_1乃至画像データ53_nは、記憶部101に格納されている複数の画像データ50の一部または全てである。このとき、処理部102にて、画像データ53_1乃至画像データ53_nのそれぞれに対して、特徴量が抽出される。
【0045】
識別モデルには、ニューラルネットワークを用いることが好ましく、畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)を用いることがより好ましい。CNNとして、例えば、VGG11、VGG16、GoogLeNet、ResNetなどが挙げられる。
【0046】
図3Aは、ニューラルネットワーク300の構成例を示す図である。ニューラルネットワーク300は、層301_1乃至層301_k(kは3以上の整数である。)を有する。
【0047】
層301_1乃至層301_kは、ニューロンを有し、各層に設けられているニューロン同士が結合されている。例えば、層301_1に設けられているニューロンは、層301_2に設けられているニューロンと結合されている。また、層301_2に設けられているニューロンは、層301_1に設けられているニューロン、及び層301_3に設けられているニューロンと結合されている。なお、層301_3乃至層301_kのそれぞれに設けられているニューロンについても同様である。つまり、層301_1乃至層301_kにより、階層型のニューラルネットワークが構成されている。
【0048】
画像データは層301_1に入力され、層301_1は入力された画像データに対応するデータを出力する。当該データは層301_2に入力され、層301_2は入力されたデータに対応するデータを出力する。層301_kには層301_k-1から出力されたデータが入力され、層301_kは当該入力されたデータに対応するデータを出力する。以上より、層301_1を入力層、層301_2乃至層301_k-1を中間層、層301_kを出力層とすることができる。なお、2層以上の中間層を有するニューラルネットワークは、深層学習(ディープラーニング)とも呼ばれる。
【0049】
ニューラルネットワーク300は、例えば層301_1乃至層301_kから出力されるデータが、ニューラルネットワーク300に入力された画像データの特徴に対応するものとなるようにあらかじめ学習されている。学習は、教師なし学習、教師あり学習等により行うことができる。教師なし学習、教師あり学習のどちらの方法で学習を行う場合であっても、学習アルゴリズムとして誤差逆伝播方式等を用いることができる。本実施の形態では、学習は、教師あり学習により行われることが好ましい。
【0050】
CNNの一例を、
図3Bに示す。
図3Bは、CNN310の構成を示す図である。CNN310は、
図3Bに示すように、複数の畳み込み層(畳み込み層311_1乃至畳み込み層311_m(mは1以上の整数である。))、複数のプーリング層(プーリング層312_1乃至プーリング層312_m)、および全結合層313を有する。
図3Bでは、全結合層313が、全結合層313_1、全結合層313_2、および全結合層313_3の3層を有する例を示している。なお、CNN310は、全結合層313を1層または2層だけ有してもよいし、4層以上有してもよい。
【0051】
畳み込み層は、当該畳み込み層に入力されたデータに対して畳み込みを行う機能を有する。例えば、畳み込み層311_1は、入力された画像データに対して畳み込みを行う機能を有する。また、畳み込み層311_2は、プーリング層312_1から出力されたデータに対して畳み込みを行う機能を有する。また、畳み込み層311_mは、プーリング層312_m-1から出力されたデータに対して畳み込みを行う機能を有する。
【0052】
畳み込みは、畳み込み層に入力されたデータと、重みフィルタと、の積和演算を繰り返すことにより行われる。畳み込み層における畳み込みにより、CNN310に入力された画像データに対応する画像の特徴等が抽出される。
【0053】
畳み込みが施されたデータは、活性化関数によって変換された後、プーリング層に出力される。活性化関数としては、ReLU(Rectified Linear Units)等を用いることができる。ReLUは、入力値が負である場合は“0”を出力し、入力値が“0”以上である場合は入力値をそのまま出力する関数である。また、活性化関数として、シグモイド関数、tanh関数等を用いることもできる。
【0054】
プーリング層は、畳み込み層から入力されたデータに対してプーリングを行う機能を有する。プーリングは、データを複数の領域に分割し、当該領域ごとに所定のデータを抽出してマトリクス状に配置する処理である。プーリングにより、畳み込み層によって抽出された特徴を残しつつ、データ量を小さくすることができる。また、入力データの微小なずれに対するロバスト性を高めることができる。なお、プーリングとしては、最大プーリング、平均プーリング、Lpプーリング等を用いることができる。
【0055】
全結合層313は、入力されたデータを活性化関数により変換し、変換後のデータを出力する機能を有する。具体的には、CNN310が
図3Bに示す構成である場合、全結合層313_1は、プーリング層312_mから出力されたデータを活性化関数により変換する機能を有する。また、全結合層313_2は、全結合層313_1から出力されたデータを活性化関数により変換する機能を有する。また、全結合層313_3は、全結合層313_2から出力されたデータを活性化関数により変換する機能を有する。活性化関数として、ReLU、シグモイド関数、tanh関数等を用いることができる。全結合層313は、ある層の全てのノードが、次の層の全てのノードと接続された構成を有する。畳み込み層又はプーリング層から出力されたデータは2次元の特徴マップであり、全結合層313に入力されると1次元に展開される。そして、全結合層313による推論によって得られたベクトルが、全結合層313から出力される。
【0056】
CNN310において、全結合層313が有する層の1つを、出力層とすることができる。例えば、
図3Bに示すCNN310では、全結合層313_3を出力層とすることができる。ここで、
図3Bに示すCNN310では、全結合層313_1、および全結合層313_2は中間層とすることができる。または、CNN310が、全結合層313として全結合層313_1のみを有する場合、全結合層313_1を出力層とすることができる。または、CNN310が、全結合層313_1、および全結合層313_2を有する場合、全結合層313_2を出力層とし、全結合層313_1を中間層とすることができる。CNN310が、全結合層313を4層以上有する場合も同様に、1層の全結合層313を出力層とし、残りの全結合層313を中間層とすることができる。
【0057】
なお、CNN310の構成は
図3Bの構成に限定されない。例えば、複数の畳み込み層(畳み込み層311_1乃至畳み込み層311_m)のそれぞれが、2層以上の畳み込み層を有してもよい。つまり、CNN310が有する畳み込み層の数は、プーリング層の数より多くてもよい。また、抽出された特徴の位置情報を極力残したい場合は、プーリング層を設けなくてもよい。
【0058】
CNN310は学習を行うことにより、重みフィルタのフィルタ値、全結合層の重み係数等を最適化することができる。
【0059】
上記識別モデルは、画像データを入力して、不良の識別結果を出力するように学習されている。つまり、ニューラルネットワークの入力層に、画像データが入力されると、ニューラルネットワークの出力層から、不良の識別結果が出力される。例えば、ニューラルネットワークが
図3Aに示す構成である場合、入力層である層301_1に不良を含む画像データが入力されると、出力層である層301_kから、不良の識別結果が出力される。また、ニューラルネットワークが
図3Bに示す構成である場合、入力層である畳み込み層311_1に不良を含む画像データが入力されると、出力層である全結合層313_3から、不良の識別結果が出力される。
【0060】
処理部102は、識別モデルの中間層が有するニューロンの数値を出力する機能を有する。中間層が有するニューロンの数値は、識別モデルに入力された画像データの特徴に対応するデータ(特徴量ともいう。)を含む。つまり、中間層が有するニューロンの数値を出力することで、識別モデルに入力された画像データの特徴量を抽出することができる。
【0061】
抽出される特徴量の次元数は、一定以上の数を有することが好ましい。当該次元数が少ないと、クラスタリングの精度が不十分となる場合がある。一方、当該次元数が多いと、クラスタリングの演算量が大きくなり、クラスタリングに要する時間が大きくなる、または、計算機の資源が不足する場合がある。当該次元数は、例えば、出力層となる全結合層の次元数よりも大きいことが好ましい。当該次元数は、具体的には、32以上1024以下が好ましく、32以上256以下がより好ましい。
【0062】
ニューラルネットワークが
図3Aに示す構成である場合、例えば、層301_k-1が有するニューロンの数値が出力される。ここで、層301_k-1から出力されるニューロンの数値を特徴量305とする。特徴量305は、画像データの特徴に対応するデータを含む。なお、
図3Aでは、特徴量305は、層301_k-1から出力される構成を示しているが、これに限られない。例えば、特徴量305は、層301_2乃至層301_k-2のいずれか一つから、出力されてもよい。
【0063】
また、ニューラルネットワークが
図3Bに示す構成である場合、例えば、全結合層313_2が有するニューロンの数値が出力される。ここで、全結合層313_2から出力されるニューロンの数値を特徴量315とする。特徴量315は、画像データの特徴に対応するデータを含む。なお、
図3Bでは、特徴量315は、全結合層313_2から出力される構成を示しているが、これに限られない。例えば、特徴量315は、畳み込み層311_1乃至畳み込み層311_m、プーリング層312_1乃至プーリング層312_m、および、全結合層313_1のいずれか一つから出力されてもよい。なお、畳み込み層またはプーリング層から出力される特徴量は、特徴マップと呼ぶ場合がある。
【0064】
処理部102は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)等を用いて処理を行うことができる。特に、処理部102は、ニューラルネットワークにより構成されるため、GPUを用いると、高速で処理を行うことができるため好ましい。
【0065】
学習済みの識別モデルは、処理部102が有する記憶部(
図1には図示せず)に格納されてもよいし、記憶部101に格納されてもよい。学習済みの識別モデルが記憶部101に格納されている場合、処理部102には、記憶部101から、学習済みの識別モデルが供給される。または、学習済みの識別モデルは、入力部、記憶媒体、通信などを介して、処理部102に供給されてもよい。
【0066】
[分類器103]
分類器103は、クラスタリング(クラスター分析)を行う機能を有する。具体的には、分類器103は、特徴量に基づいて、画像データのクラスタリングを行う機能を有する。分類器103には、処理部102にて抽出された、画像データ53_1乃至画像データ53_nのそれぞれの特徴量が供給される。このとき、分類器103にて、画像データ53_1乃至画像データ53_nのそれぞれの特徴量に基づいて、画像データ53_1乃至画像データ53_nがクラスタリングされる。
【0067】
クラスタリング(クラスター分析)の手法として、階層的手法、または非階層的手法を用いることができる。階層的手法は、類似したデータ同士をまとめていくことで、クラスターを形成する手法である。階層的手法として、例えば、最短距離法、最長距離法、群平均法、ウォード法などがある。また、非階層的手法は、類似したデータ同士が同じクラスターに属するように、データ全体を分割する手法である。非階層的手法として、例えば、k-means法などがある。
【0068】
本実施の形態では、クラスタリング(クラスター分析)の手法として、階層的手法を用いることが好ましい。階層的手法を用いることで、これまで確認されなかった不良を含む画像データが含まれる場合、確認済みの不良に分類された集合に分類されることを抑制することができる。また、処理する画像データのデータ分布が未知である場合、階層的手法は、クラスター数の初期設定がなく好適である。階層的手法では、しきい値を設けることで、クラスター数が決定される。当該しきい値は、例えば、サンプルデータを用意して、適合率の高い値に決定するとよい。
【0069】
画像データの総数が多い場合は、クラスタリングの手法として、k-means法を用いることが好ましい場合がある。画像データの総数が多くなる(例えば、2000を超える)と、k-means法は、階層的手法と比べて、少ない計算回数でクラスタリングを行うことができる場合がある。k-means法を用いる場合、クラスター数は、x-means法を用いて自動推定してもよいし、サンプルデータを用意してあらかじめ決定しておいてもよい。
【0070】
分類器103は、記憶部(
図1には図示せず)を有してもよい。このとき、当該記憶部には、クラスタリングの手法に関するプログラムが格納される。または、クラスタリングの手法に関するプログラムは、記憶部101に格納されてもよい。当該プログラムが記憶部101に格納されている場合、分類器103には、記憶部101から、当該プログラムが供給される。または、クラスタリングの手法に関するプログラムは、入力部、記憶媒体、通信などを介して、分類器103に供給されてもよい。
【0071】
[出力部104]
出力部104は、分類器103で行われたクラスタリングの結果を供給する機能を有する。なお、出力部104は、上記結果を表示する機能を有してもよい。例えば、出力部104として、ディスプレイ、スピーカーなどの出力デバイスがある。
【0072】
分類装置100は、入力部(
図1には図示せず)を有してもよい。画像データは、当該入力部を介して、記憶部101に格納されるとよい。また、識別モデル、クラスタリングの手法に関するプログラムなども、当該入力部を介して、記憶部101に格納されてもよい。なお、画像データは、記憶媒体、通信などを介して、記憶部101に格納されてもよい。
【0073】
以上が、分類装置100についての説明である。なお、
図1では、分類装置100は、記憶部101、処理部102、分類器103、および出力部104を有する構成を示しているが、これに限られない。分類装置100の変形例を以下に示す。以下で説明する分類装置の変形例は、本明細書などに示す他の分類装置と適宜組み合わせることができる。
【0074】
<分類装置100A>
図1に示す分類装置100の変形例である分類装置100Aを、
図4Aに示す。
図4Aに示すように、分類装置100Aは、記憶部101、処理部102、分類器103、および出力部104に加えて、加工部105を有する。
【0075】
加工部105は、画像データの加工を行う機能を有する。なお、画像データの加工の詳細については後述する。また、加工部105は、データ拡張を行う機能を有してもよい。
【0076】
分類装置100Aでは、画像データ53_1乃至画像データ53_nは、加工部105に供給される。加工部105を用いて、画像データ53_1乃至画像データ53_nが加工されることで、画像データ53_1乃至画像データ53_nとは異なる画像データ53a_1乃至画像データ53a_nが生成される。加工部105にて生成された画像データ53a_1乃至画像データ53a_nは、処理部102に供給される。処理部102を用いて、画像データ53a_1乃至画像データ53a_nのそれぞれの特徴量が抽出される。処理部102にて抽出された複数の特徴量は、分類器103に供給される。分類器103を用いて、当該複数の特徴量に基づいて、画像データ53_1乃至画像データ53_nがクラスタリングされる。
【0077】
加工部105を有することで、処理部にて抽出される特徴量に、画像データに含まれる不良の特徴をより含ませることができる。したがって、クラスタリングの精度を向上させることができる。
【0078】
以上が、分類装置100Aについての説明である。
【0079】
<分類装置100B>
また、
図4Aに示す分類装置100Aの変形例である分類装置100Bを、
図4Bに示す。
図4Bに示すように、分類装置100Bは、記憶部101、分類器103、出力部104、加工部105、第1処理部106、および第2処理部107を有する。
【0080】
第2処理部107は、分類装置100Aの処理部102に相当する。よって、第2処理部107については、処理部102について説明した内容を参酌することができる。
【0081】
第1処理部106は、識別モデルの学習を行う機能を有する。第1処理部106を用いることで、学習済みの識別モデルを生成することができる。または、第1処理部106を用いることで、識別モデルの再学習を行うことができる。識別モデルの再学習は、例えば、ラベルの付与された画像データが記憶部101に格納された後、または、記憶部101に格納されている、ラベルが付与されていない画像データ(
図2に示す画像データ52_1乃至画像データ52_t)の一つまたは複数にラベルが付与された後などに行われるとよい。識別モデルの再学習を行うことで、識別精度が向上した識別モデルを使用することができ、クラスタリングの精度を向上させることができる。
【0082】
以上が、分類装置100Bについての説明である。
【0083】
本発明の一態様の分類装置を用いて得られるクラスタリングの結果を利用することで、識別モデルによる推論の精度が不十分な画像データに対して、不良の識別を目視で行う場合でも、不良のタイプを決定するのに要する時間を短縮することができる。また、不良の識別に十分習熟していないユーザでも、不良の識別に要する時間を短縮しつつ、不良の識別を高い精度で行うことができる。
【0084】
また、本発明の一態様の分類装置を用いて不良を含む画像データをクラスタリングすることで、ユーザは、リワーク工程を行うか否かの判断を迅速かつ適切に決定することができる。特に、不良を含む画像データと当該画像データの撮影位置(ロット・基板内の位置)とが関連付けられている場合には有効である。また、これまでに確認されたことがない不良や、種類を識別できていない不良を容易に把握することができる。
【0085】
以上より、本発明の一態様である分類装置を用いることで、作業効率を向上させることができる。
【0086】
なお、本発明の一態様の分類装置がクラスタリングする画像データは、半導体製造工程で検出される不良を含む画像データに限られない。例えば、建築物の劣化や損傷を含む画像データであってもよい。建築物の劣化とは、ひび割れ、剥離、異物付着、腐食などである。建築物の劣化や損傷を含む画像データをクラスタリングすることで、建築物の補修を迅速かつ適切に行うことができる。なお、当該画像データは、定点カメラ、監視カメラなどを用いて建築物を撮影することで取得されるとよい。
【0087】
本実施の形態は、他の実施の形態、実施例などと適宜組み合わせることができる。また、本明細書において、1つの実施の形態の中に、複数の構成例が示される場合は、構成例を適宜組み合わせることが可能である。
【0088】
(実施の形態2)
本実施の形態では、画像データを分類する方法(画像分類方法)、および学習済みの識別モデルを生成する方法について、
図5乃至
図8を用いて説明する。なお、本実施の形態の、画像データを分類する方法は、実施の形態1で説明した分類装置を用いて行うことができる。
【0089】
<画像データを分類する方法>
本発明の一態様である、画像データを分類する方法について説明する。なお、本実施の形態で説明する、画像データの分類とは、画像データの集合を複数の部分集合に分割することを指す。つまり、本実施の形態における、画像データの分類は、画像データのクラスタリングと言い換えることができる。
【0090】
図5は、画像データを分類する方法の一例を示すフローチャートである。
図5は、実施の形態1で説明した分類装置が実行する処理の流れを説明するフローチャートでもある。
【0091】
画像データを分類する方法は、
図5に示すように、ステップS001乃至ステップS005を有する。
【0092】
[ステップS001]
ステップS001は、複数の画像データを処理部に供給する工程である。当該複数の画像データは、実施の形態1で説明した画像データ53_1乃至画像データ53_nに相当する。また、当該処理部は、実施の形態1で説明した処理部102または第2処理部107に相当する。
【0093】
[ステップS002]
ステップS002は、上記処理部にて、上記複数の画像データのそれぞれの特徴量を抽出する工程である。つまり、画像データ53_1乃至画像データ53_nからそれぞれ、特徴量62_1乃至特徴量62_nが抽出される。特徴量の抽出は、実施の形態1で説明した、学習済みの識別モデルを用いて行うことができる。つまり、当該特徴量は、実施の形態1で説明した特徴量305または特徴量315に相当する。
【0094】
各画像データの特徴量は、次元数がu個の数値配列で与えられる。つまり、特徴量62_1乃至特徴量62_nのそれぞれは、u個の数値配列で与えられる。例えば、
図6に示すように、画像データ53_1から抽出される特徴量62_1は、値63_1[1]乃至値63_1[u]から構成される。同様に、画像データ53_2から抽出される特徴量62_2は、値63_2[1]乃至値63_2[u]から構成される。また、同様に、画像データ53_nから抽出される特徴量62_nは、値63_n[1]乃至値63_n[u]から構成される。
【0095】
[ステップS003]
ステップS003は、上記処理部にて抽出された特徴量(特徴量62_1乃至特徴量62_n)を分類器に供給する工程である。当該分類器は、実施の形態1で説明した分類器103に相当する。
【0096】
[ステップS004]
ステップS004は、上記分類器にて、上記特徴量(特徴量62_1乃至特徴量62_n)に基づいて、上記複数の画像データ(画像データ53_1乃至画像データ53_n)のクラスタリングを行う工程である。画像データのクラスタリングには、例えば、実施の形態1で説明した階層的手法を用いることができる。
【0097】
[ステップS005]
ステップS005は、上記分類器にて行われたクラスタリングの結果を、出力部にて表示する工程である。当該出力部は、実施の形態1で説明した出力部104に相当する。なお、画像データのクラスタリングとして階層的手法が用いられる場合、当該クラスタリングの結果として、例えば、デンドログラムが作成される。よって、当該出力部は、例えば、デンドログラムを表示する。
【0098】
以上より、画像データを分類することができる。
【0099】
なお、画像データを分類する方法は、上述した方法に限られない。画像データを分類する方法の他の一例を以下に示す。
【0100】
図7は、画像データを分類する方法の他の一例を示すフローチャートである。
図7に示すように、画像データを分類する方法は、ステップS011乃至ステップS014、およびステップS003乃至ステップS005を有してもよい。ステップS003乃至ステップS005については、上述した内容を参酌することができる。
【0101】
[ステップS011]
ステップS011は、複数の画像データを加工部に供給する工程である。当該複数の画像データは、実施の形態1で説明した画像データ53_1乃至画像データ53_nに相当する。また、当該加工部は、実施の形態1で説明した加工部105に相当する。
【0102】
[ステップS012]
ステップS012は、上記加工部にて、上記複数の画像データのそれぞれを加工する工程である。具体的には、ステップS012は、画像データ53_1乃至画像データ53_nを加工して、画像データ53a_1乃至画像データ53a_nを生成する工程である。より具体的には、画像データ53_1乃至画像データ53_nから不良を含む領域を切り抜くことで、画像データ53a_1乃至画像データ53a_nを生成する工程である。なお、画像データから不良を含む領域の切り抜きは、画像データから不良を含まない領域の少なくとも一部の除去と言い換えることができる。
【0103】
以下では、画像データ53_1を加工して、画像データ53a_1を生成する工程について説明する。
【0104】
画像データ53a_1の形状は、長方形であるとよい。当該長方形は、長辺の長さがa1であり、短辺の長さがa2である。長さa1、および長さa2は、画像データ53a_1が画像データ53_1に収まるように指定する。よって、少なくとも、長さa1は、画像データ53_1の長辺の長さ以下とし、長さa2は、画像データ53_1の短辺の長さ以下とする。また、長さa1、および長さa2は、画像データ53a_1内に不良が収まるように指定する。
【0105】
長さa1と長さa2の比は、画像データ53_1の長辺の長さと画像データ53_1の短辺の長さの比に等しいことが好ましい。画像データ53_1の長辺の長さと画像データ53_1の短辺の長さの比が4:3である場合、例えば、長さa1を640ピクセルとし、長さa2を480ピクセルとするとよい。
【0106】
なお、長さa1と長さa2の比は、画像データ53_1の長辺の長さと画像データ53_1の短辺の長さの比と必ずしも一致しなくてもよい。例えば、上記長方形は、長さa1と長さa2の比が、画像データ53_1の長辺の長さと画像データ53_1の短辺の長さの比と異なってもよい。または、画像データ53a_1の形状は、正方形であってもよい。
【0107】
または、上記長方形は、当該長方形の長辺と、画像データ53_1の短辺とが平行であり、当該長方形の短辺と、画像データ53_1の長辺とが平行であってもよい。または、上記長方形は、当該長方形の長辺と、画像データ53_1の長辺とが平行または垂直でなくてもよい。
【0108】
画像データ53a_1の位置は、画像データ53a_1が画像データ53_1に収まるように決定する。なお、画像データ53a_1の位置は、画像データ53a_1の重心を基準として決定してもよいし、画像データ53a_1の頂点の1つを基準として決定してもよい。例えば、画像データ53a_1の重心を、一様乱数で決定する。一様乱数とは、指定した区間内または範囲内で全ての実数が同じ確率で現れるような連続一様分布に従う乱数である。
【0109】
上記では、長さa1および長さa2を指定した後に、画像データ53a_1の位置を決定する工程を説明したが、当該工程はこれに限られない。画像データ53a_1の位置を指定した後に、画像データ53a_1が画像データ53_1に収まるように、長さa1および長さa2を決定してもよい。または、画像データ53a_1が画像データ53_1に収まるように、画像データ53a_1の位置、ならびに長さa1および長さa2を同時に決定してもよい。
【0110】
なお、画像データ53a_1の長辺の長さおよび短辺の長さは、他の画像データ53a_1の長辺の長さおよび短辺の長さとそれぞれ等しいことが好ましい。これにより、上述したように、不良の識別精度を高めることができる。
【0111】
以上が、画像データ53_1を加工して、画像データ53a_1を生成する工程についての説明である。なお、画像データ53a_2乃至画像データ53a_nは、同様の工程を行うことで生成することができる。
【0112】
ステップS012は、ユーザが行ってもよいし、分類装置を用いて自動的に行われてもよい。分類装置を用いる場合、例えば、不良を含む画像データと不良を含まない画像データとの差分を取得し、当該差分の大きい領域およびその周辺の領域を切り抜くとよい。
【0113】
以上より、画像データ53a_1乃至画像データ53a_nを生成することができる。画像データ53_1乃至画像データ53_nのそれぞれから不良を含む領域を切り抜くことで、画像データ全体の領域(面積)に対する、識別対象となる箇所の占める領域(面積)の割合を大きくすることができる。これにより、処理部にて抽出される特徴量に、画像データに含まれる不良の特徴をより含ませることができる。したがって、クラスタリングの精度を向上させることができる。なお、画像データ53a_1乃至画像データ53a_nには、それぞれ、画像データ53_1乃至画像データ53_nに付与されているラベルが付与される。
【0114】
[ステップS013]
ステップS013は、画像データ53a_1乃至画像データ53a_nを処理部に供給する工程である。当該処理部は、実施の形態1で説明した処理部102または第2処理部107に相当する。
【0115】
[ステップS014]
ステップS014は、上記処理部にて、画像データ53a_1乃至画像データ53a_nのそれぞれの特徴量を抽出する工程である。つまり、画像データ53a_1乃至画像データ53a_nからそれぞれ、特徴量62_1乃至特徴量62_nが抽出される。画像データ53a_1乃至画像データ53a_nは、それぞれ、画像データ53_1乃至画像データ53_nを加工することで作成されるため、特徴量62_1乃至特徴量62_nは、それぞれ、画像データ53_1乃至画像データ53_nの特徴量と言い換えることができる。特徴量の抽出は、実施の形態1で説明した、学習済みの識別モデルを用いて行うことができる。
【0116】
ステップS014を行った後、ステップS003、ステップS004、およびステップS005を順に行う。以上より、画像データを分類することができる。
【0117】
以上が、画像データを分類する方法の説明である。不良を含む画像データをクラスタリングすることで、ユーザが不良を識別するのに要する時間を短縮することができる。また、不良の識別に十分習熟していないユーザでも、不良の識別を高い精度で行うことができる。また、ユーザは、リワーク工程を行うか否かの判断を迅速かつ適切に決定することができる。また、これまでに確認されたことがない不良、種類を識別できていない不良などを容易に把握することができる。
【0118】
<学習済みの識別モデルを生成する方法>
ここでは、本発明の一態様に係る、学習済みの識別モデルを生成する方法について説明する。なお、学習済みの識別モデルを生成する方法は、識別モデルを学習させる方法と言い換えることができる。また、学習済みの識別モデルを生成する方法は、学習済みの識別モデルを再学習させる方法と言い換えることができる。
【0119】
図8は、学習済みの識別モデルを生成する方法の一例を示すフローチャートである。
図8は、実施の形態1で説明した分類装置が実行する処理の流れを説明するフロー図でもある。
【0120】
学習済みの識別モデルを生成する方法は、
図8に示すように、ステップS021乃至ステップS026を有する。
【0121】
[ステップS021]
ステップS021は、複数の画像データを加工部に供給する工程である。当該複数の画像データは、学習データ、検証データ、またはテストデータとして用いることができる画像データである。また、当該加工部は、実施の形態1で説明した加工部105に相当する。
【0122】
上記複数の画像データのそれぞれは、不良を含む画像データである。さらに、当該不良を含む画像データには、当該画像データに含まれる不良に対応するラベルが付与されている。つまり、上記複数の画像データは、画像データ51_1乃至画像データ51_sの一部または全てである。ここで、上記複数の画像データを、画像データ54_1乃至画像データ54_p(pは2以上s以下の整数である。))と記載する。
【0123】
[ステップS022]
ステップS022は、上記加工部にて、上記複数の画像データを加工して、上記複数の画像データとは異なる、複数の画像データを生成する工程である。具体的には、画像データ54_1乃至画像データ54_pを加工して、画像データ54a_1乃至画像データ54a_pを生成する工程である。より具体的には、画像データ54_1乃至画像データ54_pから不良を含む領域を切り抜くことで、画像データ54a_1乃至画像データ54a_pを生成する工程である。当該工程は、ステップS012の説明を参酌することができる。
【0124】
画像データは、当該画像データ全体の領域(面積)に対する、識別対象となる箇所の占める領域(面積)の割合が大きいことが好ましい。例えば、パターン検査結果画像の場合、不良部を切り抜くことが効果的である。上記加工により、処理部にて抽出される特徴量に、画像データに含まれる不良の特徴をより含ませることができる。したがって、クラスタリングの精度を向上させることができる。なお、画像データ54a_1乃至画像データ54a_pには、それぞれ、画像データ54_1乃至画像データ54_pに付与されているラベルが付与される。
【0125】
[ステップS023]
ステップS023は、上記加工部にて、データ拡張を行う工程である。データ拡張の方法として、画像データに対する、回転、反転、ノイズ付加、ぼかし加工、ガンマ変換などがあげられる。データ拡張には、画像データ54a_1乃至画像データ54a_pの一部または全てを用いるとよい。データ拡張により、q(qは1以上の整数である。)個の画像データ(画像データ54a_p+1乃至画像データ54a_p+q)が生成される。
【0126】
なお、不良毎に作成される画像データの数は、ほぼ等しいことが好ましい。例えば、異物に対応するラベルが付与された画像データの数、膜抜けに対応するラベルが付与された画像データの数、パターン不良に対応するラベルが付与された画像データの数などが、ほぼ等しいことが好ましい。これにより、特定の不良に対する過剰適合(過学習)を抑制することができる。
【0127】
データ拡張の方法、データ拡張により生成される画像データの数などは、ランダムに選択されてもよいし、ユーザが指定してもよい。また、画像データ54a_1乃至画像データ54a_pに付与されているラベルなどをもとに、分類装置が自動で選択してもよい。
【0128】
なお、データ拡張を行わなくてもよい場合がある。例えば、高い精度で識別可能な識別モデルを生成するだけの学習データが用意できる場合である。このとき、ステップS023を省略してもよい。
【0129】
ステップS022、およびステップS023を行うことで、学習用データセットを生成することができる。学習用データセットの入力データは、ステップS022で作成したp個の画像データ(画像データ54a_1乃至画像データ54a_p)、および、ステップS023で生成したq個の画像データ(画像データ54a_p+1乃至画像データ54a_p+q)である。
【0130】
学習用データセットの正解ラベルは、画像データ54a_1乃至画像データ54a_p+qのそれぞれに付与されたラベルである。
【0131】
以上より、学習用データセットは、(p+q)個の画像データおよび当該画像データに付与されたラベルで構成される。
【0132】
[ステップS024]
ステップS024は、上記加工部にて生成された学習用データセットを処理部に供給する工程である。当該学習用データセットには、画像データ54a_1乃至画像データ54a_p+qが含まれる。当該処理部は、実施の形態1で説明した第1処理部106に相当する。
【0133】
[ステップS025]
ステップS025は、上記処理部にて、上記学習用データセットを用いて、識別モデルを学習させる工程である。
【0134】
上記識別モデルを学習させる際、上記学習用データセットを、学習データと、検証データと、テストデータとに分割するとよい。例えば、当該学習データを用いて当該識別モデルを学習させ、当該検証データを用いて学習の結果を評価し、当該テストデータを用いて、学習させた識別モデルを評価する。これにより、学習させた識別モデルの精度を確かめることができる。以降では、テストデータの数に対する、識別結果が正解であった数の比を、正解率と呼ぶ場合がある。
【0135】
なお、学習データは、画像データ54a_1乃至画像データ54a_p+qの一部で構成される。また、検証データは、学習データに用いられない画像データの一部で構成される。また、テストデータは、学習データおよび検証データに用いられない画像データで構成される。
【0136】
学習用データセットを、学習データと、検証データと、テストデータとに分割する方法として、例えば、ホールドアウト法、クロスバリデーション法、リーブワンアウト法などがある。
【0137】
当該学習は、所定の試行回数に達した時点で終了してもよい。または、当該学習は、正解率が所定のしきい値を超えた時点で終了してもよい。または、当該学習は、正解率がある程度飽和した時点で終了してもよい。なお、当該試行回数、または、当該しきい値に対して、予め定数を用意しておくとよい。または、当該学習を試行中に、ユーザが終了するタイミングを指定してもよい。
【0138】
上記学習により、学習済みの識別モデルが生成される。
【0139】
[ステップS026]
ステップS026は、ステップS025で生成された学習済みの識別モデルを記憶部に格納する工程である。当該記憶部は、実施の形態1で説明した記憶部101である。なお、当該記憶部は、第1処理部106が有する記憶部、処理部102または第2処理部107が有する記憶部、分類装置に接続された記憶媒体などに格納されてもよい。
【0140】
以上が、学習済みの識別モデルを生成する方法の一例である。上記学習用データセットに基づいて、識別モデルを学習させることで、不良の識別精度の高い識別モデルを生成することができる。
【0141】
本発明の一態様により、画像データを分類する方法を提供することができる。
【0142】
本実施の形態は、他の実施の形態、実施例などと適宜組み合わせることができる。また、本明細書において、1つの実施の形態の中に、複数の構成例が示される場合は、構成例を適宜組み合わせることが可能である。
【0143】
(実施の形態3)
本実施の形態では、本発明の一態様の分類装置について
図9及び
図10を用いて説明する。
【0144】
<分類装置の構成例1>
図9に、分類装置200のブロック図を示す。なお、本明細書に添付した図面では、構成要素を機能ごとに分類し、互いに独立したブロックとしてブロック図を示しているが、実際の構成要素は機能ごとに完全に切り分けることが難しく、一つの構成要素が複数の機能に係わることもあり得る。また、一つの機能が複数の構成要素に係わることもあり得、例えば、処理部202で行われる処理は、処理によって異なるサーバで実行されることがある。
【0145】
図9に示す分類装置200は、入力部201、処理部202、記憶部203、データベース204、表示部205、及び伝送路206を有する。
【0146】
[入力部201]
入力部201には、分類装置200の外部から画像データが供給される。当該画像データは、先の実施の形態に示したラベルが付与された画像データ、ラベルが付与されていない画像データに相当する。入力部201に供給された画像データは、それぞれ、伝送路206を介して、処理部202、記憶部203、またはデータベース204に供給される。
【0147】
[処理部202]
処理部202は、入力部201、記憶部203、データベース204などから供給されたデータを用いて、処理を行う機能を有する。処理部202は、処理結果を、記憶部203、データベース204、表示部205などに供給することができる。
【0148】
処理部202は、先の実施の形態に示した、処理部102または第2処理部107、および分類器103を含む。すなわち、処理部202は、学習済みの識別モデルによる処理を行う機能、クラスタリングを行う機能などを有する。また、処理部202は、先の実施の形態に示した、加工部105、および第1処理部106を含んでもよい。このとき、処理部202は、画像データの加工を行う機能、データ拡張を行う機能、学習用データセットを生成する機能、識別モデルの学習を行う機能などを有する。
【0149】
処理部202には、チャネル形成領域に金属酸化物を有するトランジスタを用いてもよい。当該トランジスタはオフ電流が極めて小さいため、当該トランジスタを記憶素子として機能する容量素子に流入した電荷(データ)を保持するためのスイッチとして用いることで、データの保持期間を長期にわたり確保することができる。この特性を、処理部202が有するレジスタ及びキャッシュメモリのうち少なくとも一方に用いることで、必要なときだけ処理部202を動作させ、他の場合には直前の処理の情報を当該記憶素子に待避させることにより処理部202をオフ状態にすることができる。すなわち、ノーマリーオフコンピューティングが可能となり、分類装置の低消費電力化を図ることができる。
【0150】
なお、本明細書等において、チャネル形成領域に酸化物半導体を用いたトランジスタをOxide Semiconductorトランジスタ(OSトランジスタ)と呼ぶ。OSトランジスタのチャネル形成領域は、金属酸化物を有することが好ましい。
【0151】
チャネル形成領域が有する金属酸化物はインジウム(In)を含むことが好ましい。チャネル形成領域が有する金属酸化物がインジウムを含む金属酸化物の場合、OSトランジスタのキャリア移動度(電子移動度)が高くなる。また、チャネル形成領域が有する金属酸化物は、元素Mを含むことが好ましい。元素Mは、アルミニウム(Al)、ガリウム(Ga)、またはスズ(Sn)であることが好ましい。元素Mに適用可能な他の元素としては、ホウ素(B)、チタン(Ti)、鉄(Fe)、ニッケル(Ni)、ゲルマニウム(Ge)、イットリウム(Y)、ジルコニウム(Zr)、モリブデン(Mo)、ランタン(La)、セリウム(Ce)、ネオジム(Nd)、ハフニウム(Hf)、タンタル(Ta)、タングステン(W)などがある。ただし、元素Mとして、前述の元素を複数組み合わせても構わない場合がある。元素Mは、例えば、酸素との結合エネルギーが高い元素である。元素Mは、例えば、酸素との結合エネルギーがインジウムよりも高い元素である。また、チャネル形成領域が有する金属酸化物は、亜鉛(Zn)を含むことが好ましい。亜鉛を含む金属酸化物は結晶化しやすくなる場合がある。
【0152】
チャネル形成領域が有する金属酸化物は、インジウムを含む金属酸化物に限定されない。チャネル形成領域が有する金属酸化物は、例えば、亜鉛スズ酸化物、ガリウムスズ酸化物などの、インジウムを含まず、亜鉛を含む金属酸化物、ガリウムを含む金属酸化物、スズを含む金属酸化物などであっても構わない。
【0153】
また、処理部202には、チャネル形成領域にシリコンを含むトランジスタ(Siトランジスタ)を用いてもよい。また、チャネル形成領域に、グラフェン、シリセン、カルコゲン化物(遷移金属カルコゲナイト)などのバンドギャップを有する半導体材料を含むトランジスタを用いてもよい。
【0154】
また、処理部202には、チャネル形成領域に酸化物半導体を含むトランジスタと、チャネル形成領域にシリコンを含むトランジスタと、を組み合わせて用いてもよい。
【0155】
処理部202は、例えば、演算回路または中央演算装置(CPU:Central Processing Unit)等を有する。
【0156】
処理部202は、DSP(Digital Signal Processor)、GPU(Graphics Processing Unit)等のマイクロプロセッサを有していてもよい。マイクロプロセッサは、FPGA(Field Programmable Gate Array)、FPAA(Field Programmable Analog Array)等のPLD(Programmable Logic Device)によって実現された構成であってもよい。処理部202は、プロセッサにより種々のプログラムからの命令を解釈し実行することで、各種のデータ処理及びプログラム制御を行うことができる。プロセッサにより実行しうるプログラムは、プロセッサが有するメモリ領域及び記憶部203のうち少なくとも一方に格納される。
【0157】
処理部202はメインメモリを有していてもよい。メインメモリは、RAM等の揮発性メモリ、及びROM等の不揮発性メモリのうち少なくとも一方を有する。
【0158】
RAMとしては、例えばDRAM(Dynamic Random Access Memory)、SRAM(Static Random Access Memory)等が用いられ、処理部202の作業空間として仮想的にメモリ空間が割り当てられ利用される。記憶部203に格納されたオペレーティングシステム、アプリケーションプログラム、プログラムモジュール、プログラムデータ、及びルックアップテーブル等は、実行のためにRAMにロードされる。RAMにロードされたこれらのデータ、プログラム、及びプログラムモジュールは、それぞれ、処理部202に直接アクセスされ、操作される。
【0159】
ROMには、書き換えを必要としない、BIOS(Basic Input/Output System)及びファームウェア等を格納することができる。ROMとしては、マスクROM、OTPROM(One Time Programmable Read Only Memory)、EPROM(Erasable Programmable Read Only Memory)等が挙げられる。EPROMとしては、紫外線照射により記憶データの消去を可能とするUV-EPROM(Ultra-Violet Erasable Programmable Read Only Memory)、EEPROM(Electrically Erasable Programmable Read Only Memory)、フラッシュメモリ等が挙げられる。
【0160】
なお、ニューラルネットワークにおいては、積和演算が行われる。当該積和演算をハードウェアによって行う場合、処理部202は、積和演算回路を有することが好ましい。当該積和演算回路としては、デジタル回路を用いてもよいし、アナログ回路を用いてもよい。積和演算回路にアナログ回路を用いる場合、積和演算回路の回路規模の縮小、または、メモリへのアクセス回数の減少による処理速度の向上および消費電力の低減を図ることができる。なお、当該積和演算は、プログラムを用いてソフトウェア上で行ってもよい。
【0161】
積和演算回路は、Siトランジスタによって構成してもよいし、OSトランジスタによって構成してもよい。特に、OSトランジスタはオフ電流が極めて小さいため、積和演算回路のアナログメモリを構成するトランジスタとして好適である。なお、SiトランジスタとOSトランジスタの両方を用いて積和演算回路を構成してもよい。
【0162】
[記憶部203]
記憶部203は、処理部202が実行するプログラムを記憶する機能を有する。記憶部203は、例えば、識別モデル、クラスタリングの手法に関するプログラムなどを記憶する機能を有する。また、記憶部203は、入力部201に供給された画像データなどを記憶する機能を有していてもよい。
【0163】
記憶部203は、揮発性メモリ及び不揮発性メモリのうち少なくとも一方を有する。記憶部203は、例えば、DRAM、SRAMなどの揮発性メモリを有していてもよい。記憶部203は、例えば、ReRAM(Resistive Random Access Memory、抵抗変化型メモリともいう)、PRAM(Phase change Random Access Memory)、FeRAM(Ferroelectric Random Access Memory)、MRAM(Magnetoresistive Random Access Memory、磁気抵抗型メモリともいう)、またはフラッシュメモリなどの不揮発性メモリを有していてもよい。また、記憶部203は、ハードディスクドライブ(Hard Disk Drive:HDD)及びソリッドステートドライブ(Solid State Drive:SSD)等の記録メディアドライブを有していてもよい。
【0164】
[データベース204]
分類装置200は、データベース204を有していてもよい。例えば、データベース204は、上記画像データを記憶する機能を有する。なお、処理部202で生成した、学習用データセットに係る画像データ、学習済みの識別モデル、およびクラスタリングの結果などを記憶してもよい。
【0165】
なお、記憶部203及びデータベース204は互いに分離されていなくてもよい。例えば、分類装置200は、記憶部203及びデータベース204の双方の機能を有する記憶ユニットを有していてもよい。
【0166】
なお、処理部202、記憶部203、及びデータベース204が有するメモリは、それぞれ、非一時的コンピュータ可読記憶媒体の一例ということができる。
【0167】
[表示部205]
表示部205は、処理部202における処理結果を表示する機能を有する。例えば、表示部205は、クラスタリングの結果を表示する機能を有する。
【0168】
なお、分類装置200は、出力部を有していてもよい。出力部は、外部にデータを供給する機能を有する。
【0169】
[伝送路206]
伝送路206は、各種データを伝達する機能を有する。入力部201、処理部202、記憶部203、データベース204、及び表示部205の間のデータの送受信は、伝送路206を介して行うことができる。例えば、画像データ、学習済みの識別モデルなどのデータが、伝送路206を介して、送受信される。
【0170】
<分類装置の構成例2>
図10に、分類装置210のブロック図を示す。分類装置210は、サーバ220と、端末230(パーソナルコンピュータなど)と、を有する。
【0171】
サーバ220は、処理部202、伝送路212、記憶部213、及び通信部217aを有する。
図10では図示しないが、サーバ220は、さらに、入力部、出力部などを有していてもよい。
【0172】
端末230は、入力部201、記憶部203、表示部205、伝送路216、通信部217b、及び処理部218を有する。
図10では図示しないが、端末230は、さらに、データベースなどを有していてもよい。
【0173】
通信部217aが受信した画像データ、識別モデルなどは、伝送路212を介して、記憶部213に保存される。または、画像データ、識別モデルなどは、通信部217aから、直接、処理部202に供給されてもよい。
【0174】
先の実施の形態で説明した、識別モデルの学習は、高い処理能力が求められる。サーバ220が有する処理部202は、端末230が有する処理部218に比べて処理能力が高い。したがって、識別モデルの学習は、処理部202で行われることが好ましい。
【0175】
そして、処理部202により学習済みの識別モデルが作成される。学習済みの識別モデルは、処理部202から、伝送路212を介して、または直接、通信部217aに供給される。学習済みの識別モデルは、サーバ220の通信部217aから端末230の通信部217bに送信され、記憶部203に保存される。または、学習済みの識別モデルは、伝送路212を介して、記憶部213に保存されてもよい。
【0176】
[伝送路212及び伝送路216]
伝送路212及び伝送路216は、データを伝達する機能を有する。処理部202、記憶部213、及び通信部217aの間のデータの送受信は、伝送路212を介して行うことができる。入力部201、記憶部203、表示部205、通信部217b、及び処理部218の間のデータの送受信は、伝送路216を介して行うことができる。
【0177】
[処理部202及び処理部218]
処理部202は、記憶部213及び通信部217aなどから供給されたデータを用いて、処理を行う機能を有する。処理部218は、入力部201、記憶部203、表示部205、及び通信部217bなどから供給されたデータを用いて、処理を行う機能を有する。処理部202及び処理部218は、処理部202の説明を参照できる。処理部202は、処理部218に比べて処理能力が高いことが好ましい。
【0178】
[記憶部203]
記憶部203は、処理部218が実行するプログラムを記憶する機能を有する。また、記憶部203は、処理部202が生成した学習済みの識別モデル、処理部218が生成したクラスタリングの結果、通信部217bに入力されたデータ、及び入力部201に入力されたデータなどを記憶する機能を有する。
【0179】
[記憶部213]
記憶部213は、処理部202が実行するプログラムを記憶する機能を有する。また、記憶部213は、識別モデル、通信部217aに入力されたデータなどを記憶する機能を有する。記憶部213は、記憶部203の説明を参照できる。
【0180】
[通信部217a及び通信部217b]
通信部217a及び通信部217bを用いて、サーバ220と端末230との間で、データの送受信を行うことができる。通信部217a及び通信部217bとしては、ハブ、ルータ、モデムなどを用いることができる。データの送受信には、有線を用いても無線(例えば、電波、赤外線など)を用いてもよい。
【0181】
なお、サーバ220と端末230との通信は、World Wide Web(WWW)の基盤であるインターネット、イントラネット、エクストラネット、PAN(Personal Area Network)、LAN(Local Area Network)、CAN(Campus Area Network)、MAN(Metropolitan Area Network)、WAN(Wide Area Network)、GAN(Global Area Network)等のコンピュータネットワークに接続することで行ってもよい。
【0182】
本実施の形態は、他の実施の形態、実施例などと適宜組み合わせることができる。
【0183】
(実施の形態4)
本実施の形態では、本発明の一態様のパターン検査装置について、
図11を用いて説明する。本実施の形態のパターン検査装置は、先の実施の形態で説明した分類装置を有する。
【0184】
図11は、パターン検査装置400の構成を示す図である。
図11に示すように、パターン検査装置400は、撮像装置401、検査装置402、および分類装置403を備える。分類装置403は、先の実施の形態で説明した分類装置100に相当する。
【0185】
撮像装置401は、製造工程の途中である1つの半導体素子、または製造工程が終了した半導体素子を撮像する機能を有する。撮像装置401として、例えば、カメラがある。当該半導体素子を撮像することで、不良の有無が判断されていない画像データが取得される。つまり、当該画像データは、識別またはクラスタリングの対象となりうる画像データである。
【0186】
検査装置402は、撮像装置401を用いて取得された画像データに、不良が含まれるか否かを判断する機能を有する。これにより、当該画像データに不良が含まれるか否かを判断することができる。
【0187】
不良が含まれるか否かの判断は、当該判断の対象となる画像データと、1つ前に取得された画像データとを比較することで行われる。ここで、当該判断の対象となる画像データに含まれる半導体素子と、1つ前に取得された画像データに含まれる半導体素子とは、異なる。例えば、はじめに、当該判断の対象となる画像データと、1つ前に取得された画像データとの差分を取得する。そして、当該差分を基に、不良が含まれるか否かの判断を行ってもよい。
【0188】
なお、不良が含まれるか否かの判断には、機械学習を用いてもよい。不良が含まれるか否かの判断を行う画像データの数は膨大となりやすい。そこで、機械学習を用いることで、当該判断に要する時間を低減することができる。
【0189】
不良が含まれるか否かの判断には、例えば、異常箇所の検知と類似の方法を用いることができる。異常箇所の検知には、教師なし学習が用いられることがある。そこで、当該判断には、教師なし学習を用いることが好ましい。教師なし学習を用いることで、不良が含まれる画像データの数が少なくても、不良が含まれるか否かの判断を精度良く行うことができる。
【0190】
なお、異常箇所の検知には、教師あり学習が用いられることがある。そこで、当該判断には、教師あり学習を用いてもよい。教師あり学習を用いることで、不良が含まれるか否かの判断を精度良く行うことができる。
【0191】
上記機械学習には、ニューラルネットワーク(特に、ディープラーニング)を用いることが好ましい。
【0192】
不良が含まれると判断された画像データは、識別またはクラスタリングの対象となる。つまり、当該画像データは、先の実施の形態で説明した複数の画像データ50の一つとなりうる。当該画像データは、分類装置403に供給される。
【0193】
パターン検査装置400は、撮像装置401、検査装置402、および分類装置403を有することで、画像データのクラスタリングおよび/または学習済みの識別モデルの生成に加えて、画像データの取得、および不良の有無の判定も行うことができる。
【0194】
なお、検査装置402は、分類装置403が備えられたサーバとは異なるサーバに備えられてもよい。または、検査装置402は、分類装置403が備えられたサーバに備えられてもよい。または、検査装置402の機能の一部と、分類装置403の機能の一部とがサーバに備えられ、当該サーバとは異なるサーバに、検査装置402の機能の他の一部と、分類装置403の機能の他の一部とが備えられてもよい。
【0195】
以上が、パターン検査装置400の構成についての説明である。本発明の一態様であるパターン検査装置を用いることで、画像データの取得から、画像データのクラスタリングまでの一連の処理を高効率に行うことができる。また、当該一連の処理を全自動で行うことができる。
【0196】
本発明の一態様により、新規のパターン検査装置を提供することができる。
【0197】
本実施の形態は、他の実施の形態、実施例などと適宜組み合わせることができる。
【実施例】
【0198】
本実施例では、学習済みの識別モデルを用いて、不良を含む画像データのクラスタリングを行った。画像データのクラスタリングの結果について、
図12および
図13を用いて説明する。
【0199】
本実施例では、識別モデルとしてCNNを用いた。当該CNNは、7つの畳み込み層、6つのプーリング層、および5つの全結合層(全結合層913_1乃至913_5)で構成される。全結合層913_1に設けられているニューロンは、1つのプーリング層に設けられているニューロン、及び全結合層913_2に設けられているニューロンと結合されている。全結合層913_2に設けられているニューロンは、全結合層913_1に設けられているニューロン、及び全結合層913_3に設けられているニューロンと結合されている。全結合層913_3に設けられているニューロンは、全結合層913_2に設けられているニューロン、及び全結合層913_4に設けられているニューロンと結合されている。全結合層913_4に設けられているニューロンは、全結合層913_3に設けられているニューロン、及び全結合層913_5に設けられているニューロンと結合されている。なお、全結合層913_5を出力層とした。また、全結合層913_1乃至全結合層913_4は、中間層に含まれる。なお、例えば、第1の全結合層に設けられているニューロンが、第2の全結合層に設けられているニューロンと結合されていることを、第1の全結合層は、第2の全結合層に接続していると言い換えることができる。
【0200】
本実施例では、全結合層913_2が有するニューロンの数値を、入力層に入力された画像データの特徴量とした。なお、当該特徴量の次元数は64とした。
【0201】
本実施例では、344個の不良を含む画像データのクラスタリングを行った。具体的には、上記識別モデルを用いて、344個の不良を含む画像データのそれぞれの特徴量を取得し、当該特徴量に基づいて、クラスター分析を行った。当該クラスター分析には、階層的手法を用いた。
【0202】
クラスタリングの結果を
図12に示す。
図12は、クラスタリングの結果を説明するデンドログラムである。縦軸は、クラスター間の距離である。なお、横軸では、画像データがクラスター毎にまとまるように、画像データを適宜並べている。
【0203】
図12に示すデンドログラムにおいて、クラスター間の距離のしきい値を34.1(
図12に示す破線)に設定することで、20個のクラスターが得られた。20個のクラスターの1つに含まれる画像データの一部を
図13A乃至
図13Dに示す。
図13A乃至
図13Dに示す画像データのそれぞれには、同じタイプのパターン不良が含まれることがわかる。すなわち、当該クラスターは、パターン不良の一部に関するクラスターであることがわかる。
【0204】
以上より、本実施例で示した方法を用いることで、類似した不良をクラスターとするクラスタリングを行うことができる。
【0205】
本実施例は、他の実施の形態などに記載した構成と適宜組み合わせて実施することが可能である。
【符号の説明】
【0206】
50:画像データ、51_s:画像データ、51_1:画像データ、51_2:画像データ、52_t:画像データ、52_1:画像データ、53_n:画像データ、53_1:画像データ、53_2:画像データ、53a_n:画像データ、53a_1:画像データ、53a_2:画像データ、54_p:画像データ、54_1:画像データ、54a_p:画像データ、54a_1:画像データ、61A:ラベル、61F:ラベル、62_n:特徴量、62_1:特徴量、62_2:特徴量、63_n:値、63_1:値、63_2:値、100:分類装置、100A:分類装置、100B:分類装置、101:記憶部、102:処理部、103:分類器、104:出力部、105:加工部、106:処理部、107:処理部、200:分類装置、201:入力部、202:処理部、203:記憶部、204:データベース、205:表示部、206:伝送路、210:分類装置、212:伝送路、213:記憶部、216:伝送路、217a:通信部、217b:通信部、218:処理部、220:サーバ、230:端末、300:ニューラルネットワーク、301_k:層、301_k-1:層、301_k-2:層、301_1:層、301_2:層、301_3:層、305:特徴量、310:CNN、311_m:層、311_1:層、311_2:層、312_m:プーリング層、312_m-1:プーリング層、312_1:プーリング層、313:全結合層、313_1:全結合層、313_2:全結合層、313_3:全結合層、315:特徴量、400:パターン検査装置、401:撮像装置、402:検査装置、403:分類装置、913_1:全結合層、913_2:全結合層、913_3:全結合層、913_4:全結合層、913_5:全結合層