I have to cluster a movie dataset of 10000 movies. A movie has attributes like Genres, Actors, Directors, Year. Earlier I thought that we can use a simple clustering algorithm like k-medoids and the distance can be pre-computed between two movies by subtracting genres & actors.

d(movie1, movie2) = 0

d(movie1, movie2) -= number of common genres
d(movie1, movie2) -= number of common actors
d(movie1, movie2) -= 1 (if they have a common director)
d(movie1, movie2) -= 1 (if they belong to same decade)

Is this approach correct ? Is k-medoids fast enough to cluster this dataset (I doubt it isn't) ? If it isn't fast enough any better clustering algorithm and strategy to cluster this dataset ?


1 Answer 1


Distances have to be non-negative. Your distance metric leads to a negative distance value, which is not allowed. A better distance metric would be "the number of genres where they don't agree, plus the number of actors where they don't agree".

As far as how well this will work, the only way to find out is to try it and see.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.