组件名称

  Softmax回归多分类 [版本号:1] [更新时间:2018-05-08]

简介

  Softmax回归多分类算法组件是数据超市机器学习模块下的分类算法组件,既可以用于多分类也可以用于二分类。适用场景是各个类别需要是互斥的。

1.1 线性模型

见“线性回归组件”介绍

1.2 Softmax回归

Softmax回归模型是logistic回归模型在多分类问题上的推广,在多分类问题中,类标签 y\textstyle y 可以取两个以上的值. 在 softmax回归中,解决的是多分类问题(相对于 logistic 回归解决的二分类问题),类标 y\textstyle y 可以取k \textstyle k 个不同的值(而不是 2 个)。因此,对于训练集 {(x(1),y(1)),,(x(m),y(m))}\{ (x^{(1)}, y^{(1)}), \ldots, (x^{(m)}, y^{(m)}) \},我们有y(i){1,2,,k} y^{(i)} \in \{1, 2, \ldots, k\}。(注意此处的类别下标从 1 开始,而不是 0)。假定在某分类识别任务中,我们有k=10 \textstyle k=10 个不同的类别。对于给定的测试输入 x\textstyle x,我们想用假设函数针对每一个类别j估算出概率值p(y=jx) \textstyle p(y=j | x)。也就是说,我们想估计 x\textstyle x 的每一种分类结果出现的概率。因此,我们的假设函数将要输出一个 k\textstyle k 维的向量(向量元素的和为1)来表示这 k\textstyle k 个估计的概率值。 具体地说,我们的假设函数 hθ(x)\textstyle h_{\theta}(x) 形式如下: 其中 θ1,θ2,,θkn+1\theta_1,\theta_2,\ldots,\theta_k \in \Re^{n+1} 是模型的参数。请注意 1j=1keθjTx(i)\frac{1}{ \sum_{j=1}^{k}{e^{ \theta_j^T x^{(i)} }} } 这一项对概率分布进行归一化,使得所有概率之和为 1 。 则其损失函数就为:

1.3求解参数优化方法

求解参数的优化方法:针对Softmax回归算法,目前还没有闭式解法。因此,我们使用迭代的优化算法(例如梯度下降法,或 L-BFGS)

1.4 正则化

见“线性回归组件”介绍 y通过添加一个权重衰减项 λ2i=1kj=0nθij2\textstyle \frac{\lambda}{2} \sum_{i=1}^k \sum_{j=0}^{n} \theta_{ij}^2 来修改代价函数,这个衰减项会惩罚过大的参数值,现在我们的代价函数变为: 有了这个权重衰减项以后 (λ>0)(\textstyle \lambda > 0),代价函数就变成了严格的凸函数,这样就可以保证得到唯一的解了。 此时的 Hessian矩阵变为可逆矩阵,并且因为J(θ)\textstyle J(\theta)是凸函数,梯度下降法和 L-BFGS 等算法可以保证收敛到全局最优解。

输入和输出

  输入端口个数:1

  输出端口个数:1

参数配置

参数名称 参数说明 参数默认值 是否必填
正则化项系数 平衡loss和正则化项的大小以使得模型的训练误差和泛化能力达到最优,可选 0 必填
弹性网络混合参数 弹性网络混合参数值在[0, 1]的范围之间。当值为0时为L2范数正则化惩罚项,当值为1时为L1范数正则化惩罚项 可选 0 必填
是否设置截距项 True 必填
最小收敛误差 1e-06 必填
最大迭代次数 100 必填
阈值 二分类预测用阈值来判断类别,范围在[0, 1]区间. 可选 0.5 必填

字段配置

字段名称 字段说明 字段默认值 是否必配
特征列 输入模型的样本特征列 必选 支持Double/Int类型字段 必填
标签列 输入模型的样本类别标签列 必选 支持Double/Int类型字段 必填

输出节点的字段配置说明

  运行后不生成新字段。后续节点可以直接选择字段。

results matching ""

    No results matching ""