(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-12-05
(45)【発行日】2022-12-13
(54)【発明の名称】データ処理方法およびデータ処理プログラム
(51)【国際特許分類】
H01L 21/02 20060101AFI20221206BHJP
G06N 3/04 20060101ALI20221206BHJP
G06Q 10/04 20120101ALI20221206BHJP
【FI】
H01L21/02 Z
G06N3/04
G06Q10/04
(21)【出願番号】P 2018176259
(22)【出願日】2018-09-20
【審査請求日】2021-06-18
(73)【特許権者】
【識別番号】000207551
【氏名又は名称】株式会社SCREENホールディングス
(74)【代理人】
【識別番号】100104695
【氏名又は名称】島田 明宏
(74)【代理人】
【識別番号】100121348
【氏名又は名称】川原 健児
(74)【代理人】
【識別番号】100114247
【氏名又は名称】奥田 邦廣
(74)【代理人】
【識別番号】100148459
【氏名又は名称】河本 悟
(72)【発明者】
【氏名】猶原 英司
(72)【発明者】
【氏名】山本 麻友美
【審査官】今井 聖和
(56)【参考文献】
【文献】特開2018-055294(JP,A)
【文献】特開2017-083985(JP,A)
【文献】特開2004-186445(JP,A)
【文献】特開2000-252179(JP,A)
【文献】特開2006-146459(JP,A)
【文献】特開2017-211713(JP,A)
【文献】特開平10-163080(JP,A)
【文献】特開2003-077780(JP,A)
【文献】特開2000-035817(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H01L 21/02
G06N 3/04
G06Q 10/04
(57)【特許請求の範囲】
【請求項1】
単位処理で得られる複数種類の時系列データを単位処理データとして複数の単位処理データを処理するデータ処理方法であって、
各時系列データを評価することによって得られる評価値の値ごとの度数を表す評価値分布を用いた処理を行う評価値分布利用ステップと、
前記評価値分布を更新する評価値分布更新ステップと
を含
み、
前記単位処理は、複数の処理ユニットを有する基板処理装置で1枚の基板に対して1つのレシピとして実行される処理であって、
前記評価値分布更新ステップは、
各時系列データについての評価値に基づいて処理ユニット毎に評価値のばらつきを算出するばらつき算出ステップと、
前記ばらつき算出ステップで算出されたばらつきのうち最も小さいばらつきが得られた処理ユニットを指定する処理ユニット指定ステップと、
前記処理ユニット指定ステップで指定された処理ユニットに対応する単位処理データを前記複数の単位処理データから抽出する単位処理データ抽出ステップと、
前記単位処理データ抽出ステップで抽出された単位処理データである被抽出単位処理データに含まれる各時系列データについての評価値を算出する分布更新用評価値算出ステップと、
前記分布更新用評価値算出ステップで算出された各時系列データについての評価値に基づいて、更新後の評価値分布を時系列データの種類ごとに作成する評価値分布作成ステップと
を含むことを特徴とする、データ処理方法。
【請求項2】
単位処理で得られる複数種類の時系列データを単位処理データとして複数の単位処理データを処理するデータ処理方法であって、
各時系列データを評価することによって得られる評価値の値ごとの度数を表す評価値分布を用いた処理を行う評価値分布利用ステップと、
前記評価値分布を更新する評価値分布更新ステップと
を含
み、
前記単位処理は、複数の処理ユニットを有する基板処理装置で1枚の基板に対して1つのレシピとして実行される処理であって、
前記評価値分布更新ステップは、
各時系列データについての評価値に基づいて処理ユニット毎に評価値の平均値およびばらつきを算出する統計値算出ステップと、
前記統計値算出ステップで算出された平均値およびばらつきを考慮して処理ユニットを指定する処理ユニット指定ステップと、
前記処理ユニット指定ステップで指定された処理ユニットに対応する単位処理データを前記複数の単位処理データから抽出する単位処理データ抽出ステップと、
前記単位処理データ抽出ステップで抽出された単位処理データである被抽出単位処理データに含まれる各時系列データについての評価値を算出する分布更新用評価値算出ステップと、
前記分布更新用評価値算出ステップで算出された各時系列データについての評価値に基づいて、更新後の評価値分布を時系列データの種類ごとに作成する評価値分布作成ステップと
を含むことを特徴とする、データ処理方法。
【請求項3】
単位処理で得られる複数種類の時系列データを単位処理データとして複数の単位処理データを処理するデータ処理方法であって、
各時系列データを評価することによって得られる評価値の値ごとの度数を表す評価値分布を用いた処理を行う評価値分布利用ステップと、
前記評価値分布を更新する評価値分布更新ステップと
を含
み、
前記単位処理は、複数の処理ユニットを有する基板処理装置で1枚の基板に対して1つのレシピとして実行される処理であって、
前記評価値分布更新ステップでは、それぞれが評価値分布と教師データとしての点数とからなる複数の学習データを用いて予め学習が行われている学習器に前記複数の処理ユニットに対応する複数の評価値分布が入力され、当該複数の評価値分布のうち前記学習器から出力された点数が最も良い評価値分布が更新後の評価値分布に定められることを特徴とする、データ処理方法。
【請求項4】
前記評価値分布更新ステップで前記学習器に入力される評価値分布は、直近のレシピの実行によって得られた時系列データについての評価値に基づいて作成された評価値分布であることを特徴とする、請求項
3に記載のデータ処理方法。
【請求項5】
前記学習器は、複数のユニットからなる入力層と複数のユニットからなる中間層と1つのユニットからなる出力層とを有するニューラルネットワークであって、
前記入力層の各ユニットは、評価値としての値が取り得る範囲を所定の閾値で区分することによって得られる範囲に対応付けられ、
前記入力層の各ユニットには、当該各ユニットに対応付けられている範囲に含まれる値の度数が入力されることを特徴とする、請求項
3に記載のデータ処理方法。
【請求項6】
単位処理で得られる複数種類の時系列データを単位処理データとして複数の単位処理データを処理するデータ処理装置に含まれるコンピュータに、
各時系列データを評価することによって得られる評価値の値ごとの度数を表す評価値分布を用いた処理を行う評価値分布利用ステップと、
前記評価値分布を更新する評価値分布更新ステップと
を実行させ
、
前記単位処理は、複数の処理ユニットを有する基板処理装置で1枚の基板に対して1つのレシピとして実行される処理であって、
前記評価値分布更新ステップは、
各時系列データについての評価値に基づいて処理ユニット毎に評価値のばらつきを算出するばらつき算出ステップと、
前記ばらつき算出ステップで算出されたばらつきのうち最も小さいばらつきが得られた処理ユニットを指定する処理ユニット指定ステップと、
前記処理ユニット指定ステップで指定された処理ユニットに対応する単位処理データを前記複数の単位処理データから抽出する単位処理データ抽出ステップと、
前記単位処理データ抽出ステップで抽出された単位処理データである被抽出単位処理データに含まれる各時系列データについての評価値を算出する分布更新用評価値算出ステップと、
前記分布更新用評価値算出ステップで算出された各時系列データについての評価値に基づいて、更新後の評価値分布を時系列データの種類ごとに作成する評価値分布作成ステップと
を含むことを特徴とする、データ処理プログラム。
【請求項7】
単位処理で得られる複数種類の時系列データを単位処理データとして複数の単位処理データを処理するデータ処理装置に含まれるコンピュータに、
各時系列データを評価することによって得られる評価値の値ごとの度数を表す評価値分布を用いた処理を行う評価値分布利用ステップと、
前記評価値分布を更新する評価値分布更新ステップと
を実行させ
、
前記単位処理は、複数の処理ユニットを有する基板処理装置で1枚の基板に対して1つのレシピとして実行される処理であって、
前記評価値分布更新ステップは、
各時系列データについての評価値に基づいて処理ユニット毎に評価値の平均値およびばらつきを算出する統計値算出ステップと、
前記統計値算出ステップで算出された平均値およびばらつきを考慮して処理ユニットを指定する処理ユニット指定ステップと、
前記処理ユニット指定ステップで指定された処理ユニットに対応する単位処理データを前記複数の単位処理データから抽出する単位処理データ抽出ステップと、
前記単位処理データ抽出ステップで抽出された単位処理データである被抽出単位処理データに含まれる各時系列データについての評価値を算出する分布更新用評価値算出ステップと、
前記分布更新用評価値算出ステップで算出された各時系列データについての評価値に基づいて、更新後の評価値分布を時系列データの種類ごとに作成する評価値分布作成ステップと
を含むことを特徴とする、データ処理プログラム。
【請求項8】
単位処理で得られる複数種類の時系列データを単位処理データとして複数の単位処理データを処理するデータ処理装置に含まれるコンピュータに、
各時系列データを評価することによって得られる評価値の値ごとの度数を表す評価値分布を用いた処理を行う評価値分布利用ステップと、
前記評価値分布を更新する評価値分布更新ステップと
を実行させ
、
前記単位処理は、複数の処理ユニットを有する基板処理装置で1枚の基板に対して1つのレシピとして実行される処理であって、
前記評価値分布更新ステップでは、それぞれが評価値分布と教師データとしての点数とからなる複数の学習データを用いて予め学習が行われている学習器に前記複数の処理ユニットに対応する複数の評価値分布が入力され、当該複数の評価値分布のうち前記学習器から出力された点数が最も良い評価値分布が更新後の評価値分布に定められることを特徴とする、データ処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、デジタルデータ処理に関し、特に、時系列データを処理する方法に関する。
【背景技術】
【0002】
機器や装置の異常を検出する方法として、機器や装置の動作状態を示す物理量(例えば、長さ、角度、時間、速さ、力、圧力、電圧、電流、温度、流量など)をセンサなどを用いて測定し、測定結果を発生順に並べて得られた時系列データを分析する方法が知られている。機器や装置が同じ条件で同じ動作を行う場合、異常がなければ、時系列データは同様に変化する。そこで、同様に変化する複数の時系列データを相互に比較して異常な時系列データを検出し、その異常な時系列データを分析することにより、異常の発生箇所や異常の原因の特定が可能となる。また、近年、コンピュータのデータ処理能力の向上が顕著である。このため、たとえデータ量が膨大であっても実用的な時間で必要な結果が得られるケースが多くなっている。このようなことからも、時系列データの分析が盛んになりつつある。
【0003】
例えば、半導体基板の製造の分野においても、時系列データの分析が盛んになりつつある。半導体基板(以下、「基板」という)の製造工程では、基板処理装置によって一連の処理が実行される。基板処理装置は、基板に対して一連の処理の中の特定の処理を行う複数の処理ユニットを含んでいる。各処理ユニットは、基板に対して予め定められた手順(「レシピ」と呼ばれる)に従い処理を行う。このとき各処理ユニットにおける測定結果に基づき、時系列データが得られる。得られた時系列データを分析することにより、異常が発生した処理ユニットや異常の原因を特定することができる。ところで、「レシピ」の語は、基板に対して行われるもののみでなく、基板の処理の前に行われる前処理や、基板に対する処理が処理ユニットで行われていない間に処理ユニットの状態の維持・管理や処理ユニットに関する各種測定を行うための処理などについても用いられる。但し、本明細書では、基板に対して行われる処理に着目する。なお、基板の製造によって得られた時系列データの異常度の算出に関連する発明が特開2017-83985号公報に開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
一般に、基板の製造工程では、レシピの実行によって膨大な数のパラメータ(各種の物理量)についての時系列データが得られる。時系列データは、レシピが実行された際に各種の物理量(例えば、ノズルから供給される処理流体の流量や温度、チャンバ内の湿度、チャンバの内圧、チャンバの排気圧など)をセンサなどを用いて測定して測定結果を時系列に並べて得られたデータである。また、カメラによって撮像された画像に解析を加えて得られたデータを時系列に並べたものも時系列データとなる。そして、各時系列データが異常であるか否かの判定は、時系列データのデータ値を閾値と比較することによって、もしくは、当該データ値から所定の計算ルールに従って算出される値を閾値と比較することによって行われている。なお、閾値はパラメータ毎に設定される。
【0006】
ところが、設定される閾値は必ずしも好適な値とは限らないため、異常判定の精度は良好ではない。すなわち、従来の手法によれば、時系列データの異常が精度良く検出されない。また、或る1つの同じレシピに着目しても、得られる時系列データの中身は時間の経過とともに変化する傾向にある。従って、異常判定の際にそのような時間の経過が考慮されていなければ、充分な精度で異常が検出されない。
【0007】
そこで、本発明は、時系列データを用いた異常検出を時間の経過を考慮して充分な精度で行うことのできるデータ処理方法を提供することを目的とする。
【課題を解決するための手段】
【0015】
第1の発明は、単位処理で得られる複数種類の時系列データを単位処理データとして複数の単位処理データを処理するデータ処理方法であって、
各時系列データを評価することによって得られる評価値の値ごとの度数を表す評価値分布を用いた処理を行う評価値分布利用ステップと、
前記評価値分布を更新する評価値分布更新ステップと
を含み、
前記単位処理は、複数の処理ユニットを有する基板処理装置で1枚の基板に対して1つのレシピとして実行される処理であって、
前記評価値分布更新ステップは、
各時系列データについての評価値に基づいて処理ユニット毎に評価値のばらつきを算出するばらつき算出ステップと、
前記ばらつき算出ステップで算出されたばらつきのうち最も小さいばらつきが得られた処理ユニットを指定する処理ユニット指定ステップと、
前記処理ユニット指定ステップで指定された処理ユニットに対応する単位処理データを前記複数の単位処理データから抽出する単位処理データ抽出ステップと、
前記単位処理データ抽出ステップで抽出された単位処理データである被抽出単位処理データに含まれる各時系列データについての評価値を算出する分布更新用評価値算出ステップと、
前記分布更新用評価値算出ステップで算出された各時系列データについての評価値に基づいて、更新後の評価値分布を時系列データの種類ごとに作成する評価値分布作成ステップと
を含むことを特徴とする。
【0016】
第2の発明は、単位処理で得られる複数種類の時系列データを単位処理データとして複数の単位処理データを処理するデータ処理方法であって、
各時系列データを評価することによって得られる評価値の値ごとの度数を表す評価値分布を用いた処理を行う評価値分布利用ステップと、
前記評価値分布を更新する評価値分布更新ステップと
を含み、
前記単位処理は、複数の処理ユニットを有する基板処理装置で1枚の基板に対して1つのレシピとして実行される処理であって、
前記評価値分布更新ステップは、
各時系列データについての評価値に基づいて処理ユニット毎に評価値の平均値およびばらつきを算出する統計値算出ステップと、
前記統計値算出ステップで算出された平均値およびばらつきを考慮して処理ユニットを指定する処理ユニット指定ステップと、
前記処理ユニット指定ステップで指定された処理ユニットに対応する単位処理データを前記複数の単位処理データから抽出する単位処理データ抽出ステップと、
前記単位処理データ抽出ステップで抽出された単位処理データである被抽出単位処理データに含まれる各時系列データについての評価値を算出する分布更新用評価値算出ステップと、
前記分布更新用評価値算出ステップで算出された各時系列データについての評価値に基づいて、更新後の評価値分布を時系列データの種類ごとに作成する評価値分布作成ステップと
を含むことを特徴とする。
【0017】
第3の発明は、単位処理で得られる複数種類の時系列データを単位処理データとして複数の単位処理データを処理するデータ処理方法であって、
各時系列データを評価することによって得られる評価値の値ごとの度数を表す評価値分布を用いた処理を行う評価値分布利用ステップと、
前記評価値分布を更新する評価値分布更新ステップと
を含み、
前記単位処理は、複数の処理ユニットを有する基板処理装置で1枚の基板に対して1つのレシピとして実行される処理であって、
前記評価値分布更新ステップでは、それぞれが評価値分布と教師データとしての点数とからなる複数の学習データを用いて予め学習が行われている学習器に前記複数の処理ユニットに対応する複数の評価値分布が入力され、当該複数の評価値分布のうち前記学習器から出力された点数が最も良い評価値分布が更新後の評価値分布に定められることを特徴とする。
【0018】
第4の発明は、第3の発明において、
前記評価値分布更新ステップで前記学習器に入力される評価値分布は、直近のレシピの実行によって得られた時系列データについての評価値に基づいて作成された評価値分布であることを特徴とする。
【0019】
第5の発明は、第3の発明において、
前記学習器は、複数のユニットからなる入力層と複数のユニットからなる中間層と1つのユニットからなる出力層とを有するニューラルネットワークであって、
前記入力層の各ユニットは、評価値としての値が取り得る範囲を所定の閾値で区分することによって得られる範囲に対応付けられ、
前記入力層の各ユニットには、当該各ユニットに対応付けられている範囲に含まれる値の度数が入力されることを特徴とする。
【0021】
第6の発明は、データ処理プログラムであって、
単位処理で得られる複数種類の時系列データを単位処理データとして複数の単位処理データを処理するデータ処理装置に含まれるコンピュータに、
各時系列データを評価することによって得られる評価値の値ごとの度数を表す評価値分布を用いた処理を行う評価値分布利用ステップと、
前記評価値分布を更新する評価値分布更新ステップと
を実行させ、
前記単位処理は、複数の処理ユニットを有する基板処理装置で1枚の基板に対して1つのレシピとして実行される処理であって、
前記評価値分布更新ステップは、
各時系列データについての評価値に基づいて処理ユニット毎に評価値のばらつきを算出するばらつき算出ステップと、
前記ばらつき算出ステップで算出されたばらつきのうち最も小さいばらつきが得られた処理ユニットを指定する処理ユニット指定ステップと、
前記処理ユニット指定ステップで指定された処理ユニットに対応する単位処理データを前記複数の単位処理データから抽出する単位処理データ抽出ステップと、
前記単位処理データ抽出ステップで抽出された単位処理データである被抽出単位処理データに含まれる各時系列データについての評価値を算出する分布更新用評価値算出ステップと、
前記分布更新用評価値算出ステップで算出された各時系列データについての評価値に基づいて、更新後の評価値分布を時系列データの種類ごとに作成する評価値分布作成ステップと
を含む。
第7の発明は、データ処理プログラムであって、
単位処理で得られる複数種類の時系列データを単位処理データとして複数の単位処理データを処理するデータ処理装置に含まれるコンピュータに、
各時系列データを評価することによって得られる評価値の値ごとの度数を表す評価値分布を用いた処理を行う評価値分布利用ステップと、
前記評価値分布を更新する評価値分布更新ステップと
を実行させ、
前記単位処理は、複数の処理ユニットを有する基板処理装置で1枚の基板に対して1つのレシピとして実行される処理であって、
前記評価値分布更新ステップは、
各時系列データについての評価値に基づいて処理ユニット毎に評価値の平均値およびばらつきを算出する統計値算出ステップと、
前記統計値算出ステップで算出された平均値およびばらつきを考慮して処理ユニットを指定する処理ユニット指定ステップと、
前記処理ユニット指定ステップで指定された処理ユニットに対応する単位処理データを前記複数の単位処理データから抽出する単位処理データ抽出ステップと、
前記単位処理データ抽出ステップで抽出された単位処理データである被抽出単位処理データに含まれる各時系列データについての評価値を算出する分布更新用評価値算出ステップと、
前記分布更新用評価値算出ステップで算出された各時系列データについての評価値に基づいて、更新後の評価値分布を時系列データの種類ごとに作成する評価値分布作成ステップと
を含む。
第8の発明は、データ処理プログラムであって、
単位処理で得られる複数種類の時系列データを単位処理データとして複数の単位処理データを処理するデータ処理装置に含まれるコンピュータに、
各時系列データを評価することによって得られる評価値の値ごとの度数を表す評価値分布を用いた処理を行う評価値分布利用ステップと、
前記評価値分布を更新する評価値分布更新ステップと
を実行させ、
前記単位処理は、複数の処理ユニットを有する基板処理装置で1枚の基板に対して1つのレシピとして実行される処理であって、
前記評価値分布更新ステップでは、それぞれが評価値分布と教師データとしての点数とからなる複数の学習データを用いて予め学習が行われている学習器に前記複数の処理ユニットに対応する複数の評価値分布が入力され、当該複数の評価値分布のうち前記学習器から出力された点数が最も良い評価値分布が更新後の評価値分布に定められる。
【発明の効果】
【0029】
上記第1の発明によれば、各時系列データを評価することによって得られた評価値の分布を表す評価値分布を用いた処理が行われる。例えば、新しく時系列データが得られた際に、当該時系列データの異常判定を行うことができる。その異常判定には評価値分布が用いられるところ、当該評価値分布の更新が行われる。それ故、異常判定の際に、例えば時系列データの最近の傾向を考慮することが可能となる。以上より、時系列データを用いた異常検出を時間の経過を考慮して充分な精度で行うことが可能となる。
また、評価値分布の作成元となる単位処理データを選択するのが難しい場合であっても、処理ユニット毎の評価値の算出結果に基づいて、安定した処理が行われると考えられる処理ユニットの指定が行われる。そして、その指定された処理ユニットでの処理で得られた単位処理データに基づいて、更新後の評価値分布が作成される。このため、当該評価値分布を用いた異常判定は高精度なものとなる。以上より、評価値分布の作成元となる単位処理データを選択するのが難しい場合であっても、時系列データの異常判定を高精度で行うことができるよう評価値分布を更新することが可能となる。
【0030】
上記第2の発明によれば、上記第1の発明と同様の効果が得られる。
【0031】
上記第3の発明によれば、各時系列データを評価することによって得られた評価値の分布を表す評価値分布を用いた処理が行われる。例えば、新しく時系列データが得られた際に、当該時系列データの異常判定を行うことができる。その異常判定には評価値分布が用いられるところ、当該評価値分布の更新が行われる。それ故、異常判定の際に、例えば時系列データの最近の傾向を考慮することが可能となる。以上より、時系列データを用いた異常検出を時間の経過を考慮して充分な精度で行うことが可能となる。
また、複数の処理ユニットにそれぞれ対応する複数の評価値分布の中からAI(人工知能)の技術によって最良と判断された評価値分布が更新後の評価値分布に定められる。このため、更新後の評価値分布を用いた異常判定は高精度なものとなる。以上より、上記第8の発明と同様、評価値分布の作成元となる単位処理データを選択するのが難しい場合であっても、時系列データの異常判定を高精度で行うことができるよう評価値分布を更新することが可能となる。
【0032】
上記第4の発明によれば、上記第3の発明と同様の効果が得られる。
【0033】
上記第5の発明によれば、上記第3の発明と同様の効果が得られる。
【0035】
上記第6の発明によれば、上記第1の発明と同様の効果が得られる。
上記第7の発明によれば、上記第2の発明と同様の効果が得られる。
上記第8の発明によれば、上記第3の発明と同様の効果が得られる。
【図面の簡単な説明】
【0036】
【
図1】本発明の一実施形態に係るデータ処理システム(基板処理装置用のデータ処理システム)の全体構成を示すブロック図である。
【
図2】上記実施形態において、基板処理装置の概略構成を示す図である。
【
図3】上記実施形態において、ある1つの時系列データをグラフ化して表した図である。
【
図4】上記実施形態において、単位処理データについて説明するための図である。
【
図5】上記実施形態において、データ処理装置のハードウェア構成を示すブロック図である。
【
図6】上記実施形態において、評価値分布について説明するための図である。
【
図7】上記実施形態において、時系列データを用いた異常検出についての全体の処理手順の概略を示すフローチャートである。
【
図8】上記実施形態において、異常判定対象設定画面の一例を示す図である。
【
図9】上記実施形態において、異常度の判定について説明するための図である。
【
図10】上記実施形態において、評価値分布の作成の詳細な手順を示すフローチャートである。
【
図11】上記実施形態において、単位処理データ選択画面の一例を示す図である。
【
図12】上記実施形態において、パラメータ指定画面の一例(表示直後の例)を示す図である。
【
図13】上記実施形態において、パラメータ指定画面の一例(ユーザーよるパラメータ指定後の例)を示す図である。
【
図14】上記実施形態において、評価値分布の更新について説明するための図である。
【
図15】上記実施形態の第1の変形例において、時系列データを用いた異常検出についての全体の処理手順の概略を示すフローチャートである。
【
図16】上記実施形態の第2の変形例において、評価値分布の更新の詳細な手順を示すフローチャートである。
【
図17】上記実施形態の第2の変形例において、処理ユニット毎の評価値の分布の作成について説明するための図である。
【
図18】上記実施形態の第2の変形例において、ばらつきに加えて評価値も考慮した方が好ましいことについて説明するための図である。
【
図19】上記実施形態の第3の変形例において、学習器として用意されるニューラルネットワークの一例を示す図である。
【
図20】上記実施形態の第3の変形例において、ニューラルネットワークの入力層に入力されるデータについて説明するための図である。
【
図21】上記実施形態の第3の変形例において、学習データについて説明するための図である。
【発明を実施するための形態】
【0037】
以下、添付図面を参照しつつ本発明の一実施形態について説明する。
【0038】
<1.全体構成>
図1は、本発明の一実施形態に係るデータ処理システム(基板処理装置用のデータ処理システム)の全体構成を示すブロック図である。このデータ処理システムは、データ処理装置100と基板処理装置200とによって構成されている。データ処理装置100と基板処理装置200とは通信回線300によって互いに接続されている。
【0039】
データ処理装置100は、機能的には、単位処理データ選択部110と評価値算出部120と評価値分布作成部130と評価値分布更新部140と異常度判定部150とデータ記憶部160とを有している。単位処理データ選択部110は、既に蓄積されている後述の複数の単位処理データから2以上の単位処理データを選択する。評価値算出部120は、基板処理で得られる時系列データの異常度の判定等に用いるための評価値の算出を行う。例えば、評価値算出部120は、単位処理データ選択部110によって選択された単位処理データに含まれる各時系列データについての評価値を算出する。評価値分布作成部130は、評価値算出部120によって算出された評価値(各時系列データについての評価値)に基づいて、後述する評価値分布を作成する。評価値分布更新部140は、評価値分布の更新を行う。異常度判定部150は、評価値分布が既に存在している状況下、基板処理装置200でレシピが実行されることによって新たに得られた時系列データについての異常度を当該時系列データの評価値と評価値分布とに基づいて判定する。評価値算出部120と異常度判定部150とによって評価値分布利用部が実現されている。なお、本実施形態においては、基板処理の結果としては評価値の値が小さいほど好ましいものと仮定する。
【0040】
データ記憶部160には、本実施形態における各種処理を実行するためのデータ処理プログラム161が保持されている。データ記憶部160には、また、基板処理装置200から送られる時系列データを格納する時系列データDB162、基準データを格納する基準データDB163、および評価値分布データを格納する評価値分布データDB164が含まれている。基準データおよび評価値分布データについての説明は後述する。なお、「DB」は「データベース」の略である。
【0041】
基板処理装置200は、複数個の処理ユニット222を含んでいる。各処理ユニット222では、当該処理ユニット222の動作状態を示す複数の物理量が測定される。これにより、複数の時系列データ(より詳しくは、複数のパラメータについての時系列データ)が得られる。各処理ユニット222における処理で得られた時系列データは、基板処理装置200からデータ処理装置100に送られ、上述したように時系列データDB162に格納される。
【0042】
図2は、基板処理装置200の概略構成を示す図である。基板処理装置200は、インデクサ部210と処理部220とを備えている。インデクサ部210および処理部220の制御は、基板処理装置200の内部の制御部(不図示)によって行われる。
【0043】
インデクサ部210は、複数枚の基板を収容可能な基板収容器(カセット)を載置するための複数個の基板収容器保持部212と、基板収容器からの基板の搬出および基板収容器への基板の搬入を行うインデクサロボット214とを含んでいる。処理部220は、処理液を用いて基板の洗浄等の処理を行う複数個の処理ユニット222と、処理ユニット222への基板の搬入および処理ユニット222からの基板の搬出を行う基板搬送ロボット224とを含んでいる。処理ユニット222の数は、例えば12個である。この場合、例えば、3個の処理ユニット222を積層したタワー構造体が
図2に示すように基板搬送ロボット224の周囲の4箇所に設けられる。各処理ユニット222には基板に対する処理を行う空間であるチャンバが設けられており、チャンバ内で基板に処理液が供給される。なお、各処理ユニット222は、1つのチャンバを含んでいる。すなわち、処理ユニット222とチャンバとは1対1で対応する。
【0044】
基板に対する処理が行われる際、インデクサロボット214は、基板収容器保持部212に載置されている基板収容器から処理対象の基板を取り出して、当該基板を基板受け渡し部230を介して基板搬送ロボット224に渡す。基板搬送ロボット224は、インデクサロボット214から受け取った基板を対象の処理ユニット222に搬入する。基板に対する処理が終了すると、基板搬送ロボット224は、対象の処理ユニット222から基板を取り出して、当該基板を基板受け渡し部230を介してインデクサロボット214に渡す。インデクサロボット214は、基板搬送ロボット224から受け取った基板を対象の基板収容器に搬入する。
【0045】
このデータ処理システムでは、各処理ユニット222での処理に関わる機器の異常や各処理ユニット222で行われた処理の異常などを検出するために、レシピが実行される都度、時系列データが取得される。本実施形態で取得される時系列データは、レシピが実行された際に各種の物理量(例えば、ノズルの流量、チャンバの内圧、チャンバの排気圧など)をセンサなどを用いて測定して測定結果を時系列に並べて得られたデータである。各種の物理量はそれぞれ対応するパラメータの値として処理される。なお、1つのパラメータは1種類の物理量に対応する。
【0046】
図3は、ある1つの時系列データをグラフ化して表した図である。この時系列データは、1つのレシピが実行されたときに1つの処理ユニット222内のチャンバで1枚の基板に対する処理によって得られた或る物理量についてのデータである。なお、時系列データは複数の離散値で構成されるデータであるが、
図3では時間的に隣接する2つのデータ値の間を直線で結んでいる。ところで、1つのレシピが実行されたときには、当該レシピが実行された処理ユニット222毎に、様々な物理量についての時系列データが得られる。そこで、以下、1つのレシピが実行されたときに1つの処理ユニット222内のチャンバで1枚の基板に対して行われる処理のことを「単位処理」といい、単位処理によって得られる一群の時系列データのことを「単位処理データ」という。1つの単位処理データには、模式的には
図4に示すように、複数のパラメータについての時系列データおよび該当の単位処理データを特定するための複数の項目(例えば、処理の開始時刻・処理の終了時刻など)のデータ等からなる属性データが含まれている。なお、
図4に関し、「パラメータA」,「パラメータB」,および「パラメータC」は、互いに異なる種類の物理量に対応している。
【0047】
機器や処理の異常を検出するためには、レシピの実行によって得られた単位処理データを、処理結果として理想的なデータ値を持つ単位処理データと比較すべきである。より詳しくは、レシピの実行によって得られた単位処理データに含まれる複数の時系列データを、それぞれ、処理結果として理想的なデータ値を持つ単位処理データに含まれる複数の時系列データと比較すべきである。そこで、本実施形態においては、各レシピに関し、評価対象の単位処理データと比較するための単位処理データ(評価対象の単位処理データに含まれる複数の時系列データとそれぞれ比較するための複数の時系列データからなる単位処理データ)が基準データ(評価値を算出する際の基準となるデータ)として定められている。この基準データが上述した基準データDB163(
図1参照)に格納されている。なお、各レシピに関し、パラメータ毎に、異なる単位処理データに含まれている時系列データが基準データとして採用されても良い。すなわち、或るレシピに対応付けられているパラメータに着目したとき、或るパラメータについての基準データとして扱われる時系列データと別のパラメータについての基準データとして扱われる時系列データとが互いに異なる単位処理データに含まれる時系列データであっても良い。
【0048】
ここで、
図5を参照しつつ、データ処理装置100のハードウェア構成について説明する。データ処理装置100は、CPU11と主メモリ12と補助記憶装置13と表示部14と入力部15と通信制御部16と記録媒体読み取り部17とを備えている。CPU11は、与えられた命令に従い各種演算処理等を行う。主メモリ12は、実行中のプログラムやデータ等を一時的に格納する。補助記憶装置13は、電源がオフされても保持されるべき各種プログラム・各種データを格納する。上述したデータ記憶部160は、この補助記憶装置13によって実現される。表示部14は、例えば、オペレータが作業を行うための各種画面を表示する。この表示部14には、例えば、液晶ディスプレイが使用される。入力部15は、例えばマウスやキーボードなどであって、オペレータによる外部からの入力を受け付ける。通信制御部16は、データ送受信の制御を行う。記録媒体読み取り部17は、プログラムなどを記録した記録媒体400のインターフェイス回路である。記録媒体400には、例えば、CD-ROMやDVD-ROMなどの非一過性の記録媒体が使用される。
【0049】
データ処理装置100が起動すると、補助記憶装置13(データ記憶部160)に保持されたデータ処理プログラム161(
図1参照)が主メモリ12に読み込まれ、その主メモリ12に読み込まれたデータ処理プログラム161をCPU11が実行する。これにより、各種データ処理を行う機能がデータ処理装置100によって提供される。なお、データ処理プログラム161は、例えば、CD-ROMやDVD-ROMなどの記録媒体400に記録された形態や通信回線300を介したダウンロードの形態で提供される。
【0050】
<2.基板処理の評価>
<2.1 評価値分布>
本実施形態においては、各時系列データについての異常判定を行うために、評価値算出部120で求められた評価値の値ごとの度数を表す評価値分布が用いられる。この評価値分布について、
図6を参照しつつ詳しく説明する。
【0051】
評価値分布はパラメータ毎(すなわち、時系列データの種類毎)に用意される。或る1つのパラメータに着目すると、時系列データの評価値毎の度数を表す分布は例えば
図6のA部に示すようなものとなる。
図6のA部に関し、μは分布の生成元の評価値の平均値であり、σは分布の生成元の評価値の標準偏差である。ここで、分布の生成元の評価値のそれぞれについて標準化を行うことによって、評価値分布5として
図6のB部に示すような分布(平均値が0かつ分散・標準偏差が1である分布)を作成することができる。なお、標準化前の評価値をSoldとし、標準化後の評価値をSnewとすると、標準化は次式(1)によって行われる。
【数1】
【0052】
上述のような評価値分布5が用意されている状況下、レシピの実行によって新たに時系列データが生成されると、当該時系列データについての評価値が求められる。そして、その求められた評価値に対して、評価値分布5を作成した際の平均値μおよび標準偏差σを用いて上式(1)に基づく標準化が行われる。その標準化によって得られた評価値に基づいて、該当の時系列データについての異常度が決定される。
【0053】
異常度の決定に関し、本実施形態においては、標準化後の評価値の範囲が4つのゾーンに区分されている。すなわち、4つのレベルで各時系列データの異常度が判定される。具体的には、
図6のB部に示すように、(標準化後の)評価値が1未満であれば異常度はレベル1(L1)と判定され、評価値が1以上2未満であれば異常度はレベル2(L2)と判定され、評価値が2以上3未満であれば異常度はレベル3(L3)と判定され、評価値が3以上であれば異常度はレベル4(L4)と判定される。
【0054】
ところで、標準化後の評価値の範囲についての4つのゾーンへの区分は標準偏差に基づいて行われる。すなわち、ゾーン間の閾値は自動的に決定される。従って、従来とは異なり、時系列データの異常判定を行うためにユーザーは閾値を設定するという煩雑な作業を要することはない。
【0055】
<2.2 全体の処理フロー>
図7は、時系列データを用いた異常検出についての全体の処理手順の概略を示すフローチャートである。なお、この処理の開始前にある程度の数の時系列データが既に蓄積されているものと仮定する。
【0056】
まず、時系列データを用いた異常検出(各時系列データについての異常判定)を可能にするために、上述した評価値分布5の作成が行われる(ステップS10)。本実施形態においては、全ての処理ユニット222に共通の評価値分布5がパラメータ毎に作成される。但し、各パラメータについての評価値分布5が処理ユニット222毎に作成されるようにしても良い。評価値分布5の作成の詳細な手順については後述する。
【0057】
次に、ユーザーによって、異常判定の対象とする処理ユニット(チャンバ)およびパラメータの指定が行われる(ステップS20)。この際、データ処理装置100の表示部14に例えば
図8に示すような異常判定対象設定画面(
図8には、実際に表示される画面の一部のみを示している。
図11,
図12,
図13も同様。)500が表示され、異常判定の対象とする処理ユニットおよびパラメータをユーザーが指定する。
図8に示す例では、チェックボックスが選択状態となっている処理ユニットおよびリストボックス内で選択状態となっているパラメータが異常判定の対象として指定されている。なお、ステップS10では全ての処理ユニット222での処理で得られた時系列データを用いて全てのパラメータについての評価値分布5が作成されるが、ステップS20で指定された処理ユニットでの処理で得られた時系列データのうちのステップS20で指定されたパラメータについての時系列データだけが実際に異常判定が行われる対象となる。
【0058】
その後、基板処理装置200でレシピが実行される(ステップS30)と、当該レシピの実行によって得られた時系列データのうちの異常判定対象の時系列データについてのスコアリングが行われる(ステップS40)。なお、スコアリングとは、各時系列データを基準データと比較してそれによって得られる結果を評価値として数値化する処理である。スコアリングの終了後、各時系列データについて、対応する評価値分布5を用いて異常度の判定が行われる(ステップS50)。このステップS50では、まず、ステップS40で得られた評価値に標準化が施される。評価値の標準化は上式(1)によって行われるところ、上式(1)中の平均値μおよび標準偏差σには、該当の評価値分布5の作成の際に得られた平均値μおよび標準偏差σが使用される。そして、評価値分布5上における標準化後の評価値の位置に基づいて異常度が決定される。例えば、標準化後の評価値が
図9において符号51を付した位置の値である場合、該当の時系列データの異常度は「レベル2」と判定される。
【0059】
本実施形態においては、いずれかのレシピの内容に変更があるまで、ステップS30~ステップS50の処理が繰り返される。すなわち、或るレシピが実行されたときの異常度の判定は、当該レシピの内容に変更があるまで、同じ評価値分布5を用いて行われる。いずれかのレシピの内容に変更があると、評価値分布5の更新が行われる(ステップS60)。本実施形態によれば、このように評価値分布の更新が行われるので、例えば最近の傾向を考慮しつつ、時系列データを用いた異常検出を行うことが可能となる。なお、評価値分布5の更新についての詳しい説明は後述する。評価値分布5の更新後、処理はステップS30に戻る。
【0060】
なお、本実施形態においては、ステップS40およびステップS50によって評価値分布利用ステップが実現され、ステップS60によって評価値分布更新ステップが実現されている。
【0061】
<3.評価値分布の作成方法>
図10を参照しつつ、本実施形態における評価値分布5の作成(
図7のステップS10)の詳細な手順について説明する。まず、ユーザーによって、評価値分布5の作成元となる2以上の単位処理データの選択が行われる(ステップS110)。ステップS110では、データ処理装置100の表示部14に例えば
図11に示すような単位処理データ選択画面600が表示される。単位処理データ選択画面600には、開始時点入力ボックス61と終了時点入力ボックス62と処理ユニット指定ボックス63とレシピ指定ボックス64と抽出データ表示領域65と確定ボタン66とが含まれている。開始時点入力ボックス61と終了時点入力ボックス62とは日時の指定が可能なリストボックスであって、処理ユニット指定ボックス63とレシピ指定ボックス64とは複数の項目から1以上の項目の選択が可能なリストボックスである。ユーザーは、開始時点入力ボックス61と終了時点入力ボックス62とで期間を指定し、処理ユニット指定ボックス63で処理ユニットを指定し、レシピ指定ボックス64でレシピを指定する。これにより、指定された条件に該当する単位処理データの一覧が抽出データ表示領域65に表示される。ユーザーは、抽出データ表示領域65に表示された単位処理データの一部または全てを選択した状態で確定ボタン66を押下する。これにより、評価値分布5の作成元となる単位処理データが確定する。なお、必ずしも期間、処理ユニット、およびレシピの全てが指定される必要はなく、期間、処理ユニット、およびレシピのうちの少なくともいずれかが指定されれば良い。
【0062】
次に、ステップS110で選択された単位処理データ(以下、「被選択単位処理データ」という。)に含まれる各時系列データについて、評価値の算出が行われる(ステップS111)。本実施形態においては、予め基準データが基準データDB163に保持されている。すなわち、被選択単位処理データに含まれる各時系列データと比較すべき基準データは基準データDB163に保持されている。従って、ステップS111では、被選択単位処理データに含まれる各時系列データが基準データDB163(
図1参照)に保持されている基準データと比較され、当該各時系列データについての評価値が算出される。
【0063】
次に、ステップS111で算出された評価値の標準化が行われる(ステップS112)。上述したように、評価値の標準化は上式(1)を用いて行われる。ところで、評価値分布5はパラメータ毎に作成されるので、上式(1)中の平均値μおよび標準偏差σはパラメータ毎に求められる。
【0064】
最後に、パラメータ毎(すなわち、時系列データの種類毎)に、標準化後の評価値のデータに基づいて評価値分布5が作成される(ステップS113)。この評価値分布5を構成するデータは評価値分布データとして上述した評価値分布データDB164(
図1参照)に保持される。
【0065】
<4.評価値分布の更新方法>
次に、評価値分布5の更新について説明する。基板処理装置200でレシピが実行されることによって得られる単位処理データには、複数のパラメータについての時系列データが含まれている。上述したように、本実施形態においては、そのパラメータ毎に評価値分布5が作成される。ところで、基板処理装置200では、レシピの内容に変更が施されることがある。レシピの内容に変更があると、その変更の前後で、レシピの実行によって得られる時系列データの中身が異なるものとなる。このとき、仮にレシピの変更後に得られた時系列データの異常判定をレシピの変更前に作成された評価値分布5を用いて行うと、当該異常判定の結果として正しい結果が得られないおそれがある。そこで、本実施形態においては、レシピの内容に変更があったときに評価値分布5の更新が行われる。なお、レシピの内容に変更があった直後には変更後の内容に基づく時系列データが蓄積されていないため、評価値分布5の更新は変更後の内容に基づく時系列データがある程度蓄積されてから行われることが好ましい。
【0066】
評価値分布5の更新の際、評価値分布更新部140は、変更前のレシピに対応付けられているパラメータと変更後のレシピに対応付けられているパラメータとを比較する。そして、評価値分布更新部140は、レシピの内容の変更に伴って追加されたパラメータに対応する評価値分布5を既に蓄積されている評価値(該当のパラメータについての時系列データの評価値)のデータに基づいて作成する。また、内容に変更があったパラメータの指定がユーザーによって行われ、評価値分布更新部140は、その指定されたパラメータに対応する評価値分布5を再作成する。
【0067】
例えば、或るレシピの内容の変更によって、当該レシピに対応付けられているパラメータ群が以下のように変化したと仮定する。
変更前:パラメータA、パラメータB、パラメータC、パラメータD
変更後:パラメータA、パラメータC、パラメータD、パラメータE
なお、パラメータAおよびパラメータDについては時系列データの中身に変化はなく、パラメータCについては時系列データの中身に変化があると仮定する。
【0068】
上記の例の場合、評価値分布5の更新の際に、データ処理装置100の表示部14に例えば
図12に示すようなパラメータ指定画面700が表示される。パラメータ指定画面700には、変更後のパラメータ群(パラメータA、パラメータC、パラメータD、パラメータE)に対応するチェックボックスが含まれている。レシピの内容の変更に伴って追加されたパラメータであるパラメータEに対応するチェックボックスは予め選択状態(
図12では、網掛け状態)となっている。このようなパラメータ指定画面700において、パラメータCについては時系列データの中身に変化があるので、
図13に示すようにユーザーはパラメータCに対応するチェックボックスを選択状態にする。このようにしてユーザーによるパラメータの指定が行われた後、実際に評価値分布5の更新が行われる。その結果、模式的には
図14に示すように評価値分布5が更新される。具体的には、レシピの内容の変更に伴って削除されたパラメータであるパラメータBについての評価値分布5は削除され、レシピの内容の変更に伴って追加されたパラメータであるパラメータEについての評価値分布5が新規に作成され、ユーザーによって指定されたパラメータであるパラメータCについての評価値分布5が再作成される。なお、パラメータAおよびパラメータDについての評価値分布5は、レシピの内容の変更前の状態で維持される。
【0069】
以上のように、レシピの内容の変更に関わるパラメータについての評価値分布5のみ更新(作成、再作成、削除)が行われる。これにより、評価値分布5の更新に多大な時間を要することが防止される。なお、更新後の評価値分布5の具体的な作成手順については、新規で評価値分布5を作成する際と同様の手順(
図10参照)を採用することができる。
【0070】
<5.効果>
本実施形態によれば、ユーザーによって選択された単位処理データに含まれる各時系列データについての評価値が算出される。そして、その評価値に対して統計的な標準化が施され、標準化後の評価値の分布を表す評価値分布5が作成される。このようにして評価値分布5が作成されている状況下、レシピの実行によって新しく時系列データが生成されると、当該時系列データについての評価値(詳しくは、スコアリングによって得られた評価値の標準化後の値)に基づいて異常判定が行われる。その異常判定には評価値分布5が用いられるところ、本実施形態においては評価値分布5の更新が行われる。従って、異常判定の際に、例えば時系列データの最近の傾向を考慮することが可能となる。以上のように、本実施形態によれば、時系列データを用いた異常検出を時間の経過を考慮して充分な精度で行うことが可能となる。
【0071】
<6.変形例>
以下、評価値分布5の更新に関する変形例について説明する。
【0072】
<6.1 第1の変形例>
上記実施形態においては、レシピの内容に変更があったときに評価値分布5が更新されていた。しかしながら、本発明はこれに限定されず、スコアリングが実行される都度、評価値分布5が更新されるようにしても良い。
【0073】
図15は、本変形例における時系列データを用いた異常検出についての全体の処理手順の概略を示すフローチャートである。上記実施形態においては、いずれかのレシピの内容に変更があるまで、ステップS30~ステップS50の処理が繰り返されていた(
図7参照)。これに対して、本変形例においては、スコアリング(ステップS40)の結果に基づいて異常度の判定(ステップS50)が行われた後、必ず評価値分布5の更新(ステップS60)が行われる。なお、ステップS40によって異常度判定用評価値算出ステップが実現される。
【0074】
ところで、評価値分布5を作成するためには、作成元の全ての単位処理データに基づいて平均値および標準偏差の算出を行う必要がある。すなわち、評価値分布5の更新をスコアリングが実行される都度行うためには、スコアリングの都度、平均値および標準偏差の算出を行う必要がある。これに関し、仮に、スコアリングの都度、評価値分布5の作成元の全ての単位処理データを用いて平均値および標準偏差の算出が行われると、計算のための負荷が非常に大きくなる。そこで、評価値分布5の作成元の単位処理データの数がn個からn+1個に増えたときに以下の式(2)~(4)を用いて逐次的に平均値および分散(標準偏差の2乗)を求めるようにすれば良い。
【数2】
ここで、μ
n+1は評価値分布5の作成元の単位処理データの数がn+1個に増えた状態での評価値の平均値であり、μ
nは評価値分布5の作成元の単位処理データの数がn個であった状態での評価値の平均値であり、x
n+1は追加された単位処理データの評価値であり、σ
2
n+1は評価値分布5の作成元の単位処理データの数がn+1個に増えた状態での評価値の分散であり、σ
2
nは評価値分布5の作成元の単位処理データの数がn個であった状態での評価値の分散である。
【0075】
上式(3)を用いてμn+1を求める際には既にμnは求められており、また、上式(4)を用いてσ2
n+1を求める際には既にσ2
nは求められている。従って、更新後の評価値分布5を作成するための平均値および標準偏差(標準偏差は分散から簡単に得られる)を比較的低い負荷で求めることが可能となる。
【0076】
評価値分布5の作成元の単位処理データの数が少なければ、時系列データの異常判定に関して良好な精度が得られない。この点、本変形例によれば、スコアリングが実行される都度、評価値分布5が更新されるので、異常判定の精度が徐々に向上する。また、平均値や標準偏差が一定範囲内の値に収束する(異常判定に関して充分な精度が得られる)までには多少の時間を要するものの、レシピの実行結果としての単位処理データが全く得られていない状況下でもスコアリングや評価値分布5の作成に関する各種の設定作業を予め行うことが可能となる。
【0077】
<6.2 第2の変形例>
上記実施形態においては、ユーザーが任意に選択した単位処理データに基づいて、評価値分布5の作成・更新が行われていた。しかしながら、本発明はこれに限定されず、評価値分布5の更新が指定された処理ユニット222での処理で得られた単位処理データに基づいて行われるようにしても良い。
【0078】
図16は、本変形例における評価値分布5の更新の詳細な手順を示すフローチャートである。本変形例においては、評価値分布5の更新の際、まず、スコアリング結果(評価値のデータ)の抽出が行われる(ステップS600)。ステップS600では、例えば、1つの評価値分布5につき直近に得られた1000個の単位処理データについてのスコアリング結果が抽出される。
【0079】
次に、ステップS600で抽出されたスコアリング結果に基づいて、処理ユニット222毎に評価値のばらつき(分散または標準偏差)が算出される(ステップS601)。なお、この際、評価値のデータの標準化は行われない。ところで、ステップS600で抽出されたスコアリング結果に基づいて分布(評価値の分布)が作成されると、当該分布は、模式的には例えば
図17に示すように、処理ユニット毎に異なるものとなる。ここで、通常、出力結果に異常度の高い時系列データを多く含んでいる処理ユニット222ほど、上述の分布に基づくばらつきは大きくなると考えられる。そこで、上述のように、ステップS601では処理ユニット222毎に評価値のばらつきが算出される。そして、ステップS601で算出されたばらつきのうち最も小さいばらつきが得られた処理ユニット222の指定が行われる(ステップS602)。
【0080】
その後、ステップS602で指定された処理ユニット222での処理で得られた単位処理データが、例えば上述した直近に得られた1000個の単位処理データから抽出される(ステップS603)。次に、ステップS603で抽出された単位処理データ(以下、「被抽出単位処理データ」という。)に含まれる各時系列データについて、評価値の算出が行われ(ステップS604)、さらに、ステップS604で算出された評価値の標準化が行われる(ステップS605)。なお、ステップS605でも評価値の標準化は上式(1)を用いて行われる。最後に、パラメータ毎(すなわち、時系列データの種類毎)に、標準化後の評価値のデータに基づいて更新後の評価値分布5が作成される(ステップS606)。
【0081】
なお、本変形例においては、ステップS601によってばらつき算出ステップが実現され、ステップS602によって処理ユニット指定ステップが実現され、ステップS603によって単位処理データ抽出ステップが実現され、ステップS604によって分布更新用評価値算出ステップが実現され、ステップS605およびステップS606によって評価値分布作成ステップが実現されている。
【0082】
本変形例によれば、評価値分布5の作成元となる単位処理データを選択するのが難しい場合であっても、処理ユニット222毎のスコアリング結果に基づいて、安定した処理が行われると考えられる処理ユニット222の選択(指定)が行われる。そして、その選択された処理ユニット222での処理で得られた単位処理データに基づいて、更新後の評価値分布5が作成される。このため、当該評価値分布5を用いた異常判定は高精度なものとなる。以上のように、本変形例によれば、評価値分布5の作成元となる単位処理データを選択するのが難しい場合であっても、時系列データの異常判定を高精度で行うことが可能となるように、評価値分布5が更新される。
【0083】
なお、上述の例では、ステップS602での処理ユニット222の指定は評価値のばらつきのみを考慮して行われる。これに関し、例えば
図18に示すように、比較的異常度の低い時系列データを多く含んでいる処理ユニットに対応する分布よりも比較的異常度の高い時系列データを多く含んでいる処理ユニットに対応する分布の方がばらつきが小さくなるケースが生じることも考えられる。そこで、例えば、上記ステップS601(
図16参照)において評価値のばらつきに加えて評価値の平均値を算出し、ステップS602において評価値のばらつきおよび評価値の平均値の双方を考慮して処理ユニット222の指定が行われるようにしても良い。この場合、ステップS601によって統計値算出ステップが実現される。
【0084】
<6.3 第3の変形例>
上記実施形態においては、更新後の評価値分布5は新規で評価値分布5を作成する際と同様の手順(
図10参照)によって作成されていた。しかしながら、本発明はこれに限定されず、AI(人工知能)の技術を用いて更新後の評価値分布5を定めるようにしても良い。そこで、以下、
図19~
図21を参照しつつ、評価値分布5の更新にAIの技術を用いる手法について説明する。なお、本変形例では全ての処理ユニット222に共通の評価値分布5がパラメータ毎に用意されるものと仮定する。また、以下では、1つのパラメータについての評価値分布5に着目する。
【0085】
本変形例においては、入力層と中間層と出力層とによって構成される例えば
図19に示すようなニューラルネットワークが学習器として用意される。中間層の層数は限定されず、また、複数の中間層において或る層のユニット数と別の層のユニット数とが異なっていても良い。入力層のユニット数についても、評価値分布5のデータを適切に入力できるのであれば、特に限定されない。なお、ニューラルネットワークの種類としては、例えば、一般的な順伝播型ニューラルネットワークや畳み込みニューラルネットワークを採用することができる。
【0086】
図19に示すように、入力層には評価値分布5のデータが入力され、出力層からは点数のデータが出力される。例えば入力層が
図20に示すように100個のユニットU(1)~U(100)によって構成されている場合、評価値の取り得る範囲が100個の範囲に区分されるよう99個の閾値TH(1)~TH(99)が設定される。なお、それら閾値TH(1)~TH(99)については、「TH(1)<TH(2)<TH(3)<・・・<TH(99)」という関係を満たしているものとする。このような前提の下、或る1つの評価値分布5のデータが入力層に入力される際には、例えば、1番目のユニットU(1)には閾値TH(1)未満の値(評価値としての値)の度数が入力され、2番目のユニットU(2)には閾値TH(1)以上かつ閾値TH(2)未満の値の度数が入力される(
図20参照)。上述のように評価値分布5のデータが入力層に入力されると、その時のニューラルネットワーク内の重み・バイアスの値に基づいてデータの順伝播が行われ、出力層から点数のデータが出力される。
【0087】
学習器として上述のようなニューラルネットワークが用意されている状況下、実際に評価値分布5の更新が行われるのに先立って、当該ニューラルネットワークの学習が行われる必要がある。本変形例においては、ニューラルネットワークの学習のために、それぞれが評価値分布5と教師データとしての点数とからなる模式的には
図21に示すような多数の学習データが用意される。なお、
図21において符号59で示す部分のデータが1つの学習データに相当する。各評価値分布5には、例えば0点以上5点以下の点数が割り当てられている。
【0088】
学習の際には、各学習データについて、評価値分布5のデータを入力層に与えることによって得られる点数(出力層から出力される点数)と教師データとしての点数との2乗誤差が求められる。そして、誤差逆伝播法によって、全ての学習データについての2乗誤差の総和が最小となるように、ニューラルネットワーク内の重み・バイアスの値が求められる。
【0089】
評価値分布5の更新の際には、以上のようにして予め学習が行われているニューラルネットワークが用いられる。具体的には、学習済みのニューラルネットワークを用いて以下の手順により更新後の評価値分布5の設定が行われる。
【0090】
まず、処理ユニット222毎に、例えば直近に得られた該当パラメータについての最新の1000個の時系列データを用いて評価値分布5が作成される。これにより、処理ユニット222の数が12であれば、12個の評価値分布5が作成される。そして、12個の処理ユニット222にそれぞれ対応する12個の評価値分布5のデータが順次にニューラルネットワークの入力層に入力される。その結果、ニューラルネットワークの出力層からは12個の点数のデータが順次に出力される。本変形例においては、それら12個の点数のうち最も高い点数(最も良い点数)を得た評価値分布5が更新後の評価値分布5に定められる。
【0091】
以上のように、本変形例においては、それぞれが評価値分布5と教師データとしての点数とからなる複数の学習データを用いて予め学習が行われているニューラルネットワーク(学習器)に複数の処理ユニット222に対応する複数の評価値分布5が入力され、当該複数の評価値分布5のうちニューラルネットワークから出力された点数が最も良い評価値分布5が更新後の評価値分布5に定められる。
【0092】
本変形例によれば、評価値分布5の更新の際に、処理ユニット222毎に最新の時系列データに基づいて評価値分布5が作成される。そして、複数の評価値分布5の中からAIの技術によって最良と判断された評価値分布5が更新後の評価値分布5に定められる。このため、更新後の評価値分布5を用いた異常判定は高精度なものとなる。以上のように、本変形例によれば、上記第2の変形例と同様、評価値分布5の作成元となる単位処理データを選択するのが難しい場合であっても、時系列データの異常判定を高精度で行うことが可能となるように、評価値分布5が更新される。
【0093】
<7.その他>
上記で説明した実施形態や変形例を矛盾を生ずることなく適宜に組み合わせた構成も、本発明の趣旨に反しない限り本発明の範囲に含まれる。
【符号の説明】
【0094】
5…評価値分布
100…データ処理装置
110…単位処理データ選択部
120…評価値算出部
130…評価値分布作成部
140…評価値分布更新部
150…異常度判定部
160…データ記憶部
161…データ処理プログラム
200…基板処理装置
222…処理ユニット