Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7548440B2 - OPTIMIZATION METHOD, OPTIMIZATION DEVICE, AND PROGRAM - Google Patents
[go: Go Back, main page]

JP7548440B2 - OPTIMIZATION METHOD, OPTIMIZATION DEVICE, AND PROGRAM - Google Patents

OPTIMIZATION METHOD, OPTIMIZATION DEVICE, AND PROGRAM Download PDF

Info

Publication number
JP7548440B2
JP7548440B2 JP2023532878A JP2023532878A JP7548440B2 JP 7548440 B2 JP7548440 B2 JP 7548440B2 JP 2023532878 A JP2023532878 A JP 2023532878A JP 2023532878 A JP2023532878 A JP 2023532878A JP 7548440 B2 JP7548440 B2 JP 7548440B2
Authority
JP
Japan
Prior art keywords
black
box
optimization
optimization problem
learning
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.)
Active
Application number
JP2023532878A
Other languages
Japanese (ja)
Other versions
JPWO2023281579A1 (en
Inventor
具治 岩田
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.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
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 Nippon Telegraph and Telephone Corp, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2023281579A1 publication Critical patent/JPWO2023281579A1/ja
Application granted granted Critical
Publication of JP7548440B2 publication Critical patent/JP7548440B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N99/00Subject matter not provided for in other groups of this subclass

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、最適化方法、最適化装置、及びプログラムに関する。 The present invention relates to an optimization method, an optimization device, and a program.

ブラックボックス最適化とは、ある関数の出力値が最大(又は最小)となる入力値を見つける手法のことである。ここで、ブラックボックス最適化では関数の形が不明(つまり、目的関数がブラックボックス関数)であり、ある入力値に対する出力値を評価するのに時間を要することが多い。 Black-box optimization is a technique for finding the input value that maximizes (or minimizes) the output value of a function. In black-box optimization, the shape of the function is unknown (i.e., the objective function is a black-box function), and it often takes time to evaluate the output value for a given input value.

ブラックボックス最適化に用いられる代表的な手法として、ベイズ最適化が知られている(非特許文献1)。ベイズ最適化ではガウス過程と呼ばれる確率過程が用いられるが、複雑な関数をモデル化するためには、ニューラルネットワークに基づくカーネルが必要となる(非特許文献2)。Bayesian optimization is known as a representative method used in black-box optimization (Non-Patent Document 1). Bayesian optimization uses a stochastic process called a Gaussian process, but in order to model complex functions, a kernel based on a neural network is required (Non-Patent Document 2).

Snoek, J., Larochelle, H., & Adams, R. P. (2012). Practical Bayesian Optimization of Machine Learning Algorithms. Advances in Neural Information Processing Systems.Snoek, J., Larochelle, H., & Adams, R. P. (2012). Practical Bayesian Optimization of Machine Learning Algorithms. Advances in Neural Information Processing Systems. Wilson, A. G., Hu, Z., Salakhutdinov, R., & Xing, E. P. (2016, May). Deep kernel learning. In Artificial intelligence and statistics (pp. 370-378). PMLR.Wilson, A. G., Hu, Z., Salakhutdinov, R., & Xing, E. P. (2016, May). Deep kernel learning. In Artificial intelligence and statistics (pp. 370-378). PMLR.

しかしながら、ニューラルネットワークを学習するためには一般に大量の学習データが必要であるという問題がある。 However, a problem with training neural networks is that a large amount of training data is generally required.

本発明の一実施形態は、上記の点に鑑みてなされたもので、目的関数がブラックボックス関数である最適化問題を少量のデータで解くことを目的とする。 One embodiment of the present invention has been made in consideration of the above points, and aims to solve an optimization problem in which the objective function is a black-box function using a small amount of data.

上記目的を達成するため、一実施形態に係る最適化方法は、目的関数がブラックボックス関数であるブラックボックス最適化問題の解を算出する最適化方法であって、解の算出対象となる第1のブラックボックス最適化問題に関連する複数の第2のブラックボックス最適化問題の入力値と出力値で構成されるデータ集合を用いて、ブラックボックス最適化問題の入力値集合が与えられたときに前記入力値集合の中から次に評価すべき入力値を決定するためのモデルパラメータを学習する学習手順と、前記学習手順により学習されたモデルパラメータを用いて、前記第1のブラックボックス最適化問題の入力値集合の中から次に評価すべき入力値を決定する決定手順と、前記決定手順により決定された入力値を用いて、前記第1のブラックボックス最適化問題の出力値を評価する評価手順と、をコンピュータが実行する。In order to achieve the above object, an optimization method according to one embodiment is an optimization method for calculating a solution to a black-box optimization problem whose objective function is a black-box function, in which a computer executes the following steps: a learning procedure, using a data set consisting of input values and output values of a plurality of second black-box optimization problems related to a first black-box optimization problem for which a solution is to be calculated, to learn model parameters for determining an input value to be evaluated next from a set of input values for the black-box optimization problem when the set of input values for the black-box optimization problem is given; a determination procedure, using the model parameters learned by the learning procedure, to determine an input value to be evaluated next from the set of input values for the first black-box optimization problem; and an evaluation procedure, using the input value determined by the determination procedure to evaluate an output value for the first black-box optimization problem.

目的関数がブラックボックス関数である最適化問題を少量のデータで解くことができる。 Optimization problems whose objective function is a black-box function can be solved with a small amount of data.

本実施形態に係る最適化装置のハードウェア構成の一例を示す図である。FIG. 2 is a diagram illustrating an example of a hardware configuration of an optimization device according to the present embodiment. 本実施形態に係る最適化装置の機能構成の一例を示す図である。FIG. 2 is a diagram illustrating an example of a functional configuration of an optimization device according to the present embodiment. 従来手法との比較結果の一例を示す図である。FIG. 13 is a diagram showing an example of a comparison result with a conventional method.

以下、本発明の一実施形態について説明する。本実施形態では、目的関数がブラックボックス関数である最適化問題を対象として、目的の最適化問題に関連する複数の最適化問題のデータ集合が与えられたときに、目的の最適化問題をより少量のデータ集合で解くことができる最適化装置10について説明する。なお、目的関数がブラックボックス関数である最適化問題は、ブラックボックス最適化問題とも呼ばれる。 An embodiment of the present invention will be described below. In this embodiment, an optimization device 10 will be described that is capable of solving a target optimization problem with a smaller data set when a data set of multiple optimization problems related to the target optimization problem is given, with the optimization problem being targeted for an optimization problem whose objective function is a black-box function. Note that an optimization problem whose objective function is a black-box function is also called a black-box optimization problem.

ここで、或る最適化問題と他の最適化問題が関連するとは、例えば、同一又は類似の分野において同一又は類似の目的のために解かれる最適化問題等のことである。例えば、製造条件とそのときの製品の特性から所望の特性を持つ製品が得られる製造条件を求める最適化問題を考える場合、製品Aに関する最適化問題と、製品Aと機能的に類似する製品Bに関する最適化問題とは互いに関連する最適化問題であると言える。 Here, an optimization problem being related to another optimization problem means, for example, optimization problems that are solved for the same or similar purpose in the same or similar field. For example, when considering an optimization problem that determines manufacturing conditions that result in a product with desired characteristics from the manufacturing conditions and the characteristics of the product at that time, an optimization problem for product A and an optimization problem for product B that is functionally similar to product A can be said to be mutually related optimization problems.

本実施形態に係る最適化装置10には、所定のパラメータを学習するための学習時と、学習済みのパラメータを用いて目的の最適化問題を解く推論時(テスト時)とがある。The optimization device 10 of this embodiment has a learning period for learning specific parameters and an inference period (test period) for solving the target optimization problem using the learned parameters.

学習時には、目的の最適化問題に関連するS個の最適化問題のデータ集合群{D|s=1,・・・,S}が与えられる。ここで、D={(xsn,ysn)|n=1,・・・,N}はs番目の最適化問題のデータ集合であり、xsn∈Xはs番目の最適化問題のn番目の入力ベクトル、ysn=f(xsn)はそのときの出力値、f(・)はs番目の最適化問題のブラックボックス関数、Nはs番目の最適化問題の事例数(データ数)である。また、Xは入力ベクトル集合であり、例えば、入力ベクトルが製造条件である場合は製造条件として取り得るベクトル値の集合を表す。 During learning, a data set group { Ds |s=1,...,S} of S optimization problems related to the target optimization problem is given. Here, Ds ={( xsn , ysn )|n=1,..., Ns } is a data set of the sth optimization problem, xsn∈X is the nth input vector of the sth optimization problem, ysn = fs ( xsn ) is the output value at that time, fs (.) is the black box function of the sth optimization problem, and Ns is the number of cases (number of data) of the sth optimization problem. Also, X is an input vector set, and for example, when the input vector is a manufacturing condition, it represents a set of vector values that can be taken as the manufacturing condition.

推論時(テスト時)には、目的の最適化問題の入力ベクトル集合D={x*n|n=1,・・・,N}が与えられる。ここで、x*n∈Xは目的の最適化問題のn番目の入力ベクトルであり、Nは目的の最適化問題の入力ベクトル数である。NはΣと比較して非常に小さい値(例えば、あるNと同程度か、又はそれよりも小さい値)を想定するものとする。このとき、目的の最適化問題をできるだけ少ない評価回数で解くことが目的である。なお、評価とは、入力ベクトルに対して最適化問題の出力値を得ることである。 At the time of inference (test), a set of input vectors D * = {x *n |n = 1, ..., N * } for the target optimization problem is given. Here, x *n ∈ X is the n-th input vector for the target optimization problem, and N * is the number of input vectors for the target optimization problem. N * is assumed to be a very small value compared to ΣsNs (for example, a value equal to or smaller than a certain Ns ). At this time, the objective is to solve the target optimization problem with as few evaluations as possible. Note that evaluation means obtaining an output value of the optimization problem for the input vector.

以下では、目的の最適化問題のブラックボックス関数をf(・)、入力ベクトルx*nに対する出力値をy*n=f(x*n)とする。 In the following, the black-box function of the target optimization problem is denoted as f * (.), and the output value for an input vector x *n is denoted as y *n =f * (x *n ).

なお、最適化問題の目的関数(ブラックボックス関数)を評価できる仕組みがあれば、学習時のデータ集合群{D|s=1,・・・,S}や推論時の入力ベクトル集合Dが与えられていなくてもよい。この場合、入力ベクトルを生成し、その出力値を評価することで、本実施形態を同様に適用することが可能である。 If there is a mechanism for evaluating the objective function (black box function) of the optimization problem, the dataset group { Ds |s=1,...,S} during learning and the input vector set D * during inference do not need to be given. In this case, the present embodiment can be similarly applied by generating input vectors and evaluating their output values.

また、以下では、最適化問題として最大化問題を考えるものとする。最適化問題として最小化問題を考える場合は、出力値にマイナスをかけることで、本実施形態を同様に適用することが可能である。 In the following, a maximization problem is considered as the optimization problem. When a minimization problem is considered as the optimization problem, this embodiment can be similarly applied by multiplying the output value by a negative number.

<最適化装置10のハードウェア構成>
本実施形態に係る最適化装置10のハードウェア構成を図1に示す。図1に示すように、本実施形態に係る最適化装置10は一般的なコンピュータ又はコンピュータシステムのハードウェア構成で実現され、入力装置101と、表示装置102と、外部I/F103と、通信I/F104と、プロセッサ105と、メモリ装置106とを有する。これらの各ハードウェアは、それぞれがバス107により通信可能に接続される。
<Hardware Configuration of Optimization Device 10>
The hardware configuration of an optimization device 10 according to this embodiment is shown in Fig. 1. As shown in Fig. 1, the optimization device 10 according to this embodiment is realized by the hardware configuration of a general computer or computer system, and has an input device 101, a display device 102, an external I/F 103, a communication I/F 104, a processor 105, and a memory device 106. Each of these pieces of hardware are connected to each other via a bus 107 so as to be able to communicate with each other.

入力装置101は、例えば、キーボードやマウス、タッチパネル、各種物理ボタン等である。表示装置102は、例えば、ディスプレイや表示パネル等である。なお、最適化装置10は、例えば、入力装置101及び表示装置102のうちの少なくとも一方を有していなくてもよい。The input device 101 is, for example, a keyboard, a mouse, a touch panel, various physical buttons, etc. The display device 102 is, for example, a display, a display panel, etc. Note that the optimization device 10 does not have to have at least one of the input device 101 and the display device 102, for example.

外部I/F103は、記録媒体103a等の外部装置とのインタフェースである。最適化装置10は、外部I/F103を介して、記録媒体103aの読み取りや書き込み等を行うことができる。なお、記録媒体103aとしては、例えば、CD(Compact Disc)、DVD(Digital Versatile Disk)、SDメモリカード(Secure Digital memory card)、USB(Universal Serial Bus)メモリカード等が挙げられる。The external I/F 103 is an interface with an external device such as a recording medium 103a. The optimization device 10 can read and write data from and to the recording medium 103a via the external I/F 103. Examples of the recording medium 103a include a CD (Compact Disc), a DVD (Digital Versatile Disk), a SD memory card (Secure Digital memory card), and a USB (Universal Serial Bus) memory card.

通信I/F104は、最適化装置10を通信ネットワークに接続するためのインタフェースである。プロセッサ105は、例えば、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)等の各種演算装置である。メモリ装置106は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)、フラッシュメモリ、RAM(Random Access Memory)、ROM(Read Only Memory)等の各種記憶装置である。The communication I/F 104 is an interface for connecting the optimization device 10 to a communication network. The processor 105 is, for example, various arithmetic devices such as a CPU (Central Processing Unit) or a GPU (Graphics Processing Unit). The memory device 106 is, for example, various storage devices such as a HDD (Hard Disk Drive), an SSD (Solid State Drive), a flash memory, a RAM (Random Access Memory), a ROM (Read Only Memory), etc.

本実施形態に係る最適化装置10は、図1に示すハードウェア構成を有することにより、後述する各種処理を実現することができる。なお、図1に示すハードウェア構成は一例であって、最適化装置10は、例えば、複数のプロセッサ105を有していてもよいし、複数のメモリ装置106を有していてもよい。また、最適化装置10は、図1に示したハードウェア以外にも様々なハードウェアを有していてもよい。The optimization device 10 according to this embodiment has the hardware configuration shown in Fig. 1 and is therefore capable of implementing various processes described below. Note that the hardware configuration shown in Fig. 1 is merely an example, and the optimization device 10 may have, for example, multiple processors 105 or multiple memory devices 106. Furthermore, the optimization device 10 may have various other hardware in addition to the hardware shown in Fig. 1.

<最適化装置10の機能構成>
本実施形態に係る最適化装置10の機能構成を図2に示す。図2に示すように、本実施形態に係る最適化装置10は、モデル部201と、メタ学習部202と、評価部203とを有する。これら各部は、例えば、最適化装置10にインストールされた1以上のプログラムが、プロセッサ105に実行させる処理により実現される。
<Functional configuration of optimization device 10>
The functional configuration of the optimization device 10 according to this embodiment is shown in Fig. 2. As shown in Fig. 2, the optimization device 10 according to this embodiment has a model unit 201, a meta-learning unit 202, and an evaluation unit 203. Each of these units is realized, for example, by a process in which one or more programs installed in the optimization device 10 are executed by the processor 105.

また、本実施形態に係る最適化装置10は、記憶部204を有する。記憶部204は、例えば、HDDやSSD等の補助記憶装置により実現される。なお、記憶部204は、例えば、最適化装置10と通信ネットワークを介して接続される記憶装置等により実現されてもよい。 The optimization device 10 according to this embodiment also has a memory unit 204. The memory unit 204 is realized, for example, by an auxiliary storage device such as an HDD or SSD. Note that the memory unit 204 may also be realized, for example, by a storage device connected to the optimization device 10 via a communication network.

≪モデル部201≫
モデル部201は、入力ベクトルと出力値とのペアを用いて、次に評価すべき入力ベクトルを計算する。
<Model unit 201>
The model unit 201 uses pairs of input vectors and output values to calculate the next input vector to be evaluated.

まず、モデル部201は、最適化問題の目的関数を推定する。これは、例えば、ニューラルネットワークに基づくカーネルを利用したガウス過程を用いて推定することができる(非特許文献2参照)。ガウス過程では目的関数がガウス分布に従うと仮定し、入力ベクトルから目的関数を確率分布の形で推定する。このとき、入力ベクトルxにおける出力値はガウス分布に従い、その平均と分散は、First, the model unit 201 estimates the objective function of the optimization problem. This can be estimated, for example, using a Gaussian process that uses a kernel based on a neural network (see Non-Patent Document 2). In a Gaussian process, it is assumed that the objective function follows a Gaussian distribution, and the objective function is estimated from an input vector in the form of a probability distribution. At this time, the output value for the input vector x follows a Gaussian distribution, and its mean and variance are

Figure 0007548440000001
と推定される。ここで、Nstはs番目の最適化問題においてt回目までに評価された入力ベクトルの集合、
Figure 0007548440000001
where Nst is the set of input vectors evaluated up to the tth time in the sth optimization problem,

Figure 0007548440000002
は入力ベクトルxと評価済みの入力ベクトルx'との間のカーネル、
Figure 0007548440000002
is the kernel between the input vector x and the evaluated input vector x',

Figure 0007548440000003
は評価済みの入力ベクトル同士のカーネル行列、β>0はハイパーパラメータ、Ψはパラメータ(以下、Ψをモデルパラメータという。)である。また、カーネルは、
Figure 0007548440000003
is a kernel matrix between evaluated input vectors, β>0 is a hyperparameter, and Ψ is a parameter (hereinafter, Ψ is referred to as a model parameter). The kernel is

Figure 0007548440000004
で計算できる。ここで、g(・;Θ)はパラメータΘを持つニューラルネットワーク、αとηはカーネルパラメータ、δはクロネッカーのデルタ関数である。
Figure 0007548440000004
Here, g(·;Θ) is a neural network with parameter Θ, α and η are kernel parameters, and δ is the Kronecker delta function.

なお、最適化問題の目的関数の推定は、ニューラルネットワークに基づくカーネルを利用したガウス過程に限られず、パラメータを持つものであれば他の任意の手法が用いられてもよい。 In addition, the estimation of the objective function of the optimization problem is not limited to a Gaussian process using a kernel based on a neural network, and any other method having parameters may be used.

次に、モデル部201は、ベイズ最適化で利用される獲得関数を用いて、次に評価すべき度合を計算する。獲得関数としては、例えば、ガウス過程相互情報量、expected improvement、upper confidence bound等の任意の獲得関数を用いることが可能である。Next, the model unit 201 calculates the degree to be evaluated next using an acquisition function used in Bayesian optimization. As the acquisition function, any acquisition function such as Gaussian process mutual information, expected improvement, upper confidence bound, etc. can be used.

ガウス過程相互情報量を用いた場合、ある入力ベクトルxを次に評価すべき度合は、When using Gaussian process mutual information, the likelihood that an input vector x should be evaluated next is

Figure 0007548440000005
と計算できる。ここで、
Figure 0007548440000005
Here,

Figure 0007548440000006
であり、ν>0はハイパーパラメータである。
Figure 0007548440000006
where v>0 is a hyper-parameter.

≪メタ学習部202≫
メタ学習部202は、S個の最適化問題のデータ集合群{D|s=1,・・・,S}からモデルパラメータΨを学習する。モデルパラメータΨには、例えば、ニューラルネットワークg(・;Θ)のパラメータΘ、カーネルパラメータα及びη、獲得関数のパラメータが含まれる。
<Meta-learning unit 202>
The meta-learning unit 202 learns model parameters Ψ from a dataset group {D s |s=1, ..., S} of S optimization problems. The model parameters Ψ include, for example, the parameter Θ of the neural network g(·;Θ), the kernel parameters α and η, and the parameters of the acquisition function.

モデルパラメータΨを学習する際には、メタ学習部202は、モデルパラメータΨを初期化した上で、ある終了条件を満たすまで、モデルパラメータΨを用いてモデル部201によりS個の最適化問題を解いたときにギャップが小さくなるように、強化学習によりモデルパラメータΨを更新する。ギャップとは、各最適化問題において、その最適化問題の最大値と今まで評価した中で最も高い出力値との差である。なお、ギャップに限られず、最適化問題における出力値を評価可能なものであれば、他の評価尺度が用いられてもよい。When learning the model parameter Ψ, the meta-learning unit 202 initializes the model parameter Ψ, and then updates the model parameter Ψ by reinforcement learning until a certain termination condition is satisfied, so that the gap is small when S optimization problems are solved by the model unit 201 using the model parameter Ψ. The gap is the difference between the maximum value of each optimization problem and the highest output value evaluated so far. Note that it is not limited to the gap, and other evaluation measures may be used as long as they can evaluate the output value in the optimization problem.

≪評価部203≫
評価部203は、入力ベクトルに対して、目的の最適化問題の出力値を計算する。
<Evaluation unit 203>
The evaluation unit 203 calculates output values of a target optimization problem for an input vector.

≪記憶部204≫
記憶部204は、学習時には、S個の最適化問題のデータ集合群{D|s=1,・・・,S}と、学習済みでないモデルパラメータΨとを記憶する。一方で、推論時には、目的の最適化問題の入力ベクトル集合D={x*n|n=1,・・・,N}と、学習済みのモデルパラメータΨとを記憶する。
<Storage unit 204>
The storage unit 204 stores a data set group { Ds |s=1,...,S} of S optimization problems and unlearned model parameters Ψ during learning, while storing an input vector set D * ={x *n |n=1,...,N * } of a target optimization problem and learned model parameters Ψ during inference.

なお、図2は、学習時の処理と推論時の処理とを同一の最適化装置10が行う場合の機能構成例を示しているが、例えば、学習時の処理と推論時の処理とを異なる装置が行ってもよい。この場合、例えば、学習時の処理を行う装置(学習装置)はモデル部201とメタ学習部202と記憶部204を有していればよく、推論時の処理を行う装置(推論装置)はモデル部201と評価部203と記憶部204を有していればよい。2 shows an example of a functional configuration in which the same optimization device 10 performs the processing during learning and the processing during inference, but for example, different devices may perform the processing during learning and the processing during inference. In this case, for example, a device performing the processing during learning (learning device) may have only to have a model unit 201, a meta-learning unit 202, and a memory unit 204, and a device performing the processing during inference (inference device) may have only to have a model unit 201, an evaluation unit 203, and a memory unit 204.

<学習時の処理>
学習時における最適化装置10は、例えば、以下のStep11~Step13の処理を実行する。
<Learning process>
During learning, the optimization device 10 executes, for example, the following processes of Step 11 to Step 13.

Step11:メタ学習部202は、モデルパラメータΨを初期化する。なお、モデルパラメータΨは、例えば、ランダムな値に初期化する、ある分布からサンプリングされた値に初期化する等の既知の手法により初期化すればよい。Step 11: The meta-learning unit 202 initializes the model parameter Ψ. Note that the model parameter Ψ may be initialized by a known method, for example, by initializing to a random value or by initializing to a value sampled from a certain distribution.

Step12:各s∈{1,・・・,S}について、s番目の最適化問題のデータ集合D={(xsn,ysn)|n=1,・・・,N}を用いて以下のStep12-1~Step12-5を繰り返す。 Step 12: For each sε{1, . . . , S}, the following Steps 12-1 to 12-5 are repeated using a data set D s ={(x sn , y sn )|n=1, . . . , N s } of the sth optimization problem.

Step12-1:モデル部201は、t←0、Nst←φと初期化する。 Step 12-1: The model unit 201 initializes t←0 and N st ←φ.

Step12-2:モデル部201は、モデルパラメータΨと各入力ベクトルx∈{xsn|n=1,・・・,N}\Nstとを用いて、次に評価すべき入力ベクトルを計算する。すなわち、モデル部201は、上記の式(1)~式(3)を用いて上記の式(4)に示す度合a(x;Nst,Ψ)を計算し、その値が最も高い入力ベクトルxを次に評価すべき入力ベクトルとする。以下、次に評価すべき入力ベクトルをx'とする。 Step 12-2: The model unit 201 calculates the next input vector to be evaluated using the model parameter Ψ and each input vector xε{x sn |n=1, ..., N s }\N st . That is, the model unit 201 calculates the degree a(x; N st , Ψ) shown in the above formula (4) using the above formulas (1) to (3), and the input vector x with the highest value is set as the next input vector to be evaluated. Hereinafter, the input vector to be evaluated next is set as x'.

Step12-3:モデル部201は、t←t+1と更新すると共に、次に評価すべき入力ベクトルx'をNstに追加する。 Step 12-3: The model unit 201 updates t to t+1, and adds the next input vector x' to be evaluated to Nst .

Step12-4:メタ学習部202は、ギャップが小さくなるように、強化学習によりモデルパラメータΨを更新する。すなわち、メタ学習部202は、{ysn|n=1,・・・,N}の中の最大値と、Nstに含まれる入力ベクトルx'に対応する出力値f(x')の中の最大値との差が小さくなるように、強化学習によりモデルパラメータΨを更新する。なお、強化学習では、例えば、ギャップを負の報酬とし、累積報酬和を最大化するようにモデルパラメータΨを更新すればよい。 Step 12-4: The meta-learning unit 202 updates the model parameter Ψ by reinforcement learning so as to reduce the gap. That is, the meta-learning unit 202 updates the model parameter Ψ by reinforcement learning so as to reduce the difference between the maximum value in {y sn |n=1, ..., N s } and the maximum value in the output value f s (x') corresponding to the input vector x' included in N st . Note that in reinforcement learning, for example, the gap may be set as a negative reward, and the model parameter Ψ may be updated so as to maximize the cumulative reward sum.

Step12-5:メタ学習部202は、所定の第1の終了条件を満たすか否かを判定する。そして、当該第1の終了条件を満たさないと判定された場合はStep12-2に戻る。一方で、当該第1の終了条件を満たすと判定された場合は当該sに関するStep12-1~Step12-5の処理を終了する(つまり、この場合、次のsに関してStep12-1以降の処理が実行される。)。なお、第1の終了条件としては、例えば、モデルパラメータΨが収束したこと、当該sに関するStep12-1~Step12-5の繰り返し回数が所定の回数に達したこと等が挙げられる。 Step 12-5: The meta-learning unit 202 determines whether a predetermined first termination condition is satisfied. If it is determined that the first termination condition is not satisfied, the process returns to Step 12-2. On the other hand, if it is determined that the first termination condition is satisfied, the process of Step 12-1 to Step 12-5 for that s is terminated (that is, in this case, the process of Step 12-1 and subsequent steps is executed for the next s). Note that examples of the first termination condition include the model parameter Ψ having converged, or the number of repetitions of Step 12-1 to Step 12-5 for that s having reached a predetermined number.

Step13:最後に、メタ学習部202は、学習済みのモデルパラメータΨを記憶部204に保存する。 Step 13: Finally, the meta-learning unit 202 stores the learned model parameters Ψ in the memory unit 204.

<推論時の処理>
推論時における最適化装置10は、例えば、以下のStep21~Step24の処理を実行する。なお、推論時ではs=*とする。
<Processing during inference>
During inference, the optimization device 10 executes, for example, the following processes of Step 21 to Step 24. Note that during inference, s=*.

Step21:モデル部201は、t←0、N*t←φと初期化する。 Step 21: The model unit 201 initializes t←0 and N *t ←φ.

Step22:モデル部201は、学習済みのモデルパラメータΨと各入力ベクトルx∈D={x*n|n=1,・・・,N}\N*tとを用いて、次に評価すべき入力ベクトルを計算する。すなわち、モデル部201は、上記の式(1)~式(3)を用いて上記の式(4)に示す度合a(x;N*t,Ψ)を計算し、その値が最も高い入力ベクトルxを次に評価すべき入力ベクトルとする。以下、次に評価すべき入力ベクトルをx'=x*n'とする。 Step 22: The model unit 201 calculates the next input vector to be evaluated using the trained model parameter Ψ and each input vector x∈D * ={x *n |n=1,...,N * }\N *t . That is, the model unit 201 calculates the degree a(x;N *t ,Ψ) shown in the above formula (4) using the above formulas (1) to (3), and the input vector x with the highest value is set as the next input vector to be evaluated. Hereinafter, the input vector to be evaluated next is set as x'=x *n' .

Step23:評価部203は、y*n'=f(x')=f(x*n')を計算する。 Step 23: The evaluation unit 203 calculates y *n' =f * (x')=f * (x *n' ).

Step24:モデル部201は、t←t+1と更新すると共に、次に評価すべき入力ベクトルx'をN*tに追加する。 Step 24: The model unit 201 updates t to t+1, and adds the next input vector x' to be evaluated to N *t .

Step25:評価部203は、所定の第2の終了条件を満たすか否かを判定する。そして、当該第2の終了条件を満たさないと判定された場合はStep22に戻る。これにより、当該第2の終了条件が満たされるまで、上記のStep22~Step25が繰り替えされる。一方で、当該第2の終了条件を満たすと判定された場合は、N*tに含まれる入力ベクトルx'に対応する出力値f(x')の中の最大値ymaxとその最大値を与える入力ベクトルxmax∈N*tとを出力する。なお、第2の終了条件としては、例えば、t=Nとなったこと等が挙げられる。 Step 25: The evaluation unit 203 judges whether or not a predetermined second termination condition is satisfied. If it is judged that the second termination condition is not satisfied, the process returns to Step 22. As a result, Step 22 to Step 25 are repeated until the second termination condition is satisfied. On the other hand, if it is judged that the second termination condition is satisfied, the maximum value y max among the output values f * (x') corresponding to the input vector x' included in N *t and the input vector x max ∈N *t that gives the maximum value are output. Note that, for example, the second termination condition may be that t=N * .

<従来手法との比較>
以下、本実施形態に係る最適化装置10と従来手法とを比較した結果を図3に示す。図3では評価指標としてテストギャップを用いた。テストギャップとは、テスト時にも学習時と同様に、入力ベクトルと出力値とのペアのデータ集合D={(x*n,y*n)|n=1,・・・,N}を用いて計算したギャップのことである。
<Comparison with conventional methods>
The results of comparing the optimization device 10 according to this embodiment with the conventional method are shown in Fig. 3. In Fig. 3, the test gap is used as the evaluation index. The test gap is the gap calculated during testing, as during learning, using a data set D * = {(x *n , y *n ) | n = 1, ..., N * } of pairs of input vectors and output values.

図3では縦軸をギャップの値、横軸を学習回数とした。また、Oursは本実施形態に係る最適化装置10、DKLは深層カーネル学習を用いたガウス過程、GPはガウスカーネルを用いたガウス過程、RLはモデルとしてフィードフォワードニューラルネットワークを用いた強化学習、MetaBOはメタ学習ベイズ最適化、Randomはランダムに評価点を選ぶ手法である。 In Figure 3, the vertical axis indicates the gap value, and the horizontal axis indicates the number of learning iterations. Furthermore, Ours is the optimization device 10 according to this embodiment, DKL is a Gaussian process using deep kernel learning, GP is a Gaussian process using a Gaussian kernel, RL is reinforcement learning using a feedforward neural network as a model, MetaBO is meta-learning Bayesian optimization, and Random is a method of randomly selecting evaluation points.

図3に示されるように、本実施形態に係る最適化装置10(Ours)は、従来手法と比較してより低いギャップを達成していることがわかる。As shown in Figure 3, it can be seen that the optimization device 10 (Ours) of this embodiment achieves a lower gap compared to conventional methods.

<まとめ>
以上のように、本実施形態に係る最適化装置10は、目的関数がブラックボックス関数である最適化問題を対象として、目的の最適化問題に関連する複数の最適化問題の知見を活かすことで、この目的の最適化問題の解をより少量のデータ集合で解くことができる(言い換えれば、より早く最適解を見つけることができる。)。このため、本実施形態に係る最適化装置10を用いることで、目的の最適化問題に関しては少量のデータ集合しか得られない場合であっても、その最適解を得ることが可能となる。
<Summary>
As described above, the optimization device 10 according to the present embodiment targets an optimization problem whose objective function is a black-box function, and by utilizing knowledge of a plurality of optimization problems related to the target optimization problem, the optimization device 10 can solve the solution of the target optimization problem with a smaller data set (in other words, can find an optimal solution more quickly). Therefore, by using the optimization device 10 according to the present embodiment, it is possible to obtain an optimal solution to the target optimization problem even when only a small data set is available for the target optimization problem.

なお、本実施形態に係る最適化装置10は、一般にブラックボックス最適化が用いられる様々な応用に適用することが可能である。このような応用としては、例えば、所望の特性を持つ製品や化学物質、材料等の製造条件等を求める場合、所定の予測値を出力する機械学習モデルのハイパーパラメータのチューニング等が挙げられる。The optimization device 10 according to this embodiment can be applied to various applications in which black-box optimization is generally used. Examples of such applications include tuning hyperparameters of a machine learning model that outputs a predetermined predicted value when determining manufacturing conditions for a product, chemical substance, material, etc. with desired characteristics.

本発明は、具体的に開示された上記の実施形態に限定されるものではなく、請求の範囲の記載から逸脱することなく、種々の変形や変更、既知の技術との組み合わせ等が可能である。The present invention is not limited to the specifically disclosed embodiments above, and various modifications, variations, and combinations with known technologies are possible without departing from the scope of the claims.

10 最適化装置
101 入力装置
102 表示装置
103 外部I/F
103a 記録媒体
104 通信I/F
105 プロセッサ
106 メモリ装置
107 バス
201 モデル部
202 メタ学習部
203 評価部
204 記憶部
10 Optimization device 101 Input device 102 Display device 103 External I/F
103a Recording medium 104 Communication I/F
105 Processor 106 Memory device 107 Bus 201 Model unit 202 Meta-learning unit 203 Evaluation unit 204 Storage unit

Claims (7)

目的関数がブラックボックス関数であるブラックボックス最適化問題の解を算出する最適化方法であって、
解の算出対象となる第1のブラックボックス最適化問題に関連する複数の第2のブラックボックス最適化問題の入力値と出力値で構成されるデータ集合を用いて、ブラックボックス最適化問題の入力値集合が与えられたときに前記入力値集合の中から次に評価すべき入力値を決定するためのモデルパラメータを学習する学習手順と、
前記学習手順により学習されたモデルパラメータを用いて、前記第1のブラックボックス最適化問題の入力値集合の中から次に評価すべき入力値を決定する決定手順と、
前記決定手順により決定された入力値を用いて、前記第1のブラックボックス最適化問題の出力値を評価する評価手順と、
をコンピュータが実行する最適化方法。
1. An optimization method for computing a solution to a black-box optimization problem in which an objective function is a black-box function, comprising the steps of:
a learning procedure for learning model parameters for determining a next input value to be evaluated from a set of input values for a black-box optimization problem, when the set of input values for the black-box optimization problem is given, using a data set consisting of input values and output values for a plurality of second black-box optimization problems related to the first black-box optimization problem to be solved;
a determination step of determining a next input value to be evaluated from a set of input values of the first black-box optimization problem using the model parameters learned by the learning step;
an evaluation step for evaluating an output value of the first black-box optimization problem using input values determined by the determination step;
The computer performs the optimization method.
前記最適化方法は、
前記決定手順による入力値の決定と、前記評価手順による出力値の評価とを繰り返すことで、前記第1のブラックボックス最適化問題の解を算出する、請求項1に記載の最適化方法。
The optimization method comprises:
2. The optimization method according to claim 1, further comprising the step of: iterating the determination of input values by the determination procedure and the evaluation of output values by the evaluation procedure to calculate a solution to the first black-box optimization problem.
前記モデルパラメータには、ガウス過程に用いられるカーネルに含まれるニューラルネットワークのパラメータと、前記カーネルのパラメータと、ベイズ最適化に用いられる獲得関数のパラメータとが含まれ、
前記決定手順は、
前記カーネルを用いたガウス過程により前記第1のブラックボックス最適化問題の目的関数を推定し、
推定した前記目的関数が従うガウス分布に基づいて、前記第1のブラックボックス最適化問題の入力値集合に含まれる未評価の入力値を次に評価すべき度合を前記獲得関数により算出し、
前記度合が最も高い入力値を次に評価すべき入力値として決定する、請求項1又は2に記載の最適化方法。
the model parameters include parameters of a neural network included in a kernel used in a Gaussian process, parameters of the kernel, and parameters of an acquisition function used in Bayesian optimization;
The determination procedure includes:
estimating an objective function of the first black-box optimization problem by a Gaussian process using the kernel;
calculating, based on a Gaussian distribution to which the estimated objective function follows, a degree to which an unevaluated input value included in an input value set of the first black-box optimization problem should be evaluated next using the acquisition function;
3. The optimization method according to claim 1, further comprising determining the input value having the highest degree as the next input value to be evaluated.
前記獲得関数は、ガウス過程相互情報量、expected improvement、又はupper confidence boundのいずれかである、請求項3に記載の最適化方法。 The optimization method of claim 3, wherein the acquisition function is one of Gaussian process mutual information, expected improvement, or upper confidence bound. 前記学習手順は、
前記第2のブラックボックス最適化問題ごとに、前記第2のブラックボックス最適化問題の出力値の最大値と、学習中のモデルパラメータを用いて前記決定手順により今までに決定された入力値に対応する出力値の最大値との差が小さくなるように、強化学習により前記モデルパラメータを学習する、請求項1乃至4の何れか一項に記載の最適化方法。
The learning procedure includes:
5. The optimization method according to claim 1, further comprising: learning the model parameters by reinforcement learning so that, for each of the second black-box optimization problems, a difference between a maximum value of an output value of the second black-box optimization problem and a maximum value of an output value corresponding to an input value determined so far by the determination procedure using the model parameters being trained becomes small.
目的関数がブラックボックス関数であるブラックボックス最適化問題の解を算出する最適化装置であって、
解の算出対象となる第1のブラックボックス最適化問題に関連する複数の第2のブラックボックス最適化問題の入力値と出力値で構成されるデータ集合を用いて、ブラックボックス最適化問題の入力値集合が与えられたときに前記入力値集合の中から次に評価すべき入力値を決定するためのモデルパラメータを学習する学習部と、
前記学習部により学習されたモデルパラメータを用いて、前記第1のブラックボックス最適化問題の入力値集合の中から次に評価すべき入力値を決定する決定部と、
前記決定部により決定された入力値を用いて、前記第1のブラックボックス最適化問題の出力値を評価する評価部と、
を有する最適化装置。
An optimization device for calculating a solution to a black-box optimization problem in which an objective function is a black-box function, comprising:
a learning unit that uses a data set consisting of input values and output values of a plurality of second black-box optimization problems related to the first black-box optimization problem to be solved, to learn model parameters for determining an input value to be evaluated next from a set of input values for a black-box optimization problem when the set of input values for the black-box optimization problem is given; and
a determination unit that determines an input value to be next evaluated from a set of input values of the first black-box optimization problem using the model parameters learned by the learning unit;
an evaluation unit that evaluates an output value of the first black-box optimization problem using the input values determined by the determination unit;
An optimization device having the above configuration.
コンピュータに、請求項1乃至5の何れか一項に記載の最適化方法を実行させるプログラム。A program for causing a computer to execute the optimization method according to any one of claims 1 to 5.
JP2023532878A 2021-07-05 2021-07-05 OPTIMIZATION METHOD, OPTIMIZATION DEVICE, AND PROGRAM Active JP7548440B2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/025315 WO2023281579A1 (en) 2021-07-05 2021-07-05 Optimization method, optimization device, and program

Publications (2)

Publication Number Publication Date
JPWO2023281579A1 JPWO2023281579A1 (en) 2023-01-12
JP7548440B2 true JP7548440B2 (en) 2024-09-10

Family

ID=84801461

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023532878A Active JP7548440B2 (en) 2021-07-05 2021-07-05 OPTIMIZATION METHOD, OPTIMIZATION DEVICE, AND PROGRAM

Country Status (2)

Country Link
JP (1) JP7548440B2 (en)
WO (1) WO2023281579A1 (en)

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
河野慎 ほか,"Neural Processによるメタ学習にもとづくベイズ最適化",人工知能学会全国大会論文集 第34回全国大会(2020),一般社団法人人工知能学会,2020年,p. 1-4
白石竜也 ほか,"パーシステント図に対するカーネルを用いたベイズ最適化",人工知能学会全国大会論文集 第33回全国大会(2019),一般社団法人人工知能学会,2019年,p. 1-4
遠藤ルッカス良 ほか,"感性評価に基づく最適化に対するクラウドソーシングの適用",一般社団法人人工知能学会第31回全国大会論文集DVD,一般社団法人人工知能学会,2017年,p. 1-4

Also Published As

Publication number Publication date
JPWO2023281579A1 (en) 2023-01-12
WO2023281579A1 (en) 2023-01-12

Similar Documents

Publication Publication Date Title
CN110084368B (en) Systems and methods for regularizing neural networks
Kiaee et al. Relevance vector machine for survival analysis
CN113168559A (en) Automated generation of machine learning models
CN110598842A (en) Deep neural network hyper-parameter optimization method, electronic device and storage medium
US20200265307A1 (en) Apparatus and method with multi-task neural network
CN109754078A (en) Methods for optimizing neural networks
JP7283065B2 (en) Estimation device, optimization device, estimation method, optimization method, and program
US11574153B2 (en) Identifying organisms for production using unsupervised parameter learning for outlier detection
US20220156508A1 (en) Method For Automatically Designing Efficient Hardware-Aware Neural Networks For Visual Recognition Using Knowledge Distillation
US20190311258A1 (en) Data dependent model initialization
CN108108769B (en) Data classification method, device and storage medium
JP2019095894A (en) Estimating device, learning device, learned model, estimation method, learning method, and program
JP7548440B2 (en) OPTIMIZATION METHOD, OPTIMIZATION DEVICE, AND PROGRAM
JP6743902B2 (en) Multitask relationship learning system, method and program
JP5017941B2 (en) Model creation device and identification device
JP2017220001A (en) Prediction device, prediction method, and program
JP7575008B2 (en) Control method, control device, and program
JP7505555B2 (en) Learning device, learning method, and program
JP7251643B2 (en) LEARNING DEVICE, LEARNING METHOD AND PROGRAM
CN117576496A (en) A training method and image recognition method for an image binary classification model
CN118037797A (en) Method and electronic device for depth information estimation
JP7477859B2 (en) Calculator, calculation method and program
JP7761166B2 (en) Meta-learning method, meta-learning device, and program
JP7501780B2 (en) Learning method, estimation method, learning device, estimation device, and program
JP7448023B2 (en) Learning methods, learning devices and programs

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231213

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20240701

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: 20240730

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240812

R150 Certificate of patent or registration of utility model

Ref document number: 7548440

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350