PRML(初版)をおさらいする 第1章 序論

パターン認識と機械学習とは
--

> **パターン認識**は、**データから規則性(パターン)を見つけ出すこと**。工学を起源とする学問分野。
> **機械学習**は、**ヒューリスティックなルールや法則に頼らず、与えられたデータからパターンを見つけ出すこと**。計算機科学を起源とする。

機械学習のアプローチ
--

> 機械学習のアルゴリズムによって得られるのは**関数 $y\(x\)$**

関数 $y\(x\)$ は**入力データ $x$ から見つけ出された規則やパターン**。期待される規則やパターンを出力するように**関数のパラメータを更新**することを**訓練(training)**または**学習(learning)**という。

**与えられるデータと、期待される規則やパターンの性質**によって、機械学習の問題は以下のように大別される。

- **教師あり学習(supervised learning)**
    - クラス分類(classification)
    - 回帰(regression)
- **教師なし学習(unsupervised learning)**
    - クラスタリング(clustering)
    - 密度推定(density estimation)
    - 視覚化(visualization)
- **強化学習(reinforcement learning)**

**教師**とは、**入力ベクトル(input vector)と対になって与えられる教師データ**のこと。**目標ベクトル(target vector)**とも呼ばれる。目標ベクトルが**離散カテゴリ毎に独立な有限個のベクトル**であれば**クラス分類**、**連続変数**であるような場合は**回帰**の問題となる。

個人的に、この中では強化学習に関する理解が浅いので、強化したい(上手いこと言った～～！！)


回帰
--

### 回帰問題における機械学習

参考: [回帰分析(Wikipedia)](https://ja.wikipedia.org/wiki/%E5%9B%9E%E5%B8%B0%E5%88%86%E6%9E%90)

> 回帰（かいき、英: regression）とは、統計学において、$Y$ が連続値の時にデータに $Y=f\(X\)$ という**モデル**(「定量的な関係の構造」)を当てはめる事。

- **訓練データ**: **入力ベクトル(input vector) $\vec{x}$**と**目標ベクトル(target vector) $\vec{t}$**の組
- **訓練集合**: 訓練データの集合

$\vec{t}=y\(\vec{x}\)$ は、**入力ベクトル $\vec{x}$ と目標ベクトル $\vec{t}$ の関係を $y$ というモデルによって説明する関数**である。ここでいう**「説明する」**とは、**「入力ベクトル $\vec{x}$ に対応する目標ベクトル $\vec{t}$ を予測する」**ことであり、**予測 $\vec{\hat{t}}=y\(\vec{x}\)$ と実際の $\vec{t}$ の誤差 $\vec{\hat{t}}-\vec{t}$ が小さいほど $\vec{x}$ と $\vec{t}$ の関係をよく説明できている**ということになる。したがって、**誤差 $\vec{\hat{t}}-\vec{t}$ が小さい $y\(\vec{x}\)$ のパラメータを推定する**のが回帰問題における機械学習の目的である。

例えば、ある訓練集合 $A$ の任意の元 $\vec{a}=\\{x,t\\}$ に対して**「$t$ は $x$ の二次関数である」**と説明するとき、**「二次関数」**が**モデル $y$** に相当する。モデル $y$ は $y=ax^2+bx+c$ であり、**$a$、$b$、$c$ がモデルパラメータ**である。


入力ベクトルと目標ベクトルが現実の観測信号の場合、入力ベクトル $\vec{x}$ と目標ベクトル $\vec{t}$ の関係には**不確実性(uncertainty)**がある。この不確実性は「$\vec{t}$ が本質的に $\vec{x}$ に対して**確率的(stochastic)**である」か「**観測されない信号源**の存在によって $\vec{t}$ が変動している」か、いずれかによるものである。

この不確実性の存在により、関数 $y\(\vec{x}\)$ のパラメータを厳密に推定することはできない。どんなパラメータを選ぼうとも、予測 $\vec{\hat{t}}=y\(\vec{x}\)$ と目標ベクトル $\vec{t}$ の間には一般に**誤差が生じる**。したがって**全ての訓練データ対して誤差が無い、あるいは小さ過ぎる場合、そのパラメータは妥当とはいえない**。このような状態を、**過学習(over-fitting)**という。

とはいえ、$\vec{x}$ と $\vec{t}$ の関係について妥当な説明を得るためには、予測誤差 $y\(\vec{x}\)- \vec{t}$ を小さくする必要がある。基本的なアプローチは、まず何らかの**誤差関数を定義**し、**訓練集合の各データに対する誤差を計算**し、それらの**累積値が小さくなるようなパラメータを推定する**というものである。誤差関数には**二乗平均平方根誤差(RMS error)**がよく用いられるが、目的に応じて適切なものを選択する。

さらに**与えられた訓練集合について誤差が少ない**だけでなく、まだ与えられていない**未知のデータについても誤差が少ない**ならば、$\vec{t}=y\(\vec{x}\)$ による予測は本質的に正しいと言える。未知のデータに対する誤差を低減することを**汎化(generalization)**といい、その誤差の少なさを**汎化性能**という。汎化は、機械学習の中心的な課題である。


雑多なメモ
--
- **前処理**は大事
    - **訓練データや評価データが実際の観測**である場合、観測されない信号源である**観測時のコンテキスト**が存在する。これにより**不確実性**が高まり、**厳密なパラメータ推定が困難**になる。そして**取り除ける不確実性は取り除くに越したことはない**
    - **写真**を例に挙げると、**撮影する角度**、**写真内の被写体の配置や大きさ**、**光源の位置**などは全て**データに影響するコンテキスト**である。**被写体の配置や大きさ**は、拡縮や平行移動によって均一化できる

- **モデルの選択**も大事
    - 仮定したモデルの表現能力が実際のモデルの表現能力に対して低すぎたりると、そのモデルでは入力ベクトルと目標ベクトルの関係を説明し切れない。しかし仮定したモデルの表現能力が高すぎると過学習の恐れがある。
    - だから**モデルの選択は重要**で、モデルパラメータのチューニングに用いる訓練集合とは別に**検証用集合(validation set)**を用いて汎化性能を評価し、**最適なモデルを選択するという方法**がある…が訓練データが勿体無いし、**もっといい方法があるよ、とのこと(1.3 節)**

- 最適なモデルのパラメータを学習することを**フィッティング(fitting)**と呼ぶ。**訓練データに対してモデルの形状をフィットさせていく**イメージ

- 過学習を抑制する方法として**正則化(regularization)**がある
    - 誤差関数にモデルパラメータの増大に対する**罰金(penalty)項**を付加することで、極端なモデルパラメータになることを抑制するもの。このようなテクニックを**縮小推定(shrinkage)**と呼び、正則化項が 2 次の場合を特に**リッジ回帰(ridge regression)**と呼ぶ
    - ニューラルネットワークの文脈においては**荷重減衰(weight decay)**として知られている

確率論
--
> 確率論(probability theory)は不確実性に関する定量化と操作に関して一貫した枠組みを与え、パターン認識の基礎の中心を担っている。

### 確率の基本法則

- **加法定理(sum rule)**  
$p\(X\)=\sum_{Y} p\(X,Y\)$
- **乗法定理(product rule)**  
$p\(X,Y\)=p\(Y\|X\)p\(X\)$

加えて、

- **対称性**  
$p\(X,Y\)=p\(Y,X\)$

これらから導かれるのが

- **ベイズの定理(Bayes' theorem)**  
$p\(X\|Y\)=\frac{p\(Y\|X\)p\(X\)}{p\(Y\)}$

左辺は事象 $Y$ が生起したという情報が与えられたときに事象 $X$ が生起する(条件付き)確率。右辺中の $p\(Y\)$ は、$X$ によらず一定であり**正規化定数**と捉えることができる。したがって、ベイズの定理の式は

$p\(X\|Y\) \approx p\(Y\|X\)p\(X\)$

と考えることができる。このとき $p\(X\)$ は、事象 $Y$ が生起したという情報が与えられる以前に分かる確率であるから、**事前確率(prior probability)**と呼ばれる。それに対して、$p\(X\|Y\)$ は、事象 $Y$ が生起したという情報が与えられた後に得られる確率であるから、**事後確率(posterior probability)**と呼ばれる。


### 用語

- **同時確率(joint probability)**
    - $X$ と $Y$ の同時確率 $p\(X,Y\)$ は、事象 $X$ と事象 $Y$ が同時に生起する確率。順序性は無く、$X$ と $Y$ を入れ替えても同じ
- **周辺確率(marginal probability)**
    - $X$ の $Y$ についての周辺確率 $\sum_{Y} p\(X,Y\)$は、全ての $y \in Y$ について、事象 $X$ と事象 $y$ が同時に生起する確率を足し合わせた確率。この足し合わせる操作を**周辺化**という。$p\(X\)$ に等しい
- **条件付き確率(conditional probability)**
    - 条件付き確率 $p\(X\|Y\)$ は、事前条件として事象 $Y$ が生起したことが明らかなときに $X$ が生起する確率
- **独立(independent)**
    - $p\(X,Y\)=p\(X\)p\(Y\)$ が成り立つとき、事象 $X$ と $Y$ は独立である。
    - $p\(X,Y\)=p\(Y\|X\)p\(X\)=p\(X\)p\(Y\)$ ということは、$p\(Y\|X\)=p\(Y\)$ を意味する。これはつまり、$X$ が生起したことが明らかになろうが、$Y$ の生起する確率には影響がないということである。


確率密度の話
--

オッ、急に難しい感じになってきたぞ～～
というわけで記事を切ります。

---