人工神經網路由三個組成部分。第乙個組成部分是架構(architecture),或稱為拓撲結構(topology),描述神經元的層次與連線神經元的結構。第二個組成部分是神經網路使用的激勵函式。第三個組成部分是找出最優權重值的學習演算法。
人工神經網路主要分為兩種型別。前饋人工神經網路(feedforward neural networks)是最常用的神經網路型別,一般定義為有向無環圖。訊號只能沿著最終輸入的那個方向傳播。另一種型別是反饋人工神經網路(feedback neural networks),也稱遞迴神經網路(recurrent neural networks),網路圖中有環。反饋環表示網路的一種內部狀態,隨著不同時間內輸入條件的改變,網路的行為也會發生變化。反饋人工神經網路的臨時狀態讓它們適合處理涉及連續輸入的問題。因為目前scikit-learn沒有
實現反饋人工神經網路。
多層感知器(multilayer perceptron,mlp)是最流行的人工神經網路之一。它的名稱不太恰當,多層感知器並非指單個帶有多個層次的感知器,而是指可以是感知器的人工神經元組成的多個層次。mpl的層次結構是乙個有向無環圖。通常,每一層都全連線到下一層,某一層上的每個人工神經元的輸出成為下一層若干人工神經元的輸入。mlp至少有三層人工神經元。輸入層(input layer)由簡單的輸入人工神經元構成。每個輸入神經元至少連線乙個隱藏層(hidden layer)的人工神經元。隱藏層表示潛在的變數;層的輸入和輸出都不會出現在訓練集中。隱藏層後面連線的是輸出層(output layer)。
隱藏層中的人工神經元,也稱單元(units)通常用非線性激勵函式,如雙曲正切函式(hyperbolic tangent function)和邏輯函式(logistic function),公式如下所示:
和其他的監督模型一樣,我們的目標是找到成本函式最小化的權重值。通常,mlp的成本函式是殘差平方和的均值,計算公式如下所示,其中的表示訓練樣本的數量:
這一章,我們將介紹一種強大的分類和回歸模型,稱為支援向量機(support vector machine,svm)。首先,我們將學習高維空間的特徵對映。然後,我們將介紹,在處理被對映到高維空間的資料時,支援向量機是如何緩解那些計算與綜合問題的。
mnist手寫數字資料庫(mixed national institute of standards and technology database)包含70000張手寫數字。
%matplotlib inline
import matplotlib.pyplot as plt
from sklearn.datasets import fetch_mldata
import matplotlib.cm as cm
digits = fetch_mldata('mnist original', data_home='data/mnist').data
counter = 1
for i in range(1, 4):
for j in range(1, 6):
plt.subplot(3, 5, counter)
plt.imshow(digits[(i - 1) * 8000 + j].reshape((28, 28)), cmap=cm.greys_r)
plt.axis('off')
counter += 1
plt.show()
sklearn學習筆記
1.波士頓房價線性回歸模型 from sklearn import datasets from sklearn.linear model import linearregression boston datasets.load boston data x boston.data y boston.t...
sklearn學習筆記
決策樹一般採用整合,具有隨機,不純度最優 from sklearn import tree from sklearn.datasets import load wine from sklearn.model selection import train test split 用於劃分訓練測試集數目 ...
sklearn學習筆記
from sklearn.datasets import load iris from sklearn.model selection import train test split from sklearn.feature extraction import dictvectorizer from...