姓名:毛宏亮
身份:AI深度学习算法工程师
技能:用代码链接现实与AI世界
2017年9月,我结束了21年的学校生涯,步入一家IT技术企业,成为人工智能领域里的深度学习算法工程师。
在这一天到来之前,我根本不知道“深度学习”是什么,也不了解AI算法工程师的工作内容,但我一直希望成为一个学者,活跃在学术前沿。人工智能领域新知识不断涌现的特点恰恰符合我想追求新知识新技术的志向,一段“无知者无畏”的深度学习之旅就此拉开了帷幕。
学习不简单
成为深度学习算法工程师的第一天起,我一而再再而三地向别人致歉“不好意思,我不懂深度学习,真的不懂”。虽然经历了多年电子、计算机方面的专业学习,但对于深度学习或者说人工智能这一全新的领域,我的了解少得可怜。
人工智能集合多个领域的知识:神经网络的设计源头是生物学,网络内的运算规则需要你明白微积分等基本数学知识;深度学习模型的考究,有传承来自物理学的统计模型。
“神经网络”“卷积”“池化”“长短时记忆”最初遇到这些专业词汇时,我也曾一脸迷糊,只能在和同事讨论时拿出手机偷偷查询。于是,每天在论文和国外报告中补充新知识和新技术成为了我这个“深度学习小白”的日常。“神经网络”是模拟生物学的神经元激励充放电过程,“池化”是选择一组数字该怎么保留删除……虽是填鸭式学习,却让我在短时间内快速了解了一个新的知识领域。慢慢地,这些深奥的词语变成了我日常挂在嘴边的工作常用词。
2017年底,检验我学习成果的机会来了——我需要在自己的部门做一个深度学习的技术分享。一边是精心制作的PPT,一边是我在白板上的龙飞凤舞,分享开始前,我设想的是,由浅入深,同时又能點到即止。可惜设想只能是设想,现实总归是现实——虽然对人工智能的了解已经比之前增进不少,但这些新概念和算法在解释时却显得依旧复杂。
当时我挺沮丧,甚至有些茫然。不过,现在回过头来看这段过程,帮助却是不少,至少让我从一个连基础词汇都不认识的“小白”成长为一个能系统性地描述深度学习还引申出了自己理解的合格工程师。
拒绝1%的差错率
人脸识别这个技术大家应该不陌生,去银行办理业务、过关入境都会涉及。公司的产品经理正是感受到了时代和市场的脉搏,向我提议趁早开发人脸识别即可自动支付的程序,并以公司食堂为试点。
“问题是人脸不是唯一ID,它不像银行账户、员工编号能完全一对一对应。如果计算机有99%的准确率,这就意味着每识别100个人会有1个人被识别错,如果1000个人每天三顿饭那就表示平均每天有30个人被识别错。食堂一天要处理30起支付事故,新技术没怎么解决问题就先制造一堆麻烦!”我认为产品经理的想法过于理想化。
算法不是想当然的事,尤其是深度学习,必须考虑到当下技术还不够成熟的情况,避免搬起石头砸自己的脚。我是我们团队的算法负责人,对自己的工作负有使命感,如果工作不完善或者不合逻辑,我就应该指出来,拒绝可能发生的1%差错。
“难道用户都提出需求了,我们还不做吗?还赚不赚钱啦。”“劳模”产品经理抱怨道,还用无奈又几近乞怜的目光投向我。
“好吧,至少应该明确一下我们算法的局限性和食堂具体应用场景的人脸数量。如果要进一步提升计算机的精度,我们得附加别的条件。”我站在白板前,向产品经理不断强调。
最终,我和团队同事们商量出对策:在人脸识别的基础上附加两个条件:一是在先期注册时通过短信二次验证做好人脸和数据的一比一复核;二是设置刷脸支付出错后的反馈机制,确保支付万无一失。
人工智能给工程师开了一道解决问题的敞亮大门,但它自身却没法告诉我们进门后的路该怎么走。所以,当深度学习算法工程师面临一个问题的时候,首先要做的不是想怎么解决,而是去思考这个问题本身是不是逻辑完备,思路清晰。算法工程师提供的是核心技术的支撑,如果核心都是不可靠的,那么整个工程就离崩溃不远了。
人工智能,Always New
“你觉得注意力机制(Attention Mechanism)对人脸识别有用吗?”我向负责人脸识别算法的同事询问道。
“应该没什么用吧,毕竟卷积神经网络已经把人脸的局部信息有选择性地筛选了,注意力机制想做的也是类似的事”,他摇了摇头,摊开双手,一脸无奈的表情。
“的确是这样,我再想想。”我回到电脑前。实验表明注意力机制并不能明显提高人脸识别的准确率,但这个机制的算法却比卷积神经网络简单,如果……我兴奋地走到算法同事的身边,使劲拍了一下他的背,“你觉得如果二选一,会怎么样?”
“二选一,什么意思?”他一脸懵懂无知。
“注意力机制的确和卷积操作的功能存在重叠,如果我们尝试抛弃其中一种,你觉得OK不?”我向他晃了晃手指,然后告诉他我将神经网络里面大量的卷积运算替换成了注意力机制,减少了算法复杂度,降低了计算的冗余度,同时人脸识别的精准度并没有下降太多。
“这个的确很有意思,但可惜人家Google团队早讲过这个故事了。”接着他向我展示了Google研究院最近发表的一篇论文——《Attention is All you Need》。
我简单浏览了文章摘要,发现我所谓的“独创思路”早已经有了类似的表述,而且使用的替换方法比我想得更简单方便。我默默叹气:嗨,谁叫人家水平比我高呢!
不过,我的这一番思考也不是完全没有用处,在我们公司,使用这一算法进行人脸识别功能操作却还没有进行过。我赶紧查找到这篇文章,找到附在文章中的程序代码,用新代码对我们的算法进行了合适的改写,替换了原有的卷积操作。算法复杂度下降,程序计算时间缩短了,但精准度却没有什么改变……虽然在深度学习领域,这段算法将很快被新的算法再次替代,但在当下也算是一次成功的创新成果。
在人工智能的“比赛”中,概念和算法的快速更替,技术的日新月异总是让人猝不及防。很多时候,并不是缺乏想法和好的思考角度,而是自己能想到的想法已经早已被别人想到,甚至更加全面周到。在日新月异的AI领域,唯一能做的就是学好基础,不断实践,然后和它一起成长。
有人说:“人工智能领域是一个高风险的职业,你随时有可能被后浪覆盖。”这句话听上去似乎有些悲观,不过恰恰这也是人工智能最激动人心的地方,因为这也表明了也许只要你敢想、敢创新、敢行动,就有机会在时代浪潮中做一些改变自己,改变他人,甚至改变世界的事。
对话专业
智能相关专业
Alpha GO、无人驾驶、智能零售……人工智能的应用和普及越来越广,各领域对人工智能人才的需求也越来越旺。中国科学院大学、南开大学、天津大学等高校陆续开设了人工智能学院和相关专业。对新科学、新技术、新领域感兴趣的你,快跟上老师们的步伐,看看要成为未来的人工智能专家,你现在得做哪些准备!
老师说
Q1:哪些专业与人工智能领域的关系度最密切?
方勇纯:北京大学、南开大学等高校在10多年前就已开设了智能类本科专业——“智能科学与技术”。经过这些年的发展,开设这一专业的高校不断增多,目前已达到60所左右。其实,人工智能是一个多学科交叉的综合性学科,它和信息类很多专业,例如信息自动化、计算机类、电子类、通信类等专业都息息相关,这些专业侧重于智能技术的不同方面,感兴趣的考生可以根据自己的实际情况选择报考最适合自己的专业。
Q2:以上专业学生毕业后可以从事哪些和人工智能领域相关的职业?
方勇纯:智能相关专业的学生就业口径非常宽,毕业生可以去信息类大型企业,也可以去国家各部委从事与智能技术相关的管理与服务工作,还可以到各科研院所从事智能方面的人才培养与科学研究工作。
學长学姐说
Q1:我可以通过哪些渠道了解人工智能领域的各类最新信息资讯?
毛宏亮:推荐阅读教材《人工智能基础》,这是一本面向高中生的人工智能教材,讲授了人工智能的发展历史、基本概念和应用。如果想了解人工智能的历史和信息,可以阅读尼克写的《人工智能简史》,或通过雷锋网、36氪等网站了解人工智能最新资讯。如果有同学对算法有一定研究,可以打开http://www.tensorfly.cn(TensorFlow中文社区)这个网址,开始深度学习的第一步,实现自己的第一个神经网络模型。
Q2:如果我未来想在人工智能领域发展,我在高中阶段首先要做哪些准备呢?
毛宏亮:首先要把英语学好。人工智能领域的知识更新很快,这领域的职场人士常常需要阅读论文,尤其是英文论文,并关注目前技术领先的国内外人工智能实验室在做些什么,所以熟练掌握英语就显得尤为重要。(采写:王秀英)