A personalized cold start method, apparatus, equipment, and medium for recommending items.

By acquiring new item sets and user historical click behavior data, grouping and generating personalized and completely random item lists by category, the two-sided cold start problem of new users and new items in recommendation systems is solved, achieving better recommendation results.

CN114943584BActive Publication Date: 2025-10-31SHANGHAI 2345 NETWORK TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210568343.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-05-23
Publication Date
2025-10-31
Estimated Expiration
2042-05-23

AI Technical Summary

Technical Problem

Existing recommendation systems suffer from a two-sided cold start problem when dealing with new users and new items, resulting in poor recommendation performance.

Method used

By acquiring new item sets and user historical click behavior data, grouping and statistically analyzing user preferences, and combining category-specific personalized and completely random item lists, a comprehensive recommendation list is generated to solve the problem of recommending new items to new users.

Benefits of technology

This approach enables a comprehensive consideration of new item exploration and personalized recommendations in the context of new users and new items, thus solving the problem of cold start on both sides and improving recommendation effectiveness.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114943584B_ABST
    Figure CN114943584B_ABST
Patent Text Reader

Abstract

This application discloses a personalized cold start method and apparatus for recommending items. The method includes: acquiring a new set of items within a specified time period; acquiring a dataset of users' historical click behavior; grouping the new set of items according to item categories, placing items under different categories into their respective sets, and assembling them into a Map; statistically processing the user's click behavior dataset to obtain the number of actions for each user in each category, generating a user category preference dataset; preparing two recommendation lists for each user: a category-personalized item list and a completely random item list; merging the two lists calculated for each user and randomly shuffling them to obtain the user's final recommendation list; and recommending items to the user based on the recommendation list. This application comprehensively considers new item exploration strategies and personalization strategies, while simultaneously addressing two different recommendation objectives. Furthermore, this application also solves the problem of a two-sided cold start.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of network technology, and in particular to a method, apparatus, device, and medium for cold-starting personalized recommended items. Background Technology

[0002] The emergence and widespread adoption of the internet have brought users a massive amount of information, satisfying their information needs in the information age. However, with the dramatic increase in data volume, users are finding it increasingly difficult to quickly extract valuable information from this vast amount of data. To address this challenge, recommendation systems have emerged. These systems can recommend information and products that users are likely to be interested in based on their interests and behaviors.

[0003] New item exploration and personalized recommendations are the two main categories of recommendation retrieval algorithms. Most algorithms within these categories have a specific function, focusing on their respective objectives, such as exploring only new items or handling only personalized recommendations. Recommendation systems also suffer from a two-sided cold start problem, where randomly selected new items are recommended to new users, leading to poor recommendation performance.

[0004] Therefore, how to provide a more optimized recommendation scheme that can comprehensively consider new item exploration strategies and personalization strategies, while taking into account the two different recommendation objectives and solving the problem of cold start on both sides, so as to better serve users, has become an urgent problem to be solved. Summary of the Invention

[0005] The purpose of this invention is to provide a personalized cold start method, apparatus, device, and medium for recommending items, in order to solve the problems mentioned in the above-mentioned technical background.

[0006] To achieve the above objectives, the present invention adopts the following technical solution:

[0007] The first aspect of this application provides a personalized cold-start method for recommending items, including:

[0008] Retrieve a new set of items within a specified time period. The new set of items includes item IDs and item categories.

[0009] Obtain the user's historical click behavior dataset, which includes user ID, clicked item ID, and clicked item category;

[0010] The new item set is grouped according to item category, with items in different categories placed in their respective sets, and then assembled into a Map;

[0011] Statistical processing is performed on the user click behavior dataset to obtain the number of actions for each user in each category, generating a user category preference dataset.

[0012] Two recommendation lists are prepared for each user:

[0013] 1) Category-Personalized Item List: The user category preference dataset is associated with the Map. Two types of random sampling are performed. The first type is to sample with replacement a first preset number of times according to the user's category weight in the user category preference dataset to obtain the user's category sampling set. Then, according to each category in the category sampling set, a second preset number of random samples are taken from the item set of the corresponding category in the Map to obtain the user's category-personalized item list.

[0014] 2) Completely random item list: Perform a third preset number of random samplings on the new item set to obtain a completely random item list for the user;

[0015] The two lists calculated for each user are merged and then randomly shuffled to obtain the user's final recommendation list;

[0016] Based on the recommendation list, items are recommended to the user.

[0017] Preferably, the step of obtaining the user's historical click behavior dataset includes:

[0018] Based on the user's historical actions, determine the information the user clicked within a specified time period.

[0019] Preferably, the method further includes:

[0020] Retrieve popular items from one or more data sources to obtain the new item set.

[0021] Preferably, the number of items in each of the two recommendation lists is controlled by the final number of items recommended by each user and the degree of randomness.

[0022] Preferably, the first preset number of times is: int(rec_nums*(1-random_degree)) times, where rec_nums represents the final number of recommended items for each user, random_degree represents the degree of randomness, ranging from 0 to 1, and the int() function represents rounding down to the nearest integer.

[0023] Preferably, the second preset number of times is once.

[0024] Preferably, the third preset number of times is: int(rec_nums*random_degree) times, where rec_nums represents the final number of recommended items for each user, random_degree represents the degree of randomness, ranging from 0 to 1, and the int() function represents rounding down to the nearest integer.

[0025] The second aspect of this application provides a personalized cold start device for recommended items, comprising:

[0026] The new item set acquisition module is used to acquire a new item set within a specified time period. The new item set includes the item ID and the item category.

[0027] The user behavior dataset acquisition module retrieves the user's historical click behavior dataset, which includes the user ID, clicked item ID, and clicked item category.

[0028] The category grouping module is used to group new item sets according to item categories. Items under different categories are placed in their respective sets and assembled into a Map.

[0029] The statistical processing module is used to perform statistical processing on the user's click behavior dataset, obtain the number of actions of each user in each category, and generate a user category preference dataset;

[0030] The first recommendation list calculation module is used to associate the user category preference dataset with the Map and perform two types of random sampling. The first type is to sample with replacement a first preset number of times according to the user's category weight in the user category preference dataset to obtain the user's category sampling set. Then, according to each category in the category sampling set, a second preset number of random samples are taken from the item set of the corresponding category in the Map to obtain the user's category personalized item list.

[0031] The second recommendation list calculation module is used to perform a third preset number of random samplings on the new item set generated by the new item set acquisition module to obtain a completely random item list for the user.

[0032] The recommendation module is used to merge the personalized item list and the completely random item list, and then randomly shuffle them to obtain the user's final recommendation list, which is then recommended to the user.

[0033] Preferably, the new item set acquisition module obtains popular items from one or more data sources to obtain the new item set.

[0034] Preferably, the first preset number of times is: int(rec_nums*(1-random_degree)) times, where rec_nums represents the final number of recommended items for each user, random_degree represents the degree of randomness, ranging from 0 to 1, and the int() function represents rounding down to the nearest integer.

[0035] Preferably, the second preset number of times is once.

[0036] Preferably, the third preset number of times is: int(rec_nums*random_degree) times, where rec_nums represents the final number of recommended items for each user, random_degree represents the degree of randomness, ranging from 0 to 1, and the int() function represents rounding down to the nearest integer.

[0037] In the above content, when sampling by weight, the greater the weight, the higher the probability of being selected; sampling with replacement means that if a certain category is selected, it will still participate in the next sampling.

[0038] The third aspect of this application discloses a computing device, comprising:

[0039] Processor; and

[0040] A memory having executable code stored thereon, which, when executed by a processor, causes the processor to perform the method described in the first aspect of this application.

[0041] A fourth aspect of this application provides a computer-readable storage medium having executable code stored thereon, which, when executed by a processor of an electronic device, causes the processor to perform the method described in the first aspect of this application.

[0042] Compared with the prior art, the technical solution of the present invention has the following beneficial effects:

[0043] The recommendation method disclosed in this application comprehensively considers both new item exploration strategies and personalization strategies, simultaneously addressing two different recommendation objectives. Furthermore, the technical solution of this application also solves the problem of a two-sided cold start, avoiding the need to pre-prepare recommendation lists for new users and thus preventing the recommendation of new items. Attached Figure Description

[0044] The accompanying drawings, which constitute a part of this application, are used to provide a further understanding of this application. The illustrative embodiments and descriptions of this application are used to explain this application and do not constitute an undue limitation of this application. In the drawings:

[0045] Figure 1 The flowchart schematically illustrates a personalized cold start method for recommending items;

[0046] Figure 2 The schematic diagram illustrates the structure of a personalized recommended item cold start device;

[0047] Figure 3 The diagram illustrates the structure of a computing device. Detailed Implementation

[0048] To make the objectives, technical solutions, and effects of this invention clearer and more explicit, the invention will be further described in detail below with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.

[0049] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be used interchangeably where appropriate. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to these processes, methods, products, or apparatuses.

[0050] Example:

[0051] Figure 1 This is a flowchart illustrating a personalized cold start method for recommending items.

[0052] See Figure 1 As shown, a personalized cold start method for recommending items includes the following steps:

[0053] Step S1: Obtain the new item set W1 for the past N days. The new item set W1 includes item ID and item category (assuming there are K categories in total, such as entertainment, sports, health, international, games, etc. in the news recommendation field).

[0054] The following is an example of the data obtained:

[0055] Dataset W1:

[0056] Item ID Item Category item1 entertainment item2 game item3 entertainment … …

[0057] Step S2: Obtain the user's click behavior dataset U1 for the past N days. The user's click behavior dataset U1 includes the user ID, the clicked item ID, and the clicked item category.

[0058] The following is an example of the data obtained:

[0059] Dataset U1:

[0060] User ID Click on the item ID Click on the item category user1 item1 entertainment user1 item2 game user2 item3 physical education … … …

[0061] Step S3: Group the new item set W1 according to item categories. Items under different categories are placed in their respective sets and assembled into a Map, such as {Entertainment: [item1, item3, item9, ...], Games: [item2, item6, item8, ...], ..., Sports: [item56, item69, item81, ...]}.

[0062] Step S4: Perform statistical processing on the user click behavior dataset U1 to obtain the number of clicks for each user in each clicked item category, representing the user's preference for multiple categories, thus obtaining the user category preference dataset A. In user category preference dataset A, each user has the same category distribution field value with a length of K, but the click count field values ​​for each category will differ, representing the user's degree of interest in different categories.

[0063] The following is an example of the data obtained:

[0064] Dataset A:

[0065] User ID Category distribution Click count for each category user1 [Entertainment, Sports, ..., Games] [3,0,...,12] user2 [Entertainment, Sports, ..., Games] [0,1,...,4] ... ... ...

[0066] Step S5: Prepare the following two recommendation lists for each user. The number of items in each list is controlled by two parameters, as follows:

[0067] rec_nums: Represents the final number of recommended items for each user;

[0068] random_degree: Indicates the degree of randomness, ranging from 0 to 1;

[0069] (1) Category-Personalized Item List: Two random samplings are required. The first sampling is performed with replacement, int(rec_nums*(1-random_degree)) times, based on the number of clicks on the user's category in the user's category preference dataset A (e.g., [3, 0, ..., 12]) as the weight, to obtain the user's category sampling set B (e.g., [Entertainment, Sports, Health, ..., Sports]). Then, for each category in the category sampling set B, the item set under the corresponding category in the Map is randomly sampled once. After all categories in the category sampling set B have been sampled, the user's category-personalized item list P1 is obtained.

[0070] (2) Completely random item list: Randomly sample the new item set W1, sampling int(rec_nums *random_degree) times, to obtain the user's completely random item list P2.

[0071] Of the above sampling times, (a) in weighted sampling, the greater the weight, the higher the probability of being selected; (b) sampling with replacement means that a category will still participate in the next sampling after being selected; (c) the int() function means rounding down to the nearest integer.

[0072] Taking user1 as an example, the data obtained is as follows:

[0073] Category sampling set B:

[0074] User ID Extract category set user1 [Entertainment, Sports, Health, ... Sports]

[0075] Category Personalized Item List P1:

[0076]

[0077] Completely random item list P2:

[0078]

[0079]

[0080] Step S6: Merge the two lists P1 and P2 calculated for each user and randomly shuffle them to obtain the user's final recommendation list.

[0081] Step S7: Based on the recommendation list, recommend items to the user.

[0082] On the other hand, this application also discloses a personalized cold start device for recommended items. As shown in Figure 2, a personalized cold start device for recommended items includes: a new item set acquisition module 100, a user behavior dataset acquisition module 200, a category grouping module 300, a statistical processing module 400, a first recommendation list calculation module 500, a second recommendation list calculation module 600, and a recommendation module 700.

[0083] The new item set acquisition module 100 is used to acquire a new item set W1 within a specified time period. The new item set W1 includes item IDs and item categories.

[0084] The user behavior dataset acquisition module 200 acquires the user's historical click behavior dataset U1, which includes the user ID, the clicked item ID, and the clicked item category.

[0085] The category grouping module 300 is used to group the new item set W1 according to item categories, with items under different categories placed in their respective sets and assembled into a Map.

[0086] The statistical processing module 400 is used to perform statistical processing on the user's click behavior dataset U1 to obtain the number of actions of each user in each category and generate a user category preference dataset A.

[0087] The first recommendation list calculation module 500 is used to associate the user category preference dataset A with Map and perform two types of random sampling. The first type is to sample with replacement int(rec_nums*(1-random_degree)) times according to the user's category weight in the user category preference dataset A to obtain the user's category sampling set B. Then, for each category in the category sampling set B, random sampling is performed once from the item set of the corresponding category in Map to obtain the user's category personalized item list P1.

[0088] The second recommendation list calculation module 600 is used to perform a third preset number of random samplings on the new item set W1 generated by the new item set acquisition module 100 to obtain a completely random item list for the user.

[0089] The recommendation module 700 is used to merge the personalized item list P1 and the completely random item list P2, and randomly shuffle them to obtain the user's final recommendation list, and then recommend the recommendation list to the user.

[0090] Figure 3 A schematic diagram of the structure of a computing device according to an embodiment of the present application is shown.

[0091] like Figure 3 As shown, the computing device 800 disclosed in this application may include a processor 810 and a memory 820. The memory 820 may store executable code. When the executable code is executed by the processor 810, the processor 810 performs the method disclosed in this application. For specific implementation details, please refer to the relevant description above, which will not be repeated here.

[0092] Furthermore, the method according to the present invention can also be implemented as a computer program or computer program product, which includes computer program code instructions for performing the steps defined in the above-described method of the present invention.

[0093] Alternatively, the present invention can also be implemented as a non-transitory machine-readable storage medium (or computer-readable storage medium, or machine-readable storage medium) storing executable code (or computer program, or computer instruction code) thereon, which, when executed by a processor of an electronic device (or computing device, server, etc.), causes the processor to perform the various steps of the method described above according to the present invention.

[0094] Those skilled in the art will also understand that the various exemplary logic blocks, modules, and algorithm steps described in connection with the disclosure herein can be implemented as electronic hardware, computer software, or a combination of both.

[0095] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of the apparatus and methods according to embodiments of the present invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0096] The specific embodiments of the present invention have been described in detail above, but they are merely examples, and the present invention is not limited to the specific embodiments described above. For those skilled in the art, any equivalent modifications and substitutions to the present invention are also within the scope of the present invention. Therefore, all equivalent transformations and modifications made without departing from the spirit and scope of the present invention should be covered within the scope of the present invention.

Claims

1. A personalized cold start method for recommending items, characterized in that, include: Retrieve a new set of items within a specified time period. The new set of items includes item IDs and item categories. Obtain the user's historical click behavior dataset, which includes user ID, clicked item ID, and clicked item category; The new item set is grouped according to item category, and the item IDs under different item categories are placed in their respective sets and assembled into a Map; Statistical processing is performed on the user click behavior dataset to obtain the number of actions for each user in each category, generating a user category preference dataset. Two recommendation lists are prepared for each user: 1) Category-Personalized Item List: The user category preference dataset is associated with the Map, and two types of random sampling are performed. The first type is sampling with replacement based on the number of times the user clicks on the category in the user category preference dataset as the weight, and the number of samplings is a first preset number, to obtain the category sampling set of the user. Then, a second preset number of random samplings are performed on each category in the category sampling set to the item set of the corresponding category in the Map, to obtain the user's category-personalized item list. 2) Completely random item list: Perform a third preset number of random samplings on the new item set to obtain a completely random item list for the user; The two lists calculated for each user are merged and then randomly shuffled to obtain the user's final recommendation list; Based on the recommendation list, items are recommended to the user.

2. The personalized cold start method for recommended items according to claim 1, characterized in that, The dataset of historical click behavior of users includes: Based on the user's historical actions, determine the information the user clicked within a specified time period.

3. The personalized cold start method for recommended items according to claim 1, characterized in that, The method further includes: Retrieve popular items from one or more data sources to obtain the new item set.

4. The personalized cold start method for recommended items according to claim 1, characterized in that, The number of items in each of the two recommendation lists is controlled by the final number of items recommended by each user and the degree of randomness.

5. The personalized cold start method for recommended items according to claim 1, characterized in that, The first preset number of times is: int(rec_nums*(1-random_degree)) times, where rec_nums represents the final number of recommended items for each user, random_degree represents the degree of randomness, ranging from 0 to 1, and the int() function represents rounding down to the nearest integer.

6. The personalized cold start method for recommended items according to claim 1, characterized in that, The second preset number of times is: once.

7. The personalized cold start method for recommended items according to claim 1, characterized in that, The third preset number of times is: int(rec_nums*random_degree) times, where rec_nums represents the final number of recommended items for each user, random_degree represents the degree of randomness, ranging from 0 to 1, and the int() function represents rounding down to the nearest integer.

8. A personalized cold start device for recommended items, characterized in that, include: The new item set acquisition module is used to acquire a new item set within a specified time period. The new item set includes the item ID and the item category. The user behavior dataset acquisition module retrieves the user's historical click behavior dataset, which includes the user ID, clicked item ID, and clicked item category. The category grouping module is used to group new item sets according to item categories. Item IDs under different item categories are placed in their respective collections and assembled into a Map. The statistical processing module is used to perform statistical processing on the user's click behavior dataset, obtain the number of actions of each user in each category, and generate a user category preference dataset; The first recommendation list calculation module is used to associate the user category preference dataset with the Map and perform two types of random sampling. The first type is to perform sampling with replacement based on the number of times the user clicks on the category in the user category preference dataset as the weight, and the number of samplings is a first preset number, to obtain the category sampling set of the user. Then, according to each category in the category sampling set, a second preset number of random samples are taken from the item set of the corresponding category in the Map to obtain the user's category personalized item list. The second recommendation list calculation module is used to perform a third preset number of random samplings on the new item set generated by the new item set acquisition module to obtain a completely random item list for the user. The recommendation module is used to merge the personalized item list and the completely random item list, and then randomly shuffle them to obtain the user's final recommendation list, which is then recommended to the user.

9. A computing device, characterized in that, include: processor; as well as A memory having executable code stored thereon, which, when executed by a processor, causes the processor to perform a personalized cold start method for recommended items as described in any one of claims 1-7.

10. A computer-readable storage medium having executable code stored thereon, characterized in that, When the executable code is executed by the processor of the electronic device, the processor performs a personalized cold start method for recommended items as described in any one of claims 1-7.

Citation Information

Patent Citations

  • Hardware information-based travel cold-start user product recommendation system and method

    CN106846082A

  • High potential user buying intention prediction method based on big data user behavior analysis

    CN107944913A