JP2021125136A - 最適化装置及び最適化方法 - Google Patents

最適化装置及び最適化方法 Download PDF

Info

Publication number
JP2021125136A
JP2021125136A JP2020020048A JP2020020048A JP2021125136A JP 2021125136 A JP2021125136 A JP 2021125136A JP 2020020048 A JP2020020048 A JP 2020020048A JP 2020020048 A JP2020020048 A JP 2020020048A JP 2021125136 A JP2021125136 A JP 2021125136A
Authority
JP
Japan
Prior art keywords
output data
unit
evaluation value
feature amount
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2020020048A
Other languages
English (en)
Other versions
JP7344149B2 (ja
Inventor
怜 横田
Rei Yokota
怜 横田
大貴 桐淵
Daiki Kiribuchi
大貴 桐淵
武一郎 西川
Takeichiro Nishikawa
武一郎 西川
聡 小池
Satoshi Koike
聡 小池
隆 鶴貝
Takashi Tsurugai
隆 鶴貝
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Kioxia Corp
Original Assignee
Toshiba Corp
Kioxia Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp, Kioxia Corp filed Critical Toshiba Corp
Priority to JP2020020048A priority Critical patent/JP7344149B2/ja
Priority to US17/014,759 priority patent/US11847389B2/en
Publication of JP2021125136A publication Critical patent/JP2021125136A/ja
Application granted granted Critical
Publication of JP7344149B2 publication Critical patent/JP7344149B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/086Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/04Constraint-based CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Geometry (AREA)
  • Computational Linguistics (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Physiology (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Genetics & Genomics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract


【課題】多次元の出力データを理想の出力データに一致させる最適化処理を簡易に行う。
【解決手段】最適化装置は、第1の次元数の入力パラメータに基づいて実験又はシミュレーションを行うことにより得られる第2の次元数の出力データを取得する出力データ取得部と、入出力データ記憶部と、出力データの評価値を算出する出力する評価値算出部と、第2の次元数とは異なる第3の次元数の出力データ特徴量を抽出する特徴量抽出部と、入力パラメータから予測される出力データ特徴量に関する変換パラメータを生成する入力パラメータ変換部と、変換パラメータと対応する評価値とに基づいて、次の入力パラメータを決定する次入力パラメータ決定部と、所定の条件を満たすまで、出力データ取得部、入出力データ記憶部、評価値算出部、特徴量抽出部、入力パラメータ変換部、及び次入力パラメータ決定部の処理を繰り返す反復判定部と、を備える。
【選択図】図1

Description

本発明の一実施形態は、最適化装置及び最適化方法に関する。
シミュレータが種々の目的で利用されている。例えば、入力パラメータをシミュレータに入力して出力データを推測し、出力データが理想の出力データになるように入力データを更新する目的でシミュレータを使用することができる。
複雑な事象の動作をシミュレータで模擬的に実行させる場合、出力データが多次元になる場合がある。出力データが多次元の場合、入力パラメータを更新するのに膨大な計算処理が必要となる。多次元の出力データの中から、重要な一部の次元の出力データを抽出してからシミュレーションを行うことも考えられるが、多次元の出力データから一部の次元の出力データを人手で抽出するのは、容易ではない。
特開2018−73360公報 WO2017/047309
そこで、本発明の一実施形態は、多次元の出力データを理想の出力データに一致させる最適化処理を簡易かつ迅速に行うことが可能な最適化装置及び最適化方法を提供するものである。
上記の課題を解決するために、本発明の一実施形態によれば、第1の次元数の入力パラメータに基づいて実験又はシミュレーションを行うことにより得られる第2の次元数の出力データを取得する出力データ取得部と、前記入力パラメータと対応する前記出力データとを組にして記憶する入出力データ記憶部と、前記出力データの評価値を算出する評価値算出部と、前記第2の次元数とは異なる第3の次元数の出力データ特徴量を抽出する特徴量抽出部と、前記入力パラメータから予測される前記出力データ特徴量に関する変換パラメータを生成する入力パラメータ変換部と、前記変換パラメータと対応する前記評価値とに基づいて、前記出力データ取得部で取得されるべき次の入力パラメータを決定する次入力パラメータ決定部と、所定の条件を満たすまで、前記出力データ取得部、前記入出力データ記憶部、前記評価値算出部、前記特徴量抽出部、前記入力パラメータ変換部、及び前記次入力パラメータ決定部の処理を繰り返す反復判定部と、を備える、最適化装置が提供される。
最適化装置を備えたシミュレーションシステムの概略構成を示すブロック図。 入力パラメータと対応する出力データの組を示す図。 出力データの一例を示す図。 入出力データ記憶部に記憶されるデータの一例を示す図。 出力データと対応する出力データ特徴量とを組にして同一行に並べた一例を示す図。 シミュレーションシステムの処理動作の一例を示すフローチャート。 第2の実施形態による最適化装置を備えたシミュレーションシステムの概略構成を示すブロック図。 デコード結果可視化部による可視化の第一例を示す図。 第5の実施形態による最適化装置を備えたシミュレーションシステムの概略構成を示すブロック図。 変換次元数最適化部の処理動作の一例を示すフローチャート。 第6の実施形態による最適化装置を備えたシミュレーションシステムの概略構成を示すブロック図。 誤差の重みの一括指定をするユーザインタフェースの一例を示す図。 出力データの各次元と対応する重みの記憶の仕方の一例を示す図。 第7の実施形態による最適化装置を備えたシミュレーションシステムの概略構成を示すブロック図。
以下、図面を参照して、最適化装置及び最適化方法の実施形態について説明する。以下では、最適化装置及び最適化方法の主要な構成部分を中心に説明するが、最適化装置及び最適化方法には、図示又は説明されていない構成部分や機能が存在しうる。以下の説明は、図示又は説明されていない構成部分や機能を除外するものではない。
図1は一実施形態による最適化装置1を備えたシミュレーションシステム2の概略構成を示すブロック図である。図1のシミュレーションシステム2は、最適化装置1とシミュレータ3を備えている。シミュレータ3は、入力パラメータに基づいてシミュレーションを実行して、シミュレーション結果を示す出力データを出力する。最適化装置1は、シミュレータ3に入力(設定)する入力パラメータを最適化する。
図1のシミュレーションシステム2は、1台又は複数台のコンピュータで構成することができる。この場合、コンピュータは、最適化装置1の処理動作を行うプログラムと、シミュレータ3の処理動作を行うプログラムとを実行する。あるいは、最適化装置1とシミュレータ3の少なくとも一部の処理動作を専用のハードウェア(例えば、信号処理プロセッサなどの半導体装置など)で実行してもよい。
なお、図1の最適化装置1は、必ずしもシミュレータ3に接続する必要はない。例えば、シミュレータ3の代わりに、各種の実験を行う実験装置とともに図1の最適化装置1を用いてもよい。すなわち、図1の最適化装置1は、シミュレーションシステム2に内蔵されるとは限らない。
図1の最適化装置1は、出力データ取得部4と、入出力データ記憶部5と、評価値算出部6と、特徴量抽出部7と、入力パラメータ変換部8と、次入力パラメータ決定部9と、反復判定部10とを有する。
出力データ取得部4は、所定の次元数の入力パラメータに基づいて、実験又はシミュレーションを行った結果を示す出力データを取得する。本明細書では、複数の入力パラメータが、実験で用いられる、あるいはシミュレータ3に入力されることを前提としており、入力パラメータの数(項目数)を次元数と呼ぶ。出力データ取得部4は、シミュレータ3にてシミュレーションを行った結果を示す出力データを取得するだけでなく、実験結果を示す出力データを示す出力データを取得してもよい。本明細書では、出力データ取得部4が多次元の出力データを取得することを前提とする。以下では、シミュレータ3からの多次元の出力データを取得して、シミュレータ3への次入力パラメータを決定する処理について主に説明するが、シミュレータ3の代わりに実験装置からの多次元の出力データを取得して、実験装置への次入力パラメータを決定することも可能である。このように、出力データ取得部4は、第1の次元数の入力パラメータに基づいて実験又はシミュレーションを行うことにより得られる第2の次元数の出力データを取得する。例えば、第2の次元数は、第1の次元数よりも多い数である。
入出力データ記憶部5は、入力パラメータと対応する出力データを組にして記憶する。図2Aの例では、入力パラメータは38個の項目x1、x2、…、x38からなり、各項目はそれぞれ個別の値を有する。各項目の値は、連続値、離散値、又はカテゴリ変数でもよい。入力パラメータの各項目は、温度や圧力等の物理的なパラメータでもよいし、処理時間や処理条件などの実験に関するパラメータでもよい。入力パラメータの項目数や項目の内容は任意である。
図2Bは出力データの一例を示す図である。図2Bの例では、出力データが800個の項目y1、y2、…、y800からなり、各項目はそれぞれ個別の値を有する。出力データは、入力パラメータを用いて実験を行った結果、又は入力パラメータをシミュレータ3に入力してシミュレーションを行った結果を示している。より具体的には、出力データは、実験に用いた各種センサの検出データでもよいし、実験結果やシミュレーション結果の物理的な特性値や測定値でもよい。
図3は入出力データ記憶部5に記憶されるデータの一例を示す図である。図3の例では、図2Aの入力パラメータと、対応する図2Bの出力データとを組にして、入出力データ記憶部5に記憶している。
評価値算出部6は、出力データの評価値を算出する。評価値は、入力パラメータに対して1次元の値である。評価値は、実験又はシミュレーションの結果として得られた出力データのうちの一つでもよいし、実験又はシミュレーションの結果として得られた複数の出力データを合成して演算した値でもよい。例えば、実験又はシミュレーションの結果として得られた出力データと、理想的な出力データとの差分を評価値としてもよいし、実験又はシミュレーションの結果として得られた複数の出力データの和や積を評価値としてもよい。評価値f(x)は、評価値算出関数gに、出力データyが入力されて計算されることが既知であればよい。すなわち、f(x)=g(y)であるときに、評価値算出関数gがブラックボックスであってもよい。
特徴量抽出部7は、出力データの次元数を入力パラメータの次元数に変更した出力データ特徴量を抽出する。すなわち、特徴量抽出部7は、第2の次元数の出力データに対して、第2の次元数とは異なる第3の次元数の出力データ特徴量を抽出する。例えば、入力パラメータxの次元数が38である場合、入力パラメータ変換部8は、y=(y1、y2、…、y800)の800次元の出力データyから、v=(v1、v2、…、v38)の38次元の出力データ特徴量を抽出する。
出力データから出力データ特徴量を抽出する処理は、以下の式(1)の関数φ(y)であってもよい。
v=φ(y) …(1)
関数φ(y)は、例えば、出力データを入力層への入力とし、出力層からの出力と入力層への入力の誤差を最小化する重みを学習するニューラルネットワークの中間層の出力としてもよい。より具体的には、オートエンコーダ(AE:AutoEncoder)を用いて求めてもよい。あるいは、変分オートエンコーダやスパースオートエンコーダや積層オートエンコーダや多層オートエンコーダやデノイジングオートエンコーダを用いてもよい。自己組織化マップを用いてもよい。このように、特徴量抽出部7は、入力層、中間層及び出力層を有するニューラルネットワークの入力層に出力データを入力し、入力層に入力される出力データと出力層から出力されるデータとの誤差が最小になるように、入力層、中間層及び出力層を繋ぐ各経路の重みを学習するとともに、中間層から出力されるデータを出力データ特徴量としてもよい。
あるいは、特徴量抽出部7は、出力データのうち、分散が最大化される次元を出力データ特徴量としてもよい。より具体的には、主成分分析(PCA:Principal Component Analysis)や多次元尺度構成法を用いてもよい。
あるいは、特徴量抽出部7は、出力データのうち、独立性が最大の次元を出力データ特徴量としてもよい。より具体的には、独立成分分析(ICA: Independence Component Analysis)を用いてもよい。
あるいは、特徴量抽出部7は、yの次元から乱択した次元をvとしてもよいし、ランダム写像Aを用いて、v=A(y)としてもよい。
あるいは、特徴量抽出部7は、上述した複数の手法を任意に組み合わせて、出力データから出力データ特徴量を抽出してもよい。
出力データから出力データ特徴量を抽出する処理は、評価値f(x)と出力データyを入力とした、以下の式(2)の関数φ(f(x),y)であってもよい。
v=φ(f(x),y) …(2)
例えば、φ(f(x),y)は、出力データから評価値を回帰したときの回帰係数のうち、所定の閾値を超える回帰係数に対応する次元を出力する関数であってもよい。より具体的には、f(x)を目的変数、yを説明変数とした線形回帰を行い、その回帰係数を求め、その回帰係数の絶対値が大きい次元から順に、入力パラメータ次元数分だけyの次元を選択してもよい。あるいは、ランダムフォレストを用いて、特徴量の重要度を算出して、その重要度が高い次元から順に、入力パラメータ次元数分だけyの次元を選択してもよい。
図4は出力データと対応する出力データ特徴量とを組にして同一行に並べた一例を示す図である。図4では、800次元の出力データy=(y1、y2、…、y800)を、38次元の出力データ特徴量v=(v1、v2、…、v38)に変換する例を示している。図4の各データは、入出力データ記憶部5、あるいは入出力データ記憶部5とは別個に設けられる不図示の記憶部に記憶してもよい。
入力パラメータ変換部8は、入出力データ記憶部5に記憶された入力パラメータを、入出力データ記憶部5、あるいは入出力データ記憶部5とは別個に設けられる不図示の記憶部に記憶された出力データ特徴量に基づいて変換パラメータに変換する。すなわち、入力パラメータ変換部8は、入力パラメータから予測される出力データ特徴量に関する変換パラメータを生成する。例えば、入力パラメータ変換部8は、38次元の出力データ特徴量v=(v1、v2、v3、v4、v5、v6、v7、v8)を予測する回帰式v=ψ(x)を求め、この回帰結果z=ψ(x)を変換パラメータとする。すなわち、入力パラメータxと出力データ特徴量vからψ(x)を計算し、vとψ(x)との誤差が小さくなるψ(x)を求める。
例えば、vとψ(x)の誤差の二乗平方和を算出し、算出した二乗平方和が最小になるψ(x)を求めてもよい。回帰手法は、線形回帰や、エラスティックネット回帰、ランダムフォレスト回帰などを用いてもよい。入力パラメータ変換部8の変換手法は、実験やシミュレーションを行うたびに変えてもよいし、変換手法を固定化してもよい。また、実験やシミュレーションを所定回数行うたびに、入力パラメータ変換部8の変換手法を変えてもよい。
次入力パラメータ決定部9は、上述した変換パラメータと対応する評価値との組に基づいて、実験で用いられる又はシミュレータ3に入力される次の入力パラメータを決定する。すなわち、次入力パラメータ決定部9は、変換パラメータと対応する評価値とに基づいて、出力データ取得部で取得されるべき次の入力パラメータを決定する。
例えば、変換パラメータと対応する評価値との組に基づいて、ブラックボックス最適化手法を用いて、次の変換パラメータを決定してもよい。採用する最適化手法は、遺伝的アルゴリズムでもよいし、進化戦略や共分散行列適応進化戦略(CMA−ES:Covariance Matrix Adaptation Evolution Strategy)でもよい。また、ベイズ最適化を用いて、次の変換パラメータを決定してもよい。
その後、変換の逆関数φ-1(z)を用いて、次の変換パラメータzから、次の入力パラメータx=φ-1(z)を計算する。決定した次の入力パラメータは、ディスプレイに表示してもよいし、通信機器を用いて実験装置あるいはシミュレータに表示してもよいし、通信機器を用いて実験装置あるいはシミュレータ3に直接出力してもよい。
反復判定部10は、所定の条件を満たすまで、出力データ取得部4、入出力データ記憶部5、評価値算出部6、特徴量抽出部7、入力パラメータ変換部8、及び次入力パラメータ決定部9の処理を繰り返す。所定の条件を満たすとは、例えば、実験又はシミュレーションの回数が閾値を超えた場合でもよいし、実験又はシミュレーションの開始からの経過時間が閾値を超えた場合でもよいし、評価値が閾値を上回った(又は下回った)場合でもよい。あるいは、これらを組み合わせた条件でもよい。
図5はシミュレーションシステム2の処理動作の一例を示すフローチャートである。まず、入力パラメータをシミュレータ3に入力して、シミュレーションを実行する(ステップS1)。このステップS1では、ラテン方格やソボル列を用いて入力パラメータを決定してもよい。
次に、出力データ取得部4にて、シミュレータ3のシミュレーション結果を示す出力データを取得し、取得した出力データを入出力データ記憶部5に記憶する(ステップS2)。所定の条件を満たしたと判定されると(ステップS3)、最適な入力パラメータを算出して(ステップS4)、その最適な入力パラメータを出力する(ステップS5)。ステップS4では、例えば、評価値算出部6で算出された評価値が最大(又は最小)になるときの入力パラメータを最適な入力パラメータとしてもよい。このように、図1の最適化装置1は、最適な入力パラメータを出力する最適入力パラメータ算出部を備えていてもよい。
ステップS3で所定の条件を満たしていないと判定されると、特徴量抽出部7にて、出力データから出力データ特徴量を抽出する(ステップS6)。例えば、オートエンコーダを用いる場合は、潜在次元数を入力パラメータと同次元数に設定したオートエンコーダに出力データを入力して学習を行う。学習済みのオートエンコーダのエンコーダに出力データを入力し、出力される値を出力データ特徴量として抽出する。オートエンコーダの学習は、入出力データ記憶部5に記憶された入出力データが増えるたびに行ってもよいし、所定の量の入出力データが追加された場合に行ってもよい。
次に、入力パラメータ変換部8にて、入力パラメータを変換パラメータに変換する。(ステップS7)。具体的には、入力パラメータxと出力データ特徴量vからψ(x)を計算し、vとz=ψ(x)との誤差が小さくなるψを求め、求めたψにxを入力して得られる出力zを変換パラメータとする。
次に、次入力パラメータ決定部9にて、変換パラメータと対応する評価値との組に基づいて次入力パラメータを決定する(ステップS8〜S10)。例えば、ベイズ最適化を用いる場合には、まずガウス過程によって変換パラメータと対応する評価値の関係を推定する(ステップS8)。次に、ステップS8の推定結果に基づいて獲得関数を算出する(ステップS9)。最後に、獲得関数が最大となるような次入力パラメータを決定する(S10)。その後、反復判定部10は、所定の条件を満たすまで、ステップS1以降の処理を繰り返す。
このように、第1の実施形態では、出力データから入力パラメータと同次元数の出力データ特徴量を抽出し、出力データ特徴量に基づき入力パラメータから変換パラメータを生成し、変換パラメータと対応する評価値とに基づいて次の入力パラメータを決定して、所定の条件を満たすまで、シミュレーションの実行と、出力データ特徴量の抽出と、変換パラメータの生成と、次の入力パラメータの決定とを繰り返す。
このため、入力パラメータと評価値を最適化する元の最適化問題を、入力パラメータ自体よりも評価値により直接的な関係のある出力データ特徴量予測空間をつくる問題と出力データ特徴量を入力パラメータから予測する問題に分割できる。
これによる第1の効果は、問題設定上、入力パラメータと出力データが直接関係し出力データと評価値が直接関係することは利用して、入力パラメータ自体よりも評価値により直接的な関係のある空間での最適化問題に帰着できるので、公知の最適化手法を適用した際の最適化効率が上がることである。
第2の効果は、入力パラメータから評価値を予測するよりも、より単純な予測問題に帰着し、評価値を予測しやすくできることである。シミュレーションで生成した形状の各寸法値を対応する理想的な形状の寸法値に合わせる問題には、複数の種類の評価値があるとみなせるので、多目的最適化問題とみなせる。一般に多目的最適化問題は、トレードオフが問題となる。具体的には、一方の寸法を理想的な形状寸法値に合わせると、他方の寸法は理想的な形状寸法値に合わなくなるということが生じる。そのような複雑な関係から生じる評価値を直接入力パラメータから予測するよりも、複雑な関係をほどき、評価値算出部6の入力となる個々の出力データを入力パラメータから予測する問題に帰着した方が、より単純な予測問題になり問題が解きやすくなる。物理的なシミュレーションモデルのキャリブレーションでは、人が重要と判断したモデルパラメータのみでシミュレーションモデルを構成するので、どのモデルパラメータも重要なことが多い。そうした場合には、単純にシミュレーションのモデルのパラメータ次元数を減らすことによる探索の効率化を期待しにくい。一方で物理的なシミュレーションの出力の次元数は圧縮できる場合がある。例えば、ある物理的な形状寸法値を理想的な形状寸法値に一致させるようなモデルパラメータの最適化問題において、シミュレーションで生成しうる形状には、変化しやすい寸法と変化しにくい寸法が存在する。そうした場合、例えば、変化しやすい寸法として、分散の多い次元を選べば、形状の変化を少ない次元数で効率的に表現できるので、特徴量抽出部7によって出力データの次元数を減らし、効率的にシミュレーションで生成した形状と理想的な形状の誤差を効率的に小さくできる。
第3の効果は、人が高次元出力データから最適化に適した出力データを選択したり、出力データ特徴量の適切な次元数を設定したりする必要がないため、より簡易に最適な入力パラメータを設定できることである。
第4の効果は、出力データの全次元数を予測する必要がないので、出力データの全次元を予測する手法に比べ、計算量を減らせることである。
第5の効果は、評価値算出関数の計算式が不明でも用いられるので、評価値算出関数形が既知であることを利用する手法に比べて、汎用性が高い。例えば、形状が似ているか、似ていないかの評価は、人間の主観的な判断で下される場合があり、必ずしも評価値算出関数がホワイトボックスであるわけではない。ただし、人間が形状の寸法値を見ていることは明らかであるので、出力データから評価値を算出していることは既知として利用できる。
(第2の実施形態)
図6は第2の実施形態による最適化装置を備えたシミュレーションシステムの概略構成を示すブロック図である。図6の最適化装置1は、図1の構成に加えて、変換次元数入力部11と、デコード結果可視化部12とを備えている。
変換次元数入力部11は、特徴量抽出部7と入力パラメータ変換部8に変換次元数を入力する。変換次元数入力部11は、特徴量抽出部7と、入力パラメータ変換部8における抽出又は変換後の次元数を決定する。変換次元数入力部11は、最適化装置1の処理中に、変換次元数を変更してもよい。あるいは、変換次元数入力部11は、最適化装置1の処理中には、いったん入力した変換次元数を変更できないようにしてもよい。変換次元数の最適化が進むにつれて徐々に変換次元数を変更するようにしてもよい。これにより、第2の実施形態においては、特徴量抽出部7の特徴量次元数と、入力パラメータ変換部8の変換次元数を、第1の実施形態と違って変更できるようになる。
例えば、機械学習のハイパーパラメータ最適化問題であれば、一般的に最適化に有効なハイパーパラメータは少ないとされる。そのような最適化に有効なハイパーパラメータが少ないとされる問題では、特徴量抽出部7の特徴量次元数と、入力パラメータ変換部8の変換次元数を、入力パラメータよりも少ない次元数に設定してもよい。
デコード結果可視化部12は、特徴量抽出部7への入力と、その特徴量抽出部7への入力を特徴量抽出部7で抽出した出力データ特徴量により再現したデコード結果を可視化する。デコード結果とは、特徴量を出力データに逆変換する処理である。例えば、デコード結果可視化部12は、オートエンコーダのエンコーダに出力データを入力したときに得られる出力データ特徴量を、オートエンコーダのデコーダでデコードしたデータを可視化する。
図7はデコード結果可視化部12による可視化の第一例を示す図である。図7の縦軸は出力データの各次元に目盛を割り当てており、横軸はその目盛に対応する出力データの次元の値をプロットした図であり、プロットした点は補間してつないでいる。補間の具体的な方法として、例えば、線形補間やスプライン補間を用いてもよい。補間をしないで点だけをプロットしてもよい。例えば、出力データがある高さ(各次元に相当)における形状の横幅であれば、目盛りの高さを実際の高さに比例するように可視化してもよい。
図7のD1は理想データで、D2、D3は、それぞれ、特徴量抽出部7に入力された出力データ800次元の出力データy1=y1_1、y2=y2_1、・・・、y800=y800_1、変換次元数をaに設定した時のデコード結果y1=y1_2、y2=y2_2、・・・、y800=y800_2、変換次元数をb(≠a)に設定した時のデコード結果y1=y1_3、y2=y2_3、・・・、y800=y800_3である。図7に示すように、特徴量抽出部7に入力した出力データの値と異なる変換次元数でデコードした結果を並べて可視化することで、どの変換次元数のときに出力データをうまく再現できるかを目視判断できる。例えば、図7のD2と図7のD3を目視比較すると、図7のD2の方が全体的に図7のD1に似ているのがわかり、図7のD2のときの変換次元数の方が形状をうまく再現できているとわかる。定量的に再現性を比較したければ、特徴量抽出部7に入力した形状の寸法値とデコード結果との誤差を計算及び比較して、誤差が小さくなる方の変換次元数に設定してもよい。例えば、誤差は二乗誤差和であってもよい。具体的には、誤差e1=Σi||y2_i−y1_i||、e2=Σi||y3_i−y1_i||を計算して、誤差が小さくなる方の変換次元数をしてもよい。ここで、|| ||は、後述する式(5)に示すLpノルムでもよいし、同じく後述する式(6)に示す無限大ノルムでもよい。
一般に、回帰問題では次元数を上げれば表現力が上がると言われているのに対して、最適化問題では次元数が高いと、最適化に必要な試行数が増えると言われている。よって、ユーザにとって出力データの重要な部分が再現でき、かつ、できる限り小さな次元数を可視化結果や誤差の比較から判断する。
このように、第2の実施形態では、特徴量抽出部7が出力する出力データ特徴量の次元数と入力パラメータ変換部8が出力する変換パラメータの次元数である変換次元数を入力できる。有効な次元数が少ないという事前知識が利用できる場合は、ユーザが入力パラメータよりも変換次元数を小さくすることで有効な低次元を活用して、最適な入力パラメータを効率よく設定できる。そのような事前知識がない場合にも、出力データを再現するのに必要な変換次元数をデコード結果可視化部12の可視化結果に基づき、容易に判断できる。出力データがある物理特性値である場合や形状である場合、最適化装置1のユーザによって特に再現したい部分が異なる場合があり、再現の度合いを定式化しにくいことがある。そのような場合にも、デコード結果が可視化されることで、ユーザが変換次元数の影響を簡易に把握できる。
(第3の実施形態)
次入力パラメータ決定部9は、出力結果推定機能と、獲得関数算出機能(獲得関数生成部)と、獲得関数最大化機能(獲得関数最大化部)とを有する。
出力結果推定機能は、変換パラメータと対応する評価値との組に基づいて、変換パラメータzに対して、ベイズルールにより計算される評価値yの事後確率p(y|z)を推定する。
獲得関数算出機能は、ベイズルールにより計算される事後確率に基づいて獲得関数を算出する。すなわち、獲得関数算出機能は、変換パラメータに基づいて獲得関数を生成する。獲得関数は、例えばPI(Probability of Improvement)を用いてもよいし、EI(Expected Improvement, 期待改善量方策)を用いてもよい。あるいはUCB(Upper Confidence Bound)やTS (Thompson Sampling)、 ES(Entropy Search)、MI(Mutual Information)を用いてもよい。例えばPIの場合、獲得関数αn(z)は、任意の定数τnを用いて、以下の式(3)にて計算する。
Figure 2021125136
獲得関数最大化機能は、獲得関数が最大となる次入力パラメータを算出する機能である。例えば、獲得関数が最大となる変換パラメータzn+1=argmaxzα(z)を求め、変換φの逆関数φ-1(z)を用いて、次入力パラメータをxn+1=φ-1(zn+1)と計算してもよい。変換では次元数を小さくしているため、変換の逆関数では、次元数を小さくした分の自由度がある。これに関しては残りの自由度はランダムに決定してもよい。あるいは、現時点の評価値が最も大きい(小さい)入力パラメータとの距離が最小となるように、残りの自由度を決定してもよい。あるいは、獲得関数をαn(φ(x))というように入力パラメータxの関数と考えて、獲得関数が最大となる入力パラメータxn+1=argmaxαn(φ(x))を直接計算してもよい。この方法では、逆変換φ-1(z)を必要としないため、逆変換を計算できない変換φも用いることが可能である。この獲得関数の最大化は、任意の最適化方法を用いてもよい。例えば、全探索やランダム探索、グリッドサーチや勾配法、L−BFGS、DIRECT、CMA−ESや多スタート局所法を用いてもよい。
(第4の実施形態)
第4の実施形態は、ベイズ最適化により次の入力パラメータを決定するものである。第4の実施形態による最適化装置1の概略構成は、図1と同様であるため、ブロック構成の説明を割愛する。
第4の実施形態による次入力パラメータ決定部9は、出力結果推定機能と、獲得関数算出機能(獲得関数生成部)と、獲得関数最大化機能(獲得関数最大化部)とを有する。
出力結果推定機能は、変換パラメータと対応する評価値との組に基づいて、変換パラメータの平均値、評価値の平均値、変換パラメータの分散、及び評価値の分散の関係式を推定する。平均値と分散の関係式の推定方法は、ガウス過程回帰を用いてもよいし、ランダムフォレスト回帰を用いてもよい。例えば、ガウス過程回帰の場合、i番目の実験の変換パラメータをzi、評価値をyiとする。また、評価値の平均値ベクトルをmi=μ0(zi)、ziとzjの共分散をKi,j=k(zi,zj)とする。ここで、μ0(zi)は任意の関数であり、k(zi,zj)は任意のカーネル関数である。カーネル関数は例えば指数二乗カーネルやマターンカーネル、線形カーネルでもよい。
このとき、変換パラメータzと、評価値yの平均値との関係式μn(z)は、μn(z)=μ0(z)+k(z)T (K+σ2I)-1 (y−m)である。ここで、ki(z)=k(z,zi)であり、σ2は任意の定数である。また、変換パラメータzと、評価値yの分散との関係式σn 2(z)は、σn 2 (z)=k(z,z)−k(z)T (K+σ2I)-1 k(z)である。
獲得関数算出機能は、平均値の関係式と分散との関係式に基づいて獲得関数を算出する。すなわち、獲得関数算出機能は、変換パラメータと対応する評価値とについての、平均値及び分散に関する関係式に基づいて獲得関数を生成する。獲得関数は、例えばPI(Probability of Improvement)を用いてもよいし、EI(Expected Improvement, 期待改善量方策)を用いてもよい。あるいはUCB(Upper Confidence Bound)やTS (Thompson Sampling)、 ES(Entropy Search)、MI(Mutual Information)を用いてもよい。例えばUCBの場合、獲得関数αn(z)は任意の定数βnを用いて、αn(z)=μn(z)+βnσn(z)と計算する。
獲得関数最大化機能は、獲得関数が最大となる次入力パラメータを算出する機能である。例えば、獲得関数が最大となる変換パラメータzn+1=argmaxzα(z)を求め、変換φの逆関数φ-1(z)を用いて、次入力パラメータをxn+1=φ-1(zn+1)と計算してもよい。変換では次元数を小さくしているため、変換の逆関数では、次元数を小さくした分の自由度がある。これに関しては残りの自由度はランダムに決定してもよい。あるいは、現時点の評価値が最も大きい(小さい)入力パラメータとの距離が最小となるように、残りの自由度を決定してもよい。あるいは、獲得関数をαn(φ(x))というように入力パラメータxの関数と考えて、獲得関数が最大となる入力パラメータxn+1=argmaxαn(φ(x))を直接計算してもよい。この方法では、逆変換φ-1(z)を必要としないため、逆変換を計算できない変換φも用いることが可能である。この獲得関数の最大化は、任意の最適化方法を用いてもよい。例えば、全探索やランダム探索、グリッドサーチや勾配法、L−BFGS、DIRECT、CMA−ESや多スタート局所法を用いてもよい。
このように、第4の実施形態では、ベイズ最適化を行うにあたって、入力パラメータ自体よりも、評価値により直接的な関係にある変換パラメータに変換し、変換パラメータと評価値とに基づいて、次の入力パラメータを算出するため、入力パラメータの次元数にかかわらず、入力パラメータの最適化処理を迅速に行うことができる。
(第5の実施形態)
第5の実施形態は、ユーザに頼らずに変換次元数を最適化するものである。
図8は第5の実施形態による最適化装置を備えたシミュレーションシステムの概略構成を示すブロック図である。図8の最適化装置1は、図1の構成に加えて、変換次元数最適化部13を備えている。変換次元数最適化部13は、特徴量抽出部7と入力パラメータ変換部8に入力される変換次元数を最適化する。より具体的には、変換次元数最適化部13は、変換パラメータから推定された評価値と評価値算出部6で算出された評価値との誤差に基づいて、出力データ特徴量及び変換パラメータの変換次元数を決定する。
図9は変換次元数最適化部の処理動作の一例を示すフローチャートである。まず、入出力データ記憶部5より、入力パラメータと評価値を読み出しておく(ステップS11)。次に、変換次元数を設定する(ステップS12)。変換次元数の設定は、ランダムに変換次元数を選んでもよいし、GAなどの最適化方法を用いて決めてもよい。そして、特徴量抽出部7で出力データから特徴量(出力データ特徴量)を抽出して(ステップS13)、入力パラメータ変換部8に出力データ特徴量と入力パラメータを入力して変換パラメータを生成し(ステップS14)、ガウス過程により変換パラメータと対応する評価値との関係を推定する(ステップS15)。それから、変換パラメータから推定された評価値と実際の評価値の誤差を算出する(ステップS16)。ここで、誤差は、評価値の推定値μn(z)と実際の評価値の二乗誤差和であってもよい。続いて、所定の条件を満たすかを確認する(ステップS17)。所定の条件とは、変換次元数の設定の試行錯誤の回数の上限値に達したか、誤差が所定の基準を下回ったなどである。所定の条件を満たさなければ、ステップS12に戻り、所定の条件を満たせば、最適な変換次元数を算出し(ステップS18)、算出された最適な変換次元数を出力する(ステップS19)。
このように、第5の実施形態は、変換次元数をユーザに頼らずに決定することができる。また、評価値の推定値の精度が上がるように変換次元数を決めることで、評価値の予測精度を高め、最適な入力パラメータを予測しやすくできる。
(第6の実施形態)
第6の実施形態は、入力パラメータを用いて実験又はシミュレーションを行った場合に制約に違反するデータが得られた場合の取扱に関する。
図10は第6の実施形態による最適化装置1を備えたシミュレーションシステム2の概略構成を示すブロック図である。図10のシミュレーションシステム2は、最適化装置1内の評価値算出部6の内部構成が図8とは異なっており、また、重み入力部14が追加されている点で図8とは異なっており、それ以外は図8と同様に構成されている。
図10の評価値算出部6は、理想出力データ記憶部6aと、誤差算出部6bと、評価値置換部6cとを有する。理想出力データ記憶部6aは、理想の実験又はシミュレーション出力結果を記憶する。例えば、出力データの項目がy1、y2、…、y10の場合に、理想の出力結果はこれら10個の項目に対応する10個の値でもよいし、一部の項目の値でもよい。
誤差算出部6bは、実験又はシミュレーションの出力データと、理想の出力結果との誤差を評価値として算出する。例えば、実験あるいはシミュレーションで得られたi番目の項目の出力データをyiとし、i番目の項目の理想の出力結果をyiバー(本明細書では、記号の上に横線のあるものを「記号バー」と表記する)とすると、誤差yは、以下の式(4)で表される。
Figure 2021125136
ここで、|| ||は、式(5)に示すLpノルムでもよいし、式(6)に示す無限大ノルムでもよい。
Figure 2021125136
Figure 2021125136
ユーザにとって合わせこみの優先順位がある場合は出力データの各次元の誤差の計算に重みwiを付けてもよい。この場合の出力データyは、重みwiを使って式(7)で表される。
Figure 2021125136
高次元の出力データ一つ一つに重みを付けるのはユーザにとって大きな負荷になるので、負荷軽減のため、理想データを見ながら、重みを領域ごとに一括に指定できるようにしてもよい。図10の重み入力部14は、誤差の重みづけを一括で設定するユーザインタフェースである。重み入力部14は、出力データの各次元に対応する誤差の重みを入力する。評価値算出部6は、入力された重みに基づいて重みづけられた誤差に基づいて評価値を算出する。
図11は、誤差の重みの一括指定をするユーザインタフェース(重み入力部14)の一例である。図11のD1が理想データであり、理想データの一部のyの次元を囲むように、図11のR1の領域を指定することで、重み更新対象の次元を選択している。図11のR1の領域は、領域の左上の点をマウスのクリックで指定後、マウスをドラッグし、ドラッグを解除した点を領域の右下の点として指定してもよい。yの次元を選択後は図11のR2の入力欄に一括設定したい重みの値を入力し、図11のR3の更新ボタンをクリックすることで重みを一括更新する。更新した重みは入出力データ記憶部5に保存してもよいし、別の記憶部に保存してもよい。図12は、各次元と対応する重みの記憶の仕方の一例である。
出力データの各次元の誤差に対する重みは、ユーザに頼らずに、各次元の誤差の履歴に基づいて決定してもよい。例えば、出力データの各次元の値と理想の出力結果の各次元の値の履歴から、誤差率の履歴を計算し、誤差率の平均値を各次元の重みにしてもよい。例えば、入出力データとして図3のような履歴がある場合、y1の次元の重みを決定するために、図3のy1の列のデータについて、以下の式(8)の計算を図3の行数分行って、その平均値をy1の次元の重みwiとすると、同様にして、yiの次元の重みを計算できる。
Figure 2021125136
評価値算出部6は、制約違反判定部6dを有していてもよい。制約違反判定部6dは、出力データが制約に違反しているか否かを判定する。評価値算出部6は、制約違反判定部6dにて、制約に違反していると判定された場合には、評価値置換部6cの処理を行ってもよい。評価値置換部6cは、ある入力パラメータに対応する出力データが制約に違反していると判定された場合には、出力データが制約に違反していない他の入力パラメータに対応する評価値に置換する。評価値置換部6cは、実験又はシミュレーションが制約に違反する場合を考慮に入れて、評価値を置換してもよい。ここで、制約に違反とは、失敗であってもよい。失敗とは、ある入力パラメータに対して出力データの一部が欠損してしまうことである。例えば実験の生成物ができず、結果として出力データの一部が欠損してしまったり、あるいはシミュレーションのバグで結果が返ってこなかったりすることが失敗である。もしくは、実験結果が想定を超えて、測定ができずに出力データが欠けてしまう場合も失敗である。出力データが欠損しているため、評価値も欠損値となってしまう入力パラメータが存在する。
制約の違反は、出力データが満たすべき制約式を守らないことであってもよい。例えば、出力データの一部が欠損していない場合であっても、要求する制約を守らず、避けるべきデータであれば、制約の違反としてもよい。例えば、出力データの1次元目の値が10より大きくなければならないという最適基準がある場合に、出力データの1次元目のy1が10より大きくないデータ、すなわちy1>10を満たさないデータは制約違反の入力パラメータとしてもよい。あるいは、出力データが形状の寸法値で、ある形状の特徴を満たさない場合に制約違反データとしてもよい。例えば、形状がジグザグでなければいけない場合に、隣り合う出力データの差分を計算して、その正負の制約を満たさなければ違反としてもよい。例えば、y1―y2<0かつy2−y3>0を制約として、この制約を満たさなければ、違反とすることで、出力データの各次元間で満たすべき関係を制約として定義し、その制約を違反するか否かで、制約違反である入力パラメータとしてもよい。
評価値置換部6cは、このような制約違反の入力パラメータに対応する評価値を、制約違反でない他の実験の評価値の最大値あるいは最小値で置き換えてもよい。すなわち、制約違反でないn番目の実験の評価値をynとすると、minnn又はmaxnnを用いて、制約違反である入力パラメータに対応する評価値の代わりとしてもよい。
例えば、評価値置換部6cは、実験又はシミュレーションが失敗した入力パラメータに対する評価値を最大化したい場合は、この場合の評価値を、実験又はシミュレーションが失敗していない他の入力パラメータの評価値の最小値に置換する。同様に、実験又はシミュレーションが失敗した入力パラメータに対する評価値を最小化したい場合は、この場合の評価値を、実験又はシミュレーションが失敗していない他の入力パラメータの評価値の最大値に置換する。
このように、第6の実施形態では、ある入力パラメータに対する実験又はシミュレーションが失敗した場合の評価値を、実験又はシミュレーションが失敗していない他の入力パラメータの評価値に基づいて置換するため、何らかの事情で実験又はシミュレーションが失敗したとしても、不適切な評価値に基づいて入力パラメータの最適化を行うおそれがなくなる。それだけでなく、出力データが満たすべき制約式を満たさないデータの評価値も、同様に置換することで、制約を満たさないデータが選択されないようにペナルティがかかり、一見評価値は良くても、制約違反の入力パラメータを回避することができる。
(第7の実施形態)
第7の実施形態は、評価関数内部で出力データになされる処理が既知である場合の扱いに関する。図13は第7の実施形態による最適化装置1を備えたシミュレーションシステム2の概略構成を示すブロック図である。図13のシミュレーションシステム2は、図1に評価関数内既知処理部15を追加した構成であり、それ以外は図1と同様に構成されている。図13の最適化装置1では、変換次元数入力部11は省略されている。
図13の評価関数内既知処理部15は、入出力データ記憶部5から読み出した出力データに、評価値算出部6内での既知の処理を出力データに適用した評価関数内既知処理後の出力データと対応する入力パラメータを特徴量抽出部7に入力する。特徴量抽出部7と入力パラメータ変換部8は、評価関数内既知処理後の出力データに基づいて各処理を行う。
このように、評価関数内既知処理部15は、評価値算出部が評価値を算出するために出力データに対して行う処理を、評価値算出部とは別個に行う。特徴量抽出部7は、既知処理実行部で行われた処理結果に基づいて、出力データ特徴量を抽出する。
Figure 2021125136
Figure 2021125136
Figure 2021125136
Figure 2021125136
このように、第7の実施形態では、評価関数内部での出力データになされる処理が既知である場合に、内部処理後の出力データから特徴量を抽出することで評価値により直接的な特徴量を学習することができるので、評価値を予測しやすくなり、最適なパラメータの設定を迅速に行うことができる。
上述した第1〜第7の実施形態による最適化装置1は、種々の事象の実験やシミュレーションに適用可能である。第1〜第7の実施形態による最適化装置1の具体的な一例として、半導体装置の形状が予め定めた形状となるように、入力パラメータを最適化することが考えられる。最近の半導体装置は、温度や材料等の成膜条件を細かく制御して、多数の膜を積層し、その後にリソグラフィ等で所望の形状に加工することが多い。最終的に得られる半導体装置の形状が所望の形状か否かを評価するために、第1〜第7の実施形態による最適化装置1を利用することができる。この場合、入力パラメータは、上述した成膜条件である。入力パラメータには、成膜温度や材料、成膜時間等の複数の項目を含んでおり、これら項目を調整することで、最終的に得られる半導体装置の形状が変化する。よって、上述した最適化装置1を用いれば、半導体装置が所望の形状となるように、最適な入力パラメータを選定できる。
上述した各実施形態で説明した最適化装置1及びシミュレーションシステム2の少なくとも一部は、ハードウェアで構成してもよいし、ソフトウェアで構成してもよい。ソフトウェアで構成する場合には、最適化装置1及びシミュレーションシステム2の少なくとも一部の機能を実現するプログラムをフレキシブルディスクやCD−ROM等の記録媒体に収納し、コンピュータに読み込ませて実行させてもよい。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。
また、最適化装置1及びシミュレーションシステム2の少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線(無線通信も含む)を介して頒布してもよい。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。
本開示の態様は、上述した個々の実施形態に限定されるものではなく、当業者が想到しうる種々の変形も含むものであり、本開示の効果も上述した内容に限定されない。すなわち、特許請求の範囲に規定された内容およびその均等物から導き出される本開示の概念的な思想と趣旨を逸脱しない範囲で種々の追加、変更および部分的削除が可能である。
1 最適化装置、2 シミュレーションシステム、3 シミュレータ、4 出力データ取得部、5 入出力データ記憶部、6 評価値算出部、6a 理想出力データ記憶部、6b 誤差算出部、6c 評価値置換部、6d 制約違反判定部、7 特徴量抽出部、8 入力パラメータ変換部、9 次入力パラメータ決定部、10 反復判定部、11 変換次元数入力部、12 デコード結果可視化部、13 変換次元数最適化部、14 重み入力部、15 評価関数内既知処理部

Claims (23)

  1. 第1の次元数の入力パラメータに基づいて実験又はシミュレーションを行うことにより得られる第2の次元数の出力データを取得する出力データ取得部と、
    前記入力パラメータと対応する前記出力データとを組にして記憶する入出力データ記憶部と、
    前記出力データの評価値を算出する出力する評価値算出部と、
    前記第2の次元数とは異なる第3の次元数の出力データ特徴量を抽出する特徴量抽出部と、
    前記入力パラメータから予測される前記出力データ特徴量に関する変換パラメータを生成する入力パラメータ変換部と、
    前記変換パラメータと対応する前記評価値とに基づいて、前記出力データ取得部で取得されるべき次の入力パラメータを決定する次入力パラメータ決定部と、
    所定の条件を満たすまで、前記出力データ取得部、前記入出力データ記憶部、前記評価値算出部、前記特徴量抽出部、前記入力パラメータ変換部、及び前記次入力パラメータ決定部の処理を繰り返す反復判定部と、を備える最適化装置。
  2. 前記特徴量抽出部は、前記第2の次元数よりも小さい前記第3の次元数の前記出力データ特徴量を抽出する、請求項1に記載の最適化装置。
  3. 前記第2の次元数は、前記第1の次元数より多く、
    前記第3の次元数は、前記第1の次元数と同一である、請求項2に記載の最適化装置。
  4. 前記特徴量抽出部は、前記出力データから前記出力データ特徴量を抽出する、請求項1乃至3のいずれか一項に記載の最適化装置。
  5. 前記特徴量抽出部は、前記出力データのうち、分散が最大化される次元を前記出力データ特徴量とする、請求項4に記載の最適化装置。
  6. 前記特徴量抽出部は、前記出力データのうち、独立性が最大の次元を前記出力データ特徴量とする、請求項4に記載の最適化装置。
  7. 前記特徴量抽出部は、入力層、中間層及び出力層を有するニューラルネットワークの前記入力層に前記出力データを入力し、前記入力層に入力される前記出力データと前記出力層から出力されるデータとの誤差が最小になるように、前記入力層、前記中間層及び前記出力層を繋ぐ各経路の重みを学習するとともに、前記中間層から出力されるデータを前記出力データ特徴量とする、請求項4に記載の最適化装置。
  8. 前記特徴量抽出部は、前記前記出力データと前記評価値とに基づいて、前記出力データ特徴量を抽出する、請求項1乃至3のいずれか一項に記載の最適化装置。
  9. 前記特徴量抽出部は、前記出力データから前記評価値を回帰する際の回帰係数のうち、所定の閾値を超える回帰係数に対応する次元を前記出力データ特徴量とする、請求項8に記載の最適化装置。
  10. 前記特徴量抽出部は、前記出力データから前記評価値をランダムフォレスト回帰して算出された前記出力データの重要度のうち、所定の閾値を超える重要度に対応する次元を前記出力データ特徴量とする、請求項8に記載の最適化装置。
  11. 前記所定の条件を満たしたときの前記入力パラメータを、最適な入力パラメータとして出力する最適パラメータ出力部を備える、請求項1乃至10のいずれか一項に記載の最適化装置。
  12. 前記入力パラメータ変換部は、前記特徴量抽出部が前記出力データ特徴量を予測するのに用いた関数に前記入力パラメータを与えて計算した値を前記変換パラメータとする、請求項1乃至11のいずれか一項に記載の最適化装置。
  13. 前記特徴量抽出部で抽出された前記出力データ特徴量を逆変換して生成された情報を可視化する可視化部を備える、請求項1乃至12のいずれか一項に記載の最適化装置。
  14. 前記次入力パラメータ決定部は、
    前記変換パラメータに基づいて獲得関数を生成する獲得関数生成部と、
    前記獲得関数が最大になるように前記次の入力パラメータを決定する獲得関数最大化部と、を有する、請求項1乃至13のいずれか一項に記載の最適化装置。
  15. 前記次入力パラメータ決定部は、
    前記変換パラメータと対応する前記評価値とについての、平均値及び分散に関する関係式に基づいて獲得関数を生成する獲得関数生成部と、
    前記獲得関数が最大になるように前記次の入力パラメータを決定する獲得関数最大化部と、を有する、請求項1乃至13のいずれか一項に記載の最適化装置。
  16. 前記変換パラメータから推定された評価値と前記評価値算出部で算出された評価値との誤差に基づいて、前記出力データ特徴量及び前記変換パラメータの変換次元数を決定する変換次元数最適化部を備える、請求項1乃至15のいずれか一項に記載の最適化装置。
  17. 前記評価値算出部は、
    前記出力データが制約に違反しているか否かを判定する制約違反判定部と、
    ある入力パラメータに対応する出力データが制約に違反していると判定された場合には、出力データが制約に違反していない他の入力パラメータに対応する評価値に置換する評価値置換部と、を有する、請求項1乃至16のいずれか一項に記載の最適化装置。
  18. 前記評価値置換部は、前記ある入力パラメータに対応する出力データが制約に違反していると判定された場合には、最大化したい評価値を前記他の入力パラメータの評価値の最小値に置換するか、又は最小化したい評価値を前記他の入力パラメータの評価値の最大値に置換する、請求項17に記載の最適化装置。
  19. 前記評価値算出部は、実験又はシミュレーションにより得られた前記出力データと理想の出力データとの誤差に基づいて前記評価値を算出する、請求項1乃至18のいずれか一項に記載の最適化装置。
  20. 前記評価値算出部は、前記出力データの各次元に対応する前記誤差の重みを前記誤差の履歴から決定する、請求項19に記載の最適化装置。
  21. 前記出力データの各次元に対応する前記誤差の重みを入力する重み入力部を備え、
    前記評価値算出部は、前記入力された重みに基づいて重みづけられた前記誤差に基づいて前記評価値を算出する、請求項19に記載の最適化装置。
  22. 前記評価値算出部が前記評価値を算出するために前記出力データに対して行う処理を、前記評価値算出部とは別個に行う既知処理実行部を備え、
    前記特徴量抽出部は、前記既知処理実行部で行われた処理結果に基づいて、前記出力データ特徴量を抽出する、請求項1乃至21のいずれか一項に記載の最適化装置。
  23. 第1の次元数の入力パラメータに基づいて実験又はシミュレーションを行うことにより得られる第2の次元数の出力データを取得し、
    前記入力パラメータと対応する前記出力データとを組にして入出力データ記憶部に記憶し、
    前記出力データの評価値を算出する出力し、
    前記第2の次元数とは異なる第3の次元数の出力データ特徴量を抽出し、
    前記入力パラメータから予測される前記出力データ特徴量に関する変換パラメータを生成し、
    前記変換パラメータと対応する前記評価値とに基づいて、取得されるべき次の入力パラメータを決定し、
    所定の条件を満たすまで、前記出力データを取得する処理と、前記入出力データ記憶部への記憶処理と、前記評価値を算出する処理と、前記出力データ特徴量を抽出する処理と、前記入力パラメータを変換する処理と、前記次の入力パラメータを決定する処理とを繰り返す最適化方法。
JP2020020048A 2020-02-07 2020-02-07 最適化装置及び最適化方法 Active JP7344149B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020020048A JP7344149B2 (ja) 2020-02-07 2020-02-07 最適化装置及び最適化方法
US17/014,759 US11847389B2 (en) 2020-02-07 2020-09-08 Device and method for optimizing an input parameter in a processing of a semiconductor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020020048A JP7344149B2 (ja) 2020-02-07 2020-02-07 最適化装置及び最適化方法

Publications (2)

Publication Number Publication Date
JP2021125136A true JP2021125136A (ja) 2021-08-30
JP7344149B2 JP7344149B2 (ja) 2023-09-13

Family

ID=77178768

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020020048A Active JP7344149B2 (ja) 2020-02-07 2020-02-07 最適化装置及び最適化方法

Country Status (2)

Country Link
US (1) US11847389B2 (ja)
JP (1) JP7344149B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115048886B (zh) * 2022-08-12 2022-11-01 阿里巴巴(中国)有限公司 设计参数调整方法、装置、电子设备和存储介质
CN115222752B (zh) * 2022-09-19 2023-01-24 之江实验室 基于特征解耦的病理图像特征提取器训练方法及装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5535134A (en) * 1994-06-03 1996-07-09 International Business Machines Corporation Object placement aid
US7313550B2 (en) * 2002-03-27 2007-12-25 Council Of Scientific & Industrial Research Performance of artificial neural network models in the presence of instrumental noise and measurement errors
JP2004070721A (ja) * 2002-08-07 2004-03-04 Renesas Technology Corp 自動配置配線装置
KR100545748B1 (ko) * 2002-08-09 2006-01-24 마쯔시다덴기산교 가부시키가이샤 반도체 집적회로 장치의 설계 방법 및 설계 장치
EP1598751B1 (en) * 2004-01-12 2014-06-25 Honda Research Institute Europe GmbH Estimation of distribution algorithm (EDA)
US7142991B2 (en) * 2005-03-31 2006-11-28 International Business Machines Corporation Voltage dependent parameter analysis
JP6687032B2 (ja) 2015-09-14 2020-04-22 ヤマハ株式会社 耳形状解析方法、頭部伝達関数生成方法、耳形状解析装置および頭部伝達関数生成装置
JP6709718B2 (ja) 2016-11-04 2020-06-17 日本電信電話株式会社 入力パラメータ探索装置、入力パラメータ探索方法、及び入力パラメータ探索プログラム
JP6757280B2 (ja) 2017-03-02 2020-09-16 日本電信電話株式会社 パラメータ出力装置、パラメータ出力方法及びプログラム
JP6668279B2 (ja) 2017-03-02 2020-03-18 日本電信電話株式会社 制御策解析装置、方法、及びプログラム
US10726325B2 (en) * 2017-04-13 2020-07-28 Adobe Inc. Facilitating machine-learning and data analysis by computing user-session representation vectors
US20190034802A1 (en) 2017-07-28 2019-01-31 Siemens Aktiengesellschaft Dimensionality reduction in Bayesian Optimization using Stacked Autoencoders
JPWO2019087987A1 (ja) * 2017-11-02 2020-11-12 日本電信電話株式会社 異常検知装置、異常検知方法、及びプログラム
US11409923B1 (en) * 2018-01-22 2022-08-09 Ansys, Inc Systems and methods for generating reduced order models
JP7061536B2 (ja) * 2018-08-09 2022-04-28 株式会社東芝 最適化装置、シミュレーションシステム及び最適化方法

Also Published As

Publication number Publication date
JP7344149B2 (ja) 2023-09-13
US20210248293A1 (en) 2021-08-12
US11847389B2 (en) 2023-12-19

Similar Documents

Publication Publication Date Title
WO2021068528A1 (zh) 基于卷积神经网络的注意力权重计算方法、装置及设备
CA3088899C (en) Systems and methods for preparing data for use by machine learning algorithms
JP7061536B2 (ja) 最適化装置、シミュレーションシステム及び最適化方法
JP5733229B2 (ja) 分類器作成装置、分類器作成方法、及びコンピュータプログラム
JP6514342B2 (ja) オンライン予測システムおよび方法
US8595155B2 (en) Kernel regression system, method, and program
JP2013143031A (ja) 予測方法、予測システムおよびプログラム
Chang et al. A forecasting model for small non-equigap data sets considering data weights and occurrence possibilities
JP7020547B2 (ja) 情報処理装置、制御方法、及びプログラム
CN113255842B (zh) 车辆置换预测方法、装置、设备及存储介质
JP6942900B1 (ja) 情報処理装置、情報処理方法及びプログラム
JP7344149B2 (ja) 最適化装置及び最適化方法
Chang et al. A latent information function to extend domain attributes to improve the accuracy of small-data-set forecasting
Zelikman et al. CRUDE: calibrating regression uncertainty distributions empirically
Williams et al. Sensing with shallow recurrent decoder networks
Sainsbury-Dale et al. Modelling Big, Heterogeneous, Non-Gaussian Spatial and Spatio-Temporal Data using FRK
KR20200092989A (ko) 아웃라이어 감지를 위한 비지도 파라미터 러닝을 이용한 생산용 유기체 식별
Striegel et al. A multifidelity function-on-function model applied to an abdominal aortic aneurysm
Sadouk et al. A novel cost‐sensitive algorithm and new evaluation strategies for regression in imbalanced domains
CN109728958B (zh) 一种网络节点信任预测方法、装置、设备及介质
JP7451935B2 (ja) 予測プログラム、予測方法及び予測装置
JP7168393B2 (ja) 情報処理装置、情報処理方法、プログラム及び記憶媒体
JP2020030702A (ja) 学習装置、学習方法及び学習プログラム
WO2023007848A1 (ja) データ解析方法、データ解析装置、及び、データ解析プログラム
WO2023085195A1 (ja) モデル生成装置、モデル生成方法及びデータ推定装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220701

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230704

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230718

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230804

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230901

R150 Certificate of patent or registration of utility model

Ref document number: 7344149

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150