DropoutUncertaintyCaffeModels, 作为贝叶斯近似的省略

分享于 

3分钟阅读

GitHub

  繁體 雙語
Dropout As A Bayesian Approximation: Code
  • 源代码名称:DropoutUncertaintyCaffeModels
  • 源代码网址:http://www.github.com/yaringal/DropoutUncertaintyCaffeModels
  • DropoutUncertaintyCaffeModels源代码文档
  • DropoutUncertaintyCaffeModels源代码下载
  • Git URL:
    git://www.github.com/yaringal/DropoutUncertaintyCaffeModels.git
    Git Clone代码到本地:
    git clone http://www.github.com/yaringal/DropoutUncertaintyCaffeModels
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/yaringal/DropoutUncertaintyCaffeModels
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    

    #Dropout 作为贝叶斯近似: 代码

    这些是用于在 quit中实验的Caffe 模型,作为贝叶斯近似值: Representing Deep Deep的模型不确定性in和Bernoulli近似变分推理神经网络的贝叶斯卷积神经网络。

    每个文件夹对应一个不同的数据集。 太阳能和二氧化碳文件夹在文件夹中有已经处理的数据集。 MNIST和CIFAR10使用由Caffe处理的默认数据集。 每个文件夹包含 4个用于每个实验的文件: *_deploy.prototxt, *_sampleTest_deploy.prototxt, *_solver.prototxt, *_dropout_solver.log. 首先包含网络结构,第二个包含测试时间( 随机转发通过网络时)的网络结构,第三个是规划文件。 每个文件夹中的文件名前缀对应于网络结构( 例如 lenet,MLP1024x1024x1024等)。 后面是实验名( 例如 quit。all_dropout。无。tanh等)。 从上下文来看,这些是相当明显的。

    Pycaffe被用来制作文件中显示的情节。 要让pycaffe通过丢失网络给出随机转发,请在 src/caffe/proto/caffe.proto 中添加以下代码行到"消息 DropoutParameter"( 第 471行):

    
     optional bool sample_weights_test = 2 [default = false];//Sample weights for testing or use the mean 
    
    
    
    

    此外,在 src/caffe/layers/dropout_layer.cpp 和 src/caffe/layers/dropout_layer.cu, 中替换( 每个文件中有两个匹配项)

    
     if (this->phase_ == TRAIN) {
    
    
    
    

    
     if (this->phase_ == TRAIN || this->layer_param_.dropout_param().sample_weights_test()) {
    
    
    
    

    相关文章