刘子纬作者

视觉世界中的“众里寻她”--开放环境下的人物特征表示

编者按:辛弃疾在《青玉案.元夕》中曾这样写道,“众里寻她千百度,蓦然回首,那人却在,灯火阑珊处。”

其实在视觉理解领域,这半阙词,描绘的即是,在熙熙攘攘的视觉世界中,通过剥离场景,只关注所关心的那个她的过程 。

如果能够更好地对“她”进行表示,将直接影响到相关视觉任务的性能。因此,对人物的特征表示,成为了计算机视觉领域一个长期的研究方向。

今天,来自加州大学伯克利分校的刘子纬博士,将从开放环境下的人物特征表示出发, 带着你,在熙熙攘攘的视觉世界中,“众里寻她”。

文末,大讲堂特别提供文中提到所有文章以及代码的下载链接。

本文整理自Valse Webinar 2018-01-17期报告。




为什么要做以人为中心的视觉计算?在精彩的数据世界中,90%的图像视频数据都是与人相关的。例如,对于上图,我们第一点会关注的就是她是谁、有怎样的喜怒哀乐,也就是对人脸属性的理解。



第二点,会关注她的衣着打扮和服饰风格,这是对全身的理解;



第三点,我们开始尝试理解她和环境的关系,也就是所谓的场景理解。



最后,我们好奇的是她将要去哪里,下一个动作是什么,也就是运动关系理解。接下来将从以上四个方面来逐步讲述我对Human-centric Visual Representation的研究。

Part I: Deep Face Understanding

首先介绍对人脸的理解,这部分内容基于以下工作:

  • “Deep Learning Face Attributes in the Wild”,ICCV 2015.



人脸除了具备身份特征之外,还包含肤色、形状、部件等丰富的中层语义层面的视觉属性特征。预测一张图片中人脸的属性(比如拱形眉毛、大眼睛、衰退的发际线、有无胡须等),其实是一个很难的问题,尽管在这里属性都是指二分类问题



传统方法常采用HOG在人脸关键点处提取信息,然后训练一个SVM分类器来得到最终结果。它会有很多错误结果,分析其中原因:第一,真实条件下的人脸存在较大的姿态及尺度变化,因此基于关键点的方法不一定奏效;第二,属性空间是非常大的,线性分类器SVM不足以解决这个问题。



因此属性特征空间问题是我们的一个motivation。所谓的single detector是指将所有人脸放在同一个空间下,其空间变化非常大,需要捕捉的信息过多,所以很难学习到一个比较好的检测器。因此,人们就想到了multi-view detector,将人脸分为正面人脸和其他朝向的人脸,在每个子空间里只解决一个子问题,使每一个子问题变得简单,并改善了single detector。这里我们提出用人脸属性分割各个子空间,比如具有“金发”、“微笑”属性的人脸构成第一个子空间,这个子空间比正面人脸子空间更加紧致,所以可以学习到更加紧致的模型来刻画子空间。



为了研究这个问题,我们收集了一个较大规模的人脸数据集CelebA,它包含20万张人脸数据,涵盖了40个人脸属性,1万个体。每张人脸图像有bounding box和五个关键点的标注。



以上是我们的pipeline,整个网络分为两个部分,第一部分做定位,第二部分做属性预测,都只用了image-level的属性标注信息。首先通过Face Localization Nets定位图片中的人脸,利用人脸属性训练深度神经网络,其卷积层的响应信息其实是可以表示出人脸位置的,结果还是出人意料的精确。之后再通过训练一个Attribute Prediction Net来得到细粒属性。



如何做定位呢?首先验证为什么人脸属性信息可以做定位,我们用直方图统计了训练好的卷积神经网络在人脸图像和背景图像上的响应,可以看出人脸和背景有明显的分界。从右图可以得知,使用愈加丰富的人脸属性信息可以得到愈加精确的定位。


随着人脸属性数目逐步增多,神经网络越来越向人脸集中注意力。



进一步做了一些定量化的研究。第一,我们发现LNet在CelebA数据集上的人脸定位结果优于传统方法。



第二,研究了网络的泛化能力。使用网络陌生的MobileFace用户数据集测试,它依然可以找到人脸。

以上是第一个模块——人脸定位。



以下是第二个模块——细粒度分类。我们发现如果用人脸身份信息做预训练,网络已经能够挖掘很多人脸属性语义信息,也就是说神经网络本身做了分解,不断找到训练集图片的heat map。如图(a.1)(a.2)...(a.6)代表神经元,比较靠左的是它高响应的平均图,靠右的是低响应的平均图。


随着训练迭代次数的增多,神经元慢慢发现了种族信息,它的高响应结果是“亚洲人”、低响应结果是“欧洲人”。



如果在预训练好的网络上用人脸属性fine-tune,结果它的activation比较稀疏,但是每一个响应的神经元代表了某一种细粒度属性。



如图,通过属性信息fine-tune可以发现“厚嘴唇”这一特征。



我们的属性分类在CelebA 和 LFWA上都取得了比较好的结果,而且其运行速度也是比较快的。



通过观察网络在未知的30个人脸上的属性预测表现,测试了属性预测的泛化能力,可以看到相对于其他方法有一定优势。

以上和大家分享的是人脸方向的一些工作,主要分为两个方面,首先,人脸属性可以做人脸预测,不需要bounding box标注;其次,用身份信息做预训练其实可以把人脸空间做一定的分解,能够发现很多属性信息。

Part Ⅱ:Deep Fashion Understanding

接下来跟大家分享在服装理解方面的工作,主要基于以下两个工作展开:

  • "DeepFashion:Powering Robust Clothes Recognition and Retrieval with Rich Annotations",CVPR 2016

  • "Fashion Landmark Detection in the Wild",ECCV 2016



服饰理解比人脸理解的难度大很多。人脸是近似刚体的,可以很好地对齐,而且整个变化可以转化为表面变化。但是衣服是柔性物质,常面临遮挡以及形变,且在不同场景下变化较大。



但是我们依然遵循计算机视觉社区二十多年的经验,来进行视觉上的服饰理解。首先,可以利用faster-RCNN或者SSD等算法,训练一个服装检测器,然后我们提出服装对齐的方法,服装确实具备一些关键点,可以从关键点处提取其局部本征信息。



得到关键点信息之后,可以做识别任务,尽管不同场景下衣服形态发生了很大变化,但对于一些本征的局部特征具备一定的不变性。



为了研究这个问题,我们依然收集了一个大规模的数据库Deep Fashion,它包含4万套不同款式衣服的80万张图片,涵盖50个种类,1000个属性,并有bounding box以及八个关键点的标注信息。



第一步检测是较容易的,可以使用一些通用检测器。比较困难的是对齐,首先定义一组衣服的关键点,比如领口、袖口、腰身、下摆等位置,但是服饰的关键点和人体关键点还是有很多差异。比如(a.1)中蓝色的是人体关键点,而(a.2)中绿色的是衣服的关键点。(a.3)中衣服并没有穿在人身上,所以无法依据人体关键点来检测衣服关键点,而(a.4),在自拍状态下很多关键点被遮挡,一些姿态检测器不能起作用。因此,服饰关键点检测比人体关键点检测更可靠。



这里进一步说明服饰关键点检测比人脸关键点检测更加困难。从两个角度来看,其一从几何角度看,图(b)中,服饰关键点的分布比人体关键点的分布更加广泛;其二从外观角度来看,人体关键点比服饰关键点有更明显的边界信息。



我们设计了如图算法流程,通过级联的神经网络做对齐,每一个阶段都是一个回归问题,也就是给一张图片,通过一个基网络(比如VGG16),经过几个全连接层回归其坐标,比如有8个关键点就回归16个坐标(x,y)。第二个阶段通过学第一个阶段的增量来优化其结果,但是,衣服的变化是很大的,如果仅仅直接做深度回归学习的话,对于一些中等难度或难度较大的样本效果是不好的。



因此,我们提出在regression label之外添加pseudo label,在训练集空间中做聚类,比如第一阶段除了回归坐标之外,还预测它属于哪一类,回归类别的过程帮助网络预测样本的难易程度,其实隐含地做了难例挖掘,对于比较困难的样本,它会用网络中学到的权重来专门处理。



可以看出对于不同难度的姿态和不同程度的放大,我们的方法都能表现得比较好,但仅仅基于回归或者仅仅基于图模型推理的方法表现都不佳。



以上我们讲述了如何做服饰关键点检测, 那么我们为什么要做呢?其实服饰关键点提供了一个非常有效的表达,(a)图是服饰属性预测的结果,(b)图是用服饰做检索的结果,我们发现当用服饰关键点时,它的效果要优于用人体关键点、bounding box、全图来检索。因此,尽管服饰关键点检测是一个具有挑战性的问题,但是它是非常有意义的。


这是我们的一些结果,可以看出红色的预测结果非常接近绿色的groundtruth。



对齐完成后,可以进行我们真正感兴趣的地方——服饰识别。这个问题有很大的商业价值,但是在学术上还没有清晰的定义,其识别目的究竟是同一款式的还是同一风格的服饰,所以我们需要去平衡这两点。



我们设计了Fashion Net,它同时利用多个损失做多任务学习,通过关键点定位得到局部特征,然后将局部特征和全局特征融合起来同时做身份预测和属性预测。



这是简化的流程,当网络前向传播时,根据关键点信息(蓝色)得到局部特征(绿色),然后和全局特征(橙色)融合,最后利用融合好的特征预测属性类别,同时会用triplet loss预测它的款式类别。



但是上述三个部分的损失都不容易设计,都不能直接用现有简单的损失函数(比如cross entropy、softmax loss)解决,因为服饰的类别和属性数量都是非常大的,一般的损失函数很难转换,所以我们首先对属性做了一个直方图统计,如图,它是一个长尾型的分布,而且对于在线图片而言,具有较多噪声,因此我们提出了Multi-label ranking loss,ranking loss的本质精神只关心正确的比错误的分高,而并不关心真正能够分对的标签是什么,它对噪声非常鲁棒,而且某种意义上能够解决数据不平衡问题。



对于类别数量较多的情况,也不能用softmax,一个很简单的方法就是用triplet,但在做triplet的时候我们需要去融合样本中的正样本对和负样本对。对于负样本对,需要用Hard Negative Mining方法挖掘比较难的负样本对。



我们测试了神经网络在两种情况下的性能,首先是In-shop Clothes Retrieval,即对于一张给定图片,搜索店里相似的图片。这是对电商很有吸引力的一项功能,可以看出现有方法都能取得比较好的性能,top10的准确率都在50%以上,基本都能正确检索。



但是consumer-to-shop(从街拍到电商图片)服饰检索是一个更难的问题,目前方法能达到的检索正确率仅仅是20%左右,所以这种跨模型问题应该是今后的研究方向。如何解决两个模态之间的鸿沟,同时学到一个公共空间将它们投影,还是一个非常困难但是很有意义的问题。



当我们解决上述两个问题后,系统就可以衍生出非常多的应用,可以检索相同风格的衣服,也可以搜索电影视频或照片中服装的同款,甚至做一些服饰搭配。

总体来看服饰理解任务,首先定义服饰关键点,然后通过级联模型找到关键点,通过伪标签解决一些难例样本,最后通过多任务学习来融合异构、异质的监督信息,获得最终比较好的表示。


Part Ⅲ:Deep Scene Understanding


在人脸和服饰理解的基础之上,我们进一步解析人和环境之间的关系,即场景理解,以下基于这两个工作展开:

  • “Semantic Image Segmentation via Deep Parsing Network”,ICCV 2015(oral)

  • "Not ALL Pixels Are Equal:Difficulty-aware Semantic Segmentation via Deep Layer Cascade",CVPR 2017(spotlight)




给定一张图片,我们应该如何解析它的每一个像素,解析出来后将其用于high-level的图像理解、或者low-level的图像编辑。



这也是所谓的语义分割,这方面已有很多工作,比如SVM或者SVM和MRF(Markov Random Field概率图模型的结合,以及当前流行的CNN,2015年我们提出了一个问题:如何把CNN和MRF结合起来?



首先调研了当时最好的方法,第一个方法是全卷积网络,它可以很好地学习特征,但是缺少成对的联系,因此像素之间是相互独立的。



后来DeepLab出世,它在FCN之后接上了Dense CRF做后处理,解决了pairwise relation的问题。它的问题在于不能端到端地训练,而且后处理需要十次迭代,时间代价较高。



当时同时还有一个工作叫“CRF as RNN”,它相对于DeepLab能够进行端到端地训练,但是依旧需要迭代十次。



这里我们提出用Deep Parsing Network来解决问题,能够获得同样的三个优点,但是只需要一次迭代。



这里的贡献主要有三点:

  1. 将更丰富的结构信息和关系信息融入MRF;

  2. 把high-order MRF用mean field解法融合进CNN;

  3. 整体网络可以联合训练并且只需要一次迭代。



这里重点讲我们设计的两个比较特殊的公式。首先是triple penalty,一般只考虑i,j两点,它们相似那么其标签就一致,这里我们还考虑z1...zn这个邻域,好处是当i,j不确定时,可以参考z邻域的信息来得到更精确的估计。这里对于i,j和z的联合计算可以很好地模拟图像中广泛存在的长程一致性。



第二个是mixture of label contexts,普通的context仅仅是某一类物体出现的频率,而在此可以考虑两种物体联合的损失,这样可以构成更加丰富的空间对信息。



我们进一步把pairwise term用mean field solver解成一元组。



然后把一元项和成对项变成卷积和求和形式,然后就可以用我们现在一些标准的神经网络操作来解决该问题。其中,Pairi,j代表了不同类型的全局和局部滤波器。



这是我们的深度解析网络,unary term可以是很强的VGG或者ResNet,然后通过triple penalty和label context学到一个结果。



如图,我们发现unary term会漏掉图像中的部分目标,且边界较粗糙;通过triple penalty,判断两个标签的相似度来修正它的预测标签,可以将边缘变得较尖锐;然后通过label contexts判断这里很有可能是一个盆栽;最后通过整体三个部分一起做训练,来得到最终结果,非常接近groundtruth。



我们的方法当时在VOC2012上取得了最好的结果。



所以我们关心label contexts究竟能否学到所谓的结构化关系信息,颜色偏红表示否定,偏蓝表示肯定,普通的ResNet和VGG容易把摩托车和自行车这两种混淆,我们通过label contexts把二者区分开来;第二,我们看到一个favor,我们希望人和摩托车能够一起出现,这也是非常合理的,因为摩托车上一般会有人。



进一步去可视化它的卷积核,左图表示人在摩托车上,右图表示椅子一般在人下面。这样的空间信息也符合人直观的感受。



对于有图片中有反射的挑战性问题,我们的方法能够明显优于其他方法,原因就在于label context,而且joint tuning可以使得之后的网络修正之前的信息。



Input video



State-of-the-art Method (4 FPS)



Deep Layer Cascade (17 FPS)


如图,Deep Parsing Network速度其实很慢,尽管只有一次迭代,但是因为基网络用的是VGG和ResNet,因此对于这样一段街景视频,它只能做到每秒4帧,并不能够应用于实际场景中,因此我们这里提出了进一步优化的方法——Deep Layer Cascade,它可以做到每秒17帧,而且可以保证准确率几乎不降。



网络慢的原因是使用了非常深的全卷积网络,而且每一层都需要传导高分辨率的特征图。



我们的motivation非常简单,即没有必要对图像中的每一个像素都做深度处理,因为对于一些简单的和中等难度的区域,完全可以用浅层网络来解决,而对于比较难的区域才需要深度网络处理。



因此,我们把contempotary model变成Deep Layer Cascade,上面是一个做分类任务的网络ResNet,下面是把ResNet变成一个做分割任务的网络,每一个卷积层都需要给它一个比较大的特征图。



将它变成layer cascade形式,当ResNet过了三个block之后,就输出简单区域的结果,而简单区域大约占据了图像60%~80%的比例,这部分就不用输入更深层的网络;再经过两层得到中等难度区域结果;最后经过深度网络所有层得到难区域的结果。对于全图而言,它节省了大量时间成本。



区别于传统对全图做卷积的方式,这里采用区域卷积思想,只对选择出的区域做卷积,然后在残差网络中放入区域卷积,对某一区域做卷积后将其加到原先的特征图上,之后的网络就可以只处理比较难的区域。



这是我们算法的表现,尽管较简单的区域没有经过神经网络,但是并不影响最终的识别结果,这是因为网络其实学会了注意力机制,它可以学会关注难区域,所以网络之后的层并不需要处理所有的区域,只需要处理难区域,神经网络反而会表现得更好,而且其速度要明显优于其他方法。



这是对每一阶段的可视化结果。我们看到从第一阶段到第三阶段,网络逐步从认识较容易的背景区域到较难的关键物体区域,越来越接近groundtruth。


  


Input video



Stage-1



Stage-2



Stage-3


对于街景视频,我们看到deep layer cascade在第一阶段学到的是路、天空,而在第二阶段开始它可以学到一些比较大的树和交通路牌,第三阶段能够学到行人、电线杆这种比较精细化的目标。由此可见,这个网络可以预测不同难度的样本。

在场景理解这部分,我们从精度和速度两个方面进行了求解和优化,提出了layer cascade这种“分而治之”的思想,对不同难度的区域用不同方式处理。


Part Ⅳ:Deep Motion Understanding


在对人脸、服饰、场景进行理解的基础上,我们希望理解图像中目标的运动,譬如人往哪里走。以下介绍基于工作:

  • "Video Frame Synthesis using Deep Voxel Flow",ICCV 2017(oral)



这里我们比较感兴趣的是如何生成视频帧,它有两个实际的应用,第一个是预测,第二个是插值,比如,如图第一帧和第三帧已知,我们要求第二帧。或者将低帧率的视频变成高帧率的,以及做视频压缩。这个问题是非常基础且有意义的,但也是非常困难的。



如图,视频合成任务面临两个主要的挑战。其一,运动是非常复杂的,一个是摄像机的移动,另一个是拍摄主体的移动,所以一般基于运动模型或者光流的方法不太适合解该问题;其二,生成高分辨率的图片,是现在基于对抗神经网络方法所不能达到的。



这里我们提出了基于体素流(是一个双向流)的方法,与其生成中间所求这一帧每个像素的值,不如学习可以从哪里复制过来这个值。



然后需要一个选择掩膜,视频中常常会存在遮挡,因此需要去选择从第几帧取像素。



最后,为了让任务可学(可微),我们提出了双线性采样方式,从局部区域采样一些体素来重建这一帧。



这里最核心的一个模块就是deep voxel flow(深度体素流),它是一个可微的时空采样,它可以前向或反向传导,并能够从间隔帧中学习。



如图是具体神经网络结构,它结合了基于光流的方法和基于神经网络的方法,所以紫色框标注的是完全由无监督学习学出来的,仅仅通过重构损失函数来学习。



为了解决大运动问题,我们提出了多尺度深度体素流法。从小尺度学习开始,不断把小尺度的信息融合到大尺度上去,因为大的运动在小尺度上会变小,所以这样的pipeline有助于解决这个问题。



如图,是从2D flow+ mask到多尺度体素流方法的演变及其效果,可以看到学到的motion field和selection mask是非常匹配的。



这里是一些ablation study,从定量上看,我们的方法也比较好。




如图是针对UCF-101体育数据集的一些结果,所有帧都是网络生成出来的。



此外针对驾驶数据集做了测试,驾驶数据集的难度在于前后帧的跳跃较大,因为速度比较快,可以看出我们的方法依然可以比较平稳地找到中间帧。



另一个比较有意思的地方是,尽管这个网络学到的是重构这一帧,但是它学到的特征依然可以用于high-level的视觉任务,比如这里无监督的光流表现的不错,而且神经网络学习到的权重也可以被应用到行为识别中去,这与learning-by-prediction思想类似,通过预测或插值中间帧和下一帧,学到比较有效的视频表示。



除了在空间上一致之外,它还在时间空间上也是比较连续的,(b)图是沿着视频的时间轴和x轴进行的切片,可以看出我们的方法比Epic方法要平稳一些。



最后我们做了一些真实视频上的测试,一些没有计算机视觉背景的人观察我们的方法和其他方法的效果,投票表明我们的方法明显效果更好。而且,如果使用更高清的数据来训练,最终效果会更好。


  

在这个章节中,我们介绍了如何解human motion的问题,提出了voxel flow(体素流),它其实是一种无监督的光流,仅仅通过视频重构就可以得到比较好的表示。



总结一下,我们的工作主要围绕人,对人脸、服饰、场景、以及动作进行理解,算法场景都是户外条件。因此,算法需要同时考虑两点,一个是物体会存在形变,我们使用了注意力机制和关键点来做,另一个是场景也非常复杂,我们采用了layer-cascade,对不同难度的区域采用分而治之的思想;第二,我们的工作混合了异质的监督信息,通过融合身份、属性、关键点信息,甚至未来可能会用到自监督信息,提高了算法性能和算法落地的可能性;第三,我们需要把深度学习变得更加结构化,需要加强每个神经元的语义信息,并让神经元懂得一定的空间关系并具有时空概念,这也是结构化深度学习未来的方向。



这些工作不仅在理论上有一定的价值,在实际中也已落地到产品中去,比如Microsoft Blink,Google Clips,SenseTime FashionEye。



最后非常感谢我的合作者们,和他们一起工作非常开心,谢谢大家!



文中刘博士提到的文章下载链接为:https://pan.baidu.com/s/1ggdvu4F


文中提到的算法源代码已开源:https://github.com/liuziwei7 

入门人物特征计算机视觉
相关数据
注意力机制技术
Attention mechanism

我们可以粗略地把神经注意机制类比成一个可以专注于输入内容的某一子集(或特征)的神经网络. 注意力机制最早是由 DeepMind 为图像分类提出的,这让「神经网络在执行预测任务时可以更多关注输入中的相关部分,更少关注不相关的部分」。当解码器生成一个用于构成目标句子的词时,源句子中仅有少部分是相关的;因此,可以应用一个基于内容的注意力机制来根据源句子动态地生成一个(加权的)语境向量(context vector), 然后网络会根据这个语境向量而不是某个固定长度的向量来预测词。

神经网络技术
Neural Network

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

分类问题技术
Classification

分类问题是数据挖掘处理的一个重要组成部分,在机器学习领域,分类问题通常被认为属于监督式学习(supervised learning),也就是说,分类问题的目标是根据已知样本的某些特征,判断一个新的样本属于哪种已知的样本类。根据类别的数量还可以进一步将分类问题划分为二元分类(binary classification)和多元分类(multiclass classification)。

深度神经网络技术
Deep neural network

深度神经网络(DNN)是深度学习的一种框架,它是一种具备至少一个隐层的神经网络。与浅层神经网络类似,深度神经网络也能够为复杂非线性系统提供建模,但多出的层次为模型提供了更高的抽象层次,因而提高了模型的能力。

计算机视觉技术
Computer Vision

计算机视觉(CV)是指机器感知环境的能力。这一技术类别中的经典任务有图像形成、图像处理、图像提取和图像的三维推理。目标识别和面部识别也是很重要的研究领域。

卷积神经网络技术
Convolutional neural network

卷积神经网路(Convolutional Neural Network, CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现。卷积神经网路由一个或多个卷积层和顶端的全连通层(对应经典的神经网路)组成,同时也包括关联权重和池化层(pooling layer)。这一结构使得卷积神经网路能够利用输入数据的二维结构。与其他深度学习结构相比,卷积神经网路在图像和语音识别方面能够给出更好的结果。这一模型也可以使用反向传播算法进行训练。相比较其他深度、前馈神经网路,卷积神经网路需要考量的参数更少,使之成为一种颇具吸引力的深度学习结构。 卷积网络是一种专门用于处理具有已知的、网格状拓扑的数据的神经网络。例如时间序列数据,它可以被认为是以一定时间间隔采样的一维网格,又如图像数据,其可以被认为是二维像素网格。

损失函数技术
Loss function

在数学优化,统计学,计量经济学,决策理论,机器学习和计算神经科学等领域,损失函数或成本函数是将一或多个变量的一个事件或值映射为可以直观地表示某种与之相关“成本”的实数的函数。

马尔可夫随机场技术
Markov Random Field

具有马尔可夫性质的随机场。 随机场:当给每一个位置(site)按照某种分布随机赋予相空间(phase space)的一个值之后,其全体就叫做随机场

神经元技术
neurons

(人工)神经元是一个类比于生物神经元的数学计算模型,是神经网络的基本组成单元。 对于生物神经网络,每个神经元与其他神经元相连,当它“兴奋”时会向相连的神经元发送化学物质,从而改变这些神经元的电位;神经元的“兴奋”由其电位决定,当它的电位超过一个“阈值”(threshold)便会被激活,亦即“兴奋”。 目前最常见的神经元模型是基于1943年 Warren McCulloch 和 Walter Pitts提出的“M-P 神经元模型”。 在这个模型中,神经元通过带权重的连接接处理来自n个其他神经元的输入信号,其总输入值将与神经元的阈值进行比较,最后通过“激活函数”(activation function)产生神经元的输出。

噪声技术
Noise

噪音是一个随机误差或观测变量的方差。在拟合数据的过程中,我们常见的公式$y=f(x)+\epsilon$中$\epsilon$即为噪音。 数据通常包含噪音,错误,例外或不确定性,或者不完整。 错误和噪音可能会混淆数据挖掘过程,从而导致错误模式的衍生。去除噪音是数据挖掘(data mining)或知识发现(Knowledge Discovery in Database,KDD)的一个重要步骤。

概率图模型技术
Probability Graphical Model

在概率论和统计学中,概率图模型(probabilistic graphical model,PGM) ,简称图模型(graphical model,GM),是指一种用图结构来描述多元随机 变量之间条件独立关系的概率模型

监督学习技术
Supervised learning

监督式学习(Supervised learning),是机器学习中的一个方法,可以由标记好的训练集中学到或建立一个模式(函数 / learning model),并依此模式推测新的实例。训练集是由一系列的训练范例组成,每个训练范例则由输入对象(通常是向量)和预期输出所组成。函数的输出可以是一个连续的值(称为回归分析),或是预测一个分类标签(称作分类)。

权重技术
Weight

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

深度学习技术
Deep learning

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法。观测值(例如一幅图像)可以使用多种方式来表示,如每个像素强度值的向量,或者更抽象地表示成一系列边、特定形状的区域等。而使用某些特定的表示方法更容易从实例中学习任务(例如,人脸识别或面部表情识别)。 近年来监督式深度学习方法(以反馈算法训练CNN、LSTM等)获得了空前的成功,而基于半监督或非监督式的方法(如DBM、DBN、stacked autoencoder)虽然在深度学习兴起阶段起到了重要的启蒙作用,但仍处在研究阶段并已获得不错的进展。在未来,非监督式学习将是深度学习的重要研究方向,因为人和动物的学习大多是非监督式的,我们通过观察来发现世界的构造,而不是被提前告知所有物体的名字。 至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

重构技术
Refactoring

代码重构(英语:Code refactoring)指对软件代码做任何更动以增加可读性或者简化结构而不影响输出结果。 软件重构需要借助工具完成,重构工具能够修改代码同时修改所有引用该代码的地方。在极限编程的方法学中,重构需要单元测试来支持。

准确率技术
Accuracy

分类模型的正确预测所占的比例。在多类别分类中,准确率的定义为:正确的预测数/样本总数。 在二元分类中,准确率的定义为:(真正例数+真负例数)/样本总数

多任务学习技术
Multi-task learning

商汤机构
SenseTime

深度学习大讲堂
深度学习大讲堂

机器之心编辑

深度学习大讲堂
深度学习大讲堂

高质量原创内容平台,邀请学术界、工业界一线专家撰稿,致力于推送人工智能与深度学习最新技术、产品和活动信息。

返回顶部