書籍概要

CMA-ESによるブラックボックス最適化

著者
発売日
更新日

概要

ブラックボックス最適化は,関数の内部構造や勾配に依存せず,出力値のみに基づいてパラメータを調整する枠組みであり,科学・工学・産業の幅広い分野で活用されています。本書では,その中でも代表的なCovariance Matrix Adaptation Evolution Strategy(CMA-ES)を体系的に解説します。CMA-ESは優れた性能を誇る一方,研究の積み重ねによって段階的に発展してきたため,初心者が一から正しく理解するのは容易ではありません。本書の前半では,アルゴリズムの基本や設計指針を直感的にも理解できるよう解説し,後半では混合変数最適化や多目的最適化,ノイズを含む観測といった現実的な問題設定への応用を扱います。加えて,具体例や数値実験を通じて理解を深められるよう構成し,再現可能なPythonコードも公開しています。対象読者は,実務でパラメータチューニングに取り組む技術者や,CMA-ESを研究で扱う学生・研究者です。本書は,ブラックボックス最適化に取り組む読者にとって,これまでにない包括的なガイドとなることを目指しています。

こんな方におすすめ

  • 実問題へのCMA-ES の適用を検討している方
  • これからCMA-ESの研究に取り組もうとしている方

目次

第1章 ブラックボックス最適化

  • 1.1 問題設定
  • 1.2 CMA-ESの活躍する場面
  • 1.3 本書のゴールと構成

第2章 分布パラメータの更新則

  • 2.1 挙動の直感的理解
  • 2.2 多変量正規分布
  • 2.3 候補解のサンプリング
  • 2.4 平均ベクトルの更新
  • 2.5 共分散行列の更新
    • 2.5.1 Rank-μ更新
    • 2.5.2 Rank-one更新
  • 2.6 ステップサイズの更新
  • 2.7 CMA-ESのアルゴリズム
  • 2.8 ハイパーパラメータの設定
  • 2.9 Pythonによる実装例
    • 2.9.1 CMA-ESの簡易的なPython実装
    • 2.9.2 pycmaライブラリの利用例
    • 2.9.3 cmaesライブラリの利用例
  • 2.10 上下限制約の対処
  • 2.11 初期分布の設定方法

第3章 ベンチマークによる挙動解析

  • 3.1 ベンチマーク関数
  • 3.2 可視化指標
  • 3.3 実験結果と考察
    • 3.3.1 Sphere関数での実験結果
    • 3.3.2 Ellipsoid関数での実験結果
    • 3.3.3 Rosenbrock関数での実験結果
    • 3.3.4 Rastrigin関数での実験結果
    • 3.3.5 共分散行列適応の影響調査

第4章 設計原理

  • 4.1 不偏性
  • 4.2 不変性
    • 4.2.1 目的関数の狭義単調増加変換に対する不変性
    • 4.2.2 探索空間の座標変換に対する不変性
  • 4.3 自然勾配法
    • 4.3.1 確率緩和:x空間での最適化からθ空間での最適化へ
    • 4.3.2 ユークリッド空間からの脱却
    • 4.3.3 自然勾配
    • 4.3.4 自然勾配法とCMA-ESの接続
    • 4.3.5 情報幾何的最適化

第5章 高次元最適化

  • 5.1 CMA-ESの時間・空間計算量
  • 5.2 Sep-CMA-ES
    • 5.2.1 Sep-CMA-ESのアルゴリズム
    • 5.2.2 Sep-CMA-ESの長所と短所
  • 5.3 VD-CMA-ES
  • 5.4 共分散行列モデルと収束レートの関係
  • 5.5 実験結果と考察
    • 5.5.1 Sep-CMA-ESとVD-CMA-ESの比較
    • 5.5.2 低次元問題におけるCMA-ESとの比較
  • 5.6 より発展的な手法
  • 5.7 pycmaライブラリからの利用

第6章 学習率適応

  • 6.1 サンプルサイズ適応と学習率適応
  • 6.2 多峰性関数と学習率の関係
    • 6.2.1 x空間とθ空間での最適化
    • 6.2.2 自然勾配の観点からみた学習率の影響
  • 6.3 学習率適応法
    • 6.3.1 動的な学習率の重要性
    • 6.3.2 最適学習率
    • 6.3.3 LRA-CMA-ESの基本的な考え方
    • 6.3.4 SNRの推定
    • 6.3.5 学習率係数の適応
    • 6.3.6 局所座標系
    • 6.3.7 共分散行列の分解
    • 6.3.8 ステップサイズ補正
    • 6.3.9 全体の手順
  • 6.4 実験結果と考察
  • 6.5 cmaesライブラリからの利用
  • 6.6 実用上の注意

第7章 混合変数最適化

  • 7.1 問題設定
  • 7.2 CatCMA with Marginの概要
  • 7.3 連続・整数変数の最適化
    • 7.3.1 単純な離散化の問題点
    • 7.3.2 マージン補正
    • 7.3.3 連続・整数変数の同時最適化
  • 7.4 カテゴリカル変数への対処
  • 7.5 数値実験と性能評価
  • 7.6 cmaesライブラリからの利用

第8章 多目的最適化

  • 8.1 問題設定
  • 8.2 スカラー化法
    • 8.2.1 加重和スカラー化法
    • 8.2.2 Tchebycheffスカラー化法
  • 8.3 進化的多目的最適化法
    • 8.3.1 候補解のサンプリング
    • 8.3.2 ランキングの決定と上位解の選択
    • 8.3.3 個体の更新
  • 8.4 スカラー化法と進化的多目的最適化法の選択
  • 8.5 実験と考察
    • 8.5.1 ベンチマーク関数
    • 8.5.2 実験設定
    • 8.5.3 評価指標
    • 8.5.4 実験結果

サポート

現在サポート情報はありません。

商品一覧