机器学习常用模型及优化

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一章模型建立

1.1 回归模型:

条件:

1.数据

2.假设的模型

结果:

用模型对数据学习,预测新数据

1.1.1一元线性回归模型(最小二乘法)

它通过最小化误差的平方和寻找数据的最佳函数匹配

我们以最简单的一元线性模型来解释最小二乘法。什么是一元线性模型呢?监督学习中,如果预测的变量是离散的,我们称其为分类(如决策树,支持向量机等),如果预测的变量是连续的,我们称其为回归

假设从总体中获取了n组观察值(X1,Y1),(X2,Y2),…,(Xn,Yn)平方损失函数

1.1.2逻辑回归模型

将线性回归中的一次模型变成逻辑回归函数,即sigmoid函数。

或者:

其他的思路和想法与线性回归一样,所以说逻辑回归的模型是一个非线性模型,但是它本质上又是一个线性回归模型

损失函数(误差函数)为:

1.1.3 softmax回归

它是逻辑回归的扩展

从分类的角度来说,逻辑回归只能将东西分成两类(0,1),softmax可以分成多类

逻辑回归中,模型函数(系统函数)为:

Softmax回归中,模型函数(系统函数)为:

1.2 神经网络模型

1.2.1 神经元

首先来一个三输入单输出的神经元,输入输出都是二进制(0,1)。举例来说:X1表示天气是否好

X2表示交通是否好

X3表示是否有女朋友陪你

Y表示你是否去电影院看电影

要让这个神经元工作起来,需要引入权重,w1,w2,w3。这样就有了:

(1)

W1表示”天气是否好”对你做决定的重要程度

W2表示”交通是否好”对你做决定的重要程度

W3表示”是否有女朋友陪你”对你做决定的重要程度

Threshold越低表示你越想去看电影,风雨无阻你都想去。Threshold越高表示你越不想去看电影,天气再好也白搭。Threshold适中表示你去不去电影院要看情况,看心情。

1.2.2神经网络

现在扩展一下:

这样就出现神经网络了,可以看出这是很多神经元组合成的。

把上面的(1)式中的threshold 用偏移量-b 表示,并且移到不等式左边,出现下面(2)式:

(2)

例子就不举了,原文是实现与非门的一个例子,说明这个东西可以进行逻辑推理,它就很有潜力了,电脑就是靠逻辑加运算来实现各种功能。

现在要用这个东西学习识别手写字体,我们的想法是这样的:

举例来说,电脑错把9当成了8,那么我们希望通过自动调整w 或b 来对output 进行调整,以达到正确的结果。这时网络会自己“学习”了。

具体是这样的:

1 if (w+b)0.50 if (w+b)<0.5output σσ≥⎧=⎨

⎩ 其中()σ⋅是sigmoid 函数:

下面是sigmoid函数的图形

它是阶梯函数的一个平滑:

输出通过w和b进行微调的式子是这样的:

这个式子比较抽象,它只是战略性的一个式子,下面引入cost函数来进行战术实践。Cost函数是评价模型准确与否的一个函数,它可能越大越好,也可能越小越好,看你怎么构造了。这里用均方误差来构造:

这个函数越小越好,所以通过使这个函数变得最小来得到最好的w和b,也就是达到最好的学习效果。

1.3 最大似然估计

X 的一个样本X1,X2,…,Xn 独立同分布,其观测值为x1,x2,…,xn 。

()(;)P X x p x θ==,其中参数θ未知

根据X1,X2,…,Xn 的观测值x1,x2,…,xn 来估计模型参数θ。 假如这组数据服从B(1,p),p 未知

1()(1) (x=0,1)x x P X x p p -==-

11(1)

...11()(,...,)(1)n

i n

i x x x n n L p P X x X x p

p =-++∑====-

ln ()0d

L p dp

=得到()L p 取极大值时的p ,即为所求 第二章模型优化

2.1 遗传算法

有个博客讲的很好,用袋鼠跳问题形象的比喻这个问题,类似的算法还有模拟退火法。

2.2 梯度下降法

一句话来说就是求损失函数或似然函数的极值,我们自己算的话就是求个导就完事了,但是有些函数的导数特别难求,这时候就需要梯度下降法,交给电脑迭代几次就算出来了

举例来说,求损失函数的最小值:

2.3 牛顿法

对于非线性优化,假设任务是优化一个目标函数,求解其极大极小值,转化为求问题,是不是回到了上面的问题?

二阶泰勒级数:

21

()()()()2f x x f x f x x f x x '''+∆=+∆+

二阶泰勒级数成立的充要条件是x ∆无限趋于0,两边约去()f x x +∆和()f x ,并对x ∆求导,得到:

()()0f x f x x '''+∆=

解得:

()

()n n f x x f x '∆=-

''

所以得到迭代式:

1()()n n n n f x x x f x +'=-

''

红色是牛顿法,绿色是梯度下降法,牛顿法更容易收敛。高维情况的牛顿迭代公式:

11[()](), 0n n n n x x Hf x f x n -+=-∇≥ 其中,H 是hessian 矩阵:

Hessian矩阵的引入使得高维情况下牛顿法较为少用,但是有人已提出解决方案Quasi-Newton method。

相关文档
最新文档