Scalable calculation of the similarity content graph
A method includes creating a base content set having attributes indicative of a first program. Selecting a second program to form a first recommendation set, determining a first similarity score between the base content set and the first recommendation set, and providing a recommendation based on the similarity score.
1. A method comprising:
creating a base content set having attributes indicative of a first program;
selecting a second program to form a first recommendation set;
determining a first similarity score between the base content set and the first recommendation set, and
providing a recommendation based on the similarity score, wherein the determining step comprises:
performing a non-sorted similarity function to obtain a first interim similarity score;
performing a sorted categorical similarity function to obtain a second interim similarity score; and
performing a numerical similarity function to obtain a third interim similarity score and wherein each of the first interim similarity score, the second interim similarity score and the third interim similarity score are assigned a weight and the recommendation is based on the weighted sum of the first interim similarity score, the second interim similarity score and the third interim similarity score.
2. The method of claim 1 further comprising:
selecting a third program to form a second recommendation set;
determining a second similarity score between the base content set and the second recommendation set; and
ranking the first recommendation set and the second recommendation set based on the first similarity score and the second similarity score.
3. An apparatus comprising:
an communications interface;
a processor coupled to the communications interface and wherein the processor is coupled to a memory, the memory having stored thereon executable instructions that when executed by the processor cause the processor to effectuate operations comprising:
creating a base content set having attributes indicative of a first program;
selecting a second program to form a first recommendation set;
determining a first similarity score between the base content set and the first recommendation set; and
providing a recommendation based on the similarity score; wherein the determining step comprises:
performing a non-sorted similarity function to obtain a first interim similarity score:
performing a sorted categorical similarity function to obtain a second interim similarity score: and
performing a numerical similarity function to obtain a third interim similarity score and wherein each of the first interim similarity score, the second interim similarity score and the third interim similarity score are assigned a weight and the recommendation is based on the weighted sum of the first interim similarity score, the second interim similarity score and the third interim similarity score.
4. The apparatus of claim 3 wherein the operations further comprise:
selecting a third program to form a second recommendation set;
determining a second similarity score between the base content set and the second recommendation set; and
ranking the first recommendation set and the second recommendation set based on the first similarity score and the second similarity score.