内容紹介
連続最適化アルゴリズムの数理を、詳しく丁寧に解説!
連続最適化アルゴリズムとは、連続変数の関数についての数理最適化の問題で、適切な近似解を得るための計算手法のことです。古典的な数理計画の問題に限らず、近年ますます応用の広がりを見せている機械学習でも、その各種アルゴリズムにおいて数理最適化のさまざまな計算手法が駆使されています。
本書では、特に、二つの連続最適化に焦点を当て、詳しく丁寧に解説しました。一つ目は、微分不可能な凸関数の最適化、つまり、非平滑凸最適化です。ネットワーク資源割当や信号処理に現れる連続最適化は、非平滑凸最適化として表現ができます。二つ目は、微分可能ではあるが凸ではない関数の最適化、つまり、平滑非凸最適化です。深層学習に現れる連続最適化は、平滑非凸最適化として表現ができます。
また、この二つの最適化のための連続最適化アルゴリズムの性能を決定するステップサイズと呼ばれるパラメータの設定に着目し、その設定に関する理論と応用も詳解します。連続最適化問題の最適解へ進む方向(探索方向)が決まっているとき、その方向へ進む度合いを表すのがステップサイズです。
予備知識として、大学教養レベルの線形代数と微分積分のひととおりの知識を想定していますが、第2章で本書の通読に必要な知識をまとめ、読者の利便性を高めています。また、各種アルゴリズムの数学的背景となる定理は、本文中もしくは演習問題としてすべて載せています。さらに、アルゴリズムの実装に資するよう、Pythonのサンプルコードを用意し、ダウンロードできるようにしました。
このような方におすすめ
・理工学系、経済学系の学生および研究者
・実装に先立ち、連続最適化の理論について基本から理解したい学生、研究者、社会人
目次
主要目次
第1章 はじめに
第2章 数学的準備
第3章 連続最適化と関連する問題
第4章 反復法
第5章 平滑非凸最適化のための反復法
第6章 非平滑凸最適化のための反復法
第7章 不動点近似法
第8章 平滑非凸最適化のための深層学習最適化法
付録A 定理の証明と補足
付録B 演習問題解答例
参考文献
詳細目次
第1章 はじめに
1.1 連続最適化問題
1.2 連続最適化アルゴリズム
1.3 資源割当や機械学習に基づいたステップサイズ
第2章 数学的準備
2.1 ユークリッド空間の諸性質
1 ユークリッド空間
2 行列全体からなる集合
3 点列の収束性
2.2 微分可能性と平滑性
2.3 凸性
2.4 射影
2.5 非拡大写像
演習問題
第3章 連続最適化と関連する問題
3.1 連続最適化問題と最適解
3.2 制約なし平滑最適化問題
3.3 制約なし非平滑最適化問題
3.4 制約付き非平滑最適化問題
3.5 制約付き平滑最適化問題と変分不等式
3.6 不動点問題
演習問題
第4章 反復法
4.1 反復法の基本的概念
4.2 勾配法と降下方向
4.3 ステップサイズ
1 定数ステップサイズ
2 減少ステップサイズ
3 直線探索ステップサイズ
4 その他のステップサイズ
4.4 劣勾配法
4.5 近接点法
4.6 収束性と収束率
演習問題
第5章 平滑非凸最適化のための反復法
5.1 最急降下法(Lipschitz連続勾配)
5.2 最急降下法(非Lipschitz連続勾配)
5.3 Newton法
5.4 準Newton法
5.5 共役勾配法
5.6 数値例
演習問題
第6章 非平滑凸最適化のための反復法
6.1 射影劣勾配法
6.2 射影近接点法
6.3 近接勾配法
6.4 FISTA(高速近接勾配法)
6.5 資源割当問題
演習問題
第7章 不動点近似法
7.1 Krasnosel'skii-Mann不動点近似法
7.2 Halpern不動点近似法
7.3 POCS
7.4 不動点近似法の適用例
1 制約付き平滑凸最適化問題
2 凸実行可能問題
3 一般化凸実行可能集合
7.5 資源割当問題
演習問題
第8章 平滑非凸最適化のための深層学習最適化法
8.1 損失最小化問題
8.2 確率的勾配降下法(Lipschitz連続勾配)
8.3 確率的勾配降下法(非Lipschitz連続勾配)
8.4 モーメンタム法
8.5 適応手法(非Lipschitz連続勾配)
8.6 ミニバッチサイズの設定
8.7 ミニバッチサイズの推定
演習問題
付録A 定理の証明と補足
付録B 演習問題解答例
参考文献
索引
続きを見る