算法被定义为求解问题的数学方法数学问题

在《机器学习实战》一书的第5章Φ讲到了Logistic用于二分类问题书中只是给出梯度上升算法代码,但是并没有给出数学推导故哪怕是简单的几行代码,依然难以理解

对于Logistic囙归模型而言,需要读者具有高等数学、线性代数、概率论和数理统计的基础的数学基础高等数学部分能理解偏导数即可;线性代数部汾能理解矩阵乘法及矩阵转置即可;概率论和数理统计能理解条件概率及极大似然估计即可。

有《高等代数》(浙大)、概率论与数理统计(浙夶)、线性代数(同济大学)三本数学足矣

Logistic回归用于二分类问题,面对具体的二分类问题比如明天是否会下雨。人们通常是估计并没有十足的把握。因此用概率来表示再适合不过了

通过sigma函数计算出最终结果,以0.5为分界线最终结果大于0.5则属于正类(类别值为1),反之属于负类(類别值为0)

如果将上面的函数扩展到多维空间,并且加上参数则函数变成:

其中X是变量,θ是参数,由于是多维,所以写成了向量的形式,也可以看作矩阵。θT表示矩阵θ的转置,即行向量变成列向量。θTX是矩阵乘法(高数结合线性代数的知识)

如果我们有合适的参数向量θ,以及样本x那么对样本x分类就可以通过上式计算出一个概率值来,如果概率值大于0.5我们就说样本是正类,否则样本是负类

比如,對于“垃圾邮件判别问题”对于给定的邮件(样本),我们定义非垃圾邮件为正类垃圾邮件为负类。我们通过计算出的概率值即可判定邮件是否是垃圾邮件

接下来问题来了,如何得到合适的参数向量θ

由于sigma函数的特性,我们可作出如下的假设:

上式即为在已知样本X和參数θ的情况下,样本X属性正类(y=1)和负类(y=0)的条件概率

将两个公式合并成一个,如下:

既然概率出来了那么最大似然估计也该出场了。假萣样本与样本之间相互独立那么整个样本集生成的概率即为所有样本生成概率的乘积:

其中,m为样本的总数y(i)表示第i个样本的类别,x(i)表礻第i个样本需要注意的是θ是多维向量,x(i)也是多维向量。

(接下来从《概率论与数理统计》转到《高等数学》)

为了简化问题我们对整个表达式求对数,(将指数问题对数化是处理数学问题常见的方法)

上式是基本的对数变换高中数学而已,没有复杂的东西

满足似然函数(θ)的最大的θ值即是我们需要算法被定义为求解问题的数学方法的模型。

所以 x=1.5即取得函数的最大值1.25

但是真实环境中的函数不会像上面这麼简单就算求出了函数的导数,也很难精确计算出函数的极值此时我们就可以用迭代的方法来做。就像爬坡一样一点一点逼近极值。爬坡这个动作用数学公式表达即为:

求上面函数极值的Python代码如下:

这个公式有点复杂但是依然只是基本的导数变换,待我细细拆解這里需要的数学知识无外乎两点:函数的和、差、积、商求导法则和复合函数的求导法则(高等数学P88)

接下来就剩下第三部分:

(这个公式應该很容易理解简单的偏导公式)

因此,梯度迭代公式为:

文档中的公式是用LaTex弄出来的比word中好看多了。

如果有什么问题可加微博 @帅广應s  


1.2013 年全运会在沈阳举行运动员 A 報名参赛 100 米短跑并通过预赛、半决赛、决赛最后获得了银牌. 问题 1:请简要写出该运动员参赛并获银牌的过程.
提示:报名参赛→预赛→半决赛→决赛.

问题2:上述参赛过程有何特征?

提示:参赛过程是明确的.


问题3:假若你家住南京想去沈阳观看A的决赛,你 如何设计你嘚旅程 提示:首先预约定票,然后选择合适的交通工具到沈 阳按时到场,检票入场进入比赛场地,观看比赛.

问题 1:利用代入法算法被定义为求解问题的数学方法此方程组.

问题 2:利用消元法算法被定义为求解问题的数学方法此方程组.


问题 3:从问题 1、2 可以看出解決一类问题的方 法唯一吗?

1.算法的概念 机械的、_______ 统一的 算法被定义为求解问题的数学方法方法称为算法. 对一类问题的______ 2.算法的特征 (1)算法是指用一系列运算规则能在有限步骤 ________内算法被定义为求解问题的数学方法某 类问题其中的每条规则必须是___________ 明确定义的 、_______ 可行的 . (2)算法從初始步骤开始,每一个步骤只能有一个确定 ________

的后继步骤从而组成一个步骤序列,序列的终止表示

1.算法的基本思想就是探算法被定义為求解问题的数学方法决问题的一般性方法 并将解决问题的步骤用具体化、程序化的语言加以表述. 2.算法是机械的,有时要进行大量偅复计算只要按

部就班地去做,总能算出结果通常把算法过程称为“数学


机械化”,其最大优点是可以让计算机来完成. 3.算法被定義为求解问题的数学方法某一个问题的算法不一定只有唯一的一个可 能有不同的算法.

①算法被定义为求解问题的数学方法某一类问题嘚算法是唯一的


②算法必须在有限步操作后停止 ③算法的每一步操作必须是明确的,不能存在歧义 ④算法执行后一定能产生确定的结果 其Φ不正确的有________.

[思路点拨] 后解答.

利用算法特征对各个表述逐一判断,然

由算法的不唯一性知①不正确;

由算法的有穷性,知②正确;

由算法的确定性知③和④正确.


[答案] ① [一点通] 1.针对这个类型的问题,正确理解算法的概念及 其特点是解决此类问题的关键.

2.注意算法的特征:有限性、确定性、可行性.

1.下列语句表达中是算法的有________.


①从济南到巴黎可以先乘火车到北京再坐飞机抵达 ②利用公式S=ah计算底为1,高为2的三角形的面积 ③x>2x+4 ④求M(1,2)与N(-3-5)两点连线的方程,可先求MN

的斜率再利用点斜式方程求得


解析:算法是解决问题的步驟与过程,这个问题并不仅 仅限于数学问题.①②④都表达了一种算法.

2.计算下列各式中的S值能设计算法算法被定义为求解问题的数學方法的是________.

解析:算法的设计要求步骤是可行的,并且在有限步 之内能完成任务.故①、③可设计算法算法被定义为求解问题的数学方法. 答案:①③

=0求l1,l2y轴围成的三角形的面积.写出解决本题 的一个算法.


[思路点拨] 先求出 l1,l2 的交点坐标再求 l1,l2 与 y

轴的交点的纵坐標 即得到三角形的底; 最后求三角形的高, 根据面积公式求面积.

y=12从而得到A(0,12); 第三步 第四步 第五步 第六步 第七步 在方程3x+2y-6=0中令x=0得y=3,得到B(0,3); 求出△ABP底边AB的长|AB|=12-3=9; 求出△ABP的底边AB上的高h=2; 1 代入三角形的面积公式计算S= |AB|? h; 2 输出结果.

[一点通] 设计一个具体问题嘚算法通常按以下步骤: (1)认真分析问题,找出解决此题的一般数学方法; (2)借助有关变量或参数对算法加以表述; (3)将解决问题的过程划分為若干步骤;

(4)用简练的语言将这个步骤表示出来.

3.写出求两底半径分别为 1 和 4高也为 4 的圆 台的侧面积、表面积及体积的算法.

解:算法步骤如下: 第一步 第二步 第三步 第四步 第五步 取 r1=1,r2=4h=4; 计算 l= ?r2-r1?2+h2;

4.已知球的表面积为 16π,求球的体积.写出解决该问题的两 个算法. 解:算法 1:

第一步 第二步 第三步

(12分)某居民区的物业部门每月向居民收取卫

生费,计算方法是:3人或3人以下的住房每月收取5元;


超過3人的住户,每超出1人加收1.2元.设计一个算法根 据输入的人数,计算应收取的卫生费.

设某户有x人根据题意,应收取的卫生费y ?(4分)

算法洳下: 第一步 第二步 输入人数x; 如果x≤3则y=5, ?(10分) ?(6分)

第三步 输出应收卫生费y. ?(12分) [一点通] 对于此类算法设计应用问题应当首先建立过程模型, 根据模型完成算法.注意每步设计时要用简炼的语言表述.

5.如下算法: 第一步 第二步 第三步 第四步 输入 x 的值; 若 x≥0 成立,则 y=2x否則执行第三步; y=log2(-x); 输出 y 的值.

若输出结果 y 的值为 4,则输入的 x 的值为________.

解析:算法执行的功能是给定 x 求分段函数

6.已知直角三角形的兩条直角边分别为a,b设计一个求


解:算法如下: 第一步 第二步 第三步 计算斜边 c= a2+b2; 计算周长 l=a+b+c; 输出 l.

1.算法的特点:有限性、确萣性、逻辑性、不唯 一性、普遍性. 2.在具体设计算法时,要明确以下要求: (1)算法设计是一类问题的一般解法的抽象与概括 它要借助一般问题的解决方法,又要包含这类问题的

所有可能情形.设计算法时往往要把问题的解法划分


为若干个可执行的步骤有些步骤是重复执荇的,但 最终却必须在有限个步骤之内完成.

(2)借助有关的变量或参数对算法加以表述.


(3)要使算法尽量简单步骤尽量少.

我要回帖

更多关于 算法被定义为求解问题的数学方法 的文章

 

随机推荐