bp神经网络预测python代码_机器学习之多层神经网络(附Python代码和数据)

1 引言

多层神经网络,Multiple-layers Perceptron (MLP),又被称为多层感知机,是机器学习中深度学习的典型算法。关于多层神经网络的算法原理,我们在Stata和R实现的文章中已经进行过详细介绍。需要了解的朋友可以点击下面两个链接进行跳转。

盲区行者:深度学习之BP神经网络--Stata和R同步实现(附Stata数据和代码)​zhuanlan.zhihu.com
8866352d4a81cdd9a161706459def560.png
盲区行者:深度学习之BP神经网络--Stata和R同步实现(附R数据和代码)​zhuanlan.zhihu.com
8866352d4a81cdd9a161706459def560.png

今天我们用Python去介绍神经网络这一主流的深度学习算法。

2 用MLP逼近 XOR 函数

XOR函数简介:XOR相对于普通的 OR判断函数,区别在于两个参数表达式结果都为真(
True或者1)的时候,返回的是假(False或者0);其它三种情况((1, 0), (0 ,1), (0, 0))返回的结果与OR一致,分别是(1, 1, 0)。换句话说,当XOR两个参数表达式结果一致的时候(都为0或都为1),返回的结果是0;不一致的时候返回的结果是1。
## 准备工作
from sklearn.model_selection import train_test_split
from sklearn.neural_network import MLPClassifier

## 输入结果变量和自变量的数据。这里共有2个自变量,或者说有2个特征
y = [0, 1, 1, 0]
X = [[0, 0], [0, 1], [1, 0], [1,1]]

## 用MPClassifier函数训练这个多层的MLP函数。隐藏层的层数指定是2,激活行数是logistic
classifier = MLPClassifier(solver='lbfgs', activation='logistic', 
                           hidden_layer_sizes=(2, ), random_state=20)
In[32]: classifier.fit(X, y)
Out[32]: 
MLPClassifier(activation='logistic', hidden_layer_sizes=(2,), random_state=20,
              solver='lbfgs')

## 基于训练好的MLP,基于训练数据进行预测
y_hat = classifier.predict(X)

## 评估MLP的性能
classifier.score(X, y) #输出预测结果的精确度
Out[34]: 1.0 #准确率达到100%

for i, p in enumerate(y_hat):
    print('真实值: %s, 预测值: %s' % (y[i], p))
真实值: 0, 预测值: 0
真实值: 1, 预测值: 1
真实值: 1, 预测值: 1
真实值: 0, 预测值: 0

3 MLP模型的应用案例

(待补充)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值