日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

神经网络迭代次数的线性累加现象

發布時間:2025/4/5 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 神经网络迭代次数的线性累加现象 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

神經網絡對應每個收斂標準δ都有一個特征的迭代次數n,因此可以用迭代次數曲線n(δ)來評價網絡性能。

在《神經網絡的迭代次數是一個線性的變量嗎?》中得到表達式

?

一個二分類網絡分類兩個對象A和B,B中有K張圖片,B的第K張圖片被取樣的概率為p,B中第K張圖片相對A的迭代次數為n最終的迭代次數等于pn的累加和。

?

本文驗算這個表達式是否正確

實驗過程

制作一個帶一個3*3卷積核的神經網絡,測試集是mnist的0和一張圖片x,將28*28的圖片縮小成9*9,隱藏層30個節點所以網絡的結構是

?

這個網絡分成兩個部分左邊的是讓mnist 0向1,0收斂,右邊的是讓x向 0,1收斂。但是讓左右兩邊的權重實現同步更新,實現權重共享。前面大量實驗表明這種效果相當于將兩個彈性系數為k1,k2的彈簧并聯成一個彈性系數為k的彈簧,并且讓k1=k2=k/2的過程。

將上圖簡寫成

S(mnist0)81-(con3*3)49-30-2-(1,0)

S(x)81-(con3*3)49-30-2-(0,1)

w=w,w1=w1,w2=w2

進一步簡寫成

d2(mnist0, x=1)81-con(3*3)49-30-2-(2*k) ,k∈{0,1}

這個網絡的收斂標準是

if (Math.abs(f2[0]-y[0])< δ? &&? Math.abs(f2[1]-y[1])< δ?? )

本文嘗試了δ從0.5到1e-6在內的26個值,訓練集是mnist0

圖片x就是一張二維數組,讓x=1.

具體進樣順序

????

進樣順序

迭代次數

???

δ=0.5

????

mnist 0-1

1

?

判斷是否達到收斂

X

2

?

判斷是否達到收斂

梯度下降

????

mnist 0-2

3

?

判斷是否達到收斂

X

4

?

判斷是否達到收斂

梯度下降

????

……

????

mnist 0-4999

9997

?

判斷是否達到收斂

X

9998

?

判斷是否達到收斂

梯度下降

????

……

????

如果4999圖片內沒有達到收斂標準再次從頭循環

??

mnist 0-1

9999

?

判斷是否達到收斂

X

10000

?

判斷是否達到收斂

……

????

達到收斂標準記錄迭代次數,將這個過程重復199次

???

δ=0.4

????

……

????

用這個方法可以得到網絡

d2(mnist0, x=1)81-con(3*3)49-30-2-(2*k) ,k∈{0,1}

的迭代次數曲線n1。

用同樣的辦法制作另一個網絡

d2(mnist0, x=0.1)81-con(3*3)49-30-2-(2*k) ,k∈{0,1}

讓mnist 0向1,0收斂,右邊的是讓x向 0,1收斂。但讓x=0.1.得到迭代次數曲線n0.1

實驗數據

在《測量一組對角矩陣的頻率和質量》中已經將這兩個迭代次數都測出來了

?

1

0.1

δ

迭代次數n1

迭代次數n0.1

0.5

17.40201005

17.87437186

0.4

951.2110553

1408.577889

0.3

1144.577889

1720.517588

0.2

1313.633166

1995.110553

0.1

1505.824121

2243.834171

0.01

2362.115578

3001.552764

0.001

4129.020101

4007.532663

1.00E-04

10353.37186

5532.668342

9.00E-05

10653.93467

5683.753769

8.00E-05

11292.43719

6131.934673

7.00E-05

11761.11055

6106.919598

6.00E-05

12657.69347

6014.688442

5.00E-05

13305.44221

6455.321608

4.00E-05

15844.29648

6724.738693

3.00E-05

17291.77387

7055.80402

2.00E-05

20753.56281

7763.41206

1.00E-05

27708.19598

8749.050251

9.00E-06

29358.8593

8879.41206

8.00E-06

30689.87437

9387.150754

7.00E-06

33437.22111

9532.648241

6.00E-06

36960.63819

9957.683417

5.00E-06

40669.92462

10661.56281

4.00E-06

44594.04523

11025.0402

3.00E-06

51522.10553

11653.63317

2.00E-06

67583.53266

13076.9196

1.00E-06

107224.5276

15184.58794

?

現在做第3個網絡

d2(mnist0? ; 60% x=1, 40%x=0.1)81-con(3*3)49-30-2-(2*k) ,k∈{0,1}

讓mnist 0向1,0收斂,右邊的是讓x向 0,1收斂。但讓x在1和0.1之間隨機。

讓1與0.1的比例是6:4.

具體進樣順序

???

?

進樣順序

迭代次數

??

?

δ=0.5

???

?

mnist 0-1

1

?

判斷是否達到收斂

60% x=1,40% x=0.1

2

?

判斷是否達到收斂

梯度下降

???

?

mnist 0-2

3

?

判斷是否達到收斂

60% x=1,40% x=0.1

4

?

判斷是否達到收斂

梯度下降

???

?

……

???

?

mnist 0-4999

9997

?

判斷是否達到收斂

60% x=1,40% x=0.1

9998

?

判斷是否達到收斂

梯度下降

???

?

……

???

?

如果4999圖片內沒有達到收斂標準再次從頭循環

?

?

mnist 0-1

9999

?

判斷是否達到收斂

60% x=1,40% x=0.1

10000

?

判斷是否達到收斂

……

???

?

達到收斂標準記錄迭代次數,將這個過程重復199次

??

?

δ=0.4

???

?

……

???

?

相當于分類兩個圖片集,一個圖片集是mnist的0另一個圖片集只有兩張圖片,兩張圖片被取樣的概率是6:4

得到的數據

1:0.1=6:4

????????
?????????

f2[0]

f2[1]

迭代次數n

平均準確率p-ave

δ

耗時ms/次

耗時ms/199次

耗時min/199次

最大準確率p-max

0.499731669

0.498415314

15.4321608

0.502389014

0.5

829.9849246

165167

2.752783333

0.773049645

0.608582727

0.391220516

1106.678392

0.490625705

0.4

1032.306533

205430

3.423833333

0.976832151

0.712834918

0.28679338

1418.437186

0.576345082

0.3

1117.60804

222422

3.707033333

0.994799054

0.814122794

0.185951639

1466.688442

0.623818858

0.2

1118.422111

222661

3.711016667

0.997163121

0.912685745

0.087285272

1781.492462

0.646250163

0.1

1156.246231

230095

3.834916667

0.995271868

0.991973102

0.008021737

2625.341709

0.638720791

0.01

1313.492462

261385

4.356416667

0.996217494

0.99925116

7.48E-04

4167.311558

0.607593523

0.001

1618.939698

322169

5.369483333

0.998108747

0.999921571

7.86E-05

8358.19598

0.553640543

1.00E-04

2028.286432

403629

6.72715

0.995744681

0.999930909

6.92E-05

8459.060302

0.551466553

9.00E-05

2364.964824

470628

7.8438

0.997635934

0.999937007

6.29E-05

9290.869347

0.535559595

8.00E-05

2486.271357

494768

8.246133333

0.995744681

0.99994614

5.39E-05

9643.371859

0.547686423

7.00E-05

2552.115578

507879

8.46465

0.996690307

0.999954978

4.50E-05

10088.04523

0.546776435

6.00E-05

2647.643216

526881

8.78135

0.993853428

0.999961134

3.88E-05

11241.1809

0.529522316

5.00E-05

2855.462312

568237

9.470616667

0.995744681

0.999968124

3.18E-05

12429.0402

0.536198724

4.00E-05

3066.41206

610216

10.17026667

0.996217494

0.999976997

2.30E-05

13595.53266

0.547436948

3.00E-05

3072.015075

611347

10.18911667

0.993853428

0.999984209

1.58E-05

14639.11055

0.553756965

2.00E-05

3967.502513

789549

13.15915

0.995744681

0.99999235

7.65E-06

21105.31156

0.514109555

1.00E-05

5362.361809

1067111

17.78518333

0.986288416

0.999992956

7.04E-06

23825.72362

0.523351985

9.00E-06

5868.38191

1167816

19.4636

0.997635934

0.999993873

6.13E-06

22955.43216

0.5491999

8.00E-06

4949.914573

985034

16.41723333

0.993853428

0.999994449

5.56E-06

25968.22613

0.525471328

7.00E-06

6241.738693

1242135

20.70225

0.995744681

0.999995305

4.70E-06

26669.97487

0.516017439

6.00E-06

6459.59799

1285476

21.4246

0.991489362

0.999996124

3.87E-06

30357.0603

0.519445929

5.00E-06

6901.41206

1373382

22.8897

0.997163121

0.999996842

3.16E-06

32991.17085

0.532447106

4.00E-06

7681.236181

1528582

25.47636667

0.996217494

0.999997667

2.33E-06

37621.35176

0.52875251

3.00E-06

8458.40201

1683222

28.0537

0.994326241

0.99999837

1.63E-06

49854.86935

0.542544876

2.00E-06

11146.78392

2218227

36.97045

0.995744681

0.999999185

8.15E-07

74084.86935

0.528457892

1.00E-06

16062.72362

3196485

53.27475

0.995271868

所以現在有了3個迭代次數分別是

x=1

n1

x=0.1

n0.1

x=1||x=0.1

n1-0.1

驗算n1-0.1與n1和n0.1之間的關系

?

1

0.1

理論值

實測值

理論值/實測值

δ

迭代次數n1

迭代次數n0.1

0.6*n1+0.4*n0.1

 

0.5

17.40201005

17.87437186

17.59095477

15.4321608

1.139889287

0.4

951.2110553

1408.577889

1134.157789

1106.678392

1.024830517

0.3

1144.577889

1720.517588

1374.953769

1418.437186

0.969344136

0.2

1313.633166

1995.110553

1586.224121

1466.688442

1.081500389

0.1

1505.824121

2243.834171

1801.028141

1781.492462

1.010965906

0.01

2362.115578

3001.552764

2617.890452

2625.341709

0.997161796

0.001

4129.020101

4007.532663

4080.425126

4167.311558

0.979150483

1.00E-04

10353.37186

5532.668342

8425.090452

8358.19598

1.008003458

9.00E-05

10653.93467

5683.753769

8665.862312

8459.060302

1.024447398

8.00E-05

11292.43719

6131.934673

9228.236181

9290.869347

0.993258632

7.00E-05

11761.11055

6106.919598

9499.434171

9643.371859

0.985073925

6.00E-05

12657.69347

6014.688442

10000.49146

10088.04523

0.991321037

5.00E-05

13305.44221

6455.321608

10565.39397

11241.1809

0.939882923

4.00E-05

15844.29648

6724.738693

12196.47337

12429.0402

0.981288432

3.00E-05

17291.77387

7055.80402

13197.38593

13595.53266

0.970714885

2.00E-05

20753.56281

7763.41206

15557.50251

14639.11055

1.062735503

1.00E-05

27708.19598

8749.050251

20124.53769

21105.31156

0.953529524

9.00E-06

29358.8593

8879.41206

21167.0804

23825.72362

0.888412908

8.00E-06

30689.87437

9387.150754

22168.78492

22955.43216

0.965731543

7.00E-06

33437.22111

9532.648241

23875.39196

25968.22613

0.919407889

6.00E-06

36960.63819

9957.683417

26159.45628

26669.97487

0.980857927

5.00E-06

40669.92462

10661.56281

28666.5799

30357.0603

0.944313435

4.00E-06

44594.04523

11025.0402

31166.44322

32991.17085

0.944690425

3.00E-06

51522.10553

11653.63317

35574.71658

37621.35176

0.945599106

2.00E-06

67583.53266

13076.9196

45780.88744

49854.86935

0.918283169

1.00E-06

107224.5276

15184.58794

70408.55176

74084.86935

0.950376944

?

將理論值和實測值畫成圖

?

從數值看

這個公式還是符合的很好的。

?

表明這個關系是成立的。

實驗參數

學習率 0.1

權重初始化方式

Random rand1 =new Random();

int ti1=rand1.nextInt(98)+1;

int xx=1;

if(ti1%2==0)

{ xx=-1;}

tw[a][b]=xx*((double)ti1/x);

第一層第二層和卷積核的權重的初始化的x分別為1000,1000,200

?

本文原始數據比較多有感興趣的朋友可以到我的資源里下載

?

總結

以上是生活随笔為你收集整理的神经网络迭代次数的线性累加现象的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。