I have a dataset of parts/pieces of a whole, which I'll refer to as the end-item. The goal will be to take a list of these pieces and their attributes and then provide essentially the predict_proba, where we get the end-items that each piece could part of. There are hundreds of thousands of end-items, and therefore, an even higher number of parts/pieces. Example: we have nuts and bolts that would be part of item A, and are also on item D.
I have tried KNN, linear SVM, RBF SVM, decision trees, random forest, nns, adaboost, naive bayes, and QDA. None of these are working quite well.
Any modeling technique recommendations for this type of problem?