Model training method and related apparatus
Patent Information
- Application Number
- PCT/CN2025/141057
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2025-02-26
- Filing Date
- 2025-12-09
- Publication Date
- 2026-09-03
Smart Images

Figure CN2025141057_03092026_PF_FP_ABST
Abstract
Description
A model training method and related apparatus
[0001] This application claims priority to Chinese Patent Application No. 202510232688.4, filed with the State Intellectual Property Office of China on February 26, 2025, entitled “A Model Training Method and Related Apparatus”, the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of artificial intelligence (AI), and more particularly to a model training method and related apparatus. Background Technology
[0003] Artificial intelligence (AI) is the theory, methods, technology, and application systems that use digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use that knowledge to achieve optimal results. In other words, AI is a branch of computer science that attempts to understand the essence of intelligence and produce a new kind of intelligent machine that can react in a way similar to human intelligence. AI studies the design principles and implementation methods of various intelligent machines, enabling them to possess the functions of perception, reasoning, and decision-making.
[0004] In the advertising monetization process of recommendation systems, conversion rate prediction plays a crucial role. However, the data sparsity problem caused by small-scale scenarios makes building a positive feedback loop between data and the recommendation model particularly difficult. How to train models in sparse scenarios is a pressing issue that needs to be addressed. Summary of the Invention
[0005] In a first aspect, embodiments of this application provide a model training method, including:
[0006] Determine the first request for the first advertisement and the first tag of the first request from the user request log. The first tag is used to indicate whether the first request has a conversion behavior or not on the first advertisement. Input the first request into the recommendation model to obtain the first output result. The first output result is used to indicate the predicted conversion result of the first request on the first advertisement, including, for example, the conversion probability and the probability of being visited (clicked) by the advertisement. Obtain the first loss value between the first tag and the first output result. The first loss value is used to update the recommendation model.
[0007] In this application, the user request log is a data collection that records all requests generated by a user when accessing a website, application, or service. The first advertisement is the advertisement displayed to the user, and the first tag is used to indicate whether a conversion occurred based on the first advertisement. For example, the first request might be a click request on the first advertisement, and the user may have performed a conversion (e.g., purchase, registration, download) after clicking the advertisement, or no conversion may have occurred. Alternatively, it can be understood as whether the first request, indicated by the first tag, facilitated a conversion.
[0008] For example, the first tag can be a request indicating that the first request has resulted in a conversion or has contributed to a conversion. For instance, it could be a click request to access and click on the first advertisement; or it could be a search request to search for related keywords after accessing the first advertisement. Alternatively, the first tag can also be a request indicating that the first request has not resulted in a conversion or has not contributed to a conversion. For example, if a user merely accesses the page containing the advertisement without performing any subsequent actions, such an access request is considered a request that does not contribute to an actual conversion.
[0009] For example, the recommendation model is one that predicts the probability of ad conversion and the probability of being clicked, and outputs a personalized list of recommended items accordingly. The labels in the training sample set of the recommendation model are attribution labels, that is, labels determined based on the advertising performance data feedback returned by the advertiser. In this application, the first label determined is an attribution label attached to the training samples by the system based on its data analysis capabilities (such as data collection, third-party data sources, or internal algorithm prediction).
[0010] Using the above method, for recommendation models focused on predicting ad conversions, by analyzing user request logs, it can identify whether requests for the first ad will lead to a conversion, thereby determining the first tag corresponding to that request. Specifically, the first request can come from the original training samples or newly introduced training samples. The first tag serves as a supervisory signal for the prediction of that training sample, enriching the sample set during model training, expanding the amount of training data in sparse scenarios, and improving the performance of the recommendation model.
[0011] In one possible implementation, the recommendation model includes a first embedding layer; obtaining a first loss value between a first label and a first output result, the first loss value being used to update the recommendation model, specifically including:
[0012] A first loss value is obtained based on the first embedding layer between the first label and the first output result. The first loss value is specifically used to update the first embedding layer.
[0013] Specifically, the recommendation model introduces an additional embedding layer. By calculating the difference between the first label and the first output, the corresponding loss function value, i.e., the first loss value, is determined. This loss value quantifies the degree of difference between the model's prediction and the actual label. The model's parameters are adjusted through backpropagation, i.e., this embedding layer is updated, making the model's predictions closer to the first label, thereby enhancing the model's accuracy and generalization ability.
[0014] In one possible implementation, the first tag value of the first tag of the first request is determined based on the second request. The first request occurs before the second request occurs. The first tag value indicates that the first request has resulted in a conversion on the first advertisement. The second request is the request that actually caused the conversion. The second request includes a registration request, activation request, download request, or payment request.
[0015] In this application, the first tag value of the first tag is a tag obtained by self-attribution based on the second request that actually performed the conversion behavior, which is used to indicate that the first request has a certain conversion contribution to the second request that actually performed the conversion behavior.
[0016] Understandably, the first tag also includes a second tag value, which is used to indicate that the first request did not result in a conversion on the first ad.
[0017] In one possible implementation, the time interval between the occurrence of the first request and the occurrence of the second request is less than a first threshold.
[0018] The first threshold is a preset threshold, meaning that the first request is considered to have contributed to the conversion if it falls within a specific time window before the conversion actually occurs. For example, this condition is met if the time difference between two requests is less than one minute.
[0019] In one possible implementation, the first request also includes a second label, which is used to indicate the supervised transformation result of the first request;
[0020] The method also includes:
[0021] Obtain the second loss value between the first output and the second label. The second loss value is used to update the recommendation model.
[0022] In this application, the second label is used to indicate whether the first request actually resulted in a conversion on the first advertisement. Specifically, the second label represents the original label of the sample in this domain, that is, the actual conversion result of the training sample. For example, the first label indicates whether the first request facilitated the conversion, and the second label indicates whether the first request actually caused a conversion. The first label is an auxiliary label assigned to the first request after retrieving user request logs; for example, a label value of 1 indicates that the first request resulted in a conversion on the first advertisement. The second label is a supervisory label assigned manually; for example, a label value of 0 indicates that the first request did not result in a conversion on the first advertisement.
[0023] This application utilizes multi-task learning, simultaneously referencing the first and second labels, and comparing them with the model's prediction results to construct a more comprehensive and detailed loss function.
[0024] In one possible implementation, the first request is input into the recommendation model to obtain a first output result, including:
[0025] Extract the first feature representation of the first request, whereby the first feature representation corresponds to the attribute information of the first request;
[0026] Input the first feature representation into the recommendation model to obtain the first output result.
[0027] In one possible implementation, the attribute type of the attribute information requested in the first request includes one or more of the following:
[0028] User attributes, such as gender, age, occupation, income, hobbies, and education level;
[0029] Advertising attributes, such as the product identifier, category, advertisement name, and manufacturer of the product; or,
[0030] Ad placement attributes, such as the link to the ad's display page, the size of the display area, and the ad's hierarchical position on the page.
[0031] By using the above method, and by extracting feature information such as user attributes, ad attributes, and ad location attributes, the recommendation model can generate output results that are configured with user interests and needs, thereby improving the accuracy of the recommendation model.
[0032] In one possible implementation, the method further includes:
[0033] Obtain the third request and the third tag of the third request. The third request is a request for the second advertisement. The third tag is used to indicate whether the third request has resulted in a conversion or not on the second advertisement. The second advertisement and the first advertisement are advertisements in different scenarios.
[0034] The third request is input into the recommendation model to obtain the second output result, which is used to indicate the predicted conversion result of the third request on the second advertisement.
[0035] Obtain the third loss value between the second output and the third label. The third loss value is used to update the recommendation model.
[0036] In this application, the problem of insufficient training samples in sparse scenarios can also be solved by increasing training samples in different scenarios, thereby enhancing the generalization ability of the recommendation model.
[0037] In one possible implementation, the third request is input into the recommendation model to obtain a second output, including:
[0038] Extract the second feature representation of the third request. The second feature representation corresponds to the attribute information of the third request. The attribute information corresponding to the second feature representation is less than the attribute information corresponding to the first feature representation.
[0039] The second feature information is input into the recommendation model to obtain the second output result.
[0040] In this application, the first input request belongs to the local domain sample used to train the recommendation model, and the third request belongs to the external domain sample used to train the recommendation model. The feature information of the external domain sample is often partially missing compared to the feature information of the local domain sample.
[0041] For example, taking the operator's advertising data on other advertising platforms as an external domain sample, the user attribute features and advertising attribute features in the local domain sample also exist in the external domain sample, but the external domain sample lacks advertising location features. Therefore, user attribute features and advertising attribute features become common features between the two, while advertising location attribute features are unique features of the local domain sample.
[0042] In this application, information from the outer domain is implicitly transferred to common features by optimizing the loss function, thereby enhancing the model's ability to extract common features and its generalization performance.
[0043] In one possible implementation, the first feature representation includes a first sub-feature representation and a second sub-feature representation, the second feature representation includes a third sub-feature representation, the attribute type of the first sub-feature representation is different from the attribute type corresponding to the second sub-feature representation, and the attribute type corresponding to the first sub-feature representation is the same as the attribute type corresponding to the third sub-feature representation.
[0044] Specifically, the first and third sub-features represent the common features between samples in this domain and samples in other domains, while the second sub-feature represents the unique features of samples in this domain.
[0045] In one possible implementation, the method further includes:
[0046] The recommendation model is updated based on the first loss value, the second loss value, and the third loss value to obtain the updated recommendation model.
[0047] Secondly, embodiments of this application provide a model training apparatus, including:
[0048] The determination module is used to determine the first request for the first advertisement and the first tag of the first request from the user request log. The first tag is used to indicate the first conversion result of the first request on the first advertisement.
[0049] The processing module is used to input the first request into the recommendation model and obtain the first output result, which is used to indicate the predicted conversion result of the first request on the first advertisement.
[0050] The processing module is also used to obtain a first loss value between the first label and the first output result, and the first loss value is used to update the recommendation model.
[0051] In one possible implementation, the recommendation model includes a first embedding layer; and a processing module, specifically used for:
[0052] A first loss value is obtained based on the first embedding layer between the first label and the first output result. The first loss value is specifically used to update the first embedding layer.
[0053] In one possible implementation, the first tag value of the first tag is determined based on the second request, which occurs after the occurrence of the first request. The first tag value indicates that the first request has resulted in a conversion on the first advertisement. The second request may include a registration request, activation request, download request, or payment request.
[0054] In one possible implementation, the time interval between the occurrence of the first request and the occurrence of the second request is less than a first threshold.
[0055] In one possible implementation, the first request also includes a second label, which is used to indicate the supervised transformation result of the first request;
[0056] The processing module is also used to obtain a second loss value between the first output result and the second label, which is used to update the recommendation model.
[0057] In one possible implementation, the processing module is specifically used for:
[0058] Extract the first feature representation of the first request, whereby the first feature representation corresponds to the attribute information of the first request;
[0059] Input the first feature representation into the recommendation model to obtain the first output result.
[0060] In one possible implementation, the attribute type of the attribute information requested in the first request includes one or more of the following:
[0061] User attributes;
[0062] Advertising attributes; or,
[0063] Ad placement attributes.
[0064] In one possible implementation, the device further includes:
[0065] The acquisition module is used to acquire the third request and the third tag of the third request. The third request is a request for the second advertisement. The third tag is used to indicate whether the third request has a conversion behavior or not on the second advertisement. The second advertisement and the first advertisement are advertisements in different scenarios.
[0066] The processing module is also used to input the third request into the recommendation model and obtain a second output result, which is used to indicate the predicted conversion result of the third request on the second advertisement;
[0067] Obtain the third loss value between the second output and the third label. The third loss value is used to update the recommendation model.
[0068] In one possible implementation, the processing module is specifically used for:
[0069] Extract the second feature representation of the third request. The second feature representation corresponds to the attribute information of the third request. The attribute information corresponding to the second feature representation is less than the attribute information corresponding to the first feature representation.
[0070] The second feature information is input into the recommendation model to obtain the second output result.
[0071] In one possible implementation, the first feature representation includes a first sub-feature representation and a second sub-feature representation, the second feature representation includes a third sub-feature representation, the attribute type of the first sub-feature representation is different from the attribute type corresponding to the second sub-feature representation, and the attribute type corresponding to the first sub-feature representation is the same as the attribute type corresponding to the third sub-feature representation.
[0072] In one possible implementation, the processing module is further configured to update the recommendation model based on the first loss value, the second loss value, and the third loss value to obtain the updated recommendation model.
[0073] Thirdly, embodiments of this application provide a computing device, including a processor and a memory; the processor of at least one computing device is configured to execute instructions stored in the memory of at least one computing device, so that the computing device performs method steps as described in the first aspect and any implementation thereof.
[0074] Fourthly, embodiments of this application provide a computer-readable storage medium storing a computer program that, when run on a computer, causes the computer to perform the methods described in the first aspect and any of its optional methods.
[0075] Fifthly, embodiments of this application provide a computer program that, when run on a computer, causes the computer to perform the methods described in the first aspect and any of its alternatives.
[0076] Sixthly, this application provides a chip system including a processor for supporting the implementation of the functions involved in the foregoing aspects, such as transmitting or processing data or information involved in the foregoing methods. In one possible design, the chip system further includes a memory for storing program instructions and data necessary for the execution device or training device. This chip system may be composed of chips or may include chips and other discrete devices.
[0077] The technical effects of the second, third, fourth, fifth, and sixth aspects of this application can be understood in conjunction with the technical effects of the first aspect and any implementation thereof. Attached Figure Description
[0078] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0079] Figure 1 is a schematic diagram of a structural framework for artificial intelligence.
[0080] Figure 2 is a schematic diagram of an application architecture provided in an embodiment of this application;
[0081] Figure 3 is a schematic diagram of a recommendation system architecture provided in an embodiment of this application;
[0082] Figure 4 is a schematic diagram of another application architecture provided in an embodiment of this application;
[0083] Figure 5 is a schematic diagram of another application architecture provided in an embodiment of this application;
[0084] Figure 6 is a schematic diagram of another application architecture provided in an embodiment of this application;
[0085] Figure 7 is a flowchart illustrating a model training method provided in an embodiment of this application.
[0086] Figure 8 is a logical diagram illustrating the determination of attribution labels according to an embodiment of this application;
[0087] Figure 9 is a logical diagram illustrating another method for determining attribution labels according to an embodiment of this application;
[0088] Figure 10 is a schematic diagram of the external domain information supplementary training samples provided in the embodiments of this application;
[0089] Figure 11 is a schematic diagram of a recommendation model provided in an embodiment of this application;
[0090] Figure 12 is a schematic diagram of a model training device provided in an embodiment of this application;
[0091] Figure 13 is a schematic diagram of a device provided in an embodiment of this application;
[0092] Figure 14 is a schematic diagram of a device provided in an embodiment of this application;
[0093] Figure 15 is a schematic diagram of a chip provided in an embodiment of this application. Detailed Implementation
[0094] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0095] The terms “first,” “second,” “third,” “fourth,” 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 particular order or sequence. It should be understood that such data can be interchanged where appropriate so that embodiments of the application described herein can be implemented, for example, in orders other than those illustrated or described herein. Furthermore, the terms “comprising” and “having,” and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0096] First, the overall workflow of an artificial intelligence system is described, as shown in Figure 1. Figure 1 is a structural diagram of the main framework of artificial intelligence. The following explanation of this framework will focus on two dimensions: the "intelligent information chain" (horizontal axis) and the "IT value chain" (vertical axis). The "intelligent information chain" reflects a series of processes from data acquisition to processing. For example, it could be the general process of intelligent information perception, intelligent information representation and formation, intelligent reasoning, intelligent decision-making, and intelligent execution and output. In this process, data undergoes a condensation process of "data—information—knowledge—wisdom." The "IT value chain" reflects the value that artificial intelligence brings to the information technology industry, from the underlying infrastructure of human intelligence and information (provided and processed by technology) to the industrial ecosystem of the system.
[0097] (1) Infrastructure
[0098] Infrastructure provides computing power to support artificial intelligence systems, enabling communication with the external world and providing support through a basic platform. This communication occurs through sensors; computing power is provided by intelligent chips (hardware acceleration chips such as CPUs, NPUs, GPUs, ASICs, and FPGAs); and the basic platform includes distributed computing frameworks and related platform guarantees and support, which may include cloud storage and computing, interconnected networks, etc. For example, sensors communicate with the outside world to acquire data, and this data is provided to intelligent chips in the distributed computing system provided by the basic platform for computation.
[0099] (2) Data
[0100] The data at the next layer of infrastructure is used to represent the data sources in the field of artificial intelligence. The data involves graphics, images, voice, text, and IoT data from traditional devices, including business data from existing systems and sensor data such as force, displacement, liquid level, temperature, and humidity.
[0101] (3) Data processing
[0102] Data processing typically includes methods such as data training, machine learning, deep learning, search, reasoning, and decision-making.
[0103] Among them, machine learning and deep learning can perform intelligent information modeling, extraction, preprocessing, and training of data by symbolizing and formalizing it.
[0104] Reasoning refers to the process in which, in a computer or intelligent system, the machine thinks and solves problems by simulating human intelligent reasoning, based on reasoning control strategies and using formalized information. Typical functions include search and matching.
[0105] Decision-making refers to the process of making decisions based on intelligent information after reasoning, and it typically provides functions such as classification, sorting, and prediction.
[0106] (4) General ability
[0107] After the data processing mentioned above, the results of the data processing can be used to form some general capabilities, such as algorithms or a general system, for example, translation, text analysis, computer vision processing, speech recognition, image recognition, etc.
[0108] (5) Smart Products and Industry Applications
[0109] Intelligent products and industry applications refer to products and applications of artificial intelligence systems in various fields. They are the encapsulation of overall artificial intelligence solutions, productizing intelligent information decision-making and realizing practical applications. Their application areas mainly include: intelligent terminals, intelligent transportation, intelligent healthcare, autonomous driving, smart cities, etc.
[0110] This application can be applied, but is not limited to, the field of information recommendation in the field of artificial intelligence. Specifically, it can be applied to neural network search and neural network inference in the field of natural language processing. The following will introduce several application scenarios that have been implemented in products.
[0111] To better understand the solutions of the embodiments of this application, the possible application scenarios of the embodiments of this application will be briefly introduced below.
[0112] The product form of this application embodiment can be an information recommendation application. Information recommendation applications can run on terminal devices or cloud-based servers.
[0113] In one possible implementation, referring to Figure 2, an information recommendation application can perform an information recommendation task and obtain the processing result.
[0114] The application scenarios of this application include, but are not limited to, scenarios involving advertising recommendations, search engine result recommendations, app store recommendations, music recommendations, and video recommendations. The recommended items in various application scenarios can also be referred to as "objects" for ease of subsequent description. That is, in different recommendation scenarios, the recommended object can be an app, a video, music, or a product (such as the presentation interface of an online shopping platform, which displays different products based on different users; this can essentially be presented through the recommendation results of a recommendation model). These recommendation scenarios typically involve user behavior log collection, log data preprocessing (e.g., quantization, sampling), sample set training to obtain a recommendation model, and analysis and processing of the objects (such as products, music, etc.) involved in the scenarios corresponding to the training sample items based on the recommendation model. For example, if the samples selected in the recommendation model training stage come from the user's operational behavior towards the recommended app in a mobile app store, then the recommendation model trained in this way is applicable to the aforementioned mobile app app store, or can be used for recommending terminal apps in app stores of other types of terminals. The recommendation model will eventually calculate the recommendation probability or score of each object to be recommended. The recommendation system selects the recommendation results according to certain selection rules, such as sorting them according to the recommendation probability or score. The results are then presented to the user through the corresponding application or terminal device. The user interacts with the objects in the recommendation results to generate user behavior logs, etc.
[0115] In one possible implementation, as shown in Figure 2, the information recommendation application 102 can receive input parameters 101 (e.g., user information and other data) and generate a processing result 103. The information recommendation application 102 can execute on at least one computer system (for example) and includes computer code that, when executed by one or more computers, causes the computers to execute a model trained using the methods provided in the embodiments of this application.
[0116] As shown in Figure 3, during the recommendation process of a recommendation system, when a user interacts with the system, a recommendation request is triggered. This request includes information such as user characteristics, item characteristics, and contextual characteristics. The recommendation system inputs this request and its related feature information into the deployed recommendation model, providing a conversion rate prediction for each item participating in the ranking. Subsequently, the system generates a ranking list based on the estimated conversion rate, click-through rate, and bid. Users browse the displayed items and perform user actions, such as browsing, clicking, and downloading. These user actions are stored in logs as training data, and the parameters of the recommendation model are updated periodically through an offline training module to improve the model's recommendation performance.
[0117] In one possible implementation, the recommendation model is a multi-task ranking model, which includes recommendation functions in addition to the main recommendation task. By sharing the underlying representation learning, the prediction accuracy of the main recommendation task is improved.
[0118] In one possible implementation, a user can open an information recommendation application installed on a terminal device. The information recommendation application can process the recommended object using a model trained by the method provided in this application embodiment, and present the processing result to the user (the presentation method may include, but is not limited to, displaying, playing, saving, uploading to the cloud, etc.).
[0119] In one possible implementation, a user can open an information recommendation application installed on a terminal device. The information recommendation application can send data such as electromagnetic signals to a cloud-based server. The cloud-based server processes the recommended object using a model trained by the method provided in this application embodiment and sends the processing result back to the terminal device. The terminal device can then present the processing result to the user (the presentation method may include, but is not limited to, displaying, playing, saving, or uploading to the cloud).
[0120] Please refer to Figure 4, which is a schematic diagram of the entity architecture of an information recommendation application running in an embodiment of this application. Figure 4 shows a schematic diagram of a system architecture. The system may include a terminal 100 and a server 200. The server 200 may include one or more servers (Figure 4 illustrates this with one server as an example), and the server 200 can provide information recommendation functions for one or more terminals.
[0121] The terminal 100 may have an information recommendation application installed or a webpage related to the information recommendation function open. The application and webpage can provide an interface. The terminal 100 can receive relevant parameters input by the user on the information recommendation function interface and send the parameters to the server 200. The server 200 can obtain the processing result based on the received parameters and return the processing result to the terminal 100.
[0122] It should be understood that in some optional implementations, the terminal 100 can also complete the action of obtaining the processing result based on the received parameters on its own, without the need for the server to cooperate. This application embodiment is not limited to this.
[0123] The terminal 100 in this application embodiment can be a mobile phone, tablet computer, wearable device, vehicle device, augmented reality (AR) / virtual reality (VR) device, laptop computer, ultra-mobile personal computer (UMPC), netbook, personal digital assistant (PDA), etc., and this application embodiment does not impose any restrictions on it.
[0124] It should be understood that the steps related to the model inference process in the embodiments of this application involve AI-related operations. When performing AI operations, the instruction execution architecture of the terminal device and the server is not limited to the processor-memory architecture described above. The system architecture provided in the embodiments of this application will be described in detail below with reference to Figure 5.
[0125] Figure 5 is a schematic diagram of the system architecture provided in an embodiment of this application. As shown in Figure 5, the system architecture 500 includes an execution device 510, a training device 520, a database 530, a client device 540, a data storage system 550, and a data acquisition device 560.
[0126] The execution device 510 includes a calculation module 511, an I / O interface 512, a preprocessing module 513, and a preprocessing module 514. The calculation module 511 may include a target model / rule 501, while the preprocessing modules 513 and 514 are optional.
[0127] The execution device 510 can be a terminal device or a server for the aforementioned information recommendation application.
[0128] The data acquisition device 560 is used to collect training samples. Training samples can be images, etc. After collecting the training samples, the data acquisition device 560 stores these training samples in the database 530.
[0129] The training device 520 can maintain training samples in the database 530 to obtain the target model / rule 501 from the neural network to be trained (e.g., the graph neural network in the embodiments of this application).
[0130] It should be understood that the training device 520 can perform a pre-training process on the neural network to be trained based on the training samples maintained in the database 530, or fine-tune the model based on the pre-training.
[0131] It should be noted that in practical applications, the training samples maintained in database 530 may not all come from the data acquisition device 560; they may also be received from other devices. Furthermore, it should be noted that training device 520 may not necessarily train the target model / rule 501 entirely based on the training samples maintained in database 530; it may also obtain training samples from the cloud or other sources for model training. The above description should not be construed as limiting the embodiments of this application.
[0132] The target model / rule 501 trained by the training device 520 can be applied to different systems or devices, such as the execution device 510 shown in Figure 5. The execution device 510 can be a terminal, such as a mobile terminal, tablet computer, laptop computer, augmented reality (AR) / virtual reality (VR) device, vehicle terminal, etc., or it can be a server, etc.
[0133] Specifically, the training device 520 can transfer the trained model to the execution device 510.
[0134] In Figure 5, the execution device 510 is configured with an input / output (I / O) interface 512 for data interaction with external devices. Users can input data (such as images in this embodiment) into the I / O interface 512 through the client device 540.
[0135] Preprocessing modules 513 and 514 are used to preprocess the input data received from the I / O interface 512. It should be understood that preprocessing modules 513 and 514 may be absent, or only one preprocessing module may be used. When preprocessing modules 513 and 514 are absent, the calculation module 511 can be used directly to process the input data.
[0136] During the preprocessing of input data by the execution device 510, or during the calculation module 511 of the execution device 510 performing calculations and other related processes, the execution device 510 can call data, code, etc. in the data storage system 550 for corresponding processing, or store the data, instructions, etc. obtained from the corresponding processing into the data storage system 550.
[0137] Finally, the I / O interface 512 provides the processing result to the client device 540, thereby providing it to the user.
[0138] In the scenario shown in Figure 5, the user can manually provide input data, which can be done through the interface provided by I / O interface 512. Alternatively, the client device 540 can automatically send input data to I / O interface 512. If user authorization is required for the client device 540 to automatically send input data, the user can set the corresponding permissions in the client device 540. The user can view the output results of the execution device 510 on the client device 540, which can be presented in various ways such as display, sound, or animation. The client device 540 can also act as a data acquisition terminal, collecting the input data and output results of the input I / O interface 512 as shown in the figure, and storing them as new sample data in database 530. Alternatively, data can be collected directly from the I / O interface 512 without going through the client device 540, using the input data and output results of the input I / O interface 512 as shown in the figure, and storing them as new sample data in database 530.
[0139] It is worth noting that Figure 5 is merely a schematic diagram of a system architecture provided in an embodiment of this application. The positional relationships between the devices, components, modules, etc., shown in the figure do not constitute any limitation. For example, in Figure 5, the data storage system 550 is an external memory relative to the execution device 510. In other cases, the data storage system 550 can also be placed in the execution device 510. It should be understood that the aforementioned execution device 510 can be deployed in the client device 540.
[0140] The following section describes the more detailed architecture of the execution entity of the model training method in the embodiments of this application.
[0141] The system architecture provided in this application embodiment will be described in detail below with reference to Figure 5. Figure 5 is a schematic diagram of the system architecture provided in this application embodiment. As shown in Figure 5, the system architecture 500 includes an execution device 510, a training device 520, a database 530, a client device 540, a data storage system 550, and a data acquisition device 560.
[0142] The execution device 510 includes a calculation module 511, an I / O interface 512, a preprocessing module 513, and a preprocessing module 514. The calculation module 511 may include a target model / rule 501, while the preprocessing modules 513 and 514 are optional.
[0143] The data acquisition device 560 is used to collect training samples. Training samples can be low-quality images, etc. In this embodiment, the training samples are the data used to train multiple candidate neural networks. After collecting the training samples, the data acquisition device 560 stores them in the database 530.
[0144] The training device 520 can construct multiple candidate neural networks based on the search space maintained in the database 530, and train the neural networks based on training samples to search for and obtain the target model / rule 501. In this embodiment, the target model / rule 501 can be the target neural network.
[0145] It should be noted that in practical applications, the training samples maintained in database 530 may not all come from the data acquisition device 560; they may also be received from other devices. Furthermore, it should be noted that training device 520 may not necessarily train the target model / rule 501 entirely based on the training samples maintained in database 530; it may also obtain training samples from the cloud or other sources for model training. The above description should not be construed as limiting the embodiments of this application.
[0146] The target model / rule 501 trained by the training device 520 can be applied to different systems or devices, such as the execution device 510 shown in Figure 5. The execution device 510 can be a terminal, such as a mobile terminal, tablet computer, laptop computer, augmented reality (AR) / virtual reality (VR) device, vehicle terminal, etc., or it can be a server or cloud, etc.
[0147] Specifically, the training device 520 can transmit the target neural network to the execution device 510.
[0148] In Figure 5, the execution device 510 is configured with an input / output (I / O) interface 512 for data interaction with external devices. Users can input data to the I / O interface 512 through the client device 540.
[0149] Preprocessing modules 513 and 514 are used to preprocess the input data received from the I / O interface 512. It should be understood that preprocessing modules 513 and 514 may be absent, or only one preprocessing module may be used. When preprocessing modules 513 and 514 are absent, the calculation module 511 can be used directly to process the input data.
[0150] During the preprocessing of input data by the execution device 510, or during the calculation module 511 of the execution device 510 performing calculations and other related processes, the execution device 510 can call data, code, etc. in the data storage system 550 for corresponding processing, or store the data, instructions, etc. obtained from the corresponding processing into the data storage system 550.
[0151] Finally, the I / O interface 512 presents the processing results (such as the information recommendation results in this embodiment) to the client device 540, thereby providing them to the user.
[0152] From the inference side of the model:
[0153] In this embodiment of the application, the computing module 511 of the execution device 510 can obtain the code stored in the data storage system 550 to implement the model training method in this embodiment of the application.
[0154] In this embodiment of the application, the computing module 511 of the execution device 510 may include hardware circuits (such as application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), general-purpose processors, digital signal processors (DSPs), microprocessors or microcontrollers, etc.) or combinations of these hardware circuits. For example, the training device 520 may be a hardware system with instruction execution capabilities, such as a CPU or DSP, or a hardware system without instruction execution capabilities, such as an ASIC or FPGA, or a combination of the aforementioned hardware systems without instruction execution capabilities and hardware systems with instruction execution capabilities.
[0155] Specifically, the computing module 511 of the execution device 510 can be a hardware system with the function of executing instructions. The model training method provided in this application embodiment can be software code stored in memory. The computing module 511 of the execution device 510 can obtain the software code from the memory and execute the obtained software code to implement the model training method provided in this application embodiment.
[0156] It should be understood that the computing module 511 of the execution device 510 can be a combination of a hardware system without the function of executing instructions and a hardware system with the function of executing instructions. Some steps of the model training method provided in the embodiments of this application can also be implemented by the hardware system without the function of executing instructions in the computing module 511 of the execution device 510, which is not limited here.
[0157] From the training side of the model:
[0158] In this embodiment, the training device 520 can obtain the code stored in the memory (not shown in Figure 5, which can be integrated into the training device 520 or deployed separately from the training device 520) to implement the model training method in this embodiment.
[0159] In this embodiment of the application, the training device 520 may include hardware circuits (such as application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), general-purpose processors, digital signal processors (DSPs), microprocessors or microcontrollers, etc.) or combinations of these hardware circuits. For example, the training device 520 may be a hardware system with instruction execution capabilities, such as a CPU or DSP, or a hardware system without instruction execution capabilities, such as an ASIC or FPGA, or a combination of the aforementioned hardware systems without instruction execution capabilities and hardware systems with instruction execution capabilities.
[0160] Specifically, the training device 520 can be a hardware system with instruction execution capabilities. The model training method provided in this application embodiment can be software code stored in memory. The training device 520 can retrieve the software code from memory and execute the retrieved software code to implement the model training method provided in this application embodiment.
[0161] It should be understood that the training device 520 can be a combination of a hardware system without the function of executing instructions and a hardware system with the function of executing instructions. Some steps of the model training method provided in the embodiments of this application can also be implemented by the hardware system in the training device 520 without the function of executing instructions, which is not limited here.
[0162] In one possible implementation, the server can provide information recommendation services to the client through an application programming interface (API).
[0163] In this process, the terminal device can send relevant parameters (such as image data) to the server through the API provided by the cloud. The server can then obtain the processing results based on the received parameters and return the processing results to the terminal.
[0164] The description of the terminal and server can be found in the above embodiments, and will not be repeated here.
[0165] Figure 6 illustrates the process of using a cloud service that provides information recommendation functionality through a cloud platform.
[0166] 1. Activate and purchase information recommendation services.
[0167] 2. Users can download the software development kit (SDK) corresponding to the information recommendation service. Cloud platforms usually provide multiple development versions of the SDK for users to choose from according to their development environment needs, such as JAVA version SDK, Python version SDK, PHP version SDK, Android version SDK, etc.
[0168] 3. After downloading the corresponding version of the SDK to their local machine according to their needs, users can import the SDK project into their local development environment, configure and debug it in the local development environment, and develop other functions in the local development environment to form an application that integrates information recommendation functions.
[0169] 4. When an application using the information recommendation function needs to perform an information recommendation function, it can trigger an API call for the information recommendation function. When the application triggers the information recommendation function, it initiates an API request to the running instance of the information recommendation function service in the cloud environment. The API request carries an image, and the running instance in the cloud environment processes the input image data to obtain the processing result.
[0170] 5. The cloud environment returns the processing result to the application, thus completing one information recommendation function call.
[0171] Since the embodiments of this application involve a large number of neural network applications, for ease of understanding, the relevant terms and concepts such as neural networks involved in the embodiments of this application will be introduced below.
[0172] (1) Neural Network
[0173] A neural network can be composed of neural units, which can be operational units that take xs and an intercept of 1 as inputs, and whose output can be:
[0174] Where s = 1, 2, ..., n, where n is a natural number greater than 1, Ws is the weight of xs, and b is the bias of the neural unit. f is the activation function of the neural unit, used to introduce nonlinear characteristics into the neural network to convert the input signal in the neural unit into the output signal. The output signal of this activation function can be used as the input of the next convolutional layer, and the activation function can be the sigmoid function. A neural network is a network formed by connecting multiple of the above-mentioned individual neural units together, that is, the output of one neural unit can be the input of another neural unit. The input of each neural unit can be connected to the local receptive field of the previous layer to extract the features of the local receptive field, which can be a region composed of several neural units.
[0175] (2) Loss Function
[0176] In training a deep neural network, to ensure the output closely approximates the desired predicted value, we compare the network's prediction with the target value. Based on the difference, we update the weight vector of each layer (usually pre-configuring parameters before the initial update). For example, if the prediction is too high, the weight vector is adjusted to predict a lower value. This adjustment continues until the deep neural network predicts the target value or a value very close to it. Therefore, we need to predefine "how to compare the difference between the predicted and target values," which is the loss function or objective function. These are important equations used to measure the difference between the predicted and target values. Taking the loss function as an example, a higher output value (loss) indicates a greater difference, and training the deep neural network becomes a process of minimizing this loss.
[0177] (3) Backpropagation algorithm
[0178] Convolutional neural networks can employ backpropagation (BP) to correct the parameters in the initial super-resolution model during training, thereby reducing the reconstruction error loss. Specifically, forward propagation of the input signal to the output generates an error loss; this error loss information is then propagated back to update the parameters in the initial super-resolution model, leading to convergence of the error loss. The backpropagation algorithm is an error-loss-driven backpropagation process aimed at obtaining the optimal parameters of the super-resolution model, such as the weight matrix.
[0179] (4) Deep Neural Networks
[0180] Deep Neural Networks (DNNs), also known as multilayer neural networks, can be understood as neural networks with many hidden layers, though there's no specific metric for "many." DNNs can be categorized into three layers based on their position: input layers, hidden layers, and output layers. Generally, the first layer is the input layer, the last layer is the output layer, and the layers in between are hidden layers. All layers are fully connected, meaning that any neuron in the i-th layer is connected to any neuron in the (i+1)-th layer. Although DNNs appear complex, the operation of each layer is actually quite simple, resembling a linear relationship as follows: in, It is the input vector. It is the output vector. α is the offset vector, W is the weight matrix (also called coefficients), and α() is the activation function. Each layer is simply an adjustment of the input vector. The output vector is obtained through such a simple operation. Because DNNs have many layers, the coefficients W and the offset vector... The number of these parameters is therefore quite large. The definitions of these parameters in a DNN are as follows: Taking the coefficient W as an example: Assuming a three-layer DNN, the linear coefficient from the 4th neuron in the second layer to the 2nd neuron in the third layer is defined as... The superscript 3 represents the layer number where coefficient W resides, while the subscript corresponds to the output third layer index 2 and the input second layer index 4. In summary, the coefficients from the k-th neuron in layer L-1 to the j-th neuron in layer L are defined as follows: It's important to note that the input layer does not have a W parameter. In deep neural networks, more hidden layers allow the network to better represent complex real-world situations. Theoretically, the more parameters a model has, the higher its complexity and "capacity," meaning it can perform more complex learning tasks. Training a deep neural network is essentially the process of learning the weight matrix, with the ultimate goal of obtaining the weight matrix of all layers in the trained deep neural network (a weight matrix formed by the vectors W from many layers).
[0181] (5) Recommendation System
[0182] The recommendation system uses machine learning algorithms to analyze and learn from users' historical click behavior data, then predicts new user requests and returns a personalized list of recommended items.
[0183] (6) Multi-task learning (MTL)
[0184] Multi-task learning is a machine learning method based on a shared representation strategy, simultaneously learning from multiple related tasks. By processing the inputs and outputs of these tasks concurrently, the model can learn from a shared underlying representation. This shared representation characteristic allows the model to effectively transfer information and patterns learned from one task to other related tasks. Therefore, multi-task learning can better capture the commonalities and interrelationships between tasks, thereby improving the overall performance of the model across various tasks.
[0185] (7) Attribution
[0186] Attribution aims to trace and identify the advertising paths a user encounters before performing a specific action (such as activation, registration, or payment), and analyze which ad clicks directly led to the conversion, assigning corresponding labels to these click samples. These labels obtained through attribution can serve as supervisory signals for training recommendation models.
[0187] For example, advertisers can choose to send data feedback to the advertising platform about the effectiveness of their ads. This data typically includes specific operational information that indicates which actions directly led to conversions.
[0188] (8) Attribution
[0189] Self-attribution refers to the process by which recommender systems, leveraging their data analysis capabilities, attach self-attributed labels (or auxiliary labels) to sample data. These additional data sources may originate from the platform's own data collection, third-party data sources, or internal algorithm predictions. Due to the different data sources and paths, the labels derived from self-attribution often differ from the conversion data provided by advertisers through feedback. Therefore, self-attributed data is typically not used directly for model training but rather as an auxiliary task or data source to enhance the model's comprehensive understanding and optimization capabilities regarding conversion behavior.
[0190] (9) Local Domain and External Domain
[0191] In the context of recommender systems, the "local domain" generally refers to the current scenario, while the "external domain" refers to another scenario with a different data distribution than the local domain. However, the two have some overlap in features, labels, etc.
[0192] (10) Implicit Transfer Learning
[0193] Implicit transfer learning is a machine learning model that transfers knowledge from the source domain to the target domain by leveraging latent shared features between the source and target domains to solve tasks in the target domain. This approach avoids the tedious process of manually defining features and can automatically learn the shared features between the source and target domains.
[0194] Machine learning-based recommender systems have demonstrated broad application value in fields such as internet advertising. When training a recommender system, training samples contain both features and labels. Features are the information input into the recommender model. Taking conversion rate prediction in internet advertising as an example, features typically cover the information needed to predict conversion rates, such as the user's age and gender, as well as the price and product ID of the item to be predicted. This information collectively forms the basis for the model's predictions. Labels represent the true results of the training samples and are the target that the model's output should approximate. In conversion rate prediction tasks, labels specifically refer to whether a user actually made a conversion.
[0195] In practical applications, to save resources, reduce training and maintenance costs, and promote transfer learning between multiple tasks, the industry generally prefers to integrate multiple prediction tasks together. This means that a single training sample may contain multiple label information simultaneously. For example, the same sample may contain both the label signal of whether a user converted and whether they clicked. This approach not only improves data utilization efficiency but also helps the model learn more comprehensive and richer information, thereby further improving the performance and accuracy of the recommendation system.
[0196] There is a mutually reinforcing relationship between training samples and models: abundant data enhances the model's generalization ability, while a better-performing model drives platform traffic growth, leading to more diverse data. However, in low-traffic scenarios, both training samples and labels are scarce.
[0197] Therefore, a common approach is to seek supplementary information from external domains.
[0198] In this application, the supplementary external domain information can be derived from the dimension of the supervision signal, that is, by adding more labels to the training samples of the local domain. However, how to add appropriate auxiliary labels to the training samples of the recommendation model without causing excessive interference to the local domain is a problem that urgently needs to be solved.
[0199] To address the aforementioned problems, this application provides a model training method. As shown in Figure 7, the model training method provided in this application includes the following steps 701-703.
[0200] 701. Determine from the user request log a first request for the first advertisement and a first tag for the first request, the first tag indicating whether the first request resulted in a conversion or not on the first advertisement.
[0201] The user request log is a data collection recording all requests made by users when accessing a website, application, or service. These logs include information such as request time, request source, user behavior, and request content. The first advertisement is the advertisement displayed to the user in the system, and the first request is a request initiated by a user in response to or related to the first advertisement, such as a click request or a query request. The first tag indicates whether the first request resulted in a conversion action related to the first advertisement. A conversion action refers to user behavior such as purchasing, registering, or downloading after clicking the first advertisement. In other words, the first tag indicates whether the first request facilitated a conversion.
[0202] The tag value of the first tag includes the first tag value, for example, a value of 1 indicates that the first request has a conversion behavior or has made a conversion contribution.
[0203] For example, the first request may be a request that is associated with the first advertisement and has an impact on the actual conversion, such as a click request to click the first advertisement; or a search request to search for related keywords after visiting the first advertisement.
[0204] The first tag value also includes the second tag value. For example, a value of 0 indicates that the first request did not result in any conversion or did not contribute to the conversion.
[0205] For example, the first request may be a request that is associated with the first advertisement but does not affect the actual conversion. For instance, if a user merely visits and browses a page containing the advertisement without performing any subsequent actions, such a request is considered to be a request that does not contribute to the actual conversion.
[0206] In one possible implementation, the first tag value is determined based on the second request in the user request log. The second request occurred after the first request and actually led to a conversion, such as a registration request, activation request, download request, or payment request. The first tag is a tag obtained through self-attribution based on the second request, indicating that the first request contributed to the conversion of the second request.
[0207] In one possible implementation, the time interval between the occurrence of the first request and the occurrence of the second request is less than a first threshold.
[0208] The first threshold is a preset threshold, meaning that the first request is considered to have contributed to the conversion if it falls within a specific time window before the conversion actually occurs. For example, this condition is met if the time difference between two requests is less than one minute.
[0209] It should be understood that there may be more than one first request, which may be determined based on the second request that actually leads to the conversion.
[0210] Please refer to Figure 8, which is a logical diagram illustrating the determination of attribution labels. The recommendation system perceives the second request that resulted in a conversion from the user request logs, as well as the first request that occurred before the second request. By analyzing the characteristics between the first and second requests (e.g., request time, request source, user information, advertising / product information, etc.), it determines that the first request contributed to the actual conversion and assigns an attribution label to the first request, indicating the indirect contribution of the first request to the conversion.
[0211] Please refer to Figure 9, which is a logical diagram illustrating another method for determining attribution labels. Based on the advertiser's feedback logic, when attributing conversions, the advertiser will associate the most recent click (second request) with the conversion, ignoring the impact of previous clicks (first request) on the current conversion.
[0212] For example, when the first requested ad and the second requested ad may originate from different demand-side platforms (DSPs), during the self-attribution tagging process, the attribution click behavior returned by the advertiser (i.e., the second request) can be associated with the most recent click behavior (i.e., the first request), and the self-attribution tag of the first request can be supplemented accordingly.
[0213] In one possible implementation, the advertisement targeted by the second request is of the same product type as the advertisement targeted by the first request. For example, after browsing a clothing advertisement on platform A (first request), a user switches to platform B and visits another clothing advertisement (second request), subsequently making a conversion (such as a purchase) on that advertisement. In this case, the first request can still be considered to have contributed to the conversion.
[0214] In one possible implementation, there are multiple first requests determined based on the second request that actually involves the conversion behavior.
[0215] 702. Input the first request into the recommendation model to obtain the first output result, which is used to indicate the predicted conversion result of the first request on the first advertisement.
[0216] Specifically, the recommendation model includes a feature extraction network and an inference network. The feature extraction network extracts a first feature representation of the first request, which corresponds to the attribute information of the first request. Then, the first feature representation is input into the inference network of the recommendation model to obtain the first output result, which includes the ad conversion probability and the access (click) probability for the first request.
[0217] In this application, the attribute type of the attribute information in the first request includes one or more of the following:
[0218] User attributes, such as gender, age, occupation, income, hobbies, and education level, etc.
[0219] Advertising attributes, such as the product identifier, category, advertising name, and manufacturer of the product.
[0220] Ad placement attributes, such as the link to the ad's display page, the size of the display area, and the ad's hierarchical position on the page.
[0221] 703. Obtain the first loss value between the first label and the first output result. The first loss value is used to update the recommendation model.
[0222] Specifically, in scenarios using auto-attributed labels, an additional embedding layer is introduced. This embedding layer takes the feature representation of the training samples in the current domain (i.e., the first feature representation) as input, and through a series of calculations, outputs a predicted value for the first label (i.e., the first output result). Based on the difference between the first label and the first output result, the corresponding loss function value, i.e., the first loss value, is determined. This loss value quantifies the degree of difference between the model's predicted result and the actual label. The model's parameters are adjusted through the backpropagation algorithm, i.e., the embedding layer is updated, making the model's predicted result closer to the actual label, thereby enhancing the model's accuracy and generalization ability.
[0223] In one possible implementation, the first request also includes a second tag, which indicates the supervised conversion result of the first request. That is, the second tag is a manually assigned supervisory tag indicating whether the first request actually resulted in a conversion on the first ad.
[0224] For example, the first label is a newly added, predicted label used to indicate whether the first request facilitated a conversion, while the second label is a human-made, real label used to indicate whether the first request actually led to a conversion.
[0225] The model training method of this application also includes: obtaining a second loss value between the first output result and the second label, the second loss value being used to update the recommendation model.
[0226] This application utilizes multi-task learning, simultaneously referencing the first and second labels, and comparing them with the model's prediction results to construct a more comprehensive and detailed loss function.
[0227] In this application, the supplementary external domain information can also be derived from the sample dimension, increasing the number of samples, i.e., increasing the number of <feature, label> pairs. However, when using external domain samples, it is often necessary to consider situations such as missing features, misalignment, or low confidence.
[0228] As shown in Figure 10, Figure 10 is a schematic diagram of training samples supplemented with external domain information.
[0229] Although external domain samples may not be complete in some features, after filtering, only those with shared features can be used. Taking advertising data from other advertising platforms as an example, the user attribute type features and advertising attribute type features from the local domain samples also exist in the external domain samples. However, the external domain samples may lack features related to advertising location type. Therefore, the user attribute type features and advertising attribute type features become shared features between the two (e.g., features a and b in Figure 10), while the advertising location attribute type features are unique to the local domain samples (e.g., features c, d, and e in Figure 10).
[0230] In Figure 10, the auxiliary label is the first label in the aforementioned model training method, and the main label is the second label in the aforementioned model training method.
[0231] In one possible implementation, the model training method of this application further includes:
[0232] Obtain the third request (i.e., the common features in the external samples in Figure 10) and the third label of the third request (i.e., the main label in the external samples in Figure 10). Input the third request into the recommendation model to obtain the second output result. Obtain the third loss value between the second output result and the third label. The third loss value is used to update the recommendation model.
[0233] Specifically, a second feature representation of the third request is extracted using the feature extraction network of the recommendation model. This second feature representation corresponds to the attribute information of the third request, and the attribute information corresponding to the second feature representation is less than that corresponding to the first feature representation. This second feature representation is then input into the inference network of the recommendation model to obtain a second output result, which includes the ad conversion probability and the probability of being accessed (clicked) for the third request.
[0234] In this application, common feature representations of samples in this domain can be obtained through different embedding layers. Unique feature representation e p and common feature representation in external domain samples
[0235] Specifically, the common features will be represented. and unique feature representation e p As input, the predicted value of the auxiliary label is obtained. and the aforementioned first loss value
[0236] Where σ is the Sigmoid function, BCE represents the binary cross-entropy loss function, and yl These are auxiliary tags introduced by the samples in this domain.
[0237] And the third loss value Then, based on the common features in the external domain samples, the representation is... What was obtained:
[0238] in, It is the estimated label value of the external domain samples, y s It is the main label of the external domain sample.
[0239] This approach does not directly establish a transfer learning mechanism, but rather implicitly transfers information from the external domain to the shared feature representation by optimizing the loss function. This enhances the model's ability to extract common features and its generalization performance.
[0240] In one possible implementation, for newly added external domain samples, auxiliary labels can also be added to the external domain samples through self-attribution.
[0241] The core structure of the recommendation model provided in this application embodiment is shown in Figure 11. The entire model can be divided into three core modules:
[0242] 1. Auxiliary Label Recommendation Model: This module utilizes auxiliary labels generated by self-attribution, introduced in the form of auxiliary tasks. It backpropagates the losses generated by these auxiliary tasks to the embedding layers (i.e., Embedding-1 and Embedding-2 in Figure 11) to enhance the learning effect of the main task.
[0243] Second, the external domain sample recommendation model: This module introduces external domain samples to assist the learning of the local domain model. It adopts a strategy of sharing partial features and distinguishing the embedding layer (Embedding-3 in Figure 11), backpropagating the loss brought by external domain information to the corresponding embedding layer, realizing end-to-end implicit transfer learning, while reducing the impact of negative transfer.
[0244] Third, the recommendation model for the main task: This module takes the input features (including features unique to this domain and features common to this domain), passes them through the network, and obtains the prediction results, which are the main output results of the model.
[0245] Specifically, the prediction result of the main task, that is, the prediction result of the entire model used for online services. For unique features, their representations are directly used in the model. p For shared features, we use a fusion network to integrate representations learned from the external domain. and Obtain fusion and shared representation
[0246] Among these is the selection of converged networks.
[0247] Alternatively, a weighted sum can be used:
[0248] Where α is an automatic weighting coefficient that can be updated with the gradient.
[0249] Optionally, the two representations can be concatenated and modeled using a single MLP. The concatenated MLP is as follows:
[0250] Concat is the concatenation function.
[0251] Subsequently, a common conversion rate prediction model was used to simultaneously input the fused shared representation. and exclusive feature representation e p The prediction results for the main task are obtained.
[0252] Here, "Model" represents a common conversion rate prediction model, such as PLE, MMOE, TAML, etc.
[0253] Loss of the main model (That is, the second loss value mentioned above) is determined based on the original label y of the sample in this domain (that is, the second label mentioned above):
[0254] During training in this application, the loss functions of the three modules are combined to obtain the overall loss function:
[0255] Where β and γ are the coefficients of the loss function of the relevant module, and mask is an identifier used to distinguish whether a sample comes from the local domain or an external domain:
[0256] When it comes to specific training, the gradient of each parameter can be calculated using automatic differentiation to complete the joint training and optimization of parameters of different modules.
[0257] It should be understood that the model training method provided in this application can be applied to various tasks in the field of information retrieval, including but not limited to recommendation systems, search engines, and advertising platforms, and can accurately predict core indicators such as click-through rate and conversion rate in diverse scenarios. Furthermore, this application proposes to improve the supervision signal dimension and sample dimension of training samples from another perspective, and in practical applications, it can also be applied to multi-task models beyond recommendation models.
[0258] This application proposes a novel label self-attribution method that uses a different attribution perspective for the same transformation, introducing additional transformation information, enriching the supervision signal, effectively expanding the amount of training data in sparse scenarios, and improving the performance of the recommendation model. For the introduced external domain samples, by dividing features into common features and unique features, the common feature portion is optimized separately using external domain samples, achieving an implicit transfer learning effect and alleviating the data sparsity problem in the local domain.
[0259] Offline experiments were conducted on industrial datasets. The evaluation metrics were area under the curve (AUC) and log loss (LogLoss) for different tasks, with higher AUC and lower LogLoss being preferred. The results are shown in Table 1 below.
[0260] Table 1
[0261] The baseline consists of the self-attribution label removal auxiliary task component and the end-to-end implicit transfer learning component for external domain samples in this application. Furthermore, in the main task prediction component, since external domain samples are not introduced, two sets of independent shared feature representations are not included. By comparing the experimental data, it can be observed that this application (Ours) exhibits superior performance compared to the baseline.
[0262] The methods provided in the embodiments of this application have been described in detail above. Next, the device for performing the above methods provided in the embodiments of this application will be described.
[0263] Please refer to Figure 12, which is a schematic diagram of the structure of a model training device 1200 provided in an embodiment of this application. As shown in Figure 12, the device includes:
[0264] The determination module 1201 is used to determine, from the user request log, a first request for the first advertisement and a first tag for the first request, the first tag being used to indicate the first conversion result of the first request on the first advertisement;
[0265] Processing module 1202 is used to input the first request into the recommendation model and obtain a first output result. The first output result is used to indicate the predicted conversion result of the first request on the first advertisement.
[0266] The processing module 1202 is also used to obtain a first loss value between the first label and the first output result, and the first loss value is used to update the recommendation model.
[0267] In one possible implementation, the recommendation model includes a first embedding layer; the processing module 1202 is specifically used for:
[0268] A first loss value is obtained based on the first embedding layer between the first label and the first output result. The first loss value is specifically used to update the first embedding layer.
[0269] In one possible implementation, the first tag value of the first tag is determined based on the second request, which occurs after the occurrence of the first request. The first tag value indicates that the first request has resulted in a conversion on the first advertisement. The second request may include a registration request, activation request, download request, or payment request.
[0270] In one possible implementation, the time interval between the occurrence of the first request and the occurrence of the second request is less than a first threshold.
[0271] In one possible implementation, the first request also includes a second label, which is used to indicate the supervised transformation result of the first request;
[0272] The processing module 1202 is also used to obtain a second loss value between the first output result and the second label, and the second loss value is used to update the recommendation model.
[0273] In one possible implementation, the processing module 1202 is specifically used for:
[0274] Extract the first feature representation of the first request, whereby the first feature representation corresponds to the attribute information of the first request;
[0275] Input the first feature representation into the recommendation model to obtain the first output result.
[0276] In one possible implementation, the attribute type of the attribute information requested in the first request includes one or more of the following:
[0277] User attributes;
[0278] Advertising attributes; or,
[0279] Ad placement attributes.
[0280] In one possible implementation, the device further includes:
[0281] The acquisition module is used to acquire the third request and the third tag of the third request. The third request is a request for the second advertisement. The third tag is used to indicate whether the third request has a conversion behavior or not on the second advertisement. The second advertisement and the first advertisement are advertisements in different scenarios.
[0282] The processing module 1202 is also used to input the third request into the recommendation model and obtain a second output result, which is used to indicate the predicted conversion result of the third request on the second advertisement;
[0283] Obtain the third loss value between the second output and the third label. The third loss value is used to update the recommendation model.
[0284] In one possible implementation, the processing module 1202 is specifically used for:
[0285] Extract the second feature representation of the third request. The second feature representation corresponds to the attribute information of the third request. The attribute information corresponding to the second feature representation is less than the attribute information corresponding to the first feature representation.
[0286] The second feature information is input into the recommendation model to obtain the second output result.
[0287] In one possible implementation, the first feature representation includes a first sub-feature representation and a second sub-feature representation, the second feature representation includes a third sub-feature representation, the attribute type of the first sub-feature representation is different from the attribute type corresponding to the second sub-feature representation, and the attribute type corresponding to the first sub-feature representation is the same as the attribute type corresponding to the third sub-feature representation.
[0288] In one possible implementation, the processing module 1202 is further configured to update the recommendation model based on the first loss value, the second loss value, and the third loss value to obtain the updated recommendation model.
[0289] This application also relates to an execution device. Figure 13 is a structural schematic diagram of an execution device provided in this application embodiment. As shown in Figure 13, the execution device 1300 can specifically be a tablet, laptop, server, etc., and is not limited here. Specifically, the execution device 1300 includes: a receiver 1310, a transmitter 1320, a processor 1330, and a memory 1340 (wherein the execution device 1300 may have one or more processors 1330, and Figure 13 shows one processor as an example). The processor 1330 may include an application processor 1331 and a communication processor 1332. In some embodiments of this application, the receiver 1310, transmitter 1320, processor 1330, and memory 1340 may be connected via a bus or other means.
[0290] Memory 1340 may include read-only memory and random access memory, and provides instructions and data to processor 1330. A portion of memory 1340 may also include non-volatile random access memory (NVRAM). Memory 1340 stores processor and operation instructions, executable modules, or data structures, or subsets thereof, or extended sets thereof, wherein the operation instructions may include various operation instructions for implementing various operations.
[0291] The processor 1330 controls the operation of the execution device. In specific applications, the various components of the execution device are coupled together through a bus system, which may include not only the data bus, but also power buses, control buses, and status signal buses. However, for clarity, all buses in the diagram are referred to as the bus system.
[0292] The methods disclosed in the embodiments of this application can be applied to or implemented by the processor 1330. The processor 1330 can be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above method can be completed by the integrated logic circuitry in the hardware of the processor 1330 or by instructions in software form. The processor 1330 can be a general-purpose processor, a digital signal processor (DSP), a microprocessor, or a microcontroller, and may further include an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. The processor 1330 can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly embodied in the execution of a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor. The software module can reside in a mature storage medium in the field, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, or registers. This storage medium is located in memory 1340. Processor 1330 reads information from memory 1340 and, in conjunction with its hardware, completes the steps of the above method.
[0293] Receiver 1310 can be used to receive input digital or character information, and to generate signal inputs related to the settings and function control of the execution device. Transmitter 1320 can be used to output digital or character information through the first interface; transmitter 1320 can also be used to send instructions to the disk group through the first interface to modify the data in the disk group; transmitter 1320 may also include a display device such as a display screen. This application embodiment also relates to an execution device, and Figure 13 is a structural schematic diagram of an execution device provided in this application embodiment. As shown in Figure 13, the execution device 1300 can specifically be a tablet, laptop, server, etc., and is not limited here. The execution device 1300 may be deployed with the recommendation system described in the embodiment corresponding to Figure 3, used to implement the data processing method in the embodiment corresponding to Figure 7. Specifically, the execution device 1300 includes a receiver 1310, a transmitter 1320, a processor 1330, and a memory 1340 (wherein the execution device 1300 may have one or more processors 1330; Figure 13 shows an example with one processor). The processor 1330 may include an application processor 1331 and a communication processor 1332. In some embodiments of this application, the receiver 1310, transmitter 1320, processor 1330, and memory 1340 may be connected via a bus or other means.
[0294] Memory 1340 may include read-only memory and random access memory, and provides instructions and data to processor 1330. A portion of memory 1340 may also include non-volatile random access memory (NVRAM). Memory 1340 stores processor and operation instructions, executable modules, or data structures, or subsets thereof, or extended sets thereof, wherein the operation instructions may include various operation instructions for implementing various operations.
[0295] The processor 1330 controls the operation of the execution device. In specific applications, the various components of the execution device are coupled together through a bus system, which may include not only the data bus, but also power buses, control buses, and status signal buses. However, for clarity, all buses in the diagram are referred to as the bus system.
[0296] The methods disclosed in the embodiments of this application can be applied to or implemented by the processor 1330. The processor 1330 can be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above method can be completed by the integrated logic circuitry in the hardware of the processor 1330 or by instructions in software form. The processor 1330 can be a general-purpose processor, a digital signal processor (DSP), a microprocessor, or a microcontroller, and may further include an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. The processor 1330 can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly embodied in the execution of a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor. The software module can reside in a mature storage medium in the field, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, or registers. This storage medium is located in memory 1340. Processor 1330 reads information from memory 1340 and, in conjunction with its hardware, completes the steps of the above method.
[0297] Receiver 1310 can be used to receive input digital or character information, and to generate signal inputs related to the settings and function control of the execution device. Transmitter 1320 can be used to output digital or character information through the first interface; transmitter 1320 can also be used to send instructions to the disk group through the first interface to modify the data in the disk group; transmitter 1320 may also include a display device such as a display screen.
[0298] This application also relates to a training device. Figure 14 is a schematic diagram of the structure of a training device provided in this application embodiment. As shown in Figure 14, the training device 1400 is implemented by one or more servers. The training device 1400 can vary considerably due to different configurations or performance. It may include one or more central processing units (CPUs) 1425 (e.g., one or more processors) and memory 1432, and one or more storage media 1430 (e.g., one or more mass storage devices) for storing application programs 1442 or data 1444. The memory 1432 and storage media 1430 can be temporary or persistent storage. The program stored in the storage media 1430 may include one or more modules (not shown in the figure), each module may include a series of instruction operations on the training device. Furthermore, the CPU 1425 may be configured to communicate with the storage media 1430 and execute the series of instruction operations in the storage media 1430 on the training device 1400.
[0299] The training device 1400 may also include one or more power supplies 1426, one or more wired or wireless network interfaces 1450, one or more input / output interfaces 1458; or, one or more operating systems 1441, such as Windows Server™, Mac OS X™, Unix™, Linux™, FreeBSD™, etc.
[0300] Specifically, the training device can execute the model training method in the embodiment corresponding to Figure 7 to obtain the target model.
[0301] This application also provides a computer program product that, when run on a computer, causes the computer to perform the steps performed by the aforementioned information recommendation device, or causes the computer to perform the steps performed by the aforementioned information recommendation device.
[0302] This application also provides a computer-readable storage medium storing a program for signal processing, which, when run on a computer, causes the computer to perform the steps performed by the aforementioned information recommendation device, or causes the computer to perform the steps performed by the aforementioned information recommendation device.
[0303] The execution device, server, or terminal device provided in this application embodiment can specifically be a chip. The chip includes a processing unit and a communication unit. The processing unit can be, for example, a processor, and the communication unit can be, for example, an input / output interface, pins, or circuits. The processing unit can execute computer execution instructions stored in the storage unit to cause the chip within the execution device to execute the model training method described in the above embodiments, or to cause the chip within the server to execute the model training method described in the above embodiments. Optionally, the storage unit can be a storage unit within the chip, such as a register or cache. Alternatively, the storage unit can be a storage unit located outside the chip within the wireless access device, such as a read-only memory (ROM) or other types of static storage devices capable of storing static information and instructions, such as random access memory (RAM).
[0304] Specifically, please refer to Figure 15, which is a schematic diagram of a chip structure provided in an embodiment of this application. This chip can be represented as a neural network processor (NPU) 1500. The NPU 1500 is mounted as a coprocessor on the host CPU, and tasks are assigned by the host CPU. The core part of the NPU is the arithmetic circuit 1503, which is controlled by the controller 1504 to extract matrix data from the memory and perform multiplication operations.
[0305] In some implementations, the arithmetic circuit 1503 internally includes multiple processing engines (PEs). In some implementations, the arithmetic circuit 1503 is a two-dimensional pulsating array. The arithmetic circuit 1503 can also be a one-dimensional pulsating array or other electronic circuits capable of performing mathematical operations such as multiplication and addition. In some implementations, the arithmetic circuit 1503 is a general-purpose matrix processor.
[0306] For example, suppose we have an input matrix A, a weight matrix B, and an output matrix C. The arithmetic circuit retrieves the corresponding data of matrix B from the weight memory 1502 and caches it in each PE of the arithmetic circuit. The arithmetic circuit retrieves the data of matrix A from the input memory 1501 and performs matrix operations with matrix B. The partial result or the final result of the obtained matrix is stored in the accumulator 1508.
[0307] Unified memory 1506 is used to store input and output data. Weight data is directly transferred to weight memory 1502 via Direct Memory Access Controller (DMAC) 1505. Input data is also transferred to unified memory 1506 via DMAC.
[0308] BIU stands for Bus Interface Unit, which is used for interaction between the AXI bus and the DMAC and the Instruction Fetch Buffer (IFB) 1509.
[0309] The Bus Interface Unit (BIU) 1510 is used by the instruction fetch memory 1509 to fetch instructions from external memory, and also by the memory access controller 1505 to fetch the original data of the input matrix A or the weight matrix B from external memory.
[0310] The DMAC is mainly used to move input data from external memory DDR to unified memory 1506, or to weight data to weight memory 1502, or to input data to input memory 1501.
[0311] The vector computation unit 1507 includes multiple arithmetic processing units that further process the output of the computation circuit as needed, such as vector multiplication, vector addition, exponential operations, logarithmic operations, size comparisons, etc. It is mainly used for computation in non-convolutional / fully connected layers of neural networks, such as batch normalization, pixel-level summation, and upsampling of feature planes.
[0312] In some implementations, the vector computation unit 1507 can store the processed output vector in the unified memory 1506. For example, the vector computation unit 1507 can apply a linear function, or a nonlinear function, to the output of the computation circuit 1503, such as performing linear interpolation on the feature planes extracted by the convolutional layer, or, for example, accumulating a vector of values to generate activation values. In some implementations, the vector computation unit 1507 generates normalized values, pixel-level summed values, or both. In some implementations, the processed output vector can be used as an activation input to the computation circuit 1503, for example, for use in subsequent layers of the neural network.
[0313] The instruction fetch buffer 1509 connected to the controller 1504 is used to store the instructions used by the controller 1504;
[0314] Unified memory 1506, input memory 1501, weighted memory 1502, and instruction fetch memory 1509 are all on-chip memories. External memory is proprietary to this NPU hardware architecture.
[0315] The processor mentioned above can be a general-purpose central processing unit, a microprocessor, an ASIC, or one or more integrated circuits used to control the execution of the above program.
[0316] It should also be noted that the device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. In addition, in the device embodiment drawings provided in this application, the connection relationship between modules indicates that they have a communication connection, which can be implemented as one or more communication buses or signal lines.
[0317] Through the above description of the embodiments, those skilled in the art can clearly understand that this application can be implemented by means of software plus necessary general-purpose hardware, or it can be implemented by special-purpose hardware including application-specific integrated circuits, special-purpose CPUs, special-purpose memory, special-purpose components, etc. Generally, any function performed by a computer program can be easily implemented by corresponding hardware, and the specific hardware structure used to implement the same function can also be diverse, such as analog circuits, digital circuits, or special-purpose circuits. However, for this application, software program implementation is more often the preferred implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a readable storage medium, such as a computer floppy disk, USB flash drive, mobile hard disk, ROM, RAM, magnetic disk, or optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments of this application.
[0318] In the above embodiments, the implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented, in whole or in part, in the form of a computer program product.
[0319] The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions may be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium may be any available medium that a computer can store or a data storage device such as a server or data center that integrates one or more available media. The available medium may be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state disk (SSD)).
Claims
1. A model training method, characterized in that, include: Determine a first request for the first advertisement from the user request log, and a first tag for the first request, the first tag being used to indicate whether the first request resulted in a conversion or not on the first advertisement; The first request is input into the recommendation model to obtain a first output result, which is used to indicate the predicted conversion result of the first request on the first advertisement. Obtain a first loss value between the first label and the first output result, and use the first loss value to update the recommendation model.
2. The method according to claim 1, characterized in that, The recommendation model includes a first embedding layer; obtaining a first loss value between the first label and the first output result, wherein the first loss value is used to update the recommendation model, specifically includes: A first loss value is obtained based on the first embedding layer between the first label and the first output result, and the first loss value is specifically used to update the first embedding layer.
3. The method according to claim 1 or 2, characterized in that, The first tag value of the first tag is determined based on the second request, which occurs after the first request. The first tag value indicates that the first request has a conversion behavior on the first advertisement. The second request includes a registration request, activation request, download request, or payment request.
4. The method according to claim 3, characterized in that, The time interval between the occurrence of the first request and the occurrence of the second request is less than a first threshold.
5. The method according to any one of claims 1-4, characterized in that, The first request also includes a second tag, which is used to indicate the supervised transformation result of the first request; The method further includes: Obtain a second loss value between the first output result and the second label, and use the second loss value to update the recommendation model.
6. The method according to any one of claims 1-5, characterized in that, The step of inputting the first request into the recommendation model to obtain the first output result includes: Extract a first feature representation of the first request, wherein the first feature representation corresponds to attribute information of the first request; The first feature representation is input into the recommendation model to obtain the first output result.
7. The method according to claim 6, characterized in that, The attribute type of the attribute information requested in the first request includes one or more of the following: User attributes; Advertising attributes; or, Ad placement attributes.
8. The method according to any one of claims 5-7, characterized in that, The method further includes: Obtain a third request and a third tag for the third request, wherein the third request is a request for the second advertisement, and the third tag is used to indicate whether the third request has resulted in a conversion or not on the second advertisement, and the second advertisement and the first advertisement are advertisements in different scenarios; The third request is input into the recommendation model to obtain a second output result, which is used to indicate the predicted conversion result of the third request on the second advertisement. Obtain a third loss value between the second output result and the third label, and use the third loss value to update the recommendation model.
9. The method according to claim 8, characterized in that, The step of inputting the third request into the recommendation model to obtain the second output result includes: Extract a second feature representation of the third request, wherein the second feature representation corresponds to attribute information of the third request, and the attribute information corresponding to the second feature representation is less than the attribute information corresponding to the first feature representation; The second feature information is input into the recommendation model to obtain the second output result.
10. The method according to claim 9, characterized in that, The first feature representation includes a first sub-feature representation and a second sub-feature representation. The second feature representation includes a third sub-feature representation. The attribute type of the first sub-feature representation is different from the attribute type corresponding to the second sub-feature representation. The attribute type corresponding to the first sub-feature representation is the same as the attribute type corresponding to the third sub-feature representation.
11. The method according to any one of claims 8-10, characterized in that, The method further includes: The recommendation model is updated based on the first loss value, the second loss value, and the third loss value to obtain the updated recommendation model.
12. A model training device, characterized in that, include: The determination module is used to determine, from the user request log, a first request for the first advertisement and a first tag for the first request, wherein the first tag is used to indicate a first conversion result of the first request on the first advertisement; The processing module is used to input the first request into the recommendation model and obtain a first output result, wherein the first output result is used to indicate the predicted conversion result of the first request on the first advertisement; The processing module is further configured to obtain a first loss value between the first label and the first output result, and the first loss value is used to update the recommendation model.
13. The apparatus according to claim 12, characterized in that, The recommendation model includes a first embedding layer; the processing module is specifically used for: A first loss value is obtained based on the first embedding layer between the first label and the first output result, and the first loss value is specifically used to update the first embedding layer.
14. The apparatus according to claim 12 or 13, characterized in that, The first tag value of the first tag is determined based on the second request, which occurs after the first request. The first tag value indicates that the first request has a conversion behavior on the first advertisement. The second request includes a registration request, activation request, download request, or payment request.
15. The apparatus according to claim 14, characterized in that, The time interval between the occurrence of the first request and the occurrence of the second request is less than a first threshold.
16. The apparatus according to any one of claims 12-15, characterized in that, The first request also includes a second tag, which is used to indicate the supervised transformation result of the first request; The processing module is further configured to obtain a second loss value between the first output result and the second label, and the second loss value is used to update the recommendation model.
17. The apparatus according to any one of claims 12-16, characterized in that, The processing module is specifically used for: Extract a first feature representation of the first request, wherein the first feature representation corresponds to attribute information of the first request; The first feature representation is input into the recommendation model to obtain the first output result.
18. The apparatus according to claim 17, characterized in that, The attribute type of the attribute information requested in the first request includes one or more of the following: User attributes; Advertising attributes; or, Ad placement attributes.
19. The apparatus according to any one of claims 16-18, characterized in that, The device further includes: The acquisition module is used to acquire a third request and a third tag of the third request. The third request is a request for the second advertisement. The third tag is used to indicate whether the third request has resulted in a conversion or not on the second advertisement. The second advertisement and the first advertisement are advertisements in different scenarios. The processing module is further configured to input the third request into the recommendation model to obtain a second output result, the second output result being used to indicate the predicted conversion result of the third request on the second advertisement; Obtain a third loss value between the second output result and the third label, and use the third loss value to update the recommendation model.
20. The apparatus according to claim 19, characterized in that, The processing module is specifically used for: Extract a second feature representation of the third request, wherein the second feature representation corresponds to attribute information of the third request, and the attribute information corresponding to the second feature representation is less than the attribute information corresponding to the first feature representation; The second feature information is input into the recommendation model to obtain the second output result.
21. The apparatus according to claim 20, characterized in that, The first feature representation includes a first sub-feature representation and a second sub-feature representation. The second feature representation includes a third sub-feature representation. The attribute type of the first sub-feature representation is different from the attribute type corresponding to the second sub-feature representation. The attribute type corresponding to the first sub-feature representation is the same as the attribute type corresponding to the third sub-feature representation.
22. The apparatus according to any one of claims 19-21, characterized in that, The processing module is further configured to update the recommendation model based on the first loss value, the second loss value, and the third loss value to obtain the updated recommendation model.
23. A computing device, characterized in that, Processor and memory; The processor is configured to execute instructions stored in the memory to cause the computing device to perform the processing steps of the method as described in any one of claims 1 to 11.
24. A computer storage medium, characterized in that, The computer storage medium stores one or more instructions, which, when executed by one or more computers, cause the one or more computers to perform the operation of the method according to any one of claims 1 to 11.
25. A computer program product, characterized in that, Includes computer-readable instructions that, when executed on a computer device, cause the computer device to perform the method as described in any one of claims 1 to 11.
26. A chip, characterized in that, It includes at least one processing unit and an interface circuit, the interface circuit being used to provide program instructions or data to the at least one processing unit, the at least one processing unit being used to execute the program instructions to implement the method of any one of claims 1 to 11.