0

I am building a recommendation system for dishes. Consider a user eating french fries and rates it a 5. Then I want to give a good rating to all the ingredients that the dish is made of. In the case of french fires the linked words should be "fried" "potato" "junk food" "salty" and so on. From the word Tsatsiki I want to extract "Cucumbers", "Yoghurt" "Garlic". From Yoghurt I want to extract Milk product, From Cucumbers vegetable and so on.

What is this problem called in Natural Language Processing and is there a way to address it?

I have no data at all, and I am thinking of building web crawler that analyzes the web for the dish. I would like it to be as little Ad-Hoc as possible and not necessarily in English. Is there a way, maybe in within deep learning to do the thing? I would not only a dish to be linked to the ingredients but also a category: junk food, vegetarian, Italian food and so on.

4

2 回答 2

2

这种类型的问题称为本体工程或本体构建。有关大型本体及其结构的示例,您可以查看类似YAGO的内容。似乎您要为食品构建精品本体,然后覆盖评级系统。我不知道您正在寻找的任何形式的本体,但是您应该看看相关的东西,例如,这个基于 OWL 的食物本体和这个食谱本体

于 2013-01-18T14:56:37.897 回答
1

你有这样的食谱吗:

Ingredients:
*Cucumbers
*Garlic
*Yoghurt

或者像这样:

Grate a cucumber or chop it. Add garlic and yoghurt.

如果是前者,则您的特征已经被提取。下一步将转换为向量推荐其他食谱。最简单的方法是对食谱进行(无监督)聚类。

如果是后者,我怀疑你可以用一个简单的经验法则逃脱。首先,使用词性标注器提取食谱中的所有名词。这将提取所有成分和更多成分(例如厨房用具、餐具等)。在诸如此类的食品配料数据库中查找名词。

于 2013-01-18T10:30:10.223 回答