(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-09-18
(54)【発明の名称】オンウエハ次元低減
(51)【国際特許分類】
H01L 21/02 20060101AFI20240910BHJP
【FI】
H01L21/02 Z
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024508695
(86)(22)【出願日】2022-08-17
(85)【翻訳文提出日】2024-04-09
(86)【国際出願番号】 US2022040643
(87)【国際公開番号】W WO2023023185
(87)【国際公開日】2023-02-23
(32)【優先日】2021-08-18
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2022-08-11
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】390040660
【氏名又は名称】アプライド マテリアルズ インコーポレイテッド
【氏名又は名称原語表記】APPLIED MATERIALS,INCORPORATED
【住所又は居所原語表記】3050 Bowers Avenue Santa Clara CA 95054 U.S.A.
(74)【代理人】
【識別番号】110002077
【氏名又は名称】園田・小林弁理士法人
(72)【発明者】
【氏名】マーハー, ジョシュア トーマス
(57)【要約】
方法が、製造装置によって作製された第1の基板に関連付けられる第1の計測データを受信することを含む。本方法は、第1の訓練された機械学習モデルを生成するために、第1の計測データを含むデータ入力により第1の機械学習モデルを訓練することをさらに含む。第1の訓練された機械学習モデルは、第2の製造装置に関連付けられる是正アクションを実行するために、第2の製造装置によって作製された第2の基板に関連付けられる第2の計測データの次元を低減することが可能である。
【選択図】
図4C
【特許請求の範囲】
【請求項1】
第1の製造装置によって作製された第1の複数の基板に関連付けられる第1の計測データを受信することと、
第1の訓練された機械学習モデルを生成するために、前記第1の計測データを含むデータ入力により第1の機械学習モデルを訓練することであって、前記第1の訓練された機械学習モデルが、第2の製造装置に関連付けられる1つまたは複数の是正アクションを実行するために、前記第2の製造装置によって作製された第2の複数の基板に関連付けられる第2の計測データの次元を低減することが可能である、第1の機械学習モデルを訓練することと
を含む、方法。
【請求項2】
前記第1の機械学習モデルを前記訓練することが、
第1の圧縮データを形成するために前記第1の計測データの次元を低減することと、
前記第1の圧縮データに基づいて、前記第1の計測データと実質的に同様である第1の再構築されたデータを生成することと
を含む、請求項1に記載の方法。
【請求項3】
前記第1の訓練された機械学習モデルが、第2の圧縮データを生成するために前記第2の計測データの次元を低減することが可能であり、
第2の機械学習モデルが、前記第2の複数の基板の作製に関連付けられる現在のデータを含む第2のデータ入力と、前記1つまたは複数の是正アクションを実行するための前記第2の圧縮データを含むターゲット出力とに基づいて、訓練されるべきである、
請求項1に記載の方法。
【請求項4】
前記現在のデータが、センサデータまたは製造パラメータのうちの1つまたは複数を含む、請求項3に記載の方法。
【請求項5】
前記1つまたは複数の是正アクションが、
アラートをユーザに提供すること、
前記製造装置のプロセスパラメータを更新すること、
前記製造装置のハードウェアパラメータを更新すること、
前記製造装置に関連付けられるセンサのセンサ変動を是正すること、
前記製造装置に関連付けられるチャンバ変動を是正すること、または
後続の基板を作製するためにプロセスレシピを更新すること
のうちの1つまたは複数を含む、請求項3に記載の方法。
【請求項6】
前記第1の計測データの前記次元を前記低減することが、非線形適合を介したものである、請求項2に記載の方法。
【請求項7】
前記第1の計測データが、厚さデータまたは面内変位データのうちの1つまたは複数を含む、請求項1に記載の方法。
【請求項8】
前記第1の機械学習モデルが畳み込みニューラルネットワークモデルである、請求項1に記載の方法。
【請求項9】
製造装置によって作製された複数の基板に関連付けられる計測データを受信することと、
圧縮データを生成するために前記計測データの次元を低減するために、前記計測データを入力として、第1の訓練された機械学習モデルに提供することと、
前記第1の訓練された機械学習モデルから、前記圧縮データを取得することと、
前記圧縮データに基づいて、前記製造装置に関連付けられる1つまたは複数の是正アクションの実行を引き起こすことと
を含む、方法。
【請求項10】
前記第1の訓練された機械学習モデルが、過去の圧縮データを作製するために過去の計測データの次元を低減することと、前記過去の圧縮データに基づいて、前記過去の計測データと実質的に同様である再構築されたデータを生成することとによって訓練される、請求項9に記載の方法。
【請求項11】
第2の機械学習モデルが、前記製造装置によって前記複数の基板を作製することに関連付けられる現在のデータを含むデータ入力と、前記1つまたは複数の是正アクションを実行するための前記圧縮データを含むターゲット出力とに基づいて、訓練されるべきである、請求項9に記載の方法。
【請求項12】
前記現在のデータが、センサデータまたは製造パラメータのうちの1つまたは複数を含む、請求項11に記載の方法。
【請求項13】
前記1つまたは複数の是正アクションが、
アラートをユーザに提供すること、
前記製造装置のプロセスパラメータを更新すること、
前記製造装置のハードウェアパラメータを更新すること、
前記製造装置に関連付けられるセンサのセンサ変動を是正すること、
前記製造装置に関連付けられるチャンバ変動を是正すること、または
後続の基板を作製するためにプロセスレシピを更新すること
のうちの1つまたは複数を含む、請求項9に記載の方法。
【請求項14】
前記計測データが、厚さデータまたは面内変位データのうちの1つまたは複数を含む、請求項9に記載の方法。
【請求項15】
前記第1の訓練された機械学習モデルが畳み込みニューラルネットワークモデルを含む、請求項9に記載の方法。
【請求項16】
実行されると処理デバイスに処理を実行させる命令を記憶する非一時的機械可読記憶媒体であって、前記処理は、
第1の製造装置によって作製された第1の複数の基板に関連付けられる第1の計測データを受信することと、
第1の訓練された機械学習モデルを生成するために、前記第1の計測データを含むデータ入力により第1の機械学習モデルを訓練することであって、前記第1の訓練された機械学習モデルが、第2の製造装置に関連付けられる1つまたは複数の是正アクションを実行するために、前記第2の製造装置によって作製された第2の複数の基板に関連付けられる第2の計測データの次元を低減することが可能である、第1の機械学習モデルを訓練することと
を含む、非一時的機械可読記憶媒体。
【請求項17】
前記第1の機械学習モデルを前記訓練することが、
第1の圧縮データを形成するために前記第1の計測データの次元を低減することと、
前記第1の圧縮データに基づいて、前記第1の計測データと実質的に同様である第1の再構築されたデータを生成することと
を含む、請求項16に記載の非一時的機械可読記憶媒体。
【請求項18】
前記第1の訓練された機械学習モデルが、第2の圧縮データを生成するために前記第2の計測データの次元を低減することが可能であり、
第2の機械学習モデルが、前記第2の複数の基板の作製に関連付けられる現在のデータを含む第2のデータ入力と、前記1つまたは複数の是正アクションを実行するための前記第2の圧縮データを含むターゲット出力とに基づいて、訓練されるべきであり、前記現在のデータが、センサデータまたは製造パラメータのうちの1つまたは複数を含む、
請求項16に記載の非一時的機械可読記憶媒体。
【請求項19】
前記第1の計測データの前記次元を前記低減することが、非線形適合を介したものである、請求項17に記載の非一時的機械可読記憶媒体。
【請求項20】
前記第1の機械学習モデルが、畳み込みニューラルネットワークモデル、深層信念ネットワーク、フィードフォワードニューラルネットワーク、多層ニューラルネットワーク、またはオートエンコーダのうちの1つまたは複数を含む、請求項16に記載の非一時的機械可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、次元低減(dimensionality reduction)に関し、より詳細には、オンウエハ次元低減に関する。
【背景技術】
【0002】
製品は、製造装置を使用して1つまたは複数の製造プロセスを実行することによって作製され得る。たとえば、半導体製造装置が、半導体製造プロセスを介して基板を作製するために使用され得る。製品は、ターゲット用途に適した、特定の特性を伴って作製されるべきである。
【発明の概要】
【0003】
以下は、本開示のいくつかの態様の基本的理解を提供するための、本開示の簡略化された概要である。本概要は本開示の広範な概観ではない。本概要は、本開示の主要なまたは重要な要素を識別するものでも、本開示の特定の実施形態の範囲または特許請求の範囲を定めるものでもない。その唯一の目的は、後で提示されるより詳細な説明の前置きとして、本開示のいくつかの概念を簡略化された形態で提示することである。
【0004】
本開示の一態様では、方法が、第1の製造装置によって作製された第1の基板に関連付けられる第1の計測(metrology)データを受信することを含む。本方法は、第1の訓練された機械学習モデルを生成するために、第1の計測データを含むデータ入力により第1の機械学習モデルを訓練することをさらに含む。第1の訓練された機械学習モデルは、第2の製造装置に関連付けられる1つまたは複数の是正アクション(corrective action)を実行するために、第2の製造装置によって作製された第2の基板に関連付けられる第2の計測データの次元を低減することが可能である。
【0005】
本開示の別の態様では、方法が、製造装置によって作製された基板に関連付けられる計測データを受信することと、圧縮データを生成するために計測データの次元を低減するために、計測データを入力として、第1の訓練された機械学習モデルに提供することとを含む。本方法は、第1の訓練された機械学習モデルから、圧縮データを取得することと、圧縮データに基づいて、製造装置に関連付けられる1つまたは複数の是正アクションの実行を引き起こすこととをさらに含む。
【0006】
本開示の別の態様では、実行されると処理デバイスに処理を実行させる命令を記憶する非一時的機械可読記憶媒体が提供される。処理は、第1の製造装置によって作製された第1の基板に関連付けられる第1の計測データを受信することを含む。処理は、第1の訓練された機械学習モデルを生成するために、第1の計測データを含むデータ入力により第1の機械学習モデルを訓練することをさらに含む。第1の訓練された機械学習モデルは、第2の製造装置に関連付けられる1つまたは複数の是正アクションを実行するために、第2の製造装置によって作製された第2の基板に関連付けられる第2の計測データの次元を低減することが可能である。
【0007】
本開示は、限定ではなく例として、添付の図面の図に示される。
【図面の簡単な説明】
【0008】
【
図1】いくつかの実施形態による、例示的なシステムアーキテクチャを示すブロック図である。
【
図2】A~Bは、いくつかの実施形態による、機械学習モデルのためのデータセットを作成するためのデータセットジェネレータを示す図である。
【
図3】A~Bは、いくつかの実施形態による、予測データを決定することを示すブロック図である。
【
図4A】いくつかの実施形態による、是正アクションを引き起こすための予測データを生成することに関連付けられる方法のフロー図である。
【
図4B】いくつかの実施形態による、是正アクションを引き起こすための予測データを生成することに関連付けられる方法のフロー図である。
【
図4C】いくつかの実施形態による、是正アクションを引き起こすための予測データを生成することに関連付けられる方法のフロー図である。
【
図4D】いくつかの実施形態による、是正アクションを引き起こすための予測データを生成することに関連付けられる方法のフロー図である。
【
図4E】いくつかの実施形態による、是正アクションを引き起こすための予測データを生成することに関連付けられる方法のフロー図である。
【
図5】いくつかの実施形態による、機械学習モデルの処理を示す図である。
【
図6】いくつかの実施形態による、コンピュータシステムを示すブロック図である。
【発明を実施するための形態】
【0009】
(たとえば、ターゲット変数の低減のための、基板に関連付けられるデータの次元を低減するための、およびこの圧縮データの使用のための)オンウエハ(たとえば、基板の計測データ)次元低減に関する技術が、本明細書で説明される。製造装置が、基板(たとえば、ウエハ、半導体)など、製品を作製するために使用され得る。作製された基板の特性は、特定の機能性のためのターゲット特性を満たすべきである。製造パラメータが、ターゲット特性を満たす基板を作製することを試みるように選択されるべきである。基板の得られる特性を引き起こす多くの製造パラメータ(たとえば、ハードウェアパラメータ、プロセスパラメータなど)がある。従来のシステムは、製造パラメータを選択することと、基板を作製することと、基板の特性を決定することと、その特性がターゲット特性に一致するかどうかを決定することとを行うサイクルを実行し、次いで、その特性がターゲット特性に一致するまで、更新された製造パラメータでそのサイクルを繰り返す。このプロセスは、極めて時間がかかり、基板を浪費し、エネルギーを浪費する。選ぶべき極めて多くの製造パラメータと限られた時間および材料とにより、このプロセスは、しばしば、次善の製造パラメータおよび次善の製品を生じる。
【0010】
製造パラメータの選択には、機械学習モデルを使用することができる。多くの製造プロセスにわたって、機械学習モデルは、製造パラメータ(たとえば、処理装置またはハードウェア装置への設定入力、プロセス中のセンサからの読取値など)と、製造パラメータに基づいて作製された基板に関連付けられる計測データとの間の相関を認識するように訓練され得る。訓練された機械学習モデルは、どんな入力がターゲット出力を製造する可能性があるかを予測するために使用され得る。
【0011】
計測データは、極めて多次元(たとえば、高いオンウエハ次元)であり得、たとえば、単一の基板について説明する数千個のデータポイントをもつ。この形態の計測データは、扱いが難しく、データの操作および処理を減速させ、特に、従来、多数のターゲット製造パラメータを正確に予測して、ターゲット特性を満たす基板を生じることを試みるように多くの例に対して学習された、機械学習モデルにとって、問題である。実際問題として、訓練データのそのようなボリュームは、エネルギー消費、プロセッサオーバーヘッド、および使用される帯域幅の増加など、大きいデータセットを扱う際の不便さに加えて、利用不可能であり得る。
【0012】
いくつかの従来のシステムでは、製造パラメータのサブセットが考慮される。たとえば、数百または数千個の他の製造パラメータを無視しながら、温度および圧力が考慮される。これは、製造パラメータのうちの多くが考慮されないので、最適ではない製造パラメータと次善な製品を生じる。処理すべき製造パラメータが少ない場合でも、この従来の手法は、依然として、処理すべき多くの計測データを有し、これは、エネルギー消費、プロセッサオーバーヘッド、および使用される帯域幅の増加を生じる。
【0013】
本開示の方法およびデバイスは、従来の解決策の少なくともこれらの欠点に対処する。いくつかの実施形態では、処理デバイスが、製造装置によって作製された第1の基板の第1の計測データを受信する。処理デバイスは、訓練された機械学習モデルを生成するために第1の機械学習モデルを訓練するためのデータ入力として、第1の計測データを提供する。第1の機械学習モデルを訓練することは、第1の圧縮データを形成するために第1の計測データの次元を低減すること(たとえば、次元を低減するための非線形適合を見つけること)と、第1の圧縮データに基づいて、第1の計測データと実質的に同様である第1の再構築されたデータを生成することとを含み得る。
【0014】
第1の訓練された機械学習モデルは、第2の製造装置によって作製された基板に関連付けられる第2の計測データのデータ入力を受信することと、第2の圧縮データを作製するために第2の計測データの次元を低減することとを行うように構成される。いくつかの実施形態では、訓練された機械学習モデルは、第2の圧縮データを生成するために、第2の計測データにおける非線形相関を使用して第2の計測データの次元を低減する。1つまたは複数の是正アクションが、第2の圧縮データに基づいて実行され得る。
【0015】
第2の計測データは、第2の製造装置によって作製された第2の基板に関連付けられる。第2の製造パラメータ(たとえば、センサデータ、ハードウェア設定ポイント、プロセスレシピなど)が、第2の基板の製造に関連付けられる(たとえば、処理パラメータ、ハードウェアパラメータ、センサデータなど)。いくつかの実施形態では、第2の機械学習モデルが、第2の訓練された機械学習モデルを生成するために、第2の製造パラメータ(たとえば、センサデータ)のデータ入力と第2の圧縮データのターゲット出力とを使用して訓練される。いくつかの実施形態では、(たとえば、プロセスレシピの)製造パラメータが、第2の訓練された機械学習モデルに入力され得、予測された計測データが出力され得る。いくつかの実施形態では、モデルは反転され、ターゲット計測データが反転されたモデルに入力され、製造パラメータが出力される。いくつかの実施形態では、基板を作製することに関連付けられるセンサデータが、訓練されたモデルに入力され、(たとえば、計測処理を実行することを回避するために)予測された計測データが出力される。
【0016】
本開示の態様は、従来の解決策と比較して技術的な利点を生じる。本開示は、大量の計測データの代わりに圧縮データを使用することによって、低減されたプロセッサオーバーヘッド、エネルギー消費、および使用される帯域幅を生じる。本開示は、従来の解決策と比較して計測データのより少ない特徴が使用され得るので、より少ない計測処理を実行することを生じ得る。本開示は、基板のすべてについて計測処理を実行する従来の解決策の代わりに、基板の計測データを予測することを生じ得る。本開示の態様は、より少数の基板からの計測データを使用することをも生じ、これは、従来の解決策と比較して、使用される材料を低減する。本開示は、計測データの次元(たとえば、ターゲット出力変数空間)を低減し得、これは、従来の解決策と比較して、作製および検討されるべきより少ない数の基板を生じる。
【0017】
いくつかの実施形態では、本開示は、第2のモデルを訓練するための圧縮データ(たとえば、圧縮計測データ)を生成するために、機械学習モデルを訓練するためのデータ入力として、および、訓練された機械学習モデルに対する入力として、計測データを提供することについて説明する。いくつかの実施形態では、センサデータは、第2のモデルを訓練するための圧縮データ(たとえば、圧縮センサデータ)を生成するために、機械学習モデルを訓練するためのデータ入力として、および、訓練された機械学習モデルに対する入力として、提供され得る。
【0018】
いくつかの実施形態では、本開示は、第2のモデルを訓練するための圧縮データ(たとえば、圧縮計測データ、圧縮センサデータ)を生成することについて説明する。いくつかの実施形態では、圧縮データは、機械学習モデルを訓練すること以外の他のプロセス(たとえば、分析、ヒューリスティック、ルックアップテーブルを生成すること、圧縮データを他の圧縮データと比較することなど)のために使用され得る。
【0019】
図1は、いくつかの実施形態による、例示的なシステム100(例示的なシステムアーキテクチャ)を示すブロック図である。システム100は、クライアントデバイス120と、製造装置124と、センサ126と、計測装置128と、予測サーバ112と、データストア140とを含む。予測サーバ112は、予測システム110の一部であり得る。予測システム110は、サーバマシン170および180をさらに含み得る。
【0020】
センサ126は、製造装置124に関連付けられる(たとえば、製造装置124によって、基板など、対応する製品を作製することに関連付けられる)センサデータ142を提供し得る。センサデータ142は、装置健全性および/または製品の健全性(たとえば、製品品質)のために使用され得る。製造装置124は、レシピに従って、またはある時間期間にわたって運転を実行して、製品を作製し得る。いくつかの実施形態では、センサデータ142は、温度(たとえば、ヒータ温度)、間隔(SP)、圧力、高周波無線周波数(HFRF:High Frequency Radio Frequency)、静電チャック(ESC)の電圧、電流、流れ、電力、電圧などのうちの1つまたは複数の値を含み得る。センサデータ142は、製造装置124のハードウェアパラメータ(たとえば、設定または構成要素(たとえば、サイズ、タイプなど)、または製造装置124のプロセスパラメータ)などの、製造パラメータに関連付けられるか、または製造パラメータを示し得る。いくつかのハードウェアパラメータに関連付けられるデータが、代わりにまたは追加として、過去の製造パラメータ152と現在の製造パラメータ154とを含み得る、製造パラメータ150として記憶され得る。製造パラメータ150は、製造デバイスに対する入力設定(たとえば、ヒータ電力、ガス流など)を示し得る。センサデータ142および/または製造パラメータ150は、製造装置124が製造プロセスを実行している間に提供され得る(たとえば、製品を処理しているときの装置読取値)。センサデータ142は、各製品(たとえば、各基板)について異なり得る。
【0021】
いくつかの実施形態では、センサデータ142、計測データ160、または製造パラメータ150は、(たとえば、クライアントデバイス120によって、および/または予測サーバ112によって)処理され得る。センサデータ142の処理は特徴を生成することを含み得る。いくつかの実施形態では、特徴は、センサデータ142、計測データ160、および/または製造パラメータ150におけるパターン(たとえば、傾斜、幅、高さ、ピークなど)、あるいはセンサデータ142、計測データ、および/または製造パラメータからの値の組合せ(たとえば、電圧および電流から導出された電力など)である。センサデータ142は特徴を含み得、特徴は、信号処理を実行するために、および/または是正アクションの実行のための予測データ168を取得するために、予測構成要素114によって使用され得る。
【0022】
センサデータ142の各インスタンス(たとえば、セット)は、製品(たとえば、基板)、製造装置のセット、製造装置によって作製された基板のタイプなどに対応し得る。計測データ160および製造パラメータ150の各インスタンスは、同様に、製品、製造装置のセット、製造装置によって作製された基板のタイプなどに対応し得る。データストアは、さらに、異なるデータタイプのセットを関連付ける情報、たとえば、センサデータのセット、計測データのセット、および製造パラメータのセットがすべて、同じ製品、製造装置、基板のタイプなどに関連付けられることを示す情報を記憶し得る。
【0023】
いくつかの実施形態では、予測システム110は、教師あり機械学習を使用して予測データ168を生成し得る(たとえば、教師ありデータセット、予測データ168が計測データを含むなど)。いくつかの実施形態では、予測システム110は、半教師あり学習を使用して予測データ168を生成し得る(たとえば、半教師ありデータセット、予測データ168が予測割合であるなど)。いくつかの実施形態では、予測システム110は、教師なし機械学習を使用して予測データ168を生成し得る(たとえば、教師なしデータセット、クラスタリング、計測データ160に基づくクラスタリングなど)。
【0024】
クライアントデバイス120、製造装置124、センサ126、計測装置128、予測サーバ112、データストア140、サーバマシン170、およびサーバマシン180は、是正アクションを実行するために予測データ168を生成するために、ネットワーク130を介して互いに結合され得る。
【0025】
いくつかの実施形態では、ネットワーク130は、クライアントデバイス120に、予測サーバ112、データストア140、および他の公的に利用可能なコンピューティングデバイスへのアクセスを提供する、パブリックネットワークである。いくつかの実施形態では、ネットワーク130は、クライアントデバイス120に、製造装置124、センサ126、計測装置128、データストア140、および他の私的に利用可能なコンピューティングデバイスへのアクセスを提供する、プライベートネットワークである。ネットワーク130は、1つまたは複数のワイドエリアネットワーク(WAN)、ローカルエリアネットワーク(LAN)、ワイヤードネットワーク(たとえば、イーサネットネットワーク)、ワイヤレスネットワーク(たとえば、802.11ネットワークまたはWi-Fiネットワーク)、セルラーネットワーク(たとえば、ロングタームエボリューション(LTE)ネットワーク)、ルータ、ハブ、スイッチ、サーバコンピュータ、クラウドコンピューティングネットワーク、および/またはそれらの組合せを含み得る。
【0026】
クライアントデバイス120は、パーソナルコンピュータ(PC)、ラップトップ、携帯電話、スマートフォン、タブレットコンピュータ、ネットブックコンピュータ、ネットワーク接続テレビ(「スマートTV」)、ネットワーク接続メディアプレーヤー(たとえば、Blu-rayプレーヤー)、セットトップボックス、オーバーザトップ(OTT)ストリーミングデバイス、オペレータボックスなどのコンピューティングデバイスを含み得る。クライアントデバイス120は是正アクション構成要素122を含み得る。是正アクション構成要素122は、製造装置124に関連付けられる指示のユーザ入力を(たとえば、クライアントデバイス120を介して表示されるグラフィカルユーザインターフェース(GUI)を介して)受信し得る。いくつかの実施形態では、是正アクション構成要素122は、予測システム110に指示を送信し、予測システム110から出力(たとえば、予測データ168)を受信し、出力に基づいて是正アクションを決定し、是正アクションが実装されることを引き起こす。いくつかの実施形態では、是正アクション構成要素122は、製造装置124に関連付けられるセンサデータ142(たとえば、現在のセンサデータ146)を(たとえば、データストア140などから)取得し、製造装置124に関連付けられるセンサデータ142(たとえば、現在のセンサデータ146)を予測システム110に提供する。いくつかの実施形態では、是正アクション構成要素122はセンサデータ142をデータストア140に記憶し、予測サーバ112はセンサデータ142をデータストア140から検索する。いくつかの実施形態では、予測サーバ112は、(1つまたは複数の)訓練された機械学習モデル190の出力(たとえば、予測データ168)をデータストア140に記憶し得、クライアントデバイス120はその出力をデータストア140から検索し得る。いくつかの実施形態では、是正アクション構成要素122は、予測システム110から是正アクションの指示を受信し、是正アクションが実装されることを引き起こす。各クライアントデバイス120は、ユーザが、データ(たとえば、製造装置124に関連付けられる指示、製造装置124に関連付けられる是正アクションなど)を生成すること、閲覧すること、または編集することのうちの1つまたは複数を行うことを可能にする、オペレーティングシステムを含み得る。
【0027】
いくつかの実施形態では、過去の計測データ162は、(たとえば、過去のセンサデータ144および過去の製造パラメータ152に関連付けられる製造パラメータを使用して作製される)製品の過去の特性データに対応し、予測データ168は、(たとえば、現在のセンサデータ146および/または現在の製造パラメータ154によって記録された条件で作製されることになる、または作製されてきた製品の)予測された特性データに関連付けられる。いくつかの実施形態では、予測データ168は、現在のセンサデータ146および/または現在の製造パラメータ154として記録された条件に従って作製されることになる、または作製されてきた製品の予測された計測データ(たとえば、仮想計測データ)である。いくつかの実施形態では、予測データ168は、異常(たとえば、異常な製品、異常な構成要素、異常な製造装置124、異常なエネルギー使用など)と、異常の1つまたは複数の原因との指示である。いくつかの実施形態では、予測データ168は、製造装置124、センサ126、計測装置128などのいくつかの構成要素における、経時的な変化または変動の指示である。いくつかの実施形態では、予測データ168は、製造装置124、センサ126、計測装置128などの構成要素の寿命の終わりの指示である。
【0028】
欠陥製品を生じる製造プロセスを実行することは、時間、エネルギー、製品、構成要素、製造装置124、欠陥を識別し欠陥製品を破棄するコストなどにおいてコストがかかり得る。センサデータ142(たとえば、製品を製造するために使用されているかまたは使用されることになる製造パラメータ)を入力することと、予測データ168の出力を受信することと、予測データ168に基づいて是正アクションを実行することとによって、システム100は、欠陥製品の製造、特定、および廃棄するコストを回避するという技術的利点を有することができる。
【0029】
製造装置124の構成要素の故障を生じる製造プロセスを実行することは、ダウンタイム、製品の損傷、装置の損傷、交換用構成要素の至急発注などにおいてコストがかかり得る。センサデータ142(たとえば、製品を製造するのに使用されているかまたは使用されることになる製造パラメータ)を入力することと、予測データ168の出力を受信することと、予測データ168に基づいて是正アクション(たとえば、構成要素の交換、処理、洗浄など、予測された運用上の保守)を実行することとによって、システム100は、予期しない構成要素の故障、スケジュールされていないダウンタイム、生産性の損失、予期しない装置の故障、製品スクラップなどのうちの1つまたは複数のコストを回避するという技術的利点を有することができる。構成要素、たとえば製造装置124、センサ126、計測装置128などの、経時的な性能をモニタすることが、劣化する構成要素の指示を提供し得る。
【0030】
製造パラメータは、製品を作製することにとって最適ではない可能性があり、これは、リソース(たとえば、エネルギー、冷却剤、ガスなど)の消費量の増加、製品を製造時間の増加、構成要素の故障の増加、欠陥製品の量の増加などというコストがかかる結果を有し得る。センサデータ142を訓練された機械学習モデル190に入力することと、予測データ168の出力を受信することと、製造パラメータを更新する(たとえば、最適な製造パラメータを設定する)是正アクションを(たとえば、予測データ168に基づいて)実行することとによって、システム100は、最適でない製造パラメータというコストがかかる結果を回避するための最適な製造パラメータ(たとえば、ハードウェアパラメータ、プロセスパラメータ、最適な設計)を使用するという技術的利点を有することができる。
【0031】
是正アクションは、計算プロセス制御(CPC)、統計的プロセス制御(SPC)(たとえば、制御中のプロセスを決定するための電子構成要素に対するSPC、構成要素の耐用年数を予測するためのSPC、3シグマのグラフと比較するためのSPCなど)、高度プロセス制御(APC)、モデルベースのプロセス制御、予防運用保守、設計最適化、製造パラメータの更新、製造レシピの更新、フィードバック制御、機械学習修正などのうちの1つまたは複数に関連付けられ得る。
【0032】
いくつかの実施形態では、是正アクションは、アラート(たとえば、予測データ168が、製品、構成要素、または製造装置124の異常など、予測された異常を示す場合、製造プロセスを停止するかまたは実行しないためのアラーム)を提供することを含む。いくつかの実施形態では、是正アクションは、フィードバック制御を提供すること(たとえば、予測された異常を示す予測データ168に応答して、製造パラメータを修正すること)を含む。いくつかの実施形態では、是正アクションは、機械学習を提供すること(たとえば、予測データ168に基づいて、1つまたは複数の製造パラメータを修正すること)を含む。いくつかの実施形態では、是正アクションの実行は、1つまたは複数の製造パラメータに対する更新を引き起こすことを含む。
【0033】
製造パラメータは、ハードウェアパラメータ(たとえば、構成要素を交換すること、特定の構成要素を使用すること、処理チップを交換すること、ファームウェアを更新することなど)、および/またはプロセスパラメータ(たとえば、温度、圧力、流量、速度、電流、電圧、ガス流、リフト速度など)を含み得る。いくつかの実施形態では、是正アクションは、予防運用保守(たとえば、製造装置124の構成要素を交換する、処理する、洗浄するなど)を引き起こすことを含む。いくつかの実施形態では、是正アクションは、設計最適化(たとえば、最適化された製品のために、製造パラメータ、製造プロセス、製造装置124などを更新すること)を引き起こすことを含む。いくつかの実施形態では、是正アクションは、レシピ(たとえば、製造装置124がアイドルモード、スリープモード、ウォームアップモードなどにあること)を更新することを含む。
【0034】
予測サーバ112、サーバマシン170、およびサーバマシン180は、各々、ラックマウントサーバ、ルータコンピュータ、サーバコンピュータ、パーソナルコンピュータ、メインフレームコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、デスクトップコンピュータ、グラフィックス処理ユニット(GPU)、アクセラレータ特定用途向け集積回路(ASIC)(たとえば、テンソル処理ユニット(TPU))など、1つまたは複数のコンピューティングデバイスを含み得る。
【0035】
予測サーバ112は、予測構成要素114を含み得る。いくつかの実施形態では、予測構成要素114は、現在のセンサデータ146、および/または現在の製造パラメータ154を受信(たとえば、クライアントデバイス120から受信、データストア140から検索)し、現在のデータに基づいて、製造装置124に関連付けられる是正アクションを実行するための出力(たとえば、予測データ168)を生成し得る。いくつかの実施形態では、予測構成要素114は、1つまたは複数の訓練された機械学習モデル190を使用して、現在のデータに基づいて是正アクションを実行するための出力を決定し得る。
【0036】
いくつかの実施形態では、計測データ160が、訓練された機械学習モデル190Aに提供され得る。この計測データは、過去の計測データ162または現在の計測データ164であり得る。機械学習モデル190Aは、計測データを次元的に低減するために使用され得る。次元の低減(dimensional reduction)は、非線形適合を使用して実行され得、機械学習モデル190Aが、計測データにおける非線形相関を見つけて、データを次元的に低減して圧縮形態にすることと、圧縮形態から計測データを再構築し、その計測データが入力計測データと実質的に同様であることを保証することによって、非線形適合の妥当性を確認することとを行うように訓練される。機械学習モデル190Aは、人工ニューラルネットワークを含み得る。いくつかの実施形態では、モデル190Aは、深層学習ネットワークをさらに含み得る。機械学習モデル190Aは、畳み込みニューラルネットワークモデル、深層信念ネットワーク、フィードフォワードニューラルネットワーク、多層ニューラルネットワーク、オートエンコーダなどのうちの1つまたは複数を含み得る。
【0037】
過去の計測データ162は、訓練された機械学習モデル190Aに対する入力として使用され得る。出力圧縮過去の計測データ(過去の圧縮データ)が、次いで、たとえば、第2の機械学習モデル190Bを訓練するために、システム100の他の構成要素によって使用され得る。現在の計測データ164は、訓練された機械学習モデル190Aに対する入力として使用され得る。出力圧縮計測データが、次いで、たとえば、第2の訓練された機械学習モデル、モデル190Bへの入力として、システム100の他の構成要素において使用され得る。訓練された機械学習モデル190Aはまた、たとえば、第2の訓練された機械学習モデル190Bからの、圧縮計測データを入力としてとり得る。訓練された機械学習モデル190Aは、次いで、訓練された機械学習モデル190Aに対する入力として与えられた圧縮データから、計測データを実質的に正確に再構築し得る。
【0038】
計測データ160の次元的低減は、完全な計測データセットとともに働くことと比較して、有意な技術的利点を有する。単一の基板の計測データ160は、大量のデータ、場合によっては何千個ものデータポイントとなり得、計算時間およびエネルギー、計測データ160を送信するための帯域幅などに関して、ともに働くのにコストがかかり得る。ターゲット出力データとしての計測データ160により機械学習モデル、たとえば、機械学習モデル190Bを訓練することは、特に、大きい計測データセットから損害を被り得る。機械学習モデル190Bが基板のデータポイントの大きいセットの有用な予測精度を有するために、多数の訓練基板が、モデルを訓練するために使用されることになる。計測を実行することは、使用される時間、使用される計測装置128、消費されるエネルギー、データを処理するための計算費用などに関して、コストがかかり得る。ターゲット出力としての圧縮データ166(たとえば、次元的に低減された圧縮データセット)により機械学習モデル190Bを訓練することは、著しくより少数の基板を使用して、許容できる予測電力、消費されるより少ないエネルギー、より少ないプロセッサオーバーヘッド、および使用されるより少ない帯域幅を取得することができ、これは、これらのコストを削減する。
【0039】
いくつかの実施形態では、モデル190に提供されているデータのタイプが変更され、依然として、本開示の範囲内に入り得ることを理解されよう。いくつかの実施形態では、センサデータ142または製造パラメータ150は、圧縮データ166(たとえば、圧縮センサデータ、圧縮製造データ)を生成するために、次元の低減のために、訓練された機械学習モデル190Aに提供され得る。いくつかの実施形態では、計測データ160を示すデータが、訓練された機械学習モデル190Bに対する入力として提供され得、入力される入力計測データ160を作製することが予測される、センサデータ142または製造パラメータ150を示すデータが、出力され得る。入力計測データ160、出力センサデータ142または製造パラメータ150のいずれか、あるいはその両方が、(たとえば、訓練された機械学習モデル190Aによって圧縮された)圧縮形態のものであり得る。
【0040】
いくつかの実施形態では、予測構成要素114は、現在のセンサデータ146および/または現在の製造パラメータ154を受信し、信号処理を実行して、現在のデータを現在のデータのセットに分解し、現在のデータのセットを訓練された機械学習モデル190Bに対する入力として提供し、訓練された機械学習モデル190Bから予測データ168を示す出力を取得する。いくつかの実施形態では、予測データは、圧縮形態で表された、計測データ(たとえば、現在の計測データ164の予測)を示す。いくつかの実施形態では、圧縮データは、第2の機械学習モデル190Aに送られ得る。機械学習モデル190Aは、いくつかの実施形態では、圧縮データから完全な計測データ(たとえば、再構築されたデータ169)を再構築し得る。
【0041】
いくつかの実施形態では、予測構成要素114は、現在のセンサデータ146および/または現在の製造パラメータ154を受信し、データにおけるパターンを抽出すること、またはデータを新しい複合データに組み合わせることなど、前処理を実行し得る。予測構成要素114は、次いで、データを訓練された機械学習モデル190Bに入力として提供し得る。予測構成要素114は、圧縮形態で表された、予測された計測データを、訓練された機械学習モデル190Bから受信し得る。予測構成要素114は、次いで、圧縮データを訓練された機械学習モデル190Aに提供し得、訓練された機械学習モデル190Aは、次いで、非線形適合を使用して圧縮データを次元的に展開することによって基板計測データを再構築する。予測構成要素114は、次いで、予測された計測データ(たとえば、再構築されたデータ169)を機械学習モデル190Aからの出力として受信し得る。
【0042】
いくつかの実施形態では、訓練された機械学習モデル190Aと訓練された機械学習モデル190Bとは、別個のモデルであり得る。いくつかの実施形態では、訓練された機械学習モデル190Aと訓練された機械学習モデル190Bとは、同じモデル190(たとえば、アンサンブルモデル)であり得る。予測構成要素114は、現在のセンサデータ146および/または現在の製造パラメータ154を受信し、データを訓練された機械学習モデル190(たとえば、アンサンブルモデル)に提供し、訓練された機械学習モデル190から予測データ168を示す出力を取得し得る。
【0043】
いくつかの実施形態では、訓練された機械学習モデル190Aは、過去の計測データ162を使用して訓練され得る。いくつかの実施形態では、訓練された機械学習モデル190Bは、訓練された機械学習モデル190Aによって圧縮形態で表された、過去のセンサデータ144と、過去の製造パラメータ152と、過去の計測データ162とを使用して、訓練され得る。過去のセンサデータ144および/または過去の製造パラメータ152を圧縮するように機械学習モデル190Aを訓練すること、ならびに、過去の計測データ162と訓練された機械学習モデル190Aからの圧縮データとを使用して、機械学習モデル190Bを訓練することなど、データの他の組合せが、本開示の範囲内に入ることを理解されよう。組み合わせられた訓練された機械学習モデル190(たとえば、アンサンブルモデル)が、過去の計測データ162、過去のセンサデータ144、および/または過去の製造パラメータ152を使用して訓練され得る。
【0044】
データストア140は、メモリ(たとえば、ランダムアクセスメモリ)、ドライブ(たとえば、ハードドライブ、フラッシュドライブ)、データベースシステム、あるいはデータを記憶することが可能な別のタイプの構成要素またはデバイスであり得る。データストア140は、複数のコンピューティングデバイス(たとえば、複数のサーバコンピュータ)にわたり得る複数のストレージ構成要素(たとえば、複数のドライブまたは複数のデータベース)を含み得る。データストア140は、センサデータ142、製造パラメータ150、計測データ160、圧縮データ166、および予測データ168を記憶し得る。センサデータ142は、過去のセンサデータ144および現在のセンサデータ146を含み得る。センサデータは、製造プロセスの持続時間にわたるセンサデータの時間トレース、データと物理的センサとの関連付け、平均および複合データなどの前処理されたデータ、ならびに経時的なセンサ性能を示すデータ(すなわち、多くの製造プロセス)を含み得る。製造パラメータ150および計測データ160は同様の特徴を含んでいることがある。過去のセンサデータ144、過去の製造パラメータ152、および過去の計測データ162は、過去のデータ(たとえば、機械学習モデル190を訓練するための少なくとも一部分)であり得る。現在のセンサデータ146は、(たとえば、是正アクションを実行するために)その予測データ168が生成されることになる、現在のデータ(たとえば、過去のデータに続いて、訓練された機械学習モデル190に入力されることになる、少なくとも一部分)であり得る。圧縮データ166は、圧縮形態で表される、過去のデータと現在のデータの両方としての、センサデータ、製造データ、および計測データなど、上記のタイプのデータのいずれかを含み得る。圧縮データ166は、訓練された機械学習モデル190Aによって、センサデータ142、製造パラメータ150、または計測データ160から圧縮されていることがある。
【0045】
いくつかの実施形態では、予測システム110は、サーバマシン170およびサーバマシン180をさらに含む。サーバマシン170は、(1つまたは複数の)機械学習モデル190を訓練、検証、および/または試験するためのデータセット(たとえば、データ入力のセットおよびターゲット出力のセット)を生成することが可能である、データセットジェネレータ172を含む。データセットジェネレータ172のいくつかの処理は、
図2A~
図2Bおよび
図4Aに関して以下で詳細に説明される。いくつかの実施形態では、データセットジェネレータ172は、過去のデータ(たとえば、過去のセンサデータ144、過去の製造パラメータ152、過去の計測データ162、または圧縮データ166としてデータストア140に記憶されたそれらの圧縮バージョン)を、訓練セット(たとえば、過去のデータの60%)、検証セット(たとえば、過去のデータの20%)、および試験セット(たとえば、過去のデータの20%)に分割し得る。いくつかの実施形態では、予測システム110は、(たとえば、予測構成要素114を介して)特徴の複数のセットを生成する。たとえば、特徴の第1のセットが、データセット(たとえば、訓練セット、検証セット、および試験セット)の各々に対応する、センサデータのタイプの第1のセット(たとえば、センサの第1のセット、センサの第1のセットからの値の第1の組合せ、センサの第1のセットからの値における第1のパターンからのもの)に対応し得、特徴の第2のセットが、データセットの各々に対応する、センサデータのタイプの第2のセット(たとえば、センサの第1のセットとは異なるセンサの第2のセット、第1の組合せとは異なる値の第2の組合せ、第1のパターンとは異なる第2のパターンからのもの)に対応し得る。
【0046】
サーバマシン180は、訓練エンジン182、検証エンジン184、選択エンジン185、および/または試験エンジン186を含む。エンジン(たとえば、訓練エンジン182、検証エンジン184、選択エンジン185、および試験エンジン186)は、ハードウェア(たとえば、回路、専用ロジック、プログラマブルロジック、マイクロコード、処理デバイスなど)、(処理デバイス、汎用コンピュータシステム、または専用マシン上で稼働される命令などの)ソフトウェア、ファームウェア、マイクロコード、またはそれらの組合せを指し得る。訓練エンジン182は、データセットジェネレータ172からの訓練セットに関連付けられる特徴の1つまたは複数のセットを使用して機械学習モデル190を訓練することが可能であり得る。訓練エンジン182は、複数の訓練された機械学習モデル190を生成し得、各訓練された機械学習モデル190が、訓練セットの特徴の別個のセット(たとえば、センサの別個のセットからのセンサデータ)に対応する。たとえば、第1の訓練された機械学習モデルは、すべての特徴(たとえば、X1~X5)を使用して訓練されていることがあり、第2の訓練された機械学習モデルは、特徴の第1のサブセット(たとえば、X1、X2、X4)を使用して訓練されていることがあり、第3の訓練された機械学習モデルは、特徴の第1のサブセットと部分的に重複し得る特徴の第2のサブセット(たとえば、X1、X3、X4、およびX5)を使用して訓練されていることがある。データセットジェネレータ172は、訓練された機械学習モデル(たとえば、190A)の出力を受信し、そのデータを収集して訓練、検証、および試験データセットにし、そのデータセットを使用して第2の機械学習モデル(たとえば、190B)を訓練し得る。
【0047】
検証エンジン184は、データセットジェネレータ172からの検証セットの特徴の対応するセットを使用して、訓練された機械学習モデル190を検証することが可能であり得る。たとえば、訓練セットの特徴の第1のセットを使用して訓練された第1の訓練された機械学習モデル190は、検証セットの特徴の第1のセットを使用して検証され得る。検証エンジン184は、検証セットの特徴の対応するセットに基づいて、訓練された機械学習モデル190の各々の精度を決定し得る。検証エンジン184は、しきい値精度を満たさない精度を有する訓練された機械学習モデル190を破棄し得る。いくつかの実施形態では、選択エンジン185は、しきい値精度を満たす精度を有する1つまたは複数の訓練された機械学習モデル190を選択することが可能であり得る。いくつかの実施形態では、選択エンジン185は、訓練された機械学習モデル190のうちの最も高い精度を有する訓練された機械学習モデル190を選択することが可能であり得る。
【0048】
試験エンジン186は、データセットジェネレータ172からの試験セットの特徴の対応するセットを使用して、訓練された機械学習モデル190を試験することが可能であり得る。たとえば、訓練セットの特徴の第1のセットを使用して訓練された第1の訓練された機械学習モデル190は、試験セットの特徴の第1のセットを使用して試験され得る。試験エンジン186は、試験セットに基づいて、訓練された機械学習モデルのすべてのうちの最も高い精度を有する訓練された機械学習モデル190を決定し得る。
【0049】
機械学習モデル190は、データ入力と、対応するターゲット出力(それぞれの訓練入力についての正しい答え)とを含む訓練セットを使用して、訓練エンジン182によって作成される、モデルアーティファクトを指し得る。データ入力をターゲット出力(正しい答え)にマッピングする、データセットにおけるパターンが見つけられ得、機械学習モデル190は、これらのパターンを捕捉するマッピングを提供される。機械学習モデル190は、サポートベクターマシン(SVM)、放射基底関数(RBF)、クラスタリング、教師あり機械学習、半教師あり機械学習、教師なし機械学習、k最近傍法アルゴリズム(k-NN)、線形回帰、ランダムフォレスト、ニューラルネットワーク(たとえば、人工ニューラルネットワーク)などのうちの1つまたは複数を使用し得る。
【0050】
予測構成要素114は、現在のセンサデータ146を訓練された機械学習モデル190に提供し得、訓練された機械学習モデル190を入力に対して稼働して、1つまたは複数の出力を取得し得る。予測構成要素114は、訓練された機械学習モデル190の出力から予測データ168を決定(たとえば、抽出)することが可能であり得、予測データ168が、現在のセンサデータ146および/または現在の製造パラメータ154で製造装置124を使用して作製されたかまたは作製されることになる製品についての入力データに関連付けられるプロセスの正確な予測子であるという、信頼性のレベルを示す出力からの信頼性データを決定(たとえば、抽出)し得る。予測構成要素114または是正アクション構成要素122は、信頼性データを使用して、予測データ168に基づいて、製造装置124に関連付けられる是正アクションを引き起こすかどうかを決め得る。
【0051】
信頼性データは、予測データ168が、入力データの少なくとも一部分に関連付けられる製品についての正確な予測であるという、信頼度のレベルを含むかまたは示し得る。一例では、信頼度のレベルは、両端値を含む0から1の間の実数であり、0は、予測データ168が、入力データに従って処理される製品についての正確な予測であるという信頼がないことを示し、1は、予測データ168が、入力データに従って処理される製品の特性を正確に予測するという絶対的な信頼を示す。いくつかの実施形態では、入力データは、代わりに、計測データ、出力された予測されたセンサデータおよび/または製造パラメータであり得、信頼度データは、入力データの特性をもつ製品が、出力データに関連付けられる処理から生じることになるという、信頼度のレベルである。インスタンスの所定の数(たとえば、インスタンスの割合、インスタンスの頻度、インスタンスの合計数など)に関して、信頼度データがしきい値レベルを下回る信頼度のレベルを示すことに応答して、予測構成要素114は、訓練された機械学習モデル190が、(たとえば、現在のセンサデータ146、現在の製造パラメータ154、現在の計測データ164などに基づいて)再訓練されることを引き起こし得る。
【0052】
限定ではなく説明の目的で、本開示の態様は、過去のデータ(たとえば、過去のセンサデータ144、過去の製造パラメータ152、および過去の計測データ162)を使用して、1つまたは複数の機械学習モデル190を訓練することと、現在のデータ(たとえば、現在のセンサデータ146、現在の製造パラメータ154、および現在の計測データ164)を1つまたは複数の訓練された機械学習モデル190に入力して、予測データ168を決定することとについて説明する。他の実施形態では、ヒューリスティックモデルまたはルールベースのモデルが、(たとえば、訓練された機械学習モデルを使用せずに)予測データ168を決定するために使用される。このルールベースのモデルに対する入力は、訓練された機械学習モデル190Aによって圧縮された、圧縮データであり得る。予測構成要素114は、過去のセンサデータ144、過去の製造パラメータ152、および過去の計測データ162をモニタし得る。
図2A~
図2Bのデータ入力210に関して説明された情報のいずれも、モニタされるか、または場合によっては、ヒューリスティックまたはルールベースのモデルにおいて使用され得る。
【0053】
いくつかの実施形態では、クライアントデバイス120、予測サーバ112、サーバマシン170、およびサーバマシン180の機能は、より少数のマシンによって提供され得る。たとえば、いくつかの実施形態では、サーバマシン170および180が単一のマシンに統合され得、いくつかの他の実施形態では、サーバマシン170、サーバマシン180、および予測サーバ112が単一のマシンに統合され得る。いくつかの実施形態では、クライアントデバイス120および予測サーバ112が単一のマシンに統合され得る。
【0054】
概して、一実施形態ではクライアントデバイス120、予測サーバ112、サーバマシン170、およびサーバマシン180によって実行されるものとして説明される機能は、適切な場合、他の実施形態では、予測サーバ112上でも実行され得る。さらに、特定の構成要素のものとされる機能性は、一緒に動作する、異なるまたは複数の構成要素によって実行され得る。たとえば、いくつかの実施形態では、予測サーバ112は、予測データ168に基づいて是正アクションを決定し得る。別の例では、クライアントデバイス120は、訓練された機械学習モデルからの出力に基づいて予測データ168を決定し得る。
【0055】
さらに、特定の構成要素の機能は、一緒に動作する、異なるまたは複数の構成要素によって実行され得る。予測サーバ112、サーバマシン170、またはサーバマシン180のうちの1つまたは複数は、適切なアプリケーションプログラミングインターフェース(API)を通して、他のシステムまたはデバイスに提供されるサービスとしてアクセスされ得る。
【0056】
実施形態では、「ユーザ」が、単一の個人として表され得る。しかしながら、本開示の他の実施形態は、「ユーザ」が、複数のユーザおよび/または自動ソースによって制御されるエンティティであることを包含する。たとえば、管理者のグループとして統合された(federated)個人ユーザのセットが、「ユーザ」とみなされ得る。
【0057】
本開示の実施形態は、データ品質評価、機能強化、モデル評価、仮想計測(VM)、予測保守(PdM:Predictive Maintenance)、制限最適化などに適用され得る。
【0058】
本開示の実施形態は、製造施設(たとえば、半導体製造施設)において是正アクションを実行するために、予測データ168を生成することに関して説明されるが、実施形態はまた、訓練された機械学習モデルを使用してデータを圧縮形態に次元削減することによって、改善されたデータ処理に一般に適用され得る。実施形態は、異なるタイプのデータに基づいて、特徴づけ、モニタすることに、一般に適用され得る。
【0059】
図2A~
図2Bは、いくつかの実施形態による、機械学習モデル(たとえば、
図1のモデル190)のためのデータセットを作成するための1つまたは複数の例示的なデータセットジェネレータ272(たとえば、
図1のデータセットジェネレータ172)である。各データセットジェネレータ272は、
図1のサーバマシン170の一部であり得る。いくつかの実施形態では、
図2A~
図2Bの両方のデータセットジェネレータ272は、同じデータセットジェネレータである。いくつかの実施形態では、
図2A~
図2Bの各々からのデータセットジェネレータは、別個のデータセットジェネレータである。
【0060】
図2Aを参照すると、データセットジェネレータ272A(たとえば、
図1のデータセットジェネレータ172)を含んでいるシステム200Aが、機械学習モデル(たとえば、
図1のモデル190A)のためのデータセットを作成する。データセットジェネレータ272Aは、過去の計測データ262(たとえば、
図1の過去の計測データ162)を使用してデータセットを作成し得る。システム200Aは、教師なし機械学習モデル(たとえば、
図1の機械学習モデル190A)を訓練、試験、および検証するためのデータセットを生成するために使用され得る。機械学習モデルは、いくつかの実施形態では、教師あり機械学習の場合のようにターゲット出力データセットを供給されない。機械学習モデルは、何らかの適合に従って入力データを操作し、次いで、適合を逆転させて入力データと実質的に同様のデータを再構築するように、訓練され得る。データの操作は、次元的低減であり、入力データを圧縮形態にコンバートし得る。次元削減のために使用される適合は非線形適合であり得る。
図2Aのシステム200Aは、データセットジェネレータ272Aとデータ入力210Aとを示す。
【0061】
図2Bを参照すると、データセットジェネレータ272B(たとえば、
図1のデータセットジェネレータ172)を含んでいるシステム200Bが、機械学習モデル(たとえば、
図1のモデル190B)のためのデータセットを作成する。データセットジェネレータ272Bは、過去のセンサデータ244と過去の製造パラメータ252とを使用してデータセットを作成し得る。これらのデータセットは、機械学習モデル、たとえば、
図1のモデル190Bに、訓練入力として供給され得る。データセットジェネレータ272Bはまた、訓練中に圧縮計測データを機械学習モデルにターゲット出力として提供し得る。圧縮計測データは、訓練された機械学習モデル(たとえば、
図1のモデル190A)によって圧縮された過去の計測データ(たとえば、
図1の過去の計測データ162)を示し得る。
【0062】
データの異なる組合せが、圧縮され、本明細書で開示される様々な機械学習モデルにおいて訓練入力およびターゲット変数として使用されることは、本開示の範囲内に入る。たとえば、機械学習モデルは、製造パラメータまたは計測データが圧縮形態のものである、その特性が入力計測データに一致する、後続の基板の作製を生じることが予測される、製造パラメータを出力として生成するように、過去の計測データに対して訓練され得、依然として、本開示の範囲内に入る。
【0063】
図2A~
図2Bを参照すると、いくつかの実施形態では、データセットジェネレータ272は、1つまたは複数のデータ入力210(たとえば、訓練入力、検証入力、試験入力)を含み、データ入力210に対応する1つまたは複数のターゲット出力220を含み得る、データセット(たとえば、訓練セット、検証セット、試験セット)を生成する。データセットはまた、データ入力210をターゲット出力220にマッピングするマッピングデータを含み得る。データ入力210は、「特徴」、「属性」、または「情報」と呼ばれることもある。いくつかの実施形態では、データセットジェネレータ272は、訓練エンジン182、検証エンジン184、または試験エンジン186にデータセットを提供し得、データセットが、機械学習モデル190を訓練、検証、または試験するために使用される。訓練セットを生成するいくつかの実施形態が、
図4Bに関してさらに説明され得る。
【0064】
いくつかの実施形態では、データセットジェネレータ272は、教師なし機械学習モデルに供給するために、データ入力210を生成し、ターゲット出力220を生成しない(たとえば、データセットジェネレータ272Aは、過去の計測データ262A~262Zのセットをデータ入力210Aとして生成する)。いくつかの実施形態では、データセットジェネレータ272は、データ入力210とターゲット出力220とを生成する(たとえば、データセットジェネレータ272Bは、過去のセンサデータ244A~244Zのセットと過去の製造パラメータ252A~252Zのセットとをデータ入力210Bとして生成し、圧縮データ230Bをターゲット出力220Bとして生成する)。いくつかの実施形態では、データ入力210は、過去のセンサデータ244または過去の製造パラメータ252の1つまたは複数のセットを含み得る。過去のセンサデータ244または過去の製造パラメータ252の各インスタンスは、1つまたは複数のタイプのセンサからのセンサデータのうちの1つまたは複数、1つまたは複数のタイプのセンサからのセンサデータの組合せ、1つまたは複数のタイプのセンサからのセンサデータからのパターン、1つまたは複数の製造パラメータからの製造パラメータ、いくらかの製造パラメータデータといくらかのセンサデータとの組合せなどを含み得る。
【0065】
いくつかの実施形態では、データセットジェネレータ272は、第1の機械学習モデルを訓練、検証、または試験するために、過去のセンサデータ244Aおよび/または過去の製造パラメータ252Aの第1のセットに対応する第1のデータ入力を生成し得、データセットジェネレータ272は、第2の機械学習モデルを訓練、検証、または試験するために、過去のセンサデータ244Bおよび/または過去の製造パラメータ252Bの第2のセットに対応する第2のデータ入力を生成し得る。
【0066】
いくつかの実施形態では、データセットジェネレータ272は、(たとえば、回帰問題のための分類アルゴリズムにおいて使用するために)データ入力210またはターゲット出力220のうちの1つまたは複数を離散化(たとえば、セグメント化)し得る。データ入力210またはターゲット出力220の離散化(たとえば、スライディングウィンドウを介したセグメンテーション)は、変数の連続値を離散値に変換し得る。いくつかの実施形態では、データ入力210についての離散値は、ターゲット出力220(たとえば、離散圧縮データ230B)を取得するための離散過去のセンサデータ244を示す。
【0067】
機械学習モデルを訓練、検証、または試験するためのデータ入力210およびターゲット出力220は、特定の施設についての(たとえば、特定の半導体製造施設についての)情報を含み得る。たとえば、過去のセンサデータ244および圧縮データ230Bは、同じ製造施設についてのものであり得る。別の例では、過去の製造パラメータ252および圧縮データ230Bは、同じ製造施設についてのものであり得る。
【0068】
いくつかの実施形態では、機械学習モデルを訓練するために使用される情報は、特定の特性を有する製造設備の特定のタイプの製造装置(たとえば、
図1の製造装置124)からのものであり、訓練された機械学習モデルが、特定のグループの特性を共有する1つまたは複数の構成要素に関連付けられる現在のセンサデータ(たとえば、現在のセンサデータ146)のための入力に基づいて、製造装置124の特定のグループについての成果を決定することを可能にし得る。いくつかの実施形態では、機械学習モデルを訓練するために使用される情報は、2つ以上の製造施設からの構成要素のためのものであり得、訓練された機械学習モデルが、1つの製造施設からの入力に基づいて構成要素についての成果を決定することを可能にし得る。
【0069】
いくつかの実施形態では、データセットを生成し、そのデータセットを使用して機械学習モデル190を訓練、検証、または試験することの後に、機械学習モデル190は、さらに、訓練、検証、または試験、または調整(たとえば、ニューラルネットワークの接続重みなど、機械学習モデル190の入力データに関連付けられる重みを調整すること)され得る。
【0070】
図3A~
図3Bは、いくつかの実施形態による、出力データ(たとえば、
図1の予測データ168)を生成するためのシステム300を示すブロック図である。システム300は、入力データを低減された次元の形態に圧縮すること(たとえば、
図1のモデル190A)、および/または、予測データ368に基づいて、製造装置124に関連付けられる是正アクションを決定すること(たとえば、
図1のモデル190B)を行うために使用され得る。
【0071】
図3Aを参照すると、ブロック310Aにおいて、システム300A(たとえば、
図1の予測システム110の構成要素)は、訓練セット302A、検証セット304A、および試験セット306Aを生成するために、過去のデータ(たとえば、
図1のモデル190Aのための過去の計測データ362)のデータ分割を、(たとえば、
図1のサーバマシン170のデータセットジェネレータ172を介して)実行する。たとえば、訓練セットは、過去のデータの60%であり得、検証セットは、過去のデータの20%であり得、試験セットは、過去のデータの20%であり得る。
【0072】
ブロック312Aにおいて、システム300Aは、訓練セット302Aを使用して、(たとえば、
図1の訓練エンジン182を介して)モデル訓練を実行する。システム300Aは、訓練セット302Aの特徴の複数のセット(たとえば、訓練セット302Aの特徴の第1のセット、訓練セット302Aの特徴の第2のセットなど)を使用して複数のモデルを訓練し得る。たとえば、システム300は、訓練セットにおける特徴の第1のセット(たとえば、基板のサブセットについての計測データのサブセット)を使用して、第1の訓練された機械学習モデルを生成することと、訓練セットにおける特徴の第2のセット(たとえば、データ選択、基板選択、またはその両方に関して異なる、第1の機械学習モデルを訓練するために使用されるデータとは異なるデータ)を使用して、第2の訓練された機械学習モデルを生成することとを行うように、機械学習モデルを訓練し得る。いくつかの実施形態では、第1の訓練された機械学習モデルと第2の訓練された機械学習モデルとは、(たとえば、第1または第2の訓練された機械学習モデル自体よりも優れた予測子であり得る)第3の訓練された機械学習モデルを生成するために組み合わせられ得る。いくつかの実施形態では、モデルを比較することにおいて使用される特徴のセットが重複し得る(たとえば、一方のモデルが基板のセットにより訓練され得、基板のセットは、他方のモデルを訓練するために使用されるセットと共通するいくつかの基板を有する)。いくつかの実施形態では、特徴の様々な並べ替えをもつモデルとモデルの組合せとを含む、数百個のモデルが生成され得る。
【0073】
ブロック314Aにおいて、システム300Aは、検証セット304Aを使用して、(たとえば、
図1の検証エンジン184を介して)モデル検証を実行する。システム300Aは、検証セット304Aの特徴の対応するセットを使用して、訓練されたモデルの各々を検証し得る。たとえば、検証セット304Aは、基板の異なるセットを別にすれば、機械学習モデルを訓練するために使用される計測データの同じサブセットを使用し得る。計測データのサブセットは、計測データのタイプ、データポイントのサブセット、異なる前処理方法などであり得る。いくつかの実施形態では、システム300Aは、ブロック312Aにおいて生成された数百個のモデル(たとえば、特徴の様々な並べ替えをもつモデル、モデルの組合せなど)を検証し得る。ブロック314Aにおいて、システム300Aは、(たとえば、モデル検証を介して)1つまたは複数の訓練されたモデルの各々の精度を決定し得、訓練されたモデルのうちの1つまたは複数が、しきい値精度を満たす精度を有するかどうかを決定し得る。訓練されたモデルのいずれも、しきい値精度を満たす精度を有しないと決定することに応答して、フローはブロック312Aに戻り、システム300Aは、訓練セットの特徴の異なるセットを使用してモデル訓練を実行する。訓練されたモデルのうちの1つまたは複数が、しきい値精度を満たす精度を有すると決定することに応答して、フローはブロック316Aに続く。システム300Aは、(たとえば、検証セットに基づいて)しきい値精度を下回る精度を有する訓練された機械学習モデルを破棄し得る。
【0074】
ブロック316Aにおいて、システム300Aは、しきい値精度を満たす1つまたは複数の訓練されたモデルのうちどれが最も高い精度を有するかを決定するために、(たとえば、
図1の選択エンジン185を介して)モデル選択を実行する(たとえば、ブロック314Aの検証に基づいた、選択されたモデル308A)。しきい値精度を満たす訓練されたモデルのうちの2つ以上が同じ精度を有すると決定することに応答して、フローはブロック312Aに戻り得、システム300Aは、最も高い精度を有する訓練されたモデルを決定するための特徴のさらに改良されたセットに対応する、さらに改良された訓練セットを使用して、モデル訓練を実行する。
【0075】
ブロック318Aにおいて、システム300Aは、選択されたモデル308Aを試験するために、試験セット306Aを使用して、(たとえば、
図1の試験エンジン186を介して)モデル試験を実行する。システム300Aは、試験セットにおける特徴の第1のセット(たとえば、基板の第3のセットについての計測特徴の同じサブセット)を使用して、第1の訓練された機械学習モデルを試験して、(たとえば、試験セット306Aの特徴の第1のセットに基づいて)第1の訓練された機械学習モデルがしきい値精度を満たすと決定し得る。選択されたモデル308Aの精度がしきい値精度を満たさない(たとえば、選択されたモデル308Aが、訓練セット302Aおよび/または検証セット304Aに過剰適合され、試験セット306Aなどの他のデータセットに適用可能でない)ことに応答して、フローはブロック312Aに続き、システム300Aは、特徴の異なるセットに対応する可能性がある異なる訓練セットを使用するモデル訓練(たとえば、再訓練)、または訓練、検証、および試験セットにスプリットされた基板の再編成を実行する。試験セット306Aに基づいて、選択されたモデル308Aが、しきい値精度を満たす精度を有すると決定することに応答して、フローはブロック320Aに続く。少なくともブロック312Aにおいて、モデルは、予測を行うために過去のデータにおけるパターンを学習し得、ブロック318Aにおいて、システム300Aは、モデルを残りのデータ(たとえば、試験セット306A)に適用して、予測を試験し得る。
【0076】
ブロック320Aにおいて、システム300Aは、訓練されたモデル(たとえば、選択されたモデル308A)を使用して、過去の計測データ363(たとえば、
図1の過去の計測データ162)を受信し、訓練されたモデルの出力から、圧縮データ366(たとえば、
図1の予測データ168)を決定(たとえば、抽出)して、アクションを実行する(たとえば、圧縮データ366に鑑みて
図1の製造装置124に関連する是正アクションを実行する、別のモデルに、潜在的に機械学習モデルに、圧縮データ366を提供するなど)。いくつかの実施形態では、訓練された機械学習モデルに対する入力として使用される過去の計測データ363は、機械学習モデルを訓練するために使用される過去の計測データ362と同じであり得る。いくつかの実施形態では、過去の計測データのセットは、重複し得るか、または共通するデータを有しないことがある。いくつかの実施形態では、計測データのサブセットのみが、訓練された機械学習モデルに対する入力として使用され得る。データのサブセットは、機械学習モデルを訓練するために使用されるデータのサブセットに対応し得る。
【0077】
図3Bを参照すると、ブロック310Bにおいて、システム300B(たとえば、
図1の予測システム110の構成要素)は、訓練セット302B、検証セット304B、および試験セット306Bを生成するために、過去のデータ(たとえば、
図1のモデル190Bのための基板の計測データを示す過去のセンサデータ360および圧縮データ366)のデータ分割を、(たとえば、
図1のサーバマシン170のデータセットジェネレータ172を介して)実行する。簡潔な表現の目的で、データのこの組合せのみをもつ実施形態が、
図3Bに関して示され、説明されるが、他の組合せが可能であり、本開示の範囲内に入ることを理解されよう。たとえば、製造パラメータは、センサデータの代わりにまたはセンサデータとともに使用され得、入力としてのセンサデータの使用と、出力としての圧縮計測データの使用とは、逆にされ得、データのより多いまたは異なるカテゴリーが、圧縮形態のものであり得る。
【0078】
訓練セット302B、検証セット304B、および試験セット306Bの生成は、特定の用途のために調整され得る。たとえば、訓練セットは、過去のデータの60%であり得、検証セットは、過去のデータの20%であり得、試験セットは、過去のデータの20%であり得る。システム300Bは、訓練セット、検証セット、および試験セットの各々について特徴の複数のセットを生成し得る。たとえば、過去のデータが、20個のセンサ(たとえば、
図1のセンサ126)と100個の製品(たとえば、20個のセンサからのセンサデータに各々対応する製品)とからのセンサデータから導出された特徴を含む場合、特徴の第1のセットがセンサ1~10であり得、特徴の第2のセットがセンサ11~20であり得、訓練セットは製品1~60であり得、検証セットは製品61~80であり得、試験セットは製品81~100であり得る。この例では、訓練セットの特徴の第1のセットは、製品1~60についてのセンサ1~10からのセンサデータであることになる。
【0079】
ブロック312Bにおいて、システム300Bは、訓練セット302Bを使用して、(たとえば、
図1の訓練エンジン182を介して)モデル訓練を実行する。システム300Bは、訓練セット302Bの特徴の複数のセット(たとえば、訓練セット302Bの特徴の第1のセット、訓練セット302Bの特徴の第2のセットなど)を使用して複数のモデルを訓練し得る。たとえば、システム300Bは、訓練セットにおける特徴の第1のセット(たとえば、製品1~60についてのセンサ1~10からのセンサデータ)を使用して、第1の訓練された機械学習モデルを生成することと、訓練セットにおける特徴の第2のセット(たとえば、製品1~60についてのセンサ11~20からのセンサデータ)を使用して、第2の訓練された機械学習モデルを生成することとを行うように、機械学習モデルを訓練し得る。いくつかの実施形態では、第1の訓練された機械学習モデルと第2の訓練された機械学習モデルとは、(たとえば、第1または第2の訓練された機械学習モデル自体よりも優れた予測子であり得る)第3の訓練された機械学習モデルを生成するために組み合わせられ得る。いくつかの実施形態では、モデルを比較することにおいて使用される特徴のセットが重複し得る(たとえば、特徴の第1のセットがセンサ1~15からのセンサデータであり、特徴の第2のセットがセンサ5~20からのセンサデータである)。いくつかの実施形態では、特徴の様々な並べ替えをもつモデルとモデルの組合せとを含む、数百個のモデルが生成され得る。
【0080】
ブロック314Bにおいて、システム300Bは、検証セット304Bを使用して、(たとえば、
図1の検証エンジン184を介して)モデル検証を実行する。システム300Bは、検証セット304Bの特徴の対応するセットを使用して、訓練されたモデルの各々を検証し得る。たとえば、システム300Bは、検証セットにおける特徴の第1のセット(たとえば、製品61~80についてのセンサ1~10からのセンサデータ)を使用して、第1の訓練された機械学習モデルを検証することと、検証セットにおける特徴の第2のセット(たとえば、製品61~80についてのセンサ11~20からのセンサデータ)を使用して、第2の訓練された機械学習モデルを検証することとを行い得る。いくつかの実施形態では、システム300Bは、ブロック312Bにおいて生成された数百個のモデル(たとえば、特徴の様々な並べ替えをもつモデル、モデルの組合せなど)を検証し得る。ブロック314Bにおいて、システム300Bは、(たとえば、モデル検証を介して)1つまたは複数の訓練されたモデルの各々の精度を決定し得、訓練されたモデルのうちの1つまたは複数が、しきい値精度を満たす精度を有するかどうかを決定し得る。訓練されたモデルのいずれも、しきい値精度を満たす精度を有しないと決定することに応答して、フローはブロック312Bに戻り、システム300Bは、訓練セットの特徴の異なるセットを使用してモデル訓練を実行する。訓練されたモデルのうちの1つまたは複数が、しきい値精度を満たす精度を有すると決定することに応答して、フローはブロック316Bに続く。システム300Bは、(たとえば、検証セットに基づいて)しきい値精度を下回る精度を有する訓練された機械学習モデルを破棄し得る。
【0081】
ブロック316Bにおいて、システム300Bは、しきい値精度を満たす1つまたは複数の訓練されたモデルのうちどれが最も高い精度を有するかを決定するために、(たとえば、
図1の選択エンジン185を介して)モデル選択を実行する(たとえば、ブロック314Bの検証に基づいた、選択されたモデル308B)。しきい値精度を満たす訓練されたモデルのうちの2つ以上が同じ精度を有すると決定することに応答して、フローはブロック312Bに戻り得、システム300Bは、最も高い精度を有する訓練されたモデルを決定するための特徴のさらに改良されたセットに対応する、さらに改良された訓練セットを使用して、モデル訓練を実行する。
【0082】
ブロック318Bにおいて、システム300Bは、選択されたモデル308Bを試験するために、試験セット306Bを使用して、(たとえば、
図1の試験エンジン186を介して)モデル試験を実行する。システム300Bは、試験セットにおける特徴の第1のセット(たとえば、製品81~100についてのセンサ1~10からのセンサデータ)を使用して、第1の訓練された機械学習モデルを試験して、(たとえば、試験セット306Bの特徴の第1のセットに基づいて)第1の訓練された機械学習モデルがしきい値精度を満たすと決定し得る。選択されたモデル308Bの精度がしきい値精度を満たさない(たとえば、選択されたモデル308Bが、訓練セット302Bおよび/または検証セット304Bに過剰適合され、試験セット306Bなどの他のデータセットに適用可能でない)ことに応答して、フローはブロック312Bに続き、システム300Bは、特徴の異なるセットに対応する異なる訓練セット(たとえば、異なるセンサからのセンサデータ)を使用するモデル訓練(たとえば、再訓練)を実行する。試験セット306Bに基づいて、選択されたモデル308Bが、しきい値精度を満たす精度を有すると決定することに応答して、フローはブロック320Bに続く。少なくともブロック312Bにおいて、モデルは、予測を行うために過去のデータにおけるパターンを学習し得、ブロック318Bにおいて、システム300Bは、モデルを残りのデータ(たとえば、試験セット306B)に適用して、予測を試験し得る。
【0083】
ブロック320Bにおいて、システム300Bは、訓練されたモデル(たとえば、選択されたモデル308B)を使用して、現在のセンサデータ352(たとえば、
図1の現在のセンサデータ146)を受信し、訓練されたモデルの出力から、予測データ368(たとえば、
図1の予測データ168)を決定(たとえば、抽出)して、信号処理を実行するか、または製造装置124に関連付けられる是正アクションを実行する。いくつかの実施形態では、現在のセンサデータ352は、過去のセンサデータにおける同じタイプの特徴に対応し得る。いくつかの実施形態では、現在のセンサデータ352は、選択されたモデル308Bを訓練するために使用された過去のセンサデータにおける特徴のタイプのサブセットと同じタイプの特徴に対応する。
【0084】
いくつかの実施形態では、現在のデータが受信される。現在のデータは、現在のセンサデータ352(たとえば、
図1の現在のセンサデータ146)および/または現在の計測データ350を含み得る。上記で
図3Aに関して説明されたように、描かれ、説明されるものは、データがどのように処理され得るかの例示的な一実施形態であるが、他のデータ組合せが可能であり、本開示の範囲内に入ることを理解されよう。測定された計測データ、たとえば、現在の計測データ350はまた、現在のセンサデータ352とともにブロック312Bにおけるモデル訓練に対して入力され得る。モデル308Bは、現在のデータに基づいて再訓練される。いくつかの実施形態では、新しいモデルが、現在の計測データ350と現在のセンサデータ352とに基づいて訓練される。
【0085】
いくつかの実施形態では、行為310~320のうちの1つまたは複数は、様々な順序で、ならびに/または本明細書で提示および説明されない他の行為とともに行われ得る。いくつかの実施形態では、行為310~320のうちの1つまたは複数は実行されないことがある。たとえば、いくつかの実施形態では、ブロック310のデータ分割、ブロック314のモデル検証、ブロック316のモデル選択、またはブロック318のモデル試験のうちの1つまたは複数は、実行されないことがある。
【0086】
図4A~
図4Eは、いくつかの実施形態による、是正アクションを引き起こすための予測データを生成することに関連付けられる方法400A~400Eのフロー図である。方法400A~400Eは、ハードウェア(たとえば、回路、専用ロジック、プログラマブルロジック、マイクロコード、処理デバイスなど)、(処理デバイス、汎用コンピュータシステム、または専用マシン上で実行される命令などの)ソフトウェア、ファームウェア、マイクロコード、またはそれらの組合せを含み得る処理ロジックによって実行され得る。いくつかの実施形態では、方法400A~400Eは、部分的に、予測システム110によって実行され得る。方法400Aは、部分的に、予測システム110(たとえば、
図1のサーバマシン170およびデータセットジェネレータ172、
図2A~
図2Bのデータセットジェネレータ272)によって実行され得る。予測システム110は、本開示の実施形態に従って、機械学習モデルを訓練すること、検証すること、または試験することのうちの少なくとも1つを行うためのデータセットを生成するために、方法400Aを使用し得る。方法400Bおよび400Dは、サーバマシン180(たとえば、訓練エンジン182など)によって実行され得る。方法400Cおよび400Eは、予測サーバ112(たとえば、予測構成要素114)によって実行され得る。いくつかの実施形態では、非一時的記憶媒体が、(たとえば、予測システム110の、サーバマシン180の、予測サーバ112の、などの)処理デバイスによって実行されると、処理デバイスに方法400A~400Eのうちの1つまたは複数を実行させる、命令を記憶する。
【0087】
説明を簡単にするために、方法400A~400Eは、一連の処理として示され、説明される。ただし、本開示による処理は、様々な順序でおよび/または同時に、ならびに本明細書で提示および説明されない他の処理とともに行われ得る。さらに、示された処理のすべてが、開示された主題に従って方法400A~400Eを実施するために実行されるとは限らない。さらに、当業者は、方法400A~400Eが、代替的に、状態図またはイベントを介して一連の相互に関係する状態として表され得ることを理解し、諒解するであろう。
【0088】
図4Aは、いくつかの実施形態による、予測データ(たとえば、
図1の予測データ168)を生成するための機械学習モデルのためのデータセットを生成するための方法400Aのフロー図である。
【0089】
図4Aを参照すると、いくつかの実施形態では、ブロック401において、方法400Aを実施する処理ロジックは、訓練セットTを空のセットに初期化する。
【0090】
ブロック402において、処理ロジックは、センサデータ(たとえば、
図1の過去のセンサデータ144、
図2Bの過去のセンサデータ244)、計測データ(たとえば、
図1の過去の計測データ162)、製造パラメータ(たとえば、
図1の過去の製造パラメータ152)などのうちの1つまたは複数を含み得る、第1のデータ入力(たとえば、第1の訓練入力、第1の検証入力)を生成する。いくつかの実施形態では、(たとえば、
図3Bに関して説明されたように)第1のデータ入力は、データのタイプについての特徴の第1のセットを含み得、第2のデータ入力が、データのタイプについての特徴の第2のセットを含み得る。
【0091】
いくつかの実施形態では、ブロック403において、処理ロジックは、データ入力(たとえば、第1のデータ入力)のうちの1つまたは複数のための第1のターゲット出力を生成する。いくつかの実施形態では、第1のターゲット出力は、(たとえば、モデル190Bのための)計測データ(たとえば、
図1の過去の計測データ162または圧縮データ166)である。いくつかの実施形態では、ターゲット出力は生成されない(たとえば、入力データの次元を圧縮形態に低減することが可能な教師なし機械学習モデルが、ターゲット出力が提供されることを必要とするのではなく、完全な次元のデータを再構築し、再構築されたデータを入力データと比較し得る)。
【0092】
ブロック404において、処理ロジックは、随意に、入力/出力マッピングを示すマッピングデータを生成する。入力/出力マッピング(またはマッピングデータ)は、データ入力(たとえば、本明細書で説明されるデータ入力のうちの1つまたは複数)、データ入力のためのターゲット出力、および(1つまたは複数の)データ入力とターゲット出力との間の関連付けを指し得る。ターゲット出力が提供されない機械学習モデルに関連するなど、いくつかの実施形態では、ブロック404は実行されないことがある。
【0093】
ブロック405において、いくつかの実施形態では、処理ロジックは、ブロック404において生成されたマッピングデータをデータセットTに追加する。
【0094】
ブロック406において、処理ロジックは、データセットTが機械学習モデル190を訓練、検証、および/または試験することのうちの少なくとも1つのために十分であるかどうかに基づいて、分岐する。十分である場合、実行はブロック407に進み、そうでなければ、実行はブロック402に戻って続く。いくつかの実施形態では、データセットTの十分性は、単に、データセットにおける、いくつかの実施形態では出力にマッピングされる、入力の数に基づいて決定され得、いくつかの他の実施形態では、データセットTの十分性は、入力の数に加えて、または入力の数の代わりに、1つまたは複数の他の基準(たとえば、データ例の多様性の測度、精度など)に基づいて決定され得ることに留意されたい。
【0095】
ブロック407において、処理ロジックは、機械学習モデル190を訓練、検証、および/または試験するためにデータセットTを(たとえば、サーバマシン180に)提供する。いくつかの実施形態では、データセットTは、訓練セットであり、訓練を実行するためにサーバマシン180の訓練エンジン182に提供される。いくつかの実施形態では、データセットTは、検証セットであり、検証を実行するためにサーバマシン180の検証エンジン184に提供される。いくつかの実施形態では、データセットTは、試験セットであり、試験を実行するためにサーバマシン180の試験エンジン186に提供される。ニューラルネットワークの場合、たとえば、所与の入力/出力マッピングの入力値(たとえば、データ入力210に関連付けられる数値)は、ニューラルネットワークに入力され、入力/出力マッピングの出力値(たとえば、ターゲット出力220に関連付けられる数値)は、ニューラルネットワークの出力ノードに記憶される。ニューラルネットワークにおける接続重みは、次いで、学習アルゴリズム(たとえば、バックプロパゲーションなど)に従って調節され、手順は、データセットTにおける他の入力/出力マッピングについて繰り返される。ブロック407の後に、機械学習モデル(たとえば、機械学習モデル190)は、サーバマシン180の訓練エンジン182を使用して訓練される、サーバマシン180の検証エンジン184を使用して検証される、またはサーバマシン180の試験エンジン186を使用して試験されるのうちの少なくとも1つであり得る。訓練された機械学習モデルは、(予測サーバ112の)予測構成要素114によって実装されて、信号処理を実行するための、または製造装置124に関連付けられる是正アクションを実行するための、予測データ168を生成し得る。
【0096】
図4Bは、データを圧縮形態に次元的に低減するように機械学習モデル(たとえば、
図1のモデル190A)を訓練するための方法400Bである。
【0097】
図4Bを参照すると、方法400Bのブロック410において、処理ロジックは、製造装置によって、製品(たとえば、基板)を作製することに関連付けられる計測データ(たとえば、過去の計測データ)を受信する。
【0098】
ブロック412において、処理ロジックは、計測データに対して前処理を実行し得る。前処理する計測データは、利用可能な計測データのサブセットを選ぶこと、データの適合を決定すること、利用可能なデータの組合せを行うことなどを含み得る。計測データは、厚さデータ、面内変位データ、化学データ、光学データ、または基板に関連付けられる任意の他の計測データを含み得る。
【0099】
ブロック414において、処理ロジックは、訓練された機械学習モデルを生成するために、計測データ(たとえば、過去の計測データ、前処理された計測データ)を含むデータ入力を使用して機械学習モデルを訓練する。訓練された機械学習モデルは、是正アクションを実行するために、計測データの次元を低減すること(たとえば、圧縮形態で表された、入力計測データを示す出力を生成すること)が可能であり得る。機械学習モデルは、計測データを圧縮するために非線形適合を使用し得る。機械学習モデルは、提供されるターゲット出力をもたない、教師なしモデルであり得る。代わりに、機械学習モデルは、過去の計測データを入力として受け付け、非線形適合を実行して、データを低減された次元をもつ圧縮形態に圧縮し得る。次いで、機械学習モデルは、圧縮データから計測データを再構築し得る。機械学習モデルは、次いで、再構築されたデータを入力計測データと比較し、計測データが圧縮データからどのくらい忠実に再作成されたか(たとえば、再作成された計測データが、実際の計測データの1%、5%、10%、20%以内である)に基づいて、(たとえば、
図1の検証エンジン184を使用して)モデルの精度を決定し得る。機械学習モデルの訓練は、作製された基板の任意のタイプまたは任意のタイプの組合せの(たとえば、
図1の製造装置124など、製造装置の任意のタイプの組合せを使用する)製造に関連付けられる計測データを使用し得る。いくつかの実施形態では、機械学習モデルは、任意の互換性がある製造装置上で作製された、ある設計のすべての利用可能な基板の厚さデータに対して訓練され得る。機械学習モデルは、次いで、任意のタイプ(たとえば、新しいタイプ)の製造装置上で作製された、同じ設計の任意の後続の基板の厚さ計測データを圧縮するために使用され得る。データタイプ、基板、製造装置設計、物理的装置構成要素などの多くのそのような組合せが、可能であり、特定の使用事例を最適化するように選ばれ得る。いくつかの実施形態では、機械学習モデルは、正常な(たとえば、欠陥のない)製品(たとえば、基板)の計測データを使用して訓練される。いくつかの実施形態では、機械学習モデルは、正常なおよび異常な製品の計測データを使用して訓練される。
【0100】
図4Cは、いくつかの実施形態による、データを次元的に低減するための機械学習モデル(たとえば、
図1のモデル190A)を使用するための方法400Cである。
【0101】
図4Cを参照すると、方法400Cのブロック420において、処理ロジックは、製造装置によって作製された基板に関連付けられる計測データ(たとえば、現在の計測データ)を受信する。製造装置は、
図4Bのブロック410において基板を作製した(たとえば、機械学習モデルを訓練するために使用された、その計測データに関連付けられる)製造装置と同じであるか、またはその製造装置とは異なり得る。ブロック420の計測データは、計測ツール(たとえば、
図1の計測装置128)から、またはメモリ(たとえば、
図1のデータストア140)から受信され得る。いくつかの実施形態では、
図4Cの計測データは、
図4Bの計測データと同じである。たとえば、モデルは、後続のモデル化において使用されることになる、
図4Bにおける第1の計測データを低減することができる。いくつかの実施形態では、
図4Bは、第1の訓練された機械学習モデルを生成するために、機械学習モデルを第1の計測データに対して訓練し、次いで、
図4Cは、訓練された機械学習モデルを、第1の計測データとは異なる第2の計測データに対して使用する。
【0102】
ブロック422において、処理ロジックは、計測データを前処理し得る。これは、データをトランケートすること、データをグループ化すること、データを組み合わせることなどを含み得る。このブロックにおいて実行される処理は、
図4Bのブロック412において実行されるものに対応し得る。
【0103】
ブロック424において、処理ロジックは、(場合によっては前処理された)計測データを、訓練された機械学習モデル(たとえば、
図1のモデル190A)に対する入力として提供する。訓練された機械学習モデルは、入力の次元を低減して、圧縮データ(たとえば、圧縮形態で表された入力データ)を出力するように訓練されていることがある。
【0104】
ブロック426において、処理ロジックは、訓練された機械学習モデルから、圧縮データを取得する。圧縮データは、低減された次元をもつ圧縮形態で表された、データ入力(たとえば、現在の計測データ)に対応する。
【0105】
ブロック428において、処理ロジックは、圧縮データに基づいて、製造装置に関連付けられる1つまたは複数の是正アクションの実行を引き起こす。いくつかの実施形態では、是正アクションは、ブロック426において取得された圧縮データに基づいて訓練された第2の訓練された機械学習モデル(たとえば、
図4D参照)からの出力に基づいて選ばれ得る(たとえば、
図4E参照)。
【0106】
図4Dは、いくつかの実施形態による、予測データを決定して是正アクションの実行を引き起こすために、機械学習モデル(たとえば、
図1のモデル190B)を訓練するための方法400Dである。
【0107】
図4Dを参照すると、方法400Dのブロック440において、処理ロジックは、基板のセットに関連付けられる圧縮データ(たとえば、圧縮過去の計測データ)を受信する。圧縮データは、訓練された機械学習モデル(たとえば、
図1のモデル190A、
図4Cの訓練された機械学習モデル)から受信される。圧縮データは、他の機械学習モデルから直接ではなく、メモリ(たとえば、
図1のデータストア140)から、処理ロジックによって検索され得る。いくつかの場合には、2つ以上の機械学習モデルが、単一の複合機械学習モデルの一部であり得る。この場合、この複合モデルの1つの構成要素を訓練することは、訓練されるべきであるモデルの構成要素に対する訓練入力として、モデルの別の構成要素から出力を受信することを伴い得る。
【0108】
ブロック442において、処理ロジックは、基板のセットの製造に関連付けられる過去のデータを受信する。過去のデータは、過去のセンサデータ、過去の製造パラメータ、および/または基板の製造に関連付けられる(たとえば、基板の処理条件に関する情報を提供する)他の過去のデータであり得る。過去のデータは、ブロック440において受信された圧縮計測データにマッピングされる。基板の製造に関連付けられる過去のデータは、前処理を受け得る(図示せず)。
【0109】
ブロック444において、処理ロジックは、訓練された機械学習モデルを生成するために、過去のデータ(たとえば、過去のセンサデータ、過去の製造パラメータなど)を含む入力データと、ブロック440において受信された圧縮データのターゲット出力データとを使用して、機械学習モデルを訓練する。
【0110】
いくつかの実施形態では、訓練された機械学習モデルは、追加の基板に関連付けられる、追加の入力データ(たとえば、センサデータ、製造パラメータ)と追加の圧縮データとを使用して、さらに訓練されるか、または再訓練され得る。さらなる訓練または再訓練は、装置の故障を予測すること、手順またはレシピに対する変更を反映することなどを行うために、製造装置、センサ、計測装置などの変動を考慮または予測し得る。
【0111】
図4Eは、予測データを決定するために、訓練された機械学習モデル(たとえば、
図1のモデル190B)を使用するための方法400Eである。
【0112】
図4Eを参照すると、方法400Eのブロック460において、処理ロジックは、基板製造プロセスに関連付けられる現在のデータ(たとえば、センサデータ、製造パラメータ)を受信する。いくつかの実施形態では、データは、製造装置によって作製された基板に関連付けられるセンサデータである。たとえば、センサデータは、製造装置の処理チャンバ中のセンサによって決定された、温度値、圧力値などを含み得る。いくつかの実施形態では、データは、製造装置によって作製されたかまたは作製されることになる基板に関連付けられる製造パラメータである。たとえば、製造パラメータは、基板を作製するために使用されたか、または基板を作製するために使用されることになる、プロセスレシピにおける設定ポイントであり得る。
【0113】
ブロック462において、処理ロジックは、現在のデータを訓練された機械学習モデルに対する入力として提供する。現在のデータは、機械学習モデルを訓練するために使用された、
図4Dのブロック442~444の過去のデータと同じまたは同様のタイプのものであり得る。
【0114】
ブロック464において、処理ロジックは、訓練された機械学習モデルから、予測データを示す1つまたは複数の出力を取得する。いくつかの実施形態では、予測データは、圧縮形態で表された、予測された計測データであり得る。
【0115】
ブロック466において、処理ロジックは、是正アクションの実行を引き起こす。いくつかの実施形態では、是正アクションは、出力がさらに処理された後に(たとえば、計測データが、訓練された機械学習モデルによって出力された圧縮データから再構築された後に)、訓練された機械学習モデルの出力に基づいて実行され得る。いくつかの実施形態では、圧縮されたデータのタイプと、どんなタイプのデータが、訓練された機械学習モデルに入力としておよびターゲット出力として提供されるかとは、異なる。訓練された機械学習モデルによって非線形のやり方で圧縮された計測データを利用することは、多くの異なるコンテキストにおいて技術的利点を提供する。したがって、本開示に一致する是正アクションのタイプは、大きく異なることがある。いくつかの実施形態では、是正アクションの実行は、アラートをユーザに提供すること、製造装置の機能性を妨げること、プロセスパラメータおよび/またはハードウェアパラメータを含む製造パラメータを更新すること、製造装置の構成要素の交換を計画すること、エネルギー使用を低減するために、製品の製造中の特定の時間において、1つまたは複数の構成要素がスリープモードまたはアイドルモードにあることを引き起こすこと、エネルギー使用を低減するために1つまたは複数の構成要素を交換すること、予防保守を引き起こすこと、構成要素の修正(たとえば、取付け締め具を締めること、バインディングを交換することなど)を引き起こすこと、製造装置に関連付けられるセンサのセンサ変動を是正すること、チャンバ変動を是正すること、プロセスレシピを更新することなどのうちの1つまたは複数を含み得る。予測データおよび/または是正アクションは、異常を引き起こしている組合せ(たとえば、構成要素の組合せ、製造パラメータの組合せ)を示し得る(たとえば、組合せからのアイテムのうちの1つだけでは、それ自体で異常を引き起こさないことがある)。
【0116】
図4A~
図4Eのいくつかの実施形態が、計測データを圧縮し、その圧縮計測データをターゲット出力として使用することに関連付けられるが、いくつかの実施形態では、入力データ(たとえば、センサデータ、製造パラメータなど)が圧縮され、その圧縮入力データが、機械学習モデルまたは訓練された機械学習モデルに入力される。いくつかの実施形態では、ターゲット出力(たとえば、計測データ)および/または入力データ(たとえば、センサデータ、製造パラメータなど)は、機械学習モデルの訓練および/または使用のために圧縮される。
【0117】
図5は、いくつかの実施形態による、入力データの次元を低減することが可能であるモデル500(たとえば、機械学習モデル)の処理の図である。
【0118】
モデル500の入力データ510は、基板の作製に関連付けられるデータである。いくつかの実施形態では、入力データ510は、計測データ、製造パラメータ、センサデータ、またはそれらの組合せのうちの1つまたは複数を含む。入力データ510は、前処理されたデータであり得る。いくつかの実施形態では、入力データ510は、基板に関連付けられる計測データである。計測データは、厚さ、面内変位、化学的特性、電子的特性、光学的特性などを含む、任意の(または多くの)タイプのものであり得る。
【0119】
モデル500は、第1の部分520(たとえば、エンコーダ)と第2の部分(たとえば、デコーダ)とを含む。いくつかの実施形態では、モデルは、オートエンコーダ、畳み込みニューラルネットワークモデルなどのうちの1つまたは複数である。第1の部分520は、入力データ510(たとえば、計測データ)を圧縮形態(たとえば、圧縮データ530)に次元的に低減する。機械学習モデル500の訓練中に、第1の部分520は、ユーザからの案内なしに入力データ510を適合させるための関数を見つけ得る。低減すること(たとえば、圧縮すること、符号化すること)は、いくつかの段階にわたって行われ得るか(すなわち、最初に、入力データ510を部分的圧縮データにコンバートし、次いで、さらに、圧縮データ530にコンバートする)、または低減すること(たとえば、圧縮すること、符号化すること)は、単一の段階で行われ得る。
【0120】
第2の部分540は、圧縮データ530を入力としてとり、出力データ550(たとえば、
図1の再構築されたデータ169)を生成する。訓練中に、モデル500は、入力データ510と出力データ550との間の差を最小化するように訓練され、出力550は、圧縮データ530からの入力データ510の再構築である。また、モデル500を訓練するために使用される最小化関数が、不十分な圧縮を伴う関数(たとえば、入力データ510を完全に再作成するが、データを低減された次元に圧縮しない、恒等関数)を返すことを回避するために、圧縮データ530の次元に対してペナルティを課すこともできる。
【0121】
第1の部分520と第2の部分540とによって利用される(1つまたは複数の)関数は、本質的に非線形であり得る。モデル500のすべてのプロセス(すなわち、低減と再構築の両方、符号化と復号の両方など)が、いくつかの用途で使用され得る。他の用途では、いくつかの能力のみが利用され得る。たとえば、訓練の間に、モデル500は、入力データ510を、第1の部分520を通してパスして、圧縮データ530を形成し、次いで、第2の部分540を通して、出力データ550を決定し得、出力データ550は、次いで、入力データ510と比較されて、出力データ550が入力データ510と実質的に同様であると決定する。いくつかの実施形態では、モデル500を使用する間に、これらのアクションのうちのいくつかのみが使用され得る。第1の部分520は、入力データ510を圧縮するために使用され得、モデル500は、圧縮データ530を出力として作製し得る。他の実施形態では、第2の部分540は、圧縮データ530を入力として使用することに基づいて、データを再構築するために使用され得、再構築された完全な次元のデータが、出力データ550として提供される。
【0122】
例として、いくつかの実施形態では、ユーザが予測モデルを利用し得、予測モデルからの完全な次元の出力データは、不便であるかまたは不可能である。この場合、訓練されたモデル500は、様々な入力510から圧縮データ530を出力するために使用され得、圧縮データ530のセットは、予測機械学習モデルを訓練するためのターゲット出力として使用され得る。予測モデルが訓練されると、予測モデルは、圧縮形態で表されることになる、何らかの出力データを作製するために使用され得る。圧縮形態のデータは、次いで、第2の部分540によって再構築されて、出力データ550を作製し得る。出力データは、圧縮データ530の低い次元表現の品質の反映であり得る(たとえば、入力データ510と出力データ550とが互いにどのくらい同様であるかが、圧縮データ530がどのくらい正確であるかの反映である)。モデル500は、次いで、処理デバイスまたはユーザによって使用されて、何らかの是正アクションを実行することができる。いくつかの実施形態では、モデル500は、人工ニューラルネットワークを含み得る。いくつかの実施形態では、モデル500は、深層学習ネットワークをさらに含み得る。モデル500は、畳み込みニューラルネットワーク、深層信念ネットワーク、フィードフォワードニューラルネットワーク、または多層ニューラルネットワークを含み得る。処理デバイスは、予測モデルから、予測データを示す1つまたは複数の出力を受信し得る。予測データは、製品における予測された異常、製造装置の構成要素における予測された異常、予測されたエネルギー使用、予測された構成要素の故障などのうちの1つまたは複数を示し得る。予測データは、製品および/または製造装置における異常を引き起こしている、(たとえば、製品間均一性についてのチャンバマッチングからの)ばらつきを示し得る。たとえば、製造装置の異常な特性(たとえば、エネルギーの増加、経時的な変動、モーターサイクル数の多さなど)が、是正アクションが実行されるべきであることを示し得る。訓練において圧縮データを利用すること、および第2の予測モデルの使用が、非圧縮データを使用して行われ得るよりも、低減されたプロセッサ負荷、およびより小さいデータセットを使用する訓練など、いくつかの技術的利点を提示する。
【0123】
図6は、いくつかの実施形態による、コンピュータシステム600を示すブロック図である。いくつかの実施形態では、コンピュータシステム600は、(たとえば、ローカルエリアネットワーク(LAN)、イントラネット、エクストラネット、またはインターネットなど、ネットワークを介して)他のコンピュータシステムに接続され得る。コンピュータシステム600は、クライアントサーバ環境におけるのサーバコンピュータまたはクライアントコンピュータの能力で動作するか、あるいは、ピアツーピアまたは分散型ネットワーク環境におけるピアコンピュータとして動作し得る。コンピュータシステム600は、パーソナルコンピュータ(PC)、タブレットPC、セットトップボックス(STB)、携帯情報端末(PDA)、セルラー電話、ウェブアプライアンス、サーバ、ネットワークルータ、スイッチまたはブリッジ、あるいはそのデバイスによってとられるべきアクションを指定する一連の命令(順次またはそれ以外)を実行することが可能な任意のデバイスによって提供され得る。さらに、「コンピュータ」という用語は、本明細書で説明される方法のうちのいずれか1つまたは複数を実行するために命令のセット(または複数のセット)を個々にまたは一緒に実行する、コンピュータの任意の集合を含むものとする。
【0124】
さらなる態様では、コンピュータシステム600は、バス608を介して互いと通信し得る、処理デバイス602と、揮発性メモリ604(たとえば、ランダムアクセスメモリ(RAM))と、不揮発性メモリ606(たとえば、読取り専用メモリ(ROM)または電気的消去可能プログラマブルROM(EEPROM))と、データストレージデバイス618とを含み得る。
【0125】
処理デバイス602は、(たとえば、複合命令セットコンピューティング(CISC)マイクロプロセッサ、縮小命令セットコンピューティング(RISC)マイクロプロセッサ、超長命令語(VLIW)マイクロプロセッサ、命令セットの他のタイプを実装するマイクロプロセッサ、または命令セットのタイプの組合せを実装するマイクロプロセッサなどの)汎用プロセッサ、または(たとえば、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、またはネットワークプロセッサなどの)専用プロセッサなど、1つまたは複数のプロセッサによって提供され得る。
【0126】
コンピュータシステム600は、(たとえば、ネットワーク674に結合された)ネットワークインターフェースデバイス622をさらに含み得る。コンピュータシステム600はまた、ビデオディスプレイユニット610(たとえば、LCD)と、英数字入力デバイス612(たとえば、キーボード)と、カーソル制御デバイス614(たとえば、マウス)と、信号生成デバイス620とを含み得る。
【0127】
いくつかの実施形態では、データストレージデバイス618は、
図1の構成要素(たとえば、予測構成要素114、モデル190など)を符号化する、および本明細書で説明される方法を実装するための、命令を含む、本明細書で説明される方法または機能のうちのいずれか1つまたは複数を符号化する命令626を記憶し得る、非一時的コンピュータ可読記憶媒体624(たとえば、非一時的機械可読媒体)を含み得る。
【0128】
命令626はまた、コンピュータシステム600によるその実行中に、完全にまたは部分的に、揮発性メモリ604内におよび/または処理デバイス602内に存在し得、したがって、揮発性メモリ604と処理デバイス602とはまた、機械可読記憶媒体を構成し得る。
【0129】
コンピュータ可読記憶媒体624は、例示的な例において単一の媒体として示されているが、「コンピュータ可読記憶媒体」という用語は、実行可能な命令の1つまたは複数のセットを記憶する単一の媒体または複数の媒体(たとえば、集中型または分散型データベース、ならびに/あるいは関連付けられるキャッシュおよびサーバ)を含むものとする。「コンピュータ可読記憶媒体」という用語は、コンピュータが実行するための命令のセットを記憶または符号化することが可能であり、コンピュータに本明細書で説明される方法のうちのいずれか1つまたは複数を実行させる、任意の有形媒体をも含むものとする。「コンピュータ可読記憶媒体」という用語は、限定はしないが、ソリッドステートメモリと、光媒体と、磁気媒体とを含むものとする。
【0130】
本明細書で説明される方法、構成要素、および特徴は、個別ハードウェア構成要素によって実装され得るか、あるいは、ASIC、FPGA、DSPまたは同様のデバイスなど、他のハードウェア構成要素の機能性に統合され得る。さらに、方法、構成要素、および特徴は、ハードウェアデバイス内のファームウェアモジュールまたは機能回路によって実装され得る。さらに、方法、構成要素、および特徴は、ハードウェアデバイスとコンピュータプログラム構成要素との任意の組合せで実装されるか、またはコンピュータプログラムで実装され得る。
【0131】
別段に明記されていない限り、「受信すること」、「実行すること」、「提供すること」、「取得すること」、「引き起こすこと」、「アクセスすること」、「決定すること」、「追加すること」、「使用すること」、「訓練すること」、「低減すること」、「生成すること」、「是正すること」などの用語は、コンピュータシステムレジスタおよびメモリ内の物理(電子)量として表されるデータを操作し、そのデータを、コンピュータシステムメモリまたはレジスタ、あるいは他のそのような情報ストレージ、送信または表示デバイス内の物理量として同様に表される他のデータに変換する、コンピュータシステムによって実行または実施されるアクションおよびプロセスを指す。また、本明細書で使用される「第1の」、「第2の」、「第3の」、「第4の」などの用語は、異なる要素同士を区別するためのラベルとして意味され、それらの数字表示による順序の意味を有しないことがある。
【0132】
本明細書で説明される例はまた、本明細書で説明される方法を実行するための装置に関する。この装置は、本明細書で説明される方法を実行するために特別に構築され得るか、または、この装置は、コンピュータシステムに記憶されたコンピュータプログラムによって選択的にプログラムされる汎用コンピュータシステムを含み得る。そのようなコンピュータプログラムは、コンピュータ可読有形記憶媒体に記憶され得る。
【0133】
本明細書で説明される方法および例示的な例は、本質的に、特定のコンピュータまたは他の装置に関係しない。様々な汎用システムが、本明細書で説明される教示に従って使用され得るか、または、本明細書で説明される方法、および/あるいはそれらの個々の機能、ルーチン、サブルーチン、または処理の各々を実行するためのより特殊な装置を構築することが好都合であると判明することがある。様々なこれらのシステムのための構造の例は、上記の説明に記載される。
【0134】
上記の説明は、例示的なものであり、限定的なものではない。本開示は、特定の例示的な例および実施形態を参照しながら説明されたが、本開示は、説明される例および実施形態に限定されないことを認識されよう。本開示の範囲は、特許請求の範囲が権利を与えられる等価物の全範囲とともに、以下の特許請求の範囲を参照しながら決定されるべきである。
【国際調査報告】