A mechanism is provided for modifying an existing recipe to meet a set of desired colors for a final food dish. Responsive to receiving a request to modify the existing recipe to meet the set of desired colors, at least one of the set of existing colors to be changed to meet the desired set of colors is identified. An ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe is identified and, from a corpus of ingredient-action-sequence triplets associated with other existing recipes, one or more candidates that can he added to produce the at least one target color are identified. The one or more candidates that can he added are ranked based on how each candidate pairs best with other ingredients in the existing recipe. Based on a selection of a candidate, the existing recipe is modified with the selected candidate.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A method, in a data processing system, for modifying an existing recipe to meet a set of desired colors for a final food dish, the method comprising: responsive to receiving a request to modify the existing recipe to meet the set of desired colors, the set of desired colors has at least one target color that is different from a set of existing colors of the final food dish, identifying at least one of the set of existing colors to be changed to meet the desired set of colors; identifying an ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe; from a corpus of ingredient-action-sequence triplets associated with other existing recipes, identifying one or more candidates that can be added to the existing recipe to produce the at least one target color; ranking the one or more candidates that can be added to the existing recipe to produce the at least one target color based on how each candidate pairs best with other ingredients in the existing recipe; and based on a selection of a candidate from the one or more candidates that can he added to the existing recipe to produce the at least one target color, modifying the existing recipe with the selected candidate. 2. The method of claim 1, wherein the ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe is identified by the method comprising: responsive to a corpus of existing recipes, each being accompanied with an image illustrating a result of the existing recipe, for each existing recipe: separating a foreground of the image from a background of the image; clustering areas of similar color in the foreground together; generating a sparse binary feature vector representing the ingredient-action-sequence triplets found in the existing recipe, wherein each ingredient-action-sequence triplet represents an ingredient, an action performed with regard to the ingredient, and where in the existing recipe the ingredient and the action occurs; and marking each of the sparse binary feature vector with one or more positive examples of color; using the sparse binary feature vectors for the corpus of existing recipes to train a machine learning model; and searching, in the trained machine learning model, for a sparse binary feature vector that has a prominent weight in conjunction with the ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe; and identifying the ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe from the identified sparse binary feature vector. 3. The method of claim 1, wherein the ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe is identified by the method comprising: responsive to a corpus of existing recipes, each being accompanied without an image illustrating a result of the existing recipe, for each existing recipe: generating a sparse binary feature vector associated with each ingredient-action-sequence triplet of the existing recipe; identifying one or more sparse binary feature vectors, from other sparse binary feature vectors of other existing recipes from a corpus of existing recipes each being accompanied without an image illustrating a result of the existing recipe that is similar to the generated sparse binary feature vector for the existing recipe failing to be accompanied with an image; using each sparse binary feature vector of the one or more identified sparse binary feature vectors to predict the colors appearing in the final food dish; and marking each of the sparse binary feature vector with one or more positive examples of color; using the sparse binary feature vectors for the corpus of existing recipes to train a machine learning model; searching, in the trained machine learning model, for a sparse binary feature vector that has a prominent weight in conjunction with the ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe; and identifying the ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe from the identified sparse binary feature vector. 4. The method of claim 1, further comprising: for each existing recipe, identifying the area where the color appears in the final food dish; and generating a rudimentary image of the existing recipe showing the areas associated with each color in the existing recipe. 5. The method of claim 4, further comprising: for each existing recipe, identifying patterns associated with the color of the ingredient-action-sequence triplet that appears in the final food dish; and modifying the rudimentary image of the existing recipe showing the patterns associated with each ingredient-action-sequence triplet in the existing recipe. 6. The method of claim 1, further comprising: responsive to receiving a request to modify the existing recipe to meet a set of desired patterns, the set of desired patterns has at least one target pattern that is different from a set of existing patterns of the final food dish, identifying at least one of the set of existing patterns to be changed to meet the desired set of patterns; identifying an ingredient-action-sequence triplet associated with each at least one existing pattern to he changed in the existing recipe; from the corpus of ingredient-action-sequence triplet associated with other existing recipes, identifying one or more candidates that can be added to the existing recipe to produce the at least one target pattern; ranking the one or more candidates that can be added to the existing recipe to produce the at least one target pattern based on how each candidate pairs best with other ingredients in the existing recipe; and based on a selection of a candidate from the one or more candidates that can be added to the existing recipe to produce the at least one target color, modifying the existing recipe with the selected candidate. 7. The method of claim 1, further comprising: receiving an indication of the target color from the user for the at least one existing color, wherein the indication is via hue/saturation slider or a color picking tool to indicate the target color. 8. The method of claim 1, further comprising: receiving a target color and pattern to add to the existing recipe; identifying a candidate set of ingredient-action-sequence triplets that match the target color and pattern to add to the existing recipe; ranking the candidate set of ingredient-action-sequence triplets that match the target color and pattern to add to the existing recipe; and based on a selection of an ingredient-action-sequence triplet from the candidate set of ingredient-action-sequence triplets, modifying the existing recipe with the ingredient-action-sequence triplet. 9. A computer program product comprising a computer readable storage medium having a computer readable program stored therein, wherein the computer readable program, when executed on a computing device, causes the computing device to: responsive to receiving a request to modify an existing recipe to meet a set of desired colors, the set of desired colors has at least one target color that is different from a set of existing colors of the final food dish, identify at least one of the set of existing colors to be changed to meet the desired set of colors; identify an ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe; from a corpus of ingredient-action-sequence triplets associated with other existing recipes, identify one or more candidates that can he added to the existing recipe to produce the at least one target color; rank the one or more candidates that can be added to the existing recipe to produce the at least one target color based on how each candidate pairs best with other ingredients in the existing recipe; and based on a selection of a candidate from the one or more candidates that can be added to the existing recipe to produce the at least one target color, modify the existing recipe with the selected candidate. 10. The computer program product of claim 9, wherein the computer readable program identifies the ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe by causing the computing device to: responsive to a corpus of existing recipes, each being accompanied with an image illustrating a result of the existing recipe, for each existing recipe: separate a foreground of the image from a background of the image; cluster areas of similar color in the foreground together; generate a sparse binary feature vector representing the ingredient-action-sequence triplets found in the existing recipe, wherein each ingredient-action-sequence triplet represents an ingredient, an action performed with regard to the ingredient, and where in the existing recipe the ingredient and the action occurs; and mark each of the sparse binary feature vector with one or more positive examples of color; use the sparse binary feature vectors for the corpus of existing recipes to train a machine learning model; and search, in the trained machine learning model, for a sparse binary feature vector that has a prominent weight in conjunction with the ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe; and identify the ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe from the identified sparse binary feature vector. 11. The computer program product of claim 9, wherein the computer readable program identifies the ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe by causing the computing device to: responsive to a corpus of existing recipes, each being accompanied without an image illustrating a result of the existing recipe, for each existing recipe: generate a sparse binary feature vector associated with each ingredient-action-sequence triplet of the existing recipe; identify one or more sparse binary feature vectors, from other sparse binary feature vectors of other existing recipes from a corpus of existing recipes each being accompanied without an image illustrating a result of the existing recipe that is similar to the generated sparse binary feature vector for the existing recipe failing to be accompanied with an image; use each sparse binary feature vector of the one or more identified sparse binary feature vectors to predict the colors appearing in the final food dish; and mark each of the sparse binary feature vector with one or more positive examples of color; use the sparse binary feature vectors for the corpus of existing recipes to train a machine learning model; search, in the trained machine learning model, for a sparse binary feature vector that has a prominent weight in conjunction with the ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe; and identify the ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe from the identified sparse binary feature vector. 12. The computer program product of claim 9, wherein the computer readable program further causes the computing device to: for each existing recipe, identify the area where the color appears in the final food dish; and generate a rudimentary image of the existing recipe showing the areas associated with each color in the existing recipe. 13. The computer program product of claim 12, wherein the computer readable program further causes the computing device to: for each existing recipe, identify patterns associated with the color of the ingredient-action-sequence triplet that appears in the final food dish; and modify the rudimentary image of the existing recipe showing the patterns associated with each ingredient-action-sequence triplet in the existing recipe. 14. The computer program product of claim 9, wherein the computer readable program further causes the computing device to: responsive to receiving a request to modify the existing recipe to meet a set of desired patterns, the set of desired patterns has at least one target pattern that is different from a set of existing patterns of the final food dish, identify at least one of the set of existing patterns to be changed to meet the desired set of patterns; identify an ingredient-action-sequence triplet associated with each at least one existing pattern to be changed in the existing recipe; from the corpus of ingredient-action-sequence triplet associated with other existing recipes, identify one or more candidates that can be added to the existing recipe to produce the at least one target pattern; rank the one or more candidates that can be added to the existing recipe to produce the at least one target pattern based on how each candidate pairs best with other ingredients in the existing recipe; and based on a selection of a candidate from the one or more candidates that can be added to the existing recipe to produce the at least one target color, modify the existing recipe with the selected candidate. 15. An apparatus comprising: a processor; and a memory coupled to the processor, wherein the memory comprises instructions which, when executed by the processor, cause the processor to: responsive to receiving a request to modify an existing recipe to meet a set of desired colors, the set of desired colors has at least one target color that is different from a set of existing colors of the final food dish, identify at least one of the set of existing colors to be changed to meet the desired set of colors; identify an ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe; from a corpus of ingredient-action-sequence triplets associated with other existing recipes, identify one or more candidates that can be added to the existing recipe to produce the at least one target color; rank the one or more candidates that can be added to the existing recipe to produce the at least one target color based on how each candidate pairs best with other ingredients in the existing recipe; and based on a selection of a candidate from the one or more candidates that can be added to the existing recipe to produce the at least one target color, modify the existing recipe with the selected candidate. 16. The apparatus of claim 15, wherein the instructions identify the ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe by causing the processor to: responsive to a corpus of existing recipes, each being accompanied with an image illustrating a result of the existing recipe, for each existing recipe: separate a foreground of the image from a background of the image; cluster areas of similar color in the foreground together; generate a sparse binary feature vector representing the ingredient-action-sequence triplets found in the existing recipe, wherein each ingredient-action-sequence triplet represents an ingredient, an action performed with regard to the ingredient, and where in the existing recipe the ingredient and the action occurs; and mark each of the sparse binary feature vector with one or more positive examples of color; use the sparse binary feature vectors for the corpus of existing recipes to train a machine learning model; and search, in the trained machine learning model, for a sparse binary feature vector that has a prominent weight in conjunction with the ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe; and identify the ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe from the identified sparse binary feature vector. 17. The apparatus of claim 15, wherein the instructions identify the ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe by causing the processor to: responsive to a corpus of existing recipes, each being accompanied without an image illustrating a result of the existing recipe, for each existing recipe: generate a sparse binary feature vector associated with each ingredient-action-sequence triplet of the existing recipe; identify one or more sparse binary feature vectors, from other sparse binary feature vectors of other existing recipes from a corpus of existing recipes each being accompanied without an image illustrating a result of the existing recipe that is similar to the generated sparse binary feature vector for the existing recipe failing to be accompanied with an image; use each sparse binary feature vector of the one or more identified sparse binary feature vectors to predict the colors appearing in the final food dish; and mark each of the sparse feature vector with one or more positive examples of color; use the sparse binary feature vectors for the corpus of existing recipes to train a machine learning model; search, in the trained machine learning model, for a sparse binary feature vector that has a prominent weight in conjunction with the ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe; and identify the ingredient-action-sequence triplet associated with each at least one existing color to be changed in the existing recipe from the identified sparse binary feature vector. 18. The apparatus of claim 15, wherein the instructions further cause the processor to: for each existing recipe, identify the area where the color appears in the final food dish; and generate a rudimentary image of the existing recipe showing the areas associated with each color in the existing recipe. 19. The apparatus of claim 18, wherein the instructions further cause the processor to: for each existing recipe, identify patterns associated with the color of the ingredient-action-sequence triplet that appears in the final food dish; and modify the rudimentary image of the existing recipe showing the patterns associated with each ingredient-action-sequence triplet in the existing recipe. 20. The apparatus of claim 15, wherein the instructions further cause the processor to: responsive to receiving a request to modify the existing recipe to meet a set of desired patterns, the set of desired patterns has at least one target pattern that is different from a set of existing patterns of the final food dish, identify at least one of the set of existing patterns to be changed to meet the desired set of patterns; identify an ingredient-action-sequence triplet associated with each at least one existing pattern to be changed in the existing recipe; from the corpus of ingredient-action-sequence triplet associated with other existing recipes, identify one or more candidates that can be added to the existing recipe to produce the at least one target pattern; rank the one or more candidates that can be added to the existing recipe to produce the at least one target pattern based on how each candidate pairs best with other ingredients in the existing recipe; and based on a selection of a candidate from the one or more candidates that can be added to the existing recipe to produce the at least one target color, modify the existing recipe with the selected candidate.