Machine Learning, Week4

Multi-class classification と Neural Network を学ぶ

  • 多値分類は one-vs-all 法により,二値分類問題を全てのクラスに対しておこなったものとなる

screen-shot-2017-03-04-at-14-02-53

各dataに対して,class1, class2, class3… それぞれの確率を求め,その中で最も確率が高いものがそのdataが属するクラスに分類される.すなわち,

max_{i} h_{\theta}^{(i)}(x)

仮に,mクラスあったとすればone-vs-all法で行う二値分類の数はm回となる.

  • Neural network

これまではずっと回帰モデルが線形として学習をしてきた.すなわち,分類する境界面が平面であると仮定してきた(二次元だと直線)

しかし,実際には線形であることは少ない.例えば次のようなXNORの場合

Screen Shot 2017-03-04 at 14.21.43.png

どのような境界線を引いても,○と×は分けられないことが分かると思う.

そこで,考案されたのがNeuralNetworkである.

Screen Shot 2017-03-04 at 14.23.14.png

線形の時とは異なり,仮説h_{\theta}(x) の計算に他の次元を織り込む.そして,その織り込み方はbias unitを加えた上図のようなものだ.

大事なことはこれを多段に重ねる.すなわち,あるunitの出力は別のunitの入力として文字通りnetworkを構築することにある.

例えば,冒頭のXNORはどのように表せるかというと

Screen Shot 2017-03-04 at 14.29.16.png

x1 XNOR x2 = (x1 AND x2) OR ((NOT x1) AND (NOT x2))

と分解し,x1 AND x2 と (NOT x1) AND (NOT x2) の二つの出力を得たのち,それらを入力として(bias unitを加え)再び OR のlayerにつなげる.こうすることで,右下の真理値表の通り,XNORが得られる.

ANDやORは線形回帰でも表せるが,それを多段に組み合わせることによってXNORは解決できた.

広告

コメントを残す

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

WordPress.com ロゴ

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

Twitter 画像

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

Facebook の写真

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

Google+ フォト

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

%s と連携中