1013 lines
73 KiB
Plaintext
1013 lines
73 KiB
Plaintext
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"# 1M_recipes dataset word2vec experiments"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 1,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"import numpy as np\n",
|
|
"import json\n",
|
|
"\n",
|
|
"import nltk\n",
|
|
"from nltk.stem import PorterStemmer\n",
|
|
"from nltk.stem import LancasterStemmer\n",
|
|
"from nltk.corpus import stopwords as nltk_stopwords\n",
|
|
"\n",
|
|
"from pprint import pprint\n",
|
|
"\n",
|
|
"from gensim.test.utils import common_texts, get_tmpfile\n",
|
|
"from gensim.models import Word2Vec\n",
|
|
"\n",
|
|
"from json_buffered_reader import JSON_buffered_reader as JSON_br\n",
|
|
"\n",
|
|
"import settings"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 2,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"from ipypb import track"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"* reading firs n recipes from json stream"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 3,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"n = 100000"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 4,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"buffered_reader = JSON_br(settings.one_million_recipes_file)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 5,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"instructions = []"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"----"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 6,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"stopwords = set(nltk_stopwords.words('english'))\n",
|
|
"sentence_symbols = set(('.', ';', '!', '?', ',')) \n",
|
|
"porter = PorterStemmer()\n",
|
|
"model = None\n",
|
|
"\n",
|
|
"stemmed_stopwords = set([porter.stem(word) for word in stopwords])\n",
|
|
"\n",
|
|
"def recipe2instructions(stream_item):\n",
|
|
" return [t['text'] for t in stream_item['instructions']]\n",
|
|
"\n",
|
|
"def stemmed_recipe_instruction(json_item, stemmer = porter):\n",
|
|
" item_instructions = recipe2instructions(json_item)\n",
|
|
" stemmed_list = []\n",
|
|
" for instruction in item_instructions:\n",
|
|
" stemmed_list.append([stemmer.stem(i).lower() for i in nltk.word_tokenize(instruction)])\n",
|
|
" \n",
|
|
" result = []\n",
|
|
" for stemmed in stemmed_list:\n",
|
|
" stemmed_without_stopwords = []\n",
|
|
" for word in stemmed:\n",
|
|
" if (word not in stopwords) and (word not in sentence_symbols):\n",
|
|
" stemmed_without_stopwords.append(word)\n",
|
|
" result.append(stemmed_without_stopwords)\n",
|
|
" \n",
|
|
" return result\n"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"* example:"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 7,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"#item = buffered_reader.__next__()"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 8,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"#stemmed_recipe_instruction(item)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"* reading up to n recipes:"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 9,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/html": [
|
|
"<div><span class=\"Text-label\" style=\"display:inline-block; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; min-width:0; max-width:15ex; vertical-align:middle; text-align:right\"></span>\n",
|
|
"<progress style=\"width:60ex\" max=\"100000\" value=\"100000\" class=\"Progress-main\"/></progress>\n",
|
|
"<span class=\"Progress-label\"><strong>100%</strong></span>\n",
|
|
"<span class=\"Iteration-label\">100000/100000</span>\n",
|
|
"<span class=\"Time-label\">[06:06<00:00, 0.00s/it]</span></div>"
|
|
],
|
|
"text/plain": [
|
|
"\u001b[A\u001b[2K\r",
|
|
" [████████████████████████████████████████████████████████████] 100000/100000 [06:06<00:00, 0.00s/it]"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"\n",
|
|
"for i in track(range(n)):\n",
|
|
" json_recipe = buffered_reader.__next__()\n",
|
|
" instructions += stemmed_recipe_instruction(json_recipe)\n",
|
|
" #print(i)\n"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"* train word2vec on that instructions"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 10,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"model = Word2Vec(instructions, size=512, window=1, min_count=3, workers=4)\n",
|
|
"def word_similarity(word_a:str, word_b:str, model=model, stemmer=porter):\n",
|
|
" return model.wv.similarity(stemmer.stem(word_a), stemmer.stem(word_b))\n",
|
|
"\n",
|
|
"def word_exists(word:str, model=model, stemmer=porter):\n",
|
|
" return stemmer.stem(word) in model.wv\n"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 11,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"0.42250293"
|
|
]
|
|
},
|
|
"execution_count": 11,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"word_similarity(\"dice\", \"onions\")"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 12,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"'salad'"
|
|
]
|
|
},
|
|
"execution_count": 12,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"model.wv.most_similar_to_given(\"wash\", [\"salad\",\"potato\", \"oil\", \"tomato\"])"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"* check for a list of cooking verbs and ingredients whether they're represented by our model"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 13,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"from cooking_vocab import cooking_verbs\n",
|
|
"from cooking_ingredients import ingredients"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 14,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"model_actions = []\n",
|
|
"model_ingredients = []"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 15,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"for action in cooking_verbs:\n",
|
|
" if word_exists(action):\n",
|
|
" model_actions.append(action)\n",
|
|
"\n",
|
|
"for ingredient in ingredients:\n",
|
|
" if word_exists(ingredient):\n",
|
|
" model_ingredients.append(ingredient)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 16,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"'found 108 of 111 valid actions and 160 of 648 valid ingredients'\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"pprint(f\"found {len(model_actions)} of {len(cooking_verbs)} valid actions and {len(model_ingredients)} of {len(ingredients)} valid ingredients\")"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 17,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"stemmed_ingredients = [porter.stem(ing) for ing in model_ingredients]\n",
|
|
"stemmed_actions = [porter.stem(act) for act in model_actions]"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## cross-category-similarites\n",
|
|
"* now get the most likely ingredients for every action:"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"### Cooking Action to Ingredient"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 18,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"add --> ['scallion', 'celeri', 'parsley', 'onion', 'thyme', 'garlic', 'chive', 'oregano', 'salt', 'cilantro']\n",
|
|
"adjust --> ['cayenn', 'salt', 'sriracha', 'pepper', 'nutmeg', 'oregano', 'marjoram', 'cumin', 'tumer', 'cornflour']\n",
|
|
"arrange --> ['scallion', 'lettuc', 'zucchini', 'avocado', 'cucumb', 'arugula', 'pineappl', 'onion', 'carrot', 'watercress']\n",
|
|
"bake --> ['cornmeal', 'cinnamon', 'pecan', 'flour', 'margarin', 'vanilla', 'butter', 'shorten', 'walnut', 'almond']\n",
|
|
"baste --> ['veget', 'chicken', 'pork', 'meat', 'juic', 'season', 'kimchi', 'beer', 'honey', 'mirin']\n",
|
|
"batter --> ['dough', 'flour', 'polenta', 'cornmeal', 'coconut', 'ice', 'pecan', 'grit', 'buttermilk', 'tortilla']\n",
|
|
"beat --> ['vanilla', 'buttermilk', 'shorten', 'cream', 'milk', 'sugar', 'molass', 'egg', 'margarin', 'mascarpon']\n",
|
|
"blend --> ['buttermilk', 'honey', 'molass', 'nutmeg', 'cream', 'vanilla', 'allspic', 'milk', 'chickpea', 'cayenn']\n",
|
|
"boil --> ['water', 'penn', 'dashi', 'cornflour', 'saffron', 'mirin', 'sake', 'spaghetti', 'pasta', 'quinoa']\n",
|
|
"braise --> ['kimchi', 'pork', 'mussel', 'shiitak', 'tomatillo', 'mushroom', 'beer', 'tomato', 'sauc', 'chicken']\n",
|
|
"break --> ['onion', 'avocado', 'scallion', 'pancetta', 'pineappl', 'shallot', 'prosciutto', 'chees', 'parsley', 'sausag']\n",
|
|
"bread --> ['bread', 'baguett', 'prosciutto', 'eggplant', 'tortilla', 'paneer', 'avocado', 'ham', 'banana', 'almond']\n",
|
|
"broil --> ['baguett', 'scallion', 'season', 'ham', 'shallot', 'shrimp', 'pork', 'prosciutto', 'sauc', 'garlic']\n",
|
|
"brown --> ['margarin', 'butter', 'molass', 'oil', 'salt', 'mirin', 'shorten', 'honey', 'onion', 'ketchup']\n",
|
|
"brush --> ['egg', 'season', 'butter', 'honey', 'bread', 'flour', 'lemon', 'scallion', 'oliv', 'margarin']\n",
|
|
"build --> ['guacamol', 'salsa', 'baguett', 'beansprout', 'tortilla', 'sauc', 'pesto', 'season', 'prosciutto', 'cream']\n",
|
|
"burn --> ['molass', 'honey', 'gingerroot', 'butter', 'ketchup', 'margarin', 'vinegar', 'mustard', 'sugar', 'oil']\n",
|
|
"bury --> ['beansprout', 'mayonais', 'cotija', 'pimento', 'pinenut', 'fettucin', 'turnip', 'kimchi', 'radish', 'daikon']\n",
|
|
"carve --> ['kimchi', 'pork', 'ham', 'season', 'baguett', 'beansprout', 'radish', 'crawfish', 'pimento', 'lettuc']\n",
|
|
"check --> ['beer', 'cumin', 'grit', 'quinoa', 'chicken', 'crawfish', 'meat', 'mussel', 'pepper', 'tumer']\n",
|
|
"chill --> ['ice', 'cream', 'ricotta', 'buttermilk', 'egg', 'tequila', 'cornflour', 'vanilla', 'strawberri', 'shorten']\n",
|
|
"chop --> ['scallion', 'watercress', 'celeri', 'parsley', 'cilantro', 'radish', 'thyme', 'carrot', 'chive', 'shallot']\n",
|
|
"clarify --> ['lard', 'ghee', 'peanut', 'margarin', 'shorten', 'oil', 'cream', 'honey', 'oliv', 'molass']\n",
|
|
"close --> ['baguett', 'prosciutto', 'guacamol', 'ham', 'crawfish', 'peppercorn', 'bread', 'beansprout', 'cream', 'ketchup']\n",
|
|
"cook --> ['scallion', 'onion', 'carrot', 'sausag', 'shallot', 'veget', 'mushroom', 'season', 'gingerroot', 'zucchini']\n",
|
|
"cool --> ['ice', 'cream', 'ghee', 'ricotta', 'strawberri', 'coconut', 'molass', 'juic', 'kale', 'banana']\n",
|
|
"correct --> ['tumer', 'sriracha', 'cayenn', 'salt', 'pesto', 'grit', 'guacamol', 'marjoram', 'paprika', 'cornflour']\n",
|
|
"cover --> ['carrot', 'cauliflow', 'cabbag', 'bean', 'asparagu', 'pasta', 'chicken', 'potato', 'spinach', 'allspic']\n",
|
|
"crack --> ['nutmeg', 'mussel', 'cayenn', 'yeast', 'allspic', 'cardamom', 'salt', 'clove', 'bread', 'crawfish']\n",
|
|
"crumple --> ['paneer', 'pinenut', 'prosciutto', 'dough', 'baguett', 'pancetta', 'fettucin', 'cotija', 'lettuc', 'shiitak']\n",
|
|
"curdle --> ['yoghurt', 'mayonais', 'buttermilk', 'molass', 'egg', 'grit', 'cornflour', 'mascarpon', 'milk', 'brandi']\n",
|
|
"cut --> ['avocado', 'lettuc', 'radish', 'scallion', 'celeri', 'baguett', 'onion', 'cucumb', 'pineappl', 'carrot']\n",
|
|
"debone --> ['crawfish', 'chicken', 'kimchi', 'pork', 'beansprout', 'season', 'ham', 'pimento', 'paneer', 'dashi']\n",
|
|
"dice --> ['scallion', 'celeri', 'turnip', 'radish', 'pimento', 'carrot', 'cucumb', 'avocado', 'onion', 'pea']\n",
|
|
"discard --> ['lemongrass', 'scallion', 'juic', 'allspic', 'celeri', 'rosemari', 'avocado', 'seed', 'thyme', 'clove']\n",
|
|
"drain --> ['chickpea', 'okra', 'penn', 'pea', 'kale', 'broccoli', 'linguin', 'shiitak', 'zucchini', 'caper']\n",
|
|
"dress --> ['pesto', 'salsa', 'arugula', 'watercress', 'cilantro', 'lettuc', 'guacamol', 'oliv', 'radish', 'mayonais']\n",
|
|
"fillet --> ['shrimp', 'eggplant', 'season', 'caper', 'chicken', 'tortilla', 'pork', 'pepper', 'paprika', 'rosemari']\n",
|
|
"flour --> ['flour', 'cornmeal', 'buttermilk', 'butter', 'shorten', 'sugar', 'cinnamon', 'cornflour', 'milk', 'nutmeg']\n",
|
|
"fold --> ['egg', 'ricotta', 'chees', 'scallion', 'banana', 'mascarpon', 'buttermilk', 'cream', 'pecan', 'avocado']\n",
|
|
"freeze --> ['dough', 'ice', 'strawberri', 'noodl', 'peach', 'mussel', 'banana', 'pasta', 'paneer', 'pineappl']\n",
|
|
"fry --> ['pancetta', 'oil', 'ghee', 'bacon', 'scallion', 'sausag', 'oliv', 'onion', 'shallot', 'chive']\n",
|
|
"garnish --> ['chive', 'mint', 'cilantro', 'scallion', 'parsley', 'basil', 'watercress', 'caper', 'lime', 'lettuc']\n",
|
|
"glaze --> ['sauc', 'honey', 'brandi', 'pecan', 'pineappl', 'juic', 'molass', 'peach', 'appl', 'mirin']\n",
|
|
"grate --> ['scallion', 'chive', 'cilantro', 'parsley', 'pimento', 'oliv', 'radish', 'ricotta', 'lemon', 'turnip']\n",
|
|
"grind --> ['coriand', 'allspic', 'tumer', 'cumin', 'cayenn', 'cardamom', 'salt', 'peppercorn', 'spice', 'marjoram']\n",
|
|
"grill --> ['ham', 'pork', 'shrimp', 'sauc', 'baguett', 'oliv', 'sausag', 'scallion', 'tortilla', 'cilantro']\n",
|
|
"gut --> ['crawfish', 'lemongrass', 'beansprout', 'daikon', 'seed', 'kimchi', 'cardamom', 'shiitak', 'tumer', 'paneer']\n",
|
|
"heat --> ['ghee', 'oil', 'oliv', 'shallot', 'veget', 'butter', 'lard', 'peanut', 'caper', 'pancetta']\n",
|
|
"knead --> ['dough', 'flour', 'yeast', 'cornmeal', 'bread', 'buttermilk', 'tortilla', 'ricotta', 'shorten', 'pasta']\n",
|
|
"lower --> ['ghee', 'oliv', 'leek', 'chicken', 'rosemari', 'crawfish', 'prosciutto', 'zucchini', 'pancetta', 'sausag']\n",
|
|
"macerate --> ['brandi', 'mint', 'tequila', 'beansprout', 'strawberri', 'peach', 'mango', 'juic', 'raisin', 'watercress']\n",
|
|
"marinate --> ['season', 'pork', 'lettuc', 'mirin', 'scallion', 'juic', 'avocado', 'chickpea', 'kimchi', 'cilantro']\n",
|
|
"mash --> ['turnip', 'chickpea', 'yoghurt', 'carrot', 'salsa', 'avocado', 'allspic', 'caper', 'cilantro', 'onion']\n",
|
|
"melt --> ['cream', 'margarin', 'peanut', 'butter', 'mascarpon', 'pecan', 'shorten', 'milk', 'sugar', 'ricotta']\n",
|
|
"mince --> ['gingerroot', 'scallion', 'parsley', 'celeri', 'cilantro', 'chive', 'shallot', 'thyme', 'garlic', 'onion']\n",
|
|
"mix --> ['buttermilk', 'molass', 'honey', 'cream', 'egg', 'allspic', 'milk', 'margarin', 'nutmeg', 'butter']\n",
|
|
"open --> ['mussel', 'crawfish', 'beansprout', 'baguett', 'tomatillo', 'clove', 'eggplant', 'okra', 'shrimp', 'guacamol']\n",
|
|
"parboil --> ['turnip', 'radish', 'carrot', 'daikon', 'pea', 'broccoli', 'cauliflow', 'kale', 'zucchini', 'shiitak']\n",
|
|
"peel --> ['turnip', 'carrot', 'zucchini', 'lemongrass', 'daikon', 'radish', 'beet', 'beansprout', 'ginger', 'celeri']\n",
|
|
"pickle --> ['cucumb', 'radish', 'pimento', 'caper', 'cilantro', 'kimchi', 'ketchup', 'scallion', 'chive', 'sriracha']\n",
|
|
"place --> ['scallion', 'onion', 'butter', 'celeri', 'parsley', 'oliv', 'lemon', 'egg', 'avocado', 'buttermilk']\n",
|
|
"poach --> ['mussel', 'buttermilk', 'caper', 'scallion', 'shiitak', 'pea', 'kimchi', 'veget', 'mushroom', 'brandi']\n",
|
|
"pour --> ['molass', 'buttermilk', 'milk', 'honey', 'beer', 'ketchup', 'tomato', 'butter', 'coconut', 'sriracha']\n",
|
|
"prepare --> ['shrimp', 'sauc', 'ricotta', 'pineappl', 'beer', 'hazelnut', 'season', 'bread', 'avocado', 'banana']\n",
|
|
"pull --> ['meat', 'crawfish', 'prosciutto', 'ham', 'eggplant', 'beef', 'pork', 'zucchini', 'chicken', 'kale']\n",
|
|
"put --> ['butter', 'scallion', 'lemon', 'buttermilk', 'parsley', 'onion', 'oliv', 'avocado', 'egg', 'margarin']\n",
|
|
"reduce --> ['brandi', 'oliv', 'ghee', 'sugar', 'molass', 'shallot', 'ketchup', 'sriracha', 'mirin', 'tomato']\n",
|
|
"refrigerate --> ['strawberri', 'dough', 'mint', 'beet', 'ice', 'beansprout', 'buttermilk', 'banana', 'peach', 'meat']\n",
|
|
"remove --> ['juic', 'crawfish', 'pancetta', 'ghee', 'tomatillo', 'scallion', 'pineappl', 'parsley', 'kale', 'shiitak']\n",
|
|
"rinse --> ['radish', 'pea', 'okra', 'chickpea', 'shiitak', 'daikon', 'cucumb', 'season', 'pimento', 'spinach']\n",
|
|
"roast --> ['ham', 'pork', 'eggplant', 'oil', 'chicken', 'shallot', 'thyme', 'tomatillo', 'zucchini', 'clove']\n",
|
|
"rollup --> ['beansprout', 'pinenut', 'mayonais', 'cotija', 'tequila', 'tumer', 'fettucin', 'guacamol', 'yoghurt', 'kimchi']\n",
|
|
"rub --> ['season', 'mustard', 'rosemari', 'salt', 'flour', 'spice', 'peppercorn', 'cumin', 'oregano', 'thyme']\n",
|
|
"salt --> ['salt', 'cayenn', 'nutmeg', 'paprika', 'allspic', 'marjoram', 'oregano', 'cumin', 'thyme', 'cardamom']\n",
|
|
"scoop --> ['avocado', 'ricotta', 'strawberri', 'buttermilk', 'bean', 'dough', 'guacamol', 'water', 'vanilla', 'mango']\n",
|
|
"scorch --> ['butter', 'honey', 'molass', 'coconut', 'margarin', 'buttermilk', 'yeast', 'banana', 'yoghurt', 'oil']\n",
|
|
"scramble --> ['noodl', 'grit', 'sausag', 'mayonais', 'ghee', 'ricotta', 'yoghurt', 'buttermilk', 'rice', 'okra']\n",
|
|
"season --> ['season', 'cayenn', 'oregano', 'marjoram', 'pepper', 'thyme', 'paprika', 'salt', 'spice', 'cumin']\n",
|
|
"serve --> ['lime', 'lettuc', 'arugula', 'radish', 'chive', 'watercress', 'sriracha', 'avocado', 'baguett', 'guacamol']\n",
|
|
"set --> ['margarin', 'pineappl', 'nutmeg', 'onion', 'cream', 'shorten', 'butter', 'allspic', 'ricotta', 'salt']\n",
|
|
"simmer --> ['quinoa', 'mirin', 'beer', 'onion', 'pea', 'chickpea', 'thyme', 'tomato', 'saffron', 'couscou']\n",
|
|
"skim --> ['grit', 'brandi', 'dashi', 'lard', 'mussel', 'ghee', 'molass', 'beer', 'cornflour', 'milk']\n",
|
|
"slice --> ['lettuc', 'scallion', 'cucumb', 'radish', 'carrot', 'pimento', 'avocado', 'celeri', 'arugula', 'watercress']\n",
|
|
"slowcook --> ['beansprout', 'fettucin', 'mayonais', 'paneer', 'cotija', 'pinenut', 'daikon', 'kimchi', 'crawfish', 'kalamata']\n",
|
|
"soak --> ['raisin', 'chickpea', 'shiitak', 'molass', 'pineappl', 'water', 'pea', 'carrot', 'saffron', 'brandi']\n",
|
|
"sour --> ['yoghurt', 'mascarpon', 'sriracha', 'chees', 'buttermilk', 'milk', 'ricotta', 'ketchup', 'mayonais', 'avocado']\n",
|
|
"spice --> ['spice', 'peppercorn', 'season', 'cumin', 'tumer', 'allspic', 'cinnamon', 'cardamom', 'cayenn', 'mustard']\n",
|
|
"spoon --> ['ricotta', 'mascarpon', 'avocado', 'pesto', 'buttermilk', 'strawberri', 'egg', 'banana', 'tomato', 'zucchini']\n",
|
|
"spread --> ['ricotta', 'chees', 'butter', 'mascarpon', 'cream', 'pesto', 'avocado', 'walnut', 'pecan', 'bread']\n",
|
|
"sprinkle --> ['salt', 'parsley', 'oregano', 'season', 'lemon', 'cayenn', 'thyme', 'nutmeg', 'garlic', 'basil']\n",
|
|
"squeeze --> ['lemon', 'lime', 'orang', 'cucumb', 'avocado', 'tomato', 'pineappl', 'caper', 'chickpea', 'strawberri']\n",
|
|
"steam --> ['mussel', 'couscou', 'turnip', 'cauliflow', 'shiitak', 'quinoa', 'leek', 'pea', 'noodl', 'potato']\n",
|
|
"steep --> ['mint', 'brandi', 'tequila', 'chickpea', 'dashi', 'mussel', 'mirin', 'yeast', 'couscou', 'kale']\n",
|
|
"stir --> ['shallot', 'onion', 'scallion', 'thyme', 'celeri', 'garlic', 'oregano', 'cumin', 'carrot', 'allspic']\n",
|
|
"strain --> ['dashi', 'tequila', 'mussel', 'brandi', 'beer', 'chickpea', 'cornflour', 'kimchi', 'veget', 'sriracha']\n",
|
|
"sugar --> ['sugar', 'honey', 'molass', 'cinnamon', 'nutmeg', 'allspic', 'margarin', 'cardamom', 'vanilla', 'milk']\n",
|
|
"sweeten --> ['yoghurt', 'tequila', 'brandi', 'mascarpon', 'milk', 'honey', 'vanilla', 'mayonais', 'molass', 'cream']\n",
|
|
"taste --> ['cayenn', 'nutmeg', 'sriracha', 'tumer', 'marjoram', 'paprika', 'oregano', 'season', 'gingerroot', 'allspic']\n",
|
|
"thaw --> ['tofu', 'spinach', 'okra', 'kale', 'paneer', 'peach', 'ricotta', 'penn', 'strawberri', 'chickpea']\n",
|
|
"thicken --> ['cornflour', 'pasta', 'quinoa', 'sriracha', 'spaghetti', 'beer', 'grit', 'rice', 'mirin', 'meat']\n",
|
|
"toast --> ['baguett', 'bread', 'pecan', 'walnut', 'almond', 'prosciutto', 'pinenut', 'parsley', 'coriand', 'seed']\n",
|
|
"try --> ['guacamol', 'mayonais', 'yoghurt', 'kimchi', 'pinenut', 'paneer', 'crawfish', 'kalamata', 'fettucin', 'grit']\n",
|
|
"warm --> ['honey', 'margarin', 'molass', 'coconut', 'sriracha', 'vinegar', 'cornflour', 'sugar', 'peanut', 'yeast']\n",
|
|
"wash --> ['radish', 'shiitak', 'turnip', 'daikon', 'watercress', 'okra', 'parsley', 'scallion', 'celeri', 'thyme']\n",
|
|
"whip --> ['mascarpon', 'strawberri', 'ice', 'cream', 'vanilla', 'yoghurt', 'milk', 'ricotta', 'chees', 'banana']\n",
|
|
"whisk --> ['molass', 'honey', 'sugar', 'milk', 'buttermilk', 'cream', 'cornflour', 'egg', 'mustard', 'vanilla']\n",
|
|
"wipe --> ['shiitak', 'okra', 'shallot', 'oil', 'ghee', 'eggplant', 'mushroom', 'season', 'leek', 'shrimp']\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"for action in model_actions:\n",
|
|
" ings = stemmed_ingredients[:]\n",
|
|
" best_ingredients = []\n",
|
|
" for i in range(10):\n",
|
|
" best = model.wv.most_similar_to_given(porter.stem(action), ings)\n",
|
|
" ings.remove(best)\n",
|
|
" best_ingredients.append(best)\n",
|
|
" print(f\"{action} --> {best_ingredients}\")"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"### Ingredient to Cooking Action"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 19,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"salt --> ['salt', 'add', 'sprinkl', 'season', 'sugar', 'grind', 'rub', 'mix', 'stir', 'tast']\n",
|
|
"garlic --> ['minc', 'add', 'sprinkl', 'salt', 'stir', 'season', 'chop', 'dice', 'pickl', 'grind']\n",
|
|
"onions --> ['minc', 'add', 'stir', 'dice', 'chop', 'salt', 'sprinkl', 'arrang', 'pickl', 'parboil']\n",
|
|
"water --> ['boil', 'add', 'sugar', 'salt', 'flour', 'pour', 'stir', 'soak', 'rins', 'steam']\n",
|
|
"sugar --> ['sugar', 'beat', 'salt', 'whisk', 'flour', 'add', 'sweeten', 'sprinkl', 'mix', 'stir']\n",
|
|
"butter --> ['flour', 'sugar', 'melt', 'sprinkl', 'spread', 'add', 'beat', 'put', 'salt', 'brown']\n",
|
|
"pepper --> ['season', 'salt', 'sprinkl', 'add', 'minc', 'tast', 'pickl', 'spice', 'rub', 'chop']\n",
|
|
"eggs --> ['beat', 'mix', 'fold', 'add', 'brush', 'flour', 'whisk', 'curdl', 'put', 'place']\n",
|
|
"tomatoes --> ['add', 'pickl', 'dice', 'stir', 'minc', 'pour', 'arrang', 'squeez', 'garnish', 'put']\n",
|
|
"carrots --> ['parboil', 'minc', 'dice', 'add', 'peel', 'chop', 'stir', 'slice', 'buri', 'arrang']\n",
|
|
"milk --> ['beat', 'sour', 'add', 'sweeten', 'sugar', 'whisk', 'pour', 'stir', 'flour', 'mix']\n",
|
|
"oil --> ['salt', 'fri', 'heat', 'clarifi', 'wipe', 'flour', 'sugar', 'add', 'brown', 'minc']\n",
|
|
"scallions --> ['minc', 'add', 'chop', 'dice', 'pickl', 'grate', 'arrang', 'stir', 'garnish', 'slice']\n",
|
|
"flour --> ['flour', 'sugar', 'sprinkl', 'rub', 'knead', 'beat', 'salt', 'batter', 'spread', 'brush']\n",
|
|
"lime --> ['squeez', 'pickl', 'garnish', 'add', 'minc', 'sour', 'sprinkl', 'serv', 'grate', 'peel']\n",
|
|
"ginger --> ['minc', 'add', 'salt', 'sugar', 'peel', 'sprinkl', 'stir', 'spice', 'chop', 'grind']\n",
|
|
"shallots --> ['minc', 'stir', 'add', 'chop', 'dice', 'wipe', 'pickl', 'fri', 'salt', 'discard']\n",
|
|
"honey --> ['sugar', 'sweeten', 'salt', 'whisk', 'add', 'beat', 'mix', 'pour', 'sour', 'blend']\n",
|
|
"avocado --> ['dice', 'sour', 'arrang', 'pickl', 'minc', 'chop', 'dress', 'garnish', 'slice', 'spread']\n",
|
|
"lemon --> ['add', 'squeez', 'sprinkl', 'salt', 'sugar', 'pickl', 'garnish', 'put', 'grate', 'minc']\n",
|
|
"paprika --> ['salt', 'season', 'minc', 'sprinkl', 'spice', 'add', 'sugar', 'tast', 'grind', 'grate']\n",
|
|
"cilantro --> ['minc', 'pickl', 'add', 'chop', 'garnish', 'grate', 'dice', 'buri', 'dress', 'sour']\n",
|
|
"salsa --> ['dress', 'dice', 'pickl', 'sour', 'mash', 'chop', 'buri', 'garnish', 'season', 'spread']\n",
|
|
"buttermilk --> ['beat', 'sour', 'mix', 'flour', 'add', 'blend', 'whisk', 'pour', 'sweeten', 'sugar']\n",
|
|
"cumin --> ['salt', 'grind', 'minc', 'add', 'season', 'spice', 'stir', 'sugar', 'sprinkl', 'rub']\n",
|
|
"shrimp --> ['fillet', 'wipe', 'arrang', 'grill', 'fri', 'season', 'bast', 'marin', 'broil', 'cook']\n",
|
|
"potatoes --> ['parboil', 'mash', 'add', 'minc', 'steam', 'stir', 'cook', 'dice', 'debon', 'peel']\n",
|
|
"chicken --> ['debon', 'bast', 'season', 'fillet', 'roast', 'wipe', 'cook', 'discard', 'pour', 'brais']\n",
|
|
"celery --> ['minc', 'add', 'dice', 'chop', 'parboil', 'stir', 'peel', 'pickl', 'season', 'slice']\n",
|
|
"zucchini --> ['parboil', 'arrang', 'peel', 'dice', 'add', 'minc', 'chop', 'stir', 'slice', 'buri']\n",
|
|
"cucumber --> ['pickl', 'dice', 'minc', 'slice', 'arrang', 'chop', 'parboil', 'squeez', 'buri', 'dress']\n",
|
|
"mayonaise --> ['buri', 'slowcook', 'rollup', 'sweeten', 'sour', 'dress', 'curdl', 'pickl', 'gut', 'tast']\n",
|
|
"tumeric --> ['salt', 'grind', 'buri', 'pickl', 'spice', 'tast', 'sugar', 'minc', 'sweeten', 'rollup']\n",
|
|
"mushrooms --> ['minc', 'add', 'stir', 'dice', 'pickl', 'chop', 'wipe', 'season', 'cook', 'parboil']\n",
|
|
"cinnamon --> ['sugar', 'salt', 'spice', 'flour', 'sweeten', 'beat', 'sprinkl', 'add', 'grind', 'rollup']\n",
|
|
"bacon --> ['fri', 'dice', 'minc', 'buri', 'add', 'chop', 'brown', 'stir', 'arrang', 'cook']\n",
|
|
"coriander --> ['minc', 'grind', 'salt', 'add', 'spice', 'sprinkl', 'garnish', 'chop', 'pickl', 'season']\n",
|
|
"capers --> ['pickl', 'minc', 'add', 'chop', 'garnish', 'salt', 'season', 'stir', 'dice', 'dress']\n",
|
|
"leeks --> ['minc', 'parboil', 'dice', 'peel', 'chop', 'fri', 'buri', 'wipe', 'steam', 'pickl']\n",
|
|
"mirin --> ['salt', 'sugar', 'boil', 'tast', 'brown', 'simmer', 'pickl', 'add', 'spice', 'season']\n",
|
|
"clove --> ['minc', 'salt', 'peel', 'discard', 'add', 'grind', 'sugar', 'spice', 'sprinkl', 'grate']\n",
|
|
"beansprouts --> ['rollup', 'buri', 'slowcook', 'gut', 'macer', 'peel', 'debon', 'pickl', 'garnish', 'slice']\n",
|
|
"rice --> ['simmer', 'stir', 'scrambl', 'steam', 'cook', 'thicken', 'boil', 'poach', 'mix', 'parboil']\n",
|
|
"raisins --> ['add', 'chop', 'minc', 'stir', 'sweeten', 'soak', 'macer', 'sugar', 'mix', 'grind']\n",
|
|
"cayenne --> ['salt', 'tast', 'season', 'grind', 'add', 'sprinkl', 'sugar', 'minc', 'spice', 'stir']\n",
|
|
"ketchup --> ['pickl', 'sour', 'add', 'minc', 'sugar', 'dress', 'season', 'pour', 'mix', 'salt']\n",
|
|
"oregano --> ['salt', 'minc', 'season', 'add', 'sprinkl', 'stir', 'spice', 'grind', 'tast', 'chop']\n",
|
|
"cheese --> ['sour', 'spread', 'add', 'sprinkl', 'fold', 'stir', 'mix', 'arrang', 'put', 'whip']\n",
|
|
"cornmeal --> ['flour', 'salt', 'sugar', 'bake', 'rollup', 'knead', 'correct', 'batter', 'beat', 'whisk']\n",
|
|
"sauce --> ['glaze', 'add', 'dress', 'arrang', 'pour', 'spread', 'simmer', 'cook', 'stir', 'season']\n",
|
|
"eggplant --> ['bread', 'fillet', 'wipe', 'parboil', 'roast', 'season', 'arrang', 'peel', 'squeez', 'brush']\n",
|
|
"spinach --> ['parboil', 'rins', 'minc', 'arrang', 'add', 'stir', 'dress', 'grate', 'dice', 'drain']\n",
|
|
"orange --> ['squeez', 'add', 'pickl', 'sweeten', 'arrang', 'garnish', 'sugar', 'macer', 'peel', 'discard']\n",
|
|
"peanuts --> ['clarifi', 'melt', 'sugar', 'add', 'spread', 'heat', 'sweeten', 'beat', 'put', 'sour']\n",
|
|
"lemongrass --> ['minc', 'gut', 'pickl', 'peel', 'discard', 'buri', 'chop', 'add', 'dice', 'squeez']\n",
|
|
"spaghetti --> ['boil', 'simmer', 'thicken', 'parboil', 'slowcook', 'buri', 'spoon', 'reduc', 'season', 'drain']\n",
|
|
"cabbage --> ['parboil', 'dice', 'pickl', 'minc', 'dress', 'buri', 'simmer', 'chop', 'rins', 'arrang']\n",
|
|
"sake --> ['salt', 'tast', 'boil', 'sugar', 'sweeten', 'spice', 'correct', 'brown', 'simmer', 'season']\n",
|
|
"parsley --> ['minc', 'add', 'sprinkl', 'chop', 'season', 'salt', 'garnish', 'grate', 'stir', 'pickl']\n",
|
|
"chickpeas --> ['parboil', 'rins', 'stir', 'drain', 'mash', 'add', 'soak', 'dress', 'pickl', 'chop']\n",
|
|
"thyme --> ['minc', 'salt', 'add', 'season', 'chop', 'stir', 'sprinkl', 'spice', 'grate', 'rub']\n",
|
|
"Sriracha --> ['sour', 'pickl', 'tast', 'salt', 'sweeten', 'correct', 'dress', 'season', 'add', 'sugar']\n",
|
|
"pinenuts --> ['buri', 'rollup', 'slowcook', 'minc', 'crumpl', 'spice', 'chop', 'toast', 'grind', 'dress']\n",
|
|
"shiitake --> ['parboil', 'minc', 'wipe', 'wash', 'rins', 'chop', 'gut', 'dice', 'buri', 'debon']\n",
|
|
"vanilla --> ['beat', 'sugar', 'sweeten', 'whip', 'whisk', 'mix', 'blend', 'sour', 'add', 'mash']\n",
|
|
"pork --> ['debon', 'brais', 'bast', 'roast', 'carv', 'marin', 'fillet', 'grill', 'rub', 'season']\n",
|
|
"vinegar --> ['add', 'salt', 'sugar', 'pickl', 'minc', 'tast', 'dress', 'season', 'stir', 'spice']\n",
|
|
"chiles --> ['pickl', 'minc', 'salt', 'spice', 'grind', 'gut', 'add', 'season', 'dice', 'chop']\n",
|
|
"corn --> ['add', 'sour', 'pickl', 'stir', 'buri', 'put', 'place', 'sprinkl', 'mix', 'arrang']\n",
|
|
"tomatillos --> ['pickl', 'dice', 'minc', 'chop', 'parboil', 'buri', 'gut', 'debon', 'brais', 'peel']\n",
|
|
"radishes --> ['pickl', 'parboil', 'dice', 'buri', 'minc', 'chop', 'rins', 'wash', 'slice', 'peel']\n",
|
|
"juice --> ['add', 'minc', 'discard', 'chop', 'macer', 'sugar', 'slice', 'sprinkl', 'peel', 'stir']\n",
|
|
"pasta --> ['boil', 'thicken', 'scrambl', 'simmer', 'cover', 'drain', 'dress', 'parboil', 'wipe', 'pour']\n",
|
|
"prosciutto --> ['bread', 'arrang', 'toast', 'crumpl', 'minc', 'sprinkl', 'slice', 'chop', 'buri', 'garnish']\n",
|
|
"ghee --> ['clarifi', 'fri', 'heat', 'wipe', 'scrambl', 'reduc', 'skim', 'melt', 'lower', 'brown']\n",
|
|
"beef --> ['debon', 'stir', 'fri', 'add', 'cook', 'minc', 'dice', 'season', 'brais', 'roast']\n",
|
|
"basil --> ['minc', 'add', 'garnish', 'sprinkl', 'season', 'chop', 'salt', 'pickl', 'grate', 'stir']\n",
|
|
"baguette --> ['bread', 'toast', 'slice', 'cut', 'rollup', 'buri', 'slowcook', 'broil', 'arrang', 'crumpl']\n",
|
|
"okra --> ['parboil', 'rins', 'dice', 'wipe', 'buri', 'drain', 'wash', 'minc', 'pickl', 'gut']\n",
|
|
"mango --> ['pickl', 'dice', 'macer', 'garnish', 'sour', 'chop', 'sweeten', 'arrang', 'buri', 'add']\n",
|
|
"peaches --> ['macer', 'sweeten', 'rollup', 'squeez', 'garnish', 'whip', 'glaze', 'poach', 'peel', 'arrang']\n",
|
|
"linguine --> ['parboil', 'buri', 'drain', 'slowcook', 'boil', 'rins', 'season', 'tast', 'simmer', 'strain']\n",
|
|
"bananas --> ['fold', 'beat', 'spread', 'whip', 'arrang', 'mix', 'sweeten', 'blend', 'spoon', 'bread']\n",
|
|
"nutmeg --> ['salt', 'sugar', 'tast', 'add', 'sprinkl', 'beat', 'minc', 'flour', 'sweeten', 'mix']\n",
|
|
"yoghurt --> ['sweeten', 'sour', 'curdl', 'rollup', 'whip', 'buri', 'mash', 'dress', 'spice', 'blend']\n",
|
|
"ham --> ['debon', 'dice', 'arrang', 'buri', 'pickl', 'roast', 'chop', 'grill', 'carv', 'bread']\n",
|
|
"broccoli --> ['parboil', 'dice', 'buri', 'drain', 'debon', 'rins', 'stir', 'minc', 'cook', 'season']\n",
|
|
"noodles --> ['scrambl', 'parboil', 'steam', 'boil', 'poach', 'crack', 'break', 'pour', 'stir', 'slowcook']\n",
|
|
"cream --> ['beat', 'melt', 'sweeten', 'whisk', 'whip', 'sour', 'spread', 'mix', 'add', 'sugar']\n",
|
|
"beer --> ['pour', 'strain', 'simmer', 'add', 'debon', 'salt', 'boil', 'brais', 'pickl', 'stir']\n",
|
|
"kalamata --> ['buri', 'pickl', 'season', 'chop', 'dress', 'minc', 'slowcook', 'garnish', 'sour', 'dice']\n",
|
|
"vegetables --> ['bast', 'heat', 'cook', 'season', 'strain', 'add', 'poach', 'brush', 'brais', 'rub']\n",
|
|
"shortening --> ['beat', 'flour', 'sugar', 'clarifi', 'melt', 'whisk', 'mix', 'brown', 'sour', 'blend']\n",
|
|
"saffron --> ['salt', 'add', 'boil', 'stir', 'sugar', 'spice', 'simmer', 'minc', 'grind', 'strain']\n",
|
|
"strawberries --> ['whip', 'sweeten', 'macer', 'squeez', 'garnish', 'spoon', 'peel', 'spread', 'fold', 'scoop']\n",
|
|
"margarine --> ['sugar', 'clarifi', 'melt', 'beat', 'brown', 'flour', 'salt', 'mix', 'add', 'sweeten']\n",
|
|
"tortillas --> ['bread', 'fillet', 'spread', 'fold', 'spoon', 'arrang', 'grill', 'place', 'sour', 'crumpl']\n",
|
|
"almonds --> ['sugar', 'toast', 'add', 'sprinkl', 'garnish', 'sweeten', 'grind', 'beat', 'stir', 'spice']\n",
|
|
"cauliflower --> ['parboil', 'buri', 'steam', 'mash', 'dice', 'boil', 'simmer', 'drain', 'cook', 'cover']\n",
|
|
"asparagus --> ['parboil', 'wipe', 'slice', 'drain', 'cook', 'cover', 'poach', 'buri', 'arrang', 'grate']\n",
|
|
"chili --> ['salt', 'minc', 'pickl', 'add', 'season', 'sprinkl', 'spice', 'tast', 'sour', 'grind']\n",
|
|
"chives --> ['minc', 'add', 'garnish', 'pickl', 'salt', 'grate', 'chop', 'sour', 'buri', 'sprinkl']\n",
|
|
"bread --> ['bread', 'toast', 'spread', 'brush', 'put', 'place', 'sprinkl', 'fold', 'rub', 'crack']\n",
|
|
"couscous --> ['steam', 'simmer', 'buri', 'mash', 'dress', 'slowcook', 'parboil', 'scrambl', 'boil', 'steep']\n",
|
|
"guacamole --> ['tri', 'sour', 'dress', 'buri', 'build', 'rollup', 'slowcook', 'correct', 'pickl', 'gut']\n",
|
|
"sausages --> ['dice', 'fri', 'minc', 'scrambl', 'cook', 'buri', 'season', 'debon', 'parboil', 'grill']\n",
|
|
"arugula --> ['dress', 'arrang', 'buri', 'chop', 'slice', 'garnish', 'parboil', 'minc', 'pickl', 'dice']\n",
|
|
"spices --> ['spice', 'season', 'grind', 'rub', 'salt', 'add', 'mix', 'flour', 'sweeten', 'tast']\n",
|
|
"apples --> ['pickl', 'peel', 'stir', 'sprinkl', 'arrang', 'brown', 'minc', 'add', 'garnish', 'place']\n",
|
|
"peas --> ['parboil', 'dice', 'rins', 'stir', 'add', 'drain', 'buri', 'simmer', 'minc', 'steam']\n",
|
|
"pancetta --> ['fri', 'minc', 'dice', 'chop', 'clarifi', 'buri', 'parboil', 'break', 'heat', 'wipe']\n",
|
|
"grits --> ['skim', 'scrambl', 'correct', 'curdl', 'boil', 'poach', 'thicken', 'scorch', 'slowcook', 'batter']\n",
|
|
"lettuce --> ['arrang', 'slice', 'dice', 'dress', 'garnish', 'buri', 'chop', 'cut', 'spread', 'parboil']\n",
|
|
"mussels --> ['brais', 'steam', 'strain', 'gut', 'poach', 'open', 'boil', 'rins', 'crack', 'wipe']\n",
|
|
"coconut --> ['sweeten', 'sugar', 'pour', 'spread', 'scorch', 'add', 'sour', 'beat', 'sprinkl', 'mix']\n",
|
|
"fettucine --> ['slowcook', 'buri', 'rollup', 'parboil', 'correct', 'debon', 'fillet', 'crumpl', 'boil', 'drain']\n",
|
|
"lard --> ['clarifi', 'sugar', 'heat', 'skim', 'brown', 'fri', 'melt', 'flour', 'wipe', 'beat']\n",
|
|
"brandy --> ['sweeten', 'macer', 'sugar', 'strain', 'skim', 'sour', 'clarifi', 'steep', 'reduc', 'glaze']\n",
|
|
"kale --> ['parboil', 'drain', 'buri', 'rins', 'dress', 'wash', 'chop', 'stir', 'minc', 'macer']\n",
|
|
"olives --> ['salt', 'sprinkl', 'minc', 'dress', 'add', 'grate', 'season', 'heat', 'fri', 'put']\n",
|
|
"pecans --> ['sprinkl', 'sugar', 'toast', 'spread', 'garnish', 'sweeten', 'melt', 'mix', 'fold', 'brown']\n",
|
|
"mascarpone --> ['sour', 'whip', 'sweeten', 'beat', 'spread', 'spoon', 'melt', 'fold', 'rollup', 'grate']\n",
|
|
"daikon --> ['parboil', 'buri', 'pickl', 'dice', 'peel', 'gut', 'slowcook', 'rins', 'wash', 'minc']\n",
|
|
"mint --> ['garnish', 'macer', 'minc', 'chop', 'steep', 'pickl', 'grind', 'sweeten', 'add', 'buri']\n",
|
|
"cotija --> ['buri', 'slowcook', 'rollup', 'sour', 'grate', 'sweeten', 'dress', 'debon', 'melt', 'minc']\n",
|
|
"seasoning --> ['season', 'rub', 'salt', 'spice', 'sprinkl', 'add', 'dress', 'tast', 'marin', 'rins']\n",
|
|
"peppercorns --> ['salt', 'spice', 'minc', 'grind', 'season', 'rub', 'sugar', 'add', 'chop', 'gut']\n",
|
|
"polenta --> ['batter', 'slowcook', 'scrambl', 'serv', 'correct', 'flour', 'bread', 'glaze', 'bake', 'fillet']\n",
|
|
"meat --> ['bast', 'debon', 'pull', 'discard', 'thicken', 'roast', 'season', 'carv', 'fillet', 'cook']\n",
|
|
"pimentos --> ['pickl', 'buri', 'dice', 'minc', 'chop', 'add', 'grate', 'parboil', 'slice', 'season']\n",
|
|
"tequila --> ['sweeten', 'macer', 'rollup', 'strain', 'sugar', 'sour', 'spice', 'buri', 'slowcook', 'tast']\n",
|
|
"tofu --> ['thaw', 'buri', 'bread', 'fri', 'rins', 'steam', 'parboil', 'scrambl', 'wipe', 'wash']\n",
|
|
"pineapple --> ['pickl', 'arrang', 'garnish', 'dice', 'add', 'squeez', 'chop', 'macer', 'peel', 'place']\n",
|
|
"dashi --> ['strain', 'boil', 'debon', 'spice', 'skim', 'simmer', 'tast', 'slowcook', 'sweeten', 'steep']\n",
|
|
"pesto --> ['dress', 'season', 'spread', 'sour', 'correct', 'garnish', 'spoon', 'sprinkl', 'minc', 'chop']\n",
|
|
"chillies --> ['minc', 'pickl', 'salt', 'grind', 'add', 'spice', 'buri', 'tast', 'chop', 'gut']\n",
|
|
"seeds --> ['gut', 'grind', 'discard', 'toast', 'peel', 'spice', 'salt', 'minc', 'rub', 'pickl']\n",
|
|
"allspice --> ['salt', 'sugar', 'grind', 'minc', 'add', 'spice', 'stir', 'sprinkl', 'mix', 'tast']\n",
|
|
"gingerroot --> ['minc', 'salt', 'add', 'pickl', 'chop', 'season', 'buri', 'dice', 'tast', 'stir']\n",
|
|
"crawfish --> ['gut', 'debon', 'parboil', 'slowcook', 'discard', 'buri', 'rins', 'open', 'carv', 'pull']\n",
|
|
"turnips --> ['parboil', 'dice', 'buri', 'peel', 'minc', 'pickl', 'wash', 'chop', 'mash', 'grate']\n",
|
|
"mustard --> ['salt', 'season', 'add', 'minc', 'sugar', 'pickl', 'spice', 'sprinkl', 'rub', 'mix']\n",
|
|
"quinoa --> ['simmer', 'parboil', 'stir', 'boil', 'steam', 'mash', 'strain', 'rins', 'drain', 'buri']\n",
|
|
"penne --> ['parboil', 'boil', 'drain', 'buri', 'rins', 'slowcook', 'cook', 'simmer', 'steam', 'tast']\n",
|
|
"beets --> ['peel', 'pickl', 'parboil', 'dice', 'discard', 'buri', 'slowcook', 'macer', 'gut', 'wash']\n",
|
|
"walnuts --> ['sprinkl', 'toast', 'spread', 'minc', 'add', 'chop', 'garnish', 'mix', 'sugar', 'put']\n",
|
|
"rosemary --> ['minc', 'salt', 'season', 'add', 'sprinkl', 'rub', 'discard', 'chop', 'spice', 'grind']\n",
|
|
"ice --> ['whip', 'sweeten', 'beat', 'sour', 'macer', 'slowcook', 'batter', 'chill', 'freez', 'scoop']\n",
|
|
"kimchi --> ['pickl', 'buri', 'brais', 'parboil', 'debon', 'minc', 'gut', 'slowcook', 'dress', 'dice']\n",
|
|
"yeast --> ['knead', 'flour', 'beat', 'sugar', 'sweeten', 'boil', 'scorch', 'crack', 'whisk', 'steep']\n",
|
|
"paneer --> ['slowcook', 'buri', 'crumpl', 'gut', 'debon', 'bread', 'rollup', 'parboil', 'rins', 'wash']\n",
|
|
"watercress --> ['chop', 'dress', 'minc', 'garnish', 'pickl', 'buri', 'dice', 'arrang', 'wash', 'parboil']\n",
|
|
"cardamom --> ['salt', 'sugar', 'grind', 'spice', 'gut', 'sweeten', 'discard', 'minc', 'add', 'peel']\n",
|
|
"dough --> ['knead', 'batter', 'crumpl', 'squeez', 'spread', 'scoop', 'freez', 'flour', 'brush', 'crack']\n",
|
|
"molasses --> ['sugar', 'beat', 'whisk', 'add', 'sweeten', 'pour', 'salt', 'mix', 'burn', 'sour']\n",
|
|
"marjoram --> ['salt', 'minc', 'season', 'tast', 'add', 'chop', 'grind', 'buri', 'sprinkl', 'pickl']\n",
|
|
"ricotta --> ['sour', 'spread', 'beat', 'spoon', 'sprinkl', 'grate', 'mix', 'fold', 'whip', 'pour']\n",
|
|
"cornflour --> ['salt', 'flour', 'sweeten', 'boil', 'whisk', 'sugar', 'spice', 'sour', 'thicken', 'strain']\n",
|
|
"hazelnuts --> ['grind', 'rollup', 'sugar', 'sprinkl', 'sweeten', 'toast', 'spice', 'garnish', 'whip', 'slowcook']\n",
|
|
"beans --> ['discard', 'parboil', 'stir', 'add', 'simmer', 'dice', 'cover', 'pour', 'scoop', 'steam']\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"for ingredient in model_ingredients:\n",
|
|
" acts = stemmed_actions[:]\n",
|
|
" best_actions = []\n",
|
|
" for i in range(10):\n",
|
|
" best = model.wv.most_similar_to_given(porter.stem(ingredient), acts)\n",
|
|
" acts.remove(best)\n",
|
|
" best_actions.append(best)\n",
|
|
" print(f\"{ingredient} --> {best_actions}\")"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"----\n",
|
|
"## Inter-Category-Similarities\n",
|
|
"* checking self similarities:"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"### Cooking Action"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 21,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"add --> ['add', 'put', 'place', 'pour', 'sprinkl', 'stir', 'arrang', 'mix', 'minc', 'chop']\n",
|
|
"adjust --> ['adjust', 'correct', 'check', 'reduc', 'tast', 'lower', 'salt', 'simmer', 'thicken', 'blend']\n",
|
|
"arrange --> ['arrang', 'place', 'put', 'cut', 'spread', 'add', 'sprinkl', 'slice', 'pour', 'fold']\n",
|
|
"bake --> ['bake', 'roast', 'broil', 'place', 'set', 'put', 'sprinkl', 'flour', 'cook', 'brush']\n",
|
|
"baste --> ['bast', 'brush', 'brais', 'check', 'marin', 'rub', 'glaze', 'broil', 'grill', 'debon']\n",
|
|
"batter --> ['batter', 'glaze', 'spread', 'flour', 'spoon', 'pour', 'knead', 'whip', 'scorch', 'cool']\n",
|
|
"beat --> ['beat', 'whisk', 'mix', 'whip', 'blend', 'sugar', 'stir', 'fold', 'add', 'knead']\n",
|
|
"blend --> ['blend', 'mix', 'beat', 'stir', 'whisk', 'add', 'chill', 'mash', 'knead', 'grind']\n",
|
|
"boil --> ['boil', 'simmer', 'cook', 'thicken', 'heat', 'stir', 'parboil', 'cover', 'reduc', 'steam']\n",
|
|
"braise --> ['brais', 'poach', 'bast', 'roast', 'cook', 'carv', 'debon', 'reduc', 'simmer', 'remov']\n",
|
|
"break --> ['break', 'pull', 'cut', 'arrang', 'scrambl', 'crack', 'put', 'chop', 'minc', 'dice']\n",
|
|
"bread --> ['bread', 'toast', 'spread', 'brush', 'put', 'place', 'sprinkl', 'fold', 'rub', 'crack']\n",
|
|
"broil --> ['broil', 'grill', 'cook', 'fillet', 'bast', 'slice', 'arrang', 'toast', 'fri', 'roast']\n",
|
|
"brown --> ['brown', 'burn', 'scorch', 'sprinkl', 'rub', 'salt', 'add', 'cook', 'mix', 'melt']\n",
|
|
"brush --> ['brush', 'bast', 'rub', 'sprinkl', 'place', 'spread', 'arrang', 'put', 'fold', 'wipe']\n",
|
|
"build --> ['build', 'close', 'prepar', 'grill', 'rollup', 'burn', 'broil', 'buri', 'open', 'slowcook']\n",
|
|
"burn --> ['burn', 'scorch', 'curdl', 'brown', 'melt', 'close', 'tri', 'break', 'scrambl', 'build']\n",
|
|
"bury --> ['buri', 'rollup', 'slowcook', 'parboil', 'gut', 'crumpl', 'mash', 'pickl', 'sweeten', 'grate']\n",
|
|
"carve --> ['carv', 'debon', 'cut', 'brais', 'pull', 'rub', 'slice', 'gut', 'roast', 'serv']\n",
|
|
"check --> ['check', 'adjust', 'correct', 'bast', 'pull', 'tast', 'stir', 'skim', 'thicken', 'parboil']\n",
|
|
"chill --> ['chill', 'refriger', 'freez', 'cool', 'blend', 'thaw', 'marin', 'mix', 'steep', 'macer']\n",
|
|
"chop --> ['chop', 'minc', 'dice', 'add', 'grind', 'slice', 'grate', 'arrang', 'cut', 'sprinkl']\n",
|
|
"clarify --> ['clarifi', 'melt', 'heat', 'sugar', 'fri', 'beat', 'reduc', 'wipe', 'scrambl', 'skim']\n",
|
|
"close --> ['close', 'open', 'build', 'burn', 'pull', 'crumpl', 'scorch', 'gut', 'rollup', 'lower']\n",
|
|
"cook --> ['cook', 'fri', 'simmer', 'heat', 'brais', 'broil', 'poach', 'add', 'grill', 'stir']\n",
|
|
"cool --> ['cool', 'thaw', 'chill', 'remov', 'set', 'steep', 'refriger', 'warm', 'macer', 'freez']\n",
|
|
"correct --> ['correct', 'adjust', 'check', 'tast', 'salt', 'reduc', 'gut', 'slowcook', 'rollup', 'thicken']\n",
|
|
"cover --> ['cover', 'place', 'put', 'set', 'simmer', 'arrang', 'wipe', 'pour', 'boil', 'cook']\n",
|
|
"crack --> ['crack', 'scrambl', 'curdl', 'break', 'open', 'grind', 'pull', 'scorch', 'wash', 'beat']\n",
|
|
"crumple --> ['crumpl', 'buri', 'slowcook', 'gut', 'rollup', 'close', 'pull', 'peel', 'arrang', 'open']\n",
|
|
"curdle --> ['curdl', 'scorch', 'scrambl', 'thicken', 'burn', 'crack', 'whisk', 'beat', 'sweeten', 'sour']\n",
|
|
"cut --> ['cut', 'slice', 'arrang', 'carv', 'dice', 'place', 'put', 'fold', 'chop', 'spread']\n",
|
|
"debone --> ['debon', 'carv', 'gut', 'marin', 'slowcook', 'rins', 'brais', 'rollup', 'parboil', 'discard']\n",
|
|
"dice --> ['dice', 'chop', 'slice', 'minc', 'cut', 'add', 'arrang', 'parboil', 'mash', 'grate']\n",
|
|
"discard --> ['discard', 'remov', 'strain', 'minc', 'wipe', 'add', 'squeez', 'gut', 'chop', 'peel']\n",
|
|
"drain --> ['drain', 'rins', 'parboil', 'strain', 'soak', 'remov', 'poach', 'macer', 'wash', 'wipe']\n",
|
|
"dress --> ['dress', 'season', 'pickl', 'marin', 'grate', 'glaze', 'spread', 'buri', 'chop', 'arrang']\n",
|
|
"fillet --> ['fillet', 'broil', 'rub', 'grill', 'season', 'marin', 'debon', 'arrang', 'brush', 'bast']\n",
|
|
"flour --> ['flour', 'sugar', 'sprinkl', 'rub', 'knead', 'beat', 'salt', 'batter', 'spread', 'brush']\n",
|
|
"fold --> ['fold', 'spread', 'sprinkl', 'arrang', 'place', 'add', 'put', 'cut', 'brush', 'mix']\n",
|
|
"freeze --> ['freez', 'refriger', 'chill', 'knead', 'thaw', 'cool', 'marin', 'steep', 'strain', 'macer']\n",
|
|
"fry --> ['fri', 'cook', 'heat', 'grill', 'broil', 'minc', 'roast', 'place', 'dice', 'put']\n",
|
|
"garnish --> ['garnish', 'sprinkl', 'serv', 'arrang', 'add', 'chop', 'place', 'put', 'pour', 'fold']\n",
|
|
"glaze --> ['glaze', 'bast', 'batter', 'brush', 'dress', 'rub', 'cool', 'slice', 'macer', 'poach']\n",
|
|
"grate --> ['grate', 'chop', 'minc', 'sprinkl', 'slice', 'dice', 'add', 'squeez', 'spread', 'buri']\n",
|
|
"grind --> ['grind', 'chop', 'minc', 'rub', 'salt', 'sprinkl', 'spice', 'put', 'rins', 'crack']\n",
|
|
"grill --> ['grill', 'broil', 'fri', 'cook', 'bast', 'roast', 'fillet', 'marin', 'build', 'brais']\n",
|
|
"gut --> ['gut', 'slowcook', 'debon', 'buri', 'rollup', 'discard', 'carv', 'crumpl', 'peel', 'parboil']\n",
|
|
"heat --> ['heat', 'cook', 'melt', 'fri', 'clarifi', 'reduc', 'simmer', 'boil', 'warm', 'thicken']\n",
|
|
"knead --> ['knead', 'beat', 'squeez', 'flour', 'freez', 'blend', 'pull', 'fold', 'refriger', 'chill']\n",
|
|
"lower --> ['lower', 'reduc', 'adjust', 'remov', 'simmer', 'poach', 'heat', 'thicken', 'pull', 'brais']\n",
|
|
"macerate --> ['macer', 'steep', 'soak', 'thaw', 'marin', 'strain', 'rollup', 'sweeten', 'drain', 'pickl']\n",
|
|
"marinate --> ['marin', 'soak', 'debon', 'steep', 'bast', 'macer', 'arrang', 'rub', 'season', 'rins']\n",
|
|
"mash --> ['mash', 'parboil', 'dice', 'blend', 'minc', 'buri', 'mix', 'break', 'add', 'chop']\n",
|
|
"melt --> ['melt', 'clarifi', 'heat', 'beat', 'set', 'reduc', 'burn', 'sugar', 'brown', 'sprinkl']\n",
|
|
"mince --> ['minc', 'chop', 'dice', 'add', 'grind', 'grate', 'pickl', 'discard', 'slice', 'parboil']\n",
|
|
"mix --> ['mix', 'blend', 'stir', 'beat', 'whisk', 'add', 'put', 'pour', 'fold', 'place']\n",
|
|
"open --> ['open', 'close', 'crack', 'pull', 'gut', 'remov', 'steam', 'cut', 'build', 'peel']\n",
|
|
"parboil --> ['parboil', 'rins', 'buri', 'wash', 'steam', 'drain', 'dice', 'mash', 'cut', 'peel']\n",
|
|
"peel --> ['peel', 'parboil', 'slice', 'discard', 'wash', 'dice', 'squeez', 'gut', 'cut', 'minc']\n",
|
|
"pickle --> ['pickl', 'minc', 'dice', 'buri', 'brais', 'parboil', 'macer', 'dress', 'chop', 'grate']\n",
|
|
"place --> ['place', 'put', 'arrang', 'add', 'pour', 'sprinkl', 'spread', 'cut', 'fold', 'brush']\n",
|
|
"poach --> ['poach', 'brais', 'cook', 'scrambl', 'simmer', 'wash', 'soak', 'rins', 'debon', 'add']\n",
|
|
"pour --> ['pour', 'add', 'put', 'place', 'spread', 'spoon', 'sprinkl', 'arrang', 'strain', 'mix']\n",
|
|
"prepare --> ['prepar', 'spread', 'place', 'put', 'pour', 'arrang', 'build', 'cover', 'serv', 'sprinkl']\n",
|
|
"pull --> ['pull', 'remov', 'break', 'carv', 'cut', 'fold', 'wipe', 'squeez', 'crack', 'open']\n",
|
|
"put --> ['put', 'place', 'add', 'arrang', 'pour', 'spread', 'sprinkl', 'mix', 'fold', 'cut']\n",
|
|
"reduce --> ['reduc', 'lower', 'thicken', 'adjust', 'simmer', 'brais', 'heat', 'stir', 'melt', 'cook']\n",
|
|
"refrigerate --> ['refriger', 'chill', 'freez', 'marin', 'cool', 'steep', 'macer', 'knead', 'strain', 'blend']\n",
|
|
"remove --> ['remov', 'pull', 'discard', 'cool', 'wipe', 'brais', 'drain', 'lower', 'break', 'place']\n",
|
|
"rinse --> ['rins', 'wash', 'drain', 'parboil', 'soak', 'debon', 'thaw', 'discard', 'poach', 'wipe']\n",
|
|
"roast --> ['roast', 'brais', 'bake', 'carv', 'grill', 'fri', 'broil', 'bast', 'cook', 'chop']\n",
|
|
"rollup --> ['rollup', 'slowcook', 'buri', 'gut', 'sweeten', 'debon', 'crumpl', 'macer', 'carv', 'build']\n",
|
|
"rub --> ['rub', 'brush', 'season', 'sprinkl', 'grind', 'wipe', 'put', 'bast', 'spread', 'carv']\n",
|
|
"salt --> ['salt', 'add', 'sprinkl', 'season', 'sugar', 'grind', 'rub', 'mix', 'stir', 'tast']\n",
|
|
"scoop --> ['scoop', 'spoon', 'spread', 'squeez', 'put', 'place', 'arrang', 'pour', 'cut', 'mash']\n",
|
|
"scorch --> ['scorch', 'burn', 'curdl', 'tri', 'brown', 'crack', 'break', 'scrambl', 'sweeten', 'pull']\n",
|
|
"scramble --> ['scrambl', 'curdl', 'crack', 'break', 'poach', 'beat', 'scorch', 'whisk', 'fri', 'burn']\n",
|
|
"season --> ['season', 'rub', 'salt', 'spice', 'sprinkl', 'add', 'dress', 'tast', 'marin', 'rins']\n",
|
|
"serve --> ['serv', 'garnish', 'carv', 'arrang', 'prepar', 'slice', 'spoon', 'place', 'cut', 'put']\n",
|
|
"set --> ['set', 'put', 'place', 'cool', 'cover', 'melt', 'pull', 'beat', 'remov', 'wipe']\n",
|
|
"simmer --> ['simmer', 'boil', 'cook', 'stir', 'reduc', 'steep', 'thicken', 'poach', 'brais', 'heat']\n",
|
|
"skim --> ['skim', 'strain', 'discard', 'brais', 'thicken', 'reduc', 'whisk', 'poach', 'steep', 'curdl']\n",
|
|
"slice --> ['slice', 'cut', 'dice', 'arrang', 'chop', 'place', 'spread', 'carv', 'grate', 'peel']\n",
|
|
"slowcook --> ['slowcook', 'rollup', 'buri', 'gut', 'debon', 'crumpl', 'tri', 'carv', 'parboil', 'correct']\n",
|
|
"soak --> ['soak', 'rins', 'steep', 'macer', 'marin', 'drain', 'wash', 'poach', 'strain', 'add']\n",
|
|
"sour --> ['sour', 'whip', 'sweeten', 'add', 'mix', 'beat', 'spread', 'pour', 'blend', 'curdl']\n",
|
|
"spice --> ['spice', 'season', 'grind', 'rub', 'salt', 'add', 'mix', 'flour', 'sweeten', 'tast']\n",
|
|
"spoon --> ['spoon', 'pour', 'spread', 'scoop', 'arrang', 'place', 'put', 'sprinkl', 'fold', 'mix']\n",
|
|
"spread --> ['spread', 'sprinkl', 'put', 'pour', 'arrang', 'place', 'fold', 'spoon', 'add', 'brush']\n",
|
|
"sprinkle --> ['sprinkl', 'add', 'spread', 'garnish', 'place', 'put', 'arrang', 'fold', 'pour', 'brush']\n",
|
|
"squeeze --> ['squeez', 'discard', 'cut', 'knead', 'fold', 'rub', 'spread', 'scoop', 'peel', 'pull']\n",
|
|
"steam --> ['steam', 'parboil', 'simmer', 'thaw', 'wash', 'boil', 'steep', 'poach', 'open', 'grill']\n",
|
|
"steep --> ['steep', 'macer', 'soak', 'marin', 'strain', 'simmer', 'cool', 'steam', 'chill', 'refriger']\n",
|
|
"stir --> ['stir', 'add', 'whisk', 'mix', 'blend', 'simmer', 'pour', 'beat', 'fold', 'cook']\n",
|
|
"strain --> ['strain', 'pour', 'drain', 'discard', 'steep', 'thicken', 'skim', 'macer', 'soak', 'brais']\n",
|
|
"sugar --> ['sugar', 'beat', 'salt', 'whisk', 'flour', 'add', 'sweeten', 'sprinkl', 'mix', 'stir']\n",
|
|
"sweeten --> ['sweeten', 'whip', 'sour', 'rollup', 'sugar', 'beat', 'curdl', 'macer', 'buri', 'grate']\n",
|
|
"taste --> ['tast', 'correct', 'adjust', 'season', 'salt', 'check', 'grind', 'spice', 'blend', 'sweeten']\n",
|
|
"thaw --> ['thaw', 'macer', 'cool', 'parboil', 'rins', 'wash', 'steam', 'chill', 'freez', 'soak']\n",
|
|
"thicken --> ['thicken', 'curdl', 'reduc', 'simmer', 'strain', 'boil', 'whisk', 'skim', 'stir', 'heat']\n",
|
|
"toast --> ['toast', 'bread', 'broil', 'grind', 'spread', 'sprinkl', 'fri', 'brown', 'place', 'arrang']\n",
|
|
"try --> ['tri', 'scorch', 'slowcook', 'gut', 'burn', 'curdl', 'rollup', 'scrambl', 'close', 'buri']\n",
|
|
"warm --> ['warm', 'cool', 'heat', 'cover', 'simmer', 'melt', 'pour', 'burn', 'soak', 'set']\n",
|
|
"wash --> ['wash', 'rins', 'parboil', 'soak', 'poach', 'peel', 'thaw', 'chop', 'steam', 'arrang']\n",
|
|
"whip --> ['whip', 'beat', 'sweeten', 'sour', 'whisk', 'fold', 'curdl', 'garnish', 'spread', 'mash']\n",
|
|
"whisk --> ['whisk', 'beat', 'stir', 'mix', 'blend', 'pour', 'sugar', 'curdl', 'whip', 'add']\n",
|
|
"wipe --> ['wipe', 'rub', 'discard', 'remov', 'brush', 'rins', 'pull', 'squeez', 'cover', 'brais']\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"for action in model_actions:\n",
|
|
" acts = stemmed_actions[:]\n",
|
|
" best_actions = []\n",
|
|
" for i in range(10):\n",
|
|
" best = model.wv.most_similar_to_given(porter.stem(action), acts)\n",
|
|
" acts.remove(best)\n",
|
|
" best_actions.append(best)\n",
|
|
" print(f\"{action} --> {best_actions}\")"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"### Ingredient"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 22,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"salt --> ['salt', 'cayenn', 'nutmeg', 'paprika', 'allspic', 'marjoram', 'oregano', 'cumin', 'thyme', 'cardamom']\n",
|
|
"garlic --> ['garlic', 'shallot', 'oregano', 'cumin', 'thyme', 'coriand', 'cayenn', 'marjoram', 'tumer', 'scallion']\n",
|
|
"onions --> ['onion', 'shallot', 'scallion', 'celeri', 'gingerroot', 'leek', 'garlic', 'chili', 'caper', 'chilli']\n",
|
|
"water --> ['water', 'milk', 'sake', 'juic', 'vinegar', 'oil', 'sugar', 'mirin', 'saffron', 'salt']\n",
|
|
"sugar --> ['sugar', 'honey', 'molass', 'cinnamon', 'nutmeg', 'allspic', 'margarin', 'cardamom', 'vanilla', 'milk']\n",
|
|
"butter --> ['butter', 'margarin', 'shorten', 'lard', 'ghee', 'oil', 'cinnamon', 'honey', 'flour', 'sugar']\n",
|
|
"pepper --> ['pepper', 'peppercorn', 'cumin', 'cayenn', 'oregano', 'paprika', 'garlic', 'chilli', 'chile', 'thyme']\n",
|
|
"eggs --> ['egg', 'buttermilk', 'molass', 'margarin', 'coconut', 'butter', 'ricotta', 'flour', 'banana', 'milk']\n",
|
|
"tomatoes --> ['tomato', 'tomatillo', 'pimento', 'avocado', 'caper', 'chile', 'cucumb', 'mango', 'mushroom', 'scallion']\n",
|
|
"carrots --> ['carrot', 'turnip', 'radish', 'celeri', 'zucchini', 'daikon', 'scallion', 'leek', 'gingerroot', 'shallot']\n",
|
|
"milk --> ['milk', 'buttermilk', 'water', 'honey', 'molass', 'cream', 'sugar', 'yoghurt', 'margarin', 'shorten']\n",
|
|
"oil --> ['oil', 'kalamata', 'ghee', 'oliv', 'butter', 'honey', 'paprika', 'caper', 'cumin', 'salt']\n",
|
|
"scallions --> ['scallion', 'onion', 'shallot', 'chive', 'cilantro', 'radish', 'caper', 'pimento', 'parsley', 'gingerroot']\n",
|
|
"flour --> ['flour', 'cornmeal', 'buttermilk', 'butter', 'shorten', 'sugar', 'cinnamon', 'cornflour', 'milk', 'nutmeg']\n",
|
|
"lime --> ['lime', 'lemon', 'orang', 'mango', 'sriracha', 'cilantro', 'gingerroot', 'mint', 'pineappl', 'avocado']\n",
|
|
"ginger --> ['ginger', 'gingerroot', 'lemongrass', 'coriand', 'clove', 'allspic', 'chilli', 'cumin', 'cardamom', 'shallot']\n",
|
|
"shallots --> ['shallot', 'onion', 'scallion', 'caper', 'gingerroot', 'leek', 'garlic', 'pancetta', 'rosemari', 'parsley']\n",
|
|
"honey --> ['honey', 'molass', 'sugar', 'sriracha', 'vinegar', 'ketchup', 'mirin', 'tumer', 'cinnamon', 'mustard']\n",
|
|
"avocado --> ['avocado', 'cucumb', 'mango', 'radish', 'tomato', 'guacamol', 'lime', 'lettuc', 'tomatillo', 'scallion']\n",
|
|
"lemon --> ['lemon', 'lime', 'orang', 'caper', 'mint', 'honey', 'gingerroot', 'ginger', 'juic', 'sriracha']\n",
|
|
"paprika --> ['paprika', 'cayenn', 'cumin', 'oregano', 'marjoram', 'tumer', 'coriand', 'salt', 'allspic', 'thyme']\n",
|
|
"cilantro --> ['cilantro', 'chive', 'coriand', 'basil', 'scallion', 'parsley', 'mint', 'thyme', 'caper', 'rosemari']\n",
|
|
"salsa --> ['salsa', 'guacamol', 'cilantro', 'tomatillo', 'avocado', 'ketchup', 'pesto', 'lettuc', 'mango', 'pimento']\n",
|
|
"buttermilk --> ['buttermilk', 'milk', 'molass', 'honey', 'yoghurt', 'flour', 'egg', 'shorten', 'cornflour', 'vanilla']\n",
|
|
"cumin --> ['cumin', 'cayenn', 'coriand', 'allspic', 'tumer', 'cardamom', 'paprika', 'oregano', 'peppercorn', 'pepper']\n",
|
|
"shrimp --> ['shrimp', 'crawfish', 'mussel', 'chicken', 'asparagu', 'okra', 'linguin', 'penn', 'spinach', 'shiitak']\n",
|
|
"potatoes --> ['potato', 'zucchini', 'eggplant', 'cauliflow', 'beet', 'turnip', 'carrot', 'leek', 'cabbag', 'avocado']\n",
|
|
"chicken --> ['chicken', 'beef', 'meat', 'pork', 'shrimp', 'ham', 'mushroom', 'veget', 'eggplant', 'cabbag']\n",
|
|
"celery --> ['celeri', 'onion', 'scallion', 'turnip', 'carrot', 'leek', 'shallot', 'pimento', 'thyme', 'chive']\n",
|
|
"zucchini --> ['zucchini', 'eggplant', 'carrot', 'leek', 'turnip', 'radish', 'cucumb', 'daikon', 'potato', 'cabbag']\n",
|
|
"cucumber --> ['cucumb', 'radish', 'avocado', 'daikon', 'pimento', 'mango', 'arugula', 'turnip', 'zucchini', 'lettuc']\n",
|
|
"mayonaise --> ['mayonais', 'yoghurt', 'kimchi', 'cotija', 'tumer', 'guacamol', 'sriracha', 'fettucin', 'tequila', 'pinenut']\n",
|
|
"tumeric --> ['tumer', 'coriand', 'cumin', 'cayenn', 'allspic', 'marjoram', 'chilli', 'sriracha', 'gingerroot', 'cardamom']\n",
|
|
"mushrooms --> ['mushroom', 'shiitak', 'leek', 'shallot', 'celeri', 'scallion', 'onion', 'tomato', 'broccoli', 'zucchini']\n",
|
|
"cinnamon --> ['cinnamon', 'nutmeg', 'allspic', 'cardamom', 'sugar', 'honey', 'cayenn', 'vanilla', 'molass', 'margarin']\n",
|
|
"bacon --> ['bacon', 'pancetta', 'prosciutto', 'sausag', 'ham', 'shallot', 'pimento', 'celeri', 'scallion', 'onion']\n",
|
|
"coriander --> ['coriand', 'cilantro', 'cumin', 'tumer', 'marjoram', 'thyme', 'oregano', 'cardamom', 'rosemari', 'lemongrass']\n",
|
|
"capers --> ['caper', 'chive', 'shallot', 'kalamata', 'parsley', 'scallion', 'basil', 'pimento', 'gingerroot', 'rosemari']\n",
|
|
"leeks --> ['leek', 'turnip', 'cabbag', 'shallot', 'shiitak', 'scallion', 'celeri', 'radish', 'onion', 'mushroom']\n",
|
|
"mirin --> ['mirin', 'sake', 'sriracha', 'vinegar', 'tumer', 'dashi', 'honey', 'ketchup', 'molass', 'cornflour']\n",
|
|
"clove --> ['clove', 'ginger', 'allspic', 'gingerroot', 'peppercorn', 'rosemari', 'cardamom', 'cumin', 'lemongrass', 'thyme']\n",
|
|
"beansprouts --> ['beansprout', 'tequila', 'juic', 'tumer', 'lemongrass', 'fettucin', 'kimchi', 'pinenut', 'mayonais', 'daikon']\n",
|
|
"rice --> ['rice', 'quinoa', 'couscou', 'noodl', 'chickpea', 'spinach', 'linguin', 'grit', 'pasta', 'cauliflow']\n",
|
|
"raisins --> ['raisin', 'walnut', 'pecan', 'honey', 'brandi', 'appl', 'pineappl', 'molass', 'pinenut', 'almond']\n",
|
|
"cayenne --> ['cayenn', 'paprika', 'cumin', 'nutmeg', 'allspic', 'salt', 'oregano', 'marjoram', 'tumer', 'cardamom']\n",
|
|
"ketchup --> ['ketchup', 'sriracha', 'mustard', 'honey', 'vinegar', 'mirin', 'molass', 'tumer', 'gingerroot', 'sauc']\n",
|
|
"oregano --> ['oregano', 'marjoram', 'thyme', 'rosemari', 'basil', 'parsley', 'cayenn', 'coriand', 'cumin', 'paprika']\n",
|
|
"cheese --> ['chees', 'ricotta', 'mascarpon', 'prosciutto', 'butter', 'chive', 'zucchini', 'pesto', 'avocado', 'scallion']\n",
|
|
"cornmeal --> ['cornmeal', 'flour', 'cornflour', 'yeast', 'paprika', 'tumer', 'cinnamon', 'buttermilk', 'salt', 'cayenn']\n",
|
|
"sauce --> ['sauc', 'ketchup', 'mirin', 'salsa', 'juic', 'scallion', 'sake', 'sriracha', 'pesto', 'shallot']\n",
|
|
"eggplant --> ['eggplant', 'zucchini', 'potato', 'leek', 'avocado', 'prosciutto', 'tomato', 'cauliflow', 'shiitak', 'mushroom']\n",
|
|
"spinach --> ['spinach', 'kale', 'arugula', 'broccoli', 'watercress', 'cabbag', 'basil', 'asparagu', 'leek', 'cauliflow']\n",
|
|
"orange --> ['orang', 'lemon', 'lime', 'pineappl', 'mango', 'strawberri', 'peach', 'tequila', 'brandi', 'ginger']\n",
|
|
"peanuts --> ['peanut', 'hazelnut', 'honey', 'pecan', 'walnut', 'almond', 'coconut', 'sriracha', 'margarin', 'sugar']\n",
|
|
"lemongrass --> ['lemongrass', 'gingerroot', 'coriand', 'ginger', 'tumer', 'rosemari', 'scallion', 'chilli', 'cilantro', 'cardamom']\n",
|
|
"spaghetti --> ['spaghetti', 'linguin', 'pasta', 'penn', 'noodl', 'fettucin', 'cauliflow', 'quinoa', 'couscou', 'broccoli']\n",
|
|
"cabbage --> ['cabbag', 'turnip', 'kale', 'leek', 'radish', 'broccoli', 'spinach', 'daikon', 'lettuc', 'arugula']\n",
|
|
"sake --> ['sake', 'mirin', 'dashi', 'vinegar', 'sriracha', 'cornflour', 'tumer', 'tequila', 'saffron', 'brandi']\n",
|
|
"parsley --> ['parsley', 'chive', 'basil', 'marjoram', 'thyme', 'oregano', 'rosemari', 'cilantro', 'caper', 'scallion']\n",
|
|
"chickpeas --> ['chickpea', 'quinoa', 'tomatillo', 'kale', 'bean', 'cucumb', 'caper', 'kimchi', 'pea', 'tomato']\n",
|
|
"thyme --> ['thyme', 'rosemari', 'marjoram', 'oregano', 'parsley', 'basil', 'coriand', 'chive', 'cilantro', 'cayenn']\n",
|
|
"Sriracha --> ['sriracha', 'mirin', 'ketchup', 'tumer', 'gingerroot', 'honey', 'mustard', 'sake', 'yoghurt', 'cayenn']\n",
|
|
"pinenuts --> ['pinenut', 'kalamata', 'marjoram', 'oregano', 'caper', 'cotija', 'watercress', 'fettucin', 'gingerroot', 'arugula']\n",
|
|
"shiitake --> ['shiitak', 'leek', 'okra', 'mushroom', 'pimento', 'shallot', 'turnip', 'radish', 'scallion', 'zucchini']\n",
|
|
"vanilla --> ['vanilla', 'molass', 'cardamom', 'cinnamon', 'honey', 'sugar', 'shorten', 'almond', 'nutmeg', 'coconut']\n",
|
|
"pork --> ['pork', 'meat', 'beef', 'chicken', 'ham', 'sausag', 'pancetta', 'eggplant', 'prosciutto', 'cabbag']\n",
|
|
"vinegar --> ['vinegar', 'mirin', 'honey', 'sake', 'ketchup', 'molass', 'sriracha', 'gingerroot', 'caper', 'tumer']\n",
|
|
"chiles --> ['chile', 'chili', 'chilli', 'tomatillo', 'cumin', 'coriand', 'garlic', 'oregano', 'onion', 'cayenn']\n",
|
|
"corn --> ['corn', 'tomatillo', 'carrot', 'scallion', 'pimento', 'onion', 'chili', 'oregano', 'ketchup', 'cilantro']\n",
|
|
"tomatillos --> ['tomatillo', 'chile', 'tomato', 'chickpea', 'gingerroot', 'mango', 'okra', 'cilantro', 'avocado', 'kale']\n",
|
|
"radishes --> ['radish', 'daikon', 'turnip', 'cucumb', 'scallion', 'watercress', 'carrot', 'pimento', 'leek', 'kimchi']\n",
|
|
"juice --> ['juic', 'lemon', 'vinegar', 'beansprout', 'honey', 'lime', 'shallot', 'orang', 'cumin', 'molass']\n",
|
|
"pasta --> ['pasta', 'spaghetti', 'linguin', 'penn', 'noodl', 'fettucin', 'asparagu', 'quinoa', 'cauliflow', 'mussel']\n",
|
|
"prosciutto --> ['prosciutto', 'pancetta', 'bacon', 'ham', 'baguett', 'pimento', 'sausag', 'eggplant', 'shallot', 'watercress']\n",
|
|
"ghee --> ['ghee', 'lard', 'butter', 'oil', 'margarin', 'oliv', 'pancetta', 'sake', 'shorten', 'peanut']\n",
|
|
"beef --> ['beef', 'meat', 'chicken', 'pork', 'sausag', 'ham', 'kimchi', 'bacon', 'potato', 'okra']\n",
|
|
"basil --> ['basil', 'parsley', 'oregano', 'marjoram', 'thyme', 'cilantro', 'chive', 'rosemari', 'mint', 'caper']\n",
|
|
"baguette --> ['baguett', 'bread', 'prosciutto', 'avocado', 'eggplant', 'paneer', 'cucumb', 'pancetta', 'pinenut', 'banana']\n",
|
|
"okra --> ['okra', 'shiitak', 'leek', 'tomatillo', 'kimchi', 'zucchini', 'kale', 'shallot', 'broccoli', 'daikon']\n",
|
|
"mango --> ['mango', 'avocado', 'pineappl', 'peach', 'strawberri', 'cucumb', 'orang', 'lime', 'tomatillo', 'radish']\n",
|
|
"peaches --> ['peach', 'strawberri', 'mango', 'banana', 'appl', 'pineappl', 'orang', 'avocado', 'lime', 'beet']\n",
|
|
"linguine --> ['linguin', 'penn', 'fettucin', 'spaghetti', 'pasta', 'quinoa', 'noodl', 'couscou', 'broccoli', 'asparagu']\n",
|
|
"bananas --> ['banana', 'peach', 'strawberri', 'mango', 'appl', 'avocado', 'pineappl', 'almond', 'coconut', 'orang']\n",
|
|
"nutmeg --> ['nutmeg', 'allspic', 'cayenn', 'cinnamon', 'cardamom', 'salt', 'paprika', 'tumer', 'cumin', 'marjoram']\n",
|
|
"yoghurt --> ['yoghurt', 'mayonais', 'sriracha', 'tumer', 'tequila', 'mascarpon', 'buttermilk', 'guacamol', 'honey', 'mint']\n",
|
|
"ham --> ['ham', 'prosciutto', 'pork', 'sausag', 'bacon', 'beef', 'pancetta', 'meat', 'pimento', 'chicken']\n",
|
|
"broccoli --> ['broccoli', 'cauliflow', 'asparagu', 'spinach', 'pea', 'kale', 'cabbag', 'turnip', 'linguin', 'daikon']\n",
|
|
"noodles --> ['noodl', 'pasta', 'spaghetti', 'linguin', 'penn', 'broccoli', 'fettucin', 'asparagu', 'couscou', 'quinoa']\n",
|
|
"cream --> ['cream', 'mascarpon', 'milk', 'ricotta', 'margarin', 'vanilla', 'honey', 'cotija', 'chive', 'yoghurt']\n",
|
|
"beer --> ['beer', 'ketchup', 'tequila', 'dashi', 'lemongrass', 'molass', 'sriracha', 'mirin', 'vinegar', 'tumer']\n",
|
|
"kalamata --> ['kalamata', 'caper', 'pinenut', 'pimento', 'oil', 'gingerroot', 'oregano', 'marjoram', 'basil', 'watercress']\n",
|
|
"vegetables --> ['veget', 'broccoli', 'oliv', 'cauliflow', 'scallion', 'carrot', 'mushroom', 'onion', 'asparagu', 'chicken']\n",
|
|
"shortening --> ['shorten', 'margarin', 'butter', 'lard', 'vanilla', 'molass', 'flour', 'buttermilk', 'milk', 'sugar']\n",
|
|
"saffron --> ['saffron', 'tumer', 'cardamom', 'lemongrass', 'cumin', 'thyme', 'marjoram', 'coriand', 'cayenn', 'oregano']\n",
|
|
"strawberries --> ['strawberri', 'peach', 'mango', 'banana', 'pineappl', 'orang', 'appl', 'mint', 'tequila', 'lime']\n",
|
|
"margarine --> ['margarin', 'butter', 'shorten', 'lard', 'honey', 'cinnamon', 'sugar', 'molass', 'ghee', 'nutmeg']\n",
|
|
"tortillas --> ['tortilla', 'baguett', 'lettuc', 'dough', 'salsa', 'noodl', 'bread', 'prosciutto', 'guacamol', 'chees']\n",
|
|
"almonds --> ['almond', 'hazelnut', 'pecan', 'walnut', 'coconut', 'cinnamon', 'vanilla', 'peanut', 'banana', 'mint']\n",
|
|
"cauliflower --> ['cauliflow', 'broccoli', 'kale', 'turnip', 'asparagu', 'leek', 'zucchini', 'cabbag', 'potato', 'daikon']\n",
|
|
"asparagus --> ['asparagu', 'broccoli', 'cauliflow', 'leek', 'spinach', 'linguin', 'kale', 'watercress', 'shiitak', 'turnip']\n",
|
|
"chili --> ['chili', 'chile', 'chilli', 'cayenn', 'oregano', 'cumin', 'tumer', 'onion', 'coriand', 'paprika']\n",
|
|
"chives --> ['chive', 'parsley', 'cilantro', 'scallion', 'marjoram', 'basil', 'caper', 'thyme', 'rosemari', 'pimento']\n",
|
|
"bread --> ['bread', 'baguett', 'prosciutto', 'eggplant', 'tortilla', 'paneer', 'avocado', 'ham', 'banana', 'almond']\n",
|
|
"couscous --> ['couscou', 'quinoa', 'linguin', 'rice', 'penn', 'fettucin', 'kale', 'broccoli', 'cauliflow', 'chickpea']\n",
|
|
"guacamole --> ['guacamol', 'salsa', 'pesto', 'avocado', 'mayonais', 'yoghurt', 'cotija', 'lettuc', 'ketchup', 'sriracha']\n",
|
|
"sausages --> ['sausag', 'bacon', 'pancetta', 'beef', 'ham', 'prosciutto', 'meat', 'pork', 'leek', 'eggplant']\n",
|
|
"arugula --> ['arugula', 'watercress', 'lettuc', 'kale', 'spinach', 'basil', 'cilantro', 'cucumb', 'radish', 'pimento']\n",
|
|
"spices --> ['spice', 'peppercorn', 'season', 'cumin', 'tumer', 'allspic', 'cinnamon', 'cardamom', 'cayenn', 'mustard']\n",
|
|
"apples --> ['appl', 'peach', 'pineappl', 'beet', 'banana', 'strawberri', 'mango', 'orang', 'raisin', 'turnip']\n",
|
|
"peas --> ['pea', 'broccoli', 'bean', 'radish', 'turnip', 'scallion', 'chickpea', 'spinach', 'celeri', 'carrot']\n",
|
|
"pancetta --> ['pancetta', 'prosciutto', 'bacon', 'shallot', 'sausag', 'leek', 'ham', 'onion', 'mushroom', 'caper']\n",
|
|
"grits --> ['grit', 'polenta', 'couscou', 'fettucin', 'quinoa', 'mussel', 'linguin', 'pasta', 'penn', 'rice']\n",
|
|
"lettuce --> ['lettuc', 'arugula', 'watercress', 'cabbag', 'cucumb', 'radish', 'avocado', 'kale', 'basil', 'spinach']\n",
|
|
"mussels --> ['mussel', 'crawfish', 'fettucin', 'shrimp', 'linguin', 'penn', 'couscou', 'okra', 'pasta', 'asparagu']\n",
|
|
"coconut --> ['coconut', 'almond', 'walnut', 'pecan', 'hazelnut', 'peanut', 'banana', 'vanilla', 'cinnamon', 'butter']\n",
|
|
"fettucine --> ['fettucin', 'linguin', 'penn', 'spaghetti', 'pasta', 'pinenut', 'crawfish', 'mayonais', 'mussel', 'couscou']\n",
|
|
"lard --> ['lard', 'margarin', 'shorten', 'ghee', 'butter', 'molass', 'oil', 'sugar', 'vanilla', 'peanut']\n",
|
|
"brandy --> ['brandi', 'tequila', 'molass', 'honey', 'raisin', 'sake', 'orang', 'mirin', 'vinegar', 'sriracha']\n",
|
|
"kale --> ['kale', 'arugula', 'spinach', 'watercress', 'cabbag', 'cauliflow', 'turnip', 'broccoli', 'leek', 'chickpea']\n",
|
|
"olives --> ['oliv', 'caper', 'chive', 'oregano', 'cilantro', 'rosemari', 'garlic', 'oil', 'scallion', 'shallot']\n",
|
|
"pecans --> ['pecan', 'walnut', 'hazelnut', 'almond', 'raisin', 'cinnamon', 'peanut', 'coconut', 'appl', 'pinenut']\n",
|
|
"mascarpone --> ['mascarpon', 'ricotta', 'cream', 'cotija', 'yoghurt', 'chees', 'pesto', 'mayonais', 'tequila', 'guacamol']\n",
|
|
"daikon --> ['daikon', 'radish', 'turnip', 'cucumb', 'carrot', 'beet', 'watercress', 'leek', 'cabbag', 'zucchini']\n",
|
|
"mint --> ['mint', 'basil', 'cilantro', 'coriand', 'rosemari', 'marjoram', 'thyme', 'watercress', 'chive', 'oregano']\n",
|
|
"cotija --> ['cotija', 'mascarpon', 'pimento', 'pinenut', 'mayonais', 'ricotta', 'guacamol', 'fettucin', 'chive', 'kalamata']\n",
|
|
"seasoning --> ['season', 'cayenn', 'oregano', 'marjoram', 'pepper', 'thyme', 'paprika', 'salt', 'spice', 'cumin']\n",
|
|
"peppercorns --> ['peppercorn', 'cardamom', 'cumin', 'allspic', 'pepper', 'cayenn', 'oregano', 'marjoram', 'paprika', 'coriand']\n",
|
|
"polenta --> ['polenta', 'grit', 'cornmeal', 'fettucin', 'cotija', 'linguin', 'couscou', 'penn', 'eggplant', 'tofu']\n",
|
|
"meat --> ['meat', 'beef', 'pork', 'chicken', 'sausag', 'ham', 'eggplant', 'crawfish', 'shrimp', 'tofu']\n",
|
|
"pimentos --> ['pimento', 'chive', 'scallion', 'caper', 'parsley', 'radish', 'cilantro', 'watercress', 'cucumb', 'marjoram']\n",
|
|
"tequila --> ['tequila', 'brandi', 'tumer', 'sriracha', 'yoghurt', 'cornflour', 'beansprout', 'mirin', 'lime', 'sake']\n",
|
|
"tofu --> ['tofu', 'paneer', 'pancetta', 'kimchi', 'eggplant', 'prosciutto', 'shrimp', 'sausag', 'okra', 'beef']\n",
|
|
"pineapple --> ['pineappl', 'mango', 'orang', 'peach', 'appl', 'strawberri', 'lime', 'banana', 'lemon', 'raisin']\n",
|
|
"dashi --> ['dashi', 'sake', 'mirin', 'saffron', 'kimchi', 'tumer', 'cornflour', 'beer', 'tequila', 'sriracha']\n",
|
|
"pesto --> ['pesto', 'ricotta', 'guacamol', 'arugula', 'basil', 'avocado', 'salsa', 'watercress', 'sriracha', 'mascarpon']\n",
|
|
"chillies --> ['chilli', 'chili', 'chile', 'tumer', 'coriand', 'gingerroot', 'oregano', 'cumin', 'garlic', 'cayenn']\n",
|
|
"seeds --> ['seed', 'cardamom', 'coriand', 'tumer', 'garlic', 'cumin', 'lemongrass', 'allspic', 'gingerroot', 'ginger']\n",
|
|
"allspice --> ['allspic', 'nutmeg', 'cayenn', 'cardamom', 'cumin', 'peppercorn', 'tumer', 'marjoram', 'cinnamon', 'coriand']\n",
|
|
"gingerroot --> ['gingerroot', 'ginger', 'lemongrass', 'shallot', 'marjoram', 'tumer', 'oregano', 'caper', 'cumin', 'sriracha']\n",
|
|
"crawfish --> ['crawfish', 'mussel', 'shrimp', 'shiitak', 'fettucin', 'linguin', 'okra', 'penn', 'lemongrass', 'asparagu']\n",
|
|
"turnips --> ['turnip', 'daikon', 'radish', 'leek', 'cabbag', 'carrot', 'beet', 'cauliflow', 'celeri', 'kale']\n",
|
|
"mustard --> ['mustard', 'ketchup', 'oregano', 'cumin', 'sriracha', 'paprika', 'cayenn', 'gingerroot', 'chili', 'thyme']\n",
|
|
"quinoa --> ['quinoa', 'couscou', 'rice', 'linguin', 'chickpea', 'penn', 'kale', 'pasta', 'fettucin', 'cauliflow']\n",
|
|
"penne --> ['penn', 'linguin', 'fettucin', 'spaghetti', 'pasta', 'quinoa', 'noodl', 'broccoli', 'couscou', 'cauliflow']\n",
|
|
"beets --> ['beet', 'turnip', 'daikon', 'radish', 'cabbag', 'potato', 'cucumb', 'appl', 'carrot', 'mango']\n",
|
|
"walnuts --> ['walnut', 'pecan', 'hazelnut', 'almond', 'raisin', 'pinenut', 'peanut', 'coconut', 'cinnamon', 'coriand']\n",
|
|
"rosemary --> ['rosemari', 'thyme', 'marjoram', 'oregano', 'parsley', 'basil', 'chive', 'coriand', 'mint', 'caper']\n",
|
|
"ice --> ['ice', 'strawberri', 'tequila', 'mascarpon', 'cornflour', 'brandi', 'shorten', 'pineappl', 'yoghurt', 'coconut']\n",
|
|
"kimchi --> ['kimchi', 'gingerroot', 'radish', 'mayonais', 'turnip', 'pimento', 'sriracha', 'tumer', 'okra', 'daikon']\n",
|
|
"yeast --> ['yeast', 'cornmeal', 'molass', 'cornflour', 'buttermilk', 'shorten', 'milk', 'sake', 'flour', 'honey']\n",
|
|
"paneer --> ['paneer', 'tofu', 'daikon', 'baguett', 'okra', 'pancetta', 'prosciutto', 'radish', 'shiitak', 'eggplant']\n",
|
|
"watercress --> ['watercress', 'arugula', 'kale', 'radish', 'chive', 'caper', 'basil', 'lettuc', 'cilantro', 'parsley']\n",
|
|
"cardamom --> ['cardamom', 'allspic', 'peppercorn', 'cumin', 'coriand', 'tumer', 'cayenn', 'nutmeg', 'cinnamon', 'saffron']\n",
|
|
"dough --> ['dough', 'tortilla', 'yeast', 'butter', 'flour', 'ice', 'cornmeal', 'banana', 'prosciutto', 'bread']\n",
|
|
"molasses --> ['molass', 'honey', 'sugar', 'vanilla', 'vinegar', 'mirin', 'buttermilk', 'ketchup', 'brandi', 'sriracha']\n",
|
|
"marjoram --> ['marjoram', 'oregano', 'thyme', 'rosemari', 'parsley', 'basil', 'cayenn', 'coriand', 'chive', 'paprika']\n",
|
|
"ricotta --> ['ricotta', 'mascarpon', 'pesto', 'cotija', 'chees', 'cream', 'spinach', 'basil', 'arugula', 'chive']\n",
|
|
"cornflour --> ['cornflour', 'mirin', 'sake', 'tequila', 'tumer', 'sriracha', 'saffron', 'cornmeal', 'dashi', 'molass']\n",
|
|
"hazelnuts --> ['hazelnut', 'pecan', 'walnut', 'almond', 'peanut', 'coconut', 'pinenut', 'coriand', 'cinnamon', 'mint']\n",
|
|
"beans --> ['bean', 'chickpea', 'pea', 'tomatillo', 'chile', 'tomato', 'chili', 'turnip', 'peppercorn', 'broccoli']\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"for ingredient in model_ingredients:\n",
|
|
" ings = stemmed_ingredients[:]\n",
|
|
" best_ingredients = []\n",
|
|
" for i in range(10):\n",
|
|
" best = model.wv.most_similar_to_given(porter.stem(ingredient), ings)\n",
|
|
" ings.remove(best)\n",
|
|
" best_ingredients.append(best)\n",
|
|
" print(f\"{ingredient} --> {best_ingredients}\")"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": []
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": "Python 3",
|
|
"language": "python",
|
|
"name": "python3"
|
|
},
|
|
"language_info": {
|
|
"codemirror_mode": {
|
|
"name": "ipython",
|
|
"version": 3
|
|
},
|
|
"file_extension": ".py",
|
|
"mimetype": "text/x-python",
|
|
"name": "python",
|
|
"nbconvert_exporter": "python",
|
|
"pygments_lexer": "ipython3",
|
|
"version": "3.7.3"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 2
|
|
}
|