mlp神经网络_python机器学习:神经网络算法(深度学习)

神经网络算法最近似“深度学习”,不过尽管深度学习在许多机器学习应用中具有巨大的潜力,但是由于深度学习算法往往经过精度调整,一般只适用于特定的应用场景。由于目前我们还未学习较为高深的算法,所以目前我们暂时只讨论一些相对简单的方法,即用于分类和回归的多层感知机(MLP,也被称为前馈神经网络或神经网络),可以将其作为研究深度复杂的深度学习方法的起点。

神经网络模型:MLP可以被视为广义的线性模型,在执行多层处理后得到结论,线性模型的预测公式为:y = w[0]*x[0] + w[1]*x[1] + ...+w[p]*x[p] + b (其中,y是输入特征想x[0]到x[p]的加权求和,权重为学到系数w[0]到w[p]。我们可以将这个公式可视化,如下图所示:

from IPython.display import display

display(mglearn.plots.plot_logistic_regression_graph())

59651279529e741757740d7d91e5c120.png

Logistic回归可视化,其中输入特征和预测结果显示为结点,系数是结点之间的连线

图中,左边的每个结点代表一个输入特征,连线代表学到的系数,右边的结点代表输出,是输入的加权求和。在MLP中,对此重复这个过程计算加权求和的过程,首先计算代表中间的隐藏单元,然后再计算这些隐藏单元的加权求和并得到最终结果。单隐层的多感知机如下图所示:

b76f97fe2477014749b08bb17637686b.png

单隐层多感知机图示

这个模型需要学习更多的系数(也叫作权重):在每个输入与每个隐藏单元(赢藏单元组成了一个隐藏层)之间有一个系数,在每个隐藏单元与输出之间也有一个系数。

从数学的角度来看,计算一系列加权求和与只计算一个加权求和是一样的。因此,为了让这个模型比线性模型更加强大,我们还需要在计算完每个隐藏单元的加权求和之后,对结果再应用一个非线性函数(通常为校正非线性或叫校正线性单元或relu)或正切双曲线。然后将这个函数的结果加权求和,计算得到输出y。可通过如下示例来进行说明:

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值