官方最新tf.keras指南,用面向对象构建深度网络、网络结构可视化等

【导读】tf.keras是TensorFlow 2.0最主要的高阶API接口,为TensorFlow的代码提供了新的风格和设计模式,大大提升了TF代码的简洁性和复用性,也间接地提供了TF开发的规范。本文介绍TF官网提供的最新的tf.keras指南。


TensorFlow 1.x以静态图为主,网上主流的TF代码编写主要是面向过程的(函数为主),在引入tf.keras之后,TensorFlow官方就开始推荐tf.keras里各种面向对象的编程风格,从层到模型都是类和对象,大大简化了代码的简洁性和复用性,也间接地提供了TF开发的规范。


Keras作者François Chollet在Twitter转发了TensorFlow官方最新tf.keras指南,本文大概介绍一下该指南中比较重要的内容。


指南的内容大致如下:

  • Keras Functional API

  • 训练和评价

  • 利用继承构建层和模型

  • 保存和序列化模型


Keras Functional API


指南地址:

https://www.tensorflow.org/alpha/guide/keras/functional

内容概要:

  • Keras中网络层的定义和调用,例如如何用指定的参数来定义一个全连接层,然后用定义的层来变换输入数据。

  • Keras模型的定义和调用,包括模型自带的训练和评价函数。

  • Keras层测复用

  • 网络中间层信息的提取和复用

  • 自定义Keras层

  • Functional API的优点和缺点

  • Functional API和Subclassing API(继承式)混写

  • 另外,用内置的函数可以直接可视化网络结构了:



训练和评价


指南地址:

https://www.tensorflow.org/alpha/guide/keras/training_and_evaluation

内容概要:

  • Keras模型内置的训练和评价Loop

  • 自定义损失函数

  • 用tf.data.Datasets作为输入

  • 其它输入格式,如Pandas

  • 采样和类别权重

  • 多输入和多输出

  • 回调函数

  • 断点

  • 学习率规划

  • 用TensorBoard可视化损失



利用继承构建层和模型


指南地址:

https://www.tensorflow.org/alpha/guide/keras/custom_layers_and_models

内容概要:

  • Keras层封装状态(权重)和计算

  • 权重延迟构造(延迟到输入形状已知时)

  • 递归构造Keras层

  • Keras层在前向传播时递归收集损失

  • 可选启用序列化Keras层

  • call方法中的training参数

  • 端到端地构建一个模型




保存和序列化模型


指南地址:

https://www.tensorflow.org/alpha/guide/keras/saving_and_serializing

内容概要:

  • 保存整个模型

  • 导出到SavedModel

  • 仅保存结构

  • 仅保存权重

  • 在SavedModel格式下仅保存权重

  • 保存继承的模型


参考链接:

  • https://www.tensorflow.org/alpha/guide/keras/


-END-

专 · 知

专知《深度学习:算法到实战》课程全部完成!510+位同学在学习,现在报名,限时优惠!网易云课堂人工智能畅销榜首位!

欢迎微信扫一扫加入专知人工智能知识星球群,获取最新AI专业干货知识教程视频资料和与专家交流咨询!

请加专知小助手微信(扫一扫如下二维码添加),加入专知人工智能主题群,咨询《深度学习:算法到实战》课程,咨询技术商务合作~

请PC登录www.zhuanzhi.ai或者点击阅读原文,注册登录专知,获取更多AI知识资料!

点击“阅读原文”,了解报名专知《深度学习:算法到实战》课程

展开全文
Top
微信扫码咨询专知VIP会员