When I initially saw this post, I assumed the k-mediod calculation could be trained against existing categorized students, making it a supervised model. If you have a data set of previously categorized students, I think this is still an option if you extend the current API to access the algorithm you want to use. The question is, what would it do with the results? Perhaps it could add users to a specific group based on classification, or store the classification in a user profile variable.
There are still some unanswered questions about how unsupervised models would be supported, as David points out. With supervised learning, we make predictions at specified time intervals about future outcomes to users with a given permission in the context. How often would an unsupervised model run? I could see this process being triggered by some other event, such as the closing date of the survey you are using for data collection.
As David says, please comment at MDL-59044 if anyone has any further suggestions about unsupervised models.