张栋栋在演示算法。
核心阅读
即使事先知道要拍照,她的穿着还是出人意料的简单:白T恤、黑裙子,当然还少不了带隔层的双肩包来保护笔记本电脑——好像随时都能拿出来写上几行代码
她的双肩包像个“百宝箱”,里面除了装着电脑,还备着各式接口的数据传输线,几乎能连接这间小会议室里的所有设备
新产品上线前的那几次测试,总是会发现一些意想不到的漏洞,需要连夜排除,大家往往会经历几个不眠之夜
张栋栋觉得自己骨子里是个“技术流”,喜欢跟机器打交道,遇到问题也爱“用技术说话”
在北京,“西二旗”是人流量最大的地铁站之一。离此不远的中关村软件园内,互联网公司和高科技企业林立。在网上,“西二旗人”很容易被贴上标签,“码农”是最常见的说法。程序、算法、迭代、优化……有人说,程序员的生活单调到只有睡眠和工作,就像代码里的0和1。
1992年出生的张栋栋却不认同这些看法。她是曙光信息产业股份有限公司大数据及创新事业部的研究人员,也是一位工作在“西二旗”的人工智能算法工程师,主要从事超大规模视频智能分析引擎开发和算法优化工作。“90后”“女性”“程序员”,这些不同的特质会在她的身上碰撞出怎样的火花?记者日前来到位于中关村软件园的曙光信息产业股份有限公司,体验“90后”人工智能算法工程师张栋栋的一天。
边介绍边演示,桌上这台配置不错的笔记本电脑也有些跟不上她的节奏,系统时不时会有些卡顿
即使事先知道要拍照,张栋栋今天的穿着还是出人意料的简单:白T恤、黑裙子,当然还少不了带隔层的双肩包来保护笔记本电脑——好像随时都能拿出来写上几行代码。
来到偌大的办公平台时,已是上午10点,张栋栋工位周围的同事还不多。“一些人在出差,一些人在开会,一些人可能刚下班。”张栋栋说。为了不影响在工位上工作的同事,我们决定将体验地点换到一间小会议室。楼里的小会议室出奇的多,每间可以容纳五六个人,白板上留着反复擦写后的记号笔痕迹,仿佛能重现一场场热烈的讨论。
张栋栋的工作跟我们经常能见到的“电子眼”相关。这些分布于各个角落的“电子眼”一直默默地守护着人们的安全,可是它们是如何在茫茫人海中快速、准确地锁定目标的?又怎样将数量庞大、响应迟缓、内容大多没有应用价值的监控视频变为更易查找、能被深度挖掘的高密度数据?在它们的背后,离不开一整套视频智能分析系统的支持。
为了帮助我这个门外汉快速理解,张栋栋将自己上周的工作进行了一场“情景还原”。“狭义上来说,人工智能也是一种算法,要靠数据来不断优化,大量的数据往往包含很多冗余甚至无用的信息,这时就需要数据清洗与整合。”张栋栋指着屏幕说。刚见面还有些腼腆的她,讲起技术来似乎一下子放开了,“拿这组人脸图片来说,每张都有标签,标签分很多列,分别标注着所属人的编号、性别、年龄等特征信息,当然其中每个人也可能有多张图片。”
“接下来要进行的是数据的可视化操作,一是为查看图片质量,二是为获得一个统计学上的数据描述,这时候就会发现一些‘噪音’(指对数据的干扰和影响)。”张栋栋举例说,“比如一张图片里可能有多个人脸或者没有人脸,属于同一个人的不同图像却发现根本不是一个人,或者同样的图片发现存了两遍等等——系统录入时的误操作会导致这些情况的发生。要保证机器能够学习到高质量的数据,就要把这些数据存在的问题罗列出来,再根据不同的问题找到数据清洗的方法。数据清洗是一个很重要的过程,虽然耗费时间,但关系到后续模型的准确率。”
边介绍边演示,桌上这台配置不错的笔记本电脑也有些跟不上她的节奏,系统时不时会有些卡顿,一直尝试理清思路的我也是一样。为了看起来方便,张栋栋连上了墙上的电子屏幕。这时我发现,她的双肩包像个“百宝箱”,里面除了装着电脑,还备着各式接口的数据传输线,几乎能连接这间小会议室里的所有设备。
键盘起起落落,一行行的代码便落在了屏幕上,远程服务器上记录着她每一次的灵光乍现
清洗完数据,接下来还要对数据进行前期预处理,包括从图片中截取人脸、把分散的数据集中到同一个大文件中,这些工作都是在为后续的模型训练做准备。张栋栋说:“人工智能对算力有很高的要求,原始数据体量大,处理过程就会耗用很多的CPU(中央处理器)资源,处理时间也比较长。后面训练时,如果数据量太大,我们还会用到分布式并行训练的方法来提高速度。”此外,数据增强也是预处理的一部分,就是对刚才的工作反其道而行之——人为增加数据的“噪音”。
“数据清洗要去除噪音,这个时候为什么又要增加噪音呢?”我有些不解。“这是为了让模型适应多种实际场景,在人脸识别里,就是应对逆光、人像不全等极端情况,专业名词叫‘提高模型泛化能力’。”张栋栋解释说。
把这些工作做完之后,还要在原来的算法结构的基础上进行改进,俗称“改代码”。“人脸识别也有多种算法,需要选择合适的来修改。我们前期已经对各种算法进行了评估,有一个大概的算法结构,只要拿过来稍微改一下就可以使用了。”
说到这里,我们才算进入模型训练阶段,张栋栋也正式开始了她今天的工作。“训练的过程其实就是一个降低损失函数(预测值与真实值之间差距)的过程。”键盘起起落落,一行行的代码便落在了屏幕上,远程服务器上记录着她每一次的灵光乍现,也不会放过任何一个程序故障。
“在机器学习中,一般会将样本分成独立的三部分——训练集、验证集和测试集,其中测试集用来检验模型的性能如何。两方面决定了一个模型或算法的好坏,一个是结构,另一个是模型参数。训练的最终目的就是要找到合适的参数,使测试集的准确率更高。”张栋栋说,当最后测试集显示准确率已经比较高,并且已经收敛到一个平稳的状态后,训练就告结束,后续就可以对新数据进行预测和推理。
“程序员真的能记住这么多的代码吗?”看她双手如飞,我有些好奇。“其实这就跟我们背诗句、单词差不多,熟能生巧嘛。”张栋栋笑了,“有时候也做不到一字不差,但大致的逻辑和思路是能记得的。”初秋的午后,阳光照射在园区空荡的街道上,打开的窗边偶尔会传来几声鸟鸣,旋即被起伏的键盘敲击声所取代。旁边几间会议室的灯渐次点亮,人们进进出出。程序员工作的过程似乎不像传说中的那般“压力山大”。
“其实你只看到了一面”,她似乎看出了我的疑惑,“一个产品从开始阶段的数据收集到最后模型训练结束,会出现各种各样的问题。比如新产品上线前的那几次测试,总是会发现一些意想不到的漏洞,需要连夜排除。大家都很紧张,往往会经历几个不眠之夜。”
如今,张栋栋参与研制的超大规模视频智能分析引擎已在国内几个大中城市落地应用。它基于深度学习技术和人工智能算法搭建,集合了视频汇聚分发、动态人脸识别、视频结构化分析、大数据多维分析等多项特点,轻松练就了视频监控的“火眼金睛”,守护着千家万户的安全。
理想的工作和生活需要平衡,就像找到一个最优的“算法”一样
在这个男性占绝大多数的行业里,像她这样的女孩并不多。张栋栋觉得自己骨子里是个“技术流”,喜欢跟机器打交道,遇到问题也爱“用技术说话”。
2015年从北京交通大学信息管理与信息系统专业毕业后,她选择去英国留学,就读于伦敦大学学院网络科学与大数据分析专业,当时人工智能技术刚刚在全球兴起。张栋栋坦言,留学那段时间让她真正认识到,这项技术代表着未来。2016年3月,人工智能公司DeepMind联合创始人戴密斯·哈萨比斯领衔开发的“阿尔法狗”(AlphaGo)与围棋世界冠军、职业九段棋手李世石进行围棋人机大战,最终以4比1的总比分获胜。哈萨比斯也毕业于这所学校。“不敢说以这样的‘牛人’为榜样,但他的成就对我确实产生了一些影响。”虽已离开学校,她至今还保持着读论文的习惯,“人工智能技术发展太快,必须跟进最前沿的技术,读论文算是最省时省力的办法了。”
不知不觉中,天色渐晚,快到理论上的“下班时间”了,我们也逐渐从工作聊到了生活。张栋栋认为,跟软件园里很多人相比,自己算不上一个加班“狂人”。“理想的工作和生活需要平衡,就像找到一个最优的‘算法’一样,不断降低自己的‘损失函数’。”
每天接触最前沿的技术,生活中张栋栋的爱好却是历史、博物馆和古建筑。她还曾参加过一个这方面的公益组织,“我们会带着大家去参观博物馆,也会传播一些历史文化知识。”她觉得这些活动能让自己把节奏降下来,调节一下身心。
张栋栋乐于向身边的同事们请教,也期盼着自己能通过努力来改进他们的工作。“这是一个‘迭代’的过程,产品是这样,技术是这样,人也是这样。”她认为,“90后”比较独立,对很多问题都有自己的判断,不会人云亦云,这在创新方面是优势。“国内在人工智能的应用方面发展很快,但是在一些关键的、底层的理论和技术方面同国外相比还有差距,这是我们这代人应该努力的方向。”
众 说
沙超群(曙光信息产业股份有限公司高级副总裁):
还记得四五年前我的同事在台上作报告时,曾大声呼吁“一定要给‘90后’机会”,转眼间,我们很多团队中“90后”已经挑起了大梁。这几年我们公司的技术骨干中,“90后”的比例在快速提升,包括我们承担的一些国家重大项目,其中也有相当多“90后”的身影。
信息产业瞬息万变,新技术不断迭代,具体到产品层面往往时间紧、任务重、困难多、挑战大,这些反而让我在“90后”的身上看到了很多闪光点。我记得很清楚,去年“十一”长假,我们一个项目组40多人几乎是全员加班。长假中间那天是中秋节,我提前告诉他们“中秋那天不许来”,结果当天我跑到公司一看,还是来了20多人,其中大部分都是“90后”。
张栋栋参与开发的这个视频智能分析引擎,是世界上最大的在线视频分析系统之一。她来公司还不到两年,经常一出差就是几个月,“扎”在项目驻地不断地优化产品。这让我这个“70后”感到“90后”也是能打硬仗的。
随着经验、阅历的不断增长,更多的优秀“90后”正涌现出来。在我们公司承担的E级超算原型机项目、“地球数值模拟装置”原型装置等重大项目中,“90后”正承担起更多更艰巨的任务。
宋怀明(曙光信息产业股份有限公司大数据及创新事业部总工程师):
我们研发团队的平均年龄在30岁左右,“90后”已经是这个团队的主力,占比30%以上,在一线从事技术攻关的比例更高。
张栋栋这些“90后”经常要处理大量的数据,在此基础上不断地去训练算法、优化模型,有的时候只为提升那么一点精度和性能,就要做大量数据的计算。但也就是这一点精度,在实际应用时会带来非常明显的效果,让我感觉“90后”在精益求精方面是不输于“80后”的。“90后”科技人员的成长背景决定了他们能够接触到大量的信息,思维转换能力很强,会从不同的角度去看问题,也会尝试一些不同的方法来解决问题,这可能是“90后”科技人员的特质,也是创新的优势。我想,今后“90后”在处理具体问题的时候,如果能再多一点坚持,多一些耐心,一定会取得更好的成果。