Model training method, virtual product pushing method and device, and electronic device

By iteratively training a neural network model on multiple sample sets of virtual products, the push type of sample objects can be predicted, solving the problems of long training time and low accuracy of conversion rate prediction models, and achieving more accurate user profiling and conversion rate prediction.

CN122364896APending Publication Date: 2026-07-10TENCENT TECH SHANGHAI

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
TENCENT TECH SHANGHAI
Filing Date
2025-01-07
Publication Date
2026-07-10

Smart Images

  • Figure CN122364896A_ABST
    Figure CN122364896A_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a model training method, a virtual product pushing method and device, electronic equipment and a computer readable storage medium, and relate to the field of artificial intelligence. The method comprises: obtaining a plurality of sample sets of virtual products, each sample set corresponding to a pushing type; iteratively training an initial neural network model according to the plurality of sample sets, and taking the neural network model when an iteration training stop condition is met as a classification prediction model of the virtual product; wherein the total loss of the iteration training comprises a first training loss of each sample set; for each sample set, the first training loss represents a first difference between a predicted classification result of each sample object in the corresponding sample set output by the iteratively trained neural network model and an actual classification result. Embodiments of the present application can significantly alleviate the problem of data sparsity and cope with challenges such as data sparsity and cold start.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of artificial intelligence technology, and more specifically, to a model training method, a method for pushing virtual products, an apparatus, an electronic device, a computer-readable storage medium, and a computer program product. Background Technology

[0002] Pushing content to users has always been an effective way to promote virtual products. Users may be willing to use the services of that virtual product after viewing the pushed content, thus achieving conversion through content push. Content for virtual products can be pushed through different channels, such as social media apps or news apps.

[0003] Since different virtual products may attract different target audiences, in order to reduce push costs and improve conversion efficiency, it is necessary to predict whether the current user is suitable for being pushed the content of the virtual product before pushing the content.

[0004] In related technologies, conversion rate prediction models are mainly used to select users and channels for content delivery. However, these models require a large number of positive samples for training. In the historical content delivery process for a particular channel, the number of users decreases progressively from exposure to conversion, forming a funnel shape, also known as a data funnel. Within this funnel, only users who ultimately convert can be used as positive samples for training. This results in a long waiting period to collect a sufficient number of positive samples, making it difficult to meet current conversion rate prediction needs. Summary of the Invention

[0005] This application provides a model training method, a virtual product push method, an apparatus, an electronic device, a computer-readable storage medium, and a computer program product, which can solve the above-mentioned problems of the prior art. The technical solution is as follows: According to a first aspect of the embodiments of this application, a model training method is provided, the method comprising: Multiple sample sets of virtual products are obtained, each sample set corresponds to a push type, each push type represents a conversion result under a push context, the conversion result is conversion or no conversion, the push context includes push channels; the sample set includes object information of multiple sample objects; The initial neural network model is iteratively trained based on the multiple sample sets, and the neural network model that meets the stopping condition of iterative training is used as the classification prediction model of the virtual product. The total loss of the iterative training includes the first training loss for each sample set; For each of the sample sets, the first training loss represents the first difference between the predicted classification result and the actual classification result of each sample object in the corresponding sample set output by the iteratively trained neural network model, wherein the classification result refers to the correspondence between the corresponding sample object and each push type.

[0006] According to a second aspect of the embodiments of this application, a method for pushing virtual products is provided, including: Obtain object information of an object; The object information is input into the classification prediction model of the virtual product to obtain the predicted classification result of the object output by the classification prediction model; Based on the predicted classification results of the object, a push strategy for pushing the target product to the push object is determined; The classification prediction model is trained according to the model training method provided in the first aspect, and the prediction classification result refers to the correspondence between the predicted object and each push type.

[0007] According to a third aspect of the embodiments of this application, a model training apparatus is provided, the apparatus comprising: The sample acquisition module obtains multiple sample sets of virtual products. Each sample set corresponds to a push type, and each push type represents a conversion result under a push context. The conversion result is either converted or not converted. The push context includes the push channel. The sample set includes object information of multiple sample objects. The training module iteratively trains the initial neural network model based on the multiple sample sets, and uses the neural network model that meets the stopping condition of iterative training as the classification prediction model of the virtual product. The total loss of the iterative training includes the first training loss for each sample set; For each of the sample sets, the first training loss represents the first difference between the predicted classification result and the actual classification result of each sample object in the corresponding sample set output by the iteratively trained neural network model, wherein the classification result refers to the correspondence between the corresponding sample object and each push type.

[0008] As an optional implementation, for each sample set, the first training loss of the sample set is determined in the following manner: Obtain the first weight of the sample set, wherein the magnitude of the first weight of the sample set is inversely proportional to the number of samples in the corresponding sample set; The first training loss of the sample set is obtained by weighting the sum of the first differences of each object sample in the sample set with the first weight of the sample set.

[0009] As an optional implementation, for each sample object, the predicted classification result of the sample object is a first probability distribution, which includes the first probability that the sample object belongs to each push type. For each sample object in the sample set, the first difference between the predicted classification result and the actual classification result of the sample object is determined by the following method: A second probability distribution is determined based on the actual sample set to which the sample object belongs. The second probability distribution includes the actual probability that the sample object belongs to each sample set. Based on the difference between the first probability distribution and the second probability distribution corresponding to the sample object, the first difference between the predicted classification result and the actual classification result of the sample object is obtained.

[0010] As an optional implementation, for each push scenario, the plurality of sample sets include a positive sample set and a negative sample set corresponding to the push scenario, wherein the conversion result corresponding to the positive sample set is a conversion, and the conversion result corresponding to the negative sample set is no conversion; The total loss of the iterative training also includes a second training loss for each sample pair, where the sample sets to which the two sample objects in each sample pair belong correspond to the same push context. Wherein, the second training loss represents the second difference between the predicted comparison result and the actual comparison result of the corresponding sample pair output by the iteratively trained neural network model, and the actual comparison result refers to whether the transformation results corresponding to the two sample objects in the sample pair are the same.

[0011] As an optional implementation, the prediction comparison result of the sample pair is the prediction probability, which is the probability that the two object samples in the sample pair correspond to the same transformation result. For each sample pair, the second difference between the predicted comparison result and the actual comparison result of the sample pair is determined in the following way: If the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to the same transformation result, then the second difference between the predicted comparison result and the actual comparison result of the sample pair is obtained based on the difference between the preset value and the predicted probability corresponding to the sample pair. If the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to different transformation results, then based on the prediction probability corresponding to the sample pair, the second difference between the predicted comparison result and the actual comparison result of the sample pair is obtained.

[0012] As an optional implementation, for any pair of samples, the second training loss of the sample pair is determined in the following manner: Based on the actual comparison results of the sample pairs, obtain the second weight of the sample pairs; The second difference of the sample pair is weighted based on the second weight of the sample pair to obtain the second training loss of the sample pair; Wherein, if the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to the same transformation result, then the second weight is the first value; If the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to different transformation results, then the second weight is the second value, and the first value is different from the second value.

[0013] As an optional implementation, the push scenario also includes the result of the sample object's operation on the virtual product, wherein the operation result is either an operation or no operation.

[0014] According to a fourth aspect of the embodiments of this application, a virtual product push device is provided, the device comprising: The information acquisition module is used to obtain object information of an object; The prediction module is used to input the object information into the classification prediction model of the virtual product and obtain the predicted classification result of the object output by the classification prediction model; The strategy generation module is used to determine a push strategy for pushing the target product to the push object based on the predicted classification result of the object. The classification prediction model is trained according to the method provided in the first aspect, and the prediction classification result refers to the correspondence between the predicted object and each push type. As an optional implementation method, the push strategy includes at least one of the following: The determination result is used to indicate whether to push the virtual product to the object; The push channel used when the judgment result indicates that a virtual product is pushed to the object.

[0015] As an optional implementation, the predicted classification result of the object is a first probability distribution; The push strategy also includes: The object's degree of interest in the virtual product; The intention degree is the sum of the probabilities that the object belongs to each positive sample set.

[0016] According to a fifth aspect of the embodiments of this application, an electronic device is provided, the electronic device including a memory, a processor and a computer program stored in the memory, the processor executing the computer program to implement the steps of the method provided in the first or second aspect described above.

[0017] According to a sixth aspect of the embodiments of this application, a computer-readable storage medium is provided, on which a computer program is stored, wherein when the computer program is executed by a processor, it implements the steps of the method provided in the first or second aspect described above.

[0018] According to a seventh aspect of the embodiments of this application, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps of the method provided in the first or second aspect described above.

[0019] The beneficial effects of the technical solutions provided in this application are: By obtaining multiple sample sets of virtual products, and considering the differences in push scenarios and conversion results corresponding to different push types, the scale (i.e., the number of samples) of sample sets for different push types is not uniform, and there are cases where some sample sets (e.g., push types with conversion results in niche push scenarios) have significantly fewer samples. Therefore, this application embodiment classifies each conversion branch (push type) independently, and the total loss of iterative training includes the first training loss for each sample set. For each sample set, the first training loss represents the first difference between the predicted classification result and the actual classification result of each sample object in the corresponding sample set output by the iteratively trained neural network model. The classification result refers to the correspondence between the corresponding sample object and each push type. Compared with the prediction of click-through rate and conversion rate in related technologies, this application embodiment predicts the push type to which each sample object belongs from the perspective of classification, instead of predicting click-through rate and conversion rate as in related technologies, and it is not simply predicting whether or not a conversion will occur. Therefore, it does not need to focus solely on the type of push as in related technologies. These conversion results serve as sample objects for conversion, thus reducing the stringent requirements on the number of samples in each sample set. This also enhances the application scenarios of the model's prediction results. On one hand, it helps to obtain more accurate user profiles. By predicting the type of push notifications for an object (including the push context and conversion results), we can gain a deeper understanding of the object's interests and needs. On the other hand, by predicting the type of push notifications for an object, we can indirectly obtain the object's conversion rate. Directly predicting conversion rates and click-through rates cannot predict the type of push notifications for an object. By predicting the type of push notifications for an object, we can optimize the push channels for the object, guiding the object to browse and select virtual objects more smoothly, thereby increasing the possibility of conversion. Furthermore, it can ensure the smoothness and consistency of push notifications, helping to improve the object's browsing experience and reduce fatigue caused by repetitive push notifications. At the same time, it can also promote new interactions between the object and the virtual system. For example, the push strategy can be adjusted in real time based on the predicted operation results to meet personalized needs. More importantly, it can significantly alleviate the problem of data sparsity and address challenges such as data sparsity and cold start. Attached Figure Description

[0020] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments of this application will be briefly introduced below.

[0021] Figure 1 This is a schematic diagram illustrating a use case of the model training method provided in the embodiments of this application; Figure 2 This is a schematic diagram illustrating the push notification presentation of a virtual product as provided in an embodiment of this application. Figure 3 A schematic flowchart illustrating a model training method provided in an embodiment of this application; Figure 4 Schematic diagrams illustrating various push types provided in embodiments of this application; Figure 5 A schematic diagram of the structure of the initial neural network model provided in the embodiments of this application; Figure 6 A schematic flowchart illustrating a model training method provided in an embodiment of this application; Figure 7A A schematic diagram of model training logic provided for another embodiment of this application; Figure 7B A schematic flowchart illustrating a model training method provided in another embodiment of this application; Figure 8 A schematic flowchart of a model training method provided in another embodiment of this application; Figure 9 A flowchart illustrating the method for pushing virtual products provided in this application embodiment; Figure 10A A schematic diagram of the operation interface for service providers of virtual products to obtain intention rankings provided in the embodiments of this application; Figure 10B A schematic diagram illustrating the process by which service providers of virtual products provided in this application obtain an intention ranking; Figure 11 This is a schematic diagram of the structure of a model training device provided in an embodiment of this application; Figure 12 This is a schematic diagram of the structure of a virtual product push device provided in an embodiment of this application; Figure 13 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation

[0022] The embodiments of this application are described below with reference to the accompanying drawings. It should be understood that the embodiments described below with reference to the accompanying drawings are exemplary descriptions for explaining the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions of the embodiments of this application.

[0023] Those skilled in the art will understand that, unless otherwise stated, the singular forms “a,” “an,” and “the” used herein may also include the plural forms. It should be further understood that the terms “comprising” and “including” as used in embodiments of this application mean that the corresponding feature can be implemented as the presented feature, information, data, step, operation, element, and / or component, but do not exclude implementation as other features, information, data, step, operation, element, component, and / or combinations thereof supported by the art. It should be understood that when we say that an element is “connected” or “coupled” to another element, the one element can be directly connected or coupled to the other element, or it can mean that the one element and the other element establish a connection relationship through an intermediate element. Furthermore, “connected” or “coupled” as used herein can include wireless connection or wireless coupling. The term “and / or” as used herein indicates at least one of the items defined by the term; for example, “A and / or B” can be implemented as “A,” or as “B,” or as “A and B.”

[0024] To make the objectives, technical solutions, and advantages of this application clearer, the embodiments of this application will be described in further detail below with reference to the accompanying drawings.

[0025] In related technologies, conversion rate prediction models are mainly used to select suitable users and channels for content delivery to virtual products. Because the number of users decreases progressively from exposure to conversion in the historical content delivery process for a virtual product, forming a data funnel, for example, for a game product, the number of users decreases sequentially throughout the entire conversion process from exposure, click, download to registration, forming a data funnel. However, training the model using only data from the bottom of the funnel will not allow it to converge effectively. For example, for a game product, the bottom data of the funnel refers to data related to the user's journey from download to registration, which obviously cannot lead to effective convergence of the conversion rate prediction model. Using data from the middle links of the funnel does not match the final required metrics of the conversion rate prediction model. Therefore, to ensure the accuracy of the conversion rate prediction model, only users who have completed the conversion can be used as positive samples for training.

[0026] Existing multi-channel conversion algorithms largely refer to traditional single-channel conversion prediction algorithms, such as the Entire Space Multi-Task Model (ESMM). By modeling the entire space of clicks and click-through conversions, the conversion rate of non-clicked samples can be estimated more accurately. That is, the conversion rate (CVR) is obtained indirectly through click-through rate (CTR) and click-through conversion rate (CTCVR). CTR is used to indicate the probability that a user will click on the content after it is pushed, CTCVR is used to indicate the probability that a user will complete a conversion after clicking on the content, and CVR is used to represent the probability that a user will complete a conversion after the content is pushed.

[0027] Because the task relationship chain in the ESMM model is relatively simple—for example, for a game product, registration can only be considered a conversion brought about by this content push after clicking and downloading—ESMM usually uses users who only received the content push as negative samples, users who received the content push and whose push content was clicked as positive samples for CTR, and users who clicked the content push and whose push content was converted as positive samples for CTCVR. However, in the actual content push process, each funnel in the data funnel is not strictly contained within the previous funnel. For example, for a game product, users who download the game product may not click on an ad on a certain channel, and users who register for the game product may not download it through that channel. In other words, when a trained ESMM model predicts conversions for a specific channel, other redundant conversions are not included in the revenue for that specific channel. For example, conversions from other channels will not be counted towards the revenue for that specific channel. However, these redundant conversions may occupy potential user slots that could have been converted on that specific channel. For instance, when predicting conversions for an internal channel, users on external channels such as app stores usually have higher conversion rates. This means that user conversion slots on external channels will occupy potential user slots that could have been converted on the internal channel. In other words, when using the ESMM model, the conversions in the training data are inconsistent with the actual conversions targeted by the campaign. The bias caused by the channel affects the prediction accuracy of the final ESMM model.

[0028] Furthermore, the effectiveness of the ESMM model relies on a large number of training samples. This means that a large sample size is needed to improve the model's generalization ability, thereby enhancing its overall performance. If modeling is forced according to the ESMM task approach, the number of users decreases progressively from exposure to conversion during the content push process of a virtual product on a single channel. Only users who ultimately complete the conversion can be used as positive samples for training. This type of conversion data is extremely scarce; that is, the proportion of converted users in the data obtained for this channel and this virtual product will be low, resulting in data sparsity. The limited conversion data obtained (as positive samples) cannot support effective ESMM modeling. For example, for game product A, within one month of its launch, only 40,000 users were captured across all scenarios on a single channel, from exposure to click to download. This number is insufficient to meet the needs of conversion rate prediction.

[0029] The model training method, virtual product push method, device, electronic device, computer-readable storage medium, and computer program product provided in this application treat a conversion result in each push scenario as a push type and obtain a sample set for each push type. That is, the embodiments of this application no longer only focus on positive samples where the conversion result is a conversion, thereby obtaining a sufficient number of training samples. Furthermore, the model training no longer focuses on whether or not a conversion occurs, but on the classification result of the sample, that is, the relationship between the sample and each push type, which can improve the model's understanding ability and prediction accuracy, and the application scenarios of the model output results are also more numerous.

[0030] The technical solutions of this application and their effects are described below through several exemplary embodiments. It should be noted that the following embodiments can be referenced, borrowed from, or combined with each other. Identical terms, similar features, and similar implementation steps in different embodiments will not be repeated.

[0031] Figure 1 This is a schematic diagram illustrating a use case of the model training method provided in an embodiment of the present invention. See also: Figure 1The terminals (including terminals 10-1 and 10-2) are equipped with at least one client capable of displaying multimedia information of virtual products. The terminals connect to server 200 via network 300, which can be a wide area network (WAN), a local area network (LAN), or a combination of both. Data transmission is achieved using a wireless link. The multimedia information includes, but is not limited to, videos, images, GIF animations, and advertising information. The types of multimedia information obtained by the terminals (including terminals 10-1 and 10-2) from the corresponding server 200 via network 300 can be the same or different. For example, the terminals (including terminals 10-1 and 10-2) can obtain either video advertisements or image advertisements of the same virtual product from the corresponding server 200 via network 300. The specific types are not limited in this application. Server 200 can store different multimedia information, including advertising multimedia information in different dynamic formats, such as GIF, MP4, and MOV. In addition to pushing virtual products to terminals through different clients (each client becoming a push channel), server 200 can also push through non-client methods, such as sending text messages to terminals.

[0032] Users can perform different operations on the multimedia information of the presented virtual products through the terminals (terminal 10-1 and / or terminal 10-2), generating different data records of the usage process. For example, when the multimedia information is a video advertisement, users can share and / or like the exposed video advertisement while watching the information, or click on it. When the multimedia information is a dynamic GIF advertisement, during the exposure of the advertisement through the terminals (terminal 10-1 and / or terminal 10-2), users can forward and / or comment on the advertisement, or jump to the corresponding product purchase link page through the GIF advertisement.

[0033] In some embodiments of this application, virtual products can be financial products to meet users' financial needs. For example, they can recommend stock information or fund information to users in the financial industry, enabling them to conduct financial activities through virtual or physical resources, or to pay for recommended multimedia information through virtual resources (such as digital RMB).

[0034] As an example, server 200 can deploy a classification prediction model that can predict the correspondence between users and each push type. The push type represents the conversion result in a push context, which includes the push channel. Therefore, the classification prediction model can predict whether a user will convert in which push channels. When server 200 determines to recommend virtual products to user's terminal 10-1 or 10-2, it needs to adjust the recommendation channel in a timely manner to adapt to the user's needs.

[0035] As an example, server 200 is used to deploy a corresponding initial neural network model to implement the model training method provided by this invention, or to deploy a model training device to implement the training method of the classification prediction model. Specifically, multiple sample sets of virtual products are obtained, each sample set corresponds to a push type, and each push type represents a conversion result under a push scenario, wherein the conversion result is conversion or no conversion, and the push scenario includes a push channel; the sample set includes object information of multiple sample objects; the initial neural network model is iteratively trained according to the multiple sample sets, and the total loss of the iterative training includes a first training loss for each sample set; for each sample set, the first training loss represents the first difference between the predicted classification result and the actual classification result of each sample object in the corresponding sample set output by the iteratively trained neural network model, wherein the classification result refers to the correspondence between the corresponding sample object and each push type. The classification prediction model provided by this invention can be applied to advertisement playback. In advertisement playback, different virtual products from different data sources are usually processed, and finally, the advertisements most likely to convert are presented on the user interface (UI). The accuracy of advertisement push directly affects the user experience.

[0036] Figure 2 This is a schematic diagram illustrating the push notification of a virtual product according to an embodiment of this application. The diagram uses the example of game product A being pushed on a social media platform for illustration. Figure 2 As shown in the screenshot on the left, users on a certain social media app can receive push notifications consisting of text, images, and other elements. The text in these notifications is typically attractive, for example... Figure 2 The push notifications shown include phrases like "A brand new adventure story, brand new cool outfits" designed to entice users to download game product A. Upon receiving this content, users may click on it, which will then lead them to the corresponding download page. Figure 2As shown in the screenshot on the right, the download page typically consists of a large amount of text and images. This text and images primarily provide further information around the relevant slogans on the click screen, aiming to further entice users to download game product A. After downloading game product A, some users will register. These users who clicked, downloaded, and registered through the social media app are the users who have successfully converted based on the aforementioned content push.

[0037] This application provides a model training method, such as... Figure 3 As shown, the method includes: S101. Obtain multiple sample sets of virtual products.

[0038] The virtual products in this application embodiment refer to products that can provide various services to users on the network, such as virtual game products, applications, and educational information. This application can obtain different sample sets based on different push types. One push type in this application embodiment represents a conversion result under a push scenario. The push scenario includes a push channel, which refers to a channel for pushing content of virtual products, or it can be an information carrier that pushes content to users. Its type is not limited, for example, it can include a social software, a news software, a short video software, etc. For a virtual product, the content pushed refers to information used to describe the virtual product, such as text, images, and other forms, so that users can obtain content related to the virtual product through the channel.

[0039] In some embodiments, the push channel in this application may be: App push notifications (in-app push notifications): Messages are sent to registered users within the app, and users can only see them when they open the app. This method requires no external costs, but its reach is limited and it has no ability to re-engage churned users. Push notifications: These send messages to the phone's lock screen or notification bar by obtaining phone permissions. This method allows users to receive messages without needing to access the app. SMS push: Sending messages using the phone's SMS function. This method allows messages to be sent to the user's phone even after the software has been uninstalled, but it is relatively expensive. Social media push: Utilizing social media platforms (such as WeChat, Weibo, Douyin, etc.) to push content or advertisements. This method can accurately target the audience and increase interaction and engagement; Email push: Sending marketing messages or promotional content via email. This method is suitable for maintaining long-term customer relationships and providing personalized services.

[0040] Conversion refers to the process where, after content is pushed to an object, the object views the pushed content and obtains the corresponding virtual product service because of the pushed content. For example, if content about a game product is pushed to an object, and the object registers for the game product after viewing the pushed content, then the object has achieved conversion. This application does not limit the method of obtaining the service, and it can include various situations such as downloading, registering, and feature value transfer after registration.

[0041] The conversion result in this application embodiment is either conversion or no conversion. A conversion result means that after content is pushed to an object, the corresponding virtual product service is obtained by the object due to the pushed content. For example, if content about an application is pushed to an object, and the application is downloaded due to the pushed content, then the conversion result is conversion.

[0042] In some embodiments, the push context may include not only the push channel but also the operation result of the sample object on the virtual product, wherein the operation result is either an operation or no operation. This application embodiment does not specifically limit the type of operation; for example, it may be a click operation, a like operation, a positive comment operation, etc.

[0043] Please see Figure 4 The illustration provides a schematic diagram of various push notification types provided in this application embodiment. Two push notification channels are shown: a social media push notification channel and an SMS push notification channel. Each push notification channel is further subdivided into two operation results: click and no click. Therefore, this application has two push notification scenarios for the same push notification channel. Taking the social media push notification channel as an example, this channel has two push notification scenarios: social media-click 1 and social media-no-click 1. Each operation result is further subdivided into two conversion results: conversion and no conversion, resulting in eight push notification types.

[0044] This application embodiment statistically analyzes a sample set for each push notification type. In other words, all sample objects in a sample set correspond to the same conversion result under the same push notification scenario. It is understandable that, due to the inherent differences in the difficulty of data collection and the number of sample objects collected for different push notification types—generally, the number of converted objects is far less than the number of unconverted objects—the number of samples in different sample sets is often not the same.

[0045] The sample set in this application embodiment includes sample object information for multiple sample objects. The object information in this application embodiment may include the object's age, location, education level, gender, hobbies, etc., and this application embodiment does not impose specific limitations. It should be emphasized that the data collection and processing in this application should strictly comply with the requirements of relevant national laws and regulations when applied in practice, obtaining the informed consent or separate consent of the personal information subject, and conducting subsequent data use and processing within the scope of laws and regulations and the authorization of the personal information subject.

[0046] Considering that an object's conversion tendency often differs across different channels—for example, object A might be more active on a certain social media platform, resulting in a higher conversion tendency towards various virtual products, while being less active on a certain short video platform, resulting in a lower conversion tendency towards various virtual products—the object information in this application embodiment may further include account information. Account information refers to the user account information corresponding to the object on different push channels. This user account information can be used to identify the user-side characteristics of the object on different push channels, thereby enabling the prediction model obtained after the initial neural network model is trained based on training samples to consider the user's preferences on different channels.

[0047] S102. The initial neural network model is iteratively trained based on the multiple sample sets, and the neural network model that meets the stopping condition of iterative training is used as the classification prediction model of the virtual product.

[0048] The classification prediction model in this application refers to a model that can predict the type of push notification to which an object belongs—that is, the conversion result under the push notification context to which the object belongs. The initial neural network model refers to a model that can be used to train the training samples to obtain the classification prediction model.

[0049] It should be noted that when the classification prediction model for a single virtual product is trained in this embodiment of the application, the input to the neural network model and the finally trained classification prediction model may not include the product information of that virtual product. However, when it is necessary to train a classification prediction model applicable to multiple virtual products, each sample set in this embodiment of the application may include not only the object information of multiple sample objects, but also the product information of the same virtual product. This demonstrates that a sample set represents the conversion result in the context of pushing a single virtual product. Based on the sample set containing the object information of the objects and the product information of the virtual products, the neural network model can specifically mine the object's interest and demand for the virtual product.

[0050] The total loss of iterative training in this embodiment includes a first training loss for each sample set. For each sample set, the first training loss represents the first difference between the predicted classification result and the actual classification result of each sample object in the corresponding sample set output by the iteratively trained neural network model. The classification result refers to the correspondence between the corresponding sample object and each push type.

[0051] It's important to note that in the historical content pushes to a specific channel, the number of users decreases progressively as the content is exposed to and converted. If a neural network model directly predicts the conversion rate of virtual product content pushed to a channel, only the users who ultimately convert can be used as positive training samples. This results in a sparsity problem for positive samples, leading to a prolonged waiting period before a sufficient number of positive samples can be collected.

[0052] The training approach for the initial neural network model in this application is no longer to predict the conversion rate of a single object, but to predict the push type to which a sample object belongs from a classification perspective. That is, the correspondence between the sample object and each push type. This correspondence can be expressed as the sample set of which push type the sample object belongs to or does not belong to which push type, or it can be the probability that the sample object belongs to the sample set of each push type. The embodiments of this application do not make specific limitations.

[0053] When facing multi-channel prediction scenarios, related technologies often employ the ESMM model to predict conversion rates. Figure 4 For example, the formula for predicting conversion rate using the ESMM model in related technologies can be expressed as: p(conversion) = p(ad click) × p(click 1 | ad click) × p(conversion 1 | ad click, click 1) + p(ad clicks) × (1 - p(click 1 | ad clicks)) × p(conversion 2 | ad clicks, no clicks 1) + (1-p(ad clicks))×p(click 2 | SMS clicks)×p(conversion 3 | SMS clicks, click 2) + (1-p(ad clicks))×(1-p(clicks 2 | SMS clicks))×p(conversions 4 | SMS clicks, no clicks 2); In the above formula, p(conversion) is the final conversion rate, which is the sum of the probabilities of the four types of push notifications (push types 1, 3, 5 and 7) that result in a conversion. It is the click-through rate and conversion rate that go through the complete path from exposure to click to conversion.

[0054] This application's embodiment predicts the push type of each sample object from a classification perspective, unlike related technologies that predict click-through rate and conversion rate, or simply whether a conversion will occur. Therefore, it does not need to focus solely on sample objects that have converted, as related technologies do. This reduces the stringent requirement on the number of samples in each sample set and enhances the application scenarios of the model's prediction results. On one hand, it helps to obtain more accurate user profiles. By predicting the push type of an object (including the push context and conversion result), a deeper understanding of the object's interests and needs can be achieved. On the other hand, predicting the push type of an object can indirectly obtain the object's conversion rate, whereas directly predicting conversion rate and click-through rate cannot predict the object's push type. By predicting the push type of an object, the push path can be optimized, guiding the object to browse and select virtual objects more smoothly, thereby increasing the possibility of conversion. Furthermore, it can ensure the smoothness and continuity of push notifications, helping to improve the object's browsing experience and reduce fatigue caused by repetitive push notifications. It can also promote interaction between the object and the virtual system. For example, the push strategy can be adjusted in real time based on the predicted operation results to meet personalized needs. More importantly, it can significantly alleviate the problem of data sparsity and address challenges such as data sparsity and cold start.

[0055] The prediction classification results of this application embodiment represent the correspondence between sample objects and each push type. Since the push type contains information in two dimensions: push context and conversion result, the prediction classification results can more clearly show in which push context a sample object may successfully convert to a virtual product and in which push context it may fail to convert to a virtual product, thereby better creating push contexts that are more likely to result in conversion for the object.

[0056] In one possible implementation, the neural network model includes a feature extraction module and a classification module. In each iteration, the object information of the sample object is first used as input to the feature extraction module. The feature extraction submodule then obtains the object features of the sample object. Object features refer to a series of quantifiable information reflected in the sample. Next, the object features of the sample object are used as input to the classification module, which then obtains the predicted classification result of the sample object. The neural network model in this embodiment introduces a feature extraction module and a classification model, allowing the feature extraction module to first extract the object features of the sample, and then input these object features into the classification module to obtain the predicted classification result of the sample object.

[0057] In some embodiments, the feature extraction module of this application may include a feature embedding layer and a feature encoding layer. The feature embedding layer converts the high-dimensional, sparse object information of the sample object into a low-dimensional, dense vector representation to improve the model's generalization ability and computational efficiency. In some embodiments, this application may use Word2Vec for feature embedding, thereby converting the information into vector form for easier model processing.

[0058] This application categorizes object characteristics into discrete-valued variables (also known as type variables) and continuous-valued variables. Discrete-valued variables may include gender, location, education level, hobbies, etc., while continuous-valued variables may include age, income, etc. It should be noted that the data collection and processing in each embodiment of this application should strictly comply with the requirements of relevant national laws and regulations, obtain informed consent or separate consent from the personal information subject, and conduct subsequent data use and processing within the scope of laws, regulations, and the authorization of the personal information subject. Before converting the collected data into object characteristics, this application embodiment may perform full-disk encryption or file-level encryption to prevent unauthorized data acquisition. In some embodiments, object characteristics may only be allowed to be used in a trusted execution environment.

[0059] In this embodiment, for each discrete-valued variable, a vocabulary can be constructed based on the possible values ​​of the discrete-valued variable. Then, the actual discrete-valued variable of the sample object can be queried from the vocabulary and converted into a dense representation. Specifically, in this embodiment, a discrete-valued variable can be initialized as a vector of size [v, d], where v represents the number of possible values ​​of the discrete-valued variable, and d is the feature dimension of the discrete-valued variable (this can be preset manually). For example, gender has possible values ​​of male and female. Assuming d=3, the feature of the discrete-valued variable of gender is [2, 3], such as [[1, 2, 3] and [1, 3, 4]]. When a sample object is male, the gender feature of the sample object is [1, 2, 3], and when a sample object is female, the gender feature of the sample object is [1, 3, 4].

[0060] For continuous value variables, the embodiments of this application can perform linear transformations to obtain a more uniform representation. Finally, all object features are concatenated to obtain a complete feature representation of the object.

[0061] It should be understood that when the sample set also includes product information of virtual products, the discrete and continuous value variables in the product information can be extracted using the same method as the object information of the sample objects. This will not be elaborated further in the embodiments of this application. The feature representations of the virtual products and the sample objects are concatenated to obtain a complete feature set that simultaneously includes the feature representations of both virtual products and objects.

[0062] The feature encoding layer in this embodiment performs multi-layer neural network transformation based on the concatenated feature representation, and the classification module obtains the predicted classification result based on the transformed feature representation.

[0063] Please see Figure 5 The figure illustrates an exemplary schematic diagram of the neural network model provided in this application, which includes a feature embedding layer, a feature encoder layer, and an output layer.

[0064] By inputting object features into the feature embedding layer, the object features are transformed into continuous and dense feature representations. These feature representations can be captured by subsequent layers, such as the feature encoding layer, to capture the semantic relationships between feature representations, so that similar feature representations have similar representations in the vector space.

[0065] The feature encoding layer performs feature extraction (feature transformation) on the feature representation output by the feature embedding layer. It extracts high-level feature information from the feature representation. The feature encoding layer can be viewed as a "compressor," compressing the input data into more compact representations that contain important information from the original data. In some embodiments, the feature encoding layer of this application may employ the feature encoding layer in the Transformer model, which consists of a self-attention layer and a feedforward network, capable of processing sequential data and extracting useful features.

[0066] The output layer can obtain the final prediction and classification results based on the high-level feature information output by the feature encoding layer.

[0067] The model training method in this application obtains multiple sample sets of virtual products. Considering the differences in push scenarios and conversion results corresponding to different push types, the size (i.e., the number of samples) of the sample sets for different push types is not uniform, and there are cases where some sample sets (such as push types with conversion results in niche push scenarios) have significantly fewer samples. Therefore, this application embodiment classifies each conversion branch (push type) independently. Compared with the prediction of click-through rate and conversion rate in related technologies, this application embodiment predicts the push type to which each sample object belongs from the perspective of classification, rather than predicting click-through rate and conversion rate as in related technologies, and it is not simply predicting whether a conversion will occur. Therefore, it does not need to focus only on sample objects with conversion results as in related technologies, thus the requirement for the number of samples in each sample set is not strict, and the application scope of the model prediction results is also enhanced. On the one hand, predicting the type of push notifications for a user helps to obtain more accurate user profiles. By predicting the type of push notifications for a user (including the context and conversion results), we can gain a deeper understanding of the user's interests and needs. On the other hand, predicting the type of push notifications for a user can indirectly provide information about the user's conversion rate. Directly predicting conversion rate and click-through rate cannot predict the type of push notifications for a user. By predicting the type of push notifications for a user, we can optimize the push notification channels for the user, guide the user to browse and select virtual objects more smoothly, and thus increase the possibility of conversion. Furthermore, it can ensure the smoothness and consistency of push notifications, which helps to improve the user's browsing experience and reduce fatigue caused by repetitive push notifications. At the same time, it can also promote the interaction between the user and the virtual system. For example, the push strategy can be adjusted in real time based on the predicted operation results to meet personalized needs. More importantly, it can significantly alleviate the problem of data sparsity and address challenges such as data sparsity and cold start.

[0068] Based on the above embodiments, as an optional embodiment, this application further considers that when the sample set is insufficient, it may lead to error accumulation and inaccurate final prediction. Therefore, this application adopts a method of assigning larger weights to smaller sample sets and smaller weights to larger sample sets, thereby balancing the impact of different sample sets on the model. It should be understood that the scale in this application embodiment refers to the number of samples in the sample set. The more samples in the sample set, the larger the scale of the sample set; the fewer samples in the sample set, the smaller the scale of the sample set.

[0069] Specifically, in this embodiment of the application, the first training loss for each sample set is determined in the following manner: Obtain the first weight of the sample set, wherein the magnitude of the first weight of each sample set is inversely proportional to the number of samples in the corresponding sample set; The first training loss of the sample set is obtained by weighting the sum of the first differences of each object sample in the sample set with the first weight of the sample set.

[0070] This embodiment first sets a first weight for each sample set based on the number of samples in each sample set. The first weight of the sample set satisfies the following condition: the fewer the number of samples in the sample set, the larger the first weight of the sample set. Therefore, since the samples collected for each push scenario where the conversion result is converted are fewer than the samples collected for each push scenario where the conversion result is not converted, the first weight of each sample set where the conversion result is converted is larger than the first weight of each sample set where the conversion result is not converted. This embodiment can reduce the impact of an excessive number of training samples where the conversion result is not converted, thereby effectively avoiding rapid overfitting of the neural network model during training.

[0071] In this embodiment of the application, the loss function for model training assigns greater weight to the sample set with fewer samples—usually the sample set whose result is transformation. This serves two purposes: firstly, it balances the data distribution, preventing the model from potentially learning features of the majority class while neglecting the minority class. It encourages the model to focus more on the smaller sample set, thus balancing the data distribution during training and improving overall performance. Secondly, it introduces prior knowledge. In information recommendation scenarios, the applicant recognizes that the transformed samples and their corresponding loss terms have a greater impact on model performance. Adjusting the weights of these samples or loss terms integrates this prior knowledge into the model training process, guiding the model to learn more predictable feature representations, thereby improving the model's accuracy and generalization ability. Thirdly, it optimizes performance metrics. This embodiment considers the different performance requirements of different scenarios. For example, in recommendation scenarios, click-through rate or conversion rate is often the primary concern. By adjusting the weights of the transformed sample set in the loss function, this embodiment allows the model to focus more on improving the performance metrics we care about. This helps the model better meet user needs in practical applications. Furthermore, it enhances model robustness. By assigning lower weights to loss terms that result in untransformed sample sets, the model can focus less on these terms during training, thus improving its robustness to transformations. Of course, this requires a trade-off between model complexity and the risk of overfitting to ensure the model maintains robustness without overfitting the training data.

[0072] In some embodiments, this application can determine the average number of samples in a sample set based on the total number of samples in all sample sets and the number of push types. Then, for each sample set, the ratio of the average number to the actual number of samples in that sample set is used as the first weight of that sample set. By assigning a weight based on the ratio of the mean to each sample set, this application can better reflect the different contributions of the size of different sample sets in the data, and more accurately reflect the actual situation of the data, thereby providing more accurate and representative data analysis results. Especially in information recommendation scenarios, it can better match the weight with the difficulty of data collection, ensuring the rationality and objectivity of the weight allocation.

[0073] In some embodiments, the first weight of a sample set is determined based on the number of push types, the number of samples in a sample set, and the total number of samples in all sample sets. Specifically, the first weight of the sample set can be calculated using the following formula:

[0074] Where K is the number of push notification types, and N is the total number of samples in the entire sample set. n k This represents the total number of samples in the sample set for push type k.

[0075] Please see Figure 6 The figure illustrates a flowchart of a model training method provided in an embodiment of this application. As shown, this embodiment first obtains multiple sample sets of virtual products. Based on the number of samples in each sample set, the average number of samples in the sample set is determined. For each sample set, a first weight is obtained based on the average number and the number of samples in the sample set, such that the first weight of the sample set is inversely correlated with the size of the sample set. The neural network model trained iteratively outputs the predicted classification result of each sample object in the corresponding sample set. Further, combined with the actual component results of the sample objects, a first difference between the predicted classification result and the actual classification result of each sample object in the sample set is obtained. The first training loss of the sample set is obtained by weighting the sum of the first differences of each object sample in the sample set using the first weight of the sample set. The model parameters are adjusted based on the first training loss of all sample sets.

[0076] Based on the above embodiments, as an optional embodiment, for each sample object, the predicted classification result of the sample object is a first probability distribution, which includes the first probability that the sample object belongs to each push type.

[0077] In other words, the neural network model in this application embodiment, and the classification prediction model obtained after training, have the ability to predict the first probability that an object belongs to each push type. By inputting the object information of the object into the model, the model finally outputs the first probability distribution [p1, p2, ..., pK] of the object, where pK is the first probability that the object belongs to push type K. Given that the classification prediction model in this application embodiment can predict the first probability that an object belongs to each push type, the probability (i.e., conversion rate) of an object's conversion result is the sum of the first probabilities of the object belonging to all conversion results. Figure 4 For example, the probability of an object being converted is the sum of the probabilities that the object belongs to push type 1, 3, 5 and 7 respectively, that is, conversion rate = p1 + p3 + p5 + p7.

[0078] In this embodiment of the application, for each sample object in the sample set, the first difference between the predicted classification result and the actual classification result of the sample object is determined in the following way: A second probability distribution is determined based on the actual sample set to which the sample object belongs. The second probability distribution includes the actual probability that the sample object belongs to each sample set. Based on the difference between the first probability distribution and the second probability distribution corresponding to the sample object, the first difference between the predicted classification result and the actual classification result of the object sample is obtained.

[0079] It is understandable that this application, through an iterative neural network model, can predict the first probability (i.e., the first probability distribution) of a sample object belonging to each push type based on the object information. Furthermore, based on the actual sample set of the sample object, a second probability distribution can be determined. This second probability distribution represents the actual probability of a sample object belonging to each sample set. Figure 4 For example, if a sample object belongs to the sample set of push type 1, then the second probability distribution of the sample object can be represented as [100%, 0, 0, 0, 0, 0, 0, 0].

[0080] As can be seen from the above embodiments, both the first probability distribution and the second probability distribution can be represented by vectors. Each element in the vector is the actual probability or the first probability that a sample object belongs to a corresponding sample set. In some embodiments, the difference between the first probability distribution and the second probability distribution corresponding to a sample object can be calculated based on the product of the first probability distribution and the second probability distribution. For example, if the first probability distribution of a sample object is [60%, 0, 40%, 0, 0, 0, 0, 0] and the second probability distribution is [100%, 0, 0, 0, 0, 0, 0, 0], multiplying the two vectors yields 0.6. Therefore, the first difference between the predicted classification result and the actual classification result of the sample object can be expressed as 1 - 0.6 = 0.4.

[0081] In some embodiments, the first training loss for a sample set can be calculated using the following formula: L k =

[0082] in, L k Indicates push type k The first training loss of the sample set, n k w represents the number of samples in the sample set. k This represents the first weight of the sample set. p i Let y represent the first probability distribution of sample i in the sample set. i Let i represent the second probability distribution of sample i. In this embodiment, for each sample in a sample set, the first difference between the predicted classification result and the actual classification result is obtained based on the first and second probability distributions of that sample. Then, the first differences of all samples in the sample set are summed to obtain the total first difference. The total first difference is then weighted by the weights of the sample set to obtain the first training loss of the sample set. It is understood that calculating the total loss of iterative training also involves the step of summing the first training losses of all sample sets.

[0083] Based on the above embodiments, as an optional embodiment, for each push scenario, the plurality of sample sets include a positive sample set and a negative sample set corresponding to the push scenario, wherein the conversion result corresponding to the positive sample set is a conversion, and the conversion result corresponding to the negative sample set is no conversion. This application requires, for each push scenario, to statistically analyze the positive and negative sample sets corresponding to that push scenario, thereby determining the conversion relationship within a push scenario based on the positive and negative sample sets, enabling the model to fully learn the boundary between whether and not a conversion occurs within each push scenario.

[0084] This application constructs multiple sample pairs, where the sample sets to which the two sample objects in each sample pair belong correspond to the same push context. That is, there are three possibilities for the sample sets to which the two sample objects in a sample pair belong: both belong to a positive sample set, both belong to a negative sample set, or one belongs to a positive sample set and the other to a negative sample set. This application categorizes these three possibilities into two comparison results: one is that the transformation results corresponding to the two sample objects are the same, i.e., they come from the same sample set (regardless of whether it is a positive or negative sample set); the other is that the transformation results corresponding to the two sample objects are different, i.e., one sample object comes from a positive sample set and the other comes from a negative sample set.

[0085] It should be noted that the reason why the sample pairs in this application embodiment are constructed for the same push context rather than the same push channel is that there are also cases of conversion and non-conversion under the same operation result. If the sample pairs are constructed for the same push channel, the types of the constructed sample pairs are more complex, and the comparability of some sample pairs (such as the conversion brought about by the operation and the non-conversion brought about by the non-operation) is less valuable. However, constructing sample pairs for the same push context allows the model to understand the boundary of conversion more accurately.

[0086] The total loss of iterative training in this embodiment of the application also includes a second training loss for each sample pair. The second training loss represents the second difference between the predicted comparison result and the actual comparison result of the corresponding sample pair output by the iteratively trained neural network model. The actual comparison result refers to whether the transformation results corresponding to the two sample objects in the sample pair are the same.

[0087] In some embodiments, the prediction comparison results of sample pairs can be directly predicted by the iterative neural network model. That is, the iterative neural network model takes the object information of the two sample objects in the sample pair as input and outputs the prediction comparison results. Considering that in the model application stage, it is usually only necessary to predict the push type of the object to determine whether the object belongs to the object with conversion value, in other embodiments, the iterative neural network model of this application embodiment can also obtain the prediction comparison results of sample pairs in the following way: For each sample object in a sample pair, based on the first probability distribution of that sample object, the transformation result corresponding to the highest probability in the first probability distribution is taken as the target transformation result of that sample object. If the target transformation results of two sample pairs are the same, the prediction comparison result is that the transformation results corresponding to the two sample objects in the sample pair are the same; if the target transformation results of two sample pairs are different, the prediction comparison result is that the transformation results corresponding to the two sample objects in the sample pair are different. Figure 4For example, if the first probability distribution of sample object 1 in a sample pair is [60%.0,40%,0,0,0,0,0], and the first probability distribution of sample object 2 is [0%.60%,0,40%,0,0,0,0], it can be seen that the highest probability of sample object 1 corresponds to push type 1, and the conversion result of push type 1 is conversion. The highest probability of sample object 2 corresponds to push type 2, and the conversion result of push type 2 is no conversion. Therefore, the prediction comparison result is that the conversion results corresponding to the two sample objects are not the same.

[0088] This application's embodiments consider two characteristics of conversion within the same channel: channel consistency and conversion boundaries. Channel consistency refers to the fact that samples within the same push channel often have similar push methods, content styles, and target audiences. This makes it easier for the model to identify conversion patterns within the channel. Conversion boundaries refer to the fact that within a push channel, different object information may lead to different conversion results. By learning these differences, the model can gradually clarify conversion boundaries, i.e., which behaviors and features are more likely to lead to conversion and which are less likely. By obtaining sample pairs from a sample set of the same push context, the model is trained to identify the similarities and differences between different samples, as well as the common features and conversion rules between the two samples in a sample pair, which can better adapt to the conversion prediction needs under different push contexts.

[0089] Please see Figure 7A The figure illustrates a schematic diagram of the model training logic provided in another embodiment of this application. As shown, the neural network model processes each input sample set through a feature embedding layer, a feature encoding layer, and an output layer to output the predicted classification result of each sample object. On the one hand, adopting the idea of ​​full-channel classification, for each sample set, the first weight of the sample set is used to weight the sum of the first differences between the predicted classification result and the actual classification result of each sample object in the sample set to obtain the first training loss of the sample set. On the other hand, adopting the method of internal comparison within the push context, multiple sample pairs are constructed. The sample sets to which the two sample objects in each sample pair belong correspond to the same push context. By predicting the prediction comparison result of the sample pair through the model, the second difference between the prediction comparison result and the actual comparison result of the sample pair is obtained to obtain the second training loss. The first training loss of all samples and the second training loss of all sample pairs are summarized to obtain the total loss of iterative training. The parameters of the neural network model are adjusted based on the total loss.

[0090] Please see Figure 7B The figure illustrates a flowchart of a model training method provided in another embodiment of this application, as shown in the figure, which includes: S201. Obtain multiple sample sets of virtual products. For each push scenario, the multiple sample sets include a positive sample set and a negative sample set corresponding to the push scenario. S202. Construct multiple sample pairs, where the sample sets to which the two sample objects in each sample pair belong correspond to the same push context. S203. For each sample object, a first probability distribution of the sample object is obtained through the iterative neural network model. The first probability distribution includes the first probability that the sample object belongs to each push type. A second probability distribution is determined according to the sample set to which the sample object actually belongs. The second probability distribution includes the actual probability that the sample object belongs to each sample set. S204. Based on the difference between the first probability distribution and the second probability distribution corresponding to the sample object, obtain the first difference between the predicted classification result and the actual classification result of the sample object; S205. For each sample set, the first difference sum of each object sample in the sample set is weighted using the first weight of the sample set to obtain the first training loss of the sample set. S206. For each sample pair, the predicted comparison result of the corresponding sample pair is output by the neural network model trained iteratively, and the second difference between the predicted comparison result and the actual comparison result is determined. Based on the second difference of each sample pair, the second training loss of the sample pair is obtained. S207. Summate the first training loss for each sample set and the second training loss for each sample pair to obtain the total loss for iterative training. Iteratively train the initial neural network model based on the total loss.

[0091] Based on the above embodiments, as an optional embodiment, the prediction comparison result of the sample pair is the prediction probability. The prediction probability in this application embodiment is the probability that the two object samples in the sample pair correspond to the same transformation result.

[0092] The predicted probability of a sample pair can be obtained in the following ways according to the embodiments of this application: For each sample in a sample pair, since the push context of the sample pair has been determined in advance, the probability of the sample being converted in the push context can be determined from the first probability distribution of the sample as probability 1, and the probability of the sample not being converted in the push context can be determined as probability 2. For a sample pair 1, the probability that both samples will be transformed is called the joint probability, which is the probability that both events will occur simultaneously. In this embodiment, these two events are independent events, so the probability that they will occur simultaneously, P(event A and event B), is P(event A) × P(event B). Therefore, by multiplying the probabilities 1 of the two samples, we can obtain the probability that both samples will be transformed (probability 3). Similarly, we can obtain the probability that both samples will not be transformed – the result of multiplying the probabilities 2 of the two samples (probability 4). Therefore, the predicted probability of the sample pair is the sum of probabilities 3 and 4.

[0093] For example, if we determine from the first probability distribution of each of the two sample objects in the sample pair that the probability of sample object 1 being converted in push scenario 1 is 60% and the probability of not being converted in push scenario 1 is 20%, and the probability of sample object 2 being converted in push scenario 1 is 0% and the probability of not being converted in push scenario 1 is 60%, then the predicted probability of this sample pair is: 60%×0%+20%×60%=12%.

[0094] For each sample pair, the second difference between the predicted comparison result and the actual comparison result of the sample pair is determined in the following manner in the embodiments of this application: If the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to the same transformation result, then the second difference between the predicted comparison result and the actual comparison result of the sample pair is obtained based on the difference between the preset value and the predicted probability corresponding to the sample pair. If the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to different transformation results, then based on the prediction probability corresponding to the sample pair, the second difference between the predicted comparison result and the actual comparison result of the sample pair is obtained.

[0095] It should be understood that the predicted probability in this application embodiment refers to the probability that two object samples in a sample pair correspond to the same transformation result. Therefore, if the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to the same transformation result, then the predicted probability can be understood as the probability of correct prediction. Therefore, the second difference between the predicted comparison result and the actual comparison result of the sample pair is described based on the difference between the preset value and the predicted probability. This application embodiment does not limit the size of the preset value. Considering that the predicted probability is a percentage between 0 and 1, the preset value can be set to 100%. For example, if the predicted probability of a sample pair is 80%, and the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to the same transformation result, then the second difference can be expressed as 100%-80%=20%.

[0096] If the actual comparison result of a sample pair is that the two sample objects in the sample pair correspond to different transformation results, then the prediction probability can be understood as the probability of prediction error. Therefore, the prediction probability itself can describe the second difference between the predicted comparison result and the actual comparison result of the sample pair. For example, if the prediction probability of a sample pair is 80%, and the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to different transformation results, then the second difference can be expressed as 80%.

[0097] In some embodiments of this application, the second difference can be calculated using the following formula for the sample pair: L m =y m log a (1-p m )+(1-y m log a (p m ) in, L m p represents the second difference between sample pairs m. m This represents the predicted probability of a sample for m, where a is greater than 1.

[0098] When the actual comparison result of sample pair m is that the transformation results corresponding to the two sample objects in the sample pair are the same, y m The first difference is 1, and the second difference is log. a (1-p m ), p m The larger the value of y, the smaller the value of the second difference. When the actual comparison result of sample pair m is that the transformation results of the two sample objects in the sample pair are different, y m The first difference is 0, and the second difference is log. a (p m ), p m The smaller the value, the smaller the value of the second difference.

[0099] In some embodiments of this application, the second difference can be calculated using the following formula for the sample pair: L m =-y m log a (p m )-(1-y m log a (1-p m ) in, L mThis represents the second difference between sample pairs m. When the actual comparison result of sample pair m is that the transformation results corresponding to the two sample objects in the sample pair are the same, y... m The value is 1, when the actual comparison result of sample pair m is that the transformation results corresponding to the two sample objects in sample pair m are different. m p is 0; m This represents the predicted probability of a sample for m, where a is greater than 1.

[0100] Since a > 1, therefore log a (x) is monotonically increasing within its domain. As can be seen from the above formula, when the actual comparison result of sample pair m is that the transformation results corresponding to the two sample objects in the sample pair are the same, the second difference of sample pair m is -log a (p m ), is a monotonically decreasing function, when p m The larger the value, the smaller the second difference. When the actual comparison result of sample pair m is that the transformation results corresponding to the two sample objects in the sample pair are different, the second difference of sample pair m is -log a (1-p m ), is a monotonically increasing function, when p m The larger the value, the greater the second difference. The function for calculating the second difference constructed in the embodiments of this application is also a function that will eventually converge.

[0101] Based on the above embodiments, as an optional embodiment, for any sample pair, the second training loss of the sample pair is determined in the following way: Based on the actual comparison results of the sample pairs, obtain the second weight of the sample pairs; The second difference of the sample pair is weighted based on the second weight of the sample pair to obtain the second training loss of the sample pair; In this embodiment of the application, if the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to the same transformation result, then the second weight is the first value; If the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to different transformation results, then the second weight is the second value, and the first value is different from the second value.

[0102] In this application, corresponding weights are set for sample pairs with different actual comparison results. In some embodiments, the first value can be greater than the second value, so that the model will pay more attention to the object information of sample pairs from the same transformation result.

[0103] The total loss of iterative training can be calculated using the following formula in the embodiments of this application. L total : L total= α L constrast + L class L class =

[0104] L constrast =

[0105] in, L class The sum of the first training losses for all sample sets. N The number of samples in a sample set. k The number of push types, w i The first weight of the sample set for push type i, y ij Let i be the second probability distribution of object j in the sample set of push type i. p ij Let i be the first probability distribution of object j in the sample set of push type i. L constrast The sum of the second training losses for all sample pairs. s e The second weight of sample pair e, y e This represents the actual comparison results of the sample pairs, where m is the total number of sample pairs. p e Let α be the predicted probability of sample pair e, and α be the third weight.

[0106] Please see Figure 8 The figure illustrates, by way of example, a flowchart of a model training method provided in another embodiment of this application, as shown in the figure, including: Multiple sample sets of virtual products are obtained. On the one hand, for each sample set, a first probability distribution of the sample object is obtained through an iteratively trained neural network model. A second probability distribution is determined based on the actual sample set to which the sample object belongs. A first difference between the predicted classification result and the actual classification result of the sample object is obtained based on the difference between the first and second probability distributions. A first weight of the sample set is determined based on the number of samples in the sample set and the average number of samples in each sample set. The first weight of the sample set is used to weight the sum of the first differences of each object sample in the sample set to obtain the first training loss of the sample set. On the other hand, multiple sample pairs are constructed, with each sample pair consisting of two sample pairs... The sample sets to which each image belongs all correspond to the same push context. Based on the actual comparison results of the sample pairs, the second weight of the sample pairs is obtained. The predicted comparison results of the sample pairs are predicted by the neural network model in the iteration, and the second difference between the predicted comparison results and the actual comparison results of the corresponding sample pairs is calculated. The second difference of the sample pairs is weighted based on the second weight of the sample pairs to obtain the second training loss of the sample pairs. Based on the first training loss of all sample sets and the second training loss of all sample pairs, the total loss of the iterative training is obtained. The model parameters of the neural network model in the iterative training are adjusted according to the total loss of the iterative training. When the number of iterations is greater than a preset value and the total loss converges, it is determined that the iterative training stops. The neural network model at this time is used as the classification prediction model.

[0107] This application also provides a method for pushing virtual products, such as... Figure 9 As shown, the method includes: S401, Obtain object information of the object; S402. Input the object information into the classification prediction model of the virtual product, and obtain the predicted classification result of the object output by the classification prediction model; S403. Based on the predicted classification result of the object, determine the push strategy for pushing the target product to the push object.

[0108] The classification prediction model in this application embodiment is generated by training an initial neural network model using each of the above-described model training methods. The classification prediction model has the ability to take object information as input and output the classification prediction result for that object.

[0109] As can be seen from the above embodiments, the classification prediction result of this application embodiment is the correspondence between the predicted object and each push type. It can be understood that if a predicted object has a correspondence with a certain push type, it means that the classification prediction model believes that the object will produce a conversion result of that push type in the push context of that push type. Therefore, the push strategy of this application embodiment can indicate whether to push virtual products to the object, and the push channel used when pushing. Figure 4 For example, if the predicted classification result indicates that the object corresponds to push type 1, it means that the model believes that if a virtual product is pushed to the object through a social media channel, the object will click on the push information and the virtual product will be converted. Therefore, the push strategy can be to push virtual products to the object through an SMS push channel. Similarly, if the predicted classification result indicates that the object corresponds to push type 2, it means that the model believes that if a virtual product is pushed to the object through a social media channel, the object will not click on the push information.

[0110] Based on the above embodiments, as an optional embodiment, the predicted classification result of the sample object is a first probability distribution, and correspondingly, the push strategy further includes: The degree of intent of the object towards the virtual product; The intention degree is the sum of the probabilities that the object belongs to each positive sample set.

[0111] In this embodiment of the application, the predicted classification result of the sample object is represented by the probability that the object belongs to each sample set (push type). Therefore, by accumulating the probability that the object belongs to each positive sample set, the conversion rate of the object can be obtained, and it can also be used as the object's intention to virtual products.

[0112] In some embodiments, this application can also determine whether to push virtual products to an object based on intent. For example, when the intent is higher than a preset threshold, it is determined to push virtual products to the object. Accordingly, this application can determine the push channel used to push virtual products to the object in the following ways: Based on the order of the probability of conversion for each push channel from highest to lowest, multiple push channels are selected until the sum of the probabilities of conversion for each selected push channel is not less than a preset threshold. Then, information is pushed to the target through the selected push channels.

[0113] by Figure 4For example, if the probability of an object being pushed to push type 1, 3, 5 and 7 is predicted to be 23%, 10%, 25% and 11% respectively by the classification prediction model, it can be seen that the conversion rate (hereinafter referred to as conversion rate) is 33% for social media push channels and 36% for SMS push channels. If the preset threshold is 50%, since the conversion rate of SMS push channels does not reach 50%, social media push channels need to be added to ensure that the conversion rate to the object meets the preset threshold.

[0114] In some embodiments, when the advertiser of the virtual product has limited resources, the resources required for each push channel can be predetermined. Then, at least one push channel can be selected sequentially to push to the target audience in order of conversion rate from high to low, until the total resources used by the selected push channels reach the advertiser's preset resource threshold.

[0115] In some embodiments, when there are multiple objects, after obtaining the intention of each object to the virtual product, the embodiments of this application can sort them according to the order of intention from high to low. Furthermore, virtual products can be pushed to a preset number of objects that are ranked first.

[0116] Please see Figure 10A The figure illustrates an example of the operation interface for service providers of virtual products to obtain intention rankings provided in this application embodiment. As shown in the figure, service providers can input the object identifier of the object to be rated in the interface. The object identifier can be the encrypted mobile phone number or the encrypted unique identifier of the object, etc. After the service provider clicks the input completion control, the interface will output the sorting result of the object's intention. As can be seen from the figure, the intention decreases from top to bottom.

[0117] Please see Figure 10BThe illustration shows a schematic diagram of the process by which a service provider of a virtual product obtains an intention ranking according to an embodiment of this application. As shown in the figure, the service provider of the virtual product inputs a list of objects to be ranked in the application (APP). The list of objects includes object identifiers of multiple objects. The APP sends the object list to the server. The server obtains the object features of each object in the object list from the feature library. It should be understood that the feature library can be pre-built in this embodiment of the application. By desensitizing the object information of each object and then extracting features, the object features of each object are obtained and stored in the feature library. The server inputs the object features of each object into the classification prediction model trained based on the embodiment of this application. By predicting the classification result of each object output by the classification model, that is, the first probability distribution, the intention of each object is obtained. The server returns the intention of each object to the APP. The server browses the intention of each object through the APP to determine which objects to push virtual products to.

[0118] This application embodiment uses a test set containing object information of 1 million objects. The average positive sample rate in this test set is 5%, meaning that only 5% of the sample objects have a conversion result. Using the model training method provided in this application embodiment, a classification prediction model is trained based on the test set. Using related technologies, a conversion classification model (i.e., directly predicting the conversion result of the object) and an ESMM model are trained based on the test set.

[0119] The overall conversion prediction effect was evaluated using the area under the probability curve (AUC), and the results are shown in Table 1.

[0120]

[0121] Table 1 Overall Conversion Prediction Results As can be seen from Table 1, the embodiments of this application have a significant improvement in prediction results compared to traditional methods when facing a small number of positive samples.

[0122] This application provides a model training device, such as... Figure 11 As shown, the model training device may include: a sample acquisition module 110 and a training module 120, wherein, The sample acquisition module 110 obtains multiple sample sets of virtual products. Each sample set corresponds to a push type, and each push type represents a conversion result under a push scenario. The conversion result is either conversion or no conversion. The push scenario includes the push channel. The sample set includes object information of multiple sample objects. The training module 120 applies iterative training to an initial neural network model based on the multiple sample sets, and uses the neural network model that meets the stopping condition of iterative training as the classification prediction model for the virtual product. The total loss of the iterative training includes the first training loss for each sample set; For each of the sample sets, the first training loss represents the first difference between the predicted classification result and the actual classification result of each sample object in the corresponding sample set output by the iteratively trained neural network model, wherein the classification result refers to the correspondence between the corresponding sample object and each push type.

[0123] The apparatus in this application embodiment can execute the model training method provided in this application embodiment. The implementation principle is similar. The actions performed by each module in the apparatus of each embodiment of this application correspond to the steps in the model training method of each embodiment of this application. For detailed functional descriptions of each module of the apparatus, please refer to the descriptions in the corresponding methods shown above, which will not be repeated here.

[0124] As an optional implementation, for each sample set, the first training loss of the sample set is determined in the following manner: Obtain the first weight of the sample set, wherein the magnitude of the first weight of each sample set is inversely proportional to the number of samples in the corresponding sample set; The first training loss of the sample set is obtained by weighting the sum of the first differences of each object sample in the sample set with the first weight of the sample set.

[0125] As an optional implementation, for each sample object, the predicted classification result of the sample object is a first probability distribution, which includes the first probability that the sample object belongs to each push type. For each sample object in the sample set, the first difference between the predicted classification result and the actual classification result of the sample object is determined by the following method: A second probability distribution is determined based on the actual sample set to which the sample object belongs. The second probability distribution includes the actual probability that the sample object belongs to each sample set. Based on the difference between the first probability distribution and the second probability distribution corresponding to the sample object, the first difference between the predicted classification result and the actual classification result of the sample object is obtained.

[0126] As an optional implementation, for each push scenario, the plurality of sample sets include a positive sample set and a negative sample set corresponding to the push scenario, wherein the conversion result corresponding to the positive sample set is a conversion, and the conversion result corresponding to the negative sample set is no conversion; The total loss of the iterative training also includes a second training loss for each sample pair, where the sample sets to which the two sample objects in each sample pair belong correspond to the same push context. Wherein, the second training loss represents the second difference between the predicted comparison result and the actual comparison result of the corresponding sample pair output by the iteratively trained neural network model, and the actual comparison result refers to whether the transformation results corresponding to the two sample objects in the sample pair are the same.

[0127] As an optional implementation, the prediction comparison result of the sample pair is the prediction probability, which is the probability that the two object samples in the sample pair correspond to the same transformation result. For each sample pair, the second difference between the predicted comparison result and the actual comparison result of the sample pair is determined in the following way: If the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to the same transformation result, then the second difference between the predicted comparison result and the actual comparison result of the sample pair is obtained based on the difference between the preset value and the predicted probability corresponding to the sample pair. If the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to different transformation results, then based on the prediction probability corresponding to the sample pair, the second difference between the predicted comparison result and the actual comparison result of the sample pair is obtained.

[0128] As an optional implementation, for any pair of samples, the second training loss of the sample pair is determined in the following manner: Based on the actual comparison results of the sample pairs, obtain the second weight of the sample pairs; The second difference of the sample pair is weighted based on the second weight of the sample pair to obtain the second training loss of the sample pair; Wherein, if the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to the same transformation result, then the second weight is the first value; If the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to different transformation results, then the second weight is the second value, and the first value is different from the second value.

[0129] As an optional implementation, the push scenario also includes the result of the sample object's operation on the virtual product, wherein the operation result is either an operation or no operation.

[0130] This application provides a virtual product push device, such as... Figure 12 As shown, the model training device may include: an information acquisition module 210, a prediction module 220, and a policy generation module 230, wherein, Information acquisition module 210 is used to obtain object information of an object; Prediction module 220 is used to input the object information into the classification prediction model of the virtual product and obtain the predicted classification result of the object output by the classification prediction model; The strategy generation module 230 is used to determine a push strategy for pushing the target product to the push object based on the predicted classification result of the object; The classification prediction model is trained according to the method provided in the first aspect, and the prediction classification result refers to the correspondence between the predicted object and each push type. The apparatus in this application embodiment can execute the virtual product push method provided in this application embodiment. The implementation principle is similar. The actions performed by each module in the apparatus of each embodiment of this application correspond to the steps in the virtual product push method of each embodiment of this application. For detailed functional descriptions of each module of the apparatus, please refer to the descriptions in the corresponding methods shown above, which will not be repeated here.

[0131] As an optional implementation method, the push strategy includes at least one of the following: The determination result is used to indicate whether to push the virtual product to the object; The push channel used when the judgment result indicates that a virtual product is pushed to the object.

[0132] As an optional implementation, the predicted classification result of the object is a first probability distribution; The push strategy also includes: The object's degree of interest in the virtual product; The intention degree is the sum of the probabilities that the object belongs to each positive sample set.

[0133] This application provides an electronic device, including a memory, a processor, and a computer program stored in the memory. The processor executes the computer program to implement at least one of the steps of a model training method and a virtual product push method. Compared with related technologies, it can achieve the following: By obtaining multiple sample sets of virtual products, considering that there are differences in the push context and conversion results corresponding to different push types, the size (i.e., the number of samples) of the sample sets of different push types is not uniform, and there are cases where some sample sets (e.g., push types with conversion results in niche push contexts) have significantly fewer samples. Therefore, this application embodiment classifies each conversion branch (push type) independently. The total loss of iterative training includes the first training loss of each sample set. For each sample set, the first training loss represents the first difference between the predicted classification result and the actual classification result of each sample object in the corresponding sample set output by the iteratively trained neural network model. The classification result refers to the correspondence between the corresponding sample object and each push type. Compared with the prediction of click-through rate and conversion rate in related technologies, this application embodiment predicts the push type to which each sample object belongs from the perspective of classification, and no longer... Predicting click-through rates and conversion rates like other related technologies is not simply about predicting whether a conversion will occur. Therefore, it doesn't need to focus solely on samples that resulted in conversions, as other technologies do. This reduces the stringent requirements on the number of samples in each set and expands the application scenarios of the model's predictions. On one hand, it helps obtain more accurate user profiles. By predicting the type of push notifications for an object (including the push context and conversion result), a deeper understanding of the object's interests and needs can be achieved. On the other hand, predicting the type of push notifications for an object can indirectly provide information about the object's conversion rate, whereas directly predicting conversion rates and click-through rates cannot. By predicting the type of push notifications for an object, the push channels can be optimized, guiding the object to browse and select virtual objects more smoothly, thereby increasing the likelihood of conversion. Furthermore, it can ensure the smoothness and consistency of push notifications, helping to improve the object's browsing experience and reduce fatigue caused by repetitive push notifications. It can also promote interaction between the object and the virtual system. For example, push strategies can be adjusted in real time based on predicted operation results to meet personalized needs. More importantly, it can significantly alleviate the problem of data sparsity and address challenges such as data sparsity and cold start.

[0134] In one alternative embodiment, an electronic device is provided, such as Figure 13 As shown, Figure 13The illustrated electronic device 4000 includes a processor 4001 and a memory 4003. The processor 4001 and the memory 4003 are connected, for example, via a bus 4002. Optionally, the electronic device 4000 may further include a transceiver 4004, which can be used for data interaction between the electronic device and other electronic devices, such as sending and / or receiving data. It should be noted that in practical applications, the transceiver 4004 is not limited to one type, and the structure of the electronic device 4000 does not constitute a limitation on the embodiments of this application.

[0135] Processor 4001 may be a CPU (Central Processing Unit), a general-purpose processor, a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. It can implement or execute the various exemplary logic blocks, modules, and circuits described in conjunction with the disclosure of this application. Processor 4001 may also be a combination that implements computational functions, such as including one or more microprocessor combinations, a combination of a DSP and a microprocessor, etc.

[0136] Bus 4002 may include a pathway for transmitting information between the aforementioned components. Bus 4002 may be a PCI (Peripheral Component Interconnect) bus or an EISA (Extended Industry Standard Architecture) bus, etc. Bus 4002 can be divided into address bus, data bus, control bus, etc. For ease of representation, bus 4002 is represented by only one thick line in the figure, but this does not indicate that there is only one bus or one type of bus.

[0137] The memory 4003 may be ROM (Read Only Memory) or other types of static storage devices capable of storing static information and instructions, RAM (Random Access Memory) or other types of dynamic storage devices capable of storing information and instructions, or EEPROM (Electrically Erasable Programmable Read Only Memory), CD-ROM (Compact Disc Read Only Memory) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital universal optical discs, Blu-ray discs, etc.), magnetic disk storage media, other magnetic storage devices, or any other medium capable of carrying or storing computer programs and capable of being read by a computer, without limitation herein.

[0138] The memory 4003 stores computer programs that execute embodiments of this application, and its execution is controlled by the processor 4001. The processor 4001 executes the computer programs stored in the memory 4003 to implement the steps shown in the foregoing method embodiments.

[0139] This application provides a computer-readable storage medium storing a computer program. When the computer program is executed by a processor, it can implement the steps and corresponding content of the aforementioned method embodiments.

[0140] This application also provides a computer program product, including a computer program that, when executed by a processor, can implement the steps and corresponding content of the aforementioned method embodiments.

[0141] The terms "first," "second," "third," "fourth," "1," "2," etc. (if present) in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in a sequence other than that shown in the illustrations or text descriptions.

[0142] It should be understood that although each operation step is indicated by arrows in the flowcharts of the embodiments of this application, the order of implementation of these steps is not limited to the order indicated by the arrows. Unless explicitly stated herein, in some implementation scenarios of the embodiments of this application, the implementation steps in each flowchart can be executed in other orders as required. Furthermore, some or all of the steps in each flowchart may include multiple sub-steps or multiple stages based on the actual implementation scenario. Some or all of these sub-steps or stages can be executed at the same time, and each sub-step or stage can also be executed at different times. In scenarios where the execution times are different, the execution order of these sub-steps or stages can be flexibly configured according to requirements, and the embodiments of this application do not limit this.

[0143] The above description is only an optional implementation method for some implementation scenarios of this application. It should be noted that for those skilled in the art, other similar implementation methods based on the technical concept of this application without departing from the technical concept of this application also fall within the protection scope of the embodiments of this application.

Claims

1. A model training method, characterized in that, include: Multiple sample sets of virtual products are obtained, each sample set corresponds to a push type, each push type represents a conversion result under a push context, the conversion result is conversion or no conversion, the push context includes push channels; the sample set includes object information of multiple sample objects; The initial neural network model is iteratively trained based on the multiple sample sets, and the neural network model that meets the stopping condition of iterative training is used as the classification prediction model of the virtual product. The total loss of the iterative training includes the first training loss for each of the sample sets; For each of the sample sets, the first training loss represents the first difference between the predicted classification result and the actual classification result of each sample object in the corresponding sample set output by the iteratively trained neural network model, wherein the classification result refers to the correspondence between the corresponding sample object and each push type.

2. The method according to claim 1, characterized in that, For each sample set, the first training loss for that sample set is determined as follows: Obtain the first weight of the sample set, wherein the magnitude of the first weight of the sample set is inversely proportional to the number of samples in the sample set; The first training loss of the sample set is obtained by weighting the sum of the first differences of each object sample in the sample set with the first weight of the sample set.

3. The method according to claim 1 or 2, characterized in that, For each sample object, the predicted classification result of the sample object is a first probability distribution, which includes the first probability that the sample object belongs to each push type. For each sample object in the sample set, the first difference between the predicted classification result and the actual classification result of the sample object is determined by the following method: A second probability distribution is determined based on the actual sample set to which the sample object belongs. The second probability distribution includes the actual probability that the sample object belongs to each sample set. Based on the difference between the first probability distribution and the second probability distribution corresponding to the sample object, the first difference between the predicted classification result and the actual classification result of the sample object is obtained.

4. The method according to any one of claims 1-3, characterized in that, For each push scenario, the plurality of sample sets include a positive sample set and a negative sample set corresponding to the push scenario, wherein the conversion result corresponding to the positive sample set is a conversion, and the conversion result corresponding to the negative sample set is no conversion. The total loss of the iterative training also includes a second training loss for each sample pair, where the sample sets to which the two sample objects in each sample pair belong correspond to the same push context. Wherein, the second training loss represents the second difference between the predicted comparison result and the actual comparison result of the corresponding sample pair output by the iteratively trained neural network model, and the actual comparison result refers to whether the transformation results corresponding to the two sample objects in the sample pair are the same.

5. The method according to claim 4, characterized in that, The prediction comparison result of the sample pair is the prediction probability, which is the probability that the two object samples in the sample pair correspond to the same transformation result; For each sample pair, the second difference between the predicted comparison result and the actual comparison result of the sample pair is determined in the following way: If the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to the same transformation result, then the second difference between the predicted comparison result and the actual comparison result of the sample pair is obtained based on the difference between the preset value and the predicted probability corresponding to the sample pair. If the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to different transformation results, then based on the prediction probability corresponding to the sample pair, the second difference between the predicted comparison result and the actual comparison result of the sample pair is obtained.

6. The method according to claim 4 or 5, characterized in that, For any pair of samples, the second training loss for that pair is determined as follows: Based on the actual comparison results of the sample pairs, obtain the second weight of the sample pairs; The second difference of the sample pair is weighted based on the second weight of the sample pair to obtain the second training loss of the sample pair; Wherein, if the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to the same transformation result, then the second weight is the first value; If the actual comparison result of the sample pair is that the two sample objects in the sample pair correspond to different transformation results, then the second weight is the second value, and the first value is different from the second value.

7. The method according to any one of claims 1-6, characterized in that, The push scenario also includes the result of the sample object's operation on the virtual product, where the result is either an operation or no operation.

8. A method for pushing virtual products, characterized in that, include: Obtain object information of an object; The object information is input into the classification prediction model of the virtual product to obtain the predicted classification result of the object output by the classification prediction model; Based on the predicted classification results of the object, a push strategy for pushing the target product to the push object is determined; The classification prediction model is trained by the method according to any one of claims 1-7, and the prediction classification result refers to the correspondence between the predicted object and each push type.

9. The method according to claim 8, characterized in that, The push strategy includes at least one of the following: The determination result is used to indicate whether to push the virtual product to the object; The push channel used when the judgment result indicates that a virtual product is pushed to the object.

10. The method according to claim 9, characterized in that, The predicted classification result of the object is the first probability distribution; The push strategy also includes: The degree of intent of the object towards the virtual product; The intention degree is the sum of the probabilities that the object belongs to each positive sample set.

11. A model training device, characterized in that, include: The sample acquisition module obtains multiple sample sets of virtual products. Each sample set corresponds to a push type, and each push type represents a conversion result under a push context. The conversion result is either converted or not converted. The push context includes the push channel. The sample set includes object information of multiple sample objects. The training module iteratively trains the initial neural network model based on the multiple sample sets, and uses the neural network model that meets the stopping condition of iterative training as the classification prediction model of the virtual product. The total loss of the iterative training includes the first training loss for each of the sample sets; For each of the sample sets, the first training loss represents the first difference between the predicted classification result and the actual classification result of each sample object in the corresponding sample set output by the iteratively trained neural network model, wherein the classification result refers to the correspondence between the corresponding sample object and each push type.

12. A device for pushing virtual products, characterized in that, include: The information acquisition module is used to obtain object information of an object; The prediction module is used to input the object information into the classification prediction model of the virtual product and obtain the predicted classification result of the object output by the classification prediction model; The strategy generation module is used to determine a push strategy for pushing the target product to the push object based on the predicted classification result of the object. The classification prediction model is trained by the method according to any one of claims 1-7, and the prediction classification result refers to the correspondence between the predicted object and each push type.

13. An electronic device comprising a memory, a processor, and a computer program stored in the memory, characterized in that, The processor executes the computer program to implement the method according to any one of claims 1-10.

14. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the method described in any one of claims 1-10.

15. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the method described in any one of claims 1-10.