python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > tensorflow中tf.keras.models.Sequential()用法

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

作者: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 = "正则化方式)

其中:

卷积层

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() #打印神经网络结构,统计参数数目

总结

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

您可能感兴趣的文章:
阅读全文