#关于线性模型:y'=w[0]*x[0]+w[0]*x[0]+...+w[p]*x[p]+b,其中,y'表示对y的估算值,x[0]到x[p]是样本特征值,w表示每个特征值的权重,
# y'可以看成是所有特征值的加权求和。基本原理是找到当训练数据集中y的预测值和其真实值的平方差最小的时候,所对应的w值和b值。
#非线性矫正:生成隐藏层之后,需要对结果进行非线性矫正(relu)或双曲正切处理(tanh),通过这两种方式处理后的结果用来计算最终结果y。
#MLP计算流程:
#1、y0=w[0]*x[0]+w[0]*x[0]+...+w[p]*x[p]+b、y1=w[0]*x[0]+w[0]*x[0]+...+w[p]*x[p]+b、y2=w[0]*x[0]+w[0]*x[0]+...+w[p]*x[p]+b
#2、h0=tanh(y0)、h1=tanh(y1)、h2=tanh(y2)
#3、y'=v[0]*h0+v[1]*h1+...+v[n]*hn
#导入MLP神经网络
from sklearn.neural_network import MLPClassifier
from sklearn.datasets import load_wine
from sklearn.model_selection import train_test_split
import matplotlib.pyplot as plt
from matplotlib.colors import ListedColormap
import numpy as np
#导入数据集获取工具
from sklearn.datasets import fetch_mldata
from PIL import Image
def mlp_wine():
wine=load_wine()
x=wine.get('data')[:,:2]
y=wine.get('target')
x_train,x_test,y_train,y_test=train_test_split(x,y,random_state=0)
#定义分类器,两个节点数为10的隐藏层,tanh为激活函数
mlp=MLPClassifier(solver='lbfgs',hidde
mlp神经网络及python测试
最新推荐文章于 2024-04-07 21:48:11 发布
本文介绍了一种基于多层感知器(MLP)的神经网络模型,并通过葡萄酒数据集和MNIST手写数字数据集的实际案例,展示了如何利用Python中的Scikit-Learn库实现分类任务。

最低0.47元/天 解锁文章
900

被折叠的 条评论
为什么被折叠?



