I'm looking for some tips in the right direction as to what to look into for this recommender system:
We have a predefined set of objects, each with a few keywords assigned to them. We can call the total universe of these keywords as set K1.
Given user input into this system of a few english keywords (these may or may not be in set K1), I would like to output the top N closest matching objects whose keywords most closely match the input keywords. I would also like to get which keywords from K1 provided the most signal for this output value.
I'm just looking for someone to point me in the right direction as to what to look into for building a system like this.