新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
涉及到似然函数的许多应用中,更方便的是使用似然函数的自然对数形式,即“对数似然函数”。求解一个函数的极大化往往需要求解该函数的关于未知参数的偏导数。由于对数函数是单调递增的,而且对数似然函数在极大化求解时较为方便,所以对数似然函数常用在最大似然估计及相关领域中。例如:求解Gamma分布中参数的最大似然估计问题:
为企业提供成都做网站、成都网站设计、网站优化、营销型网站、竞价托管、品牌运营等营销获客服务。成都创新互联拥有网络营销运营团队,以丰富的互联网营销经验助力企业精准获客,真正落地解决中小企业营销获客难题,做到“让获客更简单”。自创立至今,成功用技术实力解决了企业“网站建设、网络品牌塑造、网络营销”三大难题,同时降低了营销成本,提高了有效客户转化率,获得了众多企业客户的高度认可!
假定服从Gamma分布的随机变量 具有两个参数 和 ,考虑如下似然函数
如果想从输出 中估计参数 ,直接求解上式的极大化未免有些难度。在取对数似然函数后,
再取关于 的偏导数等于0的解,
最终获得 的最大似然估计
当存在一组独立同分布的样本 时,
故而
其中, 。
在python中有内置的求对数的函数。
log()方法返回x的自然对数,对于x0。
语法
以下是log()方法的语法:
#!/usr/bin/python
import math # This will import math module
print "math.log(100.12) : ", math.log(100.12)
print "math.log(100.72) : ", math.log(100.72)
print "math.log(119L) : ", math.log(119L)
print "math.log(math.pi) : ", math.log(math.pi)
当我们运行上面的程序,它会产生以下结果:
math.log(100.12) : 4.60636946656
math.log(100.72) : 4.61234438974
math.log(119L) : 4.77912349311
math.log(math.pi) : 1.14472988585
Logistic函数的表示形式如下:
它的函数图像如下,由于函数图像很像一个“S”型,所以该函数又叫 sigmoid 函数。
满足的性质:
1.对称性,关于(0,0.5)中心对称
2.逻辑斯谛方程即微分方程
最早logistic函数是皮埃尔·弗朗索瓦·韦吕勒在1844或1845年在研究它与人口增长的关系时命名的。广义Logistic曲线可以模仿一些情况人口增长( P )的 S 形曲线。起初阶段大致是 指数增长 ;然后随着开始变得饱和,增加变慢;最后,达到成熟时增加停止。
当一个物种迁入到一个新生态系统中后,其数量会发生变化。假设该物种的起始数量小于环境的最大容纳量,则数量会增长。该物种在此生态系统中有天敌、食物、空间等资源也不足(非理想环境),则增长函数满足逻辑斯谛方程,图像呈S形,此方程是描述在资源有限的条件下种群增长规律的一个最佳数学模型。在以下内容中将具体介绍逻辑斯谛方程的原理、生态学意义及其应用。
Logistic regression (逻辑回归)是当前业界比较常用的机器学习方法,用于估计某种事物的可能性。之前在经典之作《数学之美》中也看到了它用于广告预测,也就是根据某广告被用户点击的可能性,把最可能被用户点击的广告摆在用户能看到的地方,然后叫他“你点我啊!”用户点了,你就有钱收了。这就是为什么我们的电脑现在广告泛滥的原因了。
还有类似的某用户购买某商品的可能性,某病人患有某种疾病的可能性啊等等。这个世界是随机的(当然了,人为的确定性系统除外,但也有可能有噪声或产生错误的结果,只是这个错误发生的可能性太小了,小到千万年不遇,小到忽略不计而已),所以万物的发生都可以用可能性或者几率(Odds)来表达。“几率”指的是某事物发生的可能性与不发生的可能性的比值。
Logistic regression可以用来回归,也可以用来分类,主要是二分类。它不像SVM直接给出一个分类的结果,Logistic Regression给出的是这个样本属于正类或者负类的可能性是多少,当然在多分类的系统中给出的是属于不同类别的可能性,进而通过可能性来分类。
假设我们的样本是{ x , y},y是0或者1,表示正类或者负类, x 是我们的m维的样本特征向量。那么这个样本 x 属于正类,也就是y=1的“概率”可以通过下面的逻辑函数来表示:
这里的 θ 是模型参数,也就是回归系数,σ是sigmoid函数。这样y=0的“概率”就是:
考查逻辑斯蒂回归模型的特点,一个事件的几率(oods)是指这件事发生的概率与不发生概率的比值,如果事件发生的概率是p,那么该事件的几率是p/(1-p),该事件的对数几率(log odds)或者logit函数是
对于逻辑斯蒂回归而言,可以得到如下的对数几率
这就是说,在逻辑斯蒂回归模型中,输出y=1的对数几率是输入x的线性函数,或者说,输出y=1的对数几率是由输入x的线性函数表示的模型,即逻辑斯蒂回归模型。换句话说,y就是我们的关系变量,例如她喜不喜欢你,与多个因素有关,比如你的人品,你的长相,你是否有钱等。我们把这些因素表示成变量x 1 , x 2 ,…, x m ,那么这个女生是怎么考虑这些因素的呢,每个人心理其实都有一杆秤,例如有人比较看重你的人品,人品的权重是0.8,;也有人比较看重你有钱,有钱的权重设置成0.7等等。我们把这些对应于x 1 , x 2 ,…, x m 的权值叫做回归系数,表达为θ 1 , θ 2 ,…, θ m 。他们的加权和就是你在心目中的得分。
在参数学习时,可以用极大似然估计方法求解。假设我们有n个独立的训练样本{( x 1 , y 1 ) ,( x 2 , y 2 ),…, ( x n , y n )},y={0, 1}。那每一个观察到的样本( x i , y i )出现的概率是
对于整个样本集,每个样本的出现都是独立的,n个样本出现的似然函数为(n个样本的出现概率是他们各自的概率乘积)
那么上述的似然函数就是模型的代价函数(cost function),我们要求的参数就是θ*。我们稍微对上式进行转换
对L(θ)的极大值,得到θ的估计值。问题变成了以对数似然函数为木匾函数的最优化问题。用L(θ)对θ求导,得到
无法解析求解的,所以一般使用迭代的方法求解,通常采用梯度下降法和拟牛顿法。
上面介绍的是儿分类的模型,用于二类分类。可以将其推广为多项逻辑斯蒂回归模型(multi-nominal regression model),用于多分类,假设离散随机变量Y的取值是{1,2,3,...,K}那么多项逻辑斯蒂回归的模型是
同理,二项逻辑斯蒂回归的参数估计的方法也可以推广到多项逻辑斯蒂回归。
[1]. 机器学习算法与Python实践之(七)逻辑回归(Logistic Regression)
[2].《统计学习方法》 李航 著
python中log_inner是log表示以e为底数的对数函数符号。
在数学运算中,如果没有计算器,对于很大的数字相乘,我们花费大量的时间计算,而且一旦出错,就要重新计算,很是麻烦。其实对于数字相乘,不依靠靠计算器,想要准确简单的运算的方法不是没有,那就是对数和指数,他们解决了大数或非常的小的数相乘的繁琐计算。而在python中,也有计算对数的方法,那就是对数函数log函数。本文将向大家介绍log函数的表述语句、参数和返回值,并以实例演示用log函数计算对数的过程。log()函数:返回 x 的自然对数。即返回以 2 为基数的 x 的对数。
Python由荷兰数学和计算机科学研究学会的吉多·范罗苏姆 于1990 年代初设计,作为一门叫做ABC语言的替代品。Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言,随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发。Python解释器易于扩展,可以使用C语言或C++(或者其他可以通过C调用的语言)扩展新的功能和数据类型。Python 也可用于可定制化软件中的扩展程序语言。Python丰富的标准库,提供了适用于各个主要系统平台的源码或机器码。