A method and system for generating job portraits
Through the word embedding model and the demand label identification model, job data is annotated and screened, and job portraits are constructed, which solves the subjectivity problem of traditional job demand settings and achieves a more accurate and efficient recruitment process.
Patent Information
- Application Number
- CN202411330990.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-24
- Publication Date
- 2024-12-27
- Estimated Expiration
- 2044-09-24
AI Technical Summary
The traditional method of job demand setting is subjective and arbitrary, resulting in inaccurate and inefficient job recruitment.
The word embedding model and demand label recognition model are used to label job data demand labels, and job portraits are constructed through frequency filtering and clustering analysis to avoid subjective settings.
Accurately determine job needs with the assistance of big data, improve recruitment efficiency, and improve the accuracy of demand label output.
Smart Images

Figure CN118862882B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of data processing, and specifically to a method and system for generating job profiles. Background Technology
[0002] With rapid socio-economic development and continuous industrial restructuring, enterprises' demands for talent are becoming increasingly diversified and specialized. However, in the actual recruitment process, many enterprises still rely on traditional methods of setting job requirements, which are often highly subjective and arbitrary. This subjective approach to job requirements leads to inaccurate and inefficient recruitment processes. Summary of the Invention
[0003] This invention uses a word embedding model and a demand tag recognition model to annotate job data words with demand tags. Then, it performs a first screening by comparing the frequency of job data words with a frequency threshold, followed by a second screening through cluster analysis. Finally, it constructs a job profile based on a third set of candidate words annotated with demand tags. This allows for the determination of job requirements with the assistance of big data, avoiding inaccuracies and inefficiencies in job recruitment caused by subjective job requirement settings.
[0004] A method for generating job profiles includes:
[0005] Obtain job data, which reflects skill requirements, experience requirements, education requirements, and certification requirements;
[0006] The job data is segmented into words to obtain a job data word set, which includes several job data words. The job data word set is then fed into a word embedding model for processing to output a job data feature set, which includes several job data features, and each job data feature corresponds to a job data word.
[0007] The job data feature set is fed into the demand tag recognition model for processing, and the demand tag corresponding to each job data word is output.
[0008] All job data terms are divided into several sets of demand terms according to their corresponding demand tags. The number of demand term sets is the same as the number of demand tags. For each set of demand terms, the following operations are performed: deduplication of job data terms in the demand term set to obtain the first candidate term set; the frequency of job data terms in the first candidate term set in the demand term set is calculated and recorded as the job data term frequency; job data terms in the first candidate term set whose frequency is greater than the frequency threshold are formed into the second candidate term set; based on the job data features corresponding to the job data terms, cluster analysis is performed on the job data terms in the second candidate term set to output several clusters; a job data term is randomly selected from each cluster to form the third candidate term set; and the third candidate term set is labeled by the demand tags corresponding to the demand term sets.
[0009] A job profile is constructed based on the set of all third-option words labeled with requirement tags.
[0010] As a preferred aspect, the word embedding model is based on the BERT model and includes 12 encoders and a weight fusion layer;
[0011] The job data word set is processed using a word embedding model to output a job data feature set. The specific steps include the following:
[0012] Iterate through i from 1 to 12, where i is the encoder number and i = 1, 2, 3, ..., 12. When i = 1, for the i-th encoder, perform the following operation: feed the job data word set into the encoder for processing and output the data feature output set F. i When i≠1, for the i-th encoder, perform the following operation to output the data feature set F. i-1 The data is fed into the encoder for processing and outputs a set of data features, F. i ;
[0013] In the weighted fusion layer, the data feature output set F is... i The data are fed into 12 multilayer perceptrons for processing to construct a data feature output set F. i The corresponding weight vector μ i Then output the data feature set F i With the corresponding weight vector μ i After performing the multiplication operation, a convolution operation is performed to construct the job data feature set.
[0014] As a preferred approach, training the word embedding model includes the following steps:
[0015] Add a fully connected layer at the end of the word embedding model to build and train the word embedding model.
[0016] Obtain several word embedding training samples, which include text word sequences with randomly masked words; combine all word embedding training samples into a word embedding training set, and then input the word embedding training set into the parameter-initialized word embedding model training model for training. During training, take the masked words in the word embedding training samples as the target, calculate the first loss value, and determine whether the first loss value is within a first preset range. If the first loss value is within the first preset range, output the word embedding model in the trained word embedding model training model; otherwise, continue to train the word embedding model training model using the word embedding training set.
[0017] As a preferred aspect, the demand label recognition model is based on the BiLSTM-CRF model, which includes a BiLSTM layer, a graph convolutional layer, a self-attention mechanism layer, and a CRF layer. The BiLSTM layer and the graph convolutional layer both perform feature extraction operations to construct bidirectional feature maps and local feature maps. The self-attention mechanism layer is used to perform feature fusion operations on the bidirectional feature maps and local feature maps to construct a fused feature map. The CRF layer is used to receive the fused feature map, process it, and output the demand label.
[0018] As a preferred approach, the job data feature set is processed using a demand tag recognition model to output demand tags, specifically including the following steps:
[0019] The job data feature set is fed into a BiLSTM layer for processing to construct a bidirectional feature map;
[0020] In the graph convolutional layer, each job data feature in the job data feature set is used as a feature node. Feature edges are constructed between feature nodes corresponding to two adjacent job data features. The similarity between any two job data features is calculated and denoted as feature similarity. If the feature similarity is greater than a similarity threshold, a feature edge is constructed between the two job data features; otherwise, no operation is performed. Jump orders are selected sequentially from the jump order set. For each selected jump order, the following operation is performed: feature edges are constructed between feature nodes corresponding to two job data features separated by a jump order. The jump order set is then used... The feature weight δ is obtained through a group optimization algorithm simulation. Each feature edge is assigned a feature weight δ = α(D / d) + βζ, where D is the distance between two job data features located at opposite ends of the job data feature set, d is the distance between two job data features connected by the feature edge, ζ is the feature similarity between the two job data features connected by the feature edge, and α and β are the distance weight and similarity weight, respectively. The distance weight α and similarity weight β are obtained through a group optimization algorithm simulation. A job data feature map is constructed based on feature nodes, feature edges, and feature weights. Graph convolution is then performed on the job data feature map to construct a local feature map.
[0021] In the self-attention mechanism layer, a key matrix K and a value matrix V are constructed based on bidirectional feature maps. Specifically, the bidirectional feature maps are multiplied by the key weight matrix and the value weight matrix, respectively. A query matrix Q is constructed based on local feature maps, specifically by multiplying the local feature maps by the query weight matrix. The attention weight matrix ATT = softmax(QK) is then calculated. T / (L) 0.5 ), where L is the dimension of the bidirectional feature map, and the attention weight matrix ATT is multiplied with the value matrix V to construct the fused feature map;
[0022] The fused feature map is fed into the CRF layer for processing, and the required labels are output.
[0023] As a preferred approach, training the demand label recognition model includes the following steps:
[0024] Several training samples for demand label recognition are obtained, including a set of job data features obtained by processing text word sequences through a word embedding model. The training samples are labeled with demand labels, and all labeled training samples are combined into a demand label recognition training set. The demand label recognition training set is fed into a parameter-initialized demand label recognition model for training. During training, the labeled demand labels are used as targets to calculate a second loss value. It is determined whether the second loss value is within a second preset range. If the second loss value is within the second preset range, the trained demand label recognition model is output; otherwise, the demand label recognition model is trained again using the demand label recognition training set.
[0025] As a preferred approach, the set of jump orders, distance weight α, and similarity weight β are simulated and calculated using a group optimization algorithm, specifically including the following steps:
[0026] Construct several simulated individuals and combine all simulated individuals into a simulated population. The simulated individuals include a jump order, distance weight α, and similarity weight β, which are randomly set within the corresponding range.
[0027] The fitness value of each simulated individual is calculated as follows: the demand label recognition model is set up using the simulated individual, and several demand label recognition test samples are obtained. The demand label recognition test samples include a set of job data features obtained by processing text word sequences through a word embedding model; the demand label recognition test samples are labeled with demand labels, and all labeled demand label recognition test samples are combined into a demand label recognition test set. The demand label recognition test set is fed into the parameter-initialized demand label recognition model for processing, and the accuracy of the demand label recognition model is used as the fitness value of the simulated individual.
[0028] The simulated population was iteratively optimized using a sparrow search algorithm;
[0029] When the number of iterations reaches the maximum number of iterations, the simulated individual with the highest fitness value is output as the basis for setting the jump order set, distance weight α, and similarity weight β for the label recognition model.
[0030] This invention also provides a job profile generation system, comprising:
[0031] The job data acquisition module is used to acquire job data;
[0032] The word embedding module is used to segment the job data into words to obtain a job data word set. The job data word set includes several job data words. The job data word set is then fed into the word embedding model for processing to output a job data feature set. The job data feature set includes several job data features, and each job data feature corresponds to a job data word.
[0033] The requirement tag annotation module is used to feed the job data feature set into the requirement tag recognition model for processing and output the requirement tag corresponding to each job data word.
[0034] The job data term filtering module is used to divide all job data terms into several demand term sets according to their corresponding demand tags. The number of demand term sets is the same as the number of demand tags. For each demand term set, the following operations are performed: the job data terms in the demand term set are deduplicated to obtain the first candidate term set; the frequency of job data terms in the first candidate term set in the demand term set is calculated and recorded as the job data term frequency; the job data terms in the first candidate term set whose frequency is greater than the frequency threshold are formed into the second candidate term set; the job data terms in the second candidate term set are clustered based on the job data features corresponding to the job data terms, and several clusters are output; a job data term is randomly selected from each cluster to form the third candidate term set; and the third candidate term set is labeled by the demand tags corresponding to the demand term sets.
[0035] The job profile building module is used to build job profiles based on the set of third alternative terms labeled with requirement tags.
[0036] The present invention has the following advantages:
[0037] 1. This invention uses a word embedding model and a demand tag recognition model to annotate job data words with demand tags. Then, it performs a first screening by comparing the frequency of job data words with a frequency threshold for the annotated demand word set, a second screening by cluster analysis, and finally constructs a job profile based on a third set of candidate words annotated with demand tags. This allows for the determination of job requirements with the assistance of big data, avoiding inaccuracies and inefficiencies in job recruitment caused by subjective job requirement settings.
[0038] 2. This invention learns global information from the job data feature set through a BiLSTM layer, learns local information from the job data feature set through a graph convolutional layer, and then fuses the global and local information through a self-attention mechanism to achieve the coordination of global and local information, which can improve the accuracy of subsequent demand label output.
[0039] 3. This invention uses the sparrow search algorithm to simulate and iterate the set of jump order, distance weight, and similarity weight, which enables the constructed demand label recognition model to have higher accuracy. Attached Figure Description
[0040] Figure 1 This is a schematic diagram of the job profile generation system used in an embodiment of the present invention. Detailed Implementation
[0041] To enable those skilled in the art to better understand the technical solutions of this invention, the technical solutions of this invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of this invention.
[0042] Example 1: A method for generating job profiles, comprising:
[0043] Obtain job data, which includes job demand data from major recruitment websites, personnel files of employees in the corresponding positions, etc. Through this job data, we can reflect various requirements for the corresponding positions, such as skill requirements, experience requirements, education requirements, and certification requirements.
[0044] The job data is segmented into words to obtain a job data word set, which contains several job data words. The job data word set is then fed into a word embedding model for processing, outputting a job data feature set. The job data feature set contains several job data features, and each job data feature corresponds to a job data word. It should be noted that performing word embedding on the job data can map the job data words to a high-dimensional data vector, which facilitates the subsequent model to identify the labels corresponding to the job data words.
[0045] The job data feature set is fed into the requirement tag recognition model for processing, and the requirement tag corresponding to each job data term is output. The requirement tags are specifically skill requirements, experience requirements, education requirements, and certificate requirements, etc. In particular, if there is no output requirement tag for a job data term, then this job data term is not labeled. By labeling job data terms with requirement tags, it is possible to obtain the various requirements corresponding to the job from the job data, and then construct the job requirements. It should be noted that, since the job data is quite large, when performing the labeling of job data terms, the job data is generally divided into several segments, and then the labeling of job data terms is performed separately for each segment.
[0046] All job data terms are divided into several sets of demand terms according to their corresponding demand tags. The number of demand term sets is the same as the number of demand tags. For each demand term set, the following operations are performed: deduplication of job data terms in the demand term set is performed, which involves deleting duplicate job data terms from the demand term set to obtain the first candidate term set. The frequency of job data terms in the first candidate term set in the demand term set is calculated and recorded as the job data term frequency. Then, job data terms in the first candidate term set whose frequency is greater than the frequency threshold are formed into the second candidate term set. Based on the job data features corresponding to the job data terms, cluster analysis is performed on the job data terms in the second candidate term set to output several clusters. The cluster analysis algorithm can be k-means. A job data term is randomly selected from each cluster to form the third candidate term set. The third candidate term set is labeled by the demand tags corresponding to the demand term sets.
[0047] Due to the large volume of job data, including a large number of job data terms corresponding to each change in demand, as well as some invalid job data, the first screening is performed by comparing the frequency of job data terms with frequency thresholds to remove some invalid job data terms. Then, a second screening is performed through cluster analysis to avoid too many job data terms with repetitive semantics.
[0048] A job profile is constructed based on the set of third alternative terms tagged with demand tags. Specifically, the job data terms in the corresponding set of third alternative terms are used as key-value pairs and visualized.
[0049] This application uses a word embedding model and a demand tag recognition model to annotate job data words with demand tags. Then, it performs a first screening by comparing the frequency of job data words with a frequency threshold for the annotated demand word set, and a second screening by cluster analysis. Finally, it constructs a job profile based on a third set of candidate words annotated with demand tags. This approach can determine job requirements with the help of big data, avoiding inaccuracies and inefficiencies in job recruitment caused by subjective job requirement settings.
[0050] The word embedding model is based on the BERT model and includes 12 encoders and a weight fusion layer. It should be noted that the encoders in the word embedding model are built with reference to the Transformer model.
[0051] The job data word set is processed using a word embedding model to output a job data feature set. The specific steps include the following:
[0052] Iterate through i from 1 to 12, where i is the encoder number and i = 1, 2, 3, ..., 12. When i = 1, for the i-th encoder, perform the following operation: feed the job data word set into the encoder for processing and output the data feature output set F. i When i≠1, for the i-th encoder, perform the following operation to output the data feature set F. i-1 The data is fed into the encoder for processing and outputs a set of data features, F. i The encoder operation here is consistent with the encoder operation in the Transformer model.
[0053] In the weighted fusion layer, the data feature output set F is... i The data are fed into 12 multilayer perceptrons for processing to construct a data feature output set F. i The corresponding weight vector μ i Then output the data feature set F i With the corresponding weight vector μ i After performing the multiplication operation, a convolution operation is performed to construct the job data feature set.
[0054] Training a word embedding model involves the following steps:
[0055] Add a fully connected layer at the end of the word embedding model to build and train the word embedding model.
[0056] Obtain several word embedding training samples, which include text word sequences with randomly masked words. These text word sequences are derived from crawled job posting data. All word embedding training samples are combined into a word embedding training set. This training set is then input into a parameter-initialized word embedding model training model for training. During training, using the masked words in the word embedding training samples as targets, a first loss value is calculated. It is then determined whether the first loss value falls within a first preset range (determined by the developers). If the first loss value falls within the first preset range, the word embedding model in the trained word embedding model training model is output. Otherwise, the word embedding model training model continues to be trained using the word embedding training set.
[0057] The demand label recognition model is based on the BiLSTM-CRF model, which includes a BiLSTM layer, a graph convolutional layer, a self-attention mechanism layer, and a CRF layer. The BiLSTM layer and the graph convolutional layer both perform feature extraction operations to construct bidirectional feature maps and local feature maps. The self-attention mechanism layer refers to the self-attention mechanism operation in the Transformer model and is used to fuse the bidirectional feature maps and local feature maps to construct a fused feature map. The CRF layer is a conditional random field used to receive the fused feature map, process it, and output the demand label.
[0058] The job data feature set is processed using a demand tag recognition model to output demand tags. The specific steps include the following:
[0059] The job data feature set is fed into a BiLSTM layer for processing to construct a bidirectional feature map. It should be noted that the BiLSTM layer here is based on the BiLSTM model and can learn long dependencies based on text sequences in the job data feature set.
[0060] In the graph convolutional layer, each job data feature in the job data feature set is used as a feature node. Feature edges are constructed between feature nodes corresponding to two adjacent job data features. It should be noted that "adjacent" here refers to the adjacency of the job data words corresponding to the two job data features in the text sequence. The similarity between any two job data features is calculated and denoted as feature similarity. If the feature similarity is greater than a similarity threshold (determined by the developers), a feature edge is constructed between the two job data features. If the feature similarity is not greater than the similarity threshold, no operation is performed. Jump orders are selected sequentially from the jump order set, which typically has four jump orders. For each selected jump order, the following operation is performed: Feature edges are constructed between feature nodes corresponding to two job data features separated by a jump order. The jump order set is obtained through a population optimization algorithm. A feature weight δ is assigned to each feature edge. Feature weight δ = α(D / d) + βζ, where D is the distance between two job data features located at opposite ends of the job data feature set. This distance refers to the number of words between the corresponding job data words in the text sequence plus one. d is the distance between two job data features connected by a feature edge. ζ is the feature similarity between the two job data features connected by a feature edge. α and β are the distance weight and similarity weight, respectively, obtained through a population optimization algorithm. A job data feature graph is constructed based on feature nodes, feature edges, and feature weights. This job data feature graph is a graph structure. Graph convolution is performed on the job data feature graph to construct a local feature graph. It should be noted that the graph convolution operation refers to existing technologies, i.e., constructing an adjacency matrix, degree matrix, and weight matrix based on the job data feature graph, and then performing graph convolution based on these matrices.
[0061] Since BiLSTM layers learn long dependencies more during feature learning, they lose local information. However, by constructing the job data feature set into a graph structure, local information can be learned through graph convolution. By fusing local information, the recognition of subsequent demand labels can be improved.
[0062] In the self-attention mechanism layer, a key matrix K and a value matrix V are constructed based on bidirectional feature maps. Specifically, the bidirectional feature maps are multiplied by the key weight matrix and the value weight matrix, respectively. A query matrix Q is constructed based on local feature maps, specifically by multiplying the local feature maps by the query weight matrix. The attention weight matrix ATT = softmax(QK) is then calculated. T / (L) 0.5), where L is the dimension of the bidirectional feature map. The attention weight matrix ATT and the value matrix V are multiplied to construct the fused feature map; the key weight matrix, value weight matrix and query weight matrix are set with reference to the Transformer model;
[0063] The fused feature map is fed into the CRF layer for processing, and the required labels are output.
[0064] This application learns global information from the job data feature set through a BiLSTM layer, learns local information from the job data feature set through a graph convolutional layer, and then fuses the global and local information through a self-attention mechanism to achieve the cooperation between global and local information, which can improve the accuracy of subsequent demand label output.
[0065] Training the demand label recognition model involves the following steps:
[0066] Several training samples for demand label recognition are obtained. These training samples include a set of job data features obtained by processing text word sequences through a word embedding model. The text word sequences are also derived from crawled job data. The training samples are labeled with demand labels, and all labeled training samples are combined into a demand label recognition training set. This training set is then fed into a parameter-initialized demand label recognition model for training. During training, a second loss value is calculated using the labeled demand labels as targets. It is determined whether the second loss value falls within a second preset range, which is determined by the developers. If the second loss value falls within the second preset range, the trained demand label recognition model is output; otherwise, the demand label recognition model is trained again using the demand label recognition training set.
[0067] The set of jump orders, distance weight α, and similarity weight β are calculated by simulating the use of a swarm optimization algorithm, specifically including the following steps:
[0068] Construct several simulated individuals and combine all simulated individuals into a simulated population. The simulated individuals include a jump order, distance weight α, and similarity weight β, which are randomly set within a corresponding range. The corresponding range is set by the developers.
[0069] The fitness value of each simulated individual is calculated as follows: The demand label recognition model is configured using simulated individuals. Specifically, the jump order, distance weight α, and similarity weight β within the simulated individual are used to determine the parameters of the graph convolutional layer. Several demand label recognition test samples are obtained, including a set of job data features obtained by processing text word sequences through a word embedding model. These test samples are then labeled with demand labels. All labeled test samples are combined into a demand label recognition test set, which is then fed into the parameter-initialized demand label recognition model for processing. The accuracy of the demand label recognition model is used as the fitness value of the simulated individual.
[0070] The simulated population is iteratively optimized using a sparrow search algorithm. The sparrow search algorithm can simulate the foraging behavior of sparrows and perform global and local searches through the cooperation of foragers and followers. Foragers are responsible for exploring new areas to find food (solution), while followers follow the foragers and perform local searches around them.
[0071] When the number of iterations reaches the maximum number of iterations, the simulated individual with the highest fitness value is used as the set of jump order, and the distance weight α and similarity weight β are used to set the demand label recognition model.
[0072] This application uses a sparrow search algorithm to simulate and iterate the set of jump order, distance weight, and similarity weight, which enables the constructed demand label recognition model to have higher accuracy.
[0073] Example 2: A job profile generation system, such as Figure 1 As shown, it includes:
[0074] The job data acquisition module is used to acquire job data, which includes job demand data from major recruitment websites, personnel files of employees in the corresponding positions, etc. Through this job data, various requirements for the corresponding positions can be reflected, such as skill requirements, experience requirements, education requirements, and certificate requirements.
[0075] The word embedding module is used to segment the job data into words to obtain a job data word set. The job data word set includes several job data words. The job data word set is then fed into the word embedding model for processing, and the output job data feature set includes several job data features, and each job data feature corresponds to a job data word. It should be noted that performing word embedding on the job data can map the job data words to a high-dimensional data vector, which facilitates the subsequent model to identify the labels corresponding to the job data words.
[0076] The requirement tagging module is used to feed the job data feature set into the requirement tag recognition model for processing, and output the requirement tag corresponding to each job data term. The requirement tags are specifically skill requirements, experience requirements, education requirements, and certificate requirements, etc. In particular, if there is no output requirement tag for a job data term, then this job data term will not be tagged. By tagging job data terms with requirement tags, it is possible to obtain the various requirements corresponding to the job from the job data, and then construct the job requirements. It should be noted that, since the job data is quite large, when performing the job data term tagging work, the job data is generally divided into several segments, and then the job data term tagging work is performed separately for each segment.
[0077] The job data term filtering module is used to divide all job data terms into several demand term sets according to their corresponding demand tags. The number of demand term sets is the same as the number of demand tags. For each demand term set, the following operations are performed: deduplication of job data terms in the demand term set is performed, which involves deleting duplicate job data terms from the demand term set to obtain the first candidate term set. The frequency of job data terms in the first candidate term set in the demand term set is calculated and recorded as the job data term frequency. Then, job data terms in the first candidate term set whose frequency is greater than the frequency threshold are formed into the second candidate term set. Based on the job data features corresponding to the job data terms, cluster analysis is performed on the job data terms in the second candidate term set, outputting several clusters. The cluster analysis algorithm can be k-means. A job data term is randomly selected from each cluster to form the third candidate term set. The third candidate term set is labeled by the demand tags corresponding to the demand term sets.
[0078] The job profile building module is used to build job profiles based on the set of third alternative words labeled with requirement tags. Specifically, it can use requirement tags and job data words in the corresponding set of third alternative words as key-value pairs and visualize them.
[0079] It should be understood that those skilled in the art can make improvements or modifications based on the above description, and all such improvements and modifications should fall within the protection scope of the appended claims. Parts not described in detail in this specification are prior art known to those skilled in the art.
Claims
1. A method for generating a job profile, characterized in that: include: Obtain job data, which reflects skill requirements, experience requirements, education requirements, and certification requirements; Perform word segmentation on the job data to obtain a job data word set, which includes several job data words. Then, the job data word set is sent to a word embedding model for processing, and a job data feature set is output. The job data feature set includes several job data features, and each job data feature corresponds to one job data word. Send the job data feature set to the demand label recognition model for processing, and output the demand label corresponding to each job data word; Divide all job data words into several demand word sets according to the corresponding demand labels, where the number of demand word sets is consistent with the number of demand labels, and perform the following operations for each demand word set: perform a deduplication operation on the job data words in the demand word set to obtain a first candidate word set, calculate the frequency of the job data words in the first candidate word set appearing in the demand word set in turn, record it as the job data word frequency, and then form a second candidate word set with the job data word frequency in the first candidate word set greater than the frequency threshold, perform cluster analysis on the job data words in the second candidate word set based on the job data features corresponding to the job data words, output several cluster clusters, randomly select a job data word from each cluster cluster to form a third candidate word set, and mark the third candidate word set by the demand label corresponding to the demand word set; Build a job profile based on the set of third-choice words annotated with requirement tags.
2. A method for generating a job profile according to claim 1, characterized in that: The word embedding model is built based on the BERT model, which includes 12 encoders and a weight fusion layer; The word embedding model is used to process the job data word set and output the job data feature set, which specifically includes the following steps: Traverse i from 1 to 12, i is the number of the encoder, and i=1,2,3,…,12. When i=1, for the i-th encoder, perform the following operations to send the job data word set to the encoder for processing and output the data feature output set F i ; When i≠1, for the i-th encoder, perform the following operations to output the data feature set F i-1 Send it to the encoder for processing and output the data feature output set F i ; In the weight fusion layer, the data feature output set F i The data are sent to 12 multi-layer perceptrons for processing to construct the data feature output set F i The corresponding weight vector μ i , and then output the data feature set F i And the corresponding weight vector μ i After executing the multiplication operation, a convolution operation is performed to construct a feature set of job data.
3. A method for generating a job profile according to claim 2, characterized in that: Training the word embedding model includes the following steps: Add a fully connected layer at the end of the word embedding model to build a word embedding model training model; A plurality of word embedding training samples are obtained, wherein the word embedding training samples include a text word sequence with randomly masked words; all the word embedding training samples are combined into a word embedding training set, and then the word embedding training set is input into a parameter-initialized word embedding model training model for training; during the training, the masked words in the word embedding training samples are used as targets, a first loss value is calculated, and it is determined whether the first loss value is within a first preset range; if the first loss value is within the first preset range, the word embedding model in the trained word embedding model training model is output; otherwise, the word embedding model training model is continuously trained through the word embedding training set.
4. A method for generating a job profile according to claim 3, characterized in that: The demand label recognition model is established based on the BiLSTM-CRF model, including the BiLSTM layer, graph convolution layer, self-attention mechanism layer and CRF layer. The BiLSTM layer and graph convolution layer both perform feature extraction operations to construct bidirectional feature maps and local feature maps. The self-attention mechanism layer is used to perform feature fusion operations on the bidirectional feature map and the local feature map to construct a fused feature map. The CRF layer is used to receive the fused feature map for processing and output the demand label.
5. A method for generating a job profile according to claim 4, characterized in that: The job data feature set is processed through the demand label recognition model to output the demand label, which specifically includes the following steps: Send the job data feature set to the BiLSTM layer for processing and construct a bidirectional feature graph; In the graph convolution layer, each job data feature in the job data feature set is taken as a feature node, and a feature edge is constructed between the feature nodes corresponding to two adjacent job data features; the similarity between any two job data features is calculated, recorded as feature similarity, if the feature similarity is greater than the similarity threshold, a feature edge is constructed between the two job data features, if the feature similarity is not greater than the similarity threshold, no operation is performed; the jump orders in the jump order set are selected one by one, and for each selected jump order, the following operation is performed to construct a feature edge between the feature nodes corresponding to the two job data features separated by a jump order, and the jump order set is obtained by The swarm optimization algorithm is used for simulation acquisition; a feature weight δ is assigned to each feature edge, and the feature weight δ=α(D / d)+βζ, where D is the distance between the two job data features at both ends of the job data feature set, d is the distance between the two job data features connected by the feature edge, ζ is the feature similarity between the two job data features connected by the feature edge, α and β are the distance weight and similarity weight respectively, and the distance weight α and the similarity weight β are obtained by simulation of the swarm optimization algorithm; a job data feature graph is constructed based on feature nodes, feature edges and feature weights, and a graph convolution operation is performed based on the job data feature graph to construct a local feature graph; In the self-attention mechanism layer, the key matrix K and the value matrix V are constructed based on the bidirectional feature map. The specific operation is to multiply the bidirectional feature map with the key weight matrix and the value weight matrix respectively; the query matrix Q is constructed based on the local feature map. The specific operation is to multiply the local feature map with the query weight matrix; calculate the attention weight matrix ATT=softmax(QK T / (L) 0.5 ), where L is the dimension of the bidirectional feature map, the attention weight matrix ATT is multiplied by the value matrix V to construct a fused feature map; The fused feature map is sent to the CRF layer for processing and the required label is output.
6. A method for generating a job profile according to claim 5, characterized in that: Training the demand label recognition model includes the following steps: Acquire several requirement label recognition training samples, which include a job data feature set obtained by processing a text word sequence through a word embedding model; label the requirement label recognition training samples through the requirement label, and then form a requirement label recognition training set with all the labeled requirement label recognition training samples; send the requirement label recognition training set to a parameter-initialized requirement label recognition model for training; during the training, take the labeled requirement label as the target, calculate the second loss value, and determine whether the second loss value is within the second preset range; if the second loss value is within the second preset range, output the trained requirement label recognition model; otherwise, continue to train the requirement label recognition model through the requirement label recognition training set.
7. A method for generating a job profile according to claim 6, characterized in that: The jump order set, distance weight α and similarity weight β are simulated and calculated by the group optimization algorithm, which specifically includes the following steps: Construct a number of simulated individuals, and form a simulated population with all simulated individuals, wherein the simulated individuals include a jump order, a distance weight α, and a similarity weight β randomly set within a corresponding range; Calculate the fitness value of each simulated individual. The specific operation is to set the demand label recognition model through the simulated individual, obtain several demand label recognition test samples, and the demand label recognition test samples include the job data feature set obtained by processing the text word sequence through the word embedding model; label the demand label recognition test samples with the demand label, and then form a demand label recognition test set with all the labeled demand label recognition test samples, send the demand label recognition test set to the parameter-initialized demand label recognition model for processing, and use the accuracy of the demand label recognition model as the fitness value of the simulated individual; Iteratively optimize the simulated population using the sparrow search algorithm; When the number of iterations reaches the maximum number of iterations, the simulated individual with the largest fitness value is output as the setting of the jump order set, distance weight α and similarity weight β required label recognition model.
8. A job profile generation system, characterized in that: The system applies a job profile generation method according to any one of claims 1 to 7, including: Position data acquisition module, used to acquire position data; The word embedding module is used to perform word segmentation on the job data to obtain a job data word set, which includes several job data words, and then send the job data word set to the word embedding model for processing, and output a job data feature set, which includes several job data features, and each job data feature corresponds to a job data word; The requirement labeling module is used to send the job data feature set to the requirement label recognition model for processing and output the requirement label corresponding to each job data word; A job data word screening module is used to divide all job data words into several demand word sets according to corresponding demand labels, where the number of demand word sets is consistent with the number of demand labels, and for each demand word set, the following operations are performed: the job data words in the demand word set are deduplicated to obtain a first candidate word set, the frequencies of the job data words in the first candidate word set appearing in the demand word set are calculated in sequence, recorded as the job data word frequencies, and then the job data words in the first candidate word set whose job data word frequencies are greater than the frequency threshold are formed into a second candidate word set, cluster analysis is performed on the job data words in the second candidate word set based on the job data features corresponding to the job data words, and several cluster clusters are output, a job data word is randomly selected from each cluster cluster to form a third candidate word set, and the third candidate word set is marked by the demand labels corresponding to the demand word set; The job profile construction module is used to construct a job profile based on a set of third-choice terms annotated with requirement tags.
