Information recommendation methods and apparatus, electronic devices and storage media

By combining a shared network and a weighted learning network in a multi-task scoring model, the problem of inaccurate information recommendation in the real estate field is solved, achieving higher business opportunity rate and recommendation accuracy.

CN113901328BActive Publication Date: 2025-10-31KE COM (BEIJING) TECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111382306.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-11-19
Publication Date
2025-10-31
Estimated Expiration
2041-11-19

AI Technical Summary

Technical Problem

In the real estate sector, existing technologies for information recommendation rely on single-task scoring models based on click probability, resulting in inaccurate recommendations, low conversion rates after user clicks, and an inability to effectively improve business revenue.

Method used

A multi-task scoring model is adopted, which uses a combination of shared network and weighted learning network to segment input features and score different users on click and opportunity tasks. The overall scores are then ranked and recommended to target objects.

Benefits of technology

It improves the accuracy and business opportunity rate of information recommendation, avoids optimization conflicts between tasks during training, and enhances the performance of the recommendation model.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113901328B_ABST
    Figure CN113901328B_ABST
Patent Text Reader

Abstract

This disclosure provides an information recommendation method, apparatus, electronic device, and storage medium. The method includes: acquiring first user data corresponding to a first user, candidate object data corresponding to candidate objects, and a pre-trained multi-task scoring model. The input to the multi-task scoring model includes shared input from multiple tasks and unique input for each task. Based on the first user data and candidate object data, determining first feature data corresponding to the shared input and second feature data of the unique input for each task; obtaining a scoring result based on the first feature data, each second feature data, and the multi-task scoring model; determining a target object to be recommended from among the candidate objects based on the scoring result; and recommending relevant information of the target object to the first user. This disclosure effectively improves the accuracy of the recommended information.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to information recommendation technology, and in particular to an information recommendation method and apparatus, electronic device and storage medium. Background Technology

[0002] In business service sectors, such as real estate, it is often necessary to provide information recommendation services to users. In order to recommend information that better meets the user's needs, such as housing listings, it is usually necessary to recall a certain number of objects from a massive amount of information as target objects for recommendation to the user according to certain rules. However, existing technologies are usually based on single-task scoring models that determine the probability of a user clicking on each object, and then sort them based on the click probability to determine the target objects to be recommended to the user. This recommendation method is often not accurate enough, and a user's click may not necessarily generate business opportunities. Therefore, how to further improve the accuracy of user recommendation information and increase business revenue has become an urgent technical problem to be solved. Summary of the Invention

[0003] This disclosure provides an information recommendation method and apparatus, an electronic device, and a storage medium to address the problems of inaccurate information recommendations in the prior art.

[0004] One aspect of this disclosure provides an information recommendation method, comprising: acquiring first user data corresponding to a first user, candidate object data corresponding to candidate objects, and a pre-trained multi-task scoring model, wherein the input of the multi-task scoring model includes shared inputs for multiple tasks and unique inputs for each task; determining first feature data corresponding to the shared inputs and second feature data for the unique inputs of each task based on the first user data and the candidate object data; obtaining a scoring result based on the first feature data, each of the second feature data, and the multi-task scoring model, wherein the scoring result includes the scores of each candidate object in each task; determining a target object to be recommended from among the candidate objects based on the scoring result; and recommending relevant information of the target object to the first user.

[0005] In one embodiment of this disclosure, the multi-task scoring model includes at least two tasks, and the network structure of the multi-task scoring model includes a shared network, a weight learning network corresponding to each task, and an output network for each task. The shared network includes multiple parallel sub-networks. Obtaining a scoring result based on the first feature data, each of the second feature data, and the multi-task scoring model includes: inputting the first feature data into each sub-network in the shared network to obtain a first output result corresponding to each sub-network.

[0006] For each second feature data, the second feature data and the first feature data are input together into the weight learning network of the corresponding task to obtain the second output result of the weight learning network. The second output result includes the weights of each sub-network in the shared network. For each second output result, the second output result and each first output result are input into the output network of the corresponding task to obtain the output of the task. The output of each task is used as the scoring result.

[0007] In one embodiment of this disclosure, determining the target object to be recommended from the candidate objects based on the scoring results includes: sorting the candidate objects according to their scores in at least one task, and selecting a preset number of candidate objects with higher scores as the target objects.

[0008] In one embodiment of this disclosure, before acquiring the first user data corresponding to the first user, the candidate object data corresponding to the candidate object, and the pre-trained multi-task scoring model, the method further includes:

[0009] The training feature data and corresponding label data are obtained. The training feature data includes first training feature data for inputting into the shared network and second training feature data corresponding to each task. The first training feature data is input into each sub-network of the shared network, and each second training feature data is input into the weight learning network of the corresponding task to obtain the training output results of each task. Based on the training output results of each task and the corresponding label data, the loss of each task is determined. Based on the loss of each task, a comprehensive loss is determined. If the comprehensive loss meets a preset condition, the training ends and the multi-task scoring model is obtained. If the comprehensive loss does not meet the preset condition, the parameters are adjusted according to preset rules, and the next round of training begins until the comprehensive loss meets the preset condition.

[0010] In one embodiment of this disclosure, the candidate objects are candidate properties, and the multi-task scoring model includes two tasks: a click task and a business opportunity task. The step of determining the target property to be recommended from among the candidate objects based on the scoring results includes: sorting the candidate properties according to their scores in the click task or business opportunity task, and selecting a first preset number of candidate properties with higher scores as target properties; or, sorting the candidate properties according to their combined scores in the click task and business opportunity task, and selecting a first preset number of candidate properties with higher scores as target properties.

[0011] In one embodiment of this disclosure, determining the first feature data corresponding to the shared input and the second feature data of each task-specific input based on the first user data and the candidate object data includes: splitting the first user data and the candidate object data into first data and second data of each task according to a preset feature rule; performing feature extraction on the first data to obtain the first feature data, and performing feature extraction on each of the second data to obtain each of the second feature data.

[0012] In one embodiment of this disclosure, obtaining candidate object data corresponding to a candidate object includes: obtaining original object data; recalling at least one set of object data from the original object data according to at least one recall rule; and using each recalled set of object data as the candidate object data.

[0013] Another aspect of this disclosure provides a training method for a multi-task scoring model. The input of the network structure of the multi-task scoring model includes shared inputs for multiple tasks and unique inputs for each task. The method includes: acquiring training user data, training object data, and corresponding label data; determining, based on the training user data and the training object data, first training feature data corresponding to the shared inputs and second training feature data for the unique inputs of each task; training a pre-established multi-task scoring network based on the first training feature data and the second training feature data; and ending the training when the network loss meets a preset condition to obtain the multi-task scoring model.

[0014] In one embodiment of this disclosure, the multi-task scoring model includes at least two tasks. The network structure of the multi-task scoring model includes a shared network, weight learning networks corresponding to each task, and output networks for each task. The shared network includes multiple parallel sub-networks. The step of training the pre-established multi-task scoring network based on the first training feature data and the second training feature data, and ending training when the network loss meets a preset condition to obtain the multi-task scoring model, includes: inputting the first training feature data into each sub-network of the shared network, inputting each second training feature data into the weight learning network of the corresponding task, and obtaining the training output results for each task; determining the loss for each task based on the training output results and corresponding label data; determining the comprehensive loss based on the loss for each task; if the comprehensive loss meets the preset condition, ending training to obtain the multi-task scoring model; if the comprehensive loss does not meet the preset condition, adjusting the parameters according to preset rules and continuing training until the comprehensive loss meets the preset condition.

[0015] In another aspect of this disclosure, an information recommendation apparatus is provided, comprising: a first acquisition module, configured to acquire first user data corresponding to a first user, candidate object data corresponding to candidate objects, and a pre-trained multi-task scoring model, wherein the input of the multi-task scoring model includes shared inputs for multiple tasks and unique inputs for each task; a first determination module, configured to determine, based on the first user data and the candidate object data, first feature data corresponding to the shared inputs and second feature data for each task-specific inputs; a first processing module, configured to obtain a scoring result based on the first feature data, each of the second feature data, and the multi-task scoring model, wherein the scoring result includes the scores of each candidate object in each task; a second determination module, configured to determine, based on the scoring result, a target object to be recommended from among the candidate objects; and a sending module, configured to recommend relevant information of the target object to the first user.

[0016] In one embodiment of this disclosure, the multi-task scoring model includes at least two tasks. The network structure of the multi-task scoring model includes a shared network, weight learning networks corresponding to each task, and output networks for each task. The shared network includes multiple parallel sub-networks. The first processing module includes: a first unit, configured to input the first feature data into each sub-network of the shared network to obtain a first output result corresponding to each sub-network; a second unit, configured to input the second feature data and the first feature data together into the weight learning network of the corresponding task for each second feature data to obtain a second output result of the weight learning network, wherein the second output result includes the weights of each sub-network in the shared network; a third unit, configured to input the second output result and each of the first output results into the output network of the corresponding task for each second output result to obtain the output of the task; and a fourth unit, configured to use the output of each task as the scoring result.

[0017] In one embodiment of this disclosure, the second determining module is specifically used to: sort each candidate object according to the score of each candidate object in at least one task, and select a preset number of candidate objects with higher scores as the target object.

[0018] In one embodiment of this disclosure, the apparatus further includes: a second acquisition module, configured to acquire training feature data and corresponding label data, wherein the training feature data includes first training feature data for inputting into the shared network and second training feature data corresponding to each task; a second processing module, configured to input the first training feature data into each sub-network of the shared network, and input each second training feature data into the weight learning network of the corresponding task to obtain the training output result of each task; a third processing module, configured to determine the loss of each task based on the training output result of each task and the corresponding label data; a fourth processing module, configured to determine the comprehensive loss based on the loss of each task; and a fifth processing module, configured to: if the comprehensive loss meets a preset condition, end the training and obtain the multi-task scoring model; if the comprehensive loss does not meet the preset condition, adjust the parameters according to preset rules and enter the next round of training until the comprehensive loss meets the preset condition.

[0019] In one embodiment of this disclosure, the candidate object is a candidate property, and the multi-task scoring model includes two tasks: a click task and a business opportunity task; the second determining module is specifically used to: sort the candidate properties according to their scores in the click task or business opportunity task, and select a first preset number of candidate properties with higher scores as target properties; or, sort the candidate properties according to their combined scores in the click task and business opportunity task, and select a first preset number of candidate properties with higher scores as target properties.

[0020] In one embodiment of this disclosure, the first determining module is specifically used to: split the first user data and the candidate object data into first data and second data for each task according to preset feature rules; perform feature extraction on the first data to obtain the first feature data, and perform feature extraction on each of the second data to obtain each of the second feature data.

[0021] In one embodiment of this disclosure, the first acquisition module is specifically used to: acquire original object data;

[0022] At least one set of object data is recalled from the original object data according to at least one recall rule; each recalled set of object data is used as the candidate object data.

[0023] In another aspect of this disclosure, a training apparatus for a multi-task scoring model is provided. The input of the network structure of the multi-task scoring model includes shared inputs for multiple tasks and unique inputs for each task. The apparatus includes: a third acquisition module for acquiring training user data, training object data, and corresponding label data; a third determination module for determining, based on the training user data and the training object data, first training feature data corresponding to the shared inputs and second training feature data for the unique inputs of each task; and a first training module for training a pre-established multi-task scoring network based on the first training feature data and the second training feature data, and ending the training when the network loss meets a preset condition to obtain the multi-task scoring model.

[0024] In one embodiment of this disclosure, the multi-task scoring model includes at least two tasks. The network structure of the multi-task scoring model includes a shared network, weight learning networks corresponding to each task, and output networks for each task. The shared network includes multiple parallel sub-networks. The first training module is specifically used for: inputting the first training feature data into each sub-network of the shared network, inputting each second training feature data into the weight learning network of the corresponding task, and obtaining the training output results of each task; determining the loss of each task based on the training output results of each task and the corresponding label data; determining the comprehensive loss based on the loss of each task; if the comprehensive loss meets a preset condition, then ending the training to obtain the multi-task scoring model; if the comprehensive loss does not meet the preset condition, then adjusting the parameters according to preset rules and entering the next round of training until the comprehensive loss meets the preset condition.

[0025] According to another aspect of the present disclosure, a computer-readable storage medium is provided, the storage medium storing a computer program for performing the methods described in any of the above embodiments of the present disclosure.

[0026] According to another aspect of the present disclosure, an electronic device is provided, the electronic device comprising: a processor; a memory for storing executable instructions of the processor; the processor being configured to read the executable instructions from the memory and execute the instructions to implement the method described in any of the above embodiments of the present disclosure.

[0027] According to another aspect of the present disclosure, a computer program product is provided, including a computer program / instructions that, when executed by a processor, implement the methods described in any of the above embodiments of the present disclosure.

[0028] The information recommendation method, apparatus, electronic device, and storage medium disclosed herein obtain scores for each candidate property for each user based on a multi-task scoring model. Then, based on the multi-task scoring results, the method determines the target property to be recommended to the user, providing more accurate property information and effectively improving the accuracy of the recommendation information. Furthermore, the multi-task scoring model divides the input features of the multi-task scoring model according to the feature dependencies of different tasks, avoiding optimization conflicts between tasks during training. This results in a more efficient multi-task scoring model, further improving the accuracy of the recommendation information.

[0029] The technical solutions of this disclosure will be further described in detail below with reference to the accompanying drawings and embodiments. Attached Figure Description

[0030] The accompanying drawings, which form part of this specification, illustrate embodiments of this disclosure and, together with the description, serve to explain the principles of this disclosure.

[0031] This disclosure will become clearer with reference to the accompanying drawings and the following detailed description, wherein:

[0032] Figure 1 This is an exemplary application scenario of the information recommendation method provided in this disclosure;

[0033] Figure 2 This is a flowchart illustrating an exemplary embodiment of the information recommendation method provided in this disclosure;

[0034] Figure 3 This is a flowchart illustrating step 203 provided in an exemplary embodiment of this disclosure;

[0035] Figure 4 This is a schematic diagram of the network structure of a multi-task scoring model provided in an exemplary embodiment of this disclosure;

[0036] Figure 5 This is a schematic diagram of an exemplary network structure for a multi-task scoring model provided in an exemplary embodiment of this disclosure;

[0037] Figure 6 This is a flowchart illustrating a training method for a multi-task scoring model provided in an exemplary embodiment of this disclosure;

[0038] Figure 7 This is a schematic diagram of the structure of an information recommendation device provided in an exemplary embodiment of the present disclosure;

[0039] Figure 8 This is a schematic diagram of the structure of the first processing module provided in an exemplary embodiment of this disclosure;

[0040] Figure 9This is a schematic diagram of the structure of an information recommendation device provided in another exemplary embodiment of this disclosure;

[0041] Figure 10 This is a schematic diagram of the structure of a training device for a multi-task scoring model provided in an exemplary embodiment of this disclosure;

[0042] Figure 11 This is a schematic diagram of the structure of an application embodiment of the electronic device disclosed herein. Detailed Implementation

[0043] Various exemplary embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. It should be noted that, unless otherwise specifically stated, the relative arrangement, numerical expressions, and values ​​of the components and steps set forth in these embodiments do not limit the scope of the present disclosure.

[0044] Those skilled in the art will understand that the terms "first," "second," etc., in the embodiments of this disclosure are only used to distinguish different steps, devices, or modules, and do not represent any specific technical meaning, nor do they indicate a necessary logical order between them.

[0045] It should also be understood that in the embodiments disclosed herein, "a plurality of" may refer to two or more, and "at least one" may refer to one, two or more.

[0046] It should also be understood that any component, data or structure mentioned in the embodiments of this disclosure can generally be understood as one or more unless expressly defined or given to the contrary in the context.

[0047] Furthermore, the term "and / or" in this disclosure is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. Additionally, the character " / " in this disclosure generally indicates that the preceding and following related objects have an "or" relationship.

[0048] It should also be understood that the description of the various embodiments in this disclosure emphasizes the differences between the various embodiments, and the similarities or similarities can be referred to each other. For the sake of brevity, they will not be described in detail.

[0049] At the same time, it should be understood that, for ease of description, the dimensions of the various parts shown in the accompanying drawings are not drawn according to actual scale.

[0050] The following description of at least one exemplary embodiment is merely illustrative and is in no way intended to limit this disclosure or its application or use.

[0051] Techniques, methods, and equipment known to those skilled in the art may not be discussed in detail, but where appropriate, such techniques, methods, and equipment should be considered part of the specification.

[0052] It should be noted that similar labels and letters in the following figures indicate similar items; therefore, once an item is defined in one figure, it does not need to be discussed further in subsequent figures.

[0053] The embodiments disclosed herein can be applied to electronic devices such as terminal devices, computer systems, and servers, and can operate together with a wide range of other general-purpose or special-purpose computing system environments or configurations. Examples of well-known terminal devices, computing systems, environments, and / or configurations suitable for use with electronic devices such as terminal devices, computer systems, and servers include, but are not limited to: personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputer systems, mainframe computer systems, and distributed cloud computing environments including any of the above systems, etc.

[0054] Electronic devices such as terminal devices, computer systems, and servers can be described in the general context of computer system executable instructions (such as program modules) executed by a computer system. Typically, program modules can include routines, programs, object programs, components, logic, data structures, etc., which perform specific tasks or implement specific abstract data types. Computer systems / servers can be implemented in distributed cloud computing environments, where tasks are executed by remote processing devices linked through communication networks. In distributed cloud computing environments, program modules can reside on local or remote computing system storage media, including storage devices.

[0055] This disclosure outlines

[0056] In the process of realizing this disclosure, the inventors discovered that in business service fields such as real estate, when recommending property information to users, the service platform first exposes a batch of properties sorted by certain factors. Users click on properties of interest, view detailed property information, and then a business opportunity occurs. This is an exposure-click-business opportunity path. However, during exposure, existing technologies usually target clicks for recall and sorting, that is, predicting whether users will click on the current property. But whether users are satisfied with the property after clicking cannot be predicted. Therefore, the property information recommended to users is often not accurate enough, resulting in a low business opportunity rate.

[0057] Exemplary Overview

[0058] Figure 1This is an exemplary application scenario of the information recommendation method provided in this disclosure.

[0059] In the real estate sector, to generate more business opportunities, relevant property information is proactively recommended to users for selection. Utilizing the technical solution provided in this disclosure, the likelihood of users engaging in at least two behaviors, such as clicks and business opportunity activities, on various properties can be comprehensively considered, providing users with more accurate property information. Property information recommendations can be implemented based on a service platform and a user application (APP). The service platform can be deployed on any feasible electronic device, such as a server or other computer system. The server can be a single server, a server cluster, or a cloud server. The user application (APP) can be deployed on user terminal devices (such as smartphones, tablets, desktop computers, etc.), which users can download and install according to their needs. The service platform can extract historical user behavior on various properties from a large amount of historical user data to form training data for training a multi-task scoring model. This multi-task scoring model is used to score each candidate property on multiple targets when recommending properties to a user. Based on the multi-task scoring results, the candidate properties are ranked, and the top-N ranked candidate properties are selected as the target properties to be recommended to the user for viewing and selection. Since the ranking is based on a score that can combine at least two tasks such as click behavior and business opportunity behavior, it can effectively improve the accuracy of recommendations, thereby increasing the business opportunity rate and business revenue, while also effectively improving the user experience.

[0060] Exemplary methods

[0061] Figure 2 This is a flowchart illustrating an exemplary embodiment of an information recommendation method provided in this disclosure. The method includes the following steps:

[0062] Step 201: Obtain the first user data corresponding to the first user, the candidate object data corresponding to the candidate object, and the pre-trained multi-task scoring model. The input of the multi-task scoring model includes the shared input of multiple tasks and the unique input of each task.

[0063] The first user can be any user from whom information is being recommended, such as any user currently being recommended. The first user's data can include basic information (e.g., browsing behavior, activity levels), preference information (e.g., room preferences, address preferences, etc., obtained by aggregating user behavior information on the app), and query conditions (query conditions entered by the user in historical searches). Candidate objects can be all or some of the currently maintained massive objects, or a batch of objects recalled from the massive objects based on one or more factors, such as click-through rate, popularity, or business opportunity rate. Candidate object data includes basic attribute information of the candidate objects. For example, if a candidate object is a candidate property, the candidate property data includes basic attribute information for each candidate property, such as location, price, and number of rooms. A multi-task scoring model is used to score each candidate object for the user on multiple tasks when recommending objects to them. The score of each candidate object on each task represents the probability that the first user will perform that task on that candidate object.

[0064] Multi-task scoring models require pre-training. For example, a service platform can extract historical user behavior across various properties from a large amount of historical user data to form training data for training the multi-task scoring model. Since there are multiple tasks, and the differences between tasks can be significant, different tasks may have different dependency features. During training, certain dependency features of one task may negatively impact the optimization of another task. To address this issue, the network architecture of this disclosed multi-task scoring model sets shared inputs and task-specific inputs for multiple tasks. The shared inputs are used to input feature data shared across multiple tasks, while the task-specific inputs are used to input the unique features of each task. This ensures that the unique features of each task only affect that task and not others, effectively resolving feature dependency conflicts between tasks and improving the performance of the multi-task scoring model.

[0065] Step 202: Based on the first user data and candidate object data, determine the first feature data corresponding to the shared input and the second feature data of the task-specific input.

[0066] Since the network architecture of the multi-task scoring model includes shared input and task-specific input, after obtaining the first user data and candidate object data, the first feature data corresponding to the shared input and the second feature data of the task-specific input can be determined based on the first user data and candidate object data according to preset feature rules. The preset feature rules can be set according to actual needs, and the feature division must be consistent with the feature division during training.

[0067] Step 203: Based on the first feature data, each second feature data, and the multi-task scoring model, obtain the scoring results, which include the scores of each candidate object in each task.

[0068] In this model, the score for each candidate object in each task represents the probability that the first user will perform the task for that candidate object. After obtaining the first feature data and the second feature data for each task, the first feature data can be used as the shared input of the multi-task scoring model, and each second feature data can be used as the unique input for each task. The scores for each task are obtained after passing through the multi-task scoring model, and these scores are used as the scoring results.

[0069] Step 204: Based on the scoring results, determine the target objects to be recommended from among the candidate objects.

[0070] After obtaining the scoring results, the candidate objects can be sorted based on the scoring results, and the target object to be recommended can be determined from each candidate object according to the sorting results.

[0071] In one optional example, the sorting can be based on the score of any one task or on the combined score of at least two tasks in a multi-task set. The specific sorting can be set according to actual needs, and this embodiment does not impose any limitations.

[0072] For example, for a property recommendation business, a multi-task scoring model can include two tasks: a click task and a sales opportunity task. When sorting, the scores can be sorted according to the sales opportunity task, the click task, or the combined scores of the click and sales opportunity tasks. The combined score can be the sum of the scores of the two tasks or a weighted average with different weights. The specific settings can be configured according to actual needs.

[0073] The target objects obtained can include one or more objects, and the specific number of recommendations can be set according to actual needs.

[0074] Step 205: Recommend relevant information about the target object to the first user.

[0075] After obtaining the target objects to be recommended, the relevant information of the target objects can be recommended to the first user.

[0076] In an optional example, to further improve the user experience, the recommended target objects can be a list of objects sorted by score, so that the terminal device can display them according to the sorting results, allowing users to see the most relevant recommendations first.

[0077] In one optional example, the specific content of the recommended target property information can be set according to actual needs. For example, it could first recommend some important information about the target property to form a display list. When a user clicks on each property in the list, they can enter a details page to view the property's detailed information. The specific display method is not limited.

[0078] The information recommendation method provided in this disclosure obtains scores for each candidate property for each user based on a multi-task scoring model, and then determines the target object to be recommended to the user based on the multi-task scoring results, thus recommending more accurate object information to the user and effectively improving the accuracy of the recommendation information. Furthermore, the multi-task scoring model divides the input features of the multi-task scoring model according to the feature dependencies of different tasks, avoiding optimization conflicts between tasks during training, thereby obtaining a multi-task scoring model with better performance and further improving the accuracy of the recommendation information.

[0079] In one optional example, Figure 3 This is a flowchart illustrating step 203 provided in an exemplary embodiment of this disclosure. In this example, the multi-task scoring model includes at least two tasks, and the network structure of the multi-task scoring model includes a shared network, weight learning networks corresponding to each task, and output networks for each task. The shared network includes multiple parallel sub-networks; the corresponding step 203 may specifically include the following steps:

[0080] Step 2031: Input the first feature data into each subnetwork in the shared network to obtain the first output result corresponding to each subnetwork.

[0081] In this system, each subnetwork of the shared network is used to learn different combinations of the first feature data.

[0082] Step 2032: For each second feature data, input the second feature data and the first feature data together into the weight learning network of the corresponding task to obtain the second output result of the weight learning network. The second output result includes the weights of each sub-network in the shared network.

[0083] The weight learning network for each task is used to obtain the weights of the first output of each sub-network for that task. Its inputs are the unique features (i.e., the second feature data of the task) and the shared features (i.e., the first feature data) of that task.

[0084] Step 2033: For each second output result, input the second output result and each first output result into the output network of the corresponding task to obtain the output of the task.

[0085] Step 2034: Use the output of each task as the scoring result.

[0086] By obtaining the different weights of each subnetwork for different tasks, the first output of each subnetwork can be weighted to obtain the input of the output network for the corresponding task.

[0087] Each task has its own output network. The second output of the weight learning network for that task and the first output of each sub-network of the shared network are input into the output network corresponding to that task. The output network will weight the first output of each sub-network based on the weight of the second output, and after other related processing, obtain the output of the task. The first output of each sub-network after different weightings represents the different impacts of the shared features on different tasks. Therefore, the obtained scoring results have high accuracy on each task.

[0088] For example, Figure 4 This is a schematic diagram of the network structure of a multi-task scoring model provided in an exemplary embodiment of this disclosure. This example uses two tasks, where the shared network includes four sub-networks. In practical applications, the number of sub-networks can be set according to actual needs, as can the number of network layers in each sub-network. For example, a sub-network can be a deep neural network including an input layer, hidden layers, and an output layer, where the hidden layer can include one or more neural network layers. Circles represent neuron nodes (referred to as nodes). The number of network layers and the number of neuron nodes per layer are exemplary and can be set according to actual needs in practical applications. Different sub-networks in the shared network are used to learn different combinations of the first feature data; therefore, the specific structures of different sub-networks are different, or the network parameters may be different even if the structures are the same. The specific settings can be made according to actual needs. The weight learning network for each task learns the weights of each sub-network in that task. The specific structure of the weight learning network can be a deep neural network including an input layer, hidden layers, and an output layer. The hidden layers can include one or more neural network layers, and the number of hidden layers and the number of neurons in each layer can be set according to actual needs. The magnitude of the weights represents the importance of the sub-network's learned output to the task. Thus, different combinations of features learned by each sub-network of the shared network have different effects on different tasks. During training and optimization, this can effectively reduce optimization conflicts between tasks with significant differences, further improving the effectiveness and accuracy of the multi-task scoring model on each task. The output network for each task can be any implementable classification network, specifically including an input layer, hidden layers, and an output layer. The output result is the probability that a user will perform the task on an object, or the output result can include both the probability of performing the task and the probability of not performing the task, which can be set according to actual needs. It should be noted that, based on the connection relationships between the various network parts, the input layer of one network can be the output layer of another network.

[0089] For example, Figure 5 This is a schematic diagram of an exemplary network structure for a multi-task scoring model provided in an exemplary embodiment of this disclosure. The numbers on the nodes are used to clearly indicate the number of nodes in each layer. The shared network includes four sub-networks, each with an input layer containing seven nodes (the seven nodes are the shared input). The first sub-network (from left to right) has two layers: an input layer and an output layer (containing four nodes). The second sub-network has three layers: an input layer with seven nodes, an intermediate layer (containing 16 nodes), and an output layer (containing four nodes). The third sub-network has four layers: an input layer, two intermediate layers (each with 16 nodes), and an output layer (containing four nodes). The fourth sub-network has five layers: an input layer, three intermediate layers (containing 16, 32, and 16 nodes respectively), and an output layer (containing four nodes). It can be seen that the first sub-network has a simpler structure and is used to learn simple feature combinations. The weight learning network for Task 1 has... The network consists of 5 layers: an input layer (9 nodes) including 2 nodes for the unique input of Task 1 and 7 nodes for the shared input; 3 intermediate layers each with 16 nodes; and an output layer with 4 nodes. The weight learning network for Task 2 also consists of 5 layers: an input layer (9 nodes) including 2 nodes for the unique input of Task 2 and 7 nodes for the shared input; 3 intermediate layers each with 16 nodes; and an output layer with 4 nodes. The output network for Task 1 consists of 5 layers: an input layer (20 nodes) including 4 nodes for the output layer of the weight learning network for Task 1 and output nodes for each subnetwork; 3 intermediate layers with 16, 32, and 16 nodes respectively; and an output layer with 1 node. Similarly, the output network for Task 2 consists of 5 layers: an input layer (20 nodes) including 4 nodes for the output layer of the weight learning network for Task 2 and output nodes for each subnetwork; 3 intermediate layers with 16, 32, and 16 nodes respectively; and an output layer with 1 node. Among them, the unique inputs for Task 1 can be, for example, two features: the number of clicks and the average price of the property clicked. The unique inputs for Task 2 can be, for example, two features: the number of business opportunities and the average price of the property in the business opportunity. The shared inputs can include features formed by user-related features and property-related features.

[0090] In practical applications, the number of output layer nodes in the weighted learning network may not be the same as the number of subnetworks. For example, if there are 4 subnetworks, the number of output layer nodes in the weighted learning network may be 3. This means that different tasks can select a subset of subnetworks from multiple subnetworks for weighting. The structure of the weighted learning network can also be set differently for different tasks, and the structure of the output network can also be set differently for different tasks. The specific settings can be determined according to actual needs and are not limited to the structure shown in the figure above.

[0091] In an optional example, step 204, which determines the target object to be recommended from the candidate objects based on the scoring results, includes: sorting the candidate objects according to their scores in at least one task, and selecting a preset number of candidate objects with higher scores as the target objects.

[0092] Specifically, after obtaining the scores of each candidate in each task, the candidates can be sorted according to the score of any one task, or according to the combined score of at least two tasks. The combined score can be the sum of the scores of each task, or a weighted average with different weights, which can be set according to actual needs. For example, in the property recommendation business, after obtaining the scores of each candidate property in the click task and the opportunity task, the candidates can be sorted according to the score of the opportunity task, the score of the click task, or the combined score of the click task and the opportunity task.

[0093] In an optional example, the multi-task scoring model needs to be pre-trained. That is, before obtaining the first user data corresponding to the first user, the candidate object data corresponding to the candidate object, and the pre-trained multi-task scoring model in step 201, the method of this disclosure further includes: obtaining training feature data and corresponding label data, wherein the training feature data includes first training feature data for inputting into the shared network and second training feature data corresponding to each task; inputting the first training feature data into each sub-network of the shared network, and inputting each second training feature data into the weight learning network of the corresponding task to obtain the training output results of each task; determining the loss of each task based on the training output results of each task and the corresponding label data; determining the comprehensive loss based on the loss of each task; if the comprehensive loss meets the preset conditions, then the training ends and the multi-task scoring model is obtained; if the comprehensive loss does not meet the preset conditions, then the parameters are adjusted according to the preset rules and the next round of training is entered until the comprehensive loss meets the preset conditions.

[0094] The tag data represents whether historical users performed various tasks on different objects, such as whether a historical user clicked on a property listing and whether a business opportunity was generated. Each training sample data includes user data for a historical user, object data for an object, and the historical user's behavior tag for that object. The behavior tag can be represented by 1 or 0. For example, 1 indicates that the historical user performed the task corresponding to that behavior on the object, such as clicking on the property listing, which means that a click was generated on the property listing. The training feature data can be obtained based on the training sample data and preset feature rules. The obtained training feature data includes the first training feature data shared with the input and the second training feature data for each task. By inputting the first training feature data and each of the second training feature data into the corresponding network parts, the output results of each task can be obtained, which are called training output results. Based on the training output results of each task and the corresponding label data, the loss of each task can be determined by using a preset loss function. Then, based on the loss of each task and the preset weighting rule, the comprehensive loss can be determined. The preset weighting rule can be set according to actual needs. If the comprehensive loss meets the preset conditions, it means that the training is approaching convergence, and the training can be terminated to obtain a trained multi-task scoring model. If the comprehensive loss does not meet the preset conditions, the parameters need to be adjusted and training needs to continue. The parameters can include network parameters, the number of layers in each part of the network, the number of sub-networks, etc., which can be set according to actual needs. This disclosure does not limit the specific settings.

[0095] In one optional example, the training process is explained in detail using the training and optimization of a multi-task scoring model for property matching. See [link to example]. Figure 4 The network structure is as follows: Task 1 is a click task, and Task 2 is a business opportunity task. The training of the model includes the following steps:

[0096] 1. Prepare the dataset

[0097] For example, business data from a recent period (e.g., 7 days, 30 days) can be used to extract user behavior towards each property as a label. This label includes two values: whether a click was made and whether a sales opportunity was generated, which can be represented using different symbols. Based on business data, user and property data can be linked through user identifiers (e.g., user ID) and property identifiers (e.g., property ID), including but not limited to basic user information, user preference information, user behavior information, and basic property information.

[0098] The data is used to associate and integrate the behavior of each user with each property over a period of time, as well as user data and property data, as a training dataset. Each sample data is, for example, <user data, property data, behavior / label>.

[0099] 2. Construct the model network

[0100] You can use TensorFlow or PyTorch frameworks to build model networks. Construct a network with a certain number of network layers according to business logic. The final output has two target tasks, corresponding to click tasks and business opportunity tasks.

[0101] 3. Model Training

[0102] After constructing the model network, training and optimization are performed based on the training dataset obtained above. Optionally, any implementable optimizer can be used for training optimization, such as the Adam optimizer, SGD, etc., which can be set according to actual needs.

[0103] 4. Parameter Adjustment

[0104] Based on the output of the model training and the label data, adjust the model parameters, which may include the number of network layers, the number of sub-networks, etc.

[0105] This disclosure achieves training and optimization for multiple tasks through a single modeling process, effectively improving optimization efficiency. Furthermore, by combining a shared network with a weighted learning network, it enables the separate learning of correlations and conflicts between different tasks. This ensures that dependency features of one task that negatively impact the optimization of other tasks are only used for the dependency of that task and do not participate in the shared network. The weighted learning network in the shared network assigns greater weight to feature combinations that are more important to the task and smaller weight to feature combinations that are less important to the task. This allows for the selection of dependencies of different tasks on different features, further improving optimization efficiency and model performance.

[0106] In one optional example, the candidate objects are candidate properties, and the multi-task scoring model includes two tasks: click task and opportunity task. Based on the scoring results, the target objects to be recommended are determined from each candidate object, including: sorting each candidate property according to the score of each candidate property in the click task or opportunity task, and taking a first preset number of candidate properties with higher scores as target properties; or, sorting each candidate property according to the comprehensive score of each candidate property in the click task and opportunity task, and taking a first preset number of candidate properties with higher scores as target properties.

[0107] In one optional example, based on the first user data and candidate object data, determining the first feature data corresponding to the shared input and the second feature data of the task-specific input includes: splitting the first user data and candidate object data into first data and second data of each task according to preset feature rules; performing feature extraction on the first data to obtain the first feature data, and performing feature extraction on each of the second data to obtain each of the second feature data.

[0108] The preset feature rules can be set based on whether the features relied upon by different tasks in the actual scenario have a negative impact on the optimization of other tasks. Feature extraction can be carried out in any feasible way, and this disclosure does not impose any restrictions.

[0109] In one optional example, candidate objects can be the currently maintained massive number of objects. That is, the method disclosed herein is applied to the recall phase of a matching process, where the recall phase refers to finding a certain number of objects for the user from a massive number of objects, such as finding a certain number of properties from a massive number of listings. The target property obtained by the user is then used as a recall result.

[0110] In one optional example, obtaining candidate object data corresponding to candidate objects includes: obtaining original object data; recalling at least one set of object data from the original object data according to at least one recall rule; and using each recalled set of object data as candidate object data. That is, the method of this disclosure can also be used in the ranking stage of matching business. First, through multi-path recall (e.g., by click volume, popularity, or business opportunity rate), a batch of objects is obtained from each path of recall. The objects from each path of recall are then merged as candidate objects. A multi-task scoring model based on this disclosure is used to score the candidate objects and rank them, placing the objects from which the user is most likely to engage in the behavior at the top.

[0111] Any of the information recommendation methods provided in this disclosure can be executed by any suitable device with data processing capabilities, including but not limited to: terminal devices and servers. Alternatively, any of the information recommendation methods provided in this disclosure can be executed by a processor, such as by a processor executing any of the information recommendation methods mentioned in this disclosure by calling corresponding instructions stored in memory. Further details will not be elaborated below.

[0112] Another embodiment of this disclosure also provides a training method for a multi-task scoring model, used for training the multi-task scoring model involved in the above embodiments. This method can be executed by any implementable electronic device, such as a server. This electronic device can be the same device as the electronic device used in the information recommendation method described above, or it can be a different device. Figure 6 This is a flowchart illustrating a training method for a multi-task scoring model provided in an exemplary embodiment of this disclosure. In this embodiment, the input to the network structure of the multi-task scoring model includes shared input from multiple tasks and unique input from each task; the method includes the following steps:

[0113] Step 301: Obtain training user data, training object data, and corresponding label data.

[0114] Step 302: Based on the training user data and training object data, determine the first training feature data corresponding to the shared input and the second training feature data of the task-specific input.

[0115] Step 303: Train the pre-established multi-task scoring network based on the first training feature data and the second training feature data. When the loss of the network meets the preset conditions, the training ends and the multi-task scoring model is obtained.

[0116] In one optional example, the multi-task scoring model includes at least two tasks. The network structure of the multi-task scoring model includes a shared network, weight learning networks corresponding to each task, and output networks for each task. The shared network includes multiple parallel sub-networks. The pre-established multi-task scoring network is trained based on first training feature data and second training feature data. When the network loss meets a preset condition, the training ends, and the multi-task scoring model is obtained. This includes: inputting the first training feature data into each sub-network of the shared network, inputting each second training feature data into the weight learning network of the corresponding task, and obtaining the training output results of each task; determining the loss of each task based on the training output results of each task and the corresponding label data; determining the comprehensive loss based on the loss of each task; if the comprehensive loss meets the preset condition, the training ends, and the multi-task scoring model is obtained; if the comprehensive loss does not meet the preset condition, the parameters are adjusted according to preset rules, and the next round of training begins until the comprehensive loss meets the preset condition.

[0117] It should be noted that the specific operations of the model training process have been described in detail in the aforementioned embodiments, and will not be repeated here.

[0118] Exemplary device

[0119] Figure 7 This is a schematic diagram of the structure of an information recommendation device provided in an exemplary embodiment of the present disclosure. The device in this embodiment can be used to implement corresponding method embodiments of the present disclosure, such as… Figure 7 The device shown includes: a first acquisition module 501, a first determination module 502, a first processing module 503, a second determination module 504, and a sending module 505.

[0120] The first acquisition module 501 is used to acquire the first user data corresponding to the first user, the candidate object data corresponding to the candidate object, and the pre-trained multi-task scoring model. The input of the multi-task scoring model includes the shared input of multiple tasks and the unique input of each task.

[0121] The first determining module 502 is used to determine the first feature data corresponding to the shared input and the second feature data of the task-specific input based on the first user data and candidate object data obtained by the first obtaining module 501.

[0122] The first processing module 503 is used to obtain a scoring result based on the first feature data, each second feature data, and the multi-task scoring model determined by the first determining module 502. The scoring result includes the score of each candidate object in each task.

[0123] The second determining module 504 is used to determine the target object to be recommended from among the candidate objects based on the scoring results obtained by the first processing module 503.

[0124] The sending module 505 is used to recommend the relevant information of the target object obtained by the second determining module 504 to the first user.

[0125] In one optional example, Figure 8 This is a schematic diagram of the structure of the first processing module provided in an exemplary embodiment of the present disclosure. In this example, the network structure of the multi-task scoring model includes a shared network, a weight learning network corresponding to each task, and an output network for each task. The shared network includes multiple parallel sub-networks. Correspondingly, the first processing module 503 includes: a first unit 5031, a second unit 5032, a third unit 5033, and a fourth unit 5034. The first unit 5031 is used to input the first feature data determined by the first determining module 502 into each sub-network in the shared network to obtain the first output result corresponding to each sub-network; the second unit 5032 is used to input the second feature data and the first feature data together into the weight learning network of the corresponding task for each second feature data determined by the first determining module 502 to obtain the second output result of the weight learning network, the second output result including the weights of each sub-network in the shared network; the third unit 5033 is used to input the second output result and each first output result obtained by the second unit 5032 into the output network of the corresponding task to obtain the output of the task; the fourth unit 5034 is used to use the output of each task obtained by the third unit 5033 as the scoring result.

[0126] In an optional example, the second determining module 504 is specifically used to: sort each candidate object according to the score of each candidate object in at least one task, and select a preset number of candidate objects with higher scores as target objects.

[0127] Figure 9 This is a schematic diagram of the structure of an information recommendation device provided in another exemplary embodiment of this disclosure.

[0128] In an optional example, the apparatus of this disclosure further includes: a second acquisition module 506, a second processing module 507, a third processing module 508, a fourth processing module 509, and a fifth processing module 510. The second acquisition module 506 is used to acquire training feature data and corresponding label data. The training feature data includes first training feature data for inputting into the shared network and second training feature data corresponding to each task. The second processing module 507 is used to input the first training feature data acquired by the second acquisition module into each sub-network of the shared network, and input each second training feature data acquired by the second acquisition module into the weight learning network of the corresponding task to obtain the training output results of each task. The third processing module 508 is used to determine the loss of each task based on the training output results of each task and the corresponding label data obtained by the second processing module. The fourth processing module 509 is used to determine the comprehensive loss based on the loss of each task determined by the third processing module. The fifth processing module 510 is used to: end the training and obtain a multi-task scoring model if the comprehensive loss obtained by the fourth processing module meets the preset conditions; if the comprehensive loss obtained by the fourth processing module does not meet the preset conditions, adjust the parameters according to the preset rules and enter the next round of training until the comprehensive loss meets the preset conditions.

[0129] In one optional example, the candidate objects are candidate properties, and the multi-task scoring model includes two tasks: a click task and a business opportunity task; the second determining module 504 is specifically used to: sort the candidate properties according to their scores in the click task or business opportunity task, and select a first preset number of candidate properties with higher scores as target properties; or, sort the candidate properties according to their combined scores in the click task and business opportunity task, and select a first preset number of candidate properties with higher scores as target properties.

[0130] In an optional example, the first determining module 502 is specifically used to: split the first user data and candidate object data into first data and second data for each task according to preset feature rules; perform feature extraction on the first data to obtain first feature data, and perform feature extraction on each of the second data to obtain each of the second feature data.

[0131] In an optional example, the first acquisition module 501 is specifically used for: acquiring original object data; recalling at least one set of object data from the original object data according to at least one recall rule; and using each recalled set of object data as candidate object data.

[0132] Another embodiment of this disclosure provides a training apparatus for a multi-task scoring model. This apparatus can be used to implement the corresponding training method embodiment of the multi-task scoring model of this disclosure. Figure 10This is a schematic diagram of the structure of a training device for a multi-task scoring model provided in an exemplary embodiment of the present disclosure. In this example, the input of the network structure of the multi-task scoring model includes shared input of multiple tasks and unique input of each task. The device includes: a third acquisition module 401, a third determination module 402 and a first training module 403.

[0133] The third acquisition module 401 is used to acquire training user data, training object data, and corresponding label data. The third determination module 402 is used to determine, based on the training user data and training object data, the first training feature data corresponding to the shared input and the second training feature data of the task-specific input. The first training module 403 is used to train the pre-established multi-task scoring network based on the first and second training feature data. When the network loss meets the preset conditions, the training ends, and the multi-task scoring model is obtained.

[0134] In one optional example, the multi-task scoring model includes at least two tasks. The network structure of the multi-task scoring model includes a shared network, weight learning networks corresponding to each task, and output networks for each task. The shared network includes multiple parallel sub-networks. Correspondingly, the first training module 403 is specifically used for: inputting first training feature data into each sub-network of the shared network, inputting each second training feature data into the weight learning network of the corresponding task, and obtaining the training output results of each task; determining the loss of each task based on the training output results of each task and the corresponding label data; determining the comprehensive loss based on the loss of each task; if the comprehensive loss meets the preset conditions, then the training ends and the multi-task scoring model is obtained; if the comprehensive loss does not meet the preset conditions, then the parameters are adjusted according to the preset rules, and the next round of training begins until the comprehensive loss meets the preset conditions.

[0135] In addition, this disclosure also provides an electronic device, including:

[0136] Memory, used to store computer programs;

[0137] A processor is configured to execute a computer program stored in the memory, wherein when the computer program is executed, it implements the information recommendation method described in any of the above embodiments of the present disclosure.

[0138] Figure 11 This is a schematic diagram illustrating the structure of one application embodiment of the electronic device disclosed herein. Figure 11 As shown, the electronic device includes one or more processors and memory.

[0139] A processor can be a central processing unit (CPU) or other form of processing unit with data processing and / or instruction execution capabilities, and can control other components in an electronic device to perform desired functions.

[0140] The memory may include one or more computer program products, which may include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. The volatile memory may include, for example, random access memory (RAM) and / or cache memory. The non-volatile memory may include, for example, read-only memory (ROM), hard disk, flash memory, etc. One or more computer program instructions may be stored on the computer-readable storage medium, and a processor may execute the program instructions to implement the information recommendation methods of the various embodiments of this disclosure described above and / or other desired functions.

[0141] In one example, the electronic device may also include input devices and output devices, which are interconnected via a bus system and / or other forms of connection mechanism (not shown).

[0142] In addition, the input device may also include, for example, a keyboard, a mouse, etc.

[0143] This output device can output various information to the outside, including determined distance information, direction information, etc. The output device may include, for example, a display, a speaker, a printer, and a communication network and its connected remote output devices, etc.

[0144] Of course, for the sake of simplicity, Figure 11 Only some of the components of the electronic device relevant to this disclosure are shown, omitting components such as buses, input / output interfaces, etc. In addition, the electronic device may include any other suitable components depending on the specific application.

[0145] In addition to the methods and apparatus described above, embodiments of this disclosure may also be computer program products comprising computer program instructions that, when executed by a processor, cause the processor to perform the steps in the information recommendation methods according to various embodiments of this disclosure as described in the foregoing portions of this specification.

[0146] The computer program product can be written in any combination of one or more programming languages ​​to perform the operations of the embodiments of this disclosure. The programming languages ​​include object-oriented programming languages ​​such as Java and C++, as well as conventional procedural programming languages ​​such as C or similar languages. The program code can be executed entirely on a user's computing device, partially on a user's computing device, as a standalone software package, partially on a user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.

[0147] Furthermore, embodiments of this disclosure may also be computer-readable storage media storing computer program instructions that, when executed by a processor, cause the processor to perform the steps in the information recommendation methods according to various embodiments of this disclosure as described in the foregoing portion of this specification.

[0148] The computer-readable storage medium may be any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may, for example, include, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatuses, or devices, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: electrical connections having one or more wires, portable disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0149] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned storage medium includes various media that can store program code, such as ROM, RAM, magnetic disk, or optical disk.

[0150] The basic principles of this disclosure have been described above with reference to specific embodiments. However, it should be noted that the advantages, benefits, and effects mentioned in this disclosure are merely examples and not limitations, and should not be considered as essential features of each embodiment of this disclosure. Furthermore, the specific details disclosed above are for illustrative and facilitative purposes only, and are not limitations. These details do not limit the scope of this disclosure to the necessity of employing the aforementioned specific details for implementation.

[0151] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For system embodiments, since they largely correspond to method embodiments, the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments.

[0152] The block diagrams of devices, apparatuses, devices, and systems disclosed herein are merely illustrative examples and are not intended to require or imply that they must be connected, arranged, or configured in the manner shown in the block diagrams. As those skilled in the art will recognize, these devices, apparatuses, devices, and systems can be connected, arranged, and configured in any manner. Words such as “comprising,” “including,” “having,” etc., are open-ended terms meaning “including but not limited to,” and are used interchangeably with them. The terms “or” and “and” as used herein refer to the terms “and / or,” and are used interchangeably with them unless the context clearly indicates otherwise. The term “such as” as used herein refers to the phrase “such as but not limited to,” and is used interchangeably with it.

[0153] The methods and apparatus of this disclosure may be implemented in many ways. For example, they may be implemented by software, hardware, firmware, or any combination of software, hardware, and firmware. The above-described order of steps for the methods is for illustrative purposes only, and the steps of the methods of this disclosure are not limited to the order specifically described above unless otherwise specifically stated. Furthermore, in some embodiments, this disclosure may also be implemented as a program recorded on a recording medium, the program including machine-readable instructions for implementing the methods according to this disclosure. Thus, this disclosure also covers recording media storing programs for performing the methods according to this disclosure.

[0154] It should also be noted that in the apparatus, devices, and methods of this disclosure, the components or steps can be disassembled and / or recombined. These disassemblies and / or recombinations should be considered as equivalent solutions to this disclosure.

[0155] The above description of the disclosed aspects is provided to enable any person skilled in the art to make or use this disclosure. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other aspects without departing from the scope of this disclosure. Therefore, this disclosure is not intended to be limited to the aspects shown herein, but rather to be carried out within the widest scope consistent with the principles and novel features disclosed herein.

[0156] The above description has been given for purposes of illustration and description. Furthermore, this description is not intended to limit the embodiments of this disclosure to the forms disclosed herein. Although numerous exemplary aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, alterations, additions, and sub-combinations therein.

Claims

1. An information recommendation method, characterized in that, include: The system acquires first user data corresponding to the first user, candidate object data corresponding to the candidate object, and a pre-trained multi-task scoring model. The input of the multi-task scoring model includes shared input for multiple tasks and unique input for each task. The multiple tasks include various behaviors performed by the first user on the candidate object. The multi-task scoring model is trained based on training feature data and corresponding label data formed by historical users' historical behaviors on each object extracted from historical user data. The label data is used to characterize whether historical users have performed each task on each object. Based on the first user data and the candidate object data, first feature data corresponding to the shared input and second feature data for each task-specific input are determined; wherein, the first feature data is used to characterize the shared features of the multiple tasks, and the first feature data is obtained by feature extraction from the first data; the second feature data for each task-specific input is used to characterize the unique features of each task, and the second feature data for each task-specific input is obtained by feature extraction from the second data of each task; the first data and the second data of each task are obtained by splitting the first user data and the candidate object data according to preset feature rules; The first feature data is used as the shared input of the multi-task scoring model, and each of the second feature data is used as the exclusive input of each task of the multi-task scoring model. The first feature data and each of the second feature data are input into the multi-task scoring model, and the scoring result is obtained through the multi-task scoring model. The scoring result includes the score of each candidate object in each task. Based on the scoring results, the target objects to be recommended are determined from each candidate object; The relevant information of the target object is recommended to the first user.

2. The method according to claim 1, characterized in that, The multi-task scoring model includes at least two tasks, and the network structure of the multi-task scoring model includes a shared network, a weight learning network corresponding to each task, and an output network for each task. The shared network includes multiple parallel sub-networks. The step of using the first feature data as a shared input to the multi-task scoring model, using each of the second feature data as a unique input to each task of the multi-task scoring model, inputting the first feature data and each of the second feature data into the multi-task scoring model, and obtaining a scoring result through the multi-task scoring model includes: The first feature data is input into each sub-network of the shared network to obtain the first output result corresponding to each sub-network. For each second feature data, the second feature data and the first feature data are input together into the weight learning network of the corresponding task to obtain the second output result of the weight learning network. The second output result includes the weights of each sub-network in the shared network. For each second output result, the second output result and each of the first output results are input into the output network of the corresponding task to obtain the output of the task; The output of each task is used as the scoring result.

3. The method according to claim 2, characterized in that, The step of determining the target object to be recommended from each candidate object based on the scoring results includes: The candidate objects are sorted according to their scores in at least one task, and a predetermined number of candidate objects with higher scores are selected as the target objects.

4. The method according to claim 2, characterized in that, Before acquiring the first user data corresponding to the first user, the candidate object data corresponding to the candidate object, and the pre-trained multi-task scoring model, the method further includes: Acquire training feature data and corresponding label data, wherein the training feature data includes first training feature data for inputting into the shared network and second training feature data corresponding to each task; The first training feature data is input into each sub-network of the shared network, and each second training feature data is input into the weight learning network of the corresponding task to obtain the training output results of each task. Based on the training output results and corresponding label data of each task, the loss of each task is determined. Based on the losses of each task, determine the overall loss; If the comprehensive loss meets the preset conditions, then the training ends and the multi-task scoring model is obtained; If the overall loss does not meet the preset conditions, the parameters are adjusted according to the preset rules, and the next round of training begins until the overall loss meets the preset conditions.

5. The method according to claim 2, characterized in that, The candidate objects are candidate properties, and the multi-task scoring model includes two tasks: click task and business opportunity task. The step of determining the target object to be recommended from each candidate object based on the scoring results includes: The candidate properties are sorted according to their scores in the click task or business opportunity task, and the first preset number of candidate properties with higher scores are selected as target properties. or, The candidate properties are ranked according to their combined scores in the click task and business opportunity task, and the first preset number of candidate properties with the highest scores are selected as target properties.

6. The method according to claim 1, characterized in that, The step of determining the first feature data corresponding to the shared input and the second feature data of the task-specific input based on the first user data and the candidate object data includes: According to preset feature rules, the first user data and the candidate object data are split into first data and second data for each task; The first feature data is obtained by performing feature extraction on the first data, and the second feature data is obtained by performing feature extraction on each of the second data.

7. The method according to any one of claims 1-6, characterized in that, Retrieve candidate object data corresponding to the candidate object, including: Retrieve raw object data; Recall at least one set of object data from the original object data according to at least one recall rule; The recalled object data is used as the candidate object data.

8. A training method for a multi-task scoring model, characterized in that, The input to the network structure of the multi-task scoring model includes shared input from multiple tasks and unique input from each task. The method includes: Acquire training user data, training object data, and corresponding label data; wherein, the label data is used to characterize whether the training user has performed each task in the multi-task for each training object, and the multi-task includes multiple behaviors performed by the training user on the training object; Based on the training user data and the training object data, first training feature data corresponding to the shared input and second training feature data for each task-specific input are determined; wherein, the first training feature data is used to characterize the shared features of the multiple tasks, and the second training feature data for each task-specific input is used to characterize the unique features of each task; the first training feature data and the second training feature data for each task-specific input are obtained by feature extraction based on the data obtained by splitting the training user data and the training object data according to preset feature rules. The pre-established multi-task scoring network is trained based on the first training feature data and each of the second training feature data. When the loss of the network meets the preset conditions, the training ends and the multi-task scoring model is obtained from the multi-task scoring network. The input to the multi-task scoring network structure includes shared input from multiple tasks and unique input from each task. Training the pre-established multi-task scoring network based on the first training feature data and the second training feature data includes: The first training feature data is used as the shared input of the multi-task scoring network, and each of the second training feature data is used as the exclusive input of each task. The first training feature data and each of the second training feature data are input into the multi-task scoring network to train the multi-task scoring network.

9. The method according to claim 8, characterized in that, The multi-task scoring model includes at least two tasks, and the network structure of the multi-task scoring model includes a shared network, a weight learning network corresponding to each task, and an output network for each task. The shared network includes multiple parallel sub-networks. The process of training a pre-established multi-task scoring network based on the first training feature data and the second training feature data, and ending training when the network loss meets a preset condition to obtain the multi-task scoring model, includes: The first training feature data is input into each sub-network of the shared network, and each second training feature data is input into the weight learning network of the corresponding task to obtain the training output results of each task. Based on the training output results and corresponding label data of each task, the loss of each task is determined. Based on the losses of each task, determine the overall loss; If the comprehensive loss meets the preset conditions, then the training ends and the multi-task scoring model is obtained; If the overall loss does not meet the preset conditions, the parameters are adjusted according to the preset rules, and training continues until the overall loss meets the preset conditions.

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

Citation Information

Patent Citations

  • Multi-target recommendation model training and information recommendation method and device

    CN112232510A

  • Network structure construction method and apparatus for use in multi-task scenario

    WO2021114625A1