美文网首页
sklearn学习笔记——SGDClassifier 随机梯度下

sklearn学习笔记——SGDClassifier 随机梯度下

作者: 龙鹰图腾223 | 来源:发表于2019-10-08 16:32 被阅读0次

    1、主要应用在大规模稀疏数据

    SGD主要应用在大规模稀疏数据问题上,经常用在文本分类及自然语言处理。假如数据是稀疏的,该模块的分类器可轻松解决如下问题:超过10^5的训练样本、超过10^5的features。利用梯度来求解参数。

    ng从特征数量n和样本数量m的关系给出了如下推荐:

    如果特征数量大到和样本数量差不多,或者特征数量远远大于样本数量,则选用LR或者线性核的SVM;(eg.n=10000,m=10-1000)

    如果特征的数量小,样本的数量正常,则选用SVM+高斯核函数;(eg.n=1-1000,m=10-10000)

    如果特征的数量小,而样本的数量很大,则需要手工添加一些特征从而变成第一种情况。

    2.可以选择损失函数

    loss=”hinge”: (soft-margin)线性SVM.

    loss=”modified_huber”: 带平滑的hinge loss.

    loss=”log”: logistic回归

    3.通过penalty参数,可以设置对应的惩罚项。SGD支持下面的罚项:

    penalty=”l2”: 对coef_的L2范数罚项

    penalty=”l1”: 对coef_的L1范数罚项

    penalty=”elasticnet”: L2和L1的convex组合; (1 - l1_ratio) * L2 + l1_ratio * L1

    SGD需要许多超参数:比如正则项参数、迭代数。

    SGD对于特征归一化(feature scaling)是敏感的。

    【1】https://blog.csdn.net/Invokar/article/details/86767943    梯度下降法(GD)与随机梯度下降法(SGD)的理解

    相关文章

      网友评论

          本文标题:sklearn学习笔记——SGDClassifier 随机梯度下

          本文链接:https://www.haomeiwen.com/subject/jlmfpctx.html