数据发掘与机器学习算法导论-1.最优化(Optimization)

1.1 算法(algorithms)

算法就是为了计算而产生的可迭代的,一步步执行的程序;
这个程序可以是一段简洁的描述,一个公式,或者公式加描述;
常用的算法如:寻找多项式的解,判断一个数字是否为素数,或者产生随机数字;这些都是算法。

An algorithm is an iterative, step-by-step procedure for computation.

1.1.1 算法的本质

一个算法的本质可以写作一个迭代公式或者多个迭代公式的组合;

In essence, an algorithm can be written as an iterative equation or a set of iterative equations;

如:寻找的平方根,迭代公式如下:

为迭代计数器,一般从0开始;
如,从开始迭代,R代码如下:

cnt <- 8 
a <- 100
i <- 0
x <- 1
while(i
数据发掘与机器学习算法导论-1.最优化(Optimization)_第1张图片
迭代结果

第6轮时已经接近了真实解,第7轮和第8轮起始已经得到了真实的结果。

泰勒公式
如果在处阶可导,可利用的次多项式来逼近。

牛顿迭代算法
取泰勒公式前两项
得到:
迭代公式:

1.1.2 算法存在的问题

  • 最终解依赖于初始值,如上例子,从-1开始迭代
    数据发掘与机器学习算法导论-1.最优化(Optimization)_第2张图片
    解以来与迭代的初始值

    解决办法:初始值随机产生.
  • 当前讨论的算法对的要求,在处可导且不为0.
  • 其他issues:
    • setting of parameters
    • the slow rate of convergence
    • condition numbers
    • iteration structures

1.1.3 算法的类型

一种算法只能完成一种特定的计算任务,没有一种算法可以完成所有的任务:
一般有:

  • root-finding algorithms
  • sorting algorithms

1.2 最优化(optimization)

1.2.1 A simple example

已知一个体积确定的圆柱桶,怎么设计让其表面积最小:

根据面积和体积公式,最终计算得出当时候最优。
如果选择为球形,则得到更小的面积;

1.2.2 General formulation of optimization

maximize/minimize
subject to:

根据微积分知识,可以根据一次微分和二次微分判断极大值和极小值;

一次微分 二次微分
极大值
极小值

1.2.3 feasible solution(可行解)

A point that satisfies all the constraints is called a feasible point and thus is a feasible solution to the problem.
the set of all feasible points is called the feasible region.

满足条件的取值范围都为可行解。

1.2.4 optimality criteria(最优性判决)

A point is called a strong local maximum of the nonlinearly constrained optimization problem if is defined in a -neighborhood and satisfies for , where and
a weak local maximum .
a strong local minimum .
a weak local minimum .

1.3 无约束最优化

1.3.1 univariate functions(一元函数)

可利用1.2.2节中表格进行计算。
即利用一次微分和二次微分组合进行计算;

1.3.2 Multivariate functions(多元函数)

一次微分用梯度向量替换
二次微分用Hessian matrix替换


H= \left[ \begin{matrix} \frac{\partial^2f}{\partial x_1^2} &\frac{\partial^2f}{\partial x_1\partial x_2} & \cdots & \frac{\partial^2f}{\partial x_1\partial x_n} \\ \frac{\partial^2f}{\partial x_2\partial x_1} &\frac{\partial^2f}{\partial x_2^2} & \cdots & \frac{\partial^2f}{\partial x_2\partial x_n} \\ \vdots & \vdots & \ddots & \vdots \\ \frac{\partial^2f}{\partial x_n\partial x_1} & \frac{\partial^2f}{\partial x_n\partial x_2} & \cdots & \frac{\partial^2f}{\partial x_n^2} \\ \end{matrix} \right]
,当行列式为正值时得到极小值。
,当行列式为负值时得到极大值。

1.4 非线性约束最优化

思路:将约束问题变为非约束问题

1.4.1 Penalty method

minimize
subject to:

定义penalty function从而将约束问题变成非约束问题:


然后根据1.3节求得最优解;

1.4.2 Lagrange multipliers

minimize
subject to:

combine the and called Lagrangian

is the Lagrange multiplier, which is an unknown scalar to be determined.

如果,则需要个Lagrange multipliers,

则偏微分方程如下:

1.4.3 Karush-Kuhn-Tucker conditions

minimize
subject to:

If all the functions are continuously differentiable at a local minimum , then there exist constants and such that:


where,.

你可能感兴趣的:(数据发掘与机器学习算法导论-1.最优化(Optimization))