投票感知器虽然提高了感知器的泛化能力,但是需要保存 𝐾 个权重向量。在实际操作中会带来额外的开销.因此,人们经常会使用一个简化的版本,通过使用“参数平均”的策略来减少投票感知器的参数数量,也叫作平均感知器 (Averaged Perceptron).
本文我们来学习平均感知器。
一、平均感知器
1、概念
平均感知器是一种对传统感知器算法的改进,主要思想是在训练过程中记录所有更新过的权重向量(和偏置),并在最终预测时用这些权重向量的平均值来进行决策。这样做的目的在于平滑训练过程中因数据顺序或局部噪声导致的波动,提高模型的稳定性和泛化能力。
2、核心思想
传统感知器的问题:
传统感知器在训练过程中可能因数据顺序或噪声导致权重剧烈震荡,最终模型仅依赖最后一次迭代的权重,可能对训练数据过拟合。
平均感知器的改进:
在每次权重更新后,记录当前权重。
训练结束后,计算所有迭代步骤中权重的算术平均作为最终模型参数。
通过平滑权重的波动,降低模型对训练数据顺序的敏感性,提升泛化能力。
3、数学模型
4、结合数学模型,进一步理解平均感知器
平滑更新历史:
在传统感知器中,每次遇到误分类时都会更新参数,最终只使用最后的权重向量进行预测。而最后的权重向量可能受训练数据顺序、噪声等因素影响,导致模型不够稳定。平均感知器通过记录所有更新的权重,并对它们取平均,可以“平滑”这些偶然的波动,使得最终模型更具稳定性和鲁棒性。减少过拟合的风险:
由于平均操作相当于对多个模型版本的“集成”,它有助于降低某个局部更新带来的偏差,从而提高模型在未见数据上的泛化性能。直观理解:
可以将平均感知器想象成一个“智慧委员会”:在训练过程中,每次更新后的权重向量就像一个专家的意见。最终,我们通过汇总所有专家的意见(即取平均)来做出决策,而不是依赖单个专家。这种集成决策通常比单一决策更为稳健和准确。
5、数学实现:
6、算法流程:
二、平均感知器与投票感知器的联系与区别
平均感知器(Averaged Perceptron)和投票感知器(Voted Perceptron)都是对经典感知器算法的改进,目的是提高模型的稳定性和泛化能力,但它们在实现方式和侧重点上存在一些区别与联系:
1、联系
目标一致:
两者都旨在缓解单个权重向量受数据顺序或噪声影响较大的问题,通过集成训练过程中多个权重向量的信息,提高最终模型的性能。基于感知器的更新:
无论是平均感知器还是投票感知器,都使用感知器的错误驱动更新规则来调整参数,并记录下每次更新后的权重信息。两者都是通过集成训练过程中多个感知器模型的信息来缓解标准感知器易受数据顺序和噪声影响的问题,从而提高模型的稳定性和泛化能力。
2、区别
记录与利用方式:
平均感知器:
在训练过程中,每次更新后的权重向量(以及偏置)都会被累加,训练结束后,计算这些权重向量的平均值作为最终模型的参数。最终预测时,仅使用这个平均权重进行决策。
数学上,如果训练过程中得到了 T 个权重向量 w_1, w_2, ... , w_T(以及对应的偏置),则最终参数为投票感知器:
在训练过程中,每次更新后的权重向量都会被记录下来,并同时记录下该权重向量在接下来连续正确分类的次数(即“票数”)。在预测时,每个记录下来的权重向量根据其票数进行投票,最终预测结果是各个权重向量投票的加权结果。
预测公式通常类似于:其中 c_t 是第 t 次权重向量对应的票数。
存储需求与计算复杂度:
- 平均感知器只需要存储一个累计的权重向量和偏置(或者在更新过程中逐步计算平均值),实现简单且内存占用低。
- 投票感知器需要存储每一次更新的权重向量和相应的票数,这在长时间训练或数据量较大的情况下可能会占用更多内存。
决策方式:
平均感知器的决策是基于一个“平均”模型,直接用平均后的参数来计算决策;而投票感知器则利用多个模型的投票结果,可能在某些情况下对极端错误有更强的纠正作用。
区别:
平均感知器通过简单地对权重向量求平均来得到最终模型,而投票感知器记录每个更新状态并通过加权投票决定最终分类结果。
如果希望实现简单且内存占用较低的模型,平均感知器可能更适合;如果希望充分利用训练过程中的所有信息,并在某些特定场景中获得更强的纠正效果,则可以考虑使用投票感知器。
附一张表格,更直观:
维度 | 平均感知器 | 投票感知器 |
---|---|---|
模型存储 | 单一平均权重,存储成本低。 | 多个权重向量 + 存活时间,存储成本高。 |
预测效率 | 直接计算点积,速度快。 | 需遍历所有分类器投票,速度慢。 |
抗噪声能力 | 中等(通过平均平滑波动)。 | 更强(加权投票抑制异常分类器)。 |
适用场景 | 数据量大、需快速预测的场景。 | 数据含噪声、需高鲁棒性的场景。 |
三、平均感知器的优势与局限性
优势 | 局限性 |
---|---|
1. 泛化能力更强:通过平均减少权重震荡。 | 1. 对噪声敏感:异常样本仍可能影响平均权重。 |
2. 计算高效:仅需存储一个累积权重。 | 2. 理论保障较弱:不如投票感知器有严格错误率上界。 |
3. 预测速度快:直接使用单一权重。 | 3. 依赖迭代次数:需合理设置训练轮次。 |
四、平均感知器的示例:
1、简单的二分类任务
2、根据花瓣长度和宽度分类鸢尾花(Setosa vs Non-Setosa)
(1)训练数据(简化为2个样本,迭代2轮):
花瓣长度 | 花瓣宽度 | 标签(Setosa=1,Non-Setosa=-1) |
---|---|---|
1.0 | 0.5 | 1 |
4.0 | 1.5 | -1 |
(2)训练过程:
初始权重:w0=[0,0],学习率 η=0.1。
第一轮迭代:
第二轮迭代:
最终平均权重:
预测新样本 x=[2.0,1.0]:
五、总结:
核心价值:平均感知器通过权重平均提升泛化能力,尤其适合线性可分但含轻微噪声的数据。
关键公式:
适用场景:需快速部署、存储受限的任务(如实时分类系统)。
改进方向:结合正则化或核方法处理非线性问题。
理解平均感知器有助于掌握如何通过简单策略提升基础模型的稳定性,是学习复杂集成方法(如随机森林、梯度提升)的重要基础。