This is a totally made-up dataset, but this is the general idea (and yes, it's imperfect but that's not quite the point exactly).

enter image description here

I have students and teachers, both entities have features. I have labels, 0 or 1 if it's a good match.

I'd like to train an algorithm to find the best student / teacher match. I'm thinking of a gradient boosting machine regressor of some type.

I'm not sure a GBM would work, for this reason in particular: assume there's a new student and it's time to make an inference. Since the input would require features of both a student and a teacher, it looks like the new student would need to be provided to the trained model 5 times -- each time, with the student's features concatenated to one of the 5 existing teachers' features.

Clearly this is clumsy and wouldn't scale well. This is because I'm trying to make a matching system out of a structure that can't support it.

Does anyone know any way I might be able to make this work with a GBM? Or, is there any other idea / method that might work better?

Why not some kind of recommendation engine? My training set doesn't have any concurrency between teachers; no overlap, and not enough data. So the matrix would be too sparse.

Any ideas greatly appreciated.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.