不久前,B 站上独立游戏开发者大谷上传的一则“修复100年前老北京影像”视频带火了一项技术——AI 修复。通过 AI 技术手段,100年前的老旧黑白影像变得更加清晰,还原了彩色世界,让人一瞬间有了穿越的感觉。
来源:哔哩哔哩 Up 主大谷的游戏创作小屋
来源:哔哩哔哩 Up 主大谷的游戏创作小屋
令人感到意外的是,这些作品的作者大谷竟然并非科班出身,之前并没有系统学习 AI 的经历,只是出于兴趣,尝试做一些好玩的事情,没想到玩出了名堂。在他看来,正是因为现在 AI 技术和工具的成熟,才让他这样的“小白”可以轻松上手,自学就可以做出好玩的 AI 应用。
作为微软秋季技术课堂的特别专辑,《刷新 CTO》第七期邀请到微软亚洲研究院副院长、中国计算机学会副理事长,自然语言处理全球领军人物周明,CSDN 创始人&董事长、极客帮创投创始合伙人蒋涛,微软(中国)CTO 韦青,独立游戏开发者、独立艺术家大谷,在对话中将2020年最新的 AI 技术,通过小班“私教课”带给现场开发者。
会上,大谷又带来了新的炫酷作品,用 AI 修复二战被炸毁城市德累斯顿。
关于 AI 技术的新玩法,与会嘉宾都有哪些独到的见解?我们来系统地回顾一下。
Q:如果你有修复能力,最想修复什么?
周明:首先,感谢大谷这个《修复老北京》,真的非常令人震撼,把100年前的情况栩栩如生地展示在人面前,我有点触动。有一年我去敦煌,看到敦煌有一些壁画斑驳了,看不清楚,但依稀能看出点影子来,还有人告诉我个故事,敦煌的壁画是有朝代的,比如前一朝壁画剥离了,后面铺一层涂料再用一层新的涂料,有时候画家就一层层剥离,然后学习绘画的技法。我们都没看过前几朝的壁画,能不能用大谷的技术把前面的壁画一层层全部修复好,让我去看一看,这是我的梦想。
蒋涛:复活旧影片,我们经常看古书、看历史资料,想着能复现一下就很好。一个日本人在唐朝到中国求访时写了很详细的日记,到五台山怎么走,经过哪个寺,它的描述中五台山当时大概有一两百座寺庙,如果能把这些书上写的东西,不是一定有视频的,通过虚拟现实再建设一下,加上 AI 那就更好了,我们把武侠小说再建设一下,结合实景+虚拟现实。
韦青:因为我的工作性质造成我特别强调落地、有用。我发现西方很多体育运动数字化了,把人的动作建模之后能够非常精准地描述动作,我自己练过一段中华功夫,就想能不能把清朝末期的图像和视频复原,再通过计算机建模,把骨骼和肌肉的最佳发力关系数字化,指导当今的功夫爱好者练出真功夫。
Q:你严格意义上不是学技术的,为什么要修复老北京视频或《被炸毁的德国城市》?背后是否有不为人知的故事?
大谷:我想从个人角度解释下我对于人工智能朴素的理解,现在是想象力经济时代马上要来临的时代,人工智能要做的是实现我们脑海里想象的、有意思的东西。
我是一个游戏开发者和作曲人,最开始了解 AI 的切入点是想看看 AI 是否能帮助我节省游戏开发的时间,帮我作曲、做美术,但是经过了解后我发现,AI 不仅可以做这些,还可以做更多社会公益性、创造类的事情,所以我在自己的 B 站平台介绍了很多不同的人工智能技术,之前介绍过影片修复,是因为之前海外有很多朋友做西洋的黑白影片修复,我当时在海外有点思乡的感觉,我在北京长大,就想找一些老北京的影像,看看能不能还原当年的那个感受,这是我最初做这个视频的初衷。
黑白影片节奏很快,因为不是正常的时间流速,有很多丢帧掉帧的现象,漏掉很多细节。通过三个人工智能步骤,就是补帧、扩增分辨率和上色之后,把影片拉到正常的时间流速进行修复,就会看到很多小的很有趣的细节,使影片更加生动,就有一种 Vlog 生活记录的感觉,一下子把原来很陌生的历史资料距离拉近了,这是非常好的艺术人文应用,我自己的艺术理念想把它做成“五分钟的彼岸”的概念,让大家从繁纷复杂的现代社会中抽出5分钟来看看这些古人的生活,以古鉴今,说不定会有启发,这是一个艺术立意,有一点人文关怀的感觉。
CSDN 创始人&董事长、极客帮创投创始合伙人蒋涛
Q:微软亚洲研究院在用 AI 做哪些研究?
周明:1998年11月5日,比尔盖茨在北京设立了我们的前身——微软中国研究院,一年半后改名为“微软亚洲研究院”。它是微软在海外最大的一个研究部门,从事着从基础理论研究,到声音、图像识别与理解等应用,支持 Office、Azure、Windows 等重要产品,并与合作伙伴做落地项目。
在深度学习上,我们的研究包括自然语言理解,比如与中国传统文化相关的自动对联技术;在图像方面,看图+注释,看视频+注释,看图/视频写诗等应用微软亚洲研究院都有做过。
Q:现在 AI 的主流或火热的应用和发展领域/方向有哪些?
蒋涛:最近剑桥发布了一份2020年 AI 报告,结合这份报告和我的观察理解,我认为主要有两点:技术上现在没有大规模的突破,更多地是工程化的迭代改进,比如 Pytorch 用的比 Tensorflow 更多了,现在消耗算力的参数达到千亿数量了,号称1000个参数要消耗1美金,所以现在搞 GPT-3 要消耗好几百万美金,1000多亿的参数,大家进入军备竞赛阶段。
趋势上来讲,第一个是技术要逐渐平民化,现在训练成本太高,动辄几百万美金,因此机器学习自动化技术研究和推进比较快;第二个是行业化落地,第一波 AI 公司已经取得了成果,但是更多行业现在面临 AI 到底怎么落地的问题。
这次疫情的到来让全行业经历了一次全员数字化的洗礼,强制业务升级。我们认为2020年是 AI 应用元年,2010年是 AI 应用的开端,真正应用爆发是在2012年,再次爆发发生在2015年。我认为,现在正处在 AI 应用落地行业化应用启动年,这是我观察到的趋势。
Q:全民数字化洗礼以后,企业在做什么?您看到哪些 AI 有趣的应用和挑战机会或趋势?
韦青:现在最大的重点是落地。AI 能做什么?我们可以反过来看,用排除法,AI 不能做什么。我认为真正伟大的时代还没有来临,或者刚刚起步,第一轮出名的公司是第一波,但是真正伟大落地的应用场景正在来临。我们的逻辑是 AI 不能做什么,现在越来越多人明白了 AI 不能做什么,一是没有数据做不了,二是就算有了数据,没有洞察力也做不了的事。我们扪心自问,只要人做的行业基本都能产生数据,也能够有模式。但是为什么很多公司很多企业很难落地?因为第一步还没有做,就开始有第二步、第三步了,就说要做算法、做人工智能。
我认为现在一个很大的挑战,对每个人和公司,包括对微软都一样,是经过疫情的洗礼后明白的,AI 是未来一定要做的,不做就会消亡。其次是要沉下心来思考解决问题,第一是数据问题,第二是模式,就是能不能把流程或者做事方法解释成模式,或者用算法分析成模式,这两个一过关,场景落地绝对不仅是识别图像或语音,而是遍地开花。所有能力应该是内嵌到所有过程中,比如办公、制造过程、销售、管理等。因为每个过程都需要交互,都需要根据数据进行判断,根据判断之后再行动,所以 AI 到处都是。正因为这样,伟大的时代还没有来临。像滴滴、今日头条这样新一代的公司正在产生。
Q:从研究角度拨云见日,您认为 AI 正在经历哪些发展?哪些研究领域非常火热?您正在做哪些工作?
周明:这个问题可以从人工智能方法理论有哪些机会,以及应用上有哪些机会或热点两方面展开。
在方法理论上,第一方面是由感知智能到认知智能的快速过渡,感知智能研究进展非常快,以 ImageNet 为代表推动着领域发展,像国内图像“四小龙”做得已经非常好了,而且广泛应用到安防、支付、铁路、飞机、checkin 等各个环节。但是自然语言理解属于认知智能,过去做得不太好,但是现在有了深度学习、大数据的加持,自然语言理解也得到了很好的发展,过去5年深度学习驱动自然语言技术从一个模糊有歧义的状态,进入到一个相对精准的状态。另外,知识图谱,利用知识推理找到答案并给出解释,这些也是从感知智能到认知智能的飞跃。同时,以自然语言为代表的认知智能,语言理解知识和推理,也将产生很多技术反哺感知智能。
第二,从模态形态上来看,现在的趋势是多模态建模,声音、图像、文字、语音、文本、视频等用一个方式、多通道、多信号统一建模,进行分析、理解、生成、对话、问答,多模态的趋势对将来比如人机对话、机器人、物联网都会产生重要影响。
从应用来讲,我觉得无人驾驶、无人机、更新一代的智能客服、精准的搜索引擎和推荐系统,以及垂直领域,如医疗、教育、安防会进一步发展。
这背后的技术趋势是无监督学习,只要有数据,不需要标注就可以做大规模的预训练模型,训练之后所有的下游任务都受益,用迁移学习的技术把大数据的任务或语言得到的模型迁移到小数据的任务或语言上。由于算法上的进步,包括知识图谱和数据的结合,数据和知识融合的推理机制,做决策之后的解释机制,我们可以期待专家系统,比如医疗诊断系统将进入新的阶段。
Q:CSDN 组织“百万人学 AI”的项目进展如何?
蒋涛:分享一个我们今年做的调查报告,我们对3000多万注册和活跃会员进行的行为调查,根据每天2000多万的数据提炼与人工智能相关的框架、关键词进行分析后发现,经过媒体2016年开始孜孜不倦的宣传 AI 热潮,近6个月在看 AI 技术文章的有689万人,也就是说20%的用户已经在了解 AI 技术,约6%的人准备从事 AI 相关工作,这个数量其实已经算不低了,因为绝对数已经有180多万了。
针对现状的调查也显示,现在 AI 工具越来越丰富,包括大厂的开源 API 越来越多。但 AI 技术现在还是“贵族”技术,一是训练模型贵,二是人很贵,A 类公司垄断了算法 AI 博士。很多产业互联网的人对 AI 感兴趣,正在学习 AI 的人却感觉“不知从何学起、学费太高”,过去课程都是针对算法工程师的,但算法工程师要平民化,我认为这是个趋势。
在这些调查对象里,希望转行 AI 的占比7%,个人希望转型的占比38%,还有一部分是作为技术爱好,一半人在技术领域要不断学新技术,这反映了一个基本现状,AI 要落地是比较难的,公司想好真的要转的不多,但是开发者已经动起来了,现在要解决的问题是 AI 在行业的落地。
微软(中国)CTO韦青
Q:您看到企业是怎样让技术落地的?微软现在在做哪些事情更多地赋能企业落地 AI,赋能个人?
韦青:现在 AI 的主旋律有两类,一类是真正的突破性的 AI 研究,探索新的方法;第二类是对于普通公司来讲的落地。但是落地确实有很大的难处,我们与合作伙伴和客户交流时,很少有人能理解 AI 到底是什么东西,AI 不是被神化,就是被污名化,但很少有人谈 AI 能帮你做什么。客观来看,我们需要认识到,AI 是机器的一种能力,用来帮助解决人类不擅长的计算问题,预判一下,未来所有行业的脑力劳动,就是纯粹的计算也是靠机器做的,这是必然的。
第二点是发展,真正懂算法的人才太缺乏,但是 AI 应用的需求又很大,具备有行业痛点的专业人士和具备有数学基本算法的专业人士需要配合才行。大谷不是计算机专业出身,而是学艺术的,但他应用 AI 的能力比我们很多人都要强大,我觉得这就是代表未来。微软也提供这种算法能力的平民化,不是让你做一个平民的算法,而是让你利用平民化的算法让所有的工作更高效、智能化,这是一个挑战,也是一个机遇。
微软亚洲研究院副院长、中国计算机学会副理事长周明
Q:AI 技术越来越平民化,技术门槛越来越低,是不是意味着很多程序员会丢了饭碗?
周明:编程确实很麻烦,如果可以标准化可以变得高效。我从中看到了智能编码的潜力,用人工智能把编码这件事智能化,把全世界的编程都合理合法地搜集来,在上面学机器学习、人工智能,需要做这么几件事:第一件事是把自然语言变成 code,第二是把 code 变成自然语言,第三是从 code 到 code,以及用 code 找 code。站在程序员的基础上,把他们的智慧集中起来,用大数据训练,就可能拥有这些能力。我们最近也在做编码智能的研究,发布了一个测试集,把数据搜集下来,公布了10项任务,总共有14个数据集,希望我们关心代码智能的人来研究并发布,互相比一比、测一测,看谁的水平高,这就是我们现在在做的一件事情,叫 CodeXGLUE,大家可以关注一下。
蒋涛:每一次技术进步都会带来改变,总的来说,过去有一些人掌握的一些技能逐渐被工具取代,是我们这个行业领域发展的趋势。
编码智能一定会对编程发展带来很多帮助,提升程序员的效率。但是完全取代,我们现在预测还太早,这个时代所谓的通用化人工智能还没到来,但是编码智能可以大幅度提高开发人员的效率,这是我们看到的,可以利用更好的工具、更好的编码手段,来实现更安全的编码,但不会取代程序员。
我们现在需要做的是定义业务逻辑,把业务逻辑描述完以后能不能编程,这是一个非常有潜力的方向。对于企业来说,AI 的真正价值是在于如何把业务本质翻译成一个算法,将来的世界都是算法驱动的,所以把你对业务的理解翻译成代码,这件事情是核心竞争力,而这样全智能的 AI 公司还没有出现。所以,程序员离失业很远,但是会有人失业,比如对于那些用很少的代码就可以实现的基础工作。所以,程序员要不断学习,提升自身能力。
韦青:不上进的程序员被淘汰是必然的,但是程序员这个行业肯定不会被淘汰。因为,现在别说应用智能的能力,就是把算法做出来的能力都是有限的,还处于探索期,所以大家先不用担心会被淘汰掉。但是如果还是搞不清楚你在发电做算法,还是用电拿算法解决问题和理解商业痛点,那这批人就有很大危险了。
最后,三位嘉宾还向大家推荐了学习 AI 的好书、网站,来看看大佬们是怎么学习 AI 的吧!
独立游戏开发者大谷(右)
周明:深奥的知识大家先别碰,先试试入门级的,比如微软新发布的“四大家族”:Power Virtual Agents,怎么写个小 bot;Power Apps,写个小 APP;还有 Power BI,交互式看图表,学习大数据分析;以及 Power Automate,类似于 RPA。然后再体会背后的人工智能技术,逐步深入了解自然语言、预训练模型、神经网络等,成长为一个在业务流程中懂技术的小能手。
蒋涛:对于开发者来说,算法上推荐 paper code 网站,可以看到最新带代码的论文。第二是 Python,宇宙第一语言,人工智能绝大部分都是 Python 支持的,发展也很快,可以学一下。第三个是 API,最好是找一个场景驱动,选择自己感兴趣的领域,利用开源工具和 API 能力在场景中落地。
韦青:我比较倾向于学专业化的课程,比如 MIT、卡内基梅隆的网络公开课程。我觉得程序员最基本的数学理论要有,要打好基础,否则算法都写不出来。
大谷:我本身是一个游戏开发者,会做一些游戏编程,但是人工智能用的 Python 语言这些是没有接触过的。我之前用的人工智能项目并没有对编程有要求,因为每个项目 GitHub 页面里已经写了非常详尽的怎么使用的教程,就是运行起来把编程环境搭一下,然后写几行,操作命令就可以了。
我自己最开始接触人工智能,使用过一些人工智能网站,像 oprator 可以生成人脸,OpenAI 编程作曲的人工智能,谷歌的 codelab,操作都是较为简易的,可以在网站上直接输入运行,非常有助于学习。