最終更新日:2026年8月22日
gk neural_network cheatsheet
G検定トップ
> ニューラルネットワーク総まとめ|構造・学習・汎化で整理【G検定】
まず結論
ニューラルネットワーク分野は、「構造 × 学習 × 汎化」の3軸で整理すると混乱しにくくなります。
- 構造:どんなデータ・関係を扱うモデルか
- 学習:損失からどう重みを更新するか
- 汎化:未知データでも性能を保つために何をするか
G検定では、モデル名を丸暗記するより、何を扱う構造か・何を学習時に行うかで選択肢を切ります。
直感的な説明
ニューラルネットワークは、同じ「NN」でも役割が違います。
- 表形式などを全結合で扱う → MLP
- 画像の局所的な特徴を扱う → CNN
- 系列を順に扱う → RNN
- 長期依存を扱いやすくしたRNN系 → LSTM / GRU
- Attentionで系列内の関係を直接扱う → Transformer
そのうえで、多くのニューラルネットワークでは、予測 → 損失計算 → 誤差逆伝播 → パラメータ更新という流れで学習します。
定義・仕組み
モデル構造を切り分ける
| モデル | 主な特徴 | G検定で見るキーワード |
|---|---|---|
| パーセプトロン | 単純な線形分類器 | XORを単層では解けない |
| MLP | 全結合層を重ねる | 多層・全結合 |
| CNN | 局所結合・重み共有 | 画像・畳み込み・フィルタ |
| RNN | 過去の状態を次へ渡す | 系列・時系列・内部状態 |
| LSTM | ゲートとセル状態を持つ | 長期依存・忘却ゲート |
| GRU | LSTMより簡略化したゲート構造 | 更新ゲート・リセットゲート |
| Transformer | Self-Attention中心 | Q/K/V・並列処理・Attention |
学習の基本フロー
- 順伝播:入力から予測を計算する
- 損失計算:予測と正解のずれを測る
- 誤差逆伝播:各パラメータへの勾配を求める
- 最適化:勾配を使ってパラメータを更新する
最適化手法の比較は、最適化手法まとめで確認できます。
活性化関数の位置付け
| 場面 | 代表例 | 判断ポイント |
|---|---|---|
| 中間層 | ReLU系 | 非線形性を入れる |
| 二値分類の出力 | Sigmoid | 0〜1の値として扱いやすい |
| 多クラス分類の出力 | Softmax | クラス確率として扱いやすい |
活性化関数と損失関数は別物です。出力層の活性化関数だけを見て、学習方法全体を決めつけないようにします。
バッチ・エポック・イテレーション
| 用語 | 意味 |
|---|---|
| バッチ / ミニバッチ | 1回の更新でまとめて使うデータのまとまり |
| エポック | 学習データ全体を一通り使う単位 |
| イテレーション | パラメータ更新を1回行う単位 |
「バッチ=必ず全学習データ」ではありません。全データを一度に使う場合はフルバッチ、一部ずつ使う場合はミニバッチです。
いつ使う?(得意・不得意)
- MLP:表形式など、固定長の特徴量を扱う基本モデル
- CNN:画像など、局所的な空間構造を活かしたい
- RNN / LSTM / GRU:系列を順番に処理したい
- Transformer:系列内の離れた要素同士の関係をAttentionで直接扱いたい
ただし、「画像だから必ずCNN」「系列だから必ずRNN」とは限りません。ViTのように画像へTransformerを使うモデルもあります。データの種類だけでなく、モデルがどの仕組みを使うかを見ます。
汎化性能を高める代表的な方法には、L1/L2正則化、Dropout、Early Stopping、データ拡張などがあります。これらはすべて同じ仕組みではなく、重みに制約を入れる・ユニットを無効化する・学習を止める・入力の多様性を増やすという作用点が違います。
G検定ひっかけポイント
- ❌「CNNのプーリング層にも学習パラメータがある」
- 一般的なMax PoolingやAverage Poolingは、学習する重みを持ちません。
- ❌「LSTM / GRUなら勾配消失が起こらない」
- 起こりにくくする工夫はありますが、完全になくなるわけではありません。
- ❌「TransformerはRNNの一種」
- Self-Attentionを中心にした別の構造です。
- ❌「Adamを使えば常に最良の結果になる」
- 最適な手法は問題や設定によって変わります。
- ❌「バッチとは必ず全データのこと」
- ミニバッチ学習では一部のデータをまとめて更新します。
判断基準
- 畳み込み・重み共有 → CNN
- 内部状態・系列を順に処理 → RNN系
- ゲート・セル状態 → LSTM
- 更新ゲート・リセットゲート → GRU
- Q / K / V・Self-Attention → Transformer
- 損失から勾配を求める → 誤差逆伝播
まとめ(試験直前用)
- NNは 構造・学習・汎化 の3軸で整理
- CNN=畳み込み、RNN=内部状態、LSTM/GRU=ゲート、Transformer=Attention
- 多くのNNでは 順伝播 → 損失 → 逆伝播 → 最適化 で学習
- 過学習対策は手法ごとに作用点が違う
- 迷ったら「モデルが何をどう処理しているか」で切る