超级好懂!吴恩达机器学习Deeplearning.ai课程学习记录:通过例子大致了解神经网络如何工作

在这一节中,你将大致了解神经网络是如何工作的。

目录

示例一:单维度逻辑回归

示例二:多维特征逻辑回归

示例三:具有多个隐藏层


示例一:单维度逻辑回归

我们将使用需求预测中的一个示例,从而查看产品并预测是否会成为畅销产品。

例子中,横坐标是衬衫的价格,纵坐标是0-1之间的一个数,很明显这是一个逻辑回归,因此函数为sigmoid函数。

那么,其中的输入就为:

x=price

预测的输出为:

f(x)=\frac{1}{1+e^{-(wx+b)}}

为了代表神经网络,我们转换一下表示的字母,用a替换f:

a=\frac{1}{1+e^{-(wx+b)}}

字母a指代activation,意思为激活函数,这个a可以看作是神经网络之中非常简化的一个神经元(neuron),我们可以把一个神经元看作是一个计算机程序,负责接收一个或多个输入,然后经过运行,输出一个或多个输出,当然在这个例子中a代表的是该件T恤衫畅销的概率。

建造一个神经元网络就需要很多的这种单个神经元,再将它们联系在一起。

示例二:多维特征逻辑回归

在这个例子中,我们采取了多维度的特征来预测T恤的畅销程度,这多个维度分别是:

运费price,金额shipping cost,市场营销marketing,材质material。

其中运费和金额决定了这件T恤的价格承受度(affordbility),市场营销决定了这款T恤的大众认知度(awareness),材质决定了T恤的质量(quality)

为了达到以上的三个目的,我们需要三个神经元,来分别输出我们需要的三个条件。

在得出了以上三个所需的数据之后,我们还需要一个神经元作为逻辑回归,从而得出我们最终想要的,即这件T恤是否会畅销。

用图我们可以更清晰地理解:

通常来说,那三个蓝色的神经元(即计算affordability,awareness,perceived quality的神经元)我们可以将其划分为一组,记为一层(layer),因为其输出都给了下一层粉色的神经元,当然右边的这个粉色神经元也可以看作是一层。由此我们可以看出,层可以具有多个神经元,也可以只有一个神经元。右边粉色的这层也叫做输出层(outputlayer),因为这一层的输出就是整个神经网络我们需要的输出。affordability,awareness,perceived quality这三个蓝色的神经元也叫做激活(activation),因为其是蓝色神经元的输出同样地,粉色神经元的输出也叫做它的激活。

因此,这个神经网络的工作方式是这样的:

蓝色层接收price,shipping cost,marketing,material。然后蓝色层使用这四个输入计算新的三个数字称为激活值(activation values),输出层利用这三个数字再计算出T恤的畅销概率。

当然,这只是一个很小很小的神经网络,我们可以手动决定哪些特征链接哪个神经元,但是在实际过程中,会有很多很多的维度,我们不可能手动选择,因此常用的方法是将input layer全部连接到下一层之中,如图所示:

为了简化这四个原始的输入参数,我们将这四个参数放在一起,看作是神经网络的输入层(input layer),写作向量x,这个向量叫做特征向量

特征向量被送入中间的蓝色层,为了给这个蓝色层一个名字,我们称之为隐藏层(hidden layer)(之所以其叫隐藏层,因为在你看别人的神经网络时,你在训练集中往往只能看到特征向量输入和输出,中间蓝色层的输出你是看不到的,所以其称为隐藏层)然后计算出其激活值,这三个激活值再变成一个向量a,再经过输出层,最后,输出这件T恤畅销的概率。

这就是神经网络的全部过程的简单描述,它一般会有几层每一层向下一层输入一个向量,下一层再输出一个向量直到最后输出层输出结果。

对于神经网络而言,从符合直觉的角度的看法来讲,假设我们只看左边,我们会发现粉色层就是一个逻辑回归,但是不同的是它的输入并不是原始的特征,而是经过了组合的激活值。所以一种理解神经网络的方式是把它就看作逻辑回归,只是其输入我们经过了一定的处理使其可以学习自己的特征并得到激活值。你可能在我吴恩达机器Deeplearning.ai课程学习记录:多维特征(2)看到过特征工程有关的知识,我们在其中利用特征工程将长和宽组合成面积,从而将面积当作新的特征,神经网络的激活过程和这个有些相似,只是你不需要手动进行组合了,神经网络会自己学习并组合。

所以以上的步骤,用最简单的说法就是,将输入层的特征向量输入到隐藏层之中得到特征值,再将特征值传入输出层之中,得到输出值,即最终的激活值,最终的预测。

示例三:具有多个隐藏层

这个神经网络将输入层的特征向量输送到第一个隐藏层,这个隐藏层具有四个神经元,再将得到的激活值送到第二个隐藏层,它具有五个神经元,再将得到的激活值送到第三层,这一层具有三个神经元,最后将新的激活值送到输出层,最终得到输出。这种多个隐藏层的神经网络也称为多层感知器(multilayer perception)。

在你自己建造自己的神经网络时,你要做的决定之一就是你想要多少个隐藏层,以及每层你想要多少个神经元,这个问题专业的术语叫做神经网络的架构问题(the architecture of neural network)

  • 52
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

江安的猪猪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值