更多干货内容请关注微信公众号“AI 前线”,(ID:ai-front)
注意:今天的文章包括一份目前已经在实践中应用的 AI 算法与技术成果清单,如时序分析(深度学习正迅速取代信号处理领域中的一些传统技术)等。一方面,这些成果可以说相当酷炫,但本文暂时不会对强化学习的实际应用进行展望,因为在我看来,实际上其还很难在某些工业应用环境中产生实际效果。当然,不能否认的是,强化学习确实是个前景广阔,且正处于快速发展中的研究领域。这里我就不再继续讨论图像识别与简单的计算机视觉议题了,毕竟这几年此类文章已经多如牛毛:)
尽管生成性对抗网络已经拥有数年发展历史,但我对其仍抱有怀疑态度。几年过去,虽然如今的技术不再只能生成可怜的 64 x 64 图像,但这仍不足以打消我的顾虑。在阅读相关数学文章后,我对 GAN 并不能真正理解其分布状况的怀疑进一步加深。不过这一切在今年有所改变——首先是 CycleGAN 等有趣的体系以及 Wasserstein GAN 等数学改进让我得以在实践当中加以尝试。虽然其实际效果仍无法令人完全满意,但现在我已经确定,其生成能力绝对不容质疑。
首先,我强烈推荐英伟达公司发表的关于生成逼真全高清图像的研究论文(共结果要远好于一年之前恐怕的 64 x 64 面部图像):《AI 可以生成伪造的名人脸部图像,效果好得让人意外......》
https://www.theverge.com/2017/10/30/16569402/ai-generate-fake-faces-celebs-nvidia-gan
不过更让我激动的(甚至唤起了我的‘少年梦想’),则是利用 AI 生成伪造的色情影片:
《AI 生成的色情片》
https://motherboard.vice.com/en_us/article/gydydm/gal-gadot-fake-ai-porn
另外,游戏行业也在大规模采用这些新型技术,例如利用 GAN 生成景观、英雄甚至整个世界。在我看来,我们必须提高自己的分辨能力——从伪造的色情影片到欺诈性网络人物。
现代开发领域(不仅仅是在人工智能行业)的一大难题在于,我们往往面对数十种作用基本相同的框架方案。目前,每家投身于机器学习领域的大型企业都拥有自己的框架:谷歌、Facebook、Amazon、微软、英特尔、甚至包括索尼与优步都是如此,这还不算其它众多开源解决方案。在单一人工智能应用程序当中,我们往往需要使用多种不同框架——例如利用 Caffe2 实现计算机视觉,PyTorch 实现自然语言处理,TensorFlow/Keras 则专攻推荐系统。将这一切加以合并需要耗费大量时间,意味着数据科学家与软件开发人员需要费心费力,而无法专注于处理真正重要的任务。理想的解决方案应当是一种独特的神经网络格式,且可轻松与各类框架进行对接,包括允许开发人员轻松部署、确保科学家能够轻松使用。在这方面,ONNX 应运而生:
《ONNX:开源神经网络改变了格式》
http://onnx.ai/getting-started
可互换 AI 模型的新开源生态
事实上,ONNX 只是非循环计算图的一种简单格式,但却在实践层面为我们带来真正部署复杂 AI 解决方案的机会。我个人非常看好该项目——人们能够在 PyTorch 等框架当中开发神经网络并部署工具,而不再需要从头到尾始终被局限在 TensorFlow 生态系统之内。
三年之前,人工智能领域最令人兴奋的成果当数 Caffe Zoo。当时我负责处理大量计算机视觉工作,因此需要尝试所有模型,并观察其工作原理以及实际效果。在此之后,我会利用这些模型进行迁移学习或者作为特征提取器。最近我开始使用两种不同的开源模型,并将引入规模更大的计算机视觉处理管道。究其本质,这意味着我们已经不再需要自行训练网络。举例来说,ImageNet 能够很好地实现对象或者地点识别,因此我们可以直接将这些基础性成果下载并接入到自己的系统当中。除了 Caffe Zoo 之外,其它框架也提供类似的 Zoo 方案。但真正让我惊奇的是,现在大家甚至能够将各类模型添加至计算机视觉、自然语言处理甚至是 iPhone 内的加速度计信号处理机制当中。
最全的核心机器学习模型列表(iOS 11 以上)
https://github.com/likedan/Awesome-CoreML-Models
在我看来,这类 Zoo 方案只会越来越多 ; 再加上 ONNX 这类生态系统的出现,这些方案将变得更加集中(并凭借机器学习区块链类应用实现本体分散)。
设计一套神经网络架构无疑是一项痛苦的任务——有时候,大家可以通过叠加卷积层获得相当出色的结果,但在大多数情况下,我们需要利用直觉与超参数搜索等方法认真设计宽度、深度与超参数——例如随机搜索或贝叶斯优化。而且对于除计算机视觉以外的其它工作,我们不光需要对 ImageNet 上训练完成的 DenseNet 进行微调,同时也要面对 3D 数据分类或者多变量时序应用等其它难题。
目前已经存在多种能够利用其它神经网络从零开始生成新的神经网络架构的尝试,但其中我最为看好的,当数谷歌研究团队拿出的最新成果:
AutoML 用于大规模图像分类与对象检测
https://research.googleblog.com/2017/11/automl-for-large-scale-image.html
他们利用其生成计算机视觉模型,且不仅速度较人类科学家更快,效果也更好!我相信很快就会出现大量与之相关的论文与开源成果。在我看来,未来将有更多博文或初创企业不再强调“我们开发出一套 AI 方案……”,而是转向“我们的 AI 方案能够学习其它 AI 方案,并借此创造出新的 AI 方案”。至少我肯定会在自己的项目中加以尝试,请告诉不只我一个人有这样的冲动。
关于这个概念,我的认知主要来自俄罗斯系统分析师、教练兼 AI 爱好者 Anatoly Levenchuk 的博客。通过以下图片,大家可以看到所谓“AI 堆栈”的示例:
其中不仅包含机器学习算法与您最喜爱的框架,同时也存在着诸多更为深入的层级,且各个层级都拥有自己的发展与研究趋向。
我认为人工智能开发行业已经非常成熟,其中存在着大量多元化的专家。事实上,团队中仅有一名数据科学家是远远不够的——大家需要不同的人才来进行硬件优化、神经网络研究、AI 编译器开发、解决方案优化以及生产实现。而在他们之上,还应设置不同的团队领导者、软件架构师(分别为各个问题进行堆栈设计)以及管理员。之所以在这里提及这个概念,是希望各位 AI 技术专家能够在职业规划当中予以关注——例如对于希望成为人工智能软件架构师或者技术领导者的朋友,您将能够借此确定自己需要学习哪些知识。
人工智能能够以高于 95% 的精确度解决的问题其实非常有限:我们可以将图像归类为 100 种类别、可以判断文本内容属于正面还是负面,此外还有少数更为复杂的可行任务。展望新的一年,我认为最具突破的应用方向在于语音识别与生成。事实上,一年之前 DeepMind 发布的 WaveNet 已经拥有相当出色的表现,但现在感谢百度 DeepVoice 3 以及谷歌 Tacotron2 的助力,上述结论已经基本成为板上钉钉的事实:Tacotron 2: 立足文本生成逼真的人类语音
数十年以来,技术人员们一直在努力研究如何立足文本生成自然的人类语音(即文本到语音,简称 TTS 技术)……
https://research.googleblog.com/2017/12/tacotron-2-generating-human-like-speech.html
这项技术将很快拥有自己的开源版本(或者被其他一些技术天才所重现),意味着未来每个人都能够以极高的精度实现语音识别与生成。那么接下来的前景如何?毫无疑问,除了更出色的个人虚拟助手、自动阅读器以及对话转录工具之外,音频伪造也将成为现实。
我们目前所拥有的机器人存在着一大共通性问题——其中 99% 根本不属于人工智能,而只是硬编码型方案。考虑到这样的情况,我们意识到已经不能简单利用数百万次对话训练编码器 - 解码器 LSTM,并指望能够借此建立起智能系统。正因为如此,Facebook Messenger 与 Telegram 中的大多数聊天机器人只能遵循硬编码命令,或者最多只能算是具备 LSTM 与 word2vec 语句分类能力的神经网络。现代先进自然语言处理技术的实际水平应该略高于此,Salesforce 公司做出的一些有趣实验已经证明了这一点:
AI 研究 - Salesforce.com
他们正在着手构建自然语言处理与数据库的接口,希望借此克服现代编码器 - 解码器自回归模型——即不仅能够对文字或句子进行嵌入,同时还可实现字符嵌入。此外,ROUGE 等自然语言评分优化机制等研究成果同样值得关注。
我相信通过上述开发工作,未来我们的聊天机器人至少能够获得更强大的智能信息检索与命名实体识别能力,并可能会在一部分封闭领域当中出现完全由深度学习技术驱动的机器人方案。。
除了 Salesforce 之外,另一股遭受严重低估的机器学习研究力量当数优步 AI 实验室。前一段时间,他们曾发表一篇博文,其中展示了其时序预测方法。老实讲,这实在令我感到受宠若惊——因为其成果与我在应用当中使用的方法基本相同!下面来看这一将统计特征与深度学习表达加以结合的惊人示例:
优步公司利用递归神经网络预测极端性工程事件在优步公司,事件预测能力允许我们根据预期中的用户需求设计面向未来的服务方案。
https://eng.uber.com/neural-networks/
此外还出现了其它更激动人心的实例,包括利用 34 层 1 维 ResNet 诊断心律失常。最酷的是其拥有非常出色的成效——不仅远超多种传统统计模型,甚至在诊断率方面胜过了专业心脏病专家!算法诊断心律失常疾病,准确度超越心脏病专家|斯坦福新闻由斯坦福大学计算机科学家们发明的一种新算法能够对心律数据进行筛选……
https://news.stanford.edu/2017/07/06/algorithm-diagnoses-heart-arrhythmias-cardiologist-level-accuracy/
我最近一直投身于深度学习的时序分析工作当中,并可以向大家保证神经网络在这方面确实表现良好。与传统的“黄金标准”相比,其成效可达到原有水平的 5 到 10 倍。
我们该如何对自己的神经网络进行训练?实事求是地讲,大多数从业者只是在使用“Adam()”以及标准学习率。也有一些聪明的从业者会选择最适合的优化器,同时调整并安排其学习速度。然而,大多数朋友对于优化这个主题仍然重视不足,因为我们习惯于直接按下“训练”按钮,并静待自己的神经网络收敛完成。但从计算能力、内存资源以及开源代码解决方案等层面来看,我们实际上基本处于公平的竞争环境当中——最终的赢家属于那些能够立足同一 Amazon 实例在最短时间内获得最佳 TensorFlow 模型成效的技术人员。从这个角度来看,决定一切的实际上正是优化。
2017 年深度学习优化大事记
目录:深度学习的终极目标在于找出最低程度的概括方法……
http://ruder.io/deep-learning-optimization-2017/index.html
在这里,我建议大家参阅 Sebastian 的 Ruder 博文,其中谈到了 2017 年内新近出现的、能够对标准优化器加以改进的简单方法,外加其它一些轻松易行的强化手段。
谈到这里,我们能够从以上图片当中得到怎样的启示?很明显,开发出有价值的新方案并借此获利绝非易事,特别是考虑到目前正有大量开源工具与算法被持续发布出来。我认为 2018 年对于 Prisma 这样的初创企业可能不会太友好——毕竟这个世界永远不缺少竞争对手与“技术天才”。他们完全可以将如今的开源网络部署在移动应用当中,并借此建立自己的商业企业。
在新的一年中,我们必须专注于更为基础的技术研发——而非一味追求快钱。即使大家只是打算利用谷歌 Ratacon 语音识别技术生成语音读物,也绝对不能仅仅将其视为简单的 Web 服务——相反,良好的合作伙伴与商业模式将成为您获得投资的必要前提。
总结起来,我们目前已经拥有多种可以应用于实际产品的技术成果,具体包括时序分析、GAN、语音识别以及自然语言处理技术方面的改进等。我们不必再针对分类或者回归等目标自己设计基础架构,因为 AutoML 已经能够帮助我们完成这些任务,希望在经过进一步优化之后,AutoML 能够在速度方面更上一层楼。而在 ONNX 与模型 Zoo 的帮助下,我们将能够轻松将基础模型引入自己的应用程序当中。在我看来,至少就目前的最新发展水平而言,这将显著简化基于 AI 类应用程序的开发难度。
最后再来点预告:接下来,我将完成 2018 年 AI 技术趋势预测系列文章中的最后一篇,即《人工智能技术将如何影响“普通人”的生活》,敬请期待:)(AI 前线将继续跟进该系列文章)
原文链接:
https://medium.com/@alexrachnog/ai-in-2018-for-developers-2f01250d17c
目前有10000+人已关注加入我们,欢迎您关注