實驗失敗記錄

2021-10-07 17:07:49 字數 1257 閱讀 7811

多個不同模型用相同資料集訓練後,增加乙個未標記資料集進行**,找出未標記資料集中的兩個模型**結果相同的資料加入訓練集,訓練模型,重複此過程。

驗證結果,不能提高測試集的準確率。

利用hinton的自動特徵提取方法對cifar進行特徵提取,模型訓練效果較好。提取特徵後嘗試用k均值聚類後無監督的學習,用kmeans進行分類,分類的結果完全無意義。

假如深度學習模型的功能越多,其泛化能力越強,比如可以分類1000個類的網路,肯定比分類800個類的網路的泛化能力強;因此可以做乙個實驗,比如cifar10中,首先用乙個網路分類10個類,得到驗證集準確率是a,另乙個網路分類5個類,得到驗證集準確率是b,那麼a肯定比b高。

實驗結果相反。我認為是由於類別數量太少導致的,比如10個類隨便猜準確率都是百分之10 ,但是5個類隨便猜準確率就是百分之20。因此可能需要在imgnet這種有1000個類的上面進行驗證。

sigmoid啟用函式若其輸入的值超出了[-5,5]之後,無論輸入再怎麼變化其輸出都會變化很微小,因此層數多了以後sigmoid梯度消失的原因是不是就是這個原因?我當然知道梯度消失是因為其導數是個小數,不斷相乘梯度就會越來越小,但是需要乙個物理上的或者具體的解釋。

因此我通過將輸入除以60,這樣就會將[-5,5]的區間擴大到[-300,300],如此做以後在每層300個核的情況下是否會加速收斂?

無效:因為除以60相當於梯度也除以60.。。

將輸出核變為多種輸出核或變為sigmoid(sigmoid())的形式,類似於增加每層的cardinity,失敗,無效,結果相比普通的sigmoid略微降低。具體結構:

activation = keras.activations.sigmoid

kernal_num = 100

x1 = keras.layers.dense(kernal_num, activation=activation)(input1)

x2 = keras.layers.dense(kernal_num, activation=activation)(input1)

x2=keras.activations.sigmoid(x2)

x3 = keras.layers.dense(kernal_num, activation=activation)(input1)

x3=keras.activations.sigmoid(x3)

x3=keras.activations.sigmoid(x3)

x4=keras.layers.concatenate([x1,x2,x3])

記錄一次失敗的流水燈實驗

貧僧最近在學stm32f4啊。最基本的當然是控制io口,所以就來搞led了。最先搞的是點亮led燈,然後我照著教程用cubemx生成了 檔案,然後高高興興地去敲 終於敲完了,結果燒錄進去發現沒亮。檢查了一下編譯器發現是沒勾選上reset and run。結果貧僧就這樣天真的以為配置沒出問題,開開心心...

selenium定位失敗記錄

selenium webdriver定位不到元素的五種原因及解決辦法 1.動態id定位不到元素 for example webelement xiexin element driver.findelement by.id mail component 82 82 webelement xiexin ...

ElasticFusion實驗記錄

執行gputest 修改 elasticfusion core src utils gpuconfig.h 使用kinect2,需要修改 maincontroller.cpp ln 37 resolution getinstance 512,424 resolution getinstance 64...