学生做网站的软件,哪学网页设计好,广告视频制作公司,中国100强企业排名表神经网络是一种受生物神经元系统启发的人工计算模型#xff0c;用于模仿人脑的学习和决策过程。它由大量互相连接的节点#xff08;称为神经元#xff09;组成#xff0c;这些节点处理和传递信息。神经网络通常包含输入层、隐藏层#xff08;可有多个#xff09;和输出层…神经网络是一种受生物神经元系统启发的人工计算模型用于模仿人脑的学习和决策过程。它由大量互相连接的节点称为神经元组成这些节点处理和传递信息。神经网络通常包含输入层、隐藏层可有多个和输出层每个层中的神经元之间通过权重相连。
输入层接收数据并将其转换为可供处理的形式。隐藏层进行复杂的特征学习和抽象通过非线性变换捕捉数据之间的复杂关系。输出层根据隐藏层的输出生成最终预测或分类结果。
训练神经网络的过程涉及到调整这些权重以最小化预测结果与实际标签之间的误差。这个过程通常使用反向传播算法并且在深度学习中可以使用梯度下降等优化方法。
神经网络主要由输入层隐藏层输出层构成。当隐藏层只有一层时该网络为两层神经网络由于输入层未做任何变换可以不看做单独的一层。实际中网络输入层的每个神经元代表了一个特征输出层个数代表了分类标签的个数在做二分类时如果采用sigmoid分类器输出层的神经元个数为1个如果采用softmax分类器输出层神经元个数为2个如果是多分类问题即输出类别3时输出层神经元为类别个数而隐藏层层数以及隐藏层神经元是由人工设定。 1、对数据 mouse_viral_study.csv 的建立 MLPClassifier 模型训练和 测试数据划分比例是 8:2。
2、对比将决策树和 MLPClassifier 作为基分类器时建立 bagging, AdaBoost 集成模型并比较不同基分类下集成模型的分类精度。 导入数据
#载入数据
import pandas as pd
data pd.read_csv(mouse_viral_study(1).csv)
#划分特征集和类别集
x data.iloc[:,:-1]
y data.iloc[:,-1]
#划分训练集和测试集
from sklearn import model_selection
x_train,x_test,y_train,y_test model_selection.train_test_split(x,y,test_size0.2,random_state1)
Bagging模型
#bagging
from sklearn.neighbors import KNeighborsClassifier
from sklearn.ensemble import BaggingClassifier
bagging BaggingClassifier(KNeighborsClassifier(),max_samples0.5,max_features0.5)
bagging.fit(x_train,y_train)
pred1 bagging.predict(x_test)
from sklearn.metrics import classification_report
#输出Accuracy、Precisio、Recall、F1分数等信息
print(bagging模型评估报告\n,classification_report(y_test,pred1))
print(bagging模型的准确率为,bagging.score(x_test,y_test)) AdaBoost模型
#adaboost
from sklearn.ensemble import AdaBoostClassifier
AB AdaBoostClassifier(n_estimators 10)
AB.fit(x_train,y_train)
pred3 AB.predict(x_test)
print(AdaBoost模型评估报告\n,classification_report(y_test,pred3))
print(AdaBoost模型的准确率为,AB.score(x_test,y_test))MLPClassifier模型
from sklearn.neural_network import MLPClassifier
mp MLPClassifier(solverlbfgs,alpha0.5,hidden_layer_sizes(5,2),random_state1)
mp.fit(x_train,y_train)
MLPClassifier(activationtelu,alpha1e-05,batch_sizeauto,beta_10.9,beta_20.999,early_stoppingFalse,epsilon1e-08,hidden_layer_sizes(5,2),learning_rateconstant,learning_rate_init0.001,max_iter200,momentum0.9,nesterovs_momentumTrue,power_t0.5,random_state1,shuffleTrue,solverlbfgs,tol0.0001,validation_fraction0.1,verboseFalse,warm_startFalse)
predict3 mp.predict(x_test)
from sklearn.metrics import accuracy_score
mp_score accuracy_score(y_test,predict3)
mp_score
print(MLPClassifier模型评估报告\n,classification_report(y_test,predict3))
print(MLPClassifier模型的准确率为,mp.score(x_test,y_test))