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

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

▶ オルボテック リミテッドの特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-05-02
(54)【発明の名称】画像分類のための適応学習
(51)【国際特許分類】
   G06V 10/764 20220101AFI20230425BHJP
   G06N 20/00 20190101ALI20230425BHJP
   G06N 3/08 20230101ALI20230425BHJP
   G06N 20/20 20190101ALI20230425BHJP
【FI】
G06V10/764
G06N20/00
G06N3/08
G06N20/20
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2022557888
(86)(22)【出願日】2021-03-04
(85)【翻訳文提出日】2022-11-16
(86)【国際出願番号】 IL2021050242
(87)【国際公開番号】W WO2021191887
(87)【国際公開日】2021-09-30
(31)【優先権主張番号】62/993,112
(32)【優先日】2020-03-23
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.SMALLTALK
(71)【出願人】
【識別番号】501005438
【氏名又は名称】オルボテック リミテッド
(74)【代理人】
【識別番号】110001210
【氏名又は名称】弁理士法人YKI国際特許事務所
(72)【発明者】
【氏名】ラベー ゴネン
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096GA51
5L096JA03
5L096JA22
5L096KA04
(57)【要約】
画像分類用の適応学習のための方法、コンピュータ装置、及びコンピュータプログラム製品。方法は、分類モデルのセットをキャリブレーションデータセット及び本番データセットに適用することと、その予測子に対する不一致測定値を各データセットに関して計算することとを含む。キャリブレーションデータセットと本番データセットとの不一致測定値間の類似度測定値が、所定の閾値を下回ることに基づき、データドリフトが本番データセットに示される。方法は、本番データセットに対して分類モデルを訓練するための訓練データセットを決定することを更に含む。訓練データセットは、画像が得られる時間間隔に従って順序付けられた複数の画像セットから選択される。選択は、複数のセットに対して決定された重みに基づいて実行される。
【特許請求の範囲】
【請求項1】
分類モデルのセットを取得することであって、各々が画像に対してラベルを予測するように構成され、ここで前記予測したラベルは前記画像のクラスを示し、前記分類モデルのセットの各分類モデルは同じラベルのセットからラベルを予測するように構成されることとと、
前記分類モデルのセットを画像のキャリブレーションデータセットに適用し、それによって前記画像のキャリブレーションデータセットの各画像に予測したラベルの配列を付与し、予測したラベルの配列のセットを前記キャリブレーションデータセットに付与することと、
前記キャリブレーションデータセットにおいて前記分類モデルのセットの不一致測定値を計算することであって、ここで前記不一致測定値は前記キャリブレーションデータセットの前記予測したラベルの配列のセットに基づいて計算され、前記不一致測定値は、前記分類モデルのセットの分類モデルの予測間の差によって影響を受けることと、
画像の本番データセットに前記分類モデルのセットを適用し、それによって予測したラベルの配列のセットを前記本番データセットに付与することと、
前記本番データセットにおいて前記分類モデルのセットの本番不一致測定値を計算することと、
前記本番不一致測定値と前記不一致測定値との間の類似度測定値を決定することと、
前記類似度測定値が所定の閾値を下回ることに応答して、前記本番データセットにデータドリフトを示すことと、
を含む、方法。
【請求項2】
予測子を前記本番データセットに適用することであって、ここで前記予測子は画像に対して、前記同じラベルのセットからラベルを予測するように構成されること、を更に含む、請求項1に記載の方法。
【請求項3】
前記分類モデルのセットは前記予測子を除外する、請求項2に記載の方法。
【請求項4】
前記分類モデルのセットは前記予測子を含む、請求項2に記載の方法。
【請求項5】
前記本番データセットに前記ドリフトを前記示すことに応答して、前記予測子を前記本番データセットの少なくとも一部分に基づき再訓練すること、を更に含む、請求項2に記載の方法。
【請求項6】
前記不一致測定値を前記本番データベースの前記少なくとも一部分に基づき再計算すること、を更に含む、請求項5に記載の方法。
【請求項7】
前記不一致測定値は、前記分類モデルのセットの分類モデルのタプルが異なるラベルを付与する画像の一部分に基づいて計算される、請求項1に記載の方法。
【請求項8】
前記不一致測定値は、前記分類モデルのセットの分類モデルのタプルが同じラベルを付与する画像の一部分に基づいて計算される、請求項1に記載の方法。
【請求項9】
前記分類モデルのセットは、cls、…、clsとして示されるn個の分類モデルを含み、ここで前記不一致測定値は前記キャリブレーションモデルのセットが値(l、…、l)を有する予測したラベルの配列を付与する画像の一部分に基づいて計算され、ここで、lは、前記同じラベルのセットからのラベルであり、clsによって予測され、ここで、前記(l、…、l)の値は不均一な値であり得る、請求項1に記載の方法。
【請求項10】
プログラム命令を保持する非一時的なコンピュータ可読記憶媒体を備えるコンピュータプログラム製品であって、請求項1に記載の方法を実行するように構成される、コンピュータプログラム製品。
【請求項11】
方法であって、
画像データセットを取得することであって、ここで前記画像データセットは順序をもつ複数の画像セットを含み、各画像セットは、ある時間間隔にわたって取得された画像を含み、前記画像セットはそれぞれの時間間隔に従って順序付けられることと、
訓練データセットを決定することであって、ここで前記訓練データセットは前記画像データセットからの画像を含み、前記訓練セットを前記決定することは、
前記順序をもつ複数の画像セットに対して重みを決定することであって、ここで各画像セットは重みに関連付けられ、少なくとも2つの画像セットは異なる重みに関連付けられること、及び、
前記順序をもつ複数の画像セットから、前記訓練データセットに含まれる画像サブセットを選択することであって、前記選択は前記重みに基づくこと、を含むことと、
分類モデルを、前記訓練データセットを使用して訓練することと、
を含む、方法。
【請求項12】
前記順序をもつ複数の画像セットによる最後の画像セットは、本番データセットであり、ここで前記本番データセットは、前記分類モデルを、本番環境においてラベル付けされていない画像に適用する間に取得される、請求項11に記載の方法。
【請求項13】
前記重みは割合であり、それによって各画像セットは割合に関連付けられ、ここで前記画像サブセットを前記選択することは、各画像セットから、前記画像セットの一部分を、前記各セットに関連付けられた前記割合によって規定される比率に従って選択することによって実行される、請求項11に記載の方法。
【請求項14】
前記訓練データセットに含まれる各選択された画像セットの画像の割合を前記決定することは、
前記時間間隔の順序と関連付けられる割合を選択し、これによって、より低い割合がより古い訓練データセットに対して決定される、
ことを含む、請求項11に記載の方法。
【請求項15】
前記順序をもつ複数の画像セットに対して前記重みを前記決定することは、前記重みを単調関数に従って決定することを含む、請求項11に記載の方法。
【請求項16】
前記単調関数は、
狭義単調増加関数、
狭義単調減少関数、
線形関数、又は、
非線形関数、から選択される不均一な関数である、請求項15に記載の方法。
【請求項17】
前記順序をもつ複数の画像セットに対して前記重みを前記決定することは、
第1の画像セットについて第1の分類器を訓練することであって、ここで前記第1の分類器は第1のデータセットに基づいて訓練され、前記第1のデータセットは前記第1の画セットを含むことと、
第2の画像セットについて第2の分類器を訓練することであって、ここで前記第2の分類器は第2のデータセットに基づいて訓練され、前記第2のデータセットは前記第1のデータセットと前記第2の画像セットからなり、前記第2の画像セットは前記順序をもつ複数の画像セットに従って前記第1の画像セットの直後に順序付けられることと、
前記第2の画像セットの前記重みを、前記第1の分類器の正解率測定値と比較した前記第2の分類器の正確率測定値の差に基づいて決定することと、
を含む、請求項11に記載の方法。
【請求項18】
前記第1の分類器の前記正解率測定値と比較した前記第2の分類器の前記正解率測定値の前記差が改善を示し、前記第2の画像セットの前記重みは、前記改善の測定値に関連付けられる、請求項17に記載の方法。
【請求項19】
前記第1の分類器の前記正解率測定値と比較した前記第2の分類器の前記正解率測定値の前記差が正解率の低下を示し、前記第2の画像セットの重みは、最小の重み値であり、前記画像サブセットを前記選択することは、前記最小の重み値が割り当てられる画像セットから、任意の画像を選択することを避け、これによって前記第2の画像セットを破棄することを含む、請求項17に記載の方法。
【請求項20】
前記順序をもつ複数の画像セットの前記重みを前記決定することが、関数f(x)に基づいて実行され、前記方法は更に、
前記順序をもつ複数の画像セットの検証重みを決定することであって、前記検証重みは関数g(x)に基づいて決定され、ここでg(x)=-f(x)であることと、
前記順序をもつ複数の画像セットから、画像の検証データセットを選択することであって、前記画像の検証データセットを前記選択することが前記検証重みに基づくことと、
前記画像の検証データセットを利用して前記分類モデルを検証することと、
を含む、請求項11に記載の方法。
【請求項21】
画像セットの第1のサブシリーズを、前記順序をもつ複数の画像セットから決定することであって、ここで前記第1のサブシリーズは所定数の連続する画像セットを含むことと、
前記第1のサブシリーズを使用して、画像に対してラベルを予測するように構成された分類器を訓練することであって、ここで前記ラベルは前記画像のクラスを示すことと、
前記分類器を、前記順序をもつ複数の画像セットからの画像セットの第2のサブシリーズに適用することであって、ここで前記第2のサブシリーズはいくつかのセットを有し、前記第2のサブスリーズの第1のセットは、前記順序をもつ複数の画像セットに従って、前記第1のサブシリーズの最後のセットの直後に順序付けられることと、
前記第2のサブシリーズにおいて前記分類器の正解率測定値を決定することと、
ここで前記順序をもつ複数の画像セットの重みを前記決定することは、前記正確率測定値に基づくことと、
を含む、請求項11に記載の方法。
【請求項22】
前記順序をもつ複数の画像セットの重みを前記決定することは、前記正確率測定値が閾値を上回ることに基づいて、前記第2のサブシリーズの前記セットに最小の重み値を割り当てることを含み、前記画像のサブセットを前記選択することは、前記最小の重み値が割り当てられた画像のセットから任意の画像を選択することを回避し、それによって前記第2のサブシリーズを破棄することを含む、請求項21に記載の方法。
【請求項23】
前記順序をもつ複数の画像セットの重みを前記決定することは、画像セットの複数のシーケンスに最小の重み値を割り当てることを含み、前記複数のシーケンスの各シーケンスはいくつかのセットを有する、請求項21に記載の方法。
【請求項24】
プログラム命令を保持する非一時的なコンピュータ可読記憶媒体を備えるコンピュータプログラム製品であって、請求項11に記載の方法を実行するように構成される、コンピュータプログラム製品。
【請求項25】
プロセッサを有するコンピュータ装置であって、前記プロセッサは、
分類モデルのセットを取得するステップであって、各分類モデルは画像に対してラベルを予測するように構成され、ここで前記予測したラベルは画像のクラスを示し、前記分類モデルのセットの各分類モデルは同じラベルのセットからラベルを予測するように構成されるステップと、
前記分類モデルのセットを画像のキャリブレーションデータセットに適用し、それによって前記画像のキャリブレーションデータセットの各画像に予測したラベルの配列を付与し、予測したラベルの配列のセットを前記キャリブレーションデータセットに付与するステップと、
前記キャリブレーションデータセットの前記分類モデルのセットの不一致測定値を計算するステップであって、ここで前記不一致測定値は前記キャリブレーションデータセットに対して前記予測したラベルの配列のセットに基づいて計算され、前記不一致測定値は、前記分類モデルのセットの分類モデルの予測間の差によって影響を受けるステップと、
画像の本番データセットに前記分類モデルのセットを適用し、それによって予測したラベルの配列のセットを前記本番データセットに付与するステップと、
前記本番データセットにおいて前記分類モデルのセットの本番不一致測定値を計算するステップと、
前記本番不一致測定値と前記不一致測定値との間の類似度測定値を決定するステップと、
前記類似度測定値が所定の閾値を下回ることに応答して、前記本番データセットにデータドリフトを示すステップと、
を実行するように適合される、コンピュータ装置。
【請求項26】
プロセッサを有するコンピュータ装置であって、前記プロセッサは、
画像データセットを取得するステップであって、ここで前記画像データセットは順序をもつ複数の画像セットを含み、各画像セットはある時間間隔にわたって取得された画像を含み、前記画像セットはそれぞれの時間間隔に従って順序付けられるステップと、
訓練データセットを決定するステップであって、ここで前記訓練データセットは前記画像データセットからの画像を含み、前記訓練セットを前記決定することは、
前記順序をもつ複数の画像セットに対して重みを決定することであって、ここで各画像セットは重みに関連付けられ、少なくとも2つの画像セットは異なる重みに関連付けられること、及び、
前記順序をもつ複数の画像セットから前記訓練データセットに含まれる画像サブセットを選択することであって、前記選択は前記重みに基づくこと、を含むステップと、
分類モデルを、前記訓練データセットを使用して訓練するステップと、
を実行するように適合される、コンピュータ装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般に画像分類に関し、特に画像分類のための適応学習に関する。
【背景技術】
【0002】
関連出願の相互参照
本出願は、2020年3月23日に出願され、米国出願第62/993112号に譲渡された仮特許出願に対する優先権を主張するものであり、その開示は参照により本明細書に援用される。
【0003】
人工知能(AI)は、様々な計算システムにおいて多くのタスクの基礎的なツールである。AIは、機械、コンピュータシステム、学習アルゴリズムなどによって人間の知能プロセスをシミュレートする。インテリジェンスプロセスは、情報の取得とその情報を使用するためのルールの学習、ルールを用いて、ほぼ正確な、又は明確な結論に到達するための推論、及び自己修正を含み得る。AIの特定のアプリケーションは、エキスパートシステム、音声認識、マシンビジョン、自動運転、コンテンツ配信ネットワークにおけるインテリジェントルーティング、軍事シミュレーションなどを含む。
【0004】
AIの使用は、検査システム、特にアイテム、又はアイテムと製品などの欠陥の識別と分類を目的としたシステムで非常に普及している。AI技術は、テクノロジー業界の不可欠な要素となり、製造プロセスにおける多くの困難な問題を解決するのに役立っている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】国際公開第2017/201107号
【特許文献2】米国特許出願公開第2018/068224号
【特許文献3】米国特許出願公開第2005/278322号
【発明の概要】
【発明が解決しようとする課題】
【0006】
開示された主題によって扱われる1つの技術的問題は、顧客サイトでデプロイされ、その開発者からデタッチされ得る、自律的で自己学習型の画像分類ツールを提供することである。
【課題を解決するための手段】
【0007】
開示された主題の例示的な一実施形態は、方法であって、分類モデルのセットを取得することであって、各分類モデルは画像に対してラベルを予測するように構成され、ここで予測したラベルは画像のクラスを示し、分類モデルのセットの各分類モデルは同じラベルのセットからラベルを予測するように構成されることと、分類モデルのセットを画像のキャリブレーションデータセットに適用し、それによって画像のキャリブレーションデータセットの各画像に予測したラベルの配列を付与し、それによって予測したラベルの配列のセットをキャリブレーションデータセットに付与することと、キャリブレーションデータセットにおいて分類モデルのセットの不一致測定値を計算することであって、ここで不一致測定値はキャリブレーションデータセットについて予測したラベルの配列のセットに基づいて計算され、不一致測定値は、分類モデルのセットの分類モデルの予測間の差によって影響を受けることと、画像の本番データセットに分類モデルのセットを適用し、それによって予測したラベルの配列のセットを本番データセットに付与することと、本番データセットにおいて分類モデルのセットの本番不一致測定値を計算することと、本番不一致測定値と不一致測定値との間の類似度測定値を決定することと、類似度測定値が所定の閾値を下回ることに応答して、本番データセットにデータドリフトを示すことと、を含む方法である。
【0008】
開示された主題の別の例示的な実施形態は、方法であって、画像データセットを取得することであって、ここで画像データセットは順序をもつ複数の画像セットを含み、各画像セットはある時間間隔にわたって取得された画像を含み、画像セットはそれぞれの時間間隔に従って順序付けられることと、画像データセットからの画像を含む訓練データセットを決定することであって、順序をもつ複数の画像セットに対して重みを決定することであって、ここで各画像セットは重みに関連付けられ、少なくとも2つの画像セットは異なる重みに関連付けられること、及び順序をもつ複数の画像セットから訓練データセットに含まれる画像サブセットを選択することであって、選択は重みに基づくことを含むことと、分類モデルを、訓練データセットを使用して訓練することと、を含む方法である。
【0009】
開示された主題の更に別の例示的な実施形態は、プロセッサを有するコンピュータ装置であり、プロセッサは、分類モデルのセットを取得するステップであって、各分類モデルは画像に対してラベルを予測するように構成され、ここで予測したラベルは画像のクラスを示し、分類モデルのセットの各分類モデルは同じラベルのセットからラベルを予測するように構成されるステップと、分類モデルのセットを画像のキャリブレーションデータセットに適用し、それによって画像のキャリブレーションデータセットの各画像に予測したラベルの配列を付与し、それによって予測したラベルの配列のセットをキャリブレーションデータセットに付与するステップと、キャリブレーションデータセットにおいて分類モデルのセットの不一致測定値を計算するステップであって、ここで不一致測定値はキャリブレーションデータセットに対して予測したラベルの配列のセットに基づいて計算され、不一致測定値は、分類モデルのセットの分類モデルの予測間の差によって影響を受けるステップと、画像の本番データセットに分類モデルのセットを適用し、それによって予測したラベルの配列のセットを本番データセットに付与するステップと、本番データセットにおいて分類モデルのセットの本番不一致測定値を計算するステップと、本番不一致測定値と不一致測定値との間の類似度測定値を決定するステップと、類似度測定値が所定の閾値を下回ることに応答して、本番データセットにデータドリフトを示すステップと、を実行するように適合される。
【0010】
開示された主題の更に別の例示的な実施形態は、プログラム命令を保持する非一時的なコンピュータ可読記憶媒体を備えるコンピュータプログラム製品であり、プログラム命令がプロセッサによって読み取られると、プロセッサに方法を実行させ、方法は、分類モデルのセットを取得することであって、各分類モデルは画像に対してラベルを予測するように構成され、ここで予測したラベルは画像のクラスを示し、分類モデルのセットの各分類モデルは同じラベルのセットからラベルを予測するように構成されることと、分類モデルのセットを画像のキャリブレーションデータセットに適用し、それによって画像のキャリブレーションデータセットの各画像に予測したラベルの配列を付与し、それによって予測したラベルの配列のセットをキャリブレーションデータセットに付与することと、キャリブレーションデータセットにおいて分類モデルのセットの不一致測定値を計算することであって、ここで不一致測定値はキャリブレーションデータセットの予測したラベルの配列のセットに基づいて計算され、不一致測定値は、分類モデルのセットの分類モデルの予測間の差によって影響を受けることと、画像の本番データセットに分類モデルのセットを適用し、それによって予測したラベルの配列のセットを本番データセットに付与することと、本番データセットにおいて分類モデルのセットの本番不一致測定値を計算することと、本番不一致測定値と不一致測定値との間の類似度測定値を決定することと、類似度測定値が所定の閾値を下回ることに応答して、本番データセットにデータドリフトを示すことと、を含む。
【0011】
開示された主題の更に別の例示的な実施形態は、プロセッサを有するコンピュータ装置であり、プロセッサは、画像データセットを取得するステップであって、ここで画像データセットは順序をもつ複数の画像セットを含み、各画像セットはある時間間隔にわたって取得された画像を含み、画像セットはそれぞれの時間間隔に従って順序付けられるステップと、画像データセットからの画像を含む訓練データセットを決定するステップであって、順序をもつ複数の画像セットに対して重みを決定することであって、各画像セットは重みに関連付けられ、少なくとも2つの画像セットは異なる重みに関連付けられること、及び順序をもつ複数の画像セットから訓練データセットに含まれる画像サブセットを選択することであって、選択は重みに基づくこと、を含むステップと、分類モデルを、訓練データセットを使用して訓練するステップと、を実行するように適合される。
【0012】
開示された主題の更に別の例示的な実施形態は、プログラム命令を保持する非一時的なコンピュータ可読記憶媒体を備えるコンピュータプログラム製品であり、プログラム命令がプロセッサによって読み取られると、プロセッサに方法を実行させ、方法は、画像データセットを取得することであって、ここで画像データセットは順序をもつ複数の画像セットを含み、各画像セットはある時間間隔にわたって取得された画像を含み、画像セットはそれぞれの時間間隔に従って順序付けられることと、画像データセットからの画像を含む訓練データセットを決定することであって、順序をもつ複数の画像セットに対して重みを決定することであって、各画像セットは重みに関連付けられ、少なくとも2つの画像セットは異なる重みに関連付けられること、及び順序をもつ複数の画像セットから訓練データセットに含まれる画像サブセットを選択することであって、選択は重みに基づくことを含むことと、分類モデルを、訓練データセットを使用して訓練することと、を含む。
【図面の簡単な説明】
【0013】
本開示の主題は、以下の詳細な説明を、対応する、又は同様の数字又は文字が対応する、又は同様の構成要素を示す図面と併せることで、より完全に理解され、評価されるであろう。別段の指示がない限り、図面は本開示の例示的な実施形態又は態様を提供するものであり、本開示の範囲を限定するものではない。
図1】開示された主題のいくつかの例示的な実施形態による、方法のフローチャート図を示す。
図2A】開示された主題のいくつかの例示的な実施形態による、例示的な不一致測定値の概略図を示す。
図2B】開示された主題のいくつかの例示的な実施形態による、例示的な不一致測定値の概略図を示す。
図2C】開示された主題のいくつかの例示的な実施形態による、例示的な不一致測定値の概略図を示す。
図2D】開示された主題のいくつかの例示的な実施形態による、例示的な不一致測定値の概略図を示す。
図3】開示された主題のいくつかの例示的な実施形態による、方法のフローチャート図を示す。
図4A】開示された主題のいくつかの例示的な実施形態による、例示的なアーキテクチャの概略図を示す。
図4B】開示された主題のいくつかの例示的な実施形態による、例示的なアーキテクチャの概略図を示す。
図5】開示された主題のいくつかの例示的な実施形態による、データセットに対する例示的なデータ選択の概略図を示す。
図6A】開示された主題のいくつかの例示的な実施形態による、例示的な訓練データ選択パターンの概略図を示す。
図6B】開示された主題のいくつかの例示的な実施形態による、例示的な訓練データ選択パターンの概略図を示す。
【発明を実施するための形態】
【0014】
開示された主題によって扱われる1つの技術的問題は、顧客サイトでデプロイされ、その開発者からデタッチされ得る、自律的で自己学習型の画像分類ツールを提供することである。いくつかの例示的な実施形態では、自己学習型の画像分類ツールは、データの潜在的な変化にもかかわらず、長期にわたり予測精度を維持し得る。
【0015】
いくつかの例示的な実施形態では、工場、製造プラントなどにおける生産プロセスは、画像分類を利用するAIベースのツールを使用して顧客サイトでモニタされ得る。そのようなAIベースのツールは、製造プロセスにおいて、アイテム、又はアイテム、製品などの欠陥の識別及び分類のための検査システムで利用され得る。いくつかの例示的な実施形態では、AIベースのツールは、視覚的入力に基づいて、機械が適切に機能するかどうか、生産されたアイテムが生産計画に従っているかどうかなどを決定するように構成され得る。視覚的入力は、異なる生産段階で、異なる角度などから、機械によって生産された製品の画像を含み得る。AIベースのツールは、そのような画像に対して画像分類を実行し、画像内のアイテムを分類し、アイテム又は製品内の欠陥を識別するように構成され得る。AIベースのツールは、画像分類学習タスクを解決するために、深層学習又はその他の機械学習方法を適用するように構成され得る。一例として、AIベースのソフトウェアは、フラットパネルディスプレイ(FPD)製造、プリント回路基板(PCB)製造などにおいて、自動光学検査装置(AOI)に使用され得る。AOIプロセスは、画像分類及びその他のAI技法に基づいてもよい。
【0016】
いくつかの例示的な実施形態では、生産プロセスをAOIなどによってモニタリングすることは、デタッチされた顧客サイト、例えば顧客の工場で、AIベースのツール又はその画像分類モデルの開発者に完全な情報を提供することなく実行され得る。開発者に提供される情報は制限されて、他の顧客、開発センタなど、開発者に関連する競合関係者に開示される可能性のある情報を制限し得る。AIベースのツールは、他のAIソフトウェア、その開発者、研究開発センタなどと情報を送信又は共有する能力なしに、動作及び適応することが必要とされる場合がある。追加的又は代替的に、AIベースのツールは、接続された環境で動作し得るがが、その開発者を含む第三者と転送及び共有するデータの量に関する制限を受ける場合がある。その結果、このようなAIベースのツールでの分類モデルの訓練は、比較的難しいタスクになる可能性があり、それは開発サイトで利用できる更新された訓練データが比較的少なく、大量の訓練データを処理できない顧客サイトで計算リソースが限られているためである。
【0017】
開示された主題によって扱われる別の技術的問題は、画像分類モデルの予測精度とパフォーマンスが、デタッチされた顧客サイトで変更が発生する可能性があるにもかかわらず、維持されていることである。いくつかの例示的な実施形態では、AIベースのモデル又は画像分類モデルは、初期訓練データベースに基づいて開発及び訓練され得て、例えば、顧客から、又は他のソースから取得され、画像分類学習タスクを解決するために顧客に提供され得る。このようなAIベースのモデル及び画像分類モデルは、継続的にモニタされて予測品質を維持し得る。このようなモデルの予測品質は、いくつかの要素によって影響を受ける可能性があり、例えば撮像技術の変更、カメラ又はその他の光センサの劣化、照明条件の変更、顧客プロセスの変更、異なる材料の使用、データ生成プロセスの変更、生成される製品の変更などである。一例として、FPD又はPCBの製造では、画像ピクセルは、製造されたFPD又はPCBの色の変化により、生産時に異なる材料を使用することにより、などで変化する場合がある。このような変化は、分類される画像の反射率、透過率などに影響を与える場合がある。別の例として、FPD又はPCBの製造では、急速な変化が、たとえ小規模であっても、生成された製品に対して継続的に行われる場合があり、例えば製品を顧客ニーズに適合させるため、新しい設計機能に適合させるため、などである。その結果、製品に新たな欠陥が発生する可能性があり、特定して修正する必要がある。
【0018】
いくつかの例示的な実施形態では、データの変化は、データの統計的測定値には現れない可能性があるが、依然として区別することが必要な場合がある。新しい画像は、古い画像と同様の統計的特徴、例えばピクセル、色などの分布を有し得る。しかしながら、新しい画像は、以前に取得された画像、最近取得された画像などには現れない可能性がある新しい製造上の欠陥をキャプチャする場合がある。
【0019】
いくつかの例示的な実施形態では、AIベースのモデルの予測精度を維持する方法、例えば数日毎に新しいモデルを訓練することが、十分な解決策を提供しない場合がある。一例として、このような再訓練は、予測精度に影響を与える根本的な変更が考慮されない場合がある。その結果、新たに訓練したモデルは、所与のデータセットに過学習し、汎化性能がますます低下している場合などがある。したがって、AIベースのツールの予測精度は低下する可能性がある。
【0020】
開示された主題によって扱われる更に別の技術的問題は、データの継続的な変化に対処する継続的なAI学習を提供することである。AIベースのモデルは、一方で分類されるデータの変化に敏感であることが必要とされる場合があるが、安定していること、例えば新しいデータによって混乱されないことが必要とされる場合もある。上記の例を参照すると、FPD又はPCB業界では、画像欠陥検出のための深層学習分類モデルが利用されてもよい。このような業界では、製造されたデバイス間の急速な変更が一般的であり得て、例えば新しいデバイス又はその一部分が2日毎又は3日毎に、訓練に利用されるスキャンされた設計に置換される場合がある。その結果、正確な分類を最近のデザインに行い、古いスキャンされたデザインではより少なくすることが必要になる場合がある。しかし、古いスキャンされたデザインは、デバイスの基本構成要素、頻繁に発生する欠陥などに関する分類タスクに依然として関連している場合がある。
【0021】
いくつかの例示的な実施形態では、AIベースの分類モデルは、それらの予測の正解率を維持するために、新しいデータに基づいて意識的に再訓練され得る。場合によっては、新しいタイプのデータは、数時間毎、数日毎などに取得され得る。AI学習技法が、新しいタイプのデータを扱うために必要となる場合がある。しかし、データの量は経時的に増加し、この技法ではそのような大量のデータを使用して分類モデルを訓練又は再訓練できない可能性があり、データには、重複する画像又はほとんど重複する画像が含まれる場合もある。いくつかの例示的な実施形態では、AI学習技法は、新しいデータを学習する際に、以前に学習したデータを完全に「忘却する」ように設計され得る。一例として、データの新しいデータセットを取得することに応答して、分類モデルの再訓練は、新しいデータセットに関して実行され得るが、一方で最後の訓練データセット、その最も古いサンプルを完全に忘れ、最後の訓練データセットの一部分のみを使用して訓練されるなどである。このような解決策は、再訓練用の訓練データの量を削減できる可能性があるにもかかわらず、訓練するために重要なデータ、例えば、新しいデータよりも現在のサンプルにより一層関連する古いデータなどを失うことになり得る。他のナイーブなAI再訓練アルゴリズムは、全量のデータを用いて再訓練する一方で、高価な計算リソースと時間を浪費する場合がある。追加的又は代替的に、AI再訓練アルゴリズムは、すべての利用可能なデータセットから、所定の割合、例えば0%~100%を使用してモデルを均一に再訓練し得る。しかし、そのようなアルゴリズムは、訓練に関連する重要なデータを見落とし、現在の分類タスクに無関係なデータを使用するなどの可能性がある。
【0022】
1つの技術的な解決策は、複数の分類モデルを適用することであり、それは複数の分類モデルの合意に基づいてデータドリフトが発生したかどうかを判断できる。場合によっては、データドリフトを考慮して、追加的又は代替的な訓練が必要とされ得る。いくつかの例示的な実施形態では、解決策は顧客サイトで実施され得る。追加的又は代替的に、解決策は自律的に実施されてもよい。
【0023】
いくつかの例示的な実施形態では、各分類モデルは、画像に対して、そのクラスを示すラベルを、同じラベルのセットから予測するように構成され得る。複数の分類モデルは、異なるタイプからの異なる分類モデル、同じタイプからのいくつかの分類モデルなどを含み得る。一例として、複数の分類モデルは、1つ以上の教師あり学習モデル、1つ以上の教師なし学習モデル、1つ以上の半教師あり学習モデル、1つ以上の自動機械学習(AutoML)生成モデル、1つ以上の生涯学習モデル、分類モデルの1つ以上のアンサンブル、1つ以上のノイズの多いラベルで学習した仮定モデルなどを含み得る。いくつかの例示的な実施形態では、分類モデルの訓練は、同じ訓練データセット、異なる訓練データセットなどを使用して実行され得る。分類モデルのラベルのセットは、画像分類タスクで利用される予測子のラベルのセットと同一であっても、同一でなくてもよいことに留意されたい。各分類モデルは、画像に対して、予測子のラベルの同じセットからラベルを予測するように構成され得る。
【0024】
追加的又は代替的に、複数の分類モデルは、1つ以上の分布内分類モデルを含み得る。分布内分類モデルは、訓練分布であるかどうかを判断するために、教師なし方法で訓練され得る。このような分布内分類モデルを使用して、画像セットが訓練分布と同じ又は類似の統計的特性(例えば、「分布内」)を示すか、又は十分に異なる統計的特性(例えば、「分布外」)を示すかを判断し得る。いくつかの例示的な実施形態では、分布内分類モデルは二項分類モデルであってもよい。二項分類モデルは検出器、g(x):X→{0、1}であり得て、データが分布内からである場合はラベル1を割り当て、それ以外の場合はラベル0を割り当てる。
【0025】
いくつかの例示的な実施形態では、複数の分類モデルは、ラベル付けされた画像のキャリブレーションデータセットに適用され得る。キャリブレーションデータセットは、異なる訓練段階、異なる本番ラウンドなどからの複数の画像を含み得る。キャリブレーションデータセットからの各画像には、予測されたラベルの配列が付与されてもよく、それぞれは異なる分類モデルによって提供される。いくつかの例示的な実施形態では、キャリブレーションデータセットにおいて複数の分類モデルの不一致測定値が計算され得る。不一致測定値は、キャリブレーションデータセットの予測したラベルの複数の配列に基づいて計算され得る。不一致測定値は、複数の分類モデルの分類モデルの予測間の差によって影響を受ける可能性がある。次に、複数の分類モデルは、ラベル付けされていない画像、例えば新しく取得した画像セットの本番データセットに適用され得る。本番データセットにおける複数の分類モデルの本番不一致測定値が計算され、キャリブレーションデータセットにおける複数の分類モデルの不一致測定値と比較され得る。本番不一致測定値と訓練段階不一致測定値との間の類似度測定値に基づいて、本番データセットにおけるデータドリフトが決定され得る。いくつかの例示的な実施形態では、閾値を下回る類似度測定値は、データドリフトを示している可能性がある。
【0026】
いくつかの例示的な実施形態では、予測子は画像に対するラベルを予測するために利用され得る。予測子は、本番データセットに適用して、そのラベルを予測し得る。例えば、予測子は、画像を、適切な本番出力、誤動作によって引き起こされる出力(及び誤動作のタイプ)などを示すカテゴリに分類し得る。いくつかの例示的な実施形態では、複数の分類モデルは予測子を含み得る。予測子は、他の分類モデルとともにキャリブレーションデータセット及び本番データセットに適用され得て、その予測したラベルは、予測したラベルの配列にあるものとして比較され得る。追加的又は代替的に、予測子は、複数の分類モデルから除外されてもよい。予測子がキャリブレーションデータセットに対して検証されたと仮定すると、本番データセットが、キャリブレーションデータセットと本番データセットにわたって複数の分類モデルの同様の不一致測定値を示す限り、予測子は本番データセットに適用された場合に有効なままであると仮定され得る。
【0027】
いくつかの例示的な実施形態では、本番データセットにドリフトを示すことに応答して、分類タスクに利用される予測子が再訓練され得る。予測子は、本番データセットの少なくとも一部分に基づいて再訓練され得る。ベースラインの不一致測定値は、再訓練に利用された本番データセットの少なくとも一部分に基づいて再計算され得る。再訓練された予測子は、検証データセットに関して、再訓練された予測子が予測子よりも正解率が向上した場合に、予測子を置換し得る。
【0028】
場合によっては、画像分類モデルの生涯学習は固定された出力クラスのセットを使用し得て、つまり、学習の問題は、クラスの数に関しては経時的に変化せず、訓練の複雑さを軽減することを意味していることに留意されたい。いくつかの例示的な実施形態では、無関係なクラス、例えば、サンプルが分類されていないクラス、分類された新しいサンプルがないクラスなどは、出力クラスから除去され得る。追加的又は代替的に、新しいクラスが経時的に作成され、追加されてもよい
【0029】
別の技術的解決策は、分類器を、異なる時間間隔で取得されたデータから不均一な方法で選択された適応訓練データセットを使用して再訓練することである。いくつかの例示的な実施形態では、訓練データは経時的に取得され得る。データの各サブセットは、異なる時間間隔、例えば、数時間毎、数日毎などに取得され得る。新しいデータセット、例えば分類される新しいサンプルが取得されると、新しい訓練データセットが決定され得る。新しい訓練データセットは、異なる時間間隔からの異なる割合のサンプルを含んでもよい。
【0030】
いくつかの例示的な実施形態では、訓練データセットを決定するために利用される、順序をもつ複数の画像セットが取得され得る。いくつかの例示的な実施形態では、順序をもつ複数のセットは、日付の昇順で並べられてもよい。いくつかの例示的な実施形態では、データセットの意義又は情報価値の範囲は、例えば、ドメインエキスパートの知識に基づいて、又はそれに基づく分類モデルの訓練の正解率に基づいて決定又は推定され得る。いくつかの例示的な実施形態では、各セットから選択する画像の数又は割合を示す重みが決定され得る。重みは不均一であってもよく、例えば、少なくとも2つのセットに異なる重みが割り当てられてもよい。訓練データセットに含まれる画像の選択は、重みに従って実行されてもよく、例えば、関連する重みに従って各セットのサンプルをランダム又は疑似ランダムな方法で取得する。一例として、第1のセットの重みは10%であり得て、訓練データセットに含まれるセットの母集団から10%のサンプルを選択することを示す。第2のセットは、5%の重みに関連付けられ得て、これは、訓練データセットが第2のセットの母集団から選択された5%のサンプルを含むことを示す。
【0031】
一例として、各セットの重みは、それに基づいて訓練された分類器の正解率、セットで終わる所定数の連続するセットに基づいて訓練された分類器の正解率などに基づいて決定され得る。分類器の正解率は、最新のセット、関連するセットに続くセットなどへの分類器の適用に基づいて計算され得る。別の例として、各セットの重みは、セットの正解率指標と以前の時間間隔からのセットの正解率指標との間の差に関連付けられてもよい。更に別の例として、重みは、経時的に複数のセットの順序に関連付けられた単調なパターンに基づき決定されてもよく、例えば、より大きな重みが最近のセットよりも古いセットに与えられ得る、「past means more(過去はより多く、を意味する)」パターン、より小さい重みが最近のセットよりも古いセットに与えられ得る、「past means less(過去はより少なく、を意味する)」パターンである。このような原則では、顧客にはオプションが提供され得て、オプションは、最近のサンプルに類似する例ではより性能が向上し、過去のサンプルに似た例では正解率が低くなる、又はその逆の訓練したモデルを有する。サンプル含有曲線は、線形の成長又は減衰、非線形の成長又は減衰、指数関数的な成長又は減衰などであり得ることに留意されたい。
【0032】
いくつかの例示的な実施形態では、訓練のための検証セットが決定され得る。検証セットを利用して、予測子などの分類器の正解率が計算され得る。いくつかの例示的な実施形態では、検証セットは、選択された訓練セットとは逆に決定され得る。一例として、訓練セットのためにセットから選択されたサンプルの割合が過去から現在まで増加する場合、検証セットのためにセットから選択されたサンプルの割合は過去から現在まで減少し得る。一例として、訓練セット選択パターンが非線形的に成長するpast-means-lessである場合、検証セットパターン選択は、非線形的に成長するpast-means-moreである可能性がある。いくつかの例示的な実施形態では、訓練データセットに対する重みは、関数f(x)を使用して、セットの順序(例えば、xは時間などを示す)にわたって決定され得て、一方、検証データセットに対する重みは、関数-f(x)に基づき決定され得る。そのため、訓練データセットが「past-means-more」パターンを使用して決定される場合、検証データセットは「past-means-less」パターンを使用して決定され、その逆も同様である。
【0033】
開示された主題を利用することの1つの技術的効果は、適応自律学習のための自律化ソリューションを提供することであり、それは外部コンピューティング及びデータベースから切り離され、顧客サイトの条件に適応させることである。開示された主題は、画像分類AIモデルの正解率を高めることを可能にし、AI分類器を利用する工場又は製造プラントのデータをAIモデルの開発者又は他の外部関係者に公開することを伴わない。開示された主題は、画像分類AIモデルの正解率とユーザに認められた性能を、一連の大きな変化の下で安定させるために、大規模で多様なAIモデルによって判断される適応訓練を使用する自動機能を提供し、AIモデルは、大規模なバイナリ実行AIモデルにパッケージ化された類似のモデル、アンサンブルモデル、矛盾(contradicting)モデル、及びデータ分布変更検出モデルのセットを介して、顧客サイトに適用されてもよい。更に、開示された主題は、完全な学習正則化及びモデレーションプロセスをサポートし、それらは、主分類予測子の予測結果に対する外部判断のセットとして機能する、制御モデルのセットである。
【0034】
開示された主題を利用する別の技術的効果は、製品が考案されてから販売可能になるまでに必要なタイムトゥマーケット(TTM)を短縮することである。TTMは、製品が急速に時代遅れになる業界、特にFPD、PCBなどのマイクロエレクトロニクスの世界で重要になる可能性がある。開示された主題は、より正確な訓練を伴う適応学習を提供し、それはAIベースのソフトウェアの正解率、ロバスト性、及び安定性を向上させ、より低い時間複雑性での自動モデルパフォーマンスの追跡と強化を可能にする。開示された主題は、本番ラインにおける各変更後に必要とされる訓練データの量を減らすことによって、TTMを短縮する。
【0035】
開示された主題を利用する更に別の技術的効果は、継続的な再訓練を必要とするAI ベースの生涯学習分類モデルの熟達度と正解率を高めることである。開示された主題は、再訓練データセットに入るサンプルを「記憶」及び「忘却」するメカニズムを提供し、これによって訓練データの量を低減するとともに、訓練の正解率を高める。このようなメカニズムにより、AIベースの分類モデルの継続的な適応型生涯学習が可能になり、経時的に必要とされる計算及び時間複雑性を増大することはない。更に、そのようなメカニズムは、再訓練された分類モデルが最新のデータセットなどの所与のデータセットに対して過学習することを回避する。開示された主題は、経時的に異なる本番段階からの多種多様なデータに従って再訓練することによって、再訓練された分類モデルにより多くの汎化性能を導入することを可能にする。更に、開示された主題は、有効な検証メカニズムを提供し、検証データの選択は訓練データの選択とは反対のパターンで実行される。このようなメカニズムは、分類モデルへの収束を困難にする可能性があり、分類モデルの再訓練が成功したかどうかを検証し、分類器を汎化することができる可能性がある。
【0036】
開示された主題は、任意の既存の技術、及び当技術分野で以前に日常的又は慣習的である任意の技術に対して、1つ以上の技術的改良を提供し得る。追加の技術的問題、解決策、及び効果は、本開示を考慮して、当業者には明らかであろう。
【0037】
ここで、開示された主題のいくつかの例示的な実施形態による、方法のフローチャート図を示している図1を参照する。
【0038】
ステップ100で、予測子は訓練される。予測子は、画像分類タスクに利用され得る。予測子は、画像に対して、ラベルのセットからラベルを予測するように構成され得る。いくつかの例示的な実施形態では、予測子は、画像及び各画像のクラスを示すそのラベルを含む訓練データセットを使用して訓練され得る。訓練データセットは、人間のエキスパートによって手動でラベル付けされた画像、以前の反復で利用された予測子を使用してラベル付けされた画像、分類モデルによってラベル付けされて人間のエキスパートによって検証された画像などを含み得る。
【0039】
ステップ110で、分類モデルのセットが取得される。各分類モデルは、画像に対するラベルを予測するように構成され得る。予測したラベルは、画像のクラスを示してもよい。分類モデルのセットの各分類モデルは、予測子と同じラベルのセットからラベルを予測するように構成され得る。
【0040】
いくつかの例示的な実施形態では、分類モデルのセットは、異なるパラメータ、異なる条件、異なるタイプの学習などを有する異なるタイプからの複数の分類モデルから選択され得る。分類モデルは、ラベル付けされた画像とラベル付けされていない画像との両方を含み得る訓練データセットを使用して訓練されてもよい。訓練データセットは、予測子又はその一部分を訓練するために利用される訓練データセットを含んでもよい。追加的又は代替的に、訓練データセットは、ラベル付けされた画像とラベル付けされていない画像との両方、例えば誤ったラベル付けであると考えられる画像、新しい本番段階からの新しい画像などを含み得る。一部の学習タイプは、ラベル付けされた画像のみに対して実行されてもよく、別のものはラベル付けされていない画像サブセットに対して実行されてもよく、更に別のものはラベル付けされた画像とラベル付けされていない画像の両方を使用して実行されてもよい。一例として、クラス条件付き確率を用いる教師あり学習が、ラベル付けされた画像サブセットに対して実行される場合がある。別の例として、分布内分類モデルの教師なし学習が、ラベル付けされていない画像サブセットに対して実行される場合がある。更に別の例として、ネットワーク可塑性を用いる生涯学習は、ラベル付けされた画像とラベル付けされていない画像の両方を含む訓練データセット全体を使用して実行され得る。
【0041】
分類モデルのセットの構成は、ドメインエキスパートの決定に基づいて、以前の反復正解率測定に基づいて、訓練データの構成に基づいてなど、ランダムに、任意に決定され得る。一例として、分類モデルのセットは、それぞれが異なるパラメータを有するニューラルネットワークを利用する、3つの生涯分類モデル、それぞれが異なる数のノイズラベルを想定する、ノイズラベル有する2つの分類モデル、1つの分布内分類モデルなどを含み得る。
【0042】
いくつかの例示的な実施形態では、分類モデルのセットは、分類タスクで利用される予測子を含み得ることに留意されたい。追加的又は代替的に、予測子は分類モデルのセットのメンバではなくてもよい。予測子は、キャリブレーションデータセットに個別に適用されても、適用されなくてもよい。
【0043】
ステップ120で、分類モデルのセットが画像のキャリブレーションデータセットに適用され得る。
【0044】
いくつかの例示的な実施形態では、キャリブレーションデータセットは、異なる訓練段階、異なる本番ラウンドなどからの複数の画像を含み得る。キャリブレーションデータセットは、分類モデルの訓練に利用される訓練データセットのサブセット、訓練データセットに基づいて決定される検証セット、最近取得された画像サブセットなどであり得る。いくつかの例示的な実施形態では、キャリブレーションデータセットは、サイト内分類タスクに使用される予測子を訓練するために使用される同じデータセットであり得る。追加的又は代替的に、キャリブレーションデータセットは訓練データセットとは異なってもよい。場合によっては、キャリブレーションデータセットはラベル付けされていない場合があり、その中の画像のラベルが利用されない場合があることにも留意されたい。代わりに、予測されたラベルのみが利用されてもよい。
【0045】
いくつかの例示的な実施形態では、各分類モデルは、本番データセット内の各画像に対してラベルを付与し得る。画像のキャリブレーションデータセットの各画像には、予測したラベルの配列が付与され得る。その結果、キャリブレーションデータセットの予測したラベルの配列のセットが付与され得る。
【0046】
一例として、分類モデルのセットは、cls、…、clsとして示されるn個の分類モデルを含み得る。キャリブレーションデータセットの各画像には、値(l、…、l)を有する予測したラベルの配列が付与され、ここで、lは、同じラベルのセット(L)からのラベルであり、clsによって予測され、ここで、(l、…、l)の値は潜在的に不均一な値であり得る。
【0047】
ステップ130では、キャリブレーションデータセットにおいて分類モデルのセットの不一致測定値が計算され得る。不一致測定値は、キャリブレーションデータセットの予測したラベルの配列のセットに基づいて計算され得る。不一致測定値は、分類モデルのセットの分類モデル間の不一致の割合に基づいて計算され得る。したがって、不一致測定値は、キャリブレーションデータセット内の画像に対する分類モデルのセットの分類モデルの予測間の差によって影響を受ける場合がある。
【0048】
いくつかの例示的な実施形態では、不一致測定値は、分類モデルのセットの分類モデルのタプルが異なるラベルを付与する画像の一部分に基づいて計算され得る。不一致測定値は、キャリブレーションデータセット内の画像に対する分類モデルのセットの一対の分類モデルの予測間の差として、キャリブレーションデータセット内の画像に対する分類モデルのセットの分類モデルの三つ組の予測間の差として、又はキャリブレーションデータセット内の画像に対する分類モデルのセットの分類モデルの任意の他のタプル間の差として決定され得る。
【0049】
追加的又は代替的に、不一致測定値は、分類モデルのセットの分類モデルのタプルが同じラベルを付与する画像の一部分に基づいて計算され得る。不一致測定値は、特定のラベル、所定数のラベルなどにおいて分類モデルのタプルの予測間の不一致を示し得る。
【0050】
追加的又は代替的に、不一致測定値は、分類モデルのセットにおける他の分類モデルの予測と比較して、少なくとも1つの分類モデルの予測における異常を示し得る。
【0051】
ステップ140で、分類モデルのセットは、画像の本番データセットに適用され得る。いくつかの例示的な実施形態では、各分類モデルは、本番データセット内の各画像に対してラベルを付与し得る。その結果、予測したラベルの配列のセットは、本番データセット用に生成され得る。
【0052】
分類モデルのセットが分類タスクに利用される予測子を含まない場合、予測子は、本番データセットに別個に適用されて、例えば開示された主題に従ってシステムの所望の機能を実行する(例えば、AOIプロセスを実施する)ことができる。
【0053】
ステップ150で、本番データセットにおける分類モデルのセットの本番不一致測定値が計算され得る。いくつかの例示的な実施形態では、本番データセットにおける分類モデルのセットの本番不一致測定値は、キャリブレーションデータセットにおける分類モデルのセットの不一致測定値の計算と同様に計算され得る。
【0054】
ステップ160で、本番不一致測定値と不一致測定値との間の類似度測定値が決定され得る。いくつかの例示的な実施形態では、類似度測定値は、本番不一致測定値と不一致測定値とがどの程度類似しているかを示し得る。一般性を失うことなく、かつ説明を明確にするために、低い数値は類似度が低いことを示し得て、一方、高い数値は類似度が高いことを示し得る。一例として、測定値は0と1との間の数であり得て、1は2つの不一致測定値が同一であることを意味し、0はそれらが可能な限り互いに異なることを意味する。開示された主題は、不一致測定値間の距離測定値を示す距離指標を使用して実装され得ることに留意されたい。そのような実施形態では、低い値は類似度を示し得て、一方、高い値は相違を示し得る。
【0055】
ステップ170において、類似度測定値が所定の閾値を下回る(例えば、最小類似度閾値が満たされない)ことに応答して、本番データセットにデータドリフトが示され得る。
【0056】
不一致測定値の減少は、例えば、分類モデルのセットが複数一致する場合、不一致測定値の増加と同様にデータドリフトを示し得ることに留意されたい。分類モデルが異なる不一致パターンを示す場合、そのような違いは、互いに多かれ少なかれ一致するかどうかに関係なく、本番データセットがキャリブレーションデータセットと著しく異なることを示している可能性があることに留意されたい。したがって、キャリブレーションデータセットに関して決定された予測子の正解率測定値は、本番データセットにはもはや適用されない可能性がある。
【0057】
いくつかの例示的な実施形態では、類似度測定値が所定の閾値を下回るかどうかの決定が実行され得る。所定の閾値は、データドリフトを示し得る測定値間の最小類似度を示す類似度測定値の値であり得て、例えば約20%、30%などである。
【0058】
いくつかの例示的な実施形態では、所定の閾値を下回る類似度測定値は、分類モデルのセットが異なる不一致パターンを提供することを示し得る。場合によっては、データドリフトの観点から、分類モデルが以前よりも一致しない場合がある一方で、分類モデルがより一致する場合もある。追加的又は代替的に、異なる分類モデルが一致又は不一致する例の特性は、データドリフトを考慮して変更されてもよい。その結果、キャリブレーション時と比較して本番環境では不一致測定値が変化することを考慮して、データドリフトは自律的に識別され得る。
【0059】
ステップ180では、本番データセットにおいてドリフトを決定することに応答して、分類タスクに利用される予測子は再訓練され得る。いくつかの例示的な実施形態では、データドリフトは、既存の訓練データセットを使用する訓練が本番データセットに適していないことを示す場合がある。予測子を再訓練するための新しい訓練データセットは、本番データセットに従って決定され得る。新しい訓練データセットは、本番データセットに基づいて、キャリブレーションデータセットに基づいて、それらの組み合わせに基づいてなどで決定され得る。追加的又は代替的に、新しい訓練データセットは、類似度測定値、本番不一致測定値、外れ値検出などに基づいて、個別に決定されてもよい。一例として、訓練データセットは、図3の方法を使用して決定され得る。
【0060】
いくつかの例示的な実施形態では、予測子が再訓練され、十分な正解率スコアに達すると、予測子を訓練するために使用される訓練セット、予測子を検証するために使用される検証セット、それらのサンプル、それらの組み合わせなどは、新しいキャリブレーションデータセットとして利用されて、同時にステップ120~160を再実行し得る。
【0061】
ここで、開示された主題のいくつかの例示的な実施形態による、例示的な不一致測定値の概略図を示す図2A図2Dを参照する。
【0062】
いくつかの例示的な実施形態では、キャリブレーションデータセットの予測したラベルの配列のセット220は、分類モデルcls、…、clsのセットを、sample、…、sampleを含むキャリブレーションデータセットに適用することによって生成され得る。キャリブレーションデータセットの各画像には、値(l、…、l)を有する予測したラベルの配列が付与され、ここでlは、同じラベルのセットからのラベルであり、clsによって予測され、ここで(l、…、l)の値は潜在的に不均一な値であり得る。一例として、配列223は、分類モデルcls、…、clsのセットによって第3の画像に対して予測したラベルの配列であり得る。
【0063】
いくつかの例示的な実施形態では、キャリブレーションデータセット{sample、…、sample}において分類モデルcls、…、clsのセットの不一致測定値が計算され得る。不一致測定値は、配列のセット220に基づいて計算され得る。したがって、不一致測定値は、キャリブレーションデータセット内の画像において分類モデルのセットの分類モデルの予測間の差によって影響を受ける可能性がある。不一致測定値は、配列のセット220の値に対する統計的測定値、それらの集約、2つ以上の各分類モデル間の不一致などに基づいて計算され得る。
【0064】
いくつかの例示的な実施形態では、不一致測定値は、分類モデルのセットの分類モデルのタプルが異なるラベルを付与する画像の一部分に基づいて計算され得る。一例として、不一致測定値は、分類モデル、例えばcls、cls、及びclsのサブセットによって、画像の一部分、例えばsample15、sample18、sample22、及びsample36に付与されるラベルの違いに基づいて計算され得る。
【0065】
追加的又は代替的に、不一致測定値は、キャリブレーションデータセット内の画像に対する分類モデルのセットの一対の分類モデルの予測間の差として、キャリブレーションデータセット内の画像に対する分類モデルのセットの分類モデルの三つ組の予測間の差として、又はキャリブレーションデータセット内の画像に対する分類モデルのセットの分類モデルの任意の他のタプル間の差として決定され得る。一例として、グラフ240は、キャリブレーションセット上のcls及びclsの予測を表し得る。グラフ240の各点(p、p)は、cls及びclsによって画像に付与されるラベルのタプルを概略的に表すことができ、ここで、pはclsによって画像に付与されたラベルを表す値であり、pはclsによって画像に付与されたラベルを表す値である。一例として、(l、l)に位置する点241は、clsが画像にラベルlを付与し、clsが同じ画像にラベルlを付与したことを示す(図2Cも参照)。
【0066】
グラフ240は単に概略図であり、ラベル付けが連続値であり、列挙された可能な値のセットのうちの1つではないように、異なる点を使用する異なる例を示すことに留意されたい。いくつかの実施形態では、ラベルは、0と1との間の数などの連続値であり得ることに留意されたい。更に、このような図は、2つの分類器によって同様にラベル付けされた異なる例を示す際に、説明を明確にするために役立つ。
【0067】
ライン242上の点は、cls及びclsがその分類について一致する画像を表し得る。クラスタ244、246、及び248などの点の各クラスタは、clsとclsとの間の一致又は不一致パターンを表すことができる。一例として、実質的にライン242上にあるクラスタ246及びクラスタ248は、l(246)及びl(248)に関して、一対の分類モデルclsとclsとの間の一致を表し得るが、一方でクラスタ244は、それらの間の(例えば、clsによってlとして分類され、clsによってlとして分類される例に関して)不一致を表し得る。統計的測定は、異なるクラスタに対して実行されて不一致測定値を決定し得る。追加的又は代替的に、不一致測定値は、分類モデルのセット内の他の分類モデルの予測と比較して、少なくとも1つの分類モデルの予測に異常を示し得る。クラスタ244は、clsとclsとの間のそのような異常を表し得る。
【0068】
追加的又は代替的に、不一致測定値は、分類モデルのセットの分類モデルのタプルが同じラベルを付与する画像の一部分に基づいて計算され得る。不一致測定値は、分類モデルのタプルの予測間の不一致を、特定ラベル、所定数のラベルなどに関して示し得る。一例として、不一致測定値は、図2Dに示すように、指標280に基づいて計算され得る。指標280の各セルは、一対の分類器が一対のラベルを付与した回数又は割合を表す一致値を含む。一例として、セル282の値は、画像の0.2に対して、第1の分類モデルがラベルlを付与し、第2の分類モデルがラベルlを付与したことを示す。不一致測定値は、異なるラベルを示すセル、例えば指標280の対角線上にないセルに基づいて計算され得る。指標280は、一対のラベル毎に複数の分類器の一致値を表す複数の次元に活用され得ることに留意されたい。追加的又は代替的に、複数の異なる指標を利用して、例えば、分類器の異なるタプルを比較し得る。
【0069】
ここで、開示された主題のいくつかの例示的な実施形態による、方法のフローチャート図を示す図3を参照する。
【0070】
ステップ310では、順序をもつ複数の画像セットを含む画像データセットが取得され得る。複数の画像セットの各セットは、時間間隔にわたって取得された画像を含み得る。画像セットは、それぞれの時間間隔に従って順序付けされ得る。一例として、順序をもつ複数の中の第1の画像セットは、月曜日などの第1の時間間隔で取得された画像を含み得る。順序をもつ複数の中の第2の画像セットは、火曜日などの第1の時間間隔の直後の第2の時間間隔で取得された画像を含み得る。時間間隔は、時間間隔を間に有する追加のセットがない場合、直後に続くと考えられることに留意されたい。例えば、画像が平日の間のみキャプチャされると仮定すると、月曜日の時間間隔は金曜日の時間間隔の直後と見なされ得る。いくつかの例示的な実施形態では、後続関係は、順序をもつ複数セットに基づくことができ、2つのセット間の相対的な順序、及び2つのセットの間に追加のセットがあるかどうかに基づいて決定され得る。
【0071】
いくつかの例示的な実施形態では、データセット内の画像は、そのクラスを示すラベルでラベル付けされ得る。追加的又は代替的に、データセット内の一部の画像はラベル付けされない場合がある。
【0072】
いくつかの例示的な実施形態では、順序をもつ複数の画像セットによる最後の画像セットは、最近の本番データセットであり得る。最近の本番データセットは、分類モデルを、本番環境において、例えばFPD製造、PCB製造などのAOIプロセス中に、ラベル付けされていない画像に適用する間に取得され得る。いくつかの例示的な実施形態では、複数の本番データセットは、順序をもつ複数の画像セットに含めることができ、その各々は、本番データセットが取得された時間間隔に従って順序付けされ得る。複数の本番データセットは、順序をもつ複数のセットの最後に順序付けされ得て、最近の本番データセットは、複数の本番データセットの中から最後に順序付けられ得て、初期の本番データセットは、複数の本番データセットの中から第1に順序付けされ得る。
【0073】
ステップ320で、訓練データセットが決定され得る。訓練データセットは、ステップ310で取得された画像データセットからの画像を含み得る。訓練データセットは、画像データセット内の画像と同様のノーションを有する画像の分類タスクに利用される分類モデルを訓練するために利用されるように構成され得る。
【0074】
ステップ322で、重みは、順序をもつ複数の画像セットの各セットについて決定され得る。いくつかの例示的な実施形態では、重みは不均一に付けられてもよく、例えば、異なる特性を有する異なるセットに異なる重みが割り当てられ得る。しかしながら、セットのいくつかには、同様の又は同じ重みが付けられてもよいことに留意されたい。
【0075】
いくつかの例示的な実施形態では、重みは、セットから取得する画像の数を規定し得る。重みは、画像の相対数(例えば、画像の割合)、絶対数(例えば、画像の正確な数)などを規定し得る。一例として、画像の各セットは、画像セットから選択される画像セットからの画像の比率を示す割合に関連付けられ得る。最小の重み値、例えばゼロ、負の値などは、最小の重み値が割り当てられる関連する画像セットから、画像を選択することを避けること、例えば、関連する画像セットを破棄することを示す場合がある。追加的又は代替的に、100%などの最大の重み値は、関連付けられた画像セットのすべての画像を保持すること、例えば、関連付けられたセットを全体として保持することを示し得る。
【0076】
いくつかの例示的な実施形態では、重みは時間間隔に基づいて規定されるように、画像セットの順序と相関するように決定され得る。そのような場合、より小さい重み(例えば、より低い割合を示す重み)がより古い訓練データセットに対して決定され、「past-means-less」パターンが実装され得る。追加的又は代替的に、決定された重みは、画像セットの時間間隔の順序の反対に相関され得る。このような場合、より高い重み(例えば、より高い割合を示す重み)がより古い訓練データセットに対して決定され、「past-means-more」パターンが実装され得る。
【0077】
いくつかの例示的な実施形態では、順序をもつ複数の画像セットに対する重みは、不均一な単調関数、例えば狭義単調増加関数、狭義単調減少関数、線形関数、非線形関数などに従って決定され得る。
【0078】
追加的又は代替的に、順序をもつ複数の画像セットに対する重みは、それに基づいて訓練された分類モデルの期待される正解率に基づいて決定され得る。正解率は、画像の各セットに基づいて分類器を訓練し、その正解率を決定することによって決定され得る。追加的又は代替的に、順序をもつ複数の画像セットの重みは、画像セットを含む訓練データと、画像セットを除外する訓練データとに基づいて訓練された分類モデルの期待される正解率の差に基づいて決定され得る。分類器は、訓練データセットに基づいて、画像の各セットについて訓練され得て、訓練データセットは、画像セットに先行している、また画像セットを含んでいる、一連の画像セットを含む。画像の各セットの重みは、関連付けられた分類器の正解率測定値と、同じ訓練セットを使用するが関連付けられた画像セットを使用せずに訓練された分類器の正確な測定値との差に基づいて決定され得る。画像セットが訓練データ内にある場合に、正解率測定値が改善された場合、関連する画像セットの重みは改善した測定値に関連付けられ得る。画像セットが訓練データ内にある場合に正解率測定値が低下する場合、最小の重み値が関連する画像の第2の画像セットに割り当てられ得る。
【0079】
追加的又は代替的に、分類器は、セットのサブシリーズを使用して訓練され、連続するセットでテストされて、将来のセットに対するそのようなセットを使用した訓練の影響を判断し得る。各サブシリーズは、順序をもつ複数の画像セットからの所定数の連続する画像セット、例えば5つの連続セット、10個の連続セット、15個の連続セットなどを含み得る。サブシリーズに基づいて訓練された分類器は、順序をもつ複数の画像セットからの1つ以上の画像セットに適用され得て、1つ以上の画像セットは、画像データセットの順序に従ってサブシリーズの最後のセットの直後に順序付けられる。分類器は、異なる数の異なる複数の画像セット、例えばサブシリーズの直後に順序付けられた次の画像セット、次の2つの画像セット、次の4つの画像セットなどに適用され得る。それぞれの異なる複数に対する分類器の正解率測定値が計算され得る。選択パターンは、各サブシリーズに基づいて訓練された分類器の異なる正解率測定値に基づいて決定され得る。一例として、サブシリーズ内の画像セットの重みは、関連する分類器を次の画像セットに適用する正解率測定値に基づいて、異なる複数の異なる正解率測定値の平均に基づいてなどで決定され得る。別の例として、訓練中に省略されるサブシリーズの後に順序付けされた画像セットの数の決定は、正解率測定値に基づいて決定され得る。最小の重み値は、サブシリーズの後に順序付けられたセットに対して割り当てられ得て、分類器をこれらに適用する正解率測定値は、閾値を超え、例えば80%超え、90%超えなどである。更に別の例として、最小の重み値は、複数の画像セットが所定の閾値を超える最高の正解率測定値を達成する場合に、いくつかのセットの複数の画像セットのシーケンスに対して割り当てられ得る。
【0080】
ステップ324で、画像サブセットは、順序をもつ複数の画像セットから選択され得る。いくつかの例示的な実施形態では、各画像セットからの画像の選択は、セットに付けられた重みに基づいて実行され得る。いくつかの例示的な実施形態では、各セットの画像のサンプルが選択されてもよい。サンプルのサイズは重みに基づいて決定され得る。一例として、選択は、画像セットから選択される画像の割合に従って実行され得て、割合は重みに基づいて決定され得る。画像セットの一部分は、各セットに関連付けられた割合によって規定される比率に従って選択され得る。いくつかの例示的な実施形態では、セットが完全に破棄されない場合、最小数の例、例えば少なくとも10個の画像、少なくとも30個の画像、少なくとも100個の画像などがそこから選択され得る。
【0081】
いくつかの例示的な実施形態では、各画像セットからのサンプルの選択は、ランダム方法、疑似ランダム方法などで実行され得る。選択されるランダムサンプルは、それが選択されたセットの狭義サブセットであり、それと比較して縮小サイズを有する。ランダムな選択により、偏りのない統計的に有効なサンプルが得られる可能性がある。追加的又は代替的に、場合によっては、選択は、所望の偏りを意図的に実装するなど偏らせることができる。
【0082】
いくつかの例示的な実施形態では、訓練データセットは、特定の時間間隔からの例外的なデータを含み得て、例外的なデータは、訓練データ選択パターンに従って選択されない場合があるが、分類タスクに関連する場合がある。一例として、時間間隔のデータセットは、1つ以上の新しいクラスを導入すること、1つ以上のクラスを削除することなどができる。そのような訓練セットは、選択パターンに従って選択されていないにもかかわらず、分類タスクにとって重要であり得て、これは、訓練セットは、分類器が分類するクラスのセットを適応させ、これによって分類の正解率を向上させ得るためである。別の例として、所定数の所定の閾値を超える連続する時間間隔、例えば約10個の時間間隔、15個の時間間隔などのデータセットは、あまり普及していないクラスに分類されたサンプルを含み、訓練データセットから除去され得る。場合によっては、特定のカテゴリに分類されるサンプルの数は、連続する時間間隔において減少され得る(例えば、最後の時間間隔では、このカテゴリにラベル付けされるサンプルがより少なくなる)。これは、そのようなカテゴリが近い将来存在しなくなる場合があり、データセット全体から忘却される可能性があることを示し得る。追加的又は代替的に、重複又は類似のサンプルは、訓練データセットから削除され得る。このような類似度を判断するために、深層クラスタリング(Deep Clustering)、エントロピ最大化(Entropy Maximization)、正規化相互相関(Normalized Cross Correlation)、及びその他のアルゴリズムが、異なる間隔からのデータセットに適用され得る。
【0083】
ステップ330で、検証データセット及びテストデータセットが決定され得る。いくつかの例示的な実施形態では、検証データセットは、画像データセットからの画像を含み得る。検証データセットは、ステップ330で訓練される訓練中に分類モデルを検証するために利用されるように構成され得る。いくつかの例示的な実施形態では、検証データセットは、訓練データセットの決定と同様の方法で決定され得る(ステップ320)。
【0084】
いくつかの例示的な実施形態では、検証画像は、ステップ320で訓練データセットを選択するために使用される順序をもつ複数の画像セットから選択され得る。追加的又は代替的に、検証データセットは、以前に利用された検証データセットなどの別のデータセットから選択されてもよい。
【0085】
いくつかの例示的な実施形態では、検証データセットは、順序をもつ複数の画像セットの各セットからランダムサンプルを選択することによって選択され得る。いくつかの例示的な実施形態では、セットから選択されたランダムサンプルのサイズは、ステップ320で行われた選択と同様の方法で、検証重みに基づいて決定され得る。いくつかの例示的な実施形態では、検証重みは、10%、20%などのように、すべてのセットに対して均一であってもよい。追加的又は代替的に、異なる可能性がある検証重みは、順序をもつ複数の画像セットの各セットに対して決定され得る。いくつかの例示的な実施形態では、検証重みは、訓練データセットを選択するために利用される重みとは対比して決定され得る。ステップ322で順序付けられた複数の画像セットの重みが、関数f(x)に基づいて実行される場合、検証重みは関数g(x)=-f(x)に基づいて決定され得る。例えば、重みが訓練データセットで単調に増加し、「past-means-less」パターンを実装する場合、g(x)の使用により、それに応じて重みは検証データセットで単調に減少し、「past-means-more」パターンを実装し得る。
【0086】
ステップ340では、分類モデルは、ステップ320で決定された訓練データセット及びステップ330で決定された検証データセットを使用して訓練され得る。
【0087】
ステップ350では、テストデータセットは、訓練データセットを使用して訓練された分類モデルをテスト及び検証するのに利用され得る。いくつかの例示的な実施形態では、テストデータセットを使用して、ステップ340で訓練された分類モデルの正解率測定値が決定され得る。
【0088】
ここで図4A及び図4Bを参照すると、開示された主題のいくつかの例示的な実施形態に従って、開示された主題が利用され得る例示的な環境及びアーキテクチャの概略図が示されている。
【0089】
いくつかの例示的な実施形態では、図4Aに示されるサブシステム400a及び図4Bに示されるサブシステム400bを含むシステムは、開示された主題に従って画像分類のための適応学習を実行するように構成され得る。
【0090】
いくつかの例示的な実施形態では、分類モデルは、顧客によって提供された初期訓練データに基づいて、開発サイトで最初に訓練され得る。分類モデルは、顧客サイトでの分類タスクで利用され、視覚的入力、例えば異なる本番段階における製品の画像などに基づき欠陥を検出し得る。分類モデルは、得られた画像毎に、そのクラスを示すラベルを所定のクラスのセットから予測するように構成され得る。各クラスは、製品の欠陥に関連付けられるか、又はそれを示し得る。システムは、分類モデルを継続的にモニタして、分類モデルの正解率を向上させ、又は更新された訓練データに基づいて分類モデルを再訓練する、などのように構成され得る。
【0091】
いくつかの例示的な実施形態では、分類モデルは、初期訓練データセット402に基づき訓練され得る。データセット402は、サンプル画像を含み得て、各画像は、そのクラスを示すラベルでラベル付けされる。追加的又は代替的に、データセット402は、ラベル付けされていない画像を含んでもよい。データセット402は、本番欠陥の画像、以前の本番ラウンドからの画像、異なる製品構成要素の画像などを含み得る。
【0092】
いくつかの例示的な実施形態では、データ浄化モジュール410は、収集されたサンプルを浄化し、そのラベルを評価するように構成され得る。データ浄化モジュール410は、データセット402からサンプルを選択し、選択されたサンプルに「分布外」分類器を適用するように構成され得る。分布外分類器は、教師なし学習を選択されたサンプルに適用し、データの分布から画像の距離を決定するように構成され得る。データの分布と同様の分布を有する画像は、分布内データXinとして分類され得て、一方、明確な分布を有する画像は、分布外データXoutとして分類され得る。分布内データXinは、分類モデルを使用して分類及びラベル付けされてもよく、人間のエキスパートによってラベル付けされるなどであってもよい。ラベル付けされたデータは、正しいラベルでタグ付けされているかどうかを判断するためにレビューされ得る。分布外データXoutは、人間のエキスパートによってレビューされ、そのような外れ値はラベル付けされるか、ラベル付けされていないデータとして提供されるか、除去されるかなどを決定し得る。いくつかの例示的な実施形態では、破損した画像は、外れ値、誤って撮影された画像(例えば、検査されている製品が見えないときに間違ったタイミングで撮影された画像)などとして示される場合がある。
【0093】
いくつかの例示的な実施形態では、ラベル付けされたデータ(x、y)及びラベル付けされていないデータ(X)の両方を含み得る、選択されたデータは、学習モジュール420に提供され得る。学習モジュール420では、分類モデルのセットは、選択されたデータに基づいて訓練され得る。各分類モデルは、そのクラスを示す画像に対するラベルを、データセット402のラベルのセットに関して予測するように構成され得る。
【0094】
いくつかの例示的な実施形態では、分類モデルのセットは、モデル421~426などの複数の分類モデルを含み得る。各分類モデルは、異なる訓練スキームを使用して、異なるパラメータ、異なる条件などを用いて訓練され得る。一例として、モデル423は、クラスの条件付き確率を使用した教師あり学習によって訓練され得る。各分類モデルは、ラベル付けされたデータ(x、y)を使用して、ラベル付けされていないデータ(X)を使用して、又はそれらの組み合わせなどを使用して訓練され得る。一例として、分布内分類を実行するモデル425は、ラベル付けされていないデータ(X)を使用して訓練され得る。分類モデルのセットの構成は、以前の反復正解率測定に基づいて、訓練データの構成に基づいてなど、ランダムに、任意に決定され得る。分類モデルの構成は、反復毎に異なってもよい。
【0095】
いくつかの例示的な実施形態では、分類モデルのセットの不一致測定値が計算され得る。不一致測定値は、分類モデルの各ペア又はタプルの予測間のギャップ(例えば、差) に基づいて計算され得る。一例として、ギャップ430は、モデル422とモデル423の予測結果の間で計算され得る。いくつかの例示的な実施形態では、計算されたギャップは、分類モデルのセットがどの程度ロバストであるかを理解するのに役立ち得る。ギャップが大きいほど、不一致測定値が大きくなり、分類モデルは判別としてより有益になり得る。不一致測定値は、後でリアルタイム予測データの不一致測定値と比較され、本番データの画像が訓練で使用されたデータとどれ程、異なるかを決定し得る。追加的又は代替的に、不一致測定値は、後でリアルタイム予測データの不一致測定値と比較され、これらの画像に対する分類モデルの予測弾力性を決定し得る。
【0096】
追加的又は代替的に、不一致測定値は、予測結果間の他の距離に基づいて、又は1つ以上の分類モデルの予測結果に基づいてなどで決定され得る。一例として、予測結果モデル425は、データの分布を示し得て、同様の分類モデルの以前の予測と、所定の閾値などと比較され得る。
【0097】
追加的又は代替的に、分類モデルのセット、例えば、モデル421、422、423、424、425、426は、パッケージ化されたモデル435に一緒に集約され得る。モデル435は、分類モデルのセットの訓練に利用される訓練データセット、及びそれに関連する他の情報、例えばその類似度測定値、データの分布測定値など、とともに集約され得る。いくつかの例示的な実施形態では、モデル435は、学習モジュール420によって以前の反復で生成されたモデルと比較され得る。その正解率が向上した場合、モデル435がデプロイされ得る。そうでない場合、以前のモデルがデプロイされ得る。
【0098】
いくつかの例示的な実施形態では、分類モデルのセットは、分類モジュール440によって分類タスクに利用される主分類モデルを含み得る。主分類モデルは、予測子とも呼ばれ、モデル422などのアンサンブル分類器、又はモデル423、モデル424などのラベル付けされていない画像へのラベルを予測する他の分類器などであり得る。主分類モデルが高速に実行されること、消費されるリソースの量が比較的少ないことなどが好ましくなり得ることを理解されたい。いくつかの例示的な実施形態では、主分類モデルは、各クラスラベルがデータセットにおいて、例えばソフマックスレイヤを使用して、選択される確率を決定するように構成され得る。画像の新しい本番セットXnewを取得することに応答して、分類モジュール440は、新しい本番データセットに主分類モデルを適用し得る。欠陥、例えば、製品中の欠陥の存在を示すものとしてラベル付けされた画像は、モデル追跡モジュール450に提供され得る。いくつかの例示的な実施形態では、欠陥の画像のすべて又は実質的にすべては、モデル追跡モジュール450に提供され得て、それは画像の大部分が、ほとんどの製品が、望ましい品質レベルを満たしている作動している製造プラントにあると予想されるような、欠陥を含んでいないものとしてラベル付けされる可能性があるためである。
【0099】
いくつかの例示的な実施形態では、画像の新しい本番セットXnewからの画像の所定の割合K%が、モデル追跡モジュール450に提供され得る。所定の割合K%は、5%、10%などであり得る。そのような画像は、キャリブレーションデータセットに対して比較される本番データセットとして利用され、画像の新しい本番セットXnewが、例えば、異なる画像生成プロセス分布に由来するデータドリフトを含むかどうかを判断し得る。データドリフトは、主分類モデルの正解率における保証レベルを低下させる可能性があり、主分類モデルは、本番データセットがドリフトした元のキャリブレーションデータセットを使用して訓練及び検証された。
【0100】
いくつかの例示的な実施形態では、モデル追跡モジュール450は、画像の新しい本番セットXnewにおける異常、画像の新しい本番セットXnewと主分類モデルとの間の不一致、モデル正解率の低下に関する警告、特別な外れ値画像のタグ付けなどを決定するように構成され得る。モデル追跡モジュール450は、モデル421~426のそれぞれを本番データセットに「判別」分類器として適用するように構成され得る。本番データセット上の分類モデルの本番不一致測定値は、計算され、キャリブレーションデータセットを使用して学習モジュール420によって計算された分類モデルの不一致測定値と比較され得る。本番不一致測定値は、不一致測定と同様の方法で、例えば、分類モデルの各ペア又はタプルの予測間のギャップに基づいて、分布内分類器の結果間の比較に基づいてなどで計算され得る。
【0101】
いくつかの例示的な実施形態では、データドリフトが決定された場合、本番データセットは欠陥のサブセットとともに、訓練データセット選択モジュール460に提供され得る。訓練データセット選択モジュール460は、主分類モデルを再訓練するためにどのデータを選択すべきかを決定するように構成され得る。
【0102】
いくつかの例示的な実施形態では、特別であると判断された画像、例えば、欠陥、外れ値、ドリフト画像、既知のクラスに適合しない画像などに関与している疑いのある画像などは、再訓練のために選択され得る。そのような画像は、データ浄化モジュール410に提供されて、人間のエキスパートによって再ラベル付けされてもよい。
【0103】
追加的又は代替的に、訓練データセット選択モジュール460は、経時的に利用可能なデータから画像を選択するように構成され得る。利用可能なデータは、いくつかの画像セットに保存され得て、各画像セットは、ある時間間隔で取得された画像を含む。一例として、データセットDSi-kは、時点iとiからさかのぼるk時点(例えば、今日から8日さかのぼる)との間の時間間隔で得られた画像を含み得る。画像セットは、それぞれの時間間隔に従って順序付けられ、例えば{DSi-k、DSi-k+1、…、DSi-1}などである。
【0104】
いくつかの例示的な実施形態では、訓練データセット選択モジュール460は、データセット忘却アルゴリズム462を画像セットに適用するように構成され得る。データセット忘却アルゴリズム462は、どのセットを再訓練のために選択するべきか、どのセットを忘却するべきか、例えば、再訓練データセットから除外するべきかを決定するように構成され得る。データセット忘却アルゴリズム462は、異なる仮説を適用してどのデータセットを忘却するか、例えば、古い画像セットを忘却する、分布外の画像セットを忘却する、分類モデルの全体的な正解率を低下させると考えられる画像セットを忘却する、他のセットと比較してノイズの多い画像セットを忘却するなど、を選択するように構成され得る。追加的又は代替的に、データセット忘却アルゴリズム462は、業界の種類、撮像技術、統計的測定値などに基づき、ベストプラクティスの仮説を適用するように構成され得る。
【0105】
追加的又は代替的に、訓練データセット選択モジュール460は、データセット混合アルゴリズム464をデータセット忘却アルゴリズム462によって選択された画像セットに適用するように構成され得る。データセット混合アルゴリズム464は、選択されたセットのどの部分が再訓練のために選択されるべきかを決定するように構成され得る。データセット混合アルゴリズム464は、異なる選択仮説、例えば、古いデータセットからより多くの画像が選択される「past-means-more」仮説、新しいデータセットからより多くの画像が選択される「past-means-less」仮説、訓練の可能な正解率に基づく選択などを適用するように構成され得る。
【0106】
いくつかの例示的な実施形態では、選択された画像は、分類モデルのセットを再訓練するために学習モジュール420に提供されてもよい。そのような選択された画像は、新しいキャリブレーションデータセットであり、新しい不一致測定値を決定するために利用され得る。
【0107】
ここで、開示された主題のいくつかの例示的な実施形態による、データセットに対する例示的なデータ選択の概略図を示す図5を参照する。
【0108】
いくつかの例示的な実施形態では、画像データセット500は、順序をもつ複数の画像セット、データベース510、520、…、590を含み得る。各画像セットは、時間間隔にわたって取得された画像を含み得る。各時間間隔は、本番環境のペースに関連する所定の期間、例えば、本番ラウンドを示す期間、分類ラウンドを示す期間などであってもよい。追加的又は代替的に、期間は、サンプリングされた画像の変化のペース、例えば、異なる統計的特徴を有する画像が得られた過去のサンプルにわたる平均期間などに基づいて決定され得る。例として、PCB業界では、製造されたデバイス間で急速な変更があることが一般的であり、例えば、スキャンしたデザインを2日毎、又は3日毎に交換するなどである。したがって、各時間間隔は、8時間、12時間、24時間などの数時間、又は2日、5日、就労日などの数日からなり得る。
【0109】
いくつかの例示的な実施形態では、複数の画像セットは、各セット内の画像が取得される時間間隔の順序に従って順序付けられてもよい。一例として、データベース510は、最も古い時間間隔で得られた画像を含むことができ、データベース520は、最も古い時間間隔の直後の次の時間間隔で得られた画像を含むことができる、などである。データベース590は、最近の(例えば最新の)時間間隔で取得された画像を含み得る。データベース590は、本番データセット、例えば、分類モデルを本番環境においてラベル付けされていない画像に適用する間に、最後の時間間隔で取得された画像セットであり得る。そのような画像は、ラベル付けされていなくてもよく、部分的にラベル付けされていてもよく、更新されていない分類モデルによってラベル付けされていてもよいなどである。
【0110】
いくつかの例示的な実施形態では、訓練データセット505は、画像データセット500に基づいて決定され得る。訓練データセット505を利用して、所与の画像毎に、そのクラスを示すラベルを予測するように構成された分類モデルを訓練し得る。いくつかの例示的な実施形態では、分類モデルは、各ラウンドで分類されるデータに潜在的な変化を伴う継続的なAI分類タスクで利用され得て、例えばFPD又はPCB業界などにおける欠陥検出などである。分類モデルは、正解率を維持するために定期的に再訓練される場合があるが、新しいデータによって混乱しないようにする必要もあり得る。したがって、訓練データは、最近のサンプルと古いサンプルの両方を含むことが必要になり得る。各時間間隔からのサンプルの量は、分類タスクの要件、データ変化の性質などに基づいて変更され得る。
【0111】
いくつかの例示的な実施形態では、重みは、画像データセット500内の各画像セットに対して決定され得る。重みは不均一であってもよく、セット毎に異なってもよい。重みは、異なる選択パターン、例えば限定するものではないが図6Aで説明したパターンに従って決定され得る。いくつかの例示的な実施形態では、選択パターンは、顧客の要望に基づいて決定することができ、例えば、より正確な分類結果を最近のデザインに提供し、低い正確の分類結果を古いスキャンされたデザインに提供するなどである。重みは、各画像セットから選択される画像の量を示すことができる(例えば、各時間間隔)。一例として、各重みは、割合によって規定される比率に従って、関連付けられた画像セットの一部分を示す割合に等しくてもよい。別の例として、重みは、選択される画像セットからの画像の比率、画像セットから選択される画像の最大数、画像セットから選択される画像の最小数などであり得る。
【0112】
いくつかの例示的な実施形態では、画像データセット500からの各画像セットのサブセットを選択して、訓練データセット505に含めることができる。各サブセットは、関連付けられたセットに対して決定された重みに基づいて選択され得る。一例として、割合(又は比率)αはデータベース510から選択され、割合βはデータベース520から選択されるなどである。したがって、訓練データセット505は、複数の画像サブセットを含み得て、例えばサブセット515、サブセット525、…、サブセット595などである。サイズ(S)は、画像セットS内の画像の数を示し得る。いくつかの例示的な実施形態では、サイズ(サブセット515)=α・サイズ(データベース510)、サイズ(サブセット525)=β・サイズ(データベース525)、…、サイズ(サブセット595)=γ・サイズ(データベース590)である。
【0113】
少なくとも1対の重み(又は割合)α、β…γは異なる(例えば、α≠β)ことに留意されたい。いくつかの割合は0であってもよく、例えば、関連付けられた画像セットから画像が選択されなくてもよいことに更に留意されたい。
【0114】
ここで、開示された主題のいくつかの例示的な実施形態による、例示的な訓練データ選択パターンの概略図を示す図6Aを参照する。
【0115】
いくつかの例示的な実施形態では、画像セット(図5の画像データセット500の画像セットなど)に対して決定された重みは、それに関連付けられた時間間隔の順序と関連付けられてもよい。いくつかの例示的な実施形態では、より低い割合で画像が選択されることを示す、より小さい重みは、古い訓練データセットに対して決定され得て、例えば、パターン610、615(「past means more」パターン)である。このような選択パターンでは、最近のデータセットからより多くの画像が選択され、古いデータセットからはより少ない画像が選択される。したがって、分類モデルは、最近のサンプルではより強力(例えば、より正確)になり、過去のサンプルではより正確でなくなる可能性がある。追加的又は代替的に、より高い割合で画像が選択されることを示す、より高い重みは、古い訓練データセットに対して決定され得て、例えば、パターン620、625(「past means less」パターン)である。このような選択パターンでは、古いデータセットからより多くの画像が選択され、最近のデータセットからはより少ない画像が選択される。このようなパターンは、古いデータセットからのデータが、新しいデータよりも最近のサンプルにとってより有益である場合、例えば、新しい欠陥がもたらされた場合、古い時間間隔から欠陥が繰り返される場合などに関連する可能性がある。いくつかの例示的な実施形態では、重みは時間の単調関数に従って決定され得る。単調関数は、不均一な関数であり得て、例えば狭義単調増加関数(パターン620、625など)、狭義単調減少関数(パターン610、615など)、線形関数(パターン615、625)、非線形関数(パターン610、620など)などである。
【0116】
追加的又は代替的に、画像セットの重みは、画像セットの重要測定値に基づいて決定され得て、例えば、画像セットに基づく訓練の正解率、サンプル間のばらつき、新しいクラスの導入などである(パターン630のように)。
【0117】
いくつかの例示的な実施形態では、各画像セットの重みは、画像セットに基づいて訓練された分類モデルの潜在的な正解率に基づいて、将来のデータセットが適用されるときに決定され得る。潜在的な正確率は、画像セットを含む訓練データセットに基づいて分類器を訓練し、訓練された分類器を後で得られた画像セットに適用することによって決定され得る。得られた正確率は、関連する画像セットなしで訓練された他の分類器の正確率と比較され得る。一例として、第1の分類器は、連続する画像セットを含む第1のデータセットに基づいて訓練され得る。第2の分類器は、第2のデータセットに基づいて訓練され得て、それは第1のデータセットに含まれる画像セットに加えて、第1のデータセットの最後の画像セットの直後に順序付けられる追加の画像セットを含む。追加の画像セットの重みは、第1の分類器の正解率測定値と比較した第2の分類器の正解率測定値の差に基づいて決定され得る。第1の分類器の正解率測定値と比較した第2の分類器の正解率測定値の差が、改善を示す場合、追加の画像セットの重みは、改善の測定値に関連付けることができる。第1の分類器の正解率測定値と比較した第2の分類器の正解率測定値の差が、正解率の低下を示す場合、追加の画像セットの重みは、最小の重み値が割り当てられ、任意の画像の選択を回避し得ることを示す。
【0118】
追加的又は代替的に、分類器は、各画像セットとそれに先行するすべての画像セットに基づいて訓練され得る。各分類器の正解率測定値は、以前の画像セット及びそれに先行するセットに基づいて訓練された分類器の正解率測定値と比較され得る。一例として、時間間隔tで取得された新しい画像セット毎に、新しい分類器Clsは、新しい画像セットまでのすべての画像セット(例えば、以前のデータセット(時間間隔t-1まで)を含む蓄積された訓練データセット)及び新しい画像セット(時間間隔tで取得されたセット)に基づいて訓練され得る。分類器C1sの正解率測定値は、分類器C1st-1(例えば、時間間隔t-1で取得される画像セットまでのすべての画像セットに基づいて訓練される分類器)の正解率測定値と比較され得る。時間間隔tで得られた新しい画像セットに対して決定された重みは、正解率測定値間の差に関連付けられ得る。
【0119】
追加的又は代替的に、重みは、1ユニットとしての画像セットのタプル(例えば、一連の画像セット)、例えば5つの画像セットのタプル、10個の画像セットのタプルなどに付けられ得る。タプル内の各画像セットには、同じ重みを割り当てることができる。セットの各タプルは、将来(例えば、連続する)画像セットからの画像に適用される分類器を訓練するために利用され得る。分類器は、複数の画像セットの順序に従って、タプル内の最後のセットの直後に順序付けられた画像セットのサブシリーズに適用されて、その正解率測定値を決定し得る。各タプルの重みは、各タプルに基づいて訓練された分類器を連続する画像セットのサブシリーズに適用する正確率測定値に基づいて決定され得る。正確率測定値が最小正確率閾値を超えるタプルには、最小の重み値が割り当てられてもよく、これは、タプル内の画像セットから画像の選択を避ける(例えば、訓練データセットからそのような画像セットを破棄する)ことを示している。追加的又は代替的に、再訓練のプロセスで省略され得る時間間隔の数(例えば、画像セットの数)が決定され得る。高い正解率測定値(所定の閾値を超えるなど)は、分類モデルの予測力と、そのようなデータに対する更なる訓練の不要性を示し得る。一例として、最小の重み値は、所定の類似度閾値を超える正解率測定値を提供するサブシリーズと同じセット数を有する画像セットのサブシリーズに割り当てられ得る。
【0120】
いくつかの例示的な実施形態では、1つ以上の例外が選択パターンに適用されてもよい。一例として、新しい分類カテゴリ(例えば、新しいクラス)を導入する画像セットは、全体として訓練データセット内にあるように選択されてもよく、最大の重みが付けられてもよく、再訓練で新しいカテゴリを導入する。別の例として、1つ以上の分類カテゴリへの分類を排除する画像セット(例えば、1つ以上のクラスに分類される画像がない)は、訓練データセットから破棄され得る。追加的又は代替的に、除外されたクラスに分類されたすべての画像セットからの画像は、画像セットから削除され、したがって、訓練データセット内にあるように選択されなくてもよい。更に別の例として、分類される画像の数が経時的に不均衡であるクラス、分類される画像の数が経時的に減少するクラスなども削除されたとみなされ、それに分類された画像は除去され得る。
【0121】
追加的又は代替的に、重複している画像、又は類似の画像は、訓練データセットから削除され得る。データセット画像間の深層クラスタリング、エントロピ最大化、正規化相互相関などの統計技法は、選択された画像に適用され、それらの間の類似度を決定し得る。所定の閾値を超える、例えば90%を超える、95%を超えるなどの類似度測定値を有する画像は、訓練データセットから除去され得る。
【0122】
ここで図6Bを参照すると、開示された主題のいくつかの例示的な実施形態による、例示的な訓練データセット及び検証データセットの選択パターンの概略図が示される。
【0123】
いくつかの例示的な実施形態では、画像の検証データセットは、順序をもつ複数の画像セットに基づいて選択され得る。検証重みは、各画像セットに対して決定され得る。画像の検証セットは、順序をもつ複数の画像セットから、その検証重みに基づいて選択され得る。
【0124】
いくつかの例示的な実施形態では、検証重みは、訓練セットの選択と反対の選択パターンで決定され得る。
【0125】
一例として、グラフ650は、訓練データセット及び検証データセットの選択パターンを表し得る。訓練選択パターンは、曲線660に示される関数f(t)に従うことができ、これは、経時的な画像セットの重み、経時的な各画像セットから選択された画像の割合などを表し得る。検証データセット選択パターンは、曲線670に示す関数g(t)に従うことができ、ここでg(x)=-f(x)である。曲線660に示される訓練選択パターンは、非線形の「past-means-more」パターンである。曲線670に示される検証データセット選択パターンは、非線形の「past-means-less」パターンである。
【0126】
追加的又は代替的に、再訓練された分類モデルをテストするためのテストデータセットは、順序をもつ複数の画像セットに基づいて選択され得る。一例として、テストデータセットは、各画像セットからの所定の割合の画像を含み得て、例えば、画像セットから10%、15%などである。
【0127】
本発明は、システム、方法、又はコンピュータプログラム製品であり得る。コンピュータプログラム製品は、プロセッサに本発明の態様を実行させるための命令を有するコンピュータ可読記憶媒体を含み得る。
【0128】
コンピュータ可読記憶媒体は、有形のデバイスであり得て、命令実行デバイスによって使用される命令を保持及び保存できる。コンピュータ可読記憶媒体は、例えば、限定するものではないが、電子、光磁気記憶装置などであってもよく、限定するものではないが、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROM又はフラッシュメモリ)などである。場合によっては、命令は、サーバ、リモートコンピュータ、リモート記憶装置などから記憶媒体にダウンロード可能であり得る。
【0129】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、又はSmalltalk、C++などのオブジェクト指向プログラミング言語、及び「C」プログラミング言語若しくは同様のプログラミング言語などの従来の手続き型プログラミング言語を含む、1つ以上のプログラミング言語の任意の組み合わせで記述されたソースコード若しくはオブジェクトコードのいずれかであり得る。プログラム命令は、全体的にユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、スタンドアロンのソフトウェアパッケージとして、部分的にユーザのコンピュータ上で、及び部分的にリモートコンピュータ上で、又は全体的にリモートコンピュータ若しくはサーバ上で実行し得る。後者の場合、リモートコンピュータは、ローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)を含む、任意のタイプのネットワークを介してユーザのコンピュータに接続することができ、或いは、接続は、外部コンピュータに(例えば、インターネットサービスプロバイダを使用してインターネット経由で)接続され得る。
【0130】
本発明の態様は、方法、装置、システム、及びコンピュータプログラム製品のフローチャート及びブロック図を参照して、本明細書に記載される。図中の各ブロック、及び図中のブロックの組み合わせは、コンピュータ可読プログラム命令によって実装され得ることが理解されよう。
【0131】
コンピュータ可読プログラム命令は、コンピュータ、他のプログラマブルデータ処理装置、又は他のデバイスにロードされて、一連の動作ステップを、コンピュータ、他のプログラマブル装置、又は他のデバイス上で実行させてコンピュータで実行されるプロセスを生成することができ、その結果、コンピュータ、他のプログラマブル装置、又は他のデバイス上で実行される命令は、図のブロックで指定された機能を実装する。
【0132】
図中のフローチャート及びブロック図は、本発明の様々な実施形態の可能な実装を示す。この点に関して、フローチャート又はブロック図の各ブロックは、指定された論理機能(複数可)を実装するための1つ以上の実行可能な命令を含む、命令のモジュール、セグメント、又は一部を表し得る。いくつかの代替的な実装では、ブロックに記載した機能は、図面に記載した順序通りでなく発生する場合がある。例えば、連続して示される2つのブロックは、関連する機能性に応じて、実際には実質的に同時に実行されてもよく、又はブロックが時として逆の順序で実行される場合がある。図の各ブロック及びブロックの組み合わせは、特殊目的のハードウェアベースのシステムによって実装され得ることにも留意されたい。
【0133】
本明細書で用いた用語は、特定の実施形態を記載することのみを目的としており、本開示を限定することは意図していない。本明細書で用いる場合、単数形「a」、「an」、及び「the」は、文脈によって明らかに他の場合が示されない限り、複数形も含むことが意図されている。「含む(comprises)」及び/又は「含んでいる(comprising)」という用語は、本明細書において用いられた場合、記述した特徴、整数、ステップ、動作、要素、及び/又は構成要素の存在を特定するが、1つ以上の別の特徴、整数、ステップ、動作、要素、構成要素、及び/又はそれらのグループの存在又は追加を除外するものではないことが更に理解されよう。
【0134】
以下の特許請求の範囲における全ての手段又はステッププラスファンクション要素の対応する構造、材料、行為、及び均等物は、具体的に請求されたように他の請求された要素と組み合わせて機能を実行するための任意の構造、材料、又は行為を含むことが意図されている。本発明の記載は、例示及び記述の目的のために提示されたものであり、網羅的であること、又は開示された形態において本発明を限定することは意図していない。多くの変更及び変形は、本発明の範囲及び趣旨から逸脱することなく、当業者には明らかであろう。実施形態は、本発明の原理及び実際的な用途を最も良く説明するため、また想定される特定の使用に適した様々な変更と共に様々な実施形態に関して、当業者が本発明を理解することを可能とするために、選択されて説明された。
図1
図2A
図2B
図2C
図2D
図3
図4A
図4B
図5
図6A
図6B
【国際調査報告】