万博娱乐网站

首页 > 正文

贾扬清:从授之以鱼到授之以data,人工智能如何重塑传统软件行业

www.scsafll.com2019-07-12
万博亚洲app

贾阳庆:从鱼类教学到数据,人工智能如何重塑传统软件产业

d3cd2cb61c3a430a8015d8f4f2ebd82b.gif

本文是在O'Reilly的许可下发布的。

大数据摘要字幕作品

作者:effy

人工智能正在重塑人类社会的各个方面,例如开发新药和改善人们的生活习惯。那么在这个新时代,人工智能如何重塑软件工程行业?

本文基于Caffe的创始人,TensorFlow的核心作者之一贾阳庆,在O'Reilly和英特尔《在AI时代重新思考软件工程》共同组织的AI会议旧金山站。通过揭示传统软件工程的痛点,他希望与您分享自己的劳动。智慧时代,思考软件工程行业的发展。

很长一段时间以来,我们总是能够将对象,颜色和形状区分开来。那是什么意思?例如,当Digest提到“人造”时,我相信许多年轻女士会知道会发生什么,但是你如何给出一个不知道颜色的ta,或者一个计算机描述/描述“斩男“?

注意:斩男性的颜色,涂上这种颜色的唇膏的传说可以在世界上立于不败之地,无数兄弟,俘获了所有直男的心。

在图像识别和处理领域,传统的软件工程通过设计规则来研究计算机视觉问题,即使用硬编码来描述对象特征。在深度学习之前,梯度直方图(HOG)点燃了河流的北部和南部。

什么是HOG?简而言之,HOG尝试收集图像本地部分的统计数据,或者可以理解它试图在对象的所有方向上找到边界。例如,当您仔细查看箭头下的图表时(希望如此),您可以看到汽车等物体的轮廓。

008752f10e414435a0553691091d578f.jpeg

是不是想回到孩子看彩色卡片?还有,这好多了吗?

9bf22e545c0246f496edeb0b0ff9cb28.jpeg

因此,传统的软件工程需要告诉计算机规则是什么,或者特征是什么,并逐步告诉计算机该做什么。可以想象,这种设计本身限制了计算机视觉的进一步发展。

从逻辑编程到自适应模型:从教鱼到授权数据

传统图像识别技术的错误率停滞在26%,这已经毁了许多科学家,学者和研究人员。

e6a2c7da1bd045f3b4404931c9feb029.jpeg

此时,一位名叫Alex Krizhevsky的小兄弟提议以更抽象的方式编写模块,并设计我们今天称之为“卷积神经网络”的模型。并且用大量的数据来构建和训练它,实现从传统逻辑编程到建模的图像识别。

b9db30a900b8422ca31a0a8dc285027f.png

该方法的效果飞速发展,与传统的图像识别技术相比,在精度方面实现了飞越。 AlexNet在2012 ImageNet上取得了前5名的成绩,错误率为15%。

AlexNet由5个卷积层和3个完全连接的层,650,000个神经元和60,000,000个参数组成。其中,卷积层起着抽象和提取功能的作用。

be288f1038ed43aba268584d018707de.jpeg

传统的图像识别方法是将HOG人工指定和提取的特征放入分类器中进行识别。 AlexNet通过卷积层实现自学习图像特征,并通过完全连接层输出概率,以确定分类的“一站式”服务。真的很好!

参考:

有趣的是,AlexNet也支持生物后端。该研究发现神经元在我们的视觉皮层中是分层的。信息从一层传递到下一层,然后传递到下一层,使大脑能够提取越来越复杂的信息。

数据金矿

传统的方法是如何编写软件?当我们编写软件时,我们将源代码放入编译器中,编译器将源代码转换为计算机可以解释和运行的低级机器语言。

在人工智能领域,我们编写的程序或模型的编译方式与传统的软件工程不同。它不再是一组逻辑,而是基于不同的训练数据和目标数据获得不同的程序和模型。这些模型可以导出一个通用规则,然后使用大量数据和计算来获得准确的结果。

例如,对于大约120万个图像的数据集,处理这些编辑的传统方法之一是它需要大约1万亿次计算(1 exaflop)来训练图像。网络模型。

这个概念是什么?如果让每个伦敦人每秒进行一次浮点运算,那么训练模型大约需要四千年。

事实上,我们已经意识到人工智能的计算在某种程度上是非常残酷的。特别是在卷积神经网络或叠加神经网络中,我们需要进行大量的浮点运算。

因此,几年前,我们开始构建和开发更高效的硬件。此外,我们还建立了数据中心,规模集群或计算环境。

1a6d68621a9147d59246aa5b2aea6a9a.jpeg

与此同时,我们还看到了科学计算算法的回归,例如传统上用于预测天气的算法。

这推动了软件设计的发展。现在我们不再使用代码进行编译了。相反,我们将代码和数据放在计算阶段,或者我们可以将其称为代码编译的现代版本。

当然,引用一句俚语:一个聪明的女人很难没有饭。数据已成为人工智能生态系统中非常重要的一部分。

在互联网时代,生成了大量数据并充满了我们的生活。那么,面对像很多金矿这样的数据,我们真的可以从中提取黄金吗?或者我们的模型可以处理如此大量的数据吗?

在Facebook上,一群非常好的朋友试图回答这个问题。他们通过在网络上共享大量公共图像以及相关信息(例如标签)来训练模型以找出这些图像中的内容。

随着该项目的培训数据不断增加并最终达到约45亿张图像,模型的质量和准确性将会提高。换句话说,只要有更多的数据,它将为我们带来更多更好的质量模型。

在这些领域,我们看到了一种数据驱动的方法,它取代了硬编码或传统的软件工程。我们所要做的就是提供大量数据,然后在没有太多人为干预的情况下获得理想的模型。完善!

电力怎么样?

人工智能时代的软件工程逐渐形成了三个关键部分的良性循环:我们设计了可以从大量数据中提取信息的模型,并利用我们现有的巨大计算能力或更好的算法来打开智慧之门。

大量数据的涌入使我们能够为这些复杂模型的培训提供动力。硬件的开发使我们能够获得更多的计算资源,并允许我们在数天,数小时甚至数秒内完成这项工作。

随着硬件和计算机技术的发展,我们现在能够将这些模型部署到各种设备上。过去,我们的手机是手机。今天,我们的手机不仅仅是手机,个人助理,相机以及连接智能世界的方式。

未来到了吗?还是将来?

有时我想,我们还需要做什么?似乎我已经完成了所有这一切。不是吗?人工智能正变得越来越普遍,每个人都能理解和认可。我们已经有很多模型和强大的硬件,但我们仍然处于一个非常原始的阶段。

当我们尝试管理实验模型时,我们有时会使用一些非常古老的手动方法,例如excel表。现在有更好的方法来进行传统的软件工程,例如持续集成。

我们知道,在编写软件时,有一些复杂的版本控制系统可以确保代码测试和质量控制。当我们的项目考虑使用表来管理我们的实验时,这些问题并没有出现。

所以问题是,我们如何实现现代版本控制和现代SDK以及现代持续集成?对于AI系统,这变得非常困难。算法不仅在变化,而且数据每天都在变化。反过来,这又改变并影响了将要部署的模型和即将推出的新硬件。

这三个因素将相互作用并相互交织。因此,当前的软件工程不仅仅处于代码级别,还需要处理数据和计算资源,以确保结果的准确性,并确保我们能够有效地管理这些软件和系统。

这是一个悬而未决的问题,因为我们仍然需要做很多工作来保持AI的发展。令我高兴和兴奋的是,越来越多的人对AI和加入感兴趣。现在越来越多的学术论文引用卷积神经网络,指数增长的数量与摩尔定律非常相似。就个人而言,我非常期待看到人工智能和更多应用的进步,以帮助推进和改善我们的社会。

55a0454084044567b2bc62d703a79edd.gif

你想和嘉嘉阳见面面对班吗?今年6月,O'Reilly AI大会将把贾杨青和Ion 看看更多

热门浏览
热门排行榜
热门标签
日期归档