【机器学习实战】极大似然法

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

http://baike.baidu.com/link?url=3Ej1VIItwWd35sXeoRWRhcJkJLCFvzPzNIoTkAfai8ZIS4Ppcch4_maQ25FjNCU1Eplsp4k3oPKLyv6VIsPhsq


一、

最大似然法是一种具有理论性的点估计法,基本思想是,当从模型总体随机抽取N组样本观测值后,最合理的参数估计量应该使得从模型中抽取N组样本观测值的概率最大。


二、

离散型:

假如一个罐子,里面有黑白两种颜色的球,数目不知,比例不知。我们想知道罐中黑白比例。不能把全部拿出。我们随机取出一个球,并记录颜色。若100此实验,70次白球。

设白球比例为P,则黑球为1-P。

P(Xi|M) = P(x1,x2,x3,...,x100 | M) = P(x1|M) * P(x2|M) * ... * P(x100|M) = P^70 * (1-P)^30

求Max{P^70 * (1-P)^30} ==> 对P求导=0

70*P^69*(1-P)^30 + P^70 * [-(1-P)^29 * 30] = 0 ===> P= 0.7


连续型:X~N(a,b^2)(正态分布);a,b是未知参数,x1,x2,x3....xn来自X的一个样本值。求a,b的极大似然估计值

X的概率密度函数为:

f(x;a,b^2) = 1/Math.sqrt(2*pi)*b  *  e^{-1 / 2b^2   * (x-a)^2} 

似然函数为:

L(a,b^2)=∏1/Math.sqrt(2*pi)*b  *  e^{-1 / 2b^2   * (x-a)^2}

求对数

lnL(a,b^2) = ln{1/Math.sqrt(2*pi)*b  *  e^{-1 / 2b^2   * (x1-a)^2}} + ... + ln{1/Math.sqrt(2*pi)*b  *  e^{-1 / 2b^2   * (xn-a)^2}}

==>n*(0-1/2 * ln(Math.sqrt(2*pi) * b)^2) + -1/(2b^2) * (x-a)^2

==>n*(0-1/2*ln2pi -1/2lnb^2) - 1/(2b^2) * ∑(xi-a)^2

==>-n/2*ln2pi - n/2 * lnb^2 - 1/(2b^2) * (xi-a)^2


求偏导

lnL(a,b^2) 对a求偏导==>  - 1/(2b^2) * 和(xi - a) * 2 * (-1) = 0 ==> (xi - a)  = 0 ==> 和xi = na ==>a=xi/n ==> 即a 等于 x样本的均值


lnL(a,b^2) 对b^2求偏导==> -n / (2b^2) -  (xi-a)^2 * (-1) * 1/(2b^2)^2 = 0 ==> n*b^2 - (xi-a)^2 =0 ==> b^2 = 1/n * ∑(xi-a)^2


三、逻辑回归


逻辑函数:

g(z) = 1 / (1+e^(-z))

估计函数:

h(x) = g(theta^T * x) = 1 / [1 + e^(-theta^T * x)]

由于二值分类很像二项分布。

P(y=1|x;theta) = h(x)

P(y=0|x;theta) = 1 - h(x)

===> 由上式推导成一般表达式:

P(y|x;theta) = [h(x)]^y * [1- h(x)]^(1-y)

验证 y = 0 => P(y=0|x;theta) = [h(x)]^0 *  [1- h(x)]^(1-0) = 1 * [1 - h(x)] = 1 - h(x)

验证 y = 1 => P(y=1|x;theta) = [h(x)]^1 *  [1- h(x)]^(1-1) = h(x) * 1 = h(x)


似然估计函数:

L(theta) = ∏ P(y|x;theta)  = ∏  [h(x)]^y * [1- h(x)]^(1-y)

求对数

ln L(theta) = ∑{y*lnh(x) + (1-y)ln[1-h(x)]}

采用梯度上升法:



转载于:https://my.oschina.net/u/204498/blog/644421

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/398645.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

自定义配置节与配置节的读取

一、引子你是否也遇到过这样的问题:项目很多配置都写到了App.Config或Web.Config的AppSettings内,每个人都加了几条,到最后囤积了大量的配置,分不清哪个是有用的、哪个是没用的了。(即便加了相关注释,也是乱…

机器学习的练功方式(九)——线性回归

文章目录致谢9 线性回归再相遇9.1 再遇9.1.1 概述9.1.2 矩阵和向量9.1.3 矩阵加减乘除9.1.3.1 矩阵——矩阵加减9.1.3.2 矩阵——标量加减乘9.1.3.3 矩阵——向量相乘9.1.3.4 矩阵——矩阵相乘9.1.3.5 矩阵的逆9.1.3.6 矩阵的转置9.1.4 向量化9.1.5 广义线性模型9.2 正规方程9.…

vsftp服务器搭建

1.FTP的主动模式和被动模式的区别: 最大的区别是数据端口并不总是20, 主动模式和被动模式的优缺点: 主动FTP对FTP服务器的管理和安全很有利,但对客户端的管理不利。因为FTP服务器企图与客户端的高位随机端口建立连接,而…

12个月份统计分组

/** 根据月份来统计trade里面的入账,支出,总盈利*/public function countMonth(){$in array();$out array();$res array();$year date("Y",time());$in_sql SELECT SUM(money) AS mon, FROM_UNIXTIME(cdate, "%m") AS m FR…

深度学习修炼(一)——从机器学习转向深度学习

文章目录1 转变1.1 前言1.2 基本元素1.2.1 张量1.2.2 创建张量1.2.3 操纵张量1.2.3.1 张量乘法1.2.3.2 哈达玛积1.2.3.3 降维1.2.3.4 转置1.2.3.5 范数1.2.3.6 拼接张量1.2.4 张量属性1.2.5 张量和Numpy1.2.5.1 张量变Numpy1.2.5.2 Numpy变张量1.3 后话1 转变 1.1 前言 在之前…

idea 调试技巧1

1 多线程调试 开发过多线程应用的朋友应该有体会,有些时候,为了观察多个线程间变量的不同状态,以及锁的获取等,就会想到在代码里加个断点debug一下。 在IDE里断点停下来的时候,可以切换到另外的线程中,跑其…

SQL server 复习一

第一天 下面我们从最基础的开始: 在运行里面输入:services.msc 一、启动服务 二、数据库登录的两种身份验证方式 另外一种身份验证方式就是SQL Server身份验证. sa不能使用的时候可以这样的操作: 1.用windows登录,然后在“实例”右键“属性”…

[分享]iOS开发-实现view底部控件随着键盘的弹出而上移的效果

首先说一下思路:想要达到底部控件随着键盘的弹出而上移的效果,那么我们必然需要的到键盘在弹出时的高度,以及原点坐标。说白了我们的大致思路就是,用view的高度-键盘弹出时的高度,得到的值就是底部控件与vi…

深度学习修炼(二)——数据集的加载

文章目录致谢2 数据集的加载2.1 框架数据集的加载2.2 自定义数据集2.3 准备数据以进行数据加载器训练致谢 Pytorch自带数据集介绍_godblesstao的博客-CSDN博客_pytorch自带数据集 2 数据集的加载 与sklearn中的datasets自带数据集类似,pytorch框架也为我们提供了数…

Node.js 函数

在JavaScript中,一个函数可以作为另一个函数接收一个参数。我们可以先定义一个函数,然后传递,也可以在传递参数的地方直接定义函数。 Node.js中函数的使用与Javascript类似,举例来说,你可以这样做: functio…

在Entity Framework 4.0中使用 Repository 和 Unit of Work 模式

【原文地址】Using Repository and Unit of Work patterns with Entity Framework 4.0 【原文发表日期】 16 June 09 04:08 PM 如果你一直在关注这个博客的话,你知道我最近在讨论我们加到Entity Framework 4.0中的POCO功能的方方面面,新加的POCO支持促成…

Css3之基础-5 Css 背景、渐变属性

一、CSS 背景概述背景属性的作用- 背景样式可以控制 HTML 元素的背景颜色、背景图像等 - 背景色- 设置单一的颜色作为背景- 背景图像- 以图片作为背景- 可以设置图像的位置、平铺、尺寸等二、CSS 背景属性背景色 background-color - 属性用于为元素设置背景色- 接受任何合法的颜…

[Angularjs]锚点操作服务$anchorScroll

写在前面 有个单页应用的项目中,需要通过锚点进行页面的定位。但angularjs的路由会出现跟锚点冲突,angularjs会将锚点当成路由进行解析,造成跳转到这个页面,而我们需要的只是跳转到当前的锚点位置。angularjs的路由格式#/home/en。…

机器学习的练功方式(十)——岭回归

文章目录十 岭回归10.1 岭回归的接口10.2 岭回归处理房价预测十 岭回归 岭回归是线性回归的改进,有时候迫不得已我们的参数确实不能少,这时候过拟合的现象就可能发生。为了避免过拟合现象的发生,既然不能从减少参数上面下手,那我…

js产生随机数

<script>document.write(parseInt(10*Math.random()));  //输出0&#xff5e;10之间的随机整数document.write(Math.floor(Math.random()*101));  //输出1&#xff5e;10之间的随机整数function RndNum(n){var rnd"";for(var i0;i<n;i)rndMath.floor(Math…

JS实现在输入框内输入@时,邮箱账号自动补全

<!DOCTYPE HTML><html lang"en"><head><meta charset"utf-8"/><title>邮箱自动补全</title><style type"text/css">.wrap{width:200px;margin:0 auto;}h1{font-size:36px;text-align:center;line-hei…

OpenCV修养(一)——引入

文章目录1 引入1.1 OpenCV是啥1.2 OpenCV——Python1 引入 1.1 OpenCV是啥 OpenCV是一个基于Apache2.0许可&#xff08;开源&#xff09;发行的跨平台计算机视觉计算机视觉和机器学习软件库&#xff0c;可以运行在Linux、Windows、Android和Mac OS操作系统上。 它轻量级而且高…

动态创建 Plist 文件

简介 Property List&#xff0c;属性列表文件&#xff0c;它是一种用来存储串行化后的对象的文件。属性列表文件的扩展名为.plist &#xff0c;因此通常被称为 plist文件&#xff0c;文件是xml格式的。 写入plist文件 在开发过程中&#xff0c;有时候需要把程序的一些配置保存下…

[Everyday Mathematics]20150101

(1). 设 $f(x),g(x)$ 在 $[a,b]$ 上同时单调递增或单调递减, 试证: \[ (b-a)\int_a^b f(x)g(x)\mathrm{\,d}x \geq \int_a^b f(x)\mathrm{\,d}x\cdot \int_a^b g(x)\mathrm{\,d}x. \] (2). 试证: \[ c\in (0,1)\Rightarrow \int_c^1 \dfrac{e^t}{t}\mathrm{\,d}t \geq e\cdot …

被解放的姜戈08 远走高飞

作者&#xff1a;Vamei 出处&#xff1a;http://www.cnblogs.com/vamei 转载请先与我联系。 之前在单机上实现了一个Django服务器&#xff08;被解放的姜戈07 马不停蹄&#xff09;&#xff0c;现在我们可以把这个服务器推上一个云平台。这里我选择使用阿里云。 看着复仇的火焰…