Product recommendation method, system and device

By establishing a product adjacency matrix and determining the eigenvector encoding in the human-computer interaction system, combined with user emotional information, the problem that the existing recommendation system cannot accurately capture changes in user emotions is solved, more accurate product recommendations are achieved, and the user experience is improved.

CN113971595BActive Publication Date: 2025-09-23SMART DYNAMICS CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202110763844.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-07-06
Publication Date
2025-09-23
Estimated Expiration
2041-07-06

AI Technical Summary

Technical Problem

Existing recommendation systems cannot accurately capture changes in user emotions during human-computer interaction, resulting in poor recommendation results and reduced user experience.

Method used

By obtaining product information and user sentiment information within the session control, a product adjacency matrix is ​​established. The first eigenvector encoding is determined using the graph encoding formula. The second eigenvector encoding is determined by combining the user sentiment information and product information. The two are then combined to calculate the product recommendation score.

Benefits of technology

Accurately capture users' preferences for products and improve the accuracy of recommendation services and user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113971595B_ABST
    Figure CN113971595B_ABST
Patent Text Reader

Abstract

The present application provides a product recommendation method, system, and device, relating to the field of information recommendation technology, and capable of effectively improving the recommendation accuracy of product recommendation services. The method comprises: obtaining first product information and user information within a session, wherein the user information includes user emotion information and second product information; establishing a product adjacency matrix based on the first product information, and determining a first eigenvector encoding representing a short-term implicit change in the user's interest in the product using a graph coding formula and the product adjacency matrix; determining a second eigenvector encoding representing a short-term explicit change in the user's interest in the product based on the user emotion information and the second product information; determining a product recommendation score based on the first eigenvector encoding and the second eigenvector encoding; and recommending products based on the product recommendation score.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of information recommendation technology, and in particular to a product recommendation method, system, and device. Background Art

[0002] Currently, common recommendation systems generally predict products that users may be interested in by analyzing a series of user click behaviors, and place the products that users may be interested in in a prominent position for users to preview and purchase.

[0003] However, in human-computer interaction systems, such as those using voice interaction, predicting and recommending products that a user might be interested in based solely on a series of clicks can lead to users being dissatisfied with the recommended products. For example, a user might randomly click on a series of products out of curiosity and ultimately find that none of them satisfies them. However, the recommendation system will continue to recommend similar products to the user, reducing the user experience and failing to provide accurate product recommendations. Summary of the Invention

[0004] The embodiments of the present application provide a product recommendation method, system, and device that can effectively improve the recommendation accuracy of product recommendation services.

[0005] In a first aspect, the present application provides a product recommendation method, including: obtaining first product information and user information within a session control session, the user information including user emotion information and second product information; establishing a product adjacency matrix based on the first product information, and determining a first eigenvector code through a graph coding formula and the product adjacency matrix, the first eigenvector code being used to represent a short-term implicit change in a user's interest representation in a product; determining a second eigenvector code based on the user emotion information and the second product information, the second eigenvector code being used to represent a short-term explicit change in a user's interest representation in a product; determining a product recommendation score based on the first eigenvector code and the second eigenvector code, and recommending a product based on the product recommendation score.

[0006] In an embodiment of the present application, a product recommendation score is determined by using a first feature vector encoding determined by a product adjacency matrix established based on the first product information, and a second vector feature encoding determined based on the user emotion information and the second product information, and products are recommended based on the product recommendation score. This can accurately capture the user's preference for the product, maximize the recommendation effect of the product recommendation service, and improve the user experience.

[0007] Optionally, establishing a product adjacency matrix based on the first product information includes: extracting multiple product subsequences from the first product information according to a preset subsequence length, wherein each product subsequence contains at least two product information; adding edges to product adjacency pairs corresponding to each product in the multiple product subsequences, and counting the total number of edges; and normalizing the total number of edges to construct a product adjacency matrix.

[0008] In the embodiment of the present application, by extracting product subsequences to construct a product adjacency matrix, the relationship between adjacent products can be accurately captured, effectively improving the recommendation effect of the product recommendation service.

[0009] Optionally, establishing a product adjacency matrix based on the first product information and determining the first eigenvector code using a graph coding formula and the product adjacency matrix includes: counting the adjacent product set of each product in the first product information using the product adjacency matrix; and calculating the first eigenvector code corresponding to each product based on the adjacent product set of each product and the graph coding formula, where the graph coding formula is:

[0010]

[0011] Among them, h i Represents the feature vector encoding of product i; W represents the learnable weight parameter in the graph neural network; N i represents the set of adjacent products of the product i; e k represents the input feature vector of product k in the set of adjacent products of product i; e i A represents the input feature vector of the product i; i,k Indicates the weight of product k with respect to product i in the product adjacency matrix.

[0012] In the embodiment of the present application, through the graph coding formula and the product adjacency matrix, the user's short-term implicit interest changes in products can be effectively mined.

[0013] Optionally, determining the second feature vector code based on the user emotional information and the second product information includes: extracting product image features corresponding to each product in the second product information; inputting the user emotional information and the product image features into a trained neural network for mixed encoding, and extracting the feature vector code of the last layer sequence to obtain the second feature vector code.

[0014] Optionally, determining the second feature vector code based on the user emotion information and the second product information includes: clustering each product in the second product information to obtain the cluster center vector features of the corresponding category; inputting the user emotion information and the cluster center vector features into a trained neural network for mixed encoding, and extracting the feature vector code of the last layer sequence to obtain the second feature vector code.

[0015] Optionally, determining a product recommendation score based on the first feature vector code and the second feature vector code, and recommending products based on the product recommendation score includes: determining a fused feature vector code based on the first feature vector code and the second feature vector code; and scoring each product in the first product information based on the fused feature vector code to obtain a product recommendation score.

[0016] In a second aspect, the present application provides a product recommendation system, comprising:

[0017] An information acquisition unit, configured to acquire first product information and user information within a session control session, wherein the user information includes user emotion information and second product information;

[0018] a first eigenvector code determining unit, configured to establish a product adjacency matrix based on the first product information, and determine a first eigenvector code using a graph coding formula and the product adjacency matrix, wherein the first eigenvector code is used to represent a short-term implicit interest representation change of a user in a product;

[0019] a second feature vector code determining unit, configured to determine a second feature vector code based on the user emotion information and the second product information, wherein the second feature vector code is used to represent a short-term explicit interest representation change of the user in the product;

[0020] The product recommendation unit is configured to determine a product recommendation score based on the first feature vector code and the second feature vector code, and recommend a product based on the product recommendation score.

[0021] Exemplarily, the first feature vector encoding determination unit includes:

[0022] a product subsequence extraction subunit, configured to extract a plurality of product subsequences from the first product information according to a preset subsequence length, wherein each product subsequence contains at least two product information;

[0023] an edge counting subunit, configured to add edges to the commodity adjacency pairs corresponding to each commodity in the plurality of commodity subsequences, and to count the total number of edges;

[0024] The product adjacency matrix construction subunit is used to normalize the total number of edges and construct the product adjacency matrix.

[0025] Exemplarily, the first feature vector encoding determination unit includes:

[0026] an adjacent product set statistics subunit, configured to count the adjacent product sets of each product in the first product information using the product adjacency matrix;

[0027] The first feature vector code calculation subunit is configured to calculate the first feature vector code corresponding to each product based on the adjacent product set of each product and the graph coding formula. The graph coding formula is:

[0028]

[0029] Among them, h i Represents the feature vector encoding of product i; W represents the learnable weight parameter in the graph neural network; N i represents the set of adjacent products of the product i; e k represents the input feature vector of product k in the set of adjacent products of product i; e i A represents the input feature vector of the product i; i,k Indicates the weight of product k with respect to product i in the product adjacency matrix.

[0030] Exemplarily, the second feature vector encoding determination unit includes:

[0031] a product image feature extraction subunit, configured to extract product image features corresponding to each product in the second product information;

[0032] The second feature vector code extraction subunit is used to input the user emotion information and the product image features into the trained neural network for mixed encoding, and extract the feature vector code of the last layer sequence to obtain the second feature vector code.

[0033] Exemplarily, the second feature vector encoding determination unit includes:

[0034] a cluster center vector feature acquisition subunit, configured to cluster each product in the second product information and acquire a cluster center vector feature of a corresponding category;

[0035] The second feature vector code extraction subunit is used to input the user emotion information and the cluster center vector feature into the trained neural network for mixed coding, and extract the feature vector code of the last layer sequence to obtain the second feature vector code.

[0036] Exemplarily, the recommended product unit includes:

[0037] a fused feature vector code determining unit, configured to determine a fused feature vector code according to the first feature vector code and the second feature vector code;

[0038] The product scoring sub-unit is used to score each product in the first product information according to the fused feature vector encoding to obtain a product recommendation score.

[0039] In a third aspect, the present application provides a product recommendation device, comprising a processor, a memory, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the method described in the first aspect or any optional method of the first aspect is implemented.

[0040] In a fourth aspect, the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, it implements the method described in the first aspect or any optional method of the first aspect.

[0041] In a fifth aspect, an embodiment of the present application provides a computer program product. When the computer program product runs on a product recommendation device, the product recommendation device executes the steps of the method described in the first aspect above.

[0042] It can be understood that the beneficial effects of the second to fifth aspects mentioned above can be found in the relevant description of the first aspect mentioned above, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS

[0043] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the embodiments or descriptions of the prior art. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0044] Figure 1 This is a flowchart of a product recommendation method provided in an embodiment of the present application;

[0045] Figure 2 This is a flow chart of a method for establishing a product adjacency matrix provided in an embodiment of the present application;

[0046] Figure 3 This is a schematic diagram of a scenario for extracting a product subsequence provided by an embodiment of the present application;

[0047] Figure 4 Schematic diagram of a commodity adjacency matrix provided in an embodiment of the present application;

[0048] Figure 5 1 is a flow chart of a method for determining a second eigenvector encoding provided in an embodiment of the present application; Figure 6 is a flowchart of another method for determining the encoding of a second eigenvector provided in an embodiment of the present application;

[0049] Figure 7 is a flowchart of another method for determining the encoding of a second eigenvector provided in an embodiment of the present application;

[0050] Figure 8 This is a flow chart of a method for determining a product recommendation score provided in an embodiment of the present application;

[0051] Figure 9 This is a structural diagram of a product recommendation system provided in an embodiment of the present application;

[0052] Figure 10 This is a structural diagram of a product recommendation device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0053] In the following description, specific details such as specific system structures and techniques are provided for purposes of illustration rather than limitation to facilitate a thorough understanding of the embodiments of the present application. However, it will be apparent to those skilled in the art that the present application may be implemented in other embodiments without these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted to avoid obscuring the description of the present application with unnecessary detail.

[0054] It should be understood that the term "and / or" used in this specification and the appended claims refers to any and all possible combinations of one or more of the associated listed items, and includes these combinations. In addition, in the description of this specification and the appended claims, the terms "first," "second," "third," etc. are used only to distinguish descriptions and are not to be understood as indicating or implying relative importance.

[0055] It should also be understood that references to "one embodiment" or "some embodiments" in the present specification mean that one or more embodiments of the present application include a particular feature, structure, or characteristic described in conjunction with that embodiment. Thus, phrases such as "in one embodiment," "in some embodiments," "in other embodiments," and "in other embodiments" appearing in various places in this specification do not necessarily refer to the same embodiment, but rather mean "one or more but not all embodiments," unless otherwise specifically emphasized. The terms "including," "comprising," "having," and variations thereof all mean "including but not limited to," unless otherwise specifically emphasized.

[0056] In the era of artificial intelligence, recommendation systems can recommend relevant products to users based on their information, either through voice or by clicking on products. For example, within a single session, a user might click on different products while also interacting with the machine through voice.

[0057] In some application scenarios, voice interaction can be a command to a machine to replace manual product clicks, an expression of a personal preference for a product, or even trivial chat. If a recommendation system recommends products based solely on the items users click on and prominently displays these recommendations, users will likely be dissatisfied with the system's recommendations. For example, if a user randomly clicks on a series of products out of curiosity and ultimately finds they don't like any of them, and the recommendation system consistently recommends similar products, the user might complain, "Can you try something new?" If the recommendation system fails to capture the user's emotional changes and continues to judge the user's product preferences based on their previous clicks, the system, unable to grasp the user's emotional changes, will continue to make incorrect recommendations. This will force the user to search for the products they like, reducing the user experience.

[0058] The recommendation system provided in the embodiments of this application can adjust the recommendation results based on the current user's emotional preferences for products and the user's requirements for products, and can achieve good real-time recommendation results while being in line with the user's wishes. It should be noted that the products involved in the embodiments of this application can be various physical products or virtual products such as lottery tickets.

[0059] Please refer to Figure 1 , Figure 1 A flowchart of a product recommendation method provided in an embodiment of the present application. The execution subject of the product recommendation method in the embodiment of the present application is a human-computer interaction device, including but not limited to a smart phone device, an augmented reality (AR) device, a virtual reality (VR) device, such as Figure 1 The commodity methods shown may include:

[0060] Step S101: Acquire first product information and user information in a session control session.

[0061] In the embodiments of the present application, a session refers to the time interval between a terminal user and an interactive system, typically the time elapsed from registration to system entry to logout. Within a single session, a user may click on multiple products in succession. These products may be similar or dissimilar, and there is a great deal of randomness. In order to provide users with accurate product recommendation services, it is necessary to mine the implicit features between these products. Implicit features can be used to characterize the changes in the user's implicit interest in products in the short term, thereby recommending suitable products to users based on the implicit features between products and improving the user experience.

[0062] It should be noted that the first product information is information about a series of products clicked by the user in a session. The series of product information clicked by the user in a session can be information about two or more products. Here, the first product information is used to mine implicit features between products.

[0063] In the embodiment of the present application, user information is information expressing the user's emotions towards a certain type of product, including user emotional information and second product information. Here, the user information can be obtained through a voice recognition system. Among them, user emotional information is information about the user's emotional changes within a session, that is, user emotional information is relevant information expressing the user's emotions. Second product information is product information associated with user emotional information, that is, information about the product mentioned by the user when expressing emotions. For example, the user says "I don't like the type of product A and product B very much", where product A and product B are the second product information mentioned in the embodiment of the present application.

[0064] It should be noted that in order to provide users with accurate product recommendation services, we can further explore the explicit features between products and users. The explicit features can represent the user's short-term explicit interest features, that is, the user's preference for a certain type of product in the short term. Based on the explicit features, we can more accurately recommend suitable products to users and improve the user experience.

[0065] Step S102: establishing a product adjacency matrix based on the first product information, and determining a first eigenvector code using a graph coding formula and the product adjacency matrix.

[0066] In an embodiment of the present application, the product adjacency matrix is ​​used to capture the relationship between adjacent products. Specifically, a graph connection structure of product nodes is constructed through the product adjacency matrix, so that the relationship between adjacent products can be quickly captured through the graph connection structure.

[0067] It should be noted that the edge connection structure of the commodity entity nodes in the graph connection structure can implicitly indicate the closeness relationship between various commodities, thereby providing users with more accurate recommendation services.

[0068] Specifically, the positions of different products in a graph vary significantly. For example, if products A and B are similar or close, they will usually become neighboring nodes. However, products A and C are somewhat different or far apart, which results in them rarely being adjacent to each other. By building a connected product graph, we can use information from neighboring nodes to obtain richer positional embedding features. This allows graph neural networks to learn from users' short-term click behaviors and discover hidden user interest characteristics, known as implicit interest features.

[0069] Please refer to Figure 2 , Figure 2 A flowchart of a method for establishing a product adjacency matrix provided in an embodiment of the present application, the method comprising:

[0070] Step S201: extract multiple product subsequences from the first product information according to a preset subsequence length.

[0071] In the embodiment of the present application, the preset subsequence length is the length of the pre-set extracted product subsequence, for example, the preset subsequence length is 3. Accordingly, the product subsequence extracted from the first product information is a sequence consisting of 3 products.

[0072] It should be noted that each product subsequence contains at least two product information, that is, each product subsequence consists of at least two products.

[0073] In one embodiment of the present application, the first product information is information about multiple products clicked continuously by a user in a session. For each product in the session, multiple product subsequences are extracted according to a preset subsequence length of 3.

[0074] See Figure 3 , Figure 3 A schematic diagram of a scenario for extracting a product subsequence provided in one embodiment of the present application.

[0075] like Figure 3As shown, the first product information includes seven products, namely products I1, I2, I3, ..., I7, and the preset subsequence length is 3. When extracting the product subsequence corresponding to product I1, the three products I2, I3, and I4 adjacent to the current product I1 are extracted as the product subsequence corresponding to the current product I1; when extracting the product subsequence corresponding to product I2, the three products I3, I4, and I5 adjacent to the current product I2 are extracted as the product subsequence corresponding to the current product I2, and so on, to obtain the product subsequences corresponding to the next five adjacent products.

[0076] Step S202 : adding edges to the commodity adjacency pairs corresponding to each commodity in the plurality of commodity subsequences, and counting the total number of edges.

[0077] In this embodiment, a product adjacency pair is a pair of products in a product subsequence and their corresponding products. For example, if the product subsequence corresponding to I1 is I2, I3, and I4, then the product adjacency pairs corresponding to products I2, I3, and I4 are [I1, I2], [I1, I3], and [I1, I4], respectively.

[0078] It should be noted that the total number of edges is counted to facilitate the establishment of the product adjacency matrix, so as to obtain products with closer relationships in the product subsequence.

[0079] Step S203: normalize the total number of edges to construct a product adjacency matrix.

[0080] In the embodiment of the present application, the total number of edges is normalized by row or column to construct a product adjacency matrix.

[0081] like Figure 4 , which is a matrix diagram of a commodity adjacency matrix provided in an embodiment of the present application.

[0082] In a specific embodiment, when the first product information includes seven products, namely, products I1, I2, I3, ..., I7, the constructed product adjacency matrix is ​​as follows: Figure 4 shown.

[0083] Furthermore, to improve the accuracy of the product recommendation service, we can obtain the first product information from multiple sessions, extract a product subsequence for each session's corresponding first product information, and then count the edges of the product adjacency pairs corresponding to all product subsequences. For example, if the products in the first session are a, b, c, d; and the products in the second session are b, c, a, e, and the preset product subsequence is 3, then the edges of the product adjacency pairs in the first and second sessions are: a->b, a->c, a->d, b->c, b->d, c->d, b->a, b->e, c->a, c->e, a->e. This allows for more accurate capture of the relationships between products.

[0084] In some embodiments of the present application, a graph neural network determines a first eigenvector encoding using a graph encoding formula and a product adjacency matrix. This first eigenvector encoding is used to represent the short-term implicit changes in a user's interest in a product, i.e., the eigenvector encoding obtained by mining implicit features between products.

[0085] Before determining the first eigenvector code, it is necessary to count the adjacent product sets of each product in the first product information through the product adjacency matrix, and then calculate the first eigenvector code corresponding to each product based on the adjacent product set of each product and the graph coding formula.

[0086] In the product adjacency matrix, for example, in the i-th row, some of the normalized values ​​are 0, which means that these products are not adjacent to product i. Combining the remaining products corresponding to non-zero values ​​can be regarded as the set of adjacent products of product i.

[0087] Furthermore, the non-zero values ​​can be sorted, and the top k values ​​with larger values ​​can be selected as the products that contribute most to product i and serve as the set of adjacent products to product i.

[0088] In the embodiment of the present application, the graph encoding formula is specifically:

[0089]

[0090] Among them, h i represents the first feature vector encoding corresponding to product i; W represents the learnable weight parameter in the graph neural network; N i represents the set of adjacent products of the product i; e k represents the input feature vector of product k in the set of adjacent products of product i; e i A represents the input feature vector of the product i; i,k Indicates the weight of product k with respect to product i in the product adjacency matrix.

[0091] Step S103: Determine a second feature vector code according to the user emotion information and the second product information.

[0092] In an embodiment of the present application, if user emotion information and second product information are obtained within a single session, a second feature vector code is determined based on the obtained user emotion information and second product information, where the second feature vector code is used to represent the short-term explicit interest representation change of the user in the product.

[0093] In some embodiments of the present application, if the recommendation system fails to obtain the user emotion information and the second product information, a preset second feature vector code is obtained to determine the product recommendation score.

[0094] It should be noted that the preset second feature vector code is a neutral emotion feature vector code, and the user's emotion tends to be neutral.

[0095] In other embodiments of the present application, when neither the user emotion information nor the second product information is obtained, the second feature vector code may be left blank, and the product recommendation score may be determined based only on the first feature vector code.

[0096] See also Figure 5 , Figure 5 A flowchart of a method for determining a second eigenvector encoding provided in an embodiment of the present application, the method comprising:

[0097] Step S301: Acquire user emotion information, and analyze the user emotion information to determine whether the user emotion information contains product information.

[0098] In an embodiment of the present application, a user can interact with a device to which the recommendation system belongs through voice, and the recommendation system can obtain user emotional information through the voice recognition function of the device. That is, after the device collects the user's voice information, it analyzes whether the voice information contains information representing the user's emotions. If so, the voice information is set as user emotional information. By analyzing the voice information, it can be determined whether the information representing the user's emotions involves the product, that is, whether the voice information contains information about the product.

[0099] Step S302: If the user emotion information includes product information, the product information is used as the second product information corresponding to the user emotion information.

[0100] Step S303: determining a second feature vector code according to the user emotion information and the second product information corresponding to the user emotion information.

[0101] Step S304: If the user emotion information does not include product information, then repeat steps S301 to S303.

[0102] During the product recommendation process, users' emotions toward certain products may change. Capturing these subtle changes in user emotions can lead to better recommendations. When a user expresses their preference for a certain product, we can capture the product information they mention in their speech. We then encode the product information features and the text of the user's speech to generate a second feature vector encoding that represents the final user's emotional changes.

[0103] In the embodiment of the present application, by confirming whether the user emotion information contains commodity information, the interference of invalid user emotion information can be avoided and the efficiency of determining the second feature vector encoding can be improved.

[0104] See also Figure 6 , Figure 6 is a flow chart of another method for determining the encoding of a second eigenvector provided in an embodiment of the present application, the method comprising:

[0105] Step S401: extract product image features corresponding to each product in the second product information.

[0106] In an embodiment of the present application, after obtaining the second product information, the image corresponding to the second product information is input into a pre-trained image classification neural network such as ResNet or VGG to extract the image features corresponding to each product in the second product information, thereby obtaining product image features. The product image features extracted from similar products should be similar, so similar products can be classified into one category.

[0107] Step S402: Input the user emotion information and the product image features into a trained neural network for mixed encoding, and extract the feature vector code of the last layer sequence to obtain the second feature vector code.

[0108] In an embodiment of the present application, user emotion information and product image features are input into the trained bidirectional denoising autoencoder model BERT for mixed encoding, and the feature vector encoding of the last layer sequence is extracted. For example, the text "I like Category A products very much" corresponding to the input user emotion information, and the output of the last layer sequence is: "A" category "product" "I" "like" "very much". The feature vector encoding corresponding to these 9 words can be understood as one-to-one input and output.

[0109] It's important to note that user sentiment information is often associated with specific products. For example, "I quite like Category A product" and "I also like Category B product" both express liking. When user sentiment information is associated with products, it's equivalent to feature fusion, binding user sentiment information and products together. This provides richer information than simple user sentiment information. While sentiment information alone may convey satisfaction, it lacks clarity on which products are preferred, such as Category A and Category B, or the specific differences between Category A and Category B. However, by incorporating product image features, the distinction between Category A and Category B is clearly evident.

[0110] See also Figure 7 , Figure 7 is a flow chart of another method for determining the encoding of a second eigenvector provided in an embodiment of the present application, the method comprising:

[0111] Step S501: cluster each product in the second product information to obtain cluster center vector features of the corresponding category.

[0112] In the embodiments of the present application, the process of dividing a collection of physical or abstract objects into multiple classes of similar objects is called clustering. Similar products should have similar characteristics. Clustering can be used to obtain cluster center vector features to represent the characteristics of such products. Specifically, in the embodiments of the present application, each product in the second product information is clustered to obtain the cluster center vector features of the corresponding category.

[0113] In some embodiments of the present application, after obtaining the second product information, the products in the second product information are clustered according to the K-Nearest Neighbor (KNN) algorithm or clustered according to categories to obtain cluster center vector features of the corresponding categories.

[0114] Step S502: Input the user emotion information and the cluster center vector feature into the trained neural network for mixed encoding, and extract the feature vector code of the last layer sequence to obtain the second feature vector code.

[0115] In an embodiment of the present application, user emotion information and cluster center vector features are input into a trained bidirectional denoising autoencoder model BERT for mixed encoding, and the feature vector encoding of the last layer sequence is extracted to obtain a second feature vector encoding.

[0116] Step S104: determining a product recommendation score based on the first feature vector code and the second feature vector code, and recommending a product based on the product recommendation score.

[0117] See also Figure 8 , Figure 8 : is a flow chart of a method for determining a product recommendation score provided in an embodiment of the present application, the method comprising:

[0118] Step S601: Determine a fused feature vector code according to the first feature vector code and the second feature vector code.

[0119] In an embodiment of the present application, the first feature vector code and the second feature vector code are input into the gated recurrent unit BiGRU or the long short-term memory network BiLSTM for feature fusion to obtain a fused feature vector code, and then each product in the first product information is scored according to the obtained fused feature vector code to obtain a product recommendation score.

[0120] Specifically, when the first eigenvector encoding and the second eigenvector encoding are encoded in a BiGRU model or a BiLSTM model, the model will automatically learn the degree of influence of the first eigenvector encoding and the second eigenvector encoding on the product score after different clicks (first eigenvector encoding) and sentiment changes (second eigenvector encoding), that is, the final high-level fusion feature obtained by fusing the two.

[0121] It should be noted that the fused feature vector encoding has richer feature information and can be simply understood as the multi-feature fusion of model learning, which improves the performance and indicators of subsequent product scoring and improves the effectiveness and accuracy of product scoring.

[0122] Fusion feature vector encoding has richer feature information and can be simply understood as multi-feature fusion of machine learning, which facilitates the improvement of the performance and indicators of subsequent product scoring.

[0123] In some embodiments of the present application, the first feature vector encoding and the second feature vector encoding may be fused by a splicing method.

[0124] Specifically, a splicing formula is used to complete the fusion of the first eigenvector encoding and the second eigenvector encoding. The splicing formula is as follows:

[0125] f i =[h i ;g i ]

[0126] Among them, f i represents the fusion feature vector of the sequence at step i, h i represents the encoding of the first eigenvector of the i-th order, g i Represents the encoding of the i-th second eigenvector

[0127] In some other embodiments of the present application, the first feature vector encoding and the second feature vector encoding can be fused by a weighted average method. Specifically, the feature fusion is performed by a weighted average formula, which is as follows:

[0128] f i =σ i h i +(1-σ i )g i

[0129] Among them, f i represents the fusion feature vector of the sequence at step i, h i represents the encoding of the first eigenvector of the i-th order, g i represents the i-th second eigenvector encoding, σ i Indicates the gating threshold of the i-th step. The gating threshold of each step is not necessarily the same and is between 0 and 1.

[0130] Step S602: Score each product in the first product information according to the fused feature vector encoding to obtain a product recommendation score.

[0131] In an embodiment of the present application, after fusing the first feature vector code and the second feature vector code, a series of time series fusion feature vector codes are obtained, and the obtained time series fusion feature vector codes are input into a time series model, such as a BiGRU / BiLSTM model for feature learning, and finally the last time series position is predicted and output to obtain the score of each product.

[0132] In an embodiment of the present application, by obtaining the first product information and user information in the session, the user information includes the user emotion information and the second product information; establishing a product adjacency matrix based on the first product information, and determining the first eigenvector encoding representing the change in the user's short-term implicit interest representation of the product through the graph coding formula and the product adjacency matrix, and then determining the second eigenvector encoding representing the change in the user's short-term explicit interest representation of the product based on the user emotion information and the second product information, and then determining the product recommendation score based on the first eigenvector encoding and the second eigenvector encoding, and recommending products based on the product recommendation score. In an embodiment of the present application, the product recommendation score is determined through the first eigenvector encoding and the second vector feature encoding, and products are recommended based on the product recommendation score. This can accurately capture the user's preference for the product, maximize the recommendation effect of the product recommendation service, and improve the user experience.

[0133] It should be understood that the size of the serial numbers of the steps in the above embodiments does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.

[0134] Based on the product recommendation method provided in the above embodiment, the embodiment of the present application further provides an embodiment of a device for implementing the above method embodiment.

[0135] See Figure 9 , Figure 9 This is a schematic diagram of the product recommendation system provided in the embodiment of the present application. The units included are used to execute Figure 1 Each step in the corresponding embodiment. Please refer to Figure 1 For the convenience of explanation, only the parts related to this embodiment are shown. Figure 9 , the product recommendation system 9 includes:

[0136] An information acquisition unit 91 is configured to acquire first product information and user information within a session control session, wherein the user information includes user emotion information and second product information;

[0137] A first eigenvector code determining unit 92 is configured to establish a product adjacency matrix based on the first product information and determine a first eigenvector code using a graph coding formula and the product adjacency matrix. The first eigenvector code is used to represent a short-term implicit interest change in a user for a product.

[0138] a second feature vector code determining unit 93, configured to determine a second feature vector code based on the user emotion information and the second product information, wherein the second feature vector code is used to represent a short-term explicit interest change of the user in the product;

[0139] The product recommendation unit 94 is configured to determine a product recommendation score based on the first feature vector code and the second feature vector code, and recommend a product based on the product recommendation score.

[0140] Optionally, the first feature vector encoding determination unit 92 includes:

[0141] a product subsequence extraction subunit, configured to extract a plurality of product subsequences from the first product information according to a preset subsequence length, wherein each product subsequence contains at least two product information;

[0142] an edge counting subunit, configured to add edges to the commodity adjacency pairs corresponding to each commodity in the plurality of commodity subsequences, and to count the total number of edges;

[0143] The product adjacency matrix construction subunit is used to normalize the total number of edges and construct the product adjacency matrix.

[0144] Optionally, the first feature vector encoding determination unit 92 includes:

[0145] an adjacent product set statistics subunit, configured to count the adjacent product sets of each product in the first product information using the product adjacency matrix;

[0146] The first feature vector code calculation subunit is configured to calculate the first feature vector code corresponding to each product based on the adjacent product set of each product and the graph coding formula. The graph coding formula is:

[0147]

[0148] Among them, h i Represents the feature vector encoding of product i; W represents the learnable weight parameter in the graph neural network; N i represents the set of adjacent products of the product i; e k represents the input feature vector of product k in the set of adjacent products of product i; e i A represents the input feature vector of the product i; i,k Indicates the weight of product k with respect to product i in the product adjacency matrix.

[0149] Optionally, the second feature vector encoding determination unit 93 includes:

[0150] a product image feature extraction subunit, configured to extract product image features corresponding to each product in the second product information;

[0151] The second feature vector code extraction subunit is used to input the user emotion information and the product image features into the trained neural network for mixed encoding, and extract the feature vector code of the last layer sequence to obtain the second feature vector code.

[0152] Optionally, the second feature vector encoding determination unit 93 includes:

[0153] a cluster center vector feature acquisition subunit, configured to cluster each product in the second product information and acquire a cluster center vector feature of a corresponding category;

[0154] The second feature vector code extraction subunit is used to input the user emotion information and the cluster center vector feature into the trained neural network for mixed coding, and extract the feature vector code of the last layer sequence to obtain the second feature vector code.

[0155] Optionally, the recommended product unit 94 includes:

[0156] a fused feature vector code determining unit, configured to determine a fused feature vector code according to the first feature vector code and the second feature vector code;

[0157] The product scoring sub-unit is used to score each product in the first product information according to the fused feature vector encoding to obtain a product recommendation score.

[0158] In an embodiment of the present application, by obtaining the first product information and user information in the session, the user information includes the user emotion information and the second product information; establishing a product adjacency matrix based on the first product information, and determining the first eigenvector encoding representing the change in the user's short-term implicit interest representation of the product through the graph coding formula and the product adjacency matrix, and then determining the second eigenvector encoding representing the change in the user's short-term explicit interest representation of the product based on the user emotion information and the second product information, and then determining the product recommendation score based on the first eigenvector encoding and the second eigenvector encoding, and recommending products based on the product recommendation score. In an embodiment of the present application, the product recommendation score is determined through the first eigenvector encoding and the second vector feature encoding, and products are recommended based on the product recommendation score. This can accurately capture the user's preference for the product, maximize the recommendation effect of the product recommendation service, and improve the user experience.

[0159] It should be noted that the information interaction, execution process and other contents between the above modules are based on the same concept as the method embodiment of this application. Their specific functions and technical effects can be found in the method embodiment part and will not be repeated here.

[0160] Figure 10 Schematic diagram of the product recommendation device provided in the embodiment of the present application. Figure 10 As shown, the product recommendation device 10 of this embodiment includes: a processor 100, a memory 101, and a computer program 102 stored in the memory 101 and executable on the processor 100, such as a speech recognition program. When the processor 100 executes the computer program 102, the steps in the above-mentioned various product recommendation method embodiments are implemented, such as Figure 1 Alternatively, when the processor 100 executes the computer program 102, the functions of the modules / units in the above-mentioned device embodiments are realized, for example, Figure 9 The functions of units 91-94 are shown.

[0161] Exemplarily, the computer program 102 can be divided into one or more modules / units, and the one or more modules / units are stored in the memory 101 and executed by the processor 100 to complete the present application. The one or more modules / units can be a series of computer program instruction segments that can perform specific functions, and the instruction segments are used to describe the execution process of the computer program 102 in the product recommendation device 10. For example, the computer program 102 can be divided into an information acquisition unit 91, a first feature vector encoding determination unit 92, a second feature vector encoding determination unit 93, and a product recommendation unit 94. For the specific functions of each unit, please refer to Figure 1 The relevant descriptions in the corresponding embodiments are not repeated here.

[0162] The product recommendation device may include, but is not limited to, a processor 100 and a memory 101. Those skilled in the art will understand that Figure 10 It is only an example of the product recommendation device 10 and does not constitute a limitation of the product recommendation device 10. It may include more or fewer components than shown in the figure, or a combination of certain components, or different components. For example, the product recommendation device may also include input and output devices, network access devices, buses, etc.

[0163] The processor 100 may be a central processing unit (CPU), other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA), 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.

[0164] The memory 101 can be an internal storage unit of the product recommendation device 10, such as a hard disk or memory of the product recommendation device 10. The memory 101 can also be an external storage device of the product recommendation device 10, such as a plug-in hard disk, a smart memory card (Smart Media Card, SMC), a secure digital (Secure Digital, SD) card, a flash card (Flash Card), etc. equipped on the product recommendation device 10. Furthermore, the memory 101 can also include both the internal storage unit of the product recommendation device 10 and an external storage device. The memory 101 is used to store the computer program and other programs and data required by the product recommendation device. The memory 101 can also be used to temporarily store data that has been output or is to be output.

[0165] An embodiment of the present application further provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the above-mentioned product recommendation method can be implemented.

[0166] An embodiment of the present application provides a computer program product. When the computer program product is run on a product recommendation device, the product recommendation device can implement the above-mentioned product recommendation method when executed.

[0167] Those skilled in the art can clearly understand that, for the convenience and brevity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In actual applications, the above-mentioned functions can be distributed and completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiment can be integrated into one processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. The specific working process of the units and modules in the above-mentioned system can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.

[0168] In the above embodiments, the description of each embodiment has its own focus. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant description of other embodiments.

[0169] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0170] The above-described embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. These modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present application, and should all be included in the scope of protection of the present application.

Claims

1. A product recommendation method, characterized in that: The product recommendation method includes: Obtaining first product information and user information within a session control session, wherein the user information includes user emotion information and second product information, wherein the first product information is information about a series of products clicked by the user within the session; the user interacts with a device to which the recommendation system belongs via voice, and the recommendation system obtains the user emotion information via a voice recognition function of the device, and determines whether the second product information is included in information representing the user emotion by analyzing the voice information; Establishing a product adjacency matrix based on the first product information, and determining a first eigenvector code using a graph coding formula and the product adjacency matrix, where the first eigenvector code is used to represent a short-term implicit interest representation change of the user in the product; determining a second feature vector code based on the user emotion information and the second product information, where the second feature vector code is used to represent a short-term explicit interest representation change of the user in the product; Determining a product recommendation score based on the first feature vector code and the second feature vector code, and recommending a product based on the product recommendation score; The step of establishing a product adjacency matrix based on the first product information includes: Extracting multiple product subsequences from the first product information according to a preset subsequence length, wherein each product subsequence contains at least two product information; Adding edges to the commodity adjacency pairs corresponding to each commodity in the plurality of commodity subsequences, and counting the total number of edges; Normalizing the total number of edges to construct a product adjacency matrix; The step of establishing a product adjacency matrix based on the first product information and determining a first eigenvector code using a graph coding formula and the product adjacency matrix includes: By using the product adjacency matrix, counting a set of adjacent products of each product in the first product information; The first eigenvector code corresponding to each product is calculated based on the adjacent product set of each product and the graph coding formula. The graph coding formula is: in, Indicates product The feature vector encoding of Represents the learnable weight parameters in the graph neural network; Indicates the product The set of adjacent products; Indicates the product Products in the adjacent product set The input feature vector of Indicates the product Input feature vector; Indicates that in the commodity adjacency matrix, commodity About the product The weight of The determining of the second feature vector encoding according to the user emotion information and the second product information includes: Extracting product image features corresponding to each product in the second product information; Inputting the user emotion information and the product image features into a trained neural network for mixed encoding, and extracting the feature vector code of the last layer sequence to obtain the second feature vector code; The determining of the second feature vector encoding according to the user emotion information and the second product information includes: Clustering each product in the second product information to obtain cluster center vector features of corresponding categories; Inputting the user emotion information and the cluster center vector features into a trained neural network for mixed encoding, and extracting the feature vector code of the last layer sequence to obtain the second feature vector code; The determining of a product recommendation score based on the first feature vector code and the second feature vector code, and recommending a product based on the product recommendation score, includes: Determining a fused feature vector code according to the first feature vector code and the second feature vector code; Each product in the first product information is scored according to the fused feature vector encoding to obtain a product recommendation score.

2. A product recommendation system, characterized in that: The product recommendation system includes: An information acquisition unit is configured to acquire first product information and user information within a conversation control session, wherein the user information includes user emotion information and second product information, wherein the first product information is information about a series of products clicked by the user within the session; the user interacts with a device of the recommendation system via voice, and the recommendation system acquires the user emotion information via a voice recognition function of the device, and determines whether the second product information is included in the information representing the user emotion by analyzing the voice information; a first eigenvector code determining unit, configured to establish a product adjacency matrix based on the first product information, and determine a first eigenvector code using a graph coding formula and the product adjacency matrix, wherein the first eigenvector code is used to represent a short-term implicit interest representation change of a user in a product; a second feature vector code determining unit, configured to determine a second feature vector code based on the user emotion information and the second product information, wherein the second feature vector code is used to represent a short-term explicit interest representation change of the user in the product; a product recommendation unit, configured to determine a product recommendation score based on the first feature vector code and the second feature vector code, and recommend a product based on the product recommendation score; Wherein, the first feature vector encoding determination unit includes: a product subsequence extraction subunit, configured to extract a plurality of product subsequences from the first product information according to a preset subsequence length, wherein each product subsequence contains at least two product information; an edge counting subunit, configured to add edges to the commodity adjacency pairs corresponding to each commodity in the plurality of commodity subsequences, and to count the total number of edges; A product adjacency matrix construction subunit, configured to normalize the total number of edges and construct a product adjacency matrix; The first feature vector encoding determination unit includes: an adjacent product set statistics subunit, configured to count the adjacent product sets of each product in the first product information using the product adjacency matrix; The first feature vector code calculation subunit is configured to calculate the first feature vector code corresponding to each product based on the adjacent product set of each product and the graph coding formula. The graph coding formula is: in, Indicates product The feature vector encoding of Represents the learnable weight parameters in the graph neural network; Indicates the product The set of adjacent products; Indicates the product Products in the adjacent product set The input feature vector of Indicates the product Input feature vector; Indicates that in the commodity adjacency matrix, commodity About the product The weight of The second feature vector encoding determination unit includes: a product image feature extraction subunit, configured to extract product image features corresponding to each product in the second product information; A second feature vector code extraction subunit is configured to input the user emotion information and the product image features into a trained neural network for mixed encoding, and extract the feature vector code of the last layer sequence to obtain the second feature vector code; The second feature vector encoding determination unit further includes: a cluster center vector feature acquisition subunit, configured to cluster each product in the second product information and acquire a cluster center vector feature of a corresponding category; A second feature vector code extraction subunit is used to input the user emotion information and the cluster center vector feature into the trained neural network for mixed encoding, and extract the feature vector code of the last layer sequence to obtain the second feature vector code; The recommended product unit includes: a fused feature vector code determining unit, configured to determine a fused feature vector code according to the first feature vector code and the second feature vector code; The product scoring sub-unit is used to score each product in the first product information according to the fused feature vector encoding to obtain a product recommendation score.

3. A product recommendation device, characterized in that: The method comprises a processor, a memory, and a computer program stored in the memory and executable on the processor, wherein the method according to claim 1 is implemented when the processor executes the computer program.

4. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the method according to claim 1 is implemented.

Citation Information

Patent Citations

  • Information recommendation method based on graph convolution and neural collaborative filtering

    CN108874914A

  • Online shopping system and method based on facial emotion state analysis

    CN112348640A