Position recommendation method, model and equipment based on deep neural network model
By adopting a deep neural network model in job recommendation, combining the shared embedding layer, public feature layer and private feature layer, the job recommendation problem in multiple scenarios is solved, and efficient and personalized recommendation effect is achieved.
Patent Information
- Application Number
- CN202411601349.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-11
- Publication Date
- 2025-02-18
AI Technical Summary
In the job recommendation, the existing technology leads to independent modeling of the model due to scene differences, resulting in differences in technology stacks, high resource investment, inability to reuse technology, and insufficient data in small scenarios.
The job recommendation method based on the deep neural network model is adopted, and the public and private feature layers are shared, and the public and private features of different scenarios are captured to realize information sharing and personalized needs between scenarios.
It realizes job recommendations in multiple scenarios, reduces the repetitive labor and resource investment in model establishment and training, and improves the accuracy and personalization of recommendations.
Smart Images

Figure CN119474542A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of big data service technology, and in particular to a job recommendation method, model and device based on a deep neural network model. Background Art
[0002] Job recommendations can recommend suitable jobs to job seekers based on their professional background, skills, interests, and market demand. There are multiple scenarios for job recommendations, such as recommendation scenarios, nearby scenarios, latest scenarios, and search scenarios. Usually, different scenarios have different characteristics, aiming to meet different personalized recommendation needs of users. Due to the large differences in user behavior and data distribution in different scenarios, related technologies generally use independent modeling for different scenarios, that is, a separate model is established for each scenario to recommend jobs, and a dedicated person is responsible for continuously optimizing the model.
[0003] Although independent modeling for different scenarios can make each model fit its own business scenario and characteristics, and improve the experience of loyal users of the scenario, this approach also has many disadvantages. First, long-term dedicated personnel to continuously optimize the model may lead to large differences in the technology stack. Second, the pace of technology sharing and co-construction will be slowed down. As more and more new scenarios are added, more and more resources will be invested, the investment cost of building and training new models will increase, and the technology of each scenario cannot be reused. Third, the amount of data in some small scenarios is small, which is not enough to support the training of an accurate job recommendation model for the scenario. Summary of the invention
[0004] In view of this, an embodiment of the present application provides a job recommendation method based on a deep neural network model, a deep neural network model for job recommendation, and an electronic device, which are used to solve at least one of the above technical problems.
[0005] In a first aspect, an embodiment of the present application provides a method for job recommendation based on a deep neural network model, wherein the deep neural network model includes a shared embedding layer, a public feature layer, a private feature layer, an expert layer, a gating layer, and a task-specific layer, wherein the private feature layer includes private sub-neural network models corresponding to multiple different scenarios, and the expert layer includes multiple expert sub-neural network models, wherein the first part of the expert sub-neural network model is a first expert sub-neural network model for predicting the click probability of the job, and the second part of the expert sub-neural network model is a second expert sub-neural network model for predicting the conversion probability of the job;
[0006] The method includes: inputting user portrait features of a target user, user behavior sequence features of the target user, a target position ID, position information features of the target position, a target scene ID, and private features of the target scene into a shared embedding layer, the shared embedding layer is used to embed the input features and IDs to obtain a user portrait feature vector, a user behavior sequence feature vector, a target position ID vector, a position information feature vector, a target scene ID vector, and a private feature vector, and inputting the user portrait feature vector, the user behavior sequence feature vector, the target position ID vector, and the position information feature vector into a public feature layer, and inputting the private feature vector into a private feature layer;
[0007] Based on the common feature layer, the user portrait feature vector of the target user, the user behavior sequence feature vector of the target user, the target position ID vector and the position information feature vector of the target position are batch normalized to obtain a common feature vector matrix after batch normalization;
[0008] Batch normalizing the private feature vectors based on the target private sub-neural network model in the private feature layer to obtain a batch-normalized private feature vector matrix;
[0009] Input the public feature vector matrix and the private feature vector matrix into multiple expert sub-neural network models in the expert layer to obtain the predicted click probability and conversion probability of the target position;
[0010] Input the public feature vector matrix and the private feature vector matrix into the gated sub-neural network model in the gated layer to obtain the weights of each expert sub-neural network model in the target scenario generated by the gated sub-neural network model;
[0011] The click probability and weight of the target position output by each first expert sub-neural network model, and the conversion probability and weight of the target position output by each second expert sub-neural network model are input into the task-specific layer. The task-specific layer is used to calculate the target click probability of the target position based on the click probability and weight of the target position output by each first expert sub-neural network model; calculate the target conversion probability of the target position based on the conversion probability and weight of the target position output by each second expert sub-neural network model; calculate the ranking score of the target position based on the target click probability and the target conversion probability; wherein the ranking score is used to determine the position of the target position in the position recommendation list.
[0012] According to some embodiments of the present application, optionally, for any i-th private sub-neural network model, the i-th private sub-neural network model is used to set private feature vectors corresponding to scenes other than the i-th scene to zero through a masking operation, the i-th scene is the scene corresponding to the i-th private sub-neural network model, and i is a positive integer.
[0013] According to some embodiments of the present application, optionally, multiple scenarios include at least two of a recommended job scenario, a search job scenario, a nearby job scenario, and a latest job scenario, and the target scenario is any one of the multiple scenarios; wherein, the private features of the recommended job scenario include the user's job-seeking intention, the private features of the search job scenario include the search terms entered by the user, the private features of the nearby job scenario include the distance between the user's expected work area and the actual work area required by the job, and the private features of the latest job scenario include the job posting time; the user portrait features of the target user include at least one of the following: the target user's education, major, industry, age, gender, identity, work experience, expected job function, expected work area, expected salary, and expected job type; the job information features of the target job include at least one of the following: the function, industry, education requirements, major requirements, work experience requirements, salary, work area, job type, age requirements, and gender requirements of the target job.
[0014] According to some embodiments of the present application, optionally, the common feature layer is provided with an encoder of a Transformer model, the user behavior sequence features include a target user's historically submitted job sequence and a target user's historically invited job sequence for interviews, the user behavior sequence feature vector includes a target user's historically submitted job sequence feature vector and a target user's historically invited job sequence feature vector, the target user's historically submitted job sequence feature vector includes multiple job ID vectors of the target user's historically submitted job sequence, and the target user's historically invited job sequence feature vector includes multiple job ID vectors of the target user's historically invited job sequence;
[0015] Based on the common feature layer, the user portrait feature vector of the target user, the user behavior sequence feature vector of the target user, the target position ID vector and the position information feature vector of the target position are batch normalized to obtain a batch normalized common feature vector matrix, including: inputting the target position ID vector and the feature vector of the position sequence of the target user's historical submission into the encoder to obtain a first attention matrix of the matching degree between each position ID vector in the feature vector of the position sequence of the target user's historical submission and the target position ID vector; inputting the target position ID vector and the feature vector of the position sequence of the target user's historical invitation for interviews into the encoder to obtain a second attention matrix of the matching degree between each position ID vector in the feature vector of the position sequence of the target user's historical invitation for interviews and the target position ID vector; the common feature vector matrix includes at least the first attention matrix and the second attention matrix.
[0016] According to some embodiments of the present application, optionally, the ranking score of the target position is calculated based on the target click probability and the target conversion probability, including: calculating the product of the target click probability and the target conversion probability to obtain the ranking score of the target position; or, determining the scene adjustment coefficient based on the length of the target scene ID vector, and calculating the product of the target click probability, the target conversion probability and the scene adjustment coefficient to obtain the ranking score of the target position under the target scene.
[0017] According to some embodiments of the present application, optionally, after calculating the ranking score of the target position based on the target click probability and the target conversion probability, the method also includes: taking the next position to be recommended in the list to be recommended as the target position, repeating the above steps until the ranking scores of each position to be recommended in the list to be recommended are obtained; sorting the multiple positions to be recommended in the list to be recommended in order of the ranking scores from high to low, and displaying the sorted multiple positions to be recommended.
[0018] According to some embodiments of the present application, optionally, the deep neural network model is also trained based on the contextual features of the sample user, and the contextual features of the sample user include the date when the sample user initiates the request, the time when the sample user initiates the request, the recruitment platform used by the sample user, and the model of the terminal device used by the sample user; the method also includes: also inputting the contextual features of the target user into the deep neural network model to predict the ranking score of the target position in combination with the contextual features of the target user, and the contextual features of the target user include the date when the target user initiates the request, the time when the target user initiates the request, the recruitment platform used by the target user, and the model of the terminal device used by the target user.
[0019] According to some embodiments of the present application, optionally, the method further includes: when detecting that the scene selected by the target user switches from the first scene to the second scene, changing the target scene from the first scene to the second scene, the first scene and the second scene being different scenes.
[0020] In a second aspect, an embodiment of the present application provides a deep neural network model for job recommendation, the deep neural network model includes a shared embedding layer, a public feature layer, a private feature layer, an expert layer, a gating layer and a task-specific layer, the private feature layer includes private sub-neural network models corresponding to multiple different scenarios, the expert layer includes multiple expert sub-neural network models, the first part of the expert sub-neural network model is a first expert sub-neural network model for predicting the click probability of the job, and the second part of the expert sub-neural network model is a second expert sub-neural network model for predicting the conversion probability of the job;
[0021] The shared embedding layer is used to embed the input user portrait features of the target user, the user behavior sequence features of the target user, the target position ID, the position information features of the target position, the target scene ID and the private features of the target scene to obtain a user portrait feature vector, a user behavior sequence feature vector, a target position ID vector, a position information feature vector, a target scene ID vector and a private feature vector, and input the user portrait feature vector, the user behavior sequence feature vector, the target position ID vector and the position information feature vector into the public feature layer, and input the private feature vector into the private feature layer;
[0022] The public feature layer is used to batch normalize the user portrait feature vector of the target user, the user behavior sequence feature vector of the target user, the target position ID vector, and the position information feature vector of the target position to obtain a public feature vector matrix after batch normalization;
[0023] The target private sub-neural network model in the private feature layer is used to batch normalize the private feature vectors to obtain a batch-normalized private feature vector matrix;
[0024] Multiple expert sub-neural network models in the expert layer are used to input the public feature vector matrix and the private feature vector matrix to obtain the predicted click probability and conversion probability of the target position;
[0025] The gated sub-neural network model in the gated layer is used to generate the weights of each expert sub-neural network model in the target scenario based on the public feature vector matrix and the private feature vector matrix;
[0026] The task-specific layer is used to calculate the target click probability of the target position based on the click probability and weight of the target position output by each first expert sub-neural network model; calculate the target conversion probability of the target position based on the conversion probability and weight of the target position output by each second expert sub-neural network model; calculate the ranking score of the target position based on the target click probability and the target conversion probability; wherein the ranking score is used to determine the position of the target position in the position recommendation list.
[0027] In a third aspect, an embodiment of the present application provides an electronic device, comprising a processor and a memory storing computer program instructions; when the processor executes the computer program instructions, the steps of the job recommendation method based on the deep neural network model as described above are implemented.
[0028] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium having computer program instructions stored thereon, and when the computer program instructions are executed by a processor, the steps of the job recommendation method based on the deep neural network model as described above are implemented.
[0029] In a fifth aspect, an embodiment of the present application provides a computer program product, which includes computer program instructions. When the computer program instructions are executed by a processor, the steps of the job recommendation method based on the deep neural network model as described above are implemented.
[0030] The method for job recommendation based on a deep neural network model, the deep neural network model for job recommendation, and the electronic device provided by the embodiments of the present application can, on the one hand, adapt to multiple scenarios of job recommendation through one modeling, avoid duplication of work, and also help reduce the resource pressure brought by online service deployment and save costs. On the other hand, the model architecture is cleverly designed. On the basis of the shared embedding layer, a public feature layer and a private feature layer are added. The shared embedding layer and / or the public feature layer can capture the potential relationship and similarity between the public features of different scenarios, which is conducive to realizing information sharing between different scenarios and improving the prediction accuracy of the deep neural network model; the private feature layer is provided with a private sub-neural network model corresponding to a plurality of different scenarios. Different private sub-neural network models are used to process the private features of different scenarios, which is conducive to retaining the characteristics of different scenarios, better adapting to the needs of different scenarios, and meeting the personalized needs of different scenarios while ensuring the prediction accuracy of the deep neural network model. On the other hand, the gating layer can flexibly adjust the weights of each expert sub-neural network model in different scenarios, so that the model can further adapt to the needs of different scenarios and meet the personalized needs of different scenarios. On the other hand, the target click probability of the target position is calculated by the click probability and weight of the target position output by each first expert sub-neural network model; the target conversion probability of the target position is calculated by the conversion probability and weight of the target position output by each second expert sub-neural network model. Introducing multiple first expert sub-neural network models and multiple second expert sub-neural network models, with the aid of weight adjustment, is conducive to improving the accuracy of the target click probability and target conversion probability of the target position, and then improving the accuracy of the calculated ranking score of the target position, so as to achieve accurate sorting and precise recommendation of the target position in the position recommendation list. BRIEF DESCRIPTION OF THE DRAWINGS
[0031] In order to more clearly illustrate the technical solution of the embodiments of the present application, the following briefly introduces the drawings in the embodiments of the present application.
[0032] Figure 1 A schematic diagram of the structure of a deep neural network model provided in an embodiment of the present application.
[0033] Figure 2 A flowchart of a job recommendation method based on a deep neural network model provided in an embodiment of the present application.
[0034] Figure 3A structural schematic diagram of a private sub-neural network model in the deep neural network model provided in an embodiment of the present application.
[0035] Figure 4 Multiple scenarios of job recommendation applications are schematically shown.
[0036] Figure 5 A structural diagram of the encoder of the Transformer model.
[0037] Figure 6 Another structural schematic diagram of the deep neural network model provided in an embodiment of the present application.
[0038] Figure 7 A schematic diagram of the hardware structure of an electronic device according to an embodiment of the present application. DETAILED DESCRIPTION
[0039] The features and exemplary embodiments of various aspects of the present application will be described in detail below. In order to make the purpose, technical solutions and advantages of the present application clearer, the present application will be further described in detail below in conjunction with the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain the present application, rather than to limit the present application. For those skilled in the art, the present application can be implemented without the need for some of these specific details. The following description of the embodiments is only to provide a better understanding of the present application by illustrating the examples of the present application.
[0040] It should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the statement "include..." do not exclude the presence of other identical elements in the process, method, article or device including the elements.
[0041] It should be understood that the term "and / or" used in this article is only a description of the association relationship of associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this article generally indicates that the associated objects before and after are in an "or" relationship.
[0042] It is obvious to those skilled in the art that various modifications and changes can be made in the present application without departing from the spirit or scope of the present application. Therefore, the present application is intended to cover modifications and changes of the present application that fall within the scope of the corresponding claims (technical solutions for protection) and their equivalents. It should be noted that the implementation methods provided in the embodiments of the present application can be combined with each other without contradiction.
[0043] Before describing the technical solutions provided by the embodiments of the present application, in order to facilitate the understanding of the embodiments of the present application, the present application first specifically describes the problems existing in the related art:
[0044] Job recommendations can recommend suitable jobs to job seekers based on their professional background, skills, interests, and market demand. There are multiple scenarios for job recommendations, such as recommendation scenarios, nearby scenarios, latest scenarios, and search scenarios. Usually, different scenarios have different characteristics, aiming to meet different personalized recommendation needs of users. Due to the large differences in user behavior and data distribution in different scenarios, related technologies generally use independent modeling for different scenarios, that is, a separate model is established for each scenario to recommend jobs, and a dedicated person is responsible for continuously optimizing the model.
[0045] Although independent modeling for different scenarios can make each model fit its own business scenario and characteristics, and improve the experience of loyal users of the scenario, this approach also has many disadvantages. First, long-term dedicated personnel to continuously optimize the model may lead to large differences in the technology stack. Second, the pace of technology sharing and co-construction will be slowed down. As more and more new scenarios are added, more and more resources will be invested, the investment cost of building and training new models will increase, and the technology of each scenario cannot be reused. Third, the amount of data in some small scenarios is small, which is not enough to support the training of an accurate job recommendation model for the scenario.
[0046] In view of the above research findings of the inventors, the embodiments of the present application provide a job recommendation method based on a deep neural network model, a deep neural network model for job recommendation, and an electronic device, which can solve at least one of the above technical problems existing in the related art.
[0047] The following first introduces the job recommendation method based on the deep neural network model provided in the embodiment of the present application.
[0048] The deep neural network model provided in the embodiment of the present application is, for example, based on the Multi-gate Mixture-of-Experts (MMoE) model, and improves the architecture and execution logic of the MMoE model, such as adding a public feature layer and a private feature layer, so that it is suitable for job recommendations in multiple different scenarios. The public feature layer can capture the potential relationship and similarity between the public features of different scenarios, which is conducive to realizing information sharing between different scenarios and improving the prediction accuracy of the deep neural network model. The private feature layer is provided with private sub-neural network models corresponding to multiple different scenarios. Different private sub-neural network models are used to process private features of different scenarios, which is conducive to retaining the characteristics of different scenarios, so that the deep neural network model can better adapt to the needs of different scenarios.
[0049] The MMoE model is a neural network architecture designed for multi-task learning, which aims to effectively handle multiple related but not identical learning tasks. The MMoE model combines the Mixture-of-Experts (MoE) architecture and the gating mechanism to model shared and specific information between different tasks. Traditional multi-task learning models usually use a shared-bottom structure, where all tasks share a part of the network layer and then branch to their respective task-specific layers. However, this approach ignores the potential complex relationships and mutual influences between different tasks. The MMoE model attempts to solve this problem by allowing each task to selectively utilize a set of expert networks (Experts) according to its specific needs, thereby better capturing the correlation and independence between tasks.
[0050] The main components of the MMoE model are:
[0051] Expert Networks: The MMoE model contains multiple experts, each of which is an independent neural network. Each expert is trained to solve a specific task or subtask.
[0052] Gating Network: The MMoE model introduces multiple gating networks that dynamically select and weight different experts based on input features. The output of each gating network is a probability distribution that represents the selection weights of different experts.
[0053] Multi-task Learning: The MMoE model can handle multiple tasks at the same time, such as modeling the user's click rate and purchase rate in the recommendation system. The shared underlying features promote information sharing between tasks through expert sharing.
[0054] Figure 1A schematic diagram of the structure of a deep neural network model provided in an embodiment of the present application. Figure 1 As shown, the deep neural network model may include a shared embedding layer 11, a public feature layer 12, a private feature layer 13, an expert layer 14, a gating layer 15, and a task-specific layer 16. Among them, the private feature layer 13 may include private sub-neural network models 131-13n corresponding to multiple different scenarios, where n is an integer greater than 1. The expert layer 14 may include multiple expert sub-neural network models, the first part of the expert sub-neural network model may be a first expert sub-neural network model 141 for predicting the click probability of a position, and the second part of the expert sub-neural network model may be a second expert sub-neural network model 142 for predicting the conversion probability of a position. The click probability of a position may be the probability that a user clicks to view the position. The conversion probability of a position may be the probability that a user is invited to an interview for the position after clicking to view the position.
[0055] Figure 2 A flowchart of a job recommendation method based on a deep neural network model provided in an embodiment of the present application is provided below. Figure 1 and Figure 2 The job recommendation method based on the deep neural network model provided in the embodiment of the present application is described.
[0056] like Figure 2 As shown, the method for predicting job purchase advertisements provided in the embodiment of the present application may include the following steps S201 to S206.
[0057] S201: Input the user portrait features of the target user, the user behavior sequence features of the target user, the target position ID, the position information features of the target position, the target scene ID and the private features of the target scene into the shared embedding layer. The shared embedding layer is used to embed the input features and IDs to obtain a user portrait feature vector, a user behavior sequence feature vector, a target position ID vector, a position information feature vector, a target scene ID vector and a private feature vector. The user portrait feature vector, the user behavior sequence feature vector, the target position ID vector and the position information feature vector are input into the public feature layer, and the private feature vector is input into the private feature layer.
[0058] Combination Figure 1 and Figure 2As shown, in S201, the user portrait features of the target user, the user behavior sequence features of the target user, the target position ID, the position information features of the target position, the target scenario ID and the private features of the target scenario can be input into the shared embedding layer 11. The target user can be any user, such as any job seeker. The target position can be any position, such as any position to be recommended. In some embodiments, the user portrait features of the target user may include at least one of the following: the target user's education, major, industry, age, gender, identity, work experience, expected job function, expected work area, expected salary and expected job type. The identity may include fresh graduates or non-fresh graduates, and the expected job type may include full-time, part-time or internship. The position information features of the target position may include at least one of the following: the function, industry, education requirements, major requirements, work experience requirements, salary, work area, job type, age requirements and gender requirements of the target position. The job type may also include full-time, part-time or internship.
[0059] The target position ID is the unique position ID of the target position, and different position IDs are used to distinguish different positions. The target scene ID is the unique scene ID of the target scene, and different scene IDs are used to distinguish different scenes. The private features of the target scene are the features that are unique or private to the target scene, and the private features of different scenes are different. For example, when the target scene is a recommended position scene, the private features of the target scene may include the user's job search intention (such as the desired job function or industry). When the target scene is a job search scene, the private features of the target scene may include the search terms entered by the user.
[0060] The shared embedding layer 11 performs an embedding operation on the input user portrait features of the target user, the user behavior sequence features of the target user, the target position ID, the position information features of the target position, the target scene ID, and the private features of the target scene. The embedding operation can be mainly used to convert discrete, categorical features and IDs (such as the user portrait features of the target user, the user behavior sequence features of the target user, the position information features of the target position, the private features of the target scene, the target position ID, and the target scene ID, etc.) into continuous, low-dimensional vectors, such as user portrait feature vectors, user behavior sequence feature vectors, target position ID vectors, position information feature vectors, target scene ID vectors, and private feature vectors. These vectors can capture the potential relationships and similarities between the data, so that the deep neural network model can process these data more effectively.
[0061] The user portrait features of the target user, the user behavior sequence features of the target user, the target position ID and the position information features of the target position are used as common features of multiple scenarios. The shared embedding layer 11 can also be used to input the user portrait feature vector, the user behavior sequence feature vector, the target position ID vector and the position information feature vector into the common feature layer 12, and input the private feature vector into the private feature layer 13.
[0062] S202: Based on the common feature layer, batch normalize the user portrait feature vector of the target user, the user behavior sequence feature vector of the target user, the target position ID vector, and the position information feature vector of the target position to obtain a batch-normalized common feature vector matrix.
[0063] The common feature layer 12 can perform batch normalization (BN) on the user portrait feature vector of the target user, the user behavior sequence feature vector of the target user, the target position ID vector, and the position information feature vector of the target position, that is, standardize each input vector (such as making its mean close to 0 and its variance close to 1), reduce internal covariate shift, and make the model easier to converge. After batch normalization, a common feature vector matrix or a common feature vector combination can be obtained. In some embodiments, the common feature vector matrix can mainly be composed of the user portrait feature vector of the target user after batch normalization, the user behavior sequence feature vector of the target user after batch normalization, the target position ID vector after batch normalization, and the position information feature vector of the target position after batch normalization.
[0064] S203: Batch normalize the private feature vectors based on the target private sub-neural network model in the private feature layer to obtain a batch-normalized private feature vector matrix.
[0065] The private feature layer 13 may include private sub-neural network models 131-13n corresponding to a plurality of different scenarios. The target private sub-neural network model may be a private sub-neural network model corresponding to the target scenario. The target private sub-neural network model may batch normalize the private feature vector of the target scenario to obtain a batch-normalized private feature vector matrix. The private feature vector matrix may include at least the batch-normalized private feature vector.
[0066] S204: Input the public feature vector matrix and the private feature vector matrix into multiple expert sub-neural network models in the expert layer to obtain the predicted click probability and conversion probability of the target position.
[0067] In S204, the public feature vector matrix and the private feature vector matrix may be input into the multiple expert sub-neural network models in the expert layer 14. By pre-training the multiple expert sub-neural network models, the first expert sub-neural network model may predict the click probability of the target position based on the input public feature vector matrix and the private feature vector matrix. That is, the probability that the target user clicks to view the target position. The second expert sub-neural network model may predict the conversion probability of the target position based on the input public feature vector matrix and the private feature vector matrix. That is, the probability that the target user is invited to participate in an interview for the target position after clicking to view the target position.
[0068] The click probabilities of the target positions output by different first expert sub-neural network models may be the same or different. The conversion probabilities of the target positions output by different second expert sub-neural network models may be the same or different.
[0069] S205: Input the public feature vector matrix and the private feature vector matrix into the gated sub-neural network model in the gated layer to obtain the weights of each expert sub-neural network model in the target scenario generated by the gated sub-neural network model.
[0070] In S205, the public feature vector matrix and the private feature vector matrix can be input into the gated sub-neural network model in the gated layer 15. By pre-training the gated sub-neural network model, the gated sub-neural network model can generate or adjust the weights of each expert sub-neural network model in the target scenario based on the input public feature vector matrix and private feature vector matrix. For different scenarios, the gated sub-neural network model can flexibly adjust the weights of each expert sub-neural network model in different scenarios, further enabling the model to adapt to the needs of different scenarios and meet the personalized needs of different scenarios.
[0071] S206: Input the click probability and weight of the target position output by each first expert sub-neural network model, and the conversion probability and weight of the target position output by each second expert sub-neural network model into the task-specific layer; the task-specific layer is used to calculate the target click probability of the target position based on the click probability and weight of the target position output by each first expert sub-neural network model; calculate the target conversion probability of the target position based on the conversion probability and weight of the target position output by each second expert sub-neural network model; calculate the ranking score of the target position based on the target click probability and the target conversion probability.
[0072] In S206, the weights of each expert sub-neural network model in the target scenario, the click probability of the target position output by each first expert sub-neural network model, and the conversion probability of the target position output by each second expert sub-neural network model can be input into the task-specific layer 16.
[0073] The task-specific layer 16 can be used to calculate the target click probability of the target position based on the click probabilities of the target positions output by each first expert sub-neural network model and their weights. For example, the click probabilities of the target positions output by multiple first expert sub-neural network models are weighted and summed to obtain the target click probability of the target position.
[0074] The task-specific layer 16 can also be used to calculate the target conversion probability of the target position based on the conversion probability of the target position output by each second expert sub-neural network model and its weight. For example, the target conversion probability of the target position is obtained by weighted summation for the conversion probabilities of the target positions output by multiple second expert sub-neural network models. The task-specific layer 16 can also be used to calculate the ranking score of the target position based on the target click probability and the target conversion probability. Among them, the ranking score of the target position can be used to determine the position of the target position in the position recommendation list. The position recommendation list can include multiple positions including the target position. The higher the ranking score of the target position, the higher the position of the target position in the position recommendation list, and the easier it is to be viewed by the target user.
[0075] The job recommendation method based on the deep neural network model provided by the embodiment of the present application, on the one hand, can adapt to multiple scenarios of job recommendation through one-time modeling, avoiding duplication of work, and at the same time helping to reduce the resource pressure brought by online service deployment and save costs. On the other hand, the model architecture is cleverly designed. On the basis of the shared embedding layer, a public feature layer and a private feature layer are added. The shared embedding layer and / or the public feature layer can capture the potential relationship and similarity between the public features of different scenarios, which is conducive to realizing information sharing between different scenarios and improving the prediction accuracy of the deep neural network model; the private feature layer is provided with private sub-neural network models corresponding to multiple different scenarios one by one, and different private sub-neural network models are used to process the private features of different scenarios, which is conducive to retaining the characteristics of different scenarios, better adapting to the needs of different scenarios, and meeting the personalized needs of different scenarios while ensuring the prediction accuracy of the deep neural network model. On the other hand, the gating layer can flexibly adjust the weights of each expert sub-neural network model in different scenarios, further enabling the model to adapt to the needs of different scenarios and meet the personalized needs of different scenarios. On the other hand, the target click probability of the target position is calculated by the click probability and weight of the target position output by each first expert sub-neural network model; the target conversion probability of the target position is calculated by the conversion probability and weight of the target position output by each second expert sub-neural network model. Introducing multiple first expert sub-neural network models and multiple second expert sub-neural network models, with the aid of weight adjustment, is conducive to improving the accuracy of the target click probability and target conversion probability of the target position, and then improving the accuracy of the calculated ranking score of the target position, so as to achieve accurate sorting and precise recommendation of the target position in the position recommendation list.
[0076] In addition, even for scenarios with a small amount of data, by sharing common features between the scenario and other scenarios, the defect of the small amount of data in the scenario can be compensated, and the deep neural network model can be trained and job recommendations can be made for the scenario.
[0077] In the private feature layer 13, this part is intended to learn the characteristics of each scene so that the deep neural network has better generalization ability and can adapt to different scenes. Considering that the private features of different scenes are different, and the model parameters and / or private features of different scenes may affect each other, which may affect the accuracy of the deep neural network model prediction.
[0078] In view of this, after the private feature vector, each private sub-neural network model in the private feature layer can set the private feature vector of the non-scene to zero through a masking operation, so that each private sub-neural network model only outputs the valid private feature vector of the scene corresponding to it.
[0079] Specifically, according to some embodiments of the present application, optionally, for any i-th private sub-neural network model, the i-th private sub-neural network model is used to set the private feature vectors corresponding to other scenes except the i-th scene to zero through a masking operation. The i-th scene is the scene corresponding to the i-th private sub-neural network model, and i is a positive integer.
[0080] For example, in S203, other private sub-neural network models except the target private sub-neural network model can set the private feature vector corresponding to the target scene to zero through a masking operation. For example, some features unique to scene A exist in scene A but not in scene B. For example, when scene A is a recommended job scene and scene B is a search job scene, the search job scene will have search terms, but the recommended job scene will not have search terms. The recommended job scene will have job-seeking intentions, but the search job scene will not have job-seeking intentions. Each private sub-neural network model in the private feature layer can set the private feature vectors of non-scenes to zero through a masking operation, thereby isolating the model parameters and gradients between different scenes without affecting each other, so as to capture the characteristics between different scenes, better adapt to the needs of different scenes, and meet the personalized needs of different scenes while ensuring the prediction accuracy of the deep neural network model.
[0081] Figure 3 A schematic diagram of the structure of a private sub-neural network model in a deep neural network model provided in an embodiment of the present application. Figure 3 As shown, in some examples, for example, the private sub-neural network model may include a dropout layer 131, a batch normalization layer 132, a feature mask layer 133, and a residual connection layer 134. The dropout layer 131 can be used to alleviate the problem of overfitting of the scene to the private features. The batch normalization layer 132 can be used to overcome the distribution drift problem of the private features. The feature mask layer 133 can be used to set the private feature vectors that are not in the scene to zero through a masking operation, thereby improving the alignment of private features in different scenes. The residual connection layer 134 can be used to enhance the expressive power of private features in deep networks.
[0082] Figure 4 The following schematically illustrates multiple scenarios of job recommendation applications. Figure 4As shown, according to some embodiments of the present application, optionally, multiple scenes may include at least two of a recommended job scene, a search job scene, a nearby job scene, and a latest job scene. In the recommended job scene (referred to as the recommended scene), one or more suitable jobs can be recommended to the user based on the user's job-seeking intention. In the search job scene (referred to as the search scene), one or more suitable jobs can be recommended to the user based on the search term entered by the user (such as "algorithm engineer"). In the nearby job scene (referred to as the nearby scene), one or more suitable jobs can be recommended to the user based on the user's location or area. In the latest job scene (referred to as the latest scene), one or more suitable jobs can be recommended to the user based on the job posting time of each job. The target scene can be any one of the multiple scenes.
[0083] In some examples, private features of recommended job scenarios may include the user's job-seeking intentions, private features of search job scenarios may include search terms entered by the user, private features of nearby job scenarios may include the distance between the user's desired work area and the actual work area required for the position, and private features of the latest job scenarios may include the time when the position was posted.
[0084] The job recommendation method based on a deep neural network model provided in the embodiments of the present application can adapt to job recommendations in at least two scenarios among the recommended job scenario, the search job scenario, the nearby job scenario and the latest job scenario through one-time modeling, thereby reducing the repetitive work of building models, and is also beneficial to reducing the resource pressure brought by online service deployment and saving costs.
[0085] According to some embodiments of the present application, optionally, the target position can be a position that has purchased advertising (value-added services, such as exposure) or a position that has not purchased advertising, and the present application does not limit this.
[0086] The inventor of the present application further realized that when making job recommendations, in addition to the basic user portrait features, the match between the job and the job seeker's resume is also crucial, which determines whether the job seeker is willing to apply for the job and whether the job publisher is willing to invite the job seeker to an interview. Therefore, in the common feature part, by real-time statistics of the user's historical behavior information, a user's historical job sequence and a user's historical job sequence for interviews are introduced. Among them, the user's historical job sequence can include the IDs of multiple jobs that the user has historically applied for, and the user's historical job sequence can be used to capture the user's job search preferences. The user's historical invited interview job sequence can include the IDs of multiple jobs that the user has historically been invited to interview, and the user's historical invited interview job sequence can evaluate or characterize which level of job the user is specifically suitable for, and be used as a reference for job recommendations.
[0087] The encoder of the Transformer model is introduced in the common feature layer to capture the user's historical behavior preferences based on the attention mechanism and analyze the matching degree between the user's behavior sequence characteristics and the target position ID.
[0088] Specifically, in some embodiments, the common feature layer is provided with an encoder of a Transformer model. The self-attention mechanism of the encoder allows the model to dynamically adjust the weights according to the relationship between different parts of the input when processing the input sequence. The calculation of this mechanism includes three steps: calculating the linear transformation of the query, key, and value, then calculating the attention score through the dot product, and then normalizing it through softmax, and finally weighted averaging to obtain a new representation.
[0089] The user behavior sequence feature of the target user may include a sequence of positions that the target user has applied for in the past and a sequence of positions that the target user has been invited to interview in the past. The sequence of positions that the target user has applied for in the past may include multiple position IDs that the target user has applied for in the past, and the sequence of positions that the target user has been invited to interview in the past may include multiple position IDs that the target user has been invited to interview in the past.
[0090] Correspondingly, after the Embedding operation, the user behavior sequence feature vector may include the target user's historical posting position sequence feature vector and the target user's historical interview invitation position sequence feature vector. The target user's historical posting position sequence feature vector includes multiple position ID vectors that the target user has historically posted, and the target user's historical interview invitation position sequence feature vector includes multiple position ID vectors that the target user has historically been invited to interview.
[0091] S202: Based on the common feature layer, batch normalize the user portrait feature vector of the target user, the user behavior sequence feature vector of the target user, the target position ID vector, and the position information feature vector of the target position to obtain a batch-normalized common feature vector matrix, which may include the following steps one and two.
[0092] Step 1: Input the target position ID vector and the target user's historically submitted position sequence feature vector into the encoder to obtain the first attention matrix of the matching degree between each position ID vector in the target user's historically submitted position sequence feature vector and the target position ID vector.
[0093] Figure 5 This is a schematic diagram of the structure of the encoder of the Transformer model. Figure 5As shown in the figure, the Multi-Head Attention mechanism is composed of multiple Self-Attention mechanisms. It can be seen that the encoder contains a Multi-Head Attention. There is also an Add&Norm layer above the Multi-Head Attention. Add represents the residual connection, which is used to prevent network degradation; Norm represents the layer normalization, which is used to normalize the activation values of each layer.
[0094] The matrices Q (query), K (key value), and V (value) are needed for calculation. In step 1, the target position ID vector can be used as K, and the feature vector of the position sequence of the target user's historical submission can be used as Q and V at the same time. The linear transformation of Q, K, and V is calculated to obtain the first attention matrix of the matching degree between each position ID vector in the feature vector of the position sequence of the target user's historical submission and the target position ID vector. Its expression is as follows:
[0095]
[0096] Among them, d k Indicates the number of columns of the Q and K matrices, i.e., the vector dimension. In expression (1), the inner product of each row vector of the matrix Q and K is calculated. In order to prevent the inner product from being too large, it is divided by d k The square root of Q. After multiplying Q by the transpose of K, the resulting matrix has n rows and columns. The calculation of Q multiplied by the transpose of K gives QK T Afterwards, softmax is used to calculate the attention coefficients of the target position ID vector and each position ID vector in the feature vector of the position sequence submitted by the target user historically, and the first attention matrix of the matching degree between each position ID vector in the feature vector of the position sequence submitted by the target user historically and the target position ID vector is obtained.
[0097] Step 2: Input the target position ID vector and the feature vector of the position sequence of the target user's historical invitation to interview into the encoder to obtain the second attention matrix of the matching degree between each position ID vector in the feature vector of the position sequence of the target user's historical invitation to interview and the target position ID vector.
[0098] In step 2, the target position ID vector can be used as K, and the feature vector of the target user's historical position sequence invited for interviews can be used as Q and V at the same time. For example, the linear transformation of Q, K and V can be calculated according to the above expression (1) to obtain the second attention matrix of the matching degree between each position ID vector in the feature vector of the target user's historical position sequence invited for interviews and the target position ID vector.
[0099] The public feature vector matrix may also include at least a first attention matrix and a second attention matrix. In this way, by capturing the commonalities between the preferences of the target position and the positions that the user has applied for in the past and the positions that the user has been invited to interview in the past, more accurate recommendations can be made and business indicators can be improved.
[0100] According to some embodiments of the present application, optionally, S202: based on the common feature layer, batch normalize the user portrait feature vector of the target user, the user behavior sequence feature vector of the target user, the target position ID vector, and the position information feature vector of the target position to obtain a batch-normalized common feature vector matrix, which may also include the following step three.
[0101] Figure 6 Another structural diagram of the deep neural network model provided in the embodiment of the present application. Figure 6 As shown, in some embodiments, in the common feature layer 12, the fully convolutional network (FCN) and (batch normalization) BN can be combined to process the user portrait feature vector of the target user and the position information feature vector of the target position. FCN is responsible for extracting and processing the feature vector, while BN helps stabilize the training process, which can further improve the performance and training efficiency of the model, making the model converge faster and improving the final segmentation accuracy.
[0102] like Figure 6 As shown, in some embodiments, the third part of the expert sub-neural network model can be a shared expert sub-neural network model 143, which can predict both the click probability of a position and the conversion probability of a position. In some examples, the target click probability of the target position can be obtained by weighted summing up the click probability of the target position predicted by the first expert sub-neural network model and the click probability of the target position predicted by the shared expert sub-neural network model. The target conversion probability of the target position can be obtained by weighted summing up the conversion probability of the target position predicted by the second expert sub-neural network model and the conversion probability of the target position predicted by the shared expert sub-neural network model.
[0103] According to some embodiments of the present application, optionally, calculating the ranking score of the target position according to the target click probability and the target conversion probability may include the following steps:
[0104] Calculate the product of the target click probability and the target conversion probability to obtain the ranking score of the target position.
[0105] For example, if the target click probability is 0.8 and the target conversion probability is 0.5, the ranking score of the target position is 0.4.
[0106] In this way, the target click probability and target conversion probability of the target position are combined to obtain the ranking score of the target position, so that the final ranking score of the target position can match the target user's actual click positions, submission positions and invitations to interviews, thereby improving the prediction accuracy.
[0107] According to some other embodiments of the present application, optionally, calculating the ranking score of the target position according to the target click probability and the target conversion probability may include the following steps:
[0108] According to the length of the target scenario ID vector, the scenario adjustment coefficient is determined, and the product of the target click probability, the target conversion probability and the scenario adjustment coefficient is calculated to obtain the ranking score of the target position in the target scenario.
[0109] Specifically, the target scene ID is obtained after the Embedding operation to obtain the target scene ID vector. The scene adjustment coefficient can be determined according to the length of the target scene ID vector. The scene adjustment coefficients corresponding to different lengths may be different. The ranking score of the final target position is adjusted by the scene adjustment coefficient related to the target scene, which is conducive to making the ranking score of the target position better match the current target scene, so that the model can better identify different scenes.
[0110] According to some embodiments of the present application, optionally, after calculating the ranking score of the target position according to the target click probability and the target conversion probability, the position recommendation method based on the deep neural network model may also include the following steps three and four.
[0111] Step 3: Take the next position to be recommended in the list to be recommended as the target position, and repeat the above steps until the ranking scores of each position to be recommended in the list to be recommended are obtained.
[0112] The list to be recommended may include multiple positions to be recommended, and the target position may be one of the positions to be recommended in the list to be recommended. After calculating the ranking score of the target position in S206, the next position to be recommended in the list to be recommended may be used as the target position, and the above steps S201 to S206 are repeated until the ranking scores of each position to be recommended in the list to be recommended are calculated.
[0113] Step 4: Sort the multiple recommended positions in the recommendation list in descending order of the sorting scores, and display the sorted multiple recommended positions.
[0114] After calculating the ranking scores of each position to be recommended in the list to be recommended, the multiple positions to be recommended in the list to be recommended can be ranked in descending order of the ranking scores. Then, the ranked multiple positions to be recommended are displayed on the terminal device of the target user to achieve multiple position recommendations for the target scenario. The position recommendation list mentioned above can be understood as a list of ranked multiple positions to be recommended.
[0115] According to some embodiments of the present application, optionally, in addition to the user portrait features of the sample user, the user behavior sequence features of the sample user, the sample position ID, the position information features of the sample position, the sample scene ID and the private features of the sample scene, the deep neural network model can also be further trained based on the context features of the sample user on the basis of the above features and ID. Exemplarily, the context features of the sample user may include the date when the sample user initiates the request, the time when the sample user initiates the request, the recruitment platform used by the sample user, and the model of the terminal device used by the sample user. Based on the date when the sample user initiates the request, it can be understood whether the date is a working day, what day of the week the date is, and other information.
[0116] Accordingly, the job recommendation method based on the deep neural network model may also include the following steps:
[0117] In addition to the user portrait features of the target user, the user behavior sequence features of the target user, the target position ID, the position information features of the target position, the target scene ID and the private features of the target scene, the contextual features of the target user are also input into the deep neural network model to predict the ranking score of the target position in combination with the contextual features of the target user.
[0118] The context features of the target user include the date when the target user initiates the request, the time when the target user initiates the request, the recruitment platform used by the target user, and the model of the terminal device used by the target user. In some examples, the context features of the target user can be used as public features, and the context feature vector of the target user is obtained after the Embedding operation of the shared embedding layer, and input into the public feature layer. Accordingly, the public feature vector matrix can also include the context feature vector of the target user.
[0119] Specifically, for the recruitment industry, whether the date is a working day or a non-working day has a great impact on users viewing and submitting resumes, and whether the job seeker invites the job seeker for an interview. In addition, the day of the week when the user initiates the request, such as Monday or Friday, and the time of the user initiating the request, whether it is in the morning, noon or evening, also have a great impact on users viewing and submitting resumes, and whether the job seeker invites the job seeker for an interview. Therefore, introducing contextual features to train the model and participate in the prediction of the target position results can improve the accuracy of the deep neural network model prediction, making the prediction results more suitable for the current actual situation (such as the current date and current time), and improving the user experience.
[0120] According to some embodiments of the present application, optionally, the job recommendation method based on the deep neural network model may further include the following steps:
[0121] When it is detected that the scene selected by the target user switches from the first scene to the second scene, the target scene is changed from the first scene to the second scene, and the first scene and the second scene are different scenes.
[0122] The first scene may be any scene, such as a recommended job scene, a search job scene, a nearby job scene, or a latest job scene. The second scene may be a scene different from the first scene. For example, in some examples, the first scene may be a recommended job scene, and the second scene may be a search job scene, a nearby job scene, or a latest job scene.
[0123] When it is detected that the scene selected by the target user switches from the first scene to the second scene, the target scene can be changed from the first scene to the second scene. While keeping the user portrait features of the target user, the user behavior sequence features of the target user, the target position ID and the position information features of the target position unchanged, the target scene ID can be changed from the first scene ID to the second scene ID, and the private features of the target scene can be changed from the private features of the first scene to the private features of the second scene, and then input into the deep neural network model to achieve position recommendation for the second scene.
[0124] In order to combine the comparative experiment of the deep neural network model of the embodiment of the present application with the traditional MMoE model, the job recommendation effect of the embodiment of the present application is verified.
[0125] The deep neural network model of the embodiment of the present application was subjected to an AB experiment with the traditional MMoE model to compare the results. The evaluation method for offline model training can use the evaluation indicator of Area Under the Curve (AUC), which evaluates the recommendation sorting ability of the model and reflects the quality of the recommendation results. Compared with the traditional MMoE model, the offline indicator AUC of the deep neural network model of the embodiment of the present application has been improved by 5.1%.
[0126] In the job recommendation business, the online business indicators mainly focus on: viewing rate, submission rate and handshake rate. The viewing rate is used to reflect the proportion of users who click to view the recommended jobs. The submission rate is used to reflect the proportion of users who have viewed the recommended jobs and submitted their resumes. The handshake rate is used to reflect the proportion of users who submitted the recommended jobs and received positive feedback from the employer. Among them, the positive feedback from the employer can include chatting to ask for details, collecting user resumes, downloading user attached resumes, and calling to invite interviews.
[0127] Table 1 schematically shows multiple evaluation indicators of the two models in the recommendation scenario. Table 2 schematically shows multiple evaluation indicators of the two models in the search scenario.
[0128] Table 1
[0129] Model Name: View Rate Delivery rate Handshake rate Traditional MMoE: 10.24% 20.14% 22.12% This application: 12.63% 23.79% 24.98% Relative improvement: +23.3% +18.1% +12.9%
[0130] Table 2
[0131] Model Name: View Rate Delivery rate Handshake rate Traditional MMoE: 13.41% 21.96% 20.74% This program: 16.83% 24.58% 25.06% Relative improvement: +25.5% +11.9% +14.5%
[0132] Taking the viewing rate in the second column of Table 1 as an example, the relative improvement is (12.63%-10.24%) / 10.24%=23.3%. It can be seen from Tables 1 and 2 that compared with the traditional MMoE model, the deep neural network model of the embodiment of the present application has obvious improvements in both the delivery rate and the handshake rate, indicating that the deep neural network model of the embodiment of the present application plays a key role in introducing the target user's historical posting sequence and the target user's historical interview sequence in the public feature layer, and has a good characterization of the target user's job-seeking preferences and what kind of positions the target user is suitable for. Secondly, from the perspective of different scenarios, the deep neural network model of the embodiment of the present application has obvious improvements in various business indicators in the two main scenarios, indicating that the multi-scenario joint modeling introduced by the deep neural network model of the embodiment of the present application, in which the private sub-neural network model plays a key role, learns the characteristics between different scenarios, and enables the model to adapt well to different scenarios.
[0133] Based on the same technical concept as the job recommendation method based on the deep neural network model provided in the above embodiment, the present application also provides a deep neural network model for job recommendation.
[0134] like Figure 1 As shown, the deep neural network model provided in the embodiment of the present application may include a shared embedding layer 11, a public feature layer 12, a private feature layer 13, an expert layer 14, a gating layer 15 and a task-specific layer 16. Among them, the private feature layer 13 may include private sub-neural network models 131-13n corresponding to multiple different scenarios, where n is an integer greater than 1. The expert layer 14 may include multiple expert sub-neural network models, the first part of the expert sub-neural network model may be a first expert sub-neural network model 141 for predicting the click probability of a position, and the second part of the expert sub-neural network model may be a second expert sub-neural network model 142 for predicting the conversion probability of a position.
[0135] The shared embedding layer 11 is used to perform embedding operations on the input user portrait features of the target user, the user behavior sequence features of the target user, the target position ID, the position information features of the target position, the target scene ID and the private features of the target scene to obtain a user portrait feature vector, a user behavior sequence feature vector, a target position ID vector, a position information feature vector, a target scene ID vector and a private feature vector, and input the user portrait feature vector, the user behavior sequence feature vector, the target position ID vector and the position information feature vector into the public feature layer, and input the private feature vector into the private feature layer.
[0136] The common feature layer 12 is used to batch normalize the user portrait feature vector of the target user, the user behavior sequence feature vector of the target user, the target position ID vector and the position information feature vector of the target position to obtain a batch-normalized common feature vector matrix.
[0137] The target private sub-neural network model in the private feature layer 13 is used to batch normalize the private feature vectors to obtain a batch-normalized private feature vector matrix.
[0138] The multiple expert sub-neural network models in the expert layer 14 are used to input the public feature vector matrix and the private feature vector matrix to obtain the predicted click probability and conversion probability of the target position.
[0139] The gated sub-neural network model in the gated layer 15 is used to generate the weights of each expert sub-neural network model in the target scenario based on the public feature vector matrix and the private feature vector matrix.
[0140] The task-specific layer 16 is used to calculate the target click probability of the target position based on the click probability and weight of the target position output by each first expert sub-neural network model; calculate the target conversion probability of the target position based on the conversion probability and weight of the target position output by each second expert sub-neural network model; calculate the ranking score of the target position based on the target click probability and the target conversion probability; wherein the ranking score is used to determine the position of the target position in the position recommendation list.
[0141] The deep neural network model for job recommendation provided by the embodiment of the present application can, on the one hand, adapt to multiple scenarios of job recommendation through one-time modeling, avoiding duplication of work, and at the same time helping to reduce the resource pressure brought by online service deployment and save costs. On the other hand, the model architecture is cleverly designed. On the basis of the shared embedding layer, a public feature layer and a private feature layer are added. The shared embedding layer and / or the public feature layer can capture the potential relationship and similarity between the public features of different scenarios, which is conducive to information sharing between different scenarios and improving the prediction accuracy of the deep neural network model; the private feature layer is provided with private sub-neural network models corresponding to multiple different scenarios. Different private sub-neural network models are used to process the private features of different scenarios, which is conducive to retaining the characteristics of different scenarios, better adapting to the needs of different scenarios, and meeting the personalized needs of different scenarios while ensuring the prediction accuracy of the deep neural network model. On the other hand, the gating layer can flexibly adjust the weights of each expert sub-neural network model in different scenarios, further enabling the model to adapt to the needs of different scenarios and meet the personalized needs of different scenarios. On the other hand, the target click probability of the target position is calculated by the click probability and weight of the target position output by each first expert sub-neural network model; the target conversion probability of the target position is calculated by the conversion probability and weight of the target position output by each second expert sub-neural network model. Introducing multiple first expert sub-neural network models and multiple second expert sub-neural network models, with the aid of weight adjustment, is conducive to improving the accuracy of the target click probability and target conversion probability of the target position, and then improving the accuracy of the calculated ranking score of the target position, so as to achieve accurate sorting and precise recommendation of the target position in the position recommendation list.
[0142] Figure 1 The various layers / modules / units in the deep neural network model shown have been described in detail above and will not be repeated here. The deep neural network model for job recommendation provided in this application has the same or corresponding technical features as the job recommendation method based on the deep neural network model provided in the above method embodiment, and can achieve the corresponding technical effects. For the sake of brevity, it will not be repeated here.
[0143] The electronic device in the embodiment of the present application may be a user terminal device, a server, other computing devices, or a cloud server. Figure 7 This is a hardware structure diagram of an electronic device of an embodiment of the present application. The electronic device may include a processor 701 and a memory 702 storing computer program instructions. When the processor 701 executes the computer program instructions, it implements the process or function of any of the above-mentioned embodiment methods.
[0144] Specifically, the processor 701 may include a central processing unit (CPU), or an application-specific integrated circuit (ASIC), or may be configured to implement one or more integrated circuits of the embodiments of the present application. The memory 702 may include a large-capacity memory for data or instructions. For example, the memory 702 may be at least one of the following: a hard disk drive (HDD), a read-only memory (ROM), a random access memory (RAM), a floppy disk drive, a flash memory, an optical disk, a magneto-optical disk, a tape, a universal serial bus (USB) drive or other physical / tangible memory storage device. For another example, the memory 702 may include a removable or non-removable (or fixed) medium. For another example, the memory 702 may be inside or outside the integrated gateway disaster recovery device. The memory 702 may be a non-volatile solid-state memory. In other words, the memory 702 usually includes a tangible (non-transitory) computer-readable storage medium (such as a memory device) encoded with computer-executable instructions, and when the software is executed (such as executed by one or more processors), the operations described in the method of the embodiment of the present application can be performed. The processor 701 implements the process or function of any method in the above embodiments by reading and executing the computer program instructions stored in the memory 702.
[0145] In one example, Figure 7The electronic device shown may also include a communication interface 703 and a bus 710. Among them, the processor 701, the memory 702, and the communication interface 703 are connected through the bus 710 and complete the communication between each other. The communication interface 703 is mainly used to realize the communication between each module, device, unit and / or device in the embodiment of the present application. The bus 710 includes hardware, software or both, and can couple the components of the online data traffic billing device to each other. For example, the bus may include at least one of the following: an accelerated graphics port (AGP) or other graphics bus, an enhanced industrial standard architecture (EISA) bus, a front-end bus (FSB), a hypertransport (HT) interconnect, an industrial standard architecture (ISA) bus, an infinite bandwidth interconnect, a low pin count (LPC) bus, a memory bus, a micro channel architecture (MCA) bus, a peripheral component interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a serial advanced technology attachment (SATA) bus, a video electronics standard association local (VLB) bus or other suitable buses. The bus 710 may include one or more buses. Although the embodiments of the present application describe or illustrate a specific bus, the embodiments of the present application may consider any suitable bus or interconnection method.
[0146] In combination with the method in the above embodiments, an embodiment of the present application also provides a computer-readable storage medium, on which computer program instructions are stored. When the computer program instructions are executed by a processor, the process or function of any method in the above embodiments is implemented.
[0147] In addition, an embodiment of the present application further provides a computer program product, on which computer program instructions are stored. When the computer program instructions are executed by a processor, the process or function of any one of the methods in the above embodiments is implemented.
[0148] The above exemplarily describes the flowcharts and / or block diagrams of the methods, devices, systems and computer program products of the embodiments of the present application, and describes the relevant various aspects. It should be understood that each box or combination thereof in the flowchart and / or block diagram can be implemented by computer program instructions, or by dedicated hardware that performs a specified function or action, or by a combination of dedicated hardware and computer instructions. For example, these computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer or other programmable data processing device to form a machine that enables these instructions executed by such a processor to enable the implementation of the functions / actions specified in each box or combination thereof in the flowchart and / or block diagram. Such a processor can be a general-purpose processor, a special-purpose processor, a special application processor or a field programmable logic circuit.
[0149] The functional blocks shown in the structured block diagram of the embodiment of the present application can be implemented as hardware, software, firmware or a combination thereof. When implemented in hardware, it can be, for example, an electronic circuit, an application-specific integrated circuit (ASIC), appropriate firmware, a plug-in, a function card, etc.; when implemented in software, it is a program or code segment used to perform the required task. The program or code segment can be stored in a memory, or transmitted on a transmission medium or a communication link via a data signal carried in a carrier. The code segment can be downloaded via a computer network such as the Internet, an intranet, etc.
[0150] It should be noted that the present application is not limited to the specific configurations and processes described above or shown in the figures. The above is only a specific implementation mode of the present application. Those skilled in the art can clearly understand that for the convenience and brevity of description, the specific working process of the described system, device, module or unit can refer to the corresponding process in the method embodiment without further description. It should be understood that the scope of protection of the present application is not limited to this. Any technician familiar with the technical field can think of various equivalent modifications or substitutions within the technical scope disclosed in the present application, and these modifications or substitutions should be included in the scope of protection of the present application.
Claims
1. A job recommendation method based on a deep neural network model, characterized in that: The deep neural network model includes a shared embedding layer, a public feature layer, a private feature layer, an expert layer, a gating layer and a task-specific layer. The private feature layer includes private sub-neural network models corresponding to multiple different scenarios. The expert layer includes multiple expert sub-neural network models. The first expert sub-neural network model is a first expert sub-neural network model for predicting the click probability of a job position. The second expert sub-neural network model is a second expert sub-neural network model for predicting the conversion probability of a job position. The method comprises: Input the user portrait features of the target user, the user behavior sequence features of the target user, the target position ID, the position information features of the target position, the target scenario ID and the private features of the target scenario into the shared embedding layer. The shared embedding layer is used to embed the input features and IDs to obtain the user portrait feature vector, the user behavior sequence feature vector, the target position ID vector, the position information feature vector, the target scenario ID vector and the private feature vector. Input the user portrait feature vector, the user behavior sequence feature vector, the target position ID vector and the position information feature vector into the public feature layer, and input the private feature vector into the private feature layer. Based on the common feature layer, the user portrait feature vector of the target user, the user behavior sequence feature vector of the target user, the target position ID vector and the position information feature vector of the target position are batch normalized to obtain a common feature vector matrix after batch normalization; Batch normalizing the private feature vectors based on the target private sub-neural network model in the private feature layer to obtain a batch-normalized private feature vector matrix; Input the public feature vector matrix and the private feature vector matrix into multiple expert sub-neural network models in the expert layer to obtain the predicted click probability and conversion probability of the target position; Input the public feature vector matrix and the private feature vector matrix into the gated sub-neural network model in the gated layer to obtain the weights of each expert sub-neural network model in the target scenario generated by the gated sub-neural network model; The click probability and weight of the target position output by each first expert sub-neural network model, and the conversion probability and weight of the target position output by each second expert sub-neural network model are input into the task-specific layer. The task-specific layer is used to calculate the target click probability of the target position based on the click probability and weight of the target position output by each first expert sub-neural network model; calculate the target conversion probability of the target position based on the conversion probability and weight of the target position output by each second expert sub-neural network model; calculate the ranking score of the target position based on the target click probability and the target conversion probability; wherein the ranking score is used to determine the position of the target position in the position recommendation list.
2. The method according to claim 1, characterized in that For any i-th private sub-neural network model, the i-th private sub-neural network model is used to set the private feature vectors corresponding to other scenes except the i-th scene to zero through a masking operation, the i-th scene is the scene corresponding to the i-th private sub-neural network model, and i is a positive integer.
3. The method according to claim 1, characterized in that The multiple scenarios include at least two of a recommended job scenario, a searched job scenario, a nearby job scenario, and a latest job scenario, and the target scenario is any one of the multiple scenarios; Among them, the private features of the recommended job scene include the user's job-seeking intention, the private features of the search job scene include the search terms entered by the user, the private features of the nearby job scene include the distance between the user's desired work area and the actual work area required by the job, and the private features of the latest job scene include the job posting time; The user profile characteristics of the target user include at least one of the following: the target user's education, major, industry, age, gender, identity, work experience, expected job function, expected work area, expected salary and expected job type; The job information characteristics of the target job include at least one of the following: the function, industry, educational requirements, professional requirements, work experience requirements, salary, work area, job type, age requirements and gender requirements of the target job.
4. The method according to claim 1, characterized in that: The common feature layer is provided with an encoder of a Transformer model, the user behavior sequence features include a target user's historically applied job sequence and a target user's historically invited job sequence for interviews, the user behavior sequence feature vector includes a target user's historically applied job sequence feature vector and a target user's historically invited job sequence feature vector, the target user's historically applied job sequence feature vector includes multiple job ID vectors that the target user has historically applied for, and the target user's historically invited job sequence feature vector includes multiple job ID vectors that the target user has historically been invited for interviews; Based on the common feature layer, the user portrait feature vector of the target user, the user behavior sequence feature vector of the target user, the target position ID vector, and the position information feature vector of the target position are batch normalized to obtain a common feature vector matrix after batch normalization, including: The target position ID vector and the target user's historically submitted position sequence feature vector are input into the encoder to obtain the first attention matrix of the matching degree between each position ID vector in the target user's historically submitted position sequence feature vector and the target position ID vector; Input the target position ID vector and the feature vector of the position sequence of the target user's historical interview invitations into the encoder to obtain a second attention matrix of the matching degree between each position ID vector in the feature vector of the position sequence of the target user's historical interview invitations and the target position ID vector; The common feature vector matrix includes at least a first attention matrix and a second attention matrix.
5. The method according to claim 1, characterized in that: Calculate the ranking score of the target position based on the target click probability and target conversion probability, including: Calculate the product of the target click probability and the target conversion probability to get the ranking score of the target position; Alternatively, the scenario adjustment coefficient is determined according to the length of the target scenario ID vector, and the product of the target click probability, the target conversion probability and the scenario adjustment coefficient is calculated to obtain the ranking score of the target position in the target scenario.
6. The method according to claim 1, characterized in that After calculating the ranking score of the target position according to the target click probability and the target conversion probability, the method further includes: The next position to be recommended in the list to be recommended is taken as the target position, and the above steps are repeated until the ranking scores of each position to be recommended in the list to be recommended are obtained; The multiple positions to be recommended in the recommendation list are sorted in descending order of the sorting scores, and the sorted multiple positions to be recommended are displayed.
7. The method according to claim 1, characterized in that The deep neural network model is also trained based on the contextual features of the sample users, including the date when the sample users initiate the request, the time when the sample users initiate the request, the recruitment platform used by the sample users, and the model of the terminal device used by the sample users; The method further comprises: The contextual features of the target user are also input into the deep neural network model to predict the ranking score of the target position in combination with the contextual features of the target user. The contextual features of the target user include the date when the target user initiates the request, the time when the target user initiates the request, the recruitment platform used by the target user, and the model of the terminal device used by the target user.
8. The method according to claim 1, characterized in that The method further comprises: When it is detected that the scene selected by the target user switches from the first scene to the second scene, the target scene is changed from the first scene to the second scene, and the first scene and the second scene are different scenes.
9. A deep neural network model for job recommendation, characterized in that: The deep neural network model includes a shared embedding layer, a public feature layer, a private feature layer, an expert layer, a gating layer and a task-specific layer. The private feature layer includes private sub-neural network models corresponding to multiple different scenarios. The expert layer includes multiple expert sub-neural network models. The first expert sub-neural network model is a first expert sub-neural network model for predicting the click probability of a job position. The second expert sub-neural network model is a second expert sub-neural network model for predicting the conversion probability of a job position. The shared embedding layer is used to embed the input features and IDs to obtain user portrait feature vectors, user behavior sequence feature vectors, target position ID vectors, position information feature vectors, target scenario ID vectors and private feature vectors, and input the user portrait feature vectors, user behavior sequence feature vectors, target position ID vectors and position information feature vectors into the public feature layer, and input the private feature vectors into the private feature layer; The public feature layer is used to batch normalize the user portrait feature vector of the target user, the user behavior sequence feature vector of the target user, the target position ID vector, and the position information feature vector of the target position to obtain a public feature vector matrix after batch normalization; The target private sub-neural network model in the private feature layer is used to batch normalize the private feature vectors to obtain a batch-normalized private feature vector matrix; Multiple expert sub-neural network models in the expert layer are used to input the public feature vector matrix and the private feature vector matrix to obtain the predicted click probability and conversion probability of the target position; The gated sub-neural network model in the gated layer is used to generate the weights of each expert sub-neural network model in the target scenario based on the public feature vector matrix and the private feature vector matrix; The task-specific layer is used to calculate the target click probability of the target position based on the click probability and weight of the target position output by each first expert sub-neural network model; Based on the conversion probability and weight of the target positions output by each second expert sub-neural network model, the target conversion probability of the target position is calculated; based on the target click probability and the target conversion probability, the ranking score of the target position is calculated; wherein the ranking score is used to determine the position of the target position in the position recommendation list.
10. An electronic device, characterized in that: The electronic device comprises: a processor and a memory storing computer program instructions; when the electronic device executes the computer program instructions, the job recommendation method based on the deep neural network model as described in any one of claims 1 to 8 is implemented.
Citation Information
Patent Citations
Position recommendation method based on SWPEM routing algorithm
CN113486240A
Recommendation probability prediction method and device, computer storage medium and electronic equipment
CN114117216A
Recommendation method, device and equipment based on deep learning model
CN116861092A
Song recommendation method and device, medium and computing equipment
CN118332185A
Cited By
Feature extraction and fusion method based on three-way hybrid coding and MOE architecture
CN120180057A
Recommendation sorting method and system in combination with driver experience
CN121146464A
A driver experience combined recommendation ranking method and system
CN121146464B