TensorFlow2.0
多刺的体验
我怀疑很多人都指责TensorFlow 1.x很容易被爱。它是AI的工业车床 ......而且用户友好。充其量,您可能会感到非常高兴能够以令人难以置信的规模完成您的AI任务。
如果你声称TensorFlow 1.x很容易掌握,那么你也会引起一些眉毛。它陡峭的学习曲线使得休闲用户几乎无法进入,但掌握它意味着你可以用你吹嘘登顶珠穆朗玛峰时失去的脚趾来谈论它。它有趣吗?不,来吧,真的:这很有趣吗?你并不是唯一一个 - 这就是TensorFlow 1.x教程过去对每个人的感觉。
TensorFlow的核心优势在于性能。它的设计是为了将模型从研究到大规模生产并提供,但是TF 1.x让你为它而汗流。背。坚持不懈,你将能够加入使用它的ML从业者的行列,寻找令人难以置信的事物,比如寻找新的行星和开拓医学。
遗憾的是,这么强大的工具掌握在如此少的人手中......直到现在。
不要担心张量是什么。我们刚刚在成长过程中调用它们(广义)矩阵。TensorFlow这个名字是对TF非常擅长执行涉及多维数组(呃,矩阵)的分布式计算这一事实的认可,你会发现它在大规模的AI中很方便。图像来源。
可爱又可爱的Keras
现在我们已经介绍了仙人掌,让我们来谈谈你真正想要拥抱的东西。无意中听到我的工作地点:“我想我真的很喜欢Keras。”
Keras是逐层构建模型的规范,适用于多个机器学习框架(因此它不是TF的东西),但您可能知道它是从TensorFlow中作为tf.keras访问的高级API 。
顺便说一句,我正在写这篇关于Keras 4岁生日(2019年3月27日)的部分,感谢额外的温暖模糊。
Keras是从头开始构建的Pythonic,总是以人为本 - 它的设计灵活,灵活,简单易学。
为什么我们两个都没有?
为什么我们必须在Keras的可爱和传统TensorFlow的强大表现之间做出选择?为什么我们两个都没有?
很好的主意!两个都有!简而言之,这就是TensorFlow 2.0。
展望未来,Keras将在对TensorFlow高层API,它的扩展,使您可以使用所有TensorFlow的高级功能,直接从tf.keras。
所有TensorFlow都具有Keras
在新版本中,你最讨厌TensorFlow 1.x的所有内容都会获得断头台。只是为了将两个数字加在一起,必须执行一个黑暗的仪式?kill。TensorFlow 会话?kill。一百万种方法做同样的事情?kill。如果切换硬件或秤,重写代码?kill。大量的样板写?kill。可怕的不可行的错误消息?kill。陡峭的学习曲线?kill。
你期待明显的捕获,不是吗?更糟糕的表现?再猜!我们不会放弃表现。
TensorFlow现在可爱,这是一个改变游戏规则的人,因为这意味着我们这个时代最强大的工具之一就是放弃了进入的大部分障碍。来自各行各业的技术爱好者终于有能力加入,因为新版本开启了超越研究人员和其他具有令人印象深刻的疼痛阈值的高度积极的人。
渴望取悦
在TensorFlow 2.0中,急切执行现在是默认执行。您甚至可以在热切的上下文中利用图形,这使您的调试和原型设计变得简单,而TensorFlow运行时则负责性能和扩展。
TensorFlow 1.x(声明性编程)中的纠缠图对许多人来说都是迷失方向,但现在急切执行(命令式编程)现在只是一个糟糕的梦想。如果你以前跳过学习,那就更好了。TF 2.0对每个人来说都是一个新的开始。
就像一个......一个......一个......
许多API下得了跨越TensorFlow巩固Keras,所以现在它更容易知道你的时候应该使用什么。例如,现在您只需要使用一组优化器和一组度量。多少套图层?你猜到了!一个!Keras风格,自然而然。
事实上,工具的整个生态系统得到了一个大扫除,从数据处理管道,以方便模型导出到TensorBoard与Keras集成,现在是一个... 一个 -liner!
还有一些很棒的工具可以让您切换和优化分发策略,实现惊人的扩展效率,而不会失去Keras的任何便利。
那些分销策略很漂亮,不是吗?
抓住了!
如果捕获不是表现,那是什么?必须有一个问题,对吧?
实际上,抓住了你的痛苦到现在为止。TensorFlow要求用户提供相当多的耐心,而友好的版本正在酝酿之中。这不是虐待狂的问题。为深度学习制作工具是一个新的领域,我们一直在绘制它。错误的转弯是不可避免的,但我们在此过程中学到了很多东西。
这不是虐待狂的问题。深度学习是一个未知的领域。
TensorFlow社区投入了大量的肘部油脂以使最初的魔法发生,然后再次努力抛光最好的宝石,同时刮掉不幸的设计。该计划永远不会强迫你永远使用草稿,但也许你习惯性地感到不舒服,你没有意识到这是暂时的。感谢您的耐心等待!
我们不放弃表现!
奖励是你所欣赏的关于TensorFlow 1.x在一致的API下友好的一切,删除了大量的重复功能,因此使用起来更清晰。即使是错误也被清理干净,简洁易懂,易于操作。强大的表现依然存在!
有什么大不了的?
仇恨(谁会讨厌)可能会说v1.0中的大部分都可以在v1.x中拼凑在一起,如果你搜索得足够多,那么有什么大惊小怪的呢?好吧,不是每个人都想花费我们的时间在杂乱的地方挖掘埋藏的宝藏。改造和清理值得起立鼓掌。但这不是最重要的事情。
不容错过的一点是:TensorFlow刚刚宣布了对可用性的不妥协关注。
这是人工智能民主化的前所未有的一步!
AI可让您自动执行无法提供相关说明的任务。它可以让你自动化不可操作的东西。民主化意味着大规模的人工智能将不再是一个小型技术精英的省份。
现在任何人都可以把手放在方向盘上!
想象一个未来,“我知道如何使用Python制作东西”和“我知道如何用AI制作东西”同样是常见的陈述......完全正确!我几乎想把这个流行语用在这里“ 破坏性 ”。
伟大的移民
我们知道升级到新版本是一项艰苦的工作,尤其是当变化如此剧烈时。如果您即将开始将代码库迁移到2.0,那么您并不孤单 - 我们将在Google上使用世界上最大的代码库之一。随着我们的进展,我们将分享迁移指南,以帮助您。
我们为您提供了很好的工具来简化您的迁移。
如果你依赖于特定的功能,你将不会陷入困境 - 除了contrib之外,所有TF 1.x功能都将存在于compat.v1兼容性模块中。我们还为您提供了一个自动更新代码的脚本,以便它在TensorFlow 2.0上运行。
你干净的石板
TF 2.0是一个初学者的天堂,所以对于那些一直期待看着新手们以你曾经遭遇过的方式受苦的人来说,这将是一个挫折。如果你希望使用TensorFlow来欺骗新兵,你可能需要寻找其他方法来造成存在恐怖。
如果你是TensorFlow的初学者,你可能会迟到AI派对,但是你的派对是时髦的。现在是到达的最佳时间!
坐在外面可能是最聪明的举动,因为现在是到达现场的最佳时机。截至2019年3月,TensorFlow 2.0以alpha版本提供(这是一个预览版,你很时髦),所以现在学习它可以让你及时准备好社区在下一季度准备好的完整版本。
TF 2.0是初学者的天堂。
经过戏剧性的变化,你不会像你想象的那样成为初学者。比赛场地得到了平整,比赛变得更加轻松,而且有一个座位可以为你保存。欢迎!我很高兴你终于到了这里,我希望你和我一样对这个新的可能世界感到兴奋。
潜入!
查看闪亮的重新设计的tensorflow.org,获取教程,示例,文档和工具,以帮助您入门......或直接进入:
pip install tensorflow == 2.0.0-alpha0
你会在这里找到详细的说明。