如何利用tf.keras 实现深度学习?

news2024/11/18 13:58:45

tf.keras是TensorFlow 2.0的高阶API接口,为TensorFlow的代码提供了新的风格和设计模式,大大提升了TF代码的简洁性和复用性,官方也推荐使用tf.keras来进行模型设计和开发。

tf.keras是什么

常用模块

tf.keras中常用模块如下表所示:

在这里插入图片描述

常用方法

深度学习实现的主要流程:1.数据获取,2,数据处理,3.模型创建与训练,4 模型测试与评估,5.模型预测。

深度学习常用方法

1.导入tf.keras

使用 tf.keras,首先需要在代码开始时导入tf.keras。

import tensorflow as tf
from tensorflow import keras

2.数据输入

对于小的数据集,可以直接使用numpy格式的数据进行训练、评估模型,对于大型数据集或者要进行跨设备训练时使用tf.data.datasets来进行数据输入。

3.模型构建

简单模型使用Sequential进行构建
复杂模型使用函数式编程来构建
自定义layers

4.训练与评估

配置训练过程:

# 配置优化方法,损失函数和评价指标
model.compile(optimizer=tf.train.AdamOptimizer(0.001),
              loss='categorical_crossentropy',
              metrics=['accuracy'])

模型训练:

# 指明训练数据集,训练epoch,批次大小和验证集数据model.fit/fit_generator(dataset, epochs=10, 
                        batch_size=3,
          validation_data=val_dataset,
          )

模型评估:

# 指明评估数据集和批次大小
model.evaluate(x, y, batch_size=32)

模型预测:

# 对新的样本进行预测
model.predict(x, batch_size=32)

5.回调函数(callbacks)

回调函数用在模型训练过程中,来控制模型训练行为,可以自定义回调函数,也可使用tf.keras.callbacks 内置的 callback :

ModelCheckpoint:定期保存 checkpoints。 LearningRateScheduler:动态改变学习速率。 EarlyStopping:当验证集上的性能不再提高时,终止训练。 TensorBoard:使用 TensorBoard 监测模型的状态。

6.模型的保存和恢复

只保存参数:

# 只保存模型的权重
model.save_weights('./my_model')
# 加载模型的权重
model.load_weights('my_model')

保存整个模型:

# 保存模型架构与权重在h5文件中
model.save('my_model.h5')
# 加载模型:包括架构和对应的权重
model = keras.models.load_model('my_model.h5')

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/799841.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

智慧环保:创造绿色未来

随着全球环境问题的日益严重,智慧环保成为推动绿色发展的关键。智慧环保利用先进的技术手段和智能化设备,致力于解决环境问题,保护生态环境,实现可持续发展。它融合了物联网、人工智能、大数据等技术,将科技的力量与环…

C#实现计算题验证码

开发环境:C#,VS2019,.NET Core 3.1,ASP.NET Core API 1、建立一个验证码控制器 新建两个方法Create和Check,Create用于创建验证码,Check用于验证它是否有效。 声明一个静态类变量存放列表,列…

公众号运营:公众号互选广告操作流程指南

什么是公众号互选广告平台? 公众号互选平台,是广告主和流量主双向互选、自由达成内容合作的交易 平台,广告创意呈现在公众号文章内容中。 收入模式:按合作文章收费,合作价格由流量主自主决定。 操作配合:提…

1334179-85-9,BTTAA,是各种化学生物学实验中生物偶联所需

资料编辑|陕西新研博美生物科技有限公司小编MISSwu​ BTTAA试剂 | 基础知识概述(部分): 中文名称:2-[4-({双[(1-叔丁基-1H-1,2,3-三唑-4-基)甲基]氨基}甲基)-1H-1,2,3-三唑-1-基]乙酸 英文名称:BTTAA CAS号:1334179-8…

Vue2 第一节 通用概念和前置知识

本篇将记录自己学习Vue的知识点总结 学习资源: B站 :尚硅谷Vue2.0Vue3.0全套教程 有个博主将这个视频总结成了笔记,之后的博客也会参考这个笔记 (126条消息) 【2022.3】尚硅谷Vue.js从入门到精通基础笔记(理论实操知识点速查&…

Android 之 Paint API —— PathEffect (路径效果)

本节引言: 本节继续来学习Paint的API——PathEffect(路径效果),我们把画笔的sytle设置为Stroke,可以 绘制一个个由线构成的图形,而这些线偶尔会显得单调是吧,比如你想把这些先改成虚线,又 或者想让路径的转…

我们聊聊性能测试的理解误区

有同学私信我,和他聊了聊关于性能测试的一些话题,发现他对性能测试的理解走入了一些误区。 在一些技术交流群,同样遇到过很多同学由于对性能测试理解上的误区导致的各种问题,比如: 注册用户数并发数,然后服…

Top命令

Top top - 12:46:01 up 2 days, 11:10, 3 users, load average: 0.56, 0.59, 0.45系统基本信息:显示了系统运行时间、登录用户数和平均负载(load average)情况。平均负载是系统在特定时间范围内的平均活跃进程数,可以用来衡量系…

自动驾驶之轨迹规划8——Apollo参考线和轨迹

1. abstract 本文主要讲解routing和planning模块中的reference line,我之前一直搞不明白这个reference line是如何生成的,有什么作用,和routing以及planning的关系。现在有了一些心得打算梳理一下: 决策规划模块负责生成车辆的行…

Go基础—反射,性能和灵活性的双刃剑

Go基础—反射,性能和灵活性的双刃剑 1 简介2 结构体成员赋值对比3 结构体成员搜索并赋值对比4 调用函数对比5 基准测试结果对比 1 简介 现在的一些流行设计思想需要建立在反射基础上,如控制反转(Inversion Of Control,IOC&#x…

7.27 Qt

制作简易小闹钟 Timer.pro QT core gui texttospeechgreaterThan(QT_MAJOR_VERSION, 4): QT widgetsCONFIG c11# The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings # dep…

替换字母题解

样例输入1: 5 4 abcab样例输出1: 1样例输入2: 5 3 abcab样例输出2: 2思路分析: 看到这种题,先想到 O ( 26 n ) O(26\times n) O(26n)的时间复杂度,枚举把字符串都变成每一个字母所需要的最…

ubuntu20.04 安装 docker engine

打开docker官网 点击上图中间的Linux,会是这样: 点击上图的左边栏的 Docker Engine,点击install, 点击 Ubuntu,会是这样: 把页面翻下来,先按照 Insstallation methods 中的 set up thre repository,执行这些…

平安私人银行受邀慈善服务高质量发展会议,分享慈善规划服务

近日,中华慈善总会家风传承与慈善信托委员会成立仪式,以及由中华慈善总会、中国银行业协会联合发起的“慈善顾问赋能计划”启动仪式在北京举行。平安私人银行受邀参会并分享慈善规划服务,平安私人银行慈善业务总监王英及平安私人银行客户、“…

[算法很美打卡] 多维数组篇 (打卡第二天)

文章目录 Z形打印边界为1的最大子方阵 Z形打印 package 每日算法学习打卡.算法打卡.七月份.七月二十七号;public class test1 {public static void main(String[] args) {int[][] matrix {{1, 2, 3, 4},{5, 6, 7, 8},{9, 10, 11, 12},};print(matrix);}static void print(int[…

基于信用博弈的数据价格动态评估模型

纯纯的,共享出来了 目录 摘要 2 数据价格动态评估模型 2.1 数据产品定价策略 摘要 传统数据交易平台中,定价完全由平台把控,数据所有者不明确数据潜在价值,网络买卖双方信用缺失,导致数据交易中的数据价格难以评估…

HCIA实验二

实验要求: 1.R2为ISP,只能配置IP 2.R1-R2之间为HDLC封装 3.R2-R3之间为PPP封装,pap认证,R2为主认证方 4.R2-R4之间为PPP封装,chap认证,R2为主认证方 5.R1、R2、R3构建MGRE,仅R1的IP地址固定…

自动发推技巧解析:让你的推文营销更容易上热门

作为一家企业在推特上发帖的目的就是能让更多人看到,也就是被算法拾取,从而推荐给更多的人,那么就需要首先了解推特的算法是怎么样的,才能利用好它进行推特自动发推群发,这里推特群推王给大家剖析一二: 上热门指什么&a…

day43-Feedback Ui Design(反馈ui设计)

50 天学习 50 个项目 - HTMLCSS and JavaScript day43-Feedback Ui Design&#xff08;反馈ui设计&#xff09; 效果 index.html <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport&q…

数据库分库分表备份

#!/bin/sh #调用系统函数库 . /etc/init.d/functions #Define variables BACKUPDIR/backup/sort/ MYSQLUSERroot MYSQLPASSWDRedHat123 MYSQLCMD"mysql -u$MYSQLUSER -p$MYSQLPASSWD" MYSQLDUMP"mysqldump -u$MYSQLUSER -p$MYSQLPASSWD -x -F -R" DATABASE…