高斯混合模型
- 高斯混合模型就是用高斯概率密度函数(正态分布曲线)精确地量化事物,它是一个将事物分解为若干的基于高斯概率密度函数(正态分布曲线)形成的模型。
- 在统计学中,混合模型是用于表示总体群体中亚群体的存在的概率模型
- 高斯混合模型(Gaussian Mixture Model)为单一高斯概率密度函数的延伸,用多个高斯概率密度函数(正态分布曲线)精确地量化变量分布,是将变量分布分解为若干基于高斯概率密度函数(正态分布曲线)分布的统计模型。
- 应用:聚类:样本受到哪个高斯分布的作用大,就认为样本属于哪个高斯分布
比较KMeans
- Kmeans是简单的,因为它是基于假设一个样本仅以1或0的概率属于某一簇,这两者之间的取值并没有考虑,他无法考虑中间的取值,即一个点仅以某个概率属于某个类别是不能计算的。
- 高斯混合模型不是简单的考虑欧式距离的问题,它是使用高斯概率密度函数(正态分布曲线)精确地量化事物,它是一个将事物分解为若干的基于高斯概率密度函数(正态分布曲线)形成的模型。 高斯模型就是用高斯概率密度函数(正态分布曲线)精确地量化事物
数据如下
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117Sex Height(cm) Weight(kg) 0 156 50 0 160 60 0 162 54 0 162 55 0 160.5 56 0 160 53 0 158 55 0 164 60 0 165 50 0 166 55 0 158 47.5 0 161 49 0 169 55 0 161 46 0 160 45 0 167 44 0 155 49 0 154 57 0 172 52 0 155 56 0 157 55 0 165 65 0 156 52 0 155 50 0 156 56 0 160 55 0 158 55 0 162 70 0 162 65 0 155 57 0 163 70 0 160 60 0 162 55 0 165 65 0 159 60 0 147 47 0 163 53 0 157 54 0 160 55 0 162 48 0 158 60 0 155 48 0 165 60 0 161 58 0 159 45 0 163 50 0 158 49 0 155 50 0 162 55 0 157 63 0 159 49 0 152 47 0 156 51 0 165 49 0 154 47 0 156 52 0 162 48 1 162 60 1 164 62 1 168 86 1 187 75 1 167 75 1 174 64 1 175 62 1 170 65 1 176 73 1 169 58 1 178 54 1 165 66 1 183 68 1 171 61 1 179 64 1 172 60 1 173 59 1 172 58 1 175 62 1 160 60 1 160 58 1 160 60 1 175 75 1 163 60 1 181 77 1 172 80 1 175 73 1 175 60 1 167 65 1 172 60 1 169 75 1 172 65 1 175 72 1 172 60 1 170 65 1 158 59 1 167 63 1 164 61 1 176 65 1 182 95 1 173 75 1 176 67 1 163 58 1 166 67 1 162 59 1 169 56 1 163 59 1 163 56 1 176 62 1 169 57 1 173 61 1 163 59 1 167 57 1 176 63 1 168 61 1 167 60 1 170 69
代码实现如下
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23import numpy as np import pandas as pd from sklearn.mixture import GaussianMixture ## 数据加载 data = pd.read_csv('datas/HeightWeight.csv') data_x = data[data.columns[1:]] data_y = data[data.columns[0]] data.head() ## 模型创建及训练 gmm = GaussianMixture(n_components=2, covariance_type='full', random_state=28) gmm.fit(data_x) ## 模型相关参数输出 # print ('均值 = n', gmm.means_) # print ('方差 = n', gmm.covariances_) # 获取预测值 y_hat = gmm.predict(data_x) print(y_hat) print(data_y.values.T)
最后
以上就是寂寞纸鹤最近收集整理的关于机器学习之高斯混合模型(一)GMM实战——根据身高体重进行人群聚类的全部内容,更多相关机器学习之高斯混合模型(一)GMM实战——根据身高体重进行人群聚类内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复