スパースモデリング 基礎から動的システムへの応用

スパースモデリング - 基礎から動的システムへの応用 -

スパースモデリングの基本的な考え方から最新の研究成果である動的スパースモデリングの計算までを解説した本邦初の専門書。

ジャンル
発行年月日
2017/10/31
判型
A5
ページ数
220ページ
ISBN
978-4-339-03222-2
  • 内容紹介
  • まえがき
  • 目次
  • レビュー
  • 著者紹介

本書は,スパースモデリングの基本的な考え方から最新の研究成果である動的スパースモデリングの計算までをわかりやすく解説した本邦初の専門書。スパースモデリングを実際に試すMATLABコードを掲載しているのが特徴。

本書はスパースモデリング(sparse modeling)の基礎とその動的システムへの応用について,わかりやすく解説した専門書である。大学の初年度に習う線形代数の知識と数値計算ソフトウェアMATLABの使い方を知っていれば,スパースモデリングの基本的な考え方から,最新の研究成果である動的スパースモデリングの計算まで,短期間で学ぶことができるだろう。特に動的スパースモデリングに関する書籍は,世界的に見ても本書が初である。

理工系で成功するための最も重要なスキルは,情報を受信するアンテナの感度をつねに高くして,国内外でどのような理論や技術が話題になりつつあるかを捉えることである。現在,データ科学や人工知能が全世界的なブームであることは,そのようなアンテナがなくても容易にわかるだろう。しかし,もっと注意深くこのブームの背景を見てみると,スパース性に関係する技術が大きく関与していることに気付く。スパースモデリングやスパースコーディング(sparse coding),スパース最適化(sparse optimization),圧縮センシング(compressed sensing)などがスパース性に関係する技術である。アンテナ感度の高い研究者やエンジニアたちは,ブームになる前にこのような技術に着目し,いち早く自分の研究開発分野に取り込んで,先取権を獲得する。世の中の科学技術の多くはこのようにして発展してきた。スパースモデリングの産業応用はまだ始まったばかりである。ぜひ本書でスパースモデリングを勉強して,あなたの分野に新しい研究・開発の風を吹かせてほしい。

最近の人工知能の発展(第3次ブーム)により,人工知能はたいへん身近な存在となった。特に,音声および画像の認識や分類,ビッグデータ解析,IoT(Internet of Things)の枠組みにおけるエッジコンピューティング,フォグコンピューティングなど,まさにわれわれの周りを取り巻く環境に人工知能の技術が自然に導入され始めている。そのような人工知能の多くは,「ものの理解」や「見える化」を目指している。いわば,超高機能なセンサを作ろうとしているといえる。一方,人工知能の分析結果を基に環境に働きかけ,スマートにものを動かすためには,超高機能なアクチュエータも欠かせない。そのための基礎理論は自動制御理論と呼ばれる。スマートなセンサ(人工知能)とスマートなアクチュエータ(自動制御)が組み合わさって初めて,スマートに動くものを作ることができる。

このような背景から,スパースモデリングと自動制御理論を組み合わせた研究が最近注目されており,これを動的スパースモデリングと呼ぶ。動的スパースモデリングでは,燃料や電力の消費,CO2の排出,騒音や振動の発生など環境に悪影響を及ぼす要因を制約条件とした最適化問題として制御問題を定式化する。これらを陽に考慮した制御系を設計することが可能となり,まさに,省エネルギーを達成するための環境にやさしい自動制御理論となっている。本書で学んだ動的スパースモデリングを活用して,さまざまな環境問題を解決するヒントをぜひ得ていただきたい。

本書のおもな目標は,スパースモデリングの技術を使うことにあるので,重要ではあるが幾分難しいスパースモデリングの理論的な側面,例えばランダム行列理論を用いたスパース最適解の特徴付けや各種アルゴリズムの収束性の議論などは大きく省略した。これらの理論的な側面に興味がある方は,各章の終わり(5章を除く)の「さらに勉強するために」と題された節で挙げられている文献にチャレンジしてほしい。

本書の構成は下記のとおりである。
• スパース性とは何か(1章)・・・最初の章では,スパース性の数学的な定義を述べる。本書を通じて大切な章である。
• 曲線フィッティングで学ぶスパースモデリング(2章)・・・データからの曲線フィッティングを題材に最小二乗法や正則化,_1 最適化などを学ぶ。また,これらの最適化問題を解くためのMATLAB の使い方もここで解説する。
• 凸最適化アルゴリズム(3章)・・・スパースモデリングで重要な技術である凸最適化のアルゴリズムを解説する。
• 貪欲アルゴリズム(4章)・・・スパースモデリングで凸最適化と並んで重要な貪欲アルゴリズムについて解説する。
• スパースモデリングの歴史(5章)・・・コーヒーブレイクとしてスパースモデリングの歴史について振り返る。省略可能。
• 動的システムと最適制御(6章)・・・動的スパースモデリングに必要な動的システムと最適制御の基礎について勉強する。
• 動的スパースモデリング(7章)・・・動的システムに対するスパースモデリング(動的スパースモデリング)の基礎を勉強する。
• 動的スパースモデリングのための数値最適化(8章)・・・動的スパースモデリングの最適化問題を解くための数値最適化手法について示す。

本書の一つの特徴は,スパースモデリングを実際に試してみるためのMATLABコードを掲載していることである。本書を読み進めるとともに,MATLABでいろいろな数値例題を試してみることで,スパースモデリングの深い理解が可能になる。
本書に掲載しているMATLABコードや追加情報については以下のサポートページを参照してほしい。
https://nagahara-masaaki.github.io/spm.html

本書の内容は,科研費新学術領域「スパースモデリングの深化と高次元データ駆動科学の創成」や計測自動制御学会(SICE)「モデルベースト制御における機械学習とダイナミクスの融合」調査研究会,ひびきのAI 社会実装研究会などでのセミナーや交流会,また多くの研究者・エンジニアとのディスカッションで勉強させていただいた内容が多く含まれている。また,本書の内容の一部(特に6章以降)はJSPS科研費15H02668および16H01546の助成を受けた研究成果に基づいている。
九州工業大学名誉教授の石川真澄先生には,ニューラルネットワークについての先生のご研究に関する文献と貴重なコメントをいただいた。大阪大学工学研究科の林直樹先生と株式会社IHIの濱口謙一氏,また京都大学情報学研究科の藤本悠介氏には,本書の草稿について詳細なコメントをいただいた。京都大学病院の藤本晃司先生からはMRIに関して貴重なコメントをいただいた。コロナ社には本書の出版にあたりたいへんお世話になった。本書の執筆・出版を支えていただいた多くの方々に感謝の意を表したい。

2017年9月 著者

1. スパース性とは何か
1.1 冗長な辞書とスパース性
1.2 l0ノルムの定義と意味
1.3 総当り法による解法
1.4 さらに勉強するために

2. 曲線フィッティングで学ぶスパースモデリング
2.1 最小二乗法と正則化
 2.1.1 劣決定系と最小ノルム解
 2.1.2 回帰問題と最小二乗法
 2.1.3 正則化法
2.2 スパースモデリングとl1ノルム最適化
2.3 CVXによる数値最適化
2.4 さらに勉強するために

3. 凸最適化アルゴリズム
3.1 凸最適化問題への準備
3.2 近接作用素
 3.2.1 近接作用素の定義
 3.2.2 近接アルゴリズム
 3.2.3 2次関数の近接作用素
 3.2.4 指示関数の近接作用素
 3.2.5 l1ノルムの近接作用素
3.3 近接分離法によるl1最適化の数値解法
3.4 近接勾配法によるl1正則化の数値解法
3.5 一般化LASSOとADMM
3.6 さらに勉強するために

4. 貪欲アルゴリズム
4.1 l0最適化
4.2 直行マッチング追跡
 4.2.1 マッチング追跡(MP)
 4.2.2 直行マッチング追跡(OMP)
4.3 しきい値アルゴリズム
 4.3.1 反復ハードしきい値アルゴリズム(IHT)
 4.3.2 反復s-スパースアルゴリズム
 4.3.3 圧縮サンプリングマッチング追跡(CoSaMP)
4.4 数値実験
4.5 さらに勉強するために

5. スパースモデリングの歴史
5.1 オッカムの剃刀
5.2 グループテスティング
5.3 l1ノルムによる最適化
 5.3.1 信号復元問題
 5.3.2 地球物理学
 5.3.3 ニューラルネットワーク
 5.3.4 統計的学習
 5.3.5 信号処理
5.4 自動制御とスパースモデリング

6. 動的システムと最適制御
6.1 動的システム
 6.1.1 状態方程式
 6.1.2 可制御性と可制御集合
6.2 最適制御
6.3 ロケットの最短時間制御
6.4 さらに勉強するために

7. 動的スパースモデリング
7.1 連続時間信号のノルムとスパース性
 7.1.1 Lpノルム
 7.1.2 L0ノルムとスパース性
7.2 スパースな制御の工学的な意義
7.3 動的スパースモデリングの定式化
7.4 L0最適制御とL1最適制御の等価性
 7.4.1 ポントリャーギンの最小原理
 7.4.2 正規化
 7.4.3 定理7.1の証明
7.5 スパースモデリングとの関係
7.6 ロケットのスパース最適制御
7.7 離散値制御
 7.7.1 絶対値和(SOAV)最適制御
 7.7.2 ポントリャーギンの最小原理
7.8 さらに勉強するために

8. 動的スパースモデリングのための数値最適化
8.1 時間軸の離散化
8.2 有限次元最適化問題への帰着
8.3 ADMMによる高速アルゴリズム
8.4 さらに勉強するために

引用・参考文献
演習問題解答
索引

読者モニターレビュー(‎@hiro5585様)

Qiitaに各章のポイントを掲載したので、興味ある方は見てください。
https://qiita.com/hiro5585/items/7ab5ca32321a58410f30
 
スパースモデリングとは、データを複数のベクトルで表現するときに、できるだけそのベクトルの要素が小さくなるようにする手法のことです。
 
機械学習の手法の1つでもありますが、色んな分野で利用されています。
・データを圧縮できることにより、帯域の狭いネットワークで通信が可能になる
・ノイズに対して過剰適合するような学習を回避することができ、精度を向上できる
・最小の燃料で、動的システムを目的地まで輸送する制御方法を得ることができる
 
この本の特徴は、一般的なスパースモデリングを、自動車や航空機などの動的システムへ応用する方法について説明していることです。実際にMatlabなどで試すことができるソースコードが掲載されています。
 
スパースモデリングと聞くと難しいイメージをされるかもしれませんが、数学に関して高度な知識がなくても読めるように丁寧な説明になっています。
 
スパースモデリングがどういった問題を解こうとしているのか、普通に解こうとするとどういった問題が生じるのかを説明しているので、物語感覚で読むことができると思います。
 
スパースモデリングは、厳密解を求めることをやめて、それに近い解を見つける手法です。そのため、どのような考え方で近似しようとしているかの考え方が重要で、その点に関して、詳しく説明してあります。
 
また、動的システムにスパースモデリングを応用する話が書いてあり、最小の燃料で物体を目的地にたどり着かせるにはといった問題に興味ある方は、参考になると思います。

amazonレビュー