tf2.0入门实战,神经网络实现简单的分类任务

tf2.0单层神经网络实现鸢尾花分类


数据类型分析

from sklearn import datasets
import pandas as pd

#导入数据和标签
x_data = datasets.load_iris().data
y_data = datasets.load_iris().target
x_data = pd.DataFrame(x_data, columns=['花萼长度','花萼宽度','花瓣长度','花瓣宽度'])
pd.set_option('display.unicode.east_asian_width', True)#设置列名对其
x_data['类别'] = y_data #新加一列,类别标签为y_data
print(x_data)

运行结果:

由图可见,鸢尾花数据集中共有150个样本,包含4个特征,分为3个类别,由于数据量小故采用简单的单层神经网络即可实现分类。

神经网络模型:
在这里插入图片描述
这里使用一层包含4个单元的神经网络和3个输出节点相连,最后用softmax实现分类任务

该分类任务需要完成如下操作:
数据读入和处理

  1. 导入数据
  2. 打乱数据
  3. 分开测试集和训练集
  4. 将训练和测试的样本与标签配对,并设置batch

搭建网络
定义神经网络中的可训练参数

参数训练和优化
前向传播计算和反向求梯度更新优化参数,并显示当前损失值loss

测试
计算模型每训练一次epoch的测试集准确率,并显示当前正确率acc

结果可视化
画出acc和loss曲线

**

完整代码

**

from sklearn import datasets
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import tensorflow as tf
from sklearn.utils import shuffle

# 导入数据和标签
x_data = datasets.load_iris().data
y_data = datasets.load_iris(
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值