人工智能产品化的关键是基础架构和数据,而非算法

机器之心报道

参与:微胖、黄小天

突然你发现,机器学习算法,你所谓的王冠,只是巨大复杂车机上的一个小齿轮。

人工智能产品化的关键是基础架构和数据,而非算法

目前,人工智能经历着魔幻般的炒作。数据输入作为乱七八糟的数字流的神经网络——或者黑箱,并且输出的数据得到彻底转化,就像魔术师从一个空帽子中变出一只兔子。

这在实验室是可能的,甚至是通过干净、调试的数据,在一台个人开发机器上也是可能的。然而,已经付出了很多很多努力,为了把机器学习算法扩展到类似于多用户服务的东西上——换句话说,有用的东西上。

人工智能的关注度正在直线飞升,其中不乏大量炒作,而实际情况是人工智能技术依然处于起步阶段,并且难以实现产品化。从原型到产品,需要克服很多新挑战:比如训练数据从何而来?训练系统时人们如何存储、组织、精炼并准备数据?谁可以检测系统?安全性怎么样:如何管理和保护敏感信息?我的硬件需要多快才能传递结果?性能瓶颈和并发障碍在哪里?

魔术耍个不停。突然你发现,人工智能代码,你所谓的王冠,只是巨大复杂车机(buggy machine)上一个无足轻重的小齿轮。

Skymind 是一家为企业提供人工智能解决方案的初创公司,其联合创始人和首席技术官 Adam Gibson 说:把人工智能产品化是一个不小的挑战,基础架构是最难以解决的问题之一。

Skymind CEO 和联合创始人 Chris Nicholson 解释说:部署人工智能是一个复杂过程,并且要分几步走,这和水流进一个个管道有些像。

原始数据就像液体,在流入产品的管道之前,需要数字化和聚集原始数据。接着,在使用 Hadoop 等被存储之前,数据流需要通过工具 Apache Kafka 或者 Apache Storm 进行处理。包括图像、文本、声音在内的数据需要被提取、转化继而格式化以用于向量计算,并加载到用于训练的神经网络。

训练结束之后,将使用更多的数据检测模型的推断代码以查看其性能和精确度。换句话说,对于一个新近训练的人工智能,你通过问题来查看其输出是否和你的预期相一致。

在这一点上,少许的调整、篡改和额外训练可在正确的方向上推进软件。当系统达到标准时——精确度足够高,运行快到可以满足不耐烦之人的需求——它被插入到一个更大的框架之中,用户从而可以直接或者通过 API 安全访问系统。一个典型的例子是 Netflix 或 Amazon 基于用户信息通过机器学习生成最佳推荐。

它并不止于此,而最后一步是扩展。目前为止我们描述的系统被打包进微服务(microservice)从而人工智能可以在多台服务器上数千次地——如果不是数十万次——被调试以解决需求问题。想象一个用于信用卡查腐的系统,它要应对数百个都姓 Purchas 的人。

Gibson 说:研究者并不知道或者关心这个,他们只对更好的算法感兴趣,而不是服务消费者。

Nicholson 同意 Gibson 的观点,他说:研究人员对基础架构和扩展并不感兴趣。这里有一个很好的类比:想象一下数以千计的消费者向同一个客服人员打电话——这就是研究人员的工作方式。他们就只有一个客服人员。但是想象一下如果通用电气收到了数以千计的电话,其就不可能只安排一个客服人员。你需要无限次复制客服人员以尽可能地满足服务需求。

呃,我只用云

类似创业公司这样的小型公司可能会在他们的人工智能系统推断阶段大做文章,并且虚晃(「hand-wave」)其他阶段。Gibson 告诉 The Register,「他们不会解决涉及所有基础架构和扩展的数据量问题,因此,理想的做法是诉诸云端」,「但是,随着公司变大,他们也需要担心这些问题。」

Skymind 成立于 2014 年,研发了一种用 Java 编写的深度学习框架 Deeplearning4j,能与 Hadoop 和 Spark 融合。

诸如谷歌云、微软 Azure 以及亚马逊云这样的云平台正竞相将人工智能作为一种服务提供给大众。他们为用户提供预训练模型,通过将不同工具(比如图像识别或自然语言处理)弄在一块,也为用户提供一种生成更加定制化模型的办法。

借助云使用人工智能模型既受约束也很昂贵。神经网络迭代学习,也要求在多个 GPU 上进行密集训练。借助云来实现这些,花费在 1 万 5 千美元到 3 万美元之间不等,Nicholson 介绍说。

「付不起钱的创业公司会使用从网上下载的预训练模型,进行定制化——这是典型的做法——并把模型上传到云。」

这么做的好处就是小型团队不用到处找懂机器学习的计算机科学家来将想法付诸现实。但是,也有不利的地方:受限于预先被打包的模型。事实上,这也是证明一家公司是否对人工智能持严肃态度的办法。人工智能的炒作似乎不会减缓,吹嘘这些方面也增加了上头条或博得更多投资的机会。

「一家公司如果打造人工智能,要解决四个问题:人才、工具、数据和基础架构。」Nicholson 说,「需要有机器学习背景的人,计算机科学家以及黑客。要能解释他们用的哪类算法,如果使用云,那么,他们可能没有同样多的数据,也不需要考虑基础架构问题。」

「如果他们不谈论算法和技术堆栈,那么,这就是个警示。你很难认真对待这些人,因为他们啥都干得出来。他们在 logistic 回归中使用 if-then 却称其为人工智能。」

人工智能不走大众路线

从制药贸易到政府部门,从不缺乏将人工智能应用到数据中的商业兴趣。不过,这并适合所有人,Nicholson 和 Gibson 说。深度学习需要将训练数据大量绑定以研发具有高性能的模型。

「事实是,几乎所有创业公司并不掌握足够数据。公司也必须现实点。人们不得不跨过幻想阶段,寻找一个可以解决的真正问题。」

相关推荐