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