首页 > 编程知识 正文

lr1算法,lr算法是什么

时间:2023-05-06 03:20:46 阅读:186752 作者:2749

【推荐一个月跳槽1】LR算法原理

前述:我打算在两个月内转到BAT-TMD级公司做推荐算法的工作。 目前,相关公司正在开发一张。 动机是将来回南京,算法单位在南京也可以。

暂定主要学习以下内容。 中途夹杂面试经验。

LR算法GBDT算法XGboost算法Adaboost算法Word2Vec算法FM算法FFM算法DeepFM算法特征工程关联

今天第一天: LR算法: logistics回归不是回归。 回归解决连续值预测问题,分类解决离散值预测问题。 logitc回归是解决预测离散值问题。

首先,理解一些基本概念概率odds logit

事件a发生的概率=事件a发生的次数/所有结果发生的次数

Odds=事件发生的概率/不发生事件的概率=成功的概率/失败的概率

Odds的对数称为Logit

logit:logofOdds(log-it是it的自然对数,这里的it指的是Odds ) )。

下图是logit的模型化。

概率p的变化范围为[0,1 ],Odds的变化范围为[ 0,],对于Odds取自然对数,可以从[ 0,1 ]将p映射到(-,)。

如果在之间对概率或odds建模,则它们的值域是有限的。 logit模型将p映射到(-,),解决了值域问题,也保留了p的概率意义。

theta 是所要求的LR模型参数。 整理公式,在右边只留下概率p,可以得到以下模型。

下图为logistics回归的图像。

当Tx=0时,p=0.5;

Tx越小,p越趋向于0;

Tx越大,p越趋向于1;

回到第一个问题,预测是什么? 事件a发生的概率p,输入为样本x。 因此,我们的输出y可以定义为{ 0,1 },事件a可以定义为Y=1,事件a可以定义为不会引起Y=0。 概率p是Y=1的概率。 对于P0.5,Y=1,P=0.5,Y=0。 如下图所示

整理上面的两个公式

p(Y=1|x,)=h) x ) :在x,已知情况下输出y=1的概率

p(Y=0|x,)=1-h(x ) x ) :在x,已知情况下输出y=0的概率

以上两个公式表示在知道x、的情况下输出Y=0或Y=1的概率为,

p(y|x,)=h) x ) y* )1-h) x )1-y

两个假设:

y|x,服从伯努利分布

样品间独立

以上是样本x的概率函数,但通常有n个样本,相互独立,互不影响。 因此,要求的参数组在所有样本中都可以得到良好的结果。

因此,将各自的概率函数相乘得到联合概率密度。

h(x )和y的值越一致,即预测越准确时,该式的值越大,预测越偏离时,该式的值越小。 因此,为了使该式的值成为最大而需要求解的参数的组。 这也是最大似然函数的理解L(|x )=F ) x|),的l值变为最大与概率密度函数变为最大是相同的。 似然函数如下首先推导函数。 然后利用梯度下降的算法求出最小值。 虽然导出原最大似然函数非常困难,但我们知道函数对应的对数函数是凹凸、极值点、原函数相同的。 然后对数函数的求导比原函数方便一些,所以先获取对数似然函数。

求对数似然函数的导数

更新参数:

最后,损耗函数是对数似然函数*-1/m,并且下面是对数似然函数,需要加上系数-1/m。 对数似然函数越大,模型越好。 损失函数越小模型越好,所以加负号。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。