-->

Recipe Recommendation System

See also MealPlanningResources

person, properties (gender, sex, ) recipes, (properties,)

only consider recipes that they like,d on't consider those they don't like

another set of nodes of recipes, and ingredients,

four layer person / property recipe / their-ingredients, step-s

edges are who likes what recipe, what ingredient is in this recipe, property of the person, old/young new person comes in - know personal information, already ranked some of the recipes

collaborative filtering,

build graph rank all recipes attach small subgraph, based on property of the person

rank some, jump start

starting with characteristic vector v of size N, multiply each with "adjacency matrix" A the columns of it are normalized, divide by the sum of the entry of each column, of size by NxN, multiply until it converges, multiply this with matrix you get vector, has n entries each node corresponds to a node, look at the vector, pick the largest ones. another trick, so every time we multiply the matrix, we save some probability, 1-c we do this, with probability c we jump back to the starting node, to do that

v = (1-c)Av+cv,

c=0.15 (for WWW graph, diameter = 19)

c=0.65 (for image captioning, three layers)

c <-> diameter graph?

(1-0.15)^19 = (1-c')^(our diameter=3)

c' = 0.65

use this for ours, implement diameter, and then calculate c here.

is a sparse graph