TensorFlow的11个使用技巧整理说明

资料大小: 0.81 MB

所需积分: 3

下载次数:

用户评论: 0条评论,查看

上传日期: 2020-05-20

上 传 者: 十次方他上传的所有资料

资料介绍

标签:机器学习(3973)生成器(75)API(363)

  TensorFlow2.x在构建模型和总体使用方面提供了很多便利。那么,在tf中有什么新功能?

  使用Keras轻松进行模型构建;

  在任何平台上的生产中都可以进行稳健的模型部署;

  强大的研究实验;

  通过清理不推荐使用的API来简化各个步骤

  在本文中,我们将探索TF 2.0的10个功能,这些功能让TensorFlow的使用更加顺畅,减少了代码行并提高了效率,因为这些函数/类属于TensorFlow API。

  1.用于构建输入管道的tf.data API

  tf.data API提供了用于数据管道和相关操作的功能。 我们可以构建管道,映射预处理功能,洗牌或批量处理数据集等等。

  利用张量构建管道

  》》》 dataset = tf.data.Dataset.from_tensor_slices([8, 3, 0, 8, 2, 1])

  》》》 iter(dataset).next().numpy()

  8

  洗牌和批量处理数据集

  # Shuffle

  》》》 dataset = tf.data.Dataset.from_tensor_slices([8, 3, 0, 8, 2, 1]).shuffle(6)

  》》》 iter(dataset).next().numpy()

  0

  # Batch

  》》》 dataset = tf.data.Dataset.from_tensor_slices([8, 3, 0, 8, 2, 1]).batch(2)

  》》》 iter(dataset).next().numpy()

  array([8, 3], dtype=int32)

  # Shuffle and Batch

  》》》 dataset = tf.data.Dataset.from_tensor_slices([8, 3, 0, 8, 2, 1]).shuffle(6).batch(2)

  》》》 iter(dataset).next().numpy()

  array([3, 0], dtype=int32)

  压缩两个数据集

  》》》 dataset0 = tf.data.Dataset.from_tensor_slices([8, 3, 0, 8, 2, 1])

  》》》 dataset1 = tf.data.Dataset.from_tensor_slices([1, 2, 3, 4, 5, 6])

  》》》 dataset = tf.data.Dataset.zip((dataset0, dataset1))

  》》》 iter(dataset).next()

  (, )

  映射外部函数

  def into_2(num):

  return num * 2

  》》》 dataset = tf.data.Dataset.from_tensor_slices([8, 3, 0, 8, 2, 1]).map(into_2)

  》》》 iter(dataset).next().numpy()

  16

  2. 图像数据生成器

  这是tensorflow.keras API的最佳特性之一(在我看来)。图像数据生成器能够在批处理和预处理过程中生成数据集切片,并实时进行数据扩充。

  生成器允许直接从目录或数据帧进行数据流。

  对图像数据生成器中的数据扩充的一个误解是,它向现有的数据集中添加了更多的数据。虽然这是数据增强的实际定义,但在图像数据生成器中,数据集中的图像在训练过程中会在不同的步骤进行动态转换,这样模型就可以在没有看到的噪声数据上进行训练。

用户评论

查看全部 条评论

发表评论请先 , 还没有账号?免费注册

发表评论

用户评论
技术交流、我要发言! 发表评论可获取积分! 请遵守相关规定。
上传电子资料