# CS231n: Convolutional Neural Networks for Visual Recognition
> [!abstract] 概要
> 30papers が 2016 年の Stanford 講義ノートとして選んだ CS231n の案内ページである。画像分類の問題設定から線形分類器、損失関数、最適化、逆伝播、全結合ニューラルネットワークを積み上げ、最終的に畳み込みニューラルネットワーク(CNN)の構造・可視化・転移学習へ到達する教材である。30papers 自体は権利上の制約から本文を収載せず、公式教材へ案内している。(Source: [[.raw/articles/30papers-cs231n-2026-07-28]])
## ソース情報
- **掲載元**: [30papers](https://30papers.com/papers/cs231n/)
- **掲載名**: CS231n: Convolutional Neural Networks for Visual Recognition
- **30papers 上の著者表記**: Karpathy, Li, Johnson, and others (Stanford)
- **30papers 上の年**: 2016
- **種別**: 論文ではなく講義ノート
- **公式原典**: [CS231n Deep Learning for Computer Vision](https://cs231n.github.io/)
- **関係者**: [[Andrej Karpathy]]、[[Fei-Fei Li]]、[[Justin Johnson]]、[[Stanford University]]
> [!important] 版の区別
> 30papers のメタデータは 2016 年の「Convolutional Neural Networks for Visual Recognition」を指す。一方、取得時点の公式サイトは「Deep Learning for Computer Vision」という名称で Spring 2026 版まで更新されている。本ページでは 30papers の選定対象を主題とし、技術内容は継続公開されている公式ノートで照合した。(Source: [[.raw/articles/30papers-cs231n-2026-07-28]]; [公式講義ページ](https://cs231n.stanford.edu/))
## 教材の学習経路
### 画像分類をデータ駆動問題として定式化する
教材は画像分類を、固定されたカテゴリ集合から入力画像へラベルを割り当てる問題として導入する。視点・尺度・変形・遮蔽・照明・背景・クラス内変動を列挙し、カテゴリの外見を規則として直接記述する代わりに、ラベル付き画像からモデルを学ぶデータ駆動手法へ進む。訓練・検証・テストの役割を分離し、ハイパーパラメータ調整にテスト集合を使わないという評価原則も初期段階で教える。(Source: [Image Classification](https://cs231n.github.io/classification/))
### スコア・損失・最適化へ分解する
k 近傍法の限界を確認した後、画像からクラススコアへのパラメータ付き写像と、予測と正解の不一致を数量化する損失関数に問題を分解する。多クラス SVM 損失と Softmax を題材に、学習を損失最小化として扱う。勾配計算・確率的勾配降下法・逆伝播を経て、多層ネットワークを一つの微分可能な計算グラフとして理解させる構成である。(Source: [Linear Classification](https://cs231n.github.io/linear-classify/), [Optimization](https://cs231n.github.io/optimization-1/), [Backpropagation](https://cs231n.github.io/optimization-2/))
### 全結合網から CNN へ移る
全結合ニューラルネットワークでは、画像が大きくなると各ニューロンの重み数が急増する。CNN は入力が画像であることを明示的に仮定し、活性を幅・高さ・深さの三次元体積として扱う。各ニューロンを前層の局所領域へだけ接続し、同じフィルタを空間位置間で共有することで、パラメータ数を抑えながら画像中の特徴を位置横断で検出する。(Source: [Convolutional Neural Networks](https://cs231n.github.io/convolutional-networks/))
## CNN の中心的な設計
単純な分類器は `INPUT → CONV → RELU → POOL → FC` という層列で表現できる。畳み込み層は局所受容野と入力深さ全体にまたがる学習可能フィルタから活性マップを作り、ReLU は要素ごとの非線形変換を行い、プーリング層は空間方向を縮小し、全結合層は最終的なクラススコアを出す。学習可能な CONV・FC のパラメータは勾配降下法で更新される。(Source: [Convolutional Neural Networks](https://cs231n.github.io/convolutional-networks/))
畳み込み層の出力幅は、入力幅 $W$、フィルタ幅 $F$、ストライド $S$、ゼロパディング $P$ に対して $(W-F+2P)/S+1$ で決まる。教材は局所接続だけでなく、出力の空間サイズと計算量を制御するストライド・パディング、および深さ方向のフィルタ数を一体として説明する。(Source: [Convolutional Neural Networks](https://cs231n.github.io/convolutional-networks/))
同じフィルタを各空間位置で共有する設計は、「ある位置で有用な視覚特徴は別の位置でも有用である」という仮定に基づく。初期層はエッジや色の塊に、深い層はより複雑なパターンに反応し得る。これが全結合による画素処理と異なり、画像の空間構造に整合した[[畳み込みニューラルネットワーク]]の帰納的バイアスである。(Source: [Convolutional Neural Networks](https://cs231n.github.io/convolutional-networks/))
## アーキテクチャ史と実践
教材は LeNet、AlexNet、ZFNet、GoogLeNet、VGGNet、ResNet を順に取り上げ、CNN の設計が単純な畳み込み・プーリングの反復から、Inception モジュールや残差接続を含む複雑な接続へ進んだ流れを示す。2016 年時点の記述では ResNet を実践上の標準選択と位置づけているため、この評価は歴史的スナップショットとして読む必要がある。(Source: [Convolutional Neural Networks](https://cs231n.github.io/convolutional-networks/))
三つの $3 \times 3$ 畳み込み層を積むと、一つの $7 \times 7$ 畳み込み層と同じ大きさの有効受容野を得つつ、層間の非線形性を増やし、同一チャネル数ならパラメータ数を $49C^2$ から $27C^2$ に減らせる。小さいフィルタを深く積むという VGG 型の設計原理を、表現力とパラメータ効率の両面から説明する例である。(Source: [Convolutional Neural Networks](https://cs231n.github.io/convolutional-networks/))
## 可視化と転移学習
CNN の可視化では、層の活性・フィルタ重み・ニューロンを最大活性化する画像・CNN コードの t-SNE 埋め込み・画像領域の遮蔽を扱う。とくに遮蔽実験は入力パッチを順に隠し、対象クラスの確率低下をヒートマップ化することで、予測がどの領域に依存するかを調べる摂動型の[[帰属手法]]として理解できる。(Source: [Understanding and Visualizing CNNs](https://cs231n.github.io/understanding-cnn/))
転移学習では、十分に大きなデータセットを持たない実務が多いため、ImageNet などで事前学習した CNN を固定特徴抽出器として使うか、その重みを初期値として微調整する。初期層ほどエッジや色など汎用的な特徴を、後段ほど元データセット固有の特徴を担うという観察から、新しいデータセットの規模と元データとの類似性で固定範囲を選ぶ。(Source: [Transfer Learning](https://cs231n.github.io/transfer-learning/))
## 2026 年版との連続性
取得時の公式ノートは、古典的な CNN 中心の Module 1・2 に加え、Transformer による画像説明、自己教師あり学習、拡散モデル、CLIP、DINO まで課題範囲を広げている。つまり 30papers が選んだ 2016 年版は、現在のコンピュータビジョン教育の基礎層として残り、その上に新しいモデル族が積み重なっている。(Source: [[.raw/articles/30papers-cs231n-2026-07-28]]; [公式ノート目次](https://cs231n.github.io/))
## 評価
### 強み
- 問題設定・評価分割・損失・最適化・逆伝播・アーキテクチャを一つの因果的な学習経路としてつなぐ構成
- 数式、寸法計算、実装上の制約、視覚化を往復し、CNN をブラックボックスとして教えない点
- 転移学習や微調整まで含め、研究史と実践を接続する点
### 限界
- 30papers の個別ページには本文がなく、実体は更新され続ける公式教材への案内である。
- 2016 年時点の「標準」や性能評価を現在の最先端として解釈してはならない。
- 可視化ノートと転移学習ノートは公式サイト上でも草稿と明記され、一部節は見出しだけで本文が未完成である。
## 関連
- 概念: [[畳み込みニューラルネットワーク]]、[[帰属手法]]
- 人物: [[Andrej Karpathy]]、[[Fei-Fei Li]]、[[Justin Johnson]]、[[Yann LeCun]]
- 組織: [[Stanford University]]
- 歴史的比較: [[@2017__NeurIPS__Attention Is All You Need]]
## 出典
- [[.raw/articles/30papers-cs231n-2026-07-28]]
- [30papers: CS231n](https://30papers.com/papers/cs231n/)
- [CS231n official notes](https://cs231n.github.io/)
- [CS231n course page](https://cs231n.stanford.edu/)