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

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

▶ 株式会社SCREENホールディングスの特許一覧

特開2024-137178予測アルゴリズム生成装置、情報処理装置、基板処理装置、予測アルゴリズム生成方法および処理条件決定方法
<>
  • 特開-予測アルゴリズム生成装置、情報処理装置、基板処理装置、予測アルゴリズム生成方法および処理条件決定方法 図1
  • 特開-予測アルゴリズム生成装置、情報処理装置、基板処理装置、予測アルゴリズム生成方法および処理条件決定方法 図2
  • 特開-予測アルゴリズム生成装置、情報処理装置、基板処理装置、予測アルゴリズム生成方法および処理条件決定方法 図3
  • 特開-予測アルゴリズム生成装置、情報処理装置、基板処理装置、予測アルゴリズム生成方法および処理条件決定方法 図4
  • 特開-予測アルゴリズム生成装置、情報処理装置、基板処理装置、予測アルゴリズム生成方法および処理条件決定方法 図5
  • 特開-予測アルゴリズム生成装置、情報処理装置、基板処理装置、予測アルゴリズム生成方法および処理条件決定方法 図6
  • 特開-予測アルゴリズム生成装置、情報処理装置、基板処理装置、予測アルゴリズム生成方法および処理条件決定方法 図7
  • 特開-予測アルゴリズム生成装置、情報処理装置、基板処理装置、予測アルゴリズム生成方法および処理条件決定方法 図8
  • 特開-予測アルゴリズム生成装置、情報処理装置、基板処理装置、予測アルゴリズム生成方法および処理条件決定方法 図9
  • 特開-予測アルゴリズム生成装置、情報処理装置、基板処理装置、予測アルゴリズム生成方法および処理条件決定方法 図10
  • 特開-予測アルゴリズム生成装置、情報処理装置、基板処理装置、予測アルゴリズム生成方法および処理条件決定方法 図11
  • 特開-予測アルゴリズム生成装置、情報処理装置、基板処理装置、予測アルゴリズム生成方法および処理条件決定方法 図12
  • 特開-予測アルゴリズム生成装置、情報処理装置、基板処理装置、予測アルゴリズム生成方法および処理条件決定方法 図13
  • 特開-予測アルゴリズム生成装置、情報処理装置、基板処理装置、予測アルゴリズム生成方法および処理条件決定方法 図14
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024137178
(43)【公開日】2024-10-07
(54)【発明の名称】予測アルゴリズム生成装置、情報処理装置、基板処理装置、予測アルゴリズム生成方法および処理条件決定方法
(51)【国際特許分類】
   H01L 21/306 20060101AFI20240927BHJP
   H01L 21/304 20060101ALI20240927BHJP
   G06F 18/27 20230101ALI20240927BHJP
   G06N 20/00 20190101ALI20240927BHJP
【FI】
H01L21/306 R
H01L21/304 643A
H01L21/304 648G
G06F18/27
G06N20/00
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2023048593
(22)【出願日】2023-03-24
(71)【出願人】
【識別番号】000207551
【氏名又は名称】株式会社SCREENホールディングス
(74)【代理人】
【識別番号】100108523
【弁理士】
【氏名又は名称】中川 雅博
(74)【代理人】
【識別番号】100125704
【弁理士】
【氏名又は名称】坂根 剛
(74)【代理人】
【識別番号】100187931
【弁理士】
【氏名又は名称】澤村 英幸
(72)【発明者】
【氏名】福田 啓太朗
(72)【発明者】
【氏名】篠原 健介
(72)【発明者】
【氏名】▲高▼木 義徳
【テーマコード(参考)】
5F043
5F157
【Fターム(参考)】
5F043DD13
5F043EE07
5F043EE08
5F157AB02
5F157AB33
5F157AB90
5F157AC01
5F157AC13
5F157BB22
5F157BB45
5F157CB32
5F157CE07
5F157CE10
5F157CE25
5F157CE82
5F157CF42
5F157CF44
5F157DB37
(57)【要約】
【課題】 機械学習に用いるデータを増加させることを可能にする。
【解決手段】 予測アルゴリズム生成装置は、基板処理装置で実行される処理の処理条件と、当該処理の処理結果とを含む第1データセットを取得するデータ取得部221と、第1データセットを用いて、処理条件から処理結果を予測する第1予測アルゴリズムを生成する第1予測アルゴリズム生成部223と、第1予測アルゴリズムより仮の処理条件から予測される予測処理結果と仮の処理条件とを含む第2データセットを生成する追加情報生成部225と、第1データセットと第2データセットとを機械学習することにより第2予測アルゴリズムを生成する第2予測アルゴリズム生成部227と、を備える。
【選択図】図8
【特許請求の範囲】
【請求項1】
基板処理装置で実行される処理の処理条件と、当該処理の処理結果とを含む第1データセットを取得するデータ取得部と、
前記第1データセットを用いて、前記処理条件から前記処理結果を予測する第1予測アルゴリズムを生成する第1予測アルゴリズム生成部と、
前記第1予測アルゴリズムにより仮の処理条件から予測される予測処理結果と前記仮の処理条件とを含む第2データセットを生成する追加情報生成部と、
前記第1データセットと前記第2データセットとを機械学習することにより第2予測アルゴリズムを生成する第2予測アルゴリズム生成部と、を備えた予測アルゴリズム生成装置。
【請求項2】
前記第1予測アルゴリズムは、前記処理条件に含まれる少なくとも1つの条件に用いられる変数を説明変数とし、複数のパラメータを用いて前記処理結果の推定値を算出する回帰式であり、
前記第1予測アルゴリズム生成部は、前記第1データセットの複数組を前記回帰式に与えて回帰分析することにより前記第1予測アルゴリズムを生成する、請求項1に記載の予測アルゴリズム生成装置。
【請求項3】
請求項1に記載の予測アルゴリズム生成装置で生成された前記第2予測アルゴリズムを用いて前記基板処理装置を管理する情報処理装置であって、
前記予測アルゴリズム生成装置から前記第2予測アルゴリズムを取得する取得部と、
仮の処理条件を前記第2予測アルゴリズムに与えて前記第2予測アルゴリズムにより予測される予測処理結果が許容条件を満たす場合に前記仮の処理条件を、前記基板処理装置を動作させるための処理条件に決定する処理条件決定部と、を備えた情報処理装置。
【請求項4】
請求項3に記載の情報処理装置を備えた、基板処理装置。
【請求項5】
基板処理装置で実行される処理の処理条件と、当該処理の処理結果とを含む第1データセットを取得するデータ取得ステップと、
前記データ取得ステップにおいて取得された前記第1データセットを用いて前記処理条件から前記処理結果を予測する第1予測アルゴリズムを生成する第1予測アルゴリズム生成ステップと、
前記第1予測アルゴリズムにより仮の処理条件から予測される予測処理結果と前記仮の処理条件とを含む第2データセットを生成する追加情報生成ステップと、
前記第1データセットと前記第2データセットとを機械学習することにより第2予測アルゴリズムを生成する第2予測アルゴリズム生成ステップと、を備える、予測アルゴリズム生成方法。
【請求項6】
請求項5記載の予測アルゴリズム生成方法を実行する予測アルゴリズム生成装置により生成された前記予測アルゴリズムを用いて前記基板処理装置を管理する情報処理装置で実行される処理条件決定方法であって、
前記予測アルゴリズム生成装置から前記第2予測アルゴリズムを取得する取得ステップと、
仮の処理条件を前記第2予測アルゴリズムに与えて前記予測アルゴリズムにより予測される予測処理結果が許容条件を満たす場合に前記仮の処理条件を、前記基板処理装置を動作させるための処理条件に決定する処理条件決定ステップと、を備える、処理条件決定方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、予測アルゴリズム生成装置、情報処理装置、基板処理装置、予測アルゴリズム生成方法および処理条件決定方法に関する。
【背景技術】
【0002】
半導体製造プロセスの一つにエッチングプロセスがある。エッチングプロセスでは、基板に薬液を塗布するエッチング処理によって、基板に形成されている被膜の膜厚調整が行なわれる。この膜厚調整においては、基板の面全体について均一にエッチングが進行するようにエッチング処理すること、あるいは、基板の面をエッチング処理によって平坦にすることが重要である。しかし、エッチング処理は、被膜が処理される処理量がノズルを移動させる動作の違いによって変化する複雑なプロセスである。また、エッチング処理により被膜が処理される処理量は、基板を処理した後に判明する。このため、ノズルを移動させる動作を設定する作業は、技術者による試行錯誤が必要である。ノズルの最適な動作を決定するには、多大なコスト及び時間を要する。
【0003】
特開2021-108367号公報には、「入力」を処理量(エッチング量)とし、「出力」をスキャン速度情報とする学習用データで機械学習させた学習済モデルを用いて、目標とする処理量からスキャン速度情報を決定する装置が記載されている。この技術によれば、目標とする処理量から1つのスキャン速度情報が決定される。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2021-108367号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
機械学習による学習モデルの精度を向上させるためには、学習に適した学習用データを準備する必要がある。学習用データは、説明変数と目的変数とを含むが、説明変数の値の範囲や、データセットの量が十分でない学習用データで学習した学習モデルは十分な精度を確保できない場合がある。このため、説明変数の値の範囲や、データセットの量が十分な学習用データを準備する必要があるが、機械学習させるために収集することのできる学習用データの数はコストおよび時間の面で限界がある。このため、学習モデルの精度を向上させることに限界があった。
【0006】
本発明の目的の1つは、低コストで精度の高い予測アルゴリズムを生成することが可能な予測アルゴリズム生成装置を提供することである。
【0007】
本発明のさらなる他の目的は、処理条件に従って基板を処理する基板処理装置に与える適切な処理条件を提示することが可能な情報処理装置および基板処理装置を提供することである。
【0008】
本発明のさらなる他の目的は、低コストで精度の高い予測アルゴリズムを生成することが可能な予測アルゴリズム生成方法を提供することである。
【0009】
本発明のさらなる他の目的は、処理条件に従って基板を処理する基板処理装置に与える適切な処理条件を提示することが可能な処理条件決定方法を提供することである。
【課題を解決するための手段】
【0010】
(1)本発明の一局面に従う予測アルゴリズム生成装置は、基板処理装置で実行される処理の処理条件と、当該処理の処理結果とを含む第1データセットを取得するデータ取得部と、第1データセットを用いて、処理条件から処理結果を予測する第1予測アルゴリズムを生成する第1予測アルゴリズム生成部と、第1予測アルゴリズムより仮の処理条件から予測される予測処理結果と仮の処理条件とを含む第2データセットを生成する追加情報生成部と、第1データセットと第2データセットとを機械学習することにより、第2予測アルゴリズムを生成する第2予測アルゴリズム生成部と、を備える。
【0011】
(2)本発明の他の局面に従う情報処理装置は、上記の予測アルゴリズム生成装置で生成された第2予測アルゴリズムを用いて基板処理装置を管理する情報処理装置であって、予測アルゴリズム生成装置から第2予測アルゴリズムを取得する取得部と、仮の処理条件を第2予測アルゴリズムに与えて第2予測アルゴリズムにより予測される予測処理結果が許容条件を満たす場合に仮の処理条件を、基板処理装置を動作させるための処理条件に決定する処理条件決定部と、を備える。
【0012】
(3)本発明の他の局面に従う予測アルゴリズム生成方法は、基板処理装置で実行される処理の処理条件と、当該処理の処理結果とを含む第1データセットを取得するデータ取得ステップと、データ取得ステップにおいて取得された第1データセットを用いて処理条件から処理結果を予測する第1予測アルゴリズムを生成する第1予測アルゴリズム生成ステップと、第1予測アルゴリズムにより仮の処理条件から予測される予測処理結果と仮の処理条件とを含む第2データセットを生成する追加情報生成ステップと、第1データセットと第2データセットとを機械学習することにより第2予測アルゴリズムを生成する第2予測アルゴリズム生成ステップと、を備える。
【0013】
(4)本発明のさらに他の局面に従う処理条件決定方法は、上記の予測アルゴリズム生成方法を実行する予測アルゴリズム生成装置により生成された予測アルゴリズムを用いて基板処理装置を管理する情報処理装置で実行される処理条件決定方法であって、予測アルゴリズム生成装置から第2予測アルゴリズムを取得する取得ステップと、仮の処理条件を第2予測アルゴリズムに与えて予測アルゴリズムにより予測される予測処理結果が許容条件を満たす場合に仮の処理条件を、基板処理装置を動作させるための処理条件に決定する処理条件決定ステップと、を備える。
【発明の効果】
【0014】
低コストで精度の高い予測アルゴリズムを生成することが可能になる。
また、処理条件に従って基板を処理する基板処理装置に与える適切な処理条件を提示することが可能になる。
【図面の簡単な説明】
【0015】
図1】本発明の一実施の形態に係る基板処理システムの構成を説明するための図である。
図2】情報処理装置の構成の一例を示す図である。
図3】予測アルゴリズム生成装置の構成の一例を示す図である。
図4】一実施の形態に係る基板処理システムの機能的な構成の一例を示す図である。
図5】被膜の処理におけるノズルの基板に対する相対位置の変化を説明するための図である。
図6】ノズルの動作パターンの一例を示す図である。
図7】処理結果を説明するための図である。
図8】予測アルゴリズム生成部が有する機能の一例を示す図である。
図9】第2予測アルゴリズムを説明するための図である。
図10】予測モデル生成処理の流れの一例を示すフローチャートである。
図11】第1予測アルゴリズム生成処理の流れの一例を示すフローチャートである。
図12】第2予測アルゴリズム生成の流れの一例を示すフローチャートである。
図13】追加情報生成処理の流れの一例を示すフローチャートである。
図14】処理条件決定処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【0016】
(1)基板処理システムの全体構成
図1は、本発明の一実施の形態に係る基板処理システムの構成を説明するための図である。図1の基板処理システム1は、情報処理装置100、予測アルゴリズム生成装置200および基板処理装置300を含む。予測アルゴリズム生成装置200は、例えばサーバであり、情報処理装置100は、例えばパーソナルコンピューターである。
【0017】
予測アルゴリズム生成装置200および情報処理装置100は、基板処理装置300を管理するために用いられる。なお、予測アルゴリズム生成装置200および情報処理装置100が管理する基板処理装置300は、1台に限定されるものではなく、基板処理装置300の複数を管理してもよい。
【0018】
本実施の形態に係る基板処理システム1において、情報処理装置100、予測アルゴリズム生成装置200および基板処理装置300は、互いに有線または無線の通信線または通信回線網により接続される。情報処理装置100、予測アルゴリズム生成装置200および基板処理装置300は、それぞれがネットワークに接続され、互いにデータの送受信が可能である。ネットワークは、例えば、ローカルエリアネットワーク(LAN)またはワイドエリアネットワーク(WAN)が用いられる。また、ネットワークは、インターネットであってもよい。また、情報処理装置100と基板処理装置300とは、専用の通信回線網で接続されてもよい。ネットワークの接続形態は、有線接続であってもよいし、無線接続であってもよい。
【0019】
なお、予測アルゴリズム生成装置200は、基板処理装置300および情報処理装置100と、必ずしも通信線または通信回線網で接続される必要はない。この場合、基板処理装置300で生成されたデータが記録媒体を介して予測アルゴリズム生成装置200に渡されてもよい。また、予測アルゴリズム生成装置200で生成されたデータが記録媒体を介して情報処理装置100に渡されてもよい。
【0020】
基板処理装置300には、図示しない表示装置、音声出力装置および操作部が設けられる。基板処理装置300は、基板処理装置300の予め定められた処理条件(処理レシピ)に従って運転される。
【0021】
(2)基板処理装置の概要
基板処理装置300は、制御装置10と、複数の基板処理ユニットWUを備える。制御装置10は、複数の基板処理ユニットWUを制御する。複数の基板処理ユニットWUは、被膜が形成された基板Wに処理液を供給することにより基板Wの被膜の処理を行う。本実施の形態において、処理対象の基板Wは、直径300mmを有するが、本発明は、これに限定されるものではない。処理液はエッチング液を含み、基板処理ユニットWUはエッチング処理を実行する。エッチング液は、薬液である。エッチング液は、例えば、フッ硝酸(フッ酸(HF)と硝酸(HNO)との混合液)、フッ酸、バファードフッ酸(BHF)、フッ化アンモニウム、HFEG(フッ酸とエチレングリコールとの混合液)、または、燐酸(HPO)である。
【0022】
基板処理ユニットWUは、スピンチャックSCと、スピンモータSMと、表面ノズル311と、ノズル移動機構301と、裏面ノズル312と、を備える。スピンチャックSCは、水平な姿勢で保持された円板状のスピンベースSBと、スピンベースSBの上方で基板Wを水平な姿勢で保持可能な複数のチャックピン306とを含む。これにより、スピンチャックSCは、基板Wを水平に保持する。基板Wは、スピンモータSMの第1回転軸AX1と基板Wの中心とが一致するようにスピンチャックSCに保持される。スピンモータSMは、第1回転軸AX1を有する。第1回転軸AX1は、上下方向に延びる。スピンチャックSCは、スピンモータSMの第1回転軸AX1の上端部に取り付けられる。スピンモータSMが回転すると、スピンチャックSCが第1回転軸AX1を中心として回転する。スピンモータSMは、ステッピングモータである。スピンチャックSCに保持された基板Wは、第1回転軸AX1を中心として回転する。このため、基板Wの回転速度は、ステッピングモータの回転速度と同じである。なお、スピンモータの回転速度を示す回転速度信号を生成するエンコーダを設ける場合、エンコーダにより生成される回転速度信号から基板Wの回転速度が取得されてもよい。この場合、スピンモータSMは、ステッピングモータ以外のモータを用いることができる。
【0023】
表面ノズル311は、スピンチャックSCに保持された基板Wの表面(上面)にエッチング液を供給する。表面ノズル311には、図示しないエッチング液供給部からエッチング液が供給される。表面ノズル311は、回転中の基板Wの表面に向けてエッチング液を吐出する。裏面ノズル312は、スピンチャックSCに保持された基板Wの裏面(下面)にエッチング液を供給する。裏面ノズル312は、図示しないエッチング液供給部からエッチング液が供給され、回転中の基板Wの裏面に向けてエッチング液を吐出する。以下、裏面ノズル312からエッチング液の吐出を行う処理を裏面吐出処理と呼ぶ。本実施の形態においては、基板処理装置300の被膜の処理において、裏面吐出処理が行われる。
【0024】
ノズル移動機構301は、略水平方向に表面ノズル311を移動させる。具体的には、ノズル移動機構301は、第2回転軸AX2を有するノズルモータ303と、ノズルアーム305と、を有する。ノズルモータ303は、第2回転軸AX2が略鉛直方向に沿うように配置される。ノズルアーム305は、直線状に延びる長手形状を有する。ノズルアーム305の一端は、ノズルアーム305の長手方向が第2回転軸AX2とは異なる方向となるように、第2回転軸AX2の上端に取り付けられる。ノズルアーム305の他端には、エッチング液の吐出口が下方を向くように表面ノズル311が取り付けられる。
【0025】
ノズルモータ303が動作すると、ノズルアーム305は第2回転軸AX2を中心として水平面内で回転する。これにより、ノズルアーム305の他端に取り付けられた表面ノズル311は、第2回転軸AX2を中心として水平方向に移動する(旋回する)。表面ノズル311は、水平方向に移動しながら基板Wに向けてエッチング液を吐出する。ノズルモータ303は、例えば、ステッピングモータである。
【0026】
制御装置10は、CPU(中央演算処理装置)およびメモリを含み、CPUがメモリに記憶されたプログラムを実行することにより、基板処理装置300の全体を制御する。制御装置10は、スピンモータSMおよびノズルモータ303を制御する。
【0027】
予測アルゴリズム生成装置200には、基板処理装置300から実験データが入力される。予測アルゴリズム生成装置200は、実験データを用いて第1予測アルゴリズムおよび第2予測アルゴリズムを生成し、第2予測アルゴリズムを情報処理装置100に出力する。
【0028】
情報処理装置100は、第2予測アルゴリズムを用いて、基板処理装置300がこれから処理する予定の基板に対して、基板を処理するための処理条件を決定する。情報処理装置100は、決定された処理条件を基板処理装置300に出力する。
【0029】
図2は、情報処理装置の構成の一例を示す図である。図2を参照して、情報処理装置100は、CPU101、RAM(ランダムアクセスメモリ)102、ROM(リードオンリメモリ)103、記憶装置104、操作部105、表示装置106および入出力I/F(インターフェイス)107により構成される。CPU101、RAM102、ROM103、記憶装置104、操作部105、表示装置106および入出力I/F107はバス108に接続される。
【0030】
RAM102は、CPU101の作業領域として用いられる。ROM103にはシステムプログラムが記憶される。記憶装置104は、ハードディスクまたは半導体メモリ等の記憶媒体を含み、プログラムを記憶する。プログラムは、ROM103または他の外部記憶装置に記憶されてもよい。
【0031】
記憶装置104には、CD-ROM109が着脱可能である。CPU101が実行するプログラムを記憶する記録媒体としては、CD-ROM109に限られず、光ディスク(MO(Magnetic Optical Disc)/MD(Mini Disc)/DVD(Digital Versatile Disc))、ICカード、光カード、マスクROM、EPROM(Erasable Programmable ROM)などの半導体メモリ等の媒体でもよい。さらに、CPU101がネットワークに接続されたコンピューターからプログラムをダウンロードして記憶装置104に記憶する、または、ネットワークに接続されたコンピューターがプログラムを記憶装置104に書込みするようにして、記憶装置104に記憶されたプログラムをRAM102にロードしてCPU101で実行するようにしてもよい。ここでいうプログラムは、CPU101により直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
【0032】
操作部105は、キーボード、マウスまたはタッチパネル等の入力デバイスである。使用者は、操作部105を操作することにより、情報処理装置100に所定の指示を与えることができる。表示装置106は、液晶表示装置等の表示デバイスであり、使用者による指示を受け付けるためのGUI(Graphical User Interface)等を表示する。入出力I/F107は、ネットワークに接続される。
【0033】
図3は、予測アルゴリズム生成装置の構成の一例を示す図である。図3を参照して、予測アルゴリズム生成装置200は、CPU201、RAM202、ROM203、記憶装置204、操作部205、表示装置206および入出力I/F207により構成される。CPU201、RAM202、ROM203、記憶装置204、操作部205、表示装置206および入出力I/F207はバス208に接続される。
【0034】
RAM202は、CPU201の作業領域として用いられる。ROM203にはシステムプログラムが記憶される。記憶装置204は、ハードディスクまたは半導体メモリ等の記憶媒体を含み、プログラムを記憶する。プログラムは、ROM203または他の外部記憶装置に記憶されてもよい。記憶装置204には、CD-ROM209が着脱可能である。
【0035】
操作部205は、キーボード、マウスまたはタッチパネル等の入力デバイスである。入出力I/F207は、ネットワークに接続される。
【0036】
(3)基板処理システムの機能構成
図4は、一実施の形態に係る基板処理システムの機能的な構成の一例を示す図である。図4を参照して、基板処理装置300が備える制御装置10は、基板処理ユニットWUを制御して、処理時間において、処理条件に従って基板Wに対して被膜の処理を行う。処理時間は、基板に対する被膜の処理に対して定められる時間である。本実施の形態において、処理時間は、基板Wに表面ノズル311がエッチング液を吐出している間の時間である。処理条件は、基板処理ユニットWUが被膜の処理を実行する際に用いる条件である。
【0037】
処理条件は、エッチング液の温度、エッチング液の濃度、エッチング液の流量、基板Wの回転数および表面ノズル311の位置を含む。エッチング液の濃度は、複数の薬液の混合比で示される。表面ノズル311の位置は、被膜の処理が実行される間の複数の時点それぞれにおける表面ノズル311と基板Wとの相対位置で示される。表面ノズル311と基板Wとの相対位置は、ノズルモータ303の回転角度で示される。
【0038】
処理条件は、時間の経過に伴って変動しない固定条件および時間の経過に伴って変動する変動条件を含む。本実施の形態において、固定条件がエッチング液の温度T、エッチング液の濃度C、エッチング液の流量Dおよび基板Wの回転数Rであり、変動条件が表面ノズル311と基板Wとの相対位置である。
【0039】
予測アルゴリズム生成装置200は、実験データ取得部210と、予測アルゴリズム生成部220と、予測アルゴリズム送信部230と、を含む。予測アルゴリズム生成装置200が備える機能は、予測アルゴリズム生成装置200が備えるCPU201がRAM202に格納された予測アルゴリズム生成プログラムを実行することにより、CPU201により実現される。
【0040】
実験データ取得部210は、基板処理装置300から実験データを取得する。実験データは、処理条件と、基板処理装置300が当該処理条件で基板Wに被膜の処理を行った結果を示す処理結果とを含む第1データセットの複数組を含む。実験データ取得部210は、複数組の第1データセットを予測アルゴリズム生成部220に出力する。
【0041】
ここで、変動条件について説明する。図5は、被膜の処理におけるノズルの基板に対する相対位置の変化を説明するための図である。図5を参照して、スピンチャックSCに保持された基板Wに対する表面ノズル311の相対位置の変化が示される。表面ノズル311は、スピンチャックSCに保持された基板Wの上方の領域を移動する。表面ノズル311は第2回転軸AX2を中心に回転するので、表面ノズル311が移動する軌跡は円弧である。表面ノズル311が移動する軌跡は基板の中心である基板中心OPを通る。このため、表面ノズル311は、基板Wの径方向において基板中心OPから周縁部の全体に渡って移動する。ここでは、表面ノズル311が移動する軌跡は、その一端が基板Wの周縁部より内側の動作端部EP1で示され、その他端が基板Wの周縁部より内側の動作端部EP2で示される。表面ノズル311の動作端部EP1から基板中心OPに移動する走査が矢印a1で示され、表面ノズル311の基板中心OPから動作端部EP2に移動する走査が矢印a2で示され、表面ノズル311の動作端部EP2から基板中心OPに移動する走査が矢印a3で示され、表面ノズル311の基板中心OPから動作端部EP1に移動する走査が矢印a4で示される。
【0042】
図6は、ノズルの動作パターンの一例を示す図である。図6においては、縦軸に基板Wに対する表面ノズル311の相対位置が示され、横軸に経過時間(秒)が示される。本実施の形態においては、表面ノズル311を基板Wに対して移動させるノズル動作を開始してから終了するまでの走査期間は、処理時間に等しい。上述したように処理時間が60秒に設定されているので、ノズルの動作パターンは、0~60秒の期間の相対位置が示される。ノズルの相対位置は、基板中心OPをゼロとし、基板中心OPから動作端部EP1までの範囲は負の値で示され、基板中心OPから動作端部EP2までの範囲は正の値で示される。基板Wは、直径300mmを有するので、基板中心OPから動作端部EP1,EP2までの距離は、±150mm以下に設定される。ここでは、基板中心OPから動作端部EP1までの距離は-147mmに設定され、基板中心OPから動作端部EP2までの距離は+147mmに設定される。図6のノズルの動作パターンにおいては、表面ノズル311が基板中心OPに位置する場合における表面ノズル311の相対位置が0で示され、表面ノズル311が動作端部EP1に位置する場合における表面ノズル311の相対位置が-147mmで示され、表面ノズル311が動作端部EP2に位置する場合における表面ノズル311の相対位置が147mmで示される。
【0043】
図6に示すノズル動作パターンは、動作端部EP1と動作端部EP2との間を5回往復する走査として示される。基板処理装置300の表面ノズル311のノズル動作パターンは、5回往復する走査に限定されるものではなく、1回以上往復する走査であればよい。ノズル動作パターンにおける最初の1往復の走査について、図5に示した矢印a1~a4で示される走査に対応する相対位置の部分に同じ符号が付されて示される。
【0044】
次に、処理結果について説明する。図7は、処理結果を説明するための図である。図7においては、縦軸が膜厚を示し、横軸が基板の半径方向の位置を示す。横軸の原点は、基板の中心を示す。基板処理装置300により処理される前の基板Wに形成された膜の膜厚が実線で示される。基板処理装置300により処理条件に従ってエッチング液を塗布する被膜の処理が実行されることにより、基板Wに形成される被膜の膜厚が調整される。基板処理装置300により被膜の処理が実行された後の基板Wに形成された膜の膜厚が点線で示される。基板Wの径方向の位置それぞれにおける被膜の膜厚を膜厚特性と呼ぶ。
【0045】
基板処理装置300により処理される前の基板Wに形成された被膜の膜厚と基板処理装置300により処理された後の基板Wに形成された被膜の膜厚との差が処理結果(エッチング量)である。換言すれば、処理結果は、基板処理装置300の被膜の処理により基板Wの径方向における複数の位置それぞれにおいて減少した膜の厚さを示す。
【0046】
基板処理装置300により形成される膜厚は、基板Wの全面において均一であることが望まれる。このため、基板処理装置300により実行される処理に対して、目標となる目標膜厚が定められる。目標膜厚は、一点鎖線で示される。乖離特性は、基板処理装置300により処理された後の基板Wに形成された膜の膜厚と目標膜厚との差分である。乖離特性は、基板Wの径方向における複数の位置それぞれにおける差分を含む。
【0047】
図4に戻って、予測アルゴリズム生成部220には、実験データ取得部210から複数組の第1データセットが入力される。予測アルゴリズム生成部220は、複数組の第1データセットを用いて第1予測アルゴリズムおよび第2予測アルゴリズムを生成し、生成された第2予測アルゴリズムを予測アルゴリズム送信部230に出力する。予測アルゴリズム生成部220の詳細については、後述するが、処理条件から基板処理装置が被膜の処理を処理条件に従って実行した処理結果を処理条件から予測する第2予測アルゴリズムを生成する。予測アルゴリズム送信部230は、予測アルゴリズム生成部220により生成された第2予測アルゴリズムを情報処理装置100に送信する。
【0048】
情報処理装置100は、予測アルゴリズム受信部110と、処理条件決定部120と、予測部130と、評価部140と、処理条件送信部150と、を含む。情報処理装置100が備える機能は、情報処理装置100が備えるCPU101がRAM102に格納された処理条件決定プログラムを実行することにより、CPU101により実現される。
【0049】
予測アルゴリズム受信部110は、予測アルゴリズム生成装置200から送信される第2予測アルゴリズムを受信し、受信された第2予測アルゴリズムを予測部130に出力する。処理条件決定部120は、基板処理装置300がこれから処理の対象とする基板Wに対する処理条件を決定し、処理条件を予測部130に出力する。
【0050】
予測部130は、処理条件から第2予測アルゴリズムを用いて予測処理結果を推測する。前述したように、第2予測アルゴリズムは、処理条件から処理結果を予測するアルゴリズムである。予測部130は、処理条件決定部120から入力される処理条件を第2予測アルゴリズムに入力し、予測アルゴリズムが出力する予測処理結果を評価部140に出力する。
【0051】
評価部140は、予測部130から入力される予測処理結果を評価し、評価結果を処理条件決定部120に出力する。詳細には、評価部140は、基板処理装置300が処理対象とする予定の基板Wの処理前の膜厚特性を取得する。評価部140は、予測部130から入力される予測処理結果と、基板Wの処理前の膜厚特性とからエッチング処理後に予測される膜厚特性を算出し、目標とする膜厚特性と比較する。比較の結果が評価基準を満たしていれば、処理条件決定部120により決定された処理条件を、基板処理装置300がこれから処理の対象とする基板Wに対する処理条件として処理条件送信部150に出力する。例えば、評価部140は、乖離特性を算出し、乖離特性が評価基準を満たしているか否かが判断される。乖離特性は、エッチング処理後の基板Wの膜厚特性と目標の膜厚特性との差分である。評価基準は、任意に定めることができる。例えば、評価基準は、乖離特性において差分の最大値が閾値以下であるとしてもよいし、差分の平均が閾値以下であるとしてもよい。
【0052】
処理条件送信部150は、処理条件決定部120から入力される処理条件を、基板処理装置300の制御装置10に送信する。基板処理装置300は、処理条件に従って基板Wを処理する。
【0053】
評価部140は、評価結果が評価基準を満たしていない場合は、評価結果を処理条件決定部120に出力する。評価結果は、エッチング処理後に予測される膜厚特性またはエッチング処理後に予測される膜厚特性と目標の膜厚特性との差分を含む。
【0054】
処理条件決定部120は、評価部140から評価結果が入力されることに応じて、予測部130に推測させるための新たな処理条件を決定する。処理条件決定部120は、実験計画法、ペアワイズ法またはベイズ推定等を用いて、予め準備された複数の変動条件および複数の固定条件からそれぞれ1つを選択し、選択された変動条件と固定条件とを含む処理条件を予測部130に推測させるための新たな処理条件として決定する。
【0055】
処理条件決定部120は、ベイズ推定を用いて処理条件を探索してもよい。評価部140により複数の評価結果が出力される場合、処理条件と評価結果との組が複数となる。複数の組それぞれにおける予測処理結果の傾向から被膜の膜厚が均一となる処理条件またはエッチング処理後に予測される膜厚特性と目標の膜厚特性との差分が最小となる処理条件を探索する。
【0056】
具体的には、処理条件決定部120は、目的関数を最小化するように処理条件を探索する。目的関数は、被膜の膜厚の均一性を示す関数または被膜の膜厚特性と目標膜厚特性との一致性を示す関数である。例えば、目的関数は、エッチング処理後に予測される膜厚特性と目標の膜厚特性との差分をパラメータで示した関数である。ここでのパラメータは、対応する処理条件である。対応する処理条件は、第2予測アルゴリズムが予測処理結果を推測するために用いた処理条件である。処理条件決定部120は、複数の処理条件のうちから探索により決定されたパラメータである処理条件を選択する。
【0057】
次に、予測アルゴリズム生成部220の詳細な構成について説明する。図8は、予測アルゴリズム生成部が有する機能の一例を示す図である。予測アルゴリズム生成部220は、データ取得部221と、第1予測アルゴリズム生成部223と、追加情報生成部225と、第2予測アルゴリズム生成部227とを含む。
【0058】
データ取得部221は、実験データ取得部210から複数組の第1データセットを取得する。上述したように第1データセットは、基板処理装置300が処理条件に従って被膜の処理を行った後の処理結果と当該処理条件とを含む。処理条件は、固定条件と、変動条件と、を含む。固定条件は、エッチング液の温度T、エッチング液の濃度C、エッチング液の流量Dおよび基板Wの回転数Rを含む。エッチング液の濃度Cは、複数の薬液の混合比で示される。変動条件は、被膜の処理が実行される間の複数の時点それぞれにおける表面ノズル311と基板Wとの相対位置で示される。表面ノズル311と基板Wとの相対位置は、ノズルモータ303の回転角度で示される。
【0059】
データ取得部221は、複数組の第1データセットを第1予測アルゴリズム生成部223および第2予測アルゴリズム生成部227に出力する。
【0060】
追加処理条件生成部229は、追加処理条件を生成し、生成した追加処理条件を追加情報生成部225に出力する。追加処理条件は、データ取得部221が出力する第1データセットに含まれる処理条件とは別の処理条件である。追加処理条件生成部229は、追加変動条件生成部229aと、追加変動条件決定部229cと、追加固定条件生成部229gとを含む。
【0061】
追加変動条件生成部229aは、複数の仮の変動条件を生成する。追加変動条件生成部229aにおいて生成される複数の変動条件は、被膜の処理における表面ノズル311の往復回数、表面ノズル311の移動速度および表面ノズル311の移動時の変速点等のノズル動作に関連する因子の組み合わせがそれぞれ異なる。本実施の形態において、追加変動条件生成部229aにより生成される変動条件の数は、18000個である。追加変動条件生成部229aは、生成した複数の変動条件を追加変動条件決定部229cに出力する。
【0062】
追加変動条件決定部229cは、追加変動条件生成部229aから入力された複数の変動条件から複数の追加変動条件を決定する。追加変動条件決定部229cは、例えば、960個の変動条件を追加変動条件として決定する。追加変動条件決定部229cは、例えば、ランダムに選ばれた変動条件を追加変動条件として決定する。
【0063】
追加固定条件生成部229gは、任意の固定条件を追加固定条件として決定する。本実施の形態においては、3個の基板の回転数と3個のエッチング液の流量との組み合わせた9個の事前固定条件が事前固定条件として決定される。
【0064】
ここで、追加処理条件は、追加変動条件決定部229cにより決定された追加変動条件と、追加固定条件生成部229gにより決定された追加固定条件とを含む。上述したように追加変動条件と追加固定条件とはそれぞれが複数ある。追加処理条件は、複数の追加変動条件の1つと複数の固定条件の1つとの組である。このため、複数の追加変動条件の1つと複数の固定条件の1つとの組み合わせの数の追加処理条件が追加情報生成部225に出力される。本実施の形態においては、追加変動条件決定部229cにより決定される960個の追加変動条件と、追加固定条件生成部229gにより決定された9個の追加固定条件との組み合わせにより8640個の候補条件が生成される。そして、8640個の候補条件のうちから2716個が追加処理条件として、ペアワイズ法により抽出される。2716個の追加処理条件は、追加情報生成部225に出力される。
【0065】
第1予測アルゴリズム生成部223には、データ取得部221から複数組の第1データセットが入力される。第1予測アルゴリズム生成部223は、複数組の第1データセットを用いて第1予測アルゴリズムを生成する。具体的には、第1予測アルゴリズム生成部223は、予め定められた関数に複数組の第1データセットを与えて回帰分析することにより第1予測アルゴリズムを生成する。第1予測アルゴリズム生成部223は、生成した第1予測アルゴリズムを追加情報生成部225に出力する。第1予測アルゴリズム生成部223の詳細は後述するが、第1予測アルゴリズム生成部223においては、処理条件の少なくとも1つの条件から処理結果を推定する関数を含むアルゴリズムとして第1予測アルゴリズムを生成する。
【0066】
追加情報生成部225には、第1予測アルゴリズム生成部223から第1予測アルゴリズムが入力され、追加処理条件生成部229から複数の追加処理条件が入力される。追加情報生成部225は、第1予測アルゴリズムを用いて複数の追加処理条件に基づいて複数の第2データセットを生成する。追加情報生成部225は、複数の追加処理条件のそれぞれに対応する第2データセットを生成する。追加情報生成部225は、複数の追加処理条件を順に第1予測アルゴリズムに入力し、第1予測アルゴリズムから出力される予測処理結果と、追加処理条件とを含む第2データセットを生成する。第1予測アルゴリズムにより1つの追加処理条件から1つの予測処理結果が出力されるので、1つの第2データセットに含まれる追加処理条件と予測処理結果とは対応する。追加情報生成部225は、生成した複数の第2データセットを第2予測アルゴリズム生成部227に出力する。
【0067】
第2予測アルゴリズム生成部227には、データ取得部221から複数組の第1データセットが入力され、追加情報生成部225から複数組の第2データセットが入力される。第2予測アルゴリズム生成部227は、複数組の第1データセットと複数組の第2データセットとを機械学習することにより第2予測アルゴリズムを生成する。
【0068】
具体的には、第2予測アルゴリズム生成部227は、説明変数を第1データセットに含まれる処理条件または第2データセットに含まれる追加処理条件とし、目的変数を第1データセットに含まれる処理結果または第2データセットに含まれる予測処理結果として、機械学習することにより第2予測アルゴリズムを予測アルゴリズムとして生成する。
【0069】
<第1予測アルゴリズムの具体例>
第1予測アルゴリズムの具体例について説明する。第1予測アルゴリズムは、次式(1)で示される回帰式G(x)で示される。以下、回帰式G(x)の同定について説明する。
【0070】
【数1】
【0071】
回帰式G(x)は、第1関数F1(x)と、第2関数F2(x)と、第3関数H(x)の積で示される。第1関数F1(x)は、次式(2)で示すように、基板処理装置300が処理条件のうち基板処理装置300が裏面吐出なしの処理条件で基板Wに被膜の処理を実行する場合の基板Wの径方向の複数の位置それぞれの被膜の処理の前後の膜厚の差を表す関数である。なお、基板Wの径方向の複数の位置それぞれの被膜の処理の前後の膜厚の差は、第1処理結果ER1で示される。発明者は、複数の第1処理結果ER1から、第1関数F1(x)を見出した。第1関数F1(x)は、次式(3)で示される。
【0072】
【数2】
【0073】
第1関数F1(x)は、基板Wの半径方向の位置xを変数とし、かつパラメータα1~α3,β1~β3を用いて示される。なお、パラメータα1~α3,β1~β3は、処理条件のうち、エッチング液の濃度Cに依存する値である。また、式(3)に示されるように、パラメータα1,β1についてはエッチング液の温度Tに関連し、パラメータα2,β2についてはエッチング液の流量Dに関連する。第1関数F1(x)は、変数xのn1(n1は正の定数)次の関数である。
【0074】
処理条件のうち裏面吐出なしの処理条件と、その処理条件で基板処理装置300が被膜の処理を実行して得られる第1処理結果ER1とのデータセットの複数を第1関数F1(x)に与えて回帰分析することにより、パラメータα1~α3,β1~β3が決定される。
【0075】
第2関数F2(x)は、裏面吐出処理の影響を考慮した関数である。この場合、処理条件のうち基板処理装置300が裏面吐出ありの処理条件で基板Wに被膜の処理を実行する場合の基板Wの径方向の位置ごとの被膜の処理の前後の膜厚の差を示す第2処理結果ER2が次式(4)で示される。第2関数F2(x)は、処理条件のうち基板処理装置300が裏面吐出ありの処理条件で基板Wに被膜の処理を実行した第2処理結果ER2を第1関数F1(x)で除算した値を表す関数となる。発明者は、複数の第2処理結果ER2を第1関数F1(x)で除算した結果から、第2関数F2(x)を導き出した。第2関数F2(x)は、次式(6)および次式(7)を含む次式(5)で示される。
【0076】
【数3】
【0077】
第2関数F2(x)は、基板Wの半径方向の位置xを変数とし、かつパラメータγ1~γ4,δ1~δ4,ε1~ε4,ξ1~ξ4を用いて示される。なお、パラメータγ1~γ4,δ1~δ4,ε1~ε4,ξ1~ξ4は、処理条件のうち、エッチング液の温度Tに依存する値である。また、式(6)および式(7)に示されるように、パラメータγ1,δ1,ε1,ξ1についてはエッチング液の濃度Cに関連し、パラメータγ2,δ2,ε2,ξ2についてはエッチング液の流量Dに関連し、パラメータγ3,δ3,ε3,ξ3については基板Wの回転数Rに関連する。
【0078】
処理条件のうち裏面吐出ありの処理条件と、その処理条件で基板処理装置300が被膜の処理を実行して得られる第2処理結果ER2のデータセットの複数組を第2関数F2(x)に与えて回帰分析することにより、パラメータγ1~γ4,δ1~δ4,ε1~ε4,ξ1~ξ4が決定される。
【0079】
第3関数H(x)は、変動条件を考慮した関数である。ここで、基板処理装置300の被膜の処理において、裏面吐出処理が行われる場合、第2処理結果ER2は、次式(8)で示される。
【0080】
ここで、式(8)を変形すると、裏面吐出処理を考慮した第3関数H(x)は、第2処理結果ER2の値を第1関数F1(x)および第2関数F2(x)で除算した値に等しくなる。第2処理結果ER2の値を第1関数F1(x)および第2関数F2(x)で除算した値は、処理時間のうちノズル動作により実際に基板Wにエッチング液が供給されない時間が第2処理結果ER2に及ぼす影響度と言える。以下、第2処理結果ER2の値を第1関数F1(x)および第2関数F2(x)で除算した値を第2影響度(またはエッチング液のカバレッジ率)と呼ぶ。
【0081】
第3関数H(x)は、基板処理装置300が裏面吐出ありの処理条件で基板Wに被膜の処理を実行した第2処理結果ER2を第1関数F1(x)および第2関数F2(x)で除算した値を表す関数となる。発明者は、複数の第2処理結果ER2を第1関数F1(x)および第2関数F2(x)で除算した結果から、第3関数H(x)を導き出した。第3関数H(x)は、次式(10)で示される関数h1(x)の逆関数を含む次式(9)で示される。
【0082】
【数4】
【0083】
式(10)の関数h1(x)は、表面ノズル311が基板W上の位置xに位置している時、既にエッチング液が到達している位置を表す関数である。関数h1(t)は、時刻tにおいて、既にエッチング液が到達している位置を表す関数である。
【0084】
procは、被膜の処理が開始されてから被膜の処理が終了するまでの経過時間を示す。tdelayは、被膜の処理が開始されてから実際にエッチング液が基板Wに供給されるまでの時間を示す。つまり、tproctdelayは、エッチング液が基板W上に存在する時間を示す。
【0085】
実際にエッチング液が基板Wに供給され始めるtdelayの時点で、既にエッチング液が到達している位置については、第3関数H(x)を考慮する必要がない。このため、変数xがh1(tdelay)以上の範囲の第3関数H(x)は、1で示される。一方、変数xがh1(tdelay)より小さい範囲の第3関数H(x)は、関数h1(x)の逆関数h1―1(x)をエッチング液が基板W上に存在する時間を示すtproc-tdelayで除算することにより得られ、基板Wの半径方向の位置xを変数とし、かつパラメータν1~ν4を用いて示される。なお、式(10)に示されるように、パラメータν1については基板Wの回転数Rに関連し、パラメータν2についてはエッチング液の流量Dに関連する。
【0086】
処理条件のうち裏面吐出ありの処理条件と、その処理条件で基板処理装置300が被膜の処理を実行して得られる第2処理結果ER2のデータセットの複数組を第3関数H(x)に与えて回帰分析することにより、パラメータν1~ν4が決定される。
【0087】
本実施の形態においては、基板処理装置300の被膜の処理で裏面吐出処理が行われるので、第1予測アルゴリズムを構成する回帰式G(x)は、第1関数F1(x)と、第2関数F2(x)と、第3関数H(x)との積で示される。
【0088】
なお、基板処理装置300の被膜の処理で裏面吐出処理が行われない場合においては、第1予測アルゴリズムを構成する回帰式G(x)は、第1関数F1(x)と、第3関数H(x)との積で示される。この場合において、処理条件のうち裏面吐出なしの処理条件と、その処理条件で基板処理装置300が被膜の処理を実行して得られる第1処理結果ER1とのデータセットの複数組を第3関数H(x)に与えて回帰分析することにより、パラメータν1~ν4が決定される。
【0089】
パラメータα1~α3,β1~β3、パラメータγ1~γ4,δ1~δ4,ε1~ε4,ξ1~ξ4およびパラメータν1~ν4が決定されると、第1予測アルゴリズムが定まる。パラメータが定まった第1予測アルゴリズムに固定条件の少なくとも1つが入力されると、第1予測アルゴリズムは、基板処理装置300が当該少なくとも1つの条件で基板Wに被膜の処理を行った際に予測される結果を示す追加処理結果を出力する。
【0090】
<第2予測アルゴリズムの具体例>
次に、第2予測アルゴリズムについて説明する。図9は、第2予測アルゴリズムが実現される学習モデルの構造を説明するための図である。学習モデルは、A1層~C1層が入力側から出力側(上層から下層)に向かってこの順に設けられている。A1層には、第1畳み込みニューラルネットワークCNN1が設けられ、B1層には、第1全結合ニューラルネットワークNN1が設けられ、C1層には、第2畳み込みニューラルネットワークCNN2が設けられる。
【0091】
第1畳み込みニューラルネットワークCNN1には、処理条件に含まれる変動条件が入力される。第1全結合ニューラルネットワークNN1には、第1畳み込みニューラルネットワークCNN1の出力と固定条件とが入力される。第2畳み込みニューラルネットワークCNN2には、第1全結合ニューラルネットワークNN1の出力が入力される。
【0092】
第1畳み込みニューラルネットワークCNN1は、畳み込み層およびプーリング層を含む。畳み込み層においては、複数のフィルタが適用される。プーリング層は、畳み込み層の出力を圧縮する。このため、変動条件からできるだけ多くの特徴を抽出することができる。ここで、変動条件は、時間の経過に伴って変動するノズルの基板Wに対する相対位置を含む。第1畳み込みニューラルネットワークCNN1は、複数のフィルタを用いて特徴を抽出するので、ノズルの基板Wに対する相対位置の変化について時間の要素を含む複数の特徴を抽出する。
【0093】
第1全結合ニューラルネットワークNN1は、複数の層が設けられる。図9の例では、第1全結合ニューラルネットワークNN1は、入力側のb1a層および出力側のb1b層の二つの層が設けられる。図9の例では、各層には、複数のノードが含まれる。図9の例では、b1a層に5つのノード、b1b層に4つのノードが示されるが、ノードの数は、これに限定されるものではない。b1a層のノードの数は、第1畳み込みニューラルネットワークCNN1の出力側のノードの数と固定条件の数との和に等しくなるように設定される。b1b層のノードの数は、第2畳み込みニューラルネットワークCNN2の入力側のノードの数に等しくなるように設定される。b1a層のノードの出力はb1b層のノードの入力に接続される。パラメータは、b1a層のノードの出力に対して重み付けする係数を含む。b1a層とb1b層との間には、1または複数の中間層が設けられてもよい。
【0094】
第2畳み込みニューラルネットワークCNN2は、畳み込み層およびプーリング層を含む。畳み込み層においては、複数のフィルタが適用される。プーリング層は、畳み込み層の出力を圧縮する。このため、処理結果からできるだけ多くの特徴を抽出することができる。処理結果に含まれる複数の処理量は、基板Wの径方向における位置が異なる値である。第2畳み込みニューラルネットワークCNN2は、複数のフィルタを用いるので、処理結果について基板Wの径方向の位置の要素を含む複数の特徴を抽出する。なお、第1畳み込みニューラルネットワークCNN1および第2畳み込みニューラルネットワークCNN2それぞれで同じフィルタが用いられてもよい。
【0095】
図10は、予測アルゴリズム生成処理の流れの一例を示すフローチャートである。予測アルゴリズム生成処理は、予測アルゴリズム生成装置200が備えるCPU201がRAM202に格納された予測アルゴリズム生成プログラムを実行することにより、CPU201により実行される処理である。
【0096】
図10を参照して、予測アルゴリズム生成装置200が備えるCPU201は、実験データを取得する。CPU201は、入出力I/F107を制御して、基板処理装置300から実験データを取得する(ステップS01)。実験データは、CD-ROM209等の記録媒体に記録された実験データを記憶装置104で読み取ることにより取得されてもよい。ここで取得される実験データは、複数組の第1データセットを含む。第1データセットは、処理条件と、基板処理装置300において当該処理条件で被膜の処理を行った処理結果とを含む。
【0097】
次のステップS02においては、第1予測アルゴリズム生成処理が実行され、処理はステップS03に進む。次のステップS03においては、第2予測アルゴリズム生成処理が実行され、処理はステップS04に進む。第1予測アルゴリズム生成処理および第2予測アルゴリズム生成処理の詳細は後述するが、第1予測アルゴリズムおよび第2予測アルゴリズムをそれぞれ生成する処理である。ステップS04においては、CPU201は、入出力I/F107を制御することにより、ステップS03において生成された学習済みの第2予測アルゴリズムを情報処理装置100に送信する。
【0098】
図11は、第1予測アルゴリズム生成処理の流れの一例を示すフローチャートである。第1予測アルゴリズム生成処理は、予測アルゴリズム生成処理のステップS02で、CPU201により実行される処理である。予測アルゴリズム生成処理が実行される前の段階で複数組の第1データセットを含む実験データが取得されている。
【0099】
図11を参照して、予測アルゴリズム生成装置200が備えるCPU201は、実験データから複数組の第1データセットを取得する(ステップS11)。第1データセットは、処理条件と処理結果とを含む。ステップS12では、複数組の第1データセットに基づいて回帰分析することにより第1関数F1(x)が決定され、処理はステップS13に進む。具体的には、複数組のデータセットを第1関数F1(x)に与えて回帰することにより第1関数F1(x)が用いる複数のパラメータが決定される。
【0100】
ステップS13においては、複数組の第1データセットに基づいて回帰分析することにより第2関数F2(x)が決定され、処理はステップS14に進む。具体的には、複数組の第1データセットそれぞれの処理結果を第1関数F1(x)で除算した値と、処理条件に含まれる固定条件の少なくとも1つの条件とを第2関数F2(x)に与えて回帰することにより第2関数F2(x)が用いる複数のパラメータが決定される。
【0101】
ステップS14においては、複数組の第1データセットに基づいて回帰分析することにより第3関数H(x)が決定され、処理は予測アルゴリズム生成処理に戻る。具体的には、複数組の第1データセットそれぞれの処理結果を第1関数F1(x)および第2関数F2(x)で除算した値と、処理条件に含まれる変動条件および固定条件の少なくとも1つの条件とを第3関数F3(x)に与えて回帰することにより第3関数F3(x)が用いる複数のパラメータが決定される。このように、基板処理装置300の被膜の処理において裏面吐出処理が行われる場合、第1関数F1(x)と、第2関数F2(x)と、裏面吐出処理を考慮した第3関数H(x)とを含む第1予測アルゴリズムが生成される。
【0102】
図12は、第2予測アルゴリズム生成の流れの一例を示すフローチャートである。予測アルゴリズム生成は、予測アルゴリズム生成処理のステップS03で、CPU201により実行される処理である。第2予測アルゴリズム生成処理が実行される前の段階で実験データが取得されている。
【0103】
図12を参照して、予測アルゴリズム生成装置200が備えるCPU201は、実験データから複数組の第1データセットを取得する(ステップS21)。ステップS22では、追加情報生成処理が実行され、処理はステップS23に進む。追加情報生成処理の詳細は、後述するが、追加処理条件と予測処理結果とを含む第2データセットの複数組を生成する処理である。
【0104】
ステップS23においては、CPU201は、複数組の第1データセットと複数組の第2データセットとを機械学習させ、第2予測アルゴリズムを生成する。ステップS21において取得された第1データセットを学習用データとして機械学習することにより第2予測アルゴリズムを得る場合、第1データセットに含まれる処理条件が説明変数であり、第1データセットに含まれる処理結果が目的変数である。ステップS22において取得された第2データセットを学習用データとして機械学習することにより第2予測アルゴリズムを得る場合、第2データセットに含まれる追加処理条件が説明変数であり、第2データセットに含まれる予測処理結果が目的変数である。CPU201は、処理条件または追加処理条件が与えられる第2予測アルゴリズムにより出力される予測処理結果と目的変数との誤差が小さくなるようにフィルタおよびパラメータを決定する。これにより、第2予測アルゴリズムのフィルタおよびパラメータが調整される。
【0105】
図13は、追加情報生成処理の流れの一例を示すフローチャートである。追加情報生成処理は、第2予測アルゴリズム生成処理のステップS22において実行される処理である。図13を参照して、予測アルゴリズム生成装置200が備えるCPU201は、仮の変動条件を生成し(ステップS31)、処理をステップS32に進める。仮の変動条件の複数が生成される。仮の変動条件は、被膜の処理における表面ノズル311の往復回数、表面ノズル311の移動速度および表面ノズル311の移動時の変速点を含む。ここでは、被膜の処理における表面ノズル311の往復回数、表面ノズル311の移動速度および表面ノズル311の移動時の変速点等のノズル動作に関連する因子の組み合わせがそれぞれ異なる複数の仮の変動条件が生成される。
【0106】
ステップS32においては、CPU201は、生成した複数の仮の変動条件から予め定められた数の仮の変動条件を追加変動条件として抽出する。
【0107】
次のステップS33においては、CPU201は、追加固定条件を生成し、処理をステップS34に進める。ステップS34においては、複数の追加処理条件が生成され、処理はステップS35に進む。ステップS32において抽出された複数の追加変動条件の1つと、ステップS33において生成された複数の追加固定条件の1つとを組み合わせた1つの追加が生成される。ステップS32においては複数の追加変動条件が抽出され、ステップS33においては複数の追加固定条件が生成される。このため、複数の追加変動条件と複数の追加固定条件との組み合わせの数と同じ数の追加処理条件が生成される。
【0108】
ステップS35においては、処理対象として追加処理条件が選択され、処理はステップS36に進む。ステップS36においては、予測処理結果が取得され、処理はステップS37に進む。CPU201は、処理対象に選択されている追加処理条件を第1予測アルゴリズムに与え、第1予測アルゴリズムが予測する処理結果を予測処理結果として取得する。
【0109】
ステップS37においては、第2データセットが生成され、処理はステップS38に進む。ステップS35において選択された追加処理条件と、ステップS36において取得された予測処理結果とを含む第2データセットが生成され、処理はステップS38に進む。
【0110】
ステップS38においては、次に処理対象とするべき追加処理条件が存在するか否かが判断される。ステップS34において生成された追加処理条件のうちに、ステップS35において処理対象に選択されていない追加処理条件が存在するならば処理はステップS35に戻るが、そうでなければ処理は、第2予測アルゴリズム生成処理に戻る。
【0111】
図14は、処理条件決定処理の流れの一例を示すフローチャートである。処理条件決定処理は、情報処理装置100が備えるCPU101がRAM102に格納された処理条件決定プログラムを実行することにより、CPU101により実行される処理である。
【0112】
図14を参照して、情報処理装置100が備えるCPU101は、予め準備された複数の変動条件のうちから1つを仮の処理条件に選択し(ステップS51)、処理をステップS52に進める。実験計画法、ペアワイズ法またはベイズ推定等を用いて、予め準備された複数の変動条件のうちから1つが選択される。
【0113】
ステップS52においては、第2予測アルゴリズムを用いて、仮の処理条件から処理結果が推測され、処理はステップS53に進む。第2予測アルゴリズムには、仮の処理条件が入力される。それにより、第2予測アルゴリズムが出力する処理結果が取得される。
ステップS53においては、処理後の膜厚特性が目標膜厚特性と比較される。基板処理装置300が処理の対象とする基板Wの処理前の膜厚特性と、ステップS52において第2予測アルゴリズムにより予測された処理結果とから基板Wを処理した後の膜厚特性が算出される。そして、処理後の膜厚特性が目標膜厚特性と比較される。ここでは、基板Wを処理した後の膜厚特性と目標膜厚特性との差分が算出される。
【0114】
ステップS54においては、比較結果が評価基準を満たすか否かが判断される。比較結果が評価基準を満たすならば(ステップS54でYES)、処理はステップS55に進むが、そうでなければ処理はステップS51に戻る。例えば、差分の最大値が閾値以下である場合に評価基準を満たすと判断する。また、差分の平均が閾値以下である場合に評価基準を満たすと判断する。
【0115】
ステップS55においては、基板処理装置300を駆動するための処理条件の候補に、ステップS51において選択された仮の処理条件が設定され、処理はステップS56に進む。ステップS56においては、探索の終了指示が受け付けられたか否かが判断される。情報処理装置100を操作するユーザーにより終了指示が受け付けられたならば処理はステップS57に進むが、そうでなければ処理はステップS51に戻る。なお、ユーザーにより入力される終了指示に変えて、予め定められた数の処理条件が候補に設定されたか否かが判断されてもよい。
【0116】
ステップS57においては、候補に設定された1以上の仮の処理条件のうちから1つが決定され、処理はステップS58に進む。候補に設定された1以上の仮の処理条件のうちから情報処理装置100を操作するユーザーにより1つが選択されてもよい。したがって、ユーザーの選択の範囲が広がる。また、複数の仮の処理条件に含まれる変動条件のうちからノズル動作が最も簡略な変動条件が自動的に選択されてもよい。ノズル動作が最も簡略な変動条件は、例えば、変速点の数が最少の変動条件とすることができる。これにより、基板Wを処理する複雑なノズル動作に対する処理結果に対して複数の変動条件を提示することができる。複数の変動条件のうちからノズルの制御が容易な変動条件を選択すれば、基板処理装置300の制御が容易になる。
【0117】
ステップS58においては、ステップS58において決定された処理条件が基板処理装置300に送信され、処理は終了する。CPU101は、入出力I/F107を制御して、処理条件を基板処理装置300に送信する。基板処理装置300は、情報処理装置100から処理条件を受信する場合、その処理条件に従って基板Wを処理する。
【0118】
(4)具体例
本実施の形態においては、変動条件は、ノズル動作の処理時間が60秒、サンプリング間隔0.01秒でサンプリングした時系列データである。変動条件は、6001個の値で構成される。このため、変動条件は、複雑なノズル動作を表現することが可能である。特に、ノズルの移動速度を変更する変速点の数を比較的多くしたノズル動作を変動条件で正確に表現することができる。その反面、変動条件の次元数が多いため、変動条件の時系列データを全結合ニューラルネットワークのモデルに機械学習させた場合、オーバフィッティングが発生することがある。
【0119】
本実施の形態における予測アルゴリズム生成部220は、変動条件を、図9に示した第1畳み込みニューラルネットワークCNN1を含む第2予測アルゴリズムズムに機械学習させる。複雑なノズル動作を示す6001個の値からなる変動条件を、図9に示した第2予測アルゴリズムに機械学習させ、学習済の第2予測アルゴリズムにより予測される処理結果として所望の結果が得られることを発明者は実験によって確認した。
【0120】
また、本実施の形態においては、処理条件決定部120が好適な処理条件を探索する際に、複数の異なる処理結果が偏りなく選択される。このため、処理条件決定部120は、複数の処理条件のうちから目標となる処理結果が予測される処理条件を効率的に探索することができる。
【0121】
なお、サンプリング間隔を0.01秒とする例を説明したが、サンプリング間隔はこれに限定されない。これより長いサンプリング間隔としてもよいし、これより短いサンプリング間隔としてもよい。例えば、サンプリング間隔は0.1秒としてもよいし、0.005秒としてもよい。
【0122】
(5)実施の形態の効果
上記実施の形態の予測アルゴリズム生成部220は、処理条件と処理結果とを含む第1データセットを用いて第1予測アルゴリズムが生成され、追加処理条件を第1予測アルゴリズムに与えて第1予測アルゴリズムにより予測される予測処理結果と追加処理条件とを含む第2データセットが生成される。このため、基板処理装置300に実際に処理を実行させることなく、第1データセットとは別の第2データセットを生成することができる。このため、基板処理装置300に基板Wに対する被膜の処理を実際に実行させて取得される第1データセットだけを機械学習する場合に比較して、第2予測アルゴリズムの予測の精度を向上させることができる。また、第1データセットの組数は、第1予測アルゴリズムを生成するために必要な数でよいので、機械学習により第2予測アルゴリズムを得るために必要な学習用のデータを生成するコストを抑制することができる。
【0123】
また、第1予測アルゴリズムが、処理条件に含まれる少なくとも1つの条件に用いられる変数を説明変数とし、複数のパラメータを用いて処理結果の推定値を算出する回帰式である。このため、第1予測アルゴリズムは、数学的な式に基づいて予測するので、使用者は、予測処理のアルゴリズムを明確に理解することができ、処理条件とそれから予測される処理結果との関係を容易に解釈することができる。
【0124】
(6)他の実施の形態
上記実施の形態の第1予測アルゴリズムは、式(1)で示される回帰式G(x)としたが本発明はこれに限定されない。第1予測アルゴリズムは、複数の第1データセットに含まれる処理条件および処理結果をそれぞれ説明変数および目的変数とする回帰式であればよい。また、上記実施の形態の第2予測アルゴリズムは、図9に示す構成を有するが本発明はこれに限定されない。第2予測アルゴリズムは、機械学習可能なニューラルネットワークを含む他の構成を有していてもよい。また、本実施の形態においては、情報処理装置100と基板処理装置300とを別体としたが、基板処理装置300が情報処理装置100を備えてもよい。
【0125】
(7)実施の形態の総括
(第1項) 本発明の一態様に係る予測アルゴリズム生成装置は、
基板処理装置で実行される処理の処理条件と、当該処理の処理結果とを含む第1データセットを取得するデータ取得部と、
前記第1データセットを用いて、前記処理条件から前記処理結果を予測する第1予測アルゴリズムを生成する第1予測アルゴリズム生成部と、
前記第1予測アルゴリズムにより仮の処理条件から予測される予測処理結果と前記仮の処理条件とを含む第2データセットを生成する追加情報生成部と、
前記第1データセットと前記第2データセットとを機械学習することにより、第2予測アルゴリズムを生成する第2予測アルゴリズム生成部と、を備える。
【0126】
この局面に従えば、処理条件と処理結果とを含む第1データセットを用いて第1予測アルゴリズムが生成され、第1予測アルゴリズムにより仮の処理条件から予測される予測処理結果と仮の処理条件とを含む第2データセットが生成される。このため、基板処理装置に実際に処理を実行させることなく、第1データセットとは別の第2データセットを生成することができる。したがって、基板処理装置に基板に対する処理を実際に実行させて取得される第1データセットだけを機械学習する場合に比較して、第2予測アルゴリズムの予測の精度を向上させることができる。また、第1データセットの数は、第1予測アルゴリズムを生成するために必要な数でよいので、第2予測アルゴリズムを機械学習させるための学習用のデータを生成するコストを抑制することができる。これらの結果、低コストで精度の高い予測アルゴリズムを生成することが可能な予測アルゴリズム生成装置を提供することが可能になる。
【0127】
(第2項) 第1項に記載の予測アルゴリズム生成装置において、
前記第1予測アルゴリズムは、前記処理条件に含まれる少なくとも1つの条件に用いられる変数を説明変数とし、複数のパラメータを用いて前記処理結果の推定値を算出する回帰式であり、
前記第1予測アルゴリズム生成部は、前記第1データセットの複数組を前記回帰式に与えて回帰分析することにより前記第1予測アルゴリズムを生成してもよい。
【0128】
この局面に従えば、第1予測アルゴリズムが、処理条件に含まれる少なくとも1つの条件に用いられる変数を説明変数とし、複数のパラメータを用いて処理結果の推定値を算出する回帰式である。このため、第1予測アルゴリズムは、数学的な式に基づいて予測するので、使用者は、予測処理のアルゴリズムを明確に理解することができ、処理条件とそれから予測される処理結果との関係を容易に解釈することができる。
【0129】
(第3項) 本発明の他の態様に係る情報処理装置は、
第1項または第2項に記載の予測アルゴリズム生成装置で生成された前記第2予測アルゴリズムを用いて前記基板処理装置を管理する情報処理装置であって、
前記予測アルゴリズム生成装置から前記第2予測アルゴリズムを取得する取得部と、
仮の処理条件を前記第2予測アルゴリズムに与えて前記第2予測アルゴリズムにより予測される予測処理結果が許容条件を満たす場合に前記仮の処理条件を、前記基板処理装置を動作させるための処理条件に決定する処理条件決定部と、を備える。
【0130】
この局面に従えば、第1データセットと第2データセットとを機械学習した学習済の第2予測アルゴリズムが取得され、第2予測アルゴリズムに仮の処理条件を与えて第2予測アルゴリズムにより予測される予測処理結果が許容条件を満たす場合に、仮の処理条件が基板処理装置を動作させるための処理条件に決定される。このため、許容条件を満たす処理結果に対して複数の仮の処理条件を決定することができる。その結果、複雑なプロセスを経て得られる処理結果に対して複数の処理条件を提示することが可能になる。
【0131】
(第4項) 本発明の他の態様に係る基板処理装置は、第3項に記載の情報処理装置を備える。
【0132】
この局面に従えば、処理条件に従って基板を処理する基板処理装置に与える適切な処理条件を提示することが可能になる。
【0133】
(第5項) 本発明の他の態様に係る予測アルゴリズム生成方法は、基板処理装置で実行される処理の処理条件と、当該処理の処理結果とを含む第1データセットを取得するデータ取得ステップと、前記データ取得ステップにおいて取得された前記第1データセットを用いて前記処理条件から前記処理結果を予測する第1予測アルゴリズムを生成する第1予測アルゴリズム生成ステップと、前記第1予測アルゴリズムにより仮の処理条件から予測される予測処理結果と前記仮の処理条件とを含む第2データセットを生成する追加情報生成ステップと、前記第1データセットと前記第2データセットとを第2予測アルゴリズムに機械学習させ、学習済の第2予測アルゴリズムを生成する第2予測アルゴリズム生成ステップと、を備える。
【0134】
この局面に従えば、処理条件と処理結果とを含む第1データセットを用いて第1予測アルゴリズムが生成され、第1予測アルゴリズムにより仮の処理条件から予測される予測処理結果と仮の処理条件とを含む第2データセットが生成される。このため、基板処理装置に実際に処理を実行させることなく、第1データセットとは別の第2データセットを生成することができる。したがって、基板処理装置に基板に対する処理を実際に実行させて取得される第1データセットだけを機械学習する場合に比較して、第2予測アルゴリズムの予測の精度を向上させることができる。また、第1データセットの数は、第1予測アルゴリズムを生成するために必要な数でよいので、第2予測アルゴリズムを機械学習させるための学習用のデータを生成するコストを抑制することができる。その結果、低コストで精度の高い予測アルゴリズムを生成することが可能な予測アルゴリズム生成方法を提供することが可能になる。
【0135】
(第6項) 本発明の他の態様に係る処理条件決定方法は、
第5項記載の予測アルゴリズム生成方法を実行する予測アルゴリズム生成装置により生成された前記予測アルゴリズムを用いて前記基板処理装置を管理する情報処理装置で実行される処理条件決定方法であって、
前記予測アルゴリズム生成装置から前記第2予測アルゴリズムを取得する取得ステップと、
仮の処理条件を前記第2予測アルゴリズムに与えて前記予測アルゴリズムにより予測される予測処理結果が許容条件を満たす場合に前記仮の処理条件を、前記基板処理装置を動作させるための処理条件に決定する処理条件決定ステップと、を備える。
【0136】
この局面に従えば、処理条件に従って基板を処理する基板処理装置に与える適切な処理条件を提示することが可能になる。
【符号の説明】
【0137】
1…基板処理システム,10…制御装置,100…情報処理装置,110…予測アルゴリズム受信部,120…処理条件決定部,130…予測部,140…評価部,150…処理条件送信部,200…予測アルゴリズム生成装置,210…実験データ取得部,220…予測アルゴリズム生成部,221…データ取得部,223…第1予測アルゴリズム生成部,225…追加情報生成部,227…第2予測アルゴリズム生成部,229…追加処理条件生成部,229a…追加変動条件生成部,229c…追加変動条件決定部,229g…追加固定条件生成部,230…予測アルゴリズム送信部,300…基板処理装置,301…ノズル移動機構,303…ノズルモータ,305…ノズルアーム,306…チャックピン,311…表面ノズル,312…裏面ノズル,SB…スピンベース,SC…スピンチャック,SL…基準線,SM…スピンモータ,T…温度,W…基板,WU…基板処理ユニット
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14