(57)【特許請求の範囲】
【請求項１】
監視対象装置において繰り返し実行される処理中の所定タイミングにおいて取得した、当該監視対象装置の運転状態の指標となる観測値をまとめた要約値に対して統計モデリングを適用することにより、前記要約値からノイズを除去した状態を推測し、当該推測に基づき一期先の要約値を予測した予測値を生成し、新しい要約値が取得されるごとに逐次、前記予測値を更新する予測値生成手順と、
前記更新された予測値の任意の信頼区間を閾値として設定して、前記監視対象装置の異常有無を検知する検知手順と、
を、コンピュータに実行させることを特徴とする異常検知プログラム。 
【請求項２】
前記予測値生成手順において、前記コンピュータに、前記統計モデリングとして、フィルタリングを用いた予測モデルを適用して予測値を生成させる、請求項１に記載の異常検知プログラム。 
【請求項３】
前記予測値生成手順において、前記コンピュータに、カルマンフィルタリングで得たフィルタリング値またはスムージング値を、予測値として生成させる、請求項２に記載の異常検知プログラム。 
【請求項４】
前記予測値生成手順において、前記コンピュータに、前記統計モデリングとして、マルコフ連鎖モンテカルロ法を用いた予測モデルを適用して前記予測値を生成させる、請求項１に記載の異常検知プログラム。 
【請求項５】
前記予測値生成手順において、前記コンピュータに、マルコフ連鎖モンテカルロ法を用いた予測モデルで事後分布を推定させ、当該事後分布の平均値、最頻値および中央値のいずれか１つを前記予測値として生成させる、請求項４に記載の異常検知プログラム。 
【請求項６】
前記検知手順において、前記コンピュータに、前記予測値と前記要約値との残差、当該残差の二乗、および、前記予測値と前記要約値との標準化残差のうち少なくともいずれか１つが閾値よりも大きい場合に異常を検知させる、請求項１から５のいずれか１項に記載の異常検知プログラム。 
【請求項７】
前記予測値生成手順において、前記コンピュータに、前記統計モデリングとして予測モデルと変化点検出モデルとを適用させる、請求項１から６のいずれか１項に記載の異常検知プログラム。 
【請求項８】
前記検知手順において、前記コンピュータに、前記要約値のベイジアン変化点のスコアが閾値を超えた場合に異常を検知させる、請求項１から７のいずれか１項に記載の異常検知プログラム。 
【請求項９】
監視対象装置において繰り返し実行される処理中の所定タイミングにおいて取得した、当該監視対象装置の運転状態の指標となる観測値をまとめた要約値に対して統計モデリングを適用することにより、前記要約値からノイズを除去した状態を推測し、当該推測に基づき一期先の要約値を予測した予測値を生成し、新しい要約値が取得されるごとに逐次、前記予測値を更新する予測値生成工程と、
前記更新された予測値の任意の信頼区間を閾値として設定して、前記監視対象装置の異常有無を検知する検知工程と、
を、コンピュータが実行することを特徴とする異常検知方法。 
【請求項１０】
前記予測値と前記要約値との残差、当該残差の二乗、および、前記予測値と前記要約値との標準化残差のうち少なくともいずれか１つと閾値とを縦軸に表示し、時間軸を横軸に表示する表を出力する出力工程を、前記コンピュータがさらに実行する、請求項９に記載の異常検知方法。 
【請求項１１】
前記要約値のベイジアン変化点のスコアと閾値とを縦軸に表示し、時間軸を横軸に表示する表を出力する出力工程を、前記コンピュータがさらに実行する、請求項９に記載の異常検知方法。 
【請求項１２】
前記予測値と、前記要約値との残差、当該残差の二乗、および、前記予測値と前記要約値との標準化残差のうち少なくともいずれか１つと閾値とを縦軸に表示し、時間軸を横軸に表示する第１の表と、前記要約値のベイジアン変化点のスコアと閾値とを縦軸に表示し、時間軸を横軸に表示する第２の表とを、時間軸をそろえて整列させた画像として出力する出力工程を、前記コンピュータがさらに実行する、請求項９に記載の異常検知方法。
【請求項１３】
監視対象装置において繰り返し実行される処理中の所定タイミングにおいて取得した、当該監視対象装置の運転状態の指標となる観測値をまとめた要約値に対して統計モデリングを適用することにより、前記要約値からノイズを除去した状態を推測し、当該推測に基づき一期先の要約値を予測した予測値を生成し、新しい要約値が取得されるごとに逐次、前記予測値を更新する予測値生成部と、
前記更新された予測値の任意の信頼区間を閾値として設定して、前記監視対象装置の異常有無を検知する検知部と、
を備える異常検知装置。 
【請求項１４】
前記予測値と前記要約値との残差、当該残差の二乗、および、前記予測値と前記要約値との標準化残差のうち少なくともいずれか１つと閾値とを縦軸に表示し、時間軸を横軸に表示する表を作成する作成部と、
前記作成部が作成した表を出力する出力部と、
をさらに備える、請求項１３に記載の異常検知装置。 
【請求項１５】
前記要約値のベイジアン変化点のスコアと閾値とを縦軸に表示し、時間軸を横軸に表示する表を作成する作成部と、
前記作成部が作成した表を出力する出力部と、
をさらに備える、請求項１３に記載の異常検知装置。 
【請求項１６】
前記予測値と、前記要約値との残差、当該残差の二乗、および、前記予測値と前記要約値との標準化残差のうち少なくともいずれか１つと閾値とを縦軸に表示し、時間軸を横軸に表示する第１の表と、前記要約値のベイジアン変化点のスコアと閾値とを縦軸に表示し、時間軸を横軸に表示する第２の表と、を作成する作成部と、
前記第１の表と前記第２の表とを、時間軸をそろえて整列させた画像として出力する出力部と、
をさらに備える、請求項１３に記載の異常検知装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、異常検知プログラム、異常検知方法および異常検知装置に関する。
【背景技術】
【０００２】
半導体を製造する工程においては、レシピすなわち処理の流れおよび内容が予め設定される。そして、半導体製造装置は、レシピ通りに制御されて処理を実行している場合に、所望の品質の半導体を製造する。半導体製造装置が、所望の制御状態にあることを、安定稼働状態にある、と呼ぶ。【０００３】
従来、半導体製造装置が安定稼働状態にあるか否かを監視し、半導体製造装置の異常を検知するためにシューハート管理図等の管理図が利用されている。管理図を用いた異常検知では、予め半導体製造装置に設けられたセンサから、各レシピの実行中のデータを取得し、取得したデータから平均値やばらつき等の要約値を算出する。そして、算出した要約値を時系列にプロットして、上限閾値と下限閾値（またはいずれか一方）を設定し、要約値が当該閾値を逸脱すると、異常と判定する。閾値としては、固定値や３σ等が使用される。【０００４】
このような異常検知の手法として、たとえば、半導体製造装置の運転駆動に関わる情報や処理室の内部状態に関わる情報等の装置ログ情報に基づいて、半導体製造装置の異常の予兆を検知する方法が知られている（特許文献１）。また、機械設備のメンテナンス中も診断を継続するよう構成された異常予兆診断装置も提案されている（特許文献２）。異常予兆診断装置は、機械設備が有する複数の装置のうちメンテナンス期間中も継続稼働する装置に関する時系列データに基づいて正常モデルを学習し、メンテナンス期間中も継続して診断を行う。また、プロセス系の異常診断を行う異常診断装置や、当該プロセス系におけるオペレータの判断を推測する装置等も提案されている（特許文献３）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−２８３０００号公報
【特許文献２】特開２０１５−１０８８８６号公報
【特許文献３】特開２０１２−９０６４号公報
【非特許文献】
【０００６】
【非特許文献１】今沢慶ほか「半導体製造装置の異常予兆検知方式」、精密工学会学術講演会講演論文集、2010S(0),  223-224,  2010、公益社団法人精密工学会
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来技術においては、半導体製造装置の高精度かつ効率的な異常検知を達成することが困難である。【０００８】
半導体製造装置の制御状態を確認するために設けられるセンサは数も多く、種類も多様である。そして、複数のセンサは、動的に制御され相互に作用干渉しあう。また、複数のセンサは経時的な変化の影響も受ける。このため、半導体製造の各工程において、センサ出力が毎回完全に再現されることはない。【０００９】
たとえば、従来の管理図に基づく異常検知の場合、短時間に完了する工程などサンプル数が極端に少ない工程や、センサの出力値にノイズや観測誤差が大きく影響する工程、動的で変化が大きい工程等は、要約値の再現性が低い。このため、半導体製造装置については、従来の管理図を用いた手法では、正確な異常検知が困難であった。【００１０】
また、異常を検出するための閾値の設定は、半導体製造装置を扱うオペレータが過去のデータに基づいて行う。このため、異常検知の正確性はオペレータの経験値に依存する。【００１１】
さらに、半導体製造装置のメンテナンス等が行われた場合、その前後でセンサからの出力値が大きく変動する場合がある。また、時間の経過に伴い、半導体製造装置の状態は変化する。また、半導体製造装置ごとに機差やセンサの個体差が存在する。このため、高精度な異常検知を実現するためには、半導体製造装置の時々の状態に応じて頻繁に閾値を調整する必要があり、手間がかかる。【００１２】
また、複数の半導体製造装置について、たとえばクラウドコンピューティング等を利用して大規模な異常検知サービスを提供しようとした場合、従来のように手作業で個々の装置のために閾値等を調整することは多大な労力を要し、現実的でない。
【課題を解決するための手段】
【００１３】
開示する実施形態において、異常検知装置、異常検知方法および異常検知プログラムは、監視対象装置において繰り返し実行される処理中の所定タイミングにおいて取得した、当該監視対象装置の運転状態の指標となる観測値をまとめた要約値に対して統計モデリングを適用する。そして、異常検知装置、異常検知方法および異常検知プログラムは、要約値からノイズを除去した状態を推測し、当該推測に基づき一期先の要約値を予測した予測値を生成する。さらに、異常検知装置、異常検知方法および異常検知プログラムは、予測値に基づき、監視対象装置の異常有無を検知する。
【発明の効果】
【００１４】
開示する実施態様によれば、高精度かつ効率的な異常検知を実現することができるという効果を奏する。
【図面の簡単な説明】
【００１５】
【図１】図１は、第１の実施形態に係る異常検知方法を実行する異常検知装置の構成の一例を示す図である。
【図２】図２は、第１の実施形態に係る異常スコア算出処理について説明するための図である。
【図３】図３は、第１の実施形態に係る異常検知装置に記憶される半導体製造装置情報の構成の一例を示す図である。
【図４】図４は、第１の実施形態に係る異常検知装置に記憶される異常検知情報の構成の一例を示す図である。
【図５】図５は、第１の実施形態に係る異常検知処理により出力される情報の一例を示す図である。
【図６】図６は、第１の実施形態に係る異常検知処理により生成される予測値、異常スコアおよび変化スコアの一例を説明するための図である。
【図７】図７は、第１の実施形態に係る異常検知処理の流れの一例を示すフローチャートである。
【図８】図８は、第１の実施形態の変形例１に係る異常検知装置における処理について説明するためのフローチャートである。
【図９】図９は、第１の実施形態の変形例２に係る異常検知装置における処理について説明するためのフローチャートである。
【図１０】図１０は、第１の実施形態に係る異常検知プログラムによる情報処理がコンピュータを用いて具体的に実現されることを示す図である。
【図１１】図１１は、従来の管理図の一例を示す図である。
【発明を実施するための形態】
【００１６】
開示する一つの実施形態において、異常検知プログラムは、予測値生成手順と、検知手順とをコンピュータに実行させる。予測値生成手順において、コンピュータは、監視対象装置において繰り返し実行される処理中の所定タイミングにおいて取得した、当該監視対象装置の運転状態の指標となる観測値をまとめた要約値に対して統計モデリングを適用することにより、要約値からノイズを除去した状態を推測し、当該推測に基づき一期先の要約値を予測した予測値を生成する。また、検知手順において、コンピュータは、予測値に基づき、監視対象装置の異常有無を検知する。
【００１７】
また、開示する一つの実施形態において、異常検知プログラムは、予測値生成手順において、コンピュータに、新しい要約値が取得されるごとに逐次、統計モデリングとして予測モデルを実行させて予測値を更新させる。また、異常検知プログラムは、検知手順において、コンピュータに、更新された予測値の任意の信頼区間を上下閾値として設定して、監視対象装置の異常を検知させる。
【００１８】
また、開示する一つの実施形態において、異常検知プログラムは、予測値生成手順において、コンピュータに、統計モデリングとして、フィルタリングを用いた予測モデルを適用して予測値を生成させる。
【００１９】
また、開示する一つの実施形態において、異常検知プログラムは、予測値生成手順において、コンピュータに、カルマンフィルタリングで得たフィルタリング値またはスムージング値を、予測値として生成させる。
【００２０】
また、開示する一つの実施形態において、異常検知プログラムは、予測値生成手順において、コンピュータに、統計モデリングとして、マルコフ連鎖モンテカルロ法を用いた予測モデルを適用して予測値を生成させる。
【００２１】
また、開示する一つの実施形態において、異常検知プログラムは、予測値生成手順において、コンピュータに、マルコフ連鎖モンテカルロ法を用いた予測モデルで事後分布を推定させ、当該事後分布の平均値、最頻値および中央値のいずれか１つを予測値として生成させる。
【００２２】
また、開示する一つの実施形態において、異常検知プログラムは、検知手順において、コンピュータに、予測値と要約値との残差、当該残差の二乗、および、予測値と要約値との標準化残差のうち少なくともいずれか１つが閾値よりも大きい場合に異常を検知させる。
【００２３】
また、開示する一つの実施形態において、異常検知プログラムは、予測値生成手順において、コンピュータに、統計モデリングとして予測モデルと変化点検出モデルとを適用させる。
【００２４】
また、開示する一つの実施形態において、異常検知プログラムは、検知手順において、コンピュータに、要約値のベイジアン変化点のスコアが閾値を超えた場合に異常を検知させる。
【００２５】
また、開示する一つの実施形態において、異常検知方法は、監視対象装置において繰り返し実行される処理中の所定タイミングにおいて取得した、当該監視対象装置の運転状態の指標となる観測値をまとめた要約値に対して統計モデリングを適用することにより、要約値からノイズを除去した状態を推測し、当該推測に基づき一期先の要約値を予測した予測値を生成する予測値生成工程と、予測値に基づき、監視対象装置の異常有無を検知する検知工程と、を、コンピュータが実行する。
【００２６】
また、開示する一つの実施形態において、異常検知方法は、予測値と要約値との残差、当該残差の二乗、および、予測値と要約値との標準化残差のうち少なくともいずれか１つと閾値とを縦軸に表示し、時間軸を横軸に表示する表を出力する出力工程を、コンピュータがさらに実行する。
【００２７】
また、開示する一つの実施形態において、異常検知方法は、要約値のベイジアン変化点のスコアと閾値とを縦軸に表示し、時間軸を横軸に表示する表を出力する出力工程を、コンピュータがさらに実行する。
【００２８】
また、開示する一つの実施形態において、異常検知方法は、予測値と、要約値との残差、当該残差の二乗、および、予測値と要約値との標準化残差のうち少なくともいずれか１つと閾値とを縦軸に表示し、時間軸を横軸に表示する第１の表と、要約値のベイジアン変化点のスコアと閾値とを縦軸に表示し、時間軸を横軸に表示する第２の表とを、時間軸をそろえて整列させた画像として出力する出力工程を、コンピュータがさらに実行する。
【００２９】
また、開示する一つの実施形態において、異常検知装置は、予測値生成部と、検知部と、を備える。予測値生成部は、監視対象装置において繰り返し実行される処理中の所定タイミングにおいて取得した、当該監視対象装置の運転状態の指標となる観測値をまとめた要約値に対して統計モデリングを適用することにより、要約値からノイズを除去した状態を推測し、当該推測に基づき一期先の要約値を予測した予測値を生成する。検知部は、予測値に基づき、監視対象装置の異常有無を検知する。
【００３０】
また、開示する一つの実施形態において、異常検知装置は、予測値と要約値との残差、当該残差の二乗、および、予測値と要約値との標準化残差のうち少なくともいずれか１つと閾値とを縦軸に表示し、時間軸を横軸に表示する表を作成する作成部と、作成部が作成した表を出力する出力部と、をさらに備える。
【００３１】
また、開示する一つの実施形態において、異常検知装置は、要約値のベイジアン変化点のスコアと閾値とを縦軸に表示し、時間軸を横軸に表示する表を作成する作成部と、作成部が作成した表を出力する出力部と、をさらに備える。
【００３２】
また、開示する一つの実施形態において、異常検知装置は、予測値と、要約値との残差、当該残差の二乗、および、予測値と要約値との標準化残差のうち少なくともいずれか１つと閾値とを縦軸に表示し、時間軸を横軸に表示する第１の表と、要約値のベイジアン変化点のスコアと閾値とを縦軸に表示し、時間軸を横軸に表示する第２の表と、を作成する作成部と、第１の表と第２の表とを、時間軸をそろえて整列させた画像として出力する出力部と、をさらに備える。
【００３３】
以下に、開示する実施形態について、図面に基づいて詳細に説明する。なお、本実施形態により開示する発明が限定されるものではない。各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【００３４】
実施形態について説明する前に、前提として、従来の異常検知において用いられている管理図について説明する。
【００３５】
［従来の管理図の一例］
図１１は、従来の管理図の一例を示す図である。ここでは製品Ａをロットごとに１０００個製造する製造装置のＸｂａｒ−Ｒ管理図を作成する場合を考える。まず、１ロットから５サンプルを抽出して、５サンプルの所定パラメータの平均値を算出する。また、５サンプルの所定パラメータのばらつき（範囲）を算出する。２０ロット分の管理図を作成する場合であれば、２０ロット各々について５サンプルを抽出して同様に平均値とばらつきとを算出する。そして、２０ロット分の平均値の平均値を算出する。また、２０ロット分のばらつきの平均値を算出する。平均値の平均値が図１１の（Ａ）の中心線ＣＬであり、ばらつきの平均値が図１１の（Ｂ）の中心線ＣＬである。
【００３６】
次に、予め決められた係数と、上で算出した二つの平均値に基づき、上限管理限界ＵＣＬと下限管理限界ＬＣＬとを算出する。そして、算出した上限管理限界ＵＣＬと下限管理限界ＬＣＬと、各ロットについて算出された平均値と、を表にプロットしていくと、図１１に示す管理図が得られる。管理図上で、上限管理限界ＵＣＬと下限管理限界ＬＣＬとの間からはみ出る値をとるロットが異常と判定される。このように、固定値を閾値として用いる管理図は、性能の判定基準（限界値）が明確である場合には効果的である。他方、性能の判定基準（限界値）を固定値として明確に設定することが困難な場合には、管理図のみを用いた異常判定では不十分である。
【００３７】
［第１の実施形態］
第１の実施形態に係る異常検知装置は、観測値の平均値等の要約値に対して統計モデリングを適用することにより、観測値の要約値からシステムのノイズと観測のノイズを取り除いた状態を推定する。そして、異常検知装置は、推定される状態に基づいて、次に観測値が取得される時点（一期先）の要約値として予測される値、すなわち予測値を生成する。異常検知装置は、次の観測値から要約値が生成されると、当該要約値に基づいてさらに一期先の予測値を生成する。このように、実施形態に係る異常検知装置は、統計モデリングの手法を適用して、新しい要約値が生成されるごとに、監視対象装置の真の状態を推定し、次の時点で要約値がとると推定される予測値と、を生成する。そして、異常検知装置は、異常検知に用いる閾値を、各時点で生成される予測値に基づいて設定する。このため、異常検知装置は、固定値を閾値とすると異常検知が困難なパラメータを用いる場合であっても、高精度に異常を検知することができる。また、異常検知装置は、次々と生成される新しい要約値から予測値を生成しなおして自動的に異常検知の閾値を更新するため、機差等も加味して自動的な異常検知を実現することができる。
【００３８】
［用語の説明］
実施形態について説明する前に、以下の説明において用いる用語について説明する。
【００３９】
「観測値」とは、半導体製造装置等の監視対象装置において実際に観測される値を意味する。「観測値」とは、たとえば、半導体製造装置に配置されたセンサが検知する、気圧、真空度、温度などの実測値である。「観測値」には、たとえばセンサの状態や半導体製造装置の状態等に応じて、ばらつき（すなわちシステムのノイズや観測のノイズ）が含まれる。
【００４０】
「要約値」とは、観測値が有する任意の特徴を抽出することで取得される値である。「要約値」とは、たとえば、所定期間にわたる観測値の平均値やばらつき（標準偏差等）、ばらつきの平均値、中央値、加重平均等である。
【００４１】
「予測値」とは、「観測値」または「要約値」にもとづいて、一期先の「要約値」がとるべき値を予測したものである。すなわち、「予測値」とは、一期先について予測される要約値を示す値である。
【００４２】
以下に説明する実施形態にかかる異常検知装置は、統計モデリングの手法を適用することによって、観測値から真の状態を推定し、予測値を生成する。そして、異常検知装置は、算出した予測値に基づき、監視対象装置の異常有無を検知する。
【００４３】
［異常検知装置１の構成の一例］
図１は、第１の実施形態に係る異常検知方法を実行する異常検知装置１の構成の一例を示す図である。異常検知装置１は、ネットワーク２を介してリモートサーバ３と接続される。リモートサーバ３は、異常検知の対象である監視対象装置すなわち半導体製造装置４と接続される。半導体製造装置４には任意の数のセンサが設置され、半導体製造装置４における製造工程が実行されるごとに、所定のパラメータを測定する。測定されたパラメータは、リモートサーバ３に送信される。リモートサーバ３は、半導体製造装置４のセンサから受信したパラメータを順次異常検知装置１に送信する。
【００４４】
異常検知装置１はたとえば、半導体製造装置４の保守管理を行う事業者が運用する。また、リモートサーバ３は、半導体製造装置４を使用するユーザが管理する。たとえば、リモートサーバ３および半導体製造装置４は、ユーザの事業所等に設置される。また、異常検知装置１は、クラウドコンピューティングを利用して仮想的に実現されてもよい。
【００４５】
異常検知装置１とリモートサーバ３とは、ネットワーク２を介して通信可能に接続される。接続するネットワーク２の種類は特に限定されず、インターネット、広域ネットワーク、ローカルエリアネットワーク等任意のネットワークであってよい。また、無線ネットワークおよび有線ネットワークのいずれでもよく、それらの組み合わせであってもよい。異常検知装置１は、半導体製造装置４において観測される観測値を常時収集するリモートサーバ３とネットワーク２を介して接続されることにより、半導体製造装置４をオンラインで常時監視するオンライン監視を実現する。このため、異常検知装置１は、半導体製造装置４の異常をリアルタイムで検知してユーザに通知することができる。
【００４６】
異常検知装置１は、通信部１０と、制御部２０と、記憶部３０と、出力部４０と、を備える。
【００４７】
通信部１０は、異常検知装置１とリモートサーバ３との間の通信を実現する機能部である。通信部１０はたとえば、ポートやスイッチを含む。通信部１０は、リモートサーバ３から送信される情報を受信する。また、通信部１０は、異常検知装置１において生成される情報を制御部２０の制御下で、リモートサーバ３に送信する。
【００４８】
制御部２０は、異常検知装置１の動作および機能を制御する。制御部２０は、任意の集積回路や電子回路で構成することができる。たとえば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）やＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などを用いて制御部２０を構成することができる。
【００４９】
記憶部３０は、異常検知装置１の各部の処理に使用する情報および各部の処理により生成される情報を記憶する。記憶部３０には、任意の半導体メモリ素子等を用いることができる。たとえば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等を記憶部３０として使用できる。また、ハードディスク、光ディスクなども記憶部３０として使用できる。
【００５０】
出力部４０は、異常検知装置１において生成される情報および異常検知装置１に記憶される情報を出力する。出力部４０はたとえば、音声や画像によって情報を出力する。出力部４０はたとえば、異常検知装置１において生成される情報および異常検知装置１に記憶される情報を表示する表示装置である。出力部４０はたとえば、スピーカ、プリンタ、モニタ等を含む。
【００５１】
制御部２０は、観測値取得部２０１、要約値生成部２０２、選択部２０３、第１の予測値生成部２０４、第２の予測値生成部２０５、異常スコア算出部２０６、変化スコア算出部２０７、検知部２０８、警告部２０９、および、異常レポート作成部２１０を有する。
【００５２】
［観測値取得処理の一例］
観測値取得部２０１は、半導体製造装置４に配置されるセンサが取得した観測値を、リモートサーバ３および通信部１０を介して受信する。
【００５３】
本実施形態では、半導体製造装置４において実行されるステップの所定のタイミングにおいてセンサが当該ステップの稼働状態を示す数値すなわち観測値を取得する。たとえば、処理室内を所定気圧に保持して実行されるステップであれば、処理開始から予め定められた時間が経過したときの処理室内の気圧の観測値を、センサが取得する。
【００５４】
観測値は、半導体製造装置４において処理が１ラン終了するごとに、リモートサーバ３から異常検知装置１に送信される。１ランとは、たとえば、バッチ処理であれば１バッチ分の処理、枚葉処理であれば１枚のウェハの処理に相当する。１ランの間に同じ処理が所定回数繰り返される場合、当該処理の所定タイミングに取得した観測値が所定回数分、半導体製造装置４から観測値取得部２０１に送信される。観測値とはたとえば、各センサのトレースログである。観測値取得部２０１が取得した観測値は、記憶部３０に記憶される。
【００５５】
［要約値生成処理の一例］
要約値生成部２０２は、観測値取得部２０１が取得した観測値をもとに、要約値を生成する。
【００５６】
要約値とは、観測値取得部２０１が取得した観測値に基づいて算出される、各時点における半導体製造装置４の運転状態を示す統計的な値である。要約値とはたとえば、従来の管理図において利用される、観測値の平均値や、観測値のばらつきの平均値、標準偏差、中央値、加重平均などである。
【００５７】
要約値生成部２０２は、観測値を、監視目的に合わせて層別に分類する。要約値生成部２０２はたとえば、観測値を、センサ部位ごと、レシピごと、ステップごとに分類する。そして、要約値生成部２０２は、分類後の観測値に対して前処理を実行する。前処理とはたとえば、欠損値や不要なデータを切り捨て、トレンドを除去して正規分布化する処理である。要約値生成部２０２は、分類および前処理後の観測値にもとづき、要約値を生成する。なお、要約値としてどのような値を生成するかは、レシピやステップの性質に応じて予め設定する。
【００５８】
［選択処理の一例］
選択部２０３は、それまでに取得されたデータの性質に応じて、要約値を、第１の予測値生成部２０４および第２の予測値生成部２０５のいずれか一方に入力する。たとえば、選択部２０３は、それまでに取得されたデータが正規分布するか非正規分布するか、に応じて要約値を第１の予測値生成部２０４および第２の予測値生成部２０５のいずれか一方に入力する。たとえば、選択部２０３は、正規分布するデータについては、要約値を第１の予測値生成部２０４に入力する。また、選択部２０３は、非正規分布するデータについては、要約値を第２の予測値生成部２０５に入力する。
【００５９】
たとえば、以下の説明では、第１の予測値生成部２０４は、フィルタリングを用いた予測手法を用いて、要約値から予測値を生成する。フィルタリングを用いた予測手法は、新しく入力されるデータに基づいて、予測値を生成する。このため、フィルタリングを用いた予測手法は、高速な処理を実現することができ、正規分布する観測データに適している。
【００６０】
他方、第２の予測値生成部２０５は、マルコフ連鎖モンテカルロ法（ＭＣＭＣ）を用いた予測手法を用いて、要約値から予測値を生成する。ＭＣＭＣを用いた予測手法は、新しくデータが入力されると、新しいデータを含めて過去のデータ全体（または過去所定期間分のデータ全体）に基づき、予測値を生成し直す。このため、ＭＣＭＣを用いた予測手法は、フィルタリングを用いた予測手法と比較して処理は遅くなるが、より高精度の推定を実現することができ、非正規分布する観測データにも適応する。
【００６１】
このため、本実施形態では、予め異常検知装置１に入力される観測値の種類に応じて、どの要約値を第１の予測値生成部２０４に入力し、どの要約値を第２の予測値生成部２０５に入力するかを設定する。設定は記憶部３０に記憶する。
【００６２】
［第１の予測値生成処理の一例−状態空間モデル（１）］
次に、第１の予測値生成部２０４は、要約値生成部２０２が生成した要約値に対して第１の統計モデリングを適用し、予測値を生成する。
【００６３】
要約値生成部２０２が生成する要約値は、前処理を実行した後でも依然としてノイズや観測誤差が含まれた状態である。このため、本実施形態では、第１の予測値生成部２０４は、統計モデリングを適用して、要約値からノイズや観測誤差を取り除いた真の要約値すなわち予測値を推定する。
【００６４】
たとえば、第１の予測値生成部２０４は、状態空間モデルを用いた時系列分析の手法を適用することで、要約値から状態を推定する。たとえば、ここでは、第１の予測値生成部２０４は、カルマンフィルタ等のフィルタリングを用いた予測手法を適用し、状態を推定する。たとえば、第１の予測値生成部２０４は、ローカル・レベル・モデル（動的線形モデル）を用いてカルマンフィルタリングを実行するものとする。第１の予測値生成部２０４は、要約値をカルマンフィルタに通して、動的線形モデルのパラメータの最適な尤度を求める。そして、第１の予測値生成部２０４は、求めた尤度を動的線形モデルに入れなおし、フィルタリング結果から状態を推定する。
【００６５】
たとえば、第１の予測値生成部２０４は、時点ｔの観測値から生成される要約値をカルマンフィルタに通し、次に取得される時点ｔ＋１の観測値から生成される要約値の真の状態を推定する。そして、第１の予測値生成部２０４は、推定した状態に基づき、時点ｔ＋１において要約値がとると予測される値である予測値を生成する。予測値は、たとえば、フィルタリング値、スムージング値等である。
【００６６】
たとえば、第１の予測値生成部２０４は、半導体製造装置４から最新のランのデータ（要約値）を取得するごとに、前のランの要約値入力時に算出した予測値の誤差をカルマンゲインで補正して予測値を更新し、最新の予測値を生成する。第１の予測値生成部２０４は、状態の推定においても部分的に重回帰推定を実行してもよい。
【００６７】
このようにして、第１の予測値生成部２０４は予測値を生成する。このように要約値から予測値を生成することによって、要約値（観測値）のノイズや観測誤差を除去して、要約値の増減のトレンドを抽出することができる。
【００６８】
［第２の予測値生成処理の一例−マルコフ連鎖モンテカルロ法（ＭＣＭＣ）］
第２の予測値生成部２０５は、要約値生成部２０２が生成した要約値に対して第２の統計モデリングを適用し、予測値を生成する。第２の予測値生成部２０５が用いる第２の統計モデリングは、第１の予測値生成部２０４が用いる第１の統計モデリングとは異なる手法とする。
【００６９】
たとえば上述のように、第２の予測値生成部２０５は、要約値に対してマルコフ連鎖モンテカルロ法（ＭＣＭＣ）を利用した予測手法を適用することで、予測値を生成する。
【００７０】
第２の予測値生成部２０５は、ベイズの定理を用いて、前の要約値取得時点において生成された事後確率を事前確率として用いて、ベイズ推定により事後確率を算出することで予測値を求める。ベイズ推定によって得られる事後確率は分布として表現されるため、第２の予測値生成部２０５は、事後確率分布の平均値（事後平均値）または最頻値または中央値を算出し、予測値とする。
【００７１】
第２の予測値生成部２０５は、最新の要約値が入力されるごとに、最新の要約値を用いて予測値を更新する。第２の予測値生成部２０５は、新しい要約値が入力されるたびに、それまでに入力された全データに対してＭＣＭＣを適用して、予測値を更新する。このように、第２の予測値生成部２０５は、要約値の入力毎に、それまでに入力されたデータすべてに基づいて異常検知のベースとなる値を調整する。このため、ＭＣＭＣを用いて生成される予測値を用いて異常検知を実行する場合、フィルタリングを用いて生成される予測値を用いた異常検知よりもさらに精度高い異常検知を実現できる。
【００７２】
［予測値に基づく異常スコア算出処理の一例］
異常スコア算出部２０６は、第１の予測値生成部２０４または第２の予測値生成部２０５が生成した予測値を用いて、半導体製造装置４の異常有無の指標となる異常スコアを算出する。異常スコアは、予測値に基づき、半導体製造装置４の各時点における異常発生の可能性の大きさをスコア化したものである。
【００７３】
たとえば、異常スコア算出部２０６は、予測値と要約値との残差の大きさを算出し、異常スコアとする。また、異常スコア算出部２０６は、予測値と要約値との残差の絶対値を算出し、異常スコアとしてもよい。またたとえば、異常スコア算出部２０６は、予測値と要約値との残差の二乗を異常スコアとしてもよい。またたとえば、異常スコア算出部２０６は、予測値と要約値との残差を標準偏差で割り標準化した値（標準化残差）を異常スコアとしてもよい。
【００７４】
異常スコア算出部２０６は、予測値の任意の信頼区間（たとえば９５％）を閾値として設定する。また、異常スコア算出部２０６は、算出した異常スコアをトリミングし外れ値を除いた分布の任意の確率を異常判定ラインすなわち閾値として設定してもよい。また、異常スコア算出部２０６は、サポートベクトルマシン等を用いた機械学習により、教師なし状態で異常と正常とを判断し、閾値を設定してもよい。そして、検知部２０８（後述）が、要約値が設定された閾値内にあるか否かに応じて異常有無を検知する。
【００７５】
なお、ここでは、異常検知装置１は、要約値を第１の予測値生成部２０４および第２の予測値生成部２０５のいずれか一方に入力するものとして説明する。すなわち、異常スコア算出部２０６は、第１の予測値生成部２０４および第２の予測値生成部２０５のいずれか一方が生成した予測値に基づき異常スコアを算出するものとして説明する。
【００７６】
図２は、第１の実施形態に係る異常スコア算出処理について説明するための図である。図２の（Ａ）は、ラン毎に取得されたセンサデータ（要約値）を縦軸に、横軸にランを示す。（Ａ）中、要約値を実線で示し、予測値を点線で示す。
【００７７】
図２の（Ｂ）は、（Ａ）に示す要約値と予測値との残差の大きさを異常スコアとしてプロットしたものである。（Ｂ）中、異常スコアが点線で示す上下閾値から外れると、異常と検知される。（Ｂ）中、矢印Ｘ，Ｙで示す部分で、異常スコアが上下閾値から外れている。矢印Ｘで示す部分は、異常スコアが上限閾値を超え、異常と検知される部分である。また、矢印Ｙで示す部分はメンテナンスにより観測値が変動した部分であり、やはり異常と検知される。
【００７８】
［変化スコア算出処理の一例］
変化スコア算出部２０７は、半導体製造装置４の状態の変化の指標となる変化スコアを算出する。変化スコア算出部２０７は、要約値に対して、統計モデリングすなわち変化点検出モデルを適用することで、要約値の変化の大きさをスコア化した変化スコアを算出する。変化スコア算出部２０７は、第１の予測値生成部２０４または第２の予測値生成部２０５が生成する予測値に基づき、変化スコアを算出する。
【００７９】
たとえば、変化スコア算出部２０７は、第２の予測値生成部２０５が算出した事後確率の大きさを変化スコアとしてもよい。この場合、変化スコア算出部２０７は、変化スコアに対する評価基準値として経験的に設定される閾値を採用する。
【００８０】
また、たとえば、変化スコア算出部２０７は、第２の予測値生成部２０５が算出した事後確率をサポートベクターマシン（ＳＶＭ）に入力し、正常時の群とその他の群とを分ける境界を閾値として抽出してもよい。
【００８１】
また、たとえば、変化スコア算出部２０７は、事後確率のマハラノビス距離を変化スコアとしてもよい。
【００８２】
また、たとえば、変化スコア算出部２０７は、ベイズを使った積分割のモデルによるベイジアン変化点のスコアを変化スコアとしてもよい（Barry  D,  Hartigan  J.A.,  “A  Bayesian  Analysis  for  Change  Point  Problems.”  Journal  of  the  American  Statistical  Association,  35(3),  309-319  (1993)  を参照）。この場合は、変化スコア算出部２０７は、過去のデータの分布の外れ値をトリミングして、任意の確率（たとえば５％）を閾値とする。ただし、この他、経験的に設定される固定値を閾値としてもよいし、上述のようにＳＶＭによる機械学習に基づき閾値を設定してもよい。
【００８３】
変化スコアは、要約値の波形が大きく変化する部分を変化点として検知できればよく、算出手法は特に限定されない。
【００８４】
［異常検知処理および異常レポート作成処理の一例］
検知部２０８は、異常スコア算出部２０６が算出した異常スコアおよび変化スコア算出部２０７が算出した変化スコアに基づいて、異常を検知する。
【００８５】
たとえば、検知部２０８は、異常スコア算出部２０６が算出した異常スコアが閾値を超えたか否かを判定する。また、検知部２０８は、変化スコア算出部２０７が算出した変化スコアが閾値を超えたか否かを判定する。
【００８６】
そして、検知部２０８は、異常スコアおよび変化スコアのいずれか一方が閾値を超えたと判定した場合に、警告部２０９に通知する。また、検知部２０８は、異常スコアおよび変化スコアの双方が閾値を超えたと判定した場合に、警告部２０９に通知する。
【００８７】
また、検知部２０８は、異常スコアが閾値を超え、変化スコアが閾値を超えていないと判定した場合、および、異常スコアが閾値を超えておらず、変化スコアが閾値を超えたと判定した場合に第１レベルの異常を警告部２０９に通知するように構成してもよい。そして、検知部２０８は、異常スコアおよび変化スコアが閾値を超えたと判定した場合に、第２レベルの異常を警告部２０９に通知するように構成してもよい。ここで、第１レベルの異常は、第２レベルの異常よりも軽度の異常を示すものとする。
【００８８】
また、検知部２０８は、異常スコアを第１の予測値生成部２０４および第２の予測値生成部２０５の双方が生成した予測値について算出する場合は、二つの異常スコアの一方が閾値を超えた場合と二つの異常スコアの双方が閾値を超えた場合を識別できるようにしてもよい。たとえば、検知部２０８は、２つの異常スコアのいずれか一方または変化スコアが閾値を超えた場合に第１レベルの異常を警告部２０９に通知する。また、検知部２０８は、２つの異常スコアと変化スコアのうちいずれか２つが閾値を超えた場合に第２レベルの異常を警告部２０９に通知する。さらに、検知部２０８は、２つの異常スコアと変化スコアの全てが閾値を超えた場合に第３レベルの異常を警告部２０９に通知する。ここで、第１レベルから第３レベルの異常まで、段階的に異常の度合いが高くなるものとする。
【００８９】
警告部２０９は、検知部２０８からの通知に応じて、通信部１０を介して、リモートサーバ３に警告を送信する。警告部２０９はたとえば、検知部２０８が第１レベルの異常を通知した場合、第２レベルの異常を通知した場合、第３レベルの異常を通知した場合のそれぞれを識別可能な警告を送信する。
【００９０】
異常レポート作成部２１０は、記憶部３０に記憶される情報に基づき、異常検知装置１における異常検知処理の結果を集積した異常レポートを作成する。異常レポート作成部２１０が作成した異常レポートは、通信部１０を介してリモートサーバ３に送信される。また、異常レポート作成部２１０が作成した異常レポートは、出力部４０から出力される。
【００９１】
異常レポート作成部２１０は、予め設定された期間ごとに異常レポートを作成するものとしてもよい。また、異常レポート作成部２１０は、検知部２０８が第１〜第３レベルの異常のいずれかを検知した場合に、異常レポートを出力するように構成してもよい。また、異常レポート作成部２１０は、ユーザからの指示入力に応じて異常レポートを作成するように構成してもよい。なお、異常レポートの内容の具体的な例については後述する。
【００９２】
［記憶部３０に記憶される情報の一例］
記憶部３０は、制御部２０において生成される情報およびリモートサーバ３から受信される情報を適宜記憶する。記憶部３０は、半導体製造装置情報記憶部３１と、異常検知情報記憶部３２と、異常レポート記憶部３３と、を有する。
【００９３】
半導体製造装置情報記憶部３１は、半導体製造装置４に関する情報である半導体製造装置情報を記憶する。図３は、第１の実施形態に係る異常検知装置１に記憶される半導体製造装置情報の構成の一例を示す図である。
【００９４】
異常検知装置１は、予め監視対象装置に関する情報である半導体製造装置情報を記憶する。たとえば、リモートサーバ３側から異常検知装置１に対して、半導体製造装置４の情報を登録するように構成してもよいし、異常検知装置１のオペレータが監視対象装置の情報を入力するように構成してもよい。
【００９５】
図３に示すように、半導体製造装置情報はたとえば、「装置ＩＤ」、「ユーザＩＤ」、「監視ステップ」、「監視レシピ」、「センサＩＤ」、「運転情報」等の情報を含む。「装置ＩＤ」は、監視対象装置を各々一意に識別するための識別子（Identifier）である。「ユーザＩＤ」は、監視対象装置を使用するユーザ、事業者を一意に識別するための識別子である。「監視ステップ」は、監視対象装置において監視対象とするステップを識別するための情報である。「監視レシピ」は、監視ステップにおいて使用するレシピを識別するための情報である。「監視ステップ」および「監視レシピ」は、異常検知処理において適用する統計モデリングの手法等と対応付けて記憶し、ステップおよびレシピごとに最適な統計モデリングの手法や閾値設定手法を選択できるように構成してもよい。「センサＩＤ」は、監視対象装置に設けられるセンサを一意に識別するための情報である。また、「センサＩＤ」は、監視ステップおよび監視レシピに対応付けて設定される。「運転情報」は、監視対象装置について特別な処理を実行する予定がある場合に記憶される、監視対象装置において実行される処理についての情報である。たとえば、所定の日時にメンテナンスを実行する予定がある場合は、メンテナンスする旨およびその日時の情報が「運転情報」として記憶される。また、監視対象装置の部品交換が行われる場合には、その旨およびその日時の情報が「運転情報」として記憶される。
【００９６】
図３の例では、装置ＩＤ「Ｄ００１」で識別される監視対象装置は、ユーザＩＤ「Ｕ５８２」で識別されるユーザの監視対象装置として記憶されている。また、当該監視対象装置について、監視ステップ「Ｓ００３」、監視レシピ「Ｒ０４３」が記憶されている。また、監視ステップ「Ｓ００３」の監視には、センサＩＤ「Ｓ００１」で識別されるセンサにより測定されるデータが使用されることが記憶されている。また、装置ＩＤ「Ｄ００１」で識別される監視対象装置について、２０１６年６月２日の１６時からメンテナンスが実行される予定であることが記憶されている。
【００９７】
なお、半導体製造装置情報は、複数のユーザが使用する複数の監視対象装置についての情報を含む。異常検知装置１は、複数のユーザが使用する複数の監視対象装置についての情報を一元的に記憶し管理することにより、ネットワークを介して複数の監視対象装置の異常検知を統合的に実行することができる。
【００９８】
異常検知情報記憶部３２は、異常検知情報を記憶する。図４は、第１の実施形態に係る異常検知装置１に記憶される異常検知情報の構成の一例を示す図である。
【００９９】
異常検知情報はたとえば、「装置ＩＤ」、「センサＩＤ」、「タイムスタンプ」、「観測値」、「要約値」、「予測値（１）」、「予測値（２）」、「異常スコア」、「変化スコア」、「異常判定」等の情報を含む。「装置ＩＤ」および「センサＩＤ」は、半導体製造装置情報に含まれる情報と同様である。「タイムスタンプ」は、観測値がセンサによって測定された日時を示す情報である。なお、「タイムスタンプ」はたとえば、対応するランを特定する情報等で代替してもよい。「観測値」は、「センサＩＤ」により特定されるセンサが「タイムスタンプ」により特定される日時に測定した実際の測定値である。「要約値」は、対応する「観測値」を要約した値、たとえば平均値等である。「予測値（１）」は、対応する「観測値」「要約値」に基づき第１の統計モデリングを通じて生成された予測値の情報である。「予測値（２）」は、対応する「観測値」「要約値」に基づき第２の統計モデリングを通じて生成された予測値の情報である。「異常スコア」は、予測値に基づいて算出された異常スコアの情報である。「変化スコア」は、変化スコア算出部２０７が算出する変化スコアの情報である。「異常判定」は、異常スコアおよび変化スコアに基づき、検知部２０８が検知した異常に関する情報である。
【０１００】
図４の例では、装置ＩＤ「Ｄ００１」で識別される監視対象装置について、センサＩＤ「Ｓ００１」で識別されるセンサから、タイムスタンプ「２０１６／０６／０１：１４：００：００」で特定される日時に受信された観測値に関連する情報が記憶されている。すなわち、観測値として５つの値「０．０３４，０．０３１，０．０４０，０．０３９，０．０３０」が記憶される。そして、５つの観測値の平均値である「０．０３４８」が要約値として記憶される。また、当該要約値に基づき第１の予測値生成部２０４および第２の予測値生成部２０５により生成された予測値が記憶される。さらに、異常スコア算出部２０６が算出した異常スコア、変化スコア算出部２０７が算出した変化スコアがそれぞれ記憶される。さらに、検知部２０８が、異常スコアと変化スコアに基づいて検知した異常の内容、図４の例では異常なしを示す「ＮＯ」が記憶される。なお、「異常判定」は、第１レベル乃至第３レベルの異常が検知された場合は、それぞれを識別できるように記憶する。
【０１０１】
なお、予測値、異常スコア、変化スコアは、第２の予測値生成部２０５が生成する予測値については、要約値が入力されるごとに更新される。
【０１０２】
異常レポート記憶部３３は、異常レポート情報を記憶する。異常レポート情報は、異常レポート作成部２１０により作成される。異常レポート情報は、異常検知装置１における異常検知処理の結果を示す情報である。
【０１０３】
図５は、第１の実施形態に係る異常検知処理により出力される情報の一例を示す図である。また、図６は、第１の実施形態に係る異常検知処理により生成される予測値、異常スコアおよび変化スコアの一例を説明するための図である。異常レポート情報はたとえば、図５および図６に示す情報を含む。
【０１０４】
［異常レポートの一例］
図５は、第１の実施形態に係る異常検知方法により出力される情報の一例を示す図である。図５の例では、半導体製造装置４において１日に２０回ランが行われた結果をプロットしている。図５の（Ａ）は、各ランにおける要約値と、予測値にもとづき設定された異常スコア判定用の上下閾値と、を示す。上下閾値は、予測値の任意の信頼区間、ここでは約９５％をもとに設定した。また、図５の例では、予測値は、第１の予測値生成部２０４においてカルマンフィルタを用いて算出した。
【０１０５】
図５の（Ａ）において、「Ａｃｔ」で示す線は要約値を示す。また、「ＵＣＬ１」「ＬＣＬ１」はそれぞれ、予測値に基づき設定された異常スコア判定用の上下閾値である。図５の（Ａ）では、予測値に基づく上下閾値に加えて、固定値を用いた監視も併用する。このため、閾値「ＵＣＬ１」、「ＬＣＬ１」に加えて、閾値「ＵＣＬ２」と「ＬＣＬ２」とを設定する。また、図５の（Ｂ）において、「Ｃ  Ｓｃｏｒｅ」は変化スコアを示し、「ＵＣＬ」は変化スコアの上限閾値を示す。
【０１０６】
図５の例では、異常検知装置１は、観測値に基づいて要約値（Ａｃｔ）を各ランについて算出している。図５に示すように、要約値は各測定時点で上下に振れている。
【０１０７】
また、異常検知装置１は、各時点において要約値に基づいて予測値を算出する。たとえば、図５の左から６番目のプロットまでは、要約値は上下に振れつつ緩やかな減少傾向をみせている。このため、６番目の要約値が入力されたとき、統計モデリングを適用して得られる予測値は、１番目から４番目のプロットを平均した値よりもやや減少した値となる（上下閾値の中央部分）。しかし、左から７番目のプロットの時点の要約値は、６番目のプロットの要約値から増加している。そして、左から８番目のプロットの時点の要約値もさらに増加を示す。このため、左から８番目のプロットの時点で予測値は緩やかな増加を示す値となる。しかし、左から９番目のプロットの時点で要約値は大きく増加し、８番目のプロット時点で予測された予測値にもとづく上限閾値ＵＣＬ１を超えている。このため、異常検知装置１では、左から９番目の要約値に基づく判定を実行した時点で、警告部２０９が警告を出す（図５の（Ａ）中、矢印Ｗ１で示す部分）。このように、異常検知装置１では、予測値に基づき要約値に対して適用する上下閾値を動的に変化させる。さらに、図５の（Ａ）中、矢印Ｗ２、Ｗ３で示す部分でも、要約値Ａｃｔは上限閾値ＵＣＬ１を超える値をとる。このように、要約値Ａｃｔが上限閾値ＵＣＬ１を超えた部分は、異常レポートにおいては強調表示する。たとえば、図５の（Ａ）中、矢印Ｗ１，Ｗ２，Ｗ３の部分を他のプロットとは異なる色で表示したり、ハイライトをつけたりする。
【０１０８】
このように、本実施形態に係る異常検知装置１は、観測値および要約値に現れるノイズや観測誤差を捨象して、監視対象装置の状態のトレンドをより正確に反映した状態を推定し予測値を算出する。そして、異常検知装置１は、予測値に基づき、半導体製造装置４が正常に動作している場合に、要約値がとると予想される値の範囲すなわち閾値を設定する。このため、異常検知装置１は、過去のトレンドに基づき、新たに取得される要約値と比較すべき閾値を動的に設定し直すことができる。このため、実施形態の異常検知装置１は、閾値を固定的に設定することが難しい性質をもつ値を異常検知に利用する場合であっても、閾値を動的に変動させて、精度高く異常を検知することができる。
【０１０９】
また、図５の（Ａ）の例では、予測値に基づき変動する閾値に加えて固定閾値も併用する。このため、異常検知装置１は、従来の管理図と同様に固定値を閾値とした監視も実行しつつ、上記のように予測値に基づき変動する閾値を用いて監視を実行することができ、異常検知の精度をさらに向上させることができる。
【０１１０】
図５の（Ｂ）は、（Ａ）の要約値のベイジアン変化点をスコア化した例である。（Ａ）に示したように、左から８番目のプロットから９番目のプロットの間で要約値が大きく増加しているために、変化スコアにおいても、９番目のプロットに対応して大きな増加がみられる。また、異常スコア中の矢印Ｗ２，Ｗ３で表示される箇所とほぼ同じ時点で、変化スコアの値も増加している（図５の（Ｂ）中、矢印Ｗ５，Ｗ６で示す箇所）。異常スコアと同様、変化スコアにおいても、スコアが閾値を超えた部分を強調表示する。たとえば、図５の（Ｂ）中、矢印Ｗ４，Ｗ５，Ｗ６の部分を他のプロットとは異なる色で表示したり、ハイライトをつけたりする。
【０１１１】
このように、本実施形態において、予測値にもとづいて設定した閾値を利用して異常検知した場合（すなわち異常スコア、要約値と予測値と残差等を利用する場合）、突発的な変化を精度よく検知することができる。また、本実施形態に基づき算出した変化スコアは、データに変化が生じた変化点を抽出することができる。このため、実施形態に係る異常検知装置は、異常スコアと変化スコアを組み合わせて異常検知することで、データに発生した変化を検知して、多様な原因にもとづく異常を精度よく検知することができる。また、異常検知装置１は、予測値に基づき設定される閾値だけでなく、固定値に基づき設定される閾値を併用することで、さらに異常検知の精度を向上させることができる。
【０１１２】
また、本実施形態では、（Ａ）に示すように動的および固定的に閾値を設定して要約値と比較するデータと、（Ｂ）のように要約値の変化の大きさ自体をスコア化したデータと、を並列的に表示する。このため、突発的に発生する変化と漸進的に発生する変化とを、ユーザが視覚的直観的に把握することができる。また、異常検知装置は、異なる観点で検知した変化をまとめて提示し、異常有無を判断することにより、より精度高く異常の発生を検知することが可能である。
【０１１３】
異常レポートは、図５に示すグラフを含んでもよいし、さらに、半導体製造装置情報記憶部３１および異常検知情報記憶部３２に記憶される他の情報を含んでもよい。
【０１１４】
また、異常レポートは、図６に示すグラフを含んでもよい。図６は、第１の実施形態に係る異常検知処理により生成される予測値、異常スコアおよび変化スコアの一例を説明するための図である。図６の（Ａ）は、各時点における要約値と、要約値に対して統計的モデリングを適用して生成した予測値（予測値の平滑値）と、をプロットしたものである。図６の（Ａ）にはまた、固定値に基づく上下閾値Ｔ１およびＴ２を示す。図６の（Ｂ）は、（Ａ）に示す予測値と要約値との差を異常スコアとしてプロットしたものである。図６の（Ｃ）は、（Ａ）に示す要約値に対してベイズ推定による尤度変化点を算出して変化スコアとしたものである。
【０１１５】
図６の（Ａ）では、図５と異なり、予測値に基づき動的に設定される閾値ではなく予測値そのものをグラフとして表示する。図６の（Ａ）中、矢印Ａ１，Ａ２，Ａ３で示す箇所において、要約値が予測値から大きく逸脱している。しかし、何れの時点でも要約値は、固定値に基づく上下閾値Ｔ１およびＴ２の範囲からは逸脱していない。
【０１１６】
図６の（Ｂ）中、矢印で示す部分Ｂ１，Ｂ２において、異常スコアが閾値を超えている。また、図６の（Ｃ）中、矢印で示す部分Ｃ１，Ｃ２，Ｃ３において、変化スコアが閾値を超えている。図６の（Ａ）において固定の閾値Ｔ１，Ｔ２によっては、（Ｂ）のＢ１，Ｂ２、（Ｃ）のＣ１，Ｃ２，Ｃ３における異常や変化は検知することができない。これに対して、異常スコアと変化スコアとをあわせて利用し、いずれか一方において外れ値が発生すれば、ユーザの注意を促し、双方において外れ値が発生すれば警告を出すようにすれば、Ｃ２の時点で「注意」、Ｂ１（Ｃ１）およびＢ２（Ｃ３）の時点で「警告」を出すことができる。異常レポートは、Ｂ１，Ｂ２，Ｃ１，Ｃ２，Ｃ３を異常ポイントとして表示するようにしてもよい。
【０１１７】
なお、図６の例では、（Ａ）（Ｂ）は一つの予測値について表示したが、二つの予測値について異常スコアを算出する場合は、異常レポートは、（Ａ）（Ｂ）をそれぞれ２つ含んでもよい。
【０１１８】
［異常検知処理の流れの一例］
図７は、第１の実施形態に係る異常検知処理の流れの一例を示すフローチャートである。異常検知装置１の観測値取得部２０１は、まず、リモートサーバ３を介して半導体製造装置４におけるセンサの観測値を取得する（ステップＳ１）。観測値取得部２０１が取得した観測値は、要約値生成部２０２に送られる。要約値生成部２０２は、観測値を基に要約値を生成する（ステップＳ２）。要約値生成部２０２が生成した要約値は、選択部２０３に送られる。選択部２０３は、要約値の分布が正規分布か非正規分布かを判定する（ステップＳ３）。正規分布と判定した場合（ステップＳ３、Ｙｅｓ）、選択部２０３は、要約値を第１の予測値生成部２０４に送る（ステップＳ４）。第１の予測値生成部２０４は、要約値に対して第１の統計モデリングを適用して予測値を生成する（ステップＳ６）。他方、選択部２０３が非正規分布と判定した場合（ステップＳ３、Ｎｏ）、選択部２０３は、要約値生成部２０２が生成した要約値を、第２の予測値生成部２０５に送る（ステップＳ５）。そして第２の予測値生成部２０５は、要約値に対して第２の統計モデリングを適用して、予測値を生成する（ステップＳ６）。第１の予測値生成部２０４および第２の予測値生成部２０５の一方が生成した予測値は、異常スコア算出部２０６に送られる。異常スコア算出部２０６は、予測値に基づく異常スコアを算出する（ステップＳ７）。
【０１１９】
他方、第１の予測値生成部２０４または第２の予測値生成部２０５が生成した予測値は、変化スコア算出部２０７にも入力される。変化スコア算出部２０７は、変化スコアを算出する（ステップＳ８）。検知部２０８は、異常スコアと変化スコアとを参照して、各スコアが閾値を超えるか否かを判定する（ステップＳ９）。検知部２０８はスコアが閾値を超えると判定した場合、つまり異常を検知した場合（ステップＳ９、Ｙｅｓ）、警告部２０９に通知し、警告部２０９はリモートサーバ３に警告を送る。また、異常レポート作成部２１０は、異常レポートを出力する（ステップＳ１０）。また、検知部２０８はスコアが閾値以下であると判定した場合すなわち異常を検知しなかった場合（ステップＳ９、Ｎｏ）、ステップＳ１に戻る。これで異常検知処理が終了する。
【０１２０】
［変形例］
上記第１の実施形態においては、異常検知装置１は、選択部２０３を備え、第１の統計モデリングおよび第２の統計モデリングのいずれかの手法を用いて予測値を生成するものとした。ただし、異常検知装置１は、選択部２０３を省略して第１の予測値生成部２０４および第２の予測値生成部２０５の両方に要約値を入力するように構成してもよい。そして、異常スコア算出部２０６は、第１の予測値生成部２０４および第２の予測値生成部２０５が生成する２つの予測値に基づき、二つの異常スコアを算出するよう構成してもよい。
【０１２１】
また、異常検知装置は、第１の予測値生成部２０４および第２の予測値生成部２０５の双方に予測値を生成させて２つの異常スコアを算出し、算出したスコアに基づく検知部２０８の検知結果に基づいて、統計モデリングに使用するパラメータを調整するように構成してもよい。第１の実施形態では、統計モデリングとして、第１の予測値生成部２０４がフィルタリングを用い、第２の予測値生成部２０５がＭＣＭＣを用いる。このため、第２の予測値生成部２０５が生成する予測値を用いた異常検知結果の精度の方が高くなると予想される。そこで、異常検知装置を、第１の予測値生成部２０４が生成した予測値を用いた異常検知結果と、第２の予測値生成部２０５が生成した予測値を用いた異常検知結果と、を比較し、齟齬がある場合に、第１の予測値生成部２０４が用いる統計モデリングのパラメータを調整するように構成してもよい。
【０１２２】
また、異常検知装置は、第１の予測値生成部２０４と第２の予測値生成部２０５の双方に常に予測値を生成させ、２つの異常スコアに基づいて異常検知するように構成してもよい。
【０１２３】
また、異常検知装置は、異常スコアについて上述したように予測値に応じて変動する閾値のほか、固定の閾値を用いた判定を併せて実行するように構成してもよい。このように構成することで、異常検知装置は、突発的に発生する異常とあわせて、徐々に進行する変化も検知することができ、さらに異常検知の精度を向上させることができる。
【０１２４】
［第１の実施形態の効果］
上記のように、本実施形態に係る異常検知装置は、監視対象装置において繰り返し実行される処理中の所定タイミングにおいて取得した、当該監視対象装置の運転状態の指標となる観測値をまとめた要約値に対して統計モデリングを適用する。そして、異常検知装置は、要約値からノイズを除去した状態を推測し、当該推測に基づき一期先の要約値を予測した予測値を生成する。そして、異常検知装置は、予測値に基づき、監視対象装置の異常有無を検知する。このように、実施形態に係る異常検知装置によれば、観測値そのものを監視するのではなく、観測値に基づいて判定される装置の状態を監視する。このため、異常検知装置は、本来の検知目標である、装置の突発的な変化や状態の変化を見逃すことなく、異常を早期発見することができる。このため、異常検知装置は、高精度かつ効率的な異常予知および異常監視を自動的に実現することができる。また、本実施形態に係る異常検知装置は、ネットワークを介して監視対象である半導体製造装置と接続され、半導体製造装置において観測される観測値を受信する。そして、異常検知装置は、観測値に基づきリアルタイムで半導体製造装置の状態を監視する。このため、異常検知装置は、半導体製造装置におけるオンライン監視を実現することができる。
【０１２５】
また、実施形態に係る異常検知装置は、監視対象装置から取得された値（観測値）に直接基づいて異常検知をするのではなく、要約値および予測値を導出した上で、異常検知を実行する。このため、異常検知装置は、サンプル数や、ノイズ、観測誤差等の要因によって左右される実測データの質に影響されることなく、監視対象装置の稼働状態を定量化し、動的に閾値を適応させて監視対象装置の自動監視を実現することができる。
【０１２６】
また、実施形態に係る異常検知装置は、統計モデリングとして予測モデルと変化点検出モデルとを適用することにより予測値を生成する。また、実施形態に係る異常検知装置は、予測モデルとして状態空間モデルおよびカルマン・フィルタリングを適用してフィルタリング値またはスムージング値を予測値として生成する。また、実施形態に係る異常検知装置は、統計モデリングとして、マルコフ連鎖モンテカルロ法で事後分布を推定し、事後分布の平均値、最頻値および中央値のいずれか１つを予測値として生成する。また、実施形態に係る異常検知装置は、要約値に対してベイズ推定を適用して得た事後平均値を予測値として生成する。このように、異常検知装置は、要約値の変動の傾向（トレンド）を抽出することができる統計モデリングを適用することで、観測値のサンプル数が少ない場合や欠損がある場合であっても、高精度かつ効率的な異常予知および異常監視を自動的に実現することができる。
【０１２７】
また、実施形態に係る異常検知装置は、新しい要約値が取得されるごとに逐次、予測モデルを実行させて予測値を更新し、更新した予測値の任意の信頼区間を上下閾値として設定し、更新した予測値が上下閾値の範囲から外れる場合に、監視対象装置の異常を検知する。また、実施形態に係る異常検知装置は、予測値と要約値との残差、当該残差の二乗、および、予測値と要約値との標準化残差の少なくともいずれか１つが閾値よりも大きい場合に異常を検知する。このため、異常検知装置は、動的に異常検知の閾値を変動させることで、機差等を加味して、異常検知を実現することができる。
【０１２８】
また、実施形態に係る異常検知装置は、要約値のベイジアン変化点のスコアが閾値を超えた場合に異常を検知する。このため、経時的な変化だけでなく、突発的な変化が生じた場合にも検知漏れを発生させることなく精度高い異常検知を実現できる。また、異常検知装置は、複数の異常検知基準を組み合わせて実行することで、異なる性質の異常を漏れなく検知するとともに、異常のレベルを併せて検知することができる。また、異常検知装置は、複数の視点から監視対象装置の状態を評価するため、一つの基準で異常を判定する場合と比較して、より精度高い異常検知を実現することができる。
【０１２９】
また、実施形態に係る異常検知装置は、変化スコアと異常スコアとを視覚的に把握しやすい表の形で出力する。このため、ユーザは、異常が発生した時点や異常の程度を視覚的に把握し、監視対象装置の状態を容易に理解することができる。また、実施形態に係る異常検知装置は、変化スコアと異常スコアとの時間軸をそろえて整列させて出力する。このため、ユーザは、二つの異なる視点から検知された異常を対応付けて、監視対象装置の状態変化を容易に把握することができる。
【０１３０】
また、実施形態に係る異常検知装置は、半導体製造装置における処理が完了するごとに、最新の観測結果（観測値）を取得して、異常検知に使用する閾値を自動的に更新する。このため、異常検知装置は、人手を介して閾値を設定し直す必要がなく、メンテナンスフリーの異常監視を実現することができる。
【０１３１】
なお、上記実施形態では、予測モデルと変化点検出モデルとを統計モデリングの例として説明したが、他の統計モデリングの手法を用いてもよい。また、予測値は、必ずしも要約値から生成しなくてもよく、観測値の性質上可能であれば観測値に対して直接統計モデリングを適用してもよい。
【０１３２】
また、実施形態に係る異常検知装置は、異なる統計モデリングの手法を用いて予測値を生成する二つの異なる予測値生成部を備える。このため、実施形態に係る異常検知装置は、要約値の性質に応じて、当該要約値に適した統計モデリングの手法を選択し予測値を生成することができる。
【０１３３】
たとえば、異常検知装置は、より精度の高い異常検知結果が要求される場合には、ＭＣＭＣを利用した予測手法を用いて異常検知を実行し、より高速に処理を行うことが要求される場合には、フィルタリングを利用した予測手法を用いることができる。
【０１３４】
また、フィルタリングを利用した予測手法としては、カルマンフィルタのほか、拡張カルマンフィルタ、粒子フィルタその他任意のフィルタを利用することができる。
【０１３５】
［変形例１］
上記第１の実施形態では、半導体製造装置４のメンテナンス等の特定のイベントの発生については特に考慮していない。変形例１では、半導体製造装置４のメンテナンス等特定のイベントが発生することで取得されるデータに変動が生じる可能性を考慮して、特定のイベント直後の観測値を破棄するよう、異常検知装置を構成する。特定のイベントの発生についての情報は、異常検知装置が、イベントログとして監視対象装置から取得し、記憶部に格納するよう構成すればよい。
【０１３６】
変形例１に係る異常検知装置１Ａの構成および動作は、第１の実施形態に係る異常検知装置１と概ね同様であるため、同様の部分については説明を省略する（図１参照）。変形例１に係る異常検知装置１Ａでは、制御部２０Ａが備える観測値取得部２０１Ａの動作が、第１の実施形態の観測値取得部２０１と異なる。
【０１３７】
図８は、第１の実施形態の変形例１に係る異常検知装置１Ａにおける処理について説明するためのフローチャートである。
【０１３８】
図８に示すように、変形例１に係る異常検知装置１Ａは、まず、リモートサーバ３を介して半導体製造装置４からセンサの観測値を受信する（ステップＳ８１）。観測値を受信した観測値取得部２０１Ａは、次に、記憶部３０（半導体製造装置情報記憶部３１）に格納される半導体製造装置４の情報を取得する（ステップＳ８２）。観測値取得部２０１Ａは、記憶部３０から取得した情報において、取得した観測値の測定時間に半導体製造装置４がメンテナンス中であったことを示す情報が含まれているか否かを判定する（ステップＳ８３）。そして、観測値取得部２０１Ａは、情報が含まれていると判定した場合（ステップＳ８３、Ｙｅｓ）、取得した観測値を他の機能部に送らず、そのまま破棄する（ステップＳ８４）。他方、観測値取得部２０１Ａは、情報が含まれていないと判定した場合（ステップＳ８３、Ｎｏ）、図７に示した異常検知処理に進む（ステップＳ８５）。これで変形例１に係る異常検知装置１Ａの処理は終了する。
【０１３９】
なお、観測値取得部２０１Ａは、予め半導体製造装置情報記憶部３１からメンテナンスの情報を取得しておき、メンテナンス中の観測値だけでなく、メンテナンス前後所定時間中の観測値も破棄するよう構成してもよい。
【０１４０】
また、観測値取得部２０１Ａが、メンテナンス中であったことを示す情報が含まれていると判定した場合（ステップＳ８３、Ｙｅｓ）には、それまでの異常検知処理をリセットして、新たに処理を開始するように異常検知装置１Ａを構成してもよい。すなわち、異常検知装置１Ａは、メンテナンスが行われた時点で統計モデリングを使用した学習をいったん終了して、新たに学習を開始するように構成してもよい。
【０１４１】
また、観測値取得部２０１Ａが、メンテナンス中であったことを示す情報が含まれていると判定した場合（ステップＳ８３、Ｙｅｓ）、観測値取得部２０１Ａは、その後所定回数にわたり取得した観測値を破棄するよう構成してもよい。このように構成すれば、統計モデリングによる異常検知処理自体は継続しつつ、メンテナンスによる変動が生じた可能性のあるデータは異常検知処理の対象から除外することができる。このため、異常検知の精度を向上させることができる。
【０１４２】
また、異常が検知された後にメンテナンスが実行された場合に、異常検知の対象となったデータを破棄するように異常検知装置１Ａを構成してもよい。たとえば、観測値取得部２０１Ａが、メンテナンス中であったことを示す情報が含まれていると判定した場合（ステップＳ８３、Ｙｅｓ）、観測値取得部２０１Ａはさらに、異常検知情報記憶部３２を参照する。そして、観測値取得部２０１Ａは、たとえば異常検知情報に含まれる「タイムスタンプ」と「異常判定」とを参照して、メンテナンス実行日時から所定期間前までに異常が検知されているか否かを判定する。異常が検知されていると判定した場合、観測値取得部２０１Ａは、異常検知時点からメンテナンス終了までの間に取得された観測値を破棄する。そして、観測値取得部２０１Ａは、所定期間にわたり、異常検知時点直前の観測値を繰り返し要約値生成部２０２に送信する。このように構成すれば、異常検知の対象となったデータすなわち異常なデータを除外して半導体製造装置４の状態を推定して統計モデリングを実行することができ、異常検知の精度を向上させることができる。
【０１４３】
［変形例１の効果］
このようにメンテナンス中およびメンテナンス前後所定時間の観測値を、異常検知の判定対象から除外することで、異常検知装置１Ａの検知精度を向上させることができる。
【０１４４】
［変形例２］
上記変形例１では、異常検知装置１Ａを、メンテナンス中の観測値および／またはメンテナンス前後所定時間中の観測値を破棄するように構成した。これに代えて、メンテナンス中およびメンテナンス後所定期間中は、観測値はそのまま入力させるが、警告を出力しないように構成してもよい。メンテナンス後は警告を出力しないように構成した例を変形例２として説明する。
【０１４５】
変形例２に係る異常検知装置１Ｂの構成および動作は、第１の実施形態に係る異常検知装置１と概ね同様であるため、同様の部分については説明を省略する（図１参照）。変形例２に係る異常検知装置１Ｂでは、制御部２０Ｂが備える警告部２０９Ｂの動作が、第１の実施形態の警告部２０９と異なる。
【０１４６】
図９は、変形例２に係る異常検知装置１Ｂにおける処理について説明するためのフローチャートである。
【０１４７】
図９に示すように、変形例２に係る異常検知装置１Ｂは、まず、リモートサーバ３を介して半導体製造装置４からセンサの観測値を受信し、図７のＳ１〜Ｓ７と同様の処理を実行する（ステップＳ１１０１）。そして、警告部２０９Ｂは、検知部２０８から異常検知を通知されたか否かを判定する（ステップＳ１１０２）。警告部２０９Ｂが異常検知の通知がなかったと判定した場合（ステップＳ１１０２、Ｎｏ）、処理は終了する。他方、異常検知の通知があったと判定した場合（ステップＳ１１０２、Ｙｅｓ）、警告部２０９Ｂは次に、要約値取得前に特定のイベントがあったか否かを判定する（ステップＳ１１０３）。たとえば、警告部２０９Ｂは、図３の「運転情報」を参照し、要約値取得時から所定期間内にメンテナンスが実行されている旨の情報があるか否かを判定する。そして、警告部２０９Ｂは、特定のイベントがあったと判定した場合（ステップＳ１１０３、Ｙｅｓ）、警告を出力せず（ステップＳ１１０４）に処理を終了する。他方、特定のイベントがなかったと判定した場合（ステップＳ１１０３、Ｎｏ）、警告部２０９Ｂは、警告を出力し（ステップＳ１１０５）、処理を終了する。
【０１４８】
このように、メンテナンス等の特定のイベントが発生し、観測値が不安定になると予測される場合は、異常検知装置を、当該イベント後所定期間にわたって警告を出力しないように構成してもよい。
【０１４９】
この他、特定のイベントが発生した後に、一旦異常検知処理を初期化するように異常検知装置を構成してもよい。たとえば、メンテナンスの実行後に、異常検知装置に記憶された予測値等のデータをいったん消去等して、新しく入力されるデータのみに対して統計モデリングを適用するように構成してもよい。または、警告が出力されてメンテナンスを実行した場合等、警告の出力と特定のイベントが続いて発生した場合には、その後異常検知処理を初期化するように構成してもよい。または、警告の出力と特定のイベントが続いて発生した場合には、警告の対象となった観測値、要約値および予測値と、特定のイベントの実行中に取得された観測値、要約値および予測値と、を異常検知処理の対象から除外してもよい。このように構成することで、メンテナンス等による条件の変動によって検知結果の精度が不安定になることを防止することができる。
【０１５０】
［プログラム］
図１０は、第１の実施形態に係る異常検知プログラムによる情報処理がコンピュータを用いて具体的に実現されることを示す図である。図１０に例示するように、コンピュータ１０００は、例えば、メモリ１０１０と、ＣＰＵ（Central  Processing  Unit）１０２０と、ハードディスクドライブ１０８０と、ネットワークインタフェース１０７０とを有する。コンピュータ１０００の各部はバス１１００によって接続される。
【０１５１】
メモリ１０１０は、図１０に例示するように、ＲＯＭ１０１１およびＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。
【０１５２】
ここで、図１０に例示するように、ハードディスクドライブ１０８０は、例えば、ＯＳ１０８１、アプリケーションプログラム１０８２、プログラムモジュール１０８３、プログラムデータ１０８４を記憶する。すなわち、開示の実施の形態に係る異常検知プログラムは、コンピュータによって実行される指令が記述されたプログラムモジュール１０８３として、例えばハードディスクドライブ１０８０に記憶される。
【０１５３】
また、異常検知プログラムによる情報処理に用いられるデータは、プログラムデータ１０８４として、例えばハードディスクドライブ１０８０に記憶される。そして、ＣＰＵ１０２０が、ハードディスクドライブ１０８０に記憶されたプログラムモジュール１０８３やプログラムデータ１０８４を必要に応じてＲＡＭ１０１２に読み出し、各種の手順を実行する。
【０１５４】
なお、異常検知プログラムに係るプログラムモジュール１０８３やプログラムデータ１０８４は、ハードディスクドライブ１０８０に記憶される場合に限られない。例えば、プログラムモジュール１０８３やプログラムデータ１０８４は、着脱可能な記憶媒体に記憶されてもよい。この場合、ＣＰＵ１０２０は、ディスクドライブなどの着脱可能な記憶媒体を介してデータを読み出す。また、同様に、異常検知プログラムに係るプログラムモジュール１０８３やプログラムデータ１０８４は、ネットワーク（ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶されてもよい。この場合、ＣＰＵ１０２０は、ネットワークインタフェース１０７０を介して他のコンピュータにアクセスすることで各種データを読み出す。
【０１５５】
［その他］
なお、本実施形態で説明した異常検知プログラムは、インターネット等のネットワークを介して配布することができる。また、異常検知プログラムは、ハードディスク、フレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤなどのコンピュータで読取可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。
【０１５６】
なお、本実施形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【０１５７】
さらなる効果や変形例は、当業者によって容易に導き出すことができる。このため、本発明のより広範な態様は、以上のように表しかつ記述した特定の詳細および代表的な実施形態に限定されるものではない。したがって、添付の請求の範囲およびその均等物によって定義される総括的な発明の概念の精神または範囲から逸脱することなく、様々な変更が可能である。
【符号の説明】
【０１５８】
１，１Ａ，１Ｂ  異常検知装置
１０  通信部
２０，２０Ａ，２０Ｂ  制御部
２０１，２０１Ａ  観測値取得部
２０２  要約値生成部
２０３  選択部
２０４  第１の予測値生成部
２０５  第２の予測値生成部
２０６  異常スコア算出部
２０７  変化スコア算出部
２０８  検知部
２０９，２０９Ｂ  警告部
２１０  異常レポート作成部
３０  記憶部
３１  半導体製造装置情報記憶部
３２  異常検知情報記憶部
３３  異常レポート記憶部
４０  出力部
２  ネットワーク
３  リモートサーバ
４  半導体製造装置
【図１】
0006723669.tif 000002
【図２】
0006723669.tif 000003
【図３】
0006723669.tif 000004
【図４】
0006723669.tif 000005
【図５】
0006723669.tif 000006
【図６】
0006723669.tif 000007
【図７】
0006723669.tif 000008
【図８】
0006723669.tif 000009
【図９】
0006723669.tif 000010
【図１０】
0006723669.tif 000011
【図１１】
0006723669.tif 000012