# 深層学習入門 - 勉強会 概要と目次

## コンテンツ概要

### タイトル

「エンジニアのための深層学習入門 - 仕組みを理解して生成AI時代を読み解く」

### コンセプト

数式の厳密な展開よりも「何をしている技術なのか」「なぜそれが効くのか」の理解を優先した入門コンテンツです。深層学習の基本用語・構成要素・代表的なアーキテクチャを、抜けなく一通り押さえる粒度で体系的に扱います。

最終的に、LLMや生成AIのニュース・技術記事を「知らない単語がない状態」で読めるようになることを目指します。

### 学習目標

- ニューラルネットワークがどう計算し、どう学習するかを説明できる
- 過学習・正則化など、モデルの良し悪しを判断する観点を持てる
- CNN / RNN / Transformer の違いと使いどころを説明できる
- LLM・生成AIの能力と限界を技術的な根拠付きで語れる
- 簡単なモデルをコードで動かし、学習の挙動を観察できる

### 対象者

- ソフトウェアエンジニア（機械学習の実務経験は不問）
- Python の基本構文が読める程度（書けなくても可）
- 高校数学レベルの知識があると理解が早いが、必須ではない

### 開催形式

| 項目 | 内容 |
|------|------|
| 1 コマ | 60 分（講義 40〜45 分＋質疑・演習 15〜20 分） |
| 頻度 | 週 1 回 |
| 全体 | 全 9 章（約 2 ヶ月） |

### 進め方の目安（1 コマ 60 分の配分）

1. **前回の振り返り（5 分）** — 前章のキーワードを口頭で確認
2. **本編（40 分）** — 資料に沿って解説。図とコード例を中心に
3. **演習・ディスカッション（10 分）** — 章末の演習問題を扱う
4. **まとめと次回予告（5 分）**

---

## 目次構成

### 第 1 章：深層学習とは何か - AI・機械学習との関係を整理する

1.1 AI / 機械学習 / 深層学習の関係

- 3 つの用語の包含関係
- ルールベース AI からの歴史的な流れ
- なぜ「今」深層学習なのか（データ・計算資源・アルゴリズム）

  1.2 機械学習の基本的な考え方

- 教師あり学習 / 教師なし学習 / 強化学習
- 学習フェーズと推論フェーズ
- 訓練データ・検証データ・テストデータ

  1.3 深層学習が得意なこと・苦手なこと

- 従来の機械学習との違い（特徴量設計の自動化）
- 向いているタスクと向いていないタスク
- 全体像のロードマップ

### 第 2 章：ニューラルネットワークの基礎 - 計算の仕組みを理解する

2.1 ニューロンとパーセプトロン

- 生物のニューロンからの発想
- 重み・バイアス・入力の内積
- 単層パーセプトロンの限界（XOR 問題）

  2.2 多層ニューラルネットワーク

- 入力層・隠れ層・出力層
- 順伝播（forward propagation）の計算
- 行列演算としての表現

  2.3 活性化関数

- なぜ非線形性が必要なのか
- Sigmoid / tanh / ReLU とその派生
- 出力層の活性化関数（Softmax）とタスクの対応

### 第 3 章：学習の仕組み - モデルはどうやって賢くなるのか

3.1 損失関数

- 「正解からのズレ」を数値化する
- 回帰の損失（MSE）と分類の損失（交差エントロピー）

  3.2 勾配降下法

- 損失を小さくする方向へパラメータを動かす
- 学習率とその影響
- バッチ / ミニバッチ / 確率的勾配降下法

  3.3 誤差逆伝播法（バックプロパゲーション）

- 連鎖律による勾配の計算
- 計算グラフと自動微分
- エポック・イテレーション・バッチサイズ

  3.4 最適化アルゴリズム

- Momentum / AdaGrad / RMSProp / Adam
- 実務でのデフォルト選択

### 第 4 章：学習の評価とチューニング - 「そこそこ動く」を越える

4.1 過学習と未学習

- 訓練データへの過剰適合とは
- 学習曲線の読み方
- バイアスとバリアンスのトレードオフ

  4.2 汎化性能を上げる手法

- データ分割と交差検証
- 正則化（L1 / L2）
- ドロップアウト・早期終了・データ拡張
- バッチ正規化

  4.3 評価指標

- 正解率 / 適合率 / 再現率 / F 値
- 混同行列の読み方
- 不均衡データでの落とし穴

  4.4 ハイパーパラメータ調整

- 調整対象と探索方法
- 実務での進め方

### 第 5 章：CNN - 画像を扱うニューラルネットワーク

5.1 なぜ画像に全結合層では不十分なのか

- パラメータ数の爆発
- 位置のずれへの弱さ

  5.2 畳み込み層

- フィルタ（カーネル）とは
- ストライド・パディング・チャネル
- 特徴マップの階層的な抽象化

  5.3 プーリング層と全体構造

- 最大プーリング・平均プーリング
- CNN 全体のアーキテクチャ

  5.4 代表的なモデルと応用

- LeNet / AlexNet / VGG / ResNet の流れ
- 画像分類・物体検出・セグメンテーション
- 転移学習・ファインチューニング

### 第 6 章：RNN・LSTM・GRU - 系列データを扱う

6.1 系列データと再帰構造

- 時系列・自然言語の何が特殊なのか
- RNN の基本構造と隠れ状態
- 時間方向への展開

  6.2 RNN の課題

- 勾配消失・勾配爆発
- 長期依存関係の学習が難しい理由

  6.3 LSTM と GRU

- ゲート機構という発想
- 忘却ゲート・入力ゲート・出力ゲート
- GRU による簡略化
- 双方向 RNN

  6.4 応用と限界

- 機械翻訳・音声認識・時系列予測
- Seq2Seq と Encoder-Decoder
- 逐次処理ゆえの並列化の壁

### 第 7 章：Attention と Transformer - 現代 AI の基盤

7.1 Attention の登場

- Seq2Seq のボトルネック問題
- 「どこに注目するか」を学習する
- Query / Key / Value

  7.2 Self-Attention

- 系列内部の関係性を捉える
- Multi-Head Attention
- 位置エンコーディング

  7.3 Transformer アーキテクチャ

- Encoder と Decoder の構成
- 残差接続とレイヤー正規化
- RNN と比べた並列化の優位性

  7.4 Transformer 以降の発展

- BERT（Encoder 系）と GPT（Decoder 系）
- スケーリング則
- 画像・音声への展開（ViT など）

### 第 8 章：LLM と生成 AI - 技術を実務につなげる

8.1 大規模言語モデルの仕組み

- 次トークン予測という学習タスク
- トークナイズとコンテキストウィンドウ
- 事前学習・ファインチューニング・RLHF

  8.2 LLM の能力と限界

- In-Context Learning と few-shot
- ハルシネーション・知識のカットオフ
- 推論コストとレイテンシ

  8.3 画像・音声の生成モデル

- 拡散モデルの考え方
- マルチモーダルモデル

  8.4 アプリケーションへの組み込み

- API 連携の基本パターン
- RAG（検索拡張生成）
- プロンプト設計とエージェント
- 倫理・ライセンス・セキュリティ上の注意点

### 第 9 章：ハンズオンと総復習

9.1 環境準備

- Google Colab での実行環境
- PyTorch の基本操作（テンソル・自動微分）

  9.2 ハンズオン 1：全結合ネットワークで手書き数字認識

- データの読み込みと前処理
- モデル定義・学習ループ・評価
- 学習曲線を観察する

  9.3 ハンズオン 2：CNN への改良と事前学習モデルの利用

- 畳み込み層を加えて精度を比較
- 学習済みモデルのファインチューニング

  9.4 総復習

- 全 8 章のキーワード確認
- 次に学ぶべきトピックのガイド

---

## 各章の共通構成

各章には以下の要素を含めます：

- **図解**：概念を視覚的に理解するための SVG 図（`ai-introduction/` の図を参照）
- **コード例**：Python / PyTorch による最小限の実装例
- **実務での位置づけ**：その技術が現場のどこで使われているか
- **よくある誤解**：入門者が混乱しやすいポイントの整理
- **演習問題**：理解度を確認する設問（コマ内の 10 分で扱える分量）

## 参考リソース

- 既存資料：[ai-introduction/slide.md](../ai-introduction/slide.md)（AI 全般の俯瞰スライド）
- 図版：[ai-introduction/](../ai-introduction/) 配下の SVG 群
