请选择 进入手机版 | 继续访问电脑版
楼主: EchoEstelle
78657 52

一类统计方法的计算实现和应用——监督机器学习   [推广有奖]

  • 0关注
  • 31粉丝

教授

56%

还不是VIP/贵宾

-

威望
0
论坛币
6772 个
通用积分
1.2139
学术水平
220 点
热心指数
149 点
信用等级
90 点
经验
22842 点
帖子
498
精华
7
在线时间
839 小时
注册时间
2010-3-10
最后登录
2016-7-20

EchoEstelle 发表于 2014-9-11 21:00:57 |显示全部楼层 |坛友微信交流群

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
1.梯度下降实现线性模型的广义最小二乘法参数估计

1.预测汽车接下去该进行的轨道是个回归问题!Astonishing.感觉上具有空间连续性的问题
都可以这么做。在连续空间中具有线连续事物比如轨迹,具有面连续的比如铁板上的温度
传导,具有体连续性的比如空气湿度,具有时空连续性的比如人类进行的活动,历史在时
空里就是连续的。

2.给出一组数据集(房屋面积,房屋价格),将面积和价格回归为一种关系。这背后的基本
假设是房屋面积越大,价格越大,这能给予我们在买卖房屋时在性价比上有个权衡和参考。
定义一些符号,m表示训练样本数,x表示输入变量,y表示输出变量,第i个样本(x^{(i)},y^{(i)}),假设函数h_\theta:x->y,其中
\theta是参数.由学习算法从数据得到假设函数。作者却直接假设了x,y之间的线性关系。选取参数使满足:
\[\hat{\theta}=\underset{\theta}{min}J(\theta)=\underset{\theta}{min}\frac{1}{2}\sum_{i=1}^{m}\left(h_\theta(x^{(i)})-y^{(i)}\right)^2\]
其中的J(\theta)是广义最小二乘法中的一个特例。

3.一种求解上面约束的算法——梯度下降法[重看定义]
\[初始赋值\theta=0,\theta_i:=\theta_i-2\frac{\partial}{\partial \theta_i}J(\theta)=\theta_i-2\frac{\partial}{\partial \theta_i}\frac{1}{2}(h_\theta(x)-y)^2=\theta_i-(h_\theta(x)-y)\cdot x_i\]
可以加入一个大于零的步伐控制量\alpha,令:
\[\begin{alignat}{1}\theta_i:&=\theta_i-\alpha(h_\theta(x)-y)\cdot x_i\\&=\theta_i-\alpha\sum_{j=1}^{m}(h_\theta(x^{(j)})-y^{(j)})\cdot x_i^{(j)}\end{alignat}\]
一直迭代,直达算法收敛。在沿梯度下降的过程中,\theta有可能变大也有可能变小,只要保证一点,迭代后的J(\theta)变小
即可,直接利用导数定义,实际计算中定义无穷小的大小。下降的线应该是折线才对。收敛于一个局部最优解相当于打若干
次高尔夫,最终把球打进洞。N。在曲面上的步长越来越接近\Delta \theta_i。如果和\theta_i同向变化,也就是J(\theta)升高
的,向相反方向走;如果和\theta_i反向变化,也就是J(\theta)降低的方向,同向走。

4.当m很大时采用随机梯度下降法Stochastic (Incremental) Gradient Descent:
\[For\,all\,i,\theta_i:=\theta_i-\alpha(h_\theta(x^{(j)})-y^{(j)})\cdot x_i^{(j)}\]

5.梯度下降法的全局表示:
\[\begin{alignat}{1}&梯度:\nabla_\theta J=\begin{bmatrix}\frac{\partial J}{\partial \theta_0}\\ \vdots\\\frac{\partial J}{\partial \theta_n}\end{bmatrix}\in \mathrm{R^{n+1}}\\&迭代:\theta:=\theta -\alpha \nabla_\theta J\end{alignat}\]

6.估计参数\theta的解析解:
\[定义矩阵函数的梯度和迹:f:R^{m \times n} \to R , 若A \subseteq R^{m \times n},则\]
\[ \nabla_A f(A)=\begin{bmatrix}\frac{\partial f}{\partial A_{11}}&\cdots&\frac{\partial f}{\partial A_{1n}}\\\vdots &\ddots&\vdots\\\frac{\partial f}{\partial A_{m1}}&\cdots&\frac{\partial f}{\partial A_{mn}}\end{bmatrix},tr A=\sum_{i=1}^{n}A_{ii}\]
\[\begin{alignat}{1}迹的若干性质:&tr AB=tr BA\\&tr ABC=tr CAB=tr BCA\\&如果f(A)=tr AB,那么\nabla_A f(A)=B^T\\&tr A=tr A^T\\&如果a是实数,tr a=a\\& \nabla_A tr ABA^TC =CAB+C^TAB^T\end{alignat}\]
求解线性模型中的参数\theta:
\[训练样本观测X=\begin{bmatrix}(x^{(1)})^T\\(x^{(2)})^T\\\vdots \\ (x^{(m)})^T\end{bmatrix},线性模型就是X\theta=\begin{bmatrix}(x^{(1)})^T\theta\\(x^{(2)})^T\theta\\\vdots \\ (x^{(m)})^T\theta\end{bmatrix}=\begin{bmatrix}h_\theta(x^{(1)})\\h_\theta(x^{(2)})\\ \vdots \\h_\theta(x^{(m)})\end{bmatrix},目标观测y=\begin{bmatrix}y^{(1)}\\y^{(2)}\\ \vdots \\y^{(m)}\end{bmatrix}\]
\[X\theta-y=\begin{bmatrix}y^{(1)}-h_\theta(x^{(1)})\\y^{(2)}-h_\theta(x^{(2)})\\ \vdots \\y^{(m)}-h_\theta(x^{(m)})\end{bmatrix},那么J(\theta)=\frac{1}{2}(X\theta-y)^T(X\theta-y)=\frac{1}{2}\sum_{i=1}^{m}(h_\theta(x^{(i)}-y^{(i)})^2\]
最小二乘法的思想:更一般的最小二乘法是一个向量的内积,J(\theta) \ge 0,通过求梯度找到最小的值所在的\theta。
\[\begin{alignat}{1}令\nabla_\theta J(\theta)=&0,\nabla_\theta \frac{1}{2}(X\theta-y)^T(X\theta-y)\\&=\frac{1}{2} \nabla_\theta tr(\theta^TX^TX\theta-\theta^TX^Ty-y^TX\theta+y^Ty)\\&=\frac{1}{2} \left(\nabla_\theta tr(\theta\theta^TX^TX)-\nabla_\theta tr(y^TX\theta)-\nabla_\theta tr(y^TX\theta)\right)\\&=\frac{1}{2}\nabla_\theta tr(\theta\theta^TX^TX)-\nabla_\theta tr(y^TX\theta)\\&=\frac{1}{2}(X^TX\theta+X^TX\theta)-X^Ty\\&=X^TX\theta-X^Ty\end{alignat}\]
\[得到正规方程X^TX\theta=X^Ty=0 ,求出 \theta=(X^TX)^{-1}X^Ty\]

7.比较数值解和解析解。上面两种描述答案的方式完全不同,看到代数表示出来了解的形式,但是好像很没用,最终还是不能
给我们答案,而通过数值迭代最后却能实实在在给我们给出能去判断的模型。但是同时,如果我们得到了解析解的话,也相当
于得到了一种新的计算\theta的方式,如果计算机能够直接进行矩阵运算的话。更多的意义在于,我们可以用思想方法想去甚
远的两种方式解答同一个问题,对答案进行验证。计算机做一个m\times n的矩阵的乘法用的时间怎样?

2.梯度上升实现逻辑回归中线性模型的最大似然估计

1.为什么人们直觉上觉得过拟合不好?方差大对人来说有什么一般意义?

2.参数学习算法就是参数已知的学习算法。非参数学习算法:参数随观测样本量增长的算法。比如,局部加权回归loss。

3.已知一组样本(x^{(i)},y^{(i)}),对任意给定x,有h(x),若是线性返回\theta^Tx,对于局部加权方法,就只考虑x附近的样本,
使用这部分数据进行拟合,
\[估计\theta使得\sum_{i=1}^{m}\omega^{(i)}(h_\theta(x^{(i)})-y^{(i)})^2最小,其中\omega^{(i)}=exp\{-\frac{(x^{(i)}-x)^2}{2\tau^2}\},\tau被称作带宽参数。\]
相当于假设了x^{(i)}附近的x服从以x^{(i)}为中心和期望的正态分布,同时也只不过是一种赋权方式,对远点赋权几乎是0.

4.线性模型的概率解释和最大似然估计:他就在讲高斯-马尔科夫线性模型中观测误差服从高斯分布的情形,这里
又一次提醒我要完成标准正态分布密度函数的推导以及母函数相关牵涉到随机过程的一些问题。观测误差的假设直接导致观测
也服从高斯分布,证明见高斯-马尔科夫线性模型
\[\epsilon^{(i)}\sim \mathcal{N}(0,\delta^2)\Rightarrow (y^{(i)}|x^{(i)};\theta)\sim \mathcal{N}(\theta^Tx^{(i)},\delta^2)\]
\[\begin{alignat}{1}\epsilon^{(i)}彼此独立,记\theta的似然函数L(\theta)&=P(y|x;\theta)\\&=\prod_{i=1}^{m}P(y^{(i)}|x^{(i)};\theta)\\&=\prod_{i=1}^{m}\frac{1}{\sqrt{2\pi}\delta}\exp \left(-\frac{(y^{(i)}-\theta^TX)^2}{2\delta^2}\right)\end{alignat}\]
\[\begin{alignat}{1}l(\theta)=\log L(\theta)&=\log\left(\prod_{i=1}^{m}\frac{1}{\sqrt{2\pi}\delta}\exp\left(-\frac{(y^{(i)}-\theta^TX)^2}{2\delta^2}\right)\right)\\&=\sum_{i=1}^{m}\log\left(\frac{1}{\sqrt{2\pi}\delta}\exp\left(-\frac{(y^{(i)}-\theta^TX)^2}{2\delta^2}\right)\right)\\&=m \log \frac{1}{\sqrt{2\pi}\delta}+\sum_{i=1}^{m}-\frac{(y^{(i)}-\theta^TX)^2}{2\delta^2}\end{alignat}\]
\[令J(\theta)=\frac{1}{2}\sum_{i=1}^{m}(y^{(i)}-\theta^TX)^2,若J(\hat{\theta})=\underset{\theta}{\min}J(\theta),则l(\hat{\theta})=\underset{\theta}{\max}l(\theta),L(\hat{\theta})=\underset{\theta}{\max}L(\theta)\]

5.逻辑回归可以预测未来24小时内一个计算机集群会不会奔溃。
用线性回归进行分类的困难在于多一个训练样本的信息都有可能改变原先的假设。
如果y取值 {0,1},h_\theta(x)取值 [0,1]区间,sigmoid函数将R映射到[0,1]区间:
\[h_\theta(x)=g(\theta^Tx)=\frac{1}{1+e^{-\theta^Tx}}\]
将y取1的概率定义为假设函数:
\[P(y=1|x;\theta)=h_\theta(x),P(y=0|x;\theta)=1-h_\theta(x),P(y|x;\theta)={h_\theta(x)}^y\cdot(1-h_\theta(x))^{(1-y)}\]
参数估计很自然地使用了最大似然估计法:
\[L(\theta)=P(y|x;\theta)=\prod_{i=1}^{m}P(y^{(i)}|x^{(i)};\theta)=\prod_{i=1}^{m}{h_\theta(x^{(i)})}^{y^{(i)}}\cdot(1-h_\theta(x^{(i)}))^{(1-y^{(i)})}\]
取对数似然函数:
\[l(\theta)=\log L(\theta)=\sum_{i=1}^{m}y^{(i)} \log h_\theta(x^{(i)})+(1-y^{(i)})\cdot \log (1-h_\theta(x^{(i)}) \]
梯度上升迭代出对数似然函数最大值[计算梯度]
\[\theta:=\theta+\alpha \nabla_\theta l(\theta)\]

6.感知算法假设函数定义:
\[g(z)=\begin{cases}1,z \ge 0\\0 , z<0\end{cases},h_\theta(x)=g(\theta^Tx)\]
参数迭代方式:
\[\theta_j=\theta_j+\alpha(y^{(i)}-h_\theta(x^{(i)}))\cdot({x_j}^{(i)})\]

3.逻辑回归中的牛顿法最大似然参数估计

1.牛顿法,已知函数f(\theta),找f的零点\hat{\theta}使得f(\hat{\theta})=0。相较梯度上升(下降)法的效率更高[?],梯度法是通
过让导数一步步接近0的方式找局部最优解(最大值或者最小值)的。
\[初始化\theta:\theta^{(0)},得到对应函数值:f(\theta^{(0)}),过(\theta^{(0)},f(\theta^{(0)}))做切线,切线与\theta 轴相交得到\theta^{(1)},完成一次迭代。\]
\[已知过该条切线的两点(\theta^{(0)},f(\theta^{(0)})),(\theta^{(1)},0),则f在\theta^{(0)}的导数、首次迭代公式以及多次迭代公式如下:\]
\[f'(\theta^{(0)})=\frac{f(\theta^{(0)})-0}{\theta^{(0)}-\theta^{(1)}},\theta^{(1)}:=\theta^{(0)}-\frac{f(\theta^{(0)})}{f'(\theta^{(0)})},\theta^{(t+1)}:=\theta^{(t)}-\frac{f(\theta^{(t)})}{f'(\theta^{(t)})}\]
—>为什么这样做?或者这样做意味了什么?
—>牛顿法是二次收敛的。

2.针对逻辑回归问题最大化参数\theta的对数似然函数即寻找l'(\theta)的零点:
\[它的牛顿法一般迭代公式:\theta^{(t+1)}:=\theta^{(t)}-\frac{l'(\theta^{(t)})}{l''(\theta^{(t)})}\]
\[当\theta是向量时:\theta^{(t+1)}=\theta^{(t)}+H^{-1}\nabla_\theta l\]
\[其中H表示Hessian矩阵:H=\begin{bmatrix}\frac{\partial ^2 l}{\partial_{\theta_1} \partial_{\theta_1}}&\cdots&\frac{\partial ^2 l}{\partial_{\theta_1} \partial_{\theta_n}}\\\vdots&\ddots&\vdots\\\frac{\partial ^2 l}{\partial_{\theta_n} \partial_{\theta_1}}&\cdots&\frac{\partial ^2 l}{\partial_{\theta_n} \partial_{\theta_n}}\end{bmatrix}\]
—>牛顿法收敛速度比梯度法快,但对高特征数量不适用,因每次迭代需要计算H^{-1}
—>选择logistic函数的原因。

4.指数族假设分布下的线性预测模型

1.伯努利分布和高斯分布可以写成指数族分布的一般形式:
\[P(y;\eta)=b(y)\cdot \exp (\eta^TT(y)-a(\eta)),\eta是自然参数,T(y)是充分统计量,任意一组(a,b,T)能定义一个指数族分布。\]
伯努利分布指数族分布一般形式:
\[\begin{alignat}{1}Ber(\Phi):P(y=1;\Phi)=\Phi,P(y;\Phi)&=\Phi^y\cdot (1-\Phi)^{(1-y)}\\&=\exp\left(\log (\Phi^y\cdot (1-\Phi)^{(1-y)})\right)\\&=\exp\left(y\log\Phi+(1-y)\log (1-\Phi)\right)\\&=\exp\left(y \log \frac{\Phi}{1-\Phi}+\log(1-\Phi)\right)\end{alignat}\]
\[伯努利分布的指数族分布参数就是:(\eta,a(\eta),b(y),T(y))=(\log\frac{\Phi}{1-\Phi},-\log (1-\Phi),1,y)\]
\[解出\Phi=\frac{1}{1+e^{-\eta}}=\frac{e^\eta}{1+e^\eta}正好是logistic函数\]
\[a(\eta)=-\log (1-\Phi)=\log \frac{1+e^{-\eta}}{e^{-\eta}}=\log (1+e^\eta)\]
—>感觉一个退化的事物可以成为诸多一般事物的特殊情况

高斯分布的指数族分布一般形式:[理解]
\[\begin{alignat}{1}y\sim \mathcal{N}(\mu;\delta^2),P(y;\mu,\delta^2)&=\frac{1}{\sqrt{2\pi} \delta}\exp\left\{-\frac{(y-\mu)^2}{2\delta^2}\right\}\\&=\frac{1}{\sqrt{2 \pi }}\exp \left\{ \log \frac{1}{\delta}-\frac{y^2-2y\mu+\mu^2}{2\delta^2}\right\}\\&=\frac{1}{\sqrt{2 \pi }}\exp\left\{ \log \frac{1}{\delta}-\frac{\mu^2}{2\delta^2}+\frac{2y\mu-y^2}{2\delta^2}\right\}\end{alignat}\]
\[得到高斯分布的指数族分布参数相关:(a(\eta),b(y),\eta^TT(y))=(\frac{\mu^2}{2\delta^2}-\log \frac{1}{\delta},\frac{1}{\sqrt{2 \pi }},\frac{2y\mu-y^2}{2\delta^2})\]
\[令T(y)=\begin{bmatrix}y\\y^2\end{bmatrix}则\eta=\begin{bmatrix}\frac{u}{\delta^2}\\-\frac{1}{2\delta^2}\end{bmatrix}=\frac{1}{\delta^2} \begin{bmatrix}\mu\\-\frac{1}{2}\end{bmatrix}\]
\[得到高斯分布指数族分布参数:(\eta,a(\eta),b(y),T(y))=\left(\frac{1}{\delta^2} \begin{bmatrix}\mu\\-\frac{1}{2}\end{bmatrix},\frac{\mu^2}{2\delta^2}-\log \frac{1}{\delta},\frac{1}{\sqrt{2 \pi }},\begin{bmatrix}y\\y^2\end{bmatrix}\right)\]
\[解出a(\eta)=?\]

—>贝塔分布、Dirichlet分布、Wishart分布等都是指数族分布

2.应用包含分布假设广义线性模型做预测:
\[\begin{alignat}{1}&(1)假设输出变量y|x;\theta服从指数族分布。\\&(2)给定输入x,目标在求得h(x)=E(T(y)|x)\\&(3)决策设计\eta=\theta^Tx\end{alignat}\]

3.伯努利分布假设下做线性预测:
\begin{alignat}{1}&(1)伯努利分布属于指数族分布\\&(2)对固定的x,\theta算法输出假设函数h_\theta(x)=E(y|x;\theta)\\&(3)P(y=1|x;\theta)=\Phi=\frac{1}{1+e^{-\eta}}=\frac{1}{1+e^{-\theta^Tx}}\end{alignat}
正则响应函数把指数族分布自然参数映射至目标观测的期望:
\[g(\eta)=E(y|\eta)=\frac{1}{1+e^{-\eta}},g^{(-1)}被叫做link函数\]

4.Multinomial分布可以用来对事物进行多重分类。对于二项分布和现实世界的自然关联是事情的发生与不发生,同时一类事情
呈现的形态会多于两种,由背后更基本事情的发生与不发生决定。推广的伯努利试验和Multinomial的定义:
进行n次相互独立的推广伯努利试验,共有k种不同的试验结果A_1,A_2,...,A_k,每1次试验中出现第i种结果的概率是P(A_i)=p_i  i=1,2,\cdots,k,则有:\sum_{i=1}^{k}p_i=1。如果n次试验之后第A_i种结果出现的次数是n_i,i=1,2,\cdots,k,则有:\sum_{i=1}^{k}n_i=n,第A_i种结果出现n_i次概率是:
\[\dbinom{n}{n_1}\cdot\dbinom{n-n_1}{n_2}\cdots\dbinom{n-\sum_{i=1}^{k-1}n_i}{n_k}{p_1}^{n_1}{p_2}^{n_2}\cdots{p_k}^{n_k}=\frac{n!}{n_1!n_2!\cdots n_k!}{p_1}^{n_1}{p_2}^{n_2}\cdots{p_k}^{n_k}\]
\[是(p_1+p_2+\cdots+p_k)^n=1展开式的一般项。\]



二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:实现和应用 统计方法 机器学习 incremental Stochastic 梯度下降 线性模型 最小二乘法 牛顿法 最大似然法

已有 5 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
np84 + 100 精彩帖子
zhuosn + 5 热心帮助其他会员
狂热的爱好者 + 60 精彩帖子
我的素质低 + 100 精彩帖子
yangyuzhou + 60 + 5 + 5 + 5 精彩帖子

总评分: 经验 + 200  论坛币 + 120  学术水平 + 10  热心指数 + 5  信用等级 + 5   查看全部评分

本帖被以下文库推荐

我非我见我释我是我非我
EchoEstelle 发表于 2014-9-15 02:17:47 |显示全部楼层 |坛友微信交流群

续4.指数族假设分布下的线性预测模型

5.把Multinomial分布从多项式形式转化成指数族分布的形式。
\[y=\{1,2,\cdots,k\},k个参数:\Phi_1,\Phi_2,\cdots,\Phi_k,其中\Phi_i=P(y=i),i=1,2,\cdots,k,所以其实是k-1个参数。\]
\[令T_1=\begin{bmatrix}1\\0\\0\\\vdots\\0\end{bmatrix},T_2=\begin{bmatrix}0\\1\\0\\\vdots\\0\end{bmatrix}\cdots,T_{k-1}=\begin{bmatrix}0\\0\\\vdots\\0\\1\end{bmatrix},T_k=\begin{bmatrix}0\\0\\\vdots\\0\\0\end{bmatrix}\in R^{k-1},定义指示函数:1\{True\}=1,1\{False\}=0\]
\[用指示函数表示向量T(y)的第i个元素:T(y)_i=1\{y=i\}\]
\[\begin{alignat}{1}那么P(y)&={\Phi_1}^{1\{y=1\}}\cdot{\Phi_2}^{1\{y=2\}}\cdots\cdot{\Phi_k}^{1\{y=k\}}\\&={\Phi_1}^{T(y)_1}\cdot{\Phi_2}^{T(y)_2}\cdots\cdot{\Phi_k}^{1-\sum_{i=1}^{k-1}T(y)_i}\\&=\cdots\\&=b(y)exp\{\eta^TT(y)-a(\eta)\}\end{alignat}\]
上面写法和4中写法的不同主要由他们不同的思考方式造成,4中的思考方式是排列组合的想法,上面的我就不是很清楚。
\[其中\eta=\begin{bmatrix}\log\frac{\Phi_1}{\Phi_k}\\\vdots\\\log\frac{\Phi_{k-1}}{\Phi_k}\end{bmatrix}\in \mathcal{R^{k-1}},a(\eta)=-\log(\Phi_k),b(y)=1\]
\[解出\Phi_i=\frac {e^{\eta_i}}{1+\sum_{j=1}^{k-1}e^{\eta_j}}=\frac {e^{\theta_ix}}{1+\sum_{j=1}^{k-1}e^{\theta_jx}},i=1,2,\cdots,k-1\]
\[h_\theta (x)=E(T(y)|x;\theta)=E \left( \begin{bmatrix}1\{y=1\}\\\vdots\\1\{y=k-1\}\end{bmatrix}\Bigg|x;\theta \right) =\begin{bmatrix}\Phi_1\\\vdots\\\Phi_{k-1}\end{bmatrix}=\begin{bmatrix}\frac {e^{\theta_1}x}{1+\sum_{j=1}^{k-1}e^{\theta_jx}}\\\vdots\\\frac {e^{\theta_{k-1}}x}{1+\sum_{j=1}^{k-1}e^{\theta_jx}}\end{bmatrix}\]

6.softmax回归算法是logistic算法的推广可以判断k种情况。

5.完整的贝叶斯概率模型实现

1.判别和生成

对不同类别样本分别进行建模。曾经有人用logistic回归做医学统计,被行内人鄙视,其实很简单,很专业的领域内就应该用贝
叶斯集合专业经验和观点才对的。判别的形式定义:
\[直接通过学习得到后验概率P(y|x)或者假设函数h_\theta(x)\to \{1,0\}直接做判断。\]
生成的形式定义不一样:
\[\begin{alignat}{1}&首先对目标所属分类下分别进行概率建模P(x|y),再利用专业知识建模先验概率P(y),就得到特征概率模型P(x)=P(x|y)P(y)\\&再得到样本P(x,y)之后,最后得到目标后验概率P(y|x)=\frac{P(x,y)}{P(x)}。\end{alignat}\]
其实所谓生成学习算法就是建立了一个从已知到未知的完整的贝叶斯概率模型。

—>分类的一般方式就是形成若干分界的界面。如果是分两类,在平面上用线去分,在三维空间中用面去分,在n维空间中用
n-1维的一个几何体去分,很特别的在现实空间中,一个刹那就是一个点,也可以斜着时空切,也可以选时空中的一个,在一
个平面上两点就能确定一条线了,最少三点就能就能确定一个平面了,在四维空间中四个点就能确定一个体了。也就是一个划分四维空间的“面”,也就是说在现实生活中至少4个不同的瞬间就能使得事情有显著差异了,差不多就是四个标准你就做了判
断了属于A还是属于B。


—>我觉得传统某些处理不是很合适,比如事情A和事情B都知道了,也就是说既可以假设P(A|B),也可以假设P(B|A),为什么我觉
得这样不太妥当呢。


2.高斯判别分析
\[设有连续的特征输入x \in \mathcal{R^{n}},假设P(x|y)服从高斯分布\mathcal{N}(\vec{\mu},\Sigma),其中\Sigma=E\{(x-\mu)(x-\mu)^T\}\]
—>期望向量和协方差矩阵的意义:期望向量就是联合密度函数的中心。协方差阵的对角元表示某个维度的方差,自然是方差越小越集中。方差参数能保证方差正负无穷大时概率都趋近于零。如何理解协方差阵中的非对角元。

—>两维度相关时钟形对称轴的同坐标轴倾斜的角度是怎样的?

假设目标输出服从伯努利分布:
\[P(y)=\Phi^y(1-\Phi)^{1-y}\]
已有分类下特征服从高斯分布:
\[P(x|0)=\frac{1}{(2\pi)^{\frac{n}{2}}|\Sigma|^{\frac{1}{2}}}\exp\left\{-\frac{1}{2}(x-\mu_0)^T\Sigma^{-1}(x-\mu_0)\right\}\\P(x|1)=\frac{1}{(2\pi)^{\frac{n}{2}}|\Sigma|^{\frac{1}{2}}}\exp\left\{-\frac{1}{2}(x-\mu_1)^T\Sigma^{-1}(x-\mu_1)\right\}\]
给定样本之后写出对数似然函数(Joint Likelyhood):
\[\begin{alignat}{1}l(\Phi,\mu_0,\mu_1,\Sigma)&=\log \prod_{j=1}^{m}P(x^{(j)},y^{(j)})\\&=\log \prod_{j=1}^{m}P(x^{(j)}|y^{(j)})P(y^{(j)})\end{alignat}\]
不同于逻辑回归时候的条件对数似然函数,直接从样本得到后验概率分布的似然估计,对\theta做估计:
\[l(\theta)=\prod_{j=1}^{m}P(y^{(j)}|x^{(j)};\theta)\]
回到正轨,求\mu_0,\mu_1,\Sigma使得l(\Phi,\mu_0,\mu_1,\Sigma)最大,做最大似然估计,结果是[推导]
\[\Phi=\frac{\sum_{j=1}^{m}y^{(j)}}{m}=\frac{\sum_{j=1}^{m}1\{y^{(j)}=1\}}{m}\]
\[\mu_0=\frac{\sum_{j=1}^{m}1\{y^{(j)}=0\}x^{(j)}}{\sum_{j=1}^{m}1\{y^{(j)}=0\}}\]
\[\mu_1=\frac{\sum_{j=1}^{m}1\{y^{(j)}=1\}x^{(j)}}{\sum_{j=1}^{m}1\{y^{(j)}=1\}}\]
\[\Sigma=?\]
得到模型估计之后,给定新的样本特征,对目标作出最大可能预测:
\[\begin{alignat}{1}\arg \underset{y}{\max}P(x|y)=\arg \underset{y}{\max}\frac{P(x|y)P(y)}{P(x)}&=\arg \underset{y}{\max}P(x|y)P(y)\\&=\arg \underset{y}{\max}P(x|y),如果P(y)是Uniform的。\end{alignat}\]
\[注:arg 指argument.Uniform指的均匀分布 .\]
高斯判别分析和逻辑回归的联系:
比如,我们有训练样本(x,y),y\in {1,0},两类样本分别服从高斯分布,可以画出P(y=1|x)的概率看起来是正态函数的分布函数:\[P(y=1|x)=\frac{P(x|y=1)P(y=1)}{P(x)}其中P(x)=P(x|y=1)P(y=1)+P(x|y=0)P(y=0)\]
同时,P(y=1|x)的函数图形也类似一个sigmoid函数。
它们之间的本质区别在两个函数的位置和陡峭程度不一样。[看看sigmoid函数的导函数]

—>如果P(x|y=1)和P(x|y=0)两个密度函数相交于点(\dot{x},P(\dot{x}|y=1))那么P(y=1|\dot{x})=P(y=0|\dot{x})=0.5

—>两个密度函数除一个密度函数得到一个分布函数,同时它也是一个条件密度?Remarkable.
—>想跟恩达同学讲,不要觉得这种类同很神奇,这是将1看做发生,将0看做不发生假设和的概率定义导致的必然结果。
发现最开始的假设!
---------------------------------------------------------------------------------------------------------------------------------------------------------
3.利用完整的贝叶斯概率模型的优劣:
   
设P(x|y)服从高斯分布,P(y)服从两点分布,利用完整的贝叶斯概率模型,得到后验分布P(y=1|x)是Logistic函数,但其逆命题
不成立。一般地,若P(y)服从两点分布,只要P(x|y=1)和P(x|y=0)服从同一种指数族分布——比如伽马分布、泊松分布、指数
伽马分布、贝塔分布,利用完整的贝叶斯概率模型,就能得到P(y=1|x)是Logistic函数。
这也是另一种导出logistic函数的方法。[定理证明]     
逻辑回归对数据的假设少,所以更具鲁棒性,不能判断数据分布时,逻辑回归是不错选择。
---------------------------------------------------------------------------------------------------------------------------------------------------------   
4.应用朴素贝叶斯做垃圾邮件分类(多元伯努利事件模型)
\[存放词语的字典向量D=(a,abs,answer,\cdots,buy,\cdots,zymurgy)^T. y \in\{1,0\},y=1:是垃圾邮件,\]
\[y=0:不是垃圾邮件.邮件的特征向量x\in \{0,1\}^N,定义特征中元素x_i=1,如果邮件中存在d_i;\]
\[x_i=0,如果邮件中不存在d_i,i=1,2,3,\cdots,N.并且假设在给定y条件下邮件中语词彼此独立,即有:\]
\[\begin{alignat}{1}P(x_1,x_2,x_3,\cdots,x_N|y)&=P(x_1|y)P(x_2|x_1y)P(x_3|x_2x_1y)\cdots P(x_N|x_{N-1}\cdots x_2x_1y)\\&=P(x_1|y)P(x_2|y)P(x_3|y)\cdots P(x_N|y)=\prod_{i=1}^{N}P(x_i|y)\end{alignat}\]
—>x_i彼此条件独立的假设在真实英语中并不对。
对P(x|y)建模写出概率参数:
\[\Phi_{i|y=1}=P(x_i=1|y=1) ; \Phi_{i|y=0}=P(x_i=1|y=0) ;\Phi_y=P(y=1)\]
写出联合似然函数:
\[L(\Phi_y,\Phi_{i|y=1},\Phi_{i|y=0})=\prod_{j=1}^{m}P(x^{(j)},y^{(j)})\]
利用最大似然法求出估计值:
\[\Phi_{i|y=1}=\frac{\sum_{j=1}^{m}1\{x_{i}{(j)}=1,y^{(j)}=1\}}{\sum_{j=1}^{m}1\{y^{(j)}=1\}},i=1,2,\cdots,N\]
\[\Phi_{i|y=0}=\frac{\sum_{j=1}^{m}1\{x_{i}{(j)}=1,y^{(j)}=0\}}{\sum_{j=1}^{m}1\{y^{(j)}=0\}},i=1,2,\cdots,N\]
\[\Phi_y=\frac{\sum_{j=1}^{m}1\{y^{(j)}=1\}}{m}\]
对给定的要判断的邮件用贝叶斯求出其是垃圾邮件的概率:
\[给定要判断的邮件\hat{x}=(\hat{x_1},\hat{x_2},\cdots,\hat{x_N})^T\]
\[集合N_1\cup N_0=\{1,2,\cdots,N\},N_1\cap N_0=\varnothing, \hat{X_1}=\{x_i\}_{i \in N_1},\hat{X_0}=\{x_i\}_{i \in N_1}\]
利用已经求出的估计值:
\[P(\hat{x}|y=1)=\frac{P(\hat{x},y=1)}{P(y=1)}=\frac{P(\hat{x_1},\hat{x_2},\cdots,\hat{x_N},y=1)}{\Phi_y}=\frac{\prod_{i \in N_1}{}P(\Phi_{i|y=1})}{\Phi_y}\]
---------------------------------------------------------------------------------------------------------------------------------------------------------
5.Laplace平滑
当在要判别的邮件中发现没包含在字典中的新词语,即极大似然估计不够用时候可采取的方法。此法是在尝试估计太阳明天升起的概率时想出来的。不能因为没观测到某事就说某事不可能,就是这里采取的开放的观点。
\[P(y=1)=\frac{'1's+1}{'1's+1+'0's+1}\]
针对垃圾邮件判别的最大似然估计量将变成:
\[\Phi_{i|y=1}=\frac{\sum_{j=1}^{m}1\{x_{i}{(j)}=1,y^{(j)}=1\}+1}{\sum_{j=1}^{m}1\{y^{(j)}=1\}+2},i=1,2,\cdots,N\]
\[一般地,y\in\{1,2,\cdots ,k\},P(y=j)=\frac{\sum_{i=1}^{m}1\{y^{(i)}=j\}+1}{m+k}\]
而且Laplace平滑能够得到最优估计。
----------------------------------------------------------------------------------------------------------------------------------------------------------
6.多项式事件模型:特征向量元能取k种的朴素贝叶斯
\[字典中的词语d_i \in D,i=1,2,\cdots,N。其中x_i=i|x_i=d_i \in {1,2,3,\cdots,n}表示从邮件内容词语到字典词语的索引。\]
\[第j个训练样本X^{(j)}=\{x_{1}^{(j)},x_{2}^{(j)},\cdots,x_{n_j}^{(j)}\}^T,n_j表示邮件中词语的数量,j=1,2,\cdots,m。\]
\[特征维和观测维张成n+1维随机向量:P(x,y)=\prod_{i=1}^{n}P(x_i|y)P(y)\]
\[需要估计的模型参数:\Phi_{k|y=1}=P(x_i=k|y=1),\Phi_{k|y=0}=P(x_i=k|y=0),\Phi_y=P(y)\]
\[\begin{alignat}{1}直观最大似然参数估计和Laplace平滑:\Phi_{k|y=1}&=\frac{\sum_{j=1}^{m}1\{y^{(j)}=1\}\sum_{i=1}^{n_j}1\{x_{i}^{(j)}=k\}+1}{\sum_{j=1}^{m}1\{y^{(j)}=1\}\cdot n_j+N},k \in{1,2,\cdots,N}\\\Phi_y&=\frac{\sum_{j=1}^{m}1\{y^{(j)}=1\}}{m}\end{alignat}\]
—>Laplace平滑更像一种定义的拓展。恩达符号定义的不规范,给他讲解带来蛮多麻烦。
—>多项式事件模型在自然语言处理中被称做一元模型,其结果与文本顺序无关。

故事:学到的最重要的东西是机器学习的思想方法,模型的话可以根据需要以及过去拥有的知识自己建造出来的,就像一个建筑师。小时候,幼儿园和我家门口有蛮多建材商店,里面裁玻璃、装窗框、切广告字贴纸。一次,他们废弃了好多的白色泡沫
垫堆在路边,它们变成孩子们无比爱惜的财产。我哥用竹签子把若干的三角形体,多边形体穿起来竟然形成了一个军舰的架势
。真是令我无比艳羡,我有点怪我自己,怎么没弄成一个很棒的模型呢?小学时候,我曾煞有介事地告诉一位从幼儿园到高中一直同班的一位同学“造吗?我们该做一个用螺旋钮控制的碗柜!”,我还很详细地画了个图纸,没法儿实施!哪有我需要的灵
巧的锯子和听话的木头。后来见过很专业的建筑师,几乎都是荷兰人他们一个个高头大马,演示自己的作品一点不含糊,充满热爱。就在我小小的那个年代互联网已经萌芽,如今人们生活其中,就是所谓的影响力。
----------------------------------------------------------------------------------------------------------------------------------------------------------



我非我见我释我是我非我

使用道具

EchoEstelle 发表于 2014-9-18 18:56:21 |显示全部楼层 |坛友微信交流群

我可以自己实现一个神经网络吗?

看了恩达讲的机器学习课程,我觉得最基本的思想方法我已经学到了。神经网络是线性规划与逻辑判断的集合体。我能实现它么?
我非我见我释我是我非我

使用道具

fantuanxiaot 发表于 2014-9-18 21:17:37 |显示全部楼层 |坛友微信交流群
楼主好数理功夫!!!!!!!!!楼主什么专业?哪里的PHD或?

使用道具

fantuanxiaot 发表于 2014-10-10 15:53:32 |显示全部楼层 |坛友微信交流群
这个屌!!!好一个数值分析!

使用道具

zgy_Russell 发表于 2014-10-10 17:08:39 |显示全部楼层 |坛友微信交流群
佩服机器学习的

使用道具

gssdzc 在职认证  发表于 2014-10-10 19:14:24 |显示全部楼层 |坛友微信交流群
非常感谢分享 。。。。。。

使用道具

zhuafeng2008 发表于 2014-10-11 09:46:28 |显示全部楼层 |坛友微信交流群
好强大!

使用道具

nonewman 发表于 2014-10-11 11:57:00 |显示全部楼层 |坛友微信交流群
be seen somewhere another in this forum

使用道具

yangyang9189 在职认证  发表于 2014-10-11 16:38:14 |显示全部楼层 |坛友微信交流群
kankan

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加JingGuanBbs
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-3-29 04:15