牛顿方法
简单的来说就是通过求当前点的导数得到下一个点.用到的性质是导数值等于该点切线和横轴夹角的正切值.
极大似然估计
收敛速度:quadratic conversions 二次收敛
θ为矩阵时
image.png每次迭代都需要重新计算H -> nxn 特征较多时计算量比较大
复习:极大似然估计
高斯分布 =>最小二乘法
伯努利分布 => logistic回归
指数分布族 exponential family distribution
η被称为自然参数(natural parameter)或者典范参数(canonical parameter); 实数或者向量
T(y)是充分统计量(sufficient statistic)(对于我们考虑的分布来说,通常T(y)=y);
给定T,a,b,通过改变参数 η 得到不同的分布.
广义线性模型 generalized linear models GLM
为了导出GLM,作三个假设:
为了导出GLM,作三个假设:
(1) y|x;θ ~ ExponentialFamily(η)
(2)给定x,我们的目标是预测T(y)的预期值. 在大部分例子中,我们有T(y)=y,因此意味着我们通过学习得到的假设满足 h(x) = E[y|x] (这个假设对logistic回归和线性回归都成立)
(3)自然参数和输入变量是线性相关的,也就是说η =θTx (如果自然参数是向量,则ηi =θiTx)
伯努利分布 => logistic回归
Multinomial 多项式分布
指示函数
softmax回归(softmax regression).是logistic回归的推广
反过来可以得到,θ1 ... θk-1 是k-1个n+1的参数向量
判别学习算法 discriminative learning algorithms 和 生成学习算法 generative learning algorithms
判别学习算法:
-
直接学习p(y|x),即给定输入特征,输出所属的类
-
或学习得到一个假设hθ(x),直接输出0或1
生成学习算法:
-
对p(x|y)进行建模,p(x|y)表示在给定所属的类的情况下,显示某种特征的概率。处于技术上的考虑,也会对p(y)进行建模。
-
p(x|y)中的x表示一个生成模型对样本特征建立概率模型,y表示在给定样本所属类的条件下
例:在上例中,假定一个肿瘤情况y为恶性和良性,生成模型会对该条件下的肿瘤症状x的概率分布进行建模
对p(x|y)和p(y)建模后,根据贝叶斯公式p(y|x) = p(xy)/p(x) = p(x|y)p(y)/p(x),可以计算:p(y=1|x) = p(x|y=1)p(y=1)/p(x),其中,p(x) = p(x|y=0)p(y=0) + p(x|y=1)p(y=1)
高斯判别分析 Guassian Discriminant Analysis
假设 p(x|y) => Guassian
多元高斯分布
二元正态分布的概率密度函数改写成矩阵-向量形式 http://blog.csdn.net/neu_chenguangq/article/details/46581987
将上式推广至N维: 即:其中:
-
μ 相当于每个正态分布的对称轴,是一个一维向量
-
Σ是协方差矩阵
高斯判别分析:
叫做joint likelihood
而之前学习的
叫做 conditional likelihood
求出最大似然估计为:
μ0分子为y=0时所有x的和,分母为y=0的个数,μ0为所有负样本的平均值
μ1同理
P(y=0) = P(y=1)
argmax使结果最大的参数的值(使y最大的x的值)
左面P(x|y=0) 右面P(x|y=1)
最后计算P(y=1|x)
P(x) = P(x|y=0)P(y=0) + P(x|y=1)P(y=1)
logistic回归和高斯判别分析
高斯判别分析假设更强
如果x|y服从高斯分布,使用高斯判别效果更好
如果数据服从柏松分布,使用logistic回归也会得到较好的结果,但是使用高斯判别则不会
高斯判别的优点:使用数据少(因为数据不是精确符合高斯分布,而是近似高斯分布)
上面的公式推导
x | y=1 ~ ExpFamily(η1)
x | y=0 ~ ExpFamily(η0)
=> P(y = 1|x) is logistic
logistic回归建模的鲁棒性
朴素贝叶斯 Naive Bayes
邮件分类,需要2^50000-1个参数
做一个很强的假设,对于给定的y,x_i是条件独立的(conditionally independent)
很显然这个假设是不正确的,因为一个词出现会影响到另一个词(不是条件独立的),但是朴素贝叶斯仍然有效,在对文本文件(邮件、网页)进行分类时
(贝叶斯网络。。。)
模型参数包括:联合似然性(joint likelihood)为:
得到最大似然估计值:
y = 1 是垃圾邮件,分子表示垃圾邮件中包含单词j的邮件数量,分母表示垃圾邮件数量,垃圾邮件中出现j的概率
很容易计算:
如何选取x中的词(生成词典),可以遍历邮件里所有词,也可以只取出现次数大于3的
朴素贝叶斯:求P(x|y) P(y),而P(y)=Φy ,P(x|y)为假设,服从伯努利分布,x_i取值0或1
如果出现一个在训练集合从未出现的词,概率为0,得到的最终的概率是0/(0+0),在过去几个月的邮件(训练数据)未出现的词,概率为0,统计的意义上是不科学的
为了优化,使用 Laplace平滑
Laplace smothing(Laplace平滑)
比如球队连输5场比赛,第6场比赛的胜率
y有k个可能的取值
回到朴素贝叶斯问题,通过laplace平滑:
分子加1,分母加1就把分母为零的问题解决了.
网友评论