下西洋棋的例子

如果使用下西洋棋的例子來說明,我們想要學習預測白棋是否會勝利。Input 資料通常會是整個棋盤的位置,活是移動的狀態,label 會記錄最後贏或是輸。也就是說,會有很多個二元的屬性,分別代表每一種可能出現在場上的情況。

線性迴歸(Logistic Regression)

線性迴歸會透過學習,決定一筆新資料的情況是好是壞。假如資料中的白子在 h4 獲勝的數量比較多,那麼這個屬性對勝利的影響也會比較強烈。線性迴歸考慮的是每一個屬性對結果的影響(稱為權重),再把每一個屬性總和起來。這樣的情況下,就會忽略屬性間的組合,就像如果對方的國王在 a1 的話,那麼在 b2 的女王就應該更強。

神經網路(Neural Network)

神經網路會考慮具有意義的隱藏節點(hidden nodes),像是
這些隱藏節點所代表的意義,有可能可以從一開始的 Input 直接反映出來,但也有可能會隱藏在很多層之後。神經網路可以考慮這些屬性組合過後產生的隱藏屬性。因此,在屬性間可能因為組合產生比較複雜的情況下,神經網路通常會考慮比較多的屬性。但也因此,需要比較複雜的計算與結構。

模型

另一個角度來看,如下圖表示,可以把回歸視為只有一層的神經網路。神經網絡算法是將分類問題映射到了一個新的特徵空間的,同時考慮原本的輸入及隱藏節點,通過解決新特徵空間的分類問題問題。

Sebastian Raschka, Michigan State University, on KDnuggets

Reference

[1] Difference between logistic regression and neural networks
[2] [机器学习] Coursera ML笔记 - 神经网络(Representation


License


本著作由 Chang, Wei-Yaun (v123582) 製作,
創用CC 姓名標示-相同方式分享 3.0 Unported授權條款釋出。