Can someone give me some scenario where it's better to use clustering (unsupervised classification) than supervised classification such as SVM ? I mean in a case where you know the data labels/classes.
It largely depends on what the goals of your analysis are. Labels only become labels when you decide that they are a feature of interest! In one context a dataset may be labelled but in another it could easily be considered unlabelled.
Consider a dataset containing information about apples with the features being height, width and price. Now a shopkeeper might be interested in a supervised regression approach treating price as the label (and width and height as predictors), in order to predict how much he should sell new apples for. On the other hand, an apple farmer might be interested in applying a clustering technique to the full dataset with all three variables (with no particular label variable) in order to figure out how many varieties (Granny Smith etc.) are contained in the dataset. Clearly, the latter is a case where clustering would be more appropriate.