作者:Cassie Kozyrkov
机器之心编译
参与:高璇、路
谷歌开发技术推广工程师 Laurence Moroney 在 Google Cloud Next 大会上进行了一段 42 分钟的演讲,主题是「What's New with TensorFlow?」。本文作者 Cassie Kozyrkov 对该演讲进行了总结,概括出关于 TensorFlow 的九件事。机器之心对本文进行了编译介绍,希望对大家有所帮助。
1:TensorFlow 是一个强大的机器学习框架
TensorFlow 是一个机器学习框架,如果你有大量的数据,或者你在追求人工智能最先进的技术:深度学习、神经网络等,它都会使你如虎添翼。它可不是数据科学界的瑞士军刀,而是工业车床!如果你想做的只是通过 20×2 的电子表格绘制一条回归线,那你可以停止阅读本文了。
但如果你追求的是更大的目标,那就嗨起来吧~TensorFlow 被用于寻找新的行星,协助医生检查糖尿病性视网膜病变来预防患者失明,向当局报告非法砍伐行为来拯救森林。它是 AlphaGo 和 Google Cloud Vision 的基础,也会是属于你的。TensorFlow 是开源的,你可以免费下载并立即开始使用。
- TensorFlow 下载地址:https://www.tensorflow.org/install/
- TensorFlow 初始教程:https://www.datacamp.com/community/tutorials/tensorflow-tutorial
在 TensorFlow 的帮助下发现的开普勒-90i 行星使开普勒-90 星系成为我们所知的唯一的另一个八颗行星绕一颗恒星运行的星系。目前还没有发现有超过八颗行星的星系,所以我想这意味着太阳系与开普勒-90 星系并列第一(目前)。
2:一个神奇操作
TensorFlow Eager 让我高枕无忧。
如果你之前尝试过 TensorFlow,但因为它使你像老学究或外星人(而不是开发者)一样编代码而疯掉,现在抓紧回来啊啊啊啊!!
TensorFlow 的 eager execution 让你像纯 Python 程序员一样进行交互:即时编写和即时逐行调试,而不是在构建那些庞大图表时还得屏住呼吸。我自己也是一个正在恢复正常的「学究」(很可能是外星人),但是自从它出现我就爱上了 TF 的 eager execution。强烈安利!
3:逐行构建神经网络
Keras + TensorFlow = 更容易的神经网络构建!
Keras 致力于用户友好性和简单的原型设计,这是之前的 TensorFlow 所渴望的。如果你喜欢面向对象的思维,喜欢一次构建一层神经网络,你会喜欢 tf.keras。在下面几行代码中,我们创建了一个序列神经网络(sequential neural network),其具备标准的附属组件,如 dropout。
4:不仅是 Python
你们抱怨 TensorFlow 只适用于 Python 已经有一段时间了。现在 TensorFlow 不再是 Python 使用者的专利了。现在它可以在很多语言中运行,R、Swift 以及 Java Script 等等。
5 你可以在浏览器中做任何事
说到 JavaScript,你可以使用 TensorFlow.js 在浏览器中训练和执行模型。到这里尝试一些超酷的案例吧:https://js.tensorflow.org/~
使用 TensorFlow.js 在浏览器中执行实时人体姿态估计。打开你的相机试一下?https://storage.googleapis.com/tfjs-models/demos/posenet/camera.html。
6: 针对小型设备的精简版
从博物馆买了个旧桌子?烤面包机?TensorFlow Lite 使得在移动设备和物联网设备等多种设备上执行模型成为可能,其推理速度是原始 TensorFlow 的 3 倍还多。现在你可以在树莓派或手机上进行机器学习了。在该演讲中,Laurence 做了一件勇敢的事情,在数千人面前用一个 Android 模拟器实时演示图像分类……并且成功了。
1.6 秒计算时间?是的!香蕉识别率超过 97%?是的!
7:专用硬件更强劲
如果你已经厌倦了在训练神经网络过程中需要等待 CPU 完成数据处理,那么现在你可以使用专门为 Cloud TPU 设计的硬件,T 即 tensor。就像 TensorFlow……巧合吗?我认为不是!不久前,谷歌在 alpha 版中发布了第三版 TPU。
8:新的数据工作流得到很大改进
你用 NumPy 做的是什么?如果你想在 TensorFlow 中执行同样的操作,但是却「怒退」(rage-quit),则 tf.data 命名空间可以帮助 TensorFlow 中的输入处理更具表达能力、更高效。tf.data 为你提供与训练同步的快速、灵活且易于使用的数据工作流。
9:你不需要从零开始
你知道开始机器学习最可怕的是什么吗?编辑器中有一个空白的新页面,并且没有大量的示例代码。有了 TensorFlow Hub,你就可以更高效地执行由来已久的传统,即自己编写别人的代码,并将其称为自己的代码(这也称为专业软件工程)。
TensorFlow Hub 是一个可重复使用的预训练机器学习模型组件 repo,它的封装和使用都非常精简。你可以自己试一下!
- TensorFlow 官方 YouTube 频道:https://www.youtube.com/channel/UC0rqucBdTuFTjJiefW5t-IQ
- 博客:https://medium.com/tensorflow
原文链接:https://hackernoon.com/9-things-you-should-know-about-tensorflow-9cf0a05e4995
【本文是51CTO专栏机构“机器之心”的原创文章,微信公众号“机器之心( id: almosthuman2014)”】