Object recommendation method and device, electronic equipment and computer readable storage medium

By screening and sorting based on user preference information and candidate object attribute information, a personalized set of recommended objects is generated, which solves the problem that product recommendation services in the existing technology cannot meet the user's personalized needs and improves the accuracy of recommendations.

CN119357456APending Publication Date: 2025-01-24BEIJING WODONG TIANJUN INFORMATION TECH CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310912742.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-07-24
Publication Date
2025-01-24

AI Technical Summary

Technical Problem

Existing product recommendation services cannot meet users' personalized needs, resulting in insufficient accuracy of recommended products.

Method used

By responding to the user's object recommendation request, according to the user's preference information and the attribute information of the candidate object, the setting and sorting the collection of candidate objects to generate a personalized recommendation object collection.

Benefits of technology

It improves the accuracy of the object's recommendation and ensures that the recommendation results are more in line with the user's personalized needs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119357456A_ABST
    Figure CN119357456A_ABST
Patent Text Reader

Abstract

The invention provides an object recommendation method and device, electronic equipment and a computer readable storage medium, which can be applied to the fields of computer technology, internet technology, data processing technology and recommendation technology. The object recommendation method comprises the steps that in response to an object recommendation request received from a user, M first candidate object sets are determined according to a mode identifier in the object recommendation request, the object recommendation request further comprises user preference information corresponding to the user, and each of the M first candidate object sets comprises a plurality of candidate objects; according to the M first candidate object sets, candidate object attribute information corresponding to the candidate objects is obtained; the M first candidate object sets are processed according to candidate object attribute information corresponding to the multiple candidate objects, and N second candidate object sets are obtained; and processing the N second candidate object sets according to the user preference information to obtain at least one recommended object set.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the fields of computer technology, Internet technology, data processing technology and recommendation technology, and more specifically, to an object recommendation method and device, an electronic device, a computer-readable storage medium and a computer program product. Background Art

[0002] With the development of computer technology, the continuous advancement and popularization of technologies such as mobile Internet and online payment, online shopping has become the most basic consumption method for users.

[0003] E-Business Platform is a medium for users to shop online. E-Business Platform can provide different product recommendation services according to different shopping behaviors of users, so as to help users make shopping choices.

[0004] In the process of realizing the concept of the present disclosure, the inventors found that there are at least the following problems in the related art: the current product recommendation service cannot meet the personalized needs of users, resulting in the inability to guarantee the accuracy of the recommended products. Summary of the invention

[0005] In view of this, the present disclosure provides an object recommendation method and apparatus, an electronic device, a computer-readable storage medium, and a computer program product.

[0006] According to one aspect of the present disclosure, there is provided an object recommendation method, comprising: in response to receiving an object recommendation request from a user, determining M first candidate object sets according to a pattern identifier in the object recommendation request, wherein the object recommendation request also includes user preference information corresponding to the user, and the M first candidate object sets each include multiple candidate objects, where M is a positive integer greater than 1; acquiring candidate object attribute information corresponding to each of the multiple candidate objects according to the M first candidate object sets; processing the M first candidate object sets according to the candidate object attribute information corresponding to each of the multiple candidate objects to obtain N second candidate object sets, wherein N is a positive integer greater than 1 and less than or equal to M; and processing the N second candidate object sets according to the user preference information to obtain at least one recommended object set.

[0007] According to an embodiment of the present disclosure, each of the above-mentioned multiple candidate objects corresponds to an object identifier, and the above-mentioned candidate object attribute information includes basic attribute information, extended attribute information and quality assessment information.

[0008] According to an embodiment of the present disclosure, the above-mentioned obtaining the candidate object attribute information corresponding to each of the above-mentioned multiple candidate objects based on the above-mentioned M first candidate object sets includes: for each first candidate object set in the above-mentioned M first candidate object sets, for each candidate object in the above-mentioned multiple candidate objects, according to the object identifier corresponding to the above-mentioned candidate object, obtaining the above-mentioned basic attribute information and the above-mentioned extended attribute information corresponding to the above-mentioned object identifier from a first data source; and, obtaining the above-mentioned quality assessment information corresponding to the above-mentioned object identifier from a second data source.

[0009] According to an embodiment of the present disclosure, each of the above-mentioned M first candidate object sets corresponds to associated information, and the above-mentioned associated information is used to characterize the degree of association between the above-mentioned multiple candidate objects in the above-mentioned first candidate object set, the above-mentioned basic attribute information includes object evaluation information, and the above-mentioned extended attribute information includes browsing status information and operation frequency information.

[0010] According to an embodiment of the present disclosure, the above-mentioned M first candidate object sets are processed according to the candidate object attribute information corresponding to each of the above-mentioned multiple candidate objects to obtain N second candidate object sets, including: for each first candidate object set in the above-mentioned M first candidate object sets, according to the object evaluation information corresponding to each of the above-mentioned multiple candidate objects, the set attribute information corresponding to the above-mentioned first candidate object set is determined; according to the browsing information, operation frequency information and quality evaluation information corresponding to each of the above-mentioned multiple candidate objects, the set quality evaluation information corresponding to the above-mentioned first candidate object set is determined; according to the above-mentioned association information, the above-mentioned set attribute information and the above-mentioned set quality evaluation information, the object set evaluation result corresponding to the above-mentioned first candidate object set is determined; and, according to the above-mentioned object set evaluation results corresponding to each of the above-mentioned M first candidate object sets, the above-mentioned M first candidate object sets are screened to obtain the above-mentioned N second candidate object sets.

[0011] According to an embodiment of the present disclosure, the above-mentioned determination of the object set evaluation result corresponding to the above-mentioned first candidate object set based on the above-mentioned association information, the above-mentioned set attribute information and the above-mentioned set quality assessment information includes: determining a first product value based on a first weight and the above-mentioned association information; determining a second product value based on a second weight and the above-mentioned set attribute information; determining a third product value based on a third weight and the above-mentioned set quality assessment information; and determining the above-mentioned object set evaluation result based on the above-mentioned first product value, the above-mentioned second product value and the above-mentioned third product value.

[0012] According to an embodiment of the present disclosure, the above method also includes, before determining the M first candidate object sets in response to receiving an object recommendation request from a user according to the pattern identifier in the above object recommendation request: acquiring a historical data set corresponding to each of the P candidate pattern identifiers, wherein P is a positive integer; and determining a plurality of the above candidate object sets corresponding to each of the above P candidate pattern identifiers according to the historical data sets corresponding to each of the above P candidate pattern identifiers.

[0013] According to an embodiment of the present disclosure, the above historical data set includes Q historical order data, each of the above Q historical order data corresponds to multiple historical objects, and Q is a positive integer.

[0014] According to an embodiment of the present disclosure, the above-mentioned determining the multiple candidate object sets corresponding to each of the P candidate pattern identifiers based on the historical data sets corresponding to each of the P candidate pattern identifiers includes: for each of the P candidate pattern identifiers, determining the object support corresponding to each of the multiple historical objects based on the Q historical order data corresponding to the candidate pattern identifier; constructing an object list and an object tree based on the object support corresponding to each of the multiple historical objects; and determining the multiple candidate object sets corresponding to the candidate pattern identifiers based on the object list and the object tree.

[0015] According to an embodiment of the present disclosure, in response to receiving an object recommendation request from a user, determining M first candidate object sets according to a pattern identifier in the object recommendation request includes: in response to receiving an object recommendation request from a user, matching the pattern identifier with the P candidate pattern identifiers respectively to obtain pattern identifier matching results corresponding to each of the P candidate pattern identifiers; in response to the pattern identifier matching results characterizing that the pattern identifier matches the candidate pattern identifier, determining the candidate pattern identifier as a target pattern identifier; and determining the multiple candidate object sets corresponding to the target pattern identifiers as the M first candidate object sets.

[0016] According to an embodiment of the present disclosure, the method further includes, before determining the M first candidate object sets in response to receiving an object recommendation request from a user according to a pattern identifier in the object recommendation request: in response to detecting a user operation of the user on a target link in the first page, determining the pattern identifier corresponding to the target link, wherein the user has a corresponding user identifier; obtaining a user portrait corresponding to the user identifier according to the user identifier, wherein the user portrait is determined based on the behavior data of the user within a preset historical time period; and determining user preference information corresponding to the user according to the user portrait.

[0017] According to an embodiment of the present disclosure, each of the N second candidate object sets corresponds to an object set evaluation result.

[0018] According to an embodiment of the present disclosure, the above-mentioned N second candidate object sets are processed according to the above-mentioned user preference information to obtain at least one recommended object set, including: sorting the above-mentioned N second candidate object sets according to the above-mentioned user preference information and the object set evaluation results corresponding to each of the above-mentioned N second candidate object sets to obtain a candidate object set sorting result; and determining the above-mentioned at least one recommended object set from the above-mentioned N second candidate object sets according to a preset threshold and the above-mentioned candidate object set sorting result.

[0019] According to an embodiment of the present disclosure, the above method also includes, after processing the above N second candidate object sets according to the above user preference information to obtain at least one recommended object set: displaying the above at least one recommended object set to the above user in an output area of ​​a second page, wherein the above second page is associated with the above first page.

[0020] According to another aspect of the present disclosure, an object recommendation device is provided, including: a first determination module, for determining, in response to receiving an object recommendation request from a user, M first candidate object sets according to a pattern identifier in the object recommendation request, wherein the object recommendation request also includes user preference information corresponding to the user, and the M first candidate object sets each include multiple candidate objects, where M is a positive integer greater than 1; a first acquisition module, for acquiring, based on the M first candidate object sets, candidate object attribute information corresponding to each of the multiple candidate objects; a first processing module, for processing the M first candidate object sets according to the candidate object attribute information corresponding to each of the multiple candidate objects to obtain N second candidate object sets, wherein N is a positive integer greater than 1 and less than or equal to M; and a second processing module, for processing the N second candidate object sets according to the user preference information to obtain at least one recommended object set.

[0021] According to another aspect of the present disclosure, an electronic device is provided, comprising: one or more processors; and a memory for storing one or more instructions, wherein when the one or more instructions are executed by the one or more processors, the one or more processors implement the method described in the present disclosure.

[0022] According to another aspect of the present disclosure, a computer-readable storage medium is provided, on which executable instructions are stored. When the executable instructions are executed by a processor, the processor implements the method described in the present disclosure.

[0023] According to another aspect of the present disclosure, a computer program product is provided. The computer program product includes computer executable instructions. When the computer executable instructions are executed, they are used to implement the method described in the present disclosure.

[0024] According to the embodiments of the present disclosure, since the candidate object attribute information corresponds to each of the multiple candidate objects in the first candidate object set, and the first candidate object set is determined according to the pattern identifier in the object recommendation request, the candidate object attribute information can be used to characterize the attribute conditions of the multiple candidate objects. Since the second candidate object set is obtained by preliminarily screening the first candidate object set according to the candidate object attribute information corresponding to each of the multiple candidate objects, the second candidate object set can be made to better meet the recommendation requirements, thereby improving the efficiency of subsequent object recommendations. On this basis, since the recommended object set is obtained by further screening the second candidate object set according to the user preference information, the recommended object set can be made to better meet the user's needs, thereby at least partially overcoming the technical problem in the related art that the current product recommendation service cannot meet the personalized needs of users, and improving the accuracy of object recommendation. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] The above and other objects, features and advantages of the present disclosure will become more apparent through the following description of the embodiments of the present disclosure with reference to the accompanying drawings, in which:

[0026] Figure 1 The system architecture to which the object recommendation method according to the embodiment of the present disclosure can be applied is schematically shown;

[0027] Figure 2 A flowchart of an object recommendation method according to an embodiment of the present disclosure is schematically shown;

[0028] Figure 3A An example schematic diagram schematically shows a process of obtaining multiple candidate object sets corresponding to P candidate pattern identifiers respectively according to an embodiment of the present disclosure;

[0029] Figure 3B An exemplary schematic diagram of a process of constructing an object list and an object tree according to object support corresponding to each of a plurality of historical objects according to an embodiment of the present disclosure is schematically shown;

[0030] Figure 4 An example schematic diagram of a process of determining M first candidate object sets according to a pattern identifier in an object recommendation request in response to receiving an object recommendation request from a user according to an embodiment of the present disclosure is schematically shown;

[0031] Figure 5An example schematic diagram schematically shows a process of processing M first candidate object sets to obtain N second candidate object sets according to the candidate object attribute information corresponding to each of the multiple candidate objects according to an embodiment of the present disclosure;

[0032] Figure 6 An example schematic diagram schematically shows an object recommendation process according to an embodiment of the present disclosure;

[0033] Figure 7 A block diagram schematically shows an object recommendation device according to an embodiment of the present disclosure; and

[0034] Figure 8 A block diagram of an electronic device suitable for implementing an object recommendation method according to an embodiment of the present disclosure is schematically shown. DETAILED DESCRIPTION

[0035] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the present disclosure. In the following detailed description, for ease of explanation, many specific details are set forth to provide a comprehensive understanding of the embodiments of the present disclosure. However, it is apparent that one or more embodiments may also be implemented without these specific details. In addition, in the following description, descriptions of known structures and technologies are omitted to avoid unnecessary confusion of the concepts of the present disclosure.

[0036] The terms used herein are only for describing specific embodiments and are not intended to limit the present disclosure. The terms "comprise", "include", etc. used herein indicate the existence of the features, steps, operations and / or components, but do not exclude the existence or addition of one or more other features, steps, operations or components.

[0037] All terms (including technical and scientific terms) used herein have the meanings commonly understood by those skilled in the art, unless otherwise defined. It should be noted that the terms used herein should be interpreted as having a meaning consistent with the context of this specification, and should not be interpreted in an idealized or overly rigid manner.

[0038] When using expressions such as "at least one of A, B, and C, etc.", they should generally be interpreted according to the meaning of the expression commonly understood by those skilled in the art (for example, "a system having at least one of A, B, and C" should include but is not limited to a system having A alone, B alone, C alone, A and B, A and C, B and C, and / or A, B, C, etc.).

[0039] In the embodiments of the present disclosure, the collection, updating, analysis, processing, use, transmission, provision, disclosure, storage, etc. of the data involved (for example, including but not limited to user personal information) are in compliance with the provisions of relevant laws and regulations, are used for legitimate purposes, and do not violate public order and good morals. In particular, necessary measures are taken for user personal information to prevent illegal access to user personal information data and maintain the security of user personal information, network security, and national security.

[0040] In the embodiments of the present disclosure, the user's authorization or consent is obtained before obtaining or collecting the user's personal information.

[0041] For example, after obtaining user preference information, we can desensitize your information through methods including de-identification or anonymization to protect the security of your information.

[0042] Recommendation algorithms have been applied to various fields, such as books, music, videos, news, movies, maps, and shopping.

[0043] The recommendation algorithm may include at least one of the following: a content-based recommendation algorithm, a collaborative filtering-based recommendation algorithm, an association rule-based recommendation algorithm, a utility-based recommendation algorithm, a knowledge-based recommendation algorithm, and a hybrid recommendation algorithm.

[0044] However, in the application scenarios of product recommendation services, due to the wide variety of promotional methods and preferential activities, the current recommendation algorithm cannot meet the personalized needs of users, resulting in the inability to guarantee the accuracy of recommended products.

[0045] In order to at least partially solve the technical problems existing in the related art, the present disclosure provides an object recommendation method and device, an electronic device and a computer-readable storage medium, which can be applied to the fields of computer technology, Internet technology, data processing technology and recommendation technology. The object recommendation method includes: in response to receiving an object recommendation request from a user, determining M first candidate object sets according to a pattern identifier in the object recommendation request, wherein the object recommendation request also includes user preference information corresponding to the user, and the M first candidate object sets each include multiple candidate objects; according to the M first candidate object sets, obtaining candidate object attribute information corresponding to each of the multiple candidate objects; according to the candidate object attribute information corresponding to each of the multiple candidate objects, processing the M first candidate object sets to obtain N second candidate object sets; according to the user preference information, processing the N second candidate object sets to obtain at least one recommended object set.

[0046] Figure 1 The system architecture to which the object recommendation method according to the embodiment of the present disclosure can be applied is schematically shown. It should be noted that: Figure 1 What is shown is merely an example of a system architecture to which the embodiments of the present disclosure can be applied, in order to help those skilled in the art understand the technical content of the present disclosure, but it does not mean that the embodiments of the present disclosure cannot be used in other devices, systems, environments or scenarios.

[0047] like Figure 1 As shown, the system architecture 100 according to this embodiment may include a first terminal device 101, a second terminal device 102, a third terminal device 103, a network 104 and a server 105. The network 104 is used to provide a medium for a communication link between the first terminal device 101, the second terminal device 102, the third terminal device 103 and the server 105. The network 104 may include various connection types, such as wired, wireless communication links or optical fiber cables, etc.

[0048] The user may use at least one of the first terminal device 101, the second terminal device 102, and the third terminal device 103 to interact with the server 105 through the network 104 to receive or send messages, etc. Various communication client applications may be installed on the first terminal device 101, the second terminal device 102, and the third terminal device 103, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social platform software, etc. (only as examples).

[0049] The first terminal device 101, the second terminal device 102, and the third terminal device 103 may be various electronic devices having display screens and supporting web browsing, including but not limited to smart phones, tablet computers, laptop computers, desktop computers, and the like.

[0050] The server 105 may be a server that provides various services, such as a background management server (only as an example) that provides support for websites browsed by users using the first terminal device 101, the second terminal device 102, and the third terminal device 103. The background management server may analyze and process the received data such as user requests, and feed back the processing results (such as web pages, information, or data obtained or generated according to user requests) to the terminal device.

[0051] It should be noted that the object recommendation method provided in the embodiment of the present disclosure can generally be executed by the server 105. Accordingly, the object recommendation device provided in the embodiment of the present disclosure can generally be set in the server 105. The object recommendation method provided in the embodiment of the present disclosure can also be executed by a server or server cluster that is different from the server 105 and can communicate with the first terminal device 101, the second terminal device 102, the third terminal device 103 and / or the server 105. Accordingly, the object recommendation device provided in the embodiment of the present disclosure can also be set in a server or server cluster that is different from the server 105 and can communicate with the first terminal device 101, the second terminal device 102, the third terminal device 103 and / or the server 105.

[0052] Alternatively, the object recommendation method provided in the embodiment of the present disclosure may also be executed by the first terminal device 101, the second terminal device 102 or the third terminal device 103, or may also be executed by other terminal devices different from the first terminal device 101, the second terminal device 102 or the third terminal device 103. Accordingly, the object recommendation device provided in the embodiment of the present disclosure may also be provided in the first terminal device 101, the second terminal device 102 or the third terminal device 103, or may be provided in other terminal devices different from the first terminal device 101, the second terminal device 102 or the third terminal device 103.

[0053] It should be understood that Figure 1 The number of the first terminal device, the second terminal device or the third terminal device, the network and the server in the embodiment is only for illustration. According to the implementation requirements, there may be any number of the first terminal device, the second terminal device or the third terminal device, the network and the server.

[0054] It should be noted that the sequence numbers of the operations in the following method are only used as representations of the operations for the purpose of description, and should not be regarded as representing the execution order of the operations. Unless explicitly stated, the method does not need to be executed completely in the order shown.

[0055] Figure 2 The flowchart of the object recommendation method according to the embodiment of the present disclosure is schematically shown.

[0056] like Figure 2As shown, the object recommendation method 200 includes operations S210 to S240.

[0057] In operation S210, in response to receiving an object recommendation request from a user, M first candidate object sets are determined based on a pattern identifier in the object recommendation request, wherein the object recommendation request also includes user preference information corresponding to the user, the M first candidate object sets each include multiple candidate objects, and M is a positive integer greater than 1.

[0058] In operation S220, candidate object attribute information corresponding to each of the plurality of candidate objects is obtained according to the M first candidate object sets.

[0059] In operation S230 , the M first candidate object sets are processed according to the candidate object attribute information corresponding to each of the plurality of candidate objects to obtain N second candidate object sets, where N is a positive integer greater than 1 and less than or equal to M.

[0060] In operation S240, the N second candidate object sets are processed according to the user preference information to obtain at least one recommended object set.

[0061] According to an embodiment of the present disclosure, the server may store at least one predetermined candidate user portrait and a plurality of candidate object sets corresponding to at least one candidate pattern identifier. The candidate user portrait may be determined based on the behavior data of the candidate user within a preset historical time period. The candidate object set may include at least one candidate object. The candidate object may refer to a commodity or a product. The candidate object set may refer to a frequent item set corresponding to a commodity or a product.

[0062] According to an embodiment of the present disclosure, frequent itemsets (i.e., Frequent Itemsets) can be used to discover common combination patterns in a data set. For example, in association rule analysis, frequent itemsets can refer to elements that usually appear in transactions at the same time. Frequent itemsets can be used to discover correlations and association patterns in a data set. A frequent itemset can refer to a set whose support (i.e., Support) is greater than or equal to a predetermined support. Support can refer to the frequency or proportion of a set appearing in all transactions. By calculating the support of an itemset, correlations and association patterns in the data can be discovered.

[0063] According to an embodiment of the present disclosure, all transactions may refer to all transaction records or samples in a given data set. A transaction may be understood as a single record or observation unit in a data set. For example, a transaction may include a transaction, a shopping cart of a user, or a behavior record of a user. For example, if a sales data set is used, each transaction may represent a shopping cart of a user, and the shopping cart includes the goods purchased by the user. In this case, all transactions may refer to the shopping carts of all users in the entire sales data set.

[0064] For example, the item sets that are frequent item sets can be determined by calculating the frequency of each item set appearing in all transactions, that is, the support of all item sets. By mining frequent item sets, the correlation between certain products, services or events can be discovered, and then cross-selling, personalized recommendations or anomaly detection can be performed. The method for determining the candidate object set corresponding to the candidate pattern identifier can be set according to actual business needs and is not limited here. For example, a frequent item set mining algorithm can be used to determine the candidate object set, and the frequent item set mining algorithm can include at least one of the following: Apriori algorithm and FP-growth algorithm.

[0065] For example, a historical user operation data set corresponding to the candidate pattern identifier may be obtained, and the historical user operation data set may include data related to all user operations. User operations may include clicks, browsing, and purchases. On this basis, the historical user operation data set may be processed to obtain a candidate object set. The method of processing the historical user operation data set may include: performing frequent item mining on the historical user operation data set based on a frequent item mining algorithm to obtain a candidate object set.

[0066] Alternatively, multiple candidate object sets corresponding to the candidate pattern identifiers can be obtained from a data source based on the candidate pattern identifiers. The data source may include at least one of the following: a local database, a cloud database, and a network resource. According to an embodiment of the present disclosure, a script for generating an object recommendation request may be pre-stored in a client. In response to detecting a user operation of a user on a target link in a first page, a pattern identifier corresponding to the target link and a user identifier corresponding to the user may be determined. The target link in the first page may be associated with main site orders and promotions. The pattern identifier may be used to characterize different main site orders and different promotions.

[0067] According to an embodiment of the present disclosure, after obtaining the pattern identifier, the client can run the script to generate an object recommendation request based on the pattern identifier. After obtaining the object recommendation request, the client can send the object recommendation request to the server, so that the server can determine the first candidate object set corresponding to the pattern identifier based on the object recommendation request. The first candidate object set can be used to characterize the candidate object set corresponding to the pattern identifier. The candidate object set may refer to a frequent item set obtained by processing a historical data set using a frequent item set mining algorithm. For example, in the field of e-commerce, the pattern identifier may include a promotion activity identifier and a coupon batch identifier, and the candidate object set may refer to a recommended product combination.

[0068] According to an embodiment of the present disclosure, after receiving an object recommendation request, the server may match the pattern identifier with the candidate pattern identifier according to the pattern identifier in the object recommendation request to obtain a pattern identifier matching result corresponding to the candidate pattern identifier. The pattern identifier matching result may be used to characterize whether the pattern identifier and the candidate pattern identifier are successfully matched. A successful match may refer to a certain degree of similarity or matching relationship between the pattern identifier and the candidate pattern identifier. In the case where the pattern identifier matching result indicates that the pattern identifier and the candidate pattern identifier are successfully matched, the set of candidate objects corresponding to the successfully matched candidate pattern identifier may be determined as the first set of candidate objects.

[0069] According to the embodiments of the present disclosure, the specific technical meaning of successful matching can be measured and evaluated through similarity measurement, matching rule verification and domain expert judgment. For example, the pattern identifier and the candidate pattern identifier can be measured for similarity to determine whether the pattern identifier and the candidate pattern identifier are successfully matched. In this case, the similarity or distance between the pattern identifier and the candidate pattern identifier can be calculated. When the similarity or distance between the pattern identifier and the candidate pattern identifier is greater than a predetermined threshold, a pattern identifier matching result representing a successful match between the pattern identifier and the candidate pattern identifier can be determined. A successful match can be used to represent that the similarity or correlation between the pattern identifier and the candidate pattern identifier is high.

[0070] Alternatively, whether the pattern identifier and the candidate pattern identifier are successfully matched can be determined by performing a matching rule check on the pattern identifier and the candidate pattern identifier. In this case, since the pattern identifier usually has a matching rule or matching condition for describing the required features, the candidate pattern identifier can be checked according to the matching rule or matching condition. When the candidate pattern identifier satisfies the matching rule or matching condition, a pattern identifier matching result representing a successful match between the pattern identifier and the candidate pattern identifier can be determined. A successful match can be used to represent a high degree of match between the matching rule or matching condition defined in the pattern identifier and the features of the candidate pattern identifier.

[0071] Alternatively, whether the pattern identifier and the candidate pattern identifier are successfully matched can be determined by performing domain expert judgment on the pattern identifier and the candidate pattern identifier. In this case, the domain expert can evaluate the matching result and determine whether the match is successful based on his or her own professional knowledge and comprehensively consider various factors between the pattern identifier and the candidate pattern identifier, such as conformity, feasibility, and compliance. Successful matching can be used to characterize the judgment of domain experts on the matching results. According to an embodiment of the present disclosure, the first candidate object set may include multiple candidate objects. After obtaining the first candidate object set, candidate object attribute information corresponding to each of the multiple candidate objects can be obtained from the data source based on the multiple candidate objects. The candidate object attribute information may include at least one of the following: basic attribute information, extended attribute information, and quality assessment information.

[0072] According to an embodiment of the present disclosure, basic attribute information can be used to characterize basic attributes of an object, and basic attributes can be used to describe basic features or properties of an object so that users can understand the basic features of the object and can be used to search, filter and compare objects. For example, when the object is a commodity in the field of e-commerce, the basic attribute information may include the name, brand, model, price or color of the commodity.

[0073] According to an embodiment of the present disclosure, extended attribute information can be used to characterize the extended attributes of an object, and extended attributes can be used to characterize additional features or attributes of an object, so as to provide more detailed information or more accurate descriptions. For example, in the case where the object is a user in a social media application, the basic attribute information may include the user name, age, and gender, and the extended attribute information may include the user's browsing history, hobbies, and friend list, etc. In this case, the extended attribute information can be used for personalized recommendations, social relationship analysis, and targeted advertising of users, etc.

[0074] According to an embodiment of the present disclosure, quality assessment information can be used to characterize the quality assessment value of an object, and the quality assessment value can be used to evaluate the quality or performance level of the object. The specific meaning of the quality assessment information can be set according to the actual application field and is not limited here. For example, in the field of software development, the quality assessment information may include code error rate, performance indicators, and user feedback. Alternatively, in the field of product manufacturing, the quality assessment information may include the reliability, durability, and repair rate of the product.

[0075] According to an embodiment of the present disclosure, after obtaining the candidate object attribute information corresponding to each of the multiple candidate objects, the candidate object attribute information corresponding to each of the multiple candidate objects can be processed to obtain an attribute information processing result. The specific method of processing the candidate object attribute information can be set according to actual business needs and is not limited here. For example, at least one of the following processing methods can be performed on the candidate object attribute information: information cleaning processing, information classification processing, and information analysis processing.

[0076] For example, information classification processing of multiple candidate object attribute information may include: using a spreadsheet or database to classify and sort the basic attribute information, extended attribute information, and quality assessment information of the multiple candidate object attribute information to obtain attribute information processing results. By information classification processing of multiple candidate object attribute information, it is possible to facilitate the management and processing of attribute information.

[0077] Alternatively, performing information cleaning on the attribute information of the multiple candidate objects may include: removing duplicate, missing or erroneous data from the attribute information of the multiple candidate objects according to the format, unit and standard of the information to obtain an attribute information processing result. By performing information cleaning on the attribute information of the multiple candidate objects, the accuracy and reliability of subsequent processing can be improved.

[0078] Alternatively, information analysis processing of multiple candidate object attribute information may include: analyzing multiple candidate object attribute information based on statistical analysis, visual analysis or data mining methods to obtain correlations, trends and characteristics between the multiple candidate object attribute information, thereby obtaining attribute information processing results.

[0079] Alternatively, information classification processing may be performed on the attribute information of multiple candidate objects to obtain a first intermediate processing result. Information cleaning processing may be performed on the first intermediate processing result to obtain a second intermediate processing result. On this basis, information analysis processing may be performed on the second intermediate processing result to obtain an attribute information processing result.

[0080] Specifically, the above-mentioned information classification processing and information cleaning processing can be performed on the basic attribute information corresponding to each of the multiple candidate objects to obtain the basic set attribute information corresponding to the first candidate object set, the above-mentioned information classification processing and information cleaning processing can be performed on the extended attribute information corresponding to each of the multiple candidate objects to obtain the extended set attribute information corresponding to the first candidate object set, and the above-mentioned information classification processing and information cleaning processing can be performed on the quality assessment information corresponding to each of the multiple candidate objects to obtain the set quality assessment information corresponding to the first candidate object set.

[0081] On this basis, the basic set attribute information, the extended set attribute information and the set quality assessment information can be subjected to information analysis and processing to obtain the attribute information processing result. Alternatively, the basic attribute information, the extended attribute information and the set quality assessment information corresponding to each of the multiple candidate objects can be subjected to comprehensive processing to obtain the attribute information processing result.

[0082] According to an embodiment of the present disclosure, after obtaining M first candidate object sets and attribute information processing results, the M first candidate object sets can be screened according to the attribute information processing results to obtain N second candidate object sets that meet the expected conditions. The second candidate object set can be used to represent the candidate object set obtained after the M first candidate object sets are screened using the candidate object attribute information.

[0083] For example, feature extraction may be performed on the candidate object attribute information corresponding to each of the multiple candidate objects, and the dimension of the candidate object attribute information may be reduced by selecting appropriate features, thereby obtaining intermediate object attribute information that can better characterize the candidate objects. The feature extraction and selection method may include at least one of the following: a feature extraction and selection method based on statistics, a feature extraction and selection method based on machine learning, and a feature extraction and selection method based on domain expert experience.

[0084] Alternatively, after obtaining the intermediate object attribute information corresponding to each of the multiple candidate objects, data modeling and processing can be performed based on the M first candidate object sets and the intermediate object attribute information of the multiple candidate objects corresponding to each of the M first candidate object sets, so as to obtain N second candidate object sets that meet the expected conditions from the M first candidate object sets. The data modeling and processing method may include at least one of the following: a data modeling and processing method based on cluster analysis, a data modeling and processing method based on a classification algorithm, and a data modeling and processing method based on association rule mining.

[0085] According to an embodiment of the present disclosure, a user portrait corresponding to the user identifier can be obtained according to the user identifier corresponding to the user. User preference information is determined according to the user portrait. The user preference information may include information on the user's needs, interests, experience, or budget.

[0086] According to an embodiment of the present disclosure, after obtaining N second candidate object sets, the N second candidate object sets can be further screened according to user preference information to obtain at least one recommended object set. The recommended object set can be used to characterize the object set obtained after fine sorting. The recommended object set can include multiple recommended objects.

[0087] For example, when the object is a commodity in the field of e-commerce, the recommended object can be used to represent the commodity to be recommended after fine sorting. According to the user preference information, the process of further screening the N second candidate object sets to obtain at least one recommended object set may include: user model construction, similarity calculation and sorting, and recommendation result generation.

[0088] For example, user model construction may refer to constructing a user model based on user preference information so as to convert the user preference information into a machine-understandable form. The user model construction method may include at least one of the following: a model construction method based on feature engineering, a model construction method based on machine learning, and a model construction method based on a recommendation system. By constructing a user model based on user preference information, the user model can capture the user's preferences and characteristics, thereby providing a basis for the subsequent recommendation process.

[0089] Alternatively, similarity calculation and sorting may refer to calculating the similarity between the second candidate object set and the user preference information using a user model. The similarity calculation method may include at least one of the following: a similarity calculation method based on cosine similarity and a similarity calculation method based on Euclidean distance. By using the user model to calculate the similarity between the second candidate object set and the user preference information, a similarity calculation result is obtained, so that the N second candidate object sets can be sorted according to the similarity calculation result, so that the second candidate object set that better meets the user preference can be determined as the recommended object set to be recommended.

[0090] Alternatively, generating a recommendation result may refer to selecting a set of second candidate objects that meet a predetermined condition from the front to the back according to the sorted set of second candidate objects, and determining it as the set of recommended objects. The predetermined condition may be set according to actual business needs and is not limited here. For example, the predetermined condition may be set to the set of second candidate objects that are in the top 3 of the sorting.

[0091] According to the embodiments of the present disclosure, since the candidate object attribute information corresponds to each of the multiple candidate objects in the first candidate object set, and the first candidate object set is determined according to the pattern identifier in the object recommendation request, the candidate object attribute information can be used to characterize the attribute conditions of the multiple candidate objects. Since the second candidate object set is obtained by preliminarily screening the first candidate object set according to the candidate object attribute information corresponding to each of the multiple candidate objects, the second candidate object set can be made to better meet the recommendation requirements, thereby improving the efficiency of subsequent object recommendations. On this basis, since the recommended object set is obtained by further screening the second candidate object set according to the user preference information, the recommended object set can be made to better meet the user's needs, thereby at least partially overcoming the technical problem in the related art that the current product recommendation service cannot meet the personalized needs of users, and improving the accuracy of object recommendation.

[0092] Reference below Figure 3A , Figure 3B , Figure 4 , Figure 5 and Figure 6 , the object recommendation method 200 according to an embodiment of the present invention is further described.

[0093] According to an embodiment of the present disclosure, the object recommendation method 200 may further include the following operations.

[0094] Obtain a historical data set corresponding to each of the P candidate mode identifiers, where P is a positive integer. According to the historical data set corresponding to each of the P candidate mode identifiers, determine a plurality of candidate object sets corresponding to each of the P candidate mode identifiers.

[0095] According to an embodiment of the present disclosure, after obtaining the historical data sets corresponding to each of the P candidate pattern identifiers, frequent item mining can be performed on each of the historical data sets. Frequent item mining can be used to extract frequent item sets corresponding to the candidate pattern identifiers based on the historical data sets. On this basis, the association relationship between the candidate objects can be obtained by analyzing and processing the frequent item sets to determine the user's operating habits, thereby improving the accuracy of object recommendation.

[0096] According to an embodiment of the present disclosure, the historical data set may include at least one historical order data. Each historical order data in the at least one historical order data may include an order identifier under a specified promotion and order information corresponding to the order identifier. For example, the historical data set may be as shown in Table 1 below.

[0097] Order ID Order Information T1 C2, C3, C4, C5 T2 C1, C3, C4, C5 T3 C1, C2, C4, C5 T4 C1, C2, C3, C5 T5 C1, C2, C3, C4 T6 C7, C8, C9 T7 C6, C8, C9 T8 C6, C7, C9 T9 C6, C7, C8

[0098] Table 1

[0099] According to an embodiment of the present disclosure, in Table 1, T1-T9 can be used to represent different order identifiers. C1-C9 can be used to represent different object identifiers. Order information can be used to represent the object status included in the order corresponding to the order identifier.

[0100] According to an embodiment of the present disclosure, determining a plurality of candidate object sets corresponding to each of the P candidate pattern identifiers according to the historical data sets corresponding to each of the P candidate pattern identifiers may include the following operations.

[0101] For each of the P candidate pattern identifiers, the object support corresponding to each of the multiple historical objects is determined according to the Q historical order data corresponding to the candidate pattern identifier. According to the object support corresponding to each of the multiple historical objects, an object list and an object tree are constructed. According to the object list and the object tree, multiple candidate object sets corresponding to the candidate pattern identifier are determined.

[0102] According to an embodiment of the present disclosure, the historical data set may include Q historical order data. The Q historical order data may each correspond to a plurality of historical objects. Q is a positive integer.

[0103] According to an embodiment of the present disclosure, a frequent item mining algorithm can be used to perform mining on a historical data set corresponding to each of the P candidate pattern identifiers to obtain a plurality of candidate object sets corresponding to each of the P candidate pattern identifiers. The frequent item mining algorithm can be used to mine potential association relationships from a data set. For example, the frequent item mining algorithm can include at least one of the following: an association rule algorithm (i.e., Apriori) and a frequent pattern growth tree algorithm (Frequent Pattern Growth Algorithm, FP-Growth).

[0104] According to an embodiment of the present disclosure, the historical data set may include operation information, for example. For example, the operation information may include at least one of the following: click, browse, and place an order. After obtaining the historical data set corresponding to the candidate pattern identifier, the Q historical order data in the historical data set may be scanned and processed to obtain the object support corresponding to each of the multiple historical objects. The object support may refer to the frequency of an object appearing in all historical data.

[0105] According to the embodiment of the present disclosure, after obtaining the object support corresponding to each of the multiple historical objects, the multiple historical objects can be sorted according to the object support corresponding to each of the multiple historical objects to obtain an object list. On this basis, each historical object can be inserted into a tree structure with NULL as the root node in descending order according to the object list, and the object support of each node in the tree structure is recorded to obtain an object tree.

[0106] According to an embodiment of the present disclosure, in the process of mining frequent patterns, it may be necessary to first construct a frequent pattern tree (i.e., an object tree). In the process of constructing the object tree, a conditional pattern base (i.e., a conditional pattern base) corresponding to each frequent item set may be determined, i.e., a set of basic facts that satisfy the frequent item set. For example, after obtaining an object list and an object tree, a set of paths ending with the searched element item may be determined for each element item in the object tree to obtain a conditional pattern base. The method for obtaining the conditional pattern base may include: for each element item in the frequent item set, tracing the element item back to the node storing the element item in the object tree. On this basis, traversal may be performed starting from the node to obtain a path ending with the searched element item, i.e., a conditional pattern base.

[0107] According to an embodiment of the present disclosure, after obtaining a conditional pattern base, all frequent item sets of the item set can be recursively mined according to the conditional pattern base. The method of mining frequent item sets corresponding to the conditional pattern base may include: extracting all frequent item sets of each conditional pattern base by recursively constructing an object tree. By processing the conditional pattern base, frequent patterns and their respective supports can be gradually mined, so that frequent item sets under different conditions can be discovered, so as to better understand the characteristics and association rules of the data set.

[0108] According to an embodiment of the present disclosure, after all frequent item sets of an item set are obtained, frequent item sets that meet a predetermined support can be determined as multiple candidate object sets corresponding to candidate pattern identifiers. Each candidate object and its corresponding associated candidate object can be extracted from the frequent item set, and the associated relationship corresponding to the frequent item set can be calculated. For example, referring to the historical data set in Table 1, taking the predetermined support of 2 as an example, the candidate object set and the associated relationship corresponding to the candidate object set can be obtained as shown in Table 2 below.

[0109] Candidate object set Relationship {C2, C3, C4} 2 {C1, C2, C3} 2 {C6, C7} 2 {C2, C3} 5 {C1, C2} 3 {C6, C7} 2 {C7, C8} 2 {C7, C9} 2

[0110] Table 2

[0111] According to the embodiments of the present disclosure, in order to solve the problem of being unable to obtain user preference information due to newly added users or low user operation frequency, the historical data sets of all users can be processed by utilizing an association analysis algorithm, thereby being able to mine the association relationships between historical objects in the historical data sets, so as to recommend candidate objects with high association and high selection probability to users, at least partially overcoming the problem of no preference information due to newly added users or low user operation frequency in the related art, thereby improving the accuracy of subsequent object recommendations.

[0112] Figure 3AAn example schematic diagram of a process for obtaining multiple candidate object sets corresponding to P candidate pattern identifiers according to an embodiment of the present disclosure is schematically shown.

[0113] like Figure 3A As shown, in 300A, for each candidate pattern identifier 301 among the P candidate pattern identifiers, a historical data set 302 corresponding to the candidate pattern identifier 301 may be obtained. The historical data set 302 may include Q historical order data 3021.

[0114] The object support 303 corresponding to each of the multiple historical objects can be determined based on the Q historical order data 3021 corresponding to the candidate pattern identifier 301. According to the object support 303 corresponding to each of the multiple historical objects, an object list 304 and an object tree 305 are constructed. According to the object list 304 and the object tree 305, multiple candidate object sets 306 corresponding to the candidate pattern identifier 301 are determined.

[0115] Figure 3B An example schematic diagram of a process of constructing an object list and an object tree according to object support corresponding to each of a plurality of historical objects according to an embodiment of the present disclosure is schematically shown.

[0116] like Figure 3B As shown, taking the historical data set shown in Table 1 as an example, it can be determined that the object support of C1 is 4 (for example, it can be expressed as C1:4), the object support of C2 is 4 (for example, it can be expressed as C2:4), the object support of C3 is 4 (for example, it can be expressed as C3:4), the object support of C4 is 4 (for example, it can be expressed as C4:4), the object support of C5 is 4 (for example, it can be expressed as C5:4), the object support of C6 is 3 (for example, it can be expressed as C6:3), the object support of C7 is 3 (for example, it can be expressed as C7:3), the object support of C8 is 3 (for example, it can be expressed as C8:3), and the object support of C9 is 3 (for example, it can be expressed as C9:3).

[0117] On this basis, according to the object support corresponding to each of the multiple historical objects (ie, C1 to C9), the multiple historical objects in Table 1 may be sorted according to the object support to obtain the object list 307 .

[0118] On this basis, each historical object can be inserted into the tree structure with NULL as the root node 308 in descending order according to the object list 307, and the object support degree of each node in the tree structure is recorded to obtain an object tree.

[0119] For example, the object tree may include a first branch, a second branch, a third branch, and a fourth branch. The first branch may include nodes 3091, 3092, 3093, and 3094. The second branch may include nodes 3101, 3102, 3103, and 3104. The third branch may include a first sub-branch, a second sub-branch, and a third sub-branch. The first sub-branch may include nodes 3111, 3112, and 3113. The second sub-branch may include nodes 3111, 3112, and 3114. The third sub-branch may include nodes 3111, 3115, and 3116. The fourth branch may include nodes 3121, 3122, and 3123.

[0120] According to an embodiment of the present disclosure, operation S210 may include the following operations.

[0121] In response to receiving an object recommendation request from a user, the pattern identifier is matched with the P candidate pattern identifiers respectively to obtain pattern identifier matching results corresponding to the P candidate pattern identifiers. In response to the pattern identifier matching result indicating that the pattern identifier matches the candidate pattern identifier, the candidate pattern identifier is determined as a target pattern identifier. Multiple candidate object sets corresponding to the target pattern identifier are determined as M first candidate object sets.

[0122] According to an embodiment of the present disclosure, a pattern identifier matching result can be used to characterize whether a pattern identifier and a candidate pattern identifier are matched successfully. For example, when the pattern identifier matching result characterizes that a pattern identifier and a candidate pattern identifier are not matched successfully, the matching process of the next candidate pattern identifier can be continued. Alternatively, when the pattern identifier matching result characterizes that a pattern identifier and a candidate pattern identifier are matched successfully, the candidate object set corresponding to the candidate pattern identifier that is matched successfully can be determined as the first candidate object set.

[0123] Figure 4 An example schematic diagram of a process of determining M first candidate object sets according to a pattern identifier in an object recommendation request in response to receiving an object recommendation request from a user according to an embodiment of the present disclosure is schematically shown.

[0124] like Figure 4 As shown, in 400, in response to receiving an object recommendation request 401 from a user, the pattern identification object recommendation request 4011 in the object recommendation request 401 can be matched with the P candidate pattern identifications 402 respectively to obtain pattern identification matching results 403 corresponding to each of the P candidate pattern identifications 402. After obtaining the pattern identification matching results 403, operation S410 can be performed.

[0125] In operation S410 , it is determined whether the pattern identification matching result 403 representing the pattern identification 4011 matches the candidate pattern identification 402 .

[0126] If yes, the candidate mode identifier 402 may be determined as the target mode identifier 404. The multiple candidate object sets corresponding to the target mode identifier 404 may be determined as M first candidate object sets 405. If no, the process may be terminated.

[0127] According to an embodiment of the present disclosure, operation S220 may include the following operations.

[0128] For each of the M first candidate object sets and each of the multiple candidate objects, basic attribute information and extended attribute information corresponding to the object identifier are obtained from the first data source according to the object identifier corresponding to the candidate object. Quality assessment information corresponding to the object identifier is obtained from the second data source.

[0129] According to an embodiment of the present disclosure, each of the plurality of candidate objects may correspond to an object identifier. The attribute information of the candidate object may include basic attribute information, extended attribute information and quality assessment information.

[0130] According to an embodiment of the present disclosure, the first data source and the second data source may include at least one of the following: a local database, a cloud database, and a network resource. Alternatively, the first data source may include an object attribute service table, which may be used to store basic attribute information and extended attribute information corresponding to an object identifier. On this basis, basic attribute information including object evaluation information and extended attribute information including browsing information and operation frequency information may be extracted from the object attribute service table according to the object identifier corresponding to the candidate object.

[0131] According to an embodiment of the present disclosure, the second data source may include an object quality assessment model table, which may be used to store quality assessment information corresponding to an object identifier. On this basis, quality assessment information may be extracted from the object quality assessment model table according to the object identifier corresponding to the candidate object.

[0132] According to an embodiment of the present disclosure, operation S230 may include the following operations.

[0133] For each of the M first candidate object sets, the set attribute information corresponding to the first candidate object set is determined based on the object evaluation information corresponding to each of the multiple candidate objects. The set quality evaluation information corresponding to the first candidate object set is determined based on the browsing information, operation frequency information, and quality evaluation information corresponding to each of the multiple candidate objects. The object set evaluation result corresponding to the first candidate object set is determined based on the association information, the set attribute information, and the set quality evaluation information. The M first candidate object sets are screened based on the object set evaluation results corresponding to each of the M first candidate object sets to obtain N second candidate object sets.

[0134] According to an embodiment of the present disclosure, each of the M first candidate object sets may correspond to association information. The association information may be used to characterize the degree of association between multiple candidate objects in the first candidate object set. The basic attribute information may include object evaluation information. The extended attribute information may include browsing situation information and operation frequency information.

[0135] According to an embodiment of the present disclosure, at least one candidate object included in the first candidate object set can be determined, and on this basis, the set attribute information corresponding to the first candidate object set can be determined according to the object evaluation information corresponding to each of the at least one candidate object. According to the object evaluation information corresponding to each of the at least one candidate object. The specific method of determining the set attribute information corresponding to the first candidate object set can be set according to actual business needs and is not limited here. For example, at least one of the following processing methods can be performed on the object evaluation information corresponding to each of the at least one candidate object: information cleaning processing, information classification processing, and information analysis processing.

[0136] According to the embodiments of the present disclosure, after obtaining the candidate object attribute information corresponding to each of the multiple candidate objects, the main object corresponding to the target link, the object cluster associated with the main object, and the candidate object attribute information corresponding to each of the multiple candidate objects can be associated and stored as model data. On this basis, by inputting the first candidate object set and the candidate object attribute information corresponding to each of the multiple candidate objects, a second candidate object set that meets the user's needs can be calculated in real time by using a heuristic search algorithm to iterate in a loop.

[0137] According to an embodiment of the present disclosure, a heuristic search algorithm may refer to an algorithm that guides a search process by utilizing a heuristic function (i.e., HeuristicFunction). Loop iteration may refer to the execution mode of a heuristic search algorithm. The heuristic search algorithm may be used to loop iteratively perform loop iterative processing on a first candidate object set and candidate object attribute information corresponding to each of a plurality of candidate objects to obtain a second candidate object set. For example, the processing procedure of the heuristic search algorithm may include: initialization, heuristic function evaluation, candidate solution set generation, candidate solution selection, state change, and judgment of termination conditions. The process of loop iterative processing may refer to repeated execution of heuristic function evaluation, candidate solution set generation, candidate solution selection, state change, and judgment of termination conditions.

[0138] Specifically, initialization may refer to setting the initial state of the heuristic search algorithm, and the initial state may include the starting node and solution space of the search. Heuristic function evaluation may refer to using the heuristic function to evaluate the current state to obtain a heuristic value, which may be used to measure the degree of superiority of the current state relative to the target state. Candidate solution set generation may refer to generating a candidate solution set based on the current state and the heuristic value, and the candidate solution set may include multiple candidate solutions, and the candidate solutions may be used to characterize the possibility of moving in a direction closer to the target state. Candidate solution selection may refer to selecting a more potential candidate solution from the multiple candidate solutions included in the candidate solution set as the next moving direction. The selection method may include at least one of the following: selection based on heuristic value, selection based on priority queue, and random selection. State change may refer to changing the current state to the next state according to the selected candidate solution, that is, taking a step towards a direction closer to the target state. Judging the termination condition may refer to judging whether the search meets the termination condition, and the termination condition may include at least one of the following: finding the target state, exceeding the time threshold, or exceeding the search depth threshold.

[0139] According to an embodiment of the present disclosure, model data may include a main object (e.g., a user intended object), an object cluster associated with the main object (e.g., all objects in an object pool that has an association relationship with the main object), object evaluation information corresponding to each of a plurality of candidate objects (e.g., price information of each of the plurality of candidate objects), and quality evaluation information corresponding to each of the plurality of candidate objects (e.g., quality evaluation scores of each of the plurality of candidate objects).

[0140] According to an embodiment of the present disclosure, the model data may further include a mapping relationship and a mapping mutually exclusive relationship. The mapping relationship may be used to characterize the associated object identifier and the corresponding association value of each associated object in the main object and the object cluster. The mapping mutually exclusive relationship may be used to characterize the one-to-many relationship between the associated object identifier of each associated object in the object cluster and the candidate object.

[0141] According to an embodiment of the present disclosure, determining an object set evaluation result corresponding to the first candidate object set according to association information, set attribute information, and set quality evaluation information may include the following operations.

[0142] Determine a first product value according to the first weight and the association information. Determine a second product value according to the second weight and the set attribute information. Determine a third product value according to the third weight and the set quality assessment information. Determine an object set assessment result according to the first product value, the second product value, and the third product value.

[0143] According to an embodiment of the present disclosure, the process of determining the object set evaluation result can be defined as a multi-objective mathematical combination minimization problem. In this case, a heuristic search algorithm can be applied to iteratively calculate the object set evaluation result in real time, and an objective function can be generated by assigning different weights to obtain a personalized object set evaluation result that meets the user's preferences and interests.

[0144] According to an embodiment of the present disclosure, the process of determining the object set evaluation result corresponding to the first candidate object set according to the association information, the set attribute information and the set quality evaluation information can be shown as the following formula (1).

[0145] R=w1·X+w2·Y+w3·Z (1)

[0146] Among them, R represents the object set evaluation result, w1 represents the first weight, X represents the associated information, w1·X represents the first product value, w2 represents the second weight, Y represents the set attribute information, w2·Y represents the second product value, w3 represents the third weight, Z represents the set quality assessment information, and w3·Z represents the third product value.

[0147] According to an embodiment of the present disclosure, the association information can be used to characterize the association value of each candidate object in the first candidate object set. The set attribute information can be determined based on the object evaluation information corresponding to each of the multiple candidate objects, and the object evaluation information can be used to characterize the object value. The set quality evaluation information can be determined based on the browsing information, operation frequency information and quality evaluation information corresponding to each of the multiple candidate objects.

[0148] According to an embodiment of the present disclosure, by controlling the second weight corresponding to the set attribute information, a second candidate object set with a smaller gap between the total amount of objects and the activity amount in the M first candidate object sets can be determined. By controlling the first weight corresponding to the association information, a second candidate object set with a closer association relationship in the M first candidate object sets can be determined. By controlling the third weight corresponding to the quality assessment information, a second candidate object set with a higher quality in the M first candidate object sets can be determined.

[0149] According to an embodiment of the present disclosure, a constraint condition may also be set to ensure the validity of the second candidate object set. For example, the constraint condition may be set to require that the set attribute information corresponding to the first candidate object set is greater than or equal to the activity amount. Alternatively, the constraint condition may be set to require that the number of candidate objects in the first candidate object set is less than a predetermined object number threshold.

[0150] According to an embodiment of the present disclosure, each of the N second candidate object sets may correspond to a different candidate object, and each candidate object may correspond to a different number of items. In the search space corresponding to different pattern identifiers, the number of second candidate object sets, i.e., N, may be determined by the following formula (2).

[0151]

[0152] Wherein, N may represent the number of the second candidate object set, min may represent the predetermined minimum number of objects, max may represent the predetermined minimum number of objects, and |G| may represent the number of candidate objects in the second candidate object set.

[0153] According to the embodiments of the present disclosure, in order to solve the problem that users need to perform complex price calculations based on activity rules, a first set of candidate objects with high correlation and high selection probability is first mined from an activity object pool using a frequent item mining algorithm, and then the first set of candidate objects is processed using a heuristic search algorithm based on candidate object attribute information corresponding to each of the multiple candidate objects in the first set of candidate objects. This can thereby obtain a personalized second set of candidate objects that meets the user's preferences and interests, thereby improving the accuracy of object recommendations.

[0154] Figure 5 An example schematic diagram of a process of processing M first candidate object sets to obtain N second candidate object sets according to the candidate object attribute information corresponding to each of the multiple candidate objects according to an embodiment of the present disclosure is schematically shown.

[0155] like Figure 5 As shown in 500 , for each of the M first candidate object sets 501 , the first candidate object set 501 may include multiple candidate objects 501_1 . Each of the multiple candidate objects 501_1 may correspond to an object identifier 502 .

[0156] For each candidate object 501_1 among the multiple candidate objects 501_1, basic attribute information 503 and extended attribute information 504 corresponding to the object identifier 502 can be obtained from the first data source according to the object identifier 502 corresponding to the candidate object 501_1. The basic attribute information 503 can include object evaluation information 503_1. The extended attribute information 504 can include browsing information 504_1 and operation frequency information 504_2. The quality evaluation information 505 corresponding to the object identifier 502 can be obtained from the second data source.

[0157] After obtaining the basic attribute information 503, extended attribute information 504 and quality assessment information 505 corresponding to the object identifier 502, the set attribute information 507 corresponding to the first candidate object set 501 can be determined according to the object assessment information 503_1 corresponding to each of the plurality of candidate objects 501_1.

[0158] According to the browsing situation information 504_1 , the operation frequency information 504_2 , and the quality evaluation information 505 corresponding to each of the plurality of candidate objects 501_1 , the set quality evaluation information 508 corresponding to the first candidate object set 501 is determined.

[0159] The M first candidate object sets 501 may each correspond to associated information 506. After obtaining the set attribute information 507 and the set quality assessment information 508, the object set assessment result 509 corresponding to the first candidate object set 501 may be determined according to the associated information 506, the set attribute information 507 and the set quality assessment information 508.

[0160] After obtaining the object set evaluation result 509 corresponding to each first candidate object set 501 , the M first candidate object sets 501 may be screened according to the object set evaluation results 509 corresponding to each of the M first candidate object sets 501 to obtain N second candidate object sets 510 .

[0161] According to an embodiment of the present disclosure, the object recommendation method 200 may further include the following operations.

[0162] In response to detecting a user operation on a target link in the first page, a mode identifier corresponding to the target link is determined, wherein the user has a user identifier. According to the user identifier, a user portrait corresponding to the user identifier is obtained, wherein the user portrait is determined based on the user's behavior data within a preset historical time period. According to the user portrait, user preference information corresponding to the user is determined.

[0163] According to an embodiment of the present disclosure, a user portrait may refer to a labeled user model abstracted from information such as user attributes, user preferences, living habits, and user behaviors. User portraits may be used to describe users to facilitate computer processing. A user portrait corresponding to each user may be predetermined based on each user's respective attributes, user preferences, living habits, and user behaviors, and the user portrait corresponding to each user may be stored in a data source.

[0164] According to an embodiment of the present disclosure, in response to detecting a user operation on a target link in the first page, a user profile corresponding to the user identifier can be determined from a data source according to the user identifier corresponding to the user. By pulling the user profile, user preference information can be obtained according to the user's historical browsing record.

[0165] According to an embodiment of the present disclosure, operation S240 may include the following operations.

[0166] According to the user preference information and the object set evaluation results corresponding to each of the N second candidate object sets, the N second candidate object sets are sorted to obtain a candidate object set sorting result. According to a preset threshold and the candidate object set sorting result, at least one recommended object set is determined from the N second candidate object sets.

[0167] According to an embodiment of the present disclosure, each of the N second candidate object sets may correspond to an object set evaluation result.

[0168] According to an embodiment of the present disclosure, after obtaining N second candidate object sets, the N second candidate object sets can be sorted according to user preference information and object set evaluation results corresponding to each of the N second candidate object sets, so as to more accurately determine a personalized recommended object set that meets the user's preferences and interests.

[0169] According to the embodiments of the present disclosure, the preset threshold can be set according to actual business needs and is not limited here. For example, the preset threshold can be set to 3, in which case the second candidate object set in the top three of the candidate object set ranking result can be determined as the recommended object set.

[0170] According to an embodiment of the present disclosure, the object recommendation method 200 may further include the following operations.

[0171] At least one set of recommended objects is displayed to the user in the output area of ​​the second page.

[0172] According to an embodiment of the present disclosure, the second page may refer to a page associated with the first page. The output area may include a target location and / or a target interface. After obtaining at least one set of recommended objects, at least one set of recommended objects may be placed at a target location and / or a target interface on the second page to display the recommended information to at least one user.

[0173] Figure 6 An example schematic diagram of an object recommendation process according to an embodiment of the present disclosure is schematically shown.

[0174] like Figure 6 As shown, in 600, historical data sets 602 corresponding to the P candidate pattern identifiers 601 may be pre-acquired. Based on the historical data sets 602 corresponding to the P candidate pattern identifiers 601, multiple candidate object sets 603 corresponding to the P candidate pattern identifiers 601 are determined.

[0175] After obtaining multiple candidate object sets 603 corresponding to the P candidate mode identifiers 601, the multiple candidate object sets 603 corresponding to the P candidate mode identifiers 601 and the candidate user portraits corresponding to at least one candidate user identifier can be stored in the storage system 604. The storage system can maintain at least a first data source 6041 and a second data source 6042.

[0176] In response to detecting a user operation on a target link 605 in the first page, a mode identifier 606 corresponding to the target link 605 may be determined. According to the mode identifier 606, M first candidate object sets 607 are determined. According to the M first candidate object sets 607, candidate object attribute information 608 corresponding to each of the plurality of candidate objects in the first candidate object set 607 is obtained.

[0177] After obtaining the candidate object attribute information 608 corresponding to each of the multiple candidate objects in the first candidate object set 607, an object model 609 can be established according to the M first candidate object sets 607 and the candidate object attribute information 608 corresponding to each of the multiple candidate objects. The M first candidate object sets 607 are processed using the object model 609 to obtain N second candidate object sets 610.

[0178] After obtaining the N second candidate object sets 610, object set evaluation results corresponding to each of the N second candidate object sets 610 may be determined according to the candidate object attribute information 608. According to the user identifier, the user identifier is matched with at least one candidate user identifier in the storage system 604 to obtain a user portrait corresponding to the user identifier. According to the user portrait, user preference information corresponding to the user is determined.

[0179] After obtaining the object set evaluation results corresponding to each of the N second candidate object sets 610 and the user preference information corresponding to the user, the N second candidate object sets 610 can be sorted according to the user preference information and the object set evaluation results corresponding to each of the N second candidate object sets 610 to obtain the candidate object set sorting result 611.

[0180] After obtaining the candidate object set ranking result 611 , at least one recommended object set 612 may be determined from the N second candidate object sets 610 according to a preset threshold and the candidate object set ranking result 611 .

[0181] The above are only exemplary embodiments, but are not limited thereto, and may also include other object recommendation methods known in the art as long as the efficiency and accuracy of object recommendation can be improved.

[0182] Figure 7 The block diagram of the object recommendation device according to an embodiment of the present disclosure is schematically shown.

[0183] like Figure 7 As shown, the object recommendation device 700 may include a first determination module 710 , a first acquisition module 720 , a first processing module 730 and a second processing module 740 .

[0184] The first determination module 710 is used to determine M first candidate object sets in response to receiving an object recommendation request from a user, according to a pattern identifier in the object recommendation request, wherein the object recommendation request also includes user preference information corresponding to the user, and the M first candidate object sets each include multiple candidate objects, and M is a positive integer greater than 1.

[0185] The first acquisition module 720 is used to acquire candidate object attribute information corresponding to each of the plurality of candidate objects according to the M first candidate object sets.

[0186] The first processing module 730 is used to process the M first candidate object sets according to the candidate object attribute information corresponding to each of the multiple candidate objects to obtain N second candidate object sets, where N is a positive integer greater than 1 and less than or equal to M.

[0187] The second processing module 740 is used to process the N second candidate object sets according to the user preference information to obtain at least one recommended object set.

[0188] According to an embodiment of the present disclosure, each of the plurality of candidate objects corresponds to an object identifier, and the attribute information of the candidate objects includes basic attribute information, extended attribute information and quality assessment information.

[0189] According to an embodiment of the present disclosure, the first acquisition module 720 may include a first acquisition unit and a second acquisition unit.

[0190] The first acquisition unit is used to acquire, for each first candidate object set in the M first candidate object sets and for each candidate object in the multiple candidate objects, basic attribute information and extended attribute information corresponding to the object identifier from the first data source according to the object identifier corresponding to the candidate object.

[0191] The second acquisition unit is used to acquire quality assessment information corresponding to the object identifier from a second data source.

[0192] According to an embodiment of the present disclosure, each of the M first candidate object sets corresponds to associated information, and the associated information is used to characterize the degree of association between multiple candidate objects in the first candidate object set. The basic attribute information includes object evaluation information, and the extended attribute information includes browsing status information and operation frequency information.

[0193] According to an embodiment of the present disclosure, the first processing module 730 may include a first determining unit, a second determining unit, a third determining unit, and a screening unit.

[0194] The first determining unit is configured to determine, for each of the M first candidate object sets, set attribute information corresponding to the first candidate object set according to object evaluation information corresponding to each of the plurality of candidate objects.

[0195] The second determining unit is used to determine the set quality evaluation information corresponding to the first candidate object set according to the browsing situation information, operation frequency information and quality evaluation information corresponding to each of the plurality of candidate objects.

[0196] The third determining unit is used to determine the object set evaluation result corresponding to the first candidate object set according to the association information, the set attribute information and the set quality evaluation information.

[0197] The screening unit is used to screen the M first candidate object sets according to the object set evaluation results corresponding to each of the M first candidate object sets to obtain N second candidate object sets.

[0198] According to an embodiment of the present disclosure, the third determining unit may include a first determining subunit, a second determining subunit, a third determining subunit, and a fourth determining subunit.

[0199] The first determining subunit is used to determine a first product value according to the first weight and the associated information.

[0200] The second determining subunit is used to determine a second product value according to the second weight and the set attribute information.

[0201] The third determining subunit is used to determine a third product value according to the third weight and the set quality assessment information.

[0202] The fourth determining subunit is used to determine the object set evaluation result according to the first product value, the second product value and the third product value.

[0203] According to an embodiment of the present disclosure, the object recommendation apparatus 700 may further include a second acquisition module and a second determination module.

[0204] The second acquisition module is used to acquire the historical data sets corresponding to each of the P candidate pattern identifiers, where P is a positive integer.

[0205] The second determination module is used to determine a plurality of candidate object sets corresponding to each of the P candidate pattern identifiers according to the historical data sets corresponding to each of the P candidate pattern identifiers.

[0206] According to an embodiment of the present disclosure, the historical data set includes Q historical order data, each of the Q historical order data corresponds to a plurality of historical objects, and Q is a positive integer.

[0207] According to an embodiment of the present disclosure, the second determining module may include a fourth determining unit, a constructing unit, and a fifth determining unit.

[0208] The fourth determining unit is used to determine, for each of the P candidate pattern identifiers, the object support corresponding to each of the multiple historical objects according to the Q historical order data corresponding to the candidate pattern identifier.

[0209] The construction unit is used to construct an object list and an object tree according to object support corresponding to each of the multiple historical objects.

[0210] The fifth determining unit is used to determine a plurality of candidate object sets corresponding to the candidate pattern identifiers according to the object list and the object tree.

[0211] According to an embodiment of the present disclosure, the first determination module 710 may include a matching unit, a sixth determination unit, and a seventh determination unit.

[0212] The matching unit is used to match the pattern identifier with the P candidate pattern identifiers respectively in response to receiving an object recommendation request from a user, and obtain pattern identifier matching results corresponding to each of the P candidate pattern identifiers.

[0213] The sixth determining unit is configured to determine the candidate pattern identifier as a target pattern identifier in response to the pattern identifier matching result indicating that the pattern identifier matches the candidate pattern identifier.

[0214] The seventh determining unit is used to determine multiple candidate object sets corresponding to the target pattern identifier as M first candidate object sets.

[0215] According to an embodiment of the present disclosure, the object recommendation apparatus 700 may further include a third determining module, a third acquiring module and a fourth determining module.

[0216] The third determination module is used to determine a mode identifier corresponding to the target link in response to detecting a user operation of the user on the target link in the first page, wherein the user corresponds to a user identifier.

[0217] The third acquisition module is used to acquire a user portrait corresponding to the user identifier according to the user identifier, wherein the user portrait is determined based on the user's behavior data within a preset historical time period.

[0218] The fourth determination module is used to determine the user preference information corresponding to the user according to the user portrait.

[0219] According to an embodiment of the present disclosure, each of the N second candidate object sets corresponds to an object set evaluation result.

[0220] According to an embodiment of the present disclosure, the second processing module 740 may include a sorting unit and an eighth determining unit.

[0221] The sorting unit is used to sort the N second candidate object sets according to the user preference information and the object set evaluation results corresponding to each of the N second candidate object sets to obtain a candidate object set sorting result.

[0222] An eighth determining unit is used to determine at least one recommended object set from the N second candidate object sets according to a preset threshold and the candidate object set sorting result.

[0223] According to an embodiment of the present disclosure, the object recommendation apparatus 700 may further include a presentation module.

[0224] A display module is used to display at least one set of recommended objects to the user in an output area of ​​a second page, wherein the second page is associated with the first page.

[0225] According to the embodiments of the present invention, any one or more of the modules, submodules, units, and subunits, or at least part of the functions of any one of them can be implemented in one module. According to the embodiments of the present invention, any one or more of the modules, submodules, units, and subunits can be split into multiple modules for implementation. According to the embodiments of the present invention, any one or more of the modules, submodules, units, and subunits can be at least partially implemented as hardware circuits, such as field programmable gate arrays (FPGAs), programmable logic arrays (PLAs), systems on chips, systems on substrates, systems on packages, application specific integrated circuits (ASICs), or can be implemented by hardware or firmware in any other reasonable way of integrating or packaging the circuit, or implemented in any one of the three implementation methods of software, hardware, and firmware, or in any appropriate combination of any of them. Alternatively, according to the embodiments of the present invention, one or more of the modules, submodules, units, and subunits can be at least partially implemented as computer program modules, and when the computer program modules are run, the corresponding functions can be performed.

[0226] For example, any multiple of the first determination module 710, the first acquisition module 720, the first processing module 730 and the second processing module 740 can be combined in one module / unit / sub-unit for implementation, or any one of the modules / units / sub-units can be split into multiple modules / units / sub-units. Alternatively, at least part of the functions of one or more of these modules / units / sub-units can be combined with at least part of the functions of other modules / units / sub-units and implemented in one module / unit / sub-unit. According to an embodiment of the present disclosure, at least one of the first determination module 710, the first acquisition module 720, the first processing module 730 and the second processing module 740 can be at least partially implemented as a hardware circuit, such as a field programmable gate array (FPGA), a programmable logic array (PLA), a system on a chip, a system on a substrate, a system on a package, an application specific integrated circuit (ASIC), or can be implemented by hardware or firmware such as any other reasonable way of integrating or packaging the circuit, or by any one of the three implementation methods of software, hardware and firmware or by a suitable combination of any of them. Alternatively, at least one of the first determination module 710, the first acquisition module 720, the first processing module 730 and the second processing module 740 may be at least partially implemented as a computer program module, and when the computer program module is executed, a corresponding function may be performed.

[0227] It should be noted that the object recommendation device part in the embodiment of the present disclosure corresponds to the object recommendation method part in the embodiment of the present disclosure. The description of the object recommendation device part specifically refers to the object recommendation method part, which will not be repeated here.

[0228] Figure 8 A block diagram of an electronic device suitable for implementing an object recommendation method according to an embodiment of the present disclosure is schematically shown. Figure 8 The electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.

[0229] like Figure 8 As shown, the computer electronic device 800 according to the embodiment of the present disclosure includes a processor 801, which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM) 802 or the program loaded from the storage part 809 to the random access memory (RAM) 803. The processor 801 may include, for example, a general-purpose microprocessor (such as a CPU), an instruction set processor and / or a related chipset and / or a special-purpose microprocessor (for example, an application-specific integrated circuit (ASIC)), etc. The processor 801 may also include an onboard memory for caching purposes. The processor 801 may include a single processing unit or multiple processing units for performing different actions of the method flow according to the embodiment of the present disclosure.

[0230] In RAM 803, various programs and data required for the operation of electronic device 800 are stored. Processor 801, ROM 802 and RAM 803 are connected to each other via bus 804. Processor 801 performs various operations of the method flow according to the embodiment of the present disclosure by executing the program in ROM 802 and / or RAM 803. It should be noted that the program can also be stored in one or more memories other than ROM 802 and RAM 803. Processor 801 can also perform various operations of the method flow according to the embodiment of the present disclosure by executing the program stored in the one or more memories.

[0231] According to an embodiment of the present disclosure, the electronic device 800 may further include an input / output (I / O) interface 805, which is also connected to the bus 804. The electronic device 800 may further include one or more of the following components connected to the input / output (I / O) interface 805: an input portion 806 including a keyboard, a mouse, etc.; an output portion 807 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage portion 808 including a hard disk, etc.; and a communication portion 809 including a network interface card such as a LAN card, a modem, etc. The communication portion 809 performs communication processing via a network such as the Internet. A drive 810 is also connected to the input / output (I / O) interface 805 as needed. A removable medium 811, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 810 as needed, so that a computer program read therefrom is installed into the storage portion 808 as needed.

[0232] According to an embodiment of the present disclosure, the method flow according to an embodiment of the present disclosure can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a computer-readable storage medium, and the computer program contains a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 809, and / or installed from the removable medium 811. When the computer program is executed by the processor 801, the above-mentioned functions defined in the system of the embodiment of the present disclosure are executed. According to an embodiment of the present disclosure, the system, equipment, device, module, unit, etc. described above can be implemented by a computer program module.

[0233] The present disclosure also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or may exist independently without being assembled into the device / apparatus / system. The above computer-readable storage medium carries one or more programs, and when the above one or more programs are executed, the method according to the embodiment of the present disclosure is implemented.

[0234] According to an embodiment of the present disclosure, the computer-readable storage medium may be a non-volatile computer-readable storage medium. For example, it may include, but is not limited to: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that may be used by or in combination with an instruction execution system, apparatus, or device.

[0235] For example, according to an embodiment of the present disclosure, the computer-readable storage medium may include the ROM 802 and / or the RAM 803 described above and / or one or more memories other than the ROM 802 and the RAM 803 .

[0236] An embodiment of the present disclosure also includes a computer program product, which includes a computer program, and the computer program contains a program code for executing the method provided by the embodiment of the present disclosure. When the computer program product runs on an electronic device, the program code is used to enable the electronic device to implement the object recommendation method provided by the embodiment of the present disclosure.

[0237] When the computer program is executed by the processor 801, the above functions defined in the system / device of the embodiment of the present disclosure are executed. According to the embodiment of the present disclosure, the system, device, module, unit, etc. described above can be implemented by a computer program module.

[0238] In one embodiment, the computer program may rely on tangible storage media such as optical storage devices, magnetic storage devices, etc. In another embodiment, the computer program may also be transmitted and distributed in the form of signals on a network medium, and downloaded and installed through the communication part 809, and / or installed from a removable medium 811. The program code contained in the computer program may be transmitted using any appropriate network medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.

[0239] According to an embodiment of the present disclosure, the program code for executing the computer program provided by the embodiment of the present disclosure can be written in any combination of one or more programming languages. Specifically, these computing programs can be implemented using high-level process and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages ​​include, but are not limited to, Java, C++, python, "C" language or similar programming languages. The program code can be executed entirely on the user computing device, partially on the user device, partially on the remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (for example, using an Internet service provider to connect through the Internet).

[0240] The flowcharts and block diagrams in the accompanying drawings illustrate the possible architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flowchart or block diagram may represent a module, a program segment, or a part of a code, and the above-mentioned module, program segment, or a part of the code contains 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 box may also occur in an order different from that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flowchart, and the combination of boxes in the block diagram or flowchart, can be implemented with a dedicated hardware-based system that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions. It can be understood by those skilled in the art that the features recorded in the various embodiments and / or claims of the present disclosure can be combined and / or combined in a variety of ways, even if such a combination or combination is not explicitly recorded in the present disclosure. In particular, without departing from the spirit and teaching of the present disclosure, the features described in the various embodiments and / or claims of the present disclosure may be combined and / or combined in a variety of ways. All of these combinations and / or combinations fall within the scope of the present disclosure.

[0241] The embodiments of the present disclosure are described above. However, these embodiments are only for illustrative purposes and are not intended to limit the scope of the present disclosure. Although the embodiments are described above separately, this does not mean that the measures in the various embodiments cannot be used in combination to advantage. The scope of the present disclosure is defined by the attached claims and their equivalents. Without departing from the scope of the present disclosure, those skilled in the art may make a variety of substitutions and modifications, which should all fall within the scope of the present disclosure.

Claims

1. An object recommendation method, comprising: In response to receiving an object recommendation request from a user, determining M first candidate object sets according to a mode identifier in the object recommendation request, wherein the object recommendation request also includes user preference information corresponding to the user, and the M first candidate object sets each include multiple candidate objects, and M is a positive integer greater than 1; According to the M first candidate object sets, acquiring candidate object attribute information corresponding to each of the plurality of candidate objects; Processing the M first candidate object sets according to the candidate object attribute information corresponding to each of the multiple candidate objects to obtain N second candidate object sets, where N is a positive integer greater than 1 and less than or equal to M; and The N second candidate object sets are processed according to the user preference information to obtain at least one recommended object set.

2. The method according to claim 1, wherein: Each of the plurality of candidate objects corresponds to an object identifier, and the attribute information of the candidate objects includes basic attribute information, extended attribute information and quality assessment information; The acquiring, according to the M first candidate object sets, candidate object attribute information corresponding to each of the plurality of candidate objects comprises: For each first candidate object set in the M first candidate object sets, for each candidate object in the plurality of candidate objects, According to the object identifier corresponding to the candidate object, acquiring the basic attribute information and the extended attribute information corresponding to the object identifier from a first data source; as well as The quality assessment information corresponding to the object identifier is obtained from a second data source.

3. The method according to claim 2, wherein: The M first candidate object sets each correspond to associated information, the associated information is used to characterize the degree of association between the multiple candidate objects in the first candidate object set, the basic attribute information includes object evaluation information, and the extended attribute information includes browsing situation information and operation frequency information; The processing of the M first candidate object sets according to the candidate object attribute information corresponding to each of the multiple candidate objects to obtain the N second candidate object sets includes: For each first candidate object set in the M first candidate object sets, Determining set attribute information corresponding to the first set of candidate objects according to object evaluation information corresponding to each of the plurality of candidate objects; Determining set quality assessment information corresponding to the first set of candidate objects according to browsing situation information, operation frequency information, and quality assessment information corresponding to each of the plurality of candidate objects; Determining an object set evaluation result corresponding to the first candidate object set according to the association information, the set attribute information and the set quality evaluation information; and The M first candidate object sets are screened according to the object set evaluation results corresponding to each of the M first candidate object sets to obtain the N second candidate object sets.

4. The method according to claim 3, wherein: The determining, according to the association information, the set attribute information and the set quality assessment information, an object set assessment result corresponding to the first candidate object set comprises: Determining a first product value according to the first weight and the association information; Determining a second product value according to the second weight and the set attribute information; determining a third product value according to the third weight and the set quality assessment information; and The object set evaluation result is determined according to the first product value, the second product value and the third product value.

5. The method according to any one of claims 1 to 4, further comprising, before determining the M first candidate object sets in response to receiving an object recommendation request from a user according to a pattern identifier in the object recommendation request: Obtain the historical data sets corresponding to each of the P candidate pattern identifiers, where: P is a positive integer; as well as According to the historical data sets corresponding to the P candidate pattern identifiers, a plurality of candidate object sets corresponding to the P candidate pattern identifiers are determined.

6. The method according to claim 5, wherein: The historical data set includes Q historical order data, each of the Q historical order data corresponds to a plurality of historical objects, and Q is a positive integer; The determining, based on the historical data sets corresponding to the P candidate pattern identifiers, a plurality of candidate object sets corresponding to the P candidate pattern identifiers respectively comprises: For each candidate mode identifier among the P candidate mode identifiers, Determining, according to the Q pieces of historical order data corresponding to the candidate pattern identifiers, object supports corresponding to each of the plurality of historical objects; constructing an object list and an object tree according to the object support corresponding to each of the plurality of historical objects; as well as A plurality of candidate object sets corresponding to the candidate pattern identifiers are determined according to the object list and the object tree.

7. The method according to claim 5, wherein: In response to receiving an object recommendation request from a user, determining M first candidate object sets according to a mode identifier in the object recommendation request includes: In response to receiving an object recommendation request from a user, matching the pattern identifier with the P candidate pattern identifiers respectively to obtain pattern identifier matching results corresponding to each of the P candidate pattern identifiers; In response to the pattern identifier matching result indicating that the pattern identifier matches the candidate pattern identifier, determining the candidate pattern identifier as a target pattern identifier; and The multiple candidate object sets corresponding to the target pattern identifier are determined as the M first candidate object sets.

8. The method according to any one of claims 1 to 4, further comprising, before determining the M first candidate object sets in response to receiving an object recommendation request from a user and according to a pattern identifier in the object recommendation request: In response to detecting a user operation of the user on a target link in the first page, determining the mode identifier corresponding to the target link, wherein: The user corresponds to a user identifier; According to the user identifier, obtaining a user portrait corresponding to the user identifier, wherein the user portrait is determined based on the behavior data of the user in a preset historical time period; and According to the user portrait, user preference information corresponding to the user is determined.

9. The method according to claim 8, wherein: Each of the N second candidate object sets corresponds to an object set evaluation result; The processing of the N second candidate object sets according to the user preference information to obtain at least one recommended object set includes: Sorting the N second candidate object sets according to the user preference information and the object set evaluation results corresponding to each of the N second candidate object sets to obtain a candidate object set sorting result; as well as According to a preset threshold and the ranking result of the candidate object set, the at least one recommended object set is determined from the N second candidate object sets.

10. The method according to claim 8, further comprising, after processing the N second candidate object sets according to the user preference information to obtain at least one recommended object set: The at least one set of recommended objects is displayed to the user in an output area of ​​the second page, wherein: The second page is associated with the first page.

11. An object recommendation device, comprising: a first determination module, configured to, in response to receiving an object recommendation request from a user, determine M first candidate object sets according to a mode identifier in the object recommendation request, wherein the object recommendation request further includes user preference information corresponding to the user, and each of the M first candidate object sets includes a plurality of candidate objects, and M is a positive integer greater than 1; A first acquisition module, configured to acquire, according to the M first candidate object sets, candidate object attribute information corresponding to each of the plurality of candidate objects; a first processing module, configured to process the M first candidate object sets according to the candidate object attribute information corresponding to each of the plurality of candidate objects to obtain N second candidate object sets, wherein N is a positive integer greater than 1 and less than or equal to M; and The second processing module is used to process the N second candidate object sets according to the user preference information to obtain at least one recommended object set.

12. An electronic device comprising: one or more processors; a memory for storing one or more instructions, Wherein, when the one or more instructions are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 10.

13. A computer-readable storage medium having executable instructions stored thereon, wherein when the executable instructions are executed by a processor, the processor is enabled to implement the method according to any one of claims 1 to 10.

14. A computer program product, comprising computer executable instructions, which are used to implement the method of any one of claims 1 to 10 when executed.