文章简介
本系列文章旨在帮助零底子的读者系统地掌握深度学习,终极能够理解 Transformer 架构。本篇文章是第一篇,我们将从深度学习最核心的知识——神经网络——开始讲解,深入浅出地带你相识神经网络的结构、如何让神经网络工作,激活函数、丧失函数、优化器和反向传播等关键概念。这些内容是理解深度学习的底子,如果你完全没有编程或数学背景,也不消担心,文章中的例子和讲解都会尽可能简朴易懂。
<hr> 1. 什么是神经网络?
在深度学习中,神经网络是我们用来处置惩罚数据的模型,它模拟人脑的工作方式,能自动学习并识别数据中的模式。
神经网络的结构:输入层、隐藏层和输出层
我们可以把神经网络看作是一个“输入数据 -> 处置惩罚数据 -> 输出效果”的呆板。它的结构紧张分为三部分:
- 输入层(Input Layer):负责吸收数据,比如一张图片的像素值,或者一段笔墨的编码。输入层只是“通报”数据到网络的下一层。
- 隐藏层(Hidden Layers):这里是神经网络真正处置惩罚数据的地方。隐藏层包含“神经元”,这些神经元会对输入数据做数学运算(加权求和,激活等),从中提取特征。网络的复杂性表现在隐藏层的数量和它们内部的结构上。
- 输出层(Output Layer):生成预测效果。对于分类问题,输出层的效果是一个概率分布,告诉我们输入属于每个类别的可能性。
神经网络的工作方式
神经网络的工作方式其实很像“加法器”,它把输入的数据“加起来”,然后决定输出什么。
例如,假设输入层有 3 个值(像素值),我们可以简朴地给它们加上不同的权重(也就是加权求和)。每个输入会被乘以一个权重值,再加上一个偏置(相当于一个修正值),末了再通过激活函数转化为输出。
图示:
- css输入层 隐藏层 输出层
- [x1, x2, x3] --> [h1, h2] --> [y1, y2]
复制代码 在隐藏层中,每个神经元吸收输入数据,通过一系列数学运算产生输出,如许一步步往后推,终极输出层给出效果。
<hr> 2. 激活函数:让神经网络更强大
如果我们只是简朴地把输入“加权求和”,这会限制神经网络的表现本事,由于如许的模型是“线性的”,无法处置惩罚复杂的问题。激活函数的作用就是引入“非线性”,让网络可以办理复杂问题,比如识别图片中的猫和狗。
常见的激活函数
- ReLU(Rectified Linear Unit)
ReLU 是现在最常用的激活函数。它的计算非常简朴:如果输入小于 0,输出为 0;如果输入大于 0,输出为原值。
例子:
公式:f(x) = max(0, x)
它可以帮助神经网络学习更快,并且避免一些计算上的问题。
- Sigmoid
Sigmoid 会把输入压缩到 0 和 1 之间。你可以把它想象成一个“开关”,输入越大,效果越接近 1,输入越小,效果越接近 0。
公式:f(x) = 1 / (1 + exp(-x))
这意味着输入越大,输出越接近 1;输入越小,输出越接近 0。Sigmoid 常用于二分类问题(例如,判断一封邮件是否是垃圾邮件)。
- Tanh(双曲正切函数)
Tanh 和 Sigmoid 类似,不过它的输出范围是 -1 到 1,输入越大,输出接近 1;输入越小,输出接近 -1。它在须要处置惩罚正负值的任务中比较常用。
公式:f(x) = (exp(x) - exp(-x)) / (exp(x) + exp(-x))
激活函数如何帮助神经网络?
激活函数通过将线性输入转换为非线性输出,赋予神经网络处
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |