Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

林倞作者

林倞:Beyond Supervised Deep Learning--后深度学习时代的挑战

编者按:在工业界大量资源的投入下,大数据、大规模GPU集群带来了深度学习计算机视觉领域的全面产业落地,在很多竞赛中甚至取得远超学术界的成绩。在AI领域的各个顶级会议上,越来越多的优秀工作也来自于Google、Facebook、BAT等巨头或者一些新锐创业公司。

值得注意的是,工业界目前的主要进展和应用落地,很大程度上依赖于高成本的有监督深度学习。而在很多实际场景中,存在数据获取成本过高、甚至无法获取的问题。因此,在数据不足的情况下,如何使用弱监督、乃至无监督的方式进行学习,这既是学术界中大家广泛关注的问题,其实也是工业界面临的新挑战。

商汤科技研发总监、中山大学教授林倞,将从产业落地以及学术创新两种视角出发,带领大家一起探索“后深度学习时代”的新挑战。文末,大讲堂特别提供文中提到所有文章的下载链接。



关于本次报告中提到的所有算法及部分源码,详见中山大学人机物智能融合实验室网站: http://www.sysu-hcp.net



如果把AI系统比作为一架火箭,那么大数据就是它的燃料,深度学习则是它的引擎。随着大数据以及GPU算力的加持,深度学习在很多领域都取得了突破性的进展,例如视觉图像理解、属性识别、物体检测、自然语言处理、乃至自动驾驶。当然了,垂直化应用场景才是AI技术落地不可或缺的因素,这其实也是在工业界做研究的最大优势——从真实的需求引导技术的发展,而学术界的科研往往基于一些不太实际的假设。

基于视觉的图像理解,是从有标注的数据学习出AI算法,以实现相应的视觉识别任务,左上角展示了视觉图像理解中的物体检测以及属性识别应用。



而值得注意的是,深度学习计算机视觉领域的成功应用,很大程度上依赖于有监督的数据,这意味着大量的完全标注的干净数据(例如人脸识别领域的数据)。然而,这样的数据意味着非常高昂的成本。在真实的场景中,经常存在的是弱监督或者从互联网上获取的数据(例如网络社交媒体的数据),以及无标注或者标注有噪声的数据(例如智慧城市以及自动驾驶等应用中采集到的数据)。

LeCun教授曾用右图的蛋糕,来形容有监督学习、无监督学习、以及强化学习之间的区别,这里借用来说明这三种数据的区别:完全标注的干净数据就像蛋糕上的金箔樱桃,甜美却昂贵;而弱标注或互联网爬取的数据,就像蛋糕上的奶油,还算甜但也可获取;而无标注的或者标注有噪声的数据,不太甜但成本较低。



在本次报告中,我将首先介绍深度学习如何应用于视觉理解,接下来会从三个方面介绍最新的深度学习范式:

  1. 以丰富多源的弱监督信息来辅助学习

  2. 算法自驱动、具有高性价比(性能/监督信息成本)的自主学习

  3. 无监督领域自适应学习



首先介绍一下深度学习的基本概念,深度学习被定义为最终以网络形式呈现的、涵盖了多个步骤的、可微分的计算过程。而说起深度学习,就要从上世纪80年代的神经网络开始讲起。神经网络其命名的初衷,是向人脑中的神经网络致敬。那么人脑中是如何处理视觉信号呢?

首先,视网膜输入视觉信号,经过LGN外膝体,到达视觉皮层V1—V5,其中V1对边缘和角点敏感,V2捕捉运动信息, V4对part物件敏感,例如人的眼睛、胳膊等,最后到达AIT,来处理高层信息:脸、物体等。送到PFC决策层,最后由MC发出指令。所以人脑处理视觉信号是一个从浅层到深层的过程,而在此过程中,并不是一个单一的处理,它还具备时序性,也就是说它在处理每个信号时,都是利用了之前的时序信息的。

深度神经网络的形式和计算过程与人脑有很大的不同,不过它的发明的确是受到了神经信号处理的启发,例如经典的感知机模型其实是对神经元最基本概念的模拟。右上展示了1980年发明的多层感知机。



从1980年代的多层感知机到2010年的卷积神经网络,它经历了一个层数由少至多、层级由浅至深的过程,通过解决网络梯度消失以及泛化不好的问题,以及数据及GPU的加持,它终于实现了一个一站式的端到端的网络。

自2010年起,深度学习方法取得了远超传统机器学习方法的成绩,尤其随着训练数据集的不断扩展,传统方法迅速触碰到精度天花板,相比之下,深度方法的预测精度则不断提升。这里总结了这一波深度学习技术革新的几个关键点,包括新的网络优化方法,如ReLu,Batch Normally,Skip Connection等;从数学/知识驱动到数据驱动的研究思路的转变;分治优化逐渐过渡到联合端到端联合优化;从避免过拟合学习到避免欠拟合学习;大量的开源代码和初始化模型的涌现。



传统的模式识别任务,大致可总结为几个独立的步骤:包括数据采集、数据预处理、特征提取、分类器训练以及最终的分类。其中,数据预处理器和特征提取器的设计都是以经验为驱动的。而深度学习通过将预处理、特征提取以及分类训练任务融合,因此衍生出了一个,具有更强表示能力的端到端的特征转换网络。

在传统模式识别方法到深度方法的演变过程中,我们越来越体会到学习的重要性,而特征学习也已进化成一个端到端的学习系统,传统方法中的预处理已不是必须手段,而被融入端到端的系统中。似乎特征学习影响着一切模式识别任务的性能,然而,我们却忽视了数据收集和评估的重要性。

接下来我们举例说明传统方法是如何演化为深度方法的。



以跨领域视觉匹配任务(从领域2的数据中匹配到给定的领域1中的目标)为例,传统的方法一般会包含以下两个步骤:

  1. 首先,将来自于不同领域的样本投影到一个公共的特征空间 (特征学习);

  2. 然后,采用相似性或距离度量学习的方式,学习到一种距离度量,来表征这个公共空间上特征之间的相似性 (相似性度量学习)。

那么如何将这种相似性的度量整合到深度神经网络中,并进行端到端的学习呢?



如何把相似性度量融合到特征提取中去?

以右上公式表示的相似性度量方法为例 (度量模型的提出和推导请参加相关论文),我们可以将该度量模型分解后融入到神经网络中——将原来的全连接网络表示成成若干个与度量模型相匹配的结构化网络。再通过误差反向传导,可以将度量模型与卷积特征进行联合学习、统一优化。详细过程如下:

右上公式中, A矩阵为x样本所在领域中样本间的自相关矩阵,半正定; B矩阵表示y样本所在领域中样本间的自相关矩阵,半正定;C矩阵则是两个领域样本间的相关矩阵。

展开后我们可以发现,其组成成分除了网络从不同域提取到的特征外,还包含6个不同的表达距离度量模型的变量(每个域包含2个矩阵和1个向量)。图中左上部分显示了我们将分解后的距离度量变量融入到神经网络中的过程——结构化的网络模型。



由此看来,深度网络并不是完全的黑盒子,通过引入领域知识和结构化模型,是可以具备一定的宏观解释性的。

以跨域视觉匹配算法为例,其内部可归纳为三个部分:域独有层、特征共享层、以及相似度量。

整个端到端的网络如图所示,其每个部分都具有可解释性。

  1. 在域独有层,该网络为不同域的数据提取该域的独有特征;

  2. 在特征共享层,我们首先将不同域的特征融合,再将融合后的特征投影到共有空间下,再反向拆解出各自域在该共有空间下的特征;

  3. 最终通过相似性度量得到不同域样本间的匹配相似度。

相关的工作发表在T-PAMI 2016上,该模型在当时很多领域取得了state-of-the-arts的效果。



我们的验证基准包括的几个主要任务:年龄人脸验证、跨摄像头的行人再识别、素描画与照片间的匹配、以及静态图片与静态视频间的匹配。



相比较之下,在公司做深度学习则充分发挥了海量计算资源和充足数据量的优势,学术界精心设计的算法优势很容易被工程化的能力抵消。



此外,区别于学术界只关注算法本身的模式,在工业界做产品,则涉及到大量的环节,不同的场景会衍生出不同的问题,此时通过应用场景形成数据闭环成为关键。商汤投入了大量资源建设基础平台、工程化团队,通过深入各个垂直领域、积攒行业数据、建立行业壁垒,目前正在从AI平台公司逐渐向AI产品公司过渡。



在工业界大量资源的投入下,大数据、大规模GPU集群带来了深度学习计算机视觉领域的全面产业落地,在很多竞赛中甚至取得远超学术界的成绩。值得注意的是,工业界的这些进展的取得,是依赖于大量的全监督数据的,而在很多实际场景中,存在数据获取成本过高、甚至无法获取的问题。2012年以来,深度学习技术的高速发展并且在图像、语音等各个领域的取得了大量的成功应用,如果把这5年看成是一个新的技术时代, 那么在“后深度学习”时代,我们更应该关注哪些方向呢?

我在这个报告中给出一些想法——介绍3个新的深度学习范式:

  1. 以丰富多源的弱监督信息来辅助学习

  2. 算法自驱动、成本效益较高的自主学习

  3. 无监督领域自适应学习


Learning with Weak and Rich Supervisions




首先来介绍如何以丰富多源的弱监督信息来辅助学习。



由于网页形式的多样化,从互联网上获取的数据时常具备多种类型的标签,然而却不能保证标签的准确性, 往往存在标签噪声 。因此,这类数据可以看作具备丰富多源的弱监督信息。那么,我们考虑通过学习多个源的弱监督信息,来对标签进行更正。

将大量的数据连同带有小量噪声的标签,一起送入深度卷积神经网络,检测其中的标签噪声并进行更正。例如,右图展示了,通过融合图像数据以及对应的文本描述,来辅助对标签进行更正。



在场景解析任务中,我们通过学习图像的描述来解析场景。如图所示,利用物体定位来获取场景中具有显著性语义的物体,然后根据物体间的交互关系构建结构化场景配置。




而图像的描述语句通常包含丰富的语法信息,如果能将这些信息融入深度学习模型,那么可以将其看作一种辅助的监督手段。以对图像描述这一应用为例,如图所示,我们用绿色框表示场景中出现的实体,红色框表示实体之间的关系,而蓝色框表示场景的全局配置结构。



基于上述所说,我们提出了一个端到端的,结合卷积神经网络和递归神经网络的,深度结构化场景解析框架。输入的图片经过卷积神经网络后,会为每个语义类别产生得分图以及每个像素的特征表达,然后根据这些得分图对每个像素进行分类,并将同类别的像素聚合到一起,最终获取场景内v个目标的特征表达。然后将这v个目标的特征送入到递归神经网络中,并映射到某个语义空间,提取语义以预测物体间的交互关系。其训练过程如下:



整个网络学习的目标包含两个,一个是卷积神经网络部分中的场景语义标注信息,另一个则是递归神经网络部分中的结构化解析结果。在训练的过程中,由于图像数据缺乏对应的场景结构化信息,我们需要对其进行估计,来训练卷积神经网络和递归循环神经网络

简单来说,本工作的重点在于得到以下两个目标:(1)语义标注信息,包括定位语义实体的位置和确定语义实体之间的互动关系,(2)得到语义实体中的继承结构。

在本论文中采用的CNN-RNN联合结构,与单一RNN方法不同之处在于模型预测了子节点和父节点之间的关系。其中,对于语义标注,我们采用CNN模型为每一个实体类生成特征表达,并将临近的像素分组并对同类别使用同一标签。利用CNN生成的特征,我们设计RNN模型来生成图像理解树来预测物体之间的关系和继承结构,其中包括四个部分,语义映射(单层全连接层),融合(两个子节点结合生成一个父节点),类别器(其中一个子网络,用于确定两个节点之间的关系,并利用父节点的特征作为输入),打分器(另外一个子网络,衡量两个节点的置信度)。

本方法在学习过程中有两个输入,一个是图像,另外一个图像对应的解析句子,将图像输入CNN,得到图像的实体类特征表达,同时利用语义解析生成树方法将句子分解成语义树,并将图像得到的实体类与语义生成树一同输入到RNN网络中,利用图像的语义标注与关联结构树进行训练,从而得到预期的结果。



语义分割和场景结构化解析在PSACAL VOC 2012 和 SYSU-Scene 评测集上的实验结果展示如图。



这里给出了使用不同的学习策略在PASCAL 2012数据集上的结果,可以看出上下文信息被证明是一种有效的辅助手段。



还可以扩展到图像语义分割领域。这一工作发表在CVPR2017,目前在PASCAL VOC数据集上做到了state-of-the-arts。



此外,在面向任务的动作预测中, 同样可以采用弱监督学习的方式来解决需要大量标注信息的问题。这一工作获得了The World’s First 10K Best Paper Diamond Award by ICME 2017.

这项工作首次提出了任务导向型的动作预测问题,即如何在特定场景下,自动地生成能完成指定任务的动作序列,并针对该问题进行了数据采集。在这篇论文中,作者提出使用长短期记忆神经网络(LSTM)进行动作预测,并提出了多阶段的训练方法。为了解决学习过程中标注样本不足的问题,该工作在第一阶段采取时域与或图模型(And-Or Graph, AOG)自动地生成动作序列集合进行数据增强,在下一阶段利用增强后的数据训练动作预测网络。具体步骤如下。

1)为了对任务知识建模,该文引入时域与或图(And-Or Graph, AOG)模型表达任务。AOG由四部分组成:表示任务的根节点,非终端节点集合,终端节点集合和权重分布集合。非终端节点包括与节点和或节点。其中,与节点表示将该节点的动作分解为有时序关系的子动作,或节点则表示可以完成该节点动作的不同方式,并根据概率分布P选择其中一个子节点。终端节点包括跟该任务相关的原子动作。

2)由于AOG定义时存在的时序依赖关系,该论文利用深度优先遍历的方法遍历每个节点,同时利用与或图长短期记忆模型(AOG-LSTM)预测该节点的支路选择。

3)由于原子动作序列非常强的时序依赖关系,该论文同样设计了一个LSTM(即Action-LSTM)时序地预测每个时刻的原子动作。具体地,原子动作Ai由一个原生动作以及一个相关物体组成,可表示为Ai=(ai, oi)。为了降低模型复杂性和预测空间的多变性,该论文假设原生动作和相关物体的预测是独立的,并分别进行预测。


Progressive and Cost-effective Learning




接着介绍一下自驱动、成本效益较高的学习方式。



这类方法受到人类学习模式的一些启发:一是在逐步整合学习到的知识中自我探索,二是在交流的过程中不断扩充知识,以达到终生学习的目的。如上图所示,在学习的初期,利用已有的标注数据进行初始化学习,然后在大量未标注的数据中不断按照人机协同方式进行样本挖掘,以增量地学习模型和适配未标注数据。



在自我驱动、低成本高效益的学习方式中,课程学习和自步学习是一种有效的思路。

课程学习的基本思想,是由深度学习的开创者之一,Yoshua Bengio教授团队于2009年的ICML会议上提出;而在2014年,由Lu  Jiang等人提出了自步学习的公理化构造条件,并说明了针对不同的应用,可根据该公理化准则延伸出各种实用的课程学习方案。这些方法首先从任务中的简单方面学习,来获取简单可靠的知识;然后逐渐地增加难度,来过渡到学习更复杂、更专业的知识,以完成对复杂事物的认知。



在目标检测任务中,采用大量无标注、或者部分标注的数据进行训练,尽管充满挑战,但仍然是实际视觉任务中成本效益较高的方式。对于这一挑战,往往采用主动学习的方式来解决。而目前提出的主动学习方法,往往会利用最新的检测器,根据一个信度阈值,来寻找检测器难以区分的复杂样例。通过对这些样例进行主动标注,进而优化检测器的性能。然而,这些主动学习的方法,却忽视了余下大量的简单样例。

那么,如何既考虑到少量的复杂样例,又充分利用到大量的简单样例呢?

我们提出了一种主动样本挖掘(ASM)框架,如上图所示。对于大量未标注的检测数据,我们采用最新的检测器进行检测,并将检测结果按照信度排序。对于信度高的检测结果,我们直接将检测结果作为其未标注信息;而对于少量的信度低的检测结果,我们采用主动学习的方式来进行标注。最后,利用这些数据来优化检测器性能。

具体来说,我们采用两套不同的样本挖掘方案策略函数:一个用于高置信度样本的自动伪标注阶段,另一组用于低置信度样本的人工标注阶段。我们进一步地引入了动态选择函数,以无缝地确定上述哪个阶段用于更新未标注样本的标签。在这种方式下,我们的自监督过程和主动学习过程可以相互协作和无缝切换,进行样本挖掘。此外,自监督的过程还考虑了主动学习过程的指导和反馈,使其更适合大规模下物体检测的需要。具体来说,我们引进两个课程:自监督学习课程 (Self-Supervised learning Curriculum, SSC) 和主动学习课程 (Active Learning Curriculum, ALC)。SSC 用于表示一组具有高预测置信度,能控制对无标签样本的自动伪标注,而 ALC 用于表示很具有代表性,适合约束需要人工标注的样本。值得注意的是,在训练阶段,SSC 以逐渐从简单到复杂的方式,选择伪标签样本进行网络再训练。相比之下,ALC 间歇地将人工标注的样本,按照从复杂到简单的方式,添加到训练中。因此,我们认为 SSC 和 ALC 是对偶课程,彼此互补。通过主动学习过程来更新,这两个对偶课程能够有效地指导两种完全不同的学习模式,来挖掘海量无标签样本。使得我们的模型在提高了分类器对噪声样本或离群点的鲁棒性同时,也提高了检测的精度。



Interpretation:上面优化公式由(W,Y,V,U)组成,其中W指代模型参数(物体检测器的参数,我们的文章里面是Faster RCNN或者RFCN)。Y指代在自动标注下的物体检测器产生的proposal的伪标注类别。V={v_i}^N_{i=1}指代自步学习过程(self-paced learning,在上式中为self-supervised process)下对每个proposal训练实例的经验损失权重,v_i取值为 [0,1)的一个连续值m维向量(m为类别数目)。U={u_i}^N_{i=1}指代主动学习下对每个训练实例的经验损失权重,u_i取值为一个{0,1}二值标量。

W是我们想要学习的参数,其余Y,V,U都可以看成是为了学习W而要推断的隐变量。后两个为权重隐变量,基于选择函数(selector)作用于每个样本训练损失。具体来说,W的优化基于经验损失的加权和。因此,在每次优化W之前,我们必须要知道Y  (由于经验损失为判别误差,没有自步学习过程下的给与的伪标注(Y),所有数据都只能利用AL的人工标注,整个方法退化为全监督学习) 。同时在优化W和Y之前,我们必须要知道U和V的值(知道每一个u_i和v_i的取值,才能决定哪些训练实例的y值需要人工标注(自主学习AL),那些需要机器自动推断 (自监督过程SS)。);同时,知道每一个u_i和v_i,才能基于选择器(selector)推断出经验误差的训练权重)。给定样本i基于u_i和v_i的值域以及选择器可以看出,u_i=1>v_i^{j}对应样本会被选择为主动学习的人工标注对象,u_i=0<=v_i^{j}时对应样本会得到自动标注。



于是,问题落在如何推断U和V这两个权重隐变量集合身上。容易看出U和V要联合推断,而如何选择U和V则由每个训练实例的经验损失以及其对于各自的控制函数(f_SS, f_AL)决定。f_SS的具体解释可以参考自步课程学习(self-paced curriculum learning),简单的理解就是优先选择训练损失较小的样本进行学习,这表现为训练损失越小赋予的权重越大。随着lambda变大(优化过程中,lambda和gamma都会逐渐变大),训练会开始接纳具有更大训练误差的样本。f_AL相反,主动学习一开始会从训练误差较大的样本(样本误差比较小的会被置零,从而被选择为自监督过程并且得到自动标注)中选择并进行人工标注。随着gamma增大,主动学习会开始接纳更小的误差的样本。

模型函数 f_SS代表了一种贪心的自监督的策略。它大大地节省了人工标注量,但是对于累计预测误差造成的语义恶化无能为力。并且,f_SS极大依赖于初始参数 W。由于模型函数 f_AL存在,我们可以有效地克服这些缺点。f_AL选择样本给用户进行后处理,通过f_AL获得的人工标注被认为是可靠的,这种过程应该持续到训练结束。值得一提的是,通过 f_SS进行的伪标注只有在训练迭代中是可靠的,并且应该被适当的调整来引导每个阶段更鲁棒的网络参数的学习。实际上,f_SS和f_AL是同时作用与每一个样本的,这会等价于一个minimax的优化问题。

另一方面,U和V在推断时需要考虑前一阶段已经由主动学习中的人手工标记好的信息。我们利用之前的人手工标记好的信息,定义了两个基于U和V的取值约束,称为“对偶课程”(Dual Curricula)。该约束项将被自主学习选过的训练样本,如该样本属于m个类别之中的一类,我们将其为u和v值设定为1;如该样本不在m个类别之中,我们将其u和v值设定为0。这意味着我们的训练框架可以容纳新类别的发掘,同时不会让新类别影响检测器的训练。V^{\lambda}_{i}和U^^{\lambda}_{i}只基于之前AL选择后的结果分别对u和v值进行约束。

形象来说,我们采用两套不同的样本挖掘方案策略函数:一个用于高置信度样本的自动伪标注模式,另一组用于低置信度样本的人工标注模式。我们进一步地引入了动态选择函数,以无缝地确定上述哪个阶段用于更新未标注样本的标签。在这种方式下,我们的自监督过程和主动学习过程可以相互协作和无缝切换,进行样本挖掘。此外,自监督的过程还考虑了主动学习过程的指导和反馈,使其更适合大规模下物体检测的需要。具体来说,我们引进两个课程:自监督学习课程 (Self-Supervised learning Curriculum, SSC) 和主动学习课程 (Active Learning Curriculum, ALC)。SSC 用于表示一组具有高预测置信度,能控制对无标签样本的自动伪标注,而 ALC 用于表示很具有代表性,适合约束需要人工标注的样本。值得注意的是,在训练阶段,SSC 以逐渐从简单到复杂的方式,选择伪标签样本进行网络再训练。相比之下,ALC 间歇地将人工标注的样本,按照从复杂到简单的方式,添加到训练中。因此,我们认为 SSC 和 ALC 是对偶课程,彼此互补。通过主动学习过程来更新,这两个对偶课程能够有效地指导两种完全不同的学习模式,来挖掘海量无标签样本。使得我们的模型在提高了分类器对噪声样本或离群点的鲁棒性同时,也提高了检测的精度。



基于u和v的联合推断构成了一个可基于训练实例分解的minmax优化问题。对于每一个训练实例u和v,我们证明了在满足一定条件下,该推断具有基于上式表达的闭式解 (具体考究这个有点复杂,可以参考我们的文章)。大概意思是,在考虑训练实例i的类别经验误差和的时候,大于第一个阈值会u_i值会收敛为1 (大括号里面第一种情况)。由于v^{j}_i<1,我们知道该实例会被选作人工标注。另一方面,在类别经验误差和小于另一个阈值(大括号第二行第一个不等式)时,u_i值会收敛为0。由于v^{j}_i>=0,我们知道该实例会被选作机器自动标注,同时根据误差大小,相应赋予不同的权重。当误差越大,自动标注越有可能出错,于是自动赋予权重越小。在大于某一值域(大括号第二行第二个不等式)下,v和u都会同时为零,这意味着该样本不参与本轮训练。



上图展示了提出的框架(ASM)在目标检测中的应用。



在PASCAL VOC 2007/2012结果中,我们的方法仅仅利用大约30~40%左右的标注数据,就能达到state-of-the-arts的检测性能。




如何利用大量原始视频学习

类似的策略可以应用在人体分割任务中,我们利用人体检测器、和无监督的分割方法,从大量的原始视频(来自YouTube)中生成人体掩膜。这些掩膜信息可以作为分割网络的标注信息。同时,结合分割网络输出的信度图,对人体检测器提取的候选区域结果进行修正,以生成更好的人体掩膜。


Unsupervised Domain Adaptation




为了适配不同领域数据间的分布,解决目标任务缺乏数据标注的难题,我们将探索无监督领域自适应学习方法,包括单数据源领域自适应、以及多数据源领域自适应。




 单数据源领域自适应


在应用场景中,往往存在某一领域的可用数据过少,而其他类似领域的可用数据充足,因此,衍生出了一系列迁移学习的方式,以做到跨领域的自适应。例如,在图示的任务中,源域的数据一般是带有标注信息的,而目标域的数据不仅与源域中的数据含有不同的分布,往往还没有标注信息。因此,通过将学习到的知识从源域迁移到目标域,来提高算法在目标域数据上的性能。

因此,需要联合有标注的源域数据和无标注的目标域数据,来学习一个与域无关的特征,来进行最终在目标域上的预测。



多数据源领域自适应


而对于从多数据源向目标域迁移学习的情况,将更加复杂,需要考虑:1. 多种源域数据本身之间具有偏差  2. 多种源域数据间类别存在偏差。

因此我们提出了一种名为“鸡尾酒”的网络,以解决将知识从多种源域的数据向目标域的数据中迁移的问题。



“鸡尾酒”网络


鸡尾酒网络用于学习基于多源域(我们的图示仅简化地展示了j,k两个源域)下的域不变特征(domain invariant feature)。在具体数据流中,我们利用共享特征网络对所有源域以及目标域进行特征建模,然后利用多路对抗域适应技术(基于单路对抗域适应(adversarial domain adaptation)下的扩展,对抗域适应的共享特征网络对应于生成对抗学习(GAN)里面的生成器),每个源域分别与目标域进行两两组合对抗学习域不变特征。同时每个源域也分别进行监督学习,训练基于不同源类别下的多个softmax分类器。注意到,基于对抗学习的建模,我们在得到共享特征网络的同时,也可以得到多个源分别和目标域对抗的判别器。这些判别器在对于每一个目标域的数据,都可以给出该数据分别与每一个源域之间的混淆度(perplexity score)。因此,对于每一个来自目标域的数据,我们首先利用不同源下的softmax分类器给出其多个分类结果。然后,基于每一个类别,我们找到包含该类别的所有源域softmax分类概率,再基于这些源域与目标域的混淆度,对分类概率取加权平均得到每个类别的分数。简而言之就是,越跟目标域相识的源域混淆度会更高,意味着其分类结果更可信从而具有更高的加权权值。

需要注意的是,我们并没有直接作用于所有softmax分类器上反而是基于每个类别分别进行加权平均处理。这是因为在我们的假设下,每个源的类别不一定共享,从而softmax结果不能简单相加。当然,我们的方法也适用于所有源共享类别的情况,这样我们的公式会等价于直接将softmax分类结果进行加权相加。



其中,L_adv 是对抗损失,当训练判别器时用传统的GAN loss,当训练feature extractor时用confusion loss。L_cls是多源域(multiple source domains)分类损失,C为多源域softmax分类器。N是source的数目,s_j 代表第j个source,C_{s_j}代表第j个source的softmax 分类器 (用C来表示全部source的分类输出),D_{s_j}代表第j个source跟target对抗的判别器 (用D来表示全部的对抗结果),F为feature extractor。



我们分别在Office-31、ImageCLEF-DA、Digit-five数据集上进行了测评,我们的方法取得了很好的结果。





文中林老师提到的文章下载链接为: 

https://pan.baidu.com/s/1smZSNUH


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

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

入门后深度学习时代
相关数据
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

自动驾驶技术技术

从 20 世纪 80 年代首次成功演示以来(Dickmanns & Mysliwetz (1992); Dickmanns & Graefe (1988); Thorpe et al. (1988)),自动驾驶汽车领域已经取得了巨大进展。尽管有了这些进展,但在任意复杂环境中实现完全自动驾驶导航仍被认为还需要数十年的发展。原因有两个:首先,在复杂的动态环境中运行的自动驾驶系统需要人工智能归纳不可预测的情境,从而进行实时推论。第二,信息性决策需要准确的感知,目前大部分已有的计算机视觉系统有一定的错误率,这是自动驾驶导航所无法接受的。

权重技术

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

机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

感知技术

知觉或感知是外界刺激作用于感官时,脑对外界的整体的看法和理解,为我们对外界的感官信息进行组织和解释。在认知科学中,也可看作一组程序,包括获取信息、理解信息、筛选信息、组织信息。与感觉不同,知觉反映的是由对象的各样属性及关系构成的整体。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

收敛技术

在数学,计算机科学和逻辑学中,收敛指的是不同的变换序列在有限的时间内达到一个结论(变换终止),并且得出的结论是独立于达到它的路径(他们是融合的)。 通俗来说,收敛通常是指在训练期间达到的一种状态,即经过一定次数的迭代之后,训练损失和验证损失在每次迭代中的变化都非常小或根本没有变化。也就是说,如果采用当前数据进行额外的训练将无法改进模型,模型即达到收敛状态。在深度学习中,损失值有时会在最终下降之前的多次迭代中保持不变或几乎保持不变,暂时形成收敛的假象。

人脸识别技术

广义的人脸识别实际包括构建人脸识别系统的一系列相关技术,包括人脸图像采集、人脸定位、人脸识别预处理、身份确认以及身份查找等;而狭义的人脸识别特指通过人脸进行身份确认或者身份查找的技术或系统。 人脸识别是一项热门的计算机技术研究领域,它属于生物特征识别技术,是对生物体(一般特指人)本身的生物特征来区分生物体个体。

模式识别技术

模式识别(英语:Pattern recognition),就是通过计算机用数学技术方法来研究模式的自动处理和判读。 我们把环境与客体统称为“模式”。 随着计算机技术的发展,人类有可能研究复杂的信息处理过程。 信息处理过程的一个重要形式是生命体对环境及客体的识别。其概念与数据挖掘、机器学习类似。

自适应学习技术

自适应学习也称为适应性教学(Adaptive Learning),是一种以计算机作为交互式教学手段的教学方法,根据每个学习者的特别需求,以协调人力资源和调解资源的分配。计算机根据学生的学习需求(如根据学生对问题、任务和经验的反馈)调整教育材料的表达方式。自适应学习技术已经涵盖了来自各个研究领域,包括计算机科学,教育,心理学和脑科学等等。

计算机视觉技术

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

神经网络技术

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

度量学习技术

即学习一个度量空间,在该空间中的学习异常高效,这种方法多用于小样本分类。直观来看,如果我们的目标是从少量样本图像中学习,那么一个简单的方法就是对比你想进行分类的图像和已有的样本图像。但是,正如你可能想到的那样,在像素空间里进行图像对比的效果并不好。不过,你可以训练一个 Siamese 网络或在学习的度量空间里进行图像对比。与前一个方法类似,元学习通过梯度下降(或者其他神经网络优化器)来进行,而学习者对应对比机制,即在元学习度量空间里对比最近邻。这些方法用于小样本分类时效果很好,不过度量学习方法的效果尚未在回归或强化学习等其他元学习领域中验证。

卷积神经网络技术

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

映射技术

映射指的是具有某种特殊结构的函数,或泛指类函数思想的范畴论中的态射。 逻辑和图论中也有一些不太常规的用法。其数学定义为:两个非空集合A与B间存在着对应关系f,而且对于A中的每一个元素x,B中总有有唯一的一个元素y与它对应,就这种对应为从A到B的映射,记作f:A→B。其中,y称为元素x在映射f下的象,记作:y=f(x)。x称为y关于映射f的原象*。*集合A中所有元素的象的集合称为映射f的值域,记作f(A)。同样的,在机器学习中,映射就是输入与输出之间的对应关系。

监督学习技术

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

迁移学习技术

迁移学习是一种机器学习方法,就是把为任务 A 开发的模型作为初始点,重新使用在为任务 B 开发模型的过程中。迁移学习是通过从已学习的相关任务中转移知识来改进学习的新任务,虽然大多数机器学习算法都是为了解决单个任务而设计的,但是促进迁移学习的算法的开发是机器学习社区持续关注的话题。 迁移学习对人类来说很常见,例如,我们可能会发现学习识别苹果可能有助于识别梨,或者学习弹奏电子琴可能有助于学习钢琴。

过拟合技术

过拟合是指为了得到一致假设而使假设变得过度严格。避免过拟合是分类器设计中的一个核心任务。通常采用增大数据量和测试样本集的方法对分类器性能进行评价。

神经元技术

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

信号处理技术

信号处理涉及到信号的分析、合成和修改。信号被宽泛地定义为传递“关于某种现象的行为或属性的信息(如声音、图像和生物测量)”的函数。例如,信号处理技术用于提高信号传输的保真度、存储效率和主观质量,并在测量信号中强调或检测感兴趣的组件。我们熟悉的语音、图像都可以看做是一种信号形式。因此,对于语音、图像的增强、降噪、识别等等操作本质上都是信号处理。

自然语言处理技术

自然语言处理(英语:natural language processing,缩写作 NLP)是人工智能和语言学领域的分支学科。此领域探讨如何处理及运用自然语言;自然语言认知则是指让电脑“懂”人类的语言。自然语言生成系统把计算机数据转化为自然语言。自然语言理解系统把自然语言转化为计算机程序更易于处理的形式。

主动学习技术

主动学习是半监督机器学习的一个特例,其中学习算法能够交互式地查询用户(或其他信息源)以在新的数据点处获得期望的输出。 在统计学文献中,有时也称为最佳实验设计。

混乱度技术

衡量概率分布或概率模型预测样本能力的一个度量单位,其可以被用来比较概率模型的好坏,值越低表示在预测样本方面的效果越好。

强化学习技术

强化学习是一种试错方法,其目标是让软件智能体在特定环境中能够采取回报最大化的行为。强化学习在马尔可夫决策过程环境中主要使用的技术是动态规划(Dynamic Programming)。流行的强化学习方法包括自适应动态规划(ADP)、时间差分(TD)学习、状态-动作-回报-状态-动作(SARSA)算法、Q 学习、深度强化学习(DQN);其应用包括下棋类游戏、机器人控制和工作调度等。

深度神经网络技术

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

暂无评论
暂无评论~