为了支持该项目的维护和升级,请考虑赞助项目开发者。
任何级别的支持都是巨大的贡献❤️
该存储库旨在为 TensorFlow 提供简单且即用的教程。相关解释位于与此存储库相关的 wiki 中。
每个教程都包含source code
和相关documentation
。
动机
为什么使用 TensorFlow?
这个存储库有什么意义?
TensorFlow安装和环境设置
TensorFlow 教程
热身
基础知识
基础机器学习
神经网络
一些有用的教程
贡献
拉取请求流程
最后说明
致谢
这个开源项目有不同的动机。 TensorFlow(正如我们撰写本文档时)是可用的最好的深度学习框架之一。应该问的问题是,当网络上有这么多关于 TensorFlow 的其他教程时,为什么还要创建这个存储库?
如今,深度学习引起了人们的高度关注——迫切需要快速、优化地实现算法和架构。 TensorFlow 旨在促进这一目标。
TensorFlow 的强大优势在于它可以灵活地设计高度模块化的模型,但这对于初学者来说也可能是一个缺点,因为在创建模型时必须同时考虑很多部分。
通过开发高级 API(例如 Keras 和 Slim)也可以解决这个问题,这些 API 抽象了设计机器学习算法时使用的许多部分。
TensorFlow 的有趣之处在于,如今它随处可见。许多研究人员和开发人员正在使用它,并且它的社区正在以光速增长!很多问题都可以轻松处理,因为考虑到 TensorFlow 社区中有大量人员参与,这些问题通常与许多其他人遇到的问题相同。
为了开发某些东西而开发开源项目并不是这种努力背后的原因。考虑到这个大型社区中添加了大量教程,创建此存储库是为了打破大多数开源项目通常发生的跳入和跳出过程,但为什么以及如何呢?
首先,在大多数人都不会停下来看看的事情上投入精力有什么意义呢?创建对开发人员和研究人员社区中的任何人都没有帮助的东西有什么意义呢?为什么要把时间花在容易忘记的事情上呢?但我们如何尝试去做呢?即使到目前为止,关于 TensorFlow 的教程也数不胜数,无论是模型设计还是 TensorFlow 工作流程。
其中大多数过于复杂或缺乏文档。只有少数可用的教程简洁且结构良好,并为其具体实现的模型提供了足够的见解。
该项目的目标是通过结构化教程和简单优化的代码实现帮助社区更好地了解如何快速有效地使用 TensorFlow。
值得注意的是,该项目的主要目标是提供文档齐全的教程和不太复杂的代码!
要安装 TensorFlow,请参阅以下链接:
TensorFlow安装
推荐使用虚拟环境安装,以避免包冲突,并具有自定义工作环境的能力。
该存储库中的教程分为相关类别。
# | 话题 | 源代码 | |
---|---|---|---|
1 | 启动 | 欢迎 / IPython | 文档 |
# | 话题 | 源代码 | |
---|---|---|---|
2 | 张量流基础知识 | 基本数学运算/IPython | 文档 |
3 | 张量流基础知识 | TensorFlow 变量/IPython | 文档 |
# | 话题 | 源代码 | |
---|---|---|---|
4 | 线性模型 | 线性回归/IPython | 文档 |
5 | 预测模型 | 逻辑回归/IPython | 文档 |
6 | 支持向量机 | 线性支持向量机 / IPython | |
7 | 支持向量机 | 多类内核 SVM / IPython |
# | 话题 | 源代码 | |
---|---|---|---|
8 | 多层感知器 | 简单多层感知器/IPython | |
9 | 卷积神经网络 | 简单的卷积神经网络 | 文档 |
10 | 自动编码器 | 不完整的自动编码器 | 文档 |
11 | 循环神经网络 | RNN / IPython |
TensorFlow Examples - 适合初学者的 TensorFlow 教程和代码示例
Sungjoon 的 TensorFlow-101 - 使用 Jupyter Notebook 用 Python 编写的 TensorFlow 教程
Terry Um 的 TensorFlow 练习 - 重新创建其他 TensorFlow 示例的代码
时间序列分类 - 使用 LSTM 在 TensorFlow 中对手机传感器数据进行循环神经网络分类
向此存储库做出贡献时,请首先通过问题、电子邮件或任何其他方法与此存储库的所有者讨论您希望进行的更改,然后再进行更改。对于拼写错误,请不要创建拉取请求。相反,请在问题中声明它们或向存储库所有者发送电子邮件。
请注意,我们有行为准则,请在与项目的所有互动中遵循该准则。
请考虑以下标准,以便更好地帮助我们:
拉取请求主要期望是代码脚本建议或改进。
与非代码脚本部分相关的拉取请求预计会对文档产生重大影响。否则,预计将在问题部分公布。
确保在执行构建和创建拉取请求时在该层结束之前删除所有安装或构建依赖项。
添加包含界面更改详细信息的注释,其中包括新的环境变量、公开的端口、有用的文件位置和容器参数。
一旦您获得至少一位其他开发人员的签署,您就可以合并拉取请求,或者如果您没有这样做的权限,如果您认为所有检查都已通过,您可以请求所有者为您合并它。
我们期待您的反馈。请帮助我们改进这个开源项目,让我们的工作做得更好。如需贡献,请创建拉取请求,我们将立即进行调查。我们再次感谢您的友好反馈和详细的代码检查。
我在这个项目中付出了巨大的努力,希望成为 TensorFlow 世界的一小部分。然而,如果没有我的朋友兼同事多梅尼克·波斯特(Domenick Poster)的宝贵建议的支持和帮助,这一切都是不可能实现的。他帮助我更好地了解了 TensorFlow,我特别感谢他。