大家好, 欢迎回到深度学习课程｡
今天我们要讲的是神经元, 它是人工神经网络的基本组成部分｡
那么我们开始吧｡
之前我们看过一张像这样的图片, 这些是真实的的神经元,
它们被涂在一层光泽上, 涂上一点颜色, 然后通过显微镜观察｡
这就是它们的样子
正如你所看到的, 这是一个非常有趣的结构, 一个身体, 然后是很多不同的尾巴,
从它们身上伸出一些分支｡
这很有趣, 但问题是, 我们如何在机器上重现它？
因为我们真的需要在机器上重现它,
因为深度学习的全部目的就是模仿人脑的工作方式, 希望通过这样做, 我们能创造出令人惊叹的东西｡
我们要创造一个令人惊叹的基础设施让机器能够学习｡
我们为什么希望这样呢？
因为人类的大脑很好, 恰好是这个星球上最强大的学习工具之一,
或者说是这个星球上最强大的学习机制｡
我们只希望如果我们重建它, 我们会有像那样棒的东西｡
所以我们现在面临的挑战, 也是我们创造人工神经网络的第一步, 就是重建一个神经元｡
那我们该怎么做呢？
首先, 让我们仔细看看它到底是什么｡
这张图片是西班牙神经科学家圣地亚哥·拉蒙·卡哈尔在1899年首先创造的, 他所做的是在真实的脑组织中杀死神经元, 然后在显微镜下观察它们｡
当他看着他们的时候, 他实际上画了他所看到的｡
这是他看到的｡
他看到两个神经元或者两个大的神经元在顶端, 所有这些分支都从它们的顶端延伸出来.
然后每一个都有一根杆或者像线一样的东西从底部伸出来很长的一根, 是的, 这就是他看到的｡
现在科技已经进步了很多我们已经更近更详细地看到了神经元现在我们真的可以画出它戏剧性的样子
让我们来看看｡
这是一个神经元
这看起来和圣地亚哥·拉蒙在这里画的非常相似在这个神经元中, 我们可以看到它有一个主体, 这是神经元的主要部分,
然后在顶端有一些分支, 叫做树突.
它也有轴突, 也就是神经元的长尾｡
这些树突和轴突是干什么用的呢？
好吧, 这里要理解的关键点是, 神经元本身是非常无用的｡
就像蚂蚁一样, 对吧？
一只独立的蚂蚁｡
就像五只蚂蚁在一起一样｡
也许他们能找到些线索｡
但是, 他们他们不他们不能建立一个蚁丘｡
他们不能建立殖民地｡
它们不能像一个巨大的有机体那样一起工作｡
但与此同时, 当你有很多很多的广告, 就像你有一百万只蚂蚁, 它们可以建立一个完整的殖民地,
它们可以建立一个蚁丘｡
神经元本身也是如此｡
没那么强烈｡
但是当你有很多神经元在一起时, 它们会一起工作来创造奇迹｡
它们是如何协同工作的？
这就是问题所在｡
这就是树突和轴突的作用｡
树突就像是神经元的信号接收器而轴突则是神经元的信号传递器.
这是一个概念上的运作方式｡
在顶部你可以看到一个神经元, 它的树突连接着其他神经元的轴突,
这些神经元在它上面更远的地方.
然后这个神经元发出的信号沿着它的轴突传递到下一个神经元的树突上｡
这就是它们之间的联系｡
在那边的小图中, 你可以看到轴突并没有接触到树突｡
很多很多的机器学习或者像一些机器学习一样, 科学家们对此非常坚定｡
事实上, 它不接触它, 就像它不接触它一样, 已经证明, 那里没有物理连接｡
但我们感兴趣的是它们之间的联系, 即信号传递的整个概念, 这被称为注册｡
你可以看到在那张小图片中, 那个数字括号是注册, 这是我们将要使用的术语｡
所以我们不用人工神经元, 我们将要拥有的线路或者人工神经元的连接器, 我们不用轴突或者树突,
因为问题是这是谁的连接？
是那个神经元还是这个神经元？
我们只是打电话给他们, 我们只是要打电话给他们注册｡
这样就能马上回答所有的问题｡
这基本上就是信号传递的地方｡
那元素是谁的并不重要｡
这只是传递信号的一种表示｡
我们现在就能看到｡
这就是神经元的工作原理｡
是的, 让我们继续讨论如何表示神经元？
在机器中创造神经元｡
所以我们现在要搬走了｡
我们正在从神经科学转向技术, 我们开始了｡
这是我们的神经元有时也被称为节点｡
神经元得到一些输入信号, 然后有一个输出信号｡
树突和轴突, 记住｡
但我们还是要把这些突触称为输入信号, 我们也会用其他神经元来表示它们.
所以在这个特定的例子中, 你可以看到这个神经元, 这个绿色的神经元从黄色的神经元接收信号｡
在本课程中, 我们将尝试使用特定的颜色编码机制, 黄色表示输入图层｡
所以基本上所有的神经元都在外层或者说是在信号传入的第一个前端, 而信号把它叫做信号可能有点矫枉过正｡
基本上就是输入值｡
因此, 你知道, 即使是在简单的线性回归中, 你有输入值, 然后你有一个预测值｡
这里也一样｡
所以你有输入值, 它们在那里, 黄色的｡
在右边, 你会看到它是红色的, 它是输出值｡
我想在这里指出的是,
在这个具体的例子中, 我们看到的是一个神经元, 它从输入层神经元接收信号｡
所以它们也是神经元, 但它们是输入层神经元｡
有时候你会看到一些神经元从其他的隐藏层神经元那里得到信号, 也就是从其他的绿色神经元那里.
概念也是一样的｡
就在这个例子中, 我们为了简单起见, 我们描绘了这个例子｡
就输入层而言, 我们可以这样想, 用人脑的类比, 输入层就是你的感官,
对吧？
所以不管你在这里看到什么, 感觉到什么, 摸到什么, 闻到什么｡
当然, 这就像有有很多东西你可以看到｡
有很多信息进来了｡
但这些都是你的那是你的大脑所局限的｡
这就像是一个用骨头做的盒子｡
你的大脑被锁在一个黑盒子里, 它看不见, 听不见,
它唯一能得到的就是来自这些器官的电脉冲, 这些器官被称为你的耳朵, 鼻子,
眼睛, 你知道, 你的触觉和任何东西, 你的味觉,
对吗？
所以它只是接收信号, 但它基本上生活在这个黑暗的黑盒子里, 它通过你的感官来理解世界｡
这是这是惊人的｡
所以是的｡
所以你有这些输入来自人脑｡
这是你的五种感官｡
而就机器学习或深度学习而言, 这基本上是你的输入值｡
所以你们的独立变量, 我们马上就能得到｡
输入值, 信号通过突触传递给神经元, 然后神经元得到输出值,
再传递给下一个神经元.
在此特定情况下, 就颜色编码而言, 黄色再次表示输入层｡
所以我们把这里的一切都简化了｡
我们只需要输入层, 然后我们会有一个绿色的隐藏层, 也就是隐藏层,
然后我们马上就会有输出层｡
所以现在我们可以先习惯这些颜色｡
好了, 我们走吧｡
这是基本结构｡
现在, 让我们更详细地了解一下这些不同的元素｡
现在我们有了输入层｡
这是什么？
我们有这些输入, 实际上是独立变量｡
那么自变量一是不是已经可供自变量了呢？
这里要记住的重要一点是, 这些自变量都是针对一个单一的观察｡
因此, 请将它视为数据库中的一行｡
一个观测值你只需要取所有的自变量｡
也许是人的年龄｡
它们是银行账户里的钱数｡
然后呢？
他们如何开车或步行上班？
他们使用什么交通工具？
这些都是一个人的描述符, 你要么训练模型,
要么进行预测.
关于这些变量, 你需要知道的另一件事是你需要标准化它们｡
所以你要么把它们标准化, 也就是说确保它们的均值为0, 方差为1.
或者你有时也可以和以前学过的会更详细一点地指出这些情况｡
也许在实践教程中你会遇到这些,
有时候你可能不想标准化, 你可能想标准化它们, 意思是不是要确保平均值是0,
方差是1, 你只需要, 减去最小值,
然后除以最大值减去最小值, 再除以数值的范围, 这样你就得到了0和1之间的值｡
这取决于具体情况｡
你可能想做一个或另一个, 但基本上你希望所有这些变量都非常相似, 在大约相同的｡
值的范围｡
为什么呢？
为什么会这样呢？
所有这些值都将进入神经网络, 在那里, 正如我们刚才看到的, 它们将被相加,
乘以权重, 相加等等.
如果它们都差不多的话, 神经网络会更容易处理它们｡
事实上, 你知道, 这正是它能够正常工作的方式｡
如果你想读更多关于标准化､
规范化和其他你可以对你的输入变量做的事情, 一个很好的附加阅读论文是Yan LeCun在1998年写的《有效的背支撑》｡
那边的链接｡
严立群, 我们将在课程中讨论卷积神经网络的部分,
更多地讨论这个深度学习领域的非凡人物｡
你会发现这绝对是一个知道自己在说什么的人｡
他是杰弗里·欣顿顿的密友, 我们已经见过他了, 他也提到过.
因此, 在本文中, 您将了解更多关于标准化和规范化的内容, 同时还可以学到许多其他不同的提示和技巧,
在学习本课程时, 您将成为一个很好的补充阅读资料来源｡
所以, 如果你有兴趣阅读一些其他的东西, 可以去看看｡
我们走吧｡
这就是我们需要对变量做的｡
这里我们得到了输出值｡
那么我们的产值能是多少呢？
我们有几个选择｡
输出值可以是连续的, 比如价格, 它可以是二进制的｡
例如, 一个人会退出还是会留下来, 或者它可以是一个分类变量｡
如果它是一个分类变量, 这里要记住的重要一点是, 在这种情况下,
你的输出值不会只有一个｡
这将是几个输出值, 因为这些将是一个虚拟变量, 将代表您的类别｡
这就是它的工作原理｡
重要的是要记住, 在这种情况下, 这就是你如何从人工神经网络中得到你的分类｡
但是让我们回到一个简单的例子, 一个输出值, 现在让我们再讨论一个点, 或者说类似于我们已经讨论过的点｡
我只想在左边重申这一点, 你有一个观察, 所以数据集中有一行｡
右边也有一个观察结果｡
这是同样的观察｡
记住这一点很重要, 不管你输入什么, 都是一行的,
然后你得到的输出也是同一行的.
或者如果你在训练神经网络, 那么你把输入放在那一行, 你把输出放在那一行｡
所以如果你想简化复杂性, 可以把它想象成一个简单的线性回归或者多元线性回归｡
所以你输入你的值, 你就有了你的输出｡
这就像当我们谈论回归时, 这是毫无疑问的, 因为我们已经习惯了｡
这里也一样, 没什么太复杂的｡
我们只是输入值, 我们得到输出｡
但要记住, 每次你要处理的是一行,
这样你就不会感到困惑, 并开始认为这些是不同的, 不同的角色, 你要放入你的人工神经网络或其他什么东西｡
这只是一行中的值｡
所以每次都有不同的观察结果, 不同的特征或属性与一次观察结果相关｡
好吧, 我会的
接下来我们要讨论的是突触, 这里是窦吗？
我们有鼻窦, 它们实际上都被分配了权重｡
砝码｡
下面我们将讨论更多关于权重的内容｡
但简而言之, 权值对人工神经网络的功能至关重要, 因为权值是神经网络学习的方式｡
通过调整权重, 神经网络可以决定在每一种情况下, 哪个信号对某个神经元重要, 哪个信号对它不重要,
哪个信号被传递, 哪个信号不被传递,
或者信号被沿着的强度和程度｡
所以重量是至关重要的｡
他们是, 他们是｡
在学习过程中得到调整的东西｡
就像当你训练一个人工神经网络时, 你基本上是在调整整个神经网络中所有注册的所有权重｡
这就是梯度下降和反向传播发挥作用的地方｡
我们也会讨论这些概念｡
基本上, 这些就是权重｡
我们现在只需要知道这些｡
这是神经元｡
信号进入神经元, 然后在神经元中发生了什么｡
所以这是有趣的部分｡
就像我们今天讨论的神经元, 神经元内部发生了什么｡
首先发生了几件事｡
第一步是把所有这些值加起来｡
于是就把这个加了进去｡
所以所有输入值的加权和变得非常简单了？
这非常非常简单｡
只需要加起来乘以重量, 把它们加起来, 然后它就会应用一个激活函数｡
现在, 我们将详细讨论激活函数｡
再往下, 基本上是一个函数, 它被分配给这个神经元或者整个神经层,
并且它被应用于这个加权和｡
然后, 神经元知道它是否需要传递一个信号,
就像传递给加权和函数的信号一样.
但基本上取决于功能, 神经元要么传递信号, 要么不传递信号.
这就是第三步所发生的, 神经元将信号传递给下一个神经元, 这也是我们下一节课要讲的内容,
因为这是一个非常重要的话题
我们想更深入地研究激活函数, 但希望现在一切都应该非常清楚, 你是如何获得输入值的, 你是如何获得权重的,
你是如何获得正弦的, 你是如何获得神经元中发生的事情的, 你是如何获得加权和的,
然后应用激活函数,
然后在线路上传递, 这在整个神经网络中重复进行, 不停地说｡
成千上万次, 取决于你有多大, 有多少个神经元,
你的神经网络有多少个突触｡
好了, 我们走吧｡
希望您喜欢今天的教程｡
等不及下次见你了｡
在此之前, 请尽情享受深度学习｡