Som For Detection Matlab
2
4
Entering edit mode
14.0 years ago
Tim ▴ 110

I would like to know how I can use SOM for disease detection. Given a lung cancer dataset, how can SOM be applied for detection, there are certain terminologies like, sensitivity, specificity and accuracy percentages....are there ways to calculate all these with the SOM algorithm? I would appreciate answers from anyone who can shed more light on this

disease matlab • 5.6k views
ADD COMMENT
1
Entering edit mode

Hi Tim, sorry to say I do not want to put this into an answer because it is not really one. Most of the terms you are mentioning do not apply to self-organizing maps. Also youur question does not make much sense: you want to detect cancer in a cancer dataset ??? nothing to do! You should study the literature about classification, SOMs and study the nature of your data better. then you can come up with a better question.

ADD REPLY
0
Entering edit mode

I agree with Michael, But this is probably first question on Machine learning in BioStar. I am sharing some of my thoughts in the answer section. But you definitely get more help if you can provide us more details as suggested by Michael.

ADD REPLY
0
Entering edit mode

I agree with Michael. But this is probably first question on Machine learning in BioStar. I am sharing some of my thoughts in the answer section. You can definitely get more suggestions if you can provide us more details regarding your problem.

ADD REPLY
0
Entering edit mode

@Michael, why would you not be able to define measures for sensitivity, specificity or accuracy with SOM??

ADD REPLY
0
Entering edit mode

Because SOM and training algorithms as defined by Kohonen are unsupervised learning algorithms as you also write. Unsupervised learning does not include class-labels. That means that these measures do not apply directly. A SOM can be turned into a classifier or predictor by partitioning the output nodes. I would suspect that such a classifier and also the supervised SOM would be outperformed by a pure classifier (e.g. SVM) with real data. A comparision would be interesting.

ADD REPLY
7
Entering edit mode
14.0 years ago

See Self-Organizing Map (Wikipedia) for a brief description for SOM.

SOM like other members in the class of learning algorithms, requires a training and mapping (testing)data set. You can take 3/4 of your dataset for training and 1/3 for mapping. As you are now dealing with known datasets, you can use several measures like sensitivity, specificity and accuracy for the prediction assessment. Means, you can check how good is your prediction model using FP, FN, TP & TN from the results of your testing and mapping results. A PubMed search can get your several studies that applied SOM (or other learning algorithms) applied to problems in life science data with these parameters.

See Sensitivity and specificity (Wikipedia) for more detailed description on Sensitivity and Specificity

Sensitivity Specificity Accuracy

ADD COMMENT
0
Entering edit mode

Just remember, since SOM is classification algorithm, you should have know classes (defined by a different method) in your testing dataset to calculate those terms. They can be used to find optimal method and parameters for classification.

ADD REPLY
0
Entering edit mode

@Khader: you put sensitivity formula twice.

ADD REPLY
0
Entering edit mode

Thanks Yuri, I changed it.

ADD REPLY
0
Entering edit mode

Thank you so much Khader....but i would like to ask......how do I use the SOM toolbox to achieve my goal....I just created a GUI that implements SOM algorithm (MATLAB)..but it doesnt have the sensitivity and accuracy.....any ideas on how I can implement this on matlab????

ADD REPLY
0
Entering edit mode

No experience with MATLAB. Have you tried Weka for SOM ?

ADD REPLY
0
Entering edit mode

nah i've not....i'm required to use matlab....cannot find any implementation of SOM with matlab in relation to specificity, sensitivity and accuracy....the SOM toolbox in Matlab does not have that implementaton!!!

ADD REPLY
4
Entering edit mode
14.0 years ago

Khader gave an excellent answer on the use of SOMs for classification. I would like to complement his answer by pointing the reader to work done in the group where I did my PhD at the Radboud University in Nijmegen/NL, where a supervised self-organizing map was developed. The traditional Kohonen map is an unsupervised training method, though LVQ and other approaches have been used to make them more supervised. However, as far we we knew at the time, no true supervised learning of the class information was done then.

The R package kohonen implements this supervised SOMs as XY-Fusion maps. The training of the maps is very traditional, but the difference lies in the fact that the winning unit is determined by likeliness in the classification variable too (Y, or dependent variable). BTW, the method is not limited to one Y variable, and neither to a classification variable. I used various combinations in crystal structure classification problems in this paper:

http://pubs.acs.org/doi/abs/10.1021/cg060872y

ADD COMMENT

Login before adding your answer.

Traffic: 1999 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6