I have made clusters for my data set (1.5 million samples and 800 features) using k-mean. I am aware of internal indices for evaluating clusters. However, I was thinking about training a supervised classification model (e.g. random forest classifier) in which cluster numbers are dependent variable and all other features are independent variable. Is using the accuracy of this model a good evaluation of the kmean cluster and why?
If you were to have fully formed trees in your random forest, then they should be able to recreate the rules you ended up clustering by, and accuracy would be 100%. Now, if you are cutting off the depth of the trees in the random forest (which is pretty standard, let's say you set max_depth = 8), then you will have an accuracy that may be less than 100%. This means that there are salient features that you are not consistently getting information from because they are not part of the 8 levels that one or more decision trees are using to classify.
My question would then be: why do you want to do this? Once you have the centroids for each cluster using k-means, it is pretty quick to be able to determine which cluster a new record would belong to. I'm not sure I understand why you would want to use a random forest in this fashion.
It is not an indicator of quality if a clustering can be easily predicted by a classifier such as random forest.
In particular with k-means I would argue that the opposite is true.
You have 800 features. With so many festures. You usually have a scaling problem in k-means. In the worst case. The entire result only depends on a single feature. In this degenerate case, a single feature is enough, and a classifier will achieve 100% accuracy. So the conclusion "good classifier, hence good clustering" is clearly wrong.