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

谷歌工程师:TensorFlow已重获新生;网友:我还是用PyTorch

乾明发自凹非寺量子位报道|公众号QbitAI道友留步!TensorFlow已重获新生。在“PyTorch真香”的潮流中,有人站出来为TensorFlow说话了。这次来自谷歌的工程师

乾明 发自 凹非寺

量子位 报道 | 公众号 QbitAI

《谷歌工程师:TensorFlow已重获新生;网友:我还是用PyTorch》
《谷歌工程师:TensorFlow已重获新生;网友:我还是用PyTorch》

道友留步!TensorFlow已重获新生。

在“PyTorch真香”的潮流中,有人站出来为TensorFlow说话了。

这次来自谷歌的工程师Cassie Kozyrkov。她发表博文称,TensorFlow升级到2.0版本后有了翻天覆地的变化, 对新手更加友好了。

引发这一变化的,是Keras。

在TensorFlow 2.0中,Keras API将成为TensorFlow中构建和训练模型的核心高级API。

《谷歌工程师:TensorFlow已重获新生;网友:我还是用PyTorch》
《谷歌工程师:TensorFlow已重获新生;网友:我还是用PyTorch》

在TensorFlow启动项目将变得更简单。

Kozyrkov说, 与TensorFlow 1.X的版本相比,这就是脱胎换骨的变化。

难用的TensorFlow1.X

想要掌握TensorFlow1.X,需要花费不少力气,学习曲线非常陡峭,普通用户只能远远看着。

背后的原因在于,Tensorflow是为从研究到生产的大规模模型而设计的,核心是性能。虽然难学,但只要坚持下去,就能进入机器学习从业者行列了。

然后,就可以用机器学习做一些不可思议的事情了,比如说发现新的恒星,推动医学进步…..

但很可惜,这太难用了,只有少数人能够掌握这种力量。

《谷歌工程师:TensorFlow已重获新生;网友:我还是用PyTorch》
《谷歌工程师:TensorFlow已重获新生;网友:我还是用PyTorch》

很多新的AI研究人员,以及不少Tensorflow用户,都喊着“真香”,转投PyTorch,毕竟隔壁家的不需要花太多力气。

还好有Keras,让不少人感受到了一些安慰。

Keras,是一个用于逐层构建模型的框架,可以与多个机器学习框架一起工作,它从一开始就是Pythonic的,设计灵活,易于学习,吸引了不少人的使用和支持。

虽然它是一个从TensorFlow 内部访问的高级 API,但它跟TF没啥关系。

开发者得在好用的Keras和性能强大的TensorFlow之间做出选择。

这就很容易给人一种“PyTorch”真香的感觉。

在TensorFlow2.0中,解决了这个问题。

TensorFlow2.0的变化

谷歌TF工程负责人Karmel Alliso表示,开发者不应该在简单的 API 和可伸缩的 API 之间做出选择,要有一个高级的API,不论是研究MNIST还是研究行星,都能搞定。

于是,Keras成了TensorFlow的高级 API,而且是可扩展的,可以直接从tf.keras使用 TensorFlow的所有高级功能。

而且Keras的简单性,也带到了TensorFlow上。

这种结合,会大幅度减少学习TensorFlow的门槛,对于初学者来说,是非常友好的。

《谷歌工程师:TensorFlow已重获新生;网友:我还是用PyTorch》
《谷歌工程师:TensorFlow已重获新生;网友:我还是用PyTorch》

现在,TensorFlow2.0已经推出了Alpha版,如果你有想法, 可以收好下面的教程传送门:

https://www.tensorflow.org/alphawww.tensorflow.org

教程分成了初学者版和老司机版:

初学者版,用的是Keras Sequential API,最简单的入门大法;

老司机版,展示了怎样用命令式来写正向传播、怎样用GradientTape来写自定义训练loop,以及怎样用tf.function一行代码自动编译。

网友:我还是用PyTorch

这篇博文发表了之后,Medium上获得了3K多的“鼓掌”,在Reddit上有了近百条讨论。

TensorFlow和Keras更好地结合起来,让一些人感觉挺好。但在讨论中,有不少网友依旧心心念着“PyTorch”。

有人评价称,这还是没有PyTorch好用,PyTorch感觉就像NumPy,可以在一天内学会,然后它就能正常工作。而学习TF(甚至2.0)会让人感觉自己很笨。

《谷歌工程师:TensorFlow已重获新生;网友:我还是用PyTorch》
《谷歌工程师:TensorFlow已重获新生;网友:我还是用PyTorch》

有人说,只要我们有PyTorch,谁会关心TF。

《谷歌工程师:TensorFlow已重获新生;网友:我还是用PyTorch》
《谷歌工程师:TensorFlow已重获新生;网友:我还是用PyTorch》

甚至还有“脱粉”的现象:

好吧,至少现在我有足够的动力离开TensorFlow并切换到PyTorch。

《谷歌工程师:TensorFlow已重获新生;网友:我还是用PyTorch》
《谷歌工程师:TensorFlow已重获新生;网友:我还是用PyTorch》

你呢?

TensorFlow 2.0还是PyTorch?

量子位 · QbitAI

վ’ᴗ’ ի 追踪AI技术和产品新动态

戳右上角「+关注」获取最新资讯↗↗

如果喜欢,请分享or点赞吧~比心❤


推荐阅读
  • 本文深入探讨了Linux系统中网卡绑定(bonding)的七种工作模式。网卡绑定技术通过将多个物理网卡组合成一个逻辑网卡,实现网络冗余、带宽聚合和负载均衡,在生产环境中广泛应用。文章详细介绍了每种模式的特点、适用场景及配置方法。 ... [详细]
  • 在当前众多持久层框架中,MyBatis(前身为iBatis)凭借其轻量级、易用性和对SQL的直接支持,成为许多开发者的首选。本文将详细探讨MyBatis的核心概念、设计理念及其优势。 ... [详细]
  • 本文详细介绍了macOS系统的核心组件,包括如何管理其安全特性——系统完整性保护(SIP),并探讨了不同版本的更新亮点。对于使用macOS系统的用户来说,了解这些信息有助于更好地管理和优化系统性能。 ... [详细]
  • libsodium 1.0.15 发布:引入重大不兼容更新
    最新发布的 libsodium 1.0.15 版本带来了若干不兼容的变更,其中包括默认密码散列算法的更改和其他重要调整。 ... [详细]
  • 在Java中,this是一个引用当前对象的关键字。如何通过this获取并显示其所指向的对象的属性和方法?本文详细解释了this的用法及其背后的原理。 ... [详细]
  • 本文深入探讨了UNIX/Linux系统中的进程间通信(IPC)机制,包括消息传递、同步和共享内存等。详细介绍了管道(Pipe)、有名管道(FIFO)、Posix和System V消息队列、互斥锁与条件变量、读写锁、信号量以及共享内存的使用方法和应用场景。 ... [详细]
  • 本文将介绍如何使用 Go 语言编写和运行一个简单的“Hello, World!”程序。内容涵盖开发环境配置、代码结构解析及执行步骤。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 深入理解C++中的KMP算法:高效字符串匹配的利器
    本文详细介绍C++中实现KMP算法的方法,探讨其在字符串匹配问题上的优势。通过对比暴力匹配(BF)算法,展示KMP算法如何利用前缀表优化匹配过程,显著提升效率。 ... [详细]
  • 探讨一个显示数字的故障计算器,它支持两种操作:将当前数字乘以2或减去1。本文将详细介绍如何用最少的操作次数将初始值X转换为目标值Y。 ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 2023年京东Android面试真题解析与经验分享
    本文由一位拥有6年Android开发经验的工程师撰写,详细解析了京东面试中常见的技术问题。涵盖引用传递、Handler机制、ListView优化、多线程控制及ANR处理等核心知识点。 ... [详细]
  • Google最新推出的嵌入AI技术的便携式相机Clips现已上架,旨在通过人工智能技术自动捕捉用户生活中值得纪念的时刻,帮助人们减少照片数量过多的问题。 ... [详细]
  • KMP算法是处理字符串匹配的一种高效算法它首先用O(m)的时间对模板进行预处理,然后用O(n)的时间完成匹配。从渐进的意义上说,这样时间复 ... [详细]
  • 如何更换Anaconda和pip的国内镜像源
    本文详细介绍了如何通过国内多个知名镜像站(如北京外国语大学、中国科学技术大学、阿里巴巴等)更换Anaconda和pip的源,以提高软件包的下载速度和安装效率。 ... [详细]
author-avatar
粉笔画1995_996
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有