时间卷积网络(TCN) 总结:时序模型不再是递归网络(RNN) 的天下,但作为信息粗暴提取的一种方法,请不要神话CNN !

深度学习似乎进入了“泛模型”阶段,同一个问题可以用不同深度学习结构解决,但是没有人可以证明哪个模型一定最好 — David 9

最近读到文章说“TCN(时间卷积网络)将取代RNN成为NLP预测领域王者”。一方面David 9 想为RNN抱不平,请大家别过于迷信CNN,毕竟只是一种特征提取方法,不必神话它(想想当年有人认为SVM可以解决所有建模问题)。

另一方面,可以感受到深度学习进入了“泛模型”的阶段。模型的结构创新没有衰退的趋势,而这些创新不出意料很快会被其他模型超越。这些“超越”都是实验与经验上的“超越“,没有SVM这样扎实的理论。

回顾历史可以发现,广义的计算机”模型“一直在”向上”做更灵活的事情

ML时代那些机器学习”模型“(SVM,随机森林)一般只做最后的分类、聚类或回归;现在深度学习时代“模型”(以CNN、RNN为主)把特征提取的工作也一并做掉了。可以预见,未来物联网IOT发展到一定阶段,我们需要更复杂“模型”去自动收集数据,具体是什么形式的“模型”我们可以拭目以待。

言归正传,今天David 9 要把TCN(时间卷积网络,CMU的研究总结)这个“坑”给填了。其实TCN只是一维卷积变形之后在时序问题上变得适用(以前David 9也讲过一维卷积):

来自论文:An Empirical Evaluation of Generic Convolutional and Recurrent Networks
for Sequence Modeling

仔细观察就可以发现,TCN的卷积和普通1D卷积最大的不同就是用了扩张卷积(dilated convolutions),越到上层,卷积窗口越大,而卷积窗口中的“空孔”越多

上式是扩展卷积操作的式子,其中d是扩展系数(即评价“空孔”的多少)。 继续阅读时间卷积网络(TCN) 总结:时序模型不再是递归网络(RNN) 的天下,但作为信息粗暴提取的一种方法,请不要神话CNN !

CVPR2018精选#2: 视频分析的非局部(non-local) 神经网络模块,CMU与Facebook AI研究室视频分类识别新贡献

拥有什么,决定了你只能迷恋什么 — David 9

很大程度上,目前的芯片工艺和技术,决定了人类只能迷恋神经网络这样的方案(高于传统机器学习一个计算级别)。就像进入铁器时代,人们才能方便地砍伐森林、挖掘矿山、开垦土地(如果在青铜时代就别想了)。

在铁器时代,对铁器的改进很受欢迎;正如今年CVPR上大神Kaiming HeXiaolong Wang 的文章试图改进神经网络工具去“开垦”视频分析 这片土地。

我们知道视频图片的区别无非是多了时间的维度(time,视频的帧)。最直觉的做法是先用cnn,再用擅长时间序列的rnn;或者,直接用3D卷积去做。而实际情况是直接用3D卷积效果不是最好,于是有人用两个cnn去做(一个cnn分析时间,一个cnn分析空间),或者另外用一个分析轨迹(trajectories)的模块去加强时空感

非局部(non-local) 模块把非局部感受野的信息提取操作做成一个神经网络模块,方便了端到端的视频分析:

一个可以插入神经网络的non-local模块

这个模块输入x可以理解为32帧的视频(32张图片帧数 T=32,长宽为H×W),输出z也是H×W大小的特征图。有没有注意到最左端的箭头是一个跳层连接?没错,non-local模块就是把视频额外的时空信息提取作为一个残差操作,这样整个模块可以任意插入到一个残差网络resnet中: 继续阅读CVPR2018精选#2: 视频分析的非局部(non-local) 神经网络模块,CMU与Facebook AI研究室视频分类识别新贡献

你想要的神经网络自动设计,谷歌大脑帮你实现了:用参数共享高效地搜索神经网络架构(ENAS)

所有高级的创造,似乎都有一些“搜索”和“拼凑”的“智能” — David 9

模型自动设计已经不是新鲜事(H2O 的AutoML谷歌的CLOUD AUTOML)。但是,高效的神经网络自动设计还是一个较有挑战性的课题(单纯用CV选模型太耗时间) 。谷歌大脑的这篇新论文就提供了一种高效的搜索方法,称之为:Efficient Neural Architecture Search(ENAS)

对于老版本强化学习的NAS,需要21天搜索出的cnn模型,ENAS只需要3小时就可以搜索出相同准确率的模型:

例子:对于CIFAR-10数据集ENAS搜索出的具有4.23%错误率的模型,只需要3小时左右。 来自:https://arxiv.org/pdf/1802.03268.pdf

作者把这样的效率提高归功于候选子模型的参数共享上(相似子模型可以模仿迁移学习使用已有的权重,而不需要从头训练)。

为简单起见,我们先从生成四个计算节点的RNN循环神经网络进行解释:

来自:https://arxiv.org/pdf/1802.03268.pdf

即使是只有四个计算节点的RNN,也有多种有向无环图(DAG)的生成可能,如上左图,红色的箭头生成的RNN才是我们在右图中看到RNN。 继续阅读你想要的神经网络自动设计,谷歌大脑帮你实现了:用参数共享高效地搜索神经网络架构(ENAS)

深度神经进化,Uber AI实验室新发现:遗传算法(GA)在深度增强学习中的出色表现(Deep Neuroevolution)

当深度网络应用在增强学习中,人们发现一些训练的捷径,但是没有统一的看法。每当深度网络应用在一个领域,总是会重复类似的故事,这也许正是深度学习有意思的地方 — David 9

如果你想入深度增强学习的坑,你一定发现在增强学习domain下,深度网络构建有那么多技巧。

不像一般的机器视觉,深度网络在增强学习中被用来理解环境(states)和回报值(reward),最终输出一个行为策略

因此关注的最小粒度其实是行为(action),依旧使用传统梯度下降更新网络并不高效(行为的跳跃很大,梯度更新可能很小)。另外,增强学习其实是可以高并行的问题,试想如果你有很多分身去玩Dota,最后让他们把关键经验告诉你,就省去了很多功夫。

在经验和行为主导的增强学习背景下,催生了DQNA3CEvolution Strategies等一系列深度网络的训练方法。包括我们今天的主角:遗传算法(GA)

Uber AI实验室发现GA对行为策略的把控,可以结合到深度网络中,他们称之为深度神经进化(Deep Neuroevolution),在某些领域的表现甚至超过了DQNA3CEvolution Strategies继续阅读深度神经进化,Uber AI实验室新发现:遗传算法(GA)在深度增强学习中的出色表现(Deep Neuroevolution)

理解Hinton胶囊网络之精华浓缩版,第一部分: 胶囊网络背后的灵感与初衷(Capsule Networks)

David 9 一直想扒一扒Hinton的胶囊网络,老教授两篇论文有些晦涩,但今天发现AI³普及帖不错,只是略显冗长。。所以,精华浓缩版就呼之欲出了O(∩_∩)O~

深度CNN是Hinton老教授10年前就在重点研究的课题,胶囊网络也是Hinton早已思考的内容,所以,

第一:胶囊网络不是空穴来风的新算法,而是基于CNN的缺陷和新需求的改进。

第二,胶囊网络比CNN好在哪里??

首先,CNN牛X之处在于用类似蛮力的海量数据方式,自动把重要的分类特征找到,所以,无论图像是不是完整,我们都有理由相信CNN能够识别图中有没有“米老鼠”这个对象:

不完整的米老鼠拼图
完整的米老鼠拼图

只要CNN看到有象征米老鼠的“耳朵”和“鼻子”, CNN就认定这张图中有“米老鼠”。(哪怕拼图还没完成继续阅读理解Hinton胶囊网络之精华浓缩版,第一部分: 胶囊网络背后的灵感与初衷(Capsule Networks)

理解Hinton胶囊网络之精华浓缩版,第二部分: 胶囊网络是如何工作的?(Capsule Networks)

胶囊网络精华浓缩版第一部分中,我们就吐槽过Max pooling的一堆缺陷:

  • 虽然最大池化层可帮助辨别图像中元素的位置关系,但是有太多信息丢失(pooling操作“粗暴地”把局部相邻像素点集压缩成一个像素点)
  • 缺乏空间分层和空间推理能力,缺乏“举一反三”的能力
Max pooling图示

当我们深入看胶囊网络的工作方式,我们会感觉胶囊网络就是为改进Max Pooling而生的:

来自: https://arxiv.org/pdf/1710.09829.pdf

上图胶囊网络整体架构中,卷积层Conv1输出后,跟的不再是Max Pooling层, 而是主胶囊层(PrimaryCaps layer)数据胶囊层(DigitCaps layer)

这些胶囊层到底是如何工作的?我们先从胶囊层和一般的全连接层入手。

一般的全连接层是这样工作的:

来自:https://medium.com/ai%C2%B3-theory-practice-business/understanding-hintons-capsule-networks-part-ii-how-capsules-work-153b6ade9f66

对于上一层Max Pooling输出的所有标量(x1, x2, x3)与权重(w1,w2,w3)做卷积求和操作。最后,使用非线性激活函数 f(•)输出预测值hj 继续阅读理解Hinton胶囊网络之精华浓缩版,第二部分: 胶囊网络是如何工作的?(Capsule Networks)

ICLR2018抢先看!RNN在空间定位训练中呈现的网格状表征:海马体的内嗅皮质与RNN一致表征

如果不能像上帝那样创造, 那么就试着模仿吧 — David 9在哪听过

ICLR我们知道ICLR的中文全称是:国际学习表征大会。今天讲的文章就非常贴合学习表征这一主题 。我们知道哺乳动物海马体中的内嗅皮质(entorhinal cortex)简称EC,是神经科学中公认的管理空间定位的器官:

来自:https://protoplasmix.wordpress.com/2012/03/30/memory-boost-for-dementia-patients/

2013《自然》上发表的一篇论文更是研究了内嗅皮质中细胞活跃度和动物所处空间位置的关系:

来自:https://openreview.net/pdf?id=B17JTOe0-

上图是内嗅皮质中的几种细胞在方块空间坐标中的活跃度(红色代表相当活跃)。有些叫做grid cell(格子细胞),它们在空间中间隔的地方总是显得较活跃;有一些细胞叫border cell(边缘细胞),当动物走到区域边缘时,这些细胞显得相当活跃。 继续阅读ICLR2018抢先看!RNN在空间定位训练中呈现的网格状表征:海马体的内嗅皮质与RNN一致表征