关于tensorflow中tf.keras.models.Sequential()的用法

 更新时间:2024年01月12日 09:28:45   作者:yunfeather  
这篇文章主要介绍了关于tensorflow中tf.keras.models.Sequential()的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

tf.keras.models.Sequential()用法

Sequential()方法是一个容器,

描述了神经网络的网络结构,

在Sequential()的输入参数中描述从输入层到输出层的网络结构

model = tf.keras.models.Sequential([网络结构])  #描述各层网络

网络结构举例

拉直层

tf.keras.layers.Flatten() #拉直层可以变换张量的尺寸,把输入特征拉直为一维数组,是不含计算参数的层

全连接层

tf.keras.layers.Dense(神经元个数,

activation = "激活函数“,

kernel_regularizer = "正则化方式)

其中:

  • activation可选 relu 、softmax、 sigmoid、 tanh等
  • kernel_regularizer可选 tf.keras.regularizers.l1() 、tf.keras.regularizers.l2()

卷积层

tf.keras.layers.Conv2D(filter = 卷积核个数,

kernel_size = 卷积核尺寸,

strides = 卷积步长,

padding = ”valid“ or "same")

LSTM层

tf.keras.layers.LSTM()

实例代码

#第一步,import
import tensorflow as tf #导入模块
from sklearn import datasets #从sklearn中导入数据集
import numpy as np #导入科学计算模块
import keras
 
#第二步,train, test
x_train = datasets.load_iris().data #导入iris数据集的输入
 
y_train = datasets.load_iris().target #导入iris数据集的标签
 
np.random.seed(120) #设置随机种子,让每次结果都一样,方便对照
 
np.random.shuffle(x_train) #使用shuffle()方法,让输入x_train乱序
 
np.random.seed(120) #设置随机种子,让每次结果都一样,方便对照
 
np.random.shuffle(y_train) #使用shuffle()方法,让输入y_train乱序
 
tf.random.set_seed(120) #让tensorflow中的种子数设置为120
 
#第三步,models.Sequential()
model = tf.keras.models.Sequential([ #使用models.Sequential()来搭建神经网络
    tf.keras.layers.Dense(3, activation = "softmax", kernel_regularizer = tf.keras.regularizers.l2()) #全连接层,三个神经元,激活函数为softmax,使用l2正则化
])
 
#第四步,model.compile()
model.compile(  #使用model.compile()方法来配置训练方法
    optimizer = tf.keras.optimizers.SGD(lr = 0.1), #使用SGD优化器,学习率为0.1
    loss = tf.keras.losses.SparseCategoricalCrossentropy(from_logits = False), #配置损失函数
    metrics = ['sparse_categorical_accuracy'] #标注网络评价指标
)
 
#第五步,model.fit()
model.fit(  #使用model.fit()方法来执行训练过程,
    x_train, y_train, #告知训练集的输入以及标签,
    batch_size = 32, #每一批batch的大小为32,
    epochs = 500, #迭代次数epochs为500
    validation_split = 0.2, #从测试集中划分80%给训练集
    validation_freq = 20 #测试的间隔次数为20
)
 
#第六步,model.summary()
model.summary() #打印神经网络结构,统计参数数目

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 零基础写python爬虫之爬虫框架Scrapy安装配置

    零基础写python爬虫之爬虫框架Scrapy安装配置

    Scrapy是一个使用Python编写的,轻量级的,简单轻巧,并且使用起来非常的方便。使用Scrapy可以很方便的完成网上数据的采集工作,它为我们完成了大量的工作,而不需要自己费大力气去开发。
    2014-11-11
  • Python async+request与async+aiohttp实现异步网络请求探索

    Python async+request与async+aiohttp实现异步网络请求探索

    这篇文章主要介绍了Python async+request与async+aiohttp实现异步网络请求探索,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2022-10-10
  • 使用OpCode绕过Python沙箱的方法详解

    使用OpCode绕过Python沙箱的方法详解

    这篇文章主要给大家介绍了关于如何使用OpCode绕过Python沙箱的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Python具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • 解决hive中导入text文件遇到的坑

    解决hive中导入text文件遇到的坑

    这篇文章主要介绍了解决hive中导入text文件遇到的坑,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • 如何利用pyinstaller打包Python程序为exe可执行文件

    如何利用pyinstaller打包Python程序为exe可执行文件

    这篇文章主要给大家介绍了关于如何利用pyinstaller打包Python程序为exe可执行文件的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • 基于python实现百度翻译功能

    基于python实现百度翻译功能

    这篇文章主要介绍了基于python实现百度翻译功能,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-05-05
  • pandas DataFrame 行列索引及值的获取的方法

    pandas DataFrame 行列索引及值的获取的方法

    这篇文章主要介绍了pandas DataFrame 行列索引及值的获取的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • Python协程环境下文件操作的正确方法

    Python协程环境下文件操作的正确方法

    在Python协程中执行文件操作是常见的需求,但直接使用同步文件读写会阻塞事件循环,破坏异步并发优势,本文将深入解析协程环境下文件操作的正确方法,涵盖多种场景下的最佳实践和性能优化技巧,需要的朋友可以参考下
    2025-09-09
  • python微信公众号之关注公众号自动回复

    python微信公众号之关注公众号自动回复

    这篇文章主要为大家详细介绍了python微信公众号之关注公众号自动回复,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-10-10
  • python可视化plotly 图例(legend)设置

    python可视化plotly 图例(legend)设置

    这篇文章主要介绍了python可视化plotly 图例(legend)设置,主要介绍了关于python 的legend图例,参数使用说明,具有很好的参考价值,希望对大家有所帮助,需要的朋友可以参考下卖你具体内容
    2022-02-02

最新评论