Processing Method, Device, Equipment and Storage Medium of Pooling Operator

By automatically matching the most suitable pooling operator in each target feature domain for feature vector generation and model optimization, the problem of the same pooling operator interfering with the model optimization in the prior art is solved, and the prediction accuracy of the recommended model is improved.

CN115130561BActive Publication Date: 2025-05-30TSINGHUA UNIVERSITY +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210655564.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-06-10
Publication Date
2025-05-30
Estimated Expiration
2042-06-10

AI Technical Summary

Technical Problem

When handling multi-valued feature domains, the existing recommended models use the same pooling operator uniformly, resulting in interference in model optimization and reducing the accuracy of prediction.

Method used

The most suitable pooling operator is automatically matched in each target feature domain. By obtaining the eigenvector corresponding to each feature value, selecting the pooling operator with the largest weight value based on the pooling operator search space for pooling compression, generating the target pooling feature vector, and performing loss calculation and model parameter update.

Benefits of technology

Through the more adaptable pooling operator generation process, the model's expression ability is enhanced, the same pooling operator is avoided and the accuracy of model prediction is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115130561B_ABST
    Figure CN115130561B_ABST
Patent Text Reader

Abstract

The embodiments of the present application disclose a method, apparatus, device, and storage medium for processing pooling operators. Related embodiments can be applied to various scenarios such as artificial intelligence, maps, and intelligent transportation to improve the accuracy of model prediction. The method includes: obtaining a first feature vector corresponding to each target feature value in each target feature domain; matching a target pooling operator for each target feature domain based on a pooling operator search space, where the pooling operator search space includes K candidate pooling operators, and the target pooling operator is the candidate pooling operator with the largest weight value, pooling and compressing the first feature vector corresponding to each target feature value through the target pooling operator to obtain a target pooling feature vector corresponding to each target feature domain, calculating a target loss value based on the target pooling feature vector corresponding to each target feature domain, and updating the model parameters of the recommendation model based on the target loss value to obtain a target recommendation model.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of artificial intelligence technology, and in particular, to a method, device, equipment and storage medium for processing pooling operators. Background Art

[0002] With the development of information technology, recommendation models are often used to model the relationship between target objects and items. During the modeling process, the input of the model is usually a sample composed of a target object and an item, and the output of the model is used to reflect the degree of preference of the target object for the item.

[0003] A sample can be composed of hundreds of feature domains, and each feature domain can contain different numbers of feature values. For example, a feature domain with only one feature value is called a single-value feature domain. In contrast, if a feature domain in a sample may contain multiple feature values, then the feature domain is called a multi-value feature domain.

[0004] The current model solution performs a unified pooling operation on the embedding vectors corresponding to the feature values, and converts them into a fixed-length vector before performing subsequent model calculations. However, since the number of feature values contained in the multi-value feature domain is uncertain, using the same pooling operator for all feature domains is likely to interfere with model optimization and reduce the accuracy of model prediction. Summary of the Invention

[0005] The embodiments of the present application provide a method, device, equipment and storage medium for processing pooling operators, which are used to automatically match a suitable target pooling operator for each target feature domain during the generation of the target pooling feature vector of each target feature domain, can enhance the expression ability of the model, avoid the situation that using the same pooling operator for all feature domains is likely to interfere with model optimization, and then perform iterative optimization on the model, thereby improving the accuracy of model prediction.

[0006] On the one hand, the embodiments of the present application provide a method for processing pooling operators, including:

[0007] Obtain the first feature vector corresponding to each target feature value in each target feature domain;

[0008] Based on the pooling operator search space, match a target pooling operator for each of the target feature domains, where the pooling operator search space includes K candidate pooling operators, the target pooling operator is the candidate pooling operator with the largest weight value, and K is an integer greater than or equal to 1;

[0009] For each of the target feature domains, perform pooling compression on the first feature vector corresponding to each of the target feature values through the target pooling operator to obtain the target pooling feature vector corresponding to each of the target feature domains;

[0010] Calculate a target loss value based on the target pooling feature vectors corresponding to each of the target feature domains;

[0011] Update the model parameters of the recommendation model based on the target loss value to obtain a target recommendation model.

[0012] On the other hand, the present application provides a processing device for a pooling operator, including:

[0013] An acquisition unit, configured to acquire a first feature vector corresponding to each target feature value in each target feature domain;

[0014] A determination unit, configured to match a target pooling operator for each target feature domain based on a pooling operator search space, where the pooling operator search space includes K candidate pooling operators, and the target pooling operator is the candidate pooling operator with the largest weight value, and K is an integer greater than or equal to 1;

[0015] A processing unit, configured to, for each target feature domain, perform pooling compression on the first feature vector corresponding to each target feature value through the target pooling operator to obtain a target pooling feature vector corresponding to each target feature domain;

[0016] The processing unit is further configured to calculate a target loss value based on the target pooling feature vectors corresponding to each target feature domain;

[0017] The processing unit is further configured to update the model parameters of the recommendation model based on the target loss value to obtain a target recommendation model.

[0018] In a possible design, in an implementation manner on the other hand of the embodiments of the present application,

[0019] The processing unit is further configured to perform multiple rounds of training on the pooling operator search structure of the recommendation model using a target sample set based on the pooling operator search space;

[0020] The determination unit is further configured to, when the structural model parameters and weight parameters in the pooling operator search structure meet the convergence condition, select, from the K candidate pooling operators, the candidate pooling operator corresponding to the maximum weight parameter for each feature domain in the target sample set as the target pooling operator.

[0021] In a possible design, in an implementation manner on the other hand of the embodiments of the present application, the processing unit may specifically be configured to:

[0022] Pass the verification samples in the verification sample set through the pooling operator search structure to adjust the weight parameters in the pooling operator search structure;

[0023] Adjust the structural model parameters in the pooling operator search structure by passing the training samples in the training sample set through the pooling operator search structure.

[0024] In a possible design, in an implementation of another aspect of the embodiments of the present application, the processing unit may specifically be used for:

[0025] Obtain the second feature vector corresponding to each eigenvalue in each feature domain of the verification sample;

[0026] Input the second feature vector into the pooling operator search structure to obtain the weighted pooling feature vector corresponding to each feature domain;

[0027] Obtain the predicted value corresponding to the verification sample based on the weighted pooling feature vector corresponding to each feature domain;

[0028] Calculate the actual value and the predicted value of the verification sample through the target loss function to obtain the predicted loss value corresponding to the verification sample;

[0029] When the predicted loss value corresponding to the verification sample does not meet the convergence condition, adjust the weight parameters in the pooling operator search structure.

[0030] In a possible design, in an implementation of another aspect of the embodiments of the present application, the processing unit may specifically be used for:

[0031] Obtain the third feature vector corresponding to each eigenvalue in each feature domain of the training sample;

[0032] Input the third feature vector into the pooling operator search structure to obtain the weighted pooling feature vector corresponding to each feature domain;

[0033] Obtain the predicted value corresponding to the verification sample based on the weighted pooling feature vector corresponding to each feature domain;

[0034] Calculate the actual value and the predicted value of the training sample through the target loss function to obtain the predicted loss value corresponding to the training sample;

[0035] When the predicted loss value corresponding to the training sample does not meet the convergence condition, adjust the structural model parameters in the pooling operator search structure.

[0036] In a possible design, in an implementation of another aspect of the embodiments of the present application, the processing unit may specifically be used for:

[0037] Pool and compress each second feature vector through K candidate pooling operators in the pooling operator search space to obtain K pooled feature vectors corresponding to each eigenvalue;

[0038] Based on the weight parameters corresponding to each candidate pooling operator, perform a weighted sum of the K pooling feature vectors corresponding to each eigenvalue to obtain the weighted pooling feature vector corresponding to each feature domain.

[0039] In a possible design, in an implementation of another aspect of this application embodiment, the processing unit may specifically be used for:

[0040] Pool and compress each third feature vector through the K candidate pooling operators in the pooling operator search space to obtain the K pooling feature vectors corresponding to each eigenvalue;

[0041] Based on the weight parameters corresponding to each candidate pooling operator, perform a weighted sum of the K pooling feature vectors corresponding to each eigenvalue to obtain the weighted pooling feature vector corresponding to each feature domain.

[0042] Another aspect of this application provides a computer device, including: a memory, a processor, and a bus system;

[0043] Among them, the memory is used to store programs;

[0044] The processor is used to implement the methods in the above aspects when executing the programs in the memory;

[0045] The bus system is used to connect the memory and the processor to enable communication between the memory and the processor.

[0046] Another aspect of this application provides a computer-readable storage medium, in which instructions are stored. When the instructions run on a computer, the computer is enabled to execute the methods in the above aspects.

[0047] It can be seen from the above technical solutions that the embodiments of this application have the following beneficial effects:

[0048] By obtaining the first feature vector corresponding to each target feature value in each target feature domain, based on the pooling operator search space including K candidate pooling operators, matching the target pooling operator with the largest weight value for each target feature domain, and pooling and compressing the first feature vector corresponding to each target feature value in each target feature domain through the target pooling operator, the target pooling feature vector corresponding to each target feature domain is obtained. Based on the target pooling feature vector corresponding to each target feature domain, loss calculation is performed to obtain the target loss value. Then, based on the target loss value, the model parameters of the recommendation model are updated to obtain the target recommendation model. Through the above method, during the generation process of the target pooling feature vector of each target feature domain, an appropriate target pooling operator can be automatically matched for each target feature domain to obtain a target pooling feature vector with stronger expression ability, making the feature domain representation more diverse and accurate, thereby enhancing the expression ability of the model, avoiding the situation that all feature domains use the same pooling operator, which is likely to interfere with model optimization, and then iteratively optimizing the model to improve the accuracy of model prediction. BRIEF DESCRIPTION OF THE DRAWINGS

[0049] Figure 1 is a schematic architecture diagram of the data object control system in an embodiment of the present application;

[0050] Figure 2 is a flowchart of an embodiment of the method for processing a pooling operator in an embodiment of the present application;

[0051] Figure 3 is a flowchart of another embodiment of the method for processing a pooling operator in an embodiment of the present application;

[0052] Figure 4 is a flowchart of another embodiment of the method for processing a pooling operator in an embodiment of the present application;

[0053] Figure 5 is a flowchart of another embodiment of the method for processing a pooling operator in an embodiment of the present application;

[0054] Figure 6 is a flowchart of another embodiment of the method for processing a pooling operator in an embodiment of the present application;

[0055] Figure 7 is a flowchart of another embodiment of the method for processing a pooling operator in an embodiment of the present application;

[0056] Figure 8 is a flowchart of another embodiment of the method for processing a pooling operator in an embodiment of the present application;

[0057] Figure 9 is a schematic principle flowchart of the method for processing a pooling operator in an embodiment of the present application;

[0058] Figure 10 It is another schematic diagram of the principle process of the processing method of the pooling operator in the embodiment of the present application;

[0059] Figure 11 It is another schematic diagram of the principle process of the processing method of the pooling operator in the embodiment of the present application;

[0060] Figure 12 It is a schematic diagram of the principle process of searching for a pooling operator in the processing method of the pooling operator in the embodiment of the present application;

[0061] Figure 13 It is a schematic diagram of the process of recommended information in the processing method of the pooling operator in the embodiment of the present application;

[0062] Figure 14 It is a schematic diagram of an embodiment of the processing device of the pooling operator in the embodiment of the present application;

[0063] Figure 15 It is a schematic diagram of an embodiment of the computer device in the embodiment of the present application. Detailed implementation manners

[0064] The embodiments of the present application provide a processing method, device, equipment and storage medium for a pooling operator, which can automatically match a suitable target pooling operator for each target feature domain during the generation of the target pooling feature vector of each target feature domain, enhance the expression ability of the model, avoid the situation that the same pooling operator is used for all feature domains, which is likely to interfere with the model optimization, and then perform iterative optimization on the model, so as to improve the accuracy of model prediction.

[0065] Terms such as "first", "second", "third", "fourth", etc. (if any) in the specification, claims and drawings of the present application are used to distinguish similar objects, and do not necessarily need to be used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged under appropriate circumstances, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "include" and "correspond to" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, product or device including a series of steps or units does not necessarily need to be limited to those steps or units clearly listed, but may include other steps or units not clearly listed or inherent to these processes, methods, products or devices.

[0066] For the convenience of understanding, some terms or concepts related to the embodiments of the present application are first explained.

[0067] 1. Recommended model

[0068] A recommendation model refers to a mathematical model used in a recommendation system to recommend content of interest to a target object.

[0069] 2. Feature ID

[0070] The feature ID (i.e., the feature value) is used to more conveniently process features. Generally, the original features are discretized and uniquely identified by an ID.

[0071] 3. Feature field:

[0072] The feature field is used to represent a class of feature IDs. For example, "the attribute information of the target object". A feature field contains multiple feature IDs.

[0073] 4. Embedding vector

[0074] The embedding vector means that the recommendation model generally maps high-dimensional feature IDs to low-dimensional vectors, and this vector is called the Embedding vector.

[0075] 5. Embedding Size: The dimension of the Embedding vector.

[0076] 6. AutoML

[0077] AutoML is a method used to automate the construction of machine learning processes to solve the problem of over-reliance on expert experience in machine learning and deep learning.

[0078] 7. Pooling

[0079] The pooling operation generally refers to compressing multiple vectors into one vector in the field of recommendation.

[0080] 8. Pooling operator

[0081] The pooling operator refers to the method of vector compression. For example, ave-pooling calculates the average value of each coordinate of all candidate vectors.

[0082] It can be understood that in the specific implementation manner of this application, it involves relevant data such as model parameters, pooling operators, target feature fields, and target sample sets. When the above embodiments of this application are applied to specific products or technologies, user permission or consent is required, and the collection, use, and processing of relevant data need to comply with the relevant laws, regulations, and standards of the relevant countries and regions.

[0083] It can be understood that the processing method of the pooling operator disclosed in the present application is specifically related to the Intelligent Vehicle Infrastructure Cooperative Systems (IVICS). The following further introduces the intelligent vehicle-road collaborative system. The intelligent vehicle-road collaborative system, abbreviated as the vehicle-road collaborative system, is a development direction of the Intelligent Transportation System (ITS). The vehicle-road collaborative system adopts advanced wireless communication and new-generation Internet and other technologies to comprehensively implement dynamic real-time information interaction between vehicles and between vehicles and roads, and on the basis of the collection and fusion of dynamic traffic information in the whole time and space, carry out active safety control of vehicles and collaborative management of roads, fully realizing the effective collaboration of people, vehicles and roads, ensuring traffic safety, improving traffic efficiency, and thus forming a safe, efficient and environmentally friendly road traffic system.

[0084] It can be understood that the processing method of the pooling operator disclosed in the present application is also related to Artificial Intelligence (AI) technology. The following further introduces the artificial intelligence technology. Artificial intelligence uses digital computers or machines controlled by digital computers to simulate, extend and expand human intelligence, and is a theory, method, technology and application system that perceives the environment, acquires knowledge and uses knowledge to obtain the best results. In other words, artificial intelligence is a comprehensive technology in computer science. It attempts to understand the essence of intelligence and produce a new intelligent machine that can react in a way similar to human intelligence. Artificial intelligence is also the study of the design principles and implementation methods of various intelligent machines, enabling the machines to have the functions of perception, reasoning and decision-making.

[0085] Artificial intelligence technology is an interdisciplinary subject, involving a wide range of fields, including both hardware-level technologies and software-level technologies. The basic technologies of artificial intelligence generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing technology, operation / interaction systems, and mechatronics. The software technologies of artificial intelligence mainly include several major directions such as computer vision technology, speech processing technology, natural language processing technology, and machine learning / deep learning.

[0086] Secondly, Natural Language Processing (NLP) is an important direction in the field of computer science and artificial intelligence. It studies various theories and methods that can realize effective communication between humans and computers in natural language. Natural language processing is a science that integrates linguistics, computer science and mathematics. Therefore, the research in this field will involve natural language, that is, the language used by people in daily life, so it has a close connection with the research of linguistics. Natural language processing technologies usually include technologies such as text processing, semantic understanding, machine translation, robot question answering, and knowledge graphs.

[0087] Secondly, Machine Learning (ML) is an interdisciplinary field that involves multiple disciplines such as probability theory, statistics, approximation theory, convex analysis, and algorithm complexity theory. It specifically studies how computers can simulate or implement human learning behaviors to acquire new knowledge or skills and reorganize the existing knowledge structure to continuously improve their own performance. Machine learning is the core of artificial intelligence and the fundamental way to make computers intelligent, and its applications cover all fields of artificial intelligence. Machine learning and deep learning usually include technologies such as artificial neural networks, belief networks, reinforcement learning, transfer learning, inductive learning, and rote learning.

[0088] With the research and progress of artificial intelligence technology, artificial intelligence technology has been studied and applied in multiple fields, such as common smart homes, smart wearable devices, virtual assistants, smart speakers, smart marketing, driverless, autonomous driving, drones, robots, smart healthcare, smart customer service, etc. It is believed that with the development of technology, artificial intelligence technology will be applied in more fields and play an increasingly important role.

[0089] It should be understood that the processing method of the pooling operator provided in this application can be applied to various scenarios, including but not limited to artificial intelligence, maps, intelligent transportation, cloud technology, etc., to complete the optimization of the recommendation model by matching appropriate pooling operators in the process of generating pooled feature vectors, and to be applied to scenarios such as information flow recommendation, intelligent voice interaction, and intelligent navigation recommendation.

[0090] To solve the above problems, this application proposes a processing method of a pooling operator, which is applied to Figure 1 the data object control system shown. Please refer to Figure 1 , Figure 1 which is a schematic architecture diagram of the data object control system in an embodiment of this application. As shown in Figure 1As shown, the server obtains the first feature vector corresponding to each target feature value in each target feature domain provided by the terminal device, matches the target pooling operator with the largest weight value for each target feature domain based on the pooling operator search space including K candidate pooling operators, pools and compresses the first feature vector corresponding to each target feature value in each target feature domain through the target pooling operator to obtain the target pooling feature vector corresponding to each target feature domain, calculates the loss based on the target pooling feature vector corresponding to each target feature domain to obtain the target loss value, and then updates the model parameters of the recommendation model based on the target loss value to obtain the target recommendation model. Through the above method, it is possible to automatically match a suitable target pooling operator for each target feature domain during the generation process of the target pooling feature vector of each target feature domain, so as to obtain a target pooling feature vector with stronger expression ability, make the feature domain representation more diverse and accurate, and then enhance the expression ability of the model, so as to avoid the situation that all feature domains use the same pooling operator, which is likely to interfere with model optimization, and then iteratively optimize the model, thereby improving the accuracy of model prediction.

[0091] It can be understood that Figure 1 only one type of terminal device is shown in the figure. In actual scenarios, more types of terminal devices can participate in the data processing process. Terminal devices include but are not limited to mobile phones, computers, intelligent voice interaction devices, smart home appliances, vehicle-mounted terminals, etc. The specific quantity and types depend on the actual scenario and are not specifically limited here. Additionally, Figure 1 only one server is shown in the figure. However, in actual scenarios, multiple servers can also participate, especially in scenarios of multi-model training interaction. The number of servers depends on the actual scenario and is not specifically limited here.

[0092] It should be noted that in this embodiment, the server can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content delivery network (CDN), and big data and artificial intelligence platforms. The terminal device and the server can be directly or indirectly connected through wired or wireless communication methods. The terminal device and the server can be connected to form a blockchain network, which is not limited in this application.

[0093] Combined with the above introduction, the processing method of the pooling operator in this application will be introduced below. Please refer to Figure 2 One embodiment of the processing method of the pooling operator in the embodiment of this application includes:

[0094] In step S101, obtain the first feature vector corresponding to each target feature value in each target feature domain;

[0095] In this embodiment, the target sample set can be read from the database. Then, the original features corresponding to each target feature domain in each sample in the target sample set can be converted into corresponding target feature values, that is, feature IDs. Then, at least one target feature value corresponding to each target feature domain of each sample can be input into the recommendation model, and the first feature vector corresponding to each target feature value in each target feature domain can be obtained through the feature ID embedding layer of the recommendation model.

[0096] Among them, the target feature domain is derived from the target sample set, and the target feature domain includes a single-value feature domain and a multi-value feature domain. The target sample set contains multiple samples, each sample is composed of a target object and an item, and each sample can be composed of hundreds of feature domains, such as "target object attribute information", "target object historical behavior", "target object label", "short video ID" or "short video label", etc. Each target feature domain contains different numbers of target feature values (i.e., feature IDs). For example, a "target object attribute information" feature domain contains three feature IDs: {male, female, unknown}. Among them, the feature ID (i.e., the feature value) is to process the features more conveniently. Generally, the original features are discretized and uniquely identified by an ID.

[0097] It can be understood that the single-value feature domain refers to having only one feature ID. For example, the "target object attribute information" feature domain, each target object can only select one from the three values of {male, female, unknown}. Such a feature domain is called a single-value feature domain. In contrast, if a certain feature domain in a sample may contain multiple feature IDs, this feature domain is called a multi-value feature domain.

[0098] It can be understood that a sample can include a single-value feature domain and a multi-value feature domain. Each sample is composed of M feature domains x = [x 1 , x 2 ,..., x M , where x = x 1 : [0, 1, 0,..., 0],..., x j : [1, 0, 1, 0, 0],..., x M : [0, 1, 0,..., 1, 0, 1], where x i is the one-hot encoding corresponding to the feature domain.

[0099] Specifically, assume that the target feature domain is a multi-valued feature domain. Assume there are N samples in total, and each sample consists of M target feature domains. Among them, the target feature value corresponding to the j-th target feature domain, i.e., the feature ID, is where n j represents the number of feature IDs included in the j-th target feature domain, i.e., the number of target feature values. It should be noted here that it is also related to the sample itself. That is, the number of feature values under the same target feature domain in different samples may be different. Here, for the sake of convenience, the subscript of the sample is omitted. Then, after passing through the feature ID embedding layer Embedding lookup of the recommendation model, the first feature vector corresponding to each target feature value of the j-th target feature domain can be obtained, i.e., the Embedding vector:

[0100] Among them, the feature ID embedding layer takes the input of the feature ID as the original data. For example, a "target object label" feature domain contains five feature IDs: {music, film and television, games, anime, beauty makeup}. The feature embedding layer is used to perform Embedding on the five feature IDs of {music, film and television, games, anime, beauty makeup}. As an example, the output of the feature embedding layer can be, but is not limited to, the above third sample feature vector.

[0101] In step S102, based on the pooling operator search space, match a target pooling operator for each target feature domain. Among them, the pooling operator search space includes K candidate pooling operators, and the target pooling operator is the candidate pooling operator with the largest weight value. K is an integer greater than or equal to 1;

[0102] In this embodiment, after obtaining the first feature vector corresponding to each target feature value in each target feature domain, the optimal pooling operator can be automatically searched for each target feature domain in the pooling operator search space, that is, match a target pooling operator for each target feature domain.

[0103] Among them, the pooling operator search space includes K candidate pooling operators, and the target pooling operator is the candidate pooling operator with the largest weight value. K is an integer greater than or equal to 1. The following Table 1 lists several common pooling operators:

[0104] Table 1

[0105]

[0106]

[0107] Specifically, as Figure 10As shown in the figure, after the training of the pooling operator search structure pooling layer added to the network structure in the feature domain embedding layer is completed, for each feature domain, the candidate operator with the largest weight value can be selected as the optimal pooling operator for this feature domain, and other operators can be removed, and the recommendation model can be fine-tuned again. Specifically, in the pooling search space, the feature domain identical to the target feature domain can be traversed, and the candidate operator with the largest weight value corresponding to the traversed feature domain can be used as the target pooling operator.

[0108] In step S103, for each target feature domain, the first feature vector corresponding to each target feature value is pooled and compressed through the target pooling operator to obtain the target pooling feature vector corresponding to each target feature domain;

[0109] In this embodiment, after obtaining the target pooling operator adapted to each target feature domain, the first feature vectors corresponding to all target feature values under the same target feature domain can be pooled and compressed through the target pooling operator to obtain the target pooling feature vector corresponding to each target feature domain.

[0110] Specifically, as Figure 9 shown, after obtaining the target pooling operator adapted to each target feature domain, the Embedding vectors of the first feature vectors corresponding to all target feature values under the same target feature domain: can be compressed through the target pooling operator to obtain the feature domain Embedding corresponding to the target feature domain: that is, the target pooling feature vector, where p represents the target pooling operator corresponding to the target feature domain.

[0111] In step S104, based on the target pooling feature vector corresponding to each target feature domain, a loss calculation is performed to obtain the target loss value;

[0112] In this embodiment, after obtaining the target pooling feature vector corresponding to each target feature domain, based on the target loss function, a loss calculation is performed on the target pooling feature vector corresponding to each target feature domain to obtain the target loss value.

[0113] Among them, the target loss function can specifically be the cross-entropy loss function shown in the following formula (1), and can also be other loss functions, which are not specifically limited here:

[0114]

[0115] Among them, y i is the sample true value, is the sample predicted value.

[0116] Specifically, as Figure 9As shown, after obtaining the target pooling feature vectors corresponding to each target feature domain, that is, after the feature domain Embedding is determined, the Embedding vectors of all target feature domains can be concatenated, and the concatenated vector can be input into the subsequent network cross layer as shown in Figure 9 , and finally a predicted value is output. Further, according to the target loss function of the above formula (1), the target loss value loss can be calculated through the sample predicted value and the sample true value.

[0117] Among them, the network cross layer includes at least one MLP structure, and the input of the network cross layer is the vector after concatenating the Embedding vectors of all target feature domains;

[0118] Among them, the following formula (2) is the output sample predicted value of the network cross layer:

[0119] logits = MLP(V) (2);

[0120] Among them, u represents the number of target feature domains, and V is the vector after concatenating the Embedding vectors of all target feature domains.

[0121] Among them, in the MLP structure, first obtain the hidden vector corresponding to the vector after concatenating the Embedding vectors of all target feature domains based on the following formula (3):

[0122] h k = σ k (W k * h k-1 + b k ) (3);

[0123] Among them, k represents K fully connected layers, W k represents the weight matrix, b k represents the bias vector, and σ k represents an activation function.

[0124] Further, calculate the obtained hidden vector based on the following formula (4) to obtain the sample predicted value

[0125]

[0126] Among them, h out is the output of the hidden layer, W out represents the weight matrix, b out represents the bias vector, and σ out represents an activation function.

[0127] In step S105, the model parameters of the recommendation model are updated based on the target loss value to obtain the target recommendation model.

[0128] Specifically, after obtaining the target loss value, the model parameters of the recommendation model can be updated based on the target loss value. The model parameter update can be performed by means of gradient descent backpropagation, or other update methods can be used, which are not specifically limited herein. Among them, it is possible to determine whether the target loss value corresponding to the recommendation model satisfies a preset convergence condition, and when the preset convergence condition is satisfied, stop training and determine the recommendation model to be trained at the end of training as the target recommendation model; when the preset convergence condition is not satisfied, adjust the parameters in the recommendation model to be trained.

[0129] For a better understanding of the processing method of the above pooling operator, the following will be further explained in conjunction with Figure 9 and Figure 13 the specific embodiments shown.

[0130] It can be understood that as Figure 13 shown, the media resources pushed to the target object (such as Figure 13 the articles or advertisements shown) are selected from a candidate media resource library of tens of millions of levels (for example, an article pool or an advertisement library, etc.). The selection process generally includes two stages. The first stage is called recall, and thousands of candidate sets are selected from the advertisement library of tens of millions of levels through a recall algorithm; the second stage is called sorting, and the thousands of candidate advertisements after recall are accurately sorted through a sorting model, and finally the optimal 1 or more articles or advertisements (which can be understood as one or more media resources, such as the optimal about 10 articles or advertisements are displayed) are selected and pushed to the target object.

[0131] For example, as Figure 13 shown, through the above target recommendation model, article 1 that meets the push condition is pushed to application 1 where the target object is located, and the thumbnail information of article 1 (such as a link, a title, and a picture, etc.) is displayed on the page of application 1. Then, by the target object clicking on the "Learn More" or "Skip" button, it is determined whether to view advertisement 1 pushed for the target object.

[0132] It should be noted that the processing method of the pooling operator in the embodiments of the present application can be applied in the recall stage and / or the sorting stage as Figure 13 shown. The recall model used in the recall stage or the sorting model used in the sorting stage generally includes as Figure 9For the network structures in the feature ID embedding layer, feature domain embedding layer, and network cross layer shown in [Figure 0], the processing method of the pooling operator in the embodiments of this application mainly improves the network structure in the feature domain embedding layer to make the feature domain representation more diverse and accurate, thereby enhancing the overall recommendation experience.

[0133] Further, in the application scenario shown in Figure 13 Article 1 that meets the push conditions is pushed to Application 1 where the target object is located through the above target recommendation model. The specific process may include the following steps:

[0134] S-1) Obtain target account data, where the target account data may include, but is not limited to, target object data or a set of target object data. For example, the attribute information of the target object, the interests and hobbies of the target object, the advertisements viewed by the target object, etc.;

[0135] S-2) Input the target account data into the above target recommendation model, and extract feature values from the target account data through the feature ID embedding layer of the target recommendation model (such as a multimedia resource recommendation model like an article recommendation model or an advertisement recommendation model), to obtain a target feature domain (for example, the advertisements viewed by the target object), the target feature values corresponding to the target feature domain (for example, the types of accessed advertisements and the access time, etc.), and the feature vectors corresponding to each target feature value;

[0136] S-3) Search for target pooling operators that match each target feature domain in the search space;

[0137] S-4) Respectively perform pooling processing on all the feature vectors corresponding to each target feature domain through the target pooling operator to obtain each target feature domain Embedding, and splice the target feature domain Embeddings to obtain the spliced Embedding corresponding to the target account data;

[0138] S-5) Input the spliced Embedding into the subsequent network cross layer shown in Figure 9 Finally, output a target predicted value through the target recommendation model (such as a multimedia resource recommendation model like an article recommendation model or an advertisement recommendation model);

[0139] S-6), based on the target predicted value, use a recall algorithm to retrieve from a candidate media resource library of tens of millions of items (for example, as shown in Figure 13Select thousands of candidate sets (such as advertisement candidate sets, article sets, etc.) from the article pool or advertisement library shown. Then, the sorted model can accurately sort the thousands of candidate articles or advertisements in the recalled thousands of candidate sets (such as advertisement candidate sets, article sets, etc.), and finally select the optimal 1 or more articles or advertisements (such as the optimal about 10 articles or advertisements for display), and push them to the target account of the target object.

[0140] In the embodiment of the present application, a processing method for a pooling operator is provided. Through the above method, during the generation process of the target pooling feature vector of each target feature domain, an appropriate target pooling operator can be automatically matched for each target feature domain to obtain a target pooling feature vector with stronger expressive ability, making the feature domain representation more diverse and accurate, thereby enhancing the expressive ability of the model, avoiding the situation that all feature domains use the same pooling operator, which is likely to interfere with the model optimization, and then iteratively optimizing the model to improve the accuracy of model prediction.

[0141] Optionally, based on the above Figure 2 On the basis of the corresponding embodiment, in another optional embodiment of the processing method for the pooling operator provided by the embodiment of the present application, as Figure 3 shown, before step S102 of matching the target pooling operator for each target feature domain based on the pooling operator search space, the method further includes:

[0142] In step S301, based on the pooling operator search space, the pooling operator search structure of the recommendation model is trained in multiple rounds using the target sample set;

[0143] In step S302, when the structural model parameters and weight parameters in the pooling operator search structure meet the convergence condition, from the K candidate pooling operators, select the candidate pooling operator corresponding to the maximum weight parameter for each feature domain in the target sample set as the target pooling operator.

[0144] In this embodiment, before matching the target pooling operator for each target feature domain based on the pooling operator search space, the pooling operator search structure added to the network structure in the feature domain embedding layer can be Figure 10As shown on the right (the pooling layer), based on the pooling operator search space, use the target sample set to perform multiple rounds of training on the pooling operator search structure of the recommendation model. When the structural model parameters and weight parameters in the pooling operator search structure meet the convergence conditions, from the K candidate pooling operators, select the candidate pooling operator corresponding to the maximum weight parameter for each feature domain in the target sample set as the target pooling operator, so that the recommendation model can better learn the ability to search for the optimal pooling operator, improve the network structure in the feature domain embedding layer, and enhance the expressive ability of the feature domain representation, thereby improving the accuracy of model prediction to a certain extent.

[0145] Specifically, as Figure 10 shown on the right, the pooling operator search structure pooling layer added to the network structure in the feature domain embedding layer is used to perform multiple rounds of training on the pooling operator search structure of the recommendation model. Specifically, it can be done by passing the validation samples in the validation sample set of the target sample set through the pooling operator search structure to adjust the weight parameters in the pooling operator search structure; at the same time, the training samples in the training sample set of the target sample set can be passed through the pooling operator search structure to adjust the structural model parameters in the pooling operator search structure. Repeat the above two parameter adjustment steps until convergence. After convergence, that is, when the structural model parameters and weight parameters in the pooling operator search structure meet the convergence conditions, the maximum weight pooling operator can be selected for each feature domain, and then the recommendation model is retrained until convergence.

[0146] Optionally, on the basis of the above Figure 3 corresponding embodiment, in another optional embodiment of the method for processing the pooling operator provided by the embodiments of the present application, as Figure 4 shown, the target sample set includes a validation sample set and a training sample set;

[0147] Step S301, based on the pooling operator search space, uses the target sample set to perform multiple rounds of training on the pooling operator search structure of the recommendation model, including:

[0148] In step S401, pass the validation samples in the validation sample set through the pooling operator search structure to adjust the weight parameters in the pooling operator search structure;

[0149] In step S402, pass the training samples in the training sample set through the pooling operator search structure to adjust the structural model parameters in the pooling operator search structure.

[0150] In this embodiment, based on the pooling operator search space, the DARTS algorithm can be combined to adjust the weight parameters in the pooling operator search structure by passing the verification samples in the verification sample set through the pooling operator search structure, and adjust the structural model parameters in the pooling operator search structure by passing the training samples in the training sample set through the pooling operator search structure until convergence to achieve the optimal pooling operator search. Genetic algorithms, reinforcement learning algorithms, algorithms based on surrogate models, etc. can also be used to search for the optimal pooling operator in the defined pooling operator search space. There is no specific limitation here. It is possible to train the pooling operator search structure of the recommendation model using the verification samples and training samples respectively, and adjust the weight parameters in the pooling operator search structure to be trained when the predicted loss value corresponding to the verification samples does not meet the preset convergence condition; when the training samples and the predicted loss values corresponding to the training samples do not meet the preset convergence condition, adjust the structural model parameters in the pooling operator search structure, which improves the flexibility of parameter adjustment during model training.

[0151] Specifically, according to a certain ratio, the target sample set {X 1 ,X 2 ,X 3 …} can be divided into a verification sample set {X v1 ,X v2 ,X v3 …} and a training sample set {X t1 ,X t2 ,X t3 …}.

[0152] Pass the verification samples in the verification sample set through the pooling operator search structure to adjust the weight parameters in the pooling operator search structure. At the same time, pass the training samples in the training sample set through the pooling operator search structure to adjust the structural model parameters in the pooling operator search structure. Specifically, it can be to alternately input X v1 ,X t1 ,X v2 ,X t2 … where the verification samples and training samples appear alternately into the pooling operator search structure of the recommendation model to be trained, and train the recommendation model to be trained to obtain the predicted values Y v1 ', Y v2 ', Y v3 '… of the verification samples, and obtain the predicted values Y t1 ', Y t2 ', Y t3'…; then, according to the actual value, predicted value, and loss function of the validation samples, calculate the predicted loss value corresponding to the validation samples, and when the predicted loss value corresponding to the validation samples does not meet the convergence condition, adjust the weight parameters in the pooling operator search structure. Similarly, according to the actual value, predicted value, and loss function of the training samples, calculate the predicted loss value corresponding to the training samples, and when the predicted loss value corresponding to the validation samples does not meet the convergence condition, adjust the weight parameters in the pooling operator search structure.

[0153] Optionally, based on the above Figure 4 corresponding embodiment, in another optional embodiment of the method for processing the pooling operator provided by the embodiments of the present application, as Figure 5 shown, step S401 passes the validation samples in the validation sample set through the pooling operator search structure and adjusts the weight parameters in the pooling operator search structure, including:

[0154] In step S501, obtain the second feature vector corresponding to each feature value in each feature domain of the validation samples;

[0155] In step S502, input the second feature vector into the pooling operator search structure to obtain the weighted pooling feature vector corresponding to each feature domain;

[0156] In step S503, obtain the predicted value corresponding to the validation samples based on the weighted pooling feature vector corresponding to each feature domain;

[0157] In step S504, calculate the actual value and predicted value of the validation samples through the target loss function to obtain the predicted loss value corresponding to the validation samples;

[0158] In step S505, when the predicted loss value corresponding to the validation samples does not meet the convergence condition, adjust the weight parameters in the pooling operator search structure.

[0159] For ease of understanding, the following is a detailed description in combination with the Figure 11 recommended model shown.

[0160] As Figure 11 shown below, the process of selecting the pooling operator using the general model (TraditionalPooling) includes:

[0161] 1-1) Obtain the embedding vector Embedding of each feature value (such as x 1 , x 2 and x 3 etc.) in each feature domain;

[0162] 1-2) Select the same pooling operator p for all feature domains;

[0163] 1 - 3) Embed the embedding vectors of each eigenvalue in all feature domains through the same pooling operator p for unified pooling operation, and convert them into a one - dimensional vector of a fixed length (such as v 1 , v 2 and v 3 etc.).

[0164] Compared with the above process, the embodiment of this application proposes an improved method for processing the pooling operator, such as Figure 11 The process of selecting the pooling operator based on AutoML (pooling operator search structure for automatically selecting the optimal pooling operator) shown above in

[0165] 2 - 1) Pre - define the pooling operator search space, P = {p 1 , p 2 ,..., p K}, where K is the number of candidate pooling operators;

[0166] 2 - 2) For the j - th feature domain, give each candidate pooling operator a specific weight parameter:

[0167] 2 - 3) For the j - th feature domain, obtain the embedding vectors of each eigenvalue in each feature domain (such as x 1 , x 2 and x 3 etc.);

[0168] 2 - 4) For the j - th feature domain, perform pooling operations on the embedding vectors of each eigenvalue with M pooling operators respectively to obtain the embedding corresponding to each candidate pooling operator: For example, the embedding corresponding to the eigenvalue x 1 under the pooling operation of a candidate pooling operator p 1 is V 1 1 = p 1 (v 1 , v 2 , v 3 );

[0169] 2 - 5) Based on the weight parameters in step 2 - 2) and the embeddings corresponding to each candidate pooling operator obtained in step 2 - 4), perform weighted summation to obtain the embedding of each feature domain:

[0170] 2-6) For each feature domain, select the candidate pooling operator with the largest weight as the optimal pooling operator for this feature domain, eliminate other candidate pooling operators, and retune the recommendation model.

[0171] Specifically, based on the above process of selecting pooling operators based on AutoML (a pooling operator search structure for automatically selecting the optimal pooling operator) (AutoMLPooling), pass the validation samples in the validation sample set through the pooling operator search structure and adjust the weight parameters in the pooling operator search structure. Specifically, it can be done by inputting the validation samples in the validation sample set into the recommendation model. First, obtain the second feature vectors corresponding to each eigenvalue in each feature domain of the validation sample through the feature ID embedding layer. Further, input the second feature vectors into the pooling operator search structure. According to the above steps 2-4) to step 2-5), based on the weight parameters corresponding to each candidate pooling operator, to obtain the weighted pooling feature vectors corresponding to each feature domain.

[0172] Furthermore, since the determination of the objective loss function mainly includes: there are two sets of parameters to be learned: 1) deep learning model parameters, denoted as W; 2) all weight parameters in the pooling operator search structure, denoted as a, and this parameter is solved with W through the DARTS algorithm. The optimization problem to be solved is:

[0173]

[0174] s.t. W*(a) = argmin W L train (W,a) (6);

[0175] where, L val represents the cross-entropy loss function on the validation set, and L train represents the cross-entropy loss function on the training set. The calculation formula of the cross-entropy loss function is as formula (7) below:

[0176]

[0177] where, p i is the predicted probability value of the recommendation model.

[0178] Furthermore, based on the weighted pooling feature vectors corresponding to each feature domain in the above formula (7), the predicted value corresponding to the validation sample can be obtained, and the objective loss function is used to calculate the actual value and the predicted value of the validation sample to obtain the predicted loss value corresponding to the validation sample;

[0179] Further, it is possible to determine whether the predicted loss value corresponding to the verification sample meets a preset convergence condition based on the above formulas (5) and (6). When the preset convergence condition is met, stop the training, select the maximum weight pooling operator for each feature domain, eliminate other candidate pooling operators, and retrain the recommendation model until convergence; conversely, when the predicted loss value corresponding to the verification sample does not meet the convergence condition, adjust the weight parameter a in the pooling operator search structure.

[0180] Optionally, based on the above Figure 4 corresponding embodiment, in another optional embodiment of the method for processing a pooling operator provided by the embodiments of the present application, as Figure 6 shown, step S402 passes the training samples in the training sample set through the pooling operator search structure and adjusts the structural model parameters in the pooling operator search structure, including:

[0181] In step S601, obtain the third feature vector corresponding to each feature value in each feature domain of the training sample;

[0182] In step S602, input the third feature vector into the pooling operator search structure to obtain the weighted pooling feature vector corresponding to each feature domain;

[0183] In step S603, obtain the predicted value corresponding to the verification sample based on the weighted pooling feature vector corresponding to each feature domain;

[0184] In step S604, calculate the actual value and the predicted value of the training sample through the target loss function to obtain the predicted loss value corresponding to the training sample;

[0185] In step S605, when the predicted loss value corresponding to the training sample does not meet the convergence condition, adjust the structural model parameters in the pooling operator search structure.

[0186] Specifically, based on the above process (AutoMLPooling) of selecting a pooling operator based on AutoML (a pooling operator search structure for automatically selecting the optimal pooling operator), pass the training samples in the verification sample set through the pooling operator search structure and adjust the structural model parameters in the pooling operator search structure. Specifically, it can be achieved by inputting the verification samples in the training sample set into the recommendation model, first obtaining the third feature vector corresponding to each feature value in each feature domain of the training sample through the feature ID embedding layer. Further, input the third feature vector into the pooling operator search structure, and according to the above steps 2-4) to step 2-5), based on the weight parameters corresponding to each candidate pooling operator, to obtain the weighted pooling feature vector corresponding to each feature domain.

[0187] Further, the predicted value corresponding to the training sample can be obtained based on the weighted pooling feature vectors corresponding to each feature domain in the above formula (7), and the actual value and the predicted value of the training sample are calculated through the objective loss function to obtain the predicted loss value corresponding to the training sample;

[0188] Further, it is possible to determine whether the predicted loss value corresponding to the training sample satisfies a preset convergence condition based on the above formulas (5) and (6). When the preset convergence condition is satisfied, the training is stopped, the maximum weight pooling operator is selected for each feature domain, and other candidate pooling operators are removed, and the recommendation model is retrained until convergence; otherwise, when the predicted loss value corresponding to the training sample does not satisfy the convergence condition, the weight parameter a in the pooling operator search structure is adjusted.

[0189] Optionally, based on the above Figure 5 corresponding embodiment, in another optional embodiment of the method for processing the pooling operator provided by the embodiment of the present application, as Figure 7 shown, step S502 inputting the second feature vector into the pooling operator search structure to obtain the weighted pooling feature vectors corresponding to each feature domain includes:

[0190] In step S701, each second feature vector is respectively pooled and compressed through K candidate pooling operators in the pooling operator search space to obtain K pooling feature vectors corresponding to each eigenvalue;

[0191] In step S702, based on the weight parameter corresponding to each candidate pooling operator, the K pooling feature vectors corresponding to each eigenvalue are weighted and summed to obtain the weighted pooling feature vectors corresponding to each feature domain.

[0192] Specifically, as Figure 12 shown in the above parameter search process, it is also a process of selecting a pooling operator based on the above AutoML (pooling operator search structure for automatically selecting the optimal pooling operator) (AutoMLPooling). The second feature vector is input into the pooling operator search structure, and each second feature vector is respectively pooled and compressed through K candidate pooling operators according to the above steps 2-4) to obtain the pooling feature vectors corresponding to each candidate pooling operator (such as Figure 12 shown as p 1 , p 2 , p 3 ), and further, the K pooling feature vectors corresponding to each eigenvalue can be integrated;

[0193] Further, according to the above steps 2-5), based on the weight parameter corresponding to each candidate pooling operator Perform weighted summation on the K pooling feature vectors corresponding to each eigenvalue to obtain the weighted pooling feature vector corresponding to each feature domain.

[0194] Further, as Figure 12 After the parameter search shown below is completed, it can be understood that when the predicted loss values corresponding to the validation samples and the predicted loss values corresponding to the training samples both meet the preset convergence conditions, stop the training, and for each feature domain according to the above steps 2-6), select the candidate pooling operator with the largest weight as the optimal pooling operator for this feature domain (as Figure 12 the selected pooling operator p shown below 1 ), eliminate other candidate pooling operators, and fine-tune the recommendation model again.

[0195] Optionally, based on the above Figure 6 corresponding embodiment, in another optional embodiment of the method for processing the pooling operator provided by the embodiment of the present application, as Figure 8 shown, step S602 inputs the third feature vector into the pooling operator search structure to obtain the weighted pooling feature vector corresponding to each feature domain, including:

[0196] In step S801, each third feature vector is respectively pooled and compressed by K candidate pooling operators in the pooling operator search space to obtain K pooling feature vectors corresponding to each eigenvalue;

[0197] In step S802, based on the weight parameters corresponding to each candidate pooling operator, perform weighted summation on the K pooling feature vectors corresponding to each eigenvalue to obtain the weighted pooling feature vector corresponding to each feature domain.

[0198] Specifically, as Figure 12 the parameter search process shown above is also the process of selecting the pooling operator based on the above AutoML (pooling operator search structure for automatically selecting the optimal pooling operator) (AutoMLPooling). Input the third feature vector into the pooling operator search structure, and for each third feature vector, perform pooling compression through K candidate pooling operators according to the above steps 2-4) to obtain each candidate pooling operator (as Figure 12 the p shown above 1 , p 2 , p 3 ), and further, the K pooling feature vectors corresponding to each eigenvalue can be integrated;

[0199] Further, according to the above steps 2-5), based on the weight parameters corresponding to each candidate pooling operator Perform a weighted sum of the K pooling feature vectors corresponding to each eigenvalue to obtain the weighted pooling feature vector corresponding to each feature domain.

[0200] Further, as Figure 12 After the parameter search shown below is completed, it can be understood that when the predicted loss value corresponding to the validation sample and the predicted loss value corresponding to the training sample both satisfy the preset convergence condition, stop the training, and for each feature domain according to the above steps 2-6), select the candidate pooling operator with the largest weight as the optimal pooling operator for this feature domain (as Figure 12 The selected pooling operator p shown below 1 ), eliminate other candidate pooling operators, and fine-tune the recommendation model again.

[0201] The following will describe in detail the processing device for the pooling operator in the present application. Please refer to Figure 14 , Figure 14 FIG. is a schematic diagram of an embodiment of the processing device for the pooling operator in the embodiment of the present application. The processing device 20 for the pooling operator includes:

[0202] An obtaining unit 201, configured to obtain the first feature vector corresponding to each target eigenvalue in each target feature domain;

[0203] A determining unit 202, configured to match a target pooling operator for each target feature domain based on the pooling operator search space, where the pooling operator search space includes K candidate pooling operators, and the target pooling operator is the candidate pooling operator with the largest weight value, and K is an integer greater than or equal to 1;

[0204] A processing unit 203, configured to, for each target feature domain, perform pooling compression on the first feature vector corresponding to each target eigenvalue through the target pooling operator to obtain the target pooling feature vector corresponding to each target feature domain;

[0205] The processing unit 203 is further configured to calculate a target loss value based on the target pooling feature vector corresponding to each target feature domain;

[0206] The processing unit 203 is further configured to update the model parameters of the recommendation model based on the target loss value to obtain the target recommendation model.

[0207] Optionally, based on the corresponding embodiment above Figure 14 In another embodiment of the processing device for the pooling operator provided in the embodiment of the present application,

[0208] The processing unit 203 is further configured to perform multiple rounds of training on the pooling operator search structure of the recommendation model using the target sample set based on the pooling operator search space;

[0209] The determination unit 202 is further configured to, when the structural model parameters and weight parameters in the pooling operator search structure satisfy the convergence condition, select, from the K candidate pooling operators, the candidate pooling operator corresponding to the maximum weight parameter for each feature domain in the target sample set as the target pooling operator.

[0210] Optionally, based on the corresponding embodiment above, Figure 14 In another embodiment of the processing device for the pooling operator provided by the embodiment of the present application, the processing unit 203 may specifically be configured to:

[0211] Pass the verification samples in the verification sample set through the pooling operator search structure to adjust the weight parameters in the pooling operator search structure;

[0212] Pass the training samples in the training sample set through the pooling operator search structure to adjust the structural model parameters in the pooling operator search structure.

[0213] Optionally, based on the corresponding embodiment above, Figure 14 In another embodiment of the processing device for the pooling operator provided by the embodiment of the present application, the processing unit 203 may specifically be configured to:

[0214] Obtain the second feature vector corresponding to each eigenvalue in each feature domain of the verification sample;

[0215] Input the second feature vector into the pooling operator search structure to obtain the weighted pooling feature vector corresponding to each feature domain;

[0216] Obtain the predicted value corresponding to the verification sample based on the weighted pooling feature vector corresponding to each feature domain;

[0217] Calculate the actual value and the predicted value of the verification sample through the target loss function to obtain the predicted loss value corresponding to the verification sample;

[0218] When the predicted loss value corresponding to the verification sample does not satisfy the convergence condition, adjust the weight parameters in the pooling operator search structure.

[0219] Optionally, based on the corresponding embodiment above, Figure 14 In another embodiment of the processing device for the pooling operator provided by the embodiment of the present application, the processing unit 203 may specifically be configured to:

[0220] Obtain the third feature vector corresponding to each eigenvalue in each feature domain of the training sample;

[0221] Input the third feature vector into the pooling operator search structure to obtain the weighted pooling feature vector corresponding to each feature domain;

[0222] Obtain the predicted value corresponding to the verification sample based on the weighted pooling feature vectors corresponding to each feature domain;

[0223] Calculate the predicted loss value corresponding to the training sample by using the objective loss function for the actual value and the predicted value of the training sample;

[0224] When the predicted loss value corresponding to the training sample does not meet the convergence condition, adjust the structural model parameters in the pooling operator search structure.

[0225] Optionally, based on the corresponding embodiment above Figure 14 In another embodiment of the processing device for the pooling operator provided by the embodiment of the present application, the processing unit 203 can specifically be used for:

[0226] Pool and compress each second feature vector through K candidate pooling operators in the pooling operator search space to obtain K pooling feature vectors corresponding to each eigenvalue;

[0227] Based on the weight parameters corresponding to each candidate pooling operator, perform weighted summation on the K pooling feature vectors corresponding to each eigenvalue to obtain the weighted pooling feature vectors corresponding to each feature domain.

[0228] Optionally, based on the corresponding embodiment above Figure 14 In another embodiment of the processing device for the pooling operator provided by the embodiment of the present application, the processing unit 203 can specifically be used for:

[0229] Pool and compress each third feature vector through K candidate pooling operators in the pooling operator search space to obtain K pooling feature vectors corresponding to each eigenvalue;

[0230] Based on the weight parameters corresponding to each candidate pooling operator, perform weighted summation on the K pooling feature vectors corresponding to each eigenvalue to obtain the weighted pooling feature vectors corresponding to each feature domain.

[0231] On the other hand, the present application provides another schematic diagram of a computer device, as Figure 15 shown Figure 15FIG. 0 is a schematic structural diagram of a computer device provided by an embodiment of the present application. The computer device 300 may vary greatly due to different configurations or performances, and may include one or more central processing units (CPUs) 310 (for example, one or more processors) and a memory 320, and one or more storage media 330 (for example, one or more mass storage devices) storing application programs 331 or data 332. Among them, the memory 320 and the storage media 330 may be transient storage or persistent storage. The programs stored in the storage media 330 may include one or more modules (not shown in the figure), and each module may include a series of instruction operations on the computer device 300. Further, the central processor 310 may be configured to communicate with the storage media 330 and execute a series of instruction operations in the storage media 330 on the computer device 300.

[0232] The computer device 300 may further include one or more power supplies 340, one or more wired or wireless network interfaces 350, one or more input / output interfaces 360, and / or one or more operating systems 333, such as Windows Server TM , Mac OS X TM , Unix TM , Linux TM , FreeBSD TM and so on.

[0233] The above computer device 300 is further configured to execute the steps in the corresponding embodiments as Figures 2 to 8 shown.

[0234] On the other hand, the present application provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps in the method described in the embodiments as Figures 2 to 8 shown are implemented.

[0235] On the other hand, the present application provides a computer program product including a computer program, and when the computer program is executed by a processor, the steps in the method described in the embodiments as Figures 2 to 8 shown are implemented.

[0236] Those skilled in the art can clearly understand that for the convenience and simplicity of description, the specific working processes of the above-described systems, devices, and units can refer to the corresponding processes in the foregoing method embodiments, and will not be described herein again.

[0237] In several embodiments provided in the present application, it should be understood that the disclosed systems, devices, and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed couplings or direct couplings or communication connections to each other can be through some interfaces, and the indirect couplings or communication connections of the devices or units can be in electrical, mechanical, or other forms.

[0238] The units described as separate components may or may not be physically separated. The components displayed as units may or may not be physical units, that is, they can be located in one place or distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0239] In addition, the functional units in each embodiment of the present application can be integrated into a processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit. The above-mentioned integrated units can be implemented in the form of hardware or in the form of software functional units.

[0240] If the above-mentioned integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of the present application, in essence, or the part that contributes to the prior art, or all or part of this technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in each embodiment of the present application. And the aforementioned storage medium includes: USB flash drives, mobile hard disks, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical discs and other various media that can store program codes.

Claims

1. A method for processing a pooling operator, characterized in that, it includes: Obtain the first feature vector corresponding to each target feature value in each target feature domain; The target feature domain is the multimedia resource viewed by the target object; the target feature value includes the category of the multimedia resource viewed by the target object; Based on the pooling operator search space, match a target pooling operator for each of the target feature domains, where the pooling operator search space includes K candidate pooling operators, the target pooling operator is the candidate pooling operator with the largest weight value, and K is an integer greater than or equal to 1; For each of the target feature domains, pool and compress the first feature vector corresponding to each target feature value through the target pooling operator to obtain the target pooling feature vector corresponding to each target feature domain; calculate the loss based on the target pooling feature vector corresponding to each target feature domain to obtain the target loss value; Update the model parameters of the recommendation model based on the target loss value to obtain a target recommendation model; the target recommendation model is a multimedia resource recommendation model.

2. The method according to claim 1, characterized in that, Before matching the target pooling operator for each of the target feature domains based on the pooling operator search space, the method further includes: Based on the pooling operator search space, use the target sample set to perform multiple rounds of training on the pooling operator search structure of the recommendation model; When the structural model parameters and weight parameters in the pooling operator search structure meet the convergence condition, select the candidate pooling operator corresponding to the maximum weight parameter from the K candidate pooling operators as the target pooling operator for each feature domain in the target sample set.

3. The method according to claim 2, characterized in that, The target sample set includes a verification sample set and a training sample set; The multiple rounds of training the pooling operator search structure of the recommendation model using the target sample set based on the pooling operator search space include: Pass the verification samples in the verification sample set through the pooling operator search structure to adjust the weight parameters in the pooling operator search structure; Pass the training samples in the training sample set through the pooling operator search structure to adjust the structural model parameters in the pooling operator search structure.

4. The method according to claim 3, characterized in that, The passing the verification samples in the verification sample set through the pooling operator search structure to adjust the weight parameters in the pooling operator search structure includes: Obtain the second feature vector corresponding to each feature value in each feature domain of the verification sample; Input the second feature vector into the pooling operator search structure to obtain the weighted pooling feature vector corresponding to each feature domain; Obtain the predicted value corresponding to the verification sample based on the weighted pooling feature vector corresponding to each feature domain; Calculate the actual value and the predicted value of the verification sample through a target loss function to obtain the predicted loss value corresponding to the verification sample; When the predicted loss value corresponding to the verification sample does not meet the convergence condition, the weight parameters in the pooling operator search structure are adjusted.

5. The method according to claim 3, wherein, the adjusting the structural model parameters in the pooling operator search structure by passing the training samples in the training sample set through the pooling operator search structure includes: obtaining a third feature vector corresponding to each eigenvalue in each feature domain of the training sample; inputting the third feature vector into the pooling operator search structure to obtain a weighted pooling feature vector corresponding to each feature domain; obtaining a predicted value corresponding to the verification sample based on the weighted pooling feature vector corresponding to each feature domain; calculating the predicted loss value corresponding to the training sample by using an objective loss function for the actual value and the predicted value of the training sample; when the predicted loss value corresponding to the training sample does not meet the convergence condition, adjusting the structural model parameters in the pooling operator search structure.

6. The method according to claim 4, wherein, the inputting the second feature vector into the pooling operator search structure to obtain a weighted pooling feature vector corresponding to each feature domain includes: respectively pooling and compressing each second feature vector through K candidate pooling operators in the pooling operator search space to obtain K pooling feature vectors corresponding to each eigenvalue; performing weighted summation on the K pooling feature vectors corresponding to each eigenvalue based on the weight parameters corresponding to each candidate pooling operator to obtain a weighted pooling feature vector corresponding to each feature domain.

7. The method according to claim 5, wherein, the inputting the third feature vector into the pooling operator search structure to obtain a weighted pooling feature vector corresponding to each feature domain includes: respectively pooling and compressing each third feature vector through K candidate pooling operators in the pooling operator search space to obtain K pooling feature vectors corresponding to each eigenvalue; performing weighted summation on the K pooling feature vectors corresponding to each eigenvalue based on the weight parameters corresponding to each candidate pooling operator to obtain a weighted pooling feature vector corresponding to each feature domain.

8. A processing device for a pooling operator, wherein, it includes: an obtaining unit, configured to obtain a first feature vector corresponding to each target eigenvalue in each target feature domain; the target feature domain is a multimedia resource viewed by a target object; the target eigenvalue includes the category of the multimedia resource viewed by the target object; a determining unit, configured to match a target pooling operator for each target feature domain based on a pooling operator search space, where the pooling operator search space includes K candidate pooling operators, the target pooling operator is the candidate pooling operator with the largest weight value, and K is an integer greater than or equal to 1; A processing unit, which is configured to, for each of the target feature domains, perform pooling compression on the first feature vector corresponding to each target feature value through the target pooling operator to obtain a target pooling feature vector corresponding to each target feature domain; The processing unit is further configured to calculate a target loss value based on the target pooling feature vector corresponding to each target feature domain; The processing unit is further configured to update the model parameters of the recommendation model based on the target loss value to obtain a target recommendation model; the target recommendation model is a multimedia resource recommendation model.

9. The apparatus according to claim 8, wherein, The processing unit is further configured to perform multiple rounds of training on the pooling operator search structure of the recommendation model using a target sample set based on the pooling operator search space; The determining unit is further configured to, when the structural model parameters and weight parameters in the pooling operator search structure meet the convergence condition, select, from the K candidate pooling operators, the candidate pooling operator corresponding to the maximum weight parameter for each feature domain in the target sample set as the target pooling operator.

10. The apparatus according to claim 9, wherein, The target sample set includes a verification sample set and a training sample set; Specifically, the processing unit is configured to: Pass the verification samples in the verification sample set through the pooling operator search structure to adjust the weight parameters in the pooling operator search structure; Pass the training samples in the training sample set through the pooling operator search structure to adjust the structural model parameters in the pooling operator search structure.

11. The apparatus according to claim 10, wherein, Specifically, the processing unit is configured to: Obtain a second feature vector corresponding to each feature value in each feature domain of the verification sample; Input the second feature vector into the pooling operator search structure to obtain a weighted pooling feature vector corresponding to each feature domain; Obtain a predicted value corresponding to the verification sample based on the weighted pooling feature vector corresponding to each feature domain; Calculate the predicted loss value corresponding to the verification sample by using a target loss function for the actual value and the predicted value of the verification sample; When the predicted loss value corresponding to the verification sample does not meet the convergence condition, adjust the weight parameters in the pooling operator search structure.

12. The apparatus according to claim 10, wherein, Specifically, the processing unit is configured to: Obtain a third feature vector corresponding to each feature value in each feature domain of the training sample; Input the third feature vector into the pooling operator search structure to obtain a weighted pooling feature vector corresponding to each feature domain; Obtain a predicted value corresponding to the verification sample based on the weighted pooling feature vector corresponding to each feature domain; Calculate the predicted loss value corresponding to the training sample by using a target loss function for the actual value and the predicted value of the training sample; When the predicted loss value corresponding to the training sample does not satisfy the convergence condition, the structural model parameters in the pooling operator search structure are adjusted.

13. The apparatus according to claim 11, wherein, the processing unit is specifically configured to: pool and compress each of the second feature vectors through K candidate pooling operators in the pooling operator search space to obtain K pooled feature vectors corresponding to each eigenvalue; perform weighted summation on the K pooled feature vectors corresponding to each eigenvalue based on the weight parameter corresponding to each candidate pooling operator to obtain a weighted pooled feature vector corresponding to each feature domain.

14. The apparatus according to claim 12, wherein, the processing unit is specifically configured to: pool and compress each of the third feature vectors through K candidate pooling operators in the pooling operator search space to obtain K pooled feature vectors corresponding to each eigenvalue; perform weighted summation on the K pooled feature vectors corresponding to each eigenvalue based on the weight parameter corresponding to each candidate pooling operator to obtain a weighted pooled feature vector corresponding to each feature domain.

15. A computer device, comprising a memory, a processor, and a bus system, where the memory stores a computer program, wherein, when the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented; the bus system is used to connect the memory and the processor to enable communication between the memory and the processor.

16. A computer-readable storage medium, on which a computer program is stored, wherein, when the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.

17. A computer program product, comprising a computer program, wherein, when the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • Neural network system based on reusing small-scale convolutional neural network module

    CN107368886A

  • Neural Architecture Search Method, Image Processing Method And Apparatus, And Storage Medium

    US20220215227A1