当前位置: 首页 > 科技赋能

初创公司研究之美

时间:2024-05-20 00:58:22 科技赋能

作者为Face++撰写的这篇文章旷视科技首席科学家、孙剑和博士这一年,就我个人而言,我做出的最重要的决定就是加入我一直工作的微软研究院(Microsoft Research)十三年。

在MSR(以下简称MSR))和一家几年前才成立的创业公司——Face++旷视科技(以下简称Face++)之间,我选择了后者,并以首席科学家的身份加入。

当时我还住在西雅图,确实“在我搬家之前,消息就已经很远了”。

国内外的朋友圈里传来各种各样的报道,让我认识到了媒体的力量。

如今,我已经搬回北京,在Face++工作了近半年了。

我仍然经常被问到:“你怎么样?”、“Face++和MSR的研究部门是一样的吗?”、“Face++如何开展研究工作?” “...“ 等待。

问题有大有小,但大多数都是这样的。

值此新年之际,我想与大家分享一下我这六个月来的观察和想法,以感谢大家的关心。

接下来我会围绕大家关心的一些典型问题一一讲解:Face++和MSR的研发部门有哪些异同?从我的观察和经验来看,两家公司的研发部门性质几乎没有区别。

公司研发部门的本质是什么?我认为有三个要素极其关键:使命定位、人员构成、研发方式。

坦白讲,从这三点来看,我看到双方惊人的一致性,也就是说:1)双方基于产品、探索前沿技术的使命定位是一致的; 2)他们都聚集了一群追求完美、具有极客精神、高度上进心的精英; 3)他们都用同样的套路来推进研究工作:确定问题——>实施、研究和理解现有方法——>进行持续改进或创新。

其中,最让人感动的就是“人”。

举个最近让我感动的例子:下面这张我在年末的朋友圈发的图,最能说明Face++“追求、极致、简单、可靠”核心价值观的前两点。

当然,即使双方研究部门性质相同,也难免存在差异。

毕竟,每个公司都有自己特定的文化和管理模式。

当身边的战友平均年龄从三十多岁降到十岁的那一天突然到来时,一方面我感觉自己好像瞬间跨入了中老年人的行列(开个玩笑:今天有同事问我,你的手机字体为什么这么大?)另一方面,我感到干劲十足,责任感很重。

Face++的研究部门在做什么?这个问题被问过很多次,也是最常被提及的。

为什么会有这样的疑问呢?我想无非就是两个方面的思考。

一是了解公司具体在研究哪些领域,长期的课题和目标是什么,二是了解创业公司的研发部门是否能够真正意义上推动研究工作,还是应该做的打着研究的旗号进行产品开发。

这里还有一个误区,就是我们公司被广泛称为Face++之后,越来越多的人误以为Face++只是做人脸技术。

人脸确实是一个商业前景广阔、玩法不断创新的应用。

然而,从成立的第一天起,Face++就专注于人工智能三大应用领域之一——计算机视觉。

围绕一系列视觉识别(人脸、人、物体、文本、场景、行为等)问题,研发核心算法,打造可实现的产品。

消除这个误区后,你就会更好地理解Face++为何以“AI赋能人类”为使命,用“人工智能技术造福大众”来立志。

毕竟,该公司的全名是旷视科技(英文名megvii,取自megavision),意思是大愿景。

回到问题本身,我们目前关注的是视觉理解的四个核心问题(见下图):图像分类、物体检测、语义分割和序列学习。

研究的技术路线是深入深度学习:1)利用深度神经网络; 2)尽可能使用端到端学习。

Face++应该说是这波人工智能初创公司中最先研究和应用深度学习的。

图像分类是最基本的问题。

这个问题本身就有广泛的应用(比如人脸识别、场景分类),也是研究其他问题的基础。

深度学习的出现让我们从以前的特征设计转向网络结构设计,这其中包括很多对问题的深入理解、实践中总结的经验和原理、优化算法的探索以及下一步的判断的技术发展。

我们的研发部门有一个专门的团队负责研究如何训练最好的基础神经网络,并深入研究以下三个子问题:1)针对不同的计算复杂度设计最优的神经网络; 2)针对不同的计算目标,根据平台的实际需求,设计最高效的网络; 3)针对不同的问题设计最合适的网络。

此外,神经网络模型的压缩和低位表示也是我们研究的重点之一。

对象识别是感知图像中对象的位置和内容的问题。

典型应用包括手机上的人脸检测、自动驾驶车辆中的车辆/行人/交通标志检测以及视频分析中的各种对象检测。

该问题是图像理解中研究内容最丰富的核心问题,也是一个非常复杂的感知智能问题。

我们关心的几个子问题是:1)如何有效解决遮挡问题。

这个问题对于人们来说似乎很容易,但实际上它涉及到人脑自动联想和补充不可见部分的能力,这已经部分属于人类认知智能的范畴; 2)如何有效地利用图像或视频的上下文信息或我们的常识。

上下文和常识对于帮助我们避免明显错误和检测小物体非常重要。

目前的物体在检测小物体方面的表现还很不理想,与人眼的能力差距还是很大的。

如果我们单独从图像中裁剪掉小物体,人类将很难识别它们。

但当这些小物体被放回到整体图像中时,人们就会做得非常出色。

我个人认为,对这两个子问题的深入研究确实可以为认知智能的理解提供有意义的指导甚至突破。

语义分割就是对每个像素进行分类,是更精细化的分类任务。

例如,将识别的人体划分为特定部位,将人脸划分为五官,将场景划分为蓝天、建筑物、道路、物体等。

目前在这个问题上占主导地位的方法是全卷积网络(FCN)由伯克利分校于2016年提出。

该方法使神经网络具有强大的结构化输出能力,从而有效地将深度学习推进到许多中期和早期的视觉理解问题(例如立体匹配和光流计算)。

我的博士论文是关于研究早期视觉中的立体匹配问题。

十几年后,方法发生了根本性的变化,这在当时是难以想象的。

我们研发部门的一位实习生在最近提交的 CVPR 中设计了一个简单有效的 FCN 模型,在公共评估集上取得了非常好的成绩。

(顺便插个广告,Face++正在全国范围内招收实习生,兼职或全职,欢迎来我们公司深入理解并有效解决很多有趣又困难的视觉理解问题。

) 序列学习是最重要的有趣的问题。

,它有多种形式,可以输入序列(视频或音频)进行分类,也可以输出图像的描述性文本序列,或者输入和输出都是序列(比如识别图像中的多行文本) )。

Face++产品中应用了解决这三类问题的算法。

目前解决这一问题的主流方法是循环神经网络(RNN),它也是语音识别和自然语言处理中的一大杀手锏。

由于人类智能的本质是实时“处理”连续感知的信号流,因此序列学习成为当下最热门的研究方向之一。

尤其是最近引入的具有外部存储器读写机制和执行单元的RNN,让我看到了解决人工智能中许多难题的一线希望。

Face++研究人员也在这方面积极思考和实践。

我们如何在Face++旷视科技进行研究?推动研究部工作的核心是培养人的做事能力,提供最好的研发环境。

应该培养什么样的人才??人才是研发的生命线。

创造良好的环境吸引人才、培养人才、留住人才是我们的首要任务。

信息学竞赛(NOI/IOI)和大学编程竞赛(ACM/ICPC)的参赛者组成了研究部的第一批参赛者。

我们后来的勇士更多来自世界各地,背景也截然不同:有的以前做过视觉,有的以前做过机器学习,有的研究过基础问题,有的专注于具体的应用。

多元化的环境也让我们能够更全面地看待问题。

有了这个基因,我们一般培养两个方向的人才:研究科学家和全栈人工智能工程师。

研究科学家主要关注算法并寻求问题的本质解决方案。

我们的培养目标是成为该领域能独当一面的专家;全栈人工智能工程师是我们内部的称呼,目的是培养能上九天、登月的人(算法设计与训练),以及能满世界寻龟的全能战士(工程)算法、研究问题和方法的系统化)。

他们可以进行研究、理解系统,并且可以构建系统和轮子。

针对当前人工智能发展趋势,我们需要大量全能型人才将人工智能“+”到不同行业,解决实际问题。

这对人才提出了更高的要求。

我们相信,即使没有人工智能背景的工程师在这里工作1-2年也能成为独立的人才。

如何做事?.和一群志同道合的朋友一起,围绕上面介绍的视觉理解的四个核心问题进行研究,并将研究成果应用到具体的视觉识别场景中。

Face++的研发团队扁平化。

每个研究团队由2-4人组成,专注于一个课题。

话题可以是短期的,比如改进已经应用的某个产品线的算法;话题也可以是长期的,比如不断提高识别的准确性和性能。

我们每个研究人员都可以在不同的课题之间自由切换,这样可以最大限度地发挥个人的优势和积极性。

也让大家有机会在短时间内了解更多的问题,拥有更丰富的经验,学得更快。

生长。

套用现在深度学习的本质,大家的学习也需要大数据的输入。

研发环境?.进行深度学习研究需要非常高效的训练引擎/平台和丰富的计算资源。

Face++内部使用近两年的“MegBrain”是完全自主研发的训练引擎。

它在设计上与目前流行的TensorFlow(Google一年前发布)类似,是基于Com首席科学家g Graph的新一代训练引擎。

为什么我们要开发自己的系统?公司对深度学习的研究起步很早,当时还没有好用的系统。

MegBrain可以最大限度地提高工作效率,同时满足灵活性和简单性。

目前,在AI初创公司中,Face++可能是唯一一家完全采用自研深度学习训练引擎的公司。

除了核心引擎之外,我们的架构团队还构建了强大的深度学习平台Brain++来管理我们庞大的GPU集群,完成从数据标注和管理、模型训练、GPU集群集中管理到产品发布的一切工作。

“一站式”自动化流程,让我们的研发人员将宝贵的精力集中在问题上。

这也让来Face++的实习生上手变得非常容易。

即使他们对深度学习系统零基础,在读完一套简单的教程后,2-3周就可以开始思考问题。

这些系统的建立,得益于我们团队内部众多的“全栈人工智能工程师”。

他们不仅是深度学习方面的专家,也是系统和分布式计算方面的专家。

最后,深度学习很大程度上受益于大规模训练数据。

我们还有专门的团队负责开发标注工具并完成大规模数据标注任务。

我学习时开玩笑说“没有不好的算法,只有不好的数据”。

数据为王。

你最近怎么样?关于Face++,我分享几个数字:我们人工智能云开放平台的API已经服务了近7万名开发者,被调用了62亿次;身份认证平台目前已服务1.2亿人次(注意不是1.2亿次),提供刷脸服务,覆盖金融市场85%的智能应用;智能安防和智能商业产品也覆盖25个省份。

服务客户、追求卓越不断推动我们前进。