K means clustering in ECG Signal

1 view (last 30 days)
lina
lina on 21 Apr 2012
Hi Everyone,
Is there anyone knows how to perform the accurate K-Means Clustering in the ECG Signal, I have tried in many different K, but look bad.
Thanks in advance, Lina

Answers (3)

Junaid
Junaid on 21 Apr 2012
Vlfeat is one the best opensource library for many computer vision and machine learning algorithms. It has quite few clustering algorithms. I hope it will help you. VLFEAT
  2 Comments
Junaid
Junaid on 21 Apr 2012
Ooops. You interested to know what should be accurate value of K ?
lina
lina on 22 Apr 2012
Hi Junaid, all what I want to do is how to define the optimum K in the ECG signal. Since ECG signal has many various values so a quite difficult to define the good K.

Sign in to comment.


Image Analyst
Image Analyst on 22 Apr 2012
I don't know how that would work. An ecg signal is a waveform of continuous amplitudes. Exactly why would you want to cluster it and what would the clusters mean? Why do you even think that there are clusters?
  6 Comments
lina
lina on 22 Apr 2012
Savitsky-Golay filtering and Wlash-Hadamard I have a quite familiar with these two algorithms.
My background in Biomedical Imaging, the final purpose using K-Means is to implement in the 2D and 3D (image).
But I also want to try to implement it in the some 1D signal, since before I have success to implement it in the some 1D signal such as Square and Sinus signal without distortion. But the biggest problem here, again it's very difficult to define the good K in noisy ECG signal. It's very important, the bad K make not error correction I get in the results but more obviously distorted. Could you give me any idea, the better way to done with clustering of 1D noisy ECG ??
Image Analyst
Image Analyst on 22 Apr 2012
You've still not given me a good idea of what the clusters would mean. Let's say you have 4 clusters, so you're going to take a continuous voltage waveform and reduce it from infinite voltages to just 4 voltages. What is the meaning of cluster #1? I still don't get it.
Have you searched the File Exchange for ecg? My expertise is not in ecg or 1D signal analysis.

Sign in to comment.


Walter Roberson
Walter Roberson on 22 Apr 2012
There is no general algorithm to determine the "best" number of clusters for k-mean clustering.
The "best" number depends upon having an extra function to decide how "good" a particular clustering is, and the assumptions in any one such function will never match all circumstances. Recall that you can get a perfect fit by using the same number of clusters as you have samples, so preferring any number of clusters smaller than that is based upon some kind of trade-off, some kind of per-cluster "cost", and that "cost" is going to differ from situation to situation.
  3 Comments
Walter Roberson
Walter Roberson on 22 Apr 2012
If you had a number of different noisy versions of the _same_ ecg signal, I guess you could potentially cluster piece-wise to arrive at waypoint approximations of the original signal. But if you did have that, it would seem to make more sense to average the noisy version ?
Image Analyst
Image Analyst on 22 Apr 2012
I still don't get it. As long as the waveforms were aligned with respect to time you could just average them, like you said. With clusters you'd have just one cluster for one time point and you'd take the centroid, which is just the mean again. I don't know what else clusters could possibly represent. You can't do clusters across time or else all you'd get are clusters like "high voltages," "mid-level voltages," and "low voltages," or something like that, which is pretty useless, or at least a complicated way of arriving at that (as compared to thresholding).
I'm beginning to think she just heard about some cool algorithm called "k-means" and wanted to apply it somehow to ecg signals, regardless of whether it was applicable or appropriate or not.

Sign in to comment.

Categories

Find more on ECG / EKG in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!