python sklearn 神经网络,sklearn 卷积神经网络

  python sklearn 神经网络,sklearn 卷积神经网络

  实例神经网络分类神经网络学习能力强大,在数据量足够,隐藏层足够多的情况下,理论上可以拟合出任何方程。

  理论部分实例提供的神经网络算法有三个:

  neural_network.BernoulliRBM,neural_network.MLPClassifier,neural_network.MLPRgression

  我们现在使用MLP(多层感知)做分类,回归其实也类似。该网络由三部分组成:输入层、隐藏层、输出层,其中隐藏层的个数可以人为设定。神经网络学习之后的知识都存在每一层的权重矩阵中,学习的过程也就是不断训练权重达到拟合的效果。权重训练比较常用的方法是反向传递(反向传播

  分类代码# coding=utf-8导入熊猫as PD导入matplotlib。py绘图为来自sk learn的PLT。从sk learn导入数据集。neural _ network import MLP classifier从sk learn导入numpy作为NP。预处理导入标准scaler def main():iris=datasets。load _ iris()#典型分类数据模型#这里我们数据统一用熊猫处理数据=pd .DataFrame(iris.data,columns=iris。feature _ names)数据[ class ]=iris。目标#这里只取两类data=data[data[class]!=2] #为了可视化方便,这里取两个属性为例scaler=标准scaler()X=data[[萼片长度(厘米),萼片宽度(厘米)]] scaler.fit(X) #标准化数据集X=缩放器。transform(X)Y=data[[ class ]]#划分数据集X_train,X_test,Y_train,Y_test=train_test_split(X,Y)mpl=MLP分类器(solver= lbfgs ,activation= logistic )mpl。fit(X _ train,Y_train) print Score:\n ,mpl.score(X_test,Y_test) #score是指分类的正确率#区域划分h=0.02 x_min,x_max=X[:0].min() - 1,X[:0].max() 1 y_min,y_max=X[:1].min() - 1,X[:1].max() 1 xx,yy=np.meshgrid(np.arange(x_min,x_max,h),np.arange(y_min,y_max,h))Z=mpl。预测(NP。c _[xx。ravel(),yy。ravel()])Z=Z . shape(xx。形状)PLT。康托URF(xx,YY,Z,cmap=plt.cm.Paired) #做出原来的散点图class1_x=X[Y[class]==0,0] class1_y=X[Y[class]==0,1] l1=plt.scatter(class1_x,class1_y,color=b ,label=iris。target _ names[0])class 2 _ X=X[Y[ class ]==1,0] class2_y=X[Y[class]==1,1] l2=plt.scatter(class2_x,class2_y,class2_y测试结果

  转载于:https://www。cnblogs。com/方浩/p/7533385.html

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: