書評

『スタンフォード ベクトル・行列からはじめる最適化数学 』 ステファン・ボイド + リーヴェン・ヴァンデンベルグ(著), 玉木徹(訳)

2022年02月09日

奥野 貴之

おくの たかゆき

国立研究開発法人理化学研究所

本書は, 名著”Convex Optimization, Cambridge University Press(2004)”の著者であるステファン・ボイド(Stephen Boyd)とリーヴェン・ヴァンデンベルグ(Lieven Vandenberghe)による”Introduction to Applied Linear Algebra: Vectors, Matrices, and Least Squares”の邦訳である. 原書の表題を直訳すれば「応用線形代数入門:ベクトル・行列から最小2乗問題まで」であり, 最適化数学という語はそこに登場しない. 実際, 本書は一般的な最適化問題に関する解説を意図したものではない. 最適化の話は後半部に集中しており, そこでは最小2乗問題とその様々なバリエーションの性質とそれを数値的に解くための最適化アルゴリズムに特化して解説がなされている. しかし, 邦題からわかるように応用分野の研究者や学生の連続最適化への入門書として適切であろう. 本書では拡張ラグランジュなどの連続最適化アルゴリズムやカルーシュ・クーン・タッカー条件は最小2乗問題に特化した形で紹介されているものの, 一般の非線形最適化問題へは容易に拡張することができる. また最適化アルゴリズムの仕様と目的を直観的にわかりやすく説明している.

本書の構成は3部19章と付録から構成されている. 各章の末尾には演習問題が用意されている. 最初の2部は線形代数のパートであり, 第Ⅲ部では, 最小2乗問題とその具体的応用, そしてそれを解くためのアルゴリズムをわかりやすく解説している. 以下, 各部について説明する.

第Ⅰ部では, ベクトルの導入から始まって, 線形独立性の導入まで行っている. その中で第1章はベクトルの定義, スカラー倍, 内積の定義を行い, 途中にベクトルで表現できるものとしてキャッシュフローやポートフォリオなど数多くの具体的な概念を挙げている. 第2章では1次関数の導入と具体的なデータを用いた回帰モデルの紹介を行っている. 第3章ではノルムと距離の説明を行い, 第4章ではクラスタリングの代表的手法であるk平均法を説明している.  第5章では, 線形独立性を扱い, 与えられたベクトルから正規直交基底を生成するためのグラムシュミットの直交化法の説明を行っている.

第Ⅱ部では, 第6章で行列を導入し, 行列の和, 転置やスカラー積, 行列ベクトル積などの基本的な操作の説明を行っている. 同章では, 行列で表現できる実例として, グレースケール画像や降水量データなどが紹介されている. 7章では各分野に現れる特別なクラスの行列を紹介しており, たとえばネットワークに現れる接続行列や畳み込みで現れるテプリッツ行列, そしてそれらの諸性質について述べている. 8章では, 連立線形方程式を, 9章では, 行列ベクトル積で表現できる例として, 線形動的システムを導入し, それが出現する人口動態モデルや感染症モデルなどを説明している. 10章と11章で行列積と逆行列の導入を行っており, その中で連立線形方程式のQR分解による解法について計算量を含めて詳しく説明を行っている.

第Ⅲ部では, 12章で線形な最小2乗問題について解説し, 最小2乗問題として定式化できる実問題を複数紹介している. たとえば, 広告費の予算配分などである. 13章では, 最小2乗法の最も重要な応用のひとつである連続値をとるデータフィッティングについて詳しく説明をしている. この手法を用いる具体的場面を単に紹介するだけではなく, 最小2乗問題の解から作成したモデルの検証において重要となるホールドアウト検証や交差検証について解説を行っている. 14章では, 離散値をとるデータに対するフィッティングについて解説を行っており, 2クラス識別器や多クラス識別器の構成における最⼩2乗法の使い⽅について説明を⾏っている. 15章では, 複数の2乗関数を同時に最適化する, 所謂多目的最小2乗問題とその逆問題における実用性について解説を行っている. 16,17章は線形等式制約をもつ最小2乗問題とその重要な応用先であるポートフォリオ最適化を解説している. 16章では, それらに対する解法としてラグランジュの未定乗数法の解説を行っている. 18章以降は非線形関数の最小2乗問題とその応用の解説である. 数値解法として, 制約がない場合はレーベンバーグ・マーカート法を, そして⾮線形等式制約が付いた場合に対しては拡張ラグランジュ法を解説している.

本書の線形代数パートは信号処理や画像処理, そして機械学習などにおける具体的な応用例が豊富である. 例えば,  10.3節には有向グラフの道の数を接続行列のべき乗の要素として解釈する事例が記されており, 筆者にとっては大変興味深かった. このように一通り線形代数を学んだものでも新たな発見がきっとあるはずである. そして, 本書の最適化パートの価値については言うまでもない. 機械学習や統計で現れる重要な最適化問題の多くは最小2乗問題であり, これを解く最適化アルゴリズムの動きや原理を具体的な数値例を交えて直観的にわかりやすく説明した本書は大変有用である.

近年, 機械学習分野をはじめとした多くの分野で零成分が多い解を得る最適化手法が重要視されている. そこでは, 最小2乗問題に微分不可能な正則化項を加えた最適化問題が解かれている. 残念ながら, それは本書の範囲外ではあるものの, 近い将来に原著者らによって明快な説明が加えられた改訂版が出版されたならば, 筆者は是非一読したい.