用神经网络二分类吸引子与排斥子
制作一個4*4*2結構的神經網絡,向這個網絡輸入吸引子并讓這個網絡向1,0收斂
將這個網絡簡單表示成
s(c)-4-4-2-(2*k),k∈(0,1)
用同樣的辦法制作一個4*4*2的網絡向這個網絡輸入排斥子,并讓這個網絡向0,1收斂將這個網絡表示成
s(p)-4-4-2-(2*k),k∈(0,1)
現在用這兩個網絡組成一個網絡,并讓4*4*2部分的權重共享,前面大量實驗表明這種效果相當于將兩個彈性系數為k1,k2的彈簧并聯成一個彈性系數為k的彈簧,并且讓k1=k2=k/2的過程。
將這兩個網絡
s(c)-4-4-2-(2*k),k∈(0,1)
s(p)-4-4-2-(2*k),k∈(0,1)
合起來簡化成
d(c,p)-4-4-2-(2*k),k∈(0,1)
這個網絡的收斂標準是
if (Math.abs(f2[0]-y[0])< δ? &&? Math.abs(f2[1]-y[1])< δ?? )
因為對應每個收斂標準δ都有一個特征的迭代次數n與之對應因此可以用迭代次數曲線n(δ)來評價網絡性能。
本文嘗試了δ從0.5到1e-7在內的35個值.
| 具體進樣順序 | ? | ? | ? |
| 進樣順序 | 迭代次數 | ? | ? |
| δ=0.5 | ? | ? | ? |
| c | 1 | ? | 判斷是否達到收斂 |
| p | 2 | ? | 判斷是否達到收斂 |
| 梯度下降 | ? | ? | ? |
| c | 3 | ? | 判斷是否達到收斂 |
| p | 4 | ? | 判斷是否達到收斂 |
| 梯度下降 | ? | ? | ? |
| …… | ? | ? | ? |
| 達到收斂標準測量準確率,記錄迭代次數,將這個過程重復199次 | ? | ? | |
| δ=0.4 | ? | ? | ? |
| … | ? | ? | ? |
| δ=1e-7 | ? | ? | ? |
?
其中吸引子為
Random rand1 =new Random();
int ti1=rand1.nextInt(98)+1;
x[0]=((double)ti1/100);
?
Random rand2 =new Random();
int ti2=rand2.nextInt(98)+1;
x[3]=((double)ti2/100);
排斥子為
Random rand1 =new Random();
int ti1=rand1.nextInt(98)+1;
x[0]=1+((double)ti1/100);
?
Random rand2 =new Random();
int ti2=rand2.nextInt(98)+1;
x[3]=1+((double)ti2/100);
?
得到的數據
| f2[0] | f2[1] | 迭代次數n | 平均準確率p-ave | δ | 耗時ms/次 | 耗時ms/199次 | 耗時 min/199 |
| 0.4971798 | 0.6221749 | 77.246231 | 0 | 0.5 | 0.9447236 | 188 | 0.003133333 |
| 0.3845949 | 0.6054663 | 714.47739 | 0 | 0.4 | 1.8542714 | 385 | 0.006416667 |
| 0.461226 | 0.542424 | 1496.4422 | 0 | 0.3 | 3.758794 | 748 | 0.012466667 |
| 0.8074469 | 0.2004141 | 2202.7136 | 0 | 0.2 | 4.9346734 | 982 | 0.016366667 |
| 0.9127876 | 0.091302 | 3383.8744 | 0 | 0.1 | 6.5477387 | 1303 | 0.021716667 |
| 0.9911862 | 0.0090039 | 8291.6432 | 0 | 0.01 | 13.889447 | 2765 | 0.046083333 |
| 0.9991082 | 9.02E-04 | 17873.312 | 0 | 0.001 | 28.422111 | 5704 | 0.095066667 |
| 0.9999093 | 9.12E-05 | 35607.754 | 0 | 1.00E-04 | 56.798995 | 11303 | 0.188383333 |
| 0.9999191 | 8.14E-05 | 37798.116 | 0 | 9.00E-05 | 60.125628 | 11965 | 0.199416667 |
| 0.999928 | 7.24E-05 | 37683.543 | 0 | 8.00E-05 | 59.643216 | 11886 | 0.1981 |
| 0.9999368 | 6.36E-05 | 41542.548 | 0 | 7.00E-05 | 66.874372 | 13308 | 0.2218 |
| 0.9999461 | 5.42E-05 | 40211.523 | 0 | 6.00E-05 | 64.030151 | 12742 | 0.212366667 |
| 0.9999553 | 4.49E-05 | 42300.095 | 0 | 5.00E-05 | 68.236181 | 13595 | 0.226583333 |
| 0.9999638 | 3.63E-05 | 47197.432 | 0 | 4.00E-05 | 76.834171 | 15290 | 0.254833333 |
| 0.9999733 | 2.69E-05 | 48845.975 | 0 | 3.00E-05 | 77.954774 | 15514 | 0.258566667 |
| 0.999982 | 1.81E-05 | 56957.04 | 0 | 2.00E-05 | 91.623116 | 18233 | 0.303883333 |
| 0.999991 | 9.00E-06 | 63660.739 | 0 | 1.00E-05 | 103.31658 | 20575 | 0.342916667 |
| 0.9999918 | 8.28E-06 | 65146.025 | 0 | 9.00E-06 | 104.68342 | 20864 | 0.347733333 |
| 0.9999928 | 7.22E-06 | 67970.698 | 0 | 8.00E-06 | 109.41206 | 21773 | 0.362883333 |
| 0.9999937 | 6.32E-06 | 70787.05 | 0 | 7.00E-06 | 114.21106 | 22728 | 0.3788 |
| 0.9999946 | 5.44E-06 | 74924.146 | 0 | 6.00E-06 | 120.14573 | 23925 | 0.39875 |
| 0.9999955 | 4.49E-06 | 77173.342 | 0 | 5.00E-06 | 123.59296 | 24612 | 0.4102 |
| 0.9999964 | 3.65E-06 | 78510.518 | 0 | 4.00E-06 | 126.51759 | 25193 | 0.419883333 |
| 0.9999973 | 2.71E-06 | 83886.447 | 0 | 3.00E-06 | 136.93467 | 27281 | 0.454683333 |
| 0.9999982 | 1.81E-06 | 97791.07 | 0 | 2.00E-06 | 157.86935 | 31417 | 0.523616667 |
| 0.9999991 | 8.99E-07 | 104116.33 | 0 | 1.00E-06 | 168.39698 | 33511 | 0.558516667 |
| 0.9999992 | 8.16E-07 | 113022.57 | 0 | 9.00E-07 | 182.17588 | 36285 | 0.60475 |
| 0.9999993 | 7.26E-07 | 113242.4 | 0 | 8.00E-07 | 181.37688 | 36094 | 0.601566667 |
| 0.9999994 | 6.35E-07 | 113600.84 | 0 | 7.00E-07 | 182.63317 | 36360 | 0.606 |
| 0.9999995 | 5.44E-07 | 125167.88 | 0 | 6.00E-07 | 202.27638 | 40253 | 0.670883333 |
| 0.9999995 | 4.56E-07 | 127589.14 | 0 | 5.00E-07 | 205.37186 | 40869 | 0.68115 |
| 0.9999996 | 3.64E-07 | 126430.22 | 0 | 4.00E-07 | 204.93467 | 40798 | 0.679966667 |
| 0.9999997 | 2.71E-07 | 133013.72 | 0 | 3.00E-07 | 214.10553 | 42607 | 0.710116667 |
| 0.9999998 | 1.83E-07 | 144383.77 | 0 | 2.00E-07 | 234.1809 | 46602 | 0.7767 |
| 0.9999999 | 9.06E-08 | 173535.34 | 0 | 1.00E-07 | 281.52764 | 56024 | 0.933733333 |
得到迭代次數曲線
迭代次數隨著δ的減小不斷增加。
從表格可以合理假設當δ無限減小的時候迭代次數n會隨著無限增加,就向在吸引子和排斥子之間有一種排斥力隨著兩個分類對象的接近而增加;或者也可以理解成兩個對象之間的排斥力之所以隨著距離的減小而增加是因為兩個對象在任意小的精度上的差別都在變小,但兩個對象的差別在任意小的精度上一直存在。
?
實驗參數
| 學習率 0.1 |
| 權重初始化方式 |
| Random rand1 =new Random(); |
| int ti1=rand1.nextInt(98)+1; |
| tw[a][b]=xx*((double)ti1/100); |
總結
以上是生活随笔為你收集整理的用神经网络二分类吸引子与排斥子的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 用两个矩阵的点积计算神经网络的迭代次数
- 下一篇: 吸引子矩阵和鞍点矩阵可以用神经网络二分类