Machine Learning, Week3

Classification (分類問題)を学ぶ

  • 二値分類,例えばメールをインプットとしてSpam/NotSpam(=1/0)というようなフィルタ

二値出力である以上,出力結果は各アウトプット(1及び0)の確率を出現させたい.

ところが,線形回帰の回帰式はもちろん確率の制約はないので0\leq h_{\theta}(x) \leq 1 を満たすように仮説の値域を変えてやる必要がある.そこにsigmoid関数を用いる.

h_{\theta}(x) = \dfrac{1}{1+e^{\theta ^T x}} とすると,これは確率の制約を満たす.パラメータ\theta をどのように選ぶか.これも線形回帰同様に,cost functionを最小化させるような\theta を選ぶ.しかし,仮説を変えたのでcost functionもこれに応じて変形が必要.

Screen Shot 2017-02-22 at 20.08.51.png

yの値に応じてcost functionを場合分けして考える.この関数はy=1の時,h_{\theta}(1)=0 となりコスト最小,反対にh_{\theta}(0)=+\infty となる.y=0 の時はこれと左右対称な形状になる.

この関数を選ぶわけは,実はもう一つあってパラメータの更新式が,線形回帰の場合と全く同じになるからである.

パラメータの更新式の定義は

\theta_j := \theta_j - \alpha \dfrac{\partial}{\partial \theta_j} J(\theta)

なので,各自検算してほしい.

Screen Shot 2017-02-22 at 20.14.06.png

多クラスの分類問題でも同様で,nクラス分類問題は二値分類問題を全てのクラスに対して行うのでn回の二値分類問題を行う.得られたh_{\theta}(x) の成分の中で最大の確率が分類されたクラス.

  • Overfittingに対する対処

特徴量が多すぎると,訓練データに特化しすぎて過学習(Overfitting)を起こす.(うまく汎化できてない).これを直すには

  1. 特徴量を減らす
  2. 正規化を行う

ことが挙げられる.正規化というのはcost functionに次のような正規化パラメータ\lambdaを入れる処理である.

Screen Shot 2017-02-22 at 20.24.56.png

この値が非常に大きいと,\theta_j が小さくなるため,特徴量を減らすのと同じ効果が得られる.

パラメータ更新式は0と1以上で異なっており,次の通り.

Screen Shot 2017-02-22 at 20.27.50.png

線形回帰の場合と同様に,正規化された正規方程式のパラメータの式は次の通り.

Screen Shot 2017-02-22 at 20.28.57.png

 

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中