热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

更简单、更快捷:探讨深度学习的未来发展步伐

更简单、更快捷:探讨深度学习的未来发展步伐

【51CTO.com快译】机器学习是一门多领域交叉学科,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。它是人工智能的核心,是使计算机具有智能的根本途径。

如果论及哪一个机器学习的领域最为热门,非人工智能莫属,这就是深度学习。深度学习框架又名深度神经网络,一个复杂的模式识别系统,可以实现从自动语言翻译到图像识别的功能。

更简单、更快捷:探讨深度学习的未来发展步伐

深度学习需要收集大量的数据,并且拥有处理这些数据的能力,做到这些并非易事,但深度学习技术正在蓬勃发展的道路上,并且已经突破了很多障碍。深度学习对于分析非结构化数据具有非常大的优势。

各大软件巨头们也在酝酿一场深度学习技术的争霸战,比如谷歌的TensorFlow项目与百度的paddle。多个软件框架之间的竞争蓄势待发。软件和硬件间的战争开始了。有预言称,专门的硬件设计模型和服务会是深度学习的下一个大的进步,或许有更好、更智能、更高效的算法,无需硬件的辅助就可以把功能服务推向更多人。问题也由此产生,我们中的大多数人都能逐渐理解和接受深度学习技术吗?还是我们一直需要计算机博士们来把握这项技术工作?

微软比谷歌更紧张

一项重要技术展示给世界的好办法,就是引起技术巨头公司们的兴趣。像过去的NoSQL、Hadoop和Spark。在深度学习框架领域,谷歌的TensorFlow已经发展得十分可观,而谷歌云和谷歌专有硬件的研发也紧随其后。

作为竞争对手,微软反击谷歌的杀手锏是认知 工具 包,也叫CNTK。CNTK2.0版在多个层面挑战TensorFlow。CNTK现在提供JavaAPI,可接受Spark处理框架,同时支持Keras神经网络图书馆代码,这实际上就是TensorFlow的前端。这样一来,Keras的用户就可以避开谷歌的解决方案而转向微软。

对于谷歌TensorFlow,微软最直接、最有意义的应对方法是让CNTK更快速和准确,并且使PythonAPI提供高级别和低级别的功能。这是微软想出来的最佳应对策略。

当然,所谓的快速和准确并不是吹牛,如果微软的系统比TensorFlow更快,那便意味着人们有更多的选择而不只是去砸硬件设备。比如,

Tensorflow通过谷歌的定制TPU处理器进行硬件加速,那就意味着第三方项目,TensorFlow和CNTK的接口,就像Spark一样,都能得到加速。承蒙雅虎的牵线,TensorFlow和Spark已经协同工作,但是如果CNTK和Spark提供更少的工作和更高的报酬,CNTK就成为了Spark所在领域中最为诱人的选择。

硬件:Graphcore和波计算

谷歌TPU的一个缺点是,他们只在谷歌云中有效。对于那些已经投资了GCP的人来说,这可能不是个问题,但是对于大多数人,这是一个潜在的"阻断剂"。为深入学习专用硅,如NVIDIA的GPU需要的附加条件较少。

几家公司最近推出了专门的硅优于GPU深度学习的应用。启动Graphcore深度学习处理器,专门的硅片设计过程中采用神经网络的图形数据。该公司称面临的挑战是创建硬件优化,以运行循环或相互连接的网络和其他网络。

一种Graphcore加速的方法是保持网络模型尽可能接近硅,避免对外部存储器的往返访问。尽可能的避免数据运动是加快机器学习的一种常用方法,但Graphcore以这种方式到达另一个层次。

波计算是深度学习专用硬件的另一种启用方式。像Graphcore一样,公司认为GPU的发展和它自身固有的局限性有很大关系,波计算的计划是建立"数据流的设备,"机架式系统使用定制芯片,可以提供2.9petaops计算("petaops"是定点运算,不是"千万亿次的"浮点运算)。这样的运算速度超出了谷歌TPU提供的92teraops的订单。

在需要独立基准,也不清楚每Petaop的价格是否有竞争力的情况下,波计算能保证价格的稳定,也让它的潜在用户可以放心。谷歌TensorFlow的支持是第一个产品框架支持,CNTK、亚马逊的MXNeT和其他公司紧随其后。

brodmann17:小模型,高速度

鉴于Graphcore和波计算的硬件要优于TPU,其他第三方的目的是展示框架和更好的运算法则,可以带来更有力的机械学习。有些用于定位缺乏访问处理区域,例如智能手机。

谷歌已经针对TensorFlow在移动设备上的应用作出升级,一个名为Brodmann17的工具试图在智能手机级硬盘上占用5%的资源(包括计算、存储和数据)。

该公司的做法是由首席执行官和创始人AdiPinhas提出的,用现有的标准神经网络模块创建一个更小的模型。Pinhas说,相比其他流行的深度学习架构,小的模型数量少于训练数据的10%。但在相同的时间里需要一些培训。最终的目的是对速度的精确权衡,更快的预测时间,功耗更低,占用的内存少。

现阶段别指望看到什么开放源代码的产品出现,brodmann17的商业模式是提供云计算的API和本地计算的SDK。Pinhas说,"我们希望扩大我们未来的产品,所以商业化可能只是第一步。

擦出新火花

今年早些时候,InfoWorld撰稿人JamesKobielus预言深度学习框架之间的战火渐起。雅虎已经把TensorFlow引向Spark,但是Spark的主要供应商Databricks现在向Spark提供自己的开源软件包来整合深度学习框架。
正如该项目的名称--深度学习管道,探讨深度学习整合并且以Spark自己的角度来看待ML管道技术。Spark工作流可以像TensorFlow和Keras一样被称为图书馆。这些框架模型可以像Spark在其他方面一样,进行规模化训练。并且通过Spark自己的方式来处理数据和深度学习模型。许多数据管理员已经熟悉了Spark并且开始使用它。

全民深度学习?

Databricks曾经在自己的新闻稿里提到"民主化的人工智能和数据科学"。这样的论调意味着什么呢?微软认为他们的CNTK2.0可以成为一项有力的举措,使AI技术无处不在的面向所有人。深度学习固有的复杂性并不是唯一要克服的障碍。深度学习的整个工作流程仍然是一个点对点的工作流程。这里有需要填补的空白,所有平台、框架和云背后的商业机构都在竞相填补端到端的解决方案。关于深度学习技术,下一步的关键将不仅仅是找到一个真正的深层学习框架。而是找到一个统一的工作流程。这样一来,不管是谁在开发运行项目,其深度学习框架都可以有据可循的进行开发和研究。

作者:SerdarYegulalp

原文链接:

http://www.infoworld.com/article/3199950/artificial-intelligence/deep-learnings-next-steps-custom-hardware-better-frameworks-easier-on-ramps.html

刘妮娜译

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 我们


推荐阅读
  • 吴恩达推出TensorFlow实践课程,Python基础即可入门,四个月掌握核心技能
    量子位报道,deeplearning.ai最新发布了TensorFlow实践课程,适合希望使用TensorFlow开发AI应用的学习者。该课程涵盖机器学习模型构建、图像识别、自然语言处理及时间序列预测等多个方面。 ... [详细]
  • Coursera ML 机器学习
    2019独角兽企业重金招聘Python工程师标准线性回归算法计算过程CostFunction梯度下降算法多变量回归![选择特征](https:static.oschina.n ... [详细]
  • 本文探讨了图像标签的多种分类场景及其在以图搜图技术中的应用,涵盖了从基础理论到实际项目实施的全面解析。 ... [详细]
  • 本文详细介绍了 TensorFlow 的入门实践,特别是使用 MNIST 数据集进行数字识别的项目。文章首先解析了项目文件结构,并解释了各部分的作用,随后逐步讲解了如何通过 TensorFlow 实现基本的神经网络模型。 ... [详细]
  • 吴裕雄探讨混合神经网络模型在深度学习中的应用:结合RNN与CNN优化网络性能
    本文由吴裕雄撰写,深入探讨了如何利用Python、Keras及TensorFlow构建混合神经网络模型,特别是通过结合递归神经网络(RNN)和卷积神经网络(CNN),实现对网络运行效率的有效提升。 ... [详细]
  • 机器学习中的相似度度量与模型优化
    本文探讨了机器学习中常见的相似度度量方法,包括余弦相似度、欧氏距离和马氏距离,并详细介绍了如何通过选择合适的模型复杂度和正则化来提高模型的泛化能力。此外,文章还涵盖了模型评估的各种方法和指标,以及不同分类器的工作原理和应用场景。 ... [详细]
  • 本文介绍了一种根据目标检测结果,从原始XML文件中提取并分析特定类别的方法。通过解析XML文件,筛选出特定类别的图像和标注信息,并保存到新的文件夹中,以便进一步分析和处理。 ... [详细]
  • 深入浅出TensorFlow数据读写机制
    本文详细介绍TensorFlow中的数据读写操作,包括TFRecord文件的创建与读取,以及数据集(dataset)的相关概念和使用方法。 ... [详细]
  • Keras 实战:自编码器入门指南
    本文介绍了使用 Keras 框架实现自编码器的基本方法。自编码器是一种用于无监督学习的神经网络模型,主要功能包括数据降维、特征提取等。通过实际案例,我们将展示如何使用全连接层和卷积层来构建自编码器,并讨论不同维度对重建效果的影响。 ... [详细]
  • 本文详细介绍了使用NumPy和TensorFlow实现的逻辑回归算法。通过具体代码示例,解释了数据加载、模型训练及分类预测的过程。 ... [详细]
  • 在Ubuntu 16.04中使用Anaconda安装TensorFlow
    本文详细介绍了如何在Ubuntu 16.04系统上通过Anaconda环境管理工具安装TensorFlow。首先,需要下载并安装Anaconda,然后配置环境变量以确保系统能够识别Anaconda命令。接着,创建一个特定的Python环境用于安装TensorFlow,并通过指定的镜像源加速安装过程。最后,通过一个简单的线性回归示例验证TensorFlow的安装是否成功。 ... [详细]
  • 本文详细介绍如何通过Anaconda 3.5.01快速安装TensorFlow,包括环境配置和具体步骤。 ... [详细]
  • 本文介绍了一个使用Keras框架构建的卷积神经网络(CNN)实例,主要利用了Keras提供的MNIST数据集以及相关的层,如Dense、Dropout、Activation等,构建了一个具有两层卷积和两层全连接层的CNN模型。 ... [详细]
  • TensorFlow 2.0 中的 Keras 数据归一化实践
    数据预处理是机器学习任务中的关键步骤,特别是在深度学习领域。通过将数据归一化至特定范围,可以在梯度下降过程中实现更快的收敛速度和更高的模型性能。本文探讨了如何使用 TensorFlow 2.0 和 Keras 进行有效的数据归一化。 ... [详细]
  • 本文探讨了如何在Python中处理长数据的完全显示问题,包括numpy数组、pandas DataFrame以及tensor类型的完整输出设置。 ... [详细]
author-avatar
手机用户2602938525
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有