2012年11月8日

最大似然估计(Maximum likelihood estimation)【转】

摘要: 最大似然估计提供了一种给定观察数据来评估模型参数的方法,即:“模型已定,参数未知”。简单而言,假设我们要统计全国人口的身高,首先假设这个身高服从服从正态分布,但是该分布的均值与方差未知。我们没有人力与物力去统计全国每个人的身高,但是可以通过采样,获取部分人的身高,然后通过最大似然估计来获取上述假设中的正态分布的均值与方差。 最大似然估计中采样需满足一个很重要的假设,就是所有的采样都是独立同分布的。下面我们具体描述一下最大似然估计: 首先,假设为独立同分布的采样,θ为模型参数,f为我们所使用的模型,遵循我们上述的独立同分布假设。参数为θ的模型f产生上述采样可表示为 回到上面的“模型已定,参数未知 阅读全文

posted @ 2012-11-08 16:35 EasonCheng 阅读(1326) 评论(0) 推荐(0) 编辑

2012年11月5日

MCMC sampling 【转】

摘要: 通常,我们会遇到很多问题无法用分析的方法来求得精确解,例如由于式子特别,真的解不出来;一般遇到这种情况,人们经常会采用一些方法去得到近似解(越逼近精确解越好,当然如果一个近似算法与精确解的接近程度能够通过一个式子来衡量或者有上下界,那么这种近似算法比较好,因为人们可以知道接近程度,换个说法,一般一个近似算法被提出后,人们通常都会去考察或寻求刻划近似程度的式子)。本文要谈的随机模拟就是一类近似求解的方法,这种方法非常的牛逼哦,它的诞生虽然最早可以追溯到18xx年法国数学家蒲松的投针问题(用模拟的方法来求解\pi的问题),但是真正的大规模应用还是被用来解决二战时候美国佬生产原子弹所碰到的各种难以解 阅读全文

posted @ 2012-11-05 12:24 EasonCheng 阅读(2090) 评论(0) 推荐(0) 编辑

2012年10月24日

隐马尔科夫模型(HMM)【转】

摘要: Alice 和Bob是好朋友,但是他们离得比较远,每天都是通过电话了解对方那天作了什么。Bob仅仅对三种活动感兴趣:公园散步,购物以及清理房间。他选择做什么事情只凭当天天气。Alice对于Bob所住的地方的天气情况并不了解,但是知道总的趋势。在Bob告诉Alice每天所做的事情基础上,Alice想要猜测Bob所在地的天气情况。Alice认为天气的运行就像一个马尔可夫链。其有两个状态 “雨”和”晴”,但是无法直接观察它们,也就是说,它们对于Alice是隐藏的。每天,Bob有一定的概率进行下列活动:“散步”,“购物”, 或 “清理”。 因为Bob会告诉Alice他的活动,所以这些活动就是Alice 阅读全文

posted @ 2012-10-24 16:21 EasonCheng 阅读(475) 评论(0) 推荐(0) 编辑

2012年10月16日

R 内存管理问题

摘要: 写R程序的人,相信都会遇到过“cannot allocate vector of size...” 或者 “无法分配大小为…的矢量” 这样的错误。原因很简单,基本都是产生一个大矩阵等对象时发生的,最干脆的解决办法有两种,第一种是加大内存换64位系统,第二种是改变算法避免如此大的对象。第一种办法,是最好的办法,不过大对象的需求是没有止尽的,终究不是长久之道。第二种办法是最好的思路,无论多么大的对象都是可以弄小的,无非就是分而治之、时间换空间等,对算法的研究也是没有止尽的。 升级硬件和改进算法是解决内存问题的永恒的办法,超出了本文想要表述的范围。在这里,只是简单谈谈R语言的内存管理和垃圾清理... 阅读全文

posted @ 2012-10-16 20:18 EasonCheng 阅读(1332) 评论(0) 推荐(0) 编辑

R 处理大规模数据

摘要: 说起R的弱点,肯定会有一条“处理大规模数据不行”。而且一般都是在和SAS之类的大系统比较时被提起的。这样看来也确实没错,如果数据量太大,哪怕只有一两G的时候,光读成数据框恐怕就要把内存撑爆。如果R只是一个软件系统,这显然是很大的软肋。但问题是R不是一个像SAS之类的软件系统,而是语言或者环境。 作为语言,不存在不能处理大量数据的可能性,拿C来说,直接创建一个2G的数组肯定也挂,但是不会有人这样做,因为内存是可以被灵活操控的,无论什么样的数据分析和处理,只要算法数据结构设计合理,至少也能时间换空间,其实大型的统计软件也是这样做的,只是其中的各种方法被封装好了,看上去同样的模型SAS能算出来而.. 阅读全文

posted @ 2012-10-16 20:01 EasonCheng 阅读(678) 评论(0) 推荐(0) 编辑

R 安装 Bioconductor 的网络连接问题

摘要: 偶遇此问题,耗时2小时,解决之问题如下:Error and Warning: unable to connect to the proxy on port 8080.Take the package "ape" as an example:setInternet2(TURE) source("http://bioconductor.org/biocLite.R")biocLite("ape")library(ape)Bingo!Note that https:// URLs are only supported if --intern 阅读全文

posted @ 2012-10-16 16:57 EasonCheng 阅读(546) 评论(0) 推荐(0) 编辑

导航