首页
学习
活动
专区
工具
TVP
发布

TensorFlow从0到N + Rust

专栏作者
55
文章
59458
阅读量
35
订阅数
TensorFlow从0到1 - 0 - 前言
我是黑猿大叔,转战AI的大叔程序猿,你好。 版权所有 我以官方文档为主线,开始对TensorFlow的学习。这期间会把我的理解进行持续的输出,作为《TensorFlow从0到1》系列。它不会止于翻译和
袁承兴
2018-04-11
1.1K0
TensorFlow从0到1 - 3 - 人类学习的启示
机器学习 上一篇TensorFlow的内核基础介绍了TF Core中的基本构造块,在介绍其强大的API之前,我们需要先明了TF所要解决的核心问题:机器学习。 什么是机器学习? 人类的学习 美索不达米亚
袁承兴
2018-04-11
7270
TensorFlow从0到1 - 2 - TensorFlow核心编程
上一篇Hello, TensorFlow!中的代码还未解释,本篇介绍TensorFlow核心编程的几个基本概念后,那些Python代码就很容易理解了。 与TensorFlow核心(Core)相对的是T
袁承兴
2018-04-11
7840
TensorFlow从0到1 - 1 - Hello, TensorFlow!
在学习任何新的编程语言时,我们都会在第一时间完成Hello World,以宣告自己开发环境的完美搭建。TensorFlow也不例外。TensorFlow充分考虑了各种软/硬件平台上的安装,本篇记录了在
袁承兴
2018-04-11
8910
TensorFlow从0到1 - 6 - 解锁梯度下降算法
上一篇 5 TF轻松搞定线性回归,我们知道了模型参数训练的方向是由梯度下降算法指导的,并使用TF的封装tf.train.GradientDescentOptimizer(0.01)(学习率为0.01)
袁承兴
2018-04-11
9480
TensorFlow从0到1 - 5 - TensorFlow轻松搞定线性回归
上一篇 第一个机器学习问题 其实是一个线性回归问题(Linear Regression),呈现了用数据来训练模型的具体方式。本篇从平行世界返回,利用TensorFlow,重新解决一遍该问题。 TensorFlow的API有低级和高级之分。 底层的API基于TensorFlow内核,它主要用于研究或需要对模型进行完全控制的场合。如果你想使用TF来辅助实现某个特定算法、呈现和控制算法的每个细节,那么就该使用低级的API。 高级API基于TensorFlow内核构建,屏蔽了繁杂的细节,适合大多数场景下使用。如果
袁承兴
2018-04-11
1.1K0
TensorFlow从0到1 - 9 “驱魔”之反向传播大法
创世纪 2:7: “耶和华神用地上的尘土造人,将生气吹在他鼻孔里,他就成了有灵的活人。” 上一篇8 万能函数的形态:人工神经网络解封了人工神经网络,如果用非常简短的语言来概括它,我更喜欢维基百科的诠释: 人工神经网络是一种模仿生物神经网络(动物的中枢神经系统,特别是大脑)的结构和功能的数学模型或计算模型,用于对函数进行估计或近似。神经网络由大量的人工神经元联结进行计算。大多数情况下人工神经网络能在外界信息的基础上改变内部结构,是一种自适应系统。 就这样,人类照着上帝创造生灵万物的手法,居然也徒
袁承兴
2018-04-11
8000
TensorFlow从0到1 - 10 - NN基本功:反向传播的推导
上一篇 9 “驱魔”之反向传播大法引出了反向传播算法——神经网络的引擎,并在最后窥探了它的全貌。本篇将详细的讨论反向传播各方面的细节。尽管它被TensorFlow封装的很好,但仍强烈建议把它作为人工神经网络的基本功,理解并掌握它,回报巨大。 《Neural Network and Deep Learning》的作者Nielsen写道: It actually gives us detailed insights into how changing the weights and biases chang
袁承兴
2018-04-11
1.1K0
TensorFlow从0到1 - 12 - TensorFlow构建3层NN玩转MNIST
上一篇 11 74行Python实现手写体数字识别展示了74行Python代码完成MNIST手写体数字识别,识别率轻松达到95%。这算不上一个好成绩,不过我并不打算立即着手改善它,而是回到本系列的主线上来,用TensorFlow重新实现一遍完全相同的算法。 TF官方的Get Started中,关于MNIST准备了Beginner和Expert两个版本的实现。前者与其说是一个两层的神经网络,不如说是一种线性判别,后者则实现了CNN。两者之间差了一个经典的3层全连接NN,本篇补上。 最终基于TF的代码只有43
袁承兴
2018-04-11
1K0
TensorFlow从0到1 - 8 - 万能函数的形态:人工神经网络
之前花了不小的篇幅来解释线性回归,尽管线性模型本身十分简单,但是确定模型参数的过程,却是一种数据驱动的、自学习的通用方式。准确的说,这个过程,是基于数据的、运用梯度下降算法来优化模型(减小损失)的算法框架。无论模型变得多复杂(多维、高阶),理论上我们都可以利用这个算法过程拟合模型。 似乎当有了数据就有了一切,但是这其中隐藏着一个假设:要事先知道模型的函数形式。 在复杂的现实问题面前,这个假设注定是毫无用处的。如果要对手写体数字进行分类,那么这个模型是几元的?几次的?包含多少项?不知道。这个时候,仅有大量的
袁承兴
2018-04-11
7290
TensorFlow从0到1 - 4 - 第一个机器学习问题
上一篇 3 机器人类学习的启示借鉴人类学习的模式,描绘了数据驱动的机器学习方法论:通过大量数据来确定模型,从而让模型具有预测价值。本篇提出第一个机器学习问题,进一步看清楚机器学习的具体形式。 平行世界 在宇宙的一个平行世界中,天空是平面的,人们只能看到位于第一象限的星星。他们发现天上最亮的那颗星在缓慢的移动,于是收集了近千年以来所有天文学家的观测数据,共得到4次观测记载: 2200年,(22, 18) 2500年,(25, 15) 2800年,(28, 12) 3000年,(30, 10) 由于这颗星的意
袁承兴
2018-04-11
8710
TensorFlow从0到1 - 11 - 74行Python实现手写体数字识别
到目前为止,我们已经研究了梯度下降算法、人工神经网络以及反向传播算法,他们各自肩负重任: 梯度下降算法:机器自学习的算法框架; 人工神经网络:“万能函数”的形式表达; 反向传播算法:计算人工神经网络梯度下降的高效方法; 基于它们,我们已经具备了构建具有相当实用性的智能程序的核心知识。它们来之不易,从上世纪40年代人工神经元问世,到80年代末反向传播算法被重新应用,历经了近半个世纪。然而,实现它们并进行复杂的手写体数字识别任务,只需要74行Python代码(忽略空行和注释)。要知道如果采用编程的方法(非学习
袁承兴
2018-04-11
1.7K0
TensorFlow从0到1 - 7 - TensorFlow线性回归的参数溢出之坑
上一篇 6 解锁梯度下降算法解释清楚了学习率(learning rate)。本篇基于对梯度下降算法和学习率的理解,去填下之前在线性回归中发现的一个坑。 在5 TF轻松搞定线性回归中提到,只要把TF官方
袁承兴
2018-04-11
6940
TensorFlow从0到1 - 19 - 回顾
see you soon 《TensorFlow从0到1》就要结束了。 3条主线 这个部分共包含18篇文章,4万余字(简书的严格统计不到4万)。总的来说,它无外乎两方面内容:人工神经网络,及其TensorFlow实现。稍细分的话,有3条主线。 主线1:神经网络理论基础: 3 人类学习的启示 4 第一个机器学习问题 6 解锁梯度下降算法 8 万能函数的形态 9 “驱魔”之反向传播大法 10 NN基本功:反向传播的推导 主线2:TensorFlow入门: 1 Hello,TensorFlow! 2 Tens
袁承兴
2018-04-11
6900
TensorFlow从0到1 - 18 - TensorFlow 1.3.0安装手记
《TensorFlow从0到1》写到现在,TensorFlow的版本也从当时的1.1.0迭代到了8月初发布的1.3.0。可以预见在未来很长一段时间里,它仍会持续快速的迭代更新。 除了考虑与最新版Ten
袁承兴
2018-04-11
8540
TensorFlow从0到1 - 16 - L2正则化对抗“过拟合”
前面的14 交叉熵损失函数——防止学习缓慢和15 重新思考神经网络初始化从学习缓慢问题入手,尝试改进神经网络的学习。本篇讨论过拟合问题,并引入与之相对的L2正则化(Regularization)方法。
袁承兴
2018-04-11
1.3K0
TensorFlow从0到1 - 15 - 重新思考神经网络初始化
上一篇14 交叉熵损失函数——克服学习缓慢从最优化算法层面入手,将二次的均方误差(MSE)更换为交叉熵作为损失函数,避免了当出现“严重错误”时导致的学习缓慢。 本篇引入1/sqrt(nin)权重初始化方法,从另一个层面——参数初始化(神经网络调教的5个层面归纳在13 AI驯兽师:神经网络调教综述)入手改善网络的学习速度。 相比之前采用的标准正态分布初始化,1/sqrt(nin)权重初始化不仅明显的加快了学习速度,而且单纯性(其他任何参数不变)的提升了测试集识别精度1~2个百分点。 理解了1/sqrt(ni
袁承兴
2018-04-11
1.1K0
TensorFlow从0到1 - 13 - AI驯兽师:神经网络调教综述
在未来的AI时代,“手工程序”将变得越发稀有,而基于通用AI程序,通过大数据“习得”而生的程序,会无所不在。到那时,程序员将光荣卸任,取而代之的是一个新职业物种:他们无需像程序员那样了解所有细节,而是
袁承兴
2018-04-11
1.2K0
TensorFlow从0到1 - 14 - 交叉熵损失函数——防止学习缓慢
通过上一篇 13 驯兽师:神经网络调教综述,对神经网络的调教有了一个整体印象,本篇从学习缓慢这一常见问题入手,引入交叉熵损失函数,并分析它是如何克服学习缓慢问题。 学习缓慢 “严重错误”导致学习缓慢
袁承兴
2018-04-11
8170
TensorFlow从1到2 - 4 - 深入拆解CNN架构
本篇将拆开CNN架构,一探究竟。 基于空间映射的架构 全连接网络架构存在一个“硬”伤:网络中各层神经元的一维排布方式,丢弃了图像的空间结构信息。 以MNIST识别为例,当输入一副28x28的二维图像,
袁承兴
2018-04-11
9220
点击加载更多
社区活动
RAG七天入门训练营
鹅厂大牛手把手带你上手实战,赢鹅厂证书、公仔好礼!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档