logistic模型原理与推导过程分析(3)

本文涉及的产品
交互式建模 PAI-DSW,5000CU*H 3个月
简介: 由上面的式子可以看出,g(A)的参数是一个m*1的矩阵,或者说是一个列向量。如果我们设计函数g的时候,支持传入一个列向量,并返回一个列向量,则hθ(x)−y可以一次计算得到结果。

附录:迭代公式向量化


       θ相关的迭代公式为:


6ff6bd9254d240bab935c18c60513be0.png


       如果按照此公式操作的话,每计算一个θ需要循环m次。为此,我们需要将迭代公式进行向量化。


首先我们将样本矩阵表示如下:


7ca1e24e18764fed83be27ff09d9d984.png

169582a8b6a94787856e9d797543c277.png


将要求的θ也表示成矩阵的形式:


18474837dc89495fa3bc73395c63b2e6.png


将x·θ的乘积记为A,有:


404de11ed97f400fbc22c98cadeac21d.png


将hθ(x)−y记为E:


4e070ee6d41b4aa585cd47c16a93ae4d.png


由上面的式子可以看出,g(A)的参数是一个m*1的矩阵,或者说是一个列向量。如果我们设计函数g的时候,支持传入一个列向量,并返回一个列向量,则hθ(x)−y可以一次计算得到结果。


附录2:批量梯度下降BGD与随机梯度SGD下降


对于迭代公式


7a5a0889574745bc92c451af002320d7.png


最大的好处就是形式简单明了,直接将样本矩阵与残差矩阵带入迭代即可。而且这种方式是将所有的训练样本代入,最终所求得的解也是全局最优解,求解出来的参数将使损失函数最小。如果将所有样本矩阵带入进行计算,这就是所谓的批量梯度下降(BGD)。


       但在实际应用场景中,最大的问题就是样本矩阵大到放不进内存,导致进行一轮迭代需要的运算时间非常长,这个时候,批量梯度下降就不是那么好用了。这个时候,我们可以采用考虑随机梯度下降(SGD)。


       BGD是一次训练带入所有样本,SGD则是每来一次样本进行一次计算:


1cd1e2d5289f4300aa2fdcee32947c9a.png

i表示是第i个样本,j表示样本第j个维度。


       SGD是通过每个样本来迭代更新。如果样本的数量很多,有可能才迭代了一小部分样本,就已经得到了θ的解。所以SGD的收敛速度可能比BGD要快,而且运算量小。但是SGD的问题是每次迭代并不是全局最优解的方向,尤其是遇到噪声数据,影响会比较大。有的时候SGD在最优解附近会存在比较明显的锯齿震荡现象,即损失函数的值会在最优解附近上下震荡一段时间才最终收敛。


---------------------------------------------------------------------------------------------------------


连载。。。。


logistic模型原理与推导过程分析(1)_LiBiGor的博客-CSDN博客

https://blog.csdn.net/qq_39237205/article/details/121031296

logistic模型原理与推导过程分析(2)_LiBiGor的博客-CSDN博客

https://blog.csdn.net/qq_39237205/article/details/121031899

logistic模型原理与推导过程分析(2)_LiBiGor的博客-CSDN博客

https://blog.csdn.net/qq_39237205/article/details/121031899

目录
相关文章
|
3天前
|
算法
【视频】马尔可夫链蒙特卡罗方法MCMC原理与R语言实现|数据分享(下)
【视频】马尔可夫链蒙特卡罗方法MCMC原理与R语言实现|数据分享
52 8
|
3天前
|
移动开发 算法 数据可视化
【视频】马尔可夫链蒙特卡罗方法MCMC原理与R语言实现|数据分享(上)
【视频】马尔可夫链蒙特卡罗方法MCMC原理与R语言实现|数据分享
66 12
|
3月前
|
机器学习/深度学习 JavaScript 前端开发
机器学习 - [源码实现决策树小专题]决策树中子数据集的划分(不允许调用sklearn等库的源代码实现)
机器学习 - [源码实现决策树小专题]决策树中子数据集的划分(不允许调用sklearn等库的源代码实现)
39 0
|
8月前
|
机器学习/深度学习 算法 决策智能
最大熵图像复原方法原理(附完整代码)
最大熵图像复原方法原理(附完整代码)
112 0
|
机器学习/深度学习 算法 Python
|
7月前
线性规划模型基本原理与编程实现
线性规划模型基本原理与编程实现
21 0
线性规划模型基本原理与编程实现
|
11月前
|
机器学习/深度学习 算法 大数据
logistic模型原理与推导过程分析(2)
其中m表示样本个数,n表示影响因数的个数,yi(i=0,1,⋯ ,m)取0或者1。现在我们结合数据,利用条件概率分布模型给出基于概率的二项logistic模型如下
139 0
|
11月前
|
机器学习/深度学习 算法 数据挖掘
logistic模型原理与推导过程分析(1)
给定一些数据集合,他们分别属于两个不同的类别。例如对于广告数据来说,是典型的二分类问题,一般将被点击的数据称为正样本,没被点击的数据称为负样本。现在我们要找到一个线性分类器,将这些数据分为两类。用X表示样本数据,Y表示样本类别(例如1与-1,或者1与0)。我们线性分类器的目的,就是找到一个超平面将两类样本分开。
183 0
|
机器学习/深度学习 定位技术
如何推导高斯过程回归以及深层高斯过程详解
如何推导高斯过程回归以及深层高斯过程详解
451 0
如何推导高斯过程回归以及深层高斯过程详解
【算法系列】主成分分析的推导过程
【算法系列】主成分分析的推导过程
【算法系列】主成分分析的推导过程

热门文章

最新文章