深度学习入门必须理解这25个概念
1、神经元(Neuron)——就像形成我们大脑基本元素的神经元一样,神经元形成神经网络的基本结构。想象一下,当我们得到新信息时我们该怎么做。当我们获取信息时,我们一般会处理它,然后生成一个输出。类似地,在神经网络的情况下,神经元接收输入,处理它并产生输出,而这个输出被发送到其他神经元用于进一步处理,或者作为最终输出进行输出。2、权重(Weights)——当输入进入神经元时,它会乘以一个权重。例如,如果一个神经元有两个输入,则每个输入将具有分配给它的一个关联权重。我们随机初始化权重,并在模型训练过程中更新这些权重。训练后的神经网络对其输入赋予较高的权重,这是它认为与不那么重要的输入相比更为重要的输入。为零的权重则表示特定的特征是微不足道的。让我们假设输入为 a,并且与其相关联的权重为 W1,那么在通过节点之后,输入变为 a *W1。3、偏差(Bias)——除了权重之外,另一个被应用于输入的线性分量被称为偏差。它被加到权重与输入相乘的结果中。基本上添加偏差的目的是来改变权重与输入相乘所得结果的范围的。添加偏差后,结果将看起来像 a* W1 偏差。这是输入变换的最终线性分量。4、激活函数(Activation Function)——一旦将线性分量应用于输入,将会需要应用一个非线性函数。这通
过将激活函数应用于线性组合来完成。激活函数将输入信号转换为输出信号。应用激活函数后的输出看起来像 f(a *W1+ b),其中 f就是激活函数。在下图中,我们将'n'个输入给定为 X1 到 Xn 而与其相应的权重为 Wk1 到 Wkn。我们有一个给定值为 bk 的偏差。权重首先乘以与其对应的输入,然后与偏差加在一起。而这个值叫做 u。U =ΣW*X +b激活函数被应用于 u,即 f(u),并且我们会从神经元接收最终输出,如 yk = f(u)。常用的激活函数最常用的激活函数就是 Sigmoid,ReLU 和 softmax(a)Sigmoid——最常用的激活函数之一是 Sigmoid,它被定义为:
sigmoid(x)=1/(1+e -x )Sigmoid 变换产生一个值为 0 到 1 之间更平滑的范围。我们可能需要观察在输入值略有变化时输出值中发生的变化。光滑的曲线使我们能够做到这一点,因此优于阶跃函数。(b)ReLU(整流线性单位)——与 Sigmoid 函数不同的是,最近的网络更喜欢使用 ReLu 激活函数来处理隐藏层。该函数定义为:f(x)=max(x,0)当 X>0 时,函数的输出值为 X;当 X使用 ReLU 函数的最主要的好处是对于大于 0 的所有输入来说,它都有一个不变的导数值。常数导数值有助于网络训练进行得更快。(c) Softmax——Softmax 激活函数通常用于输出层,用于分类问题。它与 sigmoid 函数是很类似的,唯一的区别就是输出被归一化为总和为 1。Sigmoid 函数将发挥作用以防我们有
一个二进制输出,但是如果我们有一个多类分类问题,softmax 函数使为每个类分配值这种操作变得相当简单,而这可以将其解释为概率。以这种方式来操作的话,我们很容易看到——假设你正在尝试识别一个可能看起来像 8 的 6。该函数将为每个数字分配值如下。我们可以很容易地看出,最高概率被分配给 6,而下一个最高概率分配给 8,依此类推……5、神经网络(Neural Network)——神经网络构成了深度学习的支柱。神经网络的目标是找到一个未知函数的近似值。它由相互联系的神经元形成。这些神经元具有权重和在网络训练期间根据错误来进行更新的偏差。激活函数将非线性变换置于线性组合,而这个线性组合稍后会生成输出。激活的神经元的组合会给出输出值。一个很好的神经网络定义:'神经网络由许多相互关联的概念化的人造神经元组成,它们之间传递相互数据,并且具有根据网络'经验'调整的相关权重。神经元具有激活阈值,如果通过其相关权重的组合和传递给他们的数据满足这个阈值的话,其将被解雇;发射神经元的组合导致'学习'。6、输入/输出/隐藏层(Input / Output / Hidden Layer)——正如它们名字所代表的那样,输入层是接收输入那一层,本质上是网络的第一层。而输出层是生成输出的那一层,也可以说是网络的最终层。处理层是网络中的隐藏层。这些隐藏层是对传入数据执行特定任务并将其生成的输出传递到下一层的那些层。输入和输出层是我们可见