多层感知器算法

多层感知器算法多层感知器算法 导入 MLP 分类器 fromsklearn neural networkimpor 导入红酒数据集 fromsklearn datasetsimpo winewine load wine 选取前两个特征进行建模 X wine data 2 类别变量 y wine target 数据可视化 importmatplo pyplotasplt matplotlibin figure d

多层感知器算法

#导入MLP分类器 from sklearn.neural_network import MLPClassifier 
#导入红酒数据集 from sklearn.datasets import load_wine wine=load_wine() 
#选取前两个特征进行建模 X=wine.data[:,:2] #类别变量 y=wine.target 
#数据可视化 import matplotlib.pyplot as plt %matplotlib inline plt.figure(dpi=100) plt.scatter(X[:,0],X[:,1],c=y,cmap=plt.cm.spring,edgecolors='k') 

在这里插入图片描述

#拆分训练集与测试集 from sklearn.model_selection import train_test_split X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.3,random_state=8) 
#MLPClassifier"三板斧" mlp=MLPClassifier(random_state=8) mlp.fit(X_train,y_train) print(mlp.score(X_train,y_train),mlp.score(X_test,y_test)) 
0.35484 0. 
#参数设置 mlp=MLPClassifier(hidden_layer_sizes=(100,100),random_state=8) mlp.fit(X_train,y_train) print(mlp.score(X_train,y_train),mlp.score(X_test,y_test)) 
0.70968 0.77778 
mlp=MLPClassifier(hidden_layer_sizes=(100,100,100),random_state=8) mlp.fit(X_train,y_train) print(mlp.score(X_train,y_train),mlp.score(X_test,y_test)) 
0.32258 0.77778 
mlp=MLPClassifier(hidden_layer_sizes=(120,120,200),activation='tanh',random_state=8) mlp.fit(X_train,y_train) print(mlp.score(X_train,y_train),mlp.score(X_test,y_test)) 
0.03226 0.48148 
mlp=MLPClassifier(hidden_layer_sizes=(100,100), activation='relu', solver='sgd', random_state=8) mlp.fit(X_train,y_train) print(mlp.score(X_train,y_train),mlp.score(X_test,y_test)) 
0.03226 0.5 
mlp=MLPClassifier(hidden_layer_sizes=(100,100), activation='relu', #solver='lbfgs', random_state=8) mlp.fit(X_train,y_train) print(mlp.score(X_train,y_train),mlp.score(X_test,y_test)) 
0.70968 0.77778 
import numpy as np #拟合结果可视化 x_min,x_max=X[:,0].min()-0.5,X[:,0].max()+0.5 y_min,y_max=X[:,1].min()-0.5,X[:,1].max()+0.5 xx,yy=np.meshgrid(np.arange(x_min,x_max,.02),np.arange(y_min,y_max,.02)) Z=mlp.predict(np.c_[xx.ravel(),yy.ravel()]) Z=Z.reshape(xx.shape) plt.figure() plt.pcolormesh(xx,yy,Z,cmap=plt.cm.Pastel1) plt.scatter(X[:,0],X[:,1],c=y,cmap=plt.cm.winter,edgecolor='k') plt.xlim(xx.min(),xx.max()) plt.ylim(yy.min(),yy.max()) plt.title("Classifier:MLPClassifier") plt.show() 

在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/177088.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月26日 下午8:20
下一篇 2026年3月26日 下午8:20


相关推荐

  • 八皇后问题详解(四种解法)

    八皇后问题详解(四种解法)如果你去百度百科八皇后这个问题,你会发现人家也是历史上有头有脸的一个问题,最后一句“计算机发明后就有一万种方式解决这个问题”读起来也让程序猿们很快活。闲话少说,开始阐述我的思路:最无脑的解法一定是八个for遍历,浪费了太多的计算资源在各种无用功上面,我们稍微构思一下:首先如何决定下一个皇后能不能放这里可以有两种思路,第一种是尝试维护一个8*8的二维矩阵,每次找到一个空位放下一个皇后就把对应行列对

    2022年6月30日
    23
  • 获杭州 10 亿元投资后,智谱宣布再获珠海 5 亿元投资

    获杭州 10 亿元投资后,智谱宣布再获珠海 5 亿元投资

    2026年3月12日
    2
  • Oracle技术之如何分析执行计划(一)

    Oracle技术之如何分析执行计划(一)

    2021年8月26日
    71
  • BigDecimal保留两位小数及格式化成百分比[通俗易懂]

    BigDecimal保留两位小数及格式化成百分比[通俗易懂]BigDecimal保留两位小数及格式化成百分比在项目中经常会用到小数的一些计算,而float和double类型的主要设计目标是为了科学计算和工程计算。他们执行二进制浮点运算,这是为了在广域数值范围上提供较为精确的快速近似计算而精心设计的。然而,它们没有提供完全精确的结果,所以不应该被用于要求精确结果的场合。但是,商业计算往往要求结果精确。所以有时候必须要采用BigDecimal。publicc…

    2026年2月25日
    9
  • eclipse如何创建java_eclipse如何创建java项目

    eclipse如何创建java_eclipse如何创建java项目eclipse创建java项目的方法:首先点击箭头所指的file选项,并新建project;然后点击项目下的src包,右键SEC,选择箭头所指的new和CLASS;最后输入框中输入class名称,勾选箭头所指的框。本教程操作环境:windows7系统、java10&&EclipseIDE2020版,DELLG3电脑,该方法适用于所有品牌电脑。相关免费学习推荐:java基础教程…

    2022年7月24日
    10
  • Qt实现简单的单例模式

    Qt实现简单的单例模式

    2021年9月11日
    65

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号