使用最大似然法来求解线性模型(3)-求解似然函数
2017-03-26 20:03
309 查看
根据 使用最大似然法来求解线性模型(2)-为什么是最大化似然函数? 中提到,某个随机变量tn的 条件概率 服从均值为wT*xn,方差为σ2的正态分布。
现在假设有N个样本点,它们的联合概率密度为:
由于在给定了w和σ2的条件下,tn之间是相互独立的,故联合概率密度可写成下式:
为什么 tn在给定了w和σ2的条件下是相互独立的呢?如果直接从图形上看,不是相互独立的,各个tn之间大致是一个单调的线性下降关系。也即:t1<t2<...<tn
这个单调下降的线性关系就是由 w 决定的(体现的)。
在给定了w的条件下,每年的奥林匹克男子100m时间的年份之间就没有必然的联系了,就好像16年奥运会男子100m的时间 与 06 年奥林匹克男子100m的时间 是没有关系,相互独立的。
但从整个历史趋势(1960-2020)来看,奥林匹克男子100m所花的时间是越来越少的。
这里需要注意的是:t是条件独立的,即在给定的w条件下,各个t之间是相互独立的。上面的 L 就是似然函数。
要想最大化L,相当于最大化logL,于是就有:
其中,f(x;w)=w*x,代入上式,得到:
让logL 对 w 求偏(将xn 、tn 和 δ 都视为常数),并令偏导数等于0,根据向量乘法:wT*xn = xnT * w。故得到:
需要注意的是:上式Xn是一个向量,XnT=[1,xn],表示的是年份,即哪一年的比赛数据,比如x10=1980。前面的1 是偏置项。
因为:wT*xn=w0*1+w1*xn. wT=(w0,w1)有两个参数,故需要一个bias unit(偏置项)
为什么w有两个参数(w0,w1)呢?因为我们是用直线来拟合数据。根据直线的一般表达式方程 y=k*x+b,需要两个参数,一个是斜率k,另一个是截距b
只要给定了斜率和截距,就能唯一确定一条直线了。而对于向量w,分量w0相当于截距,分量w1相当于斜率。
tn是一个标量,表示的是第n个样本点代表的年份,比如t10=10.25 表示第10个样本点所表示的奥林匹克男子100m所花的时间是10.25秒。
w是一个向量,即线性模型里面的模型参数。它们的具体形式如下(n 和 N 没有区别):
把求和累加化简,根据矩阵乘法:(注意下面x一个是向量,一个是单个实数x。它们之间的关系:XnT=[1,xn])
这样,我们就可以将偏导数表示成,更紧凑的矩阵乘法的形式,如下:
并最终求得w,结果用wΛ 来表示:
根据模型的概率密度函数:
还需要求解σ2。同样地,logL对σ求偏导数,并令偏导数等于0,得到下面公式:
(图中应该是 logL 而不是L)
最终解得为σ2:
将求得的wΛ 代入到上式(具体推导见参考文献),得到:
根据上面求解的w和δ2 的公式,现在只要给定若干个数据(训练样本X),就可以计算出w和δ2 ,从而求出了:
知道了概率密度表达式中所有的参数:w和δ2 ,当然也就求得了概率密度:
最终得出带有 ξn的能够估计 noise的“线性”模型。因为,此时我们的模型估计值tn是一个 随机变量了,随机变量的variance(各个点取值的偏差由δ2 决定)。
参考文献:《A First Course of Machine Learning》
原文:http://www.cnblogs.com/hapjin/p/6623795.html
现在假设有N个样本点,它们的联合概率密度为:
由于在给定了w和σ2的条件下,tn之间是相互独立的,故联合概率密度可写成下式:
为什么 tn在给定了w和σ2的条件下是相互独立的呢?如果直接从图形上看,不是相互独立的,各个tn之间大致是一个单调的线性下降关系。也即:t1<t2<...<tn
这个单调下降的线性关系就是由 w 决定的(体现的)。
在给定了w的条件下,每年的奥林匹克男子100m时间的年份之间就没有必然的联系了,就好像16年奥运会男子100m的时间 与 06 年奥林匹克男子100m的时间 是没有关系,相互独立的。
但从整个历史趋势(1960-2020)来看,奥林匹克男子100m所花的时间是越来越少的。
这里需要注意的是:t是条件独立的,即在给定的w条件下,各个t之间是相互独立的。上面的 L 就是似然函数。
要想最大化L,相当于最大化logL,于是就有:
其中,f(x;w)=w*x,代入上式,得到:
让logL 对 w 求偏(将xn 、tn 和 δ 都视为常数),并令偏导数等于0,根据向量乘法:wT*xn = xnT * w。故得到:
需要注意的是:上式Xn是一个向量,XnT=[1,xn],表示的是年份,即哪一年的比赛数据,比如x10=1980。前面的1 是偏置项。
因为:wT*xn=w0*1+w1*xn. wT=(w0,w1)有两个参数,故需要一个bias unit(偏置项)
为什么w有两个参数(w0,w1)呢?因为我们是用直线来拟合数据。根据直线的一般表达式方程 y=k*x+b,需要两个参数,一个是斜率k,另一个是截距b
只要给定了斜率和截距,就能唯一确定一条直线了。而对于向量w,分量w0相当于截距,分量w1相当于斜率。
tn是一个标量,表示的是第n个样本点代表的年份,比如t10=10.25 表示第10个样本点所表示的奥林匹克男子100m所花的时间是10.25秒。
w是一个向量,即线性模型里面的模型参数。它们的具体形式如下(n 和 N 没有区别):
把求和累加化简,根据矩阵乘法:(注意下面x一个是向量,一个是单个实数x。它们之间的关系:XnT=[1,xn])
这样,我们就可以将偏导数表示成,更紧凑的矩阵乘法的形式,如下:
并最终求得w,结果用wΛ 来表示:
根据模型的概率密度函数:
还需要求解σ2。同样地,logL对σ求偏导数,并令偏导数等于0,得到下面公式:
(图中应该是 logL 而不是L)
最终解得为σ2:
将求得的wΛ 代入到上式(具体推导见参考文献),得到:
根据上面求解的w和δ2 的公式,现在只要给定若干个数据(训练样本X),就可以计算出w和δ2 ,从而求出了:
知道了概率密度表达式中所有的参数:w和δ2 ,当然也就求得了概率密度:
最终得出带有 ξn的能够估计 noise的“线性”模型。因为,此时我们的模型估计值tn是一个 随机变量了,随机变量的variance(各个点取值的偏差由δ2 决定)。
参考文献:《A First Course of Machine Learning》
原文:http://www.cnblogs.com/hapjin/p/6623795.html
相关文章推荐
- 使用最大似然法来求解线性模型(4)-最大化似然函数背后的数学原理
- 使用最大似然法来求解线性模型(2)-为什么是最大化似然函数?
- 使用最大似然法来求解线性模型(1)
- 使用吉布斯采样求解LDA模型
- 决策树、逻辑回归、线性回归使用时注意事项以及模型过拟合策略
- 编程珠玑读书笔记之----->使用线性算法求解连续子序列的最大和
- 03-《机器学习及实践》学习之使用线性分类模型
- 线性规划的简单应用及使用EXCEL求解
- 详解梯度下降法求解线性模型参数
- MIT18.06线性代数课程笔记7:使用消元法求解Null space
- sklearn 线性模型使用入门
- 机器学习中的贝叶斯方法---先验概率、似然函数、后验概率的理解及如何使用贝叶斯进行模型预测(2)
- 使用感知机进行二类分类的线性分类模型测试(minst数据集)
- linear_model:线性模型使用
- 使用线性分类模型从事良/恶性肿瘤预测任务
- 算法线性编程珠玑读书笔记之----->使用线性算法求解连续子序列的最大和
- Java应用梯度下降求解线性SVM模型参考代码
- TensorBoard的使用(结合线性模型)
- 机器学习中的贝叶斯方法---先验概率、似然函数、后验概率的理解及如何使用贝叶斯进行模型预测(1)
- 如何重覆使用ECO建立的企業邏輯模型