2020机器学习线性模型(5)

作者: zidea | 来源:发表于2020-01-22 06:17 被阅读0次
machine_learning.jpg

我们依旧回归一下上一次内容,上一次我们介绍一下对数几率模型,其实本质是线性模型,但是他是一个泛化的线性模型,他是一个 sigmoid 函数,这是一个指数函数
f(z) = \frac{1}{1 + e^{-z}}
我们将线性组合带入 sigmoid 函数替换 z,就可以将一个线性模型值域压缩到 0 到 1 之前,这样我们就可以线性模型来做分类问题。这也就是我们构建的线性模型。

f(x) = \frac{1}{1 + e^{-\theta^Tx}}

今天我们先讨论一下对数几率模型的损失函数
L = \frac{1}{2N} \sum_i (h_{\theta}(x^{(i)}) - y^{(i)})^2
这是之前我们通过最小二乘法来计算线性模型损失函数。那么对数几率函数的损失函数是什么样子呢?

p(y=1|x,\theta) = \frac{1}{1 + e^{-\theta^Tx}}
计算在给定样本 x 和参数 \theta 条件下,计算 x 样本属于 y=1 类别的概率。如果大于 0.5 分为 1 类而小于 0.5 分为 0 类。

J(\theta) = - \frac{1}{N}\left( \sum_{i=1}^N \sum_{j=0}^1 I(y^{(i)} = j) \log p(y^{(i)} = j|x^{(i)},\theta) \right)

这就是对数几率函数损失函数样子,我们来一起看一看这个公式是如何描述对数几率函数好坏的。首先从左向右来看,第一个我们对所有样本数据从 1 到 N 然后在将遍历类别这里是而分类为只有 0 和 1 。然后用 I 函数进行计数,I 函数内内容为 true 则计数为 1 否则为 0。这样一来也就是函数模型也好
I(y^{(i)} = j) \log p(y^{(i)} = j|x^{(i)},\theta)
这部分内容值越大,因为我们在损失函数都是求最小值来评估模型为好模型,所以在前面加了负号。现在还是停留在 2 分类问题,随后会扩展到多分类问题。还有一点我们这里使用是log 大家可能已经很清楚,也就是解决概率小数越乘越小的问题,把乘积变成连加来解决这个问题。

J(\theta) = -\frac{1}{N} \left( \sum_i^N y^{(i)} \log h_{\theta}(x^{i}) + (1 - y^{(i)}) \log (1 - h_{\theta}(x^{i})) \right)

\theta - \alpha \frac{\partial J}{\partial \theta}

p(y=1|x,\theta) = \frac{1}{1 + e^{-\theta^{T}x}}

我们对方程两边同时乘以e^{\theta^Tx} 可以得到下面的式子。

\frac{1}{1 + e^{-\theta^{T}x}} = \frac{e^{\theta^Tx}}{ (1 + e^{-\theta^T x})e^{\theta^Tx} } = \frac{e^{\theta^Tx}}{e^{\theta^Tx} + 1}
这个公式是为了之后做多分类做好前期准备
p(y=1|x,\theta) = 1 - \frac{1}{1 + e^{-\theta^{T}x}}
1 - \frac{1}{1 + e^{-\theta^{T}x}} = \frac{1}{e^{\theta^Tx}+1}

然后我们对于超过2分类可以使用 softmax 来解决,我们可以类似上面形式来表示

p(y^{(i)}=k|x_i \theta) = \frac{e^{\theta_k^T x^{(i)}}}{\sum_{j=1}^k e^{\theta_j^T x^{(i)}}}

上面就是有 k 个类别线性模型。
最后希望大家关注我们微信公众号


wechat.jpeg

相关文章

  • 2020机器学习线性模型(5)

    我们依旧回归一下上一次内容,上一次我们介绍一下对数几率模型,其实本质是线性模型,但是他是一个泛化的线性模型,他是一...

  • Python机器学习基础教程学习笔记(5)——线性模型(回归)

    Python机器学习基础教程学习笔记(5)——线性模型(回归) 1 线性回归处理wave数据集 1.1 wave数...

  • Task4模型调参

    学习目标 了解常用的机器学习模型,并掌握机器学习模型的建模与调参流程 内容介绍 线性回归模型:线性回归对于特征的要...

  • 2019-10-29

    Day2 简单线性回归模型 机器学习入门--简单线性回归机器学习算法之线性回归算法 导入库matplotlib 绘...

  • Python机器学习之线性模型

    一、线性模型基本概念  线性模型不是指某一个模型,而是一类模型。在机器学习领域,常用的线性模型包括,线性回归、岭回...

  • 2-线性模型

    算法简介 线性模型是在机器学习实战中广泛使用的一类模型。线性模型利用输入特征的线性函数(linear functi...

  • 2020机器学习线性模型(3)

    在实际中我们是无法找到一条完美线性模型取拟合所以的样本点,我们总是近视找到一条线性模型来拟合所有点。现在我们哪一个...

  • 2020机器学习线性模型(1)

    线性模型 今天我们来讨论一下线性模型,之前已经了解到线性模型来做回归问题,所谓回归问题就是根据给定样本数据训练出一...

  • 2020机器学习线性模型(F)

    最大似然问题 在给定数据条件下,我们想要求找到最好的线性来拟合这些点。但是通常我们是无法找到一个可以完美拟合这些点...

  • 2020机器学习线性模型(2)

    现在我们可无需梯度下降通过矩形求导直接计算出完全通过学过线性代数知识来直接求取 那么什么时候我们选择最小二乘法什么...

网友评论

    本文标题:2020机器学习线性模型(5)

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