电子说
1、TensorFlow的演进历史
2011年Google开发了它的第一代分布式机器学习系统DistBelief,著名计算机科学家杰夫·迪恩(Jeff Dean)和深度学习专家吴恩达(Andrew )都是这个项目成员。升级版的DistBelief就是大家熟悉的TenorsFlow,2015年11月发布了0.1版本,并正式开源;2017年2月发布1.0版本,是当时应用最普遍的深度学习框架;2019年春发布2.0版本,在易用性上做了很大提升;现在TensorFlow官网已经Release了V 2.11。TensorFlow有几大优势。
首先,它出身好。
出身在谷歌这个大户人家,基础是Google自用的分布式机器学习系统DistBelief,而作为DistBelief的继承者,TensorFlow更快、更灵活、具有更强的适用性,也被誉为是谷歌“AI First”转型重要支点之一。
开发团队能力卓越。
Google的技术能力不用再说了,这个项目中的成员吴恩达(Andrew )和杰夫·迪恩(Jeff Dean)都是AI领域响当当的名人。这里重点介绍一下Jeff Dean,他在硅谷就是传奇,美国工程院院士,2021年IEEE冯诺依曼奖获得者(获奖理由是“以表彰对大规模分布式计算机系统和人工智能系统科学与工程的贡献”)。Jeff在1999年加入谷歌,是谷歌的第20号员工,谷歌大脑、开源框架TensorFlow、谷歌广告系统、谷歌搜索系统等关键技术的重要创始人之一,现在是谷歌AI掌门人。
Jeff Dean实在太过强大,传说硅谷的工程师们编出了不少关于他有多牛的段子。比如,“All pointers point to Jeff Dean”(所有指针都是指向Jeff的),“Compilers don't warn Jeff Dean. Jeff Dean warns compilers.”(编译器从来不给Jeff编译警告,而是Jeff警告编译器),“Jeff Dean's keyboard has two keys: 1 and 0.”(Jeff的键盘只有两个键:1和0)。
产品不断迭代,持续进步。
Tensorflow这个平台有许多更新和版本,一直在不断满足开发者不断增长的需求,列举这些年来的一些主要发展
推出TPU专用芯片,夯实硬件底座:Google在2015年开始使用张量处理单元TPU,2017年发布第二代,在2018年发布第三代,2021年发布第四代。TPU作为专用人工智能加速处理器就是使用TensorFlow开发,2018年,Google宣布TPU它的云平台上进行beta测试。
应用范围扩展,支持移动和物联网设备:2017年发布TensorFlow Lite用于移动和物联设备上部署ML模型,在图像分类、物体分类等方面都有应用。
集成的模块和工具不断改进,提升易用性:如推出TensorFlow Extended (TFX),用于部署生产ML管道的端到端平台,帮助用户完成从研究到生产的阶段的转换。又如TensorFlow.js,一个用JavaScript开发模型的ML库,可以直接在浏览器或Node.js中使用ML,开发人员可以使用灵活的API直接在JavaScript中构建和训练模型。
大版本持续升级,提升易用性:"TensorFlow 2.0 is coming"就是直接面对越来越受欢迎的PyTorch的激烈竞争,TensorFlow于2019年9月发布了TensorFlow 2.0版本,针对1.0版本调试困难、API混乱、入门困难、代码晦涩等问题进行了重大升级,2.0版本拥有简单直观的API和更好的资源文档,这个版本中TensorFlow基于语义版本将平台模块化。同时,官方提供了TensorFlow 1.x升级到2.0的迁移指南,还有一个自动转换的脚本。
2、TensorFlow 2.0.0版本中最重要的变化点之一 - Keras
在TensorFlow官网上2.0.0版本Release中Highlights了Keras,说明如下,“TF2.0 delivers Keras as the central high level API used to build and train models. Keras provides several model-building APIs such as Sequential, Functional, and Subclassing along with eager execution, for immediate iteration and intuitive debugging”。如前文讨论TensorFlow2.0版本升级的核心目标是使TensorFlow更易于使用,更易于学习,同时也是应对Pytroch等“好用”的开源框架的竞争,而Keras就是2.0版本最重要的改进点。
Keras的主要开发者是Google的工程师François Chollet(也是一位大牛),这是一个由Python编写的开源人工神经网络库,可作为TensorFlow、Microsoft CNTK、Amazon MxNet等的高阶应用程序接口,进行深度学习模型的设计、调试、应用和可视化。Keras在代码结构上由面向对象方法编写,完全模块化并具有可扩展性,其运行机制和说明文档有将用户体验和使用难度纳入考虑,努力简化复杂算法的实现难度 。Keras支持现今人工智能领域的主流算法,包括CNN和RNN等。硬件和开发环境方面,Keras支持多操作系统、支持多GPU并行计算,可根据后台设置转化为Tensorflow、CNTK等系统下的组件 。
在2.0版本Keras这中优美的API与TensorFlow紧密集成,官方表示,对开发者来说TensorFlow 2.0用起来跟Python差不多。
3、TensorFlow里包含了哪些内容?
(1) 总览:进入TenorFlow的官网(https://www.tensorflow.org)
我们可以理解为 ①Install环境 + ② TensorFlows生态内容 + ③ GitHub库
(2)如今,TensorFlow 2.x是一个丰富的学习生态系统,除了核心学习引擎外,这里还有大量可免费使用的工具,我们展开盘点一下它包含哪些内容
TensorFlow.js:一个API的集合,可直接在浏览器或Node.js中训练和部署机器学习模型。
TensorFlow Datasets:TensorFlow中包含的官方数据集。此外,还有可通过Google Research和Google支持的数据集搜索免费获得的数据集。
TensorFlow Hub:包含经过训练的机器学习模型的代码库,这些模型(如Bert,Fast R-CNN)稍作调整便可以部署到任何设备上。
TensorFlow Extended:也被称作TFX,完整的端到端平台,含转换工具(Transform)、分析工具(Model Analysis)和服务系统(TensorFlow Serving)。
TensorFlow Lite:用于嵌入式和移动设备的TensorFlow的轻量级版本,支持应用在Android和iOS上。
TensorBoard:用于检查、调试和优化模型及指标的可视化环境。
TensorBoard Federated:在去中心化数据上使用机器学习和其他计算工作的框架。
TensorBoard Probability:将概率模型与深度学习相结合的框架。
TensorBoard Playground:用于可视化、调试和检查神经网络的UI,常用于教育教学。
Accelerated Linear Algebra:线性代数的特定领域编译器,可优化TensorFlow计算,也被称作XLA。
MLPerf:是ML基准套件,用于测量ML软件框架、ML硬件加速器和ML云平台的性能。
4、TensorFlow安装 (1)基础环境
Ubuntu 16.04 或更高版本
Windows 7 或更高版本(含 C++ 可再发行软件包)
macOS 10.12.6 (Sierra) 或更高版本(不支持 GPU)
(2)安装Python:安装3.6及以上的版本(官网要求),Windows系统可以在 Python Releases for Windows | Python.org下载后安装。
(3)下载并安装TensorFlow(以windows环境举例)
安装并确认pip版本:
【1】右键点击桌面左下角的开始图标,然后选择运行,在弹出的窗口中输入cmd,然后点击确定;
【2】安装高于20.3的pip版本(参考以下操作)
C:Program FilesPython310>pip install --upgrade pip //requries the latest pip C:UsersKlinsmann>python -m pip list //check pip version Package Version ---------------------------- --------- pip 22.3.1
安装TensorFlow:
【3】使用pip install tensorflow在系统下安装并校验版本
C:Program FilesPython310>pip install tensorflow C:Program FilesPython310>python -m pip list Package Version ------------------------------------- tensorflow 2.11.0
导入并校验是否安装成功:
【4】输入python,按下回车键进入python解释器,输入import pandas导入这个库,报错的话就说明安装成功了
C:UsersKlinsmann>python >>> import tensorflow说明:更多TensorFlow安装选项可参考 https://www.tensorflow.org/install
import tensorflow as tf print(tf.reduce_sum(tf.random.normal([1000, 1000])))
系统返回了 “tf.Tensor(-1061.2717, shape=(), dtype=float32)”,证明我们安装成功了,一个Tensor生成了。
审核编辑:刘清
全部0条评论
快来发表一下你的评论吧 !