IP Library Granted Patent US 12,223,530
Granted Patent B2
US 12,223,530 · App. 17/030,509 · Granted Feb 11, 2025

Method, system, and computer program product for representational machine learning for product formulation

Inventors: Petar Ristoski (San Jose, CA); Richard T. Goodwin (Dobbs Ferry, NY); Jing Fu (Yorktown Heights, NY); Richard B. Segal (Chappaqua, NY); Robin Lougee (Yorktown Heights, NY); Kimberly C. Lang (Yorktown Heights, NY); Christian Harris (Port Chester, NY); Tenzin Yeshi (New York, NY)
Assignee: International Business Machines Corporation
G06Q30/0621G06N5/022G06N5/025
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,223,530
App. No.
17/030,509
Granted
Feb 11, 2025
Kind
B2
Abstract

A method, system, and computer program product for representational learning of product formulas are provided. The method accesses a set of product formulas. Each product formula includes a set of ingredient tuples. A directed graph is generated from the set of product formulas. The directed graph including a node for each ingredient of the sets of ingredient tuples of the set of formulas. The method generates a weighted graph from the directed graph. The weighted graph has a weight assigned to each edge in the directed graph. The method generates an embedding model based on the directed graph. A set of embeddings is determined for the weighted graph where each node is represented with low-dimensional numerical vectors.

Claims (77)

1. A computer-implemented method, comprising:

accessing a set of product formulas, each product formula including a set of ingredient tuples;

generating a directed graph from the set of product formulas, the directed graph including a node for each ingredient of the sets of ingredient tuples of the set of product formulas;

generating a weighted graph from the directed graph, the weighted graph having a weight assigned to each edge in the directed graph;

modifying random walk models by incorporating the weight assigned to each edge into the random walk model;

vectorizing the set of product formulas based on ingredients within the product formulas;

feeding the random walks from the random walk models into a deep learning approach to determine a set of embeddings comprising ingredient embeddings and a set of ingredient vectors from the vectorizing, wherein the deep learning approach is run on data including ingredient recommendations; and substitute ingredient recommendation;

generating, based on the weighted graph, an embedding module;

deploying the random walk models on the weighted graph;

building neural models for two or more positive formulas in the weighted graph by: extracting, using the random walk models, a subgraph with depth d; extracting n biased walks in the subgraph; and building a neural model for each entity in the weighted graph, wherein positive formulas are used to generate a weight of edges to provide the bias for the biased walks on the weighted graph, wherein positive examples are formulas that have a threshold level of market success;

training, using a bias of the biased walks from the weight of the edges, a sequence-to-sequence neural network generated using a pairwise ranking loss functions derived from the neural models;

augmenting the sequence-to-sequence neural network with the set of embeddings for the weighted graph as a sigmoid layer in the sequence-to-sequence neural network,

wherein each node is represented with low-dimensional numerical formula vectors;

deploying the embedding module to generate a new product formula by passing the set of ingredient embeddings through the sequence-to-sequence neural network using one or more of the neural models; and

identifying, using the sequence-to-sequence neural network, a new ingredient tuple for the new product formula.

2. The method of claim 1 , wherein generating the weighted graph further comprises:

removing a subset of edges of the directed graph, the subset of edges having a weight below a first threshold.

3. The method of claim 1 , wherein each ingredient tuple identifies an ingredient, an amount of the ingredient, and a set of categorical features of the ingredient.

4. The method of claim 3 , wherein the set of embeddings include a set of formula embeddings and determining the set of embeddings further comprises:

determining a set of formula vectors based on the set of ingredient vectors, the set of formula vectors including a formula vector for each product formula of the set of product formulas.

5. The method of claim 1 , further comprising:

generating a new formula based on the sequence-to-sequence neural network.

6. The method of claim 5 , wherein generating the new formula further comprises:

generating a set of proposed formulas based on the sequence-to-sequence neural network;

eliminating a first subset of proposed formulas from the set of proposed formulas based on a similarity threshold to a formula of the set of product formulas; and

based on eliminating the first subset of formulas, selecting the new formula from a second subset of formulas remaining in the set of proposed formulas.

7. A system, comprising:

one or more processors; and

a computer-readable storage medium, coupled to the one or more processors, storing program instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:

accessing a set of product formulas, each product formula including a set of ingredient tuples;

generating a directed graph from the set of product formulas, the directed graph including a node for each ingredient of the sets of ingredient tuples of the set of product formulas;

generating a weighted graph from the directed graph, the weighted graph having a weight assigned to each edge in the directed graph;

modifying random walk models by incorporating the weight assigned to each edge into the random walk model;

vectorizing the set of product formulas based on ingredients within the product formulas;

feeding the random walks from the random walk models into a deep learning approach to determine a set of embeddings comprising ingredient embeddings and a set of ingredient vectors from the vectorizing, wherein the deep learning approach is run on data including ingredient recommendations, and substitute ingredient recommendation;

generating, based on the weighted graph, an embedding module;

deploying the random walk models on the weighted graph;

building neural models for two or more positive formulas in the weighted graph by: extracting, using the random walk models, a subgraph with depth d; extracting n biased walks in the subgraph; and building a neural model for each entity in the weighted graph, wherein positive formulas are used to generate a weight of edges to provide the bias for the biased walks on the weighted graph, wherein positive examples are formulas that have a threshold level of market success;

training, using a bias of the biased walks from the weight of the edges, a sequence-to-sequence neural network generated using a pairwise ranking loss functions derived from the neural models;

augmenting the sequence-to-sequence neural network with the set of embeddings for the weighted graph as a sigmoid layer in the sequence-to-sequence neural network, wherein each node is represented with low-dimensional numerical formula vectors;

deploying the embedding module to generate a new product formula by passing the set of ingredient embeddings through the sequence-to-sequence neural network using one or more of the neural models; and

identifying, using the sequence-to-sequence neural network, a new ingredient tuple for the new product formula.

8. The system of claim 7 , wherein generating the weighted graph further comprises:

removing a subset of edges of the directed graph, the subset of edges having a weight below a first threshold.

9. The system of claim 7 , wherein each ingredient tuple identifies an ingredient, an amount of the ingredient, and a set of categorical features of the ingredient.

10. The system of claim 9 , wherein the set of embeddings include a set of formula embeddings and determining the set of embeddings further comprises:

determining a set of formula vectors based on the set of ingredient vectors, the set of formula vectors including a formula vector for each product formula of the set of product formulas.

11. The system of claim 7 , wherein the operations further comprise:

generating a new formula based on the sequence-to-sequence neural network.

12. The system of claim 11 , wherein generating the new formula further comprises:

generating a set of proposed formulas based on the sequence-to-sequence neural network;

eliminating a first subset of proposed formulas from the set of proposed formulas based on a similarity threshold to a formula of the set of product formulas; and

based on eliminating the first subset of formulas, selecting the new formula from a second subset of formulas remaining in the set of proposed formulas.

13. A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions being executable by one or more processors to cause the one or more processors to perform operations comprising:

accessing a set of product formulas, each product formula including a set of ingredient tuples;

generating a directed graph from the set of product formulas, the directed graph including a node for each ingredient of the sets of ingredient tuples of the set of product formulas;

generating a weighted graph from the directed graph, the weighted graph having a weight assigned to each edge in the directed graph;

modifying random walk models by incorporating the weight assigned to each edge into the random walk model;

vectorizing the set of product formulas based on ingredients within the product formulas;

feeding the random walks from the random walk models into a deep learning approach to determine a set of embeddings comprising ingredient embeddings and a set of ingredient vectors from the vectorizing, wherein the deep learning approach is run on data including ingredient recommendations, and substitute ingredient recommendation;

generating, based on the weighted graph, an embedding module;

deploying the random walk models on the weighted graph;

building neural models for two or more positive formulas in the weighted graph by: extracting, using the random walk models, a subgraph with depth d; extracting n biased walks in the subgraph; and building a neural model for each entity in the weighted graph, wherein positive formulas are used to generate a weight of edges to provide the bias for the biased walks on the weighted graph, wherein positive examples are formulas that have a threshold level of market success;

training, using a bias of the biased walks from the weight of the edges, a sequence-to-sequence neural network generated using a pairwise ranking loss functions derived from the neural models;

augmenting the sequence-to-sequence neural network with the set of embeddings for the weighted graph as a sigmoid layer in the sequence-to-sequence neural network, wherein each node is represented with low-dimensional numerical formula vectors;

deploying the embedding module to generate a new product formula by passing the set of ingredient embeddings through the sequence-to-sequence neural network using one or more of the neural models; and

identifying, using the sequence-to-sequence neural network, a new ingredient tuple for the new product formula.

14. The computer program product of claim 13 , wherein generating the weighted graph further comprises:

removing a subset of edges of the directed graph, the subset of edges having a weight below a first threshold.

15. The computer program product of claim 14 , wherein the set of embeddings include a set of formula embeddings and determining the set of embeddings further comprises:

determining a set of formula vectors based on the set of ingredient vectors, the set of formula vectors including a formula vector for each product formula of the set of product formulas.

16. The computer program product of claim 13 , wherein the operations further comprise:

generating a new formula based on the sequence-to-sequence neural network.

17. The computer program product of claim 16 , wherein generating the new formula further comprises:

generating a set of proposed formulas based on the sequence-to-sequence neural network;

eliminating a first subset of proposed formulas from the set of proposed formulas based on a similarity threshold to a formula of the set of product formulas; and

based on eliminating the first subset of formulas, selecting the new formula from a second subset of formulas remaining in the set of proposed formulas.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 24, 2020
From: RISTOSKI, PETAR; GOODWIN, RICHARD T.; FU, JING; SEGAL, RICHARD B.; LOUGEE, ROBIN; LANG, KIMBERLY C.; HARRIS, CHRISTIAN; YESHI, TENZIN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 053868/0004 →
Continuity (1)
Related Publication 20220092659A1 · Mar 24, 2022
References Cited (29)
US 10255269B2 · Quirk · 2019 [cited by examiner]
US 10445654B2 · Glass et al. · 2019 [cited by applicant]
US 10445811B2 · Chacko et al. · 2019 [cited by applicant]
US 10528997B2 · Mi et al. · 2020 [cited by applicant]
US 10657179B2 · Thompson et al. · 2020 [cited by applicant]
US 10678601B2 · Wong et al. · 2020 [cited by applicant]
US 10699280B2 · Sheth et al. · 2020 [cited by applicant]
US 20060174190A1 · Gomes · 2006 [cited by applicant]
US 20100251210A1 · Amaral · 2010 [cited by applicant]
US 20170249547A1 · Shrikumar · 2017 [cited by examiner]
US 20170372197A1 · Baughman et al. · 2017 [cited by applicant]
US 20180075369A1 · Calmon · 2018 [cited by examiner]
US 20190197564A1 · Calmon et al. · 2019 [cited by applicant]
US 20200019861A1 · Jeong · 2020 [cited by applicant]
US 20200034418A1 · Byron et al. · 2020 [cited by applicant]
US 20200125907A1 · Sheth et al. · 2020 [cited by applicant]
CN 110246542A · 2019 [cited by applicant]
Hozouri, N.; Advancing National Health Through Investigations of Nutrition, Medical Expenditure, and Public Insurance Programs (ProQuest No. 27999593). (Year: 2020). [cited by examiner]
International Search Report and Written Opinion for Application PCT/CN2021/118730, Nov. 26, 2021, 8 pages. [cited by applicant]
Ahn et al., “Flavor network and the principles of food pairing”, Scientific Reports. Published Dec. 15, 2011,DOI: 10.1038/srep00196, 7 pages. https://www.nature.com/articles/srep00196. [cited by applicant]
Teng et al., Recipe recommendation using ingredient networks, Proceedings of the 3rd Annual ACM Web Science Conference (WebSci'12) (2012), 10 pages. https://dl.acm.org/citation.cfm?id=2380757. [cited by applicant]
Diwan, “A Named Entity Based Approach to Model Recipes”, arXiv:2004.12184v1 [cs.CL] Apr. 25, 2020, 6 pages. [cited by applicant]
Mai et al., “Support and centrality: Learning weights for knowledge graph embedding models”, European Knowledge Acquisition Workshop, Springer, 2018, 15 pages. https://geog.ucsb.edu/˜jano/2018-EKAW18_TransRW.pdf. [cited by applicant]
Cochez et al., “Biased graph walks for RDF graph embeddings”, In Proceedings of the 7th International Conference on Web Intelligence, Mining and Semantics, ACM, 2017, 12 pages. https://dl.acm.org/citation.cfm?id=3102279. [cited by applicant]
Sauer et al., “Cooking up Food Embeddings Understanding Flavors in the Recipe-Ingredient Graph”, A CS224W Project Report, printed Aug. 13, 2020, 12 pages. [cited by applicant]
Chen, “A Statistical Machine Learning Approach to Generating Graph Structures from Food Recipes”, Master's Thesis, Aug. 2017, Master of Arts in Computational Linguistics, 53 pages. [cited by applicant]
Zamparelli et al., “Ingredient-driven Recipe Generation Using Neural and Distributional Models”, Master's Thesis, Date of Submission Jul. 17, 2017, Co-funded by the Erasmus+ Programme of the European Union, 61 pages. [cited by applicant]
Park et al., “KitcheNette: Predicting and Ranking Food Ingredient Pairings using Siamese Neural Networks”, Proceedings of the Twenty-Eighth International Joint Conference on Artificial Intelligence (IJCAI-19), 7 pages. [cited by applicant]
Mell et al., “The NIST Definition of Cloud Computing”, Recommendations of the National Institute of Standards and Technology, Special Publication 800-145, Sep. 2011, 7 pages. [cited by applicant]