使用感知器进行分类

Use of perceptron for classification

我正在学习机器学习中的感知器概念以及如何将其用于分类。我知道感知器可以对线性可分且具有布尔分类的数据进行分类。但是有超过两个 类 可用于数据,我需要使用该数据构建模型。在这种情况下是否可以使用感知器?

感知器算法的 multiclass 变体中的思想几乎就是 与二进制 classification 相同,除了一些细微差别。在里面 multiclass class化为K classes,我们会维护一组K权重 向量 W_{1},...,W_{K}(每个权重向量的大小为 D,其中 D 是数字 功能)。

预测(在训练和测试时)将更改为:

\widehat{y}_{n} = arg max_{k}(W_{k}^{T} x_{n} + b)

这意味着预测的 class 将是权重向量给出最高分数的那个。更新条件由(假设yn是xn的真实标签)给出:

if(\widehat{y}_{n} != y_{n})
    W_{\widehat{y}_{n}} = W_{\widehat{y}_{n}} - X_{n}
    W_{\widehat{y}_{n}} = W_{\widehat{y}_{n}} + X_{n}