打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
神经网络的底层原理(一篇即懂)

阿一:

阿一:

阿一:

1.神经网络的生物表示

2.神经网络的数学表示

3.神经网络必备的一些数学基础

4.Q&A

阿一:

在人工智能领域,神经网络(Neural Network,NN)是近年来的热门话题,也是大家觉得神秘莫测的一部分,今天我将带着大家去了解一下神经网络是什么,以及数学是怎样参与其中的。为了帮助大家直观地理解,类比或多或少有些粗糙,不当之处还请见谅。

本节知识参考了很多文献,其中最主要的就是涌井良幸的《深度学习的数学》,大家有时间也可以看看这本书。

阿一:

1.神经网络的生物表示

阿一:

看过以往的科幻电影、动画片就知道,人工智能是人们很早就有的想法。那么,早期研究的人工智能和用神经网络实现的人工智能有哪些不同呢?答案就是用神经网络实现的人工智能能够自己学习过去的数据。以往的人工智能需要人们事先将各种各样的知识教给机器,这在工业机器人等方面取得了很大成功。而对于用神经网络实现的人工智能,人们只需要简单地提供数据即可。神经网络接收数据后,会从网络的关系中自己学习并理解。

阿一:

谈到神经网络的想法,需要从生物学上的神经元( neuron)开始说起。

将神经元的工作在数学上抽象化,并以其为单位人工地形成网络,这样的人工网络就是神经网络。将构成大脑的神经元的集合体抽象为数学模型,这就是神经网络的出发点。

阿一:

1.1 整理神经元的工作

阿一:

神经元示意图

阿一:

让我们来更详细地看一下神经元传递信息的结构。如上图所示,神经元是由细胞体、树突、轴突三个主要部分构成的。其他神经元的信号(输入信号)通过树突传递到细胞体(也就是神经元本体)中,细胞体把从其他多个神经元传递进来的输入信号进行合并加工,然后再通过轴突前端的突触传递给别的神经元。

阿一:

1.2 神经元对信号的信息加工

阿一:

神经元对信号的信息加工

阿一:

假设一个神经元从其他多个神经元接收了输入信号,这时如果所接收的信号之和比较小,没有超过这个神经元固有的边界值(称为阈值),这个神经元的细胞体就会忽略接收到的信号,不做任何反应。不过,如果输入信号之和超过神经元固有的边界值(也就是阈值),细胞体就会做出反应,向与轴突连接的其他神经元传递信号,这称为点火。

阿一:

这个地方有一个很有意思的问题,神经元细胞为什么要进行判断,为什么信号要超过一定值才会进行反应?

阿一:

请大家思考一下给我答案

阿一:

@桦--数学--研0?我的问题是为什么会存在信号损失

阿一:

请大家踊跃参与回答这个问题

阿一:

这对后面你们的理解很关键

阿一:

好,我们继续对于生命来说,神经元忽略微小的输入信号,这是十分重要的。反之,如果神经元对于任何微小的信号都变得兴奋,神经系统就将“情绪不稳定”。

阿一:

神经元对信号的信息加工

阿一:

让我们整理一下已经考察过的神经元点火的结构。(i) 来自其他多个神经元的信号之和成为神经元的输入。(ii) 如果这个信号之和超过神经元固有的阈值,则点火。(iii) 神经元的输出信号可以用数字信号 0 和 1 来表示。即使有多个输出端,其值也是同一个。

阿一:

这就是神经元的信号处理过程,也是目前科学家对于我们如何去思考给出的一些答案。

阿一:

有了这个生物学基础了之后呢,我们来尝试一下如何用数学来描述这件事儿?

阿一:

2.神经网络的数学表示

阿一:

到这一步,大家没问题吗?没问题扣1 有问题扣0。

阿一:

好的,有问题的要提哦。

阿一:

首先,我们用数学式表示输入信号。由于输入信号是来自相邻神经元的输出信号,所以根据 (iii),输入信号也可以用“有”“无”两种信息表示。因此,用变量x表示输入信号时,如下所示。

阿一:

阿一:

输入的信号的表示

阿一:

接下来我们来表示输出的信号哈。

阿一:

根据 (iii),输出信号可以用表示点火与否的“有”“无”两种信息来表示。因此,用变量 y 表示输出信号时,如下所示。

阿一:

输出信号表示

阿一:

好,接下来就是函数的过程,什么样的输入决定了什么样的输出对不?

阿一:

从 (i) 和 (ii) 可知,神经元点火与否是根据来自其他神经元的输入信号的和来判定的,但这个求和的方式应该不是简单的求和。例如在网球比赛中,对于来自视觉神经的信号和来自听觉神经的信号,大脑是通过改变权重来处理的。因此,神经元的输入信号应该是考虑了权重的信号之和。用数学语言来表示的话,例如,来自相邻神经元 1、2、3 的输入信号分别为x1、x2、x3,则神经元的输入信号之和可以如下表示。

阿一:

这个我们给个代号表达式(1)

阿一:

w就是表示大家的权重

阿一:

OK,我们一起整理一下,输入,输出,过程

阿一:

大家脑袋里跟着回顾一下

阿一:

根据 (ii),神经元在信号之和超过阈值时点火,不超过阈值时不点火。于是,利用式 (1),点火条件可以如下表示。

阿一:

阿一:

到这里大家有问题吗?

阿一:

没问题扣1

阿一:

好,那么接下来我们用图形来表达一下

阿一:

点火表达式图形解释

阿一:

这个图形是否有问题,就是我们在用图形表达我们的点火表达式

阿一:

加权的x,即输入信号之和小于阈值,y就是0,大于阈值y就是1

阿一:

为了在数学上更好的表达,我们这里引进一个单位跃迁函数

阿一:

阿一:

单位跃迁函数

阿一:

引进这个函数之后我们的图像表达就更美了

阿一:

而这个函数也就是我们经常听到的激活函数

阿一:

这就是激活函数的整个推导过程

阿一:

3.神经网络必备的一些数学基础

阿一:

神经网络必备的数学基础

阿一:

3.1 Sigmoid 函数

阿一:

sigmoid函数表达式

阿一:

先来看看它的图形,Sigmoid 函数 的输出值是大于 0 小于 1 的任意值。此外,该函数连续、光滑,也就是说可导。这两种性质使得Sigmoid 函数很容易处理。

阿一:

sigmoid函数与单位跃迁函数的图像区别

阿一:

单位阶跃函数的输出值为 1 或 0,表示点火与否。然而,Sigmoid 函数的输出值大于 0 小于 1,这就有点难以解释了。如果用生物学术语来解释的话,如上文中的表格所示,可以认为输出值表示神经单元的兴奋度等。输出值接近 1 表示兴奋度高,接近 0 则表示兴奋度低。

阿一:

3.2偏置

阿一:

我们将激活函数中的-θ换成+b 

阿一:

因为我们常见的一次函数是不是y=ax+b

阿一:

为了更好去处理,就将激活函数处理成了

阿一:

总结

阿一:

阿一:

阿一:

将这样的神经单元连接为网络状,就形成了神经网络。

阿一:

神经网络底层图像

阿一:

阶层型神经网络如下图所示,按照层(layer)划分神经单元,通过这些神经单元处理信号,并从输出层得到结果,构成这个网络的各层称为输入层、隐藏层、输出层,其中隐藏层也被称为中间层。各层分别执行特定的信号处理操作。输入层负责读取给予神经网络的信息。属于这个层的神经单元没有输入箭头,它们是简单的神经单元,只是将从数据得到的值原样输出。隐藏层的神经单元执行前面所复习过的处理操作 (1) 和 (2)。在神经网络中,这是实际处理信息的部分。输出层与隐藏层一样执行信息处理操作 (1) 和 (2),并显示神经网络计算出的结果,也就是整个神经网络的输出。

阿一:

好了,因为时间有限,今天的分享基本就到这里了,大家学会了底层的东西,再去看各个概念无非是一个叠加的思想,有机会再给大家分享一些主流的神经网络的思想。

阿一:

接下来是问问题的时间,看大家有什么需要问的呀。

这是一个对话的形式,由于昨天让我的弟弟也看了,我的弟弟也好像明白了一些,所以我打算把它分享出来。(有些重点没有被画出来,这需要自己理解)

之前的那个揭开神经网络的神秘面纱还没有更新呢,看完这个也许会更加理解之前的那些内容。

包括sigmoid函数在之前内容里的那个视频中也有说到,sigmoid函数是很重要的一个函数,它能将输入的值转换为(0,1)之间的数值。有些人也叫它归一函数。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
神经网络原来是这样和数学挂钩的 // 深度学习的数学
神经网络如何工作?8分钟入门
从零学习:从Python和R理解和编码神经网络
DL之HNN:Hopfield神经网络(HNN之DHNN、CHNN)的相关论文、简介、使用案例之详细攻略
什么是神经网络的激活函数?
神经网络背后的简单数学
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服