Object recommendation method and device, electronic device, and storage medium
By calculating the similarity and popularity statistics of objects, the accuracy and diversity problems of existing recommendation algorithms in the case of sparse data are solved, and the dynamic changes and accuracy of recommendation results are realized.
Patent Information
- Application Number
- CN202110852997.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-07-27
- Publication Date
- 2026-01-27
- Estimated Expiration
- 2041-07-27
AI Technical Summary
Existing recommendation algorithms cannot guarantee the accuracy of recommendation results when data is sparse, are not user-friendly for new users, and lack diversity in recommendation results, failing to change over time.
By determining the similarity between the first object and the object to be recommended, and combining the information on the distribution of the object's popularity in the time domain, a popularity statistic is calculated, including the expected value and standard deviation of popularity. A weighted calculation is then performed to determine whether to recommend the object to the target user.
It improves the accuracy and diversity of recommendation results, enabling the recommended objects to change dynamically over time, conforming to the user's historical operation preferences and the changing patterns of object popularity.
Smart Images

Figure CN115687743B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of Internet technology, and in particular to a method and apparatus for recommending objects, an electronic device, and a storage medium. Background Technology
[0002] In the context of the rapidly growing volume of internet data, personalized recommendation algorithms are often needed to filter data and present information that users may be interested in. Among existing recommendation algorithms, collaborative filtering is a commonly used one. For example, in shopping apps, after browsing a user's purchase history, the differences between products are calculated based on the user's actions such as favorites, purchases, and ratings. Products that have received high ratings from the same group of users are considered to have high similarity. Finally, other products with high similarity to the purchased products are identified and recommended to the user.
[0003] However, existing recommendation algorithms have certain limitations. When data is sparse in applications, they cannot guarantee the accuracy of recommendation results, are not user-friendly for new users, and the recommendation results are relatively fixed and cannot change over time, resulting in a lack of diversity in the recommendation results. Summary of the Invention
[0004] In view of this, the present invention provides an object recommendation method and apparatus, electronic device and storage medium, which aims to solve the technical problems of poor recommendation diversity caused by the inability of recommendation results to change over time, or poor recommendation accuracy caused by sparse historical data.
[0005] The technical solution of this invention is implemented as follows:
[0006] In a first aspect, the present invention provides an object recommendation method, comprising:
[0007] Determine the similarity between the first attribute value of the first object and the second attribute value of the second object to be recommended, wherein the first object is: the object targeted by the target user's historical operation behavior;
[0008] Based on the distribution information of the popularity of the second object in the time domain, determine the popularity statistics of the second object in the current time period;
[0009] Based on similarity and popularity statistics, determine whether to recommend a second object to the target user.
[0010] Furthermore, the statistical values of popularity include: expected popularity value and standard deviation of popularity;
[0011] The step of determining the popularity statistics of the second object in the current time period based on the distribution information of the popularity of the second object in the time domain includes:
[0012] Based on the second attribute values of the second object at multiple times within the current time period, determine the popularity of the second object at multiple times within the current time period;
[0013] Based on the popularity of the second object at multiple moments within the current time period, determine the expected popularity value of the second object in the current time period;
[0014] Based on the popularity and expected popularity value, determine the standard deviation of the popularity of the second object in the current time period.
[0015] Furthermore, the similarity includes: first similarity and second similarity;
[0016] Determine the similarity between the first attribute value of the first object and the second attribute value of the second object to be recommended, including:
[0017] Based on the current time period in which the current time is located, determine the historical time corresponding to the current time among multiple historical time periods;
[0018] Based on the first attribute value of the first object at the current time and the second attribute value of the second object to be recommended at the current time, determine the first similarity between the first attribute value and the second attribute value;
[0019] A second similarity is determined between the first attribute value and the second attribute value based on the first attribute value of the first object at multiple historical moments and the second attribute value of the second object at multiple historical moments.
[0020] Furthermore, determining whether to recommend a second object to the target user based on similarity and popularity statistics includes:
[0021] The expected value of popularity is used as the weight of the first similarity, and the standard deviation of popularity is used as the weight of the second similarity. The first and second similarities are weighted and calculated to obtain the target similarity between the first attribute value and the second attribute value.
[0022] Based on the similarity to the target, determine whether to recommend a second object to the target user.
[0023] Furthermore, determining whether to recommend a second object to the target user based on target similarity includes:
[0024] Based on the target similarity, determine the first score of the second object at the current time;
[0025] Based on the historical scores of the second object at multiple historical moments, determine the second score of the second object at the current moment;
[0026] Based on the first and second ratings, determine whether to recommend the second object to the target user.
[0027] Furthermore, determining the first score of the second object at the current time based on the target similarity includes:
[0028] Determine the target similarity between the first attribute values of multiple first objects and the second attribute values of multiple second objects;
[0029] Obtain user ratings from the target user for multiple first objects;
[0030] Based on the similarity of multiple targets and the user ratings of multiple first objects, the first rating of the second object at the current moment is determined.
[0031] Further, determining the second score of the second object at the current moment based on its historical scores at multiple historical moments includes:
[0032] Obtain multiple historical scores for the second object at multiple historical moments;
[0033] Calculate the average of multiple historical ratings;
[0034] Based on the average value and the popularity of the second object at each moment within the current time period, determine the second score of the second object at the current moment.
[0035] Furthermore, determining whether to recommend a second object to the target user based on the first and second ratings includes:
[0036] Between the first and second ratings of the second object, the higher rating is selected as the recommended rating for the second object;
[0037] Based on the recommendation rating, determine whether to recommend a second target to the target user.
[0038] Furthermore, both the first and second attribute values include at least one of the following: number of clicks, number of favorites, and number of purchases.
[0039] In a second aspect, the present invention provides an object recommendation device, comprising:
[0040] The determining unit is used to determine the similarity between the first attribute value of the first object and the second attribute value of the second object to be recommended, wherein the first object is the object targeted by the target user's historical operation behavior; and the unit determines the popularity statistics of the second object in the current time period based on the distribution information of the popularity of the second object in the time domain.
[0041] The recommendation unit is used to determine whether to recommend a second object to the target user based on similarity and popularity statistics.
[0042] Thirdly, the present invention provides an electronic device, the electronic device comprising: a processor and a memory for storing a computer program capable of running on the processor;
[0043] When the processor runs the computer program, it performs the steps of the method described in one or more of the foregoing technical solutions.
[0044] Fourthly, the present invention provides a computer-readable storage medium storing computer-executable instructions; the computer-executable instructions, when executed by a processor, are capable of implementing the methods described in one or more of the foregoing technical solutions.
[0045] The object recommendation method provided by this invention includes: determining the similarity between a first attribute value of a first object and a second attribute value of a second object to be recommended, wherein the first object is an object targeted by the target user's historical operational behavior; determining the popularity statistics of the second object in the current time period based on the distribution information of the popularity of the second object in the time domain; and determining whether to recommend the second object to the target user based on the similarity and the popularity statistics. Thus, by selecting objects to be recommended based on popularity statistics that characterize the change in popularity of the object to be recommended over time, the method greatly improves the consistency between the objects recommended to the user and the actual changes in popularity, enabling the objects recommended to the user to dynamically change with time and popularity, resulting in higher accuracy and diversity in the recommendation results. Attached Figure Description
[0046] Figure 1 A flowchart illustrating the object recommendation method provided in an embodiment of the present invention;
[0047] Figure 2 A flowchart illustrating the object recommendation method provided in an embodiment of the present invention;
[0048] Figure 3 A flowchart illustrating the object recommendation method provided in an embodiment of the present invention;
[0049] Figure 4 A flowchart illustrating the object recommendation method provided in an embodiment of the present invention;
[0050] Figure 5 A flowchart illustrating the object recommendation method provided in an embodiment of the present invention;
[0051] Figure 6 A flowchart illustrating the object recommendation method provided in an embodiment of the present invention;
[0052] Figure 7 A flowchart illustrating the object recommendation method provided in an embodiment of the present invention;
[0053] Figure 8A flowchart illustrating the object recommendation method provided in an embodiment of the present invention;
[0054] Figure 9 A schematic diagram of the object recommendation device provided in an embodiment of the present invention;
[0055] Figure 10 This is a flowchart illustrating the object recommendation method provided in an embodiment of the present invention. Detailed Implementation
[0056] To make the objectives, technical solutions, and advantages of the present invention clearer, the present invention will be further described in detail below with reference to the accompanying drawings. The described embodiments should not be regarded as limitations on the present invention. All other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0057] In the following description, references are made to “some embodiments,” which describe a subset of all possible embodiments. However, it is understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.
[0058] In the following description, the terms "first, second, third" are used merely to distinguish similar objects and do not represent a specific ordering of objects. It is understood that "first, second, third" may be interchanged in a specific order or sequence where permitted, so that the embodiments of the invention described herein can be implemented in an order other than that illustrated or described herein.
[0059] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains. The terminology used herein is for the purpose of describing embodiments of the invention only and is not intended to limit the invention.
[0060] like Figure 1 As shown, this embodiment of the invention provides an object recommendation method, characterized in that the method includes:
[0061] S110: Determine the similarity between the first attribute value of the first object and the second attribute value of the second object to be recommended, wherein the first object is: the object targeted by the target user's historical operation behavior;
[0062] S120: Based on the distribution information of the heat of the second object in the time domain, determine the heat statistics of the second object in the current time period;
[0063] S130: Based on the similarity and the popularity statistics, determine whether to recommend the second object to the target user.
[0064] In this embodiment of the invention, the object recommendation method can be applied to various platforms with information recommendation needs, such as shopping applications, information reading applications, multimedia information viewing applications, or service subscription applications. The object can be a product, text, image, or audio / video data. The first object can be an object that the target user has previously purchased, or an object targeted by the target user's historical favorites, follows, downloads, or other historical operations.
[0065] The first attribute value represents the popularity or level of attention of the first object in a certain dimension. For example, if the first object is a product in a shopping application, the first attribute value could be historical data such as the number of times the product was purchased, favorited, or followed in the application on that day. Correspondingly, the second attribute value is the attribute value of the second object in the dimension corresponding to the first attribute value.
[0066] Popularity can characterize the degree of popularity or attention an object receives. It can be determined based on the object's attribute values at a given time, or on parameters such as user ratings or historical operation statistics. For example, popularity can be determined based on historical operation data such as the total number of purchases and favorites within the application. Popularity is directly proportional to the total number of purchases and favorites; the more purchases and favorites (indicating user attention), the higher the object's popularity and the greater its level of attention.
[0067] The current time period can be determined by setting the corresponding heat cycle based on the object's attributes, thereby determining the current cycle in which the current moment belongs. For example, based on the heat change pattern of air conditioners, which are hotter in winter and summer, their heat cycle can be preset to six months. Then, the current time period can be divided into six-month cycles starting from the heat start time of the air conditioner, and the current cycle in which the current moment belongs.
[0068] In one embodiment, the second object to be recommended can also be recommended at a future time, rather than the current time; that is, the object to be recommended at the time of recommendation needs to be predicted. Therefore, the popularity statistics of the second object within the recommended time period can be determined based on the temporal distribution of its popularity. Here, the recommended time period can be the recommended period corresponding to the time of recommendation, determined by the popularity cycle of the object. For example, based on the popularity pattern of mooncakes, which are highly popular during the Mid-Autumn Festival each year, the popularity cycle can be preset to one year; thus, the recommended time period is the year corresponding to the time of recommendation. The popularity statistics are used to quantitatively characterize the distribution of popularity within a certain time period.
[0069] In another embodiment, after determining the similarity and the popularity statistics of the second object, it is possible to determine whether to recommend the second object based on whether the similarity and popularity statistics of the second object reach a certain threshold. Alternatively, the similarity and popularity statistics of the second object can be integrated and calculated, and it is possible to determine whether to recommend the second object based on whether the calculation result reaches a certain threshold.
[0070] Understandably, after determining the similarity and popularity statistics of the second object, it is also possible to compare the similarity and popularity statistics of multiple second objects and select one or more objects to recommend to the target user.
[0071] In another embodiment, multiple recommendation times can be predicted for a second object, and one or more times can be selected from the multiple recommendation times to recommend the second object based on the similarity and popularity statistics of the second object corresponding to each recommendation time.
[0072] Therefore, when recommending products and other objects to users on an application platform, by considering the similarity between the first object of the user's historical operations and the second object to be recommended, and combining this with the changes in the popularity of the object to be recommended, the dimensions involved in the selection criteria for the object to be recommended can be greatly enriched. Based on this, the objects recommended to users have the characteristic of dynamically changing popularity over time, so that the objects recommended to the target users not only conform to the user's historical operation preferences, but also conform to the changing patterns of object popularity in the time domain, effectively improving the accuracy and diversity of recommendation results.
[0073] In some embodiments, such as Figure 2 As shown, the popularity statistics include: expected popularity value and standard deviation of popularity;
[0074] S120 includes:
[0075] S121: Determine the popularity of the second object at multiple moments within the current time period based on the second attribute values of the second object at multiple moments within the current time period;
[0076] S122: Determine the expected value of the second object's popularity in the current time period based on the popularity of the second object at multiple moments within the current time period;
[0077] S123: Determine the standard deviation of the heat of the second object in the current time period based on the heat and the expected heat value.
[0078] In this embodiment of the invention, it is necessary to combine the popularity of the second object at multiple moments, that is, the distribution of the popularity of the second object in the current time period, to determine the statistical value of the popularity of the second object in the current time period. Here, the number of moments in the current time period can be selected according to the length of time covered by the current time period. For example, if the current time period is one year, then 24:00 on the last day of each month can be selected as the moment, that is, there are 12 moments in the current time period. The popularity of the second object at each moment can be determined according to the second attribute value of the second object at that moment. For example, multiple second attribute values corresponding to multiple dimensions are obtained, and the popularity of the second object is calculated according to the multiple second attribute values according to a preset strategy. Here, the preset strategy can be to perform a weighted summation calculation on multiple second attribute values according to the weight corresponding to the dimension where each preset second attribute value is located.
[0079] In one embodiment, for a first object a and a second object b to be recommended, the current time period contains T moments, where the popularity of the second object b at moment t is determined as b. t Therefore, the expected heat value E(b) of the second object b in the current time period can be determined as:
[0080] In another embodiment, the heat of the second object b at time t is b t And the corresponding expected heat value E(b), can determine the corresponding standard deviation of heat σ. b for:
[0081] Thus, determining the popularity of a second object based on its attribute values allows for a more precise combination of attribute features across multiple dimensions. Consequently, the resulting popularity statistics can more comprehensively and accurately characterize the changes in the popularity of the second object over time, facilitating a better analysis of its current popularity and a better prediction of its popularity at a future time.
[0082] In some embodiments, such as Figure 3 As shown, the similarity includes: a first similarity and a second similarity;
[0083] S110 includes:
[0084] S111: Based on the current time period in which the current time is located, determine the historical time corresponding to the current time among multiple historical time periods;
[0085] S112: Determine a first similarity between the first attribute value and the second attribute value based on the first attribute value of the first object at the current time and the second attribute value of the second object to be recommended at the current time;
[0086] S113: Determine a second similarity between the first attribute value and the second attribute value based on the first attribute value of the first object at multiple historical moments and the second attribute value of the second object at multiple historical moments.
[0087] In this embodiment of the invention, after presetting the popularity cycle of the second object according to the attribute characteristics of the second object, the historical moment corresponding to the current period in each historical period is determined according to the current period in which the current moment is located. For example, when the second object is a mooncake product, the preset popularity cycle is one year. If the current moment is January 1, 2021, then the historical moments corresponding to multiple historical periods are January 1, 2020, January 1, 2019, and so on.
[0088] It is understandable that if the time to be recommended is some time in the future, then the historical time corresponding to the time to be recommended can be determined from multiple historical periods based on the period in which the time to be recommended is located.
[0089] In one embodiment, for the first object a and the second object b at the current moment, n attribute values corresponding to a and b in n dimensions are determined respectively, i.e., a i Let b represent the first attribute value of object a in the i-th dimension. i This represents the second attribute value of the second object b in the i-th dimension. Determine the first similarity.
[0090]
[0091] In another embodiment, considering the sparsity of the data, multiple first attribute values and second attribute values from the current and historical times are combined to jointly determine the second similarity between the first attribute value of 'a' and the second attribute value of 'b' over multiple time periods. If the preset popularity period is T0, for the first object 'a', there are k historical times corresponding to the current time 't', i.e., the historical times are t-T0×k (k=1, 2...k0). At the current time 't', the first attribute value of 'a' in the j-th dimension is 'a'. j At the historical moment t-T0 corresponding to the previous historical period of the current period, the first attribute value of a in the j-th dimension is a. j1 ...At the historical moment t-T0×k0 corresponding to the k0 historical periods before the current period, the first attribute value of a in the j-th dimension is a. jk0 And so on. Based on this, the sum of the first attribute values corresponding to a in the j-th dimension. for:
[0092] Based on the same logic, we can determine the sum of the first attribute values corresponding to b in the j-th dimension. for: Combination Know The number of dimensions (m) determines the second similarity.
[0093] Thus, the first similarity represents the similarity between the first attribute value of object a and the second attribute value of object b at the current moment, while the second similarity represents the similarity between the first and second attribute values at the current moment and all historical moments. Therefore, by overlaying data from corresponding moments across all historical periods, the impact of sparse attribute value data on low similarity recommendation accuracy is effectively reduced, resulting in a more comprehensive and accurate similarity calculation. Furthermore, considering that data from multiple historical moments better reflects the overall historical variation patterns of attribute values, errors in similarity calculation caused by occasional attribute value changes at the current moment can be effectively reduced.
[0094] In some embodiments, such as Figure 4 As shown, S130 includes:
[0095] S131: The expected value of popularity is used as the weight of the first similarity, and the standard deviation of popularity is used as the weight of the second similarity. The first similarity and the second similarity are weighted and calculated to obtain the target similarity between the first attribute value and the second attribute value.
[0096] S132: Based on the target similarity, determine whether to recommend the second object to the target user.
[0097] In this embodiment of the invention, since different objects are affected by time factors differently, and the popularity of different objects changes differently over time, the first similarity and the second similarity are weighted and summed using the expected popularity value and standard deviation of the second object in the current time period, respectively.
[0098] In one embodiment, based on the first similarity SIM(a, b) and its weight, i.e., the expected heat value E(b), and the second similarity SIM T (a, b) and their weights, i.e., the standard deviation of heat σ b The target similarity (a, b) is jointly determined as: Similarity(a, b) = E(b) × SIM(a, b) + σ b ×SIM T (a, b).
[0099] In another embodiment, since the target similarity calculated above may be greater than 1, in order to unify the value range of the target similarity to [0, 1], the target similarity can be normalized. The normalization process can be based on a target similarity result set formed by the target similarity between multiple first objects and at least one second object, and in this target similarity result set, the maximum target similarity value SIM is determined. max and minimum value SIM min This allows for the determination of the target similarity SIM after normalization. N (a, b) is:
[0100] In this way, by superimposing the attribute values of the first and second objects at historical moments and combining them with the popularity distribution of the second attribute value in the current time period, the calculated target similarity can reflect the object attribute values in multiple popularity cycles and conform to the popularity of the second object over time. This greatly improves the correlation between similarity and the time domain, thereby improving the accuracy of object recommendation results.
[0101] In some embodiments, such as Figure 5 As shown, S132 includes:
[0102] S1321: Determine the first score of the second object at the current time based on the target similarity;
[0103] S1322: Determine the second score of the second object at the current moment based on the historical scores of the second object at multiple historical moments;
[0104] S1323: Based on the first rating and the second rating, determine whether to recommend the second object to the target user.
[0105] In this embodiment of the invention, after determining the target similarity between the second object to be recommended and the first object, the target user's rating for the second object, i.e., the first rating, can be predicted by combining the user ratings generated by the target user for the first object based on historical operations, and the target similarity. Optionally, the target user's rating for the second object can also be predicted by combining the target similarity with other users' historical ratings for the first object.
[0106] In one embodiment, a first rating is determined based on the target user's user ratings of multiple first objects and the target similarity, and then a second rating of the second object at the current moment is determined based on the overall ratings of the second object obtained in the application at multiple historical moments.
[0107] After obtaining the first and second scores, a strategy can be used to determine whether to recommend the second object. For example, the first and second scores can be weighted according to preset weights, and the recommendation can be determined based on whether the calculated value reaches a certain threshold. Alternatively, the higher score between the first and second scores can be selected for the second object, and the recommendation can be based on whether the score value reaches a certain threshold. Or, one or more objects can be selected for recommendation based on the ranking of the score values of multiple second objects.
[0108] Thus, the first score can characterize the similarity between the second and first objects, while the second score can characterize the overall score of the second object at a corresponding point in the historical period. Therefore, combining the first and second scores ensures that the final recommended objects conform to both the user's historical preferences and the overall score of objects to be recommended in the application, effectively improving the accuracy of the recommendation results.
[0109] In some embodiments, such as Figure 6 As shown, S1321 includes:
[0110] S1321a: Determine the target similarity between the first attribute values of a plurality of the first objects and the second attribute values of the second objects respectively;
[0111] S1321b: Obtain the user ratings of the target user for each of the first objects;
[0112] S1321c: Based on multiple target similarities and multiple user ratings of the first object, determine the first rating of the second object at the current time.
[0113] In this embodiment of the invention, a first set of objects targeted by the target user's historical operations is determined, which includes multiple first objects. For example, the first set U of objects purchased by the target user includes multiple first objects u that have been purchased in the past. The target similarity SIM between each first object u and the second object v to be recommended is determined. N (u, v).
[0114] In one embodiment, multiple user ratings r corresponding to multiple first objects u are determined respectively. u For example, the ratings given by target users to the first object after they have previously purchased it. This is combined with user ratings r from multiple first objects u in the first object set U. u And the target similarity SIM between each first object u and the second object v N (u, v), determine the first score of the second object as:
[0115] In this way, the first rating can better represent the degree of conformity between the second object and the target user's historical purchase preferences based on the similarity between the second object and multiple first objects purchased by the target user, which is more conducive to the screening and recommendation of the second object.
[0116] In some embodiments, such as Figure 7 As shown, S1322 includes:
[0117] S1322a: Obtain multiple historical scores corresponding to the second object at multiple historical moments;
[0118] S1322b: Calculate the average of the multiple historical scores;
[0119] S1323c: Determine the second rating of the second object at the current time based on the average value and the popularity of the second object at each moment within the current time period.
[0120] In this embodiment of the invention, the historical rating represents the overall rating of the second object by all users within the application at a given moment. For example, in a shopping application, the historical rating can be the average of the ratings obtained by all users for the second object.
[0121] In one embodiment, the historical score of the second object at the current time t and the historical scores of the second object at multiple corresponding historical times t-T0×k are obtained, and then the average of the above multiple historical scores is calculated. This is to characterize the overall ratings obtained by the second object over the entire time period.
[0122] In another embodiment, based on the popularity of the second object at each moment within the current time period, the number of moments within the current time period whose popularity is less than or equal to the popularity at the current moment is determined, and the proportion of this number to the total number of moments within the current time period, Precent(v), is calculated. This is combined with the average of historical ratings. The second score of the second object at the current time is calculated as follows:
[0123] Thus, based on the overall rating of the second object and its overall popularity in the current time period, the determined second rating can fully represent the predicted rating of the second object at the current moment, and the second rating is not affected by the target user's historical operation data. Therefore, even if the target user is a new user, the second rating can still be determined objectively and accurately.
[0124] In some embodiments, such as Figure 8 As shown, S1323 includes:
[0125] S1323a: Select the higher score as the recommended score for the second object from the first score and the second score of the second object;
[0126] S1323b: Based on the recommendation score, determine whether to recommend the second object to the target user.
[0127] In this embodiment of the invention, the higher score between the first and second scores of the second object can be selected as the recommended score for the second object. Based on the recommended scores, one or more objects with the highest recommended scores among multiple second objects are determined and recommended to the target user.
[0128] In one embodiment, a Top-N recommendation system can be used to recommend a recommendation list of length N to the target user based on the recommendation ratings of multiple second objects. The recommendation list contains N second objects, and the N second objects are sorted in order of recommendation rating from high to low or from low to high.
[0129] In another embodiment, it is also possible to determine whether to recommend the second object to the target user based on whether the higher of the first and second ratings of the second object reaches a preset rating threshold. For example, if the value range of both the first and second ratings is [0, 1], then the preset rating threshold can be 0.8.
[0130] In another embodiment, for a second object, a recommendation score for the second object can be determined based on one or more of the aforementioned technical solutions for the current time and / or at least one future time to be recommended. Based on the recommendation score of the second object corresponding to each time to be recommended, one or more times to be recommended with the highest recommendation score are selected, and the second object is recommended at those times. In this way, the recommendation score of the second object in future times can be predicted, the optimal time to recommend the second object can be determined in advance, and the recommendation strategy to the target user can be further optimized.
[0131] Therefore, selecting the higher of the first and second ratings as the overall recommendation standard for the second object can prevent the two ratings for each second object from hindering comparison and selection, and can prioritize the second object with the higher overall recommendation.
[0132] In some embodiments, both the first attribute value and the second attribute value include at least one of: number of clicks, number of favorites, and number of purchases.
[0133] In this embodiment of the invention, the first attribute value and the second attribute value are attribute values of the same dimension, which is beneficial for similarity calculation. The final target similarity and the first score can more objectively and accurately represent the degree of similarity between the first object and the second object.
[0134] In one embodiment, the first attribute value and the second attribute value include, but are not limited to, the attribute values described above, and may also include attribute values of various other dimensions such as downloads, followers, and page views.
[0135] like Figure 9 As shown, an embodiment of the present invention provides an object recommendation device, comprising:
[0136] The determining unit 10 is used to determine the similarity between the first attribute value of the first object and the second attribute value of the second object to be recommended, wherein the first object is: the object targeted by the target user's historical operation behavior; and to determine the popularity statistics of the second object in the current time period based on the distribution information of the popularity of the second object in the time domain.
[0137] The recommendation unit 20 is used to determine whether to recommend the second object to the target user based on the similarity and the popularity statistics.
[0138] The following provides a specific example in conjunction with any of the above embodiments:
[0139] This embodiment provides a product recommendation method, such as... Figure 10 As shown, it includes:
[0140] 1. Similarity Algorithm
[0141] Different products have different cycles. For example, clothing products can be divided into categories with obvious seasonality, such as summer clothes, autumn clothes, and winter clothes. Although products with obvious festival labels, such as zongzi (sticky rice dumplings) and mooncakes, are not necessities, their sales are greatly affected by the corresponding festivals. Products such as peaches and hairy crabs are only available in specific seasons, which is determined by the product's own attributes, but these products also have a certain cycle.
[0142] Cosine similarity is a common similarity algorithm. The principle of the original algorithm is shown in formula (1):
[0143]
[0144] Where SIM(a,b) represents the first similarity between product a and product b, n is the number of attribute dimensions of the product, and a i and b i These refer to the values of product a and product b in the i-th dimension, respectively.
[0145] The initial similarity between two products is calculated based on various product attributes. Before calculating the purchase time attribute, the data needs to be processed accordingly: Let T be the product's popularity cycle, and let a and b's values in the j-th dimension be a... j and bj The corresponding second similarity is shown in formula (2):
[0146]
[0147] Considering the sparsity of the data, in similarity calculation, data from corresponding time points in historical periods can be superimposed. Taking 'a' as an example, let its sum of values at all time points jT×k (k=0,1,2...) be... but and The value is given in formulas (3) and (4):
[0148]
[0149]
[0150] The corresponding second similarity is shown in formula (5):
[0151]
[0152] Since products are affected by time factors to varying degrees, and the popularity of some products is not significantly affected by time changes, it is necessary to perform a weighted summation of the original similarity algorithm and the similarity algorithm improved for product time attributes to improve the calculation accuracy for such products, thus deriving the target similarity formula (6):
[0153] Similarity(a,b)=E(b)×SIM(a,b)+σ b ×SIM T (a, b) (6)
[0154] In the above formula, σ b It is the standard deviation of the popularity of product b within period T, used to measure the extent to which product b is affected by the time factor; in order to more conveniently display the algorithm results, the expected value E(b) of product b is introduced. Product a is the product that the user has purchased, so product b is used in the selection of expected value and standard deviation.
[0155] If the heat of product b at time point t within the cycle is b t If there are a total of T time points in the cycle, then the expected value of the popularity of product b in the cycle, E(b), can be obtained by formula (7):
[0156]
[0157] The standard deviation of the popularity of product b during the period σ b The value can be obtained through formula (8):
[0158]
[0159] According to the above formula, the original formula's similarity result range is [0, 1]. The improved similarity result range will have cases greater than 1. Therefore, in practical applications, the calculation results can be normalized: in the similarity calculation result set, let the value of the maximum similarity be SIM. max The value with the lowest similarity is SIM. min The current target similarity value is Similarity(a, b), which is the similarity calculation result in Formula 6. The similarity result after normalization is shown in Formula (9):
[0160]
[0161] After processing by formula (9), the similarity result range of all products is [0, 1], which can be directly applied to recommendation algorithms.
[0162] 2. Recommendation Algorithm
[0163] To improve the recall of recommendation results, the Top-N recommendation method can be used: recommend multiple products to users for them to choose from, the recommendation list has a length of N, and the products in the list are sorted in descending order of their predicted rating values.
[0164] Let v be a single product in the product set V that a user might like, u be a single product in the product set U that a user rates, and r be the rating for u. u The similarity between u and v is SIM. N (u,v), SIM here N (u,v) represents the calculation result in formula (9), which can consider the similarity of product time effects according to certain weights. In summary, the user's rating of product v is shown in formula (10):
[0165]
[0166] Besides these recommended products, some products will have high popularity at the time of recommendation. For these products, the impact of individual user ratings on their recommendation score should be reduced. Therefore, their recommendation score should be as shown in formula (11):
[0167]
[0168] In formula (11) Percent(v) is the average score obtained by product v at time point t in all periods. It refers to the ratio of the number of time points in which the popularity of product v is less than or equal to the current popularity to the total number of time points in the period, and its value range is (0, 1).
[0169] After calculating the product rating, sort the two rating lists from highest to lowest according to the predicted rating values, and then make Top-N recommendations to users.
[0170] This invention also provides an electronic device, which includes a processor and a memory for storing a computer program that can run on the processor. When the processor runs the computer program, it performs the steps of the methods described in one or more of the foregoing technical solutions.
[0171] This invention also provides a computer-readable storage medium storing computer-executable instructions. When executed by a processor, the computer-executable instructions can implement the methods described in one or more of the foregoing technical solutions.
[0172] The computer storage medium provided in this embodiment may be a non-instantaneous storage medium.
[0173] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. The device embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods, such as: multiple units or components can be combined, or integrated into another system, or some features can be ignored or not executed. In addition, the coupling, direct coupling, or communication connection between the various components shown or discussed can be through some interfaces, and the indirect coupling or communication connection between devices or units can be electrical, mechanical, or other forms.
[0174] The units described above as separate components may or may not be physically separate. The components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of the units may be selected to achieve the purpose of this embodiment according to actual needs.
[0175] In addition, in the various embodiments of the present invention, each functional unit can be integrated into one processing module, or each unit can be a separate unit, or two or more units can be integrated into one unit; the integrated unit can be implemented in hardware or in the form of hardware plus software functional units.
[0176] In some cases, where any two of the above technical features do not conflict, they can be combined to form a new method or technical solution.
[0177] In some cases, where any one or two of the above technical features do not conflict, they can be combined to form a new equipment technical solution.
[0178] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0179] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.
Claims
1. An object recommendation method, characterized in that, The method includes: The similarity between the first attribute value of a first object and the second attribute value of a second object to be recommended is determined, wherein the first object is the object targeted by the target user's historical operation behavior; the similarity includes: a first similarity and a second similarity; the first similarity represents the similarity between the first attribute value of the first object and the second attribute value of the second object at the current moment, and the second similarity represents the similarity between the first attribute value of the first object and the second attribute value of the second object at a historical moment; Based on the distribution information of the popularity of the second object in the time domain, determine the popularity statistics of the second object in the current time period; Based on the similarity and the popularity statistics, determine whether to recommend the second object to the target user; The heat statistics include: expected heat value and standard deviation of heat value; The step of determining the popularity statistics of the second object in the current time period based on the distribution information of the popularity of the second object in the time domain includes: Based on the second attribute values of the second object at multiple times within the current time period, determine the popularity of the second object at multiple times within the current time period; Based on the popularity of the second object at multiple moments within the current time period, determine the expected popularity value of the second object in the current time period; Based on the heat level and the expected heat level, determine the standard deviation of the heat level of the second object in the current time period.
2. The method according to claim 1, characterized in that, Determining the similarity between the first attribute value of the first object and the second attribute value of the second object to be recommended includes: Based on the current time period in which the current time is located, determine the historical time corresponding to the current time among multiple historical time periods; Based on the first attribute value of the first object at the current time and the second attribute value of the second object to be recommended at the current time, a first similarity between the first attribute value and the second attribute value is determined; A second similarity between the first attribute value and the second attribute value is determined based on the first attribute value of the first object at multiple historical moments and the second attribute value of the second object at multiple historical moments.
3. The method according to claim 2, characterized in that, The step of determining whether to recommend the second object to the target user based on the similarity and the popularity statistics includes: The expected value of popularity is used as the weight of the first similarity, and the standard deviation of popularity is used as the weight of the second similarity. The first similarity and the second similarity are weighted and calculated to obtain the target similarity between the first attribute value and the second attribute value. Based on the target similarity, determine whether to recommend the second object to the target user.
4. The method according to claim 3, characterized in that, The step of determining whether to recommend the second object to the target user based on the target similarity includes: Based on the target similarity, determine the first score of the second object at the current time; Based on the historical scores of the second object at multiple historical moments, determine the second score of the second object at the current moment; Based on the first rating and the second rating, determine whether to recommend the second object to the target user.
5. The method according to claim 4, characterized in that, Determining the first score of the second object at the current time based on the target similarity includes: Determine the target similarity between the first attribute values of multiple first objects and the second attribute values of the second objects respectively; Obtain the user ratings of the target user for multiple first objects; Based on multiple target similarities and multiple user ratings of the first object, a first rating of the second object at the current time is determined.
6. The method according to claim 4, characterized in that, Determining the second score of the second object at the current moment based on the historical scores of the second object at multiple historical moments includes: Obtain multiple historical scores for the second object at multiple historical moments; Calculate the average of the multiple historical scores; Based on the average value and the popularity of the second object at each moment within the current time period, a second score for the second object at the current moment is determined.
7. The method according to any one of claims 4 to 6, characterized in that, The step of determining whether to recommend the second object to the target user based on the first rating and the second rating includes: Between the first and second ratings of the second object, the higher rating is selected as the recommended rating for the second object; Based on the recommendation rating, determine whether to recommend the second object to the target user.
8. The method according to claim 1, characterized in that, Both the first attribute value and the second attribute value include at least one of the following: number of clicks, number of favorites, and number of purchases.
9. An object recommendation device, characterized in that, The device includes: A determining unit is configured to determine the similarity between a first attribute value of a first object and a second attribute value of a second object to be recommended, wherein the first object is an object targeted by the target user's historical operation behavior; the similarity includes a first similarity and a second similarity; the first similarity represents the similarity between the first attribute value of the first object and the second attribute value of the second object at the current moment, and the second similarity represents the similarity between the first attribute value of the first object and the second attribute value of the second object at a historical moment; and based on the distribution information of the popularity of the second object in the time domain, determine the popularity statistics of the second object in the current time period; The recommendation unit is used to determine whether to recommend the second object to the target user based on the similarity and the popularity statistics. The heat statistics include: expected heat value and standard deviation of heat value; The step of determining the popularity statistics of the second object in the current time period based on the distribution information of the popularity of the second object in the time domain includes: Based on the second attribute values of the second object at multiple times within the current time period, determine the popularity of the second object at multiple times within the current time period; Based on the popularity of the second object at multiple moments within the current time period, determine the expected popularity value of the second object in the current time period; Based on the heat level and the expected heat level, determine the standard deviation of the heat level of the second object in the current time period.
10. An electronic device, characterized in that, The electronic device includes: a processor and a memory for storing computer programs capable of running on the processor; wherein, When the processor runs the computer program, it performs the steps of the object recommendation method according to any one of claims 1 to 8.
11. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions; when executed by a processor, the computer-executable instructions can implement the object recommendation method as described in any one of claims 1 to 8.
Citation Information
Patent Citations
Recommendation method, recommendation device and mobile terminal
CN107295107A
Hybrid recommendation method integrating collaborative filtering and user attribute filtering
CN107391670A