深度學習試驗之 多層感知器

2021-07-15 03:17:07 字數 2436 閱讀 9053

mlp structure:input layer:28×

28 ,hidden layer:

100 , output layer:10

dataset:mnist

programming:matlab

pre-processing of raw data:原始影象歸一化、原始影象規格化,規格化的具體方式為: (原始影象-平均影象)/標準差影象,值得注意的是對於標準差影象畫素小於matlab預設最小浮點數精度 eps的用eps代替。

initialization:採用glorot和bengio等人提出的初始化方法,即在[−

b,b]

隨機取值,其中

b 滿足: b=

46hk

+hk+

1−−−

−−−−

−−−√

其中hk和

hk+1

分別是權值所連線的前後層的神經元個數。

batch size:100表一:驗證 資料預處理和模型初始化對mlp影響

epochs

normalized

initializing

training error

testing error1n

n4.5000

0.902010n

n4.5000

0.90201y

n1.5924

0.823410y

n0.1511

0.19431n

y0.0788

0.081210n

y0.0296

0.03811y

y0.0668

0.083210y

y0.0243

0.0496

注:initializing為y時指用benjio等人發明的方法進行引數初始化,而n代表直接用matlab的rand函式隨機賦值。

表二:驗證 bp過程中新增衝量項對mlp影響

epochs

momentum

training error

testing error

50.0

0.0354

0.0574

100.0

0.0243

0.0496

150.0

0.0185

0.0475

200.0

0.0150

0.0455

50.5

0.0265

0.0509

100.5

0.0168

0.0439

150.5

0.0123

0.0445

200.5

0.00998

0.0429

注:以下試驗中的mlp同試驗一和試驗二相比結構並無改變,但改變了隱層的啟用函式的型別,同樣情形下結果稍有偏差。

表三:驗證無監督預訓練對mlp影響

該試驗將通過自動編碼器(autoencoder)預訓練mlp隱層的引數,特別地通過denoising autoencoder改變小部分原始資料為0來訓練了引數(類似dropout)。

ae epochs

noise rate

sae training error

training error

testing error

10.00

/0.4460

0.8293

10.05

4.6184

0.0912

0.1007

10.10

4.5282

0.0895

0.0971

10.15

4.7982

0.0883

0.0955

10.20

4.8888

0.0908

0.1005

10.30

6.0715

0.1337

0.1824

10.40

7.8429

0.0991

0.1047

10.50

9.8934

0.1529

0.2058

20.50

9.1333

0.0948

0.1002

30.50

8.7382

0.1323

0.1825

40.50

8.8314

0.0888

0.0946

注:網路訓練過程中沒有對原始資料作任何預處理措施,衝量為0.5, ae epoches是指自動編碼器的訓練時代數,mlp均為1 epoch。

機器學習之多層感知器

keras是乙個用python編寫的用於神經網路開發的應用介面,呼叫介面可以實現神經網路 卷積神經網路 迴圈神經網路等常用深度學習演算法的開發 特點 tensorflow是乙個採用資料流圖,用於數值計算的開源軟體庫,可自動計算模型相關的微分導數 非常適合用於神經網路模型的求解。keras可看作為te...

多層感知器

在介紹單層感知器的時候,我們提到對於非線性可分問題,單層感知器是很難解決的,比如下面這個例子 很簡單的乙個分布,但事實上就是無法用直線進行分類,後來就出現了多層感知器,主要改變的地方是把第一層的感知器的輸出作為第二層感知器的輸入,即使只是簡單新增一層感知器,也足以解決xor問題,關鍵的原因是,多了一...

多層感知器(MLP)

一.簡述多層感知器 mlp 1.深度前饋網路 deep feedforward network 也叫前饋神經網路 feedforward neuarl network 或者多層感知機 multilayer perceptron,mlp 是典型的深度學習模型。這種模型被稱為前向 feedforward...