Disclosure of Invention
The invention aims to overcome the defect that the accuracy of personalized recommendation is not high because the robustness and the anti-interference performance of a model are not guaranteed by adopting a collaborative filtering model in the prior art to carry out personalized recommendation, and provides a prediction method and a system of an object evaluation value, a recommendation method and a system, electronic equipment and a storage medium.
The invention solves the technical problems by the following technical scheme:
A prediction method of an object evaluation value, the prediction method comprising:
the database is used for storing user data and object data;
Inquiring target user parameters from the user data, inquiring target object parameters and object evaluation values from the object data, and constructing a user feature vector, an object feature vector and an object scoring matrix according to the target user parameters, the object evaluation values and the target object parameters;
noise adding processing is carried out on the user characteristic vector, the object characteristic vector and the object scoring matrix;
training aSDAE a model by taking the user feature vector, the object feature vector and the object scoring matrix subjected to noise processing as training samples to obtain a collaborative filtering model;
The output parameters of the collaborative filtering model comprise a user implicit factor vector and an object implicit factor vector;
The product of the user implicit factor vector and the object implicit factor vector is used for predicting an evaluation value of the object by the user.
Preferably, in the process of training the aSDAE model, model parameters meet a Gaussian distribution, and/or the output result of each layer of the aSDAE model meets the Gaussian distribution or DIRAC DELTA distribution.
Preferably, the objective function for training the aSDAE model is constructed based on Bayesian maximum likelihood theory.
Preferably, the aSDAE models include a user aSDAE model and an object aSDAE model;
the user implicit factor vector is the sum of the output result of the middle layer of the user aSDAE model and the first error;
the object implicit factor vector is the sum of the output result of the middle layer of the object aSDAE model and the second error;
both the first error and the second error follow a gaussian distribution.
Preferably, before the step of noise-adding the user feature vector, the object feature vector and the object scoring matrix, the method further includes:
preprocessing the user feature vector, the object feature vector and the object scoring matrix to enable the user feature vector, the object feature vector and the object scoring matrix to meet Gaussian distribution.
An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, the processor implementing the method of predicting an object assessment value according to any one of the preceding claims when executing the computer program.
A computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of the method of predicting an object evaluation value as set forth in any one of the above.
A recommendation method, the recommendation method comprising:
Predicting the user feature vector, the object feature vector and the user implicit factor vector and the object implicit factor vector of the object scoring matrix subjected to noise processing by using the prediction method of the object evaluation value;
Calculating the product of the user implicit factor vector and the object implicit factor vector, and sequencing the objects according to the order of the product from high to low;
And recommending the objects ranked at the front to the user.
An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, the processor implementing the recommendation method described above when executing the computer program.
A computer readable storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of the recommendation method described above.
A prediction system of an object assessment value, the prediction system comprising:
A database for storing user data and object data;
The data acquisition module is used for inquiring target user parameters from the user data, inquiring target object parameters and object evaluation values from the object data, and constructing a user feature vector, an object feature vector and an object scoring matrix according to the target user parameters, the object evaluation values and the target object parameters;
The noise adding module is used for carrying out noise adding processing on the user characteristic vector, the object characteristic vector and the object scoring matrix;
The model training module is used for training aSDAE models by taking the user feature vector, the object feature vector and the object scoring matrix which are subjected to noise adding treatment as training samples to obtain collaborative filtering models;
The output parameters of the collaborative filtering model comprise a user implicit factor vector and an object implicit factor vector;
The product of the user implicit factor vector and the object implicit factor vector is used for predicting an evaluation value of the object by the user.
Preferably, in the process of training the aSDAE model, model parameters meet a Gaussian distribution, and/or the output result of each layer of the aSDAE model meets the Gaussian distribution or DIRAC DELTA distribution.
Preferably, the prediction system further comprises:
And the function construction module is used for constructing an objective function for training the aSDAE model based on the Bayesian maximum likelihood theory.
Preferably, the aSDAE models include a user aSDAE model and an object aSDAE model;
the user implicit factor vector is the sum of the output result of the middle layer of the user aSDAE model and the first error;
the object implicit factor vector is the sum of the output result of the middle layer of the object aSDAE model and the second error;
both the first error and the second error follow a gaussian distribution.
Preferably, the prediction system further comprises:
and the data processing module is used for preprocessing the user feature vector, the object feature vector and the object scoring matrix to ensure that the user feature vector, the object feature vector and the object scoring matrix all meet Gaussian distribution.
A recommendation system comprising a calculation module, a ranking module, a recommendation module, and a prediction system using the object assessment value as described in any one of the above;
the computing module is used for calling the prediction system to predict the user implicit factor vector and the object implicit factor vector of the user feature vector, the object feature vector and the object scoring matrix which are subjected to noise adding processing, and computing the product of the user implicit factor vector and the object implicit factor vector;
The ordering module is used for ordering the objects according to the order of the products from high to low;
the recommending module is used for recommending a plurality of objects which are ranked at the front to a user.
The method has the positive progress effects that the evaluation value of the user on the unknown object can be accurately predicted, namely, the preference degree of the user on the unknown object can be accurately predicted, and references are provided for personalized object recommendation. And during model training, gaussian modeling is carried out on noise of various weight parameters of aSDAE models, so that the occurrence of the over-fitting phenomenon is effectively avoided to a certain extent, and the robustness and the anti-interference capability of the models are greatly enhanced.
Detailed Description
The invention is further illustrated by means of the following examples, which are not intended to limit the scope of the invention.
Example 1
The present embodiment provides a method for predicting an object evaluation value, which is used for predicting a defect value of a scoring matrix of an object (for example, a commodity, an article, a coupon, etc.), that is, calculating a predicted evaluation value of a user on an unknown object, so as to accurately predict a preference degree of the user on the unknown object.
As shown in fig. 1, the prediction method of the object evaluation value of the present embodiment includes the steps of:
Step 100, establishing a database.
Wherein the database is used for storing user data and object data.
Step 101, inquiring target user parameters from user data, inquiring target object parameters and object evaluation values from object data, and constructing a user feature vector, an object feature vector and an object scoring matrix according to the target user parameters, the object evaluation values and the target object parameters.
The user feature vector includes parameters such as user name, age, sex, address, total purchase number, average browsing time, average consumption amount, etc., and 5 users (U1, U2, U3, U4, and U5) are exemplified, see table 1.
TABLE 1
The object feature vector includes parameters of object name, category, price, place of origin, place of shipment, total number of purchased and total number of browsed, etc., taking 20 objects (I1, I2, I19 and I20) as examples, see table 2.
TABLE 2
The object assessment value characterizes the scoring of the object by different users. The object scoring matrix is constructed according to the object evaluation value and is a sparse matrix. Assuming a score scale of 1-5, the higher the score indicates the higher the user's preference for that object, see Table 3, where the missing value indicates that the preference of a certain user for a certain object is unknown, and is indicated by 0 in the calculation. The score grade value in the object scoring matrix R can be generally calculated through implicit feedback (such as the stay time of the user on a certain object page, the browsing frequency, etc.) or display feedback (such as the evaluation score of the user on a certain object, etc.) of the user.
TABLE 3 Table 3
And 102, carrying out noise processing on the user characteristic vector, the object characteristic vector and the object scoring matrix.
For example, white noise, gaussian noise, etc. are added to the user feature vector, the object feature vector, and the object scoring matrix to improve the robustness of the model.
The noise adding process for the object scoring matrix specifically comprises the following steps:
step 102-1, converting the object scoring matrix into a first evaluation value matrix and a second evaluation value matrix.
The first evaluation value matrix characterizes evaluation values of all n objects of each user i, and the second evaluation value matrix characterizes evaluation values of all m users on the object j, in particular:
The matrix is to be evaluatedConversion into a first evaluation value matrixFor each user i e {1,..m },For the evaluation value vectors of user i for all n objects, i.e. the row vectors of the evaluation matrix R, taking the scoring matrix R shown in table 3 as an example,
Converting the evaluation matrix R into a second evaluation value matrixFor each object j e {1,..n },For all m vectors of evaluation values of the object j by the user, i.e. for the columns of the evaluation matrix R, taking the scoring matrix R shown in table 3 as an example,
Step 102-2, pairAndRespectively carrying out noise adding treatment to obtainAnd
To pair(s)The vector of the evaluation value after the noise processing is added,To pair(s)And adding the noise processed evaluation value vector.
User feature vectors and object feature vectors are used separatelyAndRepresentation, corresponding noise added representation isAnd
In this embodiment, the process may be repeated before step 102-2And xi,yj to pre-process, leaving the noise freeAnd xi,yj obeys the following gaussian distribution:
So thatAnd xi,yj is somewhat infinitely close to each layer of output results of the model during training.
And 103, taking the user feature vector, the object feature vector and the object scoring matrix subjected to noise processing as training samples to be input into aSDAE models, and performing model training to obtain collaborative filtering models.
Wherein the output parameters of the collaborative filtering model include an object implicit factor vector and a user implicit factor vector. The product of the user implicit factor vector and the object implicit factor vector characterizes the user's predicted evaluation value of the object. aSDAE models include a user aSDAE model, an object aSDAE model, and a matrix factorization model.
Training the learning object implicit factor vector and the user implicit factor vector based on a random gradient algorithm (SGD) in step 103, specifically:
Step 103-1, willAndInput user aSDAE model to beAndThe object aSDAE model is input, and the learning object implicit factor vector and the user implicit factor vector are trained.
The output parameters of the user aSDAE model are user implicit factor vectors, and the output parameters of the object aSDAE model are object implicit factor vectors.
Referring to fig. 2, in each iteration, the training update rule is as follows:
wherein U and V are two low-rank (low-rank) matrices obtained based on a matrix decomposition model, and R is approximately equal to UVT; representing the objective function of each iteration, eta is the learning rate of the random gradient descent algorithm, and ui 'and vj' represent the results after the current iteration as the basis of the next iteration.
In fig. 2, L is the number of layers of the user aSDAE model and the object aSDAE model, L e { 1..once., L }; Model for user aSDAEAs input layer 1 results; Model for user aSDAEThe first input isLayer (middle layer) results.Model object aSDAEAs input layer 1 results; model object aSDAEThe first input isLayer (middle layer) results.
Model for user aSDAEAs input layer 1 results; model object aSDAEAs a result of the input layer i. Wl is weight parameter of user aSDAE model at the first layer, bl is corresponding weight parameter, Tl isAdding weight parameters of the first layer of the user aSDAE model, wherein W 'l is weight parameters of the object aSDAE model at the first layer, b 'l is a corresponding bias vector, and T 'l isThe weight parameters of the object aSDAE model layer i are added.
In this embodiment, when model training is performed, the model parameters Wl、Tl、bl、W′l、T′l and b'l and the output result of each layer of the model satisfy the following distribution:
(a) User weight matrixN e {1,..Kl-1 } is the number of nodes of the first layer of the user aSDAE model of the Wl,*n,kl table, and K0=KL =n, and setting an object weight matrixN '∈ {1,..k'l-1 } is W 'l,*n′,K′l, representing the number of nodes of the first layer of the user aSDAE, K'0=K′L =m;
Let the values of Wl,*n and W'l,*n′ obey the following distribution:
Wherein,Is a identity matrix of size Kl*Kl; is an identity matrix of size K'l*K′l;
(b) Weight matrix of user feature vectorsN e { 1..p } is Tl,*n, and a weight matrix of the object feature vector is setN '∈ {1,..q } is T'l,*n′;
Let the values of Tl,*n and T'l,*n′ obey the following distribution:
(c) Each layer of the user aSDAE model and the object aSDAE model outputs resultsAndObeys the following distribution:
Wherein,
As lambdas approaches +.infinity,The obeyed Gaussian distribution becomesIs a centered DIRAC DELTA distribution; The obeyed Gaussian distribution becomesIs a centered DIRAC DELTA distribution;
Derivative of ui and vjCan be further refined into:
cij is a confidence parameter, namely:
(d) The corresponding bias vectors bl and b'l are subjected to the following distribution:
bl is a constant parameter of each layer of the user aSDAE model, and b'l is a constant parameter of each layer of the object aSDAE model;
Wherein lambdaw,λt,λs,λn,λu,λv is the hyper-parameter of the model.
And 103-2, judging whether the current aSDAE model meets the constraint condition of the optimization target.
In step 103-2, if yes, step 103-3 is executed, and if no, step 103-1 is returned to reselect training samples, and model parameters are debugged until the objective function is reachedIs the minimum value.
In this embodiment, according to the bayesian maximum likelihood theory, the optimal objective function of model training is obtained as follows:
As lambdas approaches +.infinity, minimizing an objective functionThe process is as follows:
Step 103-3, determining the current aSDAE model as the final collaborative filtering model.
Adding the intermediate layer of the user aSDAE model to the current aSDAE model by a first error εi, i.eAnd adding a second error εj to the intermediate layer of the object aSDAE model, i.e.As output parameters of the model, i.e. the object implicit factor vector vj and the user implicit factor vector ui, in which case the product of vj and uiObeys the following distribution:
cij is a confidence parameter, namely:
Wherein the first error εi and the second error εj obey the following distribution:
Where k is the dimension of the implicit factor vector.
Therefore, the collaborative filtering model can predict the evaluation value of the current user on the unknown object, namely accurately predict the preference degree of the user on the unknown object, and provide reference for personalized object recommendation. Specifically, when the collaborative filtering model is used for prediction, if learning is performed, a user implicit factor matrix is obtainedAnd object implicit factor matrixThe predictive evaluation matrix can be approximately obtainedI.e.Further, for each user, a list of the user's assessment rank for each object may be obtained based on the product of the user's implicit factor matrix and the object implicit factor matrix. And during model training, gaussian modeling is carried out on noise of various weight parameters of aSDAE models, so that the occurrence of the over-fitting phenomenon is effectively avoided to a certain extent, and the robustness and the anti-interference capability of the models are greatly enhanced.
Example 2
Fig. 3 is a schematic structural diagram of an electronic device provided in an embodiment of the present invention, and shows a block diagram of an exemplary electronic device 90 suitable for implementing an embodiment of the present invention. The electronic device 90 shown in fig. 3 is merely an example and should not be construed as limiting the functionality and scope of use of embodiments of the present invention.
As shown in fig. 3, the electronic device 90 may be embodied in the form of a general purpose computing device, which may be a server device, for example. The components of the electronic device 90 may include, but are not limited to, the at least one processor 91, the at least one memory 92, and a bus 93 that connects the various system components, including the memory 92 and the processor 91.
The bus 93 includes a data bus, an address bus, and a control bus.
The memory 92 may include volatile memory such as Random Access Memory (RAM) 921 and/or cache memory 922, and may further include Read Only Memory (ROM) 923.
The memory 92 may also include a program tool 925 (or utility) having a set (at least one) of program modules 924, such program modules 924 including, but not limited to, an operating system, one or more application programs, other program modules, and program data, each or some combination of which may include an implementation of a network environment.
The processor 91 executes various functional applications and data processing, such as the prediction method of the object evaluation value provided in embodiment 1 of the present invention, by executing the computer program stored in the memory 92.
The electronic device 90 may also communicate with one or more external devices 94 (e.g., keyboard, pointing device, etc.). Such communication may occur through an input/output (I/O) interface 95. Also, model-generated electronic device 90 may also communicate with one or more networks such as a Local Area Network (LAN), a Wide Area Network (WAN), and/or a public network such as the internet via network adapter 96. As shown, the network adapter 96 communicates with other modules of the model-generated electronic device 90 via the bus 93. It should be appreciated that although not shown, other hardware and/or software modules may be used in connection with the model-generating electronic device 90, including, but not limited to, microcode, device drivers, redundant processors, external disk drive arrays, RAID (disk array) systems, tape drives, and data backup storage systems, among others.
It should be noted that although several units/modules or sub-units/modules of an electronic device are mentioned in the above detailed description, such a division is merely exemplary and not mandatory. Indeed, the features and functionality of two or more units/modules described above may be embodied in one unit/module in accordance with embodiments of the present invention. Conversely, the features and functions of one unit/module described above may be further divided into ones that are embodied by a plurality of units/modules.
Example 3
The present embodiment provides a computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of the prediction method of the object evaluation value provided in embodiment 1.
More specifically, a readable storage medium may include, but is not limited to, a portable disk, hard disk, random access memory, read only memory, erasable programmable read only memory, optical storage device, magnetic storage device, or any suitable combination of the foregoing.
In a possible embodiment, the invention may also be implemented in the form of a program product comprising program code for causing a terminal device to carry out the steps of the prediction method implementing the object assessment values as described in example 1, when said program product is run on the terminal device.
Wherein the program code for carrying out the invention may be written in any combination of one or more programming languages, which program code may execute entirely on the user device, partly on the user device, as a stand-alone software package, partly on the user device and partly on the remote device or entirely on the remote device.
Example 4
As shown in fig. 4, the recommendation method of the present embodiment includes the following steps:
step 201, predicting a user implicit factor vector and an object implicit factor vector of the noise-added user feature vector, the object feature vector and the object scoring matrix.
Specifically, the predicted user implicit factor vector and the object implicit factor vector of the object evaluation value in embodiment 1 are used in step 201.
Step 202, calculating the product of the user implicit factor vector and the object implicit factor vector, and sorting the objects according to the order of the product from high to low.
The product of the user implicit factor vector and the object implicit factor vector is the predicted evaluation value of the user on the object.
Step 203, recommending a plurality of objects ranked at the front to the user.
Therefore, the recommendation of the proper object to the users of the specific group is realized, so that the click conversion rate of the object is improved, for example, coupons of mother and infant products are recommended to pregnant women, coupons of digital products are recommended to digital owners, coupons of cosmetics or clothes are recommended to fashion girls and the like.
Taking the data of tables 1-3 shown in example 1 as an example, it is input as an input parameter to the collaborative filtering model, calculatedAs shown in table 4:
TABLE 4 Table 4
Referring to table 4, the missing evaluation values in the original evaluation matrix R were all estimated. Thus, according toA corresponding recommendation list for each user can be obtained, see table 5:
TABLE 5
Wherein the recommendation list is based on an evaluation matrixThe evaluation values of 20 commodities are ranked from large to small by the user, namely, the commodities with high evaluation values are ranked at the top of the list, and the corresponding objects can be recommended to the user according to the evaluation value.
Example 5
The present embodiment provides an electronic device including a memory, a processor, and a computer program stored on the memory and executable on the processor, the processor implementing the recommendation method in embodiment 4 when executing the computer program.
Example 6
The present embodiment provides a computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of the recommendation method in embodiment 4.
Example 7
The present embodiment provides a prediction system for object evaluation values, which is used for calculating defect values of scoring matrices of objects (such as commodities, articles, coupons, etc.), namely, calculating predicted evaluation values of unknown objects by users to accurately predict the preference degree of the unknown objects by the users, and the establishment system comprises a database 10, a data acquisition module 11, a noise adding module 12, a model training module 13, a function construction module 14 and a data processing module 15, as shown in fig. 5.
The database 10 is used to store user data and object data.
The data acquisition module 11 is configured to query the user data for the target user parameter, and query the target data for the target object parameter and the object evaluation value, and construct the user feature vector, the object feature vector, and the object scoring matrix according to the target user parameter, the object evaluation value, and the target object parameter.
The user characteristic vector comprises the following parameters of a user name, age, gender, address, total purchase times, average browsing time, average expense amount and the like. The object feature vector includes parameters such as object name, category, price, place of origin, place of shipment, total number of purchased and total number of browsed, etc. The object assessment value characterizes the scoring of the object by different users. The object scoring matrix is constructed according to the object evaluation value and is a sparse matrix. Assuming that the score is 1-5, the higher the score is, the higher the user preference degree of the object is, the missing value in the sparse matrix is that the preference degree of a certain user on a certain object is unknown, and the calculation is represented by 0. The score grade value in the object scoring matrix R can be generally calculated through implicit feedback (such as the stay time of the user on a certain object page, the browsing frequency, etc.) or display feedback (such as the evaluation score of the user on a certain object, etc.) of the user.
The noise adding module 12 is configured to add noise to the user feature vector, the object feature vector, and the object scoring matrix.
For example, white noise, gaussian noise, etc. are added to the user feature vector, the object feature vector, and the object scoring matrix to improve the robustness of the model.
When the object scoring matrix is subjected to noise adding processing:
the noise plus module 12 converts the object scoring matrix into a first evaluation value matrix and a second evaluation value matrix.
The first evaluation value matrix characterizes evaluation values of all n objects of each user i, and the second evaluation value matrix characterizes evaluation values of all m users on the object j, in particular:
The matrix is to be evaluatedConversion into a first evaluation value matrixFor each user i e {1,..m },Evaluating the row vectors of the matrix R for evaluating all n objects of the user i;
Converting the evaluation matrix R into a second evaluation value matrix
The evaluation values for object j for all m users, i.e. the column vectors of matrix R, are evaluated.
The noise adding modules 12 are respectively matched withAndRespectively carrying out noise adding treatment to obtainAnd
To pair(s)The vector of the evaluation value after the noise processing is added,To pair(s)And adding the noise processed evaluation value vector.
User feature vectors and object feature vectors are used separatelyAndRepresentation, corresponding noise added representation isAnd
In this embodiment, the data processing module 15 may also be used to process the user feature vector, the object feature vector and the object scoring matrix before the noise additionAnd xi,yj to pre-process, leaving the noise freeAnd xi,yj obeys the following gaussian distribution:
So thatAnd xi,yj is somewhat infinitely close to each layer of output results of the model during training.
The data processing module 15 inputs the preprocessed user feature vector, object feature vector and object scoring matrix into the noise plus module 12.
The model training module 13 is configured to input the user feature vector, the object feature vector, and the object scoring matrix subjected to noise processing as training samples to the aSDAE model, and train to obtain a collaborative filtering model.
Wherein the output parameters of the collaborative filtering model include a user implicit factor vector and an object implicit factor vector. The product of the user implicit factor vector and the object implicit factor vector characterizes the user's predicted evaluation value of the object. aSDAE models include a user aSDAE model, an object aSDAE model, and a matrix factorization model.
In this embodiment, the learning object implicit factor vector and the user implicit factor vector are trained based on a random gradient algorithm (SGD), specifically:
Will beAndInput user aSDAE model to beAndThe object aSDAE model is input, and the learning object implicit factor vector and the user implicit factor vector are trained.
The output parameters of the user aSDAE model are user implicit factor vectors, and the output parameters of the object aSDAE model are object implicit factor vectors.
Referring to fig. 2, in each iteration, the training update rule is as follows:
wherein U and V are two low-rank (low-rank) matrices obtained based on a matrix decomposition model, and R is approximately equal to UVT; representing the objective function of each iteration, eta is the learning rate of the random gradient descent algorithm, and ui 'and vj' represent the results after the current iteration as the basis of the next iteration.
In fig. 2, L is the number of layers of the user aSDAE model and the object aSDAE model, L e { 1..once., L }; Model for user aSDAEAs input layer 1 results; Model for user aSDAEThe first input isLayer (middle layer) results.Model object aSDAEAs input layer 1 results; model object aSDAEThe first input isLayer (middle layer) results.
Model for user aSDAEAs input layer 1 results; model object aSDAEAs a result of the input layer i. Wl is weight parameter of user aSDAE model at the first layer, bl is corresponding weight parameter, Tl isAdding weight parameters of the first layer of the user aSDAE model, wherein W 'l is weight parameters of the object aSDAE model at the first layer, b 'l is a corresponding bias vector, and T 'l isThe weight parameters of the object aSDAE model layer i are added.
In this embodiment, when model training is performed, the model parameters Wl、Tl、bl、W′l、T′l and b'l and the output result of each layer of the model satisfy the following distribution:
(a) User weight matrixN e {1,..Kl-1 } is the number of nodes of the first layer of the user aSDAE model of the Wl,*n,Kl table, and K0=KL =n, and setting an object weight matrixN '∈ {1,..k'l-1 } is W 'l,*n′,K′l, representing the number of nodes of the first layer of the user aSDAE, K'0=K′L =m;
Let the values of Wl,*n and W'l,*n′ obey the following distribution:
Wherein,Is a identity matrix of size Kl*Kl; is an identity matrix of size K'l*K′l;
(b) Weight matrix of user feature vectorsN e { 1..p } is Tl,*n, and a weight matrix of the object feature vector is setN′ e { 1..q } is T'l,*n′;
Let the values of Tl,*n and T'l,*n′ obey the following distribution:
(c) Each layer of the user aSDAE model and the object aSDAE model outputs resultsAndObeys the following distribution:
Wherein,
As lambdas approaches +.infinity,The obeyed Gaussian distribution becomesIs a centered DIRAC DELTA distribution; The obeyed Gaussian distribution becomesIs a centered DIRAC DELTA distribution;
Derivative of ui and vjCan be further refined into:
cij is a confidence parameter, namely:
(d) The corresponding bias vectors bl and b'l are subjected to the following distribution:
bl is a constant parameter of each layer of the user aSDAE model, and b′l is a constant parameter of each layer of the object aSDAE model;
Wherein lambdaw,λt,λs,λn,λu,λv is the hyper-parameter of the model.
After each iteration, whether the current aSDAE model meets the constraint condition of the optimization target is judged.
If yes, determining the current aSDAE model as a final collaborative filtering model, and if not, reselecting a training sample, and debugging model parameters until an objective functionIs the minimum value.
In this embodiment, the function construction module 14 constructs an objective function of the training aSDAE model based on the bayesian maximum likelihood theory, specifically as follows:
As lambdas approaches +.infinity, minimizing an objective functionThe process is as follows:
When the objective functionAt minimum, the current aSDAE model is determined as the final collaborative filtering model, and the intermediate layer of the user aSDAE model in the current aSDAE model is added with the first error epsiloni, namelyAnd adding a second error εj to the intermediate layer of the object aSDAE model, i.e.As output parameters of the model, namely the object implicit factor vector vj and the user implicit factor vector ui, the product Rij of vj and ui obeys the following distribution:
cij is a confidence parameter, namely:
Wherein the first error εi and the second error εj obey the following distribution:
Where k is the dimension of the implicit factor vector.
The collaborative filtering model can accurately predict the evaluation value of the current user on the unknown object, namely accurately predict the preference degree of the user on the unknown object, and provide reference for personalized object recommendation. Specifically, when the collaborative filtering model is used for prediction, if learning is performed, a user implicit factor matrix is obtainedAnd object implicit factor matrixThe predictive evaluation matrix can be approximately obtainedI.e.Thus, for each user, a list of the user's assessment rank for each object can be obtained based on the product of the user's implicit factor matrix and the object implicit factor matrix.
Example 8
The present embodiment provides a recommendation system including a calculation module 21, a ranking module 22, a recommendation module 23, and a prediction system 24 using the object evaluation values in embodiment 7.
The calculation module 21 is configured to invoke a prediction system to predict the user implicit factor vector and the object implicit factor vector of the noisy user feature vector, the object feature vector, and the object scoring matrix, and calculate a product of the user implicit factor vector and the object implicit factor vector.
The product of the user implicit factor vector and the object implicit factor vector is the predicted evaluation value of the user on the object.
The ordering module 22 is configured to order the objects in order of products from high to low.
The recommendation module 23 is used for recommending a plurality of objects ranked at the front to the user.
Therefore, the recommendation of the proper object to the users of the specific group is realized, so that the click conversion rate of the object is improved, for example, coupons of mother and infant products are recommended to pregnant women, coupons of digital products are recommended to digital owners, coupons of cosmetics or clothes are recommended to fashion girls and the like.
While specific embodiments of the invention have been described above, it will be appreciated by those skilled in the art that this is by way of example only, and the scope of the invention is defined by the appended claims. Various changes and modifications to these embodiments may be made by those skilled in the art without departing from the principles and spirit of the invention, but such changes and modifications fall within the scope of the invention.