96SEO 2026-02-19 16:25 10
神经网络是一种性能强大的学习算法其灵感来自大脑的运作方式。

类似于神经元在大脑中彼此连接的方式神经网络获取输入后通过某些函数在网络中进行传递输入信息连接在其后的一些神经元会被激活从而产生输出。
由多个相互连接的“神经元”组成构成网络“层”一层的神经元将信息传递给下一层的神经元(称为“激活”)这就是神经网络的计算方式。
年代初期引入了用于简单操作的“感知器”随后在1960年代末期引入了用于高效训练多层网络的“反向传播”算法。
在
年代一些更简单的方法的出现曾一度令神经网络的研究陷入停滞。
然而自
年代中期以来得益于算法的改进、大型数据集的可用性和能够用于大规模数值计算的图形处理器
GPU)神经网络再次引发了研究热潮。
这些研究为深度学习奠定了基础深度学习模型是一类具有大量神经元(层)的神经网络能够基于逐步抽象的层次结构训练相当复杂的模型。
是对线性回归和逻辑回归的一种改进神经网络在计算输出时引入了多种非线性函数。
此外神经网络在修改网络体系结构以利用结构化和非结构化数据跨多个域解决问题方面具有极大的灵活性。
函数越复杂网络对于输入的数据拟合能力就越大因此预测的准确性就越高。
神经网络的典型结构如下
是一个或多个节点(或称计算单元)的集合层中的每个节点都连接到下一层中的每个节点。
输入层由预测输出值所需的输入变量组成。
输出层中节点的数量取决于我们要预测连续变量还是分类变量。
如果输出是连续变量则输出层一个节点。
个节点。
隐藏层用于将输入层的值转换为高维空间中的值以便我们可以从输入中了解数据的更多特征。
隐藏层中节点的工作方式如下
函数是激活函数用于在输入和它们相应的权重值的总和上引入非线性。
可以通过使用多个隐藏层实现更强的非线性能力。
综上神经网络是相互连接的层中节点权重的集合。
该集合分为三个主要部分输入层隐藏层和输出层。
神经网络中可以具有
当神经网络需要学习具有复杂上下文(例如图像识别)或上下文不明显的任务时就必须具有隐藏层隐藏层也被称为中间层。
训练神经网络实际上就是通过重复两个关键步骤来调整神经网络中的权重前向传播和反向传播。
在前向传播中我们将一组权重应用于输入数据将其传递给隐藏层对隐藏层计算后的输出使用非线性激活通过若干个隐藏层后将最后一个隐藏层的输出与另一组权重相乘就可以得到输出层的结果。
对于第一次正向传播权重的值将随机初始化。
在反向传播中尝试通过测量输出的误差然后相应地调整权重以降低误差。
神经网络重复正向传播和反向传播以预测输出直到获得令误差较小的权重为止。
最近神经网络在各种应用中的广泛采用。
神经网络可以通过多种方式进行构建以下是一些常见的构建方法
底部的紫色框代表输入其后是隐藏层(中间的黄色框)顶部的粉色框是输出层。
一对一的体系结构是典型的神经网络在输入和输出层之间具有隐藏层。
不同体系结构的示例如下
架构示例one-to-many输入是图像输出是图像的预测类别概率many-to-one输入是电影评论输出评论是好评或差评many-to-many将一种语言的句子使用神经网络翻译成另一种语言的句子
CNN)可以用来理解图像中的内容并检测目标内容所在的位置该体系架构如下所示(在之后的学习中会进行详细介绍)
神经网络在推荐系统图像分析文本分析和音频分析的都有着广泛的应用神经网络能够灵活地使用多种体系结构解决问题可以预料的是神经网络的使用范围将会越来越广。
接下来我们将根据神经网络训练的两个关键步骤——前向传播和反向传播——介绍神经网络模型的构建。
为了进一步了解前向传播的工作方式我们将通过一个简单的示例来构建神经网络其中神经网络的输入为
我们使用的神经网络具有一个隐藏层一个输入层和一个输出层。
由于要使输入层能够以更大的维度表示因此隐藏层中的神经元数量多于输入层中的神经元。
第一次进行正向传播时首先需要为所有连接分配权重这些权重是基于高斯分布随机选择的但是神经网络训练过程之后的最终权重不需要服从特定分布假定初始网络权重如下
接下来我们将输入与权重相乘以计算隐藏层中隐藏单元的值隐藏层的节点单位值计算结果如下
h11×0.81×0.21h21×0.41×0.91.3h31×0.31×0.50.8
在以上步骤中我们计算了隐藏节点的值。
为简单起见我们并未在隐藏层的节点中添加偏置项。
接下来我们将通过激活函数传递隐藏层的值以便在输出中增加非线性。
NOTE如果我们不在隐藏层中应用非线性激活函数则神经网络本质上将成为从输入到输出线性连接。
可以在网络中的多个网络层中应用激活函数使用它们可以实现高度非线性这对于建模输入和输出之间的复杂关系非常关键。
在我们的示例中使用
final_h1sigmoid(1.0)0.73final_h2sigmoid(1.3)0.78final_h3sigmoid(0.8)0.69
现在我们已经计算了隐藏层的值最后将计算输出层的值。
在下图中我们将隐藏层值通过随机初始化的权重值连接到输出层。
计算隐藏层值和权重值乘积的总和得到输出值
output0.73×0.30.79×0.50.69×0.91.235
因为第一次正向传播使用随机权重所以输出神经元的值与目标相差很大相差为
损失值(也称为成本函数)是在神经网络中优化的值。
为了了解如何计算损失值我们分析以下两种情况
通常当预测值为连续变量时损失函数使用平方误差也就是说我们尝试通过更改与神经网络相关的权重值来最小化均方误差
当要预测的变量是离散变量时(也就是说变量中只有几个类别)我们通常使用分类交叉熵损失函数。
当要预测的变量具有两个不同的值时损失函数为二分类交叉熵而当要预测的变量具有多个不同的值时损失函数为多分类交叉熵。
由于我们在以上示例中预测的结果是连续的因此损失函数值是均方误差其计算方法如下
通过以上学习我们知道了通过在输入数据之上执行以下步骤以在前向传播中可以得出误差值
随机初始化权重通过将输入值乘以权重来计算隐藏层节点值对隐藏层值执行激活将隐藏层值连接到输出层计算平方误差损失
squared_error在前面的函数中我们将输入变量值、权重(如果是第一次迭代则随机初始化)以及数据集中的实际输出作为
我们通过对输入和权重进行矩阵乘法来计算隐藏层的值。
此外将偏置值添加到隐藏层中
是偏置值利用此权重和偏置就可以将输入层连接到隐藏层。
计算隐藏层的值后就可以在隐藏层的值上使用激活函数
1/(1np.exp(-pre_hidden))通过将隐藏层的输出乘以将隐藏层连接到输出的权重然后在输出上添加偏置项来计算隐藏层的输出
weights[3]一旦计算出输出我们就可以计算出每一输入的平方误差损失如下所示
是输入应对应的实际输出。
通过以上简单的步骤我们便可以在网络前向传播时计算损失值。
每次将神经网络中的每个权重进行少量更改。
权重值的变化将对最终损失值(增加或减少的损失)产生影响我们需要朝着减少损失的方向更新权重。
通过每次轻微更新权重并测量权重更新导致的误差变化我们可以完成以下操作
在实施反向传播之前我们首先了解神经网络的另一重要概念学习率。
学习率有助于我们建立更稳定的算法。
例如在确定权重更新的大小时我们不会一次性就对其进行大幅度更改而是采取更谨慎的方法来缓慢地更新权重。
这使模型获得更高的稳定性在之后的学习中我们还将研究学习率如何帮助提高稳定性。
更新权重以减少误差的整个过程称为梯度下降技术随机梯度下降是将误差最小化的手段。
更直观地讲梯度代表差异(即实际值和预测值之间的差异)而下降则表示差异减小随机代表选择随机样本进行训练并据此做出决策。
除了随机梯度下降外还有许多其他优化技术可以用于减少损失值。
之后的学习中还将讨论不同的优化技术。
利用前向传播过程计算损失值。
略微改变所有的权重。
计算权重变化对损失函数的影响。
根据权重更新是增加还是减少了损失值在损失减少的方向上更新权重值。
为了进一步巩固我们对神经网络中反向传播的理解让我们拟合一个已知的简单函数查看如何得出权重。
假设待拟合函数为
的值。
接下来我们将从零构建反向传播算法以便清楚地了解如何在神经网络中计算权重。
简单起见下将构建一个没有隐藏层的简单神经网络。
squared_error在上述代码中对输入与随机初始化的权重值进行了矩阵乘法然后将其与随机初始化的偏置值相加。
得到输出值后便可以计算出实际值与预测值之差的平方误差值。
少量增加每个权重和偏置值并针对每个权重和偏差更新一次计算一个平方误差损失值。
如果平方误差损失值随权重的增加而减小则权重值应增加权重值应增加的大小与权重变化减少的损失值的大小成正比。
反之亦然。
另外通过学习率确保增加的权重值小于因权重变化而导致的损失值变化这样可以确保损失值更平稳地减小。
range(epochs):将输入通过神经网络传递以计算权重未更新时的损失
weights)确保对权重列表进行深复制由于权重将在后续步骤中进行操作深复制可解决由于子变量的更改而影响父变量的问题
deepcopy(weights)循环遍历所有权重值然后对其进行较小的更改
0.0001当权重修改后计算更新的前向传播损失。
计算由于权重的微小变化而造成的损失变化因为我们要计算所有输入采样的均方误差因此将损失的变化除以输入的数据数量
loss)/(0.0001*len(inputs))以较小的值更新权重然后计算其对损失值的影响等效于计算权重变化的导数(即反向梯度传播)。
通过损失变化来更新权重。
通过将损失的变化乘以一个很小的数字(0.01)来缓慢更新权重这就是学习率参数
loss)/(0.0001*len(inputs))wts_tmp2[ix]
print(weights)打印权重如下所示可以看到其与预期的结果
[[[2.99929065]][[0.00478785]]]神经网络中的还有一个重要参数是在计算损失值时需要考虑的批大小
size)。
在以上示例中我们同时为所有数据计算损失值。
但是当我们有成千上万个数据时在计算损失值时增加大量数据的增量贡献将导致训练困难甚至可能超出内存上限无法计算因此通常在一个
我们了解了神经网络的相关基础知识同时看到了神经网络常见的模型架构与其在实际中的广泛应用同时利用
从零开始实现了神经网络的训练过程——前向传播和反向传播了解了神经网络的通用训练流程。
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback