Content distribution method, medium, device and computing device
By evaluating the complete playback probability of the content to be distributed and the re-visit probability of the push scenario, combined with the first and second content recall models, the problem of reduced user experience caused by random trials is solved, and the accuracy of content distribution and improved user satisfaction are achieved.
Patent Information
- Application Number
- CN202211363721.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-11-02
- Publication Date
- 2025-09-19
- Estimated Expiration
- 2042-11-02
AI Technical Summary
Existing audio and video media platforms distribute content through random trials, which leads to a decline in user experience and affects the development of high-quality content and the platform's reputation.
The first content recall model is used to evaluate the probability that the content to be distributed is played completely, and the second content recall model is used to evaluate the probability that the content to be distributed is accessed again in the push scenario. The final content push strategy is determined by combining the scores of the two.
It improves the accuracy of content distribution and user experience, ensures that the content to be distributed is delivered to the most suitable push scenario, and improves user satisfaction and content distribution effect.
Smart Images

Figure CN115664979B_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present disclosure relate to the field of computer technology, and more particularly, to a content distribution method, medium, apparatus, and computing device. Background Art
[0002] This section is intended to provide a background or context to the embodiments of the present disclosure that are recited in the claims. No statement herein is admitted to be prior art by virtue of its inclusion in this section.
[0003] To enhance their influence within the industry, existing audio and video media platforms typically promote their own exclusive, high-quality content, such as self-produced videos and copyrighted songs. To enhance the influence of this exclusive, high-quality content, platforms must manage traffic distribution, specifically controlling the frequency of push notifications to maximize user engagement. However, the effectiveness of traffic distribution control can impact the user experience and potentially the subsequent success of this content.
[0004] In related technologies, content distribution mainly uses random trial to find the most appropriate distribution method, but the random trial process usually damages the user experience, which is not conducive to the development of high-quality content, and will also affect the platform's reputation and reduce user experience. Summary of the Invention
[0005] The present disclosure provides a content distribution method, medium, apparatus, and computing device to solve the problem in related technologies that the content distribution process may reduce user experience.
[0006] In a first aspect of the embodiments of the present disclosure, a content distribution method is provided, comprising:
[0007] Responding to a received content push request, obtaining at least one content to be distributed, the content push request including a push scenario corresponding to the request;
[0008] Inputting information of at least one content to be distributed into a first content recall model, and outputting a first score of the at least one content to be distributed, wherein the first content recall model is trained based on whether the content to be distributed has been played completely, and the first score is used to represent the probability that the at least one content to be distributed has been played completely;
[0009] Inputting information of at least one content to be distributed into a second content recall model, and outputting a second score of the at least one content to be distributed, wherein the second content recall model is trained based on whether the push scenario corresponding to the content to be distributed will be visited again, and the second score is used to represent the probability that the push scenario corresponding to the content to be distributed will be visited again;
[0010] Based on the first score and the second score, content to be distributed is determined from the at least one content to be distributed and pushed into the push scenario.
[0011] In a second aspect of the embodiments of the present disclosure, a content recall model training method is provided, comprising:
[0012] Based on the set popularity range, determine the sample content for training;
[0013] Based on the log of sample content, obtain training samples for model training;
[0014] The training samples are input into the content recall model, and the content recall model is trained based on the set target. The set target is whether the sample content is played completely, or whether the push scenario corresponding to the sample content is accessed again within a set time.
[0015] In a third aspect of the embodiments of the present disclosure, a computer-readable storage medium is provided, comprising:
[0016] The computer-readable storage medium stores computer-executable instructions, which, when executed by a processor, are used to implement the content distribution method as in the first aspect of the present disclosure; and / or, the computer-executable instructions, when executed by a processor, are used to implement the content recall model training method as in the second aspect of the present disclosure.
[0017] In a fourth aspect of the embodiments of the present disclosure, a content distribution device is provided, including:
[0018] An acquisition module, configured to acquire at least one content to be distributed in response to a received content push request, wherein the content push request includes a push scenario corresponding to the request;
[0019] a first scoring module, configured to input information of at least one content to be distributed into a first content recall model, and output a first score for the at least one content to be distributed, wherein the first content recall model is trained based on whether the content to be distributed has been played completely, and the first score is used to represent a probability that the at least one content to be distributed has been played completely;
[0020] a second scoring module, configured to input information of at least one content to be distributed into a second content recall model and output a second score for the at least one content to be distributed, wherein the second content recall model is trained based on whether the push scenario corresponding to the content to be distributed will be visited again, and the second score is used to represent the probability that the push scenario corresponding to the content to be distributed will be visited again;
[0021] The push module is configured to determine, from at least one content to be distributed, content to be distributed and push it to a push scenario based on the first score and the second score.
[0022] In a fifth aspect of the embodiments of the present disclosure, a content recall model training device is provided, comprising:
[0023] A content determination module, configured to determine sample content for training based on a set popularity range;
[0024] The sample determination module is used to obtain training samples for model training based on the log of sample content;
[0025] The training module is used to input the training samples into the content recall model and train the content recall model based on the set target. The set target is whether the sample content is played completely, or whether the push scenario corresponding to the sample content is accessed again within the set time.
[0026] In a sixth aspect of the embodiments of the present disclosure, there is provided a computing device comprising: at least one processor;
[0027] and a memory communicatively coupled to the at least one processor;
[0028] In which, the memory stores instructions that can be executed by at least one processor, and the instructions are executed by at least one processor to enable the computing device to perform the content distribution method as in the first aspect of the present disclosure; and / or to enable the computing device to perform the content recall model training method as in the second aspect of the present disclosure.
[0029] According to the content distribution method, medium, apparatus and computing device of the embodiment of the present disclosure, at least one content to be distributed is obtained by responding to a received content push request, and then the information of at least one content to be distributed is input into a first content recall model, and a first score of at least one content to be distributed is output, and the information of at least one content to be distributed is input into a second content recall model, and a second score of at least one content to be distributed is output, and finally, based on the first score and the second score, the content to be distributed that is pushed to the push scenario is determined from the at least one content to be distributed. In this way, the acceptability of the content to be distributed can be jointly evaluated by the content recall model obtained by training based on different objectives, which can not only improve the matching degree between the content to be distributed and the user, but also improve the user's acceptance of the content to be distributed, thereby achieving a balance between content distribution and user experience, and at the same time, the content to be distributed can be placed in the most matching push scenario, making content distribution more accurate and improving distribution effect. BRIEF DESCRIPTION OF THE DRAWINGS
[0030] The above and other objects, features and advantages of the exemplary embodiments of the present disclosure will become readily understood by reading the detailed description below with reference to the accompanying drawings, in which several embodiments of the present disclosure are shown by way of example and not limitation, wherein:
[0031] Figure 1 Schematically shows an application scenario diagram according to an embodiment of the present disclosure;
[0032] Figure 2 The following schematically shows a flow chart of a content distribution method according to another embodiment of the present disclosure;
[0033] Figure 3a The following schematically shows a flow chart of a content distribution method according to another embodiment of the present disclosure;
[0034] Figure 3b Schematically shows Figure 3a A flowchart of processing feature data in the illustrated embodiment;
[0035] Figure 3c Schematically shows Figure 3a A flowchart of processing feature vectors by a shared difference network in the illustrated embodiment;
[0036] Figure 4a The following schematically shows a flow chart of a content distribution method according to another embodiment of the present disclosure;
[0037] Figure 4b Schematically shows Figure 4a Flowchart of calculation of current distribution speed in the embodiment shown;
[0038] Figure 5 The following schematically shows a flow chart of a content recall model training method according to another embodiment of the present disclosure;
[0039] Figure 6 The following schematically shows a flow chart of a content recall model training method according to another embodiment of the present disclosure;
[0040] Figure 7 Schematically shows a structural diagram of a computer-readable storage medium according to yet another embodiment of the present disclosure;
[0041] Figure 8 The following schematically shows a structural diagram of a content distribution device according to another embodiment of the present disclosure;
[0042] Figure 9 The following schematically shows a structural diagram of a content recall model training device according to another embodiment of the present disclosure;
[0043] Figure 10 The figure schematically shows a structural diagram of a computing device according to another embodiment of the present disclosure.
[0044] In the drawings, the same or corresponding reference numerals denote the same or corresponding parts. DETAILED DESCRIPTION
[0045] The principles and spirit of the present disclosure will be described below with reference to several exemplary embodiments. It should be understood that these embodiments are provided solely to enable those skilled in the art to better understand and implement the present disclosure, and are not intended to limit the scope of the present disclosure in any way. Rather, these embodiments are provided to make the present disclosure more thorough and complete, and to fully convey the scope of the present disclosure to those skilled in the art.
[0046] Those skilled in the art will appreciate that the embodiments of the present disclosure may be implemented as a system, apparatus, device, method, or computer program product. Therefore, the present disclosure may be implemented in the following forms: entirely in hardware, entirely in software (including firmware, resident software, microcode, etc.), or in a combination of hardware and software.
[0047] According to an embodiment of the present disclosure, a content distribution method, medium, apparatus, and computing device are proposed.
[0048] In this document, it should be understood that the terms involved are only used to facilitate understanding and do not represent any limitation on the meaning. In addition, the number of any element in the drawings is for illustration and not limitation, and any naming is only for distinction and does not have any limiting meaning.
[0049] In addition, the data involved in this disclosure may be data authorized by the user or fully authorized by all parties. The collection, dissemination, and use of the data shall comply with the requirements of relevant national laws and regulations. The implementation methods / examples of this disclosure may be combined with each other.
[0050] The following is a description of the terms used in this disclosure:
[0051] Complete playback: The behavior of a user playing content such as songs, videos, and audio from the beginning to the end of the content.
[0052] Scenario: Also known as push scenario, it is used to indicate the way the platform pushes content to users, such as random radio stations, daily push lists, recommended playlists for music, "Guess you like" lists for videos, and "Related articles" lists for text.
[0053] The principles and spirit of the present disclosure are explained in detail below with reference to several representative embodiments of the present disclosure. SUMMARY OF THE INVENTION
[0055] The inventors discovered that existing audio and video media platforms distribute specific content through traffic distribution, specifically by controlling the frequency of push notifications to ensure that more users receive it. However, in related technologies, content distribution primarily relies on random heuristics to find the most appropriate distribution method. This method first conducts an initial random trial. At this point, due to insufficient information or high decision-making uncertainty, content is randomly distributed to unspecified users as a preliminary trial. This process can easily damage the user experience, as users may be pushed content they don't like, leading to dissatisfaction with the push function or the platform. This is not only detrimental to the development of specific content, but also affects the platform's reputation and reduces the user experience.
[0056] In this solution, the user's acceptance of the content to be distributed is determined based on the probability of whether the user is willing to play the content to be distributed in full and the probability of whether the user is willing to return to the scene corresponding to the content to be distributed, thereby effectively ensuring the user experience during content distribution.
[0057] After introducing the basic principles of the present disclosure, various non-limiting embodiments of the present disclosure are described in detail below.
[0058] Application Scenario Overview
[0059] First reference Figure 1 As shown, during the content distribution process, after the server 140 receives the content push request sent by the client 110, it jointly determines the content 120 to be distributed to be pushed to the user based on the probability of at least one content 120 to be distributed being accepted by the user 130 and the probability of the user 130 accepting the corresponding scenario of the content 120 to be distributed, and sends it to the client 110, thereby completing the content distribution process.
[0060] It should be noted that Figure 1 In the illustrated scenario, only one server, client, content to be distributed, and user is used as an example for illustration, but the present disclosure is not limited thereto. That is, the number of servers, clients, content to be distributed, and users can be arbitrary.
[0061] Exemplary Methods
[0062] The following combination Figure 1 For application scenarios, refer to Figures 2 to 5 The content distribution method according to the exemplary embodiment of the present disclosure is described below. It should be noted that the above application scenarios are only shown to facilitate understanding of the spirit and principles of the present disclosure, and the embodiments of the present disclosure are not limited in this respect. On the contrary, the embodiments of the present disclosure can be applied to any applicable scenario.
[0063] Figure 2 This is a flow chart of a content distribution method provided by one embodiment of the present disclosure. Figure 2 As shown, the content distribution method provided in this embodiment includes the following steps:
[0064] Step S201: In response to a received content push request, obtain at least one content to be distributed.
[0065] The content push request includes a push scenario corresponding to the request.
[0066] Specifically, a content push request is automatically generated by the server (or client) based on user information and scene information of the push scene when the server (or client) receives an operation from the user to enter a specific push scene. User information includes whether the user is a member, preferences for content types (such as preferences for songs and videos), etc., and scene information includes the type of scene (such as a radio scene of songs in a specific style, or a recommended scene based on user favorites), the time of entering the push scene, and other information.
[0067] The platform server stores a large amount of content to be distributed. These contents to be distributed are usually determined based on the needs of the content provider or the platform. For example, if a content provider requires the promotion of certain songs, videos, or articles, or the platform wants to promote certain self-produced content, these contents with promotion needs are the content to be distributed.
[0068] In an exemplary embodiment of the present disclosure, the content to be distributed is obtained by configuring the corresponding distribution requirements based on the content stored in the server. For example, if a song is expected to be played more than 100,000 times, it is the content to be distributed with a distribution requirement of 100,000 times.
[0069] In an exemplary embodiment of the present disclosure, the content to be distributed is obtained by combining the distribution requirements and distribution status of the content stored in the server. For example, if a song hopes to be played 100,000 times within 30 days and has been played 50,000 times within 10 days, then it is the content to be distributed with a distribution requirement of 50,000 times within 20 days; and if a song hopes to be distributed 100,000 times and has currently been distributed 100,000 times, then its distribution requirement has been met and it is no longer regarded as content to be distributed.
[0070] When receiving a content push request from a user, the server will automatically obtain the content to be distributed that has distribution demand, and select the content to be distributed to be pushed to the user.
[0071] Step S202: Input information of at least one content to be distributed into a first content recall model, and output a first score of the at least one content to be distributed.
[0072] The first content recall model is trained based on whether the content to be distributed is played completely, and the first score is used to represent the probability that at least one content to be distributed is played completely.
[0073] Specifically, the information about the content to be distributed includes its attribute characteristics (such as song / video / audio, length, format, bit rate, etc.), content information (such as genre, author, content keyword tags, etc.), etc. This information can be used to quickly and easily determine the specific characteristics of the content to be distributed and, based on this, determine whether it is suitable for push to specific users.
[0074] Since the information of each to-be-distributed content is different, for the same content push request, each to-be-distributed content has a corresponding independent first score.
[0075] The first content recall model can jointly evaluate the user's matching degree with the content to be distributed based on the information of the content to be distributed and the user information corresponding to the content push request. The higher the matching degree, the higher the probability that the user will accept the content to be distributed. The indicator for evaluating this matching degree is the probability that the content to be distributed is played completely. If the user can play the content to be distributed completely, it can be considered that the user can accept the content to be distributed, and the push of the content to be distributed to the user is successful.
[0076] Step S203: Input information of at least one content to be distributed into a second content recall model, and output a second score of the at least one content to be distributed.
[0077] The second content recall model is trained based on whether the push scenario corresponding to the content to be distributed will be visited again, and the second score is used to represent the probability that the push scenario corresponding to the content to be distributed will be visited again.
[0078] Specifically, the process of obtaining the second score is similar to the first score, and both are based on the information of the content to be distributed and the user information to jointly evaluate to determine the user's acceptance of pushing the content to be distributed in the current push scenario.
[0079] This is because users have expectations about the content that should be pushed in different push scenarios. For example, when a user opens a sports music radio station, they will not want to hear sad and soothing songs, and when opening a nighttime sleep playlist, they will not want to be recommended very bright and loud songs. Even if these songs may be liked by the user himself, in the corresponding push scenario, the user will not want to get songs that do not match the push scenario.
[0080] Therefore, when considering pushing content to be distributed to users, in addition to considering the user's acceptance of the content to be distributed itself, it is also necessary to consider the user's acceptance of pushing the content to be distributed in the current push scenario. By combining these two factors, we can jointly determine whether the corresponding content to be distributed should be pushed to the user.
[0081] Step S204: Determine, based on the first score and the second score, content to be distributed from the at least one content to be distributed and push it to the push scenario.
[0082] Specifically, all the content to be distributed may be sorted in combination with the first score and the second score, and a set number of content to be distributed may be selected and pushed to the user based on the sorting result.
[0083] Specifically, by combining the first scoring method and the second scoring method, a weighted summation or weighted average method can be adopted to simultaneously consider two factors: the user's acceptance of the content to be distributed itself and the user's acceptance of the content to be distributed in the current push scenario, thereby effectively ensuring the user's satisfaction with the pushed content to be distributed, and thus improving the user experience.
[0084] According to the content distribution method of the embodiment of the present disclosure, by responding to the received content push request, at least one content to be distributed is obtained, and then the information of the at least one content to be distributed is input into the first content recall model, and the first score of the at least one content to be distributed is output, and the information of the at least one content to be distributed is input into the second content recall model, and the second score of the at least one content to be distributed is output, and finally, based on the first score and the second score, the content to be distributed that is pushed to the push scenario is determined from the at least one content to be distributed. In this way, the acceptance of the content to be distributed can be jointly evaluated by the content recall model obtained by training based on different objectives, which can not only improve the matching degree between the content to be distributed and the user, but also improve the user's acceptance of the content to be distributed, thereby achieving a balance between content distribution and user experience, and at the same time, the content to be distributed can be placed in the most matching push scenario, making content distribution more accurate and improving distribution effect.
[0085] Figure 3a This is a flow chart of a content distribution method provided by one embodiment of the present disclosure. Figure 3a As shown, the content distribution method provided in this embodiment includes the following steps:
[0086] Step S301: In response to a received content push request, obtain at least one content to be distributed.
[0087] The content push request includes a push scenario corresponding to the request.
[0088] This step and Figure 2 The content of step S201 in the illustrated embodiment is the same and will not be repeated here.
[0089] Step S302: Based on the user information in the content push request and the information of the content to be distributed, obtain corresponding feature data in the log record.
[0090] Among them, the content push request also includes corresponding user information; the feature data includes user-side features, content-side features and user behavior sequence.
[0091] Specifically, in order to accurately evaluate the user's acceptance of the content to be distributed, in addition to user information and information about the content to be distributed itself, the user's behavior towards content with the characteristics of the content to be distributed in the historical records (log records) must also be considered, that is, whether the user has completed the content with the characteristics of the content to be distributed (such as videos by the same author and the same theme) or has other interactions, or is not interested in it, so as to evaluate whether the user will be interested in the content to be distributed.
[0092] Therefore, it is first necessary to extract user-side features (corresponding to user information), content-side features (corresponding to song information) and user behavior sequences (corresponding to user behavior on content with the characteristics of the content to be distributed) in the log records.
[0093] Furthermore, the user-side feature includes at least one of the following:
[0094] User basic information, including user gender, age and whether or not the user is a member.
[0095] User device information, such as the user device model, device manufacturer (may also include the corresponding system platform), processor processing capabilities, whether it can play high-definition versions of videos, etc.
[0096] User content preference characteristics, such as video type preference, song style preference, article author preference, etc.
[0097] Content-side features include at least one of the following:
[0098] Basic content information, including the language, title (author, composer, lyrics, arrangement, instruments used, etc.) of the song, or the producer and category of the video, as well as the author of the article, etc.
[0099] Content feature information, including the lyrics, audio, or bit rate and duration of the song.
[0100] Content playback information includes the complete playback rate and interaction rate (such as the probability of likes, favorites, comments, etc.) of the content within a set time period (such as the last 24 hours).
[0101] User behavior sequences include at least one of the following:
[0102] A sequence of content that a user has recently played in its entirety in a push scenario, such as a list of songs that a user has fully listened to on a radio station.
[0103] A sequence of content that is played completely by the user, such as a list of songs that are played completely in a playlist that the user has set up.
[0104] Step S303: Input the feature data into the feature processing layer of the first content recall model, and output a feature vector corresponding to the feature data.
[0105] Specifically, the feature processing layer of the first content recall model performs processing according to different types of feature data to extract corresponding feature vectors.
[0106] Further, if Figure 3b As shown in FIG, it is a flowchart for processing feature data. The processing of the feature processing layer includes the following steps:
[0107] Step S3031: Perform representation embedding processing on the user-side features and the content-side features to obtain concatenated vectors corresponding to the user-side features and the content-side features, respectively.
[0108] Specifically, categorical features in user-side features and content-side features, such as song style categories, video or article types, can be converted into vectors through representation embedding processing.
[0109] In one embodiment of the present disclosure, a specific method for characterizing embedding processing includes the following steps:
[0110] Step 1 (not shown): perform representation embedding processing on the discrete features in the user-side features and the content-side features to obtain the first part of sub-vectors corresponding to the user-side features and the content-side features.
[0111] Specifically, the representation embedding process converts the textual discrete features (such as content name) in the user-side features and content-side features into parameter groups through multiple dimensions. The vector composed of these parameter groups of different dimensions is the vector corresponding to these discrete features of the user-side features and content-side features, that is, the first part of the sub-vector.
[0112] The representation embedding processing method used here can adopt relevant technologies in existing natural language processing technologies and is not limited here.
[0113] Step 2 (not shown) is to perform bucketing on the continuous features in the user-side features and the content-side features, respectively, and to perform representation embedding on the continuous features after the bucketing process to obtain the second part of the sub-vectors corresponding to the user-side features and the content-side features.
[0114] Specifically, the continuous features in the user-side features and content-side features need to be processed first and converted into discrete features for further representation embedding processing.
[0115] For example, if the interaction probability of a video in 24 hours is 50%, this value alone cannot accurately measure whether the interaction probability is good or bad. Therefore, through bucketing processing, videos with an interaction probability higher than 30% are divided into the highest level (assuming there are three levels in total). At this time, the highest level is a discrete feature, which can be vectorized through representation embedding processing.
[0116] Step three (not shown): combine the first part of the sub-vectors corresponding to the user-side features with the second part of the sub-vectors to obtain a concatenated vector corresponding to the user-side features.
[0117] Specifically, for the user-side feature, it is necessary to splice its two sub-vectors to obtain a complete user-side feature corresponding vector. Since it is obtained by splicing, it is a spliced vector.
[0118] Step 4 (not shown): combine the first part of the sub-vectors corresponding to the content-side features with the second part of the sub-vectors to obtain a concatenated vector corresponding to the content-side features.
[0119] Specifically, similar to the user-side features, by splicing the two sub-vectors of the content-side features, a splicing vector corresponding to the content-side features can also be obtained.
[0120] Step S3032: Based on the attention algorithm, the user behavior sequence is weighted by the content-side features to obtain a concatenation vector corresponding to the user behavior sequence.
[0121] Specifically, the attention algorithm is also the attention mechanism in related technologies. By weighted processing of content-side features and user behavior sequences based on the attention function in the first content recall model, a splicing vector corresponding to the user behavior sequence can be obtained.
[0122] For example, if the user behavior sequence is divided into two parameters: the sequence of content that the user has recently played in its entirety in the push scenario, and the sequence of content that the user has actively played in its entirety, then the two parameters can be combined with the content-side features respectively, and the two combined splicing vectors can be used together as the splicing vector corresponding to the user behavior sequence.
[0123] Step S3033: Combine the user-side features, content-side features, and the concatenated vector corresponding to the user behavior sequence to obtain a feature vector.
[0124] Specifically, the concatenated vectors corresponding to the obtained user-side features, content-side features, and user behavior sequence (e.g., if the user behavior sequence is divided into two parameters, then four concatenated vectors can be obtained) are concatenated in a set order to obtain a feature vector corresponding to the feature data. The set order can be user-side features, user behavior sequence, and content-side features, or any other order.
[0125] Step S304: Input the feature vector into the shared difference network of the first content recall model, and output the feature score corresponding to the feature vector.
[0126] Specifically, the shared difference network is a fully connected layer structure of a neural network. Its characteristic is that according to the specific identifier of the input feature vector, part of the vector in the feature vector will be processed by different parameters, and the other part will be processed by shared parameters. In this way, it can not only realize the classification processing of feature vectors according to different specific identifiers, but also ensure that the different processing of feature vectors have commonalities (that is, the part corresponding to the shared parameters).
[0127] Further, if Figure 3c As shown in FIG, it is a flowchart of the processing of the feature vector by the shared difference network. The processing of the feature vector by the shared difference network includes the following steps:
[0128] Step S3041: Determine the private parameters corresponding to the feature vector in the first content recall model according to the scene identifier corresponding to the feature vector.
[0129] The scene features include scene identifiers, and the network parameters of the fully connected layer in the shared difference network include private parameters and shared parameters.
[0130] Specifically, private parameters are the different parameters corresponding to the specific identifiers mentioned above. Based on the scenario identifiers of different push scenarios, different private parameters will be selected to process the feature vectors. For example, different scenarios such as recommending content by song style, daily recommendations, personal radio station recommendations, and recommendations based on personal preferences will correspond to different private parameters.
[0131] Step S3042: Input the feature vector into the fully connected layer after the corresponding private parameters and shared parameters are bitwise added, and output the feature score corresponding to the feature vector.
[0132] Specifically, after determining the private parameters, the corresponding private parameters are added to the shared parameters bit by bit to obtain the corresponding parameters for processing the feature vector. The feature vector is input into the fully connected layer based on the corresponding parameters to obtain a corresponding feature score, based on which the first score can be further calculated.
[0133] Step S305: Input the feature score into the activation function of the first content recall model and output a first score.
[0134] Specifically, the activation function can be a normalization function or any other activation function used in a neural network. By processing the feature scores through the activation function, a score representing the user's preference for the pushed content based on the user's historical behavior can be obtained, i.e., the first score.
[0135] Step S306: Input the feature data into the feature processing layer of the second content recall model, and output a feature vector corresponding to the feature data.
[0136] Specifically, the second content recall model has the same model structure as the first content recall model, but is trained based on different objectives. Therefore, there are differences in the specific parameters within the model, but the data processing process is the same.
[0137] Furthermore, the feature processing layer processes the feature data, specifically including the following steps:
[0138] Step 1 (not shown) performs representation embedding processing on the user-side features and the content-side features to obtain concatenated vectors corresponding to the user-side features and the content-side features, respectively.
[0139] Specifically, the specific characterization embedding processing method can be referred to step S303, which will not be described in detail here.
[0140] The specific method of characterization embedding processing includes the following steps:
[0141] Step 1 (not shown): perform representation embedding processing on the discrete features in the user-side features and the content-side features to obtain the first part of sub-vectors corresponding to the user-side features and the content-side features.
[0142] Steps 1 and 2 (not shown) are performed on the continuous features in the user-side features and the content-side features, respectively, and the continuous features after the bucketing processing are characterized and embedded to obtain the second part of the sub-vectors corresponding to the user-side features and the content-side features.
[0143] Step 13 (not shown): combine the first part of the sub-vectors corresponding to the user-side features with the second part of the sub-vectors to obtain a concatenated vector corresponding to the user-side features.
[0144] Step 14 (not shown): combine the first part of the sub-vectors corresponding to the content-side features with the second part of the sub-vectors to obtain a concatenated vector corresponding to the content-side features.
[0145] Specifically, in the second content recall model, the feature data will be processed separately according to different categories and then concatenated to obtain the corresponding vectors.
[0146] Step 2 (not shown): Based on the attention algorithm, the user behavior sequence is weighted by the content-side features to obtain the splicing vector corresponding to the user behavior sequence.
[0147] Specifically, the parameter values of the attention function in the attention algorithm used in the second content recall model may be the same as or different from those in the first content recall model. Therefore, the corresponding splicing vectors of the obtained user behavior sequence may also be the same or different.
[0148] Step three (not shown) combines the user-side features, content-side features, and the concatenated vectors corresponding to the user behavior sequence to obtain a feature vector.
[0149] Specifically, this step is the same as step S3033 and will not be repeated here.
[0150] Step S307: Input the feature vector into the shared difference network of the second content recall model, and output the feature score corresponding to the feature vector.
[0151] The shared difference network includes at least one fully connected layer.
[0152] Specifically, the shared difference network in the second content recall model has common parameters and private parameters that are different from the corresponding parameters in the first content recall model (to meet different training objectives during training).
[0153] Furthermore, the shared difference network processes the feature vector, including the following steps:
[0154] Step 1 (not shown): determining the private parameters corresponding to the feature vector in the first content recall model according to the scene identifier corresponding to the feature vector.
[0155] The scene features include scene identifiers, and the network parameters of the fully connected layer in the shared difference network include private parameters and shared parameters.
[0156] Step 2 (not shown): input the feature vector into the fully connected layer after the corresponding private parameters and shared parameters are bitwise added, and output the feature score corresponding to the feature vector.
[0157] Specifically, the shared difference network in the second content recall model and the first content recall model processes the feature vector in the same way, which will not be described again here.
[0158] Step S308: Input the feature score into the activation function of the second content recall model and output a second score.
[0159] Specifically, after processing the feature scores obtained by the second content recall model, a score for evaluating the user's acceptance of the specific content to be distributed in the current push scenario, ie, the second score, can be obtained.
[0160] Steps S306 to S308 are independent of steps S303 to S305, and their execution principles and sequence are the same. Those skilled in the art can swap the order of the two groups of steps as needed without affecting the final result.
[0161] Step S309: Determine, based on the first score and the second score, content to be distributed from the at least one content to be distributed and push it to the push scenario.
[0162] Specifically, this step is Figure 2 The content of step S204 in the illustrated embodiment is the same and will not be repeated here.
[0163] According to the content distribution method of the embodiment of the present disclosure, upon receiving a content push request, the content to be distributed is obtained. Feature data corresponding to the user and the content to be distributed is then extracted based on log records. These feature data are then input into the feature processing layers, shared difference networks, and activation functions of a first content recall model and a second content recall model, respectively, to obtain a first score and a second score. Based on the first score and the second score, the content to be distributed that is pushed to the push scenario is determined. Thus, the user's acceptance of the content to be distributed and their acceptance of the content to be distributed being pushed in the current push scenario can be jointly evaluated through log records and combined with the user's historical behavior, thereby maximizing user satisfaction with the current push scenario and the content to be pushed, further improving the accuracy of content distribution, and increasing user satisfaction.
[0164] Figure 4a This is a flow chart of a content distribution method provided by one embodiment of the present disclosure. Figure 4a As shown, the content distribution method provided in this embodiment includes the following steps:
[0165] Step S401: Determine all inventory contents in the inventory that contain distribution requirements.
[0166] Among them, the distribution requirements include the required distribution volume, the completed distribution volume and the target distribution time.
[0167] Specifically, distribution requirements are pre-determined by the content provider or platform. Not all inventory content has distribution requirements, but the distribution requirements for each inventory content that does have distribution requirements are generally independent of each other. For example, even for songs released by the same author, the required distribution quantity and completed distribution quantity for each song are independent of each other. A change in the completed distribution quantity for a particular song will not cause a change in the completed distribution quantity for other zones.
[0168] In one embodiment of the present disclosure, for inventory content with specific correlations, their distribution requirements are shared. For example, a video released by an author needs to be promoted 100,000 times within three months, and the author has released a total of five videos. For these five videos, only the overall required distribution volume, completed distribution volume, and target distribution duration need to be calculated, and no separate calculation is required.
[0169] Step S402: Determine the expected delivery completion time of the inventory content based on the current time and the target delivery duration.
[0170] Specifically, because the target distribution duration is usually set as an integer (such as 30 days) without considering the specific time, the expected distribution completion time is usually an irregular time, such as 11:11 pm or 2:22 am. When the platform determines whether the distribution demand of inventory content is met, it usually calculates it based on the hourly time. For example, at midnight every day, it determines whether the distribution demand of inventory content has been met. If it has not been met (for example, if the expected distribution completion time is in the early morning), it will continue to deliver within the next 24 hours.
[0171] This results in the completed distribution volume of inventory content exceeding the required distribution volume, a phenomenon known as overdelivery. Overdelivery can crowd out opportunities for other inventory content with distribution needs, hindering effective inventory management. Therefore, overdelivery needs to be controlled.
[0172] Step S403: Adjust the target distribution duration with the expected distribution completion time being zero o'clock.
[0173] Specifically, to avoid overdelivery, the target delivery duration is automatically extended or shortened to keep the expected delivery completion time at midnight. This prevents both insufficient delivery and overdelivery. For example, if the target delivery duration is 30 days and the expected delivery completion time is 7:00 AM, the target delivery duration can be adjusted to 17 hours on the 29th, bringing the expected delivery completion time to midnight.
[0174] Step S404: Determine the target distribution speed corresponding to the inventory content based on the target distribution duration.
[0175] Specifically, after determining the target distribution time, it is necessary to determine the target distribution speed based on the target distribution time, so as to evaluate whether the distribution speed of the inventory content needs to be adjusted through the target distribution speed, because if the actual distribution speed of the inventory content has exceeded the target distribution speed, its distribution speed needs to be reduced.
[0176] In one embodiment of the present disclosure, the inverse of the target distribution time may be used as the target distribution speed corresponding to the inventory content.
[0177] Specifically, since the required distribution volume of different inventory contents is different, the required distribution volume is usually not taken into consideration when calculating the target distribution speed, and the inverse of the target distribution time is directly used for calculation (at this time it is usually assumed that the inventory content is distributed at a uniform speed at the target distribution speed).
[0178] Step S405: Determine the current distribution speed corresponding to the inventory content based on the required distribution volume, the completed distribution volume, and the target distribution time.
[0179] Specifically, since the speed at which a platform distributes inventory content typically changes at different times, its current distribution speed needs to be calculated based on actual distribution conditions.
[0180] Further, if Figure 4b As shown in FIG, it is a flowchart for calculating the current distribution speed. The specific method for calculating the current distribution speed includes the following steps:
[0181] Step S4051: Determine the completed distribution ratio of the inventory content based on the completed distribution volume and the required distribution volume.
[0182] Specifically, the completed distribution ratio of the inventory content can be obtained based on the ratio of the real-time completed distribution volume to the demanded distribution volume.
[0183] In one embodiment of the present disclosure, smoothing processing may be performed based on the ratio of the completed distribution volume to the required distribution volume, such as:
[0184] Completed distribution ratio = (completed distribution volume + 1) / (demand distribution volume + 1),
[0185] In this way, the completed distribution ratio of the inventory content that has just been distributed will not be 0, which facilitates subsequent calculations.
[0186] Step S4052: Determine the distribution duration of the inventory content based on the current time and the time for determining the required distribution quantity.
[0187] Specifically, based on the time length from the time when the required distribution quantity is determined to the current moment, the distribution time length of the inventory content can be obtained.
[0188] Step S4053: The ratio of the completed distribution ratio to the distribution duration is used as the current distribution speed of the inventory content.
[0189] Specifically, if the inventory content can be distributed evenly, then its current distribution speed is equal to the target distribution speed.
[0190] For example, the completed distribution ratio of a song is 50%, the distribution time is 10 days, and the target distribution time is 20 days. Then its current distribution speed is (50% / 10=)0.05, and the target distribution speed is (1 / 20=)0.05, which is the same as the current distribution speed.
[0191] Step S406: Determine the inventory content whose current distribution speed does not exceed the target distribution speed as the content to be distributed.
[0192] Specifically, if the popularity of the inventory content is high, it is easy for the current distribution speed to exceed the target distribution speed, and the distribution speed needs to be reduced. The general reduction method is to stop distributing the inventory content within a unit time (such as 1 hour or 24 hours) until the inventory content distribution speed is recalculated and it is determined that its current distribution speed does not exceed the target distribution speed.
[0193] Furthermore, determining the content to be distributed includes the following two situations:
[0194] Case 1 (not shown): the inventory content whose current distribution speed is equal to the target distribution speed is determined as the content to be distributed.
[0195] Specifically, if there is no inventory content whose current distribution speed is lower than the target distribution speed, all inventory content whose current distribution speed does not exceed the target distribution speed may be directly determined as content to be distributed.
[0196] In the second case (not shown), the inventory content whose current distribution speed is lower than the target distribution speed is determined as the content to be distributed.
[0197] Specifically, if there is inventory content whose current distribution speed is slower than the target distribution speed (usually due to low popularity), this indicates that the distribution speed of this inventory content is insufficient and the distribution of this inventory content needs to be accelerated. The accelerated distribution method is to suspend the distribution of other inventory content whose current distribution speed is equal to the target distribution speed until the current distribution speed of this inventory content reaches or exceeds the target distribution speed.
[0198] By controlling the target distribution duration and speed of inventory content and determining the content to be distributed accordingly, we can avoid large disparities in the distribution efficiency of content with different popularity, and effectively ensure that all inventory content with distribution needs is effectively distributed.
[0199] Step S407: Responding to the received content push request, obtaining at least one content to be distributed.
[0200] The content push request includes a push scenario corresponding to the request.
[0201] Step S408: Input information of at least one content to be distributed into a first content recall model, and output a first score of the at least one content to be distributed.
[0202] The first content recall model is trained based on whether the content to be distributed is played completely, and the first score is used to represent the probability that at least one content to be distributed is played completely.
[0203] Step S409: Input information of at least one content to be distributed into a second content recall model, and output a second score of the at least one content to be distributed.
[0204] The second content recall model is trained based on whether the push scenario corresponding to the content to be distributed will be visited again, and the second score is used to represent the probability that the push scenario corresponding to the content to be distributed will be visited again.
[0205] Step S410: Determine, based on the first score and the second score, content to be distributed from at least one content to be distributed and push it to the push scenario.
[0206] Specifically, steps S407 to S410 are Figure 2 The contents of steps S201 to S204 in the illustrated embodiment are the same and will not be repeated here.
[0207] According to the content distribution method of the disclosed embodiment, the distribution speed and target distribution duration of the inventory content are determined based on the distribution requirements of the inventory content. The content to be distributed is then determined from the inventory content. Based on the content push request, the first content recall model and the second content recall model are combined to jointly determine the content to be distributed that is pushed to the user's push scenario. This ensures that inventory content with distribution requirements can be distributed at a relatively smooth and stable rate, while avoiding traffic waste caused by overdelivery. This saves traffic for the platform while ensuring user satisfaction with the pushed content and push scenarios, and avoids significant differences in the distribution efficiency of different content.
[0208] Figure 5 This is a flow chart of a content recall model training method provided by one embodiment of the present disclosure. Figure 5 As shown, the content recall model training method provided in this embodiment includes the following steps:
[0209] Step S501: Determine sample content for training based on a set popularity range.
[0210] Specifically, to ensure that the training samples cover inventory content of different popularity, when selecting sample content, multiple popularity ranges are pre-divided, and a set number of inventory contents are selected from each popularity range as sample content.
[0211] For example, if popularity is measured by monthly playback volume, playback volume below 10,000 times is considered unpopular, 10,000 to 100,000 times is considered low popularity, and more than 100,000 times is considered high popularity. Then, the same number (such as 1,000) of unpopular, low popularity and high popularity content can be selected as sample content for training, thereby ensuring the training effect.
[0212] Step S502: Based on the log of sample content, obtain training samples for model training.
[0213] Specifically, since content recall model training requires feature data based on inventory content, it is necessary to obtain logs containing sample content and extract feature data of the sample content based on the log data as training samples for training.
[0214] Step S503: Input the training samples into the content recall model, and train the content recall model based on the set target.
[0215] The set target is whether the sample content is played completely, or whether the push scenario corresponding to the sample content is accessed again within a set time.
[0216] Specifically, by training the content recall model according to different set goals, different content recall models will be obtained. That is, by training with whether the sample content is played completely as the set goal, the first content recall model can be obtained, and by training with whether the push scenario corresponding to the sample content will be visited again within the set time as the set goal, the second content recall model can be obtained.
[0217] Regardless of the set goal, the same training samples can be used for training. Since the training samples involve inventory content of different popularity and are combined with the log records of the inventory content, the reliability of the trained content recall model can be guaranteed.
[0218] In one embodiment of the present disclosure, the set goal may also include the viewing time of the content, the click rate of the page or specific control, etc.
[0219] Specifically, the viewing time of the content can better evaluate the acceptance of video content (because even if the user does not watch the video content in its entirety, it may only be because the opening and ending parts are skipped, but such cases can actually be regarded as the video content being effectively viewed); the click-through rate of a specific space can better evaluate the acceptance of product content, such as the click-through rate of a product introduction page (because there is no viewing time for the product page, as long as the user is willing to click in to watch it, it can be considered that the user is willing to accept the push of the product).
[0220] The content recall model training method according to the disclosed embodiment selects inventory content of varying popularity as sample content, extracts training sample data from the sample content logs, and then trains the content recall model based on different set objectives. This allows for the generation of content recall models for evaluating different metrics based on different set objectives, facilitating management by external platform administrators and use by external developers, providing a better user experience.
[0221] Figure 6This is a flow chart of a content recall model training method provided by one embodiment of the present disclosure. Figure 6 As shown, the content recall model training method provided in this embodiment includes the following steps:
[0222] Step S601: According to the content popularity, at least three different popularity ranges are set.
[0223] Specifically, content popularity can generally be measured by the number of clicks on the inventory. Depending on the type of inventory, clicks can be expressed as different metrics, such as the number of plays within a set duration for songs, the number of clicks within a set duration for videos, and the number of reads for articles.
[0224] Popularity ranges can be divided based on the popularity distribution of inventory content within the corresponding categories, ensuring that the number of inventory content within the three popularity ranges is equal or approximately equal. For example, if a video of a certain type is relatively unpopular and the majority of its views are less than 10,000, the popularity ranges can be divided into less than 5,000, 5,000 to 10,000, and more than 10,000.
[0225] Step S602: Select a set number of contents from each popularity range as sample contents for training.
[0226] Specifically, the set number of inventory contents selected in each popularity range is usually the same to ensure that the trained model can be applied to inventory contents of different popularity.
[0227] Step S603: Based on the log of sample content, obtain training samples for model training.
[0228] Specifically, through the log of the sample content, sample feature data corresponding to the sample content can be extracted as a training sample.
[0229] In one embodiment of the present solution, the training sample includes sample feature data, and the sample feature data includes sample user-side features, sample content-side features, sample user behavior sequence, and sample scenario features.
[0230] Furthermore, the sample characteristic data specifically includes:
[0231] Sample user-side features include at least one of the following: basic user information, including gender, age, and membership status; user device information; and user content preference features. Sample content-side features include at least one of the following: basic content information, including the language and title of a song, or the producer and category of a video; content feature information, including the lyrics and audio of a song, or the bitrate and duration of a video; content playback information, including the complete playback rate and interaction rate of the content within a set time period; sample user behavior sequences, including at least one of the following: a sequence of content that the user recently played in its entirety in a push scenario; a sequence of content that the user actively played in its entirety; and sample scenario features, including the sample scenario identifier corresponding to when the sample content was pushed.
[0232] For more details on sample user-side features, sample content-side features, and sample user behavior sequences, please refer to Figure 3a The description of the user-side features, content-side features and user behavior sequence in step S303 in the illustrated embodiment will not be repeated here.
[0233] The sample scenario feature is used to represent the corresponding scenario in which each sample content is pushed in the log record, and is represented by a scenario identifier.
[0234] Step S604: Input the sample feature data into the feature processing layer of the content recall model, and output a sample feature vector corresponding to the sample feature data.
[0235] Specifically, the sample feature data is input into the feature processing layer, that is, representation embedding processing and other operations are performed to integrate several discrete and continuous feature data corresponding to each training sample into a sample feature vector, which is then input into the fully connected layer of the content recall model for subsequent processing.
[0236] Furthermore, the processing of sample feature data at the fully connected layer includes the following steps:
[0237] Step 1 (not shown) performs representation embedding processing on the sample user-side features and the sample content-side features to obtain sample splicing vectors corresponding to the sample user-side features and the sample content-side features, respectively.
[0238] Specifically, the processing methods of sample user side features and sample content side features are different from Figure 3b The contents of step S3031 in the illustrated embodiments are the same, and different processing methods are selected according to whether the features are discrete. Specifically, the steps include:
[0239] Step 1 (not shown): perform representation embedding processing on the discrete features in the sample user-side features and the sample content-side features to obtain the first part of sub-vectors corresponding to the sample user-side features and the sample content-side features.
[0240] Steps one and two (not shown) are performed on the continuous features in the sample user-side features and the sample content-side features, respectively, and the continuous features after bucketing are represented and embedded to obtain the second part of the sub-vectors corresponding to the sample user-side features and the sample content-side features.
[0241] Step 13 (not shown): combine the first part of the sub-vectors corresponding to the sample user-side features with the second part of the sub-vectors to obtain a sample splicing vector corresponding to the sample user-side features.
[0242] Step 14 (not shown): combine the first part of the sub-vectors corresponding to the sample content side features with the second part of the sub-vectors to obtain a sample splicing vector corresponding to the sample content side features.
[0243] Specifically, steps 1 to 14 are Figure 3b The methods of steps 1 to 4 in step S3031 of the illustrated embodiment are the same and will not be repeated here.
[0244] Step 2 (not shown): Based on the attention algorithm, the sample user behavior sequence is weighted by the sample content side features to obtain the sample splicing vector corresponding to the sample user behavior sequence.
[0245] Specifically, the weights in the attention algorithm may vary depending on the set goals. For example, if the goal is to determine whether the sample content is played in its entirety, then the feature data corresponding to the user's complete content playback sequence in the user behavior sequence will be given a higher weight. If the goal is to determine whether the push scenario corresponding to the sample content is accessed again within a set timeframe, then the feature data corresponding to the user's most recent complete content playback sequence in the push scenario will be given a higher weight.
[0246] Step three (not shown) combines the sample user-side features, the sample content-side features, and the concatenated vector corresponding to the sample user behavior sequence to obtain a sample feature vector.
[0247] Specifically, the content of step three is the same as Figure 3b The content of step S3033 in the illustrated embodiment is the same and will not be repeated here.
[0248] Step S605: Input the sample feature vector into the shared difference network of the content recall model, and output the sample feature score corresponding to the sample feature vector.
[0249] The shared difference network includes at least one fully connected layer.
[0250] Specifically, during the training process of the content recall model, the sample feature score will not be directly used to obtain the final sample score, but will be combined with the auxiliary network to correct the sample score and improve the accuracy of the sample score.
[0251] Furthermore, the process of obtaining the sample feature score includes the following steps:
[0252] Step 1 (not shown): determining the private parameters corresponding to the sample feature vector in the content recall model according to the sample scene identifier corresponding to the sample feature vector.
[0253] Step 2 (not shown): input the sample feature vector into the fully connected layer after the corresponding private parameters and shared parameters are bitwise added, and output the sample feature score corresponding to the sample feature vector.
[0254] Specifically, steps one to two are Figure 3c The contents of steps S3041 to S3042 in the illustrated embodiment are the same and will not be repeated here.
[0255] Step S606: Input the sample user-side features and the sample scene features into the auxiliary network, and output the scene bias value corresponding to the training sample.
[0256] The auxiliary network includes at least one fully connected layer.
[0257] Specifically, during training, the sample user-side features will be input into different auxiliary networks based on the sample scene identifier in the sample scene features. The input sample user-side features can be the feature vector (or splicing vector) corresponding to the sample user-side features processed in step 1 of step S604.
[0258] The auxiliary network has fewer fully connected layers than the shared difference network, typically only two or three. By processing sample user-side features, the auxiliary network can determine the user's preference for a specific push scenario. This helps to adjust the user's acceptance of the sample content when it is pushed in the corresponding push scenario, better determining the user's acceptance of the sample content and avoiding the influence of user preferences for specific scenarios.
[0259] Step S607: Input the sample feature score and scene bias value into the activation function of the content recall model and output the sample score.
[0260] Specifically, the scene bias value is combined with the sample feature score and input into the activation function to obtain the sample score corresponding to the training sample. The specific combination method can be direct addition or weighted processing.
[0261] Step S608: Training the shared difference network based on the set objective function and sample scores.
[0262] Specifically, if the goal is to determine whether the sample content is played completely, the loss function (i.e., the objective function) can be expressed as:
[0263]
[0264] Among them, playend_LOSS is used to represent the loss function that sets the target as whether the sample content is played completely, N is the sample size of the sample data input this time, and y playend_i represents the actual proportion of samples with complete playback labels, p playend_i Indicates the probability that the sample is played completely as predicted by the model.
[0265] If the goal is to determine whether the push scenario corresponding to the sample content will be visited again within a set time (referred to as playback retention), the loss function (i.e., objective function) can be expressed as:
[0266]
[0267] Among them, Retention_LOSS is used to represent the loss function with the target of playback retention, y retention_i represents the actual proportion of samples that have been played and retained, p retention_i Represents the probability of playback and retention predicted by the model.
[0268] Therefore, the content recall model can be trained together according to the objective function and the sample score to obtain the corresponding content recall model.
[0269] According to the content recall model training method of the embodiment of the present disclosure, a set number of inventory contents of different popularity are selected as sample content, and the corresponding training sample feature data in the log is extracted. Then, based on different set goals, the sample feature data is processed in sequence through the feature processing layer, shared difference network, auxiliary network and activation function, and the content recall model is trained based on the objective function of the different set goals. In this way, it is possible to obtain a content recall model for evaluating different indicators based on different set goals, and the auxiliary network can be used to correct the impact of the push scenario on the content recall model, thereby maximizing the accuracy of the recalled inventory content and providing a better user experience.
[0270] Exemplary media
[0271] After introducing the method of the exemplary embodiment of the present disclosure, next, reference is made to Figure 7 A computer-readable storage medium according to an exemplary embodiment of the present disclosure is described.
[0272] refer to Figure 7As shown, the storage medium 70 stores a program product for implementing the above-mentioned method according to an embodiment of the present disclosure. The program product may be a portable compact disk read-only memory (CD-ROM) and includes computer-executable instructions for causing a computing device to execute the content distribution method provided by the present disclosure. However, the program product of the present disclosure is not limited thereto.
[0273] The program product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or component, or any combination thereof. More specific examples (a non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable disk, 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 disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof.
[0274] A readable signal medium may include a data signal transmitted in baseband or as part of a carrier wave, which carries computer-executable instructions. Such a transmitted data signal may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium.
[0275] Computer-executable instructions for performing the operations disclosed herein may be written in any combination of one or more programming languages, including object-oriented programming languages such as Java, C++, and the like, as well as conventional procedural programming languages such as "C" or similar programming languages. The computer-executable instructions may be executed entirely on the user computing device, partially on the user device, partially on a remote computing device, or entirely on a remote computing device or server. In cases involving a remote computing device, the remote computing device may be connected to the user computing device via any type of network, including a local area network (LAN) or a wide area network (WAN).
[0276] Exemplary devices
[0277] After introducing the medium of the exemplary embodiment of the present disclosure, next, reference is made to Figure 8 The content distribution device of the exemplary embodiment of the present disclosure is described, which is used to implement the content distribution method in any of the above method embodiments. Its implementation principle and technical effects are similar to those of the above method embodiments and will not be repeated here.
[0278] The content distribution device 800 provided in the present disclosure includes:
[0279] An acquisition module 810 is configured to acquire at least one content to be distributed in response to a received content push request, wherein the content push request includes a push scenario corresponding to the request;
[0280] A first scoring module 820 is configured to input information of at least one content to be distributed into a first content recall model and output a first score for the at least one content to be distributed. The first content recall model is trained based on whether the content to be distributed has been played completely. The first score represents the probability that the content to be distributed has been played completely.
[0281] A second scoring module 830 is configured to input information of at least one content to be distributed into a second content recall model and output a second score for the at least one content to be distributed. The second content recall model is trained based on whether the push scenario corresponding to the content to be distributed will be visited again. The second score represents the probability that the push scenario corresponding to the content to be distributed will be visited again.
[0282] The push module 840 is configured to determine, from the at least one content to be distributed, content to be distributed and push it to the push scenario based on the first score and the second score.
[0283] In an exemplary embodiment of the present disclosure, the first scoring module 820 is specifically used to: if the content push request also includes corresponding user information, based on the user information in the content push request and the information of the content to be distributed, obtain corresponding feature data in the log record, the feature data including user-side features, content-side features and user behavior sequences; input the feature data into the feature processing layer of the first content recall model, and output a feature vector corresponding to the feature data; input the feature vector into the shared difference network of the first content recall model, and output a feature score corresponding to the feature vector, the shared difference network including at least one fully connected layer; input the feature score into the activation function of the first content recall model, and output a first score.
[0284] In an exemplary embodiment of the present disclosure, the first scoring module 820 includes: user-side features including at least one of the following: user basic information, user basic information including user gender, age and whether or not the user is a member, user device information, and user content preference features; content-side features including at least one of the following: content basic information, content basic information including the language and title of the song, or the producer and category of the video, content feature information, content feature information including the lyrics and audio of the song, or the bit rate and duration of the video, content playback information, content playback information including the complete playback rate and interaction rate of the content within a set time period; user behavior sequence including at least one of the following: a content sequence that the user has recently played in its entirety in a push scenario, and a content sequence that the user has actively played in its entirety.
[0285] In an exemplary embodiment of the present disclosure, the first scoring module 820 is specifically used to: perform representation embedding processing on user-side features and content-side features to obtain splicing vectors corresponding to the user-side features and content-side features, respectively; based on the attention algorithm, perform weighted processing on the user behavior sequence through the content-side features to obtain the splicing vector corresponding to the user behavior sequence; combine the splicing vectors corresponding to the user-side features, content-side features and user behavior sequence to obtain a feature vector.
[0286] In an exemplary embodiment of the present disclosure, the first scoring module 820 is specifically used to: perform representation embedding processing on discrete features in user-side features and content-side features to obtain first partial sub-vectors corresponding to the user-side features and content-side features; perform bucketing processing on continuous features in user-side features and content-side features, respectively, and perform representation embedding processing on the continuous features after bucketing processing to obtain second partial sub-vectors corresponding to the user-side features and content-side features; combine the first partial sub-vector corresponding to the user-side features with the second partial sub-vector to obtain a splicing vector corresponding to the user-side features; combine the first partial sub-vector corresponding to the content-side features with the second partial sub-vector to obtain a splicing vector corresponding to the content-side features.
[0287] In an exemplary embodiment of the present disclosure, the first scoring module 820 is specifically used to: if the scene feature includes a scene identifier, the network parameters of the fully connected layer in the shared difference network include private parameters and shared parameters, and according to the scene identifier corresponding to the feature vector, determine the private parameters corresponding to the feature vector in the first content recall model; input the feature vector into the fully connected layer after the corresponding private parameters and shared parameters are bitwise added, and output the feature score corresponding to the feature vector.
[0288] In an exemplary embodiment of the present disclosure, the second scoring module 830 is specifically used to: if the information of at least one content to be distributed is input into the second content recall model, output the second score of at least one content to be distributed, based on the user information in the content push request and the information of the content to be distributed, obtain the corresponding feature data in the log record, the feature data includes user-side features, content-side features and user behavior sequences; input the feature data into the feature processing layer of the second content recall model, and output the feature vector corresponding to the feature data; input the feature vector into the shared difference network of the second content recall model, output the feature score corresponding to the feature vector, the shared difference network includes at least one fully connected layer; input the feature score into the activation function of the second content recall model, and output the second score.
[0289] In an exemplary embodiment of the present disclosure, the second scoring module 830 is specifically used to: perform representation embedding processing on user-side features and content-side features to obtain splicing vectors corresponding to the user-side features and content-side features, respectively; based on the attention algorithm, perform weighted processing on the user behavior sequence through the content-side features to obtain the splicing vector corresponding to the user behavior sequence; combine the splicing vectors corresponding to the user-side features, content-side features and user behavior sequence to obtain a feature vector.
[0290] In an exemplary embodiment of the present disclosure, the second scoring module 830 is specifically used to: perform representation embedding processing on discrete features in user-side features and content-side features to obtain first partial sub-vectors corresponding to the user-side features and content-side features; perform bucketing processing on continuous features in user-side features and content-side features, respectively, perform representation embedding processing on the continuous features after bucketing processing to obtain second partial sub-vectors corresponding to the user-side features and content-side features; combine the first partial sub-vector corresponding to the user-side feature with the second partial sub-vector to obtain a splicing vector corresponding to the user-side feature; combine the first partial sub-vector corresponding to the content-side feature with the second partial sub-vector to obtain a splicing vector corresponding to the content-side feature.
[0291] In an exemplary embodiment of the present disclosure, the second scoring module 830 is specifically used to: if the scene feature includes a scene identifier, the network parameters of the fully connected layer in the shared difference network include private parameters and shared parameters, and according to the scene identifier corresponding to the feature vector, determine the private parameters corresponding to the feature vector in the second content recall model; input the feature vector into the fully connected layer after the corresponding private parameters and shared parameters are bitwise added, and output the feature score corresponding to the feature vector.
[0292] In an exemplary embodiment of the present disclosure, the acquisition module 810 is also used to: before receiving a content push request, determine all inventory content in the inventory that contains distribution requirements, the distribution requirements include the required distribution volume, the completed distribution volume and the target distribution duration; based on the target distribution duration, determine the target distribution speed corresponding to the inventory content; based on the required distribution volume, the completed distribution volume and the target distribution duration, determine the current distribution speed corresponding to the inventory content; and determine the inventory content whose current distribution speed does not exceed the target distribution speed as content to be distributed.
[0293] In an exemplary embodiment of the present disclosure, the acquisition module 810 is specifically configured to use the inverse of the target distribution time as the target distribution speed corresponding to the inventory content.
[0294] In an exemplary embodiment of the present disclosure, the acquisition module 810 is specifically used to: determine the completed distribution ratio of the inventory content based on the completed distribution volume and the required distribution volume; determine the distribution duration of the inventory content based on the current time and the determination time of the required distribution volume; and use the ratio of the completed distribution ratio to the distribution duration as the current distribution speed of the inventory content.
[0295] In an exemplary embodiment of the present disclosure, the acquisition module 810 is specifically configured to: determine inventory content whose current distribution speed is equal to the target distribution speed as content to be distributed; or determine inventory content whose current distribution speed is less than the target distribution speed as content to be distributed.
[0296] In an exemplary embodiment of the present disclosure, the acquisition module 810 is also used to: after determining all inventory contents in the inventory that contain distribution requirements, determine the expected distribution completion time of the inventory contents based on the current time and the target distribution duration; and adjust the target distribution duration with the expected distribution completion time as zero point.
[0297] In an exemplary embodiment of the present disclosure, the first scoring module 820 is specifically used to train a first content recall model in the following manner: based on a set popularity range, determine the sample content for training; based on the log of the sample content, obtain training samples for model training; input the training samples into the content recall model, and train the first content recall model based on whether the sample content is played completely.
[0298] In an exemplary embodiment of the present disclosure, the first scoring module 820 is specifically used to: set at least three different popularity ranges according to content popularity; and select a set number of contents from each popularity range as sample content for training.
[0299] In an exemplary embodiment of the present disclosure, the first scoring module 820 is specifically used to: if the training sample includes sample feature data, the sample feature data includes sample user-side features, sample content-side features, sample user behavior sequences and sample scene features, input the sample feature data into the feature processing layer of the first content recall model, and output a sample feature vector corresponding to the sample feature data; input the sample feature vector into the shared difference network of the first content recall model, and output a sample feature score corresponding to the sample feature vector, the shared difference network includes at least one fully connected layer; input the sample user-side features and the sample scene features into the auxiliary network, and output a scene bias value corresponding to the training sample, the auxiliary network includes at least one fully connected layer; input the sample feature score and the scene bias value into the activation function of the first content recall model, and output a first sample score; train the shared difference network based on the objective function of the target and the first sample score.
[0300] In an exemplary embodiment of the present disclosure, the first scoring module 820 is specifically used to: if the sample scene feature includes a sample scene identifier, the network parameters of the fully connected layer in the shared difference network include private parameters and shared parameters, and according to the sample scene identifier corresponding to the sample feature vector, determine the private parameters corresponding to the sample feature vector in the first content recall model; input the sample feature vector into the fully connected layer after the corresponding private parameters and shared parameters are bitwise added, and output the sample feature score corresponding to the sample feature vector; and, based on the objective function of the target and the first sample score, the corresponding private parameters and shared parameters, perform training.
[0301] In an exemplary embodiment of the present disclosure, the second scoring module 830 is specifically used to: determine the sample content for training based on a set popularity range; obtain training samples for model training based on the log of the sample content; input the training samples into the content recall model, and train the second content recall model based on whether the push scenario corresponding to the content to be distributed will be visited again within a set time.
[0302] Next, refer to Figure 9 The content recall model training device of the exemplary embodiment of the present disclosure is described, which is used to implement the content recall model training method in any of the above method embodiments. Its implementation principle and technical effects are similar to those of the above method embodiments and will not be repeated here.
[0303] The content recall model training device 900 provided in the present disclosure includes:
[0304] A content determination module 910 is configured to determine sample content for training based on a set popularity range;
[0305] A sample determination module 920 is used to obtain training samples for model training based on the log of sample content;
[0306] The training module 930 is used to input the training samples into the content recall model and train the content recall model based on the set target. The set target is whether the sample content is played completely, or whether the push scenario corresponding to the sample content is accessed again within a set time.
[0307] In an exemplary embodiment of the present disclosure, the content determination module 910 is specifically configured to: set at least three different popularity ranges according to content popularity; and select a set number of contents from each popularity range as sample contents for training.
[0308] In an exemplary embodiment of the present disclosure, the content determination module 910 specifically includes: the training sample includes sample feature data, and the sample feature data includes sample user-side features, sample content-side features, sample user behavior sequences, and sample scene features.
[0309] In an exemplary embodiment of the present disclosure, the content determination module 910 specifically includes: sample user-side features including at least one of the following: user basic information, user basic information including user gender, age and whether or not the user is a member, user device information, and user content preference features; sample content-side features including at least one of the following: content basic information, content basic information including the language and title of the song, or the producer and category of the video, content feature information, content feature information including the lyrics and audio of the song, or the bit rate and duration of the video, content playback information, content playback information including the complete playback rate and interaction rate of the content within a set time period; sample user behavior sequence including at least one of the following: a content sequence that the user recently played in its entirety in the push scenario, a content sequence that the user actively played in its entirety; sample scene features including the sample scene identifier corresponding to when the sample content was pushed.
[0310] In an exemplary embodiment of the present disclosure, the training module 930 is specifically used to: input sample feature data into the feature processing layer of the content recall model, and output a sample feature vector corresponding to the sample feature data; input the sample feature vector into the shared difference network of the content recall model, and output a sample feature score corresponding to the sample feature vector, and the shared difference network includes at least one fully connected layer; input the sample user-side features and the sample scene features into the auxiliary network, and output a scene bias value corresponding to the training sample, and the auxiliary network includes at least one fully connected layer; input the sample feature score and the scene bias value into the activation function of the content recall model, and output a sample score; and train the shared difference network based on the objective function and sample score of the set target.
[0311] In an exemplary embodiment of the present disclosure, the training module 930 is specifically used to: perform representation embedding processing on sample user-side features and sample content-side features to obtain sample splicing vectors corresponding to the sample user-side features and sample content-side features, respectively; based on the attention algorithm, perform weighted processing on the sample user behavior sequence through the sample content-side features to obtain the sample splicing vector corresponding to the sample user behavior sequence; combine the splicing vectors corresponding to the sample user-side features, sample content-side features and sample user behavior sequence to obtain a sample feature vector.
[0312] In an exemplary embodiment of the present disclosure, the training module 930 is specifically used to: perform representation embedding processing on discrete features in the sample user-side features and the sample content-side features to obtain the first part of sub-vectors corresponding to the sample user-side features and the sample content-side features; perform bucketing processing on the continuous features in the sample user-side features and the sample content-side features, respectively, and perform representation embedding processing on the continuous features after bucketing processing to obtain the second part of sub-vectors corresponding to the sample user-side features and the sample content-side features; combine the first part of sub-vectors corresponding to the sample user-side features with the second part of sub-vectors to obtain the sample splicing vector corresponding to the sample user-side features; combine the first part of sub-vectors corresponding to the sample content-side features with the second part of sub-vectors to obtain the sample splicing vector corresponding to the sample content-side features.
[0313] In an exemplary embodiment of the present disclosure, the training module 930 is specifically used to: determine the private parameters corresponding to the sample feature vector in the content recall model based on the sample scene identifier corresponding to the sample feature vector; input the sample feature vector into the fully connected layer after the corresponding private parameters and shared parameters are bitwise added, and output the sample feature score corresponding to the sample feature vector; and, based on the target objective function and sample score, the corresponding private parameters and shared parameters, perform training.
[0314] Exemplary Computing Devices
[0315] After introducing the method, medium and apparatus of the exemplary embodiments of the present disclosure, Figure 10 A computing device according to an exemplary embodiment of the present disclosure is described.
[0316] Figure 10 The computing device 100 shown is merely an example and should not limit the functionality and scope of use of the embodiments of the present disclosure.
[0317] like Figure 10 As shown, computing device 100 is implemented as a general-purpose computing device. Components of computing device 100 may include, but are not limited to, at least one processing unit 1001, at least one storage unit 1002, and a bus 1003 connecting various system components (including processing unit 1001 and storage unit 1002). The at least one storage unit 1002 stores computer-executable instructions; the at least one processing unit 1001 includes a processor that executes the computer-executable instructions to implement the methods described above.
[0318] The bus 1003 includes a data bus, a control bus, and an address bus.
[0319] The storage unit 1002 may include a readable medium in the form of a volatile memory, such as a random access memory (RAM) 10021 and / or a cache memory 10022 , and may further include a readable medium in the form of a non-volatile memory, such as a read-only memory (ROM) 10023 .
[0320] The storage unit 1002 may also include a program having a set (at least one) of program modules 10024, such program modules 10024 including but not limited to: an operating system, one or more application programs, other program modules and program data, each of which or some combination may include the implementation of a network environment.
[0321] The computing device 100 may also communicate with one or more external devices 1004 (e.g., a keyboard, a pointing device, etc.). Such communication may be performed via an input / output (I / O) interface 1005. Furthermore, the computing device 100 may also communicate with one or more networks (e.g., a local area network (LAN), a wide area network (WAN), and / or a public network, such as the Internet) via a network adapter 1006. Figure 10 As shown, network adapter 1006 communicates with other modules of computing device 100 via bus 1003. It should be understood that, although not shown in the figure, other hardware and / or software modules may be used in conjunction with computing device 100, including but not limited to microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0322] It should be noted that although several units / modules or sub-units / modules of the content distribution device are mentioned in the detailed description above, this division is merely exemplary and not mandatory. In fact, according to the embodiments of the present disclosure, the features and functions of two or more units / modules described above can be embodied in one unit / module. Conversely, the features and functions of one unit / module described above can be further divided to be embodied by multiple units / modules.
[0323] Furthermore, although the operations of the disclosed method are described in a particular order in the accompanying drawings, this does not require or imply that the operations must be performed in this particular order, or that all illustrated operations must be performed to achieve the desired results. Additionally or alternatively, some steps may be omitted, multiple steps may be combined into one step, and / or one step may be decomposed into multiple steps.
[0324] Although the spirit and principles of the present disclosure have been described with reference to several specific embodiments, it should be understood that the present disclosure is not limited to the specific embodiments disclosed, and the division into various aspects does not mean that the features in these aspects cannot be combined to benefit. Such division is only for the convenience of expression. The present disclosure is intended to cover various modifications and equivalent arrangements included in the spirit and scope of the appended claims.
Claims
1. A content distribution method comprising the following steps: Responding to a received content push request, obtaining at least one content to be distributed, wherein the content push request includes a request corresponding to a push scenario; Inputting information of the at least one content to be distributed into a first content recall model, and outputting a first score for the at least one content to be distributed, wherein the first content recall model is trained based on whether the content to be distributed has been played completely, and the first score is used to represent the probability that the at least one content to be distributed has been played completely; Inputting information of the at least one content to be distributed into a second content recall model, and outputting a second score for the at least one content to be distributed, wherein the second content recall model is trained based on whether a push scenario corresponding to the content to be distributed will be visited again, and the second score is used to represent a probability that the push scenario corresponding to the content to be distributed will be visited again; Determining, based on the first score and the second score, content to be distributed to be pushed to the push scenario from the at least one content to be distributed; The content push request also includes corresponding user information, Inputting information of the at least one content to be distributed into a first content recall model and outputting a first score of the at least one content to be distributed includes: Based on the user information in the content push request and the information of the content to be distributed, obtaining corresponding feature data in the log record, the feature data including user-side features, content-side features, and user behavior sequence; Inputting the feature data into a feature processing layer of the first content recall model, and outputting a feature vector corresponding to the feature data; Inputting the feature vector into a shared difference network of the first content recall model and outputting a feature score corresponding to the feature vector, wherein the shared difference network includes at least one fully connected layer; Inputting the feature score into an activation function of the first content recall model and outputting the first score; Inputting the feature data into the feature processing layer of the first content recall model and outputting a feature vector corresponding to the feature data includes: Performing representation embedding processing on the user-side features and the content-side features to obtain concatenated vectors corresponding to the user-side features and the content-side features respectively; Based on the attention algorithm, the user behavior sequence is weighted by the content-side features to obtain a splicing vector corresponding to the user behavior sequence; The user-side feature, the content-side feature, and the concatenated vector corresponding to the user behavior sequence are combined to obtain the feature vector.
2. The content distribution method according to claim 1, wherein the feature data comprises: The user-side feature includes at least one of the following: User basic information, including user gender, age and whether or not the user is a member. User device information, User content preference characteristics; The content-side features include at least one of the following: Basic content information, including the language and title of the song, or the producer and category of the video, Content feature information, including the lyrics, audio, or bit rate and duration of the song, Content playback information, including the complete playback rate and interaction rate of the content within a set time period; The user behavior sequence includes at least one of the following: The sequence of content that the user recently played in full in the push scenario, A sequence of content that is played completely by the user.
3. The content distribution method according to claim 1, wherein the step of performing representation embedding processing on the user-side features and the content-side features to obtain concatenated vectors corresponding to the user-side features and the content-side features, respectively, comprises: Performing representation embedding processing on discrete features in the user-side features and the content-side features to obtain first partial sub-vectors corresponding to the user-side features and the content-side features; performing bucketing processing on the continuous features in the user-side features and the content-side features, respectively, and performing representation embedding processing on the continuous features after the bucketing processing to obtain second partial sub-vectors corresponding to the user-side features and the content-side features; Combining the first partial sub-vector corresponding to the user-side feature with the second partial sub-vector to obtain a concatenated vector corresponding to the user-side feature; The first partial sub-vector corresponding to the content-side feature is combined with the second partial sub-vector to obtain a concatenated vector corresponding to the content-side feature.
4. The content distribution method according to claim 1, wherein the feature data further comprises scene features, the scene features comprising scene identifiers, and the network parameters of the fully connected layer in the shared difference network comprise private parameters and shared parameters. Inputting the feature vector into the shared difference network of the first content recall model and outputting a feature score corresponding to the feature vector includes: determining, according to the scene identifier corresponding to the feature vector, a private parameter corresponding to the feature vector in the first content recall model; The feature vector is input into a fully connected layer after the corresponding private parameter and the shared parameter are bitwise added, and a feature score corresponding to the feature vector is output.
5. The content distribution method according to claim 1, wherein the content push request further includes corresponding user information. Inputting information of the at least one content to be distributed into a second content recall model and outputting a second score of the at least one content to be distributed includes: Based on the user information in the content push request and the information of the content to be distributed, obtaining corresponding feature data in the log record, the feature data including user-side features, content-side features, and user behavior sequence; Inputting the feature data into a feature processing layer of the second content recall model, and outputting a feature vector corresponding to the feature data; Inputting the feature vector into a shared difference network of the second content recall model and outputting a feature score corresponding to the feature vector, wherein the shared difference network includes at least one fully connected layer; The feature score is input into the activation function of the second content recall model, and the second score is output.
6. The content distribution method according to claim 5, wherein inputting the feature data into the feature processing layer of the second content recall model and outputting a feature vector corresponding to the feature data comprises: Performing representation embedding processing on the user-side features and the content-side features to obtain concatenated vectors corresponding to the user-side features and the content-side features respectively; Based on the attention algorithm, the user behavior sequence is weighted by the content-side features to obtain a splicing vector corresponding to the user behavior sequence; The user-side feature, the content-side feature, and the concatenated vector corresponding to the user behavior sequence are combined to obtain the feature vector.
7. The content distribution method according to claim 6, wherein the step of performing representation embedding processing on the user-side features and the content-side features to obtain concatenated vectors corresponding to the user-side features and the content-side features, respectively, comprises: Performing representation embedding processing on discrete features in the user-side features and the content-side features to obtain first partial sub-vectors corresponding to the user-side features and the content-side features; performing bucketing processing on the continuous features in the user-side features and the content-side features, respectively, and performing representation embedding processing on the continuous features after the bucketing processing to obtain second partial sub-vectors corresponding to the user-side features and the content-side features; Combining the first partial sub-vector corresponding to the user-side feature with the second partial sub-vector to obtain a concatenated vector corresponding to the user-side feature; The first partial sub-vector corresponding to the content-side feature is combined with the second partial sub-vector to obtain a concatenated vector corresponding to the content-side feature.
8. The content distribution method according to claim 5, wherein the feature data further comprises scene features, the scene features comprising scene identifiers, and the network parameters of the fully connected layer in the shared difference network comprise private parameters and shared parameters. Inputting the feature vector into a shared difference network of the second content recall model and outputting a feature score corresponding to the feature vector includes: determining, according to the scene identifier corresponding to the feature vector, a private parameter corresponding to the feature vector in the second content recall model; The feature vector is input into a fully connected layer after the corresponding private parameter and the shared parameter are bitwise added, and a feature score corresponding to the feature vector is output.
9. The content distribution method according to any one of claims 1 to 8, before receiving a content push request, further comprising: Determine all inventory contents in the inventory that contain distribution requirements, wherein the distribution requirements include the required distribution quantity, the completed distribution quantity, and the target distribution time; Determining a target distribution speed corresponding to the inventory content based on the target distribution duration; Determining a current delivery speed corresponding to the inventory content based on the required delivery volume, the completed delivery volume, and the target delivery duration; The inventory content whose current distribution speed does not exceed the target distribution speed is determined as the content to be distributed.
10. The content distribution method according to claim 9, wherein determining the target distribution speed corresponding to the inventory content based on the target distribution duration comprises: The inverse of the target distribution time is used as the target distribution speed corresponding to the inventory content.
11. The content distribution method according to claim 9, wherein determining the current distribution speed corresponding to the inventory content based on the required distribution volume, the completed distribution volume, and the target distribution duration comprises: Determining a completed distribution ratio of the inventory content based on the completed distribution volume and the required distribution volume; Determining the distribution duration of the inventory content based on the current time and the time of determining the required distribution quantity; The ratio of the completed distribution ratio to the distribution duration is used as the current distribution speed of the inventory content.
12. The content distribution method according to claim 9, wherein determining the inventory content whose current distribution speed does not exceed the target distribution speed as the content to be distributed comprises: Determining the inventory content whose current distribution speed is equal to the target distribution speed as content to be distributed; Alternatively, the inventory content whose current distribution speed is lower than the target distribution speed is determined as the content to be distributed.
13. The content distribution method according to claim 9, further comprising: after determining all inventory contents in the inventory that contain distribution requirements; Determining an expected delivery completion time for the inventory content based on the current time and the target delivery duration; The target distribution duration is adjusted with the expected distribution completion time being zero o'clock as the target.
14. The content distribution method according to any one of claims 1 to 8, wherein the first content recall model is trained by: Based on the set popularity range, determine the sample content for training; Based on the log of the sample content, obtaining training samples for model training; The training sample is input into the content recall model, and the first content recall model is trained based on whether the sample content is played completely.
15. The content distribution method according to claim 14, wherein determining sample content for training based on a set popularity range comprises: According to the popularity of the content, set at least three different popularity ranges; From each popularity range, a set number of contents are selected as sample contents for training.
16. The content distribution method according to claim 14, wherein the training sample comprises sample feature data, wherein the sample feature data comprises sample user-side features, sample content-side features, sample user behavior sequences, and sample scenario features. Inputting the training sample into the content recall model and training the first content recall model based on whether the content to be distributed is played completely includes: Inputting the sample feature data into a feature processing layer of the first content recall model, and outputting a sample feature vector corresponding to the sample feature data; Inputting the sample feature vector into a shared difference network of the first content recall model, and outputting a sample feature score corresponding to the sample feature vector, wherein the shared difference network includes at least one fully connected layer; Inputting the sample user-side features and the sample scene features into an auxiliary network, and outputting a scene bias value corresponding to the training sample, the auxiliary network including at least one fully connected layer; Inputting the sample feature score and the scene bias value into an activation function of the first content recall model, and outputting a first sample score; The shared difference network is trained based on the objective function of the target and the first sample score.
17. The content distribution method according to claim 16, wherein the sample scene feature comprises a sample scene identifier, and the network parameters of the fully connected layer in the shared difference network comprise private parameters and shared parameters. Inputting the sample feature vector into the shared difference network of the first content recall model and outputting a sample feature score corresponding to the sample feature vector includes: determining, according to the sample scene identifier corresponding to the sample feature vector, a private parameter corresponding to the sample feature vector in the first content recall model; Inputting the sample feature vector into the fully connected layer after bitwise addition of the corresponding private parameter and the shared parameter, and outputting the sample feature score corresponding to the sample feature vector; The training of the shared difference network based on the objective function of the target and the first sample score includes: Based on the objective function of the target and the first sample score, the corresponding private parameters and the shared parameters are trained.
18. The content distribution method according to any one of claims 1 to 8, wherein the second content recall model is trained by: Based on the set popularity range, determine the sample content for training; Based on the log of the sample content, obtaining training samples for model training; The training samples are input into the content recall model, and the second content recall model is trained based on whether the push scenario corresponding to the to-be-distributed content will be accessed again within a set time.
19. A content recall model training method comprising the following steps: Based on the set popularity range, determine the sample content for training; Based on the log of the sample content, obtaining training samples for model training; Inputting the training sample into the content recall model, and training the content recall model based on a set goal, wherein the content recall model includes a first content recall model and a second content recall model, wherein the set goal is whether the sample content is played completely, and the set goal is whether the push scenario corresponding to the sample content is accessed again within a set time; Inputting the training sample into the content recall model and training the content recall model based on a set goal includes: Inputting the sample feature data into the feature processing layer of the content recall model, and outputting a sample feature vector corresponding to the sample feature data; Inputting the sample feature vector into a shared difference network of the content recall model and outputting a sample feature score corresponding to the sample feature vector, wherein the shared difference network includes at least one fully connected layer; Inputting sample user-side features and sample scene features into an auxiliary network, and outputting a scene bias value corresponding to the training sample, wherein the auxiliary network includes at least one fully connected layer; Inputting the sample feature score and the scene bias value into the activation function of the content recall model, and outputting a sample score; Training the shared difference network based on the objective function of the set goal and the sample scores; Inputting the sample feature data into the feature processing layer of the content recall model and outputting a sample feature vector corresponding to the sample feature data includes: Performing representation embedding processing on the sample user-side features and the sample content-side features to obtain sample splicing vectors corresponding to the sample user-side features and the sample content-side features, respectively; Based on the attention algorithm, the sample user behavior sequence is weighted by the sample content side features to obtain a sample splicing vector corresponding to the sample user behavior sequence; The sample user-side features, the sample content-side features, and the concatenated vector corresponding to the sample user behavior sequence are combined to obtain the sample feature vector.
20. The content recall model training method according to claim 19, wherein determining sample content for training based on a set popularity range comprises: According to the popularity of the content, set at least three different popularity ranges; From each popularity range, a set number of contents are selected as sample contents for training.
21. According to the content recall model training method according to claim 19, the training samples include sample feature data, and the sample feature data includes sample user-side features, sample content-side features, sample user behavior sequences, and sample scene features.
22. The content recall model training method according to claim 21, wherein the sample feature data comprises: The sample user-side characteristics include at least one of the following: User basic information, including user gender, age and whether or not the user is a member. User device information, User content preference characteristics; The sample content-side features include at least one of the following: Basic content information, including the language and title of the song, or the producer and category of the video, Content feature information, including the lyrics, audio, or bit rate and duration of the song, Content playback information, including the complete playback rate and interaction rate of the content within a set time period; The sample user behavior sequence includes at least one of the following: The sequence of content that the user recently played in full in the push scenario, A sequence of content that is played completely by the user; The sample scene feature includes a sample scene identifier corresponding to when the sample content is pushed.
23. The content recall model training method according to claim 21, wherein the performing representation embedding processing on the sample user-side features and the sample content-side features to obtain sample concatenation vectors corresponding to the sample user-side features and the sample content-side features, respectively, comprises: Performing representation embedding processing on discrete features in the sample user-side features and the sample content-side features to obtain first partial sub-vectors corresponding to the sample user-side features and the sample content-side features; performing bucketing processing on the continuous features in the sample user-side features and the sample content-side features, respectively, and performing representation embedding processing on the continuous features after the bucketing processing to obtain second partial sub-vectors corresponding to the sample user-side features and the sample content-side features; Combining the first part of the sub-vectors corresponding to the sample user-side features with the second part of the sub-vectors to obtain a sample splicing vector corresponding to the sample user-side features; The first part of the sub-vectors corresponding to the sample content side features are combined with the second part of the sub-vectors to obtain a sample splicing vector corresponding to the sample content side features.
24. The content recall model training method according to claim 21, wherein the network parameters of the fully connected layer in the shared difference network include private parameters and shared parameters, and the step of inputting the sample feature vector into the shared difference network of the content recall model and outputting the sample feature score corresponding to the sample feature vector comprises: determining, according to the sample scene identifier corresponding to the sample feature vector, a private parameter in the content recall model corresponding to the sample feature vector; Inputting the sample feature vector into the fully connected layer after bitwise addition of the corresponding private parameter and the shared parameter, and outputting the sample feature score corresponding to the sample feature vector; The training of the shared difference network based on the objective function of the target and the sample score includes: Based on the objective function of the target and the sample score, the corresponding private parameters and the shared parameters are trained.
25. A computer-readable storage medium comprising: The computer-readable storage medium stores computer execution instructions, which, when executed by a processor, are used to implement the content distribution method as described in any one of claims 1 to 18; and / or, the computer execution instructions, when executed by a processor, are used to implement the content recall model training method as described in any one of claims 19 to 24.
26. A content distribution device comprising the following steps: An acquisition module, configured to acquire at least one content to be distributed in response to a received content push request, wherein the content push request includes a request corresponding to a push scenario; a first scoring module, configured to input information of the at least one content to be distributed into a first content recall model, and output a first score for the at least one content to be distributed, wherein the first content recall model is trained based on whether the content to be distributed has been played completely, and the first score is used to represent a probability that the at least one content to be distributed has been played completely; a second scoring module, configured to input information of the at least one content to be distributed into a second content recall model, and output a second score for the at least one content to be distributed, wherein the second content recall model is trained based on whether a push scenario corresponding to the content to be distributed will be visited again, and the second score is used to represent a probability that the push scenario corresponding to the content to be distributed will be visited again; a pushing module, configured to determine, from the at least one content to be distributed, content to be pushed to the pushing scenario based on the first score and the second score; The first scoring module is specifically used for: If the content push request also includes corresponding user information, Based on the user information in the content push request and the information of the content to be distributed, obtaining corresponding feature data in the log record, the feature data including user-side features, content-side features, and user behavior sequence; Inputting the feature data into a feature processing layer of the first content recall model, and outputting a feature vector corresponding to the feature data; Inputting the feature vector into a shared difference network of the first content recall model and outputting a feature score corresponding to the feature vector, wherein the shared difference network includes at least one fully connected layer; Inputting the feature score into an activation function of the first content recall model and outputting the first score; The first scoring module is specifically used to: Performing representation embedding processing on the user-side features and the content-side features to obtain concatenated vectors corresponding to the user-side features and the content-side features respectively; Based on the attention algorithm, the user behavior sequence is weighted by the content-side features to obtain a splicing vector corresponding to the user behavior sequence; The user-side feature, the content-side feature, and the concatenated vector corresponding to the user behavior sequence are combined to obtain the feature vector.
27. The content distribution device according to claim 26, wherein the first scoring module comprises: The user-side feature includes at least one of the following: User basic information, including user gender, age and whether or not the user is a member. User device information, User content preference characteristics; The content-side features include at least one of the following: Basic content information, including the language and title of the song, or the producer and category of the video, Content feature information, including the lyrics, audio, or bit rate and duration of the song, Content playback information, including the complete playback rate and interaction rate of the content within a set time period; The user behavior sequence includes at least one of the following: The sequence of content that the user recently played in full in the push scenario, A sequence of content that is played completely by the user.
28. The content distribution device according to claim 27, wherein the first scoring module is specifically configured to: Performing representation embedding processing on discrete features in the user-side features and the content-side features to obtain first partial sub-vectors corresponding to the user-side features and the content-side features; performing bucketing processing on the continuous features in the user-side features and the content-side features, respectively, and performing representation embedding processing on the continuous features after the bucketing processing to obtain second partial sub-vectors corresponding to the user-side features and the content-side features; Combining the first partial sub-vector corresponding to the user-side feature with the second partial sub-vector to obtain a concatenated vector corresponding to the user-side feature; The first partial sub-vector corresponding to the content-side feature is combined with the second partial sub-vector to obtain a concatenated vector corresponding to the content-side feature.
29. The content distribution device according to claim 26, wherein the first scoring module is specifically configured to: If the scene feature includes a scene identifier, the network parameters of the fully connected layer in the shared difference network include private parameters and shared parameters. determining, according to the scene identifier corresponding to the feature vector, a private parameter corresponding to the feature vector in the first content recall model; The feature vector is input into a fully connected layer after the corresponding private parameter and the shared parameter are bitwise added, and a feature score corresponding to the feature vector is output.
30. The content distribution device according to claim 26, wherein the second scoring module is specifically configured to: If the information of the at least one content to be distributed is input into the second content recall model, and a second score of the at least one content to be distributed is output, Based on the user information in the content push request and the information of the content to be distributed, obtaining corresponding feature data in the log record, the feature data including user-side features, content-side features, and user behavior sequence; Inputting the feature data into a feature processing layer of the second content recall model, and outputting a feature vector corresponding to the feature data; Inputting the feature vector into a shared difference network of the second content recall model and outputting a feature score corresponding to the feature vector, wherein the shared difference network includes at least one fully connected layer; The feature score is input into the activation function of the second content recall model, and the second score is output.
31. The content distribution device according to claim 30, wherein the second scoring module is specifically configured to: Performing representation embedding processing on the user-side features and the content-side features to obtain concatenated vectors corresponding to the user-side features and the content-side features respectively; Based on the attention algorithm, the user behavior sequence is weighted by the content-side features to obtain a splicing vector corresponding to the user behavior sequence; The user-side feature, the content-side feature, and the concatenated vector corresponding to the user behavior sequence are combined to obtain the feature vector.
32. The content distribution device according to claim 31, wherein the second scoring module is specifically configured to: Performing representation embedding processing on discrete features in the user-side features and the content-side features to obtain first partial sub-vectors corresponding to the user-side features and the content-side features; performing bucketing processing on the continuous features in the user-side features and the content-side features, respectively, and performing representation embedding processing on the continuous features after the bucketing processing to obtain second partial sub-vectors corresponding to the user-side features and the content-side features; Combining the first partial sub-vector corresponding to the user-side feature with the second partial sub-vector to obtain a concatenated vector corresponding to the user-side feature; The first partial sub-vector corresponding to the content-side feature is combined with the second partial sub-vector to obtain a concatenated vector corresponding to the content-side feature.
33. The content distribution device according to claim 30, wherein the second scoring module is specifically configured to: If the scene feature includes a scene identifier, the network parameters of the fully connected layer in the shared difference network include private parameters and shared parameters. determining, according to the scene identifier corresponding to the feature vector, a private parameter corresponding to the feature vector in the second content recall model; The feature vector is input into a fully connected layer after the corresponding private parameter and the shared parameter are bitwise added, and a feature score corresponding to the feature vector is output.
34. The content distribution device according to any one of claims 26 to 33, wherein the acquisition module is further configured to: Before receiving a content push request, Determine all inventory contents in the inventory that contain distribution requirements, wherein the distribution requirements include the required distribution quantity, the completed distribution quantity, and the target distribution time; Determining a target distribution speed corresponding to the inventory content based on the target distribution duration; Determining a current delivery speed corresponding to the inventory content based on the required delivery volume, the completed delivery volume, and the target delivery duration; The inventory content whose current distribution speed does not exceed the target distribution speed is determined as the content to be distributed.
35. The content distribution device according to claim 34, wherein the acquisition module is specifically configured to: The inverse of the target distribution time is used as the target distribution speed corresponding to the inventory content.
36. The content distribution device according to claim 34, wherein the acquisition module is specifically configured to: Determining a completed distribution ratio of the inventory content based on the completed distribution volume and the required distribution volume; Determining the distribution duration of the inventory content based on the current time and the time of determining the required distribution quantity; The ratio of the completed distribution ratio to the distribution duration is used as the current distribution speed of the inventory content.
37. The content distribution device according to claim 34, wherein the acquisition module is specifically configured to: Determining the inventory content whose current distribution speed is equal to the target distribution speed as content to be distributed; Alternatively, the inventory content whose current distribution speed is lower than the target distribution speed is determined as the content to be distributed.
38. The content distribution device according to claim 34, wherein the acquisition module is further configured to: After determining all inventory contents in the inventory that contain distribution requirements, Determining an expected delivery completion time for the inventory content based on the current time and the target delivery duration; The target distribution duration is adjusted with the expected distribution completion time being zero o'clock as the target.
39. The content distribution device according to any one of claims 26 to 33, wherein the first scoring module is specifically configured to: The first content recall model is trained in the following way: Based on the set popularity range, determine the sample content for training; Based on the log of the sample content, obtaining training samples for model training; The training sample is input into the content recall model, and the first content recall model is trained based on whether the sample content is played completely.
40. The content distribution device according to claim 39, wherein the first scoring module is specifically configured to: According to the popularity of the content, set at least three different popularity ranges; From each popularity range, a set number of contents are selected as sample contents for training.
41. The content distribution device according to claim 39, wherein the first scoring module is specifically configured to: If the training sample includes sample feature data, the sample feature data includes sample user side features, sample content side features, sample user behavior sequence and sample scene features, Inputting the sample feature data into a feature processing layer of the first content recall model, and outputting a sample feature vector corresponding to the sample feature data; Inputting the sample feature vector into a shared difference network of the first content recall model, and outputting a sample feature score corresponding to the sample feature vector, wherein the shared difference network includes at least one fully connected layer; Inputting the sample user-side features and the sample scene features into an auxiliary network, and outputting a scene bias value corresponding to the training sample, the auxiliary network including at least one fully connected layer; Inputting the sample feature score and the scene bias value into an activation function of the first content recall model, and outputting a first sample score; The shared difference network is trained based on the objective function of the target and the first sample score.
42. The content distribution device according to claim 41, wherein the first scoring module is specifically configured to: If the sample scene feature includes a sample scene identifier, the network parameters of the fully connected layer in the shared difference network include private parameters and shared parameters, determining, according to the sample scene identifier corresponding to the sample feature vector, a private parameter corresponding to the sample feature vector in the first content recall model; Inputting the sample feature vector into the fully connected layer after bitwise addition of the corresponding private parameter and the shared parameter, and outputting the sample feature score corresponding to the sample feature vector; Furthermore, based on the objective function of the target and the first sample score, the corresponding private parameters and the shared parameters are trained.
43. The content distribution device according to any one of claims 26 to 33, wherein the second scoring module is specifically configured to: Based on the set popularity range, determine the sample content for training; Based on the log of the sample content, obtaining training samples for model training; The training samples are input into the content recall model, and the second content recall model is trained based on whether the push scenario corresponding to the to-be-distributed content will be accessed again within a set time.
44. A content recall model training device, comprising: A content determination module, configured to determine sample content for training based on a set popularity range; A sample determination module, configured to obtain training samples for model training based on the log of the sample content; a training module, configured to input the training sample into the content recall model and train the content recall model based on a set goal, wherein the content recall model includes a first content recall model and a second content recall model, wherein the set goal is whether the sample content is played in its entirety and whether the push scenario corresponding to the sample content is accessed again within a set time; The training module is specifically used for: Inputting the sample feature data into the feature processing layer of the content recall model, and outputting a sample feature vector corresponding to the sample feature data; Inputting the sample feature vector into a shared difference network of the content recall model and outputting a sample feature score corresponding to the sample feature vector, wherein the shared difference network includes at least one fully connected layer; Inputting sample user-side features and sample scene features into an auxiliary network, and outputting a scene bias value corresponding to the training sample, wherein the auxiliary network includes at least one fully connected layer; Inputting the sample feature score and the scene bias value into the activation function of the content recall model, and outputting a sample score; Training the shared difference network based on the objective function of the set goal and the sample scores; The training module is specifically used for: Performing representation embedding processing on the sample user-side features and the sample content-side features to obtain sample splicing vectors corresponding to the sample user-side features and the sample content-side features, respectively; Based on the attention algorithm, the sample user behavior sequence is weighted by the sample content side features to obtain a sample splicing vector corresponding to the sample user behavior sequence; The sample user-side features, the sample content-side features, and the concatenated vector corresponding to the sample user behavior sequence are combined to obtain the sample feature vector.
45. The content recall model training apparatus according to claim 44, wherein the content determination module is specifically configured to: According to the popularity of the content, set at least three different popularity ranges; From each popularity range, a set number of contents are selected as sample contents for training.
46. The content recall model training apparatus according to claim 44, wherein the content determination module specifically comprises: The training samples include sample feature data, and the sample feature data includes sample user-side features, sample content-side features, sample user behavior sequences, and sample scenario features.
47. The content recall model training apparatus according to claim 46, wherein the content determination module specifically comprises: The sample user-side characteristics include at least one of the following: User basic information, including user gender, age and whether or not the user is a member. User device information, User content preference characteristics; The sample content-side features include at least one of the following: Basic content information, including the language and title of the song, or the producer and category of the video, Content feature information, including the lyrics, audio, or bit rate and duration of the song, Content playback information, including the complete playback rate and interaction rate of the content within a set time period; The sample user behavior sequence includes at least one of the following: The sequence of content that the user recently played in full in the push scenario, A sequence of content that is played completely by the user; The sample scene feature includes a sample scene identifier corresponding to when the sample content is pushed.
48. The content recall model training apparatus according to claim 46, wherein the training module is specifically configured to: Performing representation embedding processing on discrete features in the sample user-side features and the sample content-side features to obtain first partial sub-vectors corresponding to the sample user-side features and the sample content-side features; performing bucketing processing on the continuous features in the sample user-side features and the sample content-side features, respectively, and performing representation embedding processing on the continuous features after the bucketing processing to obtain second partial sub-vectors corresponding to the sample user-side features and the sample content-side features; Combining the first part of the sub-vectors corresponding to the sample user-side features with the second part of the sub-vectors to obtain a sample splicing vector corresponding to the sample user-side features; The first part of the sub-vectors corresponding to the sample content side features are combined with the second part of the sub-vectors to obtain a sample splicing vector corresponding to the sample content side features.
49. The content recall model training apparatus according to claim 46, wherein the training module is specifically configured to: determining, according to the sample scene identifier corresponding to the sample feature vector, a private parameter in the content recall model corresponding to the sample feature vector; Input the sample feature vector into the fully connected layer after the corresponding private parameters and shared parameters are bitwise added, and output the sample feature score corresponding to the sample feature vector; Furthermore, based on the objective function of the target and the sample score, the corresponding private parameters and the shared parameters are trained.
50. A computing device comprising: at least one processor; and a memory communicatively coupled to the at least one processor; In which, the memory stores instructions that can be executed by at least one processor, and the instructions are executed by at least one processor to enable the computing device to execute the content distribution method as described in any one of claims 1 to 18; and / or to enable the computing device to execute the content recall model training method as described in any one of claims 19 to 24.
Citation Information
Patent Citations
Repeated accomplishment method and device for recalling users
CN107733978A
Content pushing method and device, equipment and storage medium
CN112818237A