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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > 卷积神经网络 >内容正文

卷积神经网络

PyMC3和Lasagne构建神经网络(ANN)和卷积神经网络(CNN)

發布時間:2024/7/23 卷积神经网络 82 豆豆
生活随笔 收集整理的這篇文章主要介紹了 PyMC3和Lasagne构建神经网络(ANN)和卷积神经网络(CNN) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉自http://www.sohu.com/a/162460147_505915

源地址https://twiecki.io/blog/2016/07/05/bayesian-deep-learning/

今天,我們將使用Lasagne構建一個更有趣的模型,這是一個靈活的Theano圖書館,用于構建各種類型的神經網絡。你可能知道,PyMC3還使用了Theano,因此在Lasagne中建立了人工神經網絡(ANN),將貝葉斯先驗放在參數上,然后在PyMC3中使用變分推理(ADVI)來估計模型。

由于Lasagne的優秀表現,我們可以輕松地建立一個具有最大匯集層的分層貝葉斯卷積ANN,在MNIST上實現98%的準確性。

數據集:MNIST

我們將使用手寫數字的經典MNIST數據集。 與之前的博客文章相反,MNIST是具有合理數量的維度和數據點的有實際挑戰性的ML任務(當然不如像ImageNet那樣有挑戰性)。

Loading data...

模型說明

我想像應該可以把Lasagne和PyMC3搭在一起,因為他們都依賴于Theano。 然而,目前還不清楚它將會是多么困難。 幸運的是,第一個實驗做得很好,但有一些潛在的方法可以使這更容易。 我開設了一個GitHub issue在Lasagne's的報告里,在這幾天后,PR695被合并,允許他們更好的整合。

首先,Lasagne創建一個具有2個完全連接的隱藏層(每個具有800個神經元)的ANN,這幾乎是從教程中直接采用的Lasagne代碼。 當使用lasagne.layers.DenseLayer創建圖層時,我們可以傳遞一個函數init,該函數必須返回一個用作權重和偏差矩陣的Theano表達式。

接下來,為ANN創建權重函數。 因為PyMC3要求每個隨機變量具有不同的名稱,我們創建一個類并且是唯一命名的先驗。

在這里,priors充當了調節者的角色,試圖保持ANN small的權重。它在數學上等價于一個L2的損失項,作為通常的做法是將大的權重懲罰到目標函數中。

下面是一些設置小批量ADVI的函數。

放在一起

讓我們用小批量的ADVI來運行ANN:

確保一切聚合:

Accuracy on test data = 89.81%

分層神經網絡:學習數據的正則化

上面我們只是固定了所有層的sd = 0.1,但是可能第一層應該有不同于第二層的值。也許開始時是0.1,要么太小或太大。在貝葉斯建模中,很常見的是在這種情況下放置hyperprior,并學習最佳正則化應用到數據中去。這節省了我們在超參數優化中對參數進行調優的時間。

Accuracy on test data = 92.25999999999999%

我們得到一個很小但很好的boost在準確性上。 我們來看看超參數后面的部分:

有趣的是,它們都是不同的,這表明改變正規化數量在網絡的每一層是有意義的。

卷積神經網絡

但到目前為止,在PyMC3中實現也很簡單。有趣的是,我們現在可以構建更復雜的ANNs,像卷積神經網絡:

Accuracy on test data = 98.03%

總結

以上是生活随笔為你收集整理的PyMC3和Lasagne构建神经网络(ANN)和卷积神经网络(CNN)的全部內容,希望文章能夠幫你解決所遇到的問題。

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