首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

数据驱动设计:从学习特征到学习算法

编者按:人工智能许多问题的本质是搜索一个函数的最优解,那么如何确定一个最佳的搜索策略就成为了研究者们想要解决的问题。本文中,微软亚洲研究院视觉计算组研究员辛博和David Wipf向我们介绍了如何通过学习的方法找到最优搜索策略:将数据驱动的特征衍生到数据驱动的算法设计,让算法学会优化或学会如何学习。这一概念对机器学习领域不仅有很重要的理论价值,还产生了很多实际作用。这项工作入选了NIPS 2017口头报告(Oral)。想了解更多吗?一起来看看吧!

寻找一个函数的最优解,是许多人工智能问题的本质。寻找函数最大值的问题可以被类比为搜索3D拓扑地图上的最高点,比如地球表面的最高点。假设我们事先并不知道珠穆朗玛峰是最高点,那么为了寻找这样的最高点,我们最常用的算法/策略是“爬山算法”——从某个随机的初始位置开始,在局部表面曲率的基础上尽可能地向高的地方迈出一步,然后再从这个新的位置,反复重复相同的过程,直到我们最终达到山顶。

这个策略对起始点的位置非常敏感,如果一开始把起始点放在南美洲,我们找到的最高点可能会是安第斯山脉的一些高峰,而不是最高的珠穆朗玛峰。为了得到更好的搜索策略,计算机科学家已经开发出了许多更加精细的爬山策略,试图通过合理的假设避免不好的局部最优性。但即使这些优化方法在较复杂的地表环境中也常常会失败。

我们目前的工作就是在研究一类像地球表面一样具有诸多局部高点的最优化的问题。按照机器学习领域的习惯,通常我们将优化问题反过来看作是求解最小值的过程,相应的爬山步骤也就成了数学语言中的根据梯度的下降过程。不同于传统思路对于爬山(或下降)和相关假设进行明确的人为手工设计的做法,我们试图通过学习的方式找到一个最优的搜索策略。

在过去的几十年里,计算机视觉领域已经从SIFT、HOG等手工特征(hand-crafted feature)转移到利用大数据学习得到的神经网络特征。这期间,这些经典的手工特征对主流神经网络结构的设计产生了重要的影响。基于这些结构的深度神经网络在训练之后形成了非常有效的特征表示,在诸多标准数据集上的表现远远超过了传统手工特征,并且在实践中被广泛使用。

我们的研究把数据驱动的特征表示延伸到数据驱动的算法设计。简而言之,数值优化中许多常见的迭代算法(iterative algorithms)可以被看作是“手工设计“产生的,例如梯度下降、动量、ADMM、近端方法(proximal methods)等等。通常这些算法的迭代过程可以被分解成某种类型的线性滤波后接非线性运算。这样一来,当我们把多次迭代展开后,每一次迭代都可以被看作是多层网络的一层,它们共同完成一个典型深度神经网络的向前传播过程。

基于这些理解,一个有趣的可能性是:我们可以不依赖于原始算法模板(其中线性滤波器和非线性运算部分都是基于算法手工定义的),而是直接从数据中学习如何设计这些线性和非线性分量,即让算法学会优化(learning to optimize)或学会如何学习(learning to learn)。

学会如何学习这样一个概念显然是非常重要的。基于这种理解的桥接对目前的机器学习领域也有很多实际作用。

首先,学习得到的算法(即多层网络)可以比传统算法模板快很多。传统算法通常要数千次迭代才能收敛,而利用学习的方式设计的算法可以通过控制被学习的网络深度有效限制迭代次数。另外,在实际执行的时候,我们也可以利用深度学习领域开发的高效的软硬件基础设施进一步加速。

我们将研究成果应用于光学立体(photometric stereo)和声呐信号方向估计(direction of arrival estimation)等实际问题中。如下图所示,我们的方法在两个任务中都得到了更好的性能,而且与传统方法相比,我们的解决方案在执行速度上也远远超过了基于传统迭代算法的方案,从而可以很好地支持嵌入到移动设备上实时使用。

其次,类比于数据驱动的特征表示,研究数据驱动的算法设计同样是一个双赢的过程。一方面,经典的手工设计可以解释和激发新的神经网络结构(如下图所示的SBL-LSTM网络结构);另一方面,通过学习得到的算法可以更有效地求解问题。

比如,我们研究了稀疏编码这样一个“NP困难”的优化问题,我们的方法在更广泛的意义上取得了比传统迭代算法明显领先的结果,下图展示一个代表性的对比实验结果。

数据驱动的算法设计或者学习如何学习问题的另一个重要方面是其理论价值。传统迭代算法与流行的深度神经网络之间的联系引发了许多有趣的理论问题,可以帮助我们更好地理解和改进这两个领域。我们的工作初步涉及了这方面的探索和讨论,比如在很多经典优化的问题中,我们可以证明通过学习得到的算法比传统的算法拥有更好的最优解属性,下面的定理抽象出这样的一个概念,具体的分析和证明欢迎大家查阅我们的文章(点击“阅读原文”查看)。

这项最新的工作类比数据驱动的特征表示,从理论、实践等多方面推进了数据驱动的算法设计问题的研究。文章中许多具体的应用和分析结果往往不如对基本概念的发掘和认识更加重要。回到文章之初爬山的例子,这意味着,当我们有足够多具有真实标注的高峰信息的时候,我们可以通过数据驱动的方式学习出更优的爬山策略。人工智能许多问题的本质,就是在其解空间进行这样搜索和攀爬的过程。从学习特征到学习算法,数据驱动设计的概念已经被证明其价值。在这个方向,我们将继续努力,共同推动数据驱动下的机器学习研究更好的发展。

相关论文

[1] Maximal Sparsity with Deep Networks? NIPS 2016https://papers.nips.cc/paper/6346-maximal-sparsity-with-deep-networks.pdf

[2] From Bayesian Sparsity to Gated Recurrent Nets. NIPS 2017 Oral

https://papers.nips.cc/paper/7139-from-bayesian-sparsity-to-gated-recurrent-nets.pdf

作者介绍

辛博博士,微软亚洲研究院视觉计算组研究员。主要研究兴趣为最优化理论(含凸优化、非凸优化、子模优化、贝叶斯优化等)以及在机器学习和计算机视觉领域的应用。他的研究成果均发表在人工智能和机器学习领域的顶级会议和期刊上,包括NIPS、ICML、CVPR、AAAI、UAI、SPARS、TSP、TIST等,其中多篇工作受邀口头(Oral)报告。他于2016年从北京大学获得计算机应用技术博士学位,博士阶段荣获谷歌博士奖学金,百度奖学金等重要奖励,并于2017年荣获CCF优秀博士论文奖。

Dr. David Wipf是微软亚洲研究院视觉计算组主管研究员。他于加州大学圣地亚哥分校获得博士学位。他主要研究兴趣为贝叶斯学习、深度学习、非凸优化和计算机视觉。他获得了包括2012年信号处理领域最佳论文奖,2008年Biomag Young Investigator奖和NIPS 2006最佳学生论文奖在内的多项荣誉和奖励。他目前担任机器学习顶级期刊IJML的Action Editor并先后多次担任NIPS、ICCV、ICML等顶级学术会议的领域主席。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180227A1AYPS00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券