首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >快速人工智能第4课- MNIST。对按像素乘以权重感到困惑吗?

快速人工智能第4课- MNIST。对按像素乘以权重感到困惑吗?
EN

Data Science用户
提问于 2020-12-30 18:23:19
回答 2查看 102关注 0票数 0

我上了“快速人工智能”课程的第四课“程序员的深度学习”课程,并且已经上过几次同样的课了,但是我不认为我得到了很多东西。在继续前进之前,我想了解一下发生了什么。

这节课是关于MNIST的--杰里米正在识别3s和7s。因此,他有12000张图像(忽略小批次),每个图像约有800个像素,张量的形状为(12000, 800)。他随机产生800个重量,每个像素一个,加上一个偏差(我不太明白两者的目的)。

因此,对于第一幅图像,他将图像的值乘以该像素的权重。因此,如果像素值为0.9,权重为0.1,则为0.9*0.1 = 0.09。或者,如果像素值为0.5,权重为0.6,则为0.5*0.6 = 0.3

(然后添加一个偏倚,对每一幅图像都这样做)

我不明白把这些数字相乘的目的或好处是什么。如果我想知道我们对像素值的权重有多精确,我会做abs(value - weight)

然后把这些加起来,我就能得到我的体重精确程度的分数。

这就是我困惑的地方。我遗漏了什么?

EN

回答 2

Data Science用户

发布于 2020-12-30 19:14:34

输入图像总共包含784 (28 * 28)像素,这意味着模型有784个输入。如果我们在下一层中使用一个连接到所有输入的节点,那么当每个像素连接到下一层的节点时,我们也会得到784个权重。另见以下图像:

输入层包含模型的所有不同输入(即所有像素),如您所见,所有这些输入都连接到下一层中的所有节点。每个连接/线路都有一个特定的权重分配给它,一个完全连接的层的权重数等于n_input * n_output。在快速人工智能过程中,这意味着有784个权重(28 * 28 * 1),而在下面的示例中,第一层和第二层有12个权重(3 * 4),第二层和第三层有8个权重(4 * 2)。

造成这种偏差的原因似乎已经在笔记本中解释过了,没有偏见,功能就不够灵活。如果所有输入等于零,那么输出也将为零,而它需要是一个与零不同的数字。偏差允许通过上下移动函数来实现这一点,也见线性回归的b项。

票数 0
EN

Data Science用户

发布于 2020-12-31 10:01:59

也许思考神经网络和回归之间的关系可以帮助你理解权重的作用。如果采用浅层单层神经网络,具有m特性的单个输入样本的输出是:

y = f(w_0 + \sum_{i=1}^m w_i x_i)

其中w_0是偏置函数,f是激活函数。您可以认识到这是一个非线性回归公式,偏差是截距,当f是恒等式时,它会退化为线性回归。

所以,权值只是回归的参数,这就是为什么你把输入值乘以权重。

深层神经网络只是添加了其他层,以允许任意(不限于函数f)非线性-实际上两层已经赋予了适应任意函数的能力,只要有足够的神经元存在,但是这种网络可能实际上不可能适应数据,这就是其他具有某种结构的层来拯救的地方,但这是另一回事。

您的输入特性是像素的值,因此它们被乘以权重,因为模型就是这样形成的,类似于回归。希望这有助于澄清。

票数 0
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/87355

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档