Text topic classification in tensorflow
To me it looks like not tensorflow task at all. At least not at the first place.


"Normalize headlines" task (lemmatization). Spacy does nice job here and it has great documentation. Here is an example, have a look at the "lemma" property.
Use the food2vec as a database of topic names.
Parse sentence via spacy and find the phrase in the food2vec. Parsing should be done not word-by-word, but by phrase: first look up 3-words phrase in the dictionary; if not found - 2-word dictionary; than 1 word.


This should be enough to solve your task.