AIがわかる数学入門

―グラフ理論、特異値分解、OR:AIシステムを理解するための数学ガイド

[cover photo]
TOPICS
Math , AI/LLM
発行年月日
PRINT LENGTH
552
ISBN
978-4-8144-0166-6
原書
Essential Math for AI
FORMAT
Print PDF EPUB
オンライン学習プラットフォーム
購読可
いますぐ読む
Ebook
5,390円
Ebookを購入する
Print
5,390円

本書は、特異値分解や最適化、グラフ理論といった数学的基礎から、自然言語処理、オペレーションズ・リサーチまで、AIを支える広範な数学を順を追って丁寧に解説します。実践的な応用例を補完する公開データセットとJupyter NotebookがGitHubに用意されており、理論と実践を行き来しながら理解を深めることができる構成になっています。

目次

『Essential Math for AI』への賛辞
はじめに

1章 なぜAIの数学を学ぶのか
    1.1 AI とは何か
    1.2 なぜAI は今こんなに人気があるのか
    1.3 AI に何ができるのか
        1.3.1 AI エージェントの具体的なタスク
    1.4 AI の制限は何か
    1.5 AI システムが失敗したときに何が起こるのか
    1.6 AI はどこに向かっているのか
    1.7 AI 分野の現在の主な貢献者は誰か
    1.8 AI にはどのような数学が関連しているか
    1.9 まとめと今後の展望

2章 データ、データ、データ
    2.1 AI のためのデータ
    2.2 実データ対シミュレーションデータ
    2.3 数理モデル:線形対非線形
    2.4 実データの例
    2.5 シミュレーションデータの例
    2.6 数理モデル:シミュレーションとAI
    2.7 データの入手方法
    2.8 データの分布と確率の用語
        2.8.1 確率変数
        2.8.2 確率分布
        2.8.3 周辺確率
        2.8.4 一様分布と正規分布
        2.8.5 条件付き確率とベイズの定理
        2.8.6 条件付き確率と同時分布
        2.8.7 事前分布、事後分布、尤度関数
        2.8.8 分布の混合
        2.8.9 確率変数の和と積
        2.8.10 グラフによる同時確率分布の表現
        2.8.11 期待値、平均、分散、不確実性
        2.8.12 共分散と相関
        2.8.13 マルコフ過程
        2.8.14 確率変数やデータセットの正規化、スケーリング、標準化
        2.8.15 一般的な例
    2.9 連続分布と離散分布(密度と質量の比較) 
    2.10 同時確率密度関数の威力
    2.11 データの分布:一様分布
    2.12 データの分布:ベル形の正規分布(ガウス分布) 
    2.13 データの分布:その他のよく使われる重要な分布
    2.14 「分布」という言葉のさまざまな用法
    2.15 A/Bテスト
    2.16 まとめと今後の展望

3章 データへの適合関数
    3.1 伝統的で非常に有用な機械学習モデル
    3.2 数値的解法と解析的解法の比較
    3.3 回帰:数値を予測する
        3.3.1 学習関数
        3.3.2 損失関数
        3.3.3 最適化
    3.4 ロジスティック回帰:2 つのクラスに分類する
        3.4.1 学習関数
        3.4.2 損失関数
        3.4.3 最適化
    3.5 ソフトマックス回帰:複数のクラスに分類する
        3.5.1 学習関数
        3.5.2 損失関数
        3.5.3 最適化
    3.6 ニューラルネットワークの最終層にモデルを組み込む
    3.7 その他の一般的な機械学習手法とそのアンサンブル
        3.7.1 サポートベクターマシン
        3.7.2 決定木
        3.7.3 ランダムフォレスト
        3.7.4 k-平均クラスタリング
    3.8 分類モデルのパフォーマンス指標
    3.9 まとめと展望

4章 ニューラルネットワークの最適化
    4.1 大脳新皮質と人工ニューラルネットワーク
    4.2 学習関数:全結合、または密なフィードフォワードニューラルネットワーク
        4.2.1 ニューラルネットワークは学習関数の計算グラフ表現である
        4.2.2 線形結合し、バイアスを加え、そして活性化する
        4.2.3 一般的な活性化関数
        4.2.4 普遍関数近似
        4.2.5 深層学習のための近似理論
    4.3 損失関数
    4.4 最適化
        4.4.1 数学とニューラルネットワークの神秘的な成功
        4.4.2 勾配降下法
        4.4.3 学習率のハイパーパラメータη の役割
        4.4.4 凸地形と非凸地形
        4.4.5 確率的勾配降下法
        4.4.6 最適化プロセスのために重みω→0 を初期化する
    4.5 正則化のテクニック
        4.5.1 ドロップアウト
        4.5.2 早期停止
        4.5.3 各層のバッチ正規化
        4.5.4 ノルムにペナルティを与えることで、重みの大きさをコントロールする
        4.5.5 l2 ノルムにペナルティを課すことと、l1 ノルムにペナルティを課すことの違い
        4.5.6 正則化のハイパーパラメータαの役割
    4.6 機械学習に登場するハイパーパラメータの例
    4.7 連鎖率と誤差逆伝播
        4.7.1 誤差逆伝播は脳の学習方法と似ている
        4.7.2 誤差逆伝播を使う理由
        4.7.3 誤差逆伝播の詳細
    4.8 入力データの特徴量の重要性を評価する
    4.9 まとめと展望

5章 畳み込みニューラルネットワークとコンピュータビジョン
    5.1 畳み込みと相互相関
        5.1.1 位置不変性と位置同等性
        5.1.2 通常空間での畳み込みは周波数空間での積となる
    5.2 システム設計の観点から見た畳み込み
        5.2.1 線形および位置不変システムの畳み込みとインパルス応答
    5.3 畳み込みと1 次元離散信号
    5.4 畳み込みと2 次元離散信号
        5.4.1 画像のフィルタリング
        5.4.2 特徴量マップ
    5.5 線形代数表記
        5.5.1 1 次元の場合:テプリッツ行列の掛け算
        5.5.2 2 次元の場合:二重ブロック巡回行列による掛け算
    5.6 プーリング
    5.7 画像分類のための畳み込みニューラルネットワーク
    5.8 まとめと展望

6章 特異値分解:画像処理、自然言語処理、ソーシャルメディア
    6.1 行列の分解
    6.2 対角行列
    6.3 空間に作用する線形変換としての行列
        6.3.1 右特異ベクトルに対するAの作用
        6.3.2 標準基底ベクトルとそれによって定まる単位正方形に対するAの作用
        6.3.3 単位円に対するAの作用
        6.3.4 特異値分解によって円から楕円への変換を分解する
        6.3.5 回転と鏡映の行列
        6.3.6 一般のベクトルx→ に対するAの作用
    6.4 行列を掛け算する3 つの方法
    6.5 全体像
        6.5.1 条件数と計算の安定性
    6.6 特異値分解の構成要素
    6.7 特異値分解と固有値分解
    6.8 特異値分解の計算
        6.8.1 固有値ベクトルを数値計算する
    6.9 擬似逆行列
    6.10 特異値分解を画像に適用する
    6.11 主成分分析と次元削減
    6.12 主成分分析とクラスタリング
    6.13 ソーシャルメディアへの応用
    6.14 潜在意味解析
    6.15 ランダム化特異値分解
    6.16 まとめと展望

7章 自然言語処理:ベクトル化と時系列
    7.1 自然言語AI
    7.2 自然言語データを機械処理用に前処理する
    7.3 統計モデルと対数関数
    7.4 用語のカウントに関するジップの法則
    7.5 自然言語文書のさまざまなベクトル表現
        7.5.1 文書または単語のバッグの単語出現頻度のベクトル表現
        7.5.2 文書の単語出現頻度-逆文書頻度(TF-IDF)ベクトル表現
        7.5.3 潜在意味解析による文書のトピックベクトル表現
        7.5.4 潜在的ディリクレ配分法で求めた文書のトピックベクトル表現
        7.5.5 潜在判別分析による文書のトピックベクトル表現
        7.5.6 ニューラルネットワーク埋め込みによる単語と文書の意味ベクトル表現
    7.6 コサイン類似度
    7.7 自然言語処理の応用
        7.7.1 センチメント分析
        7.7.2 スパムフィルタ
        7.7.3 検索と情報検索
        7.7.4 その他の用途
    7.8 トランスフォーマーとアテンションモデル
        7.8.1 トランスフォーマーのアーキテクチャ
        7.8.2 アテンションのメカニズム
        7.8.3 トランスフォーマーは完璧にはほど遠い
    7.9 時系列データのための畳み込みニューラルネットワーク
    7.10 時系列データのためのリカレントニューラルネットワーク
        7.10.1 リカレントニューラルネットワークはどのように機能するのか
        7.10.2 ゲート付きリカレントユニットと長短期記憶装置
    7.11 自然言語データの例
    7.12 ファイナンスAI
    7.13 まとめと展望

8章 確率的生成モデル
    8.1 生成モデルは何の役に立つのか
    8.2 生成モデルの代表的な数学
    8.3 決定論的思考から確率的思考へと脳をシフトさせる
    8.4 最尤推定
    8.5 明示的密度モデルと暗黙的密度モデル
    8.6 明示的に密度を扱う:完全可視信念ネットワーク
        8.6.1 例:PixelCNNによる画像生成とWaveNet による機械音声
    8.7 明示的に密度を扱う:変数変換による非線形独立成分分析
    8.8 明示的に密度を扱う:変分法による変分オートエンコーダの近似
    8.9 明示的に密度を扱う:マルコフ連鎖によるボルツマンマシンの近似
    8.10 暗黙的密度マルコフ連鎖:生成確率ネットワーク
    8.11 暗黙的密度直接:敵対的生成ネットワーク
        8.11.1 敵対的生成ネットワークはどのように機能するのか
    8.12 例:高エネルギー物理学のための機械学習と生成ネットワーク
    8.13 その他の生成モデル
        8.13.1 ナイーブベイズ分類モデル
        8.13.2 ガウス混合モデル
    8.14 生成モデルの進化
        8.14.1 ホップフィールドネット
        8.14.2 ボルツマンマシン
        8.14.3 制限付きボルツマンマシン(明示的密度、計算困難) 
        8.14.4 オリジナルのオートエンコーダ
    8.15 確率的言語モデリング
    8.16 まとめと展望

9章 グラフモデル
    9.1 グラフ:ノード、エッジ、特徴量
    9.2 例:PageRankアルゴリズム
    9.3 グラフを使って逆行列を求める
    9.4 群のケイリーグラフ:純粋代数と並列計算
    9.5 グラフ内でのメッセージパッシング
    9.6 グラフ応用は無限
        9.6.1 脳内ネットワーク
        9.6.2 病気の蔓延
        9.6.3 情報の拡散
        9.6.4 フェイクニュース伝播の検知と追跡
        9.6.5 Webスケールレコメンデーションシステム
        9.6.6 がんと闘う
        9.6.7 生化学グラフ
        9.6.8 薬物およびタンパク質構造探索のための分子グラフ生成
        9.6.9 引用ネットワーク
        9.6.10 ソーシャルメディアネットワークと社会的影響力の予測
        9.6.11 社会学的構造
        9.6.12 ベイジアンネットワーク
        9.6.13 交通予測
        9.6.14 ロジスティクスとオペレーションズ・リサーチ
        9.6.15 言語モデル
        9.6.16 Webのグラフ構造
        9.6.17 コンピュータプログラムを自動的に分析する
        9.6.18 コンピュータサイエンスにおけるデータ構造
        9.6.19 分散ネットワークにおける負荷分散
        9.6.20 人工ニューラルネットワーク
    9.7 グラフ上のランダムウォーク
    9.8 ノード表現学習
    9.9 グラフニューラルネットワークのタスク
        9.9.1 ノード分類
        9.9.2 グラフ分類
        9.9.3 クラスタリングとコミュニティ検出
        9.9.4 グラフ生成
        9.9.5 影響力の最大化
        9.9.6 リンク予測
    9.10 動的グラフモデル
    9.11 ベイジアンネットワーク
        9.11.1 ベイジアンネットワークはコンパクトな条件付き確率表を表す
        9.11.2 ベイジアンネットワークを使って予測する
        9.11.3 ベイジアンネットワークは信念ネットワークであり、因果ネットワークではない
        9.11.4 ベイジアンネットワークについて覚えておこう
        9.11.5 チェーン、フォーク、コライダ
        9.11.6 関係変数のベイジアンネットワークをデータセットから構築する
    9.12 確率的因果モデリングのためのグラフダイアグラム
    9.13 グラフ理論の歴史
    9.14 グラフ理論における主な考察
        9.14.1 全域木と最小全域木
        9.14.2 カット集合とカットノード
        9.14.3 平面性
        9.14.4 ベクトル空間としてのグラフ
        9.14.5 実現可能性
        9.14.6 彩色とマッチング
        9.14.7 列挙
    9.15 グラフのアルゴリズムと計算の側面
    9.16 まとめと展望

10章 オペレーションズ・リサーチ
    10.1 ノーフリーランチ
    10.2 計算量解析とO表記
    10.3 最適化:オペレーションズ・リサーチの核心
    10.4 最適化について考える
        10.4.1 最適化:有限次元、制約なし
        10.4.2 最適化:有限次元、ラグランジュ乗数制約付き
        10.4.3 最適化:無限次元、変分法
    10.5 ネットワーク上の最適化
        10.5.1 巡回セールスマン問題
        10.5.2 最小全域木
        10.5.3 最短経路
        10.5.4 最大フロー最小カット
        10.5.5 最大フロー最小コスト
        10.5.6 プロジェクト設計のためのクリティカルパス法
    10.6 n-クイーン問題
    10.7 線形最適化
        10.7.1 一般形と標準形
        10.7.2 線形最適化問題を2 次元で可視化する
        10.7.3 凸から線形へ
        10.7.4 線形最適化の幾何学
        10.7.5 シンプレックス法
        10.7.6 輸送問題と割当問題
        10.7.7 双対性、ラグランジュ緩和、シャドープライス、マックスミニ、ミニマックス、その他もろもろ
        10.7.8 感度
    10.8 ゲーム理論とマルチエージェント
    10.9 待ち行列
    10.10 在庫
    10.11 オペレーションズ・リサーチのための機械学習
    10.12 ハミルトン-ヤコビ-ベルマン偏微分方程式
    10.13 AI のためのオペレーションズ・リサーチ
    10.14 まとめと展望

11章 確率
    11.1 確率は本書のどこに登場したのか
    11.2 AI に必要な知識とは何か
    11.3 因果モデリングとdo計算
        11.3.1 もう1 つの選択肢:do 計算
    11.4 パラドックスとダイアグラムの解釈
        11.4.1 モンティ・ホール問題
        11.4.2 バークソンのパラドックス
        11.4.3 シンプソンのパラドックス
    11.5 大規模ランダム行列
        11.5.1 ランダムベクトルとランダム行列の例
        11.5.2 ランダム行列理論における主な考察
        11.5.3 ランダム行列アンサンブル
        11.5.4 2 つの大規模ランダム行列の和の固有値密度
        11.5.5 大規模ランダム行列のための基礎数学
    11.6 確率過程
        11.6.1 ベルヌーイ過程
        11.6.2 ポアソン過程
        11.6.3 ランダムウォーク
        11.6.4 ウィーナー過程またはブラウン運動
        11.6.5 マルチンゲール
        11.6.6 レヴィ過程
        11.6.7 分岐過程
        11.6.8 マルコフ連鎖
        11.6.9 伊藤の補題
    11.7 マルコフ決定過程と強化学習
        11.7.1 強化学習の例
        11.7.2 マルコフ決定過程としての強化学習
        11.7.3 最適制御と非線形ダイナミクスの文脈における強化学習
        11.7.4 強化学習のためのPython ライブラリ
    11.8 理論的かつ厳密な根拠
        11.8.1 どのような事象に確率があるのか
        11.8.2 より広い範囲の確率変数について議論できるか
        11.8.3 確率トリプル(標本空間、σ-代数、確率測度)
        11.8.4 どこが難しいのか
        11.8.5 確率変数、期待値、積分
        11.8.6 確率変数の分布と変数変換定理
        11.8.7 厳密な確率論の次のステップ
        11.8.8 ニューラルネットワークの普遍近似定理
    11.9 まとめと展望

12章 数学的論理
    12.1 さまざまなロジックフレームワーク
    12.2 命題論理
        12.2.1 少数の公理からすべての定理へ
        12.2.2 エージェント内のロジックをコード化する
        12.2.3 決定論的機械学習と確率的機械学習
    12.3 一階述語論理
        12.3.1 「すべての」と「存在する」の関係
    12.4 確率論的論理
    12.5 ファジィ論理
    12.6 時間論理
    12.7 人間の自然言語との比較
    12.8 機械と複雑な数学的推論
    12.9 まとめと展望

13章 AIと偏微分方程式
    13.1 偏微分方程式とは何か
    13.2 微分方程式を使ったモデリング
        13.2.1 異なるスケールのモデル
        13.2.2 PDEのパラメータ
        13.2.3 PDEの一箇所を変えるだけで大事になることがある
        13.2.4 AI は介入できるのか
    13.3 数値解は非常に貴重
        13.3.1 連続関数と離散関数の比較
        13.3.2 私の博士論文のPDEのテーマ
        13.3.3 離散化と次元の呪い
        13.3.4 有限差分法
        13.3.5 有限要素法
        13.3.6 変分法またはエネルギー法
        13.3.7 モンテカルロ法
    13.4 統計力学いろいろ:素晴らしきマスター方程式
    13.5 基礎となる確率過程の期待値としての解
    13.6 PDEを変換する
        13.6.1 フーリエ変換
        13.6.2 ラプラス変換
    13.7 解作用素
        13.7.1 熱方程式を使った例
        13.7.2 ポアソン方程式を使った例
        13.7.3 不動点反復法
    13.8 PDEのためのAI
        13.8.1 物理パラメータ値を学習するための深層学習
        13.8.2 メッシュを学習するための深層学習
        13.8.3 PDEの解作用素を近似するための深層学習
        13.8.4 高次元微分方程式の数値解法
        13.8.5 データから直接自然現象をシミュレーションする
    13.9 ハミルトン-ヤコビ-ベルマン偏微分方程式による動的計画法
    13.10 AI のためのPDE? 
    13.11 偏微分方程式におけるその他の考察
    13.12 まとめと展望

14章 AI、倫理、数学、法律、ポリシー
    14.1 よいAI
    14.2 ポリシーについて
    14.3 何が問題なのか
        14.3.1 数学から兵器まで
        14.3.2 化学兵器
        14.3.3 AI と政治
        14.3.4 生成モデルの意図しない結果
    14.4 解決法
        14.4.1 学習データにおける過小代表に対応する
        14.4.2 単語ベクトルのバイアスに対処する
        14.4.3 プライバシーへの取り組み
        14.4.4 公平性への取り組み
        14.4.5 AI にモラルを注入する
        14.4.6 AI の民主化と非専門家のアクセシビリティ
        14.4.7 高品質なデータを優先する
    14.5 バイアスと差別を区別する
    14.6 ハイプ(過剰な期待) 
    14.7 おわりのまとめ

索引

コラム目次
    パラメトリックモデルとノンパラメトリックモデルの比較
    表記法:本書におけるベクトルは常に列ベクトルである
    線形結合の線形結合はやはり線形結合である
    多項式アルゴリズムO(nk) と指数アルゴリズムO(kn) との比較