神经网络搭建—Sequential&class

Sequential六步法

首先,介绍这六个步骤:

import
train, test
model = tf.keras.models.Sequential
model.compile
model.fit
model.summary

Sequential

Sequential用来描述各层网络,并且按顺序将它们走一遍,相当于一次前向传播。

model = tf.keras.models.Sequential([网络结构])
网络结构举例:
拉直层:tf.keras.layers.Flatten()
全连接层:tf.keras.layers.Dense(神经元个数,activation='激活函数',kernel_regularizer=哪种正则化)
卷积层:tf.keras.layers.Conv2D(filters=卷积核个数,kernel_size=卷积核尺寸,strides=卷积步长,padding='valid'or'same')
LSTM层:tf.keras.layers.LSTM()

在这里插入图片描述

compile

配置神经网络的训练方法,告知训练时选择的优化器、损失函数和评测指标

model.compile(optimizer=优化器, loss=损失函数, metrics=["准确率"])

在这里插入图片描述
在这里插入图片描述
False和True表示的是神经网络的输出是原始输出(True)还是概率分布(False),比如在激活函数时使用了softmax函数就是进行概率分布输出,这里就需要填False
在这里插入图片描述
新手入门时,可以采用字符串作为值传入;当逐渐熟练掌握后,可以使用函数形式,因为这样可以调节参数

fit

在这里插入图片描述
这里如果使用validation_split从训练集中划分数据给测试集,就不用在前面分出x_test和y_test了

summary

打印出网络的结构和参数统计

model.summary()

在这里插入图片描述

以鸢尾花数据集为例

## import
import tensorflow as tf
import numpy as np
from sklearn import datasets

## train, test
x_train = datasets.load_iris().data
y_train = datasets.load_iris().target

## 随机打乱特征值和目标值
np.random.seed(520)
np.random.shuffle(x_train)
np.random.seed(520)
np.random.shuffle(y_train)
tf.random.set_seed(520)

## Sequential
model = tf.keras
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值