没有合适的资源?快使用搜索试试~ 我知道了~
从框架优缺点说起,这是一份TensorFlow入门极简教程.pdf
1 下载量 18 浏览量
2024-03-01
18:45:04
上传
评论
收藏 1.44MB PDF 举报
温馨提示
试读
15页
TensorFlow是一个开源的机器学习框架,由Google开发并维护。它提供了丰富的工具和库,用于构建和训练各种机器学习模型。下面是学习TensorFlow的一些建议: 1. 学习基础知识:在开始学习TensorFlow之前,建议先掌握Python编程语言和基本的机器学习概念。了解线性代数、概率统计和微积分等数学基础也会对理解TensorFlow有所帮助。 2. 官方文档和教程:TensorFlow官方网站提供了详细的文档和教程,包括入门指南、API文档、示例代码等。可以从官方文档开始,逐步学习TensorFlow的各个方面。 3. 在线课程和教程:有很多在线课程和教程可以帮助你学习TensorFlow。例如,Coursera上有由Andrew Ng教授主讲的《深度学习专项课程》和《TensorFlow for Deep Learning》等课程。此外,还有一些免费的教程和博客文章可以供参考。 4. 实践项目:通过实践项目来应用所学的知识是学习TensorFlow的重要部分。可以尝试使用TensorFlow构建和训练简单的机器学习模型,如线性回归、逻辑回归等。随着经验的积累,
资源推荐
资源详情
资源评论
从框架优缺点说起,这是一份TensorFlow入门极简教程
随着 TensorFlow 在研究及产品中的应用日益广泛,很多开发者及研究者都希望能深入学习这一
深度学习框架。而在昨天机器之心发起的框架投票中,2144 位参与者中有 1441 位都在使用
TensorFlow 框架,是所有框架中使用率最高的。但 TensorFlow 这种静态计算图有一定的学习
成本,因此也阻挡了很多准备入坑的初学者。本文介绍了学习 TensorFlow 的系列教程,旨在通
过简单的理论与实践帮助初学者一步步掌握 TensorFlow 的编程技巧。
这一系列教程分为 6 部分,从为什么选择 TensorFlow 到卷积神经网络的实现,介绍了初学者所需
要的技能。机器之心在本文介绍了 PyTorch 和 Caffe 等深度学习框架的优缺点及 TensorFlow 基
础,包括静态计算图、张量、TensorBoard 可视化和模型参数的保存等。
教程地址:http://www.easy-tensorflow.com
机器之心此前也介绍过很多 TensorFlow 的学习资源,读者可结合这些资源阅读该系列教程:
学习了!谷歌今日上线基于 TensorFlow 的机器学习速成课程(中文版)
机器之心 GitHub 项目:从零开始用 TensorFlow 搭建卷积神经网络
教程 | 从零开始:TensorFlow 机器学习模型快速部署指南
分布式 TensorFlow 入坑指南:从实例到代码带你玩转多机器深度学习
三天速成!香港科技大学 TensorFlow 课件分享
TensorFlow 从基础到实战:一步步教你创建交通标志分类神经网络
为什么选择 TensorFlow?
在 本 文 中 , 我 们 将 对 比 当 前 最 流 行 的 深 度 学 习 框 架 ( 包 括 Caffe 、 Theano 、 PyTorch 、
TensorFlow 和 Keras),帮助你为应用选择最合适的框架。
1. Caffe:第一个主流产品级深度学习库,于 2014 年由 UC Berkeley 启动。
优点:
快速
支持 GPU
漂亮的 Matlab 和 Python 接口
缺点:
不灵活。在 Caffe 中,每个节点被当做一个层,因此如果你想要一种新的层类型,你需要定
义完整的前向、后向和梯度更新过程。这些层是网络的构建模块,你需要在无穷无尽的列表中
进行选择。(相反,在 TensorFlow 中,每个节点被当做一个张量运算例如矩阵相加、相乘
或卷积。你可以轻易地定义一个层作为这些运算的组合。因此 TensorFlow 的构建模块更小
巧,允许更灵活的模块化。)
需要大量的非必要冗长代码。如果你希望同时支持 CPU 和 GPU,你需要为每一个实现额外
的函数。你还需要使用普通的文本编辑器来定义你的模型。真令人头疼!几乎每个人都希望程
序化地定义模型,因为这有利于不同组件之间的模块化。有趣的是,Caffe 的主要架构师现在
在 TensorFlow 团队工作。
专一性。仅定位在计算机视觉(但做得很不错)。
不是以 Python 编写!如果你希望引入新的变动,你需要在 C++和 CUDA 上编程(对于更
小的变动,你可以使用它的 Python 和 Matlab 接口)。
糟糕的文档。
安装比较困难!有大量的依赖包。
只 有 少 量 种 类 的 输 入 格 式 , 仅 有 一 种 输 出 格 式 HDF5 ( 虽 然 你 总 是 可 以 使 用 它 的
Python/C++/Matlab 接口来运行,并从中得到输出数据)。
不适用于构建循环网络。
2. Theano : 由 蒙 特 利 尔 大 学 研 究 团 队 构 建 。 Theano 的 顶 层 构 建 了 数 值 开 源 深 度 库 , 包 括
Keras、Lasagne 和 Blocks。Yoshua Bengio 在 2017 年 9 月 28 日宣布,Theano 的开发将终
止。因此实际上 Theano 已死!
优点:
计算图的抽象很漂亮(可媲美 TensorFlow)
为 CPU 和 GPU 都做了优化
很好地适应数值优化任务
高级封装(Keras、Lasagne)
缺点:
原始的 Theano 只有比较低级的 API
import numpy
for _ in range(T):
h = torch.matmul(W, h) + b
大型模型可能需要很长的编译时间
不支持多 GPU
错误信息可能没有帮助(有时候令人懊恼)
3. Pytorch:2017 年 1 月,Facebook 将 Python 版本的 Torch 库(用 Lua 编写)开源。
优点:
提供动态计算图(意味着图是在运行时生成的),允许你处理可变长度的输入和输出,例如,
在使用 RNN 时非常有用。
另一个例子是,在 PyTorch 中,可以使用标准 Python 语法编写 for 循环语句。
大量预训练模型
大量易于组合的模块化组件
易于编写自己的图层类型,易于在 GPU 上运行
「TensorBoard」缺少一些关键功能时,「Losswise」可以作为 Pytorch 的替代品
缺点:
正式文档以外的参考资料/资源有限
无商业支持
4. TensorFlow: 由较低级别的符号计算库(如 Theano)与较高级别的网络规范库(如 Blocks 和
Lasagne)组合而成。
优点:
由谷歌开发、维护,因此可以保障支持、开发的持续性。
巨大、活跃的社区
网络训练的低级、高级接口
「TensorBoard」是一款强大的可视化套件,旨在跟踪网络拓扑和性能,使调试更加简单。
用 Python 编写(尽管某些对性能有重要影响的部分是用 C++实现的),这是一种颇具可读
性的开发语言
支持多 GPU。因此可以在不同的计算机上自由运行代码,而不必停止或重新启动程序
比基于 Theano 的选项更快的模型编译
编译时间比 Theano 短
TensorFlow 不仅支持深度学习,还有支持强化学习和其他算法的工具。
缺点:
剩余14页未读,继续阅读
资源评论
阿拉伯梳子
- 粉丝: 1165
- 资源: 5391
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功