function [X, z, mu] = kmeansRnd(d, k, n)
% Generate samples from a Gaussian mixture distribution with common variances (kmeans model).
% Input:
% d: dimension of data
% k: number of components
% n: number of data
% Output:
% X: d x n data matrix
% z: 1 x n response variable
% mu: d x k centers of clusters
% Written by Mo Chen (sth4nth@gmail.com).
alpha = 1;
beta = nthroot(k,d); % in volume x^d there is k points: x^d=k
X = randn(d,n);
w = dirichletRnd(alpha,ones(1,k)/k);
z = discreteRnd(w,n);
E = full(sparse(z,1:n,1,k,n,n));
mu = randn(d,k)*beta;
X = X+mu*E;
function x = dirichletRnd(a, m)
% Generate samples from a Dirichlet distribution.
% Input:
% a: k dimensional vector
% m: k dimensional mean vector
% Outpet:
% x: generated sample x~Dir(a,m)
% Written by Mo Chen (sth4nth@gmail.com).
if nargin == 2
a = a*m;
end
x = gamrnd(a,1);
x = x/sum(x);
function x = discreteRnd(p, n)
% Generate samples from a discrete distribution (multinomial).
% Input:
% p: k dimensional probability vector
% n: number of samples
% Ouput:
% x: k x n generated samples x~Mul(p)
% Written by Mo Chen (sth4nth@gmail.com).
if nargin == 1
n = 1;
end
r = rand(1,n);
p = cumsum(p(:));
[~,x] = histc(r,[0;p/p(end)]);
adaboost.zip_Adaboost分类_分类器_多个弱分类器_组合分类器_组合成强分类器
版权申诉
5星 · 超过95%的资源 57 浏览量
2022-07-15
21:33:52
上传
评论
收藏 3KB ZIP 举报
小波思基
- 粉丝: 70
- 资源: 1万+
最新资源
- 基于python编写的Keras深度学习框架开发,利用卷积神经网络CNN,快速识别图片并进行分类
- 最全空间计量实证方法(空间杜宾模型和检验以及结果解释文档).txt
- 5uonly.apk
- 蓝桥杯Python组的历年真题
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- 前端开发技术实验报告:内含4四实验&实验报告
- Highlight Plus v20.0.1
- 林周瑜-论文.docx
- 基于MIC+NE555光敏电阻的声光控电路Multisim仿真原理图
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
评论1