Product recommendation method, device and equipment
By combining professional network models and large language models, the matching score values in product recommendations are calculated, and the problems of low efficiency and time-consuming product recommendations in the existing technology are solved, and accurate recommendations are achieved.
Patent Information
- Application Number
- CN202411390312.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-30
- Publication Date
- 2025-01-07
- Estimated Expiration
- 2044-09-30
AI Technical Summary
The existing product recommendation methods rely on manual experience and cannot achieve accurate recommendations for user needs, which are inefficient and time-consuming.
Using a method combining professional network model and large language model, the matching score value is calculated to determine the target score value of the candidate product, thereby achieving accurate product recommendation.
It realizes accurate product recommendations for user needs, improves recommendation efficiency and reduces time-consuming, and avoids dependence on experience.
Smart Images

Figure CN118898507B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of artificial intelligence technology, and in particular to a product recommendation method, device and equipment. Background Art
[0002] Product recommendation means that when a text order is received, products that meet the needs of the user are recommended based on the text order. For example, the text order includes product name information and product requirement information. For example, if the product name information is a network camera, and the product requirement information is the focal length requirement and the resolution requirement, based on the text order, a network camera can be recommended to the user, and the network camera meets the focal length requirement and the resolution requirement.
[0003] In order to make product recommendations, the staff searches and matches all products according to the product name information and product demand information to obtain multiple candidate products. The staff uses their own experience to select products from multiple candidate products for recommendation. However, in the above method, recommendations need to be made based on experience, and it is impossible to make accurate product recommendations based on user needs. The recommendation efficiency is low and the recommendation takes a long time. Summary of the invention
[0004] The present application provides a product recommendation method, the method comprising:
[0005] Obtain a target text order and a first set corresponding to the target text order, wherein the first set includes a plurality of candidate products; for each candidate product, a sample feature vector corresponding to the candidate product includes a user feature vector of the target text order and a product feature vector of the candidate product;
[0006] Obtain a second set, the second set including some or all of the candidate products in the first set; for each candidate product in the second set, input a sample feature vector corresponding to the candidate product into a professional network model to obtain a first matching score value; wherein a larger first matching score value indicates a better matching degree between the candidate product and the target text order;
[0007] A third set is obtained, wherein the third set includes some or all of the candidate products of the second set; for each candidate product of the third set, a target prompt text is generated based on the prompt text of the target text order and the prompt text of the candidate product, and the target prompt text is input into the large language model to obtain a second matching score value; wherein a larger second matching score value indicates a better matching degree between the candidate product and the target text order;
[0008] For each candidate product in the third set, a target score value of the candidate product is determined based on the first matching score value and the second matching score value of the candidate product, a target product is selected from the third set based on the target score value of each candidate product, and the target product is recommended for the target text order.
[0009] The present application provides a product recommendation device, the device comprising:
[0010] An acquisition module is used to acquire a target text order and a first set corresponding to the target text order, wherein the first set includes a plurality of candidate products; for each candidate product, a sample feature vector corresponding to the candidate product includes a user feature vector of the target text order and a product feature vector of the candidate product; acquire a second set, wherein the second set includes some or all of the candidate products of the first set; and acquire a third set, wherein the third set includes some or all of the candidate products of the second set;
[0011] A processing module, for inputting, for each candidate product in the second set, a sample feature vector corresponding to the candidate product into a professional network model to obtain a first matching score value; wherein a larger first matching score value indicates a better matching degree between the candidate product and the target text order;
[0012] a processing module, configured to generate a target prompt text for each candidate product in the third set based on the prompt text of the target text order and the prompt text of the candidate product, and input the target prompt text into the large language model to obtain a second matching score value; wherein the larger the second matching score value, the better the matching degree between the candidate product and the target text order;
[0013] a determination module, configured to determine, for each candidate product in the third set, a target score value of the candidate product based on the first matching score value and the second matching score value of the candidate product;
[0014] A recommendation module is used to select a target product from the third set based on the target score value of each candidate product, and recommend the target product for the target text order.
[0015] The present application provides an electronic device, a processor and a machine-readable storage medium, wherein the machine-readable storage medium stores machine-executable instructions that can be executed by the processor; the processor is used to execute the machine-executable instructions to implement the product recommendation method of the above example of the present application.
[0016] The present application provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the product recommendation method of the above example of the present application is implemented.
[0017] The present application provides a machine-readable storage medium, which stores machine-executable instructions that can be executed by a processor; wherein the processor is used to execute the machine-executable instructions to implement the product recommendation method of the above example of the present application.
[0018] It can be seen from the above technical solutions that in the embodiment of the present application, the first matching score value of the candidate product can be obtained based on the professional network model, the second matching score value of the candidate product can be obtained based on the large language model, the target score value of the candidate product can be determined based on the first matching score value and the second matching score value, and then the target product can be recommended to the user based on the target score value of each candidate product. The target product can be determined by combining the professional network model and the large language model to achieve accurate product recommendation, that is, to achieve accurate product recommendation based on user needs, without the need to recommend products based on experience, with higher recommendation efficiency and lower recommendation time consumption. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] Figure 1 is a flowchart of a product recommendation method in one embodiment of the present application;
[0020] Figure 2 is a flowchart of a product recommendation method in one embodiment of the present application;
[0021] Figure 3 It is a schematic diagram of a rough sorting process in one embodiment of the present application;
[0022] Figure 4 It is a schematic diagram of the processing flow of a professional network model in one embodiment of the present application;
[0023] Figure 5 is a schematic diagram of the processing flow of the expert sub-model in one embodiment of the present application;
[0024] Figure 6 is a structural schematic diagram of a product recommendation device in one embodiment of the present application;
[0025] Figure 7 It is a hardware structure diagram of an electronic device in one embodiment of the present application. DETAILED DESCRIPTION
[0026] In the present application, a product recommendation method is proposed, which can be applied to any type of electronic device. Figure 1 FIG. 4 is a flow chart of the method, which may include:
[0027] Step 101, obtaining a target text order and a first set corresponding to the target text order, the first set including multiple candidate products; for each candidate product, a sample feature vector corresponding to the candidate product includes a user feature vector of the target text order and a product feature vector of the candidate product.
[0028] Step 102: Obtain a second set, which includes some or all of the candidate products in the first set; for each candidate product in the second set, input the sample feature vector corresponding to the candidate product into the professional network model to obtain a first matching score value; wherein, the larger the first matching score value, the better the matching degree between the candidate product and the target text order.
[0029] Step 103: Obtain a third set, which includes some or all of the candidate products in the second set; for each candidate product in the third set, generate a target prompt text based on the prompt text of the target text order and the prompt text of the candidate product, and input the target prompt text into the large language model to obtain a second matching score value; wherein, the larger the second matching score value, the better the matching degree between the candidate product and the target text order.
[0030] Step 104: for each candidate product in the third set, determine a target score value of the candidate product based on the first matching score value and the second matching score value of the candidate product, select a target product from the third set based on the target score value of each candidate product, and recommend the target product for the target text order.
[0031] Exemplarily, obtaining the first set corresponding to the target text order may include, but is not limited to: for each historical text order in a plurality of historical text orders, calculating the similarity between the user feature vector of the historical text order and the user feature vector of the target text order; if the similarity is greater than a threshold value (which may be configured based on experience), determining the recommended product corresponding to the historical text order as a candidate product corresponding to the target text order, and adding the candidate product to the first set. Alternatively, if the similarity is not greater than the threshold value, not adding the recommended product corresponding to the historical text order to the first set.
[0032] Exemplarily, if the second set includes some candidate products of the first set, obtaining the second set may include but is not limited to: for each candidate product of the first set, determining the target coarse ranking model corresponding to the candidate product, inputting the sample feature vector corresponding to the candidate product into the target coarse ranking model to obtain a third matching score value, wherein the larger the third matching score value is, the better the matching degree between the candidate product and the target text order is; sorting all candidate products of the first set based on the third matching score value; and based on the sorting result, selecting a first number of candidate products with large third matching score values and adding them to the second set.
[0033] Determining the target rough ranking model corresponding to the candidate product may include but is not limited to: based on the user feature vectors corresponding to the multiple text orders respectively, using a clustering algorithm to cluster the multiple text orders to obtain K cluster clusters, the K cluster clusters correspond one-to-one to the K trained rough ranking models, and K is a positive integer greater than 1; wherein the multiple text orders include the target text order and the remaining text orders except the target text order; and determining the rough ranking model corresponding to the cluster cluster to which the target text order belongs as the target rough ranking model.
[0034] Exemplarily, if the professional network model includes an expert sub-model, a first gating sub-network and a deep neural sub-network, the sample feature vector corresponding to the candidate product is input into the professional network model to obtain a first matching score value, which may include but is not limited to: inputting the sample feature vector corresponding to the candidate product into the expert sub-model to obtain a high-level expression feature vector; inputting the sample feature vector corresponding to the candidate product into the first gating sub-network to obtain a first weight feature vector, and the first weight feature vector is used to characterize the importance of the high-level expression feature vector; determining an intermediate feature vector based on the high-level expression feature vector and the first weight feature vector; and inputting the intermediate feature vector into the deep neural sub-network to obtain a first matching score value.
[0035] Exemplarily, if the expert sub-model includes a CrossNet sub-network, a BERT sub-network, a DSSM sub-network, and a second gating sub-network, the sample feature vector corresponding to the candidate product is input into the expert sub-model to obtain a high-level expression feature vector, which may include but is not limited to: determining non-text domain features and text domain features based on the sample feature vector corresponding to the candidate product; wherein the user feature vector of the target text order includes user non-text domain features and user text domain features, the product feature vector of the candidate product includes product non-text domain features and product text domain features, the non-text domain features include user non-text domain features and product non-text domain features, and the text domain features include user text domain features and product text domain features.
[0036] The non-text domain features are input into the CrossNet sub-network to obtain non-text domain high-order features; the text domain features are input into the BERT sub-network to obtain bidirectional representation features, and the bidirectional representation features are input into the DSSM sub-network to obtain text domain high-order features; the text domain high-order features and non-text domain high-order features are concatenated into global high-order features; the global high-order features are input into the second gating sub-network to obtain the second weighted feature vector, and the high-level representation feature vector can be determined based on the global high-order features and the second weighted feature vector.
[0037] Exemplarily, if the professional network model includes M expert sub-models, after the sample feature vector corresponding to the candidate product is input into the M expert sub-models, the M expert sub-models can output M high-level expression feature vectors; the first weight feature vector can include M weight values, and the M weight values represent the importance of the M high-level expression feature vectors; determining the intermediate feature vector based on the high-level expression feature vector and the first weight feature vector may include but is not limited to: performing feature fusion on the M high-level expression feature vectors output by the M expert sub-models to obtain a fused high-level expression feature vector, and performing a dot product operation on the fused high-level expression feature vector and the first weight feature vector to obtain the intermediate feature vector.
[0038] Exemplarily, if the third set includes some candidate products of the second set, obtaining the third set may include, but is not limited to: sorting all candidate products of the second set based on the first matching score value; based on the sorting result, selecting a second number of candidate products with large first matching score values and adding them to the third set.
[0039] Exemplarily, inputting the target prompt text into the large language model to obtain a second matching score value may include but is not limited to: inputting the target prompt text into the large language model to obtain project core parameters; wherein the target prompt text includes a prompt text of the target text matching order, a prompt text of the candidate product, and task instruction information, wherein the prompt text of the candidate product includes the product core parameters of the candidate product and the core parameters of the major category to which the candidate product belongs, and the task instruction information is used to indicate the input data, output data, and processing method of the large language model; and determining the second matching score value based on the project core parameters, the product core parameters of the candidate product, and the core parameters of the major category to which the candidate product belongs.
[0040] Determining the target score value of the candidate product based on the first match score value and the second match score value of the candidate product may include but is not limited to: determining the target score value based on the first match score value, the weight coefficient of the first match score value, the second match score value, and the weight coefficient of the second match score value.
[0041] As can be seen from the above technical solutions, in the embodiment of the present application, the first matching score value of the candidate product can be obtained based on the professional network model, the second matching score value of the candidate product can be obtained based on the large language model, the target score value of the candidate product can be determined based on the first matching score value and the second matching score value, and then the target product can be recommended to the user based on the target score value of each candidate product. The target product can be determined by combining the professional network model and the large language model to achieve accurate product recommendation, that is, to achieve accurate product recommendation based on user needs, without the need to recommend products based on experience, achieving high recommendation efficiency and low calculation time.
[0042] The above technical solutions of the embodiments of the present application are described below in combination with specific application scenarios.
[0043] Product recommendation means recommending products that meet the needs of users based on the text order when receiving the text order. In order to achieve product recommendation, the staff searches and matches all products according to the product name information and product demand information to obtain multiple candidate products. The staff uses their own experience to select products from multiple candidate products for recommendation. However, in the above method, recommendations need to be made based on experience, and it is impossible to achieve accurate product recommendations based on user needs. The recommendation efficiency is low and time-consuming.
[0044] In response to the above findings, a product recommendation method is proposed in an embodiment of the present application, which can combine a professional network model and a large language model to determine the target product, realize accurate product recommendation based on user needs, and recommend products that meet user needs, thereby improving sales capabilities, increasing marketing achievement rates, and increasing corporate revenue.
[0045] In the present application, a product recommendation method is proposed, which can be applied to any type of electronic device. Figure 2 As shown, it is a flowchart of the product recommendation method, and the method may include:
[0046] Step 201: Obtain a target text order, where the target text order is an order in text format.
[0047] Exemplarily, the target text order may include information about the product required by the user. For example, the target text order may include, but is not limited to, product name information and product requirement information. For example, the product name information may be a network camera, and the product requirement information may be focal length requirements, resolution requirements, price requirements, etc. For another example, the product name information may be a mobile phone, and the product requirement information may be network requirements, memory requirements, resolution requirements, price requirements, etc. Of course, there is no restriction on the content of this target text order.
[0048] Step 202: Obtain a user feature vector of the target text matching order.
[0049] Exemplarily, the user feature vector includes user non-text domain features and user text domain features, or the user feature vector includes user text domain features. Among them, the user non-text domain features include at least one of user business domain features, user neighbor domain features, and user statistical domain features. For example, the types of non-text domains are pre-configured, such as business domain, neighbor domain, statistical domain, etc. Of course, these are just a few examples of non-text domains, and other non-text domains can also be configured, and there is no restriction on the type of non-text domain. If the business domain is pre-configured, it is necessary to obtain the user business domain features, if the neighbor domain is pre-configured, it is necessary to obtain the user neighbor domain features, and if the statistical domain is pre-configured, it is necessary to obtain the user statistical domain features.
[0050] For user text domain features, the target text list can be text data, and the target text list can be converted into a vector representation, that is, the target text list is converted into a feature vector, and the feature vector is used as the user text domain feature. For example, keywords (such as multiple keywords) are extracted from the target text list, such as using word segmentation technology to extract keywords from the target text list, and there is no restriction on this. Use technologies such as word embedding to convert keywords into vector representations to obtain user text domain features.
[0051] For example, the user text field feature can be recorded as , The vector representation of the first keyword in the target text order, The vector representation of the second keyword in the target text order, and so on. The vector representation of the nth keyword in the target text list.
[0052] In view of the user's business domain features, when making product recommendations, multiple text orders are usually input and product recommendations are made for the multiple text orders, and the multiple text orders include a target text order and other text orders except the target text order. Based on this, the user's business domain features are determined based on the target text order and the other text orders. For example, the intersection keywords of the target text order and the other text orders are determined, and the intersection keywords are converted into vector representations to obtain the user's business domain features. Other methods can also be used to determine the user's business domain features, as long as the user's business domain features are related to the target text order and the other text orders, that is, the user's business domain features are determined based on the association between the target text order and the other text orders.
[0053] For the user's neighborhood features, historical text matching is obtained. The historical text matching is the text matching of the completed product recommendation, and the similarity between the historical text matching and the target text matching is greater than the threshold, indicating that the historical text matching is similar to the target text matching. Based on this, the user's neighborhood features are determined based on the target text matching and the historical text matching. For example, the intersection keywords of the target text matching and the historical text matching are determined, and the intersection keywords are converted into vector representations to obtain the user's neighborhood features. Other methods can also be used to determine the user's neighborhood features, as long as the user's neighborhood features are related to the target text matching and the historical text matching, that is, the user's neighborhood features are determined based on the correlation between the target text matching and the historical text matching.
[0054] For user statistical domain features, multiple historical text orders can be obtained, and user statistical domain features can be determined based on the target text order and multiple historical text orders, that is, information fusion is performed on the target text order and multiple historical text orders to obtain statistical features, and the statistical features of all text orders are used as user statistical domain features. For example, the statistical features can be the statistical number of a certain keyword, the statistical number of a certain price range (indicating the demand for goods in this price range), etc., and the statistical features can be arbitrarily configured. Based on this, the statistical features can be determined based on the target text order and multiple historical text orders, and the statistical features can be used as user statistical domain features. Of course, other methods can also be used to determine user statistical domain features.
[0055] Step 203: Determine whether the data description is missing, that is, whether the target text order is missing a specific data description.
[0056] If no, step 204 may be executed, and if yes, step 207 may be executed.
[0057] For example, the target text order needs to include product name information. If the product name information is not included, the target text order will not be processed. In addition to the product name information, the target text order may include specific data descriptions, such as focal length requirement information and resolution requirement information, while price requirement information does not belong to the specific data description. Of course, the above is only an example and is not limited to this.
[0058] For example, assuming that the specific data description (which can be pre-configured based on experience) includes information A1, information A2, and information A3, then if the target text matching list includes information A1, information A2, and information A3, it is determined that the data description is not missing, and step 204 can be executed. If the target text matching list does not include at least one of information A1, information A2, and information A3, it is determined that the data description is missing, and step 207 can be executed.
[0059] Step 204: Calculate the similarity (degree of similarity) between the user feature vector of the historical text matching and the user feature vector of the target text matching. The similarity may also be referred to as confidence.
[0060] For example, multiple historical text orders can be obtained. The historical text order is a text order that has completed product recommendations. After the target product is recommended to the target text order, the target text order will also become a historical text order. For each historical text order, the historical text order can correspond to only one recommended product. For example, after multiple products are recommended to the user for the historical text order, the user can select a product to purchase or follow, and use this product as the recommended product corresponding to the historical text order.
[0061] For each historical text matching order, a user feature vector of the historical text matching order may be determined in the same manner as the user feature vector of the target text matching order, which will not be repeated here.
[0062] For each historical text matching order, the similarity between the user feature vector of the historical text matching order and the user feature vector of the target text matching order can be calculated. For example, the similarity between the two can be calculated using methods such as Euclidean distance and cosine similarity, and there is no restriction on the similarity calculation method.
[0063] Based on the similarity between the user feature vectors of all historical text orders and the user feature vectors of the target text order, in step 204, the number of historical text orders with a similarity greater than a threshold value B1 may also be counted. If the number is greater than or equal to the number of recommended products (the number of recommended products indicates the number of products that need to be recommended to the user, such as 5 recommended products, indicating that 5 products need to be recommended to the user), step 205 is executed. If the number is less than the number of recommended products, step 206 is executed.
[0064] Step 205: sort all historical text orders in descending order of similarity based on the similarity between the user feature vectors of all historical text orders and the user feature vectors of the target text order; select the recommended product number of historical text orders with the highest ranking based on the sorting result, use the recommended product corresponding to the selected historical text order as the target product, and recommend the target product for the target text order. Alternatively, sort all historical text orders in descending order of similarity; select the recommended product number of historical text orders with the lowest ranking based on the sorting result, use the recommended product corresponding to the selected historical text order as the target product, and recommend the target product for the target text order.
[0065] Step 206: For each historical text order, based on the similarity between the user feature vector of the historical text order and the user feature vector of the target text order, if the similarity is greater than threshold B2 (threshold B2 may be less than threshold B1), the recommended product corresponding to the historical text order may be added to the first set, or if the similarity is not greater than threshold B2, the recommended product corresponding to the historical text order may not be added to the first set. Exemplarily, the first set may be a product candidate pool of the target text order, and the first set may include multiple candidate products corresponding to the target text order.
[0066] Step 207: Calculate the similarity (ie, degree of similarity) between the product name feature vector of the historical text order and the product name feature vector of the target text order. The similarity may also be called confidence.
[0067] For example, for the target text matching, the target text matching may include product name information and product demand information. The product name information may be text data, and the product name information may be converted into a vector representation, that is, the product name information may be converted into a feature vector, and the feature vector is called a product name feature vector. For example, keywords (such as multiple keywords) are extracted from the product name information, and the keywords are converted into a vector representation using technologies such as word embedding to obtain a product name feature vector.
[0068] For each historical text order, the product name feature vector of the historical text order can be determined in the same manner as the product name feature vector of the target text order, which will not be repeated here.
[0069] For each historical text order, the similarity between the product name feature vector of the historical text order and the product name feature vector of the target text order can be calculated. For example, the similarity can be calculated using methods such as Euclidean distance and cosine similarity, and there is no restriction on the similarity calculation method.
[0070] Based on the similarity between the product name feature vectors of all historical text orders and the product name feature vectors of the target text order, in step 207, the number of historical text orders with a similarity greater than a threshold value B3 (threshold value B3 may be greater than threshold value B1) may also be counted. If the number is greater than or equal to the number of recommended products, step 208 is performed. If the number is less than the number of recommended products, step 209 is performed.
[0071] Step 208: sort all historical text orders in descending order of similarity based on the similarity between the product name feature vectors of all historical text orders and the product name feature vectors of the target text order; select the recommended product number of historical text orders with the highest ranking based on the sorting result, use the recommended product corresponding to the selected historical text order as the target product, and recommend the target product for the target text order. Alternatively, sort all historical text orders in descending order of similarity; select the recommended product number of historical text orders with the lowest ranking based on the sorting result, use the recommended product corresponding to the selected historical text order as the target product, and recommend the target product for the target text order.
[0072] Step 209: For each historical text order, based on the similarity between the product name feature vector of the historical text order and the product name feature vector of the target text order, if the similarity is greater than threshold B4 (threshold B4 may be less than threshold B3), the recommended product corresponding to the historical text order may be added to the first set, or if the similarity is not greater than threshold B4, the recommended product corresponding to the historical text order may not be added to the first set. Exemplarily, the first set may be a product candidate pool for the target text order, and the first set may include multiple candidate products corresponding to the target text order.
[0073] In summary, it can be seen that based on step 206 or step 209, a first set corresponding to the target text order can be obtained, and the first set can include multiple candidate products corresponding to the target text order. For each candidate product, a sample feature vector corresponding to the candidate product can be constructed, and the sample feature vector can include a user feature vector of the target text order and a product feature vector of the candidate product.
[0074] Regarding the user feature vector, see step 202. Regarding the product feature vector of the candidate product, the product feature vector may include product non-text domain features and product text domain features, or the product feature vector may include product text domain features. Among them, the product non-text domain features include at least one of product business domain features, product neighbor domain features, and product statistical domain features. For example, if the business domain is pre-configured, it is necessary to obtain the product business domain features, if the neighbor domain is pre-configured, it is necessary to obtain the product neighbor domain features, and if the statistical domain is pre-configured, it is necessary to obtain the product statistical domain features.
[0075] For the product text domain features, the text description information of the candidate product can be obtained. The text description information is used to describe the candidate product, such as the focal length information, resolution information, price information, etc. of the candidate product. There is no restriction on this text description information. The text description information of the candidate product can be text data, and the text description information can be converted into a vector representation, that is, the text description information is converted into a feature vector, and the feature vector is used as the product text domain feature. For example, keywords are extracted from the text description information, and the keywords are converted into a vector representation using technologies such as word embedding to obtain the product text domain features.
[0076] For example, the product text domain feature can be recorded as , Represents the vector representation of the first keyword in the text description information, The vector representation of the second keyword in the text description information, and so on. Represents the vector representation of the mth keyword in the text description information.
[0077] For product business domain features, the text description information of the candidate product may include the business information of the candidate product, such as price, focal length, and resolution, etc. The business information of the candidate product may be feature extracted to obtain the product business domain features. For example, the business information of the candidate product may be converted into a vector representation to obtain the product business domain features, or other methods may be used to determine the product business domain features.
[0078] Based on the product neighborhood features, the related products of the candidate product can be obtained. The specifications of the candidate product and the related products are similar. For example, when the specification is price, the prices of the candidate product and the related products are similar, or when the specification is focal length, the focal lengths of the candidate product and the related products are similar. The type of specification can be configured arbitrarily.
[0079] Based on this, the product neighborhood features are determined based on the text description information of the candidate product and the text description information of the associated product. For example, the intersection keywords of the text description information of the candidate product and the text description information of the associated product are determined, and the intersection keywords are converted into vector representations to obtain the product neighborhood features. Other methods can also be used to determine the product neighborhood features, and the product neighborhood features can be determined based on the correlation between the text description information of the candidate product and the text description information of the associated product.
[0080] For product statistical domain features, multiple related products can be obtained, and the product statistical domain features can be determined based on the text description information of the candidate product and the text description information of the multiple related products. That is, the text description information of the candidate product and the text description information of the multiple related products are fused to obtain statistical features, and the statistical features of all text description information are used as product statistical domain features, and there is no restriction on this.
[0081] In summary, we can get the sample feature vector corresponding to the candidate product, and record the sample feature vector as , Indicates the first i A sample feature vector corresponding to a candidate product includes user text domain features, user business domain features, user neighbor domain features, user statistical domain features, product text domain features, product business domain features, product neighbor domain features, and product statistical domain features.
[0082] In a possible implementation, the sample feature vector can be expressed as: , u It can represent the user feature vector, The table can show i The product feature vector of candidate products. Alternatively, the sample feature vector can be expressed as: , c can represent a context feature vector.
[0083] Obviously, the sample feature vector may include a user feature vector and a product feature vector. Alternatively, the sample feature vector may include a user feature vector, a product feature vector and a context feature vector.
[0084] In order to obtain the context feature vector, in addition to the product name information and product demand information, the target text order may also include remark information, such as the user's preferred color, the user's preferred product specifications, and other remark information. The remark information may be text data, and the remark information may be converted into a feature vector and recorded as a context feature vector. For example, the context feature vector may be recorded as , The vector representation of the first keyword in the remark information can be represented, and so on.
[0085] For a target text order, the target text order corresponds to multiple candidate products, and the product feature vectors of these candidate products can be recorded as , represents the product feature vector of the first candidate product, and so on. Since each candidate product can correspond to a sample feature vector, the multiple sample feature vectors of multiple candidate products corresponding to the target text order can be recorded as , Represents the sample feature vector corresponding to the first candidate product, and so on.
[0086] Step 210: grouping the multiple text orders.
[0087] Exemplarily, when making product recommendations, multiple text orders are usually input, and product recommendations need to be made for the multiple text orders separately. The multiple text orders include a target text order and the remaining text orders except the target text order. For example, in order to make a product recommendation for text order 1, text order 1 can be called the target text order, and the other text orders except text order 1 can be called the remaining text orders. In order to make a product recommendation for text order 2, text order 2 can be called the target text order, and the other text orders except text order 2 can be called the remaining text orders, and so on.
[0088] Exemplarily, in order to group data of multiple text orders, user feature vectors corresponding to the multiple text orders can be determined. Based on the user feature vectors corresponding to the multiple text orders, a clustering algorithm can be used to cluster the multiple text orders to obtain K clusters, where K is a positive integer greater than 1.
[0089] For example, the clustering algorithm may be a K-Means clustering algorithm or other clustering algorithms, and there is no restriction on this. After the user feature vectors of multiple text orders are input to the K-Means clustering algorithm, the K-Means clustering algorithm outputs K clusters. For each cluster, the cluster includes multiple text orders, indicating that these text orders are clustered into the same cluster, and there is no restriction on this clustering process.
[0090] In order to ensure data balance between clusters, a constraint is added based on the iterative stop condition of the K-Means clustering algorithm: the number of samples in the cluster is not less than In this way, after the K-Means clustering algorithm is completed, for each cluster, the number of text matching orders included in the cluster is not less than .
[0091] The clustering process of the K-Means clustering algorithm can be expressed as: , The user feature vector that can represent all text matching orders, Can represent a set based on user feature vectors Perform K-Means clustering, Represents the cluster, that is, K clusters can be obtained.
[0092] Step 211: perform a rough sorting of all candidate products in the first set corresponding to the target text order, select some candidate products based on the rough sorting result, and add the selected candidate products to the second set.
[0093] For example, there are many candidate products in the first set. If the processing of the professional network model and the processing of the large language model are performed for all candidate products, the amount of calculation will be very large and the product recommendation efficiency will be very low. Based on this, in this embodiment, some candidate products can be selected from all candidate products in the first set and added to the second set. Of course, if the computing resources are sufficient, all candidate products in the first set can also be added to the second set (that is, the second set is the same as the first set).
[0094] In order to select some candidate products from the first set and add them to the second set, all candidate products in the first set can be roughly ranked (such as recall rough ranking). For example, all candidate products in the first set can be screened by a rough ranking model, and candidate products with low relevance can be filtered out, so as to retrieve candidate products that meet the requirements and add them to the second set. The following is an explanation of this process.
[0095] For example, see Figure 3 As shown in FIG. 1 , it is a schematic diagram of a rough sorting process, and the process may include:
[0096] Step 301: for each candidate product in the first set, determine a target coarse-grained ranking model corresponding to the candidate product, for example, select a coarse-grained ranking model as the target coarse-grained ranking model corresponding to the candidate product.
[0097] Exemplarily, a rough sorting model is pre-trained, and the rough sorting model is used as the target rough sorting model corresponding to the candidate product. Alternatively, K rough sorting models are pre-trained, and the K clusters correspond one-to-one to the K rough sorting models. Based on this, the rough sorting model corresponding to the cluster to which the target text order belongs is determined as the target rough sorting model corresponding to the candidate product. Since all candidate products in the first set are candidate products corresponding to the same target text order, all candidate products in the first set correspond to the same target rough sorting model. For example, if the target text order belongs to the first cluster, and the first cluster corresponds to the first rough sorting model, then the target rough sorting model corresponding to all candidate products in the first set is the first rough sorting model. If the target text order belongs to the second cluster, and the second cluster corresponds to the second rough sorting model, then the target rough sorting model corresponding to all candidate products in the first set is the second rough sorting model, and so on.
[0098] Step 302: Input the sample feature vector corresponding to the candidate product to the target rough sorting model to obtain a third matching score value. The larger the third matching score value, the better the matching degree between the candidate product and the target text order.
[0099] Exemplarily, the input data of the target rough sorting model is a sample feature vector, and the output data of the target rough sorting model is a probability value, which can be recorded as a third matching score value, and the third matching score value indicates the degree of matching between the candidate product and the target text order. For example, since the sample feature vector includes the user feature vector of the target text order and the product feature vector of the candidate product, when the target rough sorting model processes the sample feature vector to obtain the third matching score value, the third matching score value indicates the degree of matching between the product feature vector of the candidate product and the user feature vector of the target text order, and then indicates the degree of matching between the candidate product and the target text order. For example, if the third matching score value is 0.9, it indicates a high degree of matching, and if the third matching score value is 0.1, it indicates a low degree of matching. Obviously, the larger the third matching score value, the better the matching degree between the candidate product and the target text order.
[0100] In a possible implementation, the training process of the K coarse-grained models may include:
[0101] A plurality of sample orders are obtained, and data of the plurality of sample orders are grouped. For example, user feature vectors of the plurality of sample orders may be input into a K-Means clustering algorithm, and the K-Means clustering algorithm outputs K clusters. For each cluster, the cluster may include a plurality of sample orders.
[0102] Get K initial models, the network structures of these initial models are the same, and the network parameters of these initial models can be the same or different. The initial model can be a LGBM (Light Gradient Boosting Machine) model or other types of models, without restriction.
[0103] The K initial models are sorted so that they correspond one to one with the K clusters. The first initial model is trained using the training data corresponding to the sample orders in the first cluster, the second initial model is trained using the training data corresponding to the sample orders in the second cluster, and so on.
[0104] Taking the training data corresponding to the sample orders in the first cluster as an example, assuming that the cluster includes sample order 1 (actually multiple sample orders), the sample feature vector (such as user feature vector and product feature vector) of sample order 1 can be input into the initial model, and the initial model outputs the matching score value corresponding to the sample feature vector. The loss value is calculated based on the difference between the matching score value and the label value of the sample feature vector, and the network parameters of the initial model are adjusted based on the loss value (the adjustment goal is to make the loss value smaller and smaller, such as using the gradient descent method, etc.), to obtain the trained coarse-ranked model, and the coarse-ranked model corresponds to the first cluster.
[0105] Regarding the label value of the sample feature vector, for sample order 1, if the product corresponding to the product feature vector is the product recommended for sample order 1, then the label value is 1; if the product corresponding to the product feature vector is not the product recommended for sample order 1, then the label value is 0.
[0106] Obviously, based on the above method, K initial models can be trained to obtain K rough models, and the K rough models correspond to the K clusters one by one. The network structures of the K rough models are the same, but because they are trained with different training data, the network parameters of the K rough models are different.
[0107] From the above, it can be seen that in this embodiment, a data grouping technology is used to group multiple sample orders to obtain K clusters (data grouping is performed on multiple sample orders in a data adaptive manner). Then, based on the K clusters, K initial models are trained to obtain K coarse-pick models, so that different coarse-pick models are trained for different clusters. In this way, K coarse-pick models can be used for intent recognition to solve the problem of insufficient accuracy in user intent recognition under the lack of interactive data and a single scenario model.
[0108] For example, the K coarse-sequence models obtained through training can be expressed by the following formula:
[0109] ;
[0110] In the above formula, represents a set of K coarse-grained models, Indicates j A coarse-grained model, and , that is, there are K rough arrangement models in total. Indicates that based on j The training data of clusters is trained to obtain the j A rough model, Indicates that based on j Clusters, Indicatesj Sample allocation within a cluster i The sample feature vector of .
[0111] Step 303: Sort all candidate products in the first set based on the third matching score value.
[0112] For each candidate product in the first set, after the sample feature vector corresponding to the candidate product is input into the target rough sorting model, a third matching score value can be obtained. For example, it can be expressed by the following formula: . Indicates i The sample feature vector corresponding to the candidate products. Indicates i The third matching score value of the candidate product. Indicates i The coarse sorting model corresponding to the cluster to which the sample vector corresponding to the candidate product belongs, that is, i The target coarse ranking model corresponding to the candidate products.
[0113] After obtaining the third matching score values of all candidate products in the first set, all candidate products in the first set can be sorted in descending order of the third matching score values, or can be sorted in descending order of the third matching score values.
[0114] Step 304: Based on the sorting result, a first number of candidate products with large third matching score values are selected and added to the second set, that is, the second set may include some of the candidate products in the first set.
[0115] For example, if all candidate products of the first set are sorted in descending order according to the third matching score value, the first number of candidate products with the highest ranking can be selected and added to the second set, and the first number can be configured based on experience, such as 30, 50, 60, etc. Alternatively, if all candidate products of the first set are sorted in descending order according to the third matching score value, the first number of candidate products with the lowest ranking can be selected and added to the second set. Thus, the second set corresponding to the target text matching order can be obtained, and the second set corresponding to the target text matching order can include multiple candidate products.
[0116] To summarize, the target rough sorting model corresponding to the cluster to which the target text order belongs can be used to predict the matching probability, obtain the third matching score value for each candidate product, and then sort all the candidate products in the first set based on the third matching score value to achieve the purpose of accurate intent identification.
[0117] Step 212: for each candidate product in the second set, input the sample feature vector corresponding to the candidate product into the professional network model to obtain a first matching score value of the candidate product; wherein, the larger the first matching score value, the better the matching degree between the candidate product and the target text order.
[0118] Exemplarily, the input data of the professional network model is a sample feature vector, and the output data of the professional network model is a probability value, which can be recorded as a first matching score value, and the first matching score value indicates the degree of matching between the candidate product and the target text order. For example, since the sample feature vector includes the user feature vector of the target text order and the product feature vector of the candidate product, when the professional network model processes the sample feature vector to obtain the first matching score value, the first matching score value indicates the degree of matching between the product feature vector of the candidate product and the user feature vector of the target text order, and then indicates the degree of matching between the candidate product and the target text order. For example, if the first matching score value is 0.9, it indicates a high degree of matching, and if the first matching score value is 0.1, it indicates a low degree of matching. Obviously, the larger the first matching score value, the better the matching degree between the candidate product and the target text order.
[0119] Exemplarily, the professional network model may include an expert sub-model, a first gating sub-network and a deep neural sub-network. Figure 4 As shown, it is a schematic diagram of the processing flow of the professional network model.
[0120] Step 401: Input the sample feature vector corresponding to the candidate product to the expert sub-model, and the expert sub-model processes the sample feature vector to obtain a high-level representation feature vector corresponding to the sample feature vector.
[0121] For example, the processing of the expert sub-model can be expressed by the following formula: , Indicates i The sample feature vector corresponding to the candidate products, Indicates i A high-level feature vector describing the candidate products, Represents the expert sub-model, that is, the sample feature vector Input to the expert sub-model to obtain a high-level representation feature vector For the processing process of the expert sub-model, please refer to the subsequent embodiments.
[0122] Step 402: Input the sample feature vector corresponding to the candidate product to the first gating sub-network, which processes the sample feature vector to obtain a first weighted feature vector corresponding to the sample feature vector. The first weighted feature vector is used to characterize the importance of the high-level representation feature vector.
[0123] For example, the processing of the first gating subnetwork can be expressed as follows: , Indicates i The first weighted feature vector of candidate products, Represents the first gating subnetwork, that is, the sample feature vector Input to the first gated subnetwork to obtain the first weight feature vector .
[0124] Step 403: Determine an intermediate feature vector based on the high-level representation feature vector and the first weight feature vector.
[0125] Exemplarily, a dot multiplication operation may be performed on the high-level representation feature vector and the first weight feature vector to obtain an intermediate feature vector. For example, the dot multiplication operation process may be represented by the following formula: . Indicates i A high-level feature vector describing the candidate products, Indicates i The first weighted feature vector of candidate products, Represents the point multiplication operation according to the position, Indicates i The intermediate feature vector of the candidate products.
[0126] In a possible implementation, M expert sub-models may be pre-trained, where M may be a positive integer greater than 1, i.e., the professional network model includes M expert sub-models. On this basis, for step 401, the sample feature vector corresponding to the candidate product is sequentially input to each expert sub-model, and the expert sub-model outputs a high-level description feature vector corresponding to the sample feature vector. In this way, after the sample feature vector corresponding to the candidate product is input to the M expert sub-models, M high-level description feature vectors are output.
[0127] For example, the first expert sub-model outputs a high-level representation feature vector , the second expert sub-model outputs a high-level representation feature vector , and so on, a total of M high-level representation feature vectors are obtained.
[0128] With respect to step 402, when the sample feature vector corresponding to the candidate product is input to the first gating sub-network, the first gating sub-network outputs a first weight feature vector corresponding to the sample feature vector, and the first weight feature vector includes M weight values, and the M weight values represent the importance of the M high-level representation feature vectors.
[0129] For example, the first weight value of the first weight feature vector can represent the importance of the high-level expression feature vector output by the first expert sub-model, the second weight value of the first weight feature vector can represent the importance of the high-level expression feature vector output by the second expert sub-model, and so on.
[0130] With respect to step 403, since the M expert sub-models output M high-level expression feature vectors, the M high-level expression feature vectors are feature fused to obtain a fused high-level expression feature vector. For example, the M high-level expression feature vectors are spliced into an M-dimensional high-level expression feature vector. The fused high-level expression feature vector (M dimensions) and the first weight feature vector (M weight values) are point multiplied to obtain an intermediate feature vector. For example, the first dimension of the fused high-level expression feature vector is point multiplied with the first weight value of the first weight feature vector. Since the first dimension is the high-level expression feature vector output by the first expert sub-model, and the first weight value represents the importance of the high-level expression feature vector output by the first expert sub-model, the result of the point multiplication operation is the result of the operation of the high-level expression feature vector and the weight value of the high-level expression feature vector. Similarly, the second dimension of the fused high-level expression feature vector can be point multiplied with the second weight value of the first weight feature vector, and so on.
[0131] Step 404: input the intermediate feature vector into the deep neural sub-network to obtain a first matching score value.
[0132] For example, a deep neural subnetwork can include DNN network layers and The intermediate feature vector can be input to the DNN network layer, and the intermediate feature vector can be processed by the DNN network layer. Then, the processing result of the DNN network layer is input to Network layer, through The network layer processes the processing result to obtain the first matching score value of the candidate product. For example, the processing process of the deep neural sub-network can be expressed by the following formula: .
[0133] In the above formula, Indicates i The intermediate feature vector of the candidate product, DNN means that the DNN network layer is used to process the input data. Indicates the use of The network layer processes the input data, and The output data of the network layer is i The first match score of candidate products .
[0134] Referring to step 401 to step 404, the output data (high-level representation feature vectors) of multiple expert sub-models can be fused using the first gated sub-network, and a fusion deep model structure based on MoE (Mixture of Experts) is proposed to achieve information fusion for modeling the importance of feature information in different domains.
[0135] Exemplarily, in order to implement step 401 to step 404, it is also necessary to train a professional network model, that is, to train M expert sub-models, a first gating sub-network and a deep neural sub-network.
[0136] In order to train and obtain M expert sub-models, M initial sub-models can be obtained first. The network structures of these initial sub-models are the same, and the network parameters (network weights) of these initial sub-models can be the same or different. Then, data sets from different sources can be used to train and obtain M expert sub-models. For example, the first initial sub-model is trained with data set 1 to obtain the first expert sub-model, and the second initial sub-model is trained with data set 2 to obtain the second expert sub-model. And so on, the Mth initial sub-model is trained with data set M to obtain the Mth expert sub-model. Regarding the training process of the expert sub-model, there is no limitation in this embodiment, and it is sufficient to be able to train and obtain M expert sub-models.
[0137] For each data set, the sample data of the data set may include text domain features (such as user text domain features and / or product text domain features) and non-text domain features (such as user non-text domain features and / or product non-text domain features), and the data set includes at least one type of non-text domain features, such as business domain features, neighbor domain features, statistical domain features, etc. For example, data set 1 includes text domain features and business domain features, data set 2 includes text domain features and neighbor domain features, data set 3 includes text domain features, business domain features, and statistical domain features, and so on. Obviously, different data sets may include different types of non-text domain features, so that different types of non-text domain features are used to train different expert sub-models.
[0138] When the first gating subnetwork is trained, the first gating subnetwork aims to fuse information from different modes or sources by learning a gating mechanism. The first gating subnetwork can be composed of inputs from multiple data domains, each of which focuses on a specific aspect or source of information. By controlling the weight of each data domain's information contribution to the final prediction or output, the first gating subnetwork is allowed to dynamically emphasize or weaken specific information sources, thereby achieving better representation learning and capturing complex dependencies between inputs.
[0139] The processing of the first gating subnetwork can be expressed by the following formula: , in the sample feature vector After inputting to the first gating sub-network, the calculation The value of W represents the weight parameter of the first gating sub-network, b Represents the bias parameter of the first gating subnetwork. represents the structure of the first gating subnetwork, such as It is a 2-layer DNN (Deep Neural Networks). It can also be designed into other structures without restriction. Taking a 2-layer DNN as an example, The value of performs 2 layers of DNN operations. Represents the Softmax activation function. After obtaining the processing result of the 2-layer DNN operation, the Softmax activation function is used to activate the processing result to obtain the first weight feature vector .
[0140] In order to train M expert sub-models, the first gating sub-network and the deep neural sub-network, an End-to-End approach is used to train the M expert sub-models, the first gating sub-network and the deep neural sub-network, that is, an End-to-End approach is used to train the professional network model, and there is no restriction on this training process.
[0141] In a possible implementation, for step 401, after the sample feature vector corresponding to the candidate product is input into the expert sub-model, a high-level representation feature vector can be obtained. Taking the processing process of an expert sub-model as an example, the expert sub-model may include a CrossNet sub-network, a BERT (Bidirectional Encoder Representations from Transformers) sub-network, a DSSM (Deep Structured Semantic Model) sub-network and a second gating sub-network. On this basis, see Figure 5The figure shows the processing flow diagram of the expert sub-model.
[0142] Step 501: Determine non-text domain features and text domain features based on sample feature vectors corresponding to candidate products. Non-text domain features include user non-text domain features (such as user business domain features, user neighbor domain features, and user statistical domain features) and product non-text domain features (such as product business domain features, product neighbor domain features, and product statistical domain features). Text domain features include user text domain features and product text domain features.
[0143] Step 502: Input the non-text domain features into the CrossNet sub-network to obtain non-text domain high-order features.
[0144] Exemplarily, in order to extract high-order features from information in different fields, the CrossNet sub-network uses the DCN network as a basic framework, and the input data of the CrossNet sub-network may be non-text domain features, which may include at least one of business domain features (such as user business domain features and product business domain features), neighbor domain features (such as user neighbor domain features and product neighbor domain features), and statistical domain features (such as user statistical domain features and product statistical domain features). After the non-text domain features are input to the CrossNet sub-network, the CrossNet sub-network may process the non-text domain features to obtain non-text domain high-order features.
[0145] For example, if the non-text domain features include business domain features, the business domain features are input into the CrossNet sub-network to obtain the business domain high-order features. The process is expressed by the following formula: , Can represent business domain characteristics, It can represent the high-order features of the business domain after being processed by the CrossNet sub-network.
[0146] For example, if the non-text domain features include neighborhood features, the neighborhood features are input into the CrossNet sub-network to obtain neighborhood high-order features. The process is expressed by the following formula: , It can represent the neighborhood features. It can represent the high-order features of the neighborhood after being processed by the CrossNet sub-network.
[0147] For example, if the non-text domain features include statistical domain features, the statistical domain features are input into the CrossNet sub-network to obtain statistical domain high-order features. The process is expressed by the following formula: , It can represent the statistical domain characteristics. It can represent the high-order features of the statistical domain after processing by the CrossNet sub-network.
[0148] In summary, the CrossNet sub-network outputs non-text domain high-order features, and the non-text domain high-order features may include at least one of business domain high-order features, neighbor domain high-order features, and statistical domain high-order features.
[0149] Step 503: Input the text domain features to the BERT sub-network to obtain bidirectional representation features, and input the bidirectional representation features to the DSSM sub-network to obtain text domain high-order features.
[0150] For example, text domain features (such as user text domain features and product text domain features) can be input into the BERT sub-network, and the BERT sub-network outputs bidirectional representation features. The process is expressed by the following formula: , Can represent text domain features, It can represent the bidirectional representation features after being processed by the BERT sub-network. In this embodiment, the processing process of this BERT sub-network is not limited.
[0151] After obtaining the bidirectional representation features, the bidirectional representation features can be input into the DSSM sub-network, and the DSSM sub-network outputs the high-order features of the text domain. The process is expressed by the following formula: , Can represent bidirectional features, It can represent the high-order features of the text domain after being processed by the DSSM sub-network. In this embodiment, the processing process of the DSSM sub-network is not limited. Among them, the bidirectional representation feature can be the sentence Embedding feature after encoding, and the high-order features of the text domain can be the text matching feature.
[0152] Step 504: Concatenate the text domain high-level features and the non-text domain high-level features into global domain high-level features.
[0153] For example, we can combine text domain high-order features and non-text domain high-order features (such as business domain high-order features, neighborhood domain high-order features, and statistical domain high-order features) to obtain global domain high-order features. The process is expressed by the following formula: , It can represent global high-order features.
[0154] Step 505: Input the global high-order features to the second gating sub-network to obtain a second weighted feature vector.
[0155] Exemplarily, after the global high-order feature is input to the second gating sub-network, the second gating sub-network processes the global high-order feature to obtain a second weighted feature vector, which is used to characterize the importance of the global high-order feature. For example, the processing process of the second gating sub-network can be expressed by the following formula: , represents the second weight eigenvector, Represents the second gating subnetwork, that is, the global high-order features Input to the second gating sub-network to obtain the second weight feature vector.
[0156] Considering that the amount of information contained in different fields is not exactly the same in importance to the target, a second gating sub-network can be designed to learn the complex dependencies. The processing process of the second gating sub-network is expressed by the following formula: , represents the second weight eigenvector, represents the global high-order features, W represents the weight parameter of the second gating sub-network, b represents the bias parameter of the second gating subnetwork, represents the structure of the second gating subnetwork, such as is a 2-layer DNN. Represents the Softmax activation function.
[0157] Step 506: Determine a high-level representation feature vector based on the global high-order features and the second weight feature vector.
[0158] Exemplarily, a dot multiplication operation may be performed on the global high-order feature and the second weight feature vector to obtain a high-level representation feature vector. For example, the dot multiplication operation process is represented by the following formula: . It can represent global high-order features. represents the second weight eigenvector, Represents the point multiplication operation according to the position, represents a high-level description feature vector, that is, the high-level description feature vector obtained in step 401.
[0159] At this point, step 212 is completed, and the first matching score value of the candidate product is obtained. Obviously, for each candidate product in the second set, the first matching score value of the candidate product can be obtained in the above manner. .
[0160] Step 213: sort all candidate products in the second set based on the first matching score value, select some candidate products based on the sorting result, and add the selected candidate products to the third set.
[0161] Exemplarily, there are a large number of candidate products in the second set. If the processing of the large language model is performed for all candidate products, the amount of calculation will be very large, and the product recommendation efficiency will be relatively low. Based on this, in this embodiment, some candidate products can be selected from all candidate products in the second set and added to the third set. Of course, if the computing resources are sufficient, all candidate products in the second set can also be added to the third set (that is, the third set is the same as the second set). In order to select some candidate products from the second set and add them to the third set, all candidate products in the second set are sorted based on the first matching score value; based on the sorting result, a second number of candidate products with large first matching score values are selected and added to the third set. In summary, the third set includes some or all candidate products in the second set.
[0162] Step 214: For each candidate product in the third set, a target prompt text is generated based on the prompt text of the target text order and the prompt text of the candidate product, and the target prompt text is input into the large language model to obtain a second matching score value of the candidate product; wherein, the larger the second matching score value, the better the matching degree between the candidate product and the target text order.
[0163] In order to obtain the second matching score value of the candidate product, the following steps may be used:
[0164] Step 2141: For each candidate product of the third set, construct a target prompt text for the candidate product. The target prompt text may include a prompt text for the target text matching order, a prompt text for the candidate product, and task instruction information. The prompt text for the candidate product may include the product core parameters of the candidate product and the core parameters of the major category to which the candidate product belongs. The task instruction information is used to indicate the input data of the large language model, the output data of the large language model, and the processing method of the large language model.
[0165] For example, the target prompt text of the candidate product can be expressed by the following expression:
[0166] ;
[0167] In the above expression, Indicates iThe target prompt text of each candidate product. Instruction indicates the task instruction information, which is used to indicate what the input data of the large language model is, what the output data of the large language model is (for example, if you are a professional product salesperson, you need to give the matching score between the two based on the user's needs and the product's specification description and other information), and what processing method the large language model should use (that is, how to process the input data to obtain the output data). The task instruction information can be understood as the prompt information of the large language model, which is used to prompt the large language model how to process. There is no restriction on the content of this task instruction information.
[0168] Context represents the prompt text of the candidate product. p 1 and p 2 composition, p 1 Indicates the core product parameters of the candidate product, p 2 The core parameters that indicate the category to which the candidate product belongs.
[0169] For example, for the core parameters of a candidate product, text description information of the candidate product can be obtained, and the text description information is used to describe the candidate product, such as focal length information, resolution information, price information, etc. of the candidate product, and there is no restriction on the text description information. On this basis, keywords in the text description information can be extracted and the extracted keywords are used as the core parameters of the candidate product.
[0170] For example, a configuration table can be pre-set for the core parameters of the category to which the candidate product belongs. The configuration table can include the core parameters of multiple categories (such as mobile phones, clothing, toys, etc.). There is no restriction on the content of the configuration table, and it can be set based on experience. On this basis, the category to which the candidate product belongs is first determined, and then the configuration table is queried to obtain the core parameters of the category to which the candidate product belongs.
[0171] Query represents the prompt text of the target text order. The target text order may include product name information and product demand information. On this basis, keywords in the target text order may be extracted and used as the prompt text of the target text order.
[0172] From the above, we can see that the target prompt text It can be composed of Instruction (task instruction information), core parameters of candidate products p 1 , the core parameters of the category to which the candidate product belongs p2 It is composed of the prompt text Query that matches the target text. It mainly describes the task background and goal, and is used to indicate the matching degree between the candidate product output by the large language model and the target text order. Since different candidate products may correspond to the same product category, but the core parameters of the candidate products themselves are different, the Context content includes the common content and characteristic content of the candidate products. For the convenience of description, the following symbols can also be defined to represent the core parameters of the product (i.e. p 1 ), core parameters of major product categories (i.e. p 2 ) and project core parameters:
[0173]
[0174] Step 2142: Input the target prompt text into the large language model to obtain the project core parameters.
[0175] Exemplarily, models can be divided into small models and large models. Small models and large models refer to two AI models with different parameter sizes. Large models refer to network models with parameters reaching hundreds of millions, while small models refer to network models with parameters less than 10 million. For example, the professional network model in the above embodiment is a small model, and the large language model is a large model. The large language model is used in Zero-Shot.
[0176] The input data of the large language model is the target prompt text, that is, the task instruction information, the core parameters of the candidate products, the core parameters of the category to which the candidate products belong, and the prompt text of the target text matching order. After the large language model processes the input data, the output data is the project core parameters, which represent the core parameters in the target text matching order, that is, the project core parameters are extracted from the target text matching order through the large language model. For example, the process can be expressed by the following formula: .
[0177] Step 2143: Determine a second matching score value of the candidate product based on the project core parameters, the product core parameters of the candidate product, and the core parameters of the category to which the candidate product belongs.
[0178] Exemplarily, the second matching score value of the candidate product can be determined by referring to the following formula. Of course, the following formula is only an example. As long as the second matching score value is related to the project core parameters, the product core parameters of the candidate product, and the core parameters of the category to which the candidate product belongs, there is no limitation on this.
[0179]
[0180] In the above formula, represents the second matching score value, Represents a set merge operation, represents the set intersection operation, Indicates the size of the set, that is, the number of core parameters.
[0181] At this point, step 214 is completed, and the second matching score value of each candidate product in the third set can be obtained.
[0182] Step 215: For each candidate product in the third set, determine a target score value for the candidate product based on the first matching score value and the second matching score value of the candidate product, select a target product from the third set based on the target score value of each candidate product, and recommend the target product for the target text order.
[0183] Exemplarily, the target score value may be determined based on the first matching score value, the weight coefficient of the first matching score value, the second matching score value, and the weight coefficient of the second matching score value. For example, the target score value may be determined using the following formula: . represents the first matching score value, represents the second matching score value, w 1 The weight coefficient representing the first matching score value, w 2 The weight coefficient representing the first matching score value, w 1 and w 2 It can be configured based on experience, such as w 1 and w 2 The sum of can be 1.
[0184] After obtaining the target score value of each candidate product in the third set, all candidate products in the third set can be sorted in order of the target score values from large to small (or small to large). Based on the sorting result, m (e.g., 5, 4, etc.) candidate products with a higher (or lower) ranking can be selected as target products, and these target products can be recommended for the target text matching order, that is, these target products can be recommended to the user.
[0185] To summarize, by determining the second matching score value of each candidate product in the third set, determining the target score value based on the second matching score value, and re-sorting based on the target score value, it is ultimately possible to use the powerful information extraction capability of the large model to rearrange and correct the results of the small model, which has good practicality.
[0186] It can be seen from the above technical solutions that in the embodiments of this application, the professional network model and the large language model can be combined to determine the target product and realize accurate product recommendation, that is, to realize accurate product recommendation according to user needs, without over-reliance on experience, and to improve the recommendation efficiency while reducing the time consumption. Considering the lack of accuracy of single modeling in data sparse scenarios, a fusion model is proposed. MoE The grouping algorithm system of the idea uses the clustering algorithm to adaptively group the text feature data of the target text matching order in the recall stage, and performs rough modeling to achieve preliminary intent screening, alleviating the problem of insufficient modeling accuracy of a single model.
[0187] For single-task modeling scenarios, a small model + large model collaboration method is used in the sorting stage to perform single-target recommendation tasks. The small model is based on DCN and dual-tower models to form an expert network to extract feature information from different domains, and the importance of features in different domains is modeled using a gating network to achieve the information fusion goal of modeling the importance of features in different fields. For product recommendations for the marketing department, in order to address the data sparsity problem, it is proposed to increase historical interaction data by rewriting project files based on LLM, and to achieve information fusion of modeling the importance of feature information in different domains based on a gating network, so as to achieve effective information fusion, and to use the powerful information extraction capabilities of the large model to further rearrange and correct the results of the small model, so as to complete the product recommendation task in data-sparse scenarios.
[0188] In the rough sorting stage, clustering technology is used to adaptively group the text feature vectors of the target text order, and the rough sorting models are trained separately to learn the matching relationship between demand and specification under the same cluster characteristics, thereby alleviating the problem of learning correction. In the fine sorting stage, facing different domain features, each expert network consists of a DCN and a dual-tower model. The former adaptively learns the interactive relationship between various statistical features, while the latter models the matching relationship of the text semantic space to achieve multi-domain information fusion. A collaborative recommendation scheme for large and small models is designed. In the sorting stage, small models are used to model the matching relationship between user needs and products for different product classification systems and feature systems. In the rearrangement stage, the small model matching score + the large model extraction core parameter matching score are integrated to rearrange the recommendation results and improve the sorting quality.
[0189] Based on the same application concept as the above method, a product recommendation device is proposed in the embodiment of the present application, see Figure 6 FIG. 1 is a schematic diagram of the structure of the product recommendation device, which may include:
[0190] An acquisition module 61 is used to acquire a target text order and a first set corresponding to the target text order, wherein the first set includes a plurality of candidate products; for each candidate product, a sample feature vector corresponding to the candidate product includes a user feature vector of the target text order and a product feature vector of the candidate product; acquire a second set, wherein the second set includes some or all of the candidate products of the first set; and acquire a third set, wherein the third set includes some or all of the candidate products of the second set;
[0191] Processing module 62, for inputting, for each candidate product in the second set, a sample feature vector corresponding to the candidate product into a professional network model to obtain a first matching score value; wherein the larger the first matching score value, the better the matching degree between the candidate product and the target text order;
[0192] The processing module 62 is used to generate a target prompt text for each candidate product in the third set based on the prompt text of the target text order and the prompt text of the candidate product, and input the target prompt text into the large language model to obtain a second matching score value; wherein the larger the second matching score value, the better the matching degree between the candidate product and the target text order;
[0193] A determination module 63, configured to determine, for each candidate product in the third set, a target score value of the candidate product based on the first matching score value and the second matching score value of the candidate product;
[0194] The recommendation module 64 is used to select a target product from the third set based on the target score value of each candidate product, and recommend the target product for the target text order.
[0195] Exemplarily, when the acquisition module 61 acquires the first set corresponding to the target text order, it is specifically used to: for each historical text order in multiple historical text orders, calculate the similarity between the user feature vector of the historical text order and the user feature vector of the target text order; if the similarity is greater than a threshold, determine the recommended product corresponding to the historical text order as the candidate product corresponding to the target text order, and add the candidate product to the first set.
[0196] Exemplarily, if the second set includes some candidate products of the first set, the acquisition module 61 is specifically used to acquire the second set: for each candidate product of the first set, determine the target coarse-sorting model corresponding to the candidate product, input the sample feature vector corresponding to the candidate product into the target coarse-sorting model to obtain a third matching score value, the larger the third matching score value, the better the matching degree between the candidate product and the target text order; sort all candidate products of the first set based on the third matching score value; based on the sorting result, select a first number of candidate products with large third matching score values and add them to the second set; wherein, when the acquisition module 61 determines the target coarse-sorting model corresponding to the candidate product, it is specifically used to: based on the user feature vectors corresponding to multiple text orders, cluster the multiple text orders using a clustering algorithm to obtain K cluster clusters, the K cluster clusters correspond one-to-one to the K trained coarse-sorting models, and K is a positive integer greater than 1; wherein, the multiple text orders include the target text order and the remaining text orders except the target text order; and the coarse-sorting model corresponding to the cluster cluster to which the target text order belongs is determined as the target coarse-sorting model.
[0197] Exemplarily, if the professional network model includes an expert sub-model, a first gating sub-network and a deep neural sub-network, the processing module 62 inputs the sample feature vector corresponding to the candidate product into the professional network model to obtain a first matching score value and is specifically used for: inputting the sample feature vector corresponding to the candidate product into the expert sub-model to obtain a high-level expression feature vector; inputting the sample feature vector corresponding to the candidate product into the first gating sub-network to obtain a first weight feature vector, the first weight feature vector representing the importance of the high-level expression feature vector; determining an intermediate feature vector based on the high-level expression feature vector and the first weight feature vector; and inputting the intermediate feature vector into the deep neural sub-network to obtain the first matching score value.
[0198] Exemplarily, if the expert sub-model includes a CrossNet sub-network, a BERT sub-network, a DSSM sub-network, and a second gating sub-network, the processing module 62 inputs the sample feature vector corresponding to the candidate product into the expert sub-model to obtain a high-level expression feature vector and is specifically used to: determine the non-text domain features and the text domain features based on the sample feature vector corresponding to the candidate product; wherein the user feature vector of the target text order includes user non-text domain features and user text domain features, the product feature vector of the candidate product includes product non-text domain features and product text domain features, and the non-text domain features include the user non-text domain features and the product non-text domain features. Features, the text domain features include the user text domain features and the product text domain features; the non-text domain features are input into the CrossNet sub-network to obtain non-text domain high-order features; the text domain features are input into the BERT sub-network to obtain bidirectional representation features, and the bidirectional representation features are input into the DSSM sub-network to obtain text domain high-order features; the text domain high-order features and the non-text domain high-order features are spliced into global high-order features; the global high-order features are input into the second gating sub-network to obtain a second weight feature vector, and the high-level representation feature vector is determined based on the global high-order features and the second weight feature vector.
[0199] Exemplarily, if the professional network model includes M expert sub-models, after the sample feature vector corresponding to the candidate product is input into the M expert sub-models, the M expert sub-models output M high-level expression feature vectors; the first weight feature vector includes M weight values, and the M weight values represent the importance of the M high-level expression feature vectors; when the processing module 62 determines the intermediate feature vector based on the high-level expression feature vector and the first weight feature vector, it is specifically used to: perform feature fusion on the M high-level expression feature vectors output by the M expert sub-models to obtain a fused high-level expression feature vector, and perform a dot product operation on the fused high-level expression feature vector and the first weight feature vector to obtain the intermediate feature vector.
[0200] Exemplarily, if the third set includes some candidate products of the second set, when the acquisition module 61 acquires the third set, it is specifically used to: sort all candidate products of the second set based on the first matching score value; based on the sorting result, select a second number of candidate products with large first matching score values and add them to the third set; when the processing module 62 inputs the target prompt text to the large language model to obtain the second matching score value, it is specifically used to: input the target prompt text to the large language model to obtain the project core parameters, the target prompt text includes the prompt text of the target text matching order, the prompt text of the candidate product and the task instruction information, and the candidate product The prompt text for selecting a product includes the product core parameters of the candidate product and the core parameters of the major category to which the candidate product belongs, and the task instruction information is used to indicate the input data, output data and processing method of the large language model; based on the project core parameters, the product core parameters of the candidate product and the core parameters of the major category to which the candidate product belongs, determine the second matching score value; when the determination module 63 determines the target score value of the candidate product based on the first matching score value and the second matching score value of the candidate product, it is specifically used to: determine the target score value based on the first matching score value, the weight coefficient of the first matching score value, the second matching score value and the weight coefficient of the second matching score value.
[0201] Based on the same application concept as the above method, an electronic device is proposed in the embodiment of the present application, see Figure 7 As shown, the electronic device includes: a processor 71 and a machine-readable storage medium 72, wherein the machine-readable storage medium 72 stores machine-executable instructions that can be executed by the processor 71; the processor 71 is used to execute the machine-executable instructions to implement the product recommendation method disclosed in the above example of this application.
[0202] Based on the same application concept as the above method, an embodiment of the present application also provides a machine-readable storage medium, on which a number of computer instructions are stored. When the computer instructions are executed by a processor, the product recommendation method disclosed in the above example of the present application can be implemented.
[0203] The above-mentioned machine-readable storage medium may be any electronic, magnetic, optical or other physical storage device, which may contain or store information, such as executable instructions, data, etc. For example, the machine-readable storage medium may be: RAM (Radom Access Memory), volatile memory, non-volatile memory, flash memory, storage drive (such as hard disk drive), solid state drive, any type of storage disk (such as optical disk, DVD, etc.), or similar storage medium, or a combination thereof.
[0204] Based on the same application concept as the above method, the embodiment of the present application further provides a computer program product, wherein the computer program product includes a computer program. When the computer program is executed by a processor, the product recommendation method disclosed in the above example of the present application can be implemented.
[0205] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the embodiments of the present application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
[0206] The above is only an embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.
Claims
1. A product recommendation method, characterized in that: The method comprises: Obtain a target text order and a first set corresponding to the target text order, wherein the first set includes a plurality of candidate products; for each candidate product, a sample feature vector corresponding to the candidate product includes a user feature vector of the target text order and a product feature vector of the candidate product; Obtain a second set, the second set including some or all of the candidate products in the first set; for each candidate product in the second set, input a sample feature vector corresponding to the candidate product into a professional network model to obtain a first matching score value; wherein a larger first matching score value indicates a better matching degree between the candidate product and the target text order; A third set is obtained, wherein the third set includes some or all candidate products of the second set; for each candidate product of the third set, a target prompt text is generated based on the prompt text of the target text matching order and the prompt text of the candidate product, and the target prompt text is input into the large language model to obtain the project core parameter, wherein the target prompt text includes the prompt text of the target text matching order, the prompt text of the candidate product and the task instruction information, wherein the prompt text of the candidate product includes the product core parameters of the candidate product and the core parameters of the major category to which the candidate product belongs, and the task instruction information is used to indicate the input data, output data and processing method of the large language model; based on the project core parameters, the product core parameters of the candidate product and the core parameters of the major category to which the candidate product belongs, a second matching score value is determined; wherein the larger the second matching score value is, the better the matching degree between the candidate product and the target text matching order is; wherein the product core parameters include the keywords in the text description information of the candidate product, the core parameters of the major category to which the candidate product belongs include the core parameters corresponding to the major category to which the candidate product belongs in a preset configuration table, and the prompt text of the target text matching order includes the keywords in the target text matching order; For each candidate product in the third set, a target score value of the candidate product is determined based on the first matching score value and the second matching score value of the candidate product, a target product is selected from the third set based on the target score value of each candidate product, and the target product is recommended for the target text order.
2. The method according to claim 1, characterized in that Obtaining a first set corresponding to the target text matching order includes: For each historical text pair of the plurality of historical text pairs, calculating the similarity between the user feature vector of the historical text pair and the user feature vector of the target text pair; If the similarity is greater than a threshold, the recommended product corresponding to the historical text order is determined as a candidate product corresponding to the target text order, and the candidate product is added to the first set.
3. The method according to claim 1, characterized in that If the second set includes some of the candidate products in the first set, obtaining the second set includes: For each candidate product in the first set, determine a target rough ranking model corresponding to the candidate product, input a sample feature vector corresponding to the candidate product into the target rough ranking model to obtain a third matching score value, wherein a larger third matching score value indicates a better matching degree between the candidate product and the target text order; sorting all candidate products of the first set based on the third matching score value; and selecting a first number of candidate products with large third matching score values and adding them to the second set based on the sorting result; Wherein, determining the target rough ranking model corresponding to the candidate product includes: Based on user feature vectors corresponding to a plurality of text orders, a clustering algorithm is used to cluster the plurality of text orders to obtain K cluster clusters, wherein the K cluster clusters correspond one-to-one to the K trained rough sorting models, and K is a positive integer greater than 1; wherein the plurality of text orders include the target text order and the remaining text orders except the target text order; The rough sorting model corresponding to the cluster to which the target text matching order belongs is determined as the target rough sorting model.
4. The method according to claim 1, characterized in that: If the professional network model includes an expert sub-model, a first gating sub-network and a deep neural sub-network, the step of inputting the sample feature vector corresponding to the candidate product into the professional network model to obtain a first matching score value includes: The sample feature vector corresponding to the candidate product is input into the expert sub-model to obtain a high-level representation feature vector; Inputting the sample feature vector corresponding to the candidate product into the first gating sub-network to obtain a first weight feature vector, wherein the first weight feature vector represents the importance of the high-level representation feature vector; Determining an intermediate feature vector based on the high-level representation feature vector and the first weight feature vector; The intermediate feature vector is input into the deep neural sub-network to obtain the first matching score value.
5. The method according to claim 4, characterized in that If the expert sub-model includes a CrossNet sub-network, a BERT sub-network, a DSSM sub-network, and a second gating sub-network, the step of inputting the sample feature vector corresponding to the candidate product into the expert sub-model to obtain a high-level representation feature vector includes: Determine non-text domain features and text domain features based on the sample feature vector corresponding to the candidate product; wherein the user feature vector of the target text order includes user non-text domain features and user text domain features, the product feature vector of the candidate product includes product non-text domain features and product text domain features, the non-text domain features include the user non-text domain features and the product non-text domain features, and the text domain features include the user text domain features and the product text domain features; Inputting the non-text domain features into the CrossNet sub-network to obtain non-text domain high-order features; Input the text domain features to the BERT sub-network to obtain bidirectional representation features, and input the bidirectional representation features to the DSSM sub-network to obtain text domain high-order features; splicing the text domain high-level features and the non-text domain high-level features into global domain high-level features; The global high-order features are input into the second gating sub-network to obtain a second weighted feature vector, and the high-level representation feature vector is determined based on the global high-order features and the second weighted feature vector.
6. The method according to claim 4, characterized in that If the professional network model includes M expert sub-models, after the sample feature vector corresponding to the candidate product is input into the M expert sub-models, the M expert sub-models output M high-level expression feature vectors; the first weight feature vector includes M weight values, and the M weight values indicate the importance of the M high-level expression feature vectors; the determining of the intermediate feature vector based on the high-level expression feature vector and the first weight feature vector includes: The M high-level description feature vectors output by the M expert sub-models are subjected to feature fusion to obtain a fused high-level description feature vector, and a dot product operation is performed on the fused high-level description feature vector and the first weight feature vector to obtain the intermediate feature vector.
7. The method according to claim 1, characterized in that If the third set includes some of the candidate products of the second set, obtaining the third set includes: sorting all the candidate products of the second set based on the first matching score value; based on the sorting result, selecting a second number of candidate products with large first matching score values and adding them to the third set; Determining the target score value of the candidate product based on the first match score value and the second match score value of the candidate product includes: determining the target score value based on the first match score value, a weight coefficient of the first match score value, the second match score value, and the weight coefficient of the second match score value.
8. A product recommendation device, characterized in that: The device comprises: An acquisition module is used to acquire a target text order and a first set corresponding to the target text order, wherein the first set includes a plurality of candidate products; for each candidate product, a sample feature vector corresponding to the candidate product includes a user feature vector of the target text order and a product feature vector of the candidate product; acquire a second set, wherein the second set includes some or all of the candidate products of the first set; and acquire a third set, wherein the third set includes some or all of the candidate products of the second set; A processing module, for inputting, for each candidate product in the second set, a sample feature vector corresponding to the candidate product into a professional network model to obtain a first matching score value; wherein a larger first matching score value indicates a better matching degree between the candidate product and the target text order; A processing module, for generating a target prompt text based on the prompt text of the target text matching order and the prompt text of the candidate product for each candidate product of the third set, inputting the target prompt text into the large language model to obtain the project core parameters, wherein the target prompt text includes the prompt text of the target text matching order, the prompt text of the candidate product and the task instruction information, the prompt text of the candidate product includes the product core parameters of the candidate product and the core parameters of the major category to which the candidate product belongs, and the task instruction information is used to indicate the input data, output data and processing method of the large language model; determining a second matching score value based on the project core parameters, the product core parameters of the candidate product and the core parameters of the major category to which the candidate product belongs; wherein the larger the second matching score value, the better the matching degree between the candidate product and the target text matching order; wherein the product core parameters include the keywords in the text description information of the candidate product, the core parameters of the major category to which the candidate product belongs include the core parameters corresponding to the major category to which the candidate product belongs in a pre-set configuration table, and the prompt text of the target text matching order includes the keywords in the target text matching order; a determination module, configured to determine, for each candidate product in the third set, a target score value of the candidate product based on the first matching score value and the second matching score value of the candidate product; A recommendation module is used to select a target product from the third set based on the target score value of each candidate product, and recommend the target product for the target text order.
9. An electronic device, characterized in that: include: a processor and a machine-readable storage medium storing machine-executable instructions executable by the processor; The processor is used to execute machine executable instructions to implement the method described in any one of claims 1-7.
10. A machine-readable storage medium, characterized in that: The machine-readable storage medium stores machine-executable instructions that can be executed by a processor; wherein the processor is configured to execute the machine-executable instructions to implement the method described in any one of claims 1-7.
Citation Information
Patent Citations
Product pushing method and device, electronic equipment and readable storage medium
CN114387061A
Training method of multi-task prediction model, and multi-task prediction method and device
CN115423016A
Commodity shopping guide method and device, equipment and medium
CN116976920A
Test case generation method and device, electronic equipment and storage medium
CN117370190A
Self-adaptive double-tower multi-mode recommendation method based on knowledge distillation
CN118714193A