[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN111814044A - Recommendation method and device, terminal equipment and storage medium - Google Patents

Recommendation method and device, terminal equipment and storage medium Download PDF

Info

Publication number
CN111814044A
CN111814044A CN202010620834.8A CN202010620834A CN111814044A CN 111814044 A CN111814044 A CN 111814044A CN 202010620834 A CN202010620834 A CN 202010620834A CN 111814044 A CN111814044 A CN 111814044A
Authority
CN
China
Prior art keywords
recommended
vector
information
recommendation
inputting
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN202010620834.8A
Other languages
Chinese (zh)
Other versions
CN111814044B (en
Inventor
文谊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Shiyuan Electronics Thecnology Co Ltd
Original Assignee
Guangzhou Shiyuan Electronics Thecnology Co Ltd
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 Guangzhou Shiyuan Electronics Thecnology Co Ltd filed Critical Guangzhou Shiyuan Electronics Thecnology Co Ltd
Priority to CN202010620834.8A priority Critical patent/CN111814044B/en
Publication of CN111814044A publication Critical patent/CN111814044A/en
Application granted granted Critical
Publication of CN111814044B publication Critical patent/CN111814044B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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/9536Search customisation based on social or collaborative filtering
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention discloses a recommendation method, a recommendation device, terminal equipment and a storage medium. The method comprises the following steps: acquiring a corresponding information set to be recommended and a corresponding historical information set based on the user identification information; acquiring any information to be recommended from the information set to be recommended as current information to be recommended; inputting the current information to be recommended, the historical information set and the user identification information into a recommendation system, determining the recommendation probability of the current information to be recommended, and continuing to execute the operation of obtaining the current information to be recommended until the recommendation probabilities of all the information to be recommended in the information set to be recommended are determined to be finished; determining a recommendation sequence of each piece of information to be recommended in the information set to be recommended based on each recommendation probability, and recommending based on the recommendation sequence; the recommendation probability is determined based on a behavior vector corresponding to the historical information, and the behavior vector is determined by the recommendation system based on the relevance between the historical information set and the current information to be recommended. By the method, the historical information included in the historical information set is fully utilized, and the recommendation accuracy is improved.

Description

Recommendation method and device, terminal equipment and storage medium
Technical Field
The embodiment of the invention relates to the technical field of computers, in particular to a recommendation method, a recommendation device, terminal equipment and a storage medium.
Background
In the current information explosion era, as the personalized recommendation algorithm can better meet the requirements of users on the content of interest of the users, rapid development and extensive research are carried out in the years.
At present, a neural collaborative filtering recommendation algorithm based on deep learning is a recommendation algorithm widely applied in the industry, and a large number of potential interest points of a user can be mined by using the strong fitting effect of deep learning and using simple historical information of the user under the support of mass data. Although this scheme is very widely used, it does not effectively use the history information of the user.
Disclosure of Invention
The embodiment of the invention provides a recommendation method, a recommendation device, terminal equipment and a storage medium, which effectively utilize historical information of a user during recommendation.
In a first aspect, an embodiment of the present invention provides a recommendation method, including:
acquiring a corresponding information set to be recommended and a corresponding historical information set based on the user identification information;
acquiring any information to be recommended from the information set to be recommended as current information to be recommended;
inputting the current information to be recommended, the historical information set and the user identification information into a recommendation system, determining the recommendation probability of the current information to be recommended, and continuing to execute the operation of obtaining the current information to be recommended until the recommendation probabilities of all the information to be recommended in the information set to be recommended are determined to be finished;
determining a recommendation sequence of each piece of information to be recommended in the information set to be recommended based on each recommendation probability, and recommending based on the recommendation sequence;
and each recommendation probability is determined based on a behavior vector corresponding to the historical information set, and the behavior vector is determined by the recommendation system based on the relevance of the historical information set and the current information to be recommended.
Further, the recommending system includes a behavior prediction model and a neural collaborative filtering model, and correspondingly, the inputting the current information to be recommended, the historical information set, and the user identification information into the recommending system to determine the recommendation probability of the current recommendation information includes:
inputting a vector to be recommended corresponding to the current information to be recommended and the historical information set into a behavior prediction model, and determining the behavior vector, wherein the vector to be recommended is formed by vectorizing the current information to be recommended;
and inputting the behavior vector, the current information to be recommended and the user identification information into a neural collaborative filtering model, and determining the recommendation probability of the current recommendation information.
Further, the behavior prediction model comprises a first vector conversion module and an association module; correspondingly, the inputting the vector to be recommended corresponding to the current information to be recommended and the historical information set into a behavior prediction model to determine the behavior vector includes:
inputting the historical information set into a first vector conversion module, and determining a corresponding historical vector, wherein the historical vector is formed by converting each piece of historical information in the historical information set into a vector form and then stacking the converted historical information;
and inputting the vector to be recommended corresponding to the current information to be recommended and the historical vector to an association module, and determining a behavior vector.
Further, the associating module includes a convolution sub-module and an associating sub-module, and correspondingly, the inputting the vector to be recommended corresponding to the current information to be recommended and the history vector to the associating module to determine the behavior vector includes:
inputting the history vectors into a convolution submodule to obtain convolution vectors corresponding to the history vectors, wherein the number of the convolution vectors is at least one, and different convolution vectors are determined by adopting different convolution cores to perform convolution on the history vectors;
and inputting the convolution vector and the vector to be recommended to a correlation submodule to determine a behavior vector.
Further, the association sub-module includes: correspondingly, the inputting the convolution vector and the vector to be recommended to a correlation submodule to determine a behavior vector includes:
when the number of the convolution vectors is one, inputting the convolution vectors and the vector to be recommended into an inner product unit, determining the weight of the convolution vectors, and inputting the convolution vectors and the weight into the vector generation unit to obtain a behavior vector, wherein the behavior vector is the product of the weight and the convolution vector;
when the number of the convolution vectors is at least two, inputting the convolution vectors into the length adjusting unit to obtain adjusted convolution vectors, inputting the adjusted convolution vectors and the vectors to be recommended into the inner product unit, determining the weights of the adjusted convolution vectors, and inputting the adjusted convolution vectors and the corresponding weights into the vector generating unit to obtain behavior vectors, wherein the behavior vectors are determined by weighted summation of each adjusted convolution vector and the corresponding weight.
Further, the neural collaborative filtering model includes: the system comprises a second vector conversion module, a third vector conversion module, a feature sharing module and a probability generation module; correspondingly, inputting the behavior vector, the current information to be recommended and the user identification information into a neural collaborative filtering model, and determining the recommendation probability of the current recommendation information, including:
inputting the current information to be recommended into a second vector conversion module, and determining a corresponding vector to be recommended;
inputting the user identification information into the third vector conversion module, and determining a corresponding user vector;
inputting the behavior vector and the vector to be recommended to a feature sharing module, and determining the shared vector to be recommended;
and inputting the shared vector to be recommended and the user vector into a probability generation module, and determining the recommendation probability of the current information to be recommended.
Further, the probability generation module comprises a splicing submodule and a probability generation submodule; correspondingly, the step of inputting the shared vector to be recommended and the user vector into a probability generation module to determine the recommendation probability of the current information to be recommended includes:
inputting the shared vector to be recommended and the user vector into a splicing submodule to obtain a spliced vector;
and inputting the splicing vector into the probability generation module, and determining the recommendation probability of the current information to be recommended.
Further, the method further comprises:
acquiring a training sample set, wherein the training sample set comprises a training to-be-recommended information set, a training history information set and training user identification information;
training a recommendation system by using the training sample set to obtain a trained recommendation system;
the loss function of the recommendation system is determined based on a weighted summation result of a first loss function corresponding to a behavior prediction model included in the recommendation system and a second loss function corresponding to a neural collaborative filtering model included in the recommendation system.
In a second aspect, an embodiment of the present invention further provides a recommendation apparatus, including:
the first acquisition module is used for acquiring a corresponding information set to be recommended and a corresponding historical information set based on the user identification information;
the second acquisition module is used for acquiring any information to be recommended from the information set to be recommended as the current information to be recommended;
the first determining module is used for inputting the current information to be recommended, the historical information set and the user identification information into a recommending system, determining the recommending probability of the current information to be recommended, and continuing to execute the operation of obtaining the current information to be recommended until the recommending probabilities of all the information to be recommended in the information set to be recommended are determined to be finished;
the second determining module is used for determining the recommendation sequence of each piece of information to be recommended in the information set to be recommended based on each recommendation probability and recommending based on the recommendation sequence;
and each recommendation probability is determined based on a behavior vector corresponding to the historical information set, and the behavior vector is determined by the recommendation system based on the relevance of the historical information set and the current information to be recommended.
In a third aspect, an embodiment of the present invention further provides a terminal device, including:
one or more processors;
storage means for storing one or more programs;
the one or more programs are executed by the one or more processors, so that the one or more processors implement the method provided by the embodiment of the invention.
In a fourth aspect, the embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored, and the computer program, when executed by a processor, implements the method provided by the embodiment of the present invention.
The embodiment of the invention provides a recommendation method, a recommendation device, terminal equipment and a storage medium, and the method comprises the steps of firstly, acquiring a corresponding information set to be recommended and a history information set based on user identification information; secondly, acquiring any information to be recommended from the information set to be recommended as the current information to be recommended; then inputting the current information to be recommended, the historical information set and the user identification information into a recommendation system, determining the recommendation probability of the current recommendation information, and continuing to execute the operation of obtaining the current information to be recommended until the recommendation probabilities of all the information to be recommended in the information set to be recommended are determined to be finished; finally, based on the recommendation probabilities, determining a recommendation sequence of each piece of information to be recommended in the information set to be recommended, and recommending based on the recommendation sequence; and each recommendation probability is determined based on a behavior vector corresponding to the historical information set, and the behavior vector is determined by the recommendation system based on the relevance of the historical information set and the current information to be recommended. By using the technical scheme, the historical information included in the historical information set is fully utilized, and the recommendation accuracy is improved.
Drawings
Fig. 1 is a schematic flowchart of a recommendation method according to an embodiment of the present invention;
FIG. 1a is a schematic diagram of a recommendation system according to the present invention;
FIG. 1b is a schematic diagram of a convolution operation with a convolution kernel size of 2 according to the present invention;
FIG. 1c is a schematic diagram of a convolution operation with a convolution kernel size of 3 according to the present invention;
FIG. 1d is a block diagram of an association module according to the present invention;
FIG. 1e is a schematic diagram of a cross feature sharing unit according to the present invention;
fig. 2 is a schematic structural diagram of a recommendation device according to a second embodiment of the present invention;
fig. 3 is a schematic structural diagram of a terminal device according to a third embodiment of the present invention.
Detailed Description
The present invention will be described in further detail with reference to the accompanying drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the invention and are not limiting of the invention. It should be further noted that, for the convenience of description, only some of the structures related to the present invention are shown in the drawings, not all of the structures.
Before discussing exemplary embodiments in more detail, it should be noted that some exemplary embodiments are described as processes or methods depicted as flowcharts. Although a flowchart may describe the operations (or steps) as a sequential process, many of the operations can be performed in parallel, concurrently or simultaneously. In addition, the order of the operations may be re-arranged. The process may be terminated when its operations are completed, but may have additional steps not included in the figure. The processes may correspond to methods, functions, procedures, subroutines, and the like. In addition, the embodiments and features of the embodiments in the present invention may be combined with each other without conflict.
The term "include" and variations thereof as used herein are intended to be open-ended, i.e., "including but not limited to". The term "based on" is "based, at least in part, on". The term "one embodiment" means "at least one embodiment".
It should be noted that the concepts of "first", "second", etc. mentioned in the present invention are only used for distinguishing corresponding contents, and are not used for limiting the order or interdependence relationship.
Example one
Fig. 1 is a flowchart of a recommendation method according to an embodiment of the present invention, where the method is applicable to a case of recommending information to be recommended based on a history information set, and the method may be executed by a recommendation apparatus, where the apparatus may be implemented by software and/or hardware and is generally integrated on a terminal device, and in this embodiment, the terminal device includes but is not limited to: a computer.
As shown in fig. 1, a recommendation method provided in an embodiment of the present invention includes the following steps:
and S110, acquiring a corresponding information set to be recommended and a corresponding historical information set based on the user identification information.
In this embodiment, the user identification information may be information identifying a user. The user identification information corresponding to different users is different, and the user identification information can uniquely identify the user. The user may be a person who is currently to be provided with information to be recommended. As in a curriculum learning application, the user can be the person currently operating the curriculum learning application. The information set to be recommended can be regarded as a set of information to be recommended. The information to be recommended may be regarded as information that can be of interest to the user determined based on the user identification information, and the means for determining the information to be recommended is not limited herein. A set of historical information may be considered a collection of historical information. The history information may be information that the user has historically operated or viewed.
In this step, user identification information may be obtained first, for example, after the user logs in the application program, the user identification information may be determined based on the login information of the user. After the user identification information is determined, a history information set can be obtained from the user history data, and then the information to be recommended corresponding to the user identification information is obtained. All data of the user's historical operation of the application may be stored in the historical data, or at least include historical information.
After the information set to be recommended is obtained, the recommendation sequence of each information set to be recommended in the information set to be recommended can be determined.
And S120, acquiring any information to be recommended from the information set to be recommended as the current information to be recommended.
After the information to be recommended is obtained, any information to be recommended can be randomly obtained from the information set to be recommended as the current information to be recommended so as to determine the recommendation probability of the current information to be recommended.
After the recommendation probability of each piece of information to be recommended is determined, which piece of information to be recommended is recommended or the recommendation sequence of each piece of information to be recommended can be determined.
S130, inputting the current information to be recommended, the historical information set and the user identification information into a recommendation system, determining the recommendation probability of the current recommendation information, and continuing to execute the operation of obtaining the current information to be recommended until the recommendation probabilities of all the information to be recommended in the information set to be recommended are determined to be finished.
The recommendation system may be a system that determines a recommendation probability for information to be recommended. The recommendation probability may be a probability that the current information to be recommended is recommended.
The recommendation system may determine a recommendation probability of the current information to be recommended based on the user identification information, the current information to be recommended, and the historical information set. When the recommendation system determines the recommendation probability, information fusion can be performed on each piece of historical information in the historical information set and the current information to be recommended, so that the recommendation system can make full use of the historical information in the historical information set. For example, the recommendation system may determine the behavior vector according to the association between the history information set and the current information to be recommended, so as to fully utilize the history information. The historical information is combined with the user identification information to determine the recommendation probability of the current information to be recommended. Namely, the recommendation probability of each piece of information to be recommended in the information set to be recommended is determined based on the behavior vector corresponding to the history information set, and the behavior vector is determined by the recommendation system based on the relevance of the history information set and the current information to be recommended. The relevance between the current information to be recommended and the historical information set can be represented by weight. For example, the relevance is determined based on the convolution vector corresponding to the historical information set and the vector to be recommended corresponding to the current information to be recommended.
S140, based on the recommendation probabilities, determining a recommendation sequence of each piece of information to be recommended in the information set to be recommended, and recommending based on the recommendation sequence.
After the recommendation probability of each piece of information to be recommended in the information set to be recommended is determined, the recommendation sequence of the information to be recommended can be determined based on the recommendation probability. The recommendation sequence can be regarded as the sequence in which the information to be recommended is recommended to the user.
After the recommendation sequence is determined, the step can perform recommendation based on the recommendation sequence, for example, sequentially recommending the information to be recommended to the user based on the respective recommendation sequence; or, the information to be recommended is recommended after being arranged and displayed based on respective recommendation sequences; or recommending the information to be recommended with the recommendation probability larger than a certain value, wherein the recommendation mode is not limited.
The recommendation method provided by the embodiment of the invention comprises the steps of firstly, acquiring a corresponding information set to be recommended and a historical information set based on user identification information; secondly, acquiring any information to be recommended from the information set to be recommended as the current information to be recommended; then inputting the current information to be recommended, the historical information set and the user identification information into a recommendation system, determining the recommendation probability of the current recommendation information, and continuing to execute the operation of obtaining the current information to be recommended until the recommendation probabilities of all the information to be recommended in the information set to be recommended are determined to be finished; finally, based on the recommendation probabilities, determining a recommendation sequence of each piece of information to be recommended in the information set to be recommended, and recommending based on the recommendation sequence; and each recommendation probability is determined based on a behavior vector corresponding to the historical information set, and the behavior vector is determined by the recommendation system based on the relevance of the historical information set and the current information to be recommended. By the method, the historical information included in the historical information set is fully utilized, and the recommendation accuracy is improved.
On the basis of the above-described embodiment, a modified embodiment of the above-described embodiment is proposed, and it is to be noted herein that, in order to make the description brief, only the differences from the above-described embodiment are described in the modified embodiment.
In one embodiment, the recommending system includes a behavior prediction model and a neural collaborative filtering model, and accordingly, the inputting the current information to be recommended, the historical information set, and the user identification information into the recommending system to determine the recommendation probability of the current recommendation information includes:
inputting a vector to be recommended corresponding to the current information to be recommended and the historical information set into a behavior prediction model, and determining the behavior vector, wherein the vector to be recommended is formed by vectorizing the current information to be recommended;
and inputting the behavior vector, the current information to be recommended and the user identification information into a neural collaborative filtering model, and determining the recommendation probability of the current recommendation information.
In this embodiment, the recommendation system includes a behavior prediction model and a neural collaborative filtering model, where the behavior prediction model may be considered as a model in which a convolutional neural network based on an attention mechanism processes a history information set, and the behavior prediction model may effectively avoid a problem that a recursive neural network cannot avoid noise data in the history information. The invention can more effectively learn the potential information of the historical information through the behavior prediction model. The neural collaborative filtering model can ensure the consistency of information sharing among tasks, such as the information sharing of historical information and current information to be recommended in a historical information set, thereby improving the accuracy of recommendation.
When the recommendation probability is determined based on the recommendation system, the embodiment may input the vector to be recommended corresponding to the current information to be recommended and the historical information set to the behavior prediction model, and determine the behavior vector. The behavior prediction model may be a model that determines a behavior vector. The behavior vector may be determined based on the relevance of the information to be recommended and each piece of historical information in the set of historical information. The vector to be recommended may be a vector formed by vectorizing the current information to be recommended.
The behavior prediction model may determine a behavior vector based on the relevance between the information to be recommended and each piece of history information in the history information set, for example, determine a behavior vector based on a convolution vector corresponding to the history information set and a weight of each convolution vector, where the weight of each convolution vector may reflect the relevance between the information to be recommended and each piece of history information in the history information set.
After determining the behavior vector, the present embodiment may input the behavior vector, the current information to be recommended, and the user identification information to the neural collaborative filtering model to determine the recommendation probability. The purpose of inputting the behavior vector into the neural collaborative filtering model can be to realize information sharing between a recommendation vector corresponding to the current information to be recommended and the behavior vector so as to improve the accuracy of recommendation.
The neural collaborative filtering model can perform feature sharing on the recommendation vector and the behavior vector, and then determine recommendation probability by combining with the user vector corresponding to the user identification information. The recommendation vector and the behavior vector can complete feature sharing through a feature sharing module to obtain a shared vector to be recommended. The method and the device can process the user vector and the shared vector to be recommended based on the probability generation module to obtain the recommendation probability. The probability generation module may include a layer of neural networks and activation functions.
In one embodiment, the behavior prediction model includes a first vector conversion module and an association module; correspondingly, the inputting the vector to be recommended corresponding to the current information to be recommended and the historical information set into a behavior prediction model to determine the behavior vector includes:
inputting the historical information set into a first vector conversion module, and determining a corresponding historical vector, wherein the historical vector is formed by converting each piece of historical information in the historical information set into a vector form and then stacking the converted historical information;
and inputting the vector to be recommended corresponding to the current information to be recommended and the historical vector to an association module, and determining a behavior vector.
The first vector conversion module may be a module that implements vector conversion, e.g., the first vector conversion module may implement vectorization of history information in the history information set. The association module may be regarded as a module for determining the association between the history information set and the current information to be recommended. The association module may determine a behavior vector based on the association of the historical information set and the current information to be recommended.
The embodiment may input the history information set into the first vector conversion module to determine a history vector corresponding to the history information set. The history vector may be formed by stacking the history information after converting the history information into a vector form. The first vector conversion module can conduct embedding operation on the historical information to achieve vectorization of the historical information. After each history information is converted into a vector form, the history information may be stacked into a behavior vector based on a certain order, and the order is not limited herein and may be set by itself as long as the position of the history information expressed in the vector form in the history vector can be determined.
After the history vector is determined, the history vector and the vector to be recommended can be input to the association module to determine the behavior vector. The vector to be recommended may be a vector obtained after the embedding operation, and for example, the information to be recommended is input to the second vector conversion module to obtain the vector to be recommended. The first vector conversion module and the first vector conversion module can share one embedding when realizing vectorization, namely share one matrix, so as to realize sharing of characteristics of the historical information and the current information to be recommended.
The association module may first determine the association between the history vector and the vector to be recommended, such as determining the weight of a convolution vector corresponding to the history vector and the vector to be recommended, so as to determine the behavior vector based on the result of weighting the convolution vector and the weight.
In one embodiment, the associating module includes a convolution sub-module and an associating sub-module, and correspondingly, the inputting the vector to be recommended corresponding to the current information to be recommended and the history vector to the associating module to determine the behavior vector includes:
inputting the history vectors into a convolution submodule to obtain convolution vectors corresponding to the history vectors, wherein the number of the convolution vectors is at least one, and different convolution vectors are determined by adopting different convolution cores to perform convolution on the history vectors;
and inputting the convolution vector and the vector to be recommended to a correlation submodule to determine a behavior vector.
The convolution sub-module may be a sub-module that convolves the history vector. Different convolution cores are adopted to convolve the history vectors to obtain different convolution vectors. The different sizes of the convolution kernels can reflect the relationship between different numbers of historical information and information to be recommended. The convolution vector can be considered as a vector obtained by performing convolution processing on the history vector by using a convolution kernel. The number of convolution vectors may be determined by the number of convolution kernels.
The association submodule may be regarded as a submodule that determines an association between the convolution vector and the vector to be recommended, and determines a behavior vector based on the association. The association submodule can determine the weight of the vector to be recommended based on the vector to be recommended and the convolution vector, wherein the weight can reflect the association between the vector to be recommended and the convolution vector, namely the association between the information to be recommended and the historical information. After the association submodule determines the weights, the behavior vector may be determined based on the convolution vector and the corresponding weights, that is, the weights of the convolution vector and the corresponding weights are determined as the behavior vector.
In one embodiment, the association submodule includes: correspondingly, the inputting the convolution vector and the vector to be recommended to a correlation submodule to determine a behavior vector includes:
when the number of the convolution vectors is one, inputting the convolution vectors and the vector to be recommended into an inner product unit, determining the weight of the convolution vectors, and inputting the convolution vectors and the weight into the vector generation unit to obtain a behavior vector, wherein the behavior vector is the product of the weight and the convolution vector;
when the number of the convolution vectors is at least two, inputting the convolution vectors into the length adjusting unit to obtain adjusted convolution vectors, inputting the adjusted convolution vectors and the vectors to be recommended into the inner product unit, determining the weights of the adjusted convolution vectors, and inputting the adjusted convolution vectors and the corresponding weights into the vector generating unit to obtain behavior vectors, wherein the behavior vectors are determined by weighted summation of each adjusted convolution vector and the corresponding weight.
The length adjustment unit can be regarded as a unit that adjusts the length of the convolution vector. The inner product unit may be a unit that performs an inner product operation. The vector generation unit may be regarded as a unit that generates a behavior vector.
When the number of the convolution vectors is at least two, different convolution vectors are obtained by convolution of the history vectors by adopting convolution cores with different sizes, and the lengths of the vectors are inconsistent, so that the lengths of the convolution vectors can be adjusted by the length adjusting unit, so that the adjusted lengths of the convolution vectors are consistent. The length of the adjusted convolution vector may coincide with the length of the user vector.
The inner product unit can perform inner product operation on the adjusted convolution vector and the vector to be recommended, and then the inner product operation is processed through a softmax function to obtain the weight of each adjusted convolution vector and the vector to be recommended.
After the vector generation unit obtains the adjusted convolution vector and the corresponding weight, weighting processing may be performed to obtain a behavior vector.
When the number of the convolution vectors is one, the length adjustment unit can also be used for processing the convolution vectors so as to enable the length of the adjusted convolution vectors to be equal to the length of the user vector. A behavior vector is then determined based on the adjusted convolution vector. The means for determining the behavior vector refers to the means when the number of the convolution vectors is at least two, and is not described herein again.
In one embodiment, the neural collaborative filtering model includes: the system comprises a second vector conversion module, a third vector conversion module, a feature sharing module and a probability generation module; correspondingly, inputting the behavior vector, the current information to be recommended and the user identification information into a neural collaborative filtering model, and determining the recommendation probability of the current recommendation information, including:
inputting the current information to be recommended into a second vector conversion module, and determining a corresponding vector to be recommended;
inputting the user identification information into the third vector conversion module, and determining a corresponding user vector;
inputting the behavior vector and the vector to be recommended to a feature sharing module, and determining the shared vector to be recommended;
and inputting the shared vector to be recommended and the user vector into a probability generation module, and determining the recommendation probability of the current information to be recommended.
The second vector conversion module may be regarded as a module for implementing vectorization, such as a module for converting the current information to be recommended into a vector to be recommended. The third vector conversion module may be regarded as a module that implements vectorization, such as a module that implements user identification information vectorization. The feature sharing module may be considered as a module that implements feature sharing, which may include a cross feature sharing unit. The feature sharing module can realize the sharing of the features of the behavior vector and the vector to be recommended. The probability generation module may be considered as a module that determines the recommendation probability. The probability generation module may determine a recommendation probability based on the user vector and the shared information to be recommended.
The working principle of the second vector conversion module and the third vector conversion module is mainly to perform embedding operation, and specific contents can be referred to the first vector conversion module, which is not described herein.
The feature sharing module can realize the exchange and fusion of the behavior vector and the vector to be recommended through the cross feature sharing unit so as to determine the shared vector to be recommended.
The probability generation module can stack and splice the user vector and the vector to be recommended, and then the recommendation probability of the information to be recommended is obtained after the user vector and the vector to be recommended are processed through a layer of neural network and an activation function.
In one embodiment, the probability generation module comprises a concatenation submodule and a probability generation submodule; correspondingly, the step of inputting the shared vector to be recommended and the user vector into a probability generation module to determine the recommendation probability of the current information to be recommended includes:
inputting the shared vector to be recommended and the user vector into a splicing submodule to obtain a spliced vector;
and inputting the splicing vector into the probability generation module, and determining the recommendation probability of the current information to be recommended.
The splicing submodule can be a module for splicing the vector to be recommended and the user vector after sharing. The probability generation sub-module may generate a module that recommends probabilities based on the stitching vector. The splicing vector can be regarded as a vector obtained by splicing the vector to be recommended and the user vector. For example, the splicing sub-module may splice the user vectors after the vector to be recommended to obtain a spliced vector.
The probability generation module can process the splicing vector based on a layer of neural network and an activation function to determine the recommendation probability of the information to be recommended.
In one embodiment, the method further comprises:
acquiring a training sample set, wherein the training sample set comprises a training to-be-recommended information set, a training history information set and training user identification information;
training a recommendation system by using the training sample set to obtain a trained recommendation system;
the loss function of the recommendation system is determined based on a weighted summation result of a first loss function corresponding to a behavior prediction model included in the recommendation system and a second loss function corresponding to a neural collaborative filtering model included in the recommendation system.
The training sample set may be considered as a set of samples for training the recommendation system. The information set to be recommended for training may be an information set to be recommended for training obtained in a training phase. The training history information set may be regarded as user identification information acquired in the training phase. The training user identification information may be considered as user identification information used in the training phase. The training phase is the phase of training the recommendation system. The training to-be-recommended information set and the training historical information set have a corresponding relationship with the training user identification information.
It should be noted that the information set to be recommended, the history information set, and the user identification information according to the above embodiments of the present invention are data obtained when a recommendation system is applied, and are different from the information set to be recommended for training, the history information set for training, and the user identification information for training.
The following describes an exemplary method for recommending a sequence-enhanced neural collaborative filtering based on multitask. Recommendation algorithms are taken as core competitiveness of companies to be researched by large-scale internet companies, related algorithms related to the recommendation algorithms appear in large quantities, and various different algorithms solve problems in some specific scenes, but most of the algorithms have some more or less problems.
With the drive of AlphaGo in recent years, the strong learning ability of deep learning has been widely accepted and recognized by human beings, the recommendation algorithm research based on deep learning has been vigorously developed, and due to the improvement of the computer power and the sudden increase of the user data volume, the recommendation algorithm based on deep learning can obtain very obvious effect improvement, and brings more values to users and enterprises.
The neural collaborative filtering recommendation algorithm based on deep learning is a recommendation algorithm widely applied to the industry, and a large number of potential interest points of users can be mined by using strong fitting effects of deep learning and simple historical information under the support of mass data. Although this solution is very widely used, it still has a number of unavoidable problems:
1. the behavior sequence data of the user, namely historical information, is not considered in many neural collaborative filtering models, the next behavior of the user is strongly influenced by the current behaviors of the user for several times, and how to consider the behavior data of the user, namely the historical information, to the current neural collaborative filtering model is a valuable research;
2. some of the latest researches attempt to introduce user behavior sequence information, namely historical information, into a neural collaborative filtering model, but the scheme only uses the user behavior sequence, namely the historical information, as a mixed input feature, lacks effective modeling on the user behavior sequence information, and has difficulty in explaining whether the model learns valuable information on the user behavior sequence.
3. In the current multi-task deep learning model, the bottom layer parameters are shared on a parameter sharing mechanism to achieve information exchange and fusion of a plurality of tasks, but certain differences exist among different tasks, and the bottom layer parameter sharing mechanism is easy to cause negative effects on another task due to direct parameter modification and common update, so that the design requirements on the data quality and the parameters are extremely high.
The method can be suitable for the class optimization master supply station course recommendation scene, can be better suitable for the existing scene, and can bring greater change value for the class optimization master. It should be noted that the application scenario is not limited to the new type. The recommendation method provided by the invention adds the user behavior sequence information, namely the historical information set, into the neural collaborative filtering by using a multitask learning method, enriches the information expression of the neural collaborative filtering by using the user behavior sequence information, and achieves the purpose of enhancing the neural collaborative filtering.
Compared with the traditional mode of extracting the information of the sequence data by utilizing the circular recurrent neural network, the invention provides the aim of modeling the sequence information, namely the historical information set, by utilizing the convolutional neural network based on the attention mechanism, and the method can effectively avoid that the circular recurrent neural network cannot carry out modeling on the user behavior sequence, namely the noise data in the historical information, and can more effectively learn the potential information of the user behavior sequence; the invention provides a multi-layer information sharing mechanism based information sharing constraint for sharing information of entities of the same type among tasks, and the consistency of information sharing among the tasks is ensured. In a traditional multi-task learning scheme, information sharing among tasks is generally shared based on underlying embedding, the requirement on task consistency of the scheme is high, and information loss among the multiple tasks can be caused by utilizing the sharing mechanism for different types of tasks.
Fig. 1a is a schematic diagram of a framework of a recommendation system provided by the present invention, and referring to fig. 1a, the recommendation system includes a behavior prediction model 31 and a neural collaborative filtering model 32, and the upper half, namely the behavior prediction model 31, can be regarded as a user behavior sequence prediction model using a historical information set. The input of the recommendation system includes user identification information, i.e. user, a set of historical information, i.e. item1, item2, item3 and item4, and current information to be recommended, i.e. item. The current information to be recommended may be regarded as a predicted item to be acted upon by the user, and the history information included in the history information set may represent the item acted upon by the user before.
After the user identification information, the historical information set and the current information to be recommended are obtained, embedding operation can be respectively carried out on the user identification information, the historical information set and the current information to be recommended, namely, operation of converting the user identification information, the historical information set and the current information to be recommended into low-dimensional dense vectors is carried out.
The subscriber identity information may be mapped to a vector Ui∈RdThe ID maps the ID of the ith user to a dense vector of dimension d. The current information to be recommended is mapped into a vector Qi∈RdThe method comprises the steps that the identifier of the ith article, namely the ith current information to be recommended, which is obtained from the information set to be recommended is mapped into a low-dimensional dense vector with the length of d; the vectors mapped based on the historical information set are then stacked into a matrix,
Figure BDA0002562968080000121
the history vector (i.e. history sequence embedding matrix) representing the u-th user, E(u,t)∈R4×d
After the history vectors are determined, convolution operation needs to be performed on the matrix, and different convolution kernels are adopted to perform convolution on the matrix respectively to obtain different convolution vectors. The convolution vector is determined by the following computational expression:
Figure BDA0002562968080000131
wherein h is equal to k, Fk∈Rh×dK is more than or equal to 1 and less than or equal to n and is a convolution kernel of convolution operation, E represents a matrix region acted by the convolution kernel, i is more than or equal to 1 and less than or equal to 4-k +1, and a corresponding convolution vector can be obtained for given k through the convolution operation from bottom to top, namely the corresponding convolution vector is obtained
Figure BDA0002562968080000132
Fig. 1b is a schematic diagram of a convolution operation with a convolution kernel size of 2 according to the present invention, and fig. 1c is a schematic diagram of a convolution operation with a convolution kernel size of 3 according to the present invention. Referring to fig. 1b and 1c, a convolution operation with a convolution kernel of 2 can capture the sequence relationship of item4 and item3 to item, and a convolution operation with a convolution kernel of 3 can capture the sequence relationship of item4, item3, and item2 to item.
Considering the unconstrained behavior of the user, a large amount of noise data exists in the actual sequence, different convolution kernels can be used to capture different subsequences, namely the sequence relation between the historical information and the item, but since the correlation between different subsequences and the item is inconsistent, in order to better express the inconsistency, the invention provides an attention mechanism to capture the correlation between different subsequences and the item.
Fig. 1d is a schematic diagram of a correlation module according to the present invention, and referring to fig. 1d, the correlation module may be a convolution subsequence capture module based on attention mechanism, wherein,
Figure BDA0002562968080000133
convolution vectors obtained by convolution operations with convolution kernels of 1, 2, 3 and 4 respectively are firstly processed by a layer of neural network due to the fact that the convolution vectors obtained by different convolution kernels are different in size
Figure BDA0002562968080000134
Mapped as a length d vector (i.e., the adjusted convolution vector)
Figure BDA0002562968080000135
Then respectively connect
Figure BDA0002562968080000136
And finally performing softmax on the numerical values to respectively obtain the weights of the vectors obtained by the item and different convolution kernels, wherein the weights represent the correlation between the item and different subsequences, namely the historical information in a historical information set.
Wherein the adjusted convolution vector is:
Figure BDA0002562968080000137
the weights of the convolution vectors after different adjustments and the vector to be recommended are
Figure BDA0002562968080000138
Wherein Q isiAnd the imbedding vector is the current information to be recommended, namely the vector to be recommended. The behavior vector may be:
Figure BDA0002562968080000139
i.e. a weighted sum of the adjusted convolution vectors and the corresponding weights.
The behavior prediction model has the capability of representing the learning of the current information to be recommended, i.e. siIs a representation containing information to be recommended currently, in fig. 1a, eiNamely QiAnd the imbedding vector is the current information to be recommended, namely the vector to be recommended. siAnd eiThe system has the capability of representing the current information to be recommended, and the information contained in the two information is in different training modules of the network, so that certain information difference exists. How to effectively fuse and exchange information between the two plays a vital role in improving the expression of the neural collaborative filtering model. Many related works have employed methods that directly relate s toiAnd eiThe two vectors are spliced, and the information of the two vectors is automatically fused by using the neural network, but the method has high requirements on the scale of the neural network, and the network which is large enough can learn the information expression in the sparse data, and simultaneously has the largest data scale, which is very unfriendly to many scenes. The invention utilizes the cross feature sharing unit to perform information fusion exchange on two different representations of the same entity, which is a more universal and friendly information fusion exchange mode, avoids the requirements of constructing huge networks and a large amount of training data, and can also obtain good effect in a scene with small data volume, such as a class optimization master supply station.
FIG. 1e is a cross feature sharing sheet provided by the present inventionMeta-frame diagram, referring to fig. 1e, the cross-sharing unit can be regarded as the feature sharing module provided by the present invention, and the cross-sharing unit will be si∈RdAnd ei∈RdAre shared. Wherein C isi∈Rd×dIs a cross feature matrix whose function is to convert si∈RdAnd ei∈RdThe two kinds of information are exchanged and fused, wherein,
Figure BDA0002562968080000141
s after information exchange can be obtained through the cross feature matrix and the corresponding weight parameteri+1And ei+1Namely, the shared vector to be recommended:
Figure BDA0002562968080000142
Figure BDA0002562968080000143
determining recommendation probability after splicing the shared vector to be recommended and the user vector:
Figure BDA0002562968080000144
the invention can also be based on si+1Determination of ys=wssi+1+bs
Wherein, ys∈RnN denotes the number of items in the data, ytAnd e.g. R represents whether the user can click item, namely the current information to be recommended.
From input data to output ysAnd ytThe loss function trained by the whole recommendation system is obtained by weighting the loss functions of two tasks:
Figure BDA0002562968080000145
Figure BDA0002562968080000146
loss=losst+αlosss
therein, losssLoss function, loss, representing a sequence portiontA loss function representing a neural collaborative filtering model, alpha ∈ [0,1 ]]Is an adjustable weight factor, and its main function is to adjust losssThe specific gravity of the overall loss function. The code of the whole system can be written by a pytorech, the training of the system adopts a conventional gradient descent mode, an Adam function in the pytorech is adopted as a gradient adjusting function for training, and 12 regularizations are added during the training to constrain parameters.
Illustratively, the course recommendation method through the system provided by the invention specifically comprises the following steps: the method comprises the steps of obtaining user identification information, recalling an information set to be recommended based on the user identification information, enabling each piece of information to be recommended in the information set to be recommended to form a user course pair with the user identification information, inputting the user course pair into a recommendation system provided by the invention, and obtaining the recommendation probability of each piece of information to be recommended.
The system provides service for a supply station recommending module of a class optimization master APP, the whole recommending system is used for recommending interesting courses for a user, after the user enters the supply station module of the class optimization master APP, the user ID, namely the user identification information, of the user requests a service module, and a recall module is triggered firstly to recall a plurality of commodities which the user may be interested in according to the portrait of the user, namely the user identification information, so that an information set to be recommended is obtained. Then, the recommendation system of the invention is used for processing the user ID and the related course ID recalled by the recall module, namely the information set to be recommended to obtain a user click probability pre-estimated value of the recalled courses, namely the recommendation probability, and then the recalled course click probability pre-estimated values are ranked to display the highly-probable course ranks to the user for browsing. Thereby maximizing the click-through rate and the presentation of the replenishment station recommendation field.
According to the method, sequence information is introduced into the neural collaborative filtering model through a multi-task learning scheme, so that the purpose of enhancing the effect of the neural collaborative filtering recommendation algorithm is achieved; the problem that the effectiveness of parameter sharing in traditional multi-task learning depends on the correlation between tasks is effectively solved by using a double-parameter sharing mechanism; in the course recommendation field of the class optimization master supply station, a better recommendation result than that of the traditional neural collaborative filtering can be obtained by utilizing the existing algorithm mechanism, and the class optimization master APP is helped to improve the experience and the showing capability of the user. The dual-parameter sharing mechanism is embodied in that embedding operation is carried out on each historical information in the historical information set and a current vector to be recommended, and the historical information set and the current vector to be recommended can share one initialization matrix; the method is also embodied in that information fusion is carried out through a cross sharing unit so as to carry out sharing.
Example two
Fig. 2 is a schematic structural diagram of a recommendation apparatus according to a second embodiment of the present invention, where the apparatus is applicable to a case where information to be recommended is recommended based on a historical information set, where the apparatus may be implemented by software and/or hardware and is generally integrated on a terminal device.
As shown in fig. 2, the apparatus includes:
a first obtaining module 21, configured to obtain, based on the user identification information, a corresponding information set to be recommended and a history information set;
the second obtaining module 22 is configured to obtain any information to be recommended from the information set to be recommended as current information to be recommended;
a first determining module 23, configured to input the current information to be recommended, the historical information set, and the user identification information into a recommendation system, determine a recommendation probability of the current information to be recommended, and continue to execute an operation of obtaining the current information to be recommended until the recommendation probabilities of all information to be recommended in the information set to be recommended are determined to be completed;
the second determining module 24 is configured to determine, based on each recommendation probability, a recommendation order of each piece of information to be recommended in the information set to be recommended, and recommend based on the recommendation order;
and each recommendation probability is determined based on a behavior vector corresponding to the historical information set, and the behavior vector is determined by the recommendation system based on the relevance of the historical information set and the current information to be recommended.
In this embodiment, the apparatus first obtains, by a first obtaining module 21, a corresponding information set to be recommended and a history information set based on user identification information; secondly, acquiring any information to be recommended from the information set to be recommended as the current information to be recommended through a second acquisition module 22; then, inputting the current information to be recommended, the historical information set and the user identification information into a recommendation system through a first determination module 23, determining the recommendation probability of the current information to be recommended, and continuing to execute the operation of obtaining the current information to be recommended until the recommendation probabilities of all the information to be recommended in the information set to be recommended are determined to be finished; and finally, determining the recommendation sequence of each piece of information to be recommended in the information set to be recommended based on each recommendation probability through a second determination module 24, and recommending based on the recommendation sequence.
The embodiment provides a recommendation device, which makes full use of the history information included in the history information set and improves the recommendation accuracy.
Further, the recommendation system includes a behavior prediction model and a neural collaborative filtering model, and accordingly, the first determining module 23 is specifically configured to:
inputting a vector to be recommended corresponding to the current information to be recommended and the historical information set into a behavior prediction model, and determining the behavior vector, wherein the vector to be recommended is formed by vectorizing the current information to be recommended;
and inputting the behavior vector, the current information to be recommended and the user identification information into a neural collaborative filtering model, and determining the recommendation probability of the current recommendation information.
Further, the behavior prediction model comprises a first vector conversion module and an association module; correspondingly, the first determining module 23 inputs the vector to be recommended corresponding to the current information to be recommended and the historical information set into a behavior prediction model, and determines the behavior vector, including:
inputting the historical information set into a first vector conversion module, and determining a corresponding historical vector, wherein the historical vector is formed by converting each piece of historical information in the historical information set into a vector form and then stacking the converted historical information;
and inputting the vector to be recommended corresponding to the current information to be recommended and the historical vector to an association module, and determining a behavior vector.
Further, the association module includes a convolution sub-module and an association sub-module, and correspondingly, the first determining module 23 inputs the vector to be recommended and the history vector corresponding to the current information to be recommended to the association module, and determines the behavior vector, including:
inputting the history vectors into a convolution submodule to obtain convolution vectors corresponding to the history vectors, wherein the number of the convolution vectors is at least one, and different convolution vectors are determined by adopting different convolution cores to perform convolution on the history vectors;
and inputting the convolution vector and the vector to be recommended to a correlation submodule to determine a behavior vector.
Further, the association sub-module includes: correspondingly, the first determining module 23 inputs the convolution vector and the vector to be recommended to the association submodule to determine a behavior vector, and includes:
when the number of the convolution vectors is one, inputting the convolution vectors and the vector to be recommended into an inner product unit, determining the weight of the convolution vectors, and inputting the convolution vectors and the weight into the vector generation unit to obtain a behavior vector, wherein the behavior vector is the product of the weight and the convolution vector;
when the number of the convolution vectors is at least two, inputting the convolution vectors into the length adjusting unit to obtain adjusted convolution vectors, inputting the adjusted convolution vectors and the vectors to be recommended into the inner product unit, determining the weights of the adjusted convolution vectors, and inputting the adjusted convolution vectors and the corresponding weights into the vector generating unit to obtain behavior vectors, wherein the behavior vectors are determined by weighted summation of each adjusted convolution vector and the corresponding weight.
Further, the neural collaborative filtering model includes: the system comprises a second vector conversion module, a third vector conversion module, a feature sharing module and a probability generation module; correspondingly, the first determining module 23 inputs the behavior vector, the current information to be recommended, and the user identification information into a neural collaborative filtering model, and determines the recommendation probability of the current recommendation information, including:
inputting the current information to be recommended into a second vector conversion module, and determining a corresponding vector to be recommended;
inputting the user identification information into the third vector conversion module, and determining a corresponding user vector;
inputting the behavior vector and the vector to be recommended to a feature sharing module, and determining the shared vector to be recommended;
and inputting the shared vector to be recommended and the user vector into a probability generation module, and determining the recommendation probability of the current information to be recommended.
Further, the probability generation module comprises a splicing submodule and a probability generation submodule; correspondingly, the step of the first determining module 23 inputting the shared vector to be recommended and the user vector into the probability generating module to determine the recommendation probability of the current information to be recommended includes:
inputting the shared vector to be recommended and the user vector into a splicing submodule to obtain a spliced vector;
and inputting the splicing vector into the probability generation module, and determining the recommendation probability of the current information to be recommended.
Further, the apparatus further comprises: a training module to:
acquiring a training sample set, wherein the training sample set comprises a training to-be-recommended information set, a training history information set and training user identification information;
training a recommendation system by using the training sample set to obtain a trained recommendation system;
the loss function of the recommendation system is determined based on a weighted summation result of a first loss function corresponding to a behavior prediction model included in the recommendation system and a second loss function corresponding to a neural collaborative filtering model included in the recommendation system.
The recommendation device can execute the recommendation method provided by any embodiment of the invention, and has the corresponding functional modules and beneficial effects of the execution method.
EXAMPLE III
Fig. 3 is a schematic structural diagram of a terminal device according to a third embodiment of the present invention. As shown in fig. 3, a terminal device provided in the third embodiment of the present invention includes: one or more processors 31 and storage devices 32; the processor 31 in the terminal device may be one or more, and fig. 3 illustrates one processor 31 as an example; storage 32 is used to store one or more programs; the one or more programs are executed by the one or more processors 31, so that the one or more processors 31 implement the recommendation method according to any one of the embodiments of the present invention.
The terminal device may further include: an input device 33 and an output device 34.
The processor 31, the storage device 32, the input device 33 and the output device 34 in the terminal equipment may be connected by a bus or other means, and the connection by the bus is exemplified in fig. 3.
The storage device 32 in the terminal device serves as a computer-readable storage medium, and can be used for storing one or more programs, which may be software programs, computer-executable programs, and modules, such as program instructions/modules corresponding to the recommendation method provided in the first embodiment of the present invention (for example, the modules in the recommendation device shown in fig. 2 include the first obtaining module 21, the second obtaining module 22, the first determining module 23, and the second determining module 24). The processor 31 executes various functional applications and data processing of the terminal device by running software programs, instructions and modules stored in the storage device 32, that is, implements the recommendation method in the above method embodiment.
The storage device 32 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function; the storage data area may store data created according to the use of the terminal device, and the like. Further, the storage device 32 may include high speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid state storage device. In some examples, the storage 32 may further include memory located remotely from the processor 31, which may be connected to the device over a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The input device 33 may be used to receive input numeric or character information and generate key signal inputs related to user settings and function control of the terminal device. The output device 34 may include a display device such as a display screen.
And, when the one or more programs included in the above-mentioned terminal device are executed by the one or more processors 31, the programs perform the following operations:
acquiring a corresponding information set to be recommended and a corresponding historical information set based on the user identification information;
acquiring any information to be recommended from the information set to be recommended as current information to be recommended;
inputting the current information to be recommended, the historical information set and the user identification information into a recommendation system, determining the recommendation probability of the current information to be recommended, and continuing to execute the operation of obtaining the current information to be recommended until the recommendation probabilities of all the information to be recommended in the information set to be recommended are determined to be finished;
determining a recommendation sequence of each piece of information to be recommended in the information set to be recommended based on each recommendation probability, and recommending based on the recommendation sequence;
and each recommendation probability is determined based on a behavior vector corresponding to the historical information set, and the behavior vector is determined by the recommendation system based on the relevance of the historical information set and the current information to be recommended.
Example four
An embodiment of the present invention provides a computer-readable storage medium, on which a computer program is stored, where the computer program is used to execute a recommendation method when executed by a processor, and the method includes: acquiring a corresponding information set to be recommended and a corresponding historical information set based on the user identification information;
acquiring any information to be recommended from the information set to be recommended as current information to be recommended;
inputting the current information to be recommended, the historical information set and the user identification information into a recommendation system, determining the recommendation probability of the current information to be recommended, and continuing to execute the operation of obtaining the current information to be recommended until the recommendation probabilities of all the information to be recommended in the information set to be recommended are determined to be finished;
determining a recommendation sequence of each piece of information to be recommended in the information set to be recommended based on each recommendation probability, and recommending based on the recommendation sequence;
and each recommendation probability is determined based on a behavior vector corresponding to the historical information set, and the behavior vector is determined by the recommendation system based on the relevance of the historical information set and the current information to be recommended.
Optionally, the program, when executed by the processor, may be further configured to perform the recommendation method provided by any of the embodiments of the present invention.
Computer storage media for embodiments of the invention may employ any combination of one or more computer-readable media. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a Read Only Memory (ROM), an Erasable Programmable Read Only Memory (EPROM), a flash Memory, an optical fiber, a portable CD-ROM, an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. A computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take a variety of forms, including, but not limited to: an electromagnetic signal, an optical signal, or any suitable combination of the foregoing. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, Radio Frequency (RF), etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
It is to be noted that the foregoing is only illustrative of the preferred embodiments of the present invention and the technical principles employed. It will be understood by those skilled in the art that the present invention is not limited to the particular embodiments described herein, but is capable of various obvious changes, rearrangements and substitutions as will now become apparent to those skilled in the art without departing from the scope of the invention. Therefore, although the present invention has been described in greater detail by the above embodiments, the present invention is not limited to the above embodiments, and may include other equivalent embodiments without departing from the spirit of the present invention, and the scope of the present invention is determined by the scope of the appended claims.

Claims (11)

1. A recommendation method, comprising:
acquiring a corresponding information set to be recommended and a corresponding historical information set based on the user identification information;
acquiring any information to be recommended from the information set to be recommended as current information to be recommended;
inputting the current information to be recommended, the historical information set and the user identification information into a recommendation system, determining the recommendation probability of the current information to be recommended, and continuing to execute the operation of obtaining the current information to be recommended until the recommendation probabilities of all the information to be recommended in the information set to be recommended are determined to be finished;
determining a recommendation sequence of each piece of information to be recommended in the information set to be recommended based on each recommendation probability, and recommending based on the recommendation sequence;
and each recommendation probability is determined based on a behavior vector corresponding to the historical information set, and the behavior vector is determined by the recommendation system based on the relevance of the historical information set and the current information to be recommended.
2. The method according to claim 1, wherein the recommendation system comprises a behavior prediction model and a neural collaborative filtering model, and the inputting the current information to be recommended, the historical information set and the user identification information into the recommendation system and determining the recommendation probability of the current recommendation information comprises:
inputting a vector to be recommended corresponding to the current information to be recommended and the historical information set into a behavior prediction model, and determining the behavior vector, wherein the vector to be recommended is formed by vectorizing the current information to be recommended;
and inputting the behavior vector, the current information to be recommended and the user identification information into a neural collaborative filtering model, and determining the recommendation probability of the current recommendation information.
3. The method of claim 2, wherein the behavior prediction model comprises a first vector conversion module and an association module; correspondingly, the inputting the vector to be recommended corresponding to the current information to be recommended and the historical information set into a behavior prediction model to determine the behavior vector includes:
inputting the historical information set into a first vector conversion module, and determining a corresponding historical vector, wherein the historical vector is formed by converting each piece of historical information in the historical information set into a vector form and then stacking the converted historical information;
and inputting the vector to be recommended corresponding to the current information to be recommended and the historical vector to an association module, and determining a behavior vector.
4. The method according to claim 3, wherein the association module includes a convolution sub-module and an association sub-module, and accordingly, the inputting the vector to be recommended corresponding to the current information to be recommended and the history vector into the association module and determining the behavior vector includes:
convolving the history vectors by adopting at least one convolution core to obtain corresponding convolution vectors;
inputting the history vectors into a convolution submodule to obtain convolution vectors corresponding to the history vectors, wherein the number of the convolution vectors is at least one, and different convolution vectors are determined by adopting different convolution cores to perform convolution on the history vectors;
and inputting the convolution vector and the vector to be recommended to a correlation submodule to determine a behavior vector.
5. The method of claim 4, wherein associating the sub-module comprises: correspondingly, the inputting the convolution vector and the vector to be recommended to a correlation submodule to determine a behavior vector includes:
when the number of the convolution vectors is one, inputting the convolution vectors and the vector to be recommended into an inner product unit, determining the weight of the convolution vectors, and inputting the convolution vectors and the weight into the vector generation unit to obtain a behavior vector, wherein the behavior vector is the product of the weight and the convolution vector;
when the number of the convolution vectors is at least two, inputting the convolution vectors into the length adjusting unit to obtain adjusted convolution vectors, inputting the adjusted convolution vectors and the vectors to be recommended into the inner product unit, determining the weights of the adjusted convolution vectors, and inputting the adjusted convolution vectors and the corresponding weights into the vector generating unit to obtain behavior vectors, wherein the behavior vectors are determined by weighted summation of each adjusted convolution vector and the corresponding weight.
6. The method of claim 2, wherein the neural collaborative filtering model comprises: the system comprises a second vector conversion module, a third vector conversion module, a feature sharing module and a probability generation module; correspondingly, inputting the behavior vector, the current information to be recommended and the user identification information into a neural collaborative filtering model, and determining the recommendation probability of the current recommendation information, including:
inputting the current information to be recommended into a second vector conversion module, and determining a corresponding vector to be recommended;
inputting the user identification information into the third vector conversion module, and determining a corresponding user vector;
inputting the behavior vector and the vector to be recommended to a feature sharing module, and determining the shared vector to be recommended;
and inputting the shared vector to be recommended and the user vector into a probability generation module, and determining the recommendation probability of the current information to be recommended.
7. The method of claim 6, wherein the probability generation module comprises a concatenation sub-module and a probability generation sub-module; correspondingly, the step of inputting the shared vector to be recommended and the user vector into a probability generation module to determine the recommendation probability of the current information to be recommended includes:
inputting the shared vector to be recommended and the user vector into a splicing submodule to obtain a spliced vector;
and inputting the splicing vector into the probability generation module, and determining the recommendation probability of the current information to be recommended.
8. The method of claim 1, further comprising:
acquiring a training sample set, wherein the training sample set comprises a training to-be-recommended information set, a training history information set and training user identification information;
training a recommendation system by using the training sample set to obtain a trained recommendation system;
the loss function of the recommendation system is determined based on a weighted summation result of a first loss function corresponding to a behavior prediction model included in the recommendation system and a second loss function corresponding to a neural collaborative filtering model included in the recommendation system.
9. A recommendation device, comprising:
the first acquisition module is used for acquiring a corresponding information set to be recommended and a corresponding historical information set based on the user identification information;
the second acquisition module is used for acquiring any information to be recommended from the information set to be recommended as the current information to be recommended;
the first determining module is used for inputting the current information to be recommended, the historical information set and the user identification information into a recommending system, determining the recommending probability of the current information to be recommended, and continuing to execute the operation of obtaining the current information to be recommended until the recommending probabilities of all the information to be recommended in the information set to be recommended are determined to be finished;
the second determining module is used for determining the recommendation sequence of each piece of information to be recommended in the information set to be recommended based on each recommendation probability and recommending based on the recommendation sequence;
and each recommendation probability is determined based on a behavior vector corresponding to the historical information set, and the behavior vector is determined by the recommendation system based on the relevance of the historical information set and the current information to be recommended.
10. A terminal device, comprising:
one or more processors;
storage means for storing one or more programs;
when executed by the one or more processors, cause the one or more processors to implement the method of any one of claims 1-8.
11. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the method according to any one of claims 1 to 8.
CN202010620834.8A 2020-06-30 2020-06-30 Recommendation method, recommendation device, terminal equipment and storage medium Active CN111814044B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010620834.8A CN111814044B (en) 2020-06-30 2020-06-30 Recommendation method, recommendation device, terminal equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010620834.8A CN111814044B (en) 2020-06-30 2020-06-30 Recommendation method, recommendation device, terminal equipment and storage medium

Publications (2)

Publication Number Publication Date
CN111814044A true CN111814044A (en) 2020-10-23
CN111814044B CN111814044B (en) 2024-06-18

Family

ID=72856670

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010620834.8A Active CN111814044B (en) 2020-06-30 2020-06-30 Recommendation method, recommendation device, terminal equipment and storage medium

Country Status (1)

Country Link
CN (1) CN111814044B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112347367A (en) * 2020-12-04 2021-02-09 上海帜讯信息技术股份有限公司 Information service providing method, information service providing device, electronic equipment and storage medium
CN113420203A (en) * 2021-05-18 2021-09-21 北京达佳互联信息技术有限公司 Object recommendation method and device, electronic equipment and storage medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180121466A (en) * 2017-04-06 2018-11-07 네이버 주식회사 Personalized product recommendation using deep learning
WO2019137104A1 (en) * 2018-01-10 2019-07-18 北京市商汤科技开发有限公司 Recommendation method and device employing deep learning, electronic apparatus, medium, and program
CN110362753A (en) * 2019-04-10 2019-10-22 深思考人工智能机器人科技(北京)有限公司 A kind of personalized neural network recommendation method and system based on user concealed feedback
CN110442788A (en) * 2019-07-23 2019-11-12 北京奇艺世纪科技有限公司 A kind of information recommendation method and device
CN110457589A (en) * 2019-08-19 2019-11-15 上海新共赢信息科技有限公司 A kind of vehicle recommended method, device, equipment and storage medium
CN110659411A (en) * 2019-08-21 2020-01-07 桂林电子科技大学 Personalized recommendation method based on neural attention self-encoder
CN111310056A (en) * 2020-03-11 2020-06-19 腾讯科技(深圳)有限公司 Information recommendation method, device, equipment and storage medium based on artificial intelligence

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180121466A (en) * 2017-04-06 2018-11-07 네이버 주식회사 Personalized product recommendation using deep learning
WO2019137104A1 (en) * 2018-01-10 2019-07-18 北京市商汤科技开发有限公司 Recommendation method and device employing deep learning, electronic apparatus, medium, and program
CN110362753A (en) * 2019-04-10 2019-10-22 深思考人工智能机器人科技(北京)有限公司 A kind of personalized neural network recommendation method and system based on user concealed feedback
CN110442788A (en) * 2019-07-23 2019-11-12 北京奇艺世纪科技有限公司 A kind of information recommendation method and device
CN110457589A (en) * 2019-08-19 2019-11-15 上海新共赢信息科技有限公司 A kind of vehicle recommended method, device, equipment and storage medium
CN110659411A (en) * 2019-08-21 2020-01-07 桂林电子科技大学 Personalized recommendation method based on neural attention self-encoder
CN111310056A (en) * 2020-03-11 2020-06-19 腾讯科技(深圳)有限公司 Information recommendation method, device, equipment and storage medium based on artificial intelligence

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112347367A (en) * 2020-12-04 2021-02-09 上海帜讯信息技术股份有限公司 Information service providing method, information service providing device, electronic equipment and storage medium
WO2022116536A1 (en) * 2020-12-04 2022-06-09 上海帜讯信息技术股份有限公司 Information service providing method and apparatus, electronic device, and storage medium
CN112347367B (en) * 2020-12-04 2024-05-07 上海帜讯信息技术股份有限公司 Information service providing method, apparatus, electronic device and storage medium
CN113420203A (en) * 2021-05-18 2021-09-21 北京达佳互联信息技术有限公司 Object recommendation method and device, electronic equipment and storage medium
CN113420203B (en) * 2021-05-18 2024-05-24 北京达佳互联信息技术有限公司 Object recommendation method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN111814044B (en) 2024-06-18

Similar Documents

Publication Publication Date Title
US11620532B2 (en) Method and apparatus for generating neural network
CN109934249A (en) Data processing method, device, medium and calculating equipment
JP7564332B2 (en) Method and device for identifying fusion parameters, method and device for recommending information, method and device for training a parameter measurement model, electronic device, storage medium, and computer program
CN107766940A (en) Method and apparatus for generation model
CN110347940A (en) Method and apparatus for optimizing point of interest label
CN106484766B (en) Searching method and device based on artificial intelligence
CN111104599B (en) Method and device for outputting information
CN107291337A (en) A kind of method and device that Operational Visit is provided
CN114580794B (en) Data processing method, apparatus, program product, computer device and medium
CN110059172A (en) The method and apparatus of recommendation answer based on natural language understanding
WO2024002167A1 (en) Operation prediction method and related apparatus
CN111651989B (en) Named entity recognition method and device, storage medium and electronic device
CN113807926A (en) Recommendation information generation method and device, electronic equipment and computer readable medium
CN111814044A (en) Recommendation method and device, terminal equipment and storage medium
US20220366312A1 (en) Method and apparatus for training item coding model
CN112069412A (en) Information recommendation method and device, computer equipment and storage medium
CN112395490B (en) Method and device for generating information
CN112434746A (en) Pre-labeling method based on hierarchical transfer learning and related equipment thereof
EP4398128A1 (en) Recommendation method and related device
CN111143568A (en) Method, device and equipment for buffering during paper classification and storage medium
CN116578774A (en) Method, device, computer equipment and storage medium for pre-estimated sorting
CN113704596B (en) Method and apparatus for generating recall information sets
Song Contextual awareness service of internet of things user interaction mode in intelligent environment
CN112417260B (en) Localized recommendation method, device and storage medium
CN113762992A (en) Method and device for processing data

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant