TensorFlow学习笔记--(4)神经网络模型-数据集预处理

神经网络初步

以scikit-leran鸢尾花为例

通过scikit-learn库自带的鸢尾花数据集 来测试数据的读入

python 复制代码
from sklearn import datasets
from pandas import DataFrame
import pandas as pd

x_data = datasets.load_iris().data  # .data返回iris数据集所有输入特征
y_data = datasets.load_iris().target  # .target返回iris数据集所有标签
print("x_data from datasets: \n", x_data)
print("y_data from datasets: \n", y_data)

x_data = DataFrame(x_data, columns=['花萼长度', '花萼宽度', '花瓣长度', '花瓣宽度']) # 为表格增加行索引(左侧)和列标签(上方)
pd.set_option('display.unicode.east_asian_width', True)  # 设置列名对齐
print("x_data add index: \n", x_data)

x_data['类别'] = y_data  # 新加一列,列标签为'类别',数据为y_data
print("x_data add a column: \n", x_data)

#类型维度不确定时,建议用print函数打印出来确认效果

使用pandas包中的dataframe类来完成数据的表格输出

可以自定义行,列的索引名

打印结果:

网络构造流程

将数据集完成分类:训练集-测试集 并将输入特征与标签进行配对

每次读入一个batch进行训练 嵌套循环迭代 显示当前的loss与acc

数据集预处理

每次喂入神经网络模型的数据单位为batch

每个batch包含的数据组数可以自定义

python 复制代码
from sklearn import datasets
from pandas import DataFrame
import pandas as pd
import numpy as np

#数据集的读入:
x_data = datasets.load_iris().data  # .data返回iris数据集所有输入特征
y_data = datasets.load_iris().target  # .target返回iris数据集所有标签


# 随机打乱数据:
# seed: 随机数种子,是一个整数,当设置之后,每次生成的随机数都一样
np.random.seed(116)  # 使用相同的seed,保证输入特征和标签一一对应
np.random.shuffle(x_data) #将输入特征以seed进行随机打乱
np.random.seed(116)
np.random.shuffle(y_data) #将数据标签以seed进行随机打乱
tf.random.set_seed(116)

#将数据集分为训练集和测试集:
#数据集和测试集必须没有交集
x_train = x_data[:-30] #训练集为前120行
y_train = y_data[:-30] 
x_test = x_data[-30:]  #测试集为后30行
y_test = y_data[-30:]


#将特征与标签进行配对,并且每次只喂入模型一小撮数据
train_db = tf.data.Dataset.from_tensor_slices((x_train, y_train))
train_db = train_db.batch(32)

test_db = tf.data.Dataset.from_tensor_slices((x_test, y_test))
test_db = test_db.batch(32)
相关推荐
视觉小萌新4 小时前
AI Class 3 · Chapter 1:变量、字符串、list/dict、if/for(python学习-小白版-有经验可跳过)
python·学习·list
yyyang887 小时前
蓝牙系统整体架构详解
学习·信息与通信
程序边界7 小时前
一台数据集成软件的拆解笔记(下):一致性、容错、跑批与迁移,KFS 真正难的地方在这
java·前端·笔记
Linux-lucky8 小时前
46-Linux学习之旅之LVS负载均衡与keepalived高可用
linux·运维·学习·ubuntu·负载均衡·lvs
金色光环9 小时前
【DSP学习】C2000_ADC中断_笔记
笔记·学习
Дерек的学习记录9 小时前
Unreal Engine 5:第三人称运动系统和人物动画
开发语言·学习·ue5
zhangrelay9 小时前
mrpt杂乱笔记-26-10-31
笔记·学习
熊猫钓鱼>_>10 小时前
平行视界兼容模式与魔法变量配置避坑【鸿蒙心迹】
运维·服务器·开发语言·笔记·华为·harmonyos·openharmony
衡石科技10 小时前
让多轮问数保持口径一致:Data Agent 的上下文、偏好与学习开关
人工智能·学习·安全
IT199511 小时前
Docker 快速部署 DM8 达梦数据库|完整踩坑笔记
笔记·docker·容器