一、引入糖尿病病情**問題的資料
from sklearn.datasets import load_diabetes
diabets=load_diabetes()
二、對資料進行劃分,同時對屬性值進行轉換
x=diabets.data
y=diabets.target
from sklearn.model_selection import train_test_split #引入分片模組
x_train,x_test,y_train,y_test=train_test_split(x,y,test_size=0.3,random_state=32)
from sklearn.preprocessing import standardscaler #引入屬性轉換模組
xs=standardscaler()
xs.fit(x_train)
輸出:standardscaler(copy=true, with_mean=true, with_std=true)
x_train=xs.transform(x_train)
x_test=xs.transform(x_test) #對屬性值進行轉換
三、引入神經網路模型(分類)並進行訓練和**
①隱層層數為1,一層100個神經元
from sklearn.neural_network import mlpclassifier
clf=mlpclassifier(solver='lbfgs',alpha=1e-5,hidden_layer_sizes=(100),random_state=5)
clf.fit(x_train,y_train)
輸出:
mlpclassifier(activation='relu', alpha=1e-05, batch_size='auto', beta_1=0.9,
beta_2=0.999, early_stopping=false, epsilon=1e-08,
hidden_layer_sizes=100, learning_rate='constant',
learning_rate_init=0.001, max_iter=200, momentum=0.9,
nesterovs_momentum=true, power_t=0.5, random_state=5, shuffle=true,
solver='lbfgs', tol=0.0001, validation_fraction=0.1, verbose=false,
warm_start=false)
clf.predict(x_test)
輸出:
array([202., 184., 98., 68., 59., 91., 242., 143., 202., 142., 63.,
263., 277., 53., 71., 181., 71., 182., 257., 146., 210., 111.,
43., 124., 137., 265., 220., 293., 277., 321., 293., 97., 173.,
66., 64., 99., 91., 306., 160., 98., 233., 143., 51., 42.,
98., 103., 140., 59., 99., 161., 66., 111., 263., 277., 102.,
92., 140., 66., 91., 140., 275., 293., 129., 168., 178., 180.,
262., 60., 92., 49., 277., 151., 277., 128., 181., 83., 181.,
120., 83., 66., 64., 196., 144., 245., 104., 63., 77., 47.,
151., 275., 78., 196., 107., 128., 83., 140., 53., 168., 140.,
84., 60., 245., 195., 103., 293., 55., 262., 306., 60., 53.,
186., 97., 196., 94., 140., 84., 183., 68., 91., 98., 91.,
63., 59., 214., 198., 68., 48., 98., 171., 161., 310., 64.,
200.])
clf.score(x,y)
輸出:
0.01809954751131222
②隱層層數為1,一層1000個神經元
clf=mlpclassifier(solver='lbfgs',alpha=1e-5,hidden_layer_sizes=(1000),random_state=5)
clf.fit(x_train,y_train)
clf.predict(x_test)
clf.score(x,y)
輸出:
0.013574660633484163
③隱層層數為1,一層10000個神經元
clf=mlpclassifier(solver='lbfgs',alpha=1e-5,hidden_layer_sizes=(10000),random_state=5)
clf.fit(x_train,y_train)
clf.predict(x_test)
clf.score(x,y)
輸出:
0.013574660633484163
④隱層層數為2,一層100個神經元
clf=mlpclassifier(solver='lbfgs',alpha=1e-5,hidden_layer_sizes=(100,100),random_state=5)
clf.fit(x_train,y_train)
clf.predict(x_test)
clf.score(x,y)
輸出:
0.013574660633484163
⑤隱層層數為3,一層100個神經元
clf=mlpclassifier(solver='lbfgs',alpha=1e-5,hidden_layer_sizes=(100,100),random_state=5)
clf.fit(x_train,y_train)
clf.predict(x_test)
clf.score(x,y)
輸出:
0.013574660633484163
四、引入神經網路模型(回歸)並進行訓練和**
①隱層層數為1,一層100個神經元
from sklearn.neural_network import mlpregressor
clf=mlpregressor(solver='lbfgs',alpha=1e-5,hidden_layer_sizes=(100),random_state=5)
clf.fit(x_train,y_train)
clf.score(x,y)
輸出:
0.5752407606575551
②隱層層數為1,一層1000個神經元
clf=mlpregressor(solver='lbfgs',alpha=1e-5,hidden_layer_sizes=(1000),random_state=5)
clf.fit(x_train,y_train)
clf.score(x,y)
輸出:
0.5619017692047168
③隱層層數為1,一層10000個神經元
clf=mlpregressor(solver='lbfgs',alpha=1e-5,hidden_layer_sizes=(10000),random_state=5)
clf.fit(x_train,y_train)
clf.score(x,y)
輸出:
0.5577797129300099
④隱層層數為2,一層100個神經元
clf=mlpregressor(solver='lbfgs',alpha=1e-5,hidden_layer_sizes=(100,100),random_state=5)
clf.fit(x_train,y_train)
clf.score(x,y)
輸出:
0.5392360541382879
⑤隱層層數為2,一層100個神經元
clf=mlpregressor(solver='lbfgs',alpha=1e-5,hidden_layer_sizes=(100,100),random_state=5)
clf.fit(x_train,y_train)
clf.score(x,y)
輸出:
0.557065308006742
小節:增加模型的隱層層數,神經原個數不一定會使評分公升高。 神經網路模型
神經網路往往不需要人為的構造資料特徵,因為乙個神經元就可以看做是原始資料的不同特徵的組合,在神經元數目足夠大,層數足夠多的情況下,是很容易準確的進行分類的.神經網路是由具有適應性的簡單單元組成的廣泛並行互連的網路,它的組織能夠模擬生物神經系統對真實世界物體所做出的互動反應 神經元模型 m p神經元模...
神經網路 python實現神經網路
神經網路系列目錄 神經網路 神經網路原理介紹 bp演算法 神經網路 sklearn引數介紹及應用 神經網路實戰 主播綜合評分回歸 實戰 最小二乘法 梯度下降法區別及python實現 本篇博文通過python 實現神經網路,採用sklearn自帶的手寫數字集,看分類情況如何 一 匯入資料集並標準化 資...
神經網路語言模型
基於計數的n gram語言模型 出現的問題 1 資料稀疏,有些資料未出現過 2 忽略語義的相關性,如 無聊 與 枯燥 雖然語義相似,但無法共享資訊。詞語表示為 one hot表示法。基於分布式表示的n gram語言模型 出現的問題 1 詞向量 如何將每個詞對映到實數向量空間中的乙個點 2 f函式的設...