加入收藏 | 设为首页 | 会员中心 | 我要投稿 威海站长网 (https://www.0631zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 创业 > 模式 > 正文

神经网络原来这么简单,机器学习入门贴送给你 | 干货

发布时间:2020-06-23 20:22:14 所属栏目:模式 来源:站长网
导读:副标题#e# 本文经AI新媒体量子位(公众号ID:QbitAI)授权转载,转载请联系出处。 你想学机器学习吗?这里有一个入门贴适合你。 什么神经网络、随机森林、计算机视觉通通一网打

import numpy as np  def mse_loss(y_true, y_pred):   # y_true and y_pred are numpy arrays of the same length.   return ((y_true - y_pred) ** 2).mean()  y_true = np.array([1, 0, 0, 1]) y_pred = np.array([0, 0, 0, 0])  print(mse_loss(y_true, y_pred)) # 0.5  训练神经网络——最小化损失

计算了损失函数之后,就需要将损失最小化,这也是训练神经网络的最终目的所在。

接下来帖子有一段多变量演算,涉及微积分。

作者表示,

如果对微积分不满意,可随时跳过。

简单起见,我们就假设这个数据集中只有Alice。

那么,它的损失函数就是这样。

神经网络原来这么简单,机器学习入门贴送给你 | 干货

那么它的权重w跟偏差b,在图上标示,那么就有6个权重变量,3个偏差变量。

神经网络原来这么简单,机器学习入门贴送给你 | 干货

于是,便将损失函数写为多变量函数。

神经网络原来这么简单,机器学习入门贴送给你 | 干货

想象一下,我们只要调整w1,就可能导致L的变化。那具体是如何变化的呢?这就需要计算偏导数了。

神经网络原来这么简单,机器学习入门贴送给你 | 干货

利用链式求导法则进行反向求导,而这一过程就叫做反向传播。

详细计算过程就不放在这里了,大家去他个人网站去看哦~(链接已附文末)

作者温馨提示,看这个过程的时候不要着急,拿出手中的笔和纸,能够帮助你理解。

接下来,使用随机梯度下降的优化算法,公式表示如下(以w1为例):

神经网络原来这么简单,机器学习入门贴送给你 | 干货

其中的“学习速率”控制着训练速度,过大或者过小都不合适。

如果我们将所有的变量都进行这样的优化,那么损失函数将逐渐减少,神经网络就能够得到改善。

神经网络原来这么简单,机器学习入门贴送给你 | 干货

简单来说,整个训练过程是这样的:

1、数据集中选择一个样本,就如Alice。

2、利用反向传播计算所有变量的偏导数。

3、使用随机梯度下降来训练神经网络,更新变量。

4、返回步骤1。

神经网络的部分就介绍到这里,怎么样?看完之后,有什么感想?

是不是觉得神经网络也还好了。还有其他概念等着你来学习呢!

 

(编辑:威海站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读