Commodity recommendation method, device, electronic device, storage medium and program product
By obtaining user history to access products and using search engine product association databases to calculate similarity scores between products, the problem of poor product recommendation results caused by data sparseness of cross-border e-commerce platforms is solved, and higher recommendation coverage and accuracy are achieved.
Patent Information
- Application Number
- CN202411628555.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-13
- Publication Date
- 2025-04-08
AI Technical Summary
Cross-border e-commerce platforms face data sparseness problems, resulting in low correlation between products and room for improvement in the recommendation effect of traditional collaborative algorithms.
By obtaining the historical access products of the user to be recommended as reference products, search for similar products in the product association database of the search engine, calculate the potential similarity relationship between products using the similarity scores between multiple object data, and construct a collection of similar products and store them in the product association database.
Fully explore and utilize the potential similarities between products, enrich and expand the scope of product recommendations, and improve the coverage and accuracy of product recommendations.
Smart Images

Figure CN119784457A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a product recommendation method, a data set construction method, a device, an electronic device, a storage medium, and a computer program product. Background Art
[0002] In various Internet scenarios such as e-commerce websites, social media platforms, streaming services, and news aggregation applications, personalized recommendations can be used to mine users' potential needs and interests, and to recommend content of interest to users. On today's e-commerce platforms, personalized product recommendations for users are a very important algorithm capability. This type of algorithm can not only effectively mine and utilize users' historical behavior preferences to recommend the most suitable products to users, but also greatly improve the conversion efficiency of e-commerce platforms and create considerable economic value.
[0003] Personalized recommendation systems usually use algorithms such as collaborative filtering, content-based recommendation, matrix decomposition, and deep learning to explore users' potential needs and interests, and generate personalized recommendation lists based on these insights. In actual application scenarios, the optimization of recommendation algorithms is an issue that continues to receive attention, and there is still room for further improvement in the accuracy of recommendations. Summary of the invention
[0004] The embodiments of the present application provide a product recommendation method, a data set construction method, an apparatus, an electronic device, a storage medium, and a computer program product to solve one or more of the above-mentioned technical problems.
[0005] In a first aspect, an embodiment of the present application provides a product recommendation method, including: obtaining reference products that have been historically visited by a user to be recommended; searching for recommended products associated with the reference products in a product association database of a search engine; each candidate product in the product association database has at least one similar product, and a similarity score between the similar product and the candidate product is calculated based on the similarity scores between multiple object data that have respectively performed operations on the similar product and the candidate product; and pushing some or all of the recommended products to the page client of the user to be recommended.
[0006] In a second aspect, an embodiment of the present application provides a method for constructing a data set, comprising: obtaining user behavior data from multiple e-commerce platforms, the multiple e-commerce platforms including at least a first type of e-commerce platform serving multiple regions and a second type of e-commerce platform serving a single region; splitting candidate products and object data from the user behavior data; screening corresponding similar products for each candidate product, and constructing a similar product set based on the similarity relationship between the candidate product and the similar product, and storing it in a product association database associated with a search engine; the product association database is used to provide recommended products associated with reference products that have been historically visited by the user to be recommended in the first type of e-commerce platform, and some or all of the recommended products are pushed to the page client of the user to be recommended.
[0007] According to the embodiment of the present application, when a user is determined as a user to be recommended for product recommendation, first obtain the products that the user to be recommended has visited historically as reference products, and then search for recommended products associated with the reference products in the product association database pre-created in the search engine. The product association database includes multiple candidate products, and at least one similar product is configured for the candidate product in advance. When selecting a corresponding similar product for the candidate product, the similarity score between the candidate product and other products is used. The similarity score is calculated based on the similarity score between multiple object data that have operation behaviors on the similar products and the candidate products, and further pushes some or all of the recommended products to the page client of the user to be recommended for user reference. Since the similarity scores between multiple object data that have operation behaviors on the similar products and the candidate products are considered in the calculation of the similar products of the candidate products, the types of object data are rich, so that the potential similarity relationship between the products can be fully explored and utilized, enriching and expanding the recommendation scope of the products, and more effectively improving the coverage rate and accuracy of product recommendations.
[0008] The above description is only an overview of the technical solution of the present application. In order to more clearly understand the technical means of the present application, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the present application more obvious and easy to understand, the specific implementation methods of the present application are listed below. BRIEF DESCRIPTION OF THE DRAWINGS
[0009] In the accompanying drawings, unless otherwise specified, the same reference numerals throughout the multiple drawings represent the same or similar parts or elements. These drawings are not necessarily drawn to scale. It should be understood that these drawings only depict some embodiments according to the present application and should not be regarded as limiting the scope of the present application.
[0010] Figure 1 An example of a product recommendation method of the present application is shown;
[0011] Figure 2 A schematic diagram showing a comparison between a multi-layer bipartite graph according to an embodiment of the present application and a traditional bipartite graph;
[0012] Figure 3 A flowchart of a method for recommending products provided in an embodiment of the present application is shown;
[0013] Figure 4 A flowchart showing a method for constructing a data set provided in an embodiment of the present application is shown;
[0014] Figure 5 A structural block diagram of a device for recommending goods provided in an embodiment of the present application is shown;
[0015] Figure 6 A structural block diagram of a data set construction device provided in an embodiment of the present application is shown; and
[0016] Figure 7 A block diagram of an electronic device used to implement an embodiment of the present application is shown. DETAILED DESCRIPTION
[0017] In the following, only some exemplary embodiments are briefly described. As those skilled in the art will appreciate, the described embodiments may be modified in various ways without departing from the concept or scope of the present application. Therefore, the drawings and descriptions are considered to be exemplary in nature and not restrictive.
[0018] To facilitate understanding of the technical solutions of the embodiments of the present application, the following describes the related technologies of the embodiments of the present application. The following related technologies can be combined with the technical solutions of the embodiments of the present application as optional solutions, and they all belong to the protection scope of the embodiments of the present application.
[0019] Personalized recommendation is a service model in the field of Internet technology and artificial intelligence. It aims to provide customized information, products or content recommendations for each user by analyzing the user's historical behavior, personal information, preference characteristics and other data. This technology is widely used. Existing user personalized recommendation algorithms can be roughly divided into: 1) content-based recommendation, which uses user historical behavior, preferences, product information, etc. for recommendation; 2) collaborative filtering-based recommendation, which uses the similarity between users or the similarity between products to find the user or product closest to the target user, and then recommends; 3) model-based recommendation, which uses machine learning algorithms, especially deep neural network algorithms, to build a preference evaluation model between users and products; 4) knowledge graph-based recommendation, which uses the relationship between entity objects in the knowledge graph for reasoning and recommendation; 5) popularity-based recommendation, which uses the heat statistical indicators of products within a certain range, and then makes hot recommendations; 6) hybrid recommendation, which integrates the outputs of multiple recommendation technologies, and then makes preferential recommendations.
[0020] However, no matter which of the above algorithms is used, they all face the problem of data sparsity when facing cross-border e-commerce scenarios. Cross-border e-commerce platforms usually serve multiple countries distributed in different geographical regions. According to the number of regions they serve, they usually contain multiple sub-platforms (or national sites). Compared with e-commerce platforms in a single geographical area, the categories and styles of its products are more extensive and rich, involving multiple languages, and user search habits and product preferences vary greatly. After a lot of practice and research, it is found that some products on this cross-border e-commerce platform have low visits and short visit time, which makes the correlation between products very low. When making recommendations based on the similarity between products, there is a lack of basic data support, and the recommendation effect of conventional collaborative algorithms still has room for improvement.
[0021] In view of this, the embodiment of the present application proposes a solution for product recommendation on a cross-border e-commerce platform that can adapt well to data sparseness. The following is an explanation using cross-border e-commerce as an example. Of course, it can be understood that the embodiment of the present application can also be applied to non-cross-border e-commerce platforms to solve the problem of data sparsity. Some e-commerce platforms serving a single region will also have data sparsity problems. For example, two e-commerce platforms serving different user groups have different penetration rates among urban and rural users. As a result, from the user's perspective, new user data on some platforms is relatively scarce. On the other hand, from the product perspective, some platform products are relatively inactive and actually contain relatively scarce user interaction behaviors. Therefore, when recommending such users and products, they will also face the problem of data sparsity, which in turn leads to room for improvement in the recommendation effect of conventional collaborative algorithms.
[0022] In an embodiment of the present application, when a user is determined as a user to be recommended for product recommendation, first obtain the products that the user to be recommended has visited in history as reference products, and then search for recommended products associated with the reference products in the product association database pre-created in the search engine. The product association database includes multiple candidate products, and at least one similar product is configured for the candidate product in advance. When selecting a corresponding similar product for the candidate product, the similarity score between the candidate product and other products is used. The similarity score is calculated based on the similarity score between multiple object data that have operation behaviors on the similar products and the candidate products, and further pushes some or all of the recommended products to the page client of the user to be recommended for user reference. Since the similarity scores between multiple object data that have operation behaviors on the similar products and the candidate products are considered in the calculation of the similar products of the candidate products, the types of object data are rich, so that the potential similarity relationship between the products can be fully explored and utilized, enriching and expanding the recommendation scope of the products, and more effectively improving the coverage rate and accuracy of the product recommendation.
[0023] The user to be recommended can be the user currently accessing the cross-border e-commerce platform. The recommended products can be recommended when the user performs a product search, or displayed in the associated position of the order after the user submits the order, or displayed when the user accesses the core page or activity page of the cross-border e-commerce platform. The user to be recommended can also be other users who are temporarily offline and not logged in, and products can be recommended by sending recommendation messages to users.
[0024] In a specific implementation, the solution of the embodiment of the present application can be divided into an offline calculation and an online query stage, refer to Figure 1 An example of a method for recommending goods of the present application is shown. In the offline computing stage, a goods association database is constructed through goods similarity calculation (I2I). The goods association database is used to store multiple goods (recorded as candidate goods) and the corresponding relationship between similar goods similar to each good. The goods association database can be stored in the server or cloud of the cross-border e-commerce platform. In the online computing stage, taking the user searching for goods as an example, the goods that the user to be recommended has visited historically (recorded as reference goods) can be found according to the user information (user) and the query word (query), and then the search engine is called to query the goods association database for similar goods similar to the reference goods (online I2I query), that is, the reference goods are used as candidate goods, similar goods related to the candidate goods are searched, and the top-K (K is an integer) goods with higher similarity values are recommended as recommended goods, thereby forming a recommended goods list.
[0025] In the product association database, the products can be sorted in an inverted index to facilitate subsequent search for products with high similarity according to the sort. It can be seen that when querying the product association database, there is no need to temporarily calculate the similarity between products, which is convenient for improving recommendation efficiency.
[0026] In the process of constructing the above-mentioned commodity association database, corresponding similar commodities may be screened for each candidate commodity, and a similar commodity set may be constructed based on the similarity relationship between the candidate commodity and the similar commodity, and stored in the commodity association database associated with the search engine.
[0027] The commodities and object data involved in building a commodity association database can be separated from the user behavior data of one or more e-commerce platforms. In the scenario of an e-commerce platform in a single region, the user behavior data collected by the e-commerce platform in a historical period or the user behavior data collected in real time can be obtained. In the scenario involving a cross-border e-commerce platform, the user behavior data can be obtained from the cross-border e-commerce platform, one or more other cross-border e-commerce platforms and one or more e-commerce platforms in a single region. The user behavior data records various behaviors of users on the e-commerce platform, including user information, operation behavior, commodity information targeted by the operation behavior, query words, region (country), terminal type, page client version and other information. Object data is the data of other objects except commodity information, such as query words, user information, region, terminal type or other types of information, which can be recorded as object data. Multiple object data include but are not limited to multiple query words, user information, region or terminal type. That is to say, in the product association database constructed by this application, the consideration of similarity between products is not just the single dimension of traditional user information, but also other information that may be involved in the operation behavior, so as to fully mine and utilize user behavior data. User behavior data can be recorded in the form of logs, including<user,query,item,click> , user is the user identification information, query is the user query term, item is the product that the user has clicked, and click records the time and number of times the user clicks on the product. Figure 1 As shown, the user behavior log is recorded as<user-1,query-1,item-1,click> ;<user-2,query-2,item-2,click> …<user-N,query-N,item-N,click> .
[0028] In the process of building a product association database, when calculating the similarity scores between products, the similarity scores between the object data that have operation behaviors on the candidate product and another product whose similarity scores are to be calculated are used. In other words, the object data that has operation behaviors on the candidate product is determined based on the user behavior data, and the object data that has operation behaviors on another product whose similarity scores are to be calculated is determined. By calculating the similarity scores between the two parts of the object data, the similarity scores between the candidate product and the product whose similarity scores are to be calculated, one or more products with the highest scores in descending order can be selected as similar products based on the size of the similarity scores.
[0029] Among them, when calculating the similarity score, the degree of association between different object data and products can be considered as the calculation weight. The reason is that the product and object data corresponding to a piece of user behavior data have a corresponding relationship with the user's operation behavior this time, so that the product and different object data have a corresponding degree of association. For example, a query word corresponds to the same product in multiple user behavior data, that is, a query word and a product appear at the same time in multiple user behavior data, which means that the degree of association between the product and the query word is relatively deep. Otherwise, the degree of association is relatively shallow. The weight of the object data in the calculation can be determined according to the number of visits and the duration of the visit.
[0030] In the similarity calculation between two products, if one product corresponds to M object data and the other product corresponds to N object data, the similarity between the two products can be expressed as a weighted value of a certain similarity calculated by cross-calculating the M object data and the N object data respectively.
[0031] When screening corresponding similar products for each candidate product, the candidate product and the neighboring products whose similarity relationship is to be determined can be determined first; then, based on the similarity scores between the candidate product and the neighboring products, the neighboring products can be determined as similar products of the candidate product, that is, multiple neighboring products with high similarity scores or one or more neighboring products exceeding a set threshold can be determined as similar products of the candidate product.
[0032] Among them, when determining candidate products and neighboring products with similar relationships to be determined, a multi-layer bipartite graph can be constructed with multiple object data and candidate products; then a mapping-reduction algorithm is used to statistically summarize the multiple object data to obtain data pairs consisting of candidate products and object data that have operation behaviors on the candidate products; a mapping algorithm is used to perform neighbor screening on the candidate products in the data pairs to obtain neighboring products corresponding to the candidate products.
[0033] When constructing a multi-layer bipartite graph with multiple object data and the candidate products, the multiple object data and the candidate products can be respectively used as data subsets, and the multiple data subsets can be constructed into a multi-layer bipartite graph according to the association relationship between the candidate products and the object data in historical operation behaviors, wherein the data subset of each object data and the data subset of the candidate products are constructed into a single-layer bipartite graph.
[0034] Bipartite Graph is a special type of undirected graph in graph theory, whose vertices can be divided into two disjoint sets, and each edge in the graph connects different vertices in the two sets. In other words, in a bipartite graph G = (V, E), the vertex set V can be divided into two subsets A and B (i.e. V = A∪B, ), and for any edge e = (u, v) ∈ E, there is always u that belongs to one of the sets A or B, and v must belong to the other set (i.e. u ∈ A, v ∈ B or u ∈ B, v ∈ A). This means that in a bipartite graph, there is no direct edge between any two vertices from the same set. Figuratively speaking, a bipartite graph is like dividing the vertices into two groups, and then only allowing connections between vertices in the groups.
[0035] Different from the traditional bipartite graph, the embodiment of the present application obtains a variety of object data (xObject), where xObject can be entities such as user User (user ID), query term Query, country Country, Gender (gender in user information), Age (age in user information), etc., and correspondingly constructs a multi-layer bipartite graph (xObject-ltem), thereby mining and utilizing the potential two-hop relationship between commodities to enrich and expand the recommendation scope of commodities. Compared with the single-layer UI bipartite graph, the multi-layer xObject-Item bipartite graph of the embodiment of the present application has more and denser connection edges, so it can effectively improve the coverage and recommendation accuracy of I2I recommendations.
[0036] like Figure 2 The diagram is a comparison diagram between the multi-layer bipartite graph of the embodiment of the present application and the traditional bipartite graph. In the traditional bipartite graph, there are two sets of vertices, and there are corresponding lines connecting the vertices corresponding to the commodities and user information of the same user behavior data. In the example of the multi-layer bipartite graph of the present application, the object data includes three types: user information, query terms, and countries, which respectively form a bipartite graph with the commodity set on the left, thereby forming a multi-layer bipartite graph, and there are lines between the vertices of the multiple data sets on the right and the relevant vertices of the commodity set on the left.
[0037] In constructing a multi-layer xObject-Item bipartite graph, taking the construction of the User-ltem and Query-ltem bipartite graphs as an example, G1 = {V1, E1} and G2 = {V2, E2}, where Contains two subsets: users and products. It contains two subsets: query and product. E1 and E2 are the edges of two bipartite graphs respectively.
[0038] Next, the map-reduce algorithm Map-Reducer is executed. This is a programming model and a corresponding processing framework that are widely used in the field of distributed computing, especially in the parallel computing of large-scale data sets. It is mainly used for offline batch processing tasks of massive data. Its calculation process is decomposed into two main stages: Map and Reduce, which are used to realize data sharding processing and result aggregation. The Map stage is responsible for processing, filtering, converting and other operations on the input data according to business needs, and outputting the processing results as key-value pairs, where the key represents the characteristics or identification of the data, and the value represents the content of the data. Reducer is responsible for aggregating the key-value pairs with the same key in the key value output by Mapper, and processing these key-value pairs to generate the final result. In the embodiment of the present application, the map-reduce algorithm is first used to perform statistical aggregation of data objects. For each candidate product, the object data that has operation behavior on the candidate product and the candidate product constitute a data pair. In combination with the above example, in this step, the xObject-Item bipartite graph constructed above is constructed according to and The keys that constitute the data are summarized and counted to obtain in, Among them, n1 and n2 represent The number of users and queries included, and item-list includes a list of product information in reverse order by click time and product ancillary information, such as click time and number of product clicks.
[0039] In a possible implementation, when determining the adjacent candidate products as similar products of the candidate products according to the similarity scores between the candidate products and the adjacent products, a reduction algorithm can be used to select a variety of object data that have operation behaviors on the candidate products and the adjacent products respectively; calculate the similarity scores between the object data corresponding to the candidate products and the adjacent products respectively as the similarity scores between the candidate products and the adjacent products; determine the adjacent candidate products whose similarity scores meet the set conditions as similar products of the candidate products. During the second Mapper operation, the mapping algorithm is used to perform neighboring screening on the candidate products in the data pair to obtain the adjacent products corresponding to the candidate products. Specifically, the X obtained by the above summary can be used to screen the adjacent products for each candidate product according to the list containing the products. For example, the products whose user operation time interval is within the set time length (such as the click interval time within 3 days) are used as adjacent products.
[0040] The similarity score of the product can be obtained by similarity calculation based on the information related to the product. In one implementation, assuming that for any object data, objects u and v have behaviors on product i and product j, then the similarity calculation of product i and product j can be expressed as:
[0041]
[0042] Among them, U(i) represents the set of all objects that have taken actions on product i, U(j) represents the set of all objects that have taken actions on product j, I(u) represents the set of products with associated actions for object u, I(v) represents the set of products with associated actions for object v, α1, α2, β are hyperparameters, N(i) represents the number of objects that have taken actions on product i, and N(j) represents the number of objects that have taken actions on product j.
[0043] For the above example containing M types of object data, the similarity calculation between product i and product j can be expressed as:
[0044]
[0045] Among them, w k is the weight of the k-th type of object, s k (i, j) is the similarity between product i and product j calculated according to the above formula (1) under the k-th object data.
[0046] Through the above process, the difficulty of developers writing parallel programs is greatly simplified. In terms of algorithm implementation, the Map-Reducer structure is adopted to support the processing capabilities of billions of commodity and user data scales, so as to support the needs of large-scale user personalized commodity recommendations in real applications. Using the solution of the embodiment of the present application, compared with the collaborative filtering recommendation algorithm, after actual application testing, the recall core evaluation index has been significantly improved in the offline Top-200 recommendation results, which effectively proves the effectiveness of this method.
[0047] Due to the data sparsity caused by insufficient access to some products on cross-border e-commerce platforms, user behavior data from other e-commerce platforms can be used to calculate the similarity scores between products in the stage of building a product association database. User behavior data can be obtained from multiple e-commerce platforms, where multiple e-commerce platforms can at least include first-class e-commerce platforms serving multiple regions and second-class e-commerce platforms serving a single region, thereby enriching the source of user behavior data and fully exploring the potential relationship between products. In the subsequent online retrieval stage, the product association database can be used not only for product recommendations on the e-commerce platform from which the user behavior data comes, but also for product recommendations on cross-border e-commerce platforms. Correspondingly, when obtaining the reference products that the user to be recommended has visited historically, the reference products that the user to be recommended has visited historically on the first-class e-commerce platform are obtained. That is to say, first search for the reference products that the user has visited historically on the first-class e-commerce platform from the user behavior data of the cross-border e-commerce platform, and then search for similar products to the reference products in the product association database constructed by the user behavior data of multiple e-commerce platforms.
[0048] The execution subject of the embodiment of the present application may be an application, service, instance, software-based functional module, virtual machine (VM), container or cloud server, etc., or a hardware device (such as a server or terminal device) or hardware chip (such as CPU, GPU, FPGA, NPU, AI acceleration card or DPU) with data processing function. The device for implementing service provision can be deployed on the computing device of the application party providing the corresponding service or on the cloud computing platform that provides computing power, storage and network resources. The mode of providing services to the outside world by the cloud computing platform may be IaaS (Infrastructure as a Service), PaaS (Platform as a Service), SaaS (Software as a Service) or DaaS (Data as a Service). Taking the platform providing SaaS software as a service (Software as a Service) as an example, the cloud computing platform can use its own computing resources to provide services to provide database construction, database storage, database access and search engine related capabilities, and the specific application architecture can be built according to service requirements. For example, in one example, a similar product set constructed by the method of an embodiment of the present application can be stored in a product association database that can be called by a search engine. The product association database can be deployed on a server of an e-commerce platform or a remote cloud, can be called to provide search services, and can be deployed on an e-commerce platform.
[0049] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and provide corresponding operation entrances for users to choose to authorize or refuse.
[0050] The technical solution of the present application and how the technical solution of the present application solves the above-mentioned technical problems are described in detail below with specific embodiments. The several specific embodiments listed can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. The embodiments of the present application will be described in detail below with reference to the accompanying drawings.
[0051] The present application embodiment provides a service providing method, such as Figure 3 The flowchart of a product recommendation method 300 according to an embodiment of the present application is shown. The method 300 may include:
[0052] In step S301, obtain the reference products that have been visited historically by the user to be recommended; in step S302, search for recommended products associated with the reference products in the product association database of the search engine; each candidate product in the product association database has at least one similar product, and the similarity score between the similar product and the candidate product is calculated based on the similarity scores between multiple object data that have operation behaviors on the similar product and the candidate product; in step S303, push some or all of the recommended products to the page client of the user to be recommended.
[0053] In a possible implementation, corresponding similar commodities may be screened for each candidate commodity, and a similar commodity set may be constructed based on the similarity relationship between the candidate commodity and the similar commodities, and stored in a commodity association database associated with the search engine.
[0054] In a possible implementation, user behavior data may be obtained from one or more e-commerce platforms, and candidate products and object data may be separated from the user behavior data to construct the similar product set, wherein the one or more e-commerce platforms include at least a first type of e-commerce platform serving multiple regions and a second type of e-commerce platform serving a single region;
[0055] In a possible implementation manner, obtaining reference commodities that have been historically visited by the user to be recommended includes: obtaining reference commodities that have been historically visited by the user to be recommended on a first type of e-commerce platform.
[0056] In a possible implementation, screening corresponding similar products for each candidate product includes: determining the candidate product and adjacent products whose similarity relationship is to be determined; and determining the adjacent candidate product as a similar product of the candidate product according to a similarity score between the candidate product and the adjacent products.
[0057] In a possible implementation, determining the candidate product and the neighboring products whose similarity relationship is to be determined includes: constructing a multi-layer bipartite graph using multiple object data and the candidate products; using a mapping-reduction algorithm to statistically summarize the multiple object data to obtain data pairs consisting of the candidate products and the object data that have operation behaviors on the candidate products; using a mapping algorithm to perform neighbor screening on the candidate products in the data pairs to obtain neighboring products corresponding to the candidate products.
[0058] In a possible implementation, determining the neighboring candidate product as a similar product to the candidate product based on the similarity score between the candidate product and the neighboring product includes: using a reduction algorithm to select a plurality of object data that respectively have operation behaviors on the candidate product and the neighboring product; calculating the similarity score between the object data corresponding to the candidate product and the neighboring product, respectively, as the similarity score between the candidate product and the neighboring product; and determining the neighboring candidate product whose similarity score meets the set conditions as a similar product to the candidate product.
[0059] In one possible implementation, constructing a multi-layer bipartite graph with multiple object data and the candidate products includes: taking the multiple object data and the candidate products as data subsets respectively, and constructing the multiple data subsets into a multi-layer bipartite graph according to the association relationship between the candidate products and the object data in historical operation behaviors, wherein the data subset of each object data and the data subset of the candidate products are constructed into a single-layer bipartite graph.
[0060] In a possible implementation, the multiple object data include multiple types of user information, search terms, and user location information; similar products corresponding to each candidate product in the product association database are stored in the search engine in an inverted index manner.
[0061] According to the embodiment of the present application, when a user is determined as a user to be recommended for product recommendation, first obtain the products that the user to be recommended has visited historically as reference products, and then search for recommended products associated with the reference products in the product association database pre-created in the search engine. The product association database includes multiple candidate products, and at least one similar product is configured for the candidate product in advance. When selecting a corresponding similar product for the candidate product, the similarity score between the candidate product and other products is used. The similarity score is calculated based on the similarity score between multiple object data that have operation behaviors on the similar products and the candidate products, and further pushes some or all of the recommended products to the page client of the user to be recommended for user reference. Since the similarity scores between multiple object data that have operation behaviors on the similar products and the candidate products are considered in the calculation of the similar products of the candidate products, the types of object data are rich, so that the potential similarity relationship between the products can be fully explored and utilized, enriching and expanding the recommendation scope of the products, and more effectively improving the coverage rate and accuracy of product recommendations.
[0062] The present application embodiment provides a method for constructing a data set, such as Figure 4 FIG. 4 is a flow chart of a method 400 for constructing a data set according to an embodiment of the present application. The method 400 may include:
[0063] In step 401, user behavior data is obtained from multiple e-commerce platforms, and the multiple e-commerce platforms include at least a first-category e-commerce platform serving multiple regions and a second-category e-commerce platform serving a single region; in step 402, candidate products and object data are separated from the user behavior data; in step 403, corresponding similar products are screened for each candidate product, and a similar product set is constructed based on the similarity relationship between the candidate product and the similar product, and stored in a product association database associated with the search engine; the product association database is used to provide recommended products associated with reference products that have been historically visited by the user to be recommended in the first-category e-commerce platform, and some or all of the recommended products are pushed to the page client of the user to be recommended.
[0064] According to the embodiment of the present application, when a user is determined as a user to be recommended for product recommendation, first obtain the products that the user to be recommended has visited historically as reference products, and then search for recommended products associated with the reference products in the product association database pre-created in the search engine. The product association database includes multiple candidate products, and at least one similar product is configured for the candidate product in advance. When selecting a corresponding similar product for the candidate product, the similarity score between the candidate product and other products is used. The similarity score is calculated based on the similarity score between multiple object data that have operation behaviors on the similar products and the candidate products, and further pushes some or all of the recommended products to the page client of the user to be recommended for user reference. Since the similarity scores between multiple object data that have operation behaviors on the similar products and the candidate products are considered in the calculation of the similar products of the candidate products, the types of object data are rich, so that the potential similarity relationship between the products can be fully explored and utilized, enriching and expanding the recommendation scope of the products, and more effectively improving the coverage rate and accuracy of product recommendations.
[0065] Corresponding to the above examples and method embodiments provided in the embodiments of the present application, the embodiments of the present application also provide a commodity recommendation device. Figure 5 The structure of a product recommendation device 500 according to an embodiment of the present application is shown in FIG. 5 . The device 500 may include: a reference product acquisition module 501, used to acquire reference products that have been visited historically by the user to be recommended; a recommended product search module 502, used to search for recommended products associated with the reference products in a product association database of a search engine; each candidate product in the product association database has at least one similar product, and the similarity score between the similar product and the candidate product is calculated based on the similarity scores between multiple object data that have operation behaviors on the similar product and the candidate product respectively; and a product push module 503, used to push some or all of the recommended products to the page client of the user to be recommended.
[0066] In a possible implementation, the device further includes: a product set building module, which is used to screen corresponding similar products for each candidate product, and build a similar product set based on the similarity relationship between the candidate product and the similar products, and store it in a product association database associated with the search engine.
[0067] In a possible implementation, the device further includes: a behavior data acquisition module, which is used to acquire user behavior data from one or more e-commerce platforms, and to separate candidate products and object data from the user behavior data for constructing the similar product set, wherein the one or more e-commerce platforms at least include a first-category e-commerce platform serving multiple regions and a second-category e-commerce platform serving a single region. Correspondingly, the reference product acquisition module is specifically used to acquire reference products that the user to be recommended has historically visited on the first-category e-commerce platform.
[0068] In a possible implementation, the product set construction module includes: a neighboring product determination submodule, used to determine the candidate product and the neighboring products whose similarity relationship is to be determined; and a similar product determination submodule, used to determine the neighboring candidate product as a similar product of the candidate product based on the similarity score between the candidate product and the neighboring products.
[0069] In a possible implementation, the neighboring product determination submodule includes: a multi-layer bipartite graph construction subunit, which is used to construct a multi-layer bipartite graph with multiple object data and the candidate products; a statistical summary subunit, which is used to use a mapping reduction algorithm to perform statistical summary on the multiple object data to obtain a data pair consisting of the candidate product and the object data that has an operation behavior on the candidate product; a neighbor screening subunit, which is used to use a mapping algorithm to perform neighbor screening on the candidate products in the data pair to obtain the neighboring products corresponding to the candidate products.
[0070] In a possible implementation, the similar product determination submodule is specifically used to use a reduction algorithm to select multiple object data that have operation behaviors on the candidate product and the neighboring product respectively; calculate the similarity score between the object data corresponding to the candidate product and the neighboring product respectively as the similarity score between the candidate product and the neighboring product; and determine the neighboring candidate product whose similarity score meets the set conditions as a similar product of the candidate product.
[0071] In one possible implementation, the multi-layer bipartite graph construction subunit is specifically used to take multiple object data and the candidate products as data subsets respectively, and construct the multiple data subsets into a multi-layer bipartite graph according to the association relationship between the candidate products and the object data in historical operation behaviors, wherein the data subset of each object data and the data subset of the candidate products are constructed into a single-layer bipartite graph.
[0072] According to the embodiment of the present application, when a user is determined as a user to be recommended for product recommendation, first obtain the products that the user to be recommended has visited historically as reference products, and then search for recommended products associated with the reference products in the product association database pre-created in the search engine. The product association database includes multiple candidate products, and at least one similar product is configured for the candidate product in advance. When selecting a corresponding similar product for the candidate product, the similarity score between the candidate product and other products is used. The similarity score is calculated based on the similarity score between multiple object data that have operation behaviors on the similar products and the candidate products, and further pushes some or all of the recommended products to the page client of the user to be recommended for user reference. Since the similarity scores between multiple object data that have operation behaviors on the similar products and the candidate products are considered in the calculation of the similar products of the candidate products, the types of object data are rich, so that the potential similarity relationship between the products can be fully explored and utilized, enriching and expanding the recommendation scope of the products, and more effectively improving the coverage rate and accuracy of product recommendations.
[0073] In a possible implementation, the multiple object data include multiple types of user information, search terms, and user location information; similar products corresponding to each candidate product in the product association database are stored in the search engine in an inverted index manner.
[0074] Corresponding to the above examples and method embodiments provided in the embodiments of the present application, the embodiments of the present application also provide a device for constructing a data set. Figure 6 FIG. 6 is a structural block diagram of a data set construction device 600 according to an embodiment of the present application. The device 600 may include:
[0075] A behavior data acquisition module 601 is used to acquire user behavior data from multiple e-commerce platforms, wherein the multiple e-commerce platforms include at least a first-category e-commerce platform serving multiple regions and a second-category e-commerce platform serving a single region; a data splitting module 602 is used to split candidate products and object data from the user behavior data; a database construction module 603 is used to screen corresponding similar products for each candidate product, and to construct a set of similar products based on the similarity relationship between the candidate products and the similar products, and store them in a product association database associated with the search engine; the product association database is used to provide recommended products associated with reference products that have been historically visited by the user to be recommended in the first-category e-commerce platform, and some or all of the recommended products are pushed to the page client of the user to be recommended.
[0076] According to the embodiment of the present application, when a user is determined as a user to be recommended for product recommendation, first obtain the products that the user to be recommended has visited historically as reference products, and then search for recommended products associated with the reference products in the product association database pre-created in the search engine. The product association database includes multiple candidate products, and at least one similar product is configured for the candidate product in advance. When selecting a corresponding similar product for the candidate product, the similarity score between the candidate product and other products is used. The similarity score is calculated based on the similarity score between multiple object data that have operation behaviors on the similar products and the candidate products, and further pushes some or all of the recommended products to the page client of the user to be recommended for user reference. Since the similarity scores between multiple object data that have operation behaviors on the similar products and the candidate products are considered in the calculation of the similar products of the candidate products, the types of object data are rich, so that the potential similarity relationship between the products can be fully explored and utilized, enriching and expanding the recommendation scope of the products, and more effectively improving the coverage rate and accuracy of product recommendations.
[0077] The functions of each module in each device in the embodiments of the present application can be found in the corresponding description in the above method, and have corresponding beneficial effects, which will not be repeated here.
[0078] Figure 7 FIG. 1 is a block diagram of an electronic device used to implement an embodiment of the present application. Figure 7 As shown, the electronic device includes: a memory 701 and a processor 702. The memory 701 stores a computer program that can be run on the processor 702. When the processor 702 executes the computer program, the method in the above embodiment is implemented. The number of the memory 701 and the processor 702 can be one or more.
[0079] The electronic device also includes: a communication interface 703, which is used to communicate with external devices and perform data exchange transmission.
[0080] If the memory 701, the processor 702 and the communication interface 703 are implemented independently, the memory 701, the processor 702 and the communication interface 703 can be connected to each other through a bus and communicate with each other. The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 7Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.
[0081] Optionally, in a specific implementation, if the memory 701, the processor 702 and the communication interface 703 are integrated on a chip, the memory 701, the processor 702 and the communication interface 703 can communicate with each other through an internal interface.
[0082] An embodiment of the present application provides a computer-readable storage medium storing a computer program, which implements the method provided in the embodiment of the present application when the program is executed by a processor.
[0083] An embodiment of the present application also provides a computer program product, which includes a computer program, and when the computer program is executed by a processor, the method provided in any embodiment of the present application is implemented.
[0084] An embodiment of the present application also provides a chip, which includes a processor for calling and executing instructions stored in the memory from the memory, so that a communication device equipped with the chip executes the method provided by the embodiment of the present application.
[0085] An embodiment of the present application also provides a chip, including: an input interface, an output interface, a processor and a memory, wherein the input interface, the output interface, the processor and the memory are connected via an internal connection path, and the processor is used to execute the code in the memory. When the code is executed, the processor is used to execute the method provided in the embodiment of the present application.
[0086] It should be understood that the processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc. It is worth noting that the processor may be a processor supporting the Advanced RISC Machines (ARM) architecture.
[0087] Further, optionally, the above-mentioned memory may include a read-only memory and a random access memory. The memory may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memory. Among them, the non-volatile memory may include a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may include a random access memory (RAM), which is used as an external cache. By way of exemplary but not limiting description, many forms of RAM are available. For example, static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM) and direct memory bus random access memory (DR RAM).
[0088] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function according to the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium.
[0089] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present application. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine different embodiments or examples described in this specification and the features of different embodiments or examples, unless they are contradictory.
[0090] In addition, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include at least one of the features. In the description of this application, the meaning of "plurality" is two or more, unless otherwise clearly and specifically defined.
[0091] Any process or method described in the flow chart or otherwise described herein can be understood as a module, fragment or portion of a code representing one or more executable instructions for implementing the steps of a specific logical function or process. And the scope of the preferred embodiment of the present application includes other implementations, in which the functions may not be performed in the order shown or discussed, including in a substantially simultaneous manner or in a reverse order according to the functions involved.
[0092] The logic and / or steps described in the flowchart or otherwise described herein, for example, can be considered as an ordered list of executable instructions for implementing logical functions, which can be specifically implemented in any computer-readable medium for use by an instruction execution system, device or apparatus (such as a computer-based system, a system including a processor, or other system that can fetch instructions from an instruction execution system, device or apparatus and execute instructions), or used in combination with these instruction execution systems, devices or apparatuses.
[0093] It should be understood that the various parts of the present application can be implemented with hardware, software, firmware or a combination thereof. In the above embodiments, multiple steps or methods can be implemented with software or firmware stored in a memory and executed by a suitable instruction execution system. All or part of the steps of the above embodiment method can be completed by instructing the relevant hardware through a program, which can be stored in a computer-readable storage medium, and when the program is executed, it includes one of the steps of the method embodiment or a combination thereof.
[0094] In addition, each functional unit in each embodiment of the present application can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into one module. The above-mentioned integrated module can be implemented in the form of hardware or in the form of a software functional module. If the above-mentioned integrated module is implemented in the form of a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. The storage medium can be a read-only memory, a disk or an optical disk, etc.
[0095] The above is only an exemplary embodiment of the present application, but the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of various changes or substitutions within the technical scope recorded in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application shall be based on the protection scope of the claims.
Claims
1. A product recommendation method, wherein: include: Obtain reference products that have been visited historically by the user to be recommended; Searching for a recommended product associated with the reference product in a product association database of a search engine; Each candidate commodity in the commodity association database has at least one similar commodity, and the similarity score between the similar commodity and the candidate commodity is calculated based on the similarity scores between a plurality of object data having operation behaviors on the similar commodity and the candidate commodity respectively; Push some or all of the recommended products to the page client of the user to be recommended.
2. The method according to claim 1, wherein: Also includes: For each candidate product, the corresponding similar products are screened, and a similar product set is constructed based on the similarity relationship between the candidate product and the similar products, and stored in a product association database associated with the search engine.
3. The method according to claim 2, wherein: Also includes: Acquire user behavior data from one or more e-commerce platforms, and separate candidate products and object data from the user behavior data for constructing the similar product set, wherein the one or more e-commerce platforms at least include a first-category e-commerce platform serving multiple regions and a second-category e-commerce platform serving a single region; The step of obtaining the reference commodities visited historically by the user to be recommended includes: Obtain reference commodities that the user to be recommended has historically visited on the e-commerce platform.
4. The method according to claim 2, wherein: The screening of the corresponding similar products for each candidate product includes: Determine the candidate product and adjacent products whose similarity relationship is to be determined; According to the similarity scores between the candidate commodity and the adjacent commodity, the adjacent candidate commodity is determined as a similar commodity to the candidate commodity.
5. The method according to claim 4, wherein: The step of determining the candidate product and the adjacent products whose similarity relationship is to be determined comprises: Constructing a multi-layer bipartite graph using a plurality of object data and the candidate products; Use a map-reduce algorithm to statistically summarize multiple object data to obtain data pairs consisting of the candidate product and the object data having an operation behavior on the candidate product; A mapping algorithm is used to perform proximity screening on candidate products in the data pair to obtain neighboring products corresponding to the candidate products.
6. The method according to claim 4, wherein: The step of determining the adjacent candidate product as a similar product of the candidate product according to the similarity score between the candidate product and the adjacent product comprises: Using a reduction algorithm to select a plurality of object data having operation behaviors on the candidate product and the neighboring products respectively; Calculating similarity scores between the object data corresponding to the candidate product and the neighboring product respectively as similarity scores between the candidate product and the neighboring product; The adjacent candidate commodities whose similarity scores meet the set conditions are determined as similar commodities to the candidate commodities.
7. The method according to claim 5, wherein: The constructing of a multi-layer bipartite graph using a plurality of object data and the candidate commodities comprises: Taking multiple object data and the candidate products as data subsets respectively, according to the association relationship between the candidate products and the object data in historical operation behaviors, the multiple data subsets are constructed into a multi-layer bipartite graph, wherein the data subset of each object data and the data subset of the candidate products are constructed into a single-layer bipartite graph.
8. The method according to claim 2, wherein: The multiple object data include multiple types of user information, search terms and user location information; The similar products corresponding to the candidate products in the product association database are stored in the search engine in an inverted index manner.
9. A method for constructing a data set, wherein: include: Acquire user behavior data from multiple e-commerce platforms, where the multiple e-commerce platforms include at least a first-category e-commerce platform serving multiple regions and a second-category e-commerce platform serving a single region; Separating candidate products and object data from the user behavior data; Filtering the corresponding similar products for each candidate product, and constructing a similar product set based on the similarity relationship between the candidate product and the similar products, and storing the set in a product association database associated with the search engine; The commodity association database is used to provide recommended commodities associated with reference commodities that the user to be recommended has historically visited in the first category e-commerce platform, and some or all of the recommended commodities are pushed to the page client of the user to be recommended.
10. An electronic device comprising a memory, a processor and a computer program stored in the memory, wherein the processor implements the method according to any one of claims 1 to 9 when executing the computer program.
11. A computer-readable storage medium, wherein a computer program is stored in the computer-readable storage medium, and when the computer program is executed by a processor, the method according to any one of claims 1 to 9 is implemented.
12. A computer program product, wherein: The computer program product comprises a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 9 is implemented.