文章目录

  • 一、数据集和资料
  • 二、鸢尾花分类
  • 三、西瓜分类
  • 四、一些笔记
    • Sklearn部分资料
    • pandas部分函数

一、数据集和资料

数据集,提取码:zmlc
大佬笔记,提取码:ytfa

二、鸢尾花分类

# -*- coding: utf-8 -*# 使用pandas读入.csv
# 使用numpy计算k折平均
import pandas as pd
import numpy as np# MLPClassifier是神经网络分类器
# train_test_split帮助划分测试训练集
# cross_val_score是计算K折平均
from sklearn.neural_network import MLPClassifier
from sklearn.model_selection import train_test_split
from sklearn.model_selection import cross_val_score## 读取数据
path = 'iris.csv'  # 数据文件路径
data = pd.read_csv(path, index_col=0,header=0,names=[0,1,2,3,4])
print(data)# 将类别装换成数字
mapping = {'setosa':0,'versicolor':1,'virginica':2}
data = data.replace(mapping)x, y = data[list(range(4))], data[4]# 分割测试集和训练集
x_train,x_test,y_train,y_test = train_test_split(x,y,train_size=0.75,random_state=125) # 创建神经网络分类器对象
clf = MLPClassifier(solver='adam', alpha=1e-5,hidden_layer_sizes=(3,3), random_state=1,max_iter=100000,) # 训练模型
clf.fit(x_train, y_train)# 训练集数据模型评估
score1 = clf.score(x_train,y_train)
print(u'测试集准确度:%.4lf' %score1)# 测试集数据模型评估
score2 = clf.score(x_test,y_test)
print(u'训练集准确度:%.4lf' %score2)# 不划分测试集 使用k折交叉验证
print("不划分测试集 使用k折交叉验证")
print(u'cross_val_score 准确率为 %.4lf' % np.mean(cross_val_score(clf, x, y, cv=10)))

三、西瓜分类

# -*- coding: utf-8 -*# 使用pandas读入.csv
import pandas as pdfrom sklearn.neural_network import MLPClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import classification_reportdf = pd.read_csv('watermelon_3.csv', encoding='utf-8')# 将类别变为数字
mapping = {'是':1,'否':0}
df = df.replace(mapping)# 取出X和y
X = pd.get_dummies(df.iloc[:,1:-1]).values
y = df.iloc[:,-1].values# 切割数据集
X_train,X_test,y_train,y_test = train_test_split(X,y,train_size=0.8,random_state=125)# 建模并预测
BPNet = MLPClassifier(random_state=123)
BPNet.fit(X_train,y_train)
y_pred = BPNet.predict(X_test)
#print(y_test,y_pred)# 输出预测结果报告
print('预测报告为:\n',classification_report(y_test,y_pred))

四、一些笔记

Sklearn部分资料

MLPClassifier是一个监督学习算法
参考资料:这里1 这里2
train_test_split测试集、训练集分割函数
参考资料:这里

pandas部分函数

df.loc[]和df.iloc[],参考资料
get_dummies,参考资料
data.values ,参考资料

【BP神经网络】西瓜分类和鸢尾花分类相关推荐

  1. HBU-NNDL 实验五 前馈神经网络(3)鸢尾花分类

    目录 深入研究鸢尾花数据集 4.5 实践:基于前馈神经网络完成鸢尾花分类 4.5.1 小批量梯度下降法 4.5.1.1 数据分组 4.5.2 数据处理 4.5.2.2 用DataLoader进行封装 ...

  2. Python实现BP神经网络ANN单隐层分类模型项目实战

    说明:这是一个机器学习实战项目(附带数据+代码+文档+视频讲解),如需数据+代码+文档+视频讲解可以直接到文章最后获取. 1.项目背景 BP(back propagation)神经网络是1986年由R ...

  3. 神经网络与深度学习(五)前馈神经网络(3)鸢尾花分类

    目录 4.5实践:基于前馈神经网络完成鸢尾花分类 深入研究鸢尾花数据集 4.5.1 小批量梯度下降法 4.5.1.1 数据分组 4.5.2 数据处理 4.5.2.2 用DataLoader进行封装 4 ...

  4. 鸢尾花python分类_鸢尾花分类——Python机器学习起步

    引言 一直对AI有着莫大的兴趣,最近买了周志华先生的西瓜书,也是干货满满,最近也想从实战方面入手,了解一下机器学习,本文以<Python机器学习基础教程>为指导. 环境 Sublimete ...

  5. 深度学习分类步骤——鸢尾花分类

    1.数据集的介绍 以鸢尾花数据集为例,共有150组,每组包括花萼长.花萼宽.花瓣长.花瓣宽4个输入特征.同时给出了这一组特征对应的鸢尾花的类别.类别包括狗尾草鸢尾.杂色鸢尾以及弗吉尼亚鸢尾,分别用0, ...

  6. bp神经网络 鸢尾花matlab,神经网络(BP网)—鸢尾花分类问题.pdf

    神经网络(BP网)-鸢尾花分类问题 华南师范大学计算机学院 – 神经网络 鸢尾花分类BP网实现 作者:杨劲松 2013-4-24 BP BP BBPP 鸢尾花分类 网实现 � 问题描述 � 感知器网络 ...

  7. 鸢尾花分类python,Python鸢尾花分类实现

    #coding:utf-8 from sklearn.datasets import load_iris from sklearn.model_selection import train_test_ ...

  8. BP神经网络进行分类任务

    BP(Back Propagation)神经网络是一种按误差逆传播算法训练的多层前馈网络,它的学习规则是使用梯度下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小.BP神经网络模型 ...

  9. Python 基于BP神经网络的鸢尾花分类

    本文用Python实现了BP神经网络分类算法,根据鸢尾花的4个特征,实现3种鸢尾花的分类. 算法参考文章:纯Python实现鸢尾属植物数据集神经网络模型 2020.07.21更新: 增加了分类结果可视 ...

最新文章

  1. msvc 编译路径_Colmap编译教程
  2. mysql 天数减1_mysql 日期操作 增减天数、时间转换、时间戳
  3. mysql 保证事物完整性_数据库高并发请求,如何保证数据完整性?详解MySQL/InnoDB的加锁...
  4. 解决selenium.common.exceptions.WebDriverException: Message: unknown error: call function result missin
  5. rmi远程代码执行漏洞_Apache Solr反序列化远程代码执行漏洞分析(CVE20190192)
  6. rk3399_android7.1调试串口uart功能和测试是否能通讯
  7. CEF JS实现获取剪贴板图片的DataURL
  8. mysql的英文字母_MYSQL中查询怎么判断一个字段包含英文?
  9. 游戏十五大基本游戏类型介绍
  10. 全志F1C100s入坑与填坑 uboot Linux Kernel 与buildroot
  11. 西门子g120变频器接线图_【直播】S71200与SINAMICS G120变频器的profinet通信
  12. HMI——“已连续登录3次,用户已注销”问题
  13. Server 2008 R2 事件查看器实现日志分析
  14. 02 必备SQL和表关系及授权
  15. 如何写好一份用户需求说明书
  16. 后端利用MultipartFIle类型参数接受文件上传
  17. 免疫的特异性和非特异性
  18. android queries属性
  19. python中能主动引发异常的是_python--异常处理-主动引发异常-自定义异常类
  20. 性能安全并重 实战英特尔MatrixRAID组建

热门文章

  1. 双u服务器装win7系统安装,u深度一键u盘装原版win7 安装系统详细使用教程
  2. Windows系统盘瘦身
  3. 微型计算机外部设备接口,第五章 微型计算机输入输出接口
  4. uiautomatorviewer报错解决
  5. pyhton——爬小说网站(顶点最强国防生)
  6. 巧萌易携之ROS2Go的不完全教研攻略
  7. C语言遥控器程序,单片机学习型遥控器程序详解(完整版)
  8. win10下conda 使用教程
  9. Codeforces--701B--Cells Not Under Attack
  10. Unparseable date: xxxxxx