首页 > 分享 > 【BP神经网络】西瓜分类和鸢尾花分类

【BP神经网络】西瓜分类和鸢尾花分类

文章目录 一、数据集和资料二、鸢尾花分类三、西瓜分类四、一些笔记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)))

12345678910111213141516171819202122232425262728293031323334353637383940414243444546

三、西瓜分类

# -*- coding: utf-8 -* # 使用pandas读入.csv import pandas as pd from sklearn.neural_network import MLPClassifier from sklearn.model_selection import train_test_split from sklearn.metrics import classification_report df = 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))

12345678910111213141516171819202122232425262728293031323334

四、一些笔记

Sklearn部分资料

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

pandas部分函数

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

相关知识

基于BP神经网络对鸢尾花的分类的研究
BP神经网络鸢尾花红酒数据分类分析与源码实现
TensorFlow使用BP神经网络实现鸢尾花分类
python 使用Tensorflow训练BP神经网络实现鸢尾花分类
Python 基于BP神经网络的鸢尾花分类
使用BP神经网络对鸢尾花数据集分类
搭建简单的神经网络——使用pytorch实现鸢尾花的分类
基于BP神经网络的分类
基于BP神经网络算法鸢尾花数据集的分类
卷积神经网络实现鸢尾花数据分类python代码实现

网址: 【BP神经网络】西瓜分类和鸢尾花分类 https://m.huajiangbk.com/newsview1532999.html

所属分类:花卉
上一篇: 全面认识西瓜生物学特征!生育周期
下一篇: 西瓜品种大全