TensorFlow2.0教程-keras 函数api

TensorFlow2.0教程-keras 函数api

Tensorflow 2.0 教程持续更新: https://blog.csdn.net/qq_31456593/article/details/88606284

TensorFlow 2.0 教程- Keras 快速入门
TensorFlow 2.0 教程-keras 函数api
TensorFlow 2.0 教程-使用keras训练模型
TensorFlow 2.0 教程-用keras构建自己的网络层
TensorFlow 2.0 教程-keras模型保存和序列化
TensorFlow 2.0 教程-eager模式
TensorFlow 2.0 教程-Variables
TensorFlow 2.0 教程–AutoGraph

TensorFlow 2.0 深度学习实践

TensorFlow2.0 教程-图像分类
TensorFlow2.0 教程-文本分类
TensorFlow2.0 教程-过拟合和欠拟合

完整tensorflow2.0教程代码请看tensorflow2.0:中文教程tensorflow2_tutorials_chinese(欢迎star)

1构建简单的网络

1.1创建网络


inputs = tf.keras.Input(shape=(784,), name='img')
h1 = layers.Dense(32, activation='relu')(inputs)
h2 = layers.Dense(32, activation='relu')(h1)
outputs = layers.Dense(10, activation='softmax')(h2)
model = tf.keras.Model(inputs=inputs, outputs=outputs, name='mnist model')

model.summary()
keras.utils.plot_model(model, 'mnist_model.png')
keras.utils.plot_model(model, 'model_info.png', show_shapes=True)

1.2训练、验证及测试

(x_train, y_train), (x_test, y_test) = keras.datasets.mnist.load_data()
x_train = x_train.reshape(60000, 784).astype('float32') /255
x_test = x_test.reshape(10000, 784).astype('float32') /255
model.compile(optimizer=keras.optimizers.RMSprop(),
             loss='sparse_categorical_crossentropy', # 直接填api,后面会报错
             metrics=['accuracy'])
history = model.fit(x_train, y_train, batch_size=64, epochs=5, validation_split=0.2)
test_scores = model.evaluate(x_test, y_test, verbose=0)
print('test loss:', test_scores[0])
print('test acc:', test_scores[1])

1.3模型保持和序列化

model.save('model_save.h5')
del model
model = keras.models.load_model('model_save.h5')

2 使用共享网络创建多个模型

在函数API中,通过在图层图中指定其输入和输出来创建模型。 这意味着可以使用单个图层图来生成多个模型。

# 编码器网络和自编码器网络

encode_input = keras.Input(shape=(28,28,1), name='img')
h1 = layers.Conv2D(16, 3, activation='relu')(encode_input)
h1 = layers.Conv2D(32, 3, activation='relu')(h1)
h1 = layers.MaxPool2D(3)(h1)
h1 = layers.Conv2D(32, 3, activation='relu')(h1)
h1 = layers.Conv2D(16, 3, activation='relu')(h1)
encode_output = layers.GlobalMaxPool2D()(h1)

encode_model = keras.Model(inputs=encode_input, outputs=encode_output, 
  • 8
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
### 回答1: TensorFlow 2. 对应的 KerasTensorFlow 的高级 API,它提供了一种简单易用的方式来构建和训练深度学习模型。Keras 可以在 TensorFlow 2. 中直接使用,也可以作为一个独立的库使用。Keras 提供了一系列的层、损失函数、优化器等工具,可以帮助用户快速构建和训练各种类型的深度学习模型。同时,Keras 还支持多种数据格式,包括 Numpy 数组、Pandas 数据框、TensorFlow 数据集等。在 TensorFlow 2. 中,Keras 已经成为了默认的高级 API,为用户提供了更加便捷的深度学习开发体验。 ### 回答2: TensorFlow 2.0是目前最流行的深度学习框架之一,是由谷歌公司开发的,支持动态计算图和静态计算图两种方式,以高效、灵活、可扩展性强的特性受到广泛欢迎。而对应的Keras是一个高级神经网络API,它基于Python语言,以简洁、易用和模块化的方式构建神经网络,成为TensorFlow的标准API之一。 TensorFlow 2.0对应的Keras,可以说是更加简单、易用和高效的。Keras提供了高度抽象的API,使得用户在构建神经网络时不需要关注各个层之间的计算关系,只需要关注网络的结构即可。而在使用TensorFlow 2.0时,Keras是默认的高层API,将TensorFlow的各个功能组件进行了更优雅的封装,使得用户在创建、训练和评估模型时更加轻松和快速。 在TensorFlow 2.0中,Keras不再是独立的库,而是成为了TensorFlow的一部分,这意味着用户可以像使用TensorFlow一样使用Keras,而无需再对安装、导入等方面进行额外的操作。同时,在TensorFlow 2.0中,Keras API也得到了大幅度改进和增强,比如新增了更多的层、损失函数和评价标准等。此外,Keras还提供了一些便利的除错工具和可视化工具,如TensorBoard,方便用户对模型的训练过程进行可视化和调试。 总之,TensorFlow 2.0对应的Keras是一种非常强大和灵活的神经网络API,它能让用户更加快速、高效地构建和训练深度学习模型,为深度学习的应用和发展提供了更好的支持。 ### 回答3: Tensorflow 2.0对应的Keras是一个高级的神经网络API,该APITensorflow的一部分。它使得机器学习任务更加容易,因为它有一个简单易懂的API,并且它可以通过构建神经网络的层和模型来快速地训练和构建机器学习模型。 Keras早期并不是由TensorFlow所拥有,但是在TensorFlow2.0的经历之后,Keras已分别成为TensorFlow的一部分。TensorFlow官方本身也推荐使用Keras来构建和训练神经网络,因为它提供了许多现成的模型和层,可以帮助用户快速地搭建和训练模型。 与TensorFlow 1.x版本相比,TensorFlow 2.0支持Eager Execution以及动态图模式,因此能够同时提供静态和动态图模式的Keras便更容易将TensorFlow 2.0完全利用起来。为了更好的支持开发者,Keras还重新设计了API,使其更加容易使用,该API不仅支持函数式模型API而且也支持序列式模型API,也支持自定义模型API。这就使得Keras能够适应各种使用场景,并留下了更多的扩展空间。 另外,Keras提供许多内置的层和模型,比如全连接、卷积和LSTM等网络层以及ResNet、Inception和VGG等预训练模型,利用这些内置的层和模型,用户可以更快地构建模型。Keras还帮助用户构建模型,从模型的定义到训练过程都是简单的,这在其他深度学习框架中是不容易实现的。 总之,KerasTensorFlow 2.0中的一个重要组件。Keras为机器学习任务的构建和训练提供了一种简单的和读者友好的API。它内置了许多层和模型,使得我们更容易构建、训练和调整深度学习模型。而且,Keras支持序列式和函数式两种模型API。使用Keras,机器学习开发人员可以快速地在Tensorflow 2.0中构建强大的深度学习模型。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值