线性分类器和梯度下降

数据挖掘 分类 梯度下降
2022-03-04 23:42:59

我知道要找到任何函数的局部极值都需要梯度下降,但是它如何应用于线性分类器(例如单矩阵,两类情况)?它是如何一步步修改这个矩阵的元素的呢?

1个回答

让我们将其分解为几个步骤以便更好地理解:

  1. 您的线性分类器让我们用等式 y 表示它: y = m1x1 + m2x2 + m3x3 + .....其中 y 考虑了您提供的所有功能,并将其与随机权重相乘m

  2. 现在您需要找到理想的值m才能获得最大的准确性。你当然可以蛮力使用你的方式,但有优化的方式来做到这一点。这就是梯度下降发挥作用的地方。

  3. 梯度下降m通过考虑最终输出并了解哪些特征重要哪些不重要来优化 的值。

  4. 损失函数决定了要比较的内容。在您的示例中,您正在谈论两个类,在这种情况下,损失函数将是一个简单的交叉熵损失函数,它告诉您与实际值的距离。

  5. 损失是预测值与实际值的差异。

  6. 将这种损失降到最低的唯一方法是使用权重。为了了解要使用哪些权重,您使用简单的一阶导数将输出的影响与每个特征的权重倍数相关联。

  7. 然后使用梯度下降来计算下一组权重,通过查看要使用的权重方向来帮助您减少损失。

  8. 当您通过多个时期和步骤运行此操作时,它会稳定此权重矩阵,从而提高模型的性能。

希望这可以解决您的问题,如果您需要,很乐意详细说明。