Isn't it just learning to map specific words, from the "knife world", to the correct class? If so, a simple dictionary would fit.
What I think is a better way to validate is to split train/validation by words used presented in NER classes (like, it should be able to find new brands never seen before). It is a interesting problem.