机器学习入门之Python3机器学习实践:BP神经网络理论与实例
小标 2018-11-28 来源 : 阅读 1038 评论 0

摘要:本文主要向大家介绍了机器学习入门之Python3机器学习实践:BP神经网络理论与实例,通过具体的内容向大家展现,希望对大家学习机器学习入门有所帮助。

本文主要向大家介绍了机器学习入门之Python3机器学习实践:BP神经网络理论与实例,通过具体的内容向大家展现,希望对大家学习机器学习入门有所帮助。

fig.png

符号说明

神经网络的层数m,也就是包括一个输入层,m-2个隐层,一个输出层;

输入层为I,其节点数等于单个样本的输入属性数N_i;
隐层输出为Hh,h为1到m-2,每一个隐层的节点数为Nh;
输出层为O,其节点数等于单个样本的输出属性数N_o;
样本真实输出为R;

层之间连接的权重为Wq,q为0到m-2,Wq矩阵的大小为(g, t), g为该隐层前一层的节点数,t为该隐层的节点数;
对应的偏置为Bq,Bq矩阵的大小为(1, t), t为该隐层的节点数;

隐层的激活函数Ah,h为0到m-2。每一层的激活函数可以不同,但是大多数情形下设置为相同的;

常用的激活函数:Sigmoid,Tanh,ReLu。选择激活函数时一定要注意:输出层激活函数的输出尺度一定要和样本的输出数据是同一尺度。例如Sigmoid的输出是0-1,因此样本的输出也应该转化到0-1之间。

输出层O与样本真实输出R之间的成本函数C,回归问题用最小二乘函数, 分类问题用交叉熵函数;

s为子样本数,也就是一次训练过程中的样本数。当s为1是在线学习;当s为k,也就是全部样本数,为增量学习;s为小于k的其他数值为批量学习,比较常用;

运算符号说明:+为numpy数组的广播运算加法;×为矩阵对应元素相乘;表示矩阵乘法;

网络结构图


nnstruct.png


样本数据说明


data.png


正向传播过程


forward.png


反向传播过程



回归问题


reg.png



分类问题


class.png

梯度下降


gradient.png


image


回归实例:北京市Pm2.5预测



训练结果


ten_train.png



预测结果


ten_predict.png

分类实例:Mnist手写数字识别(多类别)



训练结果


tensorflow.gif



预测结果


ten_mnist.jpg


image

实例代码:回归,分类

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标人工智能机器学习频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程