如何高效的学习 TensorFlow 代码?

https://www.zhihu.com/question/41667903

Linux【公共基础】:TensorFlow的主要运行平台之一就是Linux,但是正式版对Windows的支持日趋完善,真的没时间学习Linux平台可以先在Windows上运行TensorFlow。不过,学习Linux真的用不了多久(当然是指做开发环境日常日用,立志做系统管理员还是要下一番功夫的)。推荐Ubuntu 16.04 LTS,这不仅是“新手友好”的发行版,也是Google很多产品的官方支持版本,官方支持就会带来很多便捷以及少一些”坑“。LTS(长期支持版本)的加成保证了系统的稳定(稳定不仅指运行稳定,更是指软件环境,例如python不会突然默认变成3.6,gcc不会突然就默认变成6,插一句,之所以这么说,是因为以前用的是Arch,装了TensorFlow一直跑的很开心,直到有天突然发现跑不起来了,原来是Arch升级了一下Python的默认版本变成了3.6了XD。)

7. TensorFlow:

【fast peace】(偏向应用性质,到手即用,pretrained-models,tflearn,keras等):

1. TensorFlow的三份白皮书,对TensorFlow的整体有个把握或者说印象是很有必要的,对后期的“图编程”,优化,都很有启发。

2. TFLearn,基于TensorFlow的高级API,不需要了解太多细节,应用向的可以直接看这个。

【hard way】(偏向理论性质,调用基本API手写,自定义layer,自定义kernel,自定义optimizer等)

5.深度学习(Deep Learning,DL):虽然Tensorflow已经封装好了大部分DL的细节,但是如果不了解DL的相关核心概念,就会很难着手分析问题。首先强烈推荐这个教程,通读一遍,然后还有这个,可以快速浏览或者只看自己不太明白的地方,还有这个分块介绍的,还有几篇blog,这个这个讲的是卷积神经网络。图像识别用的比较多的就是卷积神经网络,这两篇可以看看。

6.Tensorflow:前面都是铺垫,是为了更好地使用Tensorflow。官方的文档不错,可以从get started然后tutorial看起,有个中文的翻译版,但是更新不及时(官方已经v1.0,这个可能是v0.8或者v0.7),可能有坑,可以和英文对照着看,还有个Tensorflow的教程,也不错。有篇FIRST CONTACT WITH TENSORFLOW也不错。

8.经典论文及书籍:收集了一些DL的经典论文&书籍,有些杂乱,不过几乎都是经典,各取所需吧。百度云地址:http://pan.baidu.com/s/1kUNdJ8N(密码: vydc)。各位有更好的欢迎推荐,我会整理上传。

9.几篇原创TF相关文章(持续更新):如何理解TensorFlow中的batch和minibatch结合TensorFlow PlayGround的简单神经网络原理解释TensorFlow从源码安装,利用TF重训练Google Inception模型在Android端使用TensorFlow

作者:黄璞 链接:https://www.zhihu.com/question/41667903/answer/109611087 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

时间: 2024-10-24 20:48:59

如何高效的学习 TensorFlow 代码?的相关文章

深度学习之卷积神经网络CNN及tensorflow代码实现示例

一.CNN的引入 在人工的全连接神经网络中,每相邻两层之间的每个神经元之间都是有边相连的.当输入层的特征维度变得很高时,这时全连接网络需要训练的参数就会增大很多,计算速度就会变得很慢,例如一张黑白的 28×28 的手写数字图片,输入层的神经元就有784个,如下图所示: 若在中间只使用一层隐藏层,参数 w 就有 784×15=11760 多个:若输入的是28×28 带有颜色的RGB格式的手写数字图片,输入神经元就有28×28×3=2352 个-- .这很容易看出使用全连接神经网络处理图像中的需要训

《神经网络与深度学习》(五) 卷积神经网络CNN及tensorflow代码实现示例

转自:http://blog.csdn.net/cxmscb/article/details/71023576 一.CNN的引入 在人工的全连接神经网络中,每相邻两层之间的每个神经元之间都是有边相连的.当输入层的特征维度变得很高时,这时全连接网络需要训练的参数就会增大很多,计算速度就会变得很慢,例如一张黑白的 28×28 的手写数字图片,输入层的神经元就有784个,如下图所示: 若在中间只使用一层隐藏层,参数 w 就有 784×15=11760 多个:若输入的是28×28 带有颜色的RGB格式的

如何高效地学习数据结构——Python篇

原文链接:http://www.datastudy.cc/to/43 我们来看看如何高效地学习一门语言的数据结构,今天我们先看Python篇. 所谓数据结构,是指相互之间存在一种或多种特定关系的数据类型的集合. Python在数据分析领域中,最常用的数据结构,莫过于DataFrame了,今天我们就介绍如何高效地学习DataFrame这种数据结构. 要学习好一种东西,最好给自己找一个目标,达到了这个目标,我们就是学好了.一般,我在学习一门新的语言的数据结构的时候,一般要求自己达到以下五个要求: 第

如何高效的学习掌握新技术

作者:宝玉链接:https://zhuanlan.zhihu.com/p/20190356来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 最近一段时间,把React学习实践了一把,算是又多掌握了一门新技术,虽然学习过程比较辛苦曲折,但熟练掌握后感觉还是很好的,以后又多了一种选择,在技术思路上也开阔了很多. 回想编程生涯这些年,2001年开始学习Asp,2002年学习Javascript,2003年学习http://Asp.Net/C#,2009年学习Objecti

深度学习TensorFlow如何使用多GPU并行模式?

TensorFlow可以用单个GPU,加速深度学习模型的训练过程,但要利用更多的GPU或者机器,需要了解如何并行化地训练深度学习模型. 常用的并行化深度学习模型训练方式有两种:同步模式和异步模式. 下面将介绍这两种模式的工作方式及其优劣. 如下图,深度学习模型的训练是一个迭代的过程. 在每一轮迭代中,前向传播算法会根据当前参数的取值,计算出在一小部分训练数据上的预测值,然后反向传播算法,再根据损失函数计算参数的梯度并更新参数. 异步模式的训练流程图 在并行化地训练深度学习模型时,不同设备(GPU

ViewModel 实践:高效简单地组织代码

转载自:http://www.cocoachina.com/ios/20150714/12447.html 文/某鸟 前言 不知不觉,笔者也撸码也已经一年多了.随着撸码的数量疾速上涨,如何高效,简单的组织代码,经常引起笔者的思考.作为一个方法论及其实践者(这个定义是笔者自己胡诌的),始终希望能够找到一些简单.有效的方法来解决问题,由此,也开始了一段构建代码的实践体验. 这次要分享的,是自己在长期实践 MVVM 结构后,对 MVVM 框架的一些理解与自己的工作流程.其中或许还有一些地方拿捏欠妥,希

如何高效的学习python

如何高效的学习python 假设到目前为止你已经知道Python或有一些学习它的方法,但是如果你喜欢我发现的不用几个月的时间就能迅速掌握其要领的学习语言的方法,那么这篇文章是为你准备的. 要避免的学习错误,在你的编程生涯中有一个技能比其他更重要.它就是,高效学习的能力.如果你掌握了这个本领,必将前程似锦,而且受到他人的敬仰.如John Sonmez所说, 至少有5种我们犯的错误会影响高效学习.我完全同意他的看法. 它们是: 1.一本书从头看到底,一页不漏: 这样不好因为我们只会记住我们读过的一小

如何高效的学习一门技术

高效学习 高效的学习技术 这个技术出现的背景,初衷和要达到什么样的目标或者要解决什么样的问题. 学习一个技术,知道这个技术的成因和目标,也就是这个技术的灵魂. 这个技术的优势和劣势分别是什么,这个技术的trade-off是什么. 任何一个技术都有其好坏,解决一个问题的时候会带来另一个问题,所以要清楚这个技术的优势和劣势,带来的挑战. 这个技术的试用场景. 学习一个技术不但知道这个技术是什么,还要知道这个技术的适用场景,这个技术可能有很多的槽 点,场景:主要从业务场景和技术场景来考虑 技术的组成部

Ajax入门学习原始代码

<script type="text/javascript">        window.onload = function () {            //1.创建xmlhttprequest对象            var xhr = createXHR();            function createXHR() {//为了兼容新老IE的版本                var request;                if (typeof(X