WO2023011382A1 - 推荐方法、推荐模型训练方法及相关产品 - Google Patents

推荐方法、推荐模型训练方法及相关产品 Download PDF

Info

Publication number
WO2023011382A1
WO2023011382A1 PCT/CN2022/109297 CN2022109297W WO2023011382A1 WO 2023011382 A1 WO2023011382 A1 WO 2023011382A1 CN 2022109297 W CN2022109297 W CN 2022109297W WO 2023011382 A1 WO2023011382 A1 WO 2023011382A1
Authority
WO
WIPO (PCT)
Prior art keywords
target
feature
data
samples
training
Prior art date
Application number
PCT/CN2022/109297
Other languages
English (en)
French (fr)
Inventor
郭威
秦佳锐
唐睿明
刘志容
何秀强
张伟楠
俞勇
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to EP22852095.3A priority Critical patent/EP4322031A1/en
Publication of WO2023011382A1 publication Critical patent/WO2023011382A1/zh
Priority to US18/416,924 priority patent/US20240202491A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0202Market predictions or forecasting for commercial activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0255Targeted advertisements based on user history
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations

Definitions

  • the invention relates to the technical field of artificial intelligence, in particular to a recommendation method, a recommendation model training method and related products.
  • CTR Click-Through-Rate
  • Extracting valuable relationships or patterns from tabular data is critical for machine learning systems to learn accurately.
  • how to fully mine the rich information contained between rows and columns of tabular data becomes crucial.
  • Early models such as logistic regression, support vector machines, and tree models took row samples as input to make predictions.
  • the deep model maps the category features of row samples into embedding vectors, and then uses the feature vector of a single row sample for user behavior prediction.
  • feature-interaction-based models and user-sequence-based models have become the mainstream of tabular data modeling.
  • the feature interaction-based model is dedicated to interacting the features between the columns of each row sample in the tabular data, so as to fully mine the user sequence features to predict user behavior, and make recommendations based on the predicted user behavior.
  • This application provides a recommendation method, a recommendation model training method, and related products. Recommendations are made by fusing feature information of target reference samples to improve recommendation accuracy.
  • the embodiment of the present application provides a recommendation method, including: obtaining the data to be predicted; obtaining multiple target reference samples from multiple reference samples according to the similarity between the data to be predicted and multiple reference samples; each reference sample Both the data to be predicted and the data to be predicted include user feature field data and item feature field data.
  • the user feature field data of the data to be predicted is used to indicate the target user features
  • the item feature field data of the data to be predicted is used to indicate the target item features.
  • Each target reference The sample and the data to be predicted have part of the same user feature field data and/or item feature field data; the target feature information of the data to be predicted is obtained according to multiple target reference samples and the data to be predicted; the target feature information includes the first target feature vector group and the second target feature vector group, the first target feature vector group is the data to be predicted after vectorization, and the second target feature vector group is obtained by vectorizing multiple target reference samples; the target feature information is input by The deep neural network DNN obtains the output value; according to the output value, it is determined whether to recommend the target item to the target user.
  • the output value may be a probability value, which reflects the probability that the target user operates on the target item.
  • target users have different understandings of the probability of operating on the target item.
  • the probability that the target user operates on the target item can be understood as the probability that the target user clicks on the application;
  • the target item is a song
  • the probability that the target user operates on the target item can be It is understood as the probability that the target user likes the song;
  • the target item is a commodity
  • the probability that the target user operates on the target item can be understood as the probability that the target user purchases the commodity.
  • the probability value can be post-processed to obtain an output value. For example, when the probability value is greater than the probability threshold, 1 is used as the output value; when the probability value is less than or equal to the threshold, 0 is used as the output value, where 0 means that the target user will not operate the target item, and 1 means that the target user will operate target item.
  • the output value is greater than the threshold, it is determined to recommend the target item to the target user, otherwise it is determined not to recommend the target item to the target user.
  • the solution of the present application is applied to a scenario where an item is selected from multiple candidate items for recommendation, the output value corresponding to each candidate item can be obtained; then, the candidate item with the highest output value is recommended to the target user, or, The output values of multiple candidate items are sorted, and the top-ranked (for example, the top ten candidate items) candidate items are recommended to the target user. For example, when recommending songs, the output value of each candidate song in the song library can be obtained, and then the top ten songs with output values are recommended to target users.
  • the target feature information obtained in this application also includes the feature information of multiple target reference samples vectorized and fused. Since the target reference sample is selected from multiple reference samples through the similarity between the data to be predicted and multiple reference samples, and has part of the same user feature domain data and/or item feature domain data as the data to be predicted, therefore
  • the target reference sample is a reference sample that is similar to the data to be predicted among multiple reference samples, so the user behavior in the target reference sample can provide reference and experience for the prediction of the target user's behavior, so that when using the characteristics of the fusion target reference sample
  • the target feature information is used to predict the output value, the predicted output value can be more accurate, and the item recommendation based on this output value improves the accuracy of the recommendation.
  • the multiple target reference samples also include label data;
  • the second target feature vector group is obtained by vectorizing and merging multiple target reference samples, specifically: the second target feature vector group is a pair-to-many
  • the user feature domain data, item feature domain data and label data of a target reference sample are vectorized and fused.
  • the user feature data of the target reference sample is used to represent the reference user feature
  • the item feature data of the target reference sample is used to represent the reference item feature. Since the target reference sample also carries label data, it refers to the real operation behavior of the reference user on the reference item. Therefore, the second feature vector group contains the real operation behavior of the reference user on the reference item, then when using the target feature information to predict the behavior of the target user, it can be combined with the real operation behavior of the reference user on the reference item to predict the target user’s behavior on the target The operation behavior of the item is used to obtain the output value, so that the accuracy of the predicted output value is higher, thereby improving the accuracy of item recommendation.
  • the target feature information also includes a third target feature vector group, the third target feature vector group is obtained by pairwise interaction of the target feature vectors in the first vector group, and the first vector group includes the first A set of target feature vectors and a second set of target feature vectors.
  • pairwise interaction is the pairwise interaction of the target feature vectors in the first vector group, but pairwise interaction can be freely performed in practical applications.
  • pairwise interactions may be performed on multiple first target feature vectors in the first target feature vector group to obtain multiple third target feature vectors; or, multiple second target feature vectors in the second target feature vector group The target feature vectors are pairwise interacted to obtain multiple third target feature vectors, and so on.
  • pairwise interactions are performed on the target feature vectors in the first vector group to obtain a plurality of third target feature vectors, so that the target feature information also includes high-order feature information, that is, the first
  • the three-target feature vector can represent the connection between various user behaviors, so using higher-order feature information for behavior prediction can further improve the accuracy of the output value. For example, if a first target feature vector indicates that the user is 28 years old, and another first target feature vector indicates that the user is male, then the third target feature obtained by interacting these two target feature vectors The vector indicates that the user is a 28-year-old male.
  • each target feature vector When each target feature vector is used alone for prediction, if the target item meets the needs of 28-year-olds or meets the needs of men, it is considered that the target user has a certain probability to operate the target item, and the output value obtained is generally greater than the probability threshold , and after interacting the target feature vector, only when the target item meets the needs of a 28-year-old male, the target user has a certain probability to operate the target item, and the obtained output value will be greater than the probability threshold. Therefore, the obtained The accuracy of the output value is relatively high, further improving the recommendation accuracy.
  • the multiple first target feature vectors in the first target feature vector group are concatenated to obtain the second feature vector of the data to be predicted; the multiple first feature vectors of each target reference sample Splicing is performed to obtain the second eigenvector of each target reference sample, and multiple first eigenvectors of each target reference sample are obtained by vectorizing the target reference sample; obtaining the second eigenvector of each target reference sample and the The similarity between the second eigenvectors of the prediction data; according to the similarity between the second eigenvectors of each target reference sample and the second eigenvectors of the data to be predicted, determine the weight of each target reference sample; according to each The weight of each target reference sample is used to fuse the first feature vectors of multiple target reference samples in the same feature domain to obtain the second target feature vector group.
  • the weight of the target reference sample with the highest correlation with the data to be predicted among the multiple target reference samples is maximized, and the second target feature vector obtained through fusion mainly indicates
  • the characteristic information is the characteristic information of the target reference sample with the highest degree of correlation.
  • the method before obtaining a plurality of target reference samples from the plurality of reference samples according to the similarity between the data to be predicted and the plurality of reference samples, the method further includes: obtaining a plurality of original samples, wherein, Each of the original samples includes user feature domain data and item feature domain data; using multiple user feature domain data and multiple item feature domain data of the data to be predicted as elements, the multiple original The samples are inverted indexed to obtain the multiple reference samples.
  • An inverted list for example, the first column in each row in the inverted list is an element, that is, a domain data (user characteristic domain data or item characteristic domain data) under the multiple reference samples, and the second column is a plurality of The reference samples contain the reference samples of the domain data.
  • each user feature field data and each item feature field data of the data to be predicted are used as elements, and multiple original samples are indexed to obtain multiple reference samples.
  • the reference samples corresponding to each user feature field data and the reference samples corresponding to each item feature field can be indexed; then, the reference samples corresponding to each user feature field data , and the reference samples corresponding to each item feature field are merged and deduplicated to obtain the multiple reference samples.
  • the data to be predicted is [U4, LA, Student, L2, cell phone, B3], U4, LA, Student, L2, cell phone, and B3 are all used as query words and obtained from the inverted list shown in Table 2
  • the reference sample corresponding to LA is [sample 1, sample 3]
  • the reference sample corresponding to Student is [sample 1, sample 2, sample 3]
  • the reference sample corresponding to L2 is [sample 3]
  • the reference samples are [sample 3, sample 4]
  • the reference sample corresponding to B3 is [sample 4].
  • merge and deduplicate all reference samples obtained from the inverted list to obtain multiple reference samples, namely [sample 1, sample 2, sample 3, sample 4].
  • multiple original samples are sorted by inversion to obtain an inversion list. Due to the use of the inverted list, multiple reference samples can be quickly indexed from multiple original samples by using the inverted list, and some irrelevant original samples can be excluded, so that it is not necessary to calculate the similarity with each original sample , to reduce the computational pressure, quickly screen out the target reference samples, and improve the efficiency of item recommendation.
  • an embodiment of the present application provides a method for training a recommendation model.
  • the recommendation model includes a feature information extraction network and a deep neural network DNN.
  • the method includes: obtaining a plurality of training samples, wherein each training sample includes user feature domain data and Item feature domain data; according to the similarity between the first training sample and a plurality of second training samples, a plurality of target training samples are obtained from a plurality of second training samples, wherein the first training sample is one of the plurality of training samples, A plurality of second training samples are part or all of the plurality of training samples except the first training sample, the user feature domain data of the first training sample is used to indicate the first reference user feature, and the item feature domain data of the first training sample Used to indicate the first reference item feature, the first training sample and each target training sample have part of the same user feature domain data and/or item feature domain data; input the first training sample and multiple target training samples into the feature information Extract the network to obtain the target feature information of the first training sample, wherein the target feature information includes
  • the first training sample and multiple target training samples are input into the feature information extraction network of the recommendation model to construct target feature information with richer information, so that the target feature information contains both the feature information of the first training sample, that is, A plurality of fourth target feature vectors also includes feature information fused after vectorization of multiple target training samples, that is, a plurality of fifth target feature vectors, and the target training samples are obtained through the first training sample and the multiple second training samples
  • the similarity between is selected from multiple second training samples, so the target training sample is a training sample that is relatively similar to the first training sample, so that when using the target feature information of the first training sample for model training, you can refer to
  • the feature information (that is, prior knowledge) fused after vectorization of multiple target training samples is used to predict user behavior and obtain the output value, making the predicted output value more accurate, so that the loss obtained during the training process is relatively small, and the model is easier Convergence; in addition, due to the reference of user characteristic information of multiple target training samples, the model can remember more abundant user characteristic information,
  • the fifth target feature vector group is obtained by vectorizing multiple target training samples, specifically: the fifth target feature vector group is obtained from multiple target training samples through a feature information extraction network
  • the user feature domain data, item feature domain data and label data are vectorized and fused.
  • the target training samples carry label data, because the label data of each target training sample reflects the real operation behavior of the user on the item in each target training sample. Therefore, when using the target feature information to predict the behavior of the target user, it can be combined with the real operation behavior of the user on the item in the target training sample to predict the operation of the first reference user in the first training sample on the first reference item. Probability, so that the accuracy of the predicted output value is higher. Due to the higher accuracy of the predicted output value, the loss obtained during the training process is relatively small, the model training cycle is shortened, and the model convergence speed is improved.
  • the target feature information further includes a sixth target feature vector group, and the sixth target feature vector group is obtained by pairwise interaction of the target feature vectors in the second vector group through a feature information extraction network, and the second The set of vectors includes a fourth set of target feature vectors and a fifth set of target feature vectors.
  • pairwise interactions are performed on the target feature vectors in the second vector group to obtain a plurality of sixth target feature vectors, so that the target feature information also includes high-order feature information, that is, the first
  • the six-target feature vector can represent the high-order features of the first reference user. Therefore, using high-order features for behavior prediction can further improve the prediction accuracy of user behavior and further improve the model convergence speed. For example, when a fourth target feature vector indicates that the user is 28 years old, and another fourth target feature vector indicates that the user is male, then the sixth target feature vector obtained by interacting with these two fourth target feature vectors The target feature vector indicates that the user is a 28-year-old male.
  • each fourth target eigenvector When each fourth target eigenvector is used alone for prediction, the item meets the needs of 28-year-olds or meets the needs of men, and the user is considered to have a certain probability to operate the item, and after interacting with the target eigenvectors, only When the item meets the needs of the 28-year-old male, the user has a certain probability to operate the item, thereby improving the prediction accuracy of the user's behavior.
  • the fusion includes: splicing multiple fourth target feature vectors in the fourth target feature vector group to obtain the second feature vector of the first training sample;
  • the first eigenvectors are spliced to obtain the second eigenvectors of each target training sample, and the multiple first eigenvectors of each target training sample are obtained by vectorizing the target training samples; obtaining the second eigenvectors of each target training sample
  • the similarity between the feature vector and the second feature vector of the first training sample according to the similarity between the second feature vector of each target training sample and the second feature vector of the first training sample, determine each target training
  • the weight of the sample according to the weight of each target training sample, the first feature vectors of multiple target training samples in the same feature domain are fused to obtain the fifth target feature vector group.
  • the weight of the target training sample with the highest degree of correlation with the first training sample among the multiple target training samples is the largest, and the characteristic information mainly indicated by the fifth target feature vector obtained through fusion is the target
  • the characteristic information of the training samples so as to use the most relevant target training samples as much as possible to guide the prediction of the behavior of the first reference user, so that the probability accuracy of the predicted first reference user operating on the first reference item is higher , which improves the model convergence speed.
  • the method before obtaining a plurality of target training samples from the plurality of second training samples according to the similarity between the first training sample and the plurality of second training samples, the method further includes: The multiple user feature domain data and the multiple item feature domain data of the training samples are used as elements, and the multiple training samples are inverted indexed to obtain the multiple second training samples.
  • an inverted list of multiple training samples based on the user feature domain data and item feature domain data of each training sample, where the inverted list contains the correspondence between elements and samples, as shown in Table 2 , the first column in each row in the inverted list is an element, that is, a field data (user feature field data or item feature field data) under the sample, and the second column is the field data contained in multiple reference samples Reference samples.
  • each user feature domain data and each item feature domain data in the first training sample as elements to index multiple second training samples from multiple training samples, that is, according to the inverted list Corresponding relationship, the training samples corresponding to each user feature field data and the training samples corresponding to each item feature field can be obtained; then, the training samples corresponding to each user feature field data, and the training samples corresponding to each item feature field The training samples corresponding to domains are combined and deduplicated to obtain the plurality of second training samples.
  • multiple training samples are sorted by using the inverted index to obtain an inverted list. Due to the use of the inverted list, multiple second training samples can be quickly found by using the inverted list, without calculating the similarity with each training sample, reducing the computational pressure, and quickly obtaining from multiple second training samples Multiple target training samples to improve model training speed.
  • the embodiment of the present application provides a recommendation device, including: an acquisition unit and a processing unit; the acquisition unit is used to acquire the data to be predicted; Obtain multiple target reference samples from multiple reference samples; each reference sample and the data to be predicted include user feature domain data and item feature domain data, and the user feature domain data of the data to be predicted is used to indicate the target user features, and the data to be predicted
  • the item feature field data of the data is used to indicate the target item feature, and each target reference sample and the data to be predicted have part of the same user feature field data and/or item feature field data; according to multiple target reference samples and the data to be predicted, the target
  • the target feature information of the prediction data includes the first target feature vector group and the second target feature vector group, the first target feature vector group is the data to be predicted after vectorization, and the second target feature vector group is the pair of multiple
  • the target reference samples are vectorized and then fused; the target feature information is used as input to obtain the output value through the deep neural network DNN; according to the output value, it
  • the multiple target reference samples also include label data;
  • the second target feature vector group is obtained by vectorizing and merging multiple target reference samples, specifically: the second target feature vector group is a pair-to-many
  • the user feature domain data, item feature domain data and label data of a target reference sample are vectorized and fused.
  • the target feature information also includes a third target feature vector group, the third target feature vector group is obtained by pairwise interaction of the target feature vectors in the first vector group, and the first vector group includes the first A set of target feature vectors and a second set of target feature vectors.
  • the processing unit is specifically configured to: concatenate a plurality of first target feature vectors in the first target feature vector group to obtain a second feature vector of the data to be predicted ; Concatenate multiple first eigenvectors of each target reference sample to obtain a second eigenvector of each target reference sample, and multiple first eigenvectors of each target reference sample are obtained by vectorizing the target reference sample ; Obtain the similarity between the second eigenvector of each target reference sample and the second eigenvector of the data to be predicted; according to the second eigenvector of each target reference sample and the second eigenvector of the data to be predicted The similarity is to determine the weight of each target reference sample; according to the weight of each target reference sample, the first feature vectors of multiple target reference samples in the same feature domain are fused to obtain the second target feature vector group.
  • the processing unit Before the processing unit acquires a plurality of target reference samples from the plurality of reference samples according to the similarity between the data to be predicted and the plurality of reference samples, the processing unit is further configured to: acquire a plurality of original samples, Wherein, each of the original samples includes user feature field data and item feature field data;
  • the embodiment of the present application provides a recommendation model training device, the recommendation model includes a feature information extraction network and a deep neural network DNN, the device includes: an acquisition unit and a processing unit; the acquisition unit is used to acquire multiple training samples, Wherein, each training sample includes user feature domain data and item feature domain data; the processing unit is used to obtain multiple target training samples from multiple second training samples according to the similarity between the first training sample and multiple second training samples.
  • the first training sample is one of the multiple training samples
  • the multiple second training samples are part or all of the multiple training samples except the first training sample
  • the user feature domain data of the first training sample is used
  • the item feature domain data of the first training sample is used to indicate the first reference item feature
  • the first training sample and each target training sample have part of the same user feature domain data and/or item feature domain Data
  • the first training sample and a plurality of target training samples are input to the feature information extraction network to obtain the target feature information of the first training sample, wherein the target feature information includes the fourth target feature vector group and the fifth target feature vector group,
  • the fourth target feature vector group is obtained by vectorizing the first training sample through the feature information extraction network
  • the fifth target feature vector group is obtained by vectorizing multiple target training samples through the feature information extraction network
  • the target feature The information is input into the deep neural network DNN to obtain an output value, which is used to represent the probability that the first reference user operates on the first reference item
  • the recommendation model is trained according to the output value and the label data
  • the fifth target feature vector group is obtained by vectorizing multiple target training samples, specifically: the fifth target feature vector group is obtained from multiple target training samples through a feature information extraction network
  • the user feature domain data, item feature domain data and label data are vectorized and fused.
  • the target feature information further includes a sixth target feature vector group, and the sixth target feature vector group is obtained by pairwise interaction of the target feature vectors in the second vector group through a feature information extraction network, and the second The set of vectors includes a fourth set of target feature vectors and a fifth set of target feature vectors.
  • the processing unit is specifically configured to: concatenate multiple fourth target feature vectors in the fourth target feature vector group to obtain the second feature of the first training sample vector; multiple first feature vectors of each target training sample are spliced to obtain a second feature vector of each target training sample, and multiple first feature vectors of each target training sample are vectorized for the target training sample obtain; obtain the similarity between the second eigenvector of each target training sample and the second eigenvector of the first training sample; according to the second eigenvector of each target training sample and the second eigenvector of the first training sample The similarity between them determines the weight of each target training sample; according to the weight of each target training sample, the first feature vectors of multiple target training samples in the same feature domain are fused to obtain the fifth target feature vector Group.
  • the processing unit before the processing unit obtains a plurality of target reference samples from the plurality of reference samples according to the similarity between the data to be predicted and the plurality of reference samples, the processing unit further uses At:
  • each user feature domain data and each item feature domain data of each training sample as elements, multiple training samples are inverted indexed to obtain an inverted list; each user feature domain data of the first training sample and The feature field data of each item is used as a query word, and a plurality of second training samples are obtained from the inverted list.
  • the processing unit before the processing unit obtains a plurality of target training samples from the plurality of second training samples according to the similarity between the first training sample and the plurality of second training samples, the processing unit , also used in:
  • the embodiment of the present application provides an electronic device, including: a memory for storing programs; a processor for executing the programs stored in the memory; when the programs stored in the memory are executed, the processor is used to implement the above-mentioned first The method of the first aspect or the second aspect.
  • the embodiment of the present application provides a computer-readable medium, the computer-readable medium stores program code for device execution, and the program code includes the method for realizing the above-mentioned first aspect or the second aspect .
  • the embodiment of the present application provides a computer program product containing instructions, and when the computer program product is run on a computer, it enables the computer to implement the method in the first aspect or the second aspect above.
  • the embodiment of the present application provides a chip, the chip includes a processor and a data interface, and the processor reads instructions stored in the memory through the data interface to implement the method in the first aspect or the second aspect above.
  • the chip may further include a memory, in which instructions are stored, and the processor is used to execute the instructions stored in the memory, and when the instructions are executed, the processor is used to implement the above first aspect or the second aspect method in .
  • FIG. 1 is a schematic diagram of an artificial intelligence subject framework provided by an embodiment of the present application.
  • FIG. 2 is a schematic diagram of a system architecture provided by an embodiment of the present application.
  • FIG. 3 is a chip hardware structure diagram provided by an embodiment of the present application.
  • FIG. 4 is a schematic flowchart of a recommendation method provided in the embodiment of the present application.
  • FIG. 5 is a schematic diagram of feature vector interaction and splicing provided by the embodiment of the present application.
  • Fig. 6 is a structural diagram of a model provided by the embodiment of the present application.
  • FIG. 7 is a schematic flowchart of a recommended model training method provided in an embodiment of the present application.
  • FIG. 8 is a comparison diagram of a user behavior prediction process provided by the embodiment of the present application.
  • FIG. 9 is a schematic diagram of an application recommendation provided by an embodiment of the present application.
  • FIG. 10 is a schematic diagram of a product recommendation provided in an embodiment of the present application.
  • FIG. 11 is a schematic diagram of a song recommendation provided by an embodiment of the present application.
  • FIG. 12 is a structural diagram of a recommendation device provided in an embodiment of the present application.
  • FIG. 13 is a structural diagram of a recommended model training device provided in an embodiment of the present application.
  • FIG. 14 is a structural diagram of an electronic device provided by an embodiment of the present application.
  • FIG. 1 is a schematic diagram of an artificial intelligence subject framework provided by an embodiment of the present application.
  • the main framework describes the overall workflow of the artificial intelligence system, which is applicable to the general artificial intelligence field requirements.
  • Intelligent information chain reflects a series of processes from data acquisition to processing. For example, it can be the general process of intelligent information perception, intelligent information representation and formation, intelligent reasoning, intelligent decision-making, intelligent execution and output. In this process, the data has undergone a condensed process of "data-information-knowledge-wisdom".
  • IT value chain reflects the value brought by artificial intelligence to the information technology industry from the underlying infrastructure of artificial intelligence, information (provided and processed by technology) to the systematic industrial ecological process.
  • the infrastructure provides computing power support for the artificial intelligence system, realizes communication with the outside world, and realizes support through the basic platform.
  • computing power is provided by smart chips
  • smart chips can be central processing unit (central processing unit, CPU), neural network processor (Neural-network Processing Unit, NPU), graphics processing graphics processing unit, abbreviation: GPU), application specific integrated circuit (Application Specific Integrated Circuit, ASIC), field programmable logic gate array (Field Programmable Gate Array, FPGA) and other hardware acceleration chips
  • the basic platform includes distributed computing framework and network and other related Platform guarantee and support, which may include cloud storage and computing, interconnection and interoperability network, etc.
  • sensors communicate with the outside to obtain data, and these data are provided to the smart chips in the distributed computing system provided by the basic platform for calculation.
  • Data from the upper layer of the infrastructure is used to represent data sources in the field of artificial intelligence.
  • the data involves graphics, images, voice, text, and IoT data of traditional equipment, including business data of existing systems and sensory data such as force, displacement, liquid level, temperature, and humidity.
  • Data processing usually includes data training, machine learning, deep learning, search, reasoning, decision-making, etc.
  • machine learning and deep learning can symbolize and formalize intelligent information modeling, extraction, preprocessing, training, etc. of data.
  • Reasoning refers to the process of simulating human intelligent reasoning in a computer or intelligent system, using formalized information to carry out machine thinking and solving problems according to reasoning control strategies. Typical functions are search, matching and prediction.
  • Decision-making refers to the process of decision-making after intelligent information is reasoned, and usually provides functions such as classification, sorting, and prediction.
  • some general-purpose capabilities can be formed based on the results of data processing, such as algorithms or a general-purpose system, such as translation, text analysis, user behavior prediction, computer vision processing, Speech recognition, image recognition, etc.
  • Intelligent products and industry applications refer to the products and applications of artificial intelligence systems in various fields. It is the packaging of the overall solution of artificial intelligence, which commercializes intelligent information decision-making and realizes landing applications. Its application fields mainly include: intelligent manufacturing, intelligent transportation, Smart home, smart medical care, smart security, automatic driving, smart terminals, etc.
  • FIG. 2 is a schematic diagram of a system architecture 200 provided by an embodiment of the present application.
  • the data acquisition device 260 is used to collect multi-domain discrete data including user feature domain data, item feature domain data and label data, that is, training samples, and store the training samples in the database 230.
  • the training device 220 is based on the training samples maintained in the database 230 Generate models/rules 201 . The following will describe in more detail how the training device 220 obtains the model/rule 201 based on the training samples.
  • the model/rule 201 can process the data to be predicted to obtain the output value, that is, the probability that the target user operates the target item, so as to determine the Whether to recommend the target item to the target user.
  • execution device 210 is equipped with I/O interface 212, carries out data interaction with external equipment, "user” can input data to I/O interface 212 through client device 240, for example, can send I/O interface 212 through client device 240
  • the /O interface 212 inputs the data to be predicted, wherein the data to be predicted includes user feature field data and item feature field data, and the purpose of the "user" inputting the data to be predicted to the execution device 210 is to obtain the output value, so as to obtain the target user's target The probability that the item performs an action.
  • the execution device 210 may call data, codes, etc. stored in the data storage system 250 , and may also store data, instructions, etc. in the data storage system 250 .
  • a large number of reference samples are stored in the data storage system 250, and the reference samples can be training samples maintained in the database 230, that is, the database 230 can migrate data to the data storage system 250;
  • the correlation function module 213 analyzes the data to be predicted, and inquires out a plurality of target reference samples from the reference samples maintained in the data storage system 250;
  • the calculation module 211 uses the model/rule 201 to process the multiple target reference samples and the data to be predicted that are queried by the association function module 213 . Specifically, the calculation module 211 invokes the model/rule 201 to perform vectorization and fusion of multiple target reference samples, and vectorizes the data to be predicted to obtain target feature information of the data to be predicted, and obtains an output value according to the target feature information;
  • the calculation module 211 returns the output value to the client device 240 through the I/O interface 212, so that the client device 240 obtains the probability that the target user operates on the target item.
  • the training device 220 can generate corresponding models/rules 201 based on different data for different purposes, so as to provide users with better results.
  • the user can manually designate the data input into the execution device 210 , for example, operate in the interface provided by the I/O interface 212 .
  • the client device 240 can automatically input data to the I/O interface 212 and obtain the result. If the client device 240 needs to obtain authorization from the user for automatically inputting data, the user can set corresponding permissions in the client device 240 .
  • the user can view the results output by the execution device 210 on the client device 240, and the specific presentation form may be specific ways such as display, sound, and action.
  • the client device 240 may also serve as a data collection terminal and store the collected data into the database 230 .
  • FIG. 2 is only a schematic diagram of a system architecture provided by an embodiment of the present invention, and the positional relationship between devices, devices, modules, etc. shown in FIG. 2 does not constitute any limitation.
  • the data storage system 250 is an external memory relative to the execution device 210 , and in other cases, the data storage system 250 may also be placed in the execution device 210 .
  • FIG. 3 is a hardware structure diagram of a chip provided by an embodiment of the present application.
  • a neural network processor (Neural-network Processing Unit, NPU) 30 is mounted on the main central processing unit (Central Processing Unit, CPU) as a coprocessor, and tasks are assigned by the main CPU.
  • the core part of the NPU is the operation circuit 303, and the controller 304 controls the operation circuit 303 to extract data in the memory (weight memory 302 or input memory 301) and perform operations.
  • the operation circuit 303 includes multiple processing units (Process Engine, PE).
  • PE Process Engine
  • arithmetic circuit 303 is a two-dimensional systolic array.
  • the arithmetic circuit 303 may also be a one-dimensional systolic array or other electronic circuits capable of performing mathematical operations such as multiplication and addition.
  • arithmetic circuit 303 is a general-purpose matrix processor.
  • the operation circuit 303 fetches the weight matrix B from the weight memory 302 and caches it on each PE in the operation circuit 303 .
  • the operation circuit 303 fetches the input matrix A and the weight matrix B from the input memory 301 to perform matrix operations, and the obtained partial or final results of the matrix are stored in an accumulator 308 .
  • the vector calculation unit 307 can perform further processing on the output of the operation circuit 303, such as vector multiplication, vector addition, exponential operation, logarithmic operation, size comparison and so on.
  • the vector calculation unit 307 can be used for network calculations of non-convolution/non (Fully Connected Layers, FC) layers in neural networks, such as pooling (Pooling), batch normalization (Batch Normalization), and local response normalization (Local Response Normalization) and so on.
  • FC Non-convolution/non layers in neural networks, such as pooling (Pooling), batch normalization (Batch Normalization), and local response normalization (Local Response Normalization) and so on.
  • vector computation unit 307 stores the processed vectors to unified buffer 306 .
  • the vector computing unit 307 may apply a non-linear function to the output of the computing circuit 303, such as a vector of accumulated values, to generate activation values.
  • vector computation unit 307 generates normalized values, binned values, or both.
  • the processed vectors can be used as activation inputs to arithmetic circuitry 303, eg, for use in subsequent layers in a neural network.
  • the operation circuit 303 obtains the data to be predicted from the input memory 301, and obtains the target reference sample from the unified memory 306; then, the operation circuit 303 obtains the data to be predicted according to the data to be predicted and the target reference sample
  • the target feature information of the data, and the output value is obtained according to the target feature information, that is, the probability that the target user operates the target item.
  • the unified memory 306 is used to store input data (eg, data to be predicted) and output data (eg, output value).
  • the storage unit access controller (Direct Memory Access Controller, DMAC) 305 moves the input data in the external memory to the input memory 301 and/or the unified memory 306, stores the weight data in the external memory into the weight memory 302, and stores the weight data in the unified memory
  • the data in 306 is stored in the external memory.
  • a bus interface unit (Bus Interface Unit, BIU) 310 is used to realize the interaction between the main CPU, DMAC and instruction fetch memory 309 through the bus.
  • An instruction fetch buffer 309 for storing instructions used by the controller 304;
  • the controller 304 is used for invoking the instructions cached in the instruction fetch memory 309 to control the working process of the operation circuit 303 .
  • the unified memory 306, the input memory 301, the weight memory 302 and the instruction fetch memory 309 are all on-chip (On-Chip) memory
  • the external memory is a memory outside the NPU
  • the external memory can be a double data rate synchronous dynamic random access memory (DDR) Double Data Rate Synchronous Dynamic Random Access Memory, DDR SDRAM), high bandwidth memory (High Bandwidth Memory, HBM) or other readable and writable memory.
  • DDR double data rate synchronous dynamic random access memory
  • DDR SDRAM Double Data Rate Synchronous Dynamic Random Access Memory
  • HBM High Bandwidth Memory
  • Tabular Data also known as Multi-Field Categorical Data
  • each row in the tabular data is a data point (also called a sample), and each column represents A feature (also called a domain, can also be called a feature domain), each sample contains multiple feature domains; and the value of the sample under each feature domain is called feature domain data, which can also be called domain value.
  • a feature also called a domain, can also be called a feature domain
  • each sample contains multiple feature domains
  • feature domain data which can also be called domain value.
  • LA, NYC, LA, and London in Table 1 are the domain values of sample 1, sample 2, sample 3, and sample 4 in the feature domain of the city, respectively.
  • the feature domains of each sample include user feature domains and item feature domains, and the domain values under the user feature domain are called user feature domain data, and the domain values under the item feature domain The value is called item feature field data.
  • the user feature domain data includes the user's attribute information and the user's behavior sequence (optional), where the user's attribute information includes the user's identification (ID), place of residence, identity, gender, age, etc.
  • ID user's identification
  • item feature domain data includes item ID, category, trademark, size, color, and other basic information
  • user behavior sequence includes user's historical behavior, for example, items that the user has clicked, browsed, and purchased in the past, and so on.
  • FIG. 4 is a schematic flowchart of a recommendation method provided by an embodiment of the present application. The method includes the following steps:
  • the data to be predicted is multi-domain discrete data, and the data to be predicted includes user feature domain data and item feature domain data.
  • the user feature field data of the data to be predicted is used to indicate the target user feature.
  • the user feature domain data includes attribute information of the target user, such as the target user's ID, age, gender, place of residence, place of domicile, and other basic information;
  • the item feature field data of the data to be predicted is used to indicate the feature of the target item.
  • the target item may be a commodity, an application program, a song, a web page, and other items related to the user.
  • the feature field data of the target item may have different representations.
  • the feature field data of the target item includes the type of application program, installation size, access popularity, installation times, etc.; for another example, if the target item is a song, the feature field data of the target item includes the style of the song , rhythm, duration, playback times, playback popularity, etc.; for another example, the target item is a commodity, and the feature domain data of the target item includes the color, size, price, trademark, manufacturer, evaluation, etc. of the commodity.
  • the user feature domain data of the data to be predicted may also include the target user's behavior sequence, for example, the target user's behavior sequence includes items that the target user has clicked, browsed, and purchased in the past, and so on.
  • the similarity between the data to be predicted and each reference sample in the multiple reference samples is obtained, and multiple targets are obtained from the multiple reference samples according to the similarity between the data to be predicted and each reference sample Reference samples.
  • each reference sample is also multi-domain discrete data, and each reference sample also includes user characteristic domain data and item characteristic domain data.
  • the user feature field data of each reference sample is used to indicate the reference user feature
  • the item feature field data is used to indicate the reference item feature. Similar to the data to be predicted, the user feature field data of each reference sample contains the attribute information of the reference user, and the item feature field data contains the attribute information of the reference item, such as color, shape, price, and other information, which will not be described here.
  • each target reference sample and the data to be predicted have part of the same user feature domain data and/or item feature domain data. It should be noted that in order to ensure that the target reference samples truly serve as a reference for the data to be predicted, it is necessary to make each target reference sample and the data to be predicted have part of the same user feature field data and item feature field data. For example, if the target reference sample and the data to be predicted only have part of the same user feature domain data, for example, both are male, this target reference sample has no reference value in predicting the behavior of the data to be predicted; or, the target reference The sample and the data to be predicted only have part of the same item feature domain data. For example, the purchased items are all black. This kind of target reference sample has no reference value for the behavior prediction of the predicted data. Therefore, in practical applications, compared with the data to be predicted, the obtained target reference samples need to have part of the same user feature domain data and item feature domain data.
  • the user feature domain data contained in each reference sample and the user feature domain data contained in the data to be predicted are not exactly the same, while the item feature domain data contained in each reference sample and the item domain feature data contained in the to-be-predicted data can be exactly the same.
  • multiple reference samples can be pre-stored in the manner shown in Table 1 to form tabular data, or they can be stored freely, as long as the multiple feature fields of these reference samples are the same as the multiple feature fields of the data to be predicted.
  • the plurality of reference samples may be a plurality of original samples in the sample library, or samples selected from a plurality of original samples, wherein each original sample is also multi-domain discrete data, which is different from the to-be-predicted Similar to the data, each original sample also includes user feature domain data and item feature domain data, which will not be described again.
  • multiple original samples can be inverted indexed to obtain inverted list to obtain multiple reference samples based on the inverted list.
  • each user feature domain data and each item feature domain data of each original sample are used as an element (item), and each original sample is used as a document (document), and multiple original samples are inverted Index to get the inverted list. Since this application only needs to obtain multiple reference samples from multiple original samples, and does not pay attention to the number of occurrences of elements in documents and other information, the posting list in this application may only contain the correspondence between elements and documents.
  • each user feature domain data and each item feature domain data of the data to be predicted are taken as elements, and multiple reference samples corresponding to the data to be predicted are indexed from the inverted list. That is, index the reference samples corresponding to each user feature field data of the data to be predicted from the inverted list, and the reference samples corresponding to each item feature field; then merge and deduplicate all the indexed reference samples, Get multiple reference samples. Therefore, compared with the data to be predicted, each reference sample has the same domain data under at least one feature domain, for example, the domain data under the same user feature domain is the same, for example, living in the same city.
  • the data to be predicted is [U4, LA, Student, L2, cell phone, B3]
  • the corresponding reference sample [sample 1, sample 3], the reference sample corresponding to Student [sample 1, sample 2, sample 3], the reference sample corresponding to L2 is [sample 3], the reference sample corresponding to cell phone [sample 3.
  • Sample 4] the reference sample [Sample 4] corresponding to B3. Then, after merging and deduplicating all reference samples, multiple reference samples [sample 1, sample 2, sample 3, sample 4] are obtained.
  • the original samples are stored first by inverting, so that a part of the original samples can be indexed from multiple original samples as multiple reference samples, so that only the data to be predicted and multiple reference samples need to be calculated in the future. Similarity, instead of calculating the similarity with multiple original samples, reduces the calculation pressure, so that multiple target reference samples can be quickly obtained.
  • the similarity between the data to be predicted and each reference sample can be obtained.
  • the similarity between the data to be predicted and each reference sample is obtained through the BM25 algorithm, which will not be described again.
  • a reference sample whose similarity is greater than a threshold is used as a target reference sample to obtain multiple target reference samples, or a preset number of reference samples are selected from multiple reference samples in order of similarity from high to low, as Multiple target reference samples.
  • the target feature information includes a first target feature vector group and a second target feature vector group, wherein the first target feature vector group is the data to be predicted after vectorization, and the second target feature vector group is the The reference samples are vectorized and then fused.
  • the data to be predicted is vectorized to obtain a first target feature vector group, wherein the first target feature vector group includes a plurality of first target feature vectors.
  • each user feature field data and each item feature field data of the data to be predicted are encoded to obtain a feature vector of the data to be predicted.
  • Coding each user feature field data and each item feature field data of the data to be predicted can be understood as digitizing each user feature field data and each item feature field data of the data to be predicted to obtain The feature vector of the data to be predicted; then, the feature vector of the data to be predicted is mapped to obtain a plurality of target first feature vectors, wherein each first target feature vector is used to represent a feature field data of the data to be predicted, that is, The encoding result of each feature domain data in the data to be predicted is mapped to obtain the first target feature vector corresponding to the feature domain data.
  • the data to be predicted contains the behavior sequence of the target user
  • the behavior sequence of the target user is encoded, and the encoding result is mapped to obtain the mapping result; then, the mapping result corresponding to the user behavior sequence is fused, A first target feature vector corresponding to the target user's behavior sequence is obtained, and the first target feature vector is used to represent the target user's behavior sequence.
  • obtaining multiple first target feature vectors can be achieved through a target recommendation model.
  • the training process of the target recommendation model will be described in detail later, and will not be described here.
  • the target recommendation model includes a feature information extraction network and a deep neural network (Deep Neural Networks, DNN), wherein, the DNN can be a multi-layer perceptron (Multi-Layer Perceptron, MLP), and in this application, use DNN as MLP An example is used for description, and details are not repeated here.
  • DNN Deep Neural Networks
  • MLP Multi-Layer Perceptron
  • the feature information extraction network includes a coding layer and a mapping layer (embedding layer).
  • label data may or may not be carried.
  • the following describes the process of obtaining the second target feature vector group with reference to samples with labels and without labels.
  • each target reference sample is vectorized to obtain multiple first feature vectors of each target reference sample.
  • encode each user feature field data and each item feature field data of each target reference sample to obtain a feature vector of each target reference sample; perform mapping processing on the feature vector of each target reference sample , to obtain multiple first feature vectors of each target reference sample, where each first feature vector is used to represent a feature domain data of the target reference sample.
  • the first feature vectors of the plurality of target reference samples are fused to obtain a second target feature vector group, wherein the second target feature vector group includes a plurality of second target feature vectors.
  • the multiple first target feature vectors of the data to be predicted and the multiple first feature vectors of each target reference sample determine the weight corresponding to each target reference sample; according to the multiple weights of multiple target reference samples , fusing the first feature vectors of multiple target reference samples in the same feature domain to obtain multiple second target feature vectors.
  • multiple first target feature vectors of the data to be predicted are spliced to obtain a second feature vector of the data to be predicted; multiple first feature vectors of each target reference sample are spliced to obtain each target reference sample the second eigenvector of the data to be predicted; obtain the similarity between the second eigenvector of the data to be predicted and the second eigenvector of each target reference sample, and obtain multiple similarities corresponding to multiple target reference samples, wherein the similarity It can be Euclidean distance, cosine similarity, etc.; then, normalize the multiple similarities of multiple target reference samples, and use the normalization result corresponding to each target reference sample as each target reference The weight of the sample. Therefore, the weight of the i-th target reference sample in the target reference sample can be expressed by formula (1):
  • a i is the weight of the i-th target reference sample
  • q is the second feature vector of the data to be predicted
  • r i is the second feature vector of the i-th target reference sample
  • similarity(q, e i ) is the i-th
  • k is the number of multiple target reference samples.
  • the first feature vectors of multiple target reference samples under any same feature domain (that is, each target reference sample corresponds to a first feature vector under the feature domain)
  • the jth second target feature vector among the plurality of second target feature vectors can be represented by formula (2):
  • R j is the j-th second target feature vector
  • e ij is the j-th first feature vector of the i-th target reference sample
  • the value of j is an integer from 1 to n
  • n is each target reference sample
  • the number of multiple first feature vectors of that is, the number of feature fields of each target reference sample, is also the number of multiple second target feature vectors.
  • a second feature vector of each target reference sample is obtained. Therefore, after obtaining the second eigenvector of each target reference sample, the weight of each target reference sample can be used to directly fuse multiple second eigenvectors of multiple target reference samples, that is, weighting processing, to obtain a fused Then, according to the reverse order of splicing the multiple first feature vectors of each target reference sample, the fused feature vectors are split to obtain multiple second target feature vectors.
  • the order of splicing the multiple first feature vectors is not limited, but it is necessary to ensure that the data to be predicted
  • the splicing order of multiple first target feature vectors of is consistent with the splicing sequence of multiple first feature vectors of each target reference sample.
  • acquiring multiple second target feature vectors may also be implemented through the above-mentioned target recommendation model.
  • the user feature domain data and item feature domain data of each target reference sample are input to the encoding layer to encode each target reference sample to obtain the feature vector of each target reference sample, for example, the i-th target reference
  • the feature vector of the sample is (r i1 ,r i2 ,r i3 ,...,r in ), the value of i is from 1 to k, and k is the number of multiple target reference samples; then, the feature of each target reference sample
  • the vector is input to the embedding layer to map the eigenvectors of each target reference vector to obtain multiple first eigenvectors of each target reference sample.
  • the multiple first eigenvectors of the i-th target reference sample are (e i1 ,e i2 ,e i3 ,...,e in );
  • the feature information extraction network also includes an attention layer, which combines multiple first feature vectors of each target reference sample and multiple first feature vectors of the data to be predicted
  • the target feature vector (e 1 , e 2 , e 3 ,...,e n ) is input to the attention layer, and the (e 1 ,e 2 ,e 3 ,...,e n ) are spliced to obtain the second feature of the data to be predicted vector, ie Splicing the first feature vectors of each target reference sample to obtain the second feature vector of each target reference sample, for example, the second feature vector of the i-th target reference sample is Then, based on the second eigenvector of the data to be predicted and the second eigenvector of each target reference sample, determine the weight of each target reference sample;
  • a eigenvector is
  • the multiple second target feature vectors can also be simplified as: (e n+ 1 ,e n+2 ,e n+3 ,...,e 2n ).
  • each reference sample also carries tag data, which is used to characterize the actual operation of the reference item by the reference user in the reference sample, for example, when the reference item is an application program, the tag is used to characterize the reference user Whether the application was clicked. Therefore, in the process of vectorizing each target reference sample to obtain multiple first feature vectors of each target reference sample, in addition to converting each user feature domain data and each item feature domain data of each target reference sample In addition to vectorization, the label data of each target reference sample is also vectorized synchronously to obtain multiple first eigenvectors of each target reference sample.
  • the plurality of first target feature vectors of each target reference sample obtained by vectorization further includes a first target feature vector used to indicate label data.
  • each user feature field data, each item feature field data, and tag data of each target reference sample are encoded to obtain a feature vector of each target reference sample.
  • the feature vector of the i-th target reference sample is (r i1 ,R i2 ,r i3 ,...,r in ,r i(n+1) ), where r i(n+1) is the i-th target reference
  • An encoding result of the label data of the sample then, map the feature vectors of each target reference sample to obtain a plurality of first feature vectors of each target reference sample.
  • the multiple feature vectors of the i-th target reference sample are (e i1 ,e i2 ,e i3 ,...,e in ,e i(n+1) ), where e i(n+1) is used to indicate Label data of the i-th target reference sample.
  • the first feature of multiple target reference samples under the same feature domain including user feature domain, item feature domain and tag domain
  • Vectors are fused to obtain the second target feature vector group, that is, compared with the above-mentioned case of not carrying label data
  • the multiple second feature vectors in the second feature vector group obtained by fusion at this time also contain information for indicating the fused
  • the second target feature vector of the labeled data is (e n+1 , e n+2 , e n+3 ,..., e 2n , e 2n+1 ), where e 2n+1 is used to indicate multiple targets
  • the fused label data of the reference sample is (e n+1 , e n+2 , e n+3 ,..., e 2n , e 2n+1 ), where e 2n+1 is used to indicate multiple targets
  • the fused label data of the reference sample is (e n+1 , e n+2 , e n+3 ,..., e
  • the first target feature vector group and the second target feature vector group can be Splicing is performed to obtain the target feature information, then the target feature information is (e 1 , e 2 , e 3 ..., e n , e n+1 , e n+2 , e n+3 ,..., e 2n ) or (e 1 ,e 2 ,e 3 ...,e n ,e n+1 ,e n+2 ,e n+3 ,...,e 2n ,e 2n+1 ); group and the second target feature vector group are concatenated.
  • both the first target feature vector group and the second target feature vector group may be used as input data to perform subsequent output value prediction to obtain output values.
  • the target feature after obtaining the first target feature vector group and the second target feature vector group, in addition to splicing the first target feature vector group and the second target feature vector group, the target feature can also be Vectors are interacted to obtain high-level feature information.
  • multiple first target feature vectors and multiple second target feature vectors can be concatenated (concat) to obtain the first vector group; then, the target in the first vector group The feature vectors are interacted in pairs to obtain the third target feature vector group; then, the first vector group and the third target feature vector group are spliced to obtain target feature information.
  • a plurality of third target feature vectors can be represented by formula (3):
  • the value of i is 1 to 2n
  • the value of j is 2 to 2n
  • the value of j is greater than i
  • 2n is the number of target feature vectors in the first vector group
  • inter is the interactive operation between vectors .
  • the pairwise interaction of the above-mentioned vectors is mainly to fuse two vectors into one vector, and the feature information represented by one vector after fusion is the feature information after fusion of the feature information represented by the two vectors.
  • the two-to-two interaction of vectors can be realized by vector dot product, kernel product and network layer. The present application does not limit the interaction mode of the two vectors, as long as one vector obtained after fusion can represent the feature information represented by the two vectors.
  • the above only shows the case of pairwise interaction of eigenvectors, and in practical applications, three eigenvectors or a larger number of eigenvectors may also be interacted with.
  • all target feature vectors in the first vector group are pairwise interacted.
  • some target feature vectors can also be selected from the first vector group for interaction. For example, only some of the multiple first target feature vectors and some of the multiple target second feature vectors in the target feature information may be interacted to obtain multiple third target feature vectors. Therefore, the present application does not limit the source of the interacting vectors and the quantity of the interacting vectors.
  • the target feature information is input into the deep neural network DNN as input data to obtain an output value.
  • the output value is a probability value, which represents the probability that the target user operates on the target item.
  • target users have different understandings of the probability of operating on the target item.
  • the target item is an application
  • the probability that the target user operates on the target item can be understood as the target user’s click probability on the application
  • the target item is a song
  • the probability that the target user operates on the target item It can be understood as the probability that the target user likes the song
  • the target item is a commodity
  • the probability that the target user operates on the target item can be understood as the probability that the target user purchases the commodity.
  • the probability value can be post-processed to obtain an output value. For example, when the probability value is greater than the probability threshold, 1 is used as the output value, and when the probability value is less than or equal to the threshold value, 0 is used. As an output value, 0 indicates that the target user will not operate the target item, and 1 indicates that the target user will operate the target item.
  • the output value when the output value is represented by binary data of 0 or 1, then when the output value is 1, it is determined to recommend the target item to the target user; when the output value is 0, it is determined not to recommend the target item to the target user thing.
  • the output value when the output value is expressed in the form of probability, when the probability is greater than the probability threshold, it is determined to recommend the target item to the target user, and when the probability is less than or equal to the probability threshold, it is determined not to recommend the target item to the target user.
  • the recommendation method of this application when the recommendation method of this application is applied to a multi-item recommendation scenario, it is necessary to calculate the target user's operation probability for each candidate item; then, sort the operation probabilities of multiple candidate items, and rank the top Candidate items are recommended to target users. For example, when recommending songs, it is necessary to calculate the target user's liking probability for each candidate song, and then recommend the song with the highest liking probability to the target user.
  • the acquired target feature information in addition to the feature information of the data to be predicted, also includes feature information obtained by fusion of multiple target reference samples after vectorization. Since the target reference sample and the data to be predicted have part of the same user feature domain data and/or item feature domain data, the user behavior in the target reference sample can provide reference and experience for the prediction of the target user's behavior, so that when using such When the target feature information is used to predict the output value, the predicted output value can be more accurate, and the item recommendation based on this output value improves the accuracy of the recommendation.
  • the following describes the process of obtaining the output value in combination with the specific model structure and the way that the reference sample carries label data and interacts with the target feature vector.
  • the model includes a feature information extraction network and an MLP, where the feature information extraction network includes a coding layer, an embedding layer, an attention layer and an interaction layer.
  • the interaction layer is optional.
  • the interaction layer needs to be designed; if the target feature vector is not interacted, the interaction layer need not be designed.
  • the target feature information is input to the multi-layer perceptron MLP to obtain the output value.
  • FIG. 7 is a schematic flowchart of a method for training a recommendation model provided by an embodiment of the present application.
  • the recommendation model includes feature information extraction network and multi-layer perceptron MLP. The method includes the following steps:
  • each training sample is multi-domain discrete data, similar to the reference sample above, each training sample includes user feature domain data and user feature domain data. It should be understood that each training sample also carries label data, and the label data of each training sample is used to represent the actual operation of the items in the training sample by the user in each training sample. For example, when the item is an application program, the actual operation status is whether the user clicks on the application program.
  • multiple reference samples may be the multiple training samples, or some of the multiple training samples, for example, select some training samples with high data integrity from multiple training samples as a reference sample.
  • 702 Acquire multiple target training samples from multiple second training samples according to the similarity between the first training sample and multiple second training samples.
  • the first training sample is any one of multiple training samples
  • the user feature domain data of the first training sample is used to indicate the first reference user feature
  • the item feature domain data of the first training sample is used to indicate the first reference item feature.
  • the multiple second training samples are part or all of the multiple training samples except the first training samples.
  • the first training sample and each target training sample have part of the same user feature domain data and/or item feature domain data.
  • each target reference sample and the first training sample have part of the same user feature domain data and item feature domain data.
  • multiple target training samples are acquired from multiple second training samples according to the similarity between the first training sample and each second training sample.
  • the second training sample whose similarity is greater than the threshold can be used as the target training sample to obtain multiple target training samples, or a preset number of second training samples can be selected from multiple second training samples in order of similarity from high to low. Two training samples, as multiple target training samples.
  • all the training samples except the first training samples in the multiple training samples can be directly used as multiple second training samples, and then the similarity between the first training samples and the multiple second training samples can be obtained; Parts may be selected from training samples other than the first training samples as multiple second training samples according to the manner of the above-mentioned inverted index.
  • each user feature domain data and each item feature domain data of each training sample are used as elements, each training sample is used as a document, and multiple training samples are inverted Arrange the index to obtain the inverted list; then, use each user feature field data and each item feature field data of the first training sample as query words, and obtain a plurality of second training samples from the inverted index, therefore, Compared with the first training samples, these second training samples have at least the same domain data under the same feature domain. Therefore, when a certain training sample has different domain data under any same feature domain than the first training sample, this training sample is not used as the second training sample. Therefore, the above-mentioned second training sample may be a part of the multiple training samples other than the first training sample.
  • 703 Input the first training sample and multiple target training samples into the feature information extraction network to obtain target feature information of the first training sample.
  • the first training sample and each target training sample are input into the feature information extraction network as input data to obtain the target feature information of the first training sample.
  • the target feature information includes a fourth target feature vector group (including multiple fourth target feature vectors) and a fifth target feature vector group (including multiple fifth target feature vectors), wherein the multiple fourth target
  • the eigenvectors are similar to the above method of obtaining multiple first target eigenvectors, that is, the eigenvectors of the first training samples are mapped to obtain multiple fourth target eigenvectors, wherein the eigenvectors of the first training samples are corresponding to the first
  • Each user feature field data and each item feature field data of the training sample are obtained by encoding, and will not be described in detail; optionally, obtaining multiple fifth target feature vectors is the same as the above-mentioned way of obtaining multiple second target feature vectors Similarly, it is obtained by fusing multiple first feature vectors of multiple target training samples in the same feature domain, where the multiple first feature vectors corresponding to each target training sample are the features of each target training sample Vectors are mapped, and the feature vector of each target training sample is obtained by en
  • the label data of the target reference sample may not be vectorized and fused, or the label data of the target reference sample may be vectorized and fused .
  • the target feature information may also include a sixth target feature vector group (including a plurality of sixth target feature vectors), wherein the acquisition method of the multiple sixth target feature vectors is the same as the acquisition of the above-mentioned multiple third target feature vectors
  • the method is similar, that is, splicing multiple fourth target feature vectors and multiple fifth target feature vectors to obtain a second vector group; then, pairwise interaction is performed on the target feature vectors in the second vector group to obtain multiple sixth
  • the target feature vector is not described in detail.
  • the target feature information of the first training sample is input to the multi-layer perceptron of the recommendation model to obtain an output value, that is, to predict the operation of the first reference user on the first reference item.
  • the loss is determined according to the output value and the label data of the first training sample, that is, according to the predicted situation of the first reference user operating the first reference item and the actual situation of the first reference user operating the first reference item. According to the situation, determine the loss; adjust the model parameters of the recommendation model to be trained according to the loss and the gradient descent method, train the recommendation training model, and obtain the target recommendation model.
  • the training of the recommendation model is to use multiple training samples for iterative training, wherein the training process of each training sample is similar to the training process using the first training sample shown in Figure 7, and will not be described again; until the recommendation model When converging, the training of the recommendation model is completed and the target recommendation model is obtained.
  • the existing item recommendation process is to first use the training samples for model training (consistent with the existing supervised training method), after the model training is completed, the data to be predicted is directly input into the recommendation model for user Behavior prediction, obtain the output value, determine whether to recommend items to the user based on the output value; and the user behavior prediction of the present application is to first use the training samples to train the recommended model (consistent with the training method shown in Figure 7), and the model to be completed After training, use the training sample as a reference sample; when the data to be predicted is obtained, first obtain the target training sample corresponding to the data to be predicted from the training sample, and then input the data to be predicted and the target training sample into the target recommendation model The user behavior prediction is carried out, and the output value is obtained, and based on the output value, it is determined whether to recommend items to the user
  • the recommendation of the application for example, the application recommendation under the high-quality application, the application recommendation under the high-quality new tour list; for each type of application recommendation, first obtain multiple candidate applications; Then, based on the user feature field data of the target user and the item feature field data of each candidate application program, the data to be predicted corresponding to each candidate application program is constructed, that is, the user feature field data of the target user and the item feature field data of each candidate application program The data is spliced into a data to be predicted; then, based on the above-mentioned recommendation method and the data to be predicted, the target user's click probability for each candidate application is predicted; then, according to the order of the click probability of each candidate application from high to low, multiple Candidate applications are sorted, and multiple candidate applications are displayed on the recommendation page in order of click probability from high to low or only the top candidate applications are displayed.
  • the feature information of the target reference sample will be fused, so that the predicted click rate will be more accurate, and the application program recommended to the target user will be more accurate, thereby increasing the download rate of the application program.
  • the data to be predicted corresponding to each candidate commodity can be constructed based on the item feature domain data of each candidate commodity and the user feature domain data of the target user, that is, the target user’s user feature domain data and
  • the item feature domain data of each candidate commodity is spliced into a data to be predicted; based on the above-mentioned recommendation method and the data to be predicted, the target user’s purchase probability for each candidate commodity is predicted; then, according to the purchase probability of each candidate commodity from high to high Sort multiple candidate products in descending order, and display the sorted multiple candidate products or only display the top-ranked candidate products in order of purchase probability from high to low on the recommendation page.
  • the predicted purchase probability is more accurate, and the products recommended to the target users are more in line with the user's needs, and the sales of the products are increased.
  • song recommendation for example, song recommendation in private FM, song recommendation in 30 songs per day; for each type of recommendation, first obtain a plurality of candidate songs, according to the item characteristics of each candidate song domain data and the user feature domain data of the target user, constructing data to be predicted corresponding to each candidate song, that is, splicing the user feature domain data of the target user and the item feature domain data of each candidate song into one data to be predicted; based on the above
  • the recommendation method and the data to be predicted predict the score of each candidate song, and the score of each candidate song is used to represent the target user's preference for the candidate song; then, according to the order of the score of each candidate song from high to low Sort multiple candidate songs, and display the sorted multiple candidate songs in descending order of ratings or only display candidate songs with higher ratings on the recommendation page.
  • the feature information of the target reference sample will be fused, so that the predicted score is more accurate, and the recommended song is more in line with the user's needs, improving the accuracy of song recommendation.
  • Experimental setting 1 Use the following test indicators to evaluate the pros and cons of the prediction accuracy of the model, namely:
  • test index AUC the area under the receiver operating characteristic curve and the coordinate axis (Area Under Curve, AUC), loss (Logloss, LL) and relative improvement (relative improvement, REI.Impr); among them, for the test index AUC, the value The larger the effect of the model, the better; for the test index LL, the smaller the value, the better the effect of the model; wherein, the test REI.Impr is the improvement of the prediction accuracy of the model (RIM) of the present application relative to other models, For the test index REI.Impr, the larger the value, the higher the prediction accuracy of RIM relative to the accuracy of the model being compared.
  • RIM prediction accuracy of the model
  • Experimental setting 2 Obtain the data set of application A, the data set of application B and the data set of application C, and test the CTR based on user behavior prediction on the data set of application A, the data set of application B and the data set of application C respectively.
  • Experimental setting 3 Obtain the first data set and the second data set, test the AUC and LL of the model based on feature interaction prediction CTR on the first data set and the second data set, and test the model of this application when predicting CTR AUC and LL.
  • the first data set may be avazu and the second data set may be criteo.
  • the models for predicting CTR based on user behavior include: HPMN, MIMN, DIN, DIEN, SIM, UBR; the models for predicting CTR based on feature interaction include: LR, GBDT, FM, FFM, AFM, FNN, DeepFM, IPNN, PIN, xDeepFM, FGCNN.
  • Table 3 and Table 4 are comparative results.
  • FIG. 12 is a structural diagram of a recommendation device provided in an embodiment of the present application.
  • the recommendation device 1200 includes an acquisition unit 1201 and a processing unit 1202;
  • the processing unit 1202 is configured to obtain the data to be predicted; obtain multiple target reference samples from multiple reference samples according to the similarity between the data to be predicted and the multiple reference samples; each reference sample and the data to be predicted include user feature domain data and item feature field data, the user feature field data of the data to be predicted is used to indicate the target user features, the item feature field data of the data to be predicted is used to indicate the target item features, each target reference sample and the data to be predicted have part of the same user Feature domain data and/or item feature domain data; obtain target feature information of the data to be predicted according to multiple target reference samples and data to be predicted; target feature information includes a first target feature vector group and a second target feature vector group, the first The target feature vector group is the data to be predicted after vectorization, and the second target feature vector group is obtained by vectorizing and merging multiple target reference samples; the target feature information is used as input to obtain the output value through the deep neural network DNN; according to the output The value determines whether to recommend the target item to the target user.
  • FIG. 13 is a structural diagram of a recommendation model training device provided by an embodiment of the present application.
  • the recommendation model includes feature information extraction network and deep neural network DNN.
  • the recommended model training device 1300 includes an acquisition unit 1301 and a processing unit 1302;
  • An acquisition unit 1301, configured to acquire a plurality of training samples, wherein each training sample includes user feature domain data and item feature domain data;
  • a processing unit 1302 configured to acquire a plurality of target training samples from the plurality of second training samples according to the similarity between the first training sample and the plurality of second training samples, wherein the first training sample is one of the plurality of training samples , a plurality of second training samples is a part or all of a plurality of training samples except the first training sample, the user feature domain data of the first training sample is used to indicate the first reference user feature, and the item feature domain of the first training sample The data is used to indicate the characteristics of the first reference item, and the first training sample and each target training sample have part of the same user feature domain data and/or item feature domain data;
  • the target feature information includes the fourth target feature vector group and the fifth target feature vector group
  • the fourth The target feature vector group is obtained by vectorizing the first training sample through the feature information extraction network
  • the fifth target feature vector group is obtained after vectorizing multiple target training samples through the feature information extraction network
  • the target feature information is input into the deep neural network DNN to obtain an output value, and the output value is used to represent the probability that the first reference user operates on the first reference item;
  • the recommendation model is trained according to the output value and the label of the first training sample to obtain a target recommendation model.
  • FIG. 14 is a structural diagram of an electronic device provided by an embodiment of the present application.
  • the electronic device 1400 may be the above-mentioned recommendation device 1200; or, a chip or a chip system in the recommendation device 1200; the electronic device may also be the above-mentioned recommendation model training device 1300; or, a chip or a chip in the recommendation model training device 1300 system;
  • the electronic device 1400 includes a memory 1401 , a processor 1402 , a communication interface 1403 and a bus 1404 .
  • the memory 1401 , the processor 1402 , and the communication interface 1403 are connected to each other through a bus 1404 .
  • the memory 1401 may be a read-only memory (Read Only Memory, ROM), a static storage device, a dynamic storage device or a random access memory (Random Access Memory, RAM).
  • the memory 1401 may store programs, and when the programs stored in the memory 1401 are executed by the processor 1402, the processor 1402 and the communication interface 1403 are used to execute various steps in the data stream transmission method of the embodiment of the present application.
  • the processor 1402 may be a general-purpose central processing unit (Central Processing Unit, CPU), a microprocessor, an application-specific integrated circuit (Application Specific Integrated Circuit, ASIC), a graphics processing unit (graphics processing unit, GPU) or one or more
  • the integrated circuit is used to execute related programs to realize the functions required by the units in the audio feature compensation device or the audio recognition device of the embodiment of the present application, or to execute the data stream transmission method of the method embodiment of the present application.
  • the processor 1402 may also be an integrated circuit chip with signal processing capabilities. During implementation, each step in the data stream transmission method of the present application may be completed by an integrated logic circuit of hardware in the processor 1402 or instructions in the form of software.
  • the above-mentioned processor 1402 can also be a general-purpose processor, a digital signal processor (Digital Signal Processing, DSP), an application-specific integrated circuit (ASIC), a ready-made programmable gate array (Field Programmable Gate Array, FPGA) or other programmable logic devices , discrete gate or transistor logic devices, discrete hardware components.
  • DSP Digital Signal Processing
  • ASIC application-specific integrated circuit
  • FPGA Field Programmable Gate Array
  • Various methods, steps, and logic block diagrams disclosed in the embodiments of the present application may be implemented or executed.
  • a general-purpose processor may be a microprocessor, or the processor may be any conventional processor, or the like.
  • the steps of the method disclosed in connection with the embodiments of the present application may be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software modules in the decoding processor.
  • the software module can be located in a mature storage medium in the field such as random access memory, flash memory, read-only memory, programmable read-only memory or electrically erasable programmable memory, register.
  • the storage medium is located in the memory 1401, and the processor 1402 reads the information in the memory 1401, and combines its hardware to complete the functions required by the units included in the user equipment or the head-mounted device of the embodiment of the present application, or execute the method embodiment of the present application The various steps in the data streaming method.
  • the communication interface 1403 can be a transceiver device such as a transceiver to realize communication between the electronic device 1400 and other devices or communication networks; the communication interface 1403 can also be an input-output interface to realize communication between the electronic device 1400 and the input-output device.
  • the input-output devices include but are not limited to keyboards, mice, display screens, U disks and hard disks.
  • the processor 1402 may acquire the data to be predicted through the communication interface 1403 .
  • the bus 1404 may include pathways for transferring information between various components of the device electronics 1400 (eg, memory 1401 , processor 1402 , communication interface 1403 ).
  • the electronic device 1400 shown in FIG. 14 only shows a memory, a processor, and a communication interface, in a specific implementation process, those skilled in the art should understand that the electronic device 1400 also includes other necessary components for normal operation. device. Meanwhile, according to specific needs, those skilled in the art should understand that the electronic device 1400 may also include hardware devices for implementing other additional functions. In addition, those skilled in the art should understand that the electronic device 1400 may only include components necessary to realize the embodiment of the present application, and does not necessarily include all the components shown in FIG. 14 .
  • the disclosed systems, devices and methods may be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of the units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components can be combined or May be integrated into another system, or some features may be ignored, or not implemented.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or units may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or may be distributed to multiple network units. Part or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, each unit may exist separately physically, or two or more units may be integrated into one unit.
  • “at least one” means one or more, and “multiple” means two or more.
  • “And/or” describes the association relationship of associated objects, indicating that there may be three types of relationships, for example, A and/or B, which can mean: A exists alone, A and B exist simultaneously, and B exists alone, where A, B can be singular or plural.
  • the character “/” generally indicates that the contextual objects are an “or” relationship; in the formulas of this application, the character “/” indicates that the contextual objects are a "division” Relationship.
  • the functions described above are realized in the form of software function units and sold or used as independent products, they can be stored in a computer-readable storage medium.
  • the technical solution of the present application is essentially or the part that contributes to the prior art or the part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including Several instructions are used to make a computer device (which may be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the methods described in the various embodiments of the present application.
  • the aforementioned storage media include: U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disk or optical disc and other media that can store program codes. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Development Economics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Game Theory and Decision Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请实施例提供了一种推荐方法、推荐模型训练方法及相关产品。该推荐方法包括:获取待预测数据;根据待预测数据和多个参考样本的相似度从多个参考样本中获取多个目标参考样本;每个参考样本和待预测数据均包括用户特征域数据和物品特征域数据,待预测数据的用户特征域数据用于指示目标用户特征,待预测数据的物品特征域数据用于指示目标物品特征,每个目标参考样本和待预测数据具有部分相同的用户特征域数据和/或物品特征域数据;根据多个目标参考样本与待预测数据获取待预测数据的目标特征信息;以目标特征信息为输入通过深度神经网络DNN获取输出值;根据输出值确定是否向目标用户推荐目标物品。本申请实施例有利于提高推荐精度。

Description

推荐方法、推荐模型训练方法及相关产品
本申请要求于2021年07月31日提交中国专利局、申请号为202110877429.9、申请名称为“推荐方法、推荐模型训练方法及相关产品”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及人工智能技术领域,具体涉及一种推荐方法、推荐模型训练方法及相关产品。
背景技术
基于表格数据预测用户的行为是一项重要的任务,有着大量的真实应用,比如,在线广告中的点击率(Click-Through-Rate,CTR)预测,推荐系统中的评分预测以及商品排序,诈骗账户检测等等。这些应用场景收集到的数据都以表格式的格式进行存储。表格中的每一行对应一个样本,每个样本的每一列对应一个独特的特征。
从表格式数据中提取有价值的关系或者模式是机器学习系统学习准确的关键。为了更好的利用表格式数据,如何充分挖掘表格式数据行之间以及列之间蕴含的丰富信息就变得至关重要。早期的模型,如逻辑回归,支持向量机以及树模型将行样本作为输入来做预测。深度模型将行样本的类别特征映射成嵌入向量,然后使用单个行样本的特征向量进行用户行为预测。近年来,基于特征交互的模型和基于用户序列的模型成为了表格式数据建模的主流。基于特征交互的模型,致力于对表格式数据中每个行样本的列与列之间的特征进行交互,以充分挖掘用户序列特征去预测用户行为,并基于预测出的用户行为进行推荐。
然而,上述都是孤立的使用单个样本预测用户行为,导致基于预测出的用户行为进行推荐的精度较低。
发明内容
本申请提供了一种推荐方法、推荐模型训练方法及相关产品,通过融合目标参考样本的特征信息进行推荐,提高推荐精度。
第一方面,本申请实施例提供一种推荐方法,包括:获取待预测数据;根据待预测数据和多个参考样本的相似度从多个参考样本中获取多个目标参考样本;每个参考样本和待预测数据均包括用户特征域数据和物品特征域数据,待预测数据的用户特征域数据用于指示目标用户特征,待预测数据的物品特征域数据用于指示目标物品特征,每个目标参考样本和待预测数据具有部分相同的用户特征域数据和/或物品特征域数据;根据多个目标参考样本与待预测数据获取待预测数据的目标特征信息;目标特征信息包括第一目标特征向量组和第二目标特征向量组,第一目标特征向量组为向量化后的待预测数据,第二目标特征向量组为对多个目标参考样本进行向量化后融合得到;以目标特征信息为输入通过深度神经网络DNN获取输出值;根据输出值确定是否向目标用户推荐目标物品。
其中,输出值可以是一个概率值,该概率值反映了目标用户对目标物品进行操作的概率。对于不同的目标物品,目标用户对目标物品进行操作的概率有不同的理解。比如,当目标物 品为应用程序时,目标用户对目标物品进行操作的概率可以理解为目标用户点击应用程序的概率;再如,当目标物品为歌曲时,目标用户对目标物品进行操作的概率可以理解为目标用户喜欢该歌曲的概率;又如,当目标物品为商品时,目标用户对目标物品进行操作的概率可以理解为目标用户购买该商品的概率。
实际应用中,获取了概率值之后,可以对概率值进行后处理,得到输出值。比如,当概率值大于概率阈值时,以1作为输出值;当概率值小于或等于阈值时,则以0作为输出值,其中,0表示目标用户不会操作目标物品,1表示目标用户会操作目标物品。
针对单物品推荐场景来说,当输出值大于阈值时,确定向目标用户推荐目标物品,否则确定不向目标用户推荐该目标物品。此外,当本申请的方案应用到从多个候选物品中选出物品进行推荐的场景时,可以获取每个候选物品对应的输出值;然后,向目标用户推荐输出值最高的候选物品,或者,对多个候选物品的输出值进行排序,将排序靠前的(比如,前十个候选物品)候选物品推荐给目标用户。举例来说,进行歌曲推荐时,可以获取歌曲库中每个候选歌曲的输出值,然后,将输出值排名前十的歌曲推荐给目标用户。
可以看出,本申请中所获取的目标特征信息中除了包含待预测数据本身的特征信息之外,还包含有多个目标参考样本向量化融合之后的特征信息。由于目标参考样本是通过待预测数据与多个参考样本之间的相似度从多个参考样本中选取的,且与待预测数据具有部分相同的用户特征域数据和/或物品特征域数据,因此目标参考样本是多个参考样本中与待预测数据比较相似的参考样本,故目标参考样本中的用户行为可以为目标用户的行为的预测提供参考和经验,从而在使用融合目标参考样本的特征的目标特征信息进行输出值的预测时,可以使预测出的输出值比较精确,基于这个输出值进行物品推荐,提高了推荐的精度。
在一些可能的实施方式中,多个目标参考样本还包括标签数据;第二目标特征向量组为对多个目标参考样本进行向量化后融合得到,具体为:第二目标特征向量组为对多个目标参考样本的用户特征域数据,物品特征域数据以及标签数据进行向量化后融合得到。
其中,目标参考样本的用户特征数据用于表示参考用户特征,目标参考样本的物品特征数据用于表示参考物品特征。由于目标参考样本还携带有标签数据,即参考用户对参考物品的真实操作行为。因此,第二特征向量组包含有参考用户对参考物品的真实操作行为,则在使用目标特征信息对目标用户的行为进行预测时,可以结合参考用户对参考物品的真实操作行为预测目标用户对目标物品的操作行为,得到输出值,使预测出的输出值精度较高,进而提高物品推荐精度。
在一些可能的实施方式中,目标特征信息还包括第三目标特征向量组,第三目标特征向量组为对第一向量组中的目标特征向量进行两两交互得到,第一向量组包括第一目标特征向量组和第二目标特征向量组。
应说明,上述是对第一向量组中的目标特征向量进行两两交互,但在实际应用可以自由的进行两两交互。示例性的,可以对第一目标特征向量组中的多个第一目标特征向量进行两两交互,得到多个第三目标特征向量;或者,对第二目标特征向量组中的多个第二目标特征向量进行两两交互,得到多个第三目标特征向量,等等。
可以看出,在本实施方式中,对第一向量组中的目标特征向量进行两两交互,得到多个第三目标特征向量,从而使目标特征信息中还包含有高阶特征信息,即第三目标特征向量可以表征用户各个行为之间的联系,因此使用更高阶的特征信息进行行为预测,可进一步提高输出值的精度。举例来说,某个第一目标特征向量表示用户的年龄为28岁时,另外一个第一目标特征向量表示用户为男性时,则对这两个目标特征向量进行交互后得到的第三目标特征 向量表示用户是一个28岁的男性。单独使用每个目标特征向量进行预测时,则目标物品满足28岁的人的需求或者满足男性的需求,则认为目标用户有一定的概率去操作这个目标物品,得到的输出值一般会大于概率阈值,而将目标特征向量交互后,则只有当目标物品满足28岁的男性需求时,目标用户才有一定的概率去操作这个目标物品,得到的输出值才会大于概率阈值,因此,使得到的输出值的精度比较高,进一步提高推荐精度。
在一些可能的实施方式中,对第一目标特征向量组中的多个第一目标特征向量进行拼接,得到待预测数据的第二特征向量;对每个目标参考样本的多个第一特征向量进行拼接,得到每个目标参考样本的第二特征向量,每个目标参考样本的多个第一特征向量为对目标参考样本进行向量化得到;获取每个目标参考样本的第二特征向量与待预测数据的第二特征向量之间的相似度;根据每个目标参考样本的第二特征向量与待预测数据的第二特征向量之间的相似度,确定每个目标参考样本的权重;根据每个目标参考样本的权重,对多个目标参考样本在同一个特征域下的第一特征向量进行融合,得到第二目标特征向量组。
可以看出,在本实施方式中,通过注意力机制,从而使多个目标参考样本中与待预测数据关联程度最高的目标参考样本的权重最大,这样融合得到的第二目标特征向量主要指示的特征信息为关联程度最高的目标参考样本的特征信息,尽可能的多使用关联程度最高的目标参考样本指引对目标用户行为的预测,使预测出的目标用户对目标物品进行操作的概率精度更高,进而提高物品推荐的精度。
在一些可能的实施方式中,根据所述待预测数据和多个参考样本的相似度从所述多个参考样本中获取多个目标参考样本之前,方法还包括:获取多个原始样本,其中,每个所述原始样本包括用户特征域数据和物品特征域数据;将所述待预测数据的多个所述用户特征域数据和多个所述物品特征域数据作为元素,对所述多个原始样本进行倒排索引,得到所述多个参考样本。
可选的,首先对多个原始样本进行倒排,得到倒排列表;比如,可以将每个参考样本的用户特征域数据和物品特征域数据作为元素进行倒排,得到如表2所示的倒排列表,比如,倒排列表中的每一行中的第一列为元素,即该多个参考样本下的一个域数据(用户特征域数据或者物品特征域数据),第二列为多个参考样本中包含有该域数据的参考样本。有了倒排列表之后,将待预测数据的每个用户特征域数据和每个物品特征域数据作为元素,对多个原始样本进行索引,得到多个参考样本。即根据倒排列表中的对应关系,可索引出与每个用户特征域数据对应的参考样本,以及与每个物品特征域对应的参考样本;然后,将每个用户特征域数据对应的参考样本,以及与每个物品特征域对应的参考样本进行合并与去重,得到该多个参考样本。例如,待预测数据为[U4、LA、Student、L2、cell phone、B3],将U4、LA、Student、L2、cell phone、B3均作为查询词,从表2所示的倒排列表中获取与LA对应的参考样本为[样本1、样本3],与Student对应的参考样本为[样本1、样本2、样本3],与L2对应的参考样本为[样本3],与cell phone对应的参考样本为[样本3、样本4],与B3对应的参考样本为[样本4]。然后,对从倒排列表中获取到的所有参考样本进行合并与去重,得到多个参考样本,即[样本1、样本2、样本3、样本4]。
可以看出,在本实施方式中,通过倒排对多个原始样本进行排序,得到倒排列表。由于使用了倒排列表,从而可以使用倒排列表从多个原始样本中快速索引出多个参考样本,排除掉一部分不相关的原始样本,这样就可以不用和每个原始样本进行相似度的计算,减轻计算压力,可以快速的筛选出目标参考样本,提高物品推荐的效率。
第二方面,本申请实施例提供一种推荐模型训练方法,推荐模型包括特征信息提取网络 和深度神经网络DNN,方法包括:获取多个训练样本,其中,每个训练样本包括用户特征域数据和物品特征域数据;根据第一训练样本和多个第二训练样本的相似度从多个第二训练样本中获取多个目标训练样本,其中,第一训练样本为多个训练样本中的一个,多个第二训练样本为多个训练样本除第一训练样本之外的部分或全部,第一训练样本的用户特征域数据用于指示第一参考用户特征,第一训练样本的物品特征域数据用于指示第一参考物品特征,第一训练样本和每个目标训练样本具有部分相同的用户特征域数据和/或物品特征域数据;将第一训练样本和多个目标训练样本输入到特征信息提取网络,得到第一训练样本的目标特征信息,其中,目标特征信息包括第四目标特征向量组和第五目标特征向量组,第四目标特征向量组为通过特征信息提取网络对第一训练样本进行向量化得到,第五目标特征向量组为通过特征信息提取网络对多个目标训练样本进行向量化后融合得到;将目标特征信息输入到深度神经网络DNN,得到输出值,输出值用于表征第一参考用户对第一参考物品进行操作的概率;根据输出值以及第一训练样本的标签数据进行推荐模型的训练,获得目标推荐模型。
应说明,将第一训练样本以及多个目标训练样本输入到推荐模型的特征信息提取网络,构造信息更丰富的目标特征信息,使目标特征信息中既包含有第一训练样本的特征信息,即多个第四目标特征向量,还包含有多个目标训练样本向量化后融合的特征信息,即多个第五目标特征向量,并且目标训练样本是通过第一训练样本与多个第二训练样本之间的相似度从多个第二训练样本中选取的,因此目标训练样本是与第一训练样本比较相似的训练样本,从而在使用第一训练样本的目标特征信息进行模型训练时,可以参考多个目标训练样本向量化后融合的特征信息(即先验知识)进行用户行为预测,得到输出值,使预测出的输出值更加精确,从而使训练过程中得到的损失比较小,模型更容易收敛;此外,由于参考了多个目标训练样本的用户特征信息,使模型能够记住更丰富的用户特征信息,从而使训练出模型精度较高,鲁棒性比较强。
在一些可能的实施方式中,第五目标特征向量组为对多个目标训练样本进行向量化后融合得到,具体为:第五目标特征向量组为通过特征信息提取网络对多个目标训练样本的用户特征域数据、物品特征域数据以及标签数据进行向量化后融合得到。
可以看出,在本实施方式中,目标训练样本携带有标签数据,由于每个目标训练样本的标签数据反映了每个目标训练样本中的用户对物品的真实操作行为。因此,使用目标特征信息对目标用户的行为进行预测时,可以结合目标训练样本中的用户对物品的真实操作行为,去预测第一训练样本中的第一参考用户对第一参考物品进行操作的概率,从而使预测出的输出值的精度较高,由于预测的输出值精度较高,使训练过程中得到的损失比较小,缩短模型训练周期,提高模型收敛速度。
在一些可能的实施方式中,目标特征信息还包括第六目标特征向量组,第六目标特征向量组是通过特征信息提取网络对第二向量组中的目标特征向量进行两两交互得到,第二向量组包括第四目标特征向量组和第五目标特征向量组。
可以看出,在本实施方式中,对第二向量组中的目标特征向量进行两两交互,得到多个第六目标特征向量,从而使目标特征信息中还包含有高阶特征信息,即第六目标特征向量可以表征第一参考用户的高阶特征,因此使用高阶特征进行行为预测,可进一步提高对用户行为的预测精度,进一步提高模型收敛速度。举例来说,某个第四目标特征向量表示用户的年龄为28岁时,另外一个第四目标特征向量表示用户为男性时,则对这两个第四目标特征向量进行交互后得到的第六目标特征向量表示用户是一个28岁的男性。单独使用每个第四目标特征向量进行预测时,则物品满足28岁的人的需求或者满足男性的需求,则认为用户有一定的 概率去操作这个物品,而将目标特征向量交互后,则只有当物品满足28岁的男性需求时,用户才有一定的概率去操作这个物品,从而提高了对用户行为的预测精度。
在一些可能的实施方式中,融合包括:对第四目标特征向量组中的多个第四目标特征向量进行拼接,得到第一训练样本的第二特征向量;对每个目标训练样本的多个第一特征向量进行拼接,得到每个目标训练样本的第二特征向量,每个目标训练样本的多个第一特征向量为对目标训练样本进行向量化得到;获取每个目标训练样本的第二特征向量与第一训练样本的第二特征向量之间的相似度;根据每个目标训练样本的第二特征向量与第一训练样本的第二特征向量之间的相似度,确定每个目标训练样本的权重;根据每个目标训练样本的权重,对多个目标训练样本在同一个特征域下的第一特征向量进行融合,得到第五目标特征向量组。
可以看出,通过注意力机制,从而使多个目标训练样本中与第一训练样本关联程度最高的目标训练样本的权重最大,这样融合得到的第五目标特征向量主要指示的特征信息为该目标训练样本的特征信息,从而尽可能的多使用关联程度最高的目标训练样本指引对第一参考用户行为的预测,从而使预测出的第一参考用户对第一参考物品进行操作的概率精度更高,提高了模型收敛速度。
在一些可能的实施方式中,根据第一训练样本和多个第二训练样本的相似度从所述多个第二训练样本中获取多个目标训练样本之前,方法还包括:将所述第一训练样本的多个所述用户特征域数据和多个所述物品特征域数据作为元素,对所述多个训练样本进行倒排索引,得到所述多个第二训练样本。
可选的,基于每个训练样本的用户特征域数据和物品特征域数据对多个训练样本进行倒排列表,其中,倒排列表包含有元素和样本之间的对应关系,如表2所示,倒排列表中的每一行中的第一列为元素,即样本下的一个域数据(用户特征域数据或者物品特征域数据),第二列为多个参考样本中包含有该域数据的参考样本。有了倒排列表之后,将第一训练样本中的每个用户特征域数据和每个物品特征域数据作为元素从多个训练样本中索引出多个第二训练样本,即根据倒排列表中的对应关系,可获取与每个用户特征域数据对应的训练样本,以及与每个物品特征域对应的训练样本;然后,将每个用户特征域数据对应的训练样本,以及与每个物品特征域对应的训练样本进行合并与去重,得到该多个第二训练样本。
可以看出,在本实施方式中,通过倒排索引对多个训练样本进行排序,得到倒排列表。由于使用了倒排列表,从而可以使用倒排列表快速的找到多个第二训练样本,不用和每个训练样本计算相似度,减轻了计算压力,可以快速从多个第二训练样本中获取出多个目标训练样本,提高模型训练速度。
第三方面,本申请实施例提供了一种推荐装置,包括:获取单元和处理单元;获取单元,用于获取待预测数据;处理单元,用于根据待预测数据和多个参考样本的相似度从多个参考样本中获取多个目标参考样本;每个参考样本和待预测数据均包括用户特征域数据和物品特征域数据,待预测数据的用户特征域数据用于指示目标用户特征,待预测数据的物品特征域数据用于指示目标物品特征,每个目标参考样本和待预测数据具有部分相同的用户特征域数据和/或物品特征域数据;根据多个目标参考样本与待预测数据获取待预测数据的目标特征信息;目标特征信息包括第一目标特征向量组和第二目标特征向量组,第一目标特征向量组为向量化后的待预测数据,第二目标特征向量组为对多个目标参考样本进行向量化后融合得到;以目标特征信息为输入通过深度神经网络DNN获取输出值;根据输出值确定是否向目标用户推荐目标物品。
在一些可能的实施方式中,多个目标参考样本还包括标签数据;第二目标特征向量组为 对多个目标参考样本进行向量化后融合得到,具体为:第二目标特征向量组为对多个目标参考样本的用户特征域数据,物品特征域数据以及标签数据进行向量化后融合得到。
在一些可能的实施方式中,目标特征信息还包括第三目标特征向量组,第三目标特征向量组为对第一向量组中的目标特征向量进行两两交互得到,第一向量组包括第一目标特征向量组和第二目标特征向量组。
在一些可能的实施方式中,在处理单元进行融合方面,处理单元,具体用于:对第一目标特征向量组中的多个第一目标特征向量进行拼接,得到待预测数据的第二特征向量;对每个目标参考样本的多个第一特征向量进行拼接,得到每个目标参考样本的第二特征向量,每个目标参考样本的多个第一特征向量为对目标参考样本进行向量化得到;获取每个目标参考样本的第二特征向量与待预测数据的第二特征向量之间的相似度;根据每个目标参考样本的第二特征向量与待预测数据的第二特征向量之间的相似度,确定每个目标参考样本的权重;根据每个目标参考样本的权重,对多个目标参考样本在同一个特征域下的第一特征向量进行融合,得到第二目标特征向量组。
在所述处理单元根据所述待预测数据和多个参考样本的相似度从所述多个参考样本中获取多个目标参考样本之前,所述处理单元,还用于:获取多个原始样本,其中,每个所述原始样本包括用户特征域数据和物品特征域数据;
将所述待预测数据的多个所述用户特征域数据和多个所述物品特征域数据作为元素,对所述多个原始样本进行倒排索引,得到所述多个参考样本。
第四方面,本申请实施例提供了一种推荐模型训练装置,推荐模型包括特征信息提取网络和深度神经网络DNN,装置包括:获取单元和处理单元;获取单元,用于获取多个训练样本,其中,每个训练样本包括用户特征域数据和物品特征域数据;处理单元,用于根据第一训练样本和多个第二训练样本的相似度从多个第二训练样本中获取多个目标训练样本,其中,第一训练样本为多个训练样本中的一个,多个第二训练样本为多个训练样本除第一训练样本之外的部分或全部,第一训练样本的用户特征域数据用于指示第一参考用户特征,第一训练样本的物品特征域数据用于指示第一参考物品特征,第一训练样本和每个目标训练样本具有部分相同的用户特征域数据和/或物品特征域数据;将第一训练样本和多个目标训练样本输入到特征信息提取网络,得到第一训练样本的目标特征信息,其中,目标特征信息包括第四目标特征向量组和第五目标特征向量组,第四目标特征向量组为通过特征信息提取网络对第一训练样本进行向量化得到,第五目标特征向量组为通过特征信息提取网络对多个目标训练样本进行向量化后融合得到;将目标特征信息输入到深度神经网络DNN,得到输出值,输出值用于表征第一参考用户对第一参考物品进行操作的概率;根据输出值以及第一训练样本的标签数据进行推荐模型的训练,获得目标推荐模型。
在一些可能的实施方式中,第五目标特征向量组为对多个目标训练样本进行向量化后融合得到,具体为:第五目标特征向量组为通过特征信息提取网络对多个目标训练样本的用户特征域数据、物品特征域数据以及标签数据进行向量化后融合得到。
在一些可能的实施方式中,目标特征信息还包括第六目标特征向量组,第六目标特征向量组是通过特征信息提取网络对第二向量组中的目标特征向量进行两两交互得到,第二向量组包括第四目标特征向量组和第五目标特征向量组。
在一些可能的实施方式中,在处理单元进行融合方面,处理单元,具体用于:对第四目标特征向量组中的多个第四目标特征向量进行拼接,得到第一训练样本的第二特征向量;对每个目标训练样本的多个第一特征向量进行拼接,得到每个目标训练样本的第二特征向量, 每个目标训练样本的多个第一特征向量为对目标训练样本进行向量化得到;获取每个目标训练样本的第二特征向量与第一训练样本的第二特征向量之间的相似度;根据每个目标训练样本的第二特征向量与第一训练样本的第二特征向量之间的相似度,确定每个目标训练样本的权重;根据每个目标训练样本的权重,对多个目标训练样本在同一个特征域下的第一特征向量进行融合,得到第五目标特征向量组。
在一些可能的实施方式中,在所述处理单元根据所述待预测数据和多个参考样本的相似度从所述多个参考样本中获取多个目标参考样本之前,所述处理单元,还用于:
将每个训练样本的每个用户特征域数据和每个物品特征域数据作为元素,对多个训练样本进行倒排索引,得到倒排列表;将第一训练样本的每个用户特征域数据和每个物品特征域数据作为查询词,从倒排列表中获取多个第二训练样本。
在一些可能的实施方式中,在所述处理单元根据第一训练样本和多个第二训练样本的相似度从所述多个第二训练样本中获取多个目标训练样本之前,所述处理单元,还用于:
将所述第一训练样本的多个所述用户特征域数据和多个所述物品特征域数据作为元素,对所述多个训练样本进行倒排索引,得到所述多个第二训练样本。
第五方面,本申请实施例提供了一种电子设备,包括:存储器,用于存储程序;处理器,用于执行存储器存储的程序;当存储器存储的程序被执行时,处理器用于实现上述第一方面或第二方面中的方法。
第六方面,本申请实施例提供了提供一种计算机可读介质,该计算机可读介质存储用于设备执行的程序代码,该程序代码包括用于实现上述第一方面或第二方面中的方法。
第七方面,本申请实施例提供了提供一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机实现上述第一方面或第二方面中的方法。
第八方面,本申请实施例提供了提供一种芯片,该芯片包括处理器与数据接口,处理器通过数据接口读取存储器上存储的指令,实现上述第一方面或第二方面中的方法。
可选地,作为一种实现方式,芯片还可以包括存储器,存储器中存储有指令,处理器用于执行存储器上存储的指令,当指令被执行时,处理器用于实现上述第一方面或第二方面中的方法。
附图说明
图1为本申请实施例提供的一种人工智能主体框架示意图;
图2为本申请实施例提供的一种系统架构的示意图;
图3为本申请实施例提供的一种芯片硬件结构图;
图4为本申请实施例提供的一种推荐方法的流程示意图;
图5为本申请实施例提供的一种特征向量交互与拼接的示意图;
图6为本申请实施例提供的一种模型的结构图;
图7为本申请实施例提供的一种推荐模型训练方法的流程示意图;
图8为本申请实施例提供的一种用户行为预测流程比对图;
图9为本申请实施例提供的一种应用程序推荐的示意图;
图10为本申请实施例提供的一种商品推荐的示意图;
图11为本申请实施例提供的一种歌曲推荐的示意图;
图12为本申请实施例提供的一种推荐装置的结构图;
图13为本申请实施例提供的一种推荐模型训练装置的结构图;
图14为本申请实施例提供的一种电子设备的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参阅图1,图1为本申请实施例提供的一种人工智能主体框架示意图。该主体框架描述了人工智能系统总体工作流程,适用于通用的人工智能领域需求。
下面从“智能信息链”(水平轴)和“IT价值链”(垂直轴)两个维度对上述人工智能主题框架进行阐述。
“智能信息链”反映从数据的获取到处理的一列过程。举例来说,可以是智能信息感知、智能信息表示与形成、智能推理、智能决策、智能执行与输出的一般过程。在这个过程中,数据经历了“数据—信息—知识—智慧”的凝练过程。
“IT价值链”从人智能的底层基础设施、信息(提供和处理技术实现)到系统的产业生态过程,反映人工智能为信息技术产业带来的价值。
(1)基础设施:
基础设施为人工智能系统提供计算能力支持,实现与外部世界的沟通,并通过基础平台实现支撑。通过传感器与外部沟通;计算能力由智能芯片提供,比如,智能芯片可以为中央处理器(central processing unit,CPU)、神经网络处理器(Neural-network Processing Unit,NPU)、图形处理器(英语:graphics processing unit,缩写:GPU)、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA)等硬件加速芯片;基础平台包括分布式计算框架及网络等相关的平台保障和支持,可以包括云存储和计算、互联互通网络等。举例来说,传感器和外部沟通获取数据,这些数据提供给基础平台提供的分布式计算系统中的智能芯片进行计算。
(2)数据:
基础设施的上一层的数据用于表示人工智能领域的数据来源。数据涉及到图形、图像、语音、文本,还涉及到传统设备的物联网数据,包括已有系统的业务数据以及力、位移、液位、温度、湿度等感知数据。
(3)数据处理:
数据处理通常包括数据训练,机器学习,深度学习,搜索,推理,决策等方式。
其中,机器学习和深度学习可以对数据进行符号化和形式化的智能信息建模、抽取、预处理、训练等。
推理是指在计算机或智能系统中,模拟人类的智能推理方式,依据推理控制策略,利用形式化的信息进行机器思维和求解问题的过程,典型的功能是搜索、匹配以及预测。
决策是指智能信息经过推理后进行决策的过程,通常提供分类、排序、预测等功能。
(4)通用能力:
对数据经过上面提到的数据处理后,进一步基于数据处理的结果可以形成一些通用的能力,比如可以是算法或者一个通用系统,例如,翻译,文本的分析,用户行为预测,计算机 视觉的处理,语音识别,图像的识别等等。
(5)智能产品及行业应用:
智能产品及行业应用指人工智能系统在各领域的产品和应用,是对人工智能整体解决方案的封装,将智能信息决策产品化、实现落地应用,其应用领域主要包括:智能制造、智能交通、智能家居、智能医疗、智能安防、自动驾驶,智能终端等。
参阅图2,图2为本申请实施例提供的一种系统架构200的示意图。数据采集设备260用于采集包括用户特征域数据、物品特征域数据以及标签数据的多域离散数据,即训练样本,并将训练样本存入数据库230,训练设备220基于数据库230中维护的训练样本生成模型/规则201。下面将更详细地描述训练设备220如何基于训练样本得到模型/规则201,模型/规则201能够对待预测数据进行处理,得到输出值,即目标用户对目标物品进行操作的概率,以便根据输出值确定是否向目标用户推荐目标物品。
训练设备220得到的模型/规则可以应用不同的系统或设备中。在附图2中,执行设备210配置有I/O接口212,与外部设备进行数据交互,“用户”可以通过客户设备240向I/O接口212输入数据,比如,可以通过客户设备240向I/O接口212输入待预测数据,其中,待预测数据中包括用户特征域数据和物品特征域数据,“用户”向执行设备210输入待预测数据的目的是获取输出值,以得到目标用户对目标物品进行操作的概率。
执行设备210可以调用数据存储系统250中存储的数据、代码等,也可以将数据、指令等存入数据存储系统250中。其中,数据存储系统250中存储有大量的参考样本,参考样本可以是数据库230中维护的训练样本,即数据库230可以将数据迁移到数据存储系统250;
关联功能模块213对待预测数据进行分析,从数据存储系统250中维护的参考样本中查询出多个目标参考样本;
计算模块211使用模型/规则201对关联功能模块213查询出的多个目标参考样本以及待预测数据进行处理。具体的,计算模块211调用模型/规则201对多个目标参考样本进行向量化后融合,以及对待预测数据进行向量化处理,得到待预测数据的目标特征信息,并根据目标特征信息得到输出值;
最后,计算模块211通过I/O接口212将输出值返回给客户设备240,从而使客户设备240获取到目标用户对目标物品进行操作的概率。
更深层地,训练设备220可以针对不同的目的,基于不同的数据生成相应的模型/规则201,以给用户提供更佳的结果。
在图2中所示的情况下,用户可以手动指定输入执行设备210中的数据,例如,在I/O接口212提供的界面中操作。另一种情况下,客户设备240可以自动地向I/O接口212输入数据并获得结果,如果客户设备240自动输入数据需要获得用户的授权,用户可以在客户设备240中设置相应权限。用户可以在客户设备240查看执行设备210输出的结果,具体的呈现形式可以是显示、声音、动作等具体方式。客户设备240也可以作为数据采集端将采集到数据存入数据库230。
值得注意的是,图2仅是本发明实施例提供的一种系统架构的示意图,图2中所示设备、器件、模块等之间的位置关系不构成任何限制,例如,在图2中,数据存储系统250相对执行设备210是外部存储器,在其它情况下,也可以将数据存储系统250置于执行设备210中。
参阅图3,图3是本申请实施例提供的一种芯片硬件结构图。神经网络处理器 (Neural-network Processing Unit,NPU)30作为协处理器挂载到主中央处理器(Central Processing Unit,CPU)上,由主CPU分配任务。NPU的核心部分为运算电路303,控制器304控制运算电路303提取存储器(权重存储器302或输入存储器301)中的数据并进行运算。
在一些实现中,运算电路303内部包括多个处理单元(Process Engine,PE)。
在一些实现中,运算电路303是二维脉动阵列。运算电路303还可以是一维脉动阵列或者能够执行例如乘法和加法这样的数学运算的其它电子线路。
在一些实现中,运算电路303是通用的矩阵处理器。
举例来说,假设有输入矩阵A,权重矩阵B,输出矩阵C。运算电路303从权重存储器302中取权重矩阵B,并缓存在运算电路303中每一个PE上。运算电路303从输入存储器301中取输入矩阵A与权重矩阵B进行矩阵运算,得到的矩阵的部分结果或最终结果,保存在累加器(accumulator)308中。
向量计算单元307可以对运算电路303的输出做进一步处理,如向量乘,向量加,指数运算,对数运算,大小比较等等。例如,向量计算单元307可以用于神经网络中非卷积/非(Fully Connected Layers,FC)层的网络计算,如池化(Pooling),批归一化(Batch Normalization),局部响应归一化(Local Response Normalization)等。
在一些实现中,向量计算单元307将经处理的向量存储到统一缓存器306。例如,向量计算单元307可以将非线性函数应用到运算电路303的输出,例如累加值的向量,用以生成激活值。在一些实现中,向量计算单元307生成归一化的值、合并值,或二者均有。在一些实现中,处理过的向量能够用作到运算电路303的激活输入,例如用于在神经网络中的后续层中的使用。
示例性的,对于本申请来说,运算电路303从输入存储器301中获取待预测数据,从统一存储器306中获取目标参考样本;然后,运算电路303根据待预测数据以及对目标参考样本获取待预测数据的目标特征信息,并根据目标特征信息得到输出值,即目标用户对目标物品进行操作的概率。
统一存储器306用于存放输入数据(比如,待预测数据)以及输出数据(比如,输出值)。
存储单元访问控制器(Direct Memory Access Controller,DMAC)305将外部存储器中的输入数据搬运到输入存储器301和/或统一存储器306、将外部存储器中的权重数据存入权重存储器302,以及将统一存储器306中的数据存入外部存储器。
总线接口单元(Bus Interface Unit,BIU)310,用于通过总线实现主CPU、DMAC和取指存储器309之间进行交互。
取指存储器(instruction fetch buffer)309,用于存储控制器304使用的指令;
控制器304用于调用取指存储器309中缓存的指令,实现控制运算电路303的工作过程。
一般地,统一存储器306,输入存储器301,权重存储器302以及取指存储器309均为片上(On-Chip)存储器,外部存储器为NPU外部的存储器,外部存储器可以为双倍数据率同步动态随机存储器(Double Data Rate Synchronous Dynamic Random Access Memory,DDR SDRAM)、高带宽存储器(High Bandwidth Memory,HBM)或其他可读可写的存储器。
为了便于理解本申请,下面介绍与本申请相关的概念。
表格式数据(Tabular Data),又称为多域离散数据(Multi-Field Categorical Data),如表1所示,表格式数据中的每行为一个数据点(又称作一个样本),每列代表一个特征(又称作一个域,也可称作特征域),则每个样本包含有多个特征域;并且,样本在每个特征域下的取值 称为特征域数据,也可称为域值。比如,表1中的LA、NYC、LA、London分别为样本1、样本2、样本3以及样本4在城市这个特征域下的域值。
表1:
样本 用户ID 城市 身份 物品ID 种类 商标
样本1 U1 LA Student L1 T-shirt B1
样本2 U2 NYC Student L1 T-shirt B1
样本3 U1 LA Student L2 cell phone B2
样本4 U3 London manager L3 cell phone B3
当表格式数据用于预测用户行为时,则每个样本的特征域包括用户特征域和物品特征域,且在用户特征域下的域值称为用户特征域数据,在物品特征域下的域值称为物品特征域数据。一般来说,用户特征域数据包括用户的属性信息和用户的行为序列(可选的),其中,用户的属性信息包括用户的标识(ID)、居住地、身份、性别、年龄,等其他基本信息,物品特征域数据包括物品的ID、种类、商标、尺寸、颜色,等其他基本信息;用户的行为序列包括用户的历史行为,比如,用户过去点击、浏览、购买过的物品,等等。
参阅图4,图4为本申请实施例提供的一种推荐方法的流程示意图。该方法包括以下步骤内容:
401:获取待预测数据。
待预测数据为多域离散数据,且待预测数据包含有用户特征域数据和物品特征域数据。
可选的,待预测数据的用户特征域数据用于指示目标用户特征。示例性的,该用户特征域数据包括目标用户的属性信息,比如,目标用户的ID、年龄、性别、居住地、户籍地,等其他基本信息;
可选的,待预测数据的物品特征域数据用于指示目标物品特征。其中,目标物品可以为商品、应用程序、歌曲、网页,等与用户相关的物品。对于不同的目标物品,目标物品特征域数据可以有不同的表现。比如,目标物品为应用程序,则目标物品特征域数据包括应用程序的类型、安装大小、访问热度、安装次数,等等;再如,目标物品为歌曲,则目标物品特征域数据包括歌曲的风格、节奏、时长、播放次数、播放热度,等等;又如,目标物品为商品,目标物品特征域数据包括商品的颜色、尺寸、价格、商标、生产厂家、评价,等等。
可选的,待预测数据的用户特征域数据中还可以包含目标用户的行为序列,比如,目标用户的行为序列包括目标用户过去点击、浏览、购买过的物品,等等。
402:根据待预测数据和多个参考样本的相似度从多个参考样本中获取多个目标参考样本。
示例性的,获取待预测数据和多个参考样本中每个参考样本之间的相似度,根据待预测数据和每个参考样本之间的相似度,从多个参考样本中获取出多个目标参考样本。
其中,每个参考样本也为多域离散数据,每个参考样本也包括用户特征域数据和物品特征域数据。其中,每个参考样本的用户特征域数据用于指示参考用户特征,物品特征域数据用于指示参考物品特征。与待预测数据类似的,每个参考样本的用户特征域数据包含参考用户的属性信息,物品特征域数据包含参考物品的属性信息,比如,颜色、形状、价格,等其他信息,不再叙述。
其中,每个目标参考样本和待预测数据具有部分相同的用户特征域数据和/或物品特征域数据。应说明,为了确保目标参考样本对待预测数据真正的具有参考作用,需要使每个目标参考样本和待预测数据具有部分相同的用户特征域数据和物品特征域数据。举例来说,如果 目标参考样本和待预测数据只是具有部分相同的用户特征域数据,比如,都是男性,这种目标参考样本对待预测数据的行为预测并不具有参考价值;又或者,目标参考样本和待预测数据只是具有部分相同的物品特征域数据,比如,购买的物品都是黑色,这种目标参考样本对待预测数据的行为预测也是不具有参考价值。因此,在实际应用中,所获得的目标参考样本和待预测数据相比,需要同时具有部分相同的用户特征域数据和物品特征域数据。
一般来说,每个参考样本包含的用户特征域数据和待预测数据包含的用户特征域数据不完全相同,而每个参考样本包含的物品特征域数据与待预测数据包含的物品域特征数据可以完全相同。
应说明,多个参考样本可以按照表1示出的方式预先存储好,形成表格式数据,也可以自由存储,只要这些参考样本的多个特征域和待预测数据的多个特征域相同即在本申请的保护范围内,不限定对多个参考样本的存储方式。
示例性的,该多个参考样本可以为样本库中的多个原始样本,也可以是从多个原始样本中选出的样本,其中,每个原始样本也为多域离散数据,与待预测数据类似的,每个原始样本也包括用户特征域数据和物品特征域数据,不再叙述。
可选的,若多个参考样本是从多个原始样本中选出的,则为了从多个原始样本中快速获取到多个参考样本,可对多个原始样本进行倒排索引,得到倒排列表,基于倒排列表获取多个参考样本。
示例性的,将每个原始样本的每个用户特征域数据和每个物品特征域数据均作为元素(item),以及将每个原始样本作为文档(document),对多个原始样本进行倒排索引,得到倒排列表。由于本申请只需要从多个原始样本中获取多个参考样本,不关注元素在文档中出现的次数和其他信息,因此本申请中的倒排列表可以只包含有元素和文档的对应关系。
因此,通过倒排索引可以将表1示出的多个原始样本转化为表2所示的倒排列表:
表2:
元素 文档
U1 样本1、样本3
U2 样本2
U3 样本4
LA 样本1、样本3
NYC 样本2
London 样本4
Student 样本1、样本2、样本3
L1 样本1、样本2
L2 样本3
L3 样本4
T-shirt 样本1、样本2
cell phone 样本3、样本4
B1 样本1、样本2
B2 样本3
B3 样本4
然后,将待预测数据的每个用户特征域数据和每个物品特征域数据均作为元素,从倒排 列表中索引出与待预测数据对应的多个参考样本。即从倒排列表中索引出与待预测数据的每个用户特征域数据对应的参考样本,以及与每个物品特征域对应的参考样本;然后将索引出的所有参考样本进行合并与去重,得到多个参考样本。因此,每个参考样本与待预测数据相比,至少在一个相同特征域下的域数据相同,比如,在同一个用户特征域下的域数据相同,比如,居住在同一个城市。
举例来说,待预测数据为[U4、LA、Student、L2、cell phone、B3],将U4、LA、Student、L2、cell phone、B3均作为查询词,从倒排列表中索引出与LA对应的参考样本[样本1、样本3],与Student对应的参考样本[样本1、样本2、样本3],与L2对应的参考样本为[样本3],与cell phone对应的参考样本[样本3、样本4],与B3对应的参考样本[样本4]。然后,对所有的参考样本进行合并与去重之后,得到多个参考样本[样本1、样本2、样本3、样本4]。
可以看出,通过倒排的方式先对原始样本进行存储,从而可以先从多个原始样本中索引出一部分原始样本作为多个参考样本,这样后续只需要计算待预测数据和多个参考样本的相似度,而不用计算和多个原始样本的相似度,减轻计算压力,从而可以快速获取出多个目标参考样本。
进一步的,得到多个参考样本之后,可获取待预测数据与每个参考样本之间的相似度。可选的,通过BM25算法获取待预测数据与每个参考样本之间的相似度,不再叙述。
示例性的,将相似度大于阈值的参考样本作为目标参考样本,得到多个目标参考样本,或者,按照相似度从高到低的顺序从多个参考样本中选取预设数量的参考样本,作为多个目标参考样本。
403:根据多个目标参考样本与待预测数据获取待预测数据的目标特征信息。
可选的,目标特征信息包括第一目标特征向量组和第二目标特征向量组,其中,第一目标特征向量组为向量化后的待预测数据,第二目标特征向量组为对多个目标参考样本进行向量化后融合得到。
示例性的,对待预测数据进行向量化,得到第一目标特征向量组,其中,第一目标特征向量组包括多个第一目标特征向量。
可选的,对待预测数据的每个用户特征域数据和每个物品特征域数据均进行编码,得到待预测数据的特征向量。对待预测数据的每个用户特征域数据和每个物品特征域数据均进行编码可以理解为将待预测样本待预测数据的每个用户特征域数据和每个物品特征域数据均进行数字化处理,得到待预测数据的特征向量;然后,对待预测数据的特征向量进行映射处理,得到多个目标第一特征向量,其中,每个第一目标特征向量用于表示待预测数据的一个特征域数据,即将待预测数据中每个特征域数据的编码结果进行映射,得到与该特征域数据对应的第一目标特征向量。
应说明,若待预测数据中包含有目标用户的行为序列,则将目标用户的行为序列进行编码,并将编码结果进行映射,得到映射结果;然后,将用户行为序列对应的映射结果进行融合,得到一个与目标用户的行为序列对应的第一目标特征向量,该第一目标特征向量用于表示目标用户的行为序列。
可选的,获取多个第一目标特征向量可以通过目标推荐模型实现,后面详细描述目标推荐模型的训练过程,在此不做过多描述。
具体的,目标推荐模型包括特征信息提取网络和深度神经网络(Deep Neural Networks,DNN),其中,该DNN可以为多层感知器(Multi-Layer Perceptron,MLP),并且本申请中以DNN为MLP为例进行说明,不再赘述。其中,该特征信息提取网络包括编码层和映射层 (embedding layer)。将该待预测数据输入到编码层对待预测数据的每个用户特征域数据和每个物品特征域数据均进行编码,得到待预测数据的特征向量(c 1,c 2,c 3,…,c n),其中,c 1,c 2,c 3,…,c n分别表示待预测数据的第1个,第2个,第3个,…,第n个特征域数据的编码结果;然后,将特征向量(c 1,c 2,c 3,…,c n)输入到映射层进行映射,得到多个第一目标特征向量(e 1,e 2,e 3,…,e n),即将待预测数据的第1个,第2个,第3个,…,第n个特征域数据的编码结果分别进行映射,得到多个第一目标特征向量(e 1,e 2,e 3,…,e n)。
针对参考样本来说,可以携带标签数据也可以不携带标签数据。下面分别叙述参考样本携带有标签和不携带标签数据获取第二目标特征向量组的过程。
针对不携带标签数据的情况:
示例性的,对每个目标参考样本进行向量化,得到每个目标参考样本的多个第一特征向量。可选的,对每个目标参考样本的每个用户特征域数据和每个物品特征域数据均进行编码,得到每个目标参考样本的特征向量;对每个目标参考样本的特征向量进行映射处理,得到每个目标参考样本的多个第一特征向量,其中,每个第一特征向量用于表示该目标参考样本的一个特征域数据。
然后,对多个目标参考样本的第一特征向量进行融合,得到第二目标特征向量组,其中,第二目标特征向量组包括多个第二目标特征向量。
示例性的,根据待预测数据的多个第一目标特征向量以及每个目标参考样本的多个第一特征向量,确定每个目标参考样本对应的权重;根据多个目标参考样本的多个权重,对多个目标参考样本在同一个特征域下的第一特征向量进行融合,得到多个第二目标特征向量。
具体的,将待预测数据的多个第一目标特征向量进行拼接,得到待预测数据的第二特征向量;将每个目标参考样本的多个第一特征向量进行拼接,得到每个目标参考样本的第二特征向量;获取待预测数据的第二特征向量与每个目标参考样本的第二特征向量之间的相似度,得到与多个目标参考样本对应的多个相似度,其中,相似度可以为欧氏距离、余弦相似度,等等;然后,对多个目标参考样本的多个相似度进行归一化处理,并将每个目标参考样本对应的归一化结果作为每个目标参考样本的权重。因此,目标参考样本中的第i个目标参考样本的权重可以通过公式(1)表示:
Figure PCTCN2022109297-appb-000001
其中,a i为第i个目标参考样本的权重,q为待预测数据的第二特征向量,r i为第i个目标参考样本的第二特征向量,similarity(q,e i)为第i个目标参考样本的第二特征向量与待预测数据的第二特征向量之间的相似度,k为多个目标参考样本的数量。
可选的,根据每个目标参考样本的权重,对多个目标参考样本在任意一个相同特征域下的第一特征向量(即每个目标参考样本在该特征域下对应一个第一特征向量)进行融合,即加权处理,得到该特征域下的第二目标特征向量;然后,对多个目标参考样本中在每个相同域下的第一特征向量分别进行融合,得到多个第二目标特征向量,所以多个第二目标特征向量的数量与目标参考样本的特征域的数量相同。示例性的,多个第二目标特征向量中的第j个第二目标特征向量可以通过公式(2)表示:
Figure PCTCN2022109297-appb-000002
其中,R j为第j个第二目标特征向量,e ij为第i个目标参考样本的第j个第一特征向量,j的取值为1到n的整数,n为每个目标参考样本的多个第一特征向量的数量,即每个目标参考样本的特征域的数量,也是多个第二目标特征向量的数量。
可选的,由于已经将每个目标参考样本的多个第一特征向量进行拼接,得到了每个目标 参考样本的第二特征向量。因此,在得到每个目标参考样本的第二特征向量之后,可以使用每个目标参考样本的权重对多个目标参考样本的多个第二特征向量直接进行融合,即加权处理,得到一个融合后的特征向量;然后,按照对每个目标参考样本的多个第一特征向量进行拼接的反顺序,对融合后的特征向量进行拆分,得到多个第二目标特征向量。
应理解,在对待预测数据的多个第一特征向量以及每个目标参考样本的第一特征向量进行拼接时,并不限定对多个第一特征向量进行拼接的顺序,但是需要保证对待预测数据的多个第一目标特征向量的拼接顺序和对每个目标参考样本的多个第一特征向量的拼接顺序是一致的。
可选的,获取多个第二目标特征向量也可以通过上述的目标推荐模型实现。
示例性的,将每个目标参考样本的用户特征域数据和物品特征域数据输入到编码层对每个目标参考样本进行编码,得到每个目标参考样本的特征向量,比如,第i个目标参考样本的特征向量为(r i1,r i2,r i3,…,r in),i的取值为1到k,k为多个目标参考样本的数量;然后,将每个目标参考样本的特征向量输入到嵌入层对每个目标参考向量的特征向量进行映射处理,得到每个目标参考样本的多个第一特征向量,比如,第i个目标参考样本的多个第一特征向量为(e i1,e i2,e i3,…,e in);可选的,特征信息提取网络还包括注意力层,将每个目标参考样本的多个第一特征向量以及待预测数据的多个第一目标特征向量(e 1,e 2,e 3,…,e n)输入到注意力层,将(e 1,e 2,e 3,…,e n)进行拼接得到待预测数据的第二特征向量,即
Figure PCTCN2022109297-appb-000003
将每个目标参考样本的第一特征向量进行拼接,得到每个目标参考样本的第二特征向量,比如,第i个目标参考样本的第二特征向量为
Figure PCTCN2022109297-appb-000004
然后,基于待预测数据的第二特征向量以及每个目标参考样本的第二特征向量,确定每个目标参考样本的权重;最后,基于每个目标参考样本的权重对多个目标参考样本的第一特征向量进行融合,得到多个第二目标特征向量,即(a 1*e 11+a 2*e 21+…+a k*e k1,a 1*e 12+a 2*e 22+…+a k*e k2,…,a 1*e 1n+a 2*e 2n+…+a k*e kn),其中,该多个第二目标特征向量还可以简化表示为:(e n+1,e n+2,e n+3,…,e 2n)。
针对携带标签数据的情况:
示例性的,每个参考样本还携带有标签数据,该标签数据用于表征参考样本中的参考用户对参考物品的实际操作情况,比如,参考物品为应用程序时,该标签用于表征参考用户是否点击了该应用程序。因此,在对每个目标参考样本进行向量化,得到每个目标参考样本的多个第一特征向量过程中,除了将每个目标参考样本的每个用户特征域数据和每个物品特征域数据进行向量化之外,还会同步将每个目标参考样本的标签数据进行向量化,得到每个目标参考样本的多个第一特征向量,因此与上述不携带标签数据的情况相比,此时向量化得到的每个目标参考样本的多个第一目标特征向量中还包含用于指示标签数据的第一目标特征向 量。具体的,将每个目标参考样本的每个用户特征域数据、每个物品特征域数据以及标签数据进行编码,得到每个目标参考样本的特征向量。比如,第i个目标参考样本的特征向量为(r i1,R i2,r i3,…,r in,r i(n+1)),其中,r i(n+1)为第i目标参考样本的标签数据的编码结果;然后,对每个目标参考样本的特征向量进行映射,得到每个目标参考样本的多个第一特征向量。比如,第i个目标参考样本的多个特征向量为(e i1,e i2,e i3,…,e in,e i(n+1)),其中,e i(n+1)用于指示第i个目标参考样本的标签数据。
进一步的,与上述融合类似,根据上述计算出的每个目标参考样本的权重,对多个目标参考样本在同一个特征域(包括用户特征域、物品特征域以及标签域)下的第一特征向量进行融合,得到第二目标特征向量组,即与上述不携带标签数据的情况相比,此时融合得到的第二特征向量组中的多个第二特征向量中还包含用于指示融合后的标签数据的第二目标特征向量。举例来说,第二目标特征向量组为(e n+1,e n+2,e n+3,…,e 2n,e 2n+1),其中,e 2n+1用于指示多个目标参考样本的融合后的标签数据。
可选的,针对上述不携带标签数据或携带标签数据的情况,在获取到第一目标特征向量组和第二目标特征向量组之后,可以将第一目标特征向量组和第二目标特征向量组进行拼接,得到目标特征信息,则目标特征信息为(e 1,e 2,e 3…,e n,e n+1,e n+2,e n+3,…,e 2n)或者(e 1,e 2,e 3…,e n,e n+1,e n+2,e n+3,…,e 2n,e 2n+1);可选的,也可以不对第一目标特征向量组和第二目标特征向量组进行拼接。比如,可以将第一目标特征向量组和第二目标特征向量组均作为输入数据进行后面的输出值的预测,得到输出值。
在本申请的一个实施方式中,在得到第一目标特征向量组和第二目标特征向量组之后,除了第一目标特征向量组和第二目标特征向量组进行拼接之外,还可以将目标特征向量进行交互,以使获得高阶的特征信息。示例性的,如图5所示,可以先将多个第一目标特征向量和多个第二目标特征向量进行拼接(concat),得到第一向量组;然后,对第一向量组中的目标特征向量进行两两交互,得到第三目标特征向量组;然后,将第一向量组与第三目标特征向量组进行拼接,得到目标特征信息。同样,也可以不对第一向量组与第三目标特征向量组进行拼接,将两者均作为输入数据即可,不再叙述。
示例性的,多个第三目标特征向量可以通过公式(3)表示:
e ij=inter(e i,e j)    公式(3);
其中,i的取值为1到2n,j的取值为2到2n,且j的取值大于i,2n为第一向量组中的目标特征向量的数量,inter为向量之间的交互操作。
其中,上述向量两两交互主要是将两个向量融合为一个向量,且融合后的一个向量所表示的特征信息为两个向量表示的特征信息所融合后的特征信息。可选的,向量两两交互可以通过向量点乘实现、核积实现以及网络层实现。本申请不限定两个向量的交互方式,只要能融合后得到一个向量能够表示两个向量所表示的特征信息即可。
应理解,上述只给出了将特征向量进行两两交互的情况,在实际应用中,还可以将三个特征向量或者更多数量的特征向量进行交互。另外,上述在进行向量交互的过程中,对第一向量组中的所有目标特征向量进行了两两交互,然而在实际应用中,也可以从第一向量组中选取部分目标特征向量进行交互,比如,可以只将目标特征信息中的部分多个第一目标特征向量和部分多个目标第二特征向量进行交互,得到多个第三目标特征向量。因此,本申请并不限定进行交互的向量的来源,以及进行交互的向量的数量。
404:以目标特征信息为输入通过深度神经网络DNN获取输出值。
示例性的,将目标特征信息作为输入数据输入到深度神经网络DNN,得到输出值。
示例性的,一般来说输出值是一个概率值,该概率值表示目标用户对目标物品进行操作的概率。应说明,对于不同的目标物品,目标用户对目标物品进行操作的概率有不同的理解。比如,当目标物品为应用程序时,目标用户对目标物品进行操作的概率可以理解为目标用户对应用程序的点击概率;再如,当目标物品为歌曲时,目标用户对目标物品进行操作的概率可以理解为目标用户喜欢该歌曲的概率;又如,当目标物品为商品时,目标用户对目标物品进行操作的概率可以理解为目标用户购买该商品的概率。
实际应用中,获取了概率值之后,可以对概率值进行后处理,得到输出值,比如,当概率值大于概率阈值时,以1作为输出值,当概率值小于或等于阈值时,则以0作为输出值,其中,0表示目标用户不会操作目标物品,1表示目标用户会操作目标物品。
405:根据输出值确定是否向目标用户推荐目标物品。
可选的,当输出值是以0或1的二值化数据表示时,则当输出值为1时,确定向目标用户推荐目标物品,当输出值为0时,确定不向目标用户推荐目标物品。可选的,当输出值是以概率的形式表示时,则当概率大于概率阈值时,确定向目标用户推荐目标物品,当概率小于或等于概率阈值时,确定不向目标用户推荐目标物品。
应说明,当本申请的推荐方法应用到多物品的推荐场景时,则需要计算目标用户对每个候选物品的操作概率;然后,对多个候选物品的操作概率进行排序,将排名靠前的候选物品推荐给目标用户。例如,进行歌曲推荐时,需要计算目标用户对各个候选歌曲的喜欢概率,然后将喜欢概率靠前的歌曲推荐给目标用户。
可以看出,在本申请实施方式中,获取的目标特征信息中除了包含待预测数据本身的特征信息之外,还包含有多个目标参考样本向量化后融合得到的特征信息。由于目标参考样本和待预测数据具有部分相同的用户特征域数据和/或物品特征域数据,因此目标参考样本中的用户行为可以为目标用户的行为的预测提供参考和经验,从而在使用这样的目标特征信息进行输出值的预测时,可以使预测出的输出值比较精确,基于这个输出值进行物品推荐,提高了推荐的精度。
下面结合具体的模型结构,以及以参考样本携带有标签数据,且对目标特征向量进行交互的方式介绍获取输出值的过程。
如图6所示,模型包括特征信息提取网络以及MLP,其中,特征信息提取网络包括编码层、嵌入层、注意力层和交互层。其中,交互层是可选的,当需要对目标特征向量进行交互时,需要设计交互层;若不对目标特征向量进行交互,则可以不设计交互层。
首先,将待预测数据输入到搜索引擎中,并从多个参考样本中获取k个目标参考样本,即S 1、S 2、…、S k。然后,将待预测数据的用户特征域数据和物品特征域数据输入到编码层进行编码,得到待预测数据的特征向量,即(c 1,c 2,c 3,…,c n);以及将每个目标参考样本的用户特征域数据、物品特征域数据以及标签数据输入到编码层进行编码,得到多个目标参考样本对应的多个特征向量,即(r 11,r 12,r 13,…,r 1n,r 1n+1),(r 21,R 22,r 23,…,r 2n,r 2n+1),…,(r k1,r k3,r k3,…,r kn,r kn+1)。然后,将(c 1,c 2,c 3,…,c n)以及(r 11,r 12,r 13,…,r 1n,r 1n+1),(r 21,r 22,r 23,…,r 2n,r 2n+1),…,(r k1,r k2,r k3,…,r kn,r kn+1)分别输入到嵌入层,对(c 1,c 2,c 3,…,c n)以及(r 11,r 12,r 13,…,r 1n,r 1n+1),(r 21,r 22,r 23,…,r 2n,r 2n+1),…,(r k1,r k2,r k3,…,r kn,r kn+1)进行映射处理,分别得到待预测数据的多个第一目标特征向量 (e 1,e 2,e 3…,e n),以及每个目标参考样本的多个第一特征向量,即(e 11,e 12,e 13…,e 1n,e 1n+1),(e 21,e 22,e 23…,e 2n,e 2n+1),…,(e k1,e k2,e k3,…,e kn,e kn+1);然后,将(e 1,e 2,e 3,…,e n)、(e 11,e 12,e 13…,e 1n,e 1n+1),(e 21,e 22,e 23…,e 2n,e 2n+1),…,(e k1,e k2,e k3,…,e kn,e kn+1)均输入到注意力层,对(e 11,e 12,e 13…,e 1n,e 1n+1),(e 21,e 22,e 23…,e 2n,e 2n+1),…,(e k1,e k2,e k3,…,e kn,e kn+1)进行融合,得到多个目标第二特征向量(e n+1,e n+2,e n+3,…,e 2n,e 2n+1);然后,分别将多个第一目标特征向量(e 1,e 2,e 3,…,e n)、多个第二目标特征向量(e n+1,e n+2,e n+3,…,e 2n,e 2n+1)进行拼接(Concat),得到第一向量组,即(e 1,e 2,e 3…,e n,e n+1,e n+2,e n+3,…,e 2n,e 2n+1);然后,对第一向量组中的目标特征向量进行两两交互,得到第三目标特征向量,即上述的inter(e i,e j);将第一向量组中的目标特征向量与第三目标特征向量进行拼接,得到目标特征信息,即(e 1,e 2,e 3…,e n,e n+1,e n+2,e n+3…,e 2n,e 2n+1,inter(e i,e j));
最后,将目标特征信息输入到多层感知器MLP,得到输出值。
参阅图7,图7为本申请实施例提供的一种推荐模型训练方法的流程示意图。该推荐模型包括特征信息提取网络和多层感知器MLP。该方法包括以下步骤内容:
701:获取多个训练样本。
其中,每个训练样本为多域离散数据,与上述参考样本类似,每个训练样本包括用户特征域数据和用户特征域数据。应理解,每个训练样本还携带有标签数据,每个训练样本的标签数据用于表示每个训练样本中的用户对该训练样本中的物品的实际操作情况。比如,物品为应用程序时,实际操作情况为用户是否点击了该应用程序。
应说明,上述的多个参考样本可以是该多个训练样本,也可以是该多个训练样本中的部分训练样本,比如,从多个训练样本中筛选出部分数据完整度较高的训练样本作为参考样本。
702:根据第一训练样本和多个第二训练样本的相似度从多个第二训练样本中获取多个目标训练样本。
其中,第一训练样本为多个训练样本中的任意一个,第一训练样本的用户特征域数据用于指示第一参考用户特征,第一训练样本的物品特征域数据用于指示第一参考物品特征。其中,多个第二训练样本为多个训练样本中除第一训练样本之外的部分或全部。
第一训练样本和每个目标训练样本具有部分相同的用户特征域数据和/或物品特征域数据。同样的,在实际应用中,为了确保每个目标训练样本和第一训练样本的相似性,一般来说,每个目标参考样本和第一训练样本具有部分相同的用户特征域数据和物品特征域数据。
示例性的,根据第一训练样本与每个第二训练样本之间的相似度从多个第二训练样本中获取多个目标训练样本。比如,可以将相似度大于阈值的第二训练样本作为目标训练样本,得到多个目标训练样本,或者,按照相似度从高到低的顺序从多个第二训练样本中选取预设数量的第二训练样本,作为多个目标训练样本。
应理解,可以直接将多个训练样本中除第一训练样本之外的全部训练样本作为多个第二训练样本,然后获取第一训练样本与多个第二训练样本之间的相似度;也可以按照上述倒排索引的方式,从除第一训练样本之外的训练样本中选出部分作为多个第二训练样本。
示例性的,按照上述倒排索引的方式,将每个训练样本的每个用户特征域数据和每个物品特征域数据均作为元素,将每个训练样本作为文档,对多个训练样本进行倒排索引,得到倒排列表;然后,将第一训练样本的每个用户特征域数据和每个物品特征域数据均作为查询词,从倒排索引中获取出多个第二训练样本,因此,这些第二训练样本与第一训练样本相比,至少在一个相同的特征域下的域数据相同。所以,某个训练样本与第一训练样本相比,在任何相同的特征域下的域数据都不相同时,则不将这个训练样本作为第二训练样本。所以,上述的第二训练样本可能是多个训练样本中除第一训练样本之外的部分。
703:将第一训练样本和多个目标训练样本输入到特征信息提取网络,得到第一训练样本的目标特征信息。
示例性的,与上述图4示出的推荐方法类似,将第一训练样本和每个目标训练样本均作为输入数据输入到特征信息提取网络,得到第一训练样本的目标特征信息.
可选的,目标特征信息包括第四目标特征向量组(包括多个第四目标特征向量)和第五目标特征向量组(包括多个第五目标特征向量),其中,获取多个第四目标特征向量与上述获取多个第一目标特征向量的方式类似,即对第一训练样本的特征向量进行映射,得到多个第四目标特征向量,其中,第一训练样本的特征向量是对第一训练样本的每个用户特征域数据和每个物品特征域数据均进行编码得到,不再详细描述;可选的,获取多个第五目标特征向量与上述获取多个第二目标特征向量的方式类似,即对多个目标训练样本在同一个特征域下的多个第一特征向量进行融合得到,其中,每个目标训练样本对应的多个第一特征向量是对每个目标训练样本的特征向量进行映射得到,每个目标训练样本的特征向量为对每个目标训练样本的每个用户特征域数据和每个物品特征域数据均进行编码得到,也不再详细描述;
与上述获取第二特征向量组的方式类似,在获取第五特征向量组时,可以不对目标参考样本的标签数据进行向量化以及融合,也可以选择对目标参考样本的标签数据进行向量化以及融合。
可选的,目标特征信息还可以包括第六目标特征向量组(包括多个第六目标特征向量),其中,多个第六目标特征向量的获取方式与上述多个第三目标特征向量的获取方式类似,即将多个第四目标特征向量和多个第五目标特征向量进行拼接,得到第二向量组;然后,对第二向量组中的目标特征向量进行两两交互,得到多个第六目标特征向量,不再详细描述。
704:将目标特征信息输入到深度神经网络DNN,得到输出值,输出值用于表征第一参考用户对第一参考物品进行操作的概率。
将第一训练样本的目标特征信息输入到推荐模型的多层感知器,得到输出值,即预测出第一参考用户对第一参考物品的操作情况。
705:根据输出值以及第一训练样本的标签数据进行推荐模型的训练,获得目标推荐模型。
示例性的,根据输出值和第一训练样本的标签数据确定损失,即根据预测出的第一参考用户对第一参考物品进行操作的情况和第一参考用户对第一参考物品进行操作的实际情况,确定损失;根据该损失以及梯度下降法调整待训练的推荐模型的模型参数,对推荐练模型进行训练,得到目标推荐模型。
应理解,对推荐模型的训练是使用多个训练样本进行迭代训练,其中,每个训练样本的训练过程与图7示出的使用第一训练样本的训练过程类似,不再叙述;直至推荐模型收敛时,完成对推荐模型的训练,得到目标推荐模型。
因此,基于上述的模型训练方法以及模型的应用过程,本申请的物品推荐流程和现有的物品推荐存在如图8所示的区别。如图8所示,现有的物品推荐过程是先使用训练样本进行 模型训练(与现有的有监督训练方法一致),待完成模型训练之后,将待预测数据直接输入到推荐模型中进行用户行为预测,得到输出值,基于输出值确定是否向用户进行物品推荐;而本申请的用户行为预测是先使用训练样本对待推荐模型进行训练(与图7示出的训练方法一致),待完成模型训练之后,将训练样本作为参考样本;当获取到待预测数据时,先从训练样本中获取与待预测数据对应的目标训练样本,然后,将待预测数据和目标训练样本一起输入到目标推荐模型中进行用户行为预测,获得输出值,基于该输出值确定是否向用户进行物品推荐。由于本申请的用户行为预测过程中会融合目标训练样本的特征信息,得到丰富的目标特征信息,提高用户行为预测的精度,提高输出值的精度,从而可以进行精确的物品推荐。
最后结合附图具体介绍一下应用本申请的推荐方法后的几种常见推荐场景。
应用1:针对点击概率的预测。
如图9所示,针对应用程序的推荐,比如,精品应用下的应用程序推荐、精品新游榜单下的应用程序推荐;针对每种类型的应用程序推荐,首先获取多个候选应用程序;然后,基于目标用户的用户特征域数据以及各个候选应用程序的物品特征域数据,构造与各个候选应用程序对应的待预测数据,即将目标用户的用户特征域数据和各个候选应用程序的物品特征域数据拼接为一个待预测数据;然后,基于上述的推荐方法以及待预测数据,预测出目标用户对各个候选应用程序的点击概率;然后,根据各个候选应用的点击概率从高到低的顺序对多个候选应用程序进行排序,并在推荐页面按照点击概率从高到低的顺序展示排序后的多个候选应用程序或者只展示排序靠前的候选应用程序。
由于本申请中在进行点击率预测时,会融合目标参考样本的特征信息,从而使预测出的点击率更加准确,从而向目标用户推荐的应用程序更加精确,进而提高应用程序的下载率。
应用2:针对购买概率的预测。
如图10所示,针对商品的推荐,可基于各个候选商品的物品特征域数据以及目标用户的用户特征域数据,构造与各个候选商品对应的待预测数据,即将目标用户的用户特征域数据和各个候选商品的物品特征域数据拼接为一个待预测数据;基于上述的推荐方法以及待预测数据,预测出目标用户对每个候选商品的购买概率;然后,根据每个候选商品的购买概率从高到低的顺序对多个候选商品进行排序,并在推荐页面按照购买概率从高到低的顺序展示排序后的多个候选商品或者只展示排序靠前的候选商品。
由于本申请中在进行购买概率预测时,会融合目标参考样本的特征信息,从而使预测出的购买概率更加准确,从而向目标用户推荐的商品更加符合用户的需求,提高商品的销量。
应用3:针对歌曲的评分的预测。
如图11所示,针对歌曲推荐,比如,私人FM中的歌曲推荐、每日30首中的歌曲推荐;针对每种类型下的推荐,首先获取多个候选歌曲,根据各个候选歌曲的物品特征域数据以及目标用户的用户特征域数据,构造与每个候选歌曲对应的待预测数据,即将目标用户的用户特征域数据和各个候选歌曲的物品特征域数据拼接为一个待预测数据;基于上述的推荐方法以及待预测数据,预测出每个候选歌曲的评分,每个候选歌曲的评分用于表征目标用户对该候选歌曲的喜爱程度;然后,根据每个候选歌曲的评分从高到低的顺序对多个候选歌曲进行排序,并在推荐页面按照评分从高到低的顺序展示排序后的多个候选歌曲或者只展示评分靠前的候选歌曲。
由于本申请中在对歌曲进行评分预测时,会融合目标参考样本的特征信息,从而使预测出的评分更加准确,从而推荐的歌曲更加符合用户的需求,提高歌曲推荐的准确率。
将本申请的用户行为建模方法与现有的基于特征交互的用户行为建模方法以及基于用户 行为序列的用户行为建模方法相比,在CTR预估任务上进行了充分的实验,实验设置如下:
实验设置1:使用以下测试指标评估模型的预测精度的优劣,即:
接受者操作特性曲线下与坐标轴围成的面积(Area Under Curve,AUC)、损失(Logloss,LL)以及相对提升(relative improvement,REI.Impr);其中,对于测试指标AUC来说,取值越大说明模型的效果越好;对于测试指标LL来说,取值越小说明模型效果越好;其中,测试REI.Impr是本申请的模型(RIM)相对于其他模型的预测精度的提升,则对于测试指标REI.Impr来说,取值越大说明RIM的预测精度相对于被比较的模型的精度越高。
实验设置2:获取应用A的数据集、应用B的数据集以及应用C的数据集,分别在应用A的数据集、应用B的数据集以及应用C的数据集上测试基于用户行为预测CTR的模型的AUC和LL,以及测试本申请的模型预测CTR时的AUC和LL;
实验设置3:获取第一数据集和第二数据集,分别在第一数据集和第二数据集上测试基于特征交互预测CTR的模型的AUC和LL,以及测试本申请的模型预测CTR时的AUC和LL。例如,第一数据集可以为avazu,第二数据集可以为criteo。
其中,基于用户行为预测CTR的模型包括:HPMN,MIMN,DIN,DIEN,SIM,UBR;基于特征交互预测CTR的模型包括:LR,GBDT,FM,FFM,AFM,FNN,DeepFM,IPNN,PIN,xDeepFM,FGCNN。
其中,表3和表4为对比结果。
表3:与基于用户行为预测CTR的模型的对比结果:
Figure PCTCN2022109297-appb-000005
表4:与基于特征交互预测CTR的模型的对比结果:
Figure PCTCN2022109297-appb-000006
经过实验可以看出在预测精度上,本申请的模型在AUC和Logloss两个指标上都取得了最好的实验效果。因此,使用本申请的模型预测用户行为,会使预测结果更加精确,可以获得更加精确的输出值,从而为用户进行更精确的推荐。
参阅图12,图12为本申请实施例提供的一种推荐装置的结构图。推荐装置1200包括获 取单元1201和处理单元1202;
获取单元1201,用于获取待预测数据;
处理单元1202,用于获取待预测数据;根据待预测数据和多个参考样本的相似度从多个参考样本中获取多个目标参考样本;每个参考样本和待预测数据均包括用户特征域数据和物品特征域数据,待预测数据的用户特征域数据用于指示目标用户特征,待预测数据的物品特征域数据用于指示目标物品特征,每个目标参考样本和待预测数据具有部分相同的用户特征域数据和/或物品特征域数据;根据多个目标参考样本与待预测数据获取待预测数据的目标特征信息;目标特征信息包括第一目标特征向量组和第二目标特征向量组,第一目标特征向量组为向量化后的待预测数据,第二目标特征向量组为对多个目标参考样本进行向量化后融合得到;以目标特征信息为输入通过深度神经网络DNN获取输出值;根据输出值确定是否向目标用户推荐目标物品。
关于上述获取单元1201和处理单元1202更详细的描述,可参考上述方法实施例中的相关描述,在此不再说明。
参阅图13,图13为本申请实施例提供的一种推荐模型训练装置的结构图。推荐模型包括特征信息提取网络和深度神经网络DNN。推荐模型训练装置1300包括获取单元1301和处理单元1302;
获取单元1301,用于获取多个训练样本,其中,每个训练样本包括用户特征域数据和物品特征域数据;
处理单元1302,用于根据第一训练样本和多个第二训练样本的相似度从多个第二训练样本中获取多个目标训练样本,其中,第一训练样本为多个训练样本中的一个,多个第二训练样本为多个训练样本除第一训练样本之外的部分或全部,第一训练样本的用户特征域数据用于指示第一参考用户特征,第一训练样本的物品特征域数据用于指示第一参考物品特征,第一训练样本和每个目标训练样本具有部分相同的用户特征域数据和/或物品特征域数据;
将第一训练样本和多个目标训练样本输入到特征信息提取网络,得到第一训练样本的目标特征信息,其中,目标特征信息包括第四目标特征向量组和第五目标特征向量组,第四目标特征向量组为通过特征信息提取网络对第一训练样本进行向量化得到,第五目标特征向量组为通过特征信息提取网络对多个目标训练样本进行向量化后融合得到;
将目标特征信息输入到深度神经网络DNN,得到输出值,输出值用于表征第一参考用户对第一参考物品进行操作的概率;
根据输出值以及第一训练样本的标签进行推荐模型的训练,获得目标推荐模型。
关于上述获取单元1301和处理单元1302更详细的描述,可参考上述方法实施例中的相关描述,在此不再说明。
参阅图14,图14为本申请实施例提供的一种电子设备的结构图。电子设备1400可以为上述的推荐装置1200;或者,为推荐装置1200中的芯片或芯片系统;电子设备还可以为上述的推荐模型训练装置1300;或者,为推荐模型训练装置1300中的芯片或芯片系统;
电子设备1400包括存储器1401、处理器1402、通信接口1403以及总线1404。其中,存储器1401、处理器1402、通信接口1403通过总线1404实现彼此之间的通信连接。
存储器1401可以是只读存储器(Read Only Memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(Random Access Memory,RAM)。存储器1401可以存储程序,当存储器1401中存储的程序被处理器1402执行时,处理器1402和通信接口1403用于执行本申请实施例的数据流传输方法中的各个步骤。
处理器1402可以采用通用的中央处理器(Central Processing Unit,CPU),微处理器,应用专用集成电路(Application Specific Integrated Circuit,ASIC),图形处理器(graphics processing unit,GPU)或者一个或多个集成电路,用于执行相关程序,以实现本申请实施例的音频特征补偿装置或音频识别装置中的单元所需执行的功能,或者执行本申请方法实施例的数据流传输方法。
处理器1402还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请的数据流传输方法中的各个步骤可以通过处理器1402中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1402还可以是通用处理器、数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1401,处理器1402读取存储器1401中的信息,结合其硬件完成本申请实施例的用户设备或头戴设备中包括的单元所需执行的功能,或者执行本申请方法实施例的数据流传输方法中的各个步骤。
通信接口1403可以为收发器一类的收发装置,来实现电子设备1400与其他设备或通信网络之间的通信;通信接口1403也可以为输入-输出接口,来实现电子设备1400与输入-输出设备之间的数据传输,其中,输入-输出设备包括但不限于键盘、鼠标、显示屏、U盘以及硬盘。比如,处理器1402可以通过通信接口1403获取待预测数据。
总线1404可包括在装置电子设备1400各个部件(例如,存储器1401、处理器1402、通信接口1403)之间传送信息的通路。
应注意,尽管图14所示电子设备1400仅仅示出了存储器、处理器、通信接口,但是在具体实现过程中,本领域的技术人员应当理解,电子设备1400还包括实现正常运行所必须的其他器件。同时,根据具体需要,本领域的技术人员应当理解,电子设备1400还可包括实现其他附加功能的硬件器件。此外,本领域的技术人员应当理解,电子设备1400也可仅仅包括实现本申请实施例所必须的器件,而不必包括图14中所示的全部器件。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A, 同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。在本申请的文字描述中,字符“/”,一般表示前后关联对象是一种“或”的关系;在本申请的公式中,字符“/”,表示前后关联对象是一种“相除”的关系。
可以理解的是,在本申请的实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本申请的实施例的范围。上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (24)

  1. 一种推荐方法,其特征在于,包括:
    获取待预测数据;
    根据所述待预测数据和多个参考样本的相似度从所述多个参考样本中获取多个目标参考样本;每个所述参考样本和所述待预测数据均包括用户特征域数据和物品特征域数据,所述待预测数据的所述用户特征域数据用于指示目标用户特征,所述待预测数据的所述物品特征域数据用于指示目标物品特征,每个所述目标参考样本和所述待预测数据具有部分相同的用户特征域数据和/或物品特征域数据;
    根据所述多个目标参考样本与所述待预测数据获取所述待预测数据的目标特征信息;所述目标特征信息包括第一目标特征向量组和第二目标特征向量组,所述第一目标特征向量组为向量化后的所述待预测数据,所述第二目标特征向量组为对所述多个目标参考样本进行向量化后融合得到;
    以所述目标特征信息为输入通过深度神经网络DNN获取输出值;
    根据所述输出值确定是否向所述目标用户推荐所述目标物品。
  2. 根据权利要求1所述的方法,其特征在于,
    所述多个目标参考样本还包括标签数据;
    所述第二目标特征向量组为对所述多个目标参考样本进行向量化后融合得到,具体为:
    所述第二目标特征向量组为对所述多个目标参考样本的用户特征域数据,物品特征域数据以及标签数据进行向量化后融合得到。
  3. 根据权利要求1或2所述的方法,其特征在于,
    所述目标特征信息还包括第三目标特征向量组,所述第三目标特征向量组为对第一向量组中的目标特征向量进行两两交互得到,所述第一向量组包括所述第一目标特征向量组和所述第二目标特征向量组。
  4. 根据权利要求1-3中任一项所述的方法,其特征在于,所述融合包括:
    对所述第一目标特征向量组中的多个第一目标特征向量进行拼接,得到所述待预测数据的第二特征向量;
    对每个所述目标参考样本的多个第一特征向量进行拼接,得到每个所述目标参考样本的第二特征向量,每个所述目标参考样本的多个第一特征向量为对所述目标参考样本进行向量化得到;
    获取每个所述目标参考样本的第二特征向量与所述待预测数据的第二特征向量之间的相似度;
    根据每个所述目标参考样本的第二特征向量与所述待预测数据的第二特征向量之间的相似度,确定每个所述目标参考样本的权重;
    根据每个所述目标参考样本的权重,对所述多个目标参考样本在同一个特征域下的第一特征向量进行融合,得到所述第二目标特征向量组。
  5. 根据权利要求1-4中任一项所述的方法,其特征在于,根据所述待预测数据和多个参考样本的相似度从所述多个参考样本中获取多个目标参考样本之前,所述方法还包括:
    获取多个原始样本,其中,每个所述原始样本包括用户特征域数据和物品特征域数据;
    将所述待预测数据的多个所述用户特征域数据和多个所述物品特征域数据作为元素,对所述多个原始样本进行倒排索引,得到所述多个参考样本。
  6. 一种推荐模型训练方法,其特征在于,所述推荐模型包括特征信息提取网络和深度神经网络DNN,所述方法包括:
    获取多个训练样本,其中,每个所述训练样本包括用户特征域数据和物品特征域数据;
    根据第一训练样本和多个第二训练样本的相似度从所述多个第二训练样本中获取多个目标训练样本,其中,所述第一训练样本为所述多个训练样本中的一个,所述多个第二训练样本为所述多个训练样本除所述第一训练样本之外的部分或全部,所述第一训练样本的所述用户特征域数据用于指示第一参考用户特征,所述第一训练样本的所述物品特征域数据用于指示第一参考物品特征,所述第一训练样本和每个所述目标训练样本具有部分相同的用户特征域数据和/或物品特征域数据;
    将所述第一训练样本和所述多个目标训练样本输入到所述特征信息提取网络,得到所述第一训练样本的目标特征信息,其中,所述目标特征信息包括第四目标特征向量组和第五目标特征向量组,所述第四目标特征向量组为通过所述特征信息提取网络对所述第一训练样本进行向量化得到,所述第五目标特征向量组为通过所述特征信息提取网络对所述多个目标训练样本进行向量化后融合得到;
    将所述目标特征信息输入到所述深度神经网络DNN,得到输出值,所述输出值用于表征所述第一参考用户对所述第一参考物品进行操作的概率;
    根据所述输出值以及所述第一训练样本的标签数据进行所述推荐模型的训练,获得目标推荐模型。
  7. 根据权利要求6所述的方法,其特征在于,
    所述第五目标特征向量组为对所述多个目标训练样本进行向量化后融合得到,具体为:
    所述第五目标特征向量组为通过所述特征信息提取网络对所述多个目标训练样本的用户特征域数据、物品特征域数据以及标签数据进行向量化后融合得到。
  8. 根据权利要求6或7所述的方法,其特征在于,
    所述目标特征信息还包括第六目标特征向量组,所述第六目标特征向量组是通过所述特征信息提取网络对第二向量组中的目标特征向量进行两两交互得到,所述第二向量组包括所述第四目标特征向量组和所述第五目标特征向量组。
  9. 根据权利要求6-8中任一项所述的方法,其特征在于,所述融合包括:
    对所述第四目标特征向量组中的多个第四目标特征向量进行拼接,得到所述第一训练样本的第二特征向量;
    对每个所述目标训练样本的多个第一特征向量进行拼接,得到每个所述目标训练样本的第二特征向量,每个所述目标训练样本的多个第一特征向量为对所述目标训练样本进行向量化得到;
    获取每个所述目标训练样本的第二特征向量与所述第一训练样本的第二特征向量之间的相似度;
    根据每个所述目标训练样本的第二特征向量与所述第一训练样本的第二特征向量之间的相似度,确定每个所述目标训练样本的权重;
    根据每个所述目标训练样本的权重,对所述多个目标训练样本在同一个特征域下的第一特征向量进行融合,得到所述第五目标特征向量组。
  10. 根据权利要求6-9中任一项所述的方法,其特征在于,根据第一训练样本和多个第二训练样本的相似度从所述多个第二训练样本中获取多个目标训练样本之前,所述方法还包括:
    将所述第一训练样本的多个所述用户特征域数据和多个所述物品特征域数据作为元素,对所述多个训练样本进行倒排索引,得到所述多个第二训练样本。
  11. 一种推荐装置,其特征在于,包括:获取单元和处理单元;
    所述获取单元,用于获取待预测数据;
    所述处理单元,用于根据所述待预测数据和多个参考样本的相似度从所述多个参考样本中获取多个目标参考样本;每个所述参考样本和所述待预测数据均包括用户特征域数据和物品特征域数据,所述待预测数据的所述用户特征域数据用于指示目标用户特征,所述待预测数据的所述物品特征域数据用于指示目标物品特征,每个所述目标参考样本和所述待预测数据具有部分相同的用户特征域数据和/或物品特征域数据;
    根据所述多个目标参考样本与所述待预测数据获取所述待预测数据的目标特征信息;所述目标特征信息包括第一目标特征向量组和第二目标特征向量组,所述第一目标特征向量组为向量化后的所述待预测数据,所述第二目标特征向量组为对所述多个目标参考样本进行向量化后融合得到;
    以所述目标特征信息为输入通过深度神经网络DNN获取输出值;
    根据所述输出值确定是否向所述目标用户推荐所述目标物品。
  12. 根据权利要求11所述的装置,其特征在于,
    所述多个目标参考样本还包括标签数据;
    所述第二目标特征向量组为对所述多个目标参考样本进行向量化后融合得到,具体为:
    所述第二目标特征向量组为对所述多个目标参考样本的用户特征域数据,物品特征域数据以及标签数据进行向量化后融合得到。
  13. 根据权利要求12所述的装置,其特征在于,
    所述目标特征信息还包括第三目标特征向量组,所述第三目标特征向量组为对第一向量组中的目标特征向量进行两两交互得到,所述第一向量组包括所述第一目标特征向量组和所述第二目标特征向量组。
  14. 根据权利要求11-13中任一项所述的装置,其特征在于,
    在所述处理单元进行融合方面,所述处理单元,具体用于:
    对所述第一目标特征向量组中的多个第一目标特征向量进行拼接,得到所述待预测数据的第二特征向量;
    对每个所述目标参考样本的多个第一特征向量进行拼接,得到每个所述目标参考样本的第二特征向量,每个所述目标参考样本的多个第一特征向量为对所述目标参考样本进行向量 化得到;
    获取每个所述目标参考样本的第二特征向量与所述待预测数据的第二特征向量之间的相似度;
    根据每个所述目标参考样本的第二特征向量与所述待预测数据的第二特征向量之间的相似度,确定每个所述目标参考样本的权重;
    根据每个所述目标参考样本的权重,对所述多个目标参考样本在同一个特征域下的第一特征向量进行融合,得到所述第二目标特征向量组。
  15. 根据权利要求11-14中任一项所述的装置,其特征在于,
    在所述处理单元根据所述待预测数据和多个参考样本的相似度从所述多个参考样本中获取多个目标参考样本之前,所述处理单元,还用于获取多个原始样本,其中,每个所述原始样本包括用户特征域数据和物品特征域数据;
    将所述待预测数据的多个所述用户特征域数据和多个所述物品特征域数据作为元素,对所述多个原始样本进行倒排索引,得到所述多个参考样本。
  16. 一种推荐模型训练装置,其特征在于,所述推荐模型包括特征信息提取网络和深度神经网络DNN,所述装置包括:获取单元和处理单元;
    所述获取单元,用于获取多个训练样本,其中,每个所述训练样本包括用户特征域数据和物品特征域数据;
    所述处理单元,用于根据第一训练样本和多个第二训练样本的相似度从所述多个第二训练样本中获取多个目标训练样本,其中,所述第一训练样本为所述多个训练样本中的一个,所述多个第二训练样本为所述多个训练样本除所述第一训练样本之外的部分或全部,所述第一训练样本的所述用户特征域数据用于指示第一参考用户特征,所述第一训练样本的所述物品特征域数据用于指示第一参考物品特征,所述第一训练样本和每个所述目标训练样本具有部分相同的用户特征域数据和/或物品特征域数据;
    将所述第一训练样本和所述多个目标训练样本输入到所述特征信息提取网络,得到所述第一训练样本的目标特征信息,其中,所述目标特征信息包括第四目标特征向量组和第五目标特征向量组,所述第四目标特征向量组为通过所述特征信息提取网络对所述第一训练样本进行向量化得到,所述第五目标特征向量组为通过所述特征信息提取网络对所述多个目标训练样本进行向量化后融合得到;
    将所述目标特征信息输入到所述深度神经网络DNN,得到输出值,所述输出值用于表征所述第一参考用户对所述第一参考物品进行操作的概率;
    根据所述输出值以及所述第一训练样本的标签进行所述推荐模型的训练,获得目标推荐模型。
  17. 根据权利要求16所述的装置,其特征在于,
    所述第五目标特征向量组为对所述多个目标训练样本进行向量化后融合得到,具体为:
    所述第五目标特征向量组为通过所述特征信息提取网络对所述多个目标训练样本的用户特征域数据、物品特征域数据以及标签数据进行向量化后融合得到。
  18. 根据权利要求16或17所述的装置,其特征在于,
    所述目标特征信息还包括第六目标特征向量组,所述第六目标特征向量组是通过所述特征信息提取网络对第二向量组中的目标特征向量进行两两交互得到,所述第二向量组包括所述第四目标特征向量组和所述第五目标特征向量组。
  19. 根据权利要求16-18中任一项所述的装置,其特征在于,
    在所述处理单元进行融合方面,所述处理单元,具体用于:
    对所述第四目标特征向量组中的多个第四目标特征向量进行拼接,得到所述第一训练样本的第二特征向量;
    对每个所述目标训练样本的多个第一特征向量进行拼接,得到每个所述目标训练样本的第二特征向量,每个所述目标训练样本的多个第一特征向量为对所述目标训练样本进行向量化得到;
    获取每个所述目标训练样本的第二特征向量与所述第一训练样本的第二特征向量之间的相似度;
    根据每个所述目标训练样本的第二特征向量与所述第一训练样本的第二特征向量之间的相似度,确定每个所述目标训练样本的权重;
    根据每个所述目标训练样本的权重,对所述多个目标训练样本在同一个特征域下的第一特征向量进行融合,得到所述第五目标特征向量组。
  20. 根据权利要求16-19中任一项所述的装置,其特征在于,
    在所述处理单元根据第一训练样本和多个第二训练样本的相似度从所述多个第二训练样本中获取多个目标训练样本之前,所述处理单元,将所述第一训练样本的多个所述用户特征域数据和多个所述物品特征域数据作为元素,对所述多个训练样本进行倒排索引,得到所述多个第二训练样本。
  21. 一种电子设备,其特征在于,包括:存储器,用于存储程序;处理器,用于执行存储器存储的程序;当存储器存储的程序被执行时,处理器用于实现权利要求1-5或权利要求6-10中任一项所述的方法。
  22. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储用于设备执行的程序代码,所述程序代码包括用于实现权利要求1-5或权利要求6-10中任一项所述的方法。
  23. 一种计算程序产品,其特征在于,当所述计算程序产品在计算机上运行时,使得计算机实现权利要求1-5或权利要求6-10中任一项所述的方法。
  24. 一种芯片,其特征在于,所述芯片包括处理器与数据接口,所述处理器通过数据接口读取所述存储器上存储的指令,实现权利要求1-5或权利要求6-10中任一项所述的方法。
PCT/CN2022/109297 2021-07-31 2022-07-30 推荐方法、推荐模型训练方法及相关产品 WO2023011382A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP22852095.3A EP4322031A1 (en) 2021-07-31 2022-07-30 Recommendation method, recommendation model training method, and related product
US18/416,924 US20240202491A1 (en) 2021-07-31 2024-01-19 Recommendation method, method for training recommendation model, and related product

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110877429.9A CN113722583A (zh) 2021-07-31 2021-07-31 推荐方法、推荐模型训练方法及相关产品
CN202110877429.9 2021-07-31

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/416,924 Continuation US20240202491A1 (en) 2021-07-31 2024-01-19 Recommendation method, method for training recommendation model, and related product

Publications (1)

Publication Number Publication Date
WO2023011382A1 true WO2023011382A1 (zh) 2023-02-09

Family

ID=78674649

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/109297 WO2023011382A1 (zh) 2021-07-31 2022-07-30 推荐方法、推荐模型训练方法及相关产品

Country Status (4)

Country Link
US (1) US20240202491A1 (zh)
EP (1) EP4322031A1 (zh)
CN (1) CN113722583A (zh)
WO (1) WO2023011382A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116049411A (zh) * 2023-03-31 2023-05-02 北京中关村科金技术有限公司 一种信息匹配方法、装置、设备和可读存储介质
CN116485560A (zh) * 2023-06-21 2023-07-25 杭州大鱼网络科技有限公司 一种基于反馈机制的目标用户筛选方法及系统
CN117349458A (zh) * 2023-12-05 2024-01-05 北京搜狐新媒体信息技术有限公司 一种多媒体推荐方法、装置、设备和存储介质
CN118035566A (zh) * 2024-04-11 2024-05-14 中国科学技术大学 交互行为预测模型的训练方法、交互行为预测方法及装置

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113722583A (zh) * 2021-07-31 2021-11-30 华为技术有限公司 推荐方法、推荐模型训练方法及相关产品
CN114757700A (zh) * 2022-04-12 2022-07-15 北京京东尚科信息技术有限公司 物品销量预测模型训练方法、物品销量预测方法及装置
CN115953215B (zh) * 2022-12-01 2023-09-05 上海交通大学 一种基于时间和图结构的搜索式推荐方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109299396A (zh) * 2018-11-28 2019-02-01 东北师范大学 融合注意力模型的卷积神经网络协同过滤推荐方法及系统
CN111259263A (zh) * 2020-01-15 2020-06-09 腾讯云计算(北京)有限责任公司 一种物品推荐方法、装置、计算机设备及存储介质
US20200272913A1 (en) * 2018-11-30 2020-08-27 Huawei Technologies Co., Ltd. Recommendation Method and Apparatus
CN111881363A (zh) * 2020-06-23 2020-11-03 北京工业大学 一种基于图交互网络的推荐方法
CN112632403A (zh) * 2020-12-24 2021-04-09 北京百度网讯科技有限公司 推荐模型的训练方法、推荐方法、装置、设备和介质
WO2021081962A1 (zh) * 2019-10-31 2021-05-06 华为技术有限公司 推荐模型的训练方法、推荐方法、装置及计算机可读介质
CN113722583A (zh) * 2021-07-31 2021-11-30 华为技术有限公司 推荐方法、推荐模型训练方法及相关产品

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110232152B (zh) * 2019-05-27 2021-03-23 腾讯科技(深圳)有限公司 内容推荐方法、装置、服务器以及存储介质
CN111008332B (zh) * 2019-12-03 2023-04-07 深圳市雅阅科技有限公司 内容项推荐方法、装置、服务器以及存储介质
CN111008336A (zh) * 2019-12-23 2020-04-14 腾讯科技(深圳)有限公司 一种内容推荐方法、装置、设备及可读存储介质
CN111461841B (zh) * 2020-04-07 2023-04-07 腾讯云计算(北京)有限责任公司 物品推荐方法、装置、服务器及存储介质
CN111949886B (zh) * 2020-08-28 2023-11-24 腾讯科技(深圳)有限公司 一种用于信息推荐的样本数据生成方法和相关装置
CN112287166B (zh) * 2020-09-23 2023-03-07 山东师范大学 一种基于改进深度信念网络的电影推荐方法及系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109299396A (zh) * 2018-11-28 2019-02-01 东北师范大学 融合注意力模型的卷积神经网络协同过滤推荐方法及系统
US20200272913A1 (en) * 2018-11-30 2020-08-27 Huawei Technologies Co., Ltd. Recommendation Method and Apparatus
WO2021081962A1 (zh) * 2019-10-31 2021-05-06 华为技术有限公司 推荐模型的训练方法、推荐方法、装置及计算机可读介质
CN111259263A (zh) * 2020-01-15 2020-06-09 腾讯云计算(北京)有限责任公司 一种物品推荐方法、装置、计算机设备及存储介质
CN111881363A (zh) * 2020-06-23 2020-11-03 北京工业大学 一种基于图交互网络的推荐方法
CN112632403A (zh) * 2020-12-24 2021-04-09 北京百度网讯科技有限公司 推荐模型的训练方法、推荐方法、装置、设备和介质
CN113722583A (zh) * 2021-07-31 2021-11-30 华为技术有限公司 推荐方法、推荐模型训练方法及相关产品

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
XUE FENG, LIU KAI; WANG DONG; ZHANG HAOBO: "Personalized Recommendation Algorithm Based on Deep Neural Network and Weighted Implicit Feedback", PATTERN RECOGNITION AND ARTIFICIAL INTELLIGENCE, vol. 33, no. 4, 1 April 2020 (2020-04-01), pages 295 - 302, XP093033460, ISSN: 1003-6059, DOI: 10.16451/j.cnki.issn1003-6059.202004002 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116049411A (zh) * 2023-03-31 2023-05-02 北京中关村科金技术有限公司 一种信息匹配方法、装置、设备和可读存储介质
CN116049411B (zh) * 2023-03-31 2023-06-27 北京中关村科金技术有限公司 一种信息匹配方法、装置、设备和可读存储介质
CN116485560A (zh) * 2023-06-21 2023-07-25 杭州大鱼网络科技有限公司 一种基于反馈机制的目标用户筛选方法及系统
CN117349458A (zh) * 2023-12-05 2024-01-05 北京搜狐新媒体信息技术有限公司 一种多媒体推荐方法、装置、设备和存储介质
CN117349458B (zh) * 2023-12-05 2024-04-09 北京搜狐新媒体信息技术有限公司 一种多媒体推荐方法、装置、设备和存储介质
CN118035566A (zh) * 2024-04-11 2024-05-14 中国科学技术大学 交互行为预测模型的训练方法、交互行为预测方法及装置
CN118035566B (zh) * 2024-04-11 2024-08-23 中国科学技术大学 交互行为预测模型的训练方法、交互行为预测方法及装置

Also Published As

Publication number Publication date
EP4322031A1 (en) 2024-02-14
US20240202491A1 (en) 2024-06-20
CN113722583A (zh) 2021-11-30

Similar Documents

Publication Publication Date Title
WO2023011382A1 (zh) 推荐方法、推荐模型训练方法及相关产品
CN111784455B (zh) 一种物品推荐方法及推荐设备
EP3757905A1 (en) Deep neural network training method and apparatus
CN111898031B (zh) 一种获得用户画像的方法及装置
CN113095415B (zh) 一种基于多模态注意力机制的跨模态哈希方法及系统
CN106447066A (zh) 一种大数据的特征提取方法和装置
CN109584006B (zh) 一种基于深度匹配模型的跨平台商品匹配方法
CN114332680A (zh) 图像处理、视频搜索方法、装置、计算机设备和存储介质
WO2024041483A1 (zh) 一种推荐方法及相关装置
CN111967924A (zh) 商品推荐方法、商品推荐装置、计算机设备和介质
CN111695024A (zh) 对象评估值的预测方法及系统、推荐方法及系统
WO2023185925A1 (zh) 一种数据处理方法及相关装置
CN110135769B (zh) 货品属性填充方法及装置、存储介质及电子终端
US20220172271A1 (en) Method, device and system for recommending information, and storage medium
CN111368081A (zh) 一种精选文本内容确定方法和系统
CN113656589B (zh) 对象属性确定方法、装置、计算机设备及存储介质
CN112989182A (zh) 信息处理方法、装置、信息处理设备及存储介质
CN116910357A (zh) 一种数据处理方法及相关装置
EP4398128A1 (en) Recommendation method and related device
CN116957128A (zh) 业务指标预测方法、装置、设备和存储介质
CN114298118B (zh) 一种基于深度学习的数据处理方法、相关设备及存储介质
CN116128581A (zh) 物品推荐方法和系统
CN114429384A (zh) 基于电商平台的产品智能推荐方法及系统
CN115408599A (zh) 信息推荐方法、装置、电子设备及计算机可读存储介质
CN112488355A (zh) 基于图神经网络预测用户评级的方法和装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22852095

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2022852095

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2022852095

Country of ref document: EP

Effective date: 20231106

WWE Wipo information: entry into national phase

Ref document number: 11202307996U

Country of ref document: SG

NENP Non-entry into the national phase

Ref country code: DE