iris数据集-训练神经网络

 

复制代码
#第一步,import
import tensorflow as tf #导入模块
from sklearn import datasets #从sklearn中导入数据集
import numpy as np #导入科学计算模块
#import keras
from tensorflow 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() #打印神经网络结构,统计参数数目
复制代码

 

posted @   emanlee  阅读(84)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· [AI/GPT/综述] AI Agent的设计模式综述
历史上的今天:
2019-10-09 服务器系统启动之所以比PC慢很多
2010-10-09 解读U盘存储结构原理
2010-10-09 BTX主板
2010-10-09 处理器CPU运算位数
点击右上角即可分享
微信分享提示