内容
連続最適化アルゴリズムの数理を、詳しく丁寧に解説!
連続最適化アルゴリズムとは、連続変数の関数についての数理最適化の問題で、適切な近似解を得るための計算手法のことです。古典的な数理計画の問題に限らず、近年ますます応用の広がりを見せている機械学習でも、その各種アルゴリズムにおいて数理最適化のさまざまな計算手法が駆使されています。
本書では、特に、二つの連続最適化に焦点を当て、詳しく丁寧に解説しました。一つ目は、微分不可能な凸関数の最適化、つまり、非平滑凸最適化です。ネットワーク資源割当や信号処理に現れる連続最適化は、非平滑凸最適化として表現ができます。二つ目は、微分可能ではあるが凸ではない関数の最適化、つまり、平滑非凸最適化です。深層学習に現れる連続最適化は、平滑非凸最適化として表現ができます。
また、この二つの最適化のための連続最適化アルゴリズムの性能を決定するステップサイズと呼ばれるパラメータの設定に着目し、その設定に関する理論と応用も詳解します。連続最適化問題の最適解へ進む方向(探索方向)が決まっているとき、その方向へ進む度合いを表すのがステップサイズです。
予備知識として、大学教養レベルの線形代数と微分積分のひととおりの知識を想定していますが、第2章で本書の通読に必要な知識をまとめ、読者の利便性を高めています。また、各種アルゴリズムの数学的背景となる定理は、本文中もしくは演習問題としてすべて載せています。さらに、アルゴリズムの実装に資するよう、Pythonのサンプルコードを用意し、ダウンロードできるようにしました。