首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

机器学习100天-Day1504训练模型-softmax回归

说明:本文依据《Sklearn 与 TensorFlow 机器学习实用指南》完成,所有版权和解释权均归作者和翻译成员所有,我只是搬运和做注解。

第四章是对模型训练内部工作流程的了解,帮助炼丹师们找到恰当的学习模型、算法、数据集。

为了尽量简单(懒),在这里默认已经了解线性回归、多项式回归、损失函数、梯度下降

1. 简单的线性回归模型,讨论两种不同训练方法的最优解

封闭方程求根运算,得到模型在当前训练集上的最优解。

迭代优化(梯度下降GD),调整模型参数获取最小损失函数。批量梯度下降、随机梯度下降、小批量梯度下降。

2. 多项式回归,用来拟合非线性数据集

介绍正则方式减少过拟合的出现

3. 介绍Logistic回归

4. 介绍Softmax回归

4. 介绍Softmax回归

原理

将逻辑回归推广到多类别分类,就是Softmax回归。

这部分讲得比较系统,从逻辑回归推导到Softmax回归。每一类概率预测公式和线性回归预测公式一样。

但是,因为是多类别分类,每一个分类的参数向量都是独立的,统一存放在参数矩阵Θ中。

在计算了样本中每一类的得分后,通过Softmax函数计算出属于第k类的概率,然后通过除以所有份子总和进行归一化。

K表示有多少类

S(X)表示包含样本X的每一类的得分向量

σ(S(X))k表示给定每一类分数之后,实例X属于第k类的概率

在预测结果中,通过argmax计算函数的最大值,即返回σ(S(X))k最大时k的值。

注意:Softmax回归分类一次只能输出一个类,无法像随机数森林那样同时针对多个输入处理后输出多个结果。在多人面部识别中无法使用。

训练Softmax回归

使用交叉熵进行训练。交叉熵能够应对y=1和y=0两种情况

J(\Theta)=-1/m\Sigma_^m\Sigma_^ky_^{(i)}log(p_^{(i)})

然后对交叉熵公式求偏导

\Delta_{\theta_k}J(\Theta)=1/m\Sigma_^m(p_k^{(i)}-y_k^{(i)})X^{(i)}

通过计算每一类的梯度向量,使用优化算法使损失函数达到最小值。

使用Softmax回归对iris数据集进行分类

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190108A1HTYB00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券
http://www.vxiaotou.com