Tensorflow教程笔记
-
基础
TensorFlow 基础
TensorFlow 模型建立与训练
基础示例:多层感知机(MLP)
卷积神经网络(CNN)
循环神经网络(RNN)
深度强化学习(DRL)
Keras Pipeline
自定义层、损失函数和评估指标
常用模块 tf.train.Checkpoint :变量的保存与恢复
常用模块 TensorBoard:训练过程可视化
常用模块 tf.data :数据集的构建与预处理
常用模块 TFRecord :TensorFlow 数据集存储格式
常用模块 tf.function :图执行模式
常用模块 tf.TensorArray :TensorFlow 动态数组
常用模块 tf.config:GPU 的使用与分配 -
大规模训练与加速
TensorFlow 分布式训练
使用 TPU 训练 TensorFlow 模型 -
附录
强化学习基础简介
在软件开发中,我们经常复用开源软件或者库,避免了相同功能的代码重复开发,减少了大量的重复劳动,也有效缩短了软件开发周期。代码复用,对软件产业的蓬勃发展,有着极大的助推作用。
相应的,TF Hub 目的是为了更好的复用已训练好且经过充分验证的模型,可节省海量的训练时间和计算资源。这些预训练好的模型,可以进行直接部署,也可以进行迁移学习(Transfer Learning)。对个人开发者来说,TF Hub 是非常有意义的,他们可以快速复用像谷歌这样的大公司使用海量计算资源训练的模型,而他们个人去获取这些资源是很不现实的。
TF Hub 网站
打开主页 https://tfhub.dev/
,在左侧有 Text、Image、Video 和 Publishers 等选项,可以选取关注的类别,然后在顶部的搜索框输入关键字可以搜索模型。
以 stylization
为例,我们搜索到如下模型:
该模型的地址如下:
https://tfhub.dev/google/magenta/arbitrary-image-stylization-v1-256/2
其中,末尾的 2
为该模型的版本号。
-
注意目前还有很多模型是基于 TF1.0 的,选择的过程中请注意甄别,有些模型会明确写出来是使用的哪个版本,或者,检查使用是否是 tfhub 0.5.0 或以上版本的 API
hub.load(url)
,在之前版本使用的是hub.Module(url)
。 -
如果不能访问 tfhub.dev,请大家转换域名到国内镜像
https://hub.tensorflow.google.cn/
,模型下载地址也需要相应转换。
TF Hub 安装
TF Hub 是单独的一个库,需要单独安装,安装命令如下:
pip install tensorflow-hub
在 TF2.0 上,必须使用 0.5.0 或以上版本,因为接口有变动。
TF Hub 模型使用样例
TF Hub 模型的复用非常简单,代码模式如下:
import tensorflow_hub as hub
hub_handle = 'https://tfhub.dev/google/magenta/arbitrary-image-stylization-v1-256/2'
hub_model = hub.load(hub_handle)
outputs = hub_model(