独学で鍛える数理思考
〜先端AI技術を支える数学の基礎
2024年8月2日紙版発売
2024年8月2日電子版発売
古嶋⼗潤 著
A5判/416ページ
定価3,520円(本体3,200円+税10%)
ISBN 978-4-297-14228-5
書籍の概要
この本の概要
「数学」という言葉を聞くと,みなさんはどんなことを思い浮かべるでしょうか。複雑な公式や解けなかった問題,あるいは学生時代の苦い経験なのかもしれません。中には「自分には関係ない」と割り切っている方もいるでしょう。日本では,「理数離れ」が長い間社会問題とされ,数学に対して苦手意識を持つ人が多いのが実情です。
とはいえ,数学は私たちの日常生活を豊かにしている最先端技術の基盤として,欠かすことのできない存在です。現代社会を生き抜くうえで,数学を学ぶことは看過できないテーマではないでしょうか。
数学の学びづらさは,初心者を寄せ付けない抽象性や敷居の高さにあると思います。この点,適切なテーマを選び,かつ懇切丁寧な解説を提供すれば,初学者でも数学の楽しさを十分に味わうことができると信じています。本書では,私たちが普段使っているスマートフォンのアプリやサービスを例に,数学がどのように役立っているかを解説します。具体的にはWeb検索や商品のレコメンド,画像の分類,生成AIによる文章生成,音声のデジタルデータ化,地図上の位置情報の特定といった私たちが日々当たり前のように利用している各種サービスの数理的背景を明らかにし,数学の面白さとその奥深さを楽しみながら,読者の数理的思考力を「初学者を大きく超えるレベル」にまで高めます。
本書は,数学を学ぶことへの意欲や危機感を抱く初学者の方々が「本気で学ぶ」ために作られました。その「本気」を応援すべく,副読本なしで本書のみに集中して取り組むことができるよう随所に工夫を凝らしています。本書を読み進める中で,物事の仕組みをデジタル空間だけでなく物理空間においても数理的に考察する力や最新のAIを理解するための数理的素養が身につきます。これらは本来,現代社会の複雑な問題を考察するうえで欠かすことのできないものでしょう。
本書を読破すれば,きっと大きな達成感を得られると同時に,数学への苦手意識が大きく払拭されるでしょう。そして,これまで見ることも気づくこともなかった”景色”が,数理的な視点を通じて目の前に広がっていることでしょう。過去に数学にチャレンジして挫折してしまった方もぜひ,本書に腰を据えて取り組むことを強く推奨します。本書で獲得した数理的思考力を武器に,新たなチャレンジへと進まれることを願っています。
こんな方におすすめ
高校生/大学生
- 授業で学んでいる数学が何の役に立つのかわからず,学習へのモチベーションが湧くようなヒントが欲しい
- 将来的にAIに携わることを見据えた進路を考える際に,どのようなことを学んでいくべきか具体的に知りたい
- AIの分野に進みたいが,そのためにはどの程度の数学力が必要なのか,キャリアを考えるためにより具体的に知りたい
社会人
- 数学が必要だとは理解しているが,何をどのレベルまで理解すれば良いのか知りたい
- AIに関する数理的手法について「ある程度学べた」という“手応え”や“手触り感”が欲しい
- データ/AIに関する入門レベルの書籍を読んだことはあるが,本当に実務で用いられる数学がどのようなものなのか知りたい
- 身近な技術についてどのように数学が機能しているのか興味関心を持っている
- 数学の必要性を,具体的な例をもとに理解しながら数学を学び直したい
この書籍に関連する記事があります!
本書のサンプル
本書の一部ページを,PDFで確認することができます。
- サンプルPDFファイル(411KB)
本書の紙面イメージは次のとおりです。画像をクリックすることで拡大して確認することができます。
目次
第1章 情報検索を実現する数理
- 1-1 はじめに
- 1-2 Web検索に用いられる基礎的な数理モデル
- 1-3 検索結果の“良し悪し”を評価する―適合率と再現率―
- 1-4 ユーザー行動の平均値を数理モデルで表現する―総和記号Σ―
- 1-5 索引語を数値化する―ベクトル化―
- Column 自然言語処理におけるベクトル化
- Lesson ベクトルと行列
- 1-6 索引語の出現頻度を数理モデルで表現する―比例と対数―
- Lesson 対数の性質
- 1-7 索引語の珍しさを数理モデルで表現する―反比例と対数―
- 1-8 文書のランキングを数理モデルで表現する―TF-IDFモデル―
- 1-9 本章で得られた学び
- Column さらなる学びに向けて―Retrieval Augmented Generation―
第2章 商品推薦を実現する数理
- 2-1 はじめに
- 2-2 商品の評価を数理的に表現する―評価値行列―
- 2-3 評価値の予測を数理モデルで実現する―協調フィルタリングと行列因子分解―
- Column 内容ベースフィルタリング
- 2-4 ユーザー同士の類似度で予測値を推計する―内積の定理とコサイン類似度―
- 2-5 コサイン類似度の意味を考える―三角関数―
- Lesson 内積の図形的解釈
- 2-6 コサイン類似度を複数のアイテムに適用する―多次元への拡張―
- 2-7 コサイン類似度を改良する―中心化―
- 2-8 コサイン類似度を計算する―指示関数―
- 2-9 欠損値を推計する数理モデルを設計し,計算を実行する
- 2-10 アイテム同士の類似度で予測値を推計する
- 2-11 ユーザー目線で数理モデルを再考する―セレンディピティ―
- 2-12 課題解決のために数理モデルを変更する―行列因子分解―
- Lesson 行列の積の計算
- 2-13 評価値の推計を最適化問題に置き換える―残差行列と誤差―
- 2-14 最適化問題を解く―損失関数―
- Column ハイパーパラメータ
- 2-15 損失関数を最適化する―最小二乗法と微分・偏微分―
- Lesson 微分
- Lesson 微分・偏微分の計算例
- 2-16 計算結果を統合して数理モデルを導出する―偏微分と総和記号Σ―
- 2-17 更新式を設計して予測値を推計する―勾配降下法―
- 2-18 勾配降下法の計算例
- 2-19 数理モデルの違いを俯瞰する―協調フィルタリングと行列因子分解―
- 2-20 本章で得られた学び
第3章 画像分類を実現する数理
- 3-1 はじめに
- 3-2 深層学習モデルで画像分類を実現する―Convolutional Neural Network―
- 3-3 CNNにおける画像データ処理の流れを俯瞰する
- 3-4 単純な例を用いてCNNの仕組みを理解する―畳み込み層とプーリング層―
- 3-5 画像データに対するCNNの処理を理解する―重みパラメータとバイアス―
- Column パラメータ・バイアス
- 3-6 確率的な予測によって画像認識を行う―ソフトマックス関数―
- Column AIのブラックボックス化
- 3-7 誤差を最小化して画像認識の精度を向上させる
- 3-8 損失関数を定義する―対数尤度関数―
- 3-9 出力層のパラメータの影響範囲を考察する―合成関数―
- Lesson 合成関数の微分
- 3-10 出力層のパラメータによって損失関数を最適化する―偏微分―
- Lesson ネイピア数
- 3-11 出力層のパラメータによる損失関数の偏微分結果を導出する
- 3-12 畳み込み層のパラメータの影響範囲を考察する―合成関数―
- 3-13 畳み込み層のパラメータによる損失関数の偏微分結果を導出する
- 3-14 誤差逆伝播法の意味を数理モデルから読み取る
- 3-15 本章で得られた学び
第4章 文章生成を実現する数理
- 4-1 はじめに
- 4-2 大規模言語モデルを実現する数理モデルを俯瞰する―Transformer―
- 4-3 確率的予測モデルによって出力を生成する
- 4-4 入力データを数理モデルに適した形式に変換する―単語埋め込み―
- 4-5 単語の順序に関する情報を加算する―位置符号化―
- 4-6 Transformer の核心部分を俯瞰する―Multi-Head Attention―
- 4-7 head 内における計算処理を理解する―行列積と転置行列―
- 4-8 位置符号化の重要性を理解する
- 4-9 行列積の計算結果をスケーリングする―ソフトマックス関数―
- 4-10 各headの計算結果を結合する
- 4-11 各トークンの要素を正規化する
- 4-12 精度向上のためにさらなるデータ処理を行う―活性化関数―
- 4-13 自己回帰的なデータ処理によって出力を生成する
- 4-14 参照するトークンを限定する―Masked Multi-Head Attention―
- 4-15 エンコーダで処理された情報を統合する―Cross-Attention―
- 4-16 確率的予測に基づいて出力を生成する
- 4-17 本章で得られた学び
- Column さらなる学びに向けて―Transformerが組み込まれた先端AIの例
第5章 音声解析を実現する数理
- 5-1 はじめに
- 5-2 本章で考察する数理モデルを俯瞰する―フーリエ解析―
- 5-3 単純な形状の波を周期関数で表現する―三角関数―
- 5-4 周期関数の特徴を捉える―周波数と角周波数―
- 5-5 複雑な形状の波を複数の周期関数で表現する―フーリエ級数展開と級数展開―
- 5-6 三角関数を近似的に表現する―sinxのマクローリン展開―
- Lesson 三角関数の微分
- 5-7 オイラーの公式の導出に向けて準備する―cosxのマクローリン展開―
- 5-8 オイラーの公式の導出に向けて準備する―指数関数のマクローリン展開―
- 5-9 オイラーの公式を導出する
- Column デカルト,ニュートン,ライプニッツ,オイラー
- 5-10 複雑な形状の波を複数の周期関数で表現する―フーリエ級数展開―
- Lesson 三角関数の合成
- 5-11 フーリエ係数を導出する―定積分―
- Lesson 積分その1
- Lesson 積分その2
- 5-12 フーリエ係数an,bnについて考察する―場合分け―
- 5-13 場合分けによってフーリエ係数を考察する―m≠nの場合―
- 5-14 場合分けによってフーリエ係数を考察する―m=nの場合―
- Lesson 直交性
- 5-15 フーリエ係数an,bnを導出する
- Column 数理思考を積み上げる
- 5-16 オイラーの公式を用いてフーリエ級数展開を求める
- Lesson 虚数と複素数
- 5-17 複素フーリエ係数を求める
- 5-18 アナログデータをデジタルデータに変換する―標本化と量子化―
- 5-19 音声データを数理モデルで表現する―離散フーリエ変換―
- 5-20 離散フーリエ変換による音声解析の例
- 5-21 本章で得られた学び
- Column さらなる学びに向けて―音声認識AIの全体像―
第6章 衛星測位を実現する数理
- 6-1 はじめに
- 6-2 衛星と受信機の距離を計算する―時間×速さ―
- 6-3 受信機の位置を幾何学的に解析する―連立方程式―
- 6-4 連立方程式を設計する―全微分と合成関数の微分―
- 6-5 設計した連立方程式を解く―逐次近似法―
- 6-6 衛星の位置を数理モデルで表現する―ニュートン力学―
- 6-7 衛星の運動を数理モデルで表現する―万有引力の法則と運動方程式―
- 6-8 衛星の運動を運動方程式で表す―位置ベクトル,速度ベクトル,加速度ベクトル―
- 6-9 衛星の運動の表現に適した座標空間を適用する―極座標空間―
- 6-10 衛星の位置を数理モデルで表現する―三角関数の微分と関数の積の微分―
- 6-11 衛星の運動に関する関係式を導出する―係数比較―
- 6-12 衛星の位置に関する方程式を導出する―常微分方程式―
- Lesson 2階線形微分方程式/単振動の微分方程式
- 6-13 衛星の運動を楕円で表現する―極方程式と離心率―
- Lesson 楕円の方程式と極方程式の導出
- 6-14 衛星の位置を数理モデルで表現する―楕円の方程式―
- 6-15 軌道面と楕円の形状から衛星の位置を推計する―ケプラーの6軌道要素―
- 6-16 衛星測位を阻む要因について考える
- 6-17 時間のズレが衛星測位の誤差を生む―特殊相対性理論と一般相対性理論―
- Column 絶対時間と相対時間
- 6-18 特殊相対性理論に基づく時間のズレを考察する―ローレンツ因子―
- 6-19 一般相対性理論に基づく時間のズレを考察する―アインシュタイン方程式とシュヴァルツシルト解―
- 6-20 シュヴァルツシルト解を用いて時間のズレを考察する
- 6-21 本章で得られた学び
巻末付録1 相対性理論の数理的補足
- マクスウェル方程式から導出される波動方程式と光の速さ
- ガリレイの相対性原理と慣性系
- ガリレイ変換の導出と速度の合成則
- ガリレイ変換を電磁波の波動方程式に適用する
- アインシュタインによる特殊相対性原理と光速度不変の原理
- ローレンツ変換の導出
- ローレンツ変換を電磁波の波動方程式に適用する
- 特殊相対性原理に基づく速度の合成則
- 特殊相対性理論に基づく時間のズレ
- 一般相対性理論が導き出したアインシュタイン方程式
- アインシュタイン・テンソルの構造
- 計量テンソル
- 世界間隔と不変量
- 固有時
- 一様な重力場における時空の曲がり具合を示す
- 現実の重力場における時空の曲がり具合を示す
- 等価原理
- Lesson 重力ポテンシャル
- アインシュタイン方程式
- 本付録の結び
巻末付録2 フーリエ変換の導出
- はじめに
- 非周期関数に対応するために数理モデルを拡張する
- 周期を無限大にして非周期関数に対応する
- Lesson 積分その3
- 複素フーリエ級数展開からフーリエ変換を導出する
- 本付録の結び
この本に関連する書籍
-
ディープラーニングを支える技術 ——「正解」を導くメカニズム[技術基礎]
初学者の方々に向けた,ディープラーニングの技術解説書。 2012年に一般画像分類コンテスト(ILSVRC)で衝撃的な性能を達成したAlexNetの登場以来,急速な進化を遂げて...
-
問題解決のための「アルゴリズム×数学」が基礎からしっかり身につく本
アルゴリズムは,プログラミングを用いて問題を解決していくには欠かせない大切な道具です。一方,アルゴリズムを理解し,そして応用できるようになるためには,ある程...