Tensorflow 2.0 快速入门 —— RNN 预测牛奶产量

前面两篇文章我们通过线性回归和 MINST 手写识别的项目,学习了如何使用 Tensorflow 2.0 解决预测和分类的问题。同时也回顾了神经网络以及 CNN 的套路。这篇文章我们同样通过 RNN 的实例再次巩固一下 Tensorflow 2.0 的使用方法。 关注微信公众号获取源代码(二维码见文末) 1. Keras 方法回顾如下图所示,数据记录了1962年到1975年一共14年每个月牛...

Tensorflow 2.0 快速入门 —— 自动求导与线性回归

随着 Tensorflow 2.0 正式版发布的日期越来越近,我们应该做好准备忘记 1.0 版本中那些反人类的 静态 Graph 和 Session,拥抱新版本的各种易用简单的新特性。 我们之前的文章介绍了 Tensorflow 的 Eager 模式,Tensorflow 2.0 默认就是在 Eager 模式下运行的,所以 Eager 模式下可以直接打印出运算结果以及与 numpy 的无缝切...

Tensorflow 2.0 快速入门 —— 引入Keras 自定义模型

上篇文章我们用线性回归的项目快速入门了 Tensorflow 2.0 ,本文我们继续深入研究 ,使用 Keras 搭建模型配合 Tensorflow 2.0 解决线性回归和分类问题。 全部代码,请见我的github repo https://github.com/zht007/tensorflow-practice 1. 线性回归回顾在 Tensorflow 2.0 中我们使用tf.Gra...

Tensorflow 2.0 轻松实现迁移学习

image from unsplash by Gábor Juhász 迁移学习即利用已有的知识来学习新的知识,与人类类似,比如你学会了用笔画画,也就可以学习用笔来画画,并不用从头学习握笔的姿势。对于机器学习来说,可以用现有的已经经过训练的模型,来训练我们自己的模型,并没有必要从头训练。 以图像识别的神经网络模型为例,我们可以使用已经在 Image Net 上训练过的模型直接训练我们自己的...

Tensorflow2.0 深度强化学习——Policy Gradient

image from unsplash.com by @jodaarba 在之前的文章中我们系统地介绍了强化学习,以及与神经网络相结合的深度强化学习。期间由于 Tensorflow 2.0 尚未正式发布,大多数代码均使用 Tensorflow 1.x 或者 Keras 实现的,今后我们逐渐会用 Tensorflow 2.x 或者 PyTorch 更新代码,同时借机复习相关知识。 这篇文章我们...

Tensorflow2.0--可视化工具:Tensorboard

image from unsplash.com by Tara Hegerty 之前的文章介绍过如何在 Keras 中快速调用 Tensorboard 这个可视化工具,这篇文章我们再深入探讨一下 Tensorboard 在T Tensorflow 2.0 下如何使用。 本文源代码请关注微信公众号(二维码见文末)获取 1. Tensorboard 工作原理简单来说,tensorboard 就...

【教程】Tensorflow vs PyTorch —— 基本操作

Tensorflow 和 PyTorch 的基本操作非常类似,大多数方法都是相通的,如果有 numpy 的基础,掌握起来就更加容易了。基本操作涉及到张量的初始化,切片索引,维度变换和合并拆分等。 1. 初始化Tensorflow 和 PyTorch 的导入,查看版本,是否有GPU支持等非常简单代码如下: 2. 创建张量在数学和物理概念中,有标量 Scaler,向量 Vector, 矩阵 ...

强化学习—— Q-Learning 玩 MountainCar 爬坡上山

之前的文章结合理论和实践熟悉了 Q-Learning 的经典算法,这篇文章我们基于 Open AI 的经典 MountainCar 环境。用 python 代码实现 Q-Learning 算法,完成小车爬坡上山的挑战。 同样的,为了方便与读者交流,所有的代码都放在了这里: https://github.com/zht007/tensorflow-practice 1. Gym 环境初始化要...

强化学习—— SARSA 和 SARSA lambda 玩 MountainCar 爬坡上山

Image from unsplash.com by Jonatan Pie 上一篇文章我们介绍了用 Q-learning 的算法完成了小车爬坡上山的游戏,这篇文章我们来讲讲如何用 SARSA 算法完成同样挑战。 1. Q-Learning 和 SARSA 异同Q - Learning 和 SARSA 有很多相似之处,他们均属于单步Temporal Difference (时间差分TD(0...

强化学习——MC(蒙特卡洛)玩21点扑克游戏

通过理论和实战,我们知道,在已知的MDP环境下,可以用动态规划(DP)的方法来获得最佳策略,指导智能体(Agent)行动。DP方法要求环境是已知的,然而实际上我们会遇到更多未知的环境,这个时候就需要用其他方法了。之前的文章介绍过MC和TD (Temporal-Defference) 的理论,这篇文章就用MC方法来玩21点扑克牌游戏。 同样的,为了方便与读者交流,所有的代码都放在了这里: ht...