(57)【要約】【課題】  学習モデルのシミュレーション精度を向上させる。【解決手段】  学習装置であって、複数の畳み込み層を有するエンコーダ部と、対応する複数の逆畳み込み層を有するデコーダ部とを備える学習モデルを機械学習する学習装置であって、前記エンコーダ部のＮ層目（Ｎは１以上の整数）の畳み込み層から出力されるデータ群に基づいて、所定の方向のデータの依存関係を示す特徴量を算出する算出部と、算出した前記特徴量を、前記デコーダ部のＮ層目の逆畳み込み層に入力する入力部とを有する。【選択図】図１
2020057172.tif 000002
【特許請求の範囲】
【請求項１】
複数の畳み込み層を有するエンコーダ部と、対応する複数の逆畳み込み層を有するデコーダ部とを備える学習モデルを機械学習する学習装置であって、
前記エンコーダ部のＮ層目（Ｎは１以上の整数）の畳み込み層から出力されるデータ群に基づいて、所定の方向のデータの依存関係を示す特徴量を算出する算出部と、
算出した前記特徴量を、前記デコーダ部のＮ層目の逆畳み込み層に入力する入力部と
を有する学習装置。
【請求項２】
前記算出部は、
前記エンコーダ部のＮ層目の畳み込み層から、（ｍ＋１）番目（ｍは１以上の整数）の前記データ群が出力された場合において、ｍ番目の前記データ群に基づいて算出した前記特徴量と、（ｍ＋１）番目の前記データ群とに基づいて、（ｍ＋１）番目の前記特徴量を算出する、請求項１に記載の学習装置。
【請求項３】
前記算出部は、
自己回帰モデルを用いて、（ｍ＋１）番目の前記特徴量を算出する、請求項２に記載の学習装置。
【請求項４】
対象物の形状を示す画像データを、前記所定の方向に分割し、複数のブロックを生成する分割部と、
前記複数のブロックを前記エンコーダ部に順次入力する生成部と
を有する、請求項２に記載の学習装置。
【請求項５】
前記生成部は、前記対象物に対する処理に関するデータを、前記複数のブロックに応じた所定の形式に加工し、前記複数のブロックそれぞれに連結することで、複数の連結データを生成し、前記エンコーダ部に順次入力する、
請求項４に記載の学習装置。
【請求項６】
前記デコーダ部より出力された、前記複数の連結データに対応する複数の出力結果を統合し、統合した複数の出力結果が、処理された前記対象物についての、処理後の形状を示す画像データに近づくように機械学習する、請求項５に記載の学習装置。
【請求項７】
複数の畳み込み層を有するエンコーダ部と、対応する複数の逆畳み込み層を有するデコーダ部とを備え、学習用の画像データを用いて機械学習された学習済みモデルが搭載される推論装置であって、
前記エンコーダ部のＮ層目（Ｎは１以上の整数）の畳み込み層から出力されるデータ群に基づいて、所定の方向のデータの依存関係を示す特徴量を算出する算出部と、
算出した前記特徴量を、前記デコーダ部のＮ層目の逆畳み込み層に入力する入力部と
を有する推論装置。
【請求項８】
前記算出部は、
前記エンコーダ部のＮ層目の畳み込み層から、（ｍ＋１）番目（ｍは１以上の整数）の前記データ群が出力された場合において、ｍ番目の前記データ群に基づいて算出した前記特徴量と、（ｍ＋１）番目の前記データ群とに基づいて、（ｍ＋１）番目の前記特徴量を算出する、請求項７に記載の推論装置。
【請求項９】
前記算出部は、
自己回帰モデルを用いて、（ｍ＋１）番目の前記特徴量を算出する、請求項８に記載の推論装置。
【請求項１０】
対象物の形状を示す画像データを、前記所定の方向に分割し、複数のブロックを生成する分割部と、
前記複数のブロックを前記エンコーダ部に順次入力する生成部と
を有する、請求項８に記載の推論装置。
【請求項１１】
前記生成部は、前記対象物に対する処理に関するデータを、前記複数のブロックに応じた所定の形式に加工し、前記複数のブロックそれぞれに連結することで、複数の連結データを生成し、前記エンコーダ部に順次入力する、
請求項１０に記載の推論装置。
【請求項１２】
前記デコーダ部より出力された、前記複数の連結データに対応する複数の出力結果を統合し、統合した複数の出力結果を、シミュレーション結果として出力する出力部を更に有する、請求項１１に記載の推論装置。
【請求項１３】
コンピュータを、複数の畳み込み層を有するエンコーダ部と、対応する複数の逆畳み込み層を有するデコーダ部として機能させ、学習用の画像データを用いて機械学習された学習済みモデルであって、
前記コンピュータを、更に、
前記エンコーダ部のＮ層目（Ｎは１以上の整数）の畳み込み層から出力されるデータ群に基づいて、所定の方向のデータの依存関係を示す特徴量を算出する算出部と、
算出した前記特徴量を、前記デコーダ部のＮ層目の逆畳み込み層に入力する入力部
として機能させる学習済みモデル。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、学習装置、推論装置及び学習済みモデルに関する。
【背景技術】
【０００２】
従来より、半導体製造メーカでは、各製造プロセス（例えば、ドライエッチング、デポジション等）について物理モデルを生成し、シミュレーションを実行することで、最適なレシピの探索や、プロセスパラメータの調整等を行っている。
【０００３】
一方で、半導体製造プロセスは挙動が複雑であり、物理モデルでは表現できない事象もあることから、物理モデルのシミュレーション精度には限界がある。このため、最近では、物理モデルの代替として機械学習を用いた学習モデルの適用が検討されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−１０３７６９号公報
【特許文献２】特開２００５−２０２９４９号公報
【非特許文献】
【０００５】
【非特許文献１】Ryohei Orihara et al., "Approximation of Time-Consuming Simulation Based on Generative Adversarial Network", 2018 42nd IEEE International Conference on Computer Software & Applications, p171-p176
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ここで、学習モデルのシミュレーション精度を向上させるには、より高解像度の画像データを入力して機械学習することが不可欠である。一方で、学習装置のメモリ容量には限界があり、サイズの大きい画像データについては、予め、複数のブロックに分割して入力を行う必要がある。
【０００７】
しかしながら、画像データを複数のブロックに分割すると、ブロック間において切れ目の影響が生じ、シミュレーション精度が低下する。加えて、半導体製造プロセスの場合、ウェハ上の各位置での事象が、他の位置での事象と相関するため、画像データを複数のブロックに分割すると、他の位置での事象が反映されず、シミュレーション精度が更に低下することになる。
【０００８】
本開示は、学習モデルのシミュレーション精度を向上させる。
【課題を解決するための手段】
【０００９】
本開示の一態様による学習装置は、例えば、以下のような構成を有する。即ち、
複数の畳み込み層を有するエンコーダ部と、対応する複数の逆畳み込み層を有するデコーダ部とを備える学習モデルを機械学習する学習装置であって、
前記エンコーダ部のＮ層目（Ｎは１以上の整数）の畳み込み層から出力されるデータ群に基づいて、所定の方向のデータの依存関係を示す特徴量を算出する算出部と、
算出した前記特徴量を、前記デコーダ部のＮ層目の逆畳み込み層に入力する入力部とを有する。
【図面の簡単な説明】
【００１０】
【図１】シミュレーションシステムの全体構成の一例を示す図である。
【図２】シミュレーションシステムを構成する各装置のハードウェア構成の一例を示す図である。
【図３】学習用データの一例を示す図である。
【図４】学習装置の学習部の機能構成の詳細な一例を示す図である。
【図５】学習装置の画像分割部及び入力データ生成部による処理の具体例を示す図である。
【図６】学習部が有する学習モデルの構成例を示す図である。
【図７】学習モデルの自己回帰モジュールによる処理の具体例を示す図である。
【図８】学習装置による学習処理の流れを示すフローチャートである。
【図９】推論装置の実行部の機能構成の詳細な一例を示す図である。
【図１０】推論装置による推論処理の流れを示すフローチャートである。
【図１１】学習済みモデルのシミュレーション結果を示した図である。
【発明を実施するための形態】
【００１１】
以下、各実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省略する。
【００１２】
［第１の実施形態］
＜シミュレーションシステムの全体構成＞
はじめに、半導体製造プロセスのシミュレーションを実行するシミュレーションシステムの全体構成について説明する。図１は、シミュレーションシステムの全体構成の一例を示す図である。図１に示すように、シミュレーションシステム１００は、学習装置１２０と、推論装置１３０とを有する。なお、本実施形態において、シミュレーションシステム１００が取り扱う各種データは、半導体製造メーカから、あるいは半導体製造装置メーカのデータベースなどから取得される。
【００１３】
図１上段は、半導体製造メーカが各種データを取得するまでの作業フローを示している。図１上段に示すように、半導体製造装置１１０には、各種パラメータデータ（例えば、１次元のデータ）が設定されている。半導体製造装置１１０は、複数の処理前ウェハ（対象物）が搬送されると、設定された各種パラメータデータのもと、各製造プロセス（例えば、ドライエッチング、デポジション）に応じた処理を実行する。
【００１４】
一方、複数の処理前ウェハのうちの一部の処理前ウェハは、測定装置１１１に搬送され、様々な位置において測定装置１１１により形状が測定される。これにより、測定装置１１１では、例えば、処理前ウェハの各位置での断面形状を示す処理前画像データ（２次元の画像データ）を生成する。なお、測定装置１１１には、走査型電子顕微鏡（ＳＥＭ）、測長走査型電子顕微鏡（ＣＤ−ＳＥＭ）、透過電子顕微鏡（ＴＥＭ）、原子間力顕微鏡（ＡＦＭ）等が含まれる。
【００１５】
図１の例は、測定装置１１１が、ファイル名＝「形状データＬＤ００１」、「形状データＬＤ００２」、「形状データＬＤ００３」・・・等の処理前画像データを生成した様子を示している。
【００１６】
一方、半導体製造装置１１０にて各製造プロセスに応じた処理が実行されると、半導体製造装置１１０からは、処理後ウェハが搬出される。このとき、半導体製造装置１１０には、各製造プロセスに応じた処理を実行した際の、処理中の環境を示す環境データ（例えば、１次元のデータ）が保持されている。なお、半導体製造装置１１０に保持された環境情報は、設定された各種パラメータデータ同様、半導体製造装置１１０が、処理前ウェハに対して製造プロセスに応じた処理を実行した際の、該処理に関する任意のデータである。したがって、以下では、半導体製造装置１１０に設定された各種パラメータデータ及び保持された環境情報を、処理関連データと称す。
【００１７】
半導体製造装置１１０から搬出された複数の処理後ウェハのうちの一部の処理後ウェハについては、測定装置１１２に搬送され、様々な位置において測定装置１１２により形状が測定される。これにより、測定装置１１２では、例えば、処理後ウェハの各位置での断面形状を示す処理後画像データ（２次元の画像データ）を生成する。なお、測定装置１１１と同様に、測定装置１１２には、走査型電子顕微鏡（ＳＥＭ）、測長走査型電子顕微鏡（ＣＤ−ＳＥＭ）、透過電子顕微鏡（ＴＥＭ）、原子間力顕微鏡（ＡＦＭ）等が含まれる。
【００１８】
図１の例は、測定装置１１２が、ファイル名＝「形状データＬＤ００１'」、「形状データＬＤ００２'」、「形状データＬＤ００３'」、・・・等の処理後画像データを生成した様子を示している。
【００１９】
このようにして取得された各種データ（測定装置１１１により生成された処理前画像データ、半導体製造装置１１０に設定または保持された処理関連データ、測定装置１１２により生成された処理後画像データ）は、学習用データとして収集される。学習装置１２０では、収集した学習用データを、学習用データ格納部１２４に格納する。
【００２０】
学習装置１２０には、画像分割プログラム、入力データ生成プログラム及び学習プログラムがインストールされており、当該プログラムが実行されることで、学習装置１２０は画像分割部１２１、入力データ生成部１２２及び学習部１２３として機能する。
【００２１】
画像分割部１２１は分割部の一例であり、学習用データ格納部１２４に格納された処理前画像データを読み出し、学習装置１２０のメモリ容量に応じた画像サイズの複数のブロックに分割する。画像分割部１２１は、分割した複数のブロックを順次、入力データ生成部１２２に通知する。
【００２２】
入力データ生成部１２２は生成部の一例であり、学習用データ格納部１２４に格納された処理関連データを読み出し、入力データ生成部１２２より通知されたブロックに応じて、学習部１２３が学習モデルに入力するのに適した所定の形式に加工する。
【００２３】
具体的には、入力データ生成部１２２は、処理関連データそれぞれを、ブロックの縦サイズ及び横サイズに応じた２次元配列の形式に加工する。学習部１２３が有する学習モデルは、通常は、入力として画像データの形式になっているデータを用いる。そのため、画像データの形式になっていないデータについては、画像データの形式に加工しておく必要があり、入力データ生成部１２２では、処理関連データについて、画像データの形式（２次元配列の形式）に加工する。
【００２４】
なお、処理関連データの加工は、学習用データ格納部１２４に格納される際に行われてもよい。この場合、入力データ生成部１２２は、２次元配列の形式に加工された後のデータを読み出すことになる。
【００２５】
入力データ生成部１２２は、２次元配列の形式に加工した（または加工された）データを、通知された各ブロックに連結し、連結データを生成したうえで、順次、学習部１２３に入力する。
【００２６】
学習部１２３は、入力データ生成部１２２より連結データが順次入力されることで学習モデルより出力される各出力結果を、順次、出力結果格納部１２５に格納する。また、学習部１２３は、出力結果格納部１２５に格納した、各出力結果を統合し、学習用データ格納部１２４より読み出した処理後画像データと対比する。
【００２７】
これにより、学習部１２３では、統合した各出力結果が、処理後画像データに近づくよう、機械学習によりモデルパラメータを更新し、学習済みモデルを生成する。学習部１２３により生成された学習済みモデルは、推論装置１３０に提供され、推論装置１３０に搭載される。
【００２８】
推論装置１３０には、画像分割プログラム、入力データ生成プログラム及び実行プログラムがインストールされており、当該プログラムが実行されることで、推論装置１３０は画像分割部１３１、入力データ生成部１３２及び実行部１３３として機能する。
【００２９】
画像分割部１３１は分割部の一例であり、任意の処理前画像データ（例えば、測定装置１１１により生成された処理前画像データ）を、推論装置１３０のメモリ容量に応じた画像サイズの複数のブロックに分割する。画像分割部１３１は、分割した複数のブロックを順次、入力データ生成部１３２に通知する。
【００３０】
入力データ生成部１３２は生成部の一例であり、推論装置１３０に入力された処理関連データを取得し、入力データ生成部１３２より通知されたブロックに応じて、実行部１３３が学習済みモデルに入力するのに適した所定の形式に加工する。具体的には、入力データ生成部１３２は、推論装置１３０に入力された処理関連データそれぞれを、ブロックの縦サイズ及び横サイズに応じた２次元配列の形式に加工する。
【００３１】
なお、推論装置１３０に入力された処理関連データとは、
・半導体製造装置１１０に設定される各種パラメータデータに相当するデータ、
・半導体製造装置１１０が各製造プロセスに応じた処理を実行した際の処理中の環境を示す環境データに相当するデータ、
を指す。
【００３２】
また、入力データ生成部１３２は、２次元配列の形式に加工したデータを、通知された各ブロックに連結し、連結データを生成したうえで、順次、実行部１３３に入力する。
【００３３】
実行部１３３は、入力データ生成部１３２より連結データが順次入力されることで学習済みモデルを実行し、処理後画像データ（シミュレーション結果）を出力する。
【００３４】
なお、推論装置１３０のユーザは、例えば、実行部１３３が学習済みモデルを実行することで出力した処理後画像データと、測定装置１１２により生成された、対応する処理後画像データとを対比することで、学習済みモデルを検証することができる。
【００３５】
具体的には、推論装置１３０のユーザは
・処理前画像データを画像分割部１３１に入力し、半導体製造装置１１０に設定または保持された処理関連データを入力データ生成部１３２に入力した場合に、実行部１３３により出力される処理後画像データと、
・処理前ウェハが半導体製造装置１１０により処理され、処理後ウェハが測定装置１１２により測定されることで生成される処理後画像データと、
を対比する。これにより、推論装置１３０のユーザは、学習済みモデルのシミュレーション誤差を算出し、シミュレーション精度を検証することができる。
【００３６】
なお、シミュレーション精度の検証が完了した後は、推論装置１３０には、任意の処理前画像データと、任意の処理関連データとが入力され、様々なシミュレーションが実行されることになる。これにより、推論装置１３０のユーザは、半導体製造プロセスにおける最適なレシピや最適なパラメータデータ、最適なハードウェア形体の探索等を行うことができる。
【００３７】
＜シミュレーションシステムを構成する各装置のハードウェア構成＞
次に、シミュレーションシステム１００を構成する各装置（学習装置１２０、推論装置１３０）のハードウェア構成について、図２を用いて説明する。図２は、シミュレーションシステムを構成する各装置のハードウェア構成の一例を示す図である。
【００３８】
なお、学習装置１２０と推論装置１３０のハードウェア構成は概ね同じであることから、ここでは、学習装置１２０のハードウェア構成について説明する。
【００３９】
図２は、学習装置のハードウェア構成の一例を示す図である。図２に示すように、学習装置１２０は、ＣＰＵ（Central Processing Unit）２０１、ＲＯＭ（Read Only Memory）２０２を有する。また、学習装置１２０は、ＲＡＭ（Random Access Memory）２０３、ＧＰＵ（Graphics Processing Unit）２０４を有する。なお、ＣＰＵ２０１、ＧＰＵ２０４などのプロセッサ（処理回路、Processing Circuit、Processing Circuitry）と、ＲＯＭ２０２、ＲＡＭ２０３などのメモリは、いわゆるコンピュータを形成する。
【００４０】
また、学習装置１２０は、補助記憶装置２０５、操作装置２０６、表示装置２０７、Ｉ／Ｆ（Interface）装置２０８、ドライブ装置２０９を有する。なお、学習装置１２０の各ハードウェアは、バス２１０を介して相互に接続される。
【００４１】
ＣＰＵ２０１は、補助記憶装置２０５にインストールされた各種プログラム（例えば、画像分割プログラム、入力データ生成プログラム、学習プログラム等）を実行する演算デバイスである。
【００４２】
ＲＯＭ２０２は、不揮発性メモリであり、主記憶装置として機能する。ＲＯＭ２０２は、補助記憶装置２０５にインストールされた各種プログラムをＣＰＵ２０１が実行するために必要な各種プログラム、データ等を格納する。具体的には、ＲＯＭ２０２はＢＩＯＳ（Basic Input/Output System）やＥＦＩ（Extensible Firmware Interface）等のブートプログラム等を格納する。
【００４３】
ＲＡＭ２０３は、ＤＲＡＭ（Dynamic Random Access Memory）やＳＲＡＭ（Static Random Access Memory）等の揮発性メモリであり、主記憶装置として機能する。ＲＡＭ２０３は、補助記憶装置２０５にインストールされた各種プログラムがＣＰＵ２０１によって実行される際に展開される、作業領域を提供する。
【００４４】
ＧＰＵ２０４は、画像処理用の演算デバイスであり、ＣＰＵ２０１により画像分割プログラムや入力データ生成プログラム、学習プログラムが実行される際に、各種画像データについて、並列処理による高速演算を行う。
【００４５】
なお、ＧＰＵ２０４は、内部メモリ（ＧＰＵメモリ）を搭載しており、各種画像データについて並列処理を行う際に必要な情報を一時的に保持する。
【００４６】
補助記憶装置２０５は、各種プログラムや、各種プログラムがＣＰＵ２０１によって実行される際に、ＧＰＵ２０４によって画像処理される各種画像データ等を格納する。例えば、学習用データ格納部１２４及び出力結果格納部１２５は、補助記憶装置２０５において実現される。
【００４７】
操作装置２０６は、学習装置１２０の管理者が学習装置１２０に対して各種指示を入力する際に用いる入力デバイスである。表示装置２０７は、学習装置１２０の内部状態を表示する表示デバイスである。Ｉ／Ｆ装置２０８は、他の装置と接続し、通信を行うための接続デバイスである。
【００４８】
ドライブ装置２０９は記録媒体２２０をセットするためのデバイスである。ここでいう記録媒体２２０には、ＣＤ−ＲＯＭ、フレキシブルディスク、光磁気ディスク等のように情報を光学的、電気的あるいは磁気的に記録する媒体が含まれる。また、記録媒体２２０には、ＲＯＭ、フラッシュメモリ等のように情報を電気的に記録する半導体メモリ等が含まれていてもよい。
【００４９】
なお、補助記憶装置２０５にインストールされる各種プログラムは、例えば、配布された記録媒体２２０がドライブ装置２０９にセットされ、該記録媒体２２０に記録された各種プログラムがドライブ装置２０９により読み出されることでインストールされる。あるいは、補助記憶装置２０５にインストールされる各種プログラムは、不図示のネットワークを介してダウンロードされることで、インストールされてもよい。
【００５０】
＜学習用データの説明＞
次に、学習用データ格納部１２４に格納される学習用データについて説明する。図３は、学習用データの一例を示す図である。図３に示すように、学習用データ３００には、情報の項目として、"ジョブＩＤ"、"処理前画像データ"、"処理関連データ"、"処理後画像データ"が含まれる。
【００５１】
"ジョブＩＤ"には、半導体製造装置１１０により実行されるジョブを識別するための識別子が格納される。図３の例は、"ジョブＩＤ"として、「ＰＪ００１」、「ＰＪ００２」が格納された様子を示している。
【００５２】
"処理前画像データ"には、任意の処理前画像データ（例えば、測定装置１１１により生成された処理前画像データ）のファイル名が格納される。図３の例は、ジョブＩＤ＝「ＰＪ００１」の場合、当該ジョブのロット（ウェハ群）に含まれる１枚の処理前ウェハについて、測定装置１１１により、ファイル名＝「形状データＬＤ００１」の処理前画像データが生成されたことを示している。
【００５３】
また、図３の例は、ジョブＩＤ＝「ＰＪ００２」の場合、当該ジョブのロット（ウェハ群）に含まれる１枚の処理前ウェハについて、測定装置１１１により、ファイル名＝「形状データＬＤ００２」の処理前画像データが生成されたことを示している。
【００５４】
"処理関連データ"には、半導体製造装置１１０において処理前ウェハを処理する際に設定された、所定の処理条件を示す各種パラメータデータが格納される。あるいは、"処理関連データ"には、半導体製造装置１１０において処理前ウェハを処理した際の処理中の環境を示す環境データが格納される。図３の例は、半導体製造装置１１０において、ジョブＩＤ＝「ＰＪ００１」の処理を実行した際に、「データ００１＿１」、「データ００１＿２」、「データ００１＿３」、・・・が設定または保持されたことを示している。
【００５５】
なお、「データ００１＿１」、「データ００１＿２」、「データ００１＿３」、・・・には、例えば、
・Ｐｒｅｓｓｕｒｅ（チャンバ内の圧力）、Ｐｏｗｅｒ（高周波電源の電力）、Ｇａｓ（ガス流量）、Ｔｅｍｐｅｒａｔｕｒｅ（チャンバ内の温度またはウェハの表面の温度）等のように、半導体製造装置１１０に設定値として設定されるデータ、
・ＣＤ（限界寸法）、Ｄｅｐｔｈ（深さ）、Ｔａｐｅｒ（テーパ角）、Ｔｉｌｔｉｎｇ（チルト角）、Ｂｏｗｉｎｇ（ボーイング）等のように、半導体製造装置１１０に目標値として設定されるデータ、
・半導体製造装置１１０のハードウェア形体に関する情報、
等が含まれる。
【００５６】
あるいは、「データ００１＿１」、「データ００１＿２」、「データ００１＿３」、・・・には、例えば、
・Ｖｐｐ（電位差）、Ｖｄｃ（直流自己バイアス電圧）、ＯＥＳ（発光分光分析による発光強度）、Ｒｅｆｌｅｃｔ（反射波電力）、Ｔｏｐ  ＤＣＳ  ｃｕｒｒｅｎｔ（ドップラ流速計の検出値）等のように、処理中に半導体製造装置１１０に保持されるデータ、
・Ｐｌａｓｍａ  ｄｅｎｓｉｔｙ（プラズマ密度）、Ｉｏｎ  ｅｎｅｒｇｙ（イオンエネルギ）、Ｉｏｎ  ｆｌｕｘ（イオン流量）等のように、処理中に測定され、半導体製造装置１１０に保持されるデータ、
等が含まれる。
【００５７】
"処理後画像データ"には、測定装置１１２により生成された処理後画像データのファイル名が格納される。図３の例は、ジョブＩＤ＝「ＰＪ００１」の場合、測定装置１１２により、ファイル名＝「形状データＬＤ００１'」の処理後画像データが生成されたことを示している。
【００５８】
また、図３の例は、ジョブＩＤ＝「ＰＪ００２」の場合、測定装置１１２により、ファイル名＝「形状データＬＤ００２'」の処理後画像データが生成されたことを示している。
【００５９】
＜学習装置の機能構成の詳細＞
次に、学習装置１２０の学習部１２３の機能構成の詳細について説明する。図４は、学習装置の学習部の機能構成の詳細な一例を示す図である。上述したように、学習装置１２０は画像分割部１２１と、入力データ生成部１２２と、学習部１２３とを有する。そして、図４に示すように、学習部１２３は、更に、学習モデル４２０と、比較部４３０と、変更部４４０とを有する。
【００６０】
上述したとおり、学習用データ格納部１２４に格納された学習用データ３００のうち、処理前画像データは画像分割部１２１により読み出され、複数のブロックに分割された後、入力データ生成部１２２に通知される。
【００６１】
また、学習用データ格納部１２４に格納された学習用データ３００のうち、処理関連データは入力データ生成部１２２により読み出され、２次元配列の形式に加工された後、画像分割部１２１より通知された各ブロックに連結される。更に、各ブロックに連結されることで生成された各連結データは、入力データ生成部１２２により、順次、学習モデル４２０に入力される。
【００６２】
連結データが順次入力されると、学習モデル４２０では、処理を実行し、各出力結果を順次、出力結果格納部１２５に格納する。
【００６３】
比較部４３０は、出力結果格納部１２５より、複数のブロックに対応する各出力結果を読み出し、読み出した各出力結果を統合する。また、比較部４３０は、学習用データ格納部１２４より処理後画像データを読み出し、統合した各出力結果と比較することで差分情報を算出し、変更部４４０に通知する。
【００６４】
変更部４４０は、比較部４３０より通知された差分情報に基づいて、学習モデル４２０のモデルパラメータを更新する。なお、モデルパラメータの更新に用いる差分情報は、２乗誤差であっても絶対誤差であってもよい。
【００６５】
このように、学習部１２３によれば、学習用データ３００に応じた学習済みモデルを生成することができる。
【００６６】
＜学習装置の各部の処理の説明＞
次に、学習装置１２０の各部（画像分割部１２１、入力データ生成部１２２、学習部１２３）の処理について更に詳細に説明する。
【００６７】
（１）画像分割部及び入力データ生成部による処理の具体例
はじめに、画像分割部１２１及び入力データ生成部１２２による処理の具体例について説明する。図５は、学習装置の画像分割部及び入力データ生成部による処理の具体例を示す図である。
【００６８】
図５に示すように、処理前画像データ５００が入力されると、画像分割部１２１は、学習装置１２０のＧＰＵメモリのメモリ容量に応じて、処理前画像データ５００を分割する。図５の例は、画像分割部１２１が、処理前画像データ５００を、縦方向の所定の位置において、２分割することで、２つのブロック（ブロック５１０、ブロック５２０）を生成した様子を示す。
【００６９】
なお、図５の例では、処理前画像データ５００を２分割する場合について示したが、分割数はこれに限定されず、処理前画像データ５００は３つ以上のブロックに分割されてもよい。また、図５の例では、処理前画像データ５００を縦方向に上下に２分割する場合について示したが、分割方向はこれに限定されず、処理前画像データ５００は横方向に左右に２分割されてもよい。つまり、処理前画像データ５００を所定の方向に分割するとは、処理前画像データ５００を所定の方向と略直交する分割線により、複数分割することを指すものとする。
【００７０】
画像分割部１２１では、処理前画像データ５００を分割することで得たブロック５１０、ブロック５２０を、順次、入力データ生成部１２２に通知する。
【００７１】
ブロック５１０が通知されると、入力データ生成部１２２では、図５に示すように処理関連データ５３０をブロック５１０の縦サイズ及び横サイズに応じて２次元配列する（２次元配列したデータ５４１、５４２、５４３、・・・等参照）。また、入力データ生成部１２２では、図５に示すように、２次元配列したデータ５４１、５４２、５４３、・・・等を、ブロック５１０の新たなチャネルとしてブロック５１０に連結し、連結データ５１１を生成する。
【００７２】
同様に、ブロック５２０が通知されると、入力データ生成部１２２では、処理関連データ５３０をブロック５２０の縦サイズ及び横サイズに応じて２次元配列する（２次元配列したデータ５５１、５５２、５５３、・・・等参照）。また、入力データ生成部１２２では、２次元配列したデータ５５１、５５２、５５３、・・・等を、ブロック５２０の新たなチャネルとしてブロック５２０に連結し、連結データ５２１を生成する。
【００７３】
（２）学習部による処理の具体例
次に、学習部１２３が有する学習モデル４２０による処理の具体例について図６を用いて説明する。図６は、学習部が有する学習モデルの構成例を示す図である。図６に示すように、本実施形態では、学習モデル４２０として、Ｕ字型の畳み込みニューラルネットワーク（ＣＮＮ：Convolutional Neural Network）ベースの学習モデル（いわゆるＵＮＥＴ）が用いられる。
【００７４】
具体的には、学習モデル４２０は、それぞれに畳み込み層を有する複数の層６２１〜６２４、６３０を含むエンコーダ部と、対応する逆畳み込み層を有する複数の層６４１〜６４４を含むデコーダ部とを備える。
【００７５】
一般に、ＵＮＥＴでは、画像データを入力し、画像データを出力する。このため、学習モデルとしてＵＮＥＴを用いた場合、半導体製造プロセスの処理前後の画像データを入出力のデータとして取り扱うことができる。具体的には、各連結データ５１１、５２１を入力し、各出力結果６５１、６６１を出力することができる。
【００７６】
つまり、ＵＮＥＴの場合、入力として画像データの形式になっているデータを用いる。そのため、画像データの形式になっていないデータについては、画像データの形式に加工しておく必要がある。上述した入力データ生成部１２２において１次元のデータである処理関連データを２次元に配列したのは、ＵＮＥＴに入力される画像データの形式に合致させるためである。
【００７７】
ここで、図６に示すように、本実施形態の学習モデル４２０は、一般的なＵＮＥＴの構造に加えて、更に、自己回帰モジュールを有している。具体的には、エンコーダ部の層６２１〜６２４と、デコーダ部の層６４１〜６４４との間に、自己回帰モジュール６０１〜６０４を有している。
【００７８】
本実施形態において、自己回帰モジュール６０１〜６０４は、算出部及び入力部として機能する。具体的には、自己回帰モジュール６０１〜６０４は、エンコーダ部の層６２１〜６２４から出力されるデータ群から、所定の軸方向のデータの依存関係を示す特徴量６１１〜６１４を算出する。また、自己回帰モジュール６０１〜６０４は、算出した特徴量６１１〜６１４を、デコーダ部の層６４１〜６４４に入力する。
【００７９】
ここで、所定の軸方向とは、画像分割部１２１が分割する方向を指す。上述したとおり、画像分割部１２１は、処理前画像データ５００を縦方向の所定の位置において分割する。このため、本実施形態において所定の軸方向とは、縦方向を指すものとする。
【００８０】
なお、図６の例では、学習モデル４２０のエンコーダ部及びデコーダ部が、対応する４つの層を有する場合について示したが、エンコーダ部及びデコーダ部が有する、対応する層の数は４つに限定されない。ただし、学習モデル４２０において、自己回帰モジュールは、エンコーダ部及びデコーダ部が有する、対応する層の数に応じて配されるものとする。
【００８１】
（３）学習モデルの自己回帰モジュールによる処理
次に、学習モデル４２０の自己回帰モジュール６０１〜６０４による処理の具体例について説明する。なお、自己回帰モジュール６０１〜６０４は、それぞれ同様の処理を行うことから、ここでは、自己回帰モジュール６０１による処理の具体例について説明する。
【００８２】
図７は、学習モデルの自己回帰モジュールによる処理の具体例を示す図である。入力データ生成部１２２において生成された各連結データのうち、例えば、１番目の連結データが学習モデル４２０に入力されると、エンコーダ部の層６２１より、データ群７１０が出力される。
【００８３】
なお、エンコーダ部の層６２１より出力されるデータ群は、複数列存在するが、図７の例では、説明の簡略化のため、一列分のデータ群のみをｍ番目（ｍは１以上の整数。ここでは、１番目）のデータ群７１０として示している。また、図７の例では、１番目のデータ群７１０には、所定の軸方向７１１に沿って、ｎ個のデータ（Ｍ１０〜Ｍ１ｎのデータ）が含まれているものとして示している。
【００８４】
ここで、１番目のデータ群７１０が出力された際には、既に、０番目の連結データが処理され、エンコーダ部の層６２１よりデータ群（（ｍ−１）番目（ここでは０番目）のデータ群）が出力されている。このため、自己回帰モジュール６０１では、０番目のデータ群について自己回帰モデルによる予測値の算出が完了している。
【００８５】
図７において、点線７２１は、０番目のデータ群の（ｘ＋１）個のデータについて算出した自己回帰モデルの予測値（Ｉ０ｎ−ｘ〜Ｉ０ｎの予測値）を示している。
【００８６】
かかる前提のもと、自己回帰モジュール６０１では、１番目のデータ群７１０の０番目のデータ（Ｍ１０）に対応する自己回帰モデルの予測値（Ｉ１０）を、
・０番目のデータ群の（ｎ−２）番目の予測値（Ｉ０ｎ−２）に重み係数を積算した値と、（ｎ−１）番目の予測値（Ｉ０ｎ−１）に重み係数を積算した値との和算値と、
・０番目のデータ群のｎ番目の予測値（Ｉ０ｎ）に重み係数を積算した値と、１番目のデータ群７１０の０番目のデータ（Ｍ１０）に重み係数を積算した値との和算値と、
を用いて算出する。具体的には、
【００８７】
【数１】
2020057172.tif 000003
により、予測値（Ｉ１０）を算出する。ただし、ｗ０１〜ｗ０６は重み係数、Ｃ０１〜Ｃ０３はバイアスであり、機械学習される（例えば、勾配法により更新される）。
【００８８】
また、自己回帰モジュール６０１では、１番目のデータ群７１０の１番目のデータ（Ｍ１１）に対応する自己回帰モデルの予測値（Ｉ１１）を、
・０番目のデータ群の（ｎ−１）番目の予測値（Ｉ０ｎ−１）に重み係数を積算した値と、ｎ番目の予測値（Ｉ０ｎ）に重み係数を積算した値との和算値と、
・１番目のデータ群の０番目のデータ（Ｍ１０）に重み係数を積算した値と、１番目のデータ群７１０の１番目のデータ（Ｍ１１）に重み係数を積算した値との和算値と、
を用いて算出する。具体的には、
【００８９】
【数２】
2020057172.tif 000004
により、予測値（Ｉ１１）を算出する。ただし、ｗ１１〜ｗ１６は重み係数、Ｃ１１〜Ｃ１３はバイアスであり、機械学習される（例えば、勾配法により更新される）。
【００９０】
同様に、自己回帰モジュール６０１では、１番目のデータ群７１０の２番目のデータ（Ｍ１２）に対応する自己回帰モデルの予測値（Ｉ１２）を、
・０番目のデータ群のｎ番目の予測値（Ｉ０ｎ）に重み係数を積算した値と、１番目のデータ群の０番目のデータ（Ｍ１０）に重み係数を積算した値との和算値と、
・１番目のデータ群の１番目のデータ（Ｍ１１）に重み係数を積算した値と、１番目のデータ群７１０の２番目のデータ（Ｍ１２）に重み係数を積算した値との和算値と、
を用いて算出する。具体的には、
【００９１】
【数３】
2020057172.tif 000005
により、予測値（Ｉ１２）を算出する。ただし、ｗ２１〜ｗ２６は重み係数、Ｃ２１〜Ｃ２３はバイアスであり、機械学習される（例えば、勾配法により更新される）。
【００９２】
また、自己回帰モジュール６０１では、１番目のデータ群７１０の３番目のデータ（Ｍ１３）に対応する自己回帰モデルの予測値（Ｉ１３）を、
・１番目のデータ群の０番目のデータ（Ｍ１０）に重み係数を積算した値と、１番目のデータ群の１番目のデータ（Ｍ１１）に重み係数を積算した値との和算値と、
・１番目のデータ群の２番目のデータ（Ｍ１２）に重み係数を積算した値と、１番目のデータ群７１０の３番目のデータ（Ｍ１３）に重み係数を積算した値との和算値と、
を用いて算出する。具体的には、
【００９３】
【数４】
2020057172.tif 000006
により、予測値（Ｉ１３）を算出する。ただし、ｗ３１〜ｗ３６は重み係数、Ｃ３１〜Ｃ３３はバイアスであり、機械学習される（例えば、勾配法により更新される）。
【００９４】
このようにして、自己回帰モジュール６０１では、１番目のデータ群７１０にそれぞれ対応する１番目の予測値群（Ｉ１０〜Ｉ１ｎ）を算出し、算出した予測値群を１番目のデータ群７１０の所定の軸方向７１１の依存関係を示す特徴量６１１として出力する。
【００９５】
つまり、ｍ番目のｎ個のデータ群に対する予測値（Ｉｍｎ）は、
【００９６】
【数５】
2020057172.tif 000007
として一般化することができる。ただし、上述した予測値（Ｉ１１、Ｉ１２、Ｉ１３、・・・）についての具体的な算出方法は、あくまで一例であり、他の算出方法により予測値を算出してもよい。
【００９７】
ここで特徴量６１１は、例えば、学習モデル４２０が、半導体製造装置１１０のエッチングのシミュレーションを行う学習モデルであった場合には、所定の軸方向７１１のプラズマの移動状態を表しているということができる。つまり、学習モデル４２０によれば、エンコーダ部において算出したプラズマの移動状態を表す特徴量を、デコーダ部に反映させることができる。
【００９８】
なお、図７に示すように、１番目のデータ群７１０の（ｎ−ｘ）番目〜ｎ番目の予測値（点線７２２）は、（ｍ＋１）番目（ここでは、２番目）のデータ群７４０の０番目の予測値と１番目の予測値とを算出するのに用いられる。つまり、自己回帰モジュール６０１によれば、１番目のデータ群７１０について算出した特徴量を、所定の軸方向７１１の２番目のデータ群７４０に受け渡すことができる。
【００９９】
この結果、学習モデル４２０では、複数のブロックに分割したことによる影響を生じさせることなく（連結データの切れ目の影響を生じさせることなく、かつ、他の連結データでの事象を反映させて）、処理を実行することができる。
【０１００】
更に、エッチングの場合、縦方向に輸送されるプラズマの輸送量に依存してエッチング度合いが決まるという特性を有する。このため、所定の軸方向７１１の下流側は、上流側の空間構造の影響を強く受ける（つまり、他の位置での事象と相関する）。しかしながら、自己回帰モジュール６０１を有していない一般的な畳み込みニューラルネットワークベースの学習モデル（ＵＮＥＴ）において、上流側の空間構造の影響を、下流側にまで反映させることは困難である。
【０１０１】
一方で、自己回帰モジュールを有する学習モデル４２０の場合、上流側の空間構造の影響を、下流側にまで反映させることができる（つまり、同じ連結データ内での他の位置での事象を反映させることができる）。このように、自己回帰モジュールを有する学習モデル４２０の場合、複数のブロックに分割したか否かに関わらず、連結データが所定の軸方向７１１に長い場合においても有効である。
【０１０２】
＜学習装置による学習処理の流れ＞
次に、学習装置１２０による学習処理の流れについて説明する。図８は、学習装置による学習処理の流れを示すフローチャートである。学習用データ格納部１２４に格納された学習用データ３００を用いて、学習モデル４２０を機械学習する旨の指示が入力されると、学習装置１２０では、図８に示すフローチャートを実行する。
【０１０３】
ステップＳ８０１において、画像分割部１２１は、学習用データ格納部１２４より、処理前画像データを読み出し、学習装置１２０のＧＰＵメモリのメモリ容量に応じて、読み出した処理前画像データを複数のブロックに分割する。
【０１０４】
ステップＳ８０２において、入力データ生成部１２２は、画像分割部１２１により読み出された処理前画像データに対応する処理関連データを、学習用データ格納部１２４より読み出し、各ブロックに応じた所定の形式に加工する。また、入力データ生成部１２２は、所定の形式に加工した処理関連データを、各ブロックに連結することで、各連結データを生成する。
【０１０５】
ステップＳ８０３において、学習部１２３は、学習モデル４２０に各連結データを順次入力し、学習モデル４２０に処理を実行させる。
【０１０６】
ステップＳ８０４において、学習部１２３は、学習モデル４２０により出力された各出力結果を、順次、出力結果格納部１２５に格納する。
【０１０７】
ステップＳ８０５において、比較部４３０は、出力結果格納部１２５に格納された各出力結果を統合する。
【０１０８】
ステップＳ８０６において、比較部４３０は、画像分割部１２１により読み出された処理前画像データに対応する処理後画像データを、学習用データ格納部１２４より読み出し、統合した各出力結果と比較することで差分情報を算出する。また、比較部４３０は、算出した差分情報を、変更部４４０に通知する。
【０１０９】
ステップＳ８０７において、変更部４４０は、比較部４３０より通知された差分情報に基づいて、学習モデル４２０のモデルパラメータを更新する。
【０１１０】
ステップＳ８０８において、画像分割部１２１は、学習用データ格納部１２４に格納された全ての処理前画像データを用いて機械学習が行われたか否かを判定する。ステップＳ８０８において、機械学習に用いられていない処理前画像データがあると判定した場合には（ステップＳ８０８においてＮＯの場合には）、ステップＳ８０１に戻る。
【０１１１】
一方、ステップＳ８０８において、全ての処理前画像データを用いて機械学習が行われたと判定した場合には（ステップＳ８０８においてＹＥＳの場合には）、ステップＳ８０９に進む。
【０１１２】
ステップＳ８０９において、学習部１２３は、機械学習が行われた学習モデルである、学習済みモデルを出力し、学習処理を終了する。
【０１１３】
＜推論装置の機能構成の詳細＞
次に、推論装置１３０の実行部１３３の機能構成の詳細について説明する。図９は、第１の実施形態に係る推論装置の実行部の機能構成の詳細な一例を示す図である。上述したように、推論装置１３０は画像分割部１３１と、入力データ生成部１３２と、実行部１３３とを有する。そして、図９に示すように、実行部１３３は、更に、学習済みモデル９２０と、出力部９３０とを有する。
【０１１４】
測定装置１１１により生成された処理前画像データ（例えば、機械学習に用いられていないもの）が取得され、推論装置１３０に処理関連データが入力されると、画像分割部１３１では、処理前画像データを複数のブロックに分割する。また、入力データ生成部１３２では、処理関連データを各ブロックに応じて２次元配列の形式に加工した後、各ブロックに連結することで、各連結データを生成する。
【０１１５】
なお、図９の例は、測定装置１１１により生成された処理前画像データとして、ファイル名＝「形状データＳＤ００１」、「形状データＳＤ００２」、・・・等が取得された様子を示している。
【０１１６】
学習済みモデル９２０は、入力データ生成部１３２より連結データが順次入力されると、各連結データについてシミュレーションを実行し、各出力結果を、順次、出力結果格納部１３４に格納する。
【０１１７】
出力部９３０は、出力結果格納部１３４に格納された各出力結果を統合することで、処理後画像データ（例えば、ファイル名＝「形状データＳＤ００１''」、「形状データＳＤ００２''」を生成し、出力する。
【０１１８】
＜推論装置による推論処理の流れ＞
次に、推論装置１３０による推論処理の流れについて説明する。図１０は、推論装置による推論処理の流れを示すフローチャートである。測定装置１１１により生成された処理前画像データについてシミュレーションを行う旨の指示が入力されると、推論装置１３０では、図１０に示すフローチャートを実行する。
【０１１９】
ステップＳ１００１において、画像分割部１３１は、推論装置１３０のＧＰＵメモリのメモリ容量に応じて、処理前画像データを複数のブロックに分割する。
【０１２０】
ステップＳ１００２において、入力データ生成部１３２は、推論装置１３０に入力された処理関連データを、各ブロックに応じた所定の形式に加工する。また、入力データ生成部１３２は、所定の形式に加工した処理関連データを各ブロックに連結し、連結データを生成する。
【０１２１】
ステップＳ１００３において、実行部１３３は、学習済みモデル９２０に各連結データを順次入力し、学習済みモデル９２０を実行させる。
【０１２２】
ステップＳ１００４において、実行部１３３は、学習済みモデル９２０より出力された各出力結果を、順次、出力結果格納部１３４に格納する。
【０１２３】
ステップＳ１００５において、出力部９３０は、出力結果格納部１３４に格納された各出力結果を統合し、処理後画像データを生成する。
【０１２４】
ステップＳ１００６において、出力部９３０は、生成した処理後画像データを、シミュレーション結果として出力する。
【０１２５】
＜学習済みモデルのシミュレーション結果＞
次に、学習済みモデル９２０のシミュレーション結果について説明する。ここでは、学習済みモデル９２０のシミュレーション結果として、
・自己回帰モジュールを有していない学習済みモデルを用いた場合のシミュレーション結果と、
・自己回帰モジュールを有する学習済みモデル９２０を用いた場合のシミュレーション結果と、
を比較する。
【０１２６】
図１１は、学習済みモデルのシミュレーション結果を示した図である。このうち、図１１（ａ）は、処理前画像データの一例を示している。図１１（ａ）に示すように、処理前画像データ１１１０は、画像分割部１３１により、分割線１１１１に示す位置で分割されるものとする。
【０１２７】
図１１（ｂ）は、自己回帰モジュールを有していない学習済みモデルを用いてシミュレーションを行った様子を示している。なお、図１１（ｂ）において、処理後画像データ１１２１は、処理前画像データ１１１０を分割することなく入力した場合のシミュレーション結果を示している。一方、図１１（ｂ）において、処理後画像データ１１２２は、処理前画像データ１１１０を分割線１１１１により２つのブロックに分割して入力した場合のシミュレーション結果を示している。
【０１２８】
また、図１１（ｂ）において、差分画像１１２３は、処理後画像データ１１２１と処理後画像データ１１２２との差分を示す画像である。差分画像１１２３に示すように、自己回帰モジュールを有していない学習済みモデルの場合、分割線１１１１の位置に差分が生じている。つまり、自己回帰モジュールを有していない学習済みモデルの場合、処理前画像データを分割したことによる切れ目の影響が生じている。
【０１２９】
一方、図１１（ｃ）は、自己回帰モジュールを有する学習済みモデル９２０を用いてシミュレーションを行った様子を示している。図１１（ｃ）において、処理後画像データ１１３１は、処理前画像データ１１１０を分割することなく入力した場合のシミュレーション結果を示している。一方、図１１（ｃ）において、処理後画像データ１１３２は、処理前画像データ１１１０を分割線１１１１により２つのブロックに分割して入力した場合のシミュレーション結果を示している。
【０１３０】
また、図１１（ｃ）において、差分画像１１３３は、処理後画像データ１１３１と処理後画像データ１１３２との差分を示す画像である。差分画像１１３３に示すように、自己回帰モジュールを有する学習済みモデル９２０の場合、分割線１１１１の位置に差分が生じていない。つまり、自己回帰モジュールを有する学習済みモデル９２０の場合、処理前画像データを分割したことによる切れ目の影響が生じさせることなく、処理を実行することができる。
【０１３１】
このように、学習済みモデル９２０によれば、処理前画像データを分割した場合でも、シミュレーション精度の低下を回避することができる。
【０１３２】
＜まとめ＞
以上の説明から明らかなように、第１の実施形態に係る学習装置は、
・複数の畳み込み層を有するエンコーダ部と、対応する複数の逆畳み込み層を有するデコーダ部とを備える学習モデルを搭載する。
・搭載した学習モデルは、更に自己回帰モジュールを有する。そして、該自己回帰モジュールは、エンコーダ部のＮ層目（Ｎは１以上の整数）の畳み込み層から出力されるデータ群について、所定の軸方向のデータの依存関係を示す特徴量を算出し、算出した特徴量を、デコーダ部のＮ層目の逆畳み込み層に入力する。
【０１３３】
これにより、第１の実施形態に係る学習装置によれば、処理前画像データを複数のブロックに分割して学習モデルに入力した場合であっても、複数のブロックに分割したことによる影響を生じさせることなく、機械学習することができる。
【０１３４】
この結果、第１の実施形態に係る学習装置によれば、半導体製造プロセスのシミュレーションにおいて、シミュレーション精度を向上させることが可能な学習済みモデルを生成することができる。
【０１３５】
また、第１の実施形態に係る推論装置は、
・複数の畳み込み層を有するエンコーダ部と、対応する複数の逆畳み込み層を有するデコーダ部とを備える学習済みモデルを搭載する。
・搭載した学習済みモデルは、更に自己回帰モジュールを有する。そして、該自己回帰モジュールは、エンコーダ部のＮ層目（ｎは１以上の整数）の畳み込み層から出力されるデータ群について、所定の軸方向のデータの依存関係を示す特徴量を算出し、算出した特徴量を、デコーダ部のＮ層目の逆畳み込み層に入力する。
【０１３６】
これにより、第１の実施形態に係る推論装置によれば、処理前画像データを複数のブロックに分割して学習済みモデルに入力した場合であっても、複数のブロックに分割したことによる影響を生じさせることなく、シミュレーションを行うことができる。
【０１３７】
この結果、第１の実施形態に係る推論装置によれば、半導体製造プロセスのシミュレーションにおいて、シミュレーション精度を向上させることができる。
【０１３８】
［第２の実施形態］
上記第１の実施形態では、学習部が学習モデルを機械学習するにあたり、半導体製造プロセス固有の制約条件については特に言及しなかった。一方で、半導体製造プロセスには、固有の制約条件があり、学習部による機械学習に反映させてもよい（つまり、学習部による機械学習にドメイン知識を反映させるように構成してもよい）。
【０１３９】
具体的には、自己回帰モジュールの出力に、物理法則に由来する制約やパラメータデータ（例えば、プラズマの粒子数の保存による制約や、電場などのチャンバに設定されるパラメータデータ）を課すことで、自己回帰モジュールの出力を変更してもよい。このようにドメイン知識を反映させることで、シミュレーション精度を更に向上させることができる。
【０１４０】
［第３の実施形態］
上記第１の実施形態では、自己回帰モジュールが、所定の軸方向７１１に沿った一列分のデータ群について、特徴量を算出する場合について説明した。しかしながら、自己回帰モジュールが特徴量を算出するのは、所定の軸方向７１１に沿った一列分のデータ群に限定されない。例えば、横方向にも拡張して（つまり、他の列についても同様の特徴量を算出して）もよい。このように、横方向にも拡張することで、広い受容野が得られる。
【０１４１】
また、上記第１の実施形態では、画像分割部１２１が分割する方向に基づいて、所定の軸方向７１１を定義したが、所定の軸方向７１１の定義方法はこれに限定されない。例えば、エンコーダ部の層から出力されるデータ群において、依存関係を有するデータ方向を、所定の軸方向７１１と定義してもよい。
【０１４２】
［その他の実施形態］
上記第１乃至第３の実施形態では、処理前画像データ及び処理後画像データが、２次元の画像データであるとして説明した。しかしながら、処理前画像データ及び処理後画像データは、２次元の画像データに限定されず、３次元の画像データ（いわゆるボクセルデータ）であってもよい。
【０１４３】
なお、処理前画像データが２次元の画像データの場合、連結データは、（チャネル、縦サイズ、横サイズ）の配列となるが、処理前画像データが３次元の画像データの場合、連結データは、（チャネル、縦サイズ、横サイズ、奥行きサイズ）の配列となる。
【０１４４】
また、上記第１乃至第３の実施形態では、２次元の画像データをそのまま取り扱うものとして説明したが、２次元の画像データを変形して、あるいは、３次元の画像データを変形して取り扱うように構成してもよい。例えば、３次元の画像データを取得し、所定断面の２次元の画像データを生成して、処理前画像データとして入力してもよい。あるいは、連続する所定断面の２次元の画像データに基づいて、３次元の画像データを生成して、処理前画像データとして入力してもよい。
【０１４５】
また、上記第１乃至第３の実施形態では、処理前画像データのチャネルについて言及しなかったが、処理前画像データは、マテリアルの種類に応じた複数のチャネルを有していてもよい。
【０１４６】
また、上記第１乃至第３の実施形態では、学習装置１２０及び推論装置１３０がそれぞれ、画像分割部１２１、１３１を有するものとして説明した。しかしながら、学習装置１２０及び推論装置１３０は、それぞれ、画像分割部１２１、１３１を有していなくてもよく、入力データ生成部１２２、１３２は、分割されていない処理前画像データに基づいて、連結データを生成してもよい。
【０１４７】
また、上記第１乃至第３の実施形態において、推論装置１３０は、処理前画像データ、処理関連データが入力された場合に、処理後画像データを出力して処理を終了するものとして説明した。しかしながら、推論装置１３０の構成はこれに限定されない。例えば、処理前画像データ、処理関連データが入力されることで出力される処理後画像データを、対応する処理関連データとともに、再び、推論装置１３０に入力するように構成してもよい。これにより、推論装置１３０では、形状の変化を連続的に出力することができる。なお、推論装置１３０に処理後画像データを再び入力するにあたり、対応する処理関連データは、任意に変更可能であるとする。
【０１４８】
また、上記第１乃至第３の実施形態では、半導体製造装置１１０により処理される前の処理前ウェハの形状を示す処理前画像データと、処理された後の処理後ウェハの形状を示す処理後画像データとを学習用データとして用いるものとして説明した。
【０１４９】
しかしながら、学習用データとして用いる処理前画像データ及び処理後画像データは、これに限定されない。例えば、半導体製造装置１１０の他のシミュレータによりシミュレーションされる前の処理前画像データと、シミュレーションされた後の処理後画像データとを、学習用データとして用いてもよい。これにより、推論装置１３０を、他のシミュレータの代替として利用することが可能となる。
【０１５０】
また、上記第１乃至第３の実施形態では、処理前ウェハを対象物として説明したが、対象物は処理前ウェハに限定されず、例えば、半導体製造装置１１０のチャンバ内壁や、パーツ表面等であってもよい。
【０１５１】
また、上記第１乃至第３の実施形態では、測定装置１１１（または測定装置１１２）が処理前画像データ（または処理後画像データ）を生成する場合について説明した。しかしながら、処理前画像データ（または処理後画像データ）は、測定装置１１１（または測定装置１１２）が生成する場合に限定されない。例えば、測定装置１１１（または測定装置１１２）は、対象物の形状を示す多次元の計測データを生成し、学習装置１２０が当該計測データに基づいて、処理前画像データ（または処理後画像データ）を生成するように構成してもよい。
【０１５２】
なお、測定装置１１１（または測定装置１１２）が生成する計測データには、例えば、位置情報と膜種情報等を含むデータが含まれる。具体的には、ＣＤ−ＳＥＭにより生成される、位置情報とＣＤ測長データとを組み合わせたデータが含まれる。あるいは、Ｘ線やラマン法により生成される、２次元または３次元の形状と膜種等の情報とを組み合わせたデータが含まれる。つまり、形状を表現する多次元の計測データには、測定装置の種類に応じた様々な表現形式が含まれるものとする。
【０１５３】
また、上記第１乃至第３の実施形態では、学習装置１２０と推論装置１３０とを別体として示したが、学習装置１２０と推論装置１３０は、一体として構成してもよい。
【０１５４】
また、上記第１乃至第３の実施形態において、学習装置１２０は、１台のコンピュータで構成されるものとして説明したが、複数台のコンピュータで構成されていてもよい。同様に、上記第１乃至第３の実施形態において、推論装置１３０は、１台のコンピュータで構成されるものとして説明したが、複数台のコンピュータで構成されてもよい。
【０１５５】
また、上記第１乃至第３の実施形態では、学習装置１２０及び推論装置１３０を、半導体製造プロセスのシミュレーションに適用する場合について説明した。しかしながら、学習装置１２０及び推論装置１３０の適用対象は、半導体製造プロセスのシミュレーションに限定されず、他の任意の製造プロセスあるいは製造プロセス以外のプロセスに適用してもよい。
【０１５６】
また、上記第１乃至第３の実施形態において、学習装置１２０、推論装置１３０は、汎用のコンピュータに各種プログラムを実行させることで実現したが、学習装置１２０、推論装置１３０の実現方法はこれに限定されない。
【０１５７】
例えば、プロセッサ、メモリなどを実装しているＩＣ（Integrated Circuit）などの専用の電子回路（すなわちハードウェア）により実現されてもよい。複数の構成要素が一つの電子回路で実現されてもよいし、一つの構成要素が複数の電子回路で実現されてもよいし、構成要素と電子回路が一対一で実現されてもよい。
【０１５８】
なお、上記実施形態に挙げた構成等に、その他の要素との組み合わせ等、ここで示した構成に本発明が限定されるものではない。これらの点に関しては、本発明の趣旨を逸脱しない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
（参照による引用）
本明細書に記載の全ての刊行物（下記も含む）、特許、および特許出願は、各個々の刊行物、特許、または特許出願が、具体的かつ個々に、参照することによって組み込まれるように示される場合と同範囲に参照することによって本明細書に組み込まれる。
・https://arxiv.org/abs/1709.07871
・https://lmb.informatik.uni-freiburg.de/people/ronneber/u-net/
【符号の説明】
【０１５９】
１００                  ：シミュレーションシステム
１１０                  ：半導体製造装置
１１１                  ：測定装置
１１２                  ：測定装置
１２０                  ：学習装置
１２１                  ：画像分割部
１２２                  ：入力データ生成部
１２３                  ：学習部
１３０                  ：推論装置
１３１                  ：画像分割部
１３２                  ：入力データ生成部
１３３                  ：実行部
３００                  ：学習用データ
４２０                  ：学習モデル
４３０                  ：比較部
４４０                  ：変更部
５０１                  ：処理前画像データ
５１０、５２０          ：ブロック
５１１、５２１          ：連結データ
６０１〜６０４          ：自己回帰モジュール
６１１〜６１４          ：特徴量
６２１〜６２４、６３０  ：エンコーダ部の層
６４１〜６４４          ：デコーダ部の層
９２０                  ：学習済みモデル
９３０                  ：出力部
【図１】
2020057172.tif 000008
【図２】
2020057172.tif 000009
【図３】
2020057172.tif 000010
【図４】
2020057172.tif 000011
【図５】
2020057172.tif 000012
【図６】
2020057172.tif 000013
【図７】
2020057172.tif 000014
【図８】
2020057172.tif 000015
【図９】
2020057172.tif 000016
【図１０】
2020057172.tif 000017
【図１１】
2020057172.tif 000018