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%

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/491401.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

OpenCV高斯滤波GaussianBlur

图像处理中,常用的滤波算法有均值滤波、中值滤波以及高斯滤波等。 三种滤波器的对比滤波器种类基本原理特点均值滤波使用模板内所有像素的平均值代替模板中心像素灰度值易收到噪声的干扰,不能完全消除噪声,只能相对减弱噪声中值滤波计算模板内…

(附视频) | AI奠基人、美国AI科学家特伦斯谈深度学习​

来源:笑看国际风云特伦斯 谢诺夫斯基(Terrence Sejnowski):世界十大人工智能科学家之一,还是美国仅3位在世的‘四院院士’之一,同时兼任全球人工智能顶级会议NIPS基金会主席。1989年,特伦斯加入…

OpenCV图像金字塔

图像金字塔是图像多尺度表达的一种,是一种以多分辨率来解释图像的有效但概念简单的结构。一幅图像的金字塔是一系列以金字塔形状排列的分辨率逐步降低,且来源于同一张原始图的图像集合。其通过梯次向下采样获得,直到达到某个终止条件才停止采…

带你深入理解图灵机--天才所在的时代

来源:人机与认知实验室这几年由于区块链的大热,以太坊独特的solidity语言实现智能合约功能,图灵完备这个词走进大家的视线。没有计算机专业知识的同学其实很难理解这个词的意思,其实计算机专业的同学都没有深入理解图灵机&#xf…

用PyMC3进行贝叶斯统计分析(代码+实例)

问题类型1:参数估计 真实值是否等于X? 给出数据,对于参数,可能的值的概率分布是多少? 例子1:抛硬币问题 硬币扔了n次,正面朝上是h次。 参数问题 想知道 p 的可能性。给定 n 扔的次数和 h …

华为: 即将发布5G+VR的颠覆式智能眼镜

来源:VR每日必看6月27日MWC19上海期间,华为手机业务总裁何刚在全球终端峰会发表演讲,提及华为终端在5G时代的全场景战略是“18N”。“1”就是华为手机,“8”则囊括了TV、平板、PC、耳机、车机、手表、眼镜、音响八项终端产品&…

OpenCV的数据类型——基础数据类型

OpenCV有很多数据类型,从组织结构的角度来看,OpenCV的基础类型类型主要分为三类。第一类是直接从C原语中继承的基础数据类型;第二类是辅助对象;第三类是大型数据类型。本文主要介绍OpenCV的基础数据类型。 目录 Point类 Scalar…

Cell:重大突破!三位学术大咖,打造全新“DNA显微镜”

来源:中国生物技术网传统上,科学家们使用光、X射线和电子来观察组织和细胞的内部。如今,科学家们能够在整个大脑中追踪线状的神经纤维,甚至可以观察活的小鼠胚胎如何产生原始心脏中的跳动细胞。但是这些显微镜无法看到的是&#x…

Science Robotics近日刊登CMU重大突破,无需手术,普通人就能用意念操控机械臂!...

来源:机器人大讲堂导读顶尖学术期刊《科学》旗下的Science Robotics本月19号刊登了脑机接口(BCI)领域的一项突破成果。美国卡内基梅隆大学的贺斌教授带领其研究团队与明尼苏达大学合作,成功开发出第一款非侵入式的意念控制机械臂&…

一文读懂全球自动驾驶传感器市场格局!

来源:智驾未来自动驾驶汽车作为汽车未来的重要发展方向,成为汽车零部件产业链的重要增长点。国内外的汽车零部件供应商积极布局自动驾驶传感器领域,在车载摄像头、毫米波雷达和激光雷达三大核心部件,以及产业链上下游的拓展为零部…

MIT对话马斯克:关于自动驾驶、爱和未来世界|厚势汽车

来源:价值中国编译不论是在新能源汽车、私人航空航天、共通交通、还是在人工智能领域,埃隆马斯克天马行空的创想和脚踏实地的奋斗让人震惊不已。简直就是一个活着得的非物质文化遗产。马斯克在全球范围内收割了无数粉丝。不论是企业家、工程师、科技研究…

OpenCV矩阵操作

矩阵类的成员函数可以进行很多基本的矩阵操作,在之前已经介绍过。除此之外,也有很多操作被表示为“友元”函数,它们的输入为矩阵类型,或者输出为矩阵类型,或者输入输出同为矩阵类型。下面将对这些函数及其参数进行详细…

关于机器意识的对话

来源: 人机与认知实验室S教授德高望重,建立了一个关于人工智能的微信群,吸引了很多关心人工智能的专业人士参与讨论。群中常有热烈的讨论。前些天恰好有一场关于机器意识的对话。感觉比较有意思,觉得放任这些讨论在微信群里被遗忘…

OpenCV绘图和注释

OpenCV的绘图函数可以在任意深度的图像上工作,但在大多数情况下,它们只对图像的前三个通道有影响BGR,如果是单通道图像,则默认只影响第一个通道。大多数绘图函数都支持操作对象的颜色、宽度、线型和亚像素对齐等参数。 艺术线条 …

012.对netmap API的解读

一.简要说明: 1.netmap API主要为两个头文件netmap.h 和netmap_user.h ,当解压下载好的netmap程序后,在./netmap/sys/net/目录下,本文主要对这两个头文件进行分析。 2.我们从netmap_user.h头文件开始看起。 二.likely()和unlikely…

【学术笔记】探索大脑静息态活动中的动态信息

来源:脑科学2019年6月18日下午,来自加州大学河滨分校(The University of California, Riverside) Bourns工程学院的生物工程系主任Xiaoping Hu (胡小平)教授应北京大学麦戈文脑研究所方方老师的邀请来到北京大学,在王克桢楼1113室为老师和同学…

OpenCV中的函数子

随着OpenCV的发展,封装了越来越多的功能,而往往这些功能不是一个函数就能完成的,实现为一组函数又会导致整个库的函数变得杂乱无章,因此常常使用一个新的对象类型来实现这个新功能。通过重载operator()来生成对象或函数子。下面主…

查找会议论文的会议地址

有时候会议论文conference proceedings引用格式中要求出现会议地址,如下所示 查找会议地址的方法为直接搜索该会议论文,以ieee为例,会议地址信息在该论文的首页信息中: Conference Location: Arlington, VA, USA中的三项就分别对应…

OpenCV可移植图形工具HighGUI实现图像和视频操作

OpenCV把用于操作系统、文件系统以及摄像机等硬件设备交换的函数纳入了HighGUI(High-level Graphical User Interface)模块中。有了HighGUI模块,我们可以方便地打开窗口、显示图像、读出或写入图像相关的文件、鼠标事件和键盘事件。下面将对三…

华为内部深度解读,关于5G发展的28个核心问题

来源 | 腾讯深网关于5G技术动态与商用进展业界最关心的核心问题,华为5G产品线相关负责人近日对《深网》等进行了详细解读,以下是《深网》整理的问答实录:一、5G先进性与行业应用1. 5G到底是什么?和4G比有什么不一样?从…