混合模型,潜变量和EM算法(mixture model,latent variable and EM algorithm)(2)
#以混合模型为主题的系列笔记
3.高斯混合模型:潜变量的结构
#以高斯混合模型为例,探讨混合模型的结构
下面来看一个生成高斯混合分布的例子:
由两个二元正态分布生成一个高斯混合分布,成分的概率为(0.6,0.4)
先决定潜变量值,再取对应成分的抽样作为观测,用颜色表示成分
library(MASS)
gaussmix <- function(n,m1,m2,s1,s2,alpha) {
I <- runif(n)<alpha
n1<-sum(I==TRUE)
r1<-mvrnorm(n1,m1,s1)
r2<-mvrnorm(n-n1,m2,s2)
r3<-cbind(x=r1,f=rep(1,n1))
r4<-cbind(x=r2,f=rep(-1,n-n1))
rbind(r3,r4)
}
m1<-c(-1,-1)
m2<-c(1,1)
s1<-matrix(c(1,.8,.8,1),2,2)
s2<-matrix(c(1,-0.8,-0.8,1),2,2)
set.seed(1001)
s <- gaussmix(500,m1,m2,s1,s2,0.6)
library(ggplot2)
s<-data.frame(s)
p<-ggplot(s,aes(x=s[,1],,y=s[,2],colour=factor(s[,3])))
p+geom_point(size=3)+
theme(legend.position='none')
#3-31加一张3D密度
参:
[1]PRML(第9章)
http://book.douban.com/subject/2061116/
3.高斯混合模型:潜变量的结构
#以高斯混合模型为例,探讨混合模型的结构
下面来看一个生成高斯混合分布的例子:
由两个二元正态分布生成一个高斯混合分布,成分的概率为(0.6,0.4)
先决定潜变量值,再取对应成分的抽样作为观测,用颜色表示成分
library(MASS)
gaussmix <- function(n,m1,m2,s1,s2,alpha) {
I <- runif(n)<alpha
n1<-sum(I==TRUE)
r1<-mvrnorm(n1,m1,s1)
r2<-mvrnorm(n-n1,m2,s2)
r3<-cbind(x=r1,f=rep(1,n1))
r4<-cbind(x=r2,f=rep(-1,n-n1))
rbind(r3,r4)
}
m1<-c(-1,-1)
m2<-c(1,1)
s1<-matrix(c(1,.8,.8,1),2,2)
s2<-matrix(c(1,-0.8,-0.8,1),2,2)
set.seed(1001)
s <- gaussmix(500,m1,m2,s1,s2,0.6)
library(ggplot2)
s<-data.frame(s)
p<-ggplot(s,aes(x=s[,1],,y=s[,2],colour=factor(s[,3])))
p+geom_point(size=3)+
theme(legend.position='none')
#3-31加一张3D密度
参:
[1]PRML(第9章)
http://book.douban.com/subject/2061116/
你好,想请教个问题,如果是结构混合的模型,指的是Mixture model还是Mixed model,两者有什么区别?高斯混合模型属于结构混合模型吗,还是指的数据混合模型?先谢谢了~~
> 我来回应