plot
ベイズ最適化の結果のプロット
説明
例
最適化後のプロット
この例では、最適化の完了後に誤差モデルと最良の目的関数のトレースをプロットする方法を示します。この例の目的関数はノルムが 2 より大きい点でエラーをスローします。
function f = makeanerror(x)
f = x.x1 - x.x2 - sqrt(4-x.x1^2-x.x2^2);
fun = @makeanerror;
最適化用の変数を作成します。
var1 = optimizableVariable('x1',[-5,5]); var2 = optimizableVariable('x2',[-5,5]); vars = [var1,var2];
プロットを行わずに最適化を実行します。再現性を得るために、乱数シードを設定し、'expected-improvement-plus' の獲得関数を使用します。誤差モデルに十分に学習をさせるため、60 回の反復で最適化します。
rng default results = bayesopt(fun,vars,'MaxObjectiveEvaluations',60,... 'AcquisitionFunctionName','expected-improvement-plus',... 'PlotFcn',[],'Verbose',0);
誤差モデルと最良の目的関数のトレースをプロットします。
plot(results,@plotConstraintModels,@plotMinObjective)
入力引数
results
— ベイズ最適化の結果
BayesianOptimization
オブジェクト
ベイズ最適化の結果。BayesianOptimization
オブジェクトを指定します。
plotFcn
— プロット関数
関数ハンドル
プロット関数。関数ハンドルを指定します。
いくつかの組み込みプロット関数があります。
モデル プロット — D ≤ 2 の場合に適用 | 説明 |
---|---|
@plotAcquisitionFunction | 獲得関数の表面をプロットします。 |
@plotConstraintModels | 各制約モデルの表面をプロットします。負の値は実行可能点を示します。 P (実行可能) 表面もプロットします。 存在する場合は Plotted error = 2*Probability(error) – 1. |
@plotObjectiveEvaluationTimeModel | 目的関数の評価時間モデルの表面をプロットします。 |
@plotObjectiveModel |
|
トレース プロット — すべての D に適用 | 説明 |
---|---|
@plotObjective | 観測された各関数値と関数評価の個数の関係をプロットします。 |
@plotObjectiveEvaluationTime | 観測された各関数評価の実行時間と関数評価の個数の関係をプロットします。 |
@plotMinObjective | 観測および推定された最小の関数値と関数評価の個数の関係をプロットします。 |
@plotElapsedTime | 最適化の合計経過時間、関数評価の合計時間、モデリングおよび点選択の合計時間という 3 つの曲線を関数評価の個数に対する関係としてプロットします。 |
独自のプロット関数に対するハンドルを含めることができます。詳細は、ベイズ最適化のプロット関数を参照してください。
例: @plotObjective
データ型: function_handle
代替機能
bayesopt
の名前と値のペア PlotFcn
でプロット関数を指定できます。これにより、最適化の進行状況を監視できます。
バージョン履歴
R2016b で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)