Method, device and equipment for determining recommended objects and computer storage medium

By combining deep neural network models with historical sequences of various user actions, the probability set of candidate recommendation objects is predicted, solving the problem of difficulty in mining users' implicit interests and behavioral habits, and improving the accuracy of information flow recommendations.

CN114817692BActive Publication Date: 2025-12-05TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202110072684.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-01-20
Publication Date
2025-12-05
Estimated Expiration
2041-01-20

AI Technical Summary

Technical Problem

Existing technologies struggle to effectively uncover users' implicit interests and behavioral habits, resulting in insufficient accuracy in information feed recommendations.

Method used

By constructing a deep neural network model and combining it with the user's various operational behaviors and historical behavior sequences, the probability value set of each candidate recommendation object is predicted, and the recommendation degree is determined based on these probability value sets, thus achieving multi-objective ranking.

Benefits of technology

It improves the accuracy of information feed recommendations, enabling them to better reflect users' actual behavioral preferences and enhance the user browsing experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114817692B_ABST
    Figure CN114817692B_ABST
Patent Text Reader

Abstract

The application discloses a method, device and equipment for determining recommended objects and a computer storage medium, relates to the technical field of computers, and is used for improving the accuracy of recommending objects for users. The method comprises the following steps: obtaining a plurality of candidate recommended objects based on an object recommendation request triggered by a target account; obtaining a probability value set corresponding to each of the plurality of candidate recommended objects according to a historical behavior sequence corresponding to each of a plurality of operation behaviors associated with the target account, wherein the historical behavior sequence corresponding to each operation behavior at least comprises at least one object targeted by the target account when performing the corresponding operation behavior, and the probability value set of each candidate recommended object comprises a probability value of the target account performing each operation behavior with respect to the corresponding candidate recommended object; obtaining a recommendation degree of each candidate recommended object based on the obtained probability value set; and determining at least one target recommended object from the plurality of candidate recommended objects based on the obtained recommendation degree.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of computer, in particular to the technical field of artificial intelligence (AI), and provides a method, device and equipment for determining a recommended object and a computer storage medium. BACKGROUND

[0002] At present, with the element diversification of network products, users can obtain various multimedia contents in the network, and the interaction modes between users and contents are often very rich, for example, users can click and watch the videos they like, and can appreciate, comment, share with friends and in the circle of friends or collect, and for the articles they do not like, they can give negative feedback.

[0003] In actual scenarios, the preferences of various users are different, for example, the sharing frequency of users who are keen on sharing within a certain time window is necessarily higher than that of other users, and users who have watched or shared square dance video within a certain time window can be inferred to have a certain preference for square dance video. Therefore, the interaction behaviors and behavior objects of users in the system hide a large amount of user preferences and behavior tendencies, and mining the implicit interests and behavior habits of users helps to accurately recommend objects for users and improve the browsing experience of users.

[0004] Therefore, how to mine the implicit interests and behavior habits of users and improve the accuracy of object recommendation is a problem to be solved at present. SUMMARY

[0005] The embodiments of the present application provide a method, device and equipment for determining a recommended object and a computer storage medium, which are used to improve the accuracy of recommending objects for users.

[0006] In one aspect, a method for determining a recommended object is provided, and the method comprises:

[0007] obtaining a plurality of candidate recommended objects based on an object recommendation request triggered by a target account;

[0008] obtaining a probability value set corresponding to each candidate recommended object respectively according to a historical behavior sequence corresponding to each operation behavior associated with the target account, wherein the historical behavior sequence corresponding to each operation behavior at least comprises at least one object targeted by the target account when performing the corresponding operation behavior in a historical time period, and the probability value set corresponding to each candidate recommended object comprises a probability value of the target account performing each operation behavior respectively on the corresponding candidate recommended object;

[0009] obtaining a recommendation degree of each candidate recommended object respectively based on the obtained probability value set;

[0010] determine at least one target recommended object from the plurality of candidate recommended objects based on the obtained respective recommendation degrees.

[0011] In an aspect, an apparatus for determining a recommended object is provided, the apparatus comprising:

[0012] a candidate object obtaining unit configured to obtain a plurality of candidate recommended objects based on an object recommendation request triggered by a target account;

[0013] a probability predicting unit configured to obtain a set of probability values respectively corresponding to each of the plurality of candidate recommended objects according to a plurality of operation behaviors respectively corresponding to the target account, wherein each set of probability values respectively corresponding to each of the plurality of candidate recommended objects comprises a probability value of the target account performing each of the plurality of operation behaviors respectively corresponding to each of the plurality of candidate recommended objects;

[0014] a recommendation degree obtaining unit configured to obtain a recommendation degree of each of the plurality of candidate recommended objects based on the obtained respective sets of probability values;

[0015] a recommended object determining unit configured to determine at least one target recommended object from the plurality of candidate recommended objects based on the obtained respective recommendation degrees.

[0016] Optionally, the probability predicting unit is specifically configured to:

[0017] obtain a content feature vector and a time feature vector of each of the objects in the one historical behavior sequence, wherein the time feature vector is used to represent a distance between a time when the target account operates on each of the objects and a current time;

[0018] obtain an object feature vector of each of the objects according to the content feature vector and the time feature vector of each of the objects respectively;

[0019] obtain a sequence feature vector of the one historical behavior sequence based on the obtained respective object feature vectors.

[0020] Optionally, the probability predicting unit is specifically configured to:

[0021] perform a pooling processing on the respective object feature vectors to obtain a sequence feature vector of the one historical behavior sequence; or

[0022] obtain a sequence feature vector of the one historical behavior sequence according to the respective object feature vectors and respective object weight parameter values corresponding to the respective object feature vectors, wherein the object weight parameter values are used to represent an importance of an object corresponding to each of the object feature vectors in the one historical behavior sequence; or

[0023] serializing the respective object feature vectors to obtain a sequence feature vector of the one historical behavior sequence.

[0024] Optionally, the probability prediction unit is specifically configured to:

[0025] obtain, through a set regression function, a sequence weight parameter value of each sequence feature vector on the one sequence feature vector, wherein a sum of the obtained sequence weight parameter values is 1, and the sequence weight parameter value is used to represent an influence degree of the corresponding operation behavior of the sequence feature vector on the corresponding operation behavior of the one sequence feature vector;

[0026] obtain a comprehensive feature vector of the one historical behavior sequence according to the sequence feature vectors of the respective historical behavior sequences and the respective corresponding sequence weight parameter values.

[0027] Optionally, the probability prediction unit is specifically configured to:

[0028] obtain, according to the respective sequence feature vectors and the at least one attention weight matrix corresponding to the one sequence feature vector, at least one weight representation vector corresponding to each of the respective sequence feature vectors, wherein each weight representation vector corresponds to an attention weight matrix;

[0029] obtain a comprehensive feature vector corresponding to the one sequence feature vector according to the at least one weight representation vector corresponding to each of the respective sequence feature vectors.

[0030] Optionally, the at least one attention weight matrix includes a query vector weight matrix, a key vector weight matrix and a value vector weight matrix; and the probability prediction unit is specifically configured to:

[0031] obtain, according to each sequence feature vector and the query vector weight matrix, the key vector weight matrix and the value vector weight matrix, a corresponding query vector, a key vector and a value vector, respectively;

[0032] obtain, according to the query vector corresponding to the one sequence feature vector and the key vector corresponding to each of the respective sequence feature vectors, an attention weight value corresponding to each of the respective sequence feature vectors, wherein the attention weight value is used to represent an influence degree of the corresponding operation behavior of the sequence feature vector on the corresponding operation behavior of the one sequence feature vector;

[0033] obtain a comprehensive feature vector corresponding to the one sequence feature vector according to the value vector corresponding to each of the respective sequence feature vectors and the attention weight value corresponding to each of the respective sequence feature vectors.

[0034] Optionally, the probability prediction unit is specifically configured to:

[0035] According to the auxiliary feature vector and the obtained respective comprehensive feature vectors, a respective probability value set corresponding to each of the plurality of candidate recommended objects is obtained;

[0036] The auxiliary feature vector at least includes one or more of an account feature vector of the target account, a device environment feature vector representing a device environment of the target account when initiating the object recommendation request, and an object feature vector of each candidate recommended object.

[0037] In an aspect, a computer device is provided, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor implements the steps of any of the above methods when executing the computer program.

[0038] In an aspect, a computer storage medium is provided, which stores computer program instructions, and the computer program instructions are executed by a processor to implement the steps of any of the above methods.

[0039] In an aspect, a computer program product or a computer program is provided, which includes computer instructions stored in a computer readable storage medium. A processor of a computer device reads the computer instructions from the computer readable storage medium, and the processor executes the computer instructions to enable the computer device to perform the steps of any of the above methods.

[0040] In the embodiments of the present application, when the target account triggers an object recommendation request, the probability value set of the target account performing various operation behaviors on each candidate recommended object can be obtained according to the historical behavior sequence corresponding to each operation behavior associated with the target account, and then the recommendation degree of each candidate recommended object is obtained based on each probability value set. The historical behavior sequence corresponding to each operation behavior of the target account hides the preferences of various operation behaviors of the target account, and there is a certain correlation between various operation behaviors. Therefore, the probability value of the target account performing various operation behaviors obtained according to the historical behavior sequence corresponding to each operation behavior can be more close to the real behavior of the target account, and the recommendation degree obtained subsequently is more accurate, and the recommended object selected by the user is more in line with the preferences of the user, and the accuracy of object recommendation is improved. BRIEF DESCRIPTION OF DRAWINGS

[0041] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the accompanying drawings needed to be used in the embodiments or prior art description will be briefly introduced as follows. Obviously, the accompanying drawings in the following description only need to be drawn for the embodiments of the present application, and for those skilled in the art, other drawings can also be obtained on the premise of not paying creative labor according to the provided drawings.

[0042] Figure 1 The scene schematic diagram provided for the embodiments of the present application;

[0043] Figure 2 The flowchart of the method for determining the recommended object provided for the embodiments of the present application;

[0044] Figure 3 The schematic diagram of the recommended page provided for the embodiments of the present application;

[0045] Figure 4 The behavior sequence statistical example diagram provided for the embodiments of the present application;

[0046] Figure 5 Another behavior sequence statistical example diagram provided for the embodiments of the present application;

[0047] Figure 6 The overall scheme flowchart provided for the embodiments of the present application;

[0048] Figure 7 The model training flowchart provided for the embodiments of the present application;

[0049] Figure 8 The model structure schematic diagram of the probability prediction model provided for the embodiments of the present application;

[0050] Figure 9 The processing flowchart of the probability prediction model provided for the embodiments of the present application;

[0051] Figure 10 The structure schematic diagram of the device for determining the recommended object provided for the embodiments of the present application;

[0052] Figure 11 The structure schematic diagram of the computer device provided for the embodiments of the present application. DETAILED DESCRIPTION

[0053] In order to make the purposes, technical solutions and advantages of the present application clearer, the technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work belong to the scope of protection of the present application. The embodiments in the present application and the features in the embodiments can be combined with each other arbitrarily without conflict. Moreover, although the logical order is shown in the flowchart, in some cases, the steps shown or described can be performed in an order different from that here.

[0054] In order to facilitate the understanding of the technical solutions provided by the embodiments of the present application, some key terms used in the embodiments of the present application are explained first:

[0055] Object: Pictures, articles, audio or video content can be used as objects to recommend to users.

[0056] Information flow recommendation: A kind of recommendation method, users can obtain recommended objects such as pictures, articles or videos through screen refreshing by pulling up or pulling down, and interact with the content through buttons such as sharing, liking, commenting and collecting, and the click rate, sharing and liking of the content are the core indicators for measuring the recommendation effect.

[0057] Multi-objective sorting: When the recommendation system using multi-objective sorting sorts the candidate set, not only a single target (such as click rate) is referred to, but also multiple targets (such as sharing rate, like rate and collection rate) are considered at the same time, and the best balance for product ecology is made.

[0058] Deep neural network (DNN): A neural network model structure with multiple hidden layers.

[0059] Historical behavior sequence: The record of a certain specific behavior (such as clicking, sharing or liking) of a user in the system, containing the behavior occurrence time and object, and the sequence generated by sorting according to a certain attribute (such as behavior occurrence time). Taking the clicking behavior as an example, if the sequence of videos played by a user in history is v1, v2, v3 and v4, then the historical behavior sequence corresponding to the clicking behavior of the user can be {v1, v2, v3, v4}.

[0060] Objective function: A function used to measure and optimize the distance between the model prediction value and the real sample label value in machine learning.

[0061] In actual scenarios, the interaction behavior and behavior object of a user in a system hide a large amount of user preferences and behavior tendencies. Mining the implicit interests and behavior habits of the user helps to accurately recommend objects for the user and improve the browsing experience of the user.

[0062] At present, the ranking model in information flow recommendation has developed greatly, and various manufacturers continue to iterate in different directions according to actual business. The most common way to express user interests is user portrait work, which uses the basic information and behavior statistical information of the user as the representation of the user. The user portrait is usually used as the underlying work in the recommendation system, and the output data is an important input of the ranking model. However, the method of user portrait needs the basic information of the user or the long-term and short-term behavior feedback as the calculation information. The limitation is that when the user is a new user, there is a lack of accurate information of the user, and due to the delay of updating, the hobby tendency of the new user cannot be captured in time through the short-term behavior of the new user. In addition, the portrait work and the ranking model are usually independent of each other, and it is difficult to achieve common learning of the user interest portrait and the ranking model.

[0063] The current information flow recommendation does not consider the relationship between the sequence and the multiple targets and the relationship between the multiple behavior sequences, so the basis of the recommended information is imperfect, which further affects the final ranking and the recommendation effect.

[0064] In view of this, the embodiment of the present application provides a method for determining a recommended object, in which when a target account triggers an object recommendation request, a probability value set of the target account performing various operation behaviors on each candidate recommended object can be obtained according to the historical behavior sequence corresponding to each operation behavior of the target account associated with multiple operation behaviors, and then the recommendation degree of each candidate recommended object is obtained based on each probability value set. The historical behavior sequence corresponding to each operation behavior of the target account hides the preferences of various operation behaviors of the target account, and there is a certain correlation between the various operation behaviors. By constructing and mining the multiple behavior sequences of the user, the implicit interests of the user are mined, the multiple core targets of the recommendation system are estimated, and the comprehensive ranking is performed. The purpose of simultaneously optimizing and improving the multiple-dimensional indicators for measuring the recommendation effect can be achieved. Therefore, the probability value of the target account performing various operation behaviors obtained according to the historical behavior sequence corresponding to each operation behavior is more close to the real behavior of the target account, and the recommendation degree obtained subsequently is more accurate, so that the recommended object selected for the user is more in line with the preferences of the user, and the accuracy of the object recommendation is improved.

[0065] In addition, the embodiment of the present application uses a deep neural network to train multiple core effect targets of a recommended service into a model, and collects and organizes records of a user under multiple behaviors to model and mine user interests and add to model training to obtain a multi-target prediction and ranking model of information flow recommendation that fuses multiple user behavior sequences. Further, when online ranking and recommendation are performed, multiple behavior sequences of a target account can be obtained, and multi-dimensional scoring of candidate objects is performed, and then objects with higher scores are recommended to the target account.

[0066] After introducing the design idea of the embodiment of the present application, the main technologies involved in the embodiment of the present application are introduced.

[0067] Artificial intelligence (AI) is to use a digital computer or a machine controlled by a digital computer to simulate, extend and expand human intelligence, perceive environment, acquire knowledge and use knowledge to obtain the best results. In other words, artificial intelligence is a comprehensive technology of computer science, which tries to understand the essence of intelligence and produce a new intelligent machine that can react in a similar way to human intelligence. Artificial intelligence is to study the design principles and implementation methods of various intelligent machines, so that the machine has the functions of perception, reasoning and decision-making.

[0068] Artificial intelligence technology is a comprehensive discipline, involving a wide range of fields, both hardware and software technologies. Artificial intelligence basic technologies generally include technologies such as sensors, special artificial intelligence chips, cloud computing, distributed storage, big data processing technology, operation / interaction system, mechatronics, etc. Artificial intelligence software technology mainly includes computer vision technology, speech processing technology, natural language processing technology, and machine learning / deep learning, etc.

[0069] Machine learning (ML) is a multi-field interdisciplinary subject, involving probability theory, statistics, approximation theory, convex analysis, algorithm complexity theory, etc. It is a subject that studies how computers simulate or implement human learning behavior to acquire new knowledge or skills, and reorganize existing knowledge structure to continuously improve their performance. Machine learning is the core of artificial intelligence and the fundamental approach to making computers intelligent, and its applications are widespread in various fields of artificial intelligence. Machine learning and deep learning usually include artificial neural networks, belief networks, reinforcement learning, transfer learning, inductive learning, and example-based learning.

[0070] The solutions provided in this application mainly involve machine learning / deep learning technologies under the field of artificial intelligence. Specifically, the methods provided in this application are used to obtain a probabilistic prediction model through machine learning, which can then be used to predict various operational behaviors of a target account. Details will be explained in subsequent embodiments.

[0071] The following is a brief introduction to the application scenarios to which the technical solutions of the embodiments of this application are applicable. It should be noted that the application scenarios described below are only for illustrating the embodiments of this application and are not intended to limit the scope. In specific implementation, the technical solutions provided by the embodiments of this application can be flexibly applied according to actual needs.

[0072] The solution provided in this application can be applied to most information flow recommendation scenarios, such as video recommendation scenarios, short video recommendation scenarios, audio recommendation scenarios, text recommendation scenarios such as news, and product recommendation scenarios.

[0073] like Figure 1 The diagram shown is a scenario illustration provided by an embodiment of this application. In this scenario, a terminal device 101 and a server 102 may be included.

[0074] Terminal device 101 can be, for example, a mobile phone, tablet computer (PAD), personal computer (PC), or wearable device. Terminal device 101 can have a software client installed that allows for object browsing, such as a browser, video client, audio client, or news client. Users can log in to their accounts on the client to browse the objects included in the client. It should be noted that even when a user is not logged in, the server corresponding to the client will generally identify the user, for example, through the terminal the user is using; therefore, this identification can also be understood as the user's account.

[0075] Server 102 can be the backend server corresponding to the client installed on terminal device 101. For example, it can be an independent physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms, but it is not limited to these.

[0076] The server 102 can include one or more processors 1021, a memory 1022, an I / O interface 1023 for interacting with the terminal, and the like. In addition, the server 102 can also be configured with a database 1024, which can be used to store the basic information of each account and the historical behavior sequence information and the trained model parameters. The memory 1022 of the server 102 can also store program instructions of the method for determining a recommended object provided by the embodiments of the present application, which can be used to implement the steps of the method for determining a recommended object provided by the embodiments of the present application when executed by the processor 1021, to obtain at least one object recommended to the target account, and then push the determined object to the target account, and the object information pushed can be correspondingly displayed on the terminal device 101.

[0077] Specifically, when the user opens the client through the terminal device 101, the object recommended for the user this time needs to be displayed on the client, that is, an object recommendation request can be initiated to the server 102 at this time, and the server 102 can obtain the user behavior data of the user based on the object recommendation request, obtain the historical behavior sequence corresponding to the user's various operation behaviors such as the click behavior sequence, the sharing behavior sequence or the forwarding behavior sequence from the user behavior data, and then can perform probability prediction of various operation behaviors on each candidate recommended object in the recommendation pool corresponding to the user based on the historical behavior sequence corresponding to the various operation behaviors, and then obtain the recommendation degree score of each candidate recommended object, to sort the objects according to the recommendation degree score and select the target recommended object recommended for the user.

[0078] The terminal device 101 and the server 102 can be directly or indirectly connected through one or more networks 103. The network 103 can be a wired network or a wireless network, for example, the wireless network can be a mobile cellular network or a wireless fidelity (WIFI) network, and of course can also be other possible networks, and the embodiments of the present application do not limit this.

[0079] In actual application, the server 102 and the background server of the client can also be different servers, so that the server 102 can be a dedicated sorting server, when the user triggers an object recommendation request, the background server of the client can request the server 102 for a recommended object, and the server 102 determines the target recommended object and then pushes it to the client through the background server of the client.

[0080] Of course, the method provided by the embodiments of the present application is not limited to the application scenarios shown, but can also be used in other possible application scenarios, and the embodiments of the present application do not limit this. Figure 1 The embodiments of the present application do not limit this. Figure 1The functions that can be achieved by each device of the application scenario shown will be described in subsequent method embodiments.

[0081] Please refer to Figure 2 The flowchart of the method for determining the recommended object provided in the embodiments of the present application can be executed by the server 102 in the method of Figure 1 The flow of the method is introduced as follows.

[0082] Step 201: Based on the object recommendation request triggered by the target account, obtain a plurality of candidate recommended objects.

[0083] In the embodiments of the present application, after the target user performs a certain operation on the client on the terminal device, the client can trigger the object recommendation request to be sent to the server by the currently logged-in target account. The operation may, for example, be the user entering a certain operation on the client containing one or more objects, or the page up, page down or page refresh operation. Of course, it can also include other possible operations, which are not limited in the embodiments of the present application.

[0084] Since the recommendation process of a certain user or account is similar, here an example of a user or account is introduced, that is, the target user or target account described above. The target account is the account used by the target user when browsing objects. The target user can be any user and does not specifically refer to a certain user, so the target account can also be any account.

[0085] Since the number of objects in the system is large, if all objects are entered into the sorting, it will obviously consume a large amount of computing resources. Therefore, when the server receives the object recommendation request of the target account, it can filter a plurality of candidate recommended objects for the target account based on the object recommendation request, as a recommendation pool of the target account, and then the subsequent sorting process is based on the recommendation pool.

[0086] Specifically, the object filtering can be performed according to the page where the object recommendation request is initiated and the user portrait of the target account. For example, when the down jacket shopping page is entered, a plurality of goods for down jackets can be filtered for the target account in combination with the user portrait of the target account. Or, when the recommended page of the news client is entered, the news that the target user may like, such as text or video, can be filtered for the target account in combination with the user portrait of the target account.

[0087] Step 202: According to the historical behavior sequence corresponding to each operation behavior associated with the target account, respectively obtain a plurality of probability value sets corresponding to each candidate recommended object.

[0088] In this embodiment of the application, the user's interactive behavior and the objects of behavior in the system hide a large number of user preferences and behavioral tendencies. Therefore, when making recommendations, the historical operation behavior and objects of the target user can be combined for recommendations.

[0089] Specifically, for each candidate recommendation object, such as candidate recommendation object A, a set of probability values ​​corresponding to candidate recommendation object A can be obtained based on the historical behavior sequences corresponding to various operation behaviors associated with the target account. Each historical behavior sequence corresponding to a certain operation behavior includes at least one object targeted by the target account when performing the corresponding operation behavior within a historical time period, and the set of probability values ​​corresponding to candidate recommendation object A includes the probability values ​​of the target account performing each operation behavior for candidate recommendation object A.

[0090] In this embodiment of the application, the operation behavior can include any operation behavior that can be performed on the candidate recommendation object within the platform. For example... Figure 3 The image shown is a schematic diagram of a recommendation page, where multiple objects are recommended to the user, such as... Figure 3 Given video A and article B, the actions a user can perform on video A and article B include clicking, commenting, liking, and sharing. Therefore, in this recommendation system, the actions can include clicking, commenting, liking, and sharing.

[0091] Since a user's recent historical behavior sequence is more indicative of their recent preferences, when receiving an object recommendation request from a target account, one can obtain the objects operated on within the historical time period prior to the current moment. Alternatively, one can select multiple recent objects based on the number of objects included in the historical behavior sequence. For example, if each historical behavior sequence includes 30 objects, then one can select 30 objects from the target account's most recent operations, such as the 30 most recently clicked videos or the 30 most recently shared videos.

[0092] In practical applications, in order to facilitate the use of behavioral sequences when making recommendations, the user's behavioral sequences can be statistically analyzed in advance according to the timeline of the user's operations. Then, when it is necessary to use the historical behavioral sequences corresponding to each operation of the target account, they can be selected from the statistical behavioral sequence information of the target account.

[0093] like Figure 4 The image shows an example of user A's behavioral sequence statistics. The statistical behavioral sequence information may include basic information about user A, such as... Figure 4 The displayed information includes age and gender, and the statistical behavioral sequence information can be sorted according to the timeline of user actions, such as... Figure 4As shown, user A shared video A at 17:17 on August 2, 2019, shared video B at 07:34 on August 6, 2019, and clicked video C at 20:18 on August 9, 2019, and so on.

[0094] As shown, another example of behavior sequence statistics of user A is shown. Among them, the behavior sequence information can be counted according to different operation behaviors, and in each sequence, it can be arranged according to time, such as Figure 5 Figure 5 Among them, the click sequence and share sequence can be obtained according to the click behavior and share behavior, respectively.

[0095] In the embodiment of the application, when the probability value set corresponding to the candidate recommended object A is obtained, the similarity between the candidate recommended object A and each object included in the historical behavior sequence of each operation behavior of the target account can be calculated, and then the probability value set corresponding to the candidate recommended object A is obtained based on the similarity. For example, for the click behavior, the similarity between each object in each sequence and the candidate recommended object A is calculated, and then the similarity between the target account and the candidate recommended object A is calculated according to the weight value of each sequence or the weight value of each object, and then the click probability of the target account is obtained. Of course, the weight value of the click sequence can be appropriately higher than that of other sequences when predicting the click behavior.

[0096] The probability prediction model can also be constructed and trained in advance, and then the trained probability prediction model is used to obtain the probability value set corresponding to the candidate recommended object A according to the historical behavior sequence corresponding to each operation behavior. The training process and processing process of the probability prediction model will be introduced in the subsequent process, so it will not be described in detail here.

[0097] Taking the candidate recommended object A as an example, the probability value set of the candidate recommended object A obtained includes the probability value of each operation behavior of the target account on the candidate recommended object A, that is, if the candidate recommended object A is pushed to the target account, the click rate, share rate, like rate, forward rate or collection rate of the target account on the candidate recommended object A.

[0098] In the embodiment of the application, in addition to using the multiple historical behavior sequences corresponding to the multiple operation behaviors of the target account to predict the probability, other information can also be combined to predict the probability to improve the accuracy of the probability prediction. Among them, the other information may, for example, include one or more of the following information:

[0099] (1) Basic information of the target account, such as username, age, and gender, etc.

[0100] (2) Candidate recommended object information.​

[0101] (3) The browsing context information of the target account, for example, the objects browsed or operated by the user before the user pulls down.

[0102] (4) The device environment features of the device environment when the target account initiates the object recommendation request, such as location, time, and network, etc. For example, when the user is shopping and initiates the object recommendation request, and the location is Sichuan, the user can be recommended the specialties related to Sichuan.

[0103] Step 203: Obtain the recommendation degree of each candidate recommendation object based on the obtained probability value set of each candidate recommendation object.

[0104] In the embodiments of the present application, after obtaining the probability value set corresponding to each candidate recommendation object, the recommendation degree of each candidate recommendation object can be obtained based on the probability value set corresponding to each candidate recommendation object.

[0105] Similarly, taking the candidate recommendation object A as an example, the recommendation degree of the candidate recommendation object A can be obtained by averaging the probability value set, or considering that the importance of each operation behavior can be different, different operation behaviors can be given corresponding weight values according to the importance of each operation behavior, and then the probability values and weight values of each operation behavior are weighted and summed to obtain the recommendation degree of the candidate recommendation object A.

[0106] Step 204: Determine at least one target recommendation object from the plurality of candidate recommendation objects based on the obtained recommendation degrees.

[0107] In the embodiments of the present application, based on the recommendation degrees of the candidate recommendation objects, the candidate recommendation objects can be sorted according to the recommendation degrees, and then at least one candidate recommendation object with a higher recommendation degree is selected as the target recommendation object. For example, after sorting, the top ten candidate recommendation objects with the highest recommendation degrees can be selected as the target recommendation objects, and the object information of the determined target recommendation objects is pushed to the target account, so that the object information of the target recommendation objects can be viewed in the client logged in the target account.

[0108] Specifically, the object information of the target recommendation object can also be displayed according to the recommendation degrees, for example, the target recommendation object with a higher recommendation degree can be displayed preferentially.

[0109] In the embodiments of the present application, the probability prediction model can be used to realize the process of step 202, for example, the probability prediction model can be a Markov model. Figure 6As shown, it is the overall scheme flow diagram of object recommendation using the probability prediction model. Among them, the scheme mainly includes online and offline two processes, wherein the online process can include online recommendation and user interface display process, the offline process can include offline log collection and offline model training process, which will be introduced below.

[0110] 1. Log collection

[0111] The log collection process is mainly used for sample construction, which is one of the key steps in the offline process, which mainly includes feature extraction and label definition.

[0112] (1) Feature extraction

[0113] Specifically, the system log contains user basic information, operated objects, object operation behavior and object information, etc. Therefore, the user portrait data and object data contained in the log collected from the system can be processed, such as filtering, cleaning and splicing, and processed into sample files that can be used for sorting model training according to the set standardized format, which is to abstract the original log into a data table expression containing complete information. Among them, special attention is paid to the record of various operation behaviors of users, such as positive feedback behaviors including clicking, sharing and liking, and negative feedback behaviors including complaints or ignoring, recording the behavior occurrence time, object and corresponding attribute information, and generating various user behavior sequences according to the behavior occurrence time.

[0114] (2) Label definition

[0115] Label definition refers to labeling samples as positive and negative samples according to learning goals. In actual application, the index most concerned by the business can be defined as the main index, and a single label can be used to distinguish positive and negative samples. For example, for an object pushed to a user, if the user clicks on it, the user's click target label for the object can be 1, otherwise 0. Similarly, if the user shares it, the user's share target label for the object can be 1, otherwise 0.

[0116] In the multi-object scenario of the embodiments of the present application, multiple business indicators are used as learning goals together with the main indicator, and each indicator has its own label. After extracting features and labeling, training samples that can be used for training can be obtained.

[0117] 2. Offline training

[0118] After the training sample is completed, the model training can be performed. Specifically, the user's implicit interest preference and behavior habit are mined through the historical behavior sequence corresponding to the user's multiple operation behaviors, and the mined multiple behaviors are output to the multi-target model learning, and then the probability of the user's multiple operation behaviors is predicted.

[0119] Next, the process of model training is briefly introduced. Referring to Figure 7 the flowchart of model training is shown.

[0120] Step 701: Obtain a training sample set.

[0121] Specifically, the training sample can be collected by the process described in the above log collection part, so as to constitute the training sample set which can be used for model training.

[0122] Specifically, the training sample set can include multiple training samples, and each training sample can at least include: a historical behavior sequence corresponding to each of multiple operation behaviors associated with a corresponding trigger account before a trigger time of an object recommendation request, at least one object recommended to the corresponding trigger account based on the object recommendation request, and a label annotated for each object based on the real operation behavior of the corresponding trigger account on the recommended object.

[0123] For example, when the account A initiates an object recommendation request at time B, the server responds to the object recommendation request and recommends 10 objects to the account A. A training sample that can be formed by the account A can include a historical behavior sequence corresponding to various operation behaviors of the account A before time B, such as a click sequence or a sharing sequence, and also includes one or more of the above 10 objects and a label annotated according to the real operation behavior of the user on each object.

[0124] In the embodiment of the present application, the sample behavior sequence length of different operation behaviors can be the same or different. In the specific implementation process, in order to reduce the processing difficulty of the model, the length of all sample behavior sequences can be unified, that is, the length of all obtained sample behavior sequences is the same.

[0125] Step 702: Predict the probability of each operation behavior of each selected training sample to obtain a probability value set corresponding to each training sample.

[0126] In the embodiment of the present application, the prediction process of operation behavior probability in the training process is the same as the prediction process actually applied in the recommendation process, so the process will be introduced in detail in the subsequent recommendation process, and will not be described too much here.

[0127] In actual application, probability prediction can be performed on all training samples in the training sample set in each training, or a part of the training samples can be randomly selected for probability prediction according to a certain selection probability.

[0128] When the number of candidate objects included in each training sample is one, the probability value set is the probability value corresponding to each operation behavior of the object; when the number of candidate objects included in each training sample is multiple, the probability value set includes multiple probability value subsets of the objects, and each probability value subset is the probability value corresponding to each operation behavior of an object.

[0129] In the embodiments of the present application, the probability prediction model can generally include two parts. One part is a feature extraction part, which can perform feature extraction on the candidate objects and the real-time updated user recent behavior sequence. The other part is a multi-target prediction part, which is a multi-target prediction model. One target can correspond to one operation behavior. Therefore, the probability values of each target, i.e., each operation behavior, can be obtained by using the extracted features through the multi-target prediction part.

[0130] Step 703: Obtain the loss value of the probability prediction model according to the probability value set and the label set of each training sample.

[0131] Step 704: Determine whether the probability prediction model meets the convergence condition.

[0132] In the embodiments of the present application, as described above, the predicted probability value set can be compared with the label set annotated according to the actual behavior, and then the loss value of the model can be determined according to the comparison result, and then it can be determined whether the probability prediction model meets the convergence condition according to the loss value.

[0133] Similarly, when the number of candidate objects included in each training sample is one, the label set is the probability value corresponding to each operation behavior of the object; when the number of candidate objects included in each training sample is multiple, the label set includes multiple label subsets of the objects, and each label subset is the probability value corresponding to each operation behavior of an object.

[0134] Specifically, when the loss value is not greater than the preset loss value threshold, it indicates that the difference between the predicted probability and the probability indicated by the annotated label is small enough, and thus the accuracy of the probability prediction model meets the requirement, and thus it can be determined that the probability prediction model converges. On the contrary, the probability prediction model does not converge.

[0135] Any possible loss function can be selected to calculate the loss value, and the embodiments of the present application do not limit this.

[0136] Step 705: If the result of step 704 is no, the parameters of the probability prediction model are adjusted.

[0137] When the probability prediction model does not meet the convergence condition, the probability prediction model is adjusted according to the loss value, and the adjusted probability prediction model is used to enter the next training process, that is, jump to step 702.

[0138] If the result of step 704 is yes, that is, when the probability prediction model meets the convergence condition, the training is ended, and after the model training is completed, the model file of the probability prediction model can be obtained, and the model file includes the model parameters of each part of the model.

[0139] 3, Online recommendation

[0140] In the embodiment of the application, the trained probability prediction model can be used in online recommendation. When an object recommendation request of a target account is received online, the candidate recommendation object set of the target account is scored comprehensively by using the offline trained model. In this process, the ranking service extracts features of the target account initiating the object recommendation request, the candidate recommendation object to be scored, and the real-time updated user recent behavior sequence, inputs the trained multi-target model, and outputs the probability values of multiple targets, then scores the probability values of multiple targets, and finally returns the N candidate recommendation objects with the highest scores in the ranking result to the target account, and then displays the target recommendation objects pushed to the user interface. At the same time, the user can operate and feedback on the exposed target recommendation objects, such as clicking, sharing, liking, and commenting, etc. Correspondingly, logs will also collect these feedbacks, and then the collected contents can be used to retrain the trained probability prediction model, so as to optimize the probability prediction model and improve the accuracy of the probability prediction model.

[0141] Next, taking a specific model structure as an example, the probability prediction process is introduced. As shown in Figure 8 , it is a model structure diagram of a probability prediction model, as shown in Figure 8 , the probability prediction model includes an input layer, an embedding layer, a multi-layer perception, and a multi-sequence processing layer. It should be noted that Figure 8 , the model structure is taken as an example of two targets, that is, two operation behaviors, but in actual application, it can be extended to more operation behavior applications, and the application embodiments of the application are not limited to operation behavior types.

[0142] Next, the process of multi-target probability prediction using multiple historical behavior sequences is introduced in combination with the structure of the probability prediction model, referring to Figure 9 , it is a processing flow diagram of the probability prediction model.

[0143] Step 901: obtaining a sequence feature vector corresponding to each historical behavior sequence respectively.

[0144] In the embodiments of the present application, as shown in Figure 8 The input layer inputs the user information of the target account, the recommendation context information, the device environment feature information, the candidate object information, and the historical behavior sequences corresponding to various operation behaviors of the target account, such as the click behavior sequence and the sharing behavior sequence shown in Figure 8 to the input layer of the probability prediction model.

[0145] Further, the information input by the input layer is vectorized by the vectorization layer of the probability prediction model. Specifically, the main purpose of the Embedding process is to reduce the dimension of sparse features, and the vectorization layer can be realized by a special fully connected layer.

[0146] In the embodiments of the present application, although the learning tasks of multiple targets are different, the embedding structure and the underlying fully connected network structure of the shared features are shared by each other. Through such a shared layer setting, the learned feature parameters are consistent for different tasks, and the problems of insufficient training data and feature sparsity existing in independent optimization of a single target are avoided.

[0147] Among them, after the user information of the target account, the recommendation context information, the device environment feature information, and the candidate recommendation object information are processed by the vectorization layer, the corresponding feature vectors can be obtained, that is, the account feature vector of the target account, the context feature vector, the device environment feature vector representing the device environment when the target account initiates the object recommendation request, and the object feature vector of each candidate recommendation object.

[0148] As for the historical behavior sequences input by the input layer, they can be processed by a multi-sequence processing layer, such as the right part of the structure shown in Figure 8 .

[0149] Among them, the historical behavior sequence of each operation behavior takes the behavior object as the carrier. For example, user A clicks video V at time t, then video V is added to the click behavior sequence of user A, which contains the related attributes (identification or category) of V and records the behavior time when V is clicked. Each operation behavior corresponds to a corresponding historical behavior sequence, and each behavior record corresponds to a carrier. Whether to do the deduplication processing on the same carrier in the same behavior can be determined in combination with the business. For example, for the video business, user A clicks video V twice, so it may be a mistake operation, and therefore the two video V can be deduplicated. In the shopping business, user A clicks the product B twice, so it may be that user A likes the product B, and therefore the two records of the product B can be kept.

[0150] Since the processing procedure of the historical behavior sequence corresponding to each operation behavior is similar, here, a historical behavior sequence is taken as an example, for example, a click behavior sequence is taken as an example.

[0151] The constructed click behavior sequence is respectively sorted from far to near according to the timestamps of the objects being clicked, and is respectively subjected to embedding processing, and the click behavior sequence corresponds to an output vector with a length of d, and d represents the number of objects.

[0152] Since the click behavior sequence is composed of multiple objects, each object in the click behavior sequence can also be vectorized by the above vectorization layer to obtain a content feature vector of each object. For example, for an object, the object information input by the input layer can include features of each feature dimension of the object, for example, the feature dimensions include a publisher, a type, and specific content, and the vectorization layer can perform dimension reduction processing on the features of each feature dimension to obtain a content feature vector that can represent content-related information of the object.

[0153] In the embodiment of the application, for the click behavior sequence, each object can be represented by a content feature vector, and the position feature of the object in the click behavior sequence also needs to be represented, and therefore the position encoding (Position Encoder) layer shown in Figure 8 in the click behavior sequence can also be used. Position encoding is a common operation for long sequences in natural language processing (NLP), and is mainly used to retain the structured information of the sequence.

[0154] Specifically, one way of position encoding is to encode the position of the object in the sequence, for example, the position of the object in the click behavior sequence, to obtain a time feature vector. Since the objects are arranged in time sequence, the position of the object in the sequence can also reflect the proximity of the operation time of the object to the current time, and the time feature vector of each object obtained can also indirectly reflect the proximity of the operation time of the object to the current time.

[0155] Another way of position encoding can encode the position according to the proximity of the operation time of the object to the current time, for example, using the time difference between the behavior occurrence time and the current request time to learn embedding, which can calculate the proximity of the behavior occurrence to the current time to distinguish long-term and short-term interests, thereby obtaining a time feature vector representing the proximity of the operation time of the object to the current time by the target account.

[0156] After obtaining the content feature vector and the time feature vector of each object in a click behavior sequence, the object feature vector of each object can be obtained according to the content feature vector and the time feature vector of each object respectively. For example, the time feature vector can be superimposed into the content feature vector to obtain the corresponding object feature vector.

[0157] After the Position encoder processing, the object feature vectors of the click behavior sequence enter the sequence feature extraction layer to obtain the sequence feature vector of the click behavior sequence.

[0158] Specifically, the pooling layer can be processed in the following ways to obtain the sequence feature vector of the click behavior sequence based on the obtained object feature vectors.

[0159] (1) Pooling processing

[0160] That is, the object feature vectors of the click behavior sequence are processed by pooling to obtain the sequence feature vector of the historical behavior sequence. The pooling processing can be performed by sum pooling, mean pooling or max pooling.

[0161] (2) Attention mechanism processing

[0162] Through the model training process, the object weight parameter value of each object in the sequence can be learned, which is used to represent the importance of the corresponding object feature vector of each object in a historical behavior sequence. Then, the sequence feature vector of a historical behavior sequence can be obtained according to each object feature vector and the corresponding object weight parameter value. For example, the weighted sum can be used to obtain the sequence feature vector.

[0163] Specifically, the object weight parameter value can be the attention weight matrix corresponding to each object, which can include the query weight matrix, the key weight matrix and the value weight matrix. Then, the query vector, the key vector and the value vector can be obtained based on the query weight matrix, the key weight matrix and the value weight matrix. Then, the object weight parameter value of each object can be obtained based on the query vector and the key vector of each object. Then, the sequence feature vector can be obtained according to the object weight parameter value and the value vector.

[0164] (3) Recurrent Neural Network (RNN)

[0165] Specifically, the RNN network is used to perform sequence feature extraction on each object feature vector to obtain a sequence feature vector of the click behavior sequence. The RNN network can be any network structure that can perform sequence feature extraction, and the embodiments of the present application do not limit this.

[0166] Through the above process, each historical behavior sequence can correspond to an output sequence feature vector, as shown in Figure 8 The click behavior sequence and the sharing behavior sequence correspond to the click sequence output and the sharing sequence output, respectively.

[0167] Step 902: Perform sequence feature combination on each sequence feature vector to obtain a comprehensive feature vector corresponding to the sequence feature vector.

[0168] In the embodiments of the present application, in order to consider the relationship between multiple behaviors and multiple tasks, the historical behavior sequence of each operation behavior is selected in different tasks, so as shown in Figure 8 The sequence combiner is added to the multi-sequence processing layer, the input of the sequence combiner is the encoding result of each historical behavior sequence, that is, the sequence feature vector of each historical behavior sequence, the number of vectors corresponds to the number of historical behavior sequences, and the output of the sequence combiner is the comprehensive result of multiple historical behavior sequences corresponding to each task, the number of output vectors corresponds to the number of multiple tasks, as shown in Figure 8 The tasks include the click task and the sharing task, so the output of the sequence combiner is the comprehensive feature vector corresponding to the click task and the sharing task, respectively.

[0169] In actual application, as shown in Figure 8 The number of tasks is the same as the number of operation behaviors, of course, the number of tasks can also be different from the number of operation behaviors, then the comprehensive result of each task can be learned according to multiple operation behaviors, for example, the input sequence can include the click behavior sequence, the sharing behavior sequence and the comment behavior sequence, and the task can only include the click task and the sharing task.

[0170] In the embodiments of the present application, the purpose of the sequence combiner is to give different tendencies to the output of each historical behavior sequence for different tasks, for example, the output result weight of the sharing sequence is higher than that of the click sequence in the sharing task, and then the output of each historical behavior sequence is integrated based on the tendency to obtain the comprehensive result of the task.

[0171] Specifically, for each obtained sequence feature vector, the following operations are performed respectively:

[0172] According to the influence degree of each operation behavior on the sequence feature vector corresponding to the operation behavior, the sequence feature vectors are combined to obtain a comprehensive feature vector corresponding to the sequence feature vector.

[0173] Since the process of obtaining the comprehensive feature vector corresponding to each task is similar, this example still takes a click task as an example. Then, according to the influence degree of each operation behavior on the sequence feature vector corresponding to the click behavior, the sequence feature vectors are combined to obtain a comprehensive feature vector corresponding to the sequence feature vector of the click behavior sequence, that is, the comprehensive feature vector of the click task.

[0174] In the embodiments of the present application, when obtaining the comprehensive feature vector of each task, the following two methods can be used, and the following still takes a click task as an example to introduce the two methods.

[0175] (1) The first method

[0176] Among them, the sequence weight parameter value of each operation behavior sequence feature vector to the sequence feature vector of the click behavior can be obtained by a set regression function, and then the comprehensive feature vector of a historical behavior sequence can be obtained according to the sequence feature vector of each historical behavior sequence and the corresponding sequence weight parameter value. Among them, the sum of each sequence weight parameter value is 1, and the sequence weight parameter value is used to represent the influence degree of the operation behavior corresponding to each sequence feature vector on the operation behavior corresponding to the sequence feature vector.

[0177] For example, the set regression function can be a softmax function. Specifically, similar to the gating network of MMOE (Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts), the output of the candidate item to the multiple historical behavior sequences can be calculated by N times softmax with the candidate item as the key, and the value of N corresponds to the number of tasks.

[0178] (2) The second method

[0179] Wherein, at least one weight representation vector corresponding to each sequence feature vector can be obtained according to each sequence feature vector and at least one attention weight matrix corresponding to each sequence feature vector, and then a comprehensive feature vector corresponding to each sequence feature vector can be obtained according to at least one weight representation vector corresponding to each sequence feature vector. Each weight representation vector corresponds to an attention weight matrix.

[0180] That is, in the specific processing process, N times of self-attention calculation is performed between the sequence feature vectors of the plurality of historical behavior sequences, thereby obtaining N comprehensive feature vectors corresponding to N tasks respectively.

[0181] Specifically, the at least one attention weight matrix includes a query weight matrix, a key weight matrix and a value weight matrix. Here, taking the click task as an example for description, the process of other tasks is similar to that of the click task, and thus the following description can be referred to.

[0182] Wherein, the click task corresponds to the query weight matrix, the key weight matrix and the value weight matrix of the task, and according to the three weight matrices and the sequence feature vectors of each operation behavior, the query vector, the key vector and the value vector corresponding to each sequence feature vector can be obtained respectively, and then according to the query vector corresponding to the sequence feature vector of the click behavior sequence and the key vector corresponding to each sequence feature vector, the attention weight value corresponding to each sequence feature vector can be obtained respectively, wherein the attention weight value is used to represent the influence degree of the operation behavior corresponding to each sequence feature vector on the operation behavior corresponding to each sequence feature vector.

[0183] Specifically, taking only the click behavior and the sharing behavior as an example, the query vector 1, the key vector 1 and the value vector 1 corresponding to the click behavior sequence, and the query vector 2, the key vector 2 and the value vector 2 corresponding to the sharing behavior sequence can be obtained respectively, and then the similarity between the key vector 1 and the key vector 2 can be calculated by using the query vector 1, thereby obtaining the attention weight value corresponding to the click behavior sequence and the sharing behavior sequence according to the similarity.

[0184] Further, the comprehensive feature vector corresponding to the click task can be obtained according to the value vector corresponding to each sequence feature vector and the attention weight value corresponding to each sequence feature vector.

[0185] The two methods described above both give different weights to each historical behavior sequence in each task, and the final weighted sum result is the output result of the historical behavior sequence for the task.

[0186] Through the above process, the comprehensive feature vectors corresponding to respective tasks can be obtained respectively, and then the obtained comprehensive feature vectors are concatenated to the corresponding task sub-network bottom layer for joint learning with the multi-target, for example, the comprehensive feature vector of the click task is concatenated to the click task sub-network bottom layer for network training and prediction of the click target. Figure 8

[0187] Step 903: According to the obtained respective comprehensive feature vectors, a set of probability values corresponding to each of the plurality of candidate recommended objects is obtained respectively.

[0188] In the multi-task network layer, in order to facilitate each task to make better data fitting according to its own label distribution, each task corresponds to an independent neural network structure, as shown in Figure 8 The click task corresponds to a neural network structure, and the output of the network structure is the click rate. The sharing task corresponds to a neural network structure, and the output of the network structure is the sharing rate. The number of layers and the number of nodes of each layer of the neural network are designed in advance, and the neural network structures of different tasks can be the same or different. However, since the dimensions of the comprehensive feature vectors corresponding to each task are the same, the nodes of the first layer of each neural network structure can be the same.

[0189] In one possible manner, the layers in the neural network of each task can be constructed in a full-link manner.

[0190] In the embodiments of the present application, in addition to the comprehensive feature vectors of each task, other auxiliary information can also be integrated for probability prediction. The auxiliary information can include user information of the target account, recommendation context information, device environment feature information, and candidate recommended object information, and the like, as shown in Figure 10 After processing by the vectorization layer, the corresponding feature vectors can be obtained, i.e., the account feature vector of the target account, the context feature vector, the device environment feature vector representing the device environment when the target account initiates the object recommendation request, and the object feature vector of each candidate recommended object. Then, the comprehensive feature vectors of each task and the above auxiliary vectors are connected in the connection layer for probability prediction by inputting into the neural network structure in the multi-task network layer.

[0191] ​The model adopted by the embodiment of the present application belongs to a multi-sequence multi-target deep neural network structure, which simultaneously models and learns multiple business indicators in a multi-target single model manner, reduces the model size parameters and bandwidth request when obtaining the model parameters online, reduces the separate calculation time of multiple models, and simultaneously models and mines the implicit interests of users through multiple behavior sequences of the users. The time factor has a great influence on the mining process, and the Position encoder is added to identify the long-term and short-term interests of the users. The learned sequence interests are added to the multi-target model. In addition, since the user behavior sequence is adopted, the user behavior can be captured in time during online recommendation, and the user behavior sequence is updated in real time, so that the change of the user interest can be quickly captured, especially for the interest migration of old users to new business scenarios.

[0192] In summary, the embodiment of the present application builds a deep neural network model with multi-behavior sequence and multi-target output of users, simultaneously optimizes multiple core indicators of the recommendation system and integrates and sorts online, reduces the model training, adds additional information, improves the comprehensive recommendation effect of multiple indicators, and is suitable for most recommendation business scenarios. In multiple business scenarios, the benefits of multiple indicators are simultaneously improved, and the real-time interest of users can be quickly captured.

[0193] Please refer to Figures 2-9 Based on the same inventive concept, the embodiment of the present application further provides a device 100 for determining a recommended object, which comprises:

[0194] A candidate object obtaining unit 1001 is configured to obtain multiple candidate recommended objects based on an object recommendation request triggered by a target account;

[0195] A probability prediction unit 1002 is configured to respectively obtain a probability value set corresponding to each of the multiple candidate recommended objects according to a historical behavior sequence corresponding to each of multiple operation behaviors associated with the target account, wherein the historical behavior sequence corresponding to each operation behavior at least includes at least one object targeted by the target account when performing the corresponding operation behavior in a historical time period, and the probability value set corresponding to each candidate recommended object includes a probability value of the target account performing each operation behavior with respect to the corresponding candidate recommended object;

[0196] A recommendation degree obtaining unit 1003 is configured to respectively obtain a recommendation degree of each candidate recommended object based on the obtained probability value set;

[0197] A recommended object determining unit 1004 is configured to determine at least one target recommended object from the multiple candidate recommended objects based on the obtained recommendation degree.

[0198] The probability prediction unit 1003 is specifically configured to:

[0199] The trained probability prediction model is used to obtain a plurality of probability value sets respectively corresponding to the plurality of candidate recommended objects according to the historical behavior sequences respectively corresponding to the plurality of operation behaviors.

[0200] The probability prediction model is trained by a plurality of training samples. Each training sample at least includes: historical behavior sequences respectively corresponding to a plurality of operation behaviors associated with a corresponding trigger account before a trigger time of an object recommendation request, at least one object recommended to the corresponding trigger account based on the object recommendation request, and labels marked for the objects based on real operation behaviors of the corresponding trigger account on the recommended objects.

[0201] Optionally, the probability prediction unit 1003 is specifically used for:

[0202] The sequence feature vectors respectively corresponding to the historical behavior sequences are obtained.

[0203] For each sequence feature vector, the sequence feature vectors are combined according to the influence degrees of the plurality of operation behaviors on the operation behaviors corresponding to the sequence feature vectors, to obtain a comprehensive feature vector corresponding to the sequence feature vector.

[0204] According to the obtained comprehensive feature vectors, a plurality of probability value sets respectively corresponding to the plurality of candidate recommended objects are obtained.

[0205] Optionally, the probability prediction unit 1003 is specifically used for:

[0206] The content feature vectors and the time feature vectors of the objects in a historical behavior sequence are obtained. The time feature vectors are used to represent the proximity of the operation time of the target account on the objects to the current time.

[0207] The object feature vectors of the objects are obtained according to the content feature vectors and the time feature vectors of the objects respectively.

[0208] The sequence feature vector of a historical behavior sequence is obtained based on the obtained object feature vectors.

[0209] Optionally, the probability prediction unit 1003 is specifically used for:

[0210] The sequence feature vector of a historical behavior sequence is obtained by performing pooling processing on the object feature vectors; or

[0211] The sequence feature vector of a historical behavior sequence is obtained according to the object feature vectors and object weight parameter values respectively corresponding to the object feature vectors. The object weight parameter values are used to represent the importance of the objects corresponding to the object feature vectors in the historical behavior sequence.

[0212] The sequence feature extraction is performed on each object feature vector to obtain a sequence feature vector of a historical behavior sequence.

[0213] Optionally, the probability prediction unit 1003 is specifically configured to:

[0214] The sequence weight parameter value of each sequence feature vector is obtained through a set regression function, wherein the sum of the obtained sequence weight parameter values is 1, and the sequence weight parameter value is used to represent the influence degree of the corresponding operation behavior of each sequence feature vector on the corresponding operation behavior of a sequence feature vector.

[0215] According to the sequence feature vector of each historical behavior sequence and the corresponding sequence weight parameter value, a comprehensive feature vector of a historical behavior sequence is obtained.

[0216] Optionally, the probability prediction unit 1003 is specifically configured to:

[0217] According to each sequence feature vector and at least one attention weight matrix corresponding to a sequence feature vector, at least one weight representation vector corresponding to each sequence feature vector is obtained, wherein each weight representation vector corresponds to an attention weight matrix.

[0218] According to the at least one weight representation vector corresponding to each sequence feature vector, a comprehensive feature vector corresponding to a sequence feature vector is obtained.

[0219] Optionally, the at least one attention weight matrix includes a query vector weight matrix, a key vector weight matrix and a value vector weight matrix; and the probability prediction unit 1003 is specifically configured to:

[0220] According to each sequence feature vector and the query vector weight matrix, the key vector weight matrix and the value vector weight matrix, the corresponding query vector, the key vector and the value vector are obtained.

[0221] According to the query vector corresponding to a sequence feature vector and the key vector corresponding to each sequence feature vector, an attention weight value corresponding to each sequence feature vector is obtained, wherein the attention weight value is used to represent the influence degree of the corresponding operation behavior of each sequence feature vector on the corresponding operation behavior of a sequence feature vector.

[0222] According to the value vector corresponding to each sequence feature vector and the attention weight value corresponding to each sequence feature vector, a comprehensive feature vector corresponding to a sequence feature vector is obtained.

[0223] Optionally, the probability prediction unit 1003 is specifically configured to:

[0224] According to the auxiliary feature vector and the obtained respective comprehensive feature vectors, a set of probability values corresponding to each of the plurality of candidate recommended objects is obtained respectively;

[0225] The auxiliary feature vector at least includes one or more of an account feature vector of the target account, a device environment feature vector representing a device environment of the target account when initiating the object recommendation request, and an object feature vector of each candidate recommended object.

[0226] The apparatus can be configured to execute the method shown in the embodiments shown in the description, and thus the functions and the like that can be achieved by the functional modules of the apparatus can refer to the description of the method shown in the embodiments shown in the description. Figures 2-9 The functions and the like that can be achieved by the functional modules of the apparatus can refer to the description of the method shown in the embodiments shown in the description. Figure 11 The functions and the like that can be achieved by the functional modules of the apparatus can refer to the description of the method shown in the embodiments shown in the description.

[0227] Please refer to Figure 11 , based on the same technical concept, the embodiments of the present application also provide a computer device 110, which can include a memory 1101 and a processor 1102.

[0228] The memory 1101 is configured to store a computer program executed by the processor 1102. The memory 1101 can mainly include a program storage area and a data storage area, wherein the program storage area can store an operating system, at least one application required by a function, and the like; the data storage area can store data created according to the use of the computer device, and the like. The processor 1102 can be a central processing unit (CPU) or a digital processing unit, and the like. The specific connection medium between the memory 1101 and the processor 1102 is not limited in the embodiments of the present application. In the embodiments of the present application, Figure 11 the memory 1101 and the processor 1102 are connected through a bus 1103, and the bus 1103 is represented by a thick line in Figure 11 , and the connection mode between other components is only schematically illustrated and is not limited. The bus 1103 can be divided into an address bus, a data bus, a control bus, and the like. For convenience of representation, Figures 2-9 only one thick line is used in

[0229] The memory 1101 can be a volatile memory (volatile memory), such as a random access memory (RAM); the memory 1101 can also be a non-volatile memory (non-volatile memory), such as a read-only memory, a flash memory, a hard disk drive (HDD) or a solid-state drive (SSD), or the memory 1101 is any other medium capable of carrying or storing desired program code in the form of instructions or data structures and capable of being accessed by a computer, but not limited to this. The memory 1101 can be a combination of the above-mentioned memories.

[0230] The processor 1102 is configured to execute the computer program stored in the memory 1101 to perform the method performed by the device in the embodiments shown in the Figures 2-9

[0231] In some possible implementation manners, various aspects of the method provided in the present application can also be implemented in the form of a program product, which includes program codes for causing a computer device to perform the steps in the method described above according to various exemplary embodiments of the present application when the program product is run on the computer device, for example, the computer device can perform the method performed by the device in the embodiments shown in the ​

[0232] The program product can adopt any combination of one or more readable media. The readable medium can be a readable signal medium or a readable storage medium. The readable storage medium may, for example, be but is not limited to an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or apparatus, or any combination of the above. More specific examples (non-exhaustive list) of readable storage media include an electrical connection having one or more wires, a portable disc, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.

[0233] Although the preferred embodiments of the present application have been described, those skilled in the art can make additional changes and modifications to the embodiments once they know the basic inventive concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications falling within the scope of the present application.

[0234] ​​Obviously, many modifications and variations of the present application are possible in light of the above teachings. It is, therefore, to be understood that within the scope of the appended claims and their equivalents, the application can be practiced otherwise than as specifically described.

Claims

1. A method of determining a recommended object, characterized by, The method comprises: obtaining a plurality of candidate recommended objects based on a target account triggered object recommendation request; obtaining a sequence feature vector corresponding to each historical behavior sequence of a plurality of operation behaviors associated with the target account respectively, each sequence feature vector corresponding to an operation behavior; wherein the historical behavior sequence corresponding to each operation behavior at least includes at least one object targeted by the target account when performing the corresponding operation behavior in a historical time period; for the plurality of operation behaviors, the following operations are performed respectively: for an operation behavior, a plurality of sequence feature vectors corresponding to the plurality of operation behaviors are combined according to the influence degree of the plurality of operation behaviors on the operation behavior, to obtain a comprehensive feature vector corresponding to the operation behavior; among the influence degrees of the plurality of operation behaviors on the operation behavior, the influence degree corresponding to the operation behavior is the largest; obtaining a probability value set corresponding to each of the plurality of candidate recommended objects respectively according to the obtained comprehensive feature vectors, each probability value set corresponding to a candidate recommended object including a probability value of the target account performing each operation behavior on the corresponding candidate recommended object; wherein the probability value of a candidate recommended object performing an operation behavior is determined according to the comprehensive feature vector of the operation behavior and the information of the candidate recommended object; obtaining a recommendation degree of each candidate recommended object based on the obtained probability value set; determining at least one target recommended object from the plurality of candidate recommended objects based on the obtained recommendation degrees.

2. The method of claim 1, wherein, obtaining a probability value set corresponding to each of the plurality of candidate recommended objects respectively according to the historical behavior sequence corresponding to each of the plurality of operation behaviors associated with the target account, comprising: obtaining a probability value set corresponding to each of the plurality of candidate recommended objects respectively according to the historical behavior sequence corresponding to each of the plurality of operation behaviors through a trained probability prediction model; wherein the probability prediction model is trained through a plurality of training samples, each training sample at least including: a historical behavior sequence corresponding to each of a plurality of operation behaviors associated with a corresponding trigger account before a trigger time of an object recommendation request, at least one object recommended to the corresponding trigger account based on the object recommendation request, and a label annotated for each object based on the real operation behavior of the corresponding trigger account on each recommended object.

3. The method of claim 1, wherein, For a historical behavior sequence, obtaining a sequence feature vector of the historical behavior sequence comprises: obtaining content feature vectors and time feature vectors of each object in the historical behavior sequence; the time feature vector is used to represent the proximity of the operation time of the target account on each object to the current time; obtaining object feature vectors of each object according to the content feature vectors and time feature vectors of each object respectively; obtaining the sequence feature vector of the historical behavior sequence based on the obtained object feature vectors.

4. The method of claim 3, wherein, obtaining a sequence feature vector of the one historical behavior sequence based on the obtained respective object feature vectors, including: performing pooling processing on the respective object feature vectors to obtain a sequence feature vector of the one historical behavior sequence; or, obtaining a sequence feature vector of the one historical behavior sequence according to the respective object feature vectors and respective object weight parameter values corresponding to the object feature vectors; the object weight parameter values are used to represent the importance of the objects corresponding to the respective object feature vectors in the one historical behavior sequence; or, performing serialization feature extraction on the respective object feature vectors to obtain a sequence feature vector of the one historical behavior sequence.

5. The method of claim 1, wherein, For one operation behavior, according to the influence degree of the plurality of operation behaviors on the one operation behavior, performing sequence feature combination on a plurality of sequence feature vectors corresponding to the plurality of operation behaviors to obtain a comprehensive feature vector corresponding to the one operation behavior, including: obtaining sequence weight parameter values of the plurality of sequence feature vectors on the sequence feature vector of the one operation behavior through a set regression function; wherein the sum of the respective sequence weight parameter values is 1, and the sequence weight parameter values are used to represent the influence degree of the operation behaviors corresponding to the plurality of sequence feature vectors on the one operation behavior; obtaining the comprehensive feature vector of the one operation behavior according to the plurality of sequence feature vectors and respective sequence weight parameter values corresponding to the sequence feature vectors.

6. The method of claim 1, wherein, For one operation behavior, according to the influence degree of the plurality of operation behaviors on the one operation behavior, performing sequence feature combination on a plurality of sequence feature vectors corresponding to the plurality of operation behaviors to obtain a comprehensive feature vector corresponding to the one operation behavior, including: obtaining at least one weight representation vector corresponding to each of the plurality of sequence feature vectors according to the plurality of sequence feature vectors and at least one attention weight matrix corresponding to the sequence feature vector of the one operation behavior; wherein each weight representation vector corresponds to an attention weight matrix; obtaining the comprehensive feature vector corresponding to the one operation behavior according to the at least one weight representation vector corresponding to each of the plurality of sequence feature vectors.

7. The method of claim 6, wherein, The at least one attention weight matrix includes a query vector weight matrix, a key vector weight matrix, and a value vector weight matrix; obtaining at least one weight representation vector corresponding to each of the plurality of sequence feature vectors according to the plurality of sequence feature vectors and at least one attention weight matrix corresponding to the sequence feature vector of the one operation behavior, including: obtaining a corresponding query vector, key vector, and value vector according to each sequence feature vector and the query vector weight matrix, the key vector weight matrix, and the value vector weight matrix; obtaining the comprehensive feature vector corresponding to the one sequence feature vector according to the at least one weight representation vector corresponding to each of the respective sequence feature vectors, including: According to the query vector corresponding to the one sequence feature vector and the key vectors corresponding to the respective sequence feature vectors, attention weight values corresponding to the respective sequence feature vectors are obtained respectively; the attention weight values are used to represent the influence degree of the operation behaviors corresponding to the respective sequence feature vectors on the operation behavior corresponding to the one sequence feature vector; According to the value vectors corresponding to the respective sequence feature vectors and the attention weight values corresponding to the respective sequence feature vectors, a comprehensive feature vector corresponding to the one sequence feature vector is obtained.

8. The method of claim 1, wherein, According to the obtained respective comprehensive feature vectors, a probability value set corresponding to each of the plurality of candidate recommended objects is obtained respectively, including: According to the auxiliary feature vector and the obtained respective comprehensive feature vectors, a probability value set corresponding to each of the plurality of candidate recommended objects is obtained respectively; The auxiliary feature vector at least includes one or more of an account feature vector of the target account, a device environment feature vector representing a device environment of the target account when initiating the object recommendation request, and an object feature vector of each candidate recommended object.

9. An apparatus for determining a recommended object, the apparatus comprising: The device includes: A candidate object obtaining unit is configured to obtain a plurality of candidate recommended objects based on an object recommendation request triggered by a target account; A probability prediction unit is configured to obtain a sequence feature vector corresponding to each of a plurality of historical behavior sequences of a plurality of operation behaviors associated with the target account, each sequence feature vector corresponding to an operation behavior; wherein the historical behavior sequence corresponding to each operation behavior at least includes at least one object targeted by the target account when performing the corresponding operation behavior in a historical time period; for the plurality of operation behaviors, the following operations are performed respectively: for an operation behavior, a comprehensive feature vector corresponding to the operation behavior is obtained by performing sequence feature combination on a plurality of sequence feature vectors corresponding to the plurality of operation behaviors according to the influence degree of the plurality of operation behaviors on the operation behavior; the influence degree of the operation behavior is the largest among the influence degrees of the plurality of operation behaviors on the operation behavior; according to the obtained respective comprehensive feature vectors, a probability value set corresponding to each of the plurality of candidate recommended objects is obtained respectively, and each probability value set corresponding to a candidate recommended object includes a probability value of the target account performing each operation behavior on the corresponding candidate recommended object; wherein the probability value of performing an operation behavior on a candidate recommended object is determined according to the comprehensive feature vector of the operation behavior and the information of the candidate recommended object; A recommendation degree obtaining unit is configured to obtain a recommendation degree of each candidate recommended object based on the obtained respective probability value sets; A recommended object determining unit is configured to determine at least one target recommended object from the plurality of candidate recommended objects based on the obtained respective recommendation degrees.

10. The apparatus of claim 9, wherein, The probability prediction unit is specifically configured to: According to the historical behavior sequences corresponding to the plurality of operation behaviors, a probability value set corresponding to each of the plurality of candidate recommended objects is obtained respectively by using a trained probability prediction model; The probability prediction model is trained by a plurality of training samples, and each training sample at least includes: a plurality of operation behavior history sequences corresponding to a corresponding trigger account respectively, at least one object recommended to the corresponding trigger account based on an object recommendation request, and a label marked for each object based on a real operation behavior of the corresponding trigger account to each object recommended. 11.A computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein, The processor executes the computer program to implement the steps of the method in any one of claims 1 to 8. 12.A computer storage medium having computer program instructions stored thereon, wherein, The computer program instructions are executed by a processor to implement the steps of the method in any one of claims 1 to 8.

Citation Information

Patent Citations

  • Method and device for determining interest degree of user in article, equipment and storage medium

    CN110162690A