Kind time of the day, dear inhabitants of the forum. I want to ask whether anyone can help me calculate the clustering of kmeans on a GPU it is not included in the standard function gpuArray but it can be calculated as a user-defined function But how to do that? I'm new to matlab and can not figure out how to implement it.

 Réponse acceptée

Joss Knight
Joss Knight le 11 Sep 2017
Modifié(e) : Joss Knight le 11 Sep 2017

3 votes

gpuArray support for kmeans was added to MATLAB in R2016a
>> help gpuArray/kmeans
kmeans K-means clustering for GPU data
IDX = kmeans(X, K)
[IDX, C] = kmeans(X, K)
[IDX, C, SUMD] = kmeans(X, K)
[IDX, C, SUMD, D] = kmeans(X, K)
[ ... ] = kmeans(..., 'PARAM1',val1, 'PARAM2',val2, ...)
Example:
N = 1e6;
X = gpuArray([randn(N,2)+ones(N,2); randn(N,2)-ones(N,2)]);
[cidx, ctrs] = kmeans(X, 2);
See also kmeans, gpuArray.

Plus de réponses (2)

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by