Method of processing content searches
There is provided method of processing searches input into a content recommendation engine (CRE). The CRE is adapted to receive searches and provide one or more content recommendations based on the received searches for a user of a content distribution system having a plurality of users. The method comprises determining a time between consecutive searches of a plurality of searches; grouping one or more of the plurality of searches into a search session based on the determined time; grouping searches in the search session into a sub-session; and determining an intended search of the sub-session. In another embodiment, the method comprises determining a similarity of each search of a plurality of searches; and mapping each search of the plurality of searches to an intended search based on the determined similarity.
1 . A method of processing searches input into a content recommendation engine (CRE), the CRE adapted to receive searches and provide one or more content recommendations based on the received searches for a user of a content distribution system having a plurality of users, the method comprising:
determining a time between consecutive searches of a plurality of searches;
grouping one or more of the plurality of searches into a search session based on the determined time;
then grouping searches in the search session into a sub-session, wherein searches with similarity scores higher than a pre-set threshold are grouped together in the same sub-session;
determining a similarity of searches in the sub-session, wherein determining the similarly of searches comprises comparing searches in the sub-session to at least one parameter, wherein the parameter comprises learn actions, and wherein the learn actions comprise clicked-on search results (COSR), each COSR indicating that a particular content item was selected for viewing;
categorizing each search in the sub-session based on the determined similarity; and
determining an intended search of the sub-session based on the determined similarity.
2 . The method of claim 1 , wherein the parameter comprises at least one of:
content metadata; and
user metadata.
3 . The method of claim 2 , wherein at least one of:
content metadata comprises metadata associated with content of the content distribution system; and
user metadata comprises metadata associated with a user or associated user profile.
4 . The method of claim 1 , wherein determining the intended search comprises determining the intended search term based on the similarity exceeding a threshold, and/or selecting the search with the highest similarity.
5 . The method of claim 1 , further comprising:
determining an intended search based on additional input.
6 . The method of claim 1 , further comprising:
determining a number of sub-sessions.
7 . The method of claim 1 , wherein grouping one or more of the plurality of searches into a search session comprises grouping the consecutive searches into the search session if the time is below a threshold.
8 . The method of claim 1 , further comprising at least one:
determining a search session duration; and
determining a sub-session duration.
9 . The method of claim 1 , further comprising:
determining a similarity of the searches in the search session.
10 . The method of claim 9 , wherein grouping searches into a sub-session comprises grouping searches into the sub-session based on the similarly.
11 . The method of claim 1 , further comprising:
categorising the plurality of searches; and
filtering the plurality of searches based on the categories.
12 . The method of claim 1 , wherein the COSR comprises content which a user selected after inputting the respective search and receiving a content recommendation.
13 . The method of claim 1 , wherein categorizing comprises categorizing each search in the sub-session into one of a plurality of predefined confidence levels based on the determined similarity.
14 . The method of claim 1 , further comprising:
generating a search repository for each search within the sub-session, storing an association between each search and the determined intended search of the sub-session in a look-up table; and
in response to receiving a new search subsequent to generating the search repository:
looking up the new search in the search repository to determine if the new search corresponds to a search in the look-up table; and
when the new search corresponds to a search in the look-up table, retrieving the corresponding intended search from the repository, thereby bypassing the step of determining a similarity for the new search.
15 . A method of processing searches input into a content recommendation engine (CRE), the CRE adapted to receive searches and provide one or more content recommendations based on the received searches for a user of a content distribution system having a plurality of users, the method comprising:
determining a similarity of each search of a plurality of searches, wherein searches in the search session with a similarity scores higher than a pre-set threshold are grouped together in a same sub-session;
determining a similarity of searches in the sub-session, wherein determining the similarly of searches comprises comparing searches in the sub-session to at least one parameter, wherein the parameter comprises learn actions, and wherein the learn actions comprise clicked-on search results (COSR), each COSR indicating that a particular content item was selected for viewing;
categorizing each search in the sub-session based on the determined similarity; and
mapping each search of the plurality of searches to an intended search based on the determined similarity.
16 . The method of claim 15 , further comprising:
generating a search repository of the mapped searches.
17 . The method of claim 16 , wherein generating the search repository comprises generating the search repository of mapped searches exceeding a threshold similarity.
18 . The method of claim 15 , further comprising:
determining an intended search of a new search based on the search repository.
19 . A non-transitory computer-readable medium having computer program code stored thereon, the program code executable by a processor to perform the method of any preceding claim .