Logistic 回归浅析()
2015-10-14 21:48
330 查看
不忘初心,方得始终
学习Logistic回归,看了许多讲解一直不知所云,或者看不下去。
方法:给每一个特征值分配一个权重,根据得分来判断 y 是属于 0,1类,即
z=θ0∗x0+θ1∗x1+...+θn∗xn=θT∗X
可以自己划定一个值 N,N取决于 θ0...θn
当 y > N 时,y ∈ class1
当 y < N 时,y ∈ class0
也就是说,当我们有了 θ0...θn 之后,当每次来一个yi 根据它的x0...xn 带入公式,即可求得 yi 的类别。
其中有两个问题
1、z=∑θi∗xi 取值[−∞,+∞],我们希望 z 的取值在 [ 0 , 1 ],并且这个函数有较好的阶跃的性质,即在短距离内从 0 跳转到1。这样在代入公式的时候得到的值就在0-1之间,并且大部分情况下都远离0.5。(原则上,我认为这不是一个问题)
2、如何得到 [θ0...θn]。
Sigmoid函数:
σ(z)=11+e−z
现在我们将问题转换为:根据已知的训练集 Y = {y0...ym},求一组 [θ0...θn] 使得求出的 z 代入上式后,对于
yi∈class0,σ(zi)<0.5,
yi∈class1,σ(zi)>0.5。其中zi=θT∗Xi
举例来说:
yi=[xi0,xi1,xi2,...,xin]∈class1⇐⇒σ(θT∗Xi)=11+e−(θ0∗xi0+θ1∗xi1+...+θn∗xin)=11+e−(θT∗Xi)>0.5
第二个问题
使用极大似然估计:
现有已知结果的集合 Y={y0...ym}
将σ(θT∗Xi) 记为 h(Xi)
p(yi=1|Xi;θ)=1−h(Xi)
p(yi=0|Xi;θ)=h(Xi)
∴p(yi|Xi;θ)=(1−h(Xi))1−yi∗(h(Xi))yi
现在再次重述一遍问题:
已知集合 Y={y0...ym} 中任意的 yi=[xi0,xi1,xi2,...,xin]=Xi 的类别,其中 p(yi|Xi;θ)=(1−h(Xi))1−yi∗(h(Xi))yi,求 θ 的极大似然分布。
L(θ)=∏i=0m(p(yi|Xi;θ)=∏i=0m(1−h(Xi))1−yi∗(h(Xi))yi)
l(θ)=log(θ)=∑i=0m(yilog(h(Xi))+(1−yi)∗log(1−h(Xi)))
梯度上升算法:其实就是求导,不过是多次求导而已(也许是这样吧)
学习Logistic回归,看了许多讲解一直不知所云,或者看不下去。
第一部分
目的:根据 y 的特征值 x1...xn,判断 y 属于class1 还是class0方法:给每一个特征值分配一个权重,根据得分来判断 y 是属于 0,1类,即
z=θ0∗x0+θ1∗x1+...+θn∗xn=θT∗X
可以自己划定一个值 N,N取决于 θ0...θn
当 y > N 时,y ∈ class1
当 y < N 时,y ∈ class0
也就是说,当我们有了 θ0...θn 之后,当每次来一个yi 根据它的x0...xn 带入公式,即可求得 yi 的类别。
其中有两个问题
1、z=∑θi∗xi 取值[−∞,+∞],我们希望 z 的取值在 [ 0 , 1 ],并且这个函数有较好的阶跃的性质,即在短距离内从 0 跳转到1。这样在代入公式的时候得到的值就在0-1之间,并且大部分情况下都远离0.5。(原则上,我认为这不是一个问题)
2、如何得到 [θ0...θn]。
第二部分
关于第一个问题Sigmoid函数:
σ(z)=11+e−z
现在我们将问题转换为:根据已知的训练集 Y = {y0...ym},求一组 [θ0...θn] 使得求出的 z 代入上式后,对于
yi∈class0,σ(zi)<0.5,
yi∈class1,σ(zi)>0.5。其中zi=θT∗Xi
举例来说:
yi=[xi0,xi1,xi2,...,xin]∈class1⇐⇒σ(θT∗Xi)=11+e−(θ0∗xi0+θ1∗xi1+...+θn∗xin)=11+e−(θT∗Xi)>0.5
第二个问题
使用极大似然估计:
现有已知结果的集合 Y={y0...ym}
将σ(θT∗Xi) 记为 h(Xi)
p(yi=1|Xi;θ)=1−h(Xi)
p(yi=0|Xi;θ)=h(Xi)
∴p(yi|Xi;θ)=(1−h(Xi))1−yi∗(h(Xi))yi
现在再次重述一遍问题:
已知集合 Y={y0...ym} 中任意的 yi=[xi0,xi1,xi2,...,xin]=Xi 的类别,其中 p(yi|Xi;θ)=(1−h(Xi))1−yi∗(h(Xi))yi,求 θ 的极大似然分布。
L(θ)=∏i=0m(p(yi|Xi;θ)=∏i=0m(1−h(Xi))1−yi∗(h(Xi))yi)
l(θ)=log(θ)=∑i=0m(yilog(h(Xi))+(1−yi)∗log(1−h(Xi)))
第三部分
求解 l(θ)梯度上升算法:其实就是求导,不过是多次求导而已(也许是这样吧)
未完(不一定续)。。。
相关文章推荐
- 用Python从零实现贝叶斯分类器的机器学习的教程
- My Machine Learning
- 机器学习---学习首页 3ff0
- 也谈 机器学习到底有没有用 ?
- 量子计算机编程原理简介 和 机器学习
- 初识机器学习算法有哪些?
- 10个关于人工智能和机器学习的有趣开源项目
- 机器学习实践中应避免的7种常见错误
- 机器学习书单
- 北美常用的机器学习/自然语言处理/语音处理经典书籍
- 如何提升COBOL系统代码分析效率
- 支持向量机(SVM)算法概述
- 神经网络初步学习手记
- 常用的分类评估--基于R语言
- 开始spark之旅
- spark的几点备忘
- 关于机器学习的学习笔记(一):机器学习概念
- 关于机器学习的学习笔记(二):决策树算法
- 关于机器学习的学习笔记(三):k近邻算法
- 长期招聘:自然语言处理工程师