I am looking for help and suggestions on how to approach a classification and feature selection problem making use of a single define class and several unknown ones. Using an example, for those than know the iris dataset, imagine if we knew that there was at least one species, versicolor, and now we wanted to find out which other species could the dataset contain and how they would differ from versicolor. My data is a little more complicated than this but this is a fairly good simplification.
Clustering and feature reduction alternatives are also welcome. Solutions or pointers to
R libraries would be perfect.
The problem itself:
I have a few separate experimental datasets with about 30 measurement variables, all numeric, and hundreds of observations (let's call them subjects). About 20 of those observations belong to a control class. The goals are:
- identify which subjects are distinct from the control class;
- determine which variables (features) are important for this distinction, or make these observation different;
The complications are:
- in any given given experiment there could more than one non-control class
- I expect only a small subset of the subjects to be different from the control class and
- what makes separates them from the control may or may not be the same.
Notes on the data
- Measurement for non-control classes were taken in triplicate
- Some measurement variables are highly correlated.
What I have done so far and first approach:
- PCA for feature reduction and cluster visualization
- k-means clustering to identify classes.
This has been sub-optimal because it will tend to result in too many clusters because too few subjects are clearly different from the controls - outliers so to speak.