我对物体检测的一篇重要著作SPPNet的论文的主要部分进行了翻译工作。SPPNet的初衷非常明晰,就是希望网络对输入的尺寸更加灵活,分析到卷积网络对尺寸并没有要求,固定尺寸的要求完全来源于全连接层部分,因而借助空间金字塔池化的方法来衔接两者,SPPNet在检测领域的重要贡献是避免了R-CNN的变形、重复计算等问题,在效果不衰减的情况下,大幅提高了识别速度。
R-CNN论文翻译——用于精确物体定位和语义分割的丰富特征层次结构
我对深度学习应用于物体检测的开山之作R-CNN的论文进行了主要部分的翻译工作,R-CNN通过引入CNN让物体检测的性能水平上升了一个档次,但该文的想法比较自然原始,估计作者在写作的过程中已经意识到这个问题,所以文中也对未来的改进提出了些许的想法,未来我将继续翻译SPPNet、fast-RCNN、faster-RCNN、mask-RCNN等一系列物体定位和语义分割领域的重要论文,主要作者都是Ross Girshick和Kaiming He。

用于精确物体定位和语义分割的丰富特征层次结构
Rich feature hierarchies for accurate object detection and semantic segmentation
摘要
使用.ai域名的著名人工智能创业公司盘点
.com域名基本已经废了,除非特别讨巧地起到新的名字,否则基本都要花大价钱才能搞到满意的名字。但这些对于人工智能的初创公司,似乎烦恼更小一点,因为.ai域名的注册价格不菲,导致投机者大幅减少,直到2015年,.ai域名都数量甚微,大量优质域名都无人注册,比如单拼ai域名今年才用尽,而双拼域名大把存在,因此这些人工智能初创公司,就可以开开心心地毫无压力地选择一个比较不错的域名注册。
[DeepMind论文部分翻译]克服神经网络中的灾难性遗忘 Overcoming catastrophic forgetting in neural networks
本文翻译了DeepMind的最新研究成果的第一部分,可以当做是introduction部分,借鉴神经科学成果,解决了一个通用人工智能领域持续学习所面临的关键性难题。
变分自编码器(Variational Autoencoder, VAE)通俗教程
1. 神秘变量与数据集
现在有一个数据集DX(dataset, 也可以叫datapoints),每个数据也称为数据点。
我们假定这个样本受某种神秘力量操控,但是我们也无从知道这些神秘力量是什么?那么我们假定这股神秘力量有n个,起名字叫\(power_1, power_2,…, power_n\)吧,他们的大小分别是\(z_1, z_2, …, z_n\),称之为神秘变量表示成一个向量就是
z =
\left(
\begin{array}{c}
z_1\\
z_2\\
\vdots\\
z_n
\end{array}
\right)
\)
z也起个名字叫神秘组合。
一言以蔽之:神秘变量代表了神秘力量的神秘组合关系。
用正经的话说就是:隐变量(latent variable)代表了隐因子(latent factor)的组合关系。 Read more
STDP与无监督学习
SDTP是在大脑中发现的神经元之间权重连接的更新规则,他的目标非常的清晰就是如果两个神经元的发放在时间上离的远近,他们之间的绑定关系就越紧密,一般就反映到激活权重越大上。我从文献[1]中盗了个图,如下:
我们可以看到,如果一个神经元A的激活在另一个神经元B的激活之后很快就发生,时间差小于5ms时,B到A的连接权重就会增加约70%,而相反A到B的连接权重就会衰减20%。什么意思?通俗的说,就是当A和B先后激活时,具备紧密先后关系的双方会加强联系,而具备相反关系的,就会渐行渐远,这样的规则带来了什么样的结果呢?那就是具备时间上和空间上同时性或连续性的事件之间建立带有次序关系的联系。从这个角度,也可以想象到神经元之间往往建立的是单向的加强联系,如果A到B不断增强,那么B到A就不断减弱,而如果是同时发生,一般两者会不好不坏,而他们的共同下游则与他们之间形成了更加紧密的联系, 从而两者变成了同级,并具备了间接关系。 Read more
大脑、小脑与运动控制原理
发现一个写得还不错的关于运动控制的教学文章,翻译给大家。
原文地址: http://thebrain.mcgill.ca/flash/d/d_06/d_06_cr/d_06_cr_mou/d_06_cr_mou.html#4
运动皮层
人体的自主运动都是由大脑控制的。控制自主运动的大脑区域称作运动皮层。运动皮层位于额叶后部,中央沟回(额叶和顶叶的分界线)之前。运动皮层主要分为两个区域,4区和6区,也成为初级运动皮层,沿着中央沟回形成一条窄带。6区位于4区的正前方。6区更宽,进一步细分为两个亚区。为了能够执行目标导向的运动,运动皮层需要接收来自各叶的各种信息,包括:来自顶叶的身体空间位置信息;来自额叶前部的关于达成目标而采用的恰当策略信息;来自颞叶关于历史策略的记忆信息;
图1. 区域划分
图2. 身体映像
小议动态神经网络
深度学习的发展很快将到达一个瓶颈期,因为从更高的维度来看,从开始到现在我们对待时间问题的处理方式都可能存在的方向上的错误,虽然RNN相关的技术在时序相关问题上取得了不错的成果,但应用范围依然有限。
那么,问题到底出现在哪里?在下献一拙思。
梳理生物等级链的智能演化,大家可以发现,对于时间性问题的处理,是神经网络在诞生之初就最先具备的,而我们的人工神经网络恰恰是从诞生到现在都不具备的,举个例子,对视频进行实时的物体识别、定位与标注是怎样做的?利用训练好的深度神经网络对当下选取的一帧进行计算,算出的向量用于展示,再选取一帧重复计算,整个流程是由人类算法控制的,网络的计算呈现的是时间无关性,亦即就像时间静止时网络做了一件工作,再推动时间向前一步,再静止工作一样,我称之为静态识别网络,进而可以理解如果是动态识别网络,那就像生物学神经网络那样,信息流源源不断地流入,计算在每个局部都在发生,结果在时间流上持续出现。显然,我们现在已知的网络都没有走这条路,这其中可能有计算量的问题,也可能有理论上刻意的选择,但我的见解是动态网络才是智能进阶的关键点。
当然,在整个智能系统中,特征的自动发现、层级组合性等诚然至关重要,但这些关键的能力之外,我们可能还忽略了若干重要的能力,动态性就是其中一个,有了这个能力,我们的网络就可以更加容易地处理时间流上的东西,比如运动控制、传感器流的处理(包括视觉流处理能力,更好的声音流处理能力以及其他知觉的感知能力)、联想、观察、思考、甚至产生意识。
那么现在的RNN存在什么问题呢?
就是因为RNN虽然引入了时间性,但是不彻底,他的本质是直接处理静态化后的数据流,再进行处理。静态化就是将随时间流逝的东西借助缓存等手段变成一个共存的东西,静态化是智能系统面对时间性问题的解决方案,比如视听觉暂留机制、缓存机制,但RNN在静态化方面是被动的,因为网络本身不提供静态化的机制,他只能将人为静态化后的成果进行处理;RNN是图灵完备的,他可以模拟任何计算过程,而程序也是静态化的,每一条指令的执行是基于CPU的时间片的,RNN本质上也是,是通过程序控制RNN的step的,倒不是说这种序列步骤有什么错误,问题在于序列步骤的基础仍然是人为的,所以网络缺乏了施展空间,这种结构限制了RNN具备更加复杂的时间性数据的处理能力,所以你无法用RNN进行实时地观察、联想、思考甚至互动等等。
那应该怎样做呢?
我的一个思路是这样的,基本就是生物脑运行模式,先抛弃计算量的问题不谈,假定我们不需训练已经掌握了一个权重直接确定法,我们先让这个用于某种功能的网络可以实时不断地接收外部数据,每个神经元都独立计算,一个完全的分布式模式;从运动控制、简单的感受器做起,沿着生物进化的脚步增加该神经网络的复杂性。
Deep Learning Tutorial 深度学习教程翻译
国内互联网上关于deeplearning.net上的Deep Learning Tutorial的翻译有很多,但很零散,并且没有人有效地把这些组织起来,本文对这些进行了整理,带有>前往的都是已经找到的对应的翻译文章,有些是我自己写的,其他一些还没有的,我会自己补充上。
前置阅读
Machine Learning for AI an introduction to Deep Learning algorithms
Learning Deep Architectures for AI (Foundations & Trends in Machine Learning, 2009).
正式教程
准备工作 – 它介绍了符号,本教程中使用的数据集(可下载),以及对随机梯度下降法所做的优化。 > 前往
纯监督学习算法,按顺序阅读:
- Logistic Regression – 简单使用Theano > 前往
- Multilayer perceptron – 介绍layer >前往
- Deep Convolutional Network – LeNet5的简化版本 >前往
无监督和半监督学习算法,阅读顺序无要求:(自编码器与RBM/DBN议题相互独立):
- Auto Encoders, Denoising Autoencoders, 自编码器,去噪自编码器 – 自编码器描述 >前往
- Stacked Denoising Auto-Encoders,堆栈式自编码器 – 进行深度网络无监督预训练的简单步骤 >前往
- Restricted Boltzmann Machines,受限玻尔兹曼机 -单层生成式RBM模型
- Deep Belief Networks – 深度信念网络 -先进行栈式RBMs的无监督生成式预训练再进行有监督微调
面向mcRBM模型构建, 关于从能量模型采样的新教程:
- HMC Sampling,混合蒙特卡罗采样 -混合(又名汉密尔顿)蒙特卡洛采样 scan()
面向收缩自编码器的构建教程, 目前已经有了代码:
- Contractive auto-encoders code,收缩自编码器代码 – 代码中有基础文档
带有词语嵌入和上下文窗口的Recurrent neural networks
- Semantic Parsing of Speech using Recurrent Net
用于语义分析的LSTM:
- LSTM network
基于能量的recurrent neural network (RNN-RBM)
- Modeling and generating sequences of polyphonic music,和弦音乐序列的建模与生成
人工智能任务的分类
本文主要提出一种智能任务分类方法,希望未来可以有利于智能系统的设计和评估。
本稿属于2016年06月24日初稿,后续会不断修订更新,转载须注明出处。
人工智能任务的分类
邓范鑫
为了实现AI-Complete(AI-Hard,AI完全)问题,我们需要一些测量方法,最著名的测量方法当属图灵测试。一个可以解决AI完全问题的机器应该在必要辅助的设备帮助下,可以完成人类能够完全的所有任务,亦即它像人类一样的智能(Intelligent),我们便称其为强人工智能(True AI或Strong AI)。这些人类可以完成的任务,我们称之为人工智能任务,简称AI任务,AI任务有不同的难易程度,所谓难易是基于所需要的智力资源的多少,一般呈现到科学技术领域,表现出来的是越容易模拟实现的AI任务越简单,越难于模拟实现的任务越困难,目前还有很多AI任务,除人类以外没有任何对象可以完成。 Read more