Method and system for constructing post demand dynamic portrait based on knowledge graph

By constructing dynamic job profiles based on knowledge graphs, the problem of insufficient capture of changes in job requirements is solved, enabling real-time updates and accurate matching of job profiles, thereby improving recruitment and job search efficiency.

CN120874833BActive Publication Date: 2026-01-27BEIJING TIANDI LIXIN HUMAN RESOURCES TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202511375392.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-09-25
Publication Date
2026-01-27
Estimated Expiration
2045-09-25

AI Technical Summary

Technical Problem

Existing knowledge graph-based job profile technologies cannot effectively capture the dynamic changes in job requirements over time, resulting in job profiles that lack timeliness and accuracy, failing to meet the needs of both companies and job seekers.

Method used

By segmenting and processing historical recruitment data of enterprises, a semantic similarity matrix is ​​constructed and clustered to generate feature clusters. A multidimensional feature space and a directed weighted migration graph are established, the migration probability gradient is calculated, a temporal evolution chain is constructed, the job profile is dynamically updated, and it is matched with the resume information of job seekers.

Benefits of technology

It enables real-time updates and dynamic adjustments to job requirements, improving the timeliness and accuracy of job profiles, enhancing the precision of person-job matching, and increasing the foresight of recommendation results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120874833B_ABST
    Figure CN120874833B_ABST
Patent Text Reader

Abstract

The application provides a post demand dynamic portrait construction method and system based on a knowledge graph, relates to the field of human resources, and comprises the following steps: performing word segmentation on enterprise recruitment data, constructing a semantic similarity matrix based on word co-occurrence, forming an initial post portrait through feature clustering, constructing a multi-dimensional feature space and a directed weighted transition graph, performing time series sampling to calculate a transition probability gradient and construct a time series evolution chain, and finally generating a dynamic post portrait and realizing post recommendation. The application can capture the dynamic change characteristics of post demand, improve the accuracy of human-post matching, and reduce recruitment costs.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to human resources technology, and more particularly to a method and system for constructing dynamic profiles of job requirements based on knowledge graphs. Background Technology

[0002] With the rapid development of information technology and the continuous changes in the human resources market, corporate recruitment and talent matching have become increasingly complex. Traditional recruitment models are no longer sufficient to meet the needs of both companies and job seekers, especially in an environment of information asymmetry and rapidly changing job requirements. Knowledge graphs, as a semantic network structure, can effectively organize and express complex structured information and have been widely applied in the field of human resource management in recent years. The job requirement profiling method based on knowledge graphs can extract key features by mining and analyzing historical recruitment data, constructing a multi-dimensional representation reflecting job requirements, and providing more accurate recruitment and job search services for both companies and job seekers.

[0003] However, existing knowledge graph-based job requirement profiling technologies still have some significant shortcomings. Most existing technologies only focus on extracting static features of job requirements, failing to effectively capture the dynamic changes in job requirements over time. This results in job profiles lacking timeliness and failing to reflect the evolution of job requirements brought about by market and technological developments. Traditional job profile construction methods typically employ simple keyword matching or basic statistical methods, failing to fully consider the semantic relationships between words. Consequently, the extracted features lack intrinsic connections and cannot form meaningful feature clusters, affecting the accuracy and completeness of the job profile. Existing technologies mostly use a one-way static matching mechanism in the job matching process, lacking the ability to predict dynamic trends in job requirements. This prevents them from providing forward-looking talent demand planning for enterprises and career development path suggestions for job seekers, reducing the efficiency and success rate of recruitment and job seeking. Summary of the Invention

[0004] This invention provides a method and system for constructing dynamic profiles of job requirements based on knowledge graphs, which can solve the problems in the prior art.

[0005] A first aspect of this invention provides a method for constructing dynamic profiles of job requirements based on knowledge graphs, comprising:

[0006] The initial word sequence is obtained by segmenting the historical recruitment data of enterprises. A semantic similarity matrix is ​​constructed based on word co-occurrence relationship. The initial word sequence is clustered using the semantic similarity matrix to generate feature clusters that represent job requirements. The feature clusters are stored in a knowledge graph database to form an initial job profile.

[0007] A multidimensional feature space is constructed based on feature clusters. The migration probability between different feature clusters is calculated in the multidimensional feature space. A directed weighted migration graph is constructed based on the migration probability.

[0008] Temporal sampling is performed on the nodes in the directed weighted migration graph, the migration probability gradient between adjacent sampled nodes is calculated, and nodes whose migration probability change value is greater than a preset gradient threshold are connected to construct a temporal evolution chain.

[0009] The initial job profile is updated based on the time-series evolution chain to generate a dynamic job profile. The dynamic job profile is then matched with the job seeker's resume information to generate job recommendation results.

[0010] In one alternative embodiment,

[0011] The initial word sequence is obtained by segmenting the company's historical recruitment data. A semantic similarity matrix is ​​constructed based on word co-occurrence relationships, including:

[0012] Obtain historical recruitment data from enterprises, perform forward maximum matching on the recruitment data based on a preset job domain dictionary to obtain a forward word segmentation sequence, and simultaneously perform reverse maximum matching to obtain a reverse word segmentation sequence;

[0013] The forward word segmentation sequence is compared with the reverse word segmentation sequence, and the sequence with fewer words is selected as the initial word sequence to generate an initial word sequence set containing word position information.

[0014] The word window size is set based on the initial word sequence set. The number of co-occurrences between words is counted within the word window, and a word co-occurrence matrix that records the co-occurrence relationships between words is generated.

[0015] The words in the word co-occurrence matrix are mapped to word vectors, the cosine similarity between word vectors is calculated, and the semantic similarity matrix is ​​constructed by multiplying the co-occurrence frequency by the cosine similarity.

[0016] In one alternative embodiment,

[0017] The initial word sequence is clustered using a semantic similarity matrix to generate feature clusters representing job requirements. These feature clusters are then stored in a knowledge graph database to form an initial job profile, including:

[0018] A word association graph is constructed using a semantic similarity matrix, and the eigenvectors of the normalized Laplacian matrix of the word association graph are calculated.

[0019] The feature vectors are constructed into a low-dimensional feature matrix, and the low-dimensional feature matrix is ​​clustered to generate an initial feature cluster;

[0020] Calculate the degree centrality and betweenness centrality of word nodes in the initial feature cluster, sort the nodes by importance based on the combined values ​​of degree centrality and betweenness centrality, select word nodes with importance scores higher than a preset importance threshold, and generate feature clusters that represent job requirements.

[0021] The feature clusters representing job requirements are used as entity nodes, the importance scores of word nodes are used as node weights, and the semantic similarity values ​​between word nodes are used as edge weights. These are stored in a knowledge graph database to form an initial job profile.

[0022] In one alternative embodiment,

[0023] A multidimensional feature space is constructed based on feature clusters. The transition probabilities between different feature clusters are calculated within this multidimensional feature space. A directed weighted transition graph is then constructed based on these transition probabilities, including:

[0024] Extract the dimensional information of word nodes in the feature clusters, and generate dynamic feature vectors based on the temporal co-occurrence relationship of word nodes in recruitment data;

[0025] The dynamic feature vector is mapped to a multidimensional feature space, and the transfer difficulty coefficient between feature clusters in the multidimensional feature space is calculated.

[0026] Obtain historical career migration links, extract the frequency of occurrence of migration patterns in the historical career migration links, and correct the migration difficulty coefficient based on the frequency of occurrence;

[0027] Calculate the strength of the prior dependencies between the corrected transfer difficulty coefficients to generate skill transfer probabilities with transfer order constraints;

[0028] Using the feature clusters as nodes and the skill transfer probabilities as directed edge weights, a directed weighted transfer graph is constructed.

[0029] In one alternative embodiment,

[0030] Temporal sampling is performed on nodes in the directed weighted migration graph. The migration probability gradient between adjacent sampled nodes is calculated. Nodes whose migration probability change value is greater than a preset gradient threshold are connected to construct a temporal evolution chain, including:

[0031] The migration cost between nodes is extracted from the directed weighted migration graph. The adjacency reachability matrix is ​​constructed using the migration cost between nodes. The skill progression constraint is introduced into the adjacency reachability matrix to generate a weighted asymptotic constraint matrix. The normalization process is then performed to obtain the node sampling probability.

[0032] Based on the node sampling probability, a local neighborhood node screening rule is designed, a candidate node set that satisfies skill progression is constructed, the skill coverage of each node in the candidate node set is calculated, the nodes in the candidate node set are sorted by multi-objective weights, and the node that satisfies the minimum coverage cost is selected to generate a node sampling sequence.

[0033] Calculate the migration probability of adjacent nodes in the node sampling sequence, and obtain the migration probability gradient based on the migration probability through difference operation;

[0034] Node connections with migration probability gradients greater than a preset gradient threshold are selected, and the node connections are verified by an asymptotic constraint matrix. The verified node connections are then constructed into a temporal evolution chain.

[0035] In one alternative embodiment,

[0036] Based on the node sampling probability, a local neighborhood node selection rule is designed, a candidate node set satisfying skill progression is constructed, the skill coverage of each node in the candidate node set is calculated, the nodes in the candidate node set are sorted by multi-objective weights, and the node that satisfies the minimum coverage cost is selected to generate a node sampling sequence, including:

[0037] A migration probability matrix between nodes is constructed based on the node sampling probability. Node skill vectors are extracted from the migration probability matrix, and the skill overlap and skill difference between nodes are calculated and combined into a local neighborhood filtering rule. The neighborhood node filtering rule is used to select nodes that meet the conditions from the migration probability matrix to construct a candidate node set.

[0038] For each node in the candidate node set, calculate the skill increment and loss, construct a skill iteration vector, calculate the skill progression coefficient between nodes based on the skill iteration vector, and select nodes with monotonically progressive skills to construct a skill progression candidate set.

[0039] The direct coverage is obtained by mapping the skill vectors of the nodes in the skill progression candidate set to the target skill. The indirect coverage is calculated based on the node skill association. The direct coverage and indirect coverage are weighted and combined to form the node skill coverage. The skill coverage is then used to construct a multi-objective weight matrix.

[0040] The nodes in the skill progression candidate set are sorted according to the multi-objective weight matrix, and the node with the highest sorting score and the minimum coverage cost is selected to generate a sampling sequence.

[0041] In one alternative embodiment,

[0042] The initial job profile is updated based on the temporal evolution chain to generate a dynamic job profile. The dynamic job profile is then matched with job seeker resume information to generate job recommendation results, including:

[0043] Extract the node skill migration trajectory from the temporal evolution chain, construct the skill evolution feature vector according to the skill update frequency and migration intensity, and map the skill evolution feature vector to the skill space of the initial job profile to generate a dynamic skill matrix;

[0044] Calculate the temporal weights of skill items in the dynamic skill matrix, update the skill requirements in the initial job profile based on the temporal weights, construct a skill dependency network to identify the correlation strength between skills, and integrate the correlation strength into the initial job profile to obtain the dynamic job profile.

[0045] The degree of direct matching between the skills in the job seeker's resume and the dynamic job profile is calculated. The job seeker's skill transferability is analyzed using the skill dependency network. The direct matching degree and skill transferability are weighted and combined to obtain a comprehensive matching score.

[0046] The weighting of direct matching degree and skill transferability is adjusted according to the length of the job seeker's work experience, and job recommendation results are generated based on the adjusted comprehensive matching score.

[0047] A second aspect of this invention provides a knowledge graph-based dynamic profile construction system for job requirements, comprising:

[0048] The first unit is used to segment the company's historical recruitment data to obtain an initial word sequence, construct a semantic similarity matrix based on word co-occurrence relationships, cluster the initial word sequence using the semantic similarity matrix to generate feature clusters that represent job requirements, and store the feature clusters in a knowledge graph database to form an initial job profile.

[0049] The second unit is used to construct a multidimensional feature space based on feature clusters, calculate the migration probability between different feature clusters in the multidimensional feature space, and construct a directed weighted migration graph based on the migration probability.

[0050] The third unit is used to perform temporal sampling of nodes in the directed weighted migration graph, calculate the migration probability gradient between adjacent sampled nodes, and connect nodes whose migration probability change value is greater than a preset gradient threshold to construct a temporal evolution chain.

[0051] The fourth unit is used to update the initial job profile based on the time-series evolution chain to generate a dynamic job profile, and then match the dynamic job profile with the job seeker's resume information to generate job recommendation results.

[0052] A third aspect of the present invention provides an electronic device, comprising:

[0053] processor;

[0054] Memory used to store processor-executable instructions;

[0055] The processor is configured to invoke instructions stored in the memory to execute the aforementioned method.

[0056] A fourth aspect of the present invention provides a computer-readable storage medium having stored thereon computer program instructions that, when executed by a processor, implement the aforementioned method.

[0057] In this embodiment, a dynamic profile of job requirements is constructed based on a knowledge graph, effectively solving the problem that traditional job matching methods cannot capture changes in requirements. A semantic similarity matrix is ​​constructed using word co-occurrence relationships and clustered into feature clusters, establishing a structured job knowledge representation, making the description of job requirements more accurate and comprehensive. A multi-dimensional feature space and directed weighted migration graph are used to analyze the evolution trend of job requirements. By calculating the migration probability gradient and constructing a temporal evolution chain, the dynamic changes in job requirements are accurately captured, enabling real-time updates and dynamic adjustments to the job profile, improving its timeliness and accuracy. Intelligent matching of the dynamic job profile with job seeker resume information considers not only the match between the job seeker's current abilities and the job, but also the development trend of job requirements, making the recommendation results more forward-looking. This significantly improves the accuracy of person-job matching and the satisfaction of job recommendations, providing enterprises and job seekers with a more efficient talent allocation solution. Attached Figure Description

[0058] Figure 1 This is a flowchart illustrating the method for constructing dynamic profiles of job requirements based on knowledge graphs, as described in an embodiment of the present invention.

[0059] Figure 2 This is a flowchart illustrating the dynamic job matching process based on skill migration trajectories in an embodiment of the present invention. Detailed Implementation

[0060] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0061] The technical solution of the present invention will be described in detail below with reference to specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments.

[0062] Figure 1 This is a flowchart illustrating the method for constructing dynamic job requirement profiles based on knowledge graphs according to an embodiment of the present invention. Figure 1As shown, the method includes:

[0063] The initial word sequence is obtained by segmenting the historical recruitment data of enterprises. A semantic similarity matrix is ​​constructed based on word co-occurrence relationship. The initial word sequence is clustered using the semantic similarity matrix to generate feature clusters that represent job requirements. The feature clusters are stored in a knowledge graph database to form an initial job profile.

[0064] A multidimensional feature space is constructed based on feature clusters. The migration probability between different feature clusters is calculated in the multidimensional feature space. A directed weighted migration graph is constructed based on the migration probability.

[0065] Temporal sampling is performed on the nodes in the directed weighted migration graph, the migration probability gradient between adjacent sampled nodes is calculated, and nodes whose migration probability change value is greater than a preset gradient threshold are connected to construct a temporal evolution chain.

[0066] The initial job profile is updated based on the time-series evolution chain to generate a dynamic job profile. The dynamic job profile is then matched with the job seeker's resume information to generate job recommendation results.

[0067] In one optional implementation, the company's historical recruitment data is segmented to obtain an initial word sequence, and a semantic similarity matrix is ​​constructed based on word co-occurrence relationships, including:

[0068] Obtain historical recruitment data from enterprises, perform forward maximum matching on the recruitment data based on a preset job domain dictionary to obtain a forward word segmentation sequence, and simultaneously perform reverse maximum matching to obtain a reverse word segmentation sequence;

[0069] The forward word segmentation sequence is compared with the reverse word segmentation sequence, and the sequence with fewer words is selected as the initial word sequence to generate an initial word sequence set containing word position information.

[0070] The word window size is set based on the initial word sequence set. The number of co-occurrences between words is counted within the word window, and a word co-occurrence matrix that records the co-occurrence relationships between words is generated.

[0071] The words in the word co-occurrence matrix are mapped to word vectors, the cosine similarity between word vectors is calculated, and the semantic similarity matrix is ​​constructed by multiplying the co-occurrence frequency by the cosine similarity.

[0072] In the specific implementation process, the first step is to obtain recruitment information from the company's historical recruitment database. Taking 5,000 recruitment notices posted by a technology company in the past three years as an example, this information includes fields such as job title, job description, and job requirements. This text information is extracted from the database to form a text set to be processed. A job domain dictionary is pre-built, containing approximately 8,000 entries, including common IT industry technical terms, job titles, and skill requirements, such as "Java engineer," "artificial intelligence," "data mining," and "project management." Each entry includes the word itself and its frequency of use in the industry.

[0073] For each job posting, forward maximum matching is used for word segmentation. Specifically, starting from the first character of the text to be segmented, a substring with the maximum matching length (set to 10 characters in this example) is searched in the dictionary. If a match is found, the substring is segmented as a word; if a match fails, the substring length is reduced and matching continues until a match is found or the substring length is reduced to 1. After a successful match, the above process is continued from the remaining text until the entire text is processed. For example, for the text "Recruiting software engineers responsible for system development", forward maximum matching can yield the word sequence ["recruiting", "software engineer", "responsible for", "system development"].

[0074] Simultaneously, reverse maximum matching word segmentation is performed on the same text. Reverse maximum matching starts from the end of the text and performs maximum matching word segmentation backward. For example, for the text above, the word segmentation sequence obtained by reverse maximum matching is ["recruitment", "software", "engineer", "responsible for", "system development"].

[0075] The system compares the number of words segmented in the forward and reverse word segmentation sequences and selects the sequence with fewer words as the initial word sequence. In the example above, forward segmentation yields 4 words, while reverse segmentation yields 5 words; therefore, the forward segmentation result is selected as the initial word sequence. If the number of words is the same, the system selects the sequence with fewer single-character words; if the number of single-character words is also the same, the forward segmentation result is selected by default. Each word in the initial word sequence is labeled with its position information in the text, generating an initial word sequence set containing the word positions. For example, the above segmentation result can be represented as [("recruitment", 0), ("software engineer", 1), ("responsible for", 2), ("system development", 3)], where the numbers represent the word's position index in the sequence.

[0076] Based on the initial word sequence set, a word window size is set to statistically analyze word co-occurrence. A word window refers to the set of words within a certain range before and after the current word in a text sequence. In this embodiment, the word window size is set to 5, meaning that the co-occurrence relationship of the current word and the two words before and after it is considered.

[0077] Iterate through each word in the initial word sequence set, counting the co-occurrence frequency of word pairs within a defined window, and construct a word co-occurrence matrix. This matrix is ​​an n×n square matrix, where n is the total number of words after deduplication, and the element value(i, j) in the matrix represents the number of times word i and word j co-occur in all text word windows. For example, after processing all 5000 job postings, it is possible to find that "software engineer" and "system development" co-occur 157 times, and "software engineer" and "project management" co-occur 89 times.

[0078] To improve the accuracy of semantic similarity calculation, the words in the co-occurrence matrix are converted into word vectors. The SVD decomposition method based on the co-occurrence matrix is ​​used, representing each word as a 300-dimensional vector. For words i and j, the cosine similarity of their corresponding word vectors is calculated by dividing the inner product of the two vectors by the product of their magnitudes. For example, the cosine similarity of the word vectors for "software engineer" and "Java development" is 0.85, indicating that these two words are relatively similar in semantic space.

[0079] The final semantic similarity matrix is ​​constructed by multiplying the co-occurrence frequency of words by the cosine similarity of their word vectors. This combination method considers both the actual co-occurrence of words in the text and the distribution relationship of words in the semantic space. For example, although "algorithm engineer" and "machine learning" may not co-occur frequently in some job postings, their high similarity in the semantic space allows for a more reasonable similarity assessment through this combination method.

[0080] The constructed semantic similarity matrix is ​​stored in a database, providing foundational data support for subsequent applications such as job recommendation and talent matching. In practical applications, this semantic similarity matrix can effectively capture potential semantic relationships in job descriptions, improving the intelligence level of the recruitment system.

[0081] Through the above implementation methods, the present invention can effectively process historical recruitment data of enterprises, and construct a high-quality job semantic similarity matrix through word segmentation technology and word co-occurrence analysis, providing data support for enterprise recruitment decisions.

[0082] In one optional implementation, the initial word sequence is clustered using a semantic similarity matrix to generate feature clusters representing job requirements. These feature clusters are then stored in a knowledge graph database to form an initial job profile, including:

[0083] A word association graph is constructed using a semantic similarity matrix, and the eigenvectors of the normalized Laplacian matrix of the word association graph are calculated.

[0084] The feature vectors are constructed into a low-dimensional feature matrix, and the low-dimensional feature matrix is ​​clustered to generate an initial feature cluster;

[0085] Calculate the degree centrality and betweenness centrality of word nodes in the initial feature cluster, sort the nodes by importance based on the combined values ​​of degree centrality and betweenness centrality, select word nodes with importance scores higher than a preset importance threshold, and generate feature clusters that represent job requirements.

[0086] The feature clusters representing job requirements are used as entity nodes, the importance scores of word nodes are used as node weights, and the semantic similarity values ​​between word nodes are used as edge weights. These are stored in a knowledge graph database to form an initial job profile.

[0087] After obtaining the initial word sequence, it is necessary to calculate the semantic similarity matrix between the words. Semantic similarity can be calculated using the cosine similarity of word vectors. For example, for the two words "programming" and "development," their pre-trained word vectors are obtained respectively. Assuming the word vector of "programming" is [0.2, 0.5, 0.3, 0.7] and the word vector of "development" is [0.3, 0.4, 0.2, 0.6], their cosine similarity is the dot product of the two vectors divided by the product of the magnitudes of the two vectors. The result is approximately 0.94, indicating that the two words are semantically very similar. This operation is performed on each pair of words in the initial word sequence to generate an n×n semantic similarity matrix, where n is the number of words.

[0088] A word association graph is constructed based on a semantic similarity matrix, with words as nodes and the semantic similarity between words as edge weights. Connections are established if the similarity exceeds a set threshold (e.g., 0.5). For this word association graph, its normalized Laplacian matrix is ​​calculated. The specific steps include: first, calculating the degree matrix D, i.e., a diagonal matrix, where the diagonal elements are the sum of the edge weights of each node; then calculating the adjacency matrix A, where the elements are the semantic similarity between words; next, calculating the Laplacian matrix L = DA; and finally, calculating the normalized Laplacian matrix L_norm = D. -1 / 2 ·L·D -1 / 2 For example, given an initial sequence containing the words "software development," "programming skills," and "teamwork," assuming its semantic similarity matrix is ​​[[1.0, 0.8, 0.3], [0.8, 1.0, 0.2], [0.3, 0.2, 1.0]], a word association graph can be constructed. The edge weight between "software development" and "programming skills" is 0.8, and the edge weights with "teamwork" are 0.3 and 0.2, respectively.

[0089] Eigenvalue decomposition is performed on the normalized Laplacian matrix to obtain eigenvalues ​​and their corresponding eigenvectors. The eigenvectors corresponding to the k smallest eigenvalues ​​are selected to form an n×k low-dimensional feature matrix, achieving a low-dimensional representation of words. For example, taking k=2, the possible low-dimensional feature matrices for the three words mentioned above are [[0.4, 0.7], [0.3, 0.6], [0.8, 0.2]]. This matrix maps each word to a two-dimensional space.

[0090] The K-means clustering algorithm is applied to the low-dimensional feature matrix to divide the words into different clusters. Before clustering, a suitable number of clusters needs to be determined, which can be done using methods such as silhouette coefficients. Assuming that the low-dimensional representations of the aforementioned three words are clustered, and the number of clusters is set to 2, it is possible that "software development" and "programming skills" belong to the first cluster, and "team collaboration" belongs to the second cluster.

[0091] To evaluate the importance of word nodes after clustering, the degree centrality and betweenness centrality of each node are calculated. Degree centrality measures the number of direct connections a node has; for a weighted network, it is the sum of the edge weights directly connected to the node. Betweenness centrality measures the frequency with which a node serves as a transit point for the shortest path between other node pairs in the network. For example, in the network above, the degree centrality of "software development" is 0.8 + 0.3 = 1.1. If there are node pairs in the network that require "software development" to establish a shortest path connection, then its betweenness centrality is the ratio of the number of shortest paths passing through that node to the total number of shortest paths.

[0092] The importance score of a node is obtained by weighting degree centrality and betweenness centrality. For example, if the degree centrality weight is set to 0.6 and the betweenness centrality weight is set to 0.4, then the importance score of "software development" is 0.6 × 1.1 + 0.4 × (betweenness centrality value). An importance threshold, such as 0.5, is set, and word nodes with importance scores higher than the threshold are selected to form a feature cluster representing job requirements.

[0093] Finally, the feature clusters are stored as entity nodes in the knowledge graph database. For example, the "technical skills" feature cluster is used as an entity node, containing word nodes such as "software development" and "programming skills." The node weight is the corresponding importance score, and the edge weight is the semantic similarity value between words. Similarly, the "soft skills" feature cluster is used as another entity node, containing word nodes such as "teamwork." In this way, the multidimensional features of job requirements are represented in the form of a knowledge graph, forming an initial job profile and providing a foundation for subsequent applications such as job matching and talent recommendation.

[0094] Suppose the initial word sequence for a software engineer job title contains 20 words, including "Java development," "Spring framework," "database design," "communication skills," and "teamwork." By calculating the semantic similarity matrix, we might find high similarity for technical terms like "Java development," "Spring framework," and "database design," as well as relatively high similarity for soft skills terms like "communication skills" and "teamwork," but low overall similarity between the two categories. After cluster analysis, two main feature clusters might form: "technical skills" and "soft skills." Within the "technical skills" cluster, centrality calculation might reveal that "Java development" has an importance score of 0.85, exceeding the threshold, and is therefore retained in the feature cluster. Finally, these feature clusters and their internal structures are stored in a knowledge graph database, forming the initial profile of the software engineer job title.

[0095] In one optional implementation, a multidimensional feature space is constructed based on feature clusters, the transition probability between different feature clusters is calculated in the multidimensional feature space, and a directed weighted transition graph is constructed based on the transition probability, including:

[0096] Extract the dimensional information of word nodes in the feature clusters, and generate dynamic feature vectors based on the temporal co-occurrence relationship of word nodes in recruitment data;

[0097] The dynamic feature vector is mapped to a multidimensional feature space, and the transfer difficulty coefficient between feature clusters in the multidimensional feature space is calculated.

[0098] Obtain historical career migration links, extract the frequency of occurrence of migration patterns in the historical career migration links, and correct the migration difficulty coefficient based on the frequency of occurrence;

[0099] Calculate the strength of the prior dependencies between the corrected transfer difficulty coefficients to generate skill transfer probabilities with transfer order constraints;

[0100] Using the feature clusters as nodes and the skill transfer probabilities as directed edge weights, a directed weighted transfer graph is constructed.

[0101] In this implementation, the recruitment data is first preprocessed, including data cleaning, word segmentation, and standardization, to obtain a structured job description dataset. Through word frequency statistical analysis, representative skill terms are selected, and based on semantic similarity and co-occurrence relationships, related skill terms are aggregated into feature clusters.

[0102] After the feature clusters are constructed, the dimensional information of the word nodes in each feature cluster is extracted. Specifically, multiple dimensions such as industry distribution, job level, salary level, and skill requirements are selected as feature representations. For each word node, its occurrence at different time points (e.g., divided by quarter) is collected to construct a temporal co-occurrence matrix. For example, for the skill "Python programming," its co-occurrence frequency with other skills (such as "data analysis" and "machine learning") is recorded in recruitment data from the first quarter of 2020 to the fourth quarter of 2023. Based on this co-occurrence matrix, a sliding window technique is used to generate a dynamic feature vector reflecting the evolution trend of skill words. In practice, for each word w in the feature cluster, the feature vector at time t can be represented as the weighted co-occurrence frequency of the word with other words within the time window [t-δ, t+δ], where δ is the size of the time window, which is taken as two quarters in practice.

[0103] The generated dynamic feature vectors are mapped to a multi-dimensional feature space. In this embodiment, the feature space dimensions include technology relevance, application domain similarity, and skill complexity. Dimensionality reduction techniques are used to map high-dimensional feature vectors to a visualized low-dimensional space. In the multi-dimensional feature space, the Euclidean distance between feature clusters is calculated as the basis for the initial transfer difficulty coefficient. For example, in practical applications, the Euclidean distance between the "front-end development" feature cluster and the "UI design" feature cluster is 0.38, indicating that these two skill domains are relatively close; while the Euclidean distance between "front-end development" and "database management" is 0.72, indicating a higher transfer difficulty.

[0104] To enhance model accuracy, this method further acquires historical career migration data, including career change records and talent flow directions. The frequency of migration patterns is extracted from this data, such as the number of historical migrations from skill A to skill B. The previously calculated migration difficulty coefficient is then corrected based on this frequency. The correction method adjusts the migration difficulty coefficient according to the difference between historical migration frequencies and theoretical predictions. Specifically, if the historical migration frequency between two feature clusters is higher than the theoretical value predicted based on feature distance, the corresponding migration difficulty coefficient is reduced; conversely, it is increased. The correction formula considers the ratio between the logarithm of historical migration frequencies and the theoretical prediction value, ensuring that the corrected difficulty coefficient better reflects reality. For example, the initial migration difficulty coefficient from "Java development" to "big data development" is 0.65, but historical data shows that this migration path occurs frequently; after correction, the difficulty coefficient is adjusted to 0.48.

[0105] Based on the corrected transfer difficulty coefficient, the strength of prior dependencies between feature clusters is calculated. Prior dependency strength reflects the sequential constraints of skill learning, meaning that mastering certain skills depends on mastering others. Dependencies between skills are determined by analyzing dependency indicators (such as "basic," "advanced," and "required") in skill description texts and skill combination patterns in recruitment data. If feature cluster A has a strong dependency on feature cluster B, the transfer difficulty coefficient from A to B will be appropriately reduced, while the transfer difficulty coefficient from B to A will be increased. By combining the transfer difficulty coefficient and prior dependency strength, skill transfer probabilities with transfer order constraints are generated. The calculation of transfer probabilities comprehensively considers feature space distance, historical transfer frequency, and prior dependencies, ensuring that the generated transfer probabilities both conform to the intrinsic connections between skills and reflect actual career development patterns.

[0106] Finally, a directed weighted migration graph is constructed, using feature clusters as nodes and skill transfer probabilities as directed edge weights. In this migration graph, nodes represent different skill feature clusters, directed edges represent migration paths from one feature cluster to another, and the edge weights are the calculated migration probabilities. For example, in the actual constructed migration graph, the directed edge weight from the "Data Analysis" node to the "Data Science" node is 0.72, indicating a relatively easy migration path; while the directed edge weight from "Hardware Engineering" to "Artificial Intelligence" is 0.23, indicating a more difficult migration path.

[0107] To verify the effectiveness of the method, job data from an online recruitment platform over three years was analyzed, including approximately 5 million job descriptions and 200,000 career change records. The directed weighted migration graph constructed using this method contains 87 skill feature cluster nodes and approximately 1400 directed weighted edges. By integrating the dimensional information of word nodes with temporal co-occurrence features, the expressive power of the dynamic feature vector is improved; the migration difficulty coefficient is corrected by incorporating historical career migration patterns, enhancing the rationality of migration probability calculations; and the introduction of prior dependency strength to construct migration order constraints ensures the feasibility of skill migration paths. The final directed weighted migration graph simultaneously includes the relationships between feature clusters and migration sequence information, laying a solid theoretical foundation for subsequent path planning and thus improving the accuracy and reliability of career development planning.

[0108] In one optional implementation, temporal sampling is performed on nodes in the directed weighted migration graph, the migration probability gradient between adjacent sampled nodes is calculated, and nodes whose migration probability change value is greater than a preset gradient threshold are connected to construct a temporal evolution chain, including:

[0109] The migration cost between nodes is extracted from the directed weighted migration graph. The adjacency reachability matrix is ​​constructed using the migration cost between nodes. The skill progression constraint is introduced into the adjacency reachability matrix to generate a weighted asymptotic constraint matrix. The normalization process is then performed to obtain the node sampling probability.

[0110] Based on the node sampling probability, a local neighborhood node screening rule is designed, a candidate node set that satisfies skill progression is constructed, the skill coverage of each node in the candidate node set is calculated, the nodes in the candidate node set are sorted by multi-objective weights, and the node that satisfies the minimum coverage cost is selected to generate a node sampling sequence.

[0111] Calculate the migration probability of adjacent nodes in the node sampling sequence, and obtain the migration probability gradient based on the migration probability through difference operation;

[0112] Node connections with migration probability gradients greater than a preset gradient threshold are selected, and the node connections are verified by an asymptotic constraint matrix. The verified node connections are then constructed into a temporal evolution chain.

[0113] In this implementation, the migration cost between nodes is first extracted from the directed weighted migration graph. The migration cost represents the resource consumption required to move from one node to another, and can be time, distance, or other quantifiable metrics. For example, in a skill learning scenario, the migration cost from node A to node B might be 3.5, representing the learning difficulty or time cost. The migration cost is obtained by analyzing the connection attributes between nodes and stored in a migration cost matrix.

[0114] Construct an adjacency reachability matrix using the migration costs between nodes. For each pair of nodes (i, j) in the graph, if node i can directly reach node j, then the corresponding position in the adjacency reachability matrix is ​​set to 1; otherwise, it is set to 0. For example, in a graph with 5 nodes, if node 2 can directly reach node 4, then the value in the 2nd row and 4th column of the matrix is ​​1.

[0115] Skill progression constraints are introduced into the adjacency reachability matrix. Skill progression constraints mean that transitions between certain nodes must meet specific preconditions, such as node A must be visited before node B. By introducing these constraints, certain connections in the adjacency reachability matrix are adjusted; if a connection does not meet the progression constraint, the corresponding position is set to 0. For example, if it is stipulated that node 3 must be visited before node 5, but the current path violates this constraint, the value at the corresponding position in the matrix is ​​modified to 0.

[0116] Generate a weighted asymptotic constraint matrix. Integrate migration cost information into the adjacency reachability matrix and assign a weight value to each reachable connection. The weight value is the reciprocal of the migration cost, representing the migration tendency; the smaller the migration cost, the larger the weight. For example, a connection with a migration cost of 2 might have a weight of 0.5.

[0117] The asymptotic constraint matrix is ​​normalized to obtain the node sampling probability. The weight values ​​in each row of the matrix are normalized so that the sum of all weight values ​​in that row is 1, forming a probability distribution. The normalization method is to divide each weight value by the sum of all weight values ​​in that row. For example, a row with weights [0.5, 0.3, 0.2] will be normalized to [0.5, 0.3, 0.2], representing the probability of selecting target nodes starting from the current node.

[0118] A local neighborhood node selection rule is designed based on the node sampling probability. A probability threshold P_threshold (e.g., 0.1) is set, and only nodes with a sampling probability greater than this threshold are considered as candidates. Simultaneously, the local neighborhood is limited, considering only nodes directly connected to the current node. For example, for the current node, if the sampling probabilities of its neighboring nodes are [0.15, 0.08, 0.25, 0.52], then nodes with probabilities of 0.15, 0.25, and 0.52 are selected as candidates.

[0119] Construct a set of candidate nodes that satisfy the skill progression requirement. Further verify the skill progression constraint from the selected local neighborhood nodes. For example, candidate nodes must have a skill level no lower than the current node, or be able to provide new skill points. Assuming the current node has a skill level of 4 and a skill point set of {A, B}, then candidate nodes must have a skill level no lower than 4, or possess skill points C, D, etc.

[0120] Calculate the skill coverage of each node in the candidate node set. Skill coverage is defined as the ratio of the number of new skill points contained in a node to the size of the total skill point set. For example, if the goal is to master the skill set {A, B, C, D, E}, and {A, B} is currently mastered, and the candidate nodes contain skill points {B, C}, {C, D}, and {C, E} respectively, then their skill coverages are 1 / 5 = 0.2, 2 / 5 = 0.4, and 2 / 5 = 0.4 respectively.

[0121] Nodes in the candidate node set are ranked using a multi-objective weighting system. The comprehensive weight is calculated by comprehensively considering the node's sampling probability, skill coverage, and migration cost. For example, setting the weight coefficients α=0.3, β=0.4, and γ=0.3, the comprehensive weight for candidate node i is α×sampling probability + β×skill coverage - γ×normalized migration cost. Assuming these indices for the three candidate nodes are (0.15, 0.2, 0.2), (0.25, 0.4, 0.3), and (0.52, 0.4, 0.5), their comprehensive weights are 0.155, 0.265, and 0.241, respectively.

[0122] Nodes that meet the minimum coverage cost are selected to generate a node sampling sequence. Nodes are selected from high to low based on their overall weight to form the sampling sequence. In the example above, the selection order is the second, third, and first candidate nodes.

[0123] Calculate the migration probability of neighboring nodes in the node sampling sequence. The migration probability is defined as the conditional probability of moving from node i to node j, obtained through the normalized asymptotic constraint matrix. For example, the migration probability from node 2 to node 4 might be 0.35, meaning there is a 35% probability of choosing node 4 as the next node to visit after node 2.

[0124] The migration probability gradient is obtained through difference operations based on the migration probability. The difference in migration probabilities between adjacent sampling time points is calculated. For example, if the migration probability of node pair (i, j) at time t1 is 0.35 and at time t2 it is 0.58, then the migration probability gradient is 0.23.

[0125] Filter node connections whose migration probability gradients are greater than a preset gradient threshold. Set a gradient threshold (e.g., 0.2), and only retain node connections with gradient values ​​greater than this threshold. In the example above, the gradient 0.23 of node pair (i, j) is greater than the threshold 0.2, so this connection is retained.

[0126] Perform asymptotic constraint matrix verification on the selected node connections. Check whether these connections meet the skill progression constraints. The verification method is to query whether the value at the corresponding position in the asymptotic constraint matrix is ​​positive. For example, for node pair (i, j), if the value at the corresponding position in the asymptotic constraint matrix is ​​greater than 0, it means that the connection meets the constraints.

[0127] The verified node connections are constructed into a temporal evolution chain. The node connections that meet the conditions are organized in chronological order to form a chain structure describing the system's evolution process. For example, if the node connections (2, 4), (4, 7), and (7, 9) all pass the verification, the constructed temporal evolution chain is 2→4→7→9, which represents the system's evolution process starting from node 2, passing through nodes 4 and 7 in sequence, and finally reaching node 9.

[0128] By constructing a weighted progressive constraint matrix and introducing skill progression constraints, the rationality of node sampling was ensured. By designing local neighborhood node screening rules and combining them with skill coverage for multi-objective ranking, the representativeness of the sampled node sequence was improved. Key migration nodes were identified using differential operations, and the effectiveness of node connections was verified through the progressive constraint matrix. The final constructed temporal evolution chain not only reflects the critical path of skill evolution but also maintains the coherence of skill progression, providing a reliable evolutionary reference for subsequent job profile updates and effectively improving the accuracy of job demand prediction.

[0129] In one optional implementation, a local neighborhood node selection rule is designed based on the node sampling probability to construct a candidate node set that satisfies skill progression. The skill coverage of each node in the candidate node set is calculated. The nodes in the candidate node set are then sorted by multi-objective weights, and the node that satisfies the minimum coverage cost is selected to generate a node sampling sequence, including:

[0130] A migration probability matrix between nodes is constructed based on the node sampling probability. Node skill vectors are extracted from the migration probability matrix, and the skill overlap and skill difference between nodes are calculated and combined into a local neighborhood filtering rule. The neighborhood node filtering rule is used to select nodes that meet the conditions from the migration probability matrix to construct a candidate node set.

[0131] For each node in the candidate node set, calculate the skill increment and loss, construct a skill iteration vector, calculate the skill progression coefficient between nodes based on the skill iteration vector, and select nodes with monotonically progressive skills to construct a skill progression candidate set.

[0132] The direct coverage is obtained by mapping the skill vectors of the nodes in the skill progression candidate set to the target skill. The indirect coverage is calculated based on the node skill association. The direct coverage and indirect coverage are weighted and combined to form the node skill coverage. The skill coverage is then used to construct a multi-objective weight matrix.

[0133] The nodes in the skill progression candidate set are sorted according to the multi-objective weight matrix, and the node with the highest sorting score and the minimum coverage cost is selected to generate a sampling sequence.

[0134] This invention provides a method for constructing a candidate node set that satisfies skill progression by designing local neighborhood node selection rules based on node sampling probability. In practical application scenarios, the target skill set and the user's current skill set are first obtained. For example, the target skill set can be represented as T={t1, t2, t3, t4, t5}, where t1 to t5 represent different skill points, such as "data structure" and "algorithm design". The user's current skill set can be represented as C={t1, t3}, indicating that the user has mastered skill points t1 and t3. The node sampling probability is calculated based on historical learning data to establish a node migration probability matrix P. In this matrix, the element P(i, j) represents the probability of migrating from node i to node j. For example, for a system containing 5 nodes, a 5×5 migration probability matrix can be obtained. The migration probability from node 1 to node 2 is 0.3, the migration probability from node 1 to node 3 is 0.25, and so on. The skill vector V for each node is extracted from the migration probability matrix. Taking node 1 as an example, its skill vector can be represented as V1={1,0,1,0,0}, indicating that the node covers two skill points t1 and t3.

[0135] Based on the extracted skill vectors, the skill overlap and skill difference between nodes are calculated. For nodes i and j, the skill overlap is calculated by dividing the number of common elements in the skill vectors of the two nodes by the total number of elements in their skill vectors. For example, if node 1's skill vector is {1, 0, 1, 0, 0} and node 2's skill vector is {1, 1, 0, 0, 0}, then their skill overlap is 1 / 3 = 0.33. The skill difference is calculated by dividing the number of different elements in the skill vectors of the two nodes by the total number of elements in their skill vectors. In the example above, the skill difference is 2 / 3 = 0.67.

[0136] Skill overlap and skill difference are combined into a local neighborhood selection rule. Thresholds α=0.2 and β=0.5 are set, requiring that the skill overlap between any two adjacent nodes is greater than α and the skill difference is less than β. This rule is used to select nodes that meet the conditions, constructing a candidate node set N. Assume the current candidate node set contains node 1, node 2, node 4, and node 5.

[0137] The system calculates the skill increment and loss for each node in the candidate node set N. The skill increment of node i refers to the number of new skill points introduced by that node, and the skill loss refers to the number of existing skill points not covered by that node. For example, if the current user's skill set is {t1, t3}, and node 2 (skill vector {1, 1, 0, 0, 0}) is selected, then the skill increment is 1 (t2 is added), and the skill loss is 1 (t3 is lost). The system constructs the skill increment and loss into a skill iteration vector I, where the skill iteration vector for node 2 is I2 = {1, 1}.

[0138] Based on the skill iteration vector, the skill progression coefficient between nodes is calculated. The skill progression coefficient is defined as the ratio of skill increment to the total number of skills (increment plus loss). For example, the skill progression coefficient of node 2 is 1 / (1+1)=0.5. A skill progression threshold γ=0.4 is set, and nodes with skill progression coefficients greater than γ are selected to construct a skill progression candidate set M. Assume that the selected skill progression candidate set includes node 2, node 4, and node 5.

[0139] Calculate the skill coverage of each node in the skill progression candidate set M. Direct coverage is calculated as the number of elements in the intersection of the node's skill vector and the target skill vector, divided by the total number of elements in the target skill vector. For example, if the target skill vector is {1, 1, 1, 1, 1} and the node 2 skill vector is {1, 1, 0, 0, 0}, then the direct coverage is 2 / 5 = 0.4. Indirect coverage is calculated based on node skill associations, representing the degree to which learning this node indirectly promotes the learning of other target skills. Assume the calculated indirect coverage of node 2 is 0.15. Combining the direct and indirect coverage with weights w1 = 0.7 and w2 = 0.3, we obtain the skill coverage of node 2 as 0.7 × 0.4 + 0.3 × 0.15 = 0.325.

[0140] A multi-objective weight matrix W is constructed based on factors such as node skill coverage, learning cost, and time cost. Each row of the multi-objective weight matrix represents a node, and each column represents an evaluation indicator. For example, the weights of node 2 in the three dimensions of skill coverage, learning cost, and time cost are 0.325, 0.4, and 0.3, respectively. The system sorts the nodes in the skill progression candidate set M according to the multi-objective weights and calculates the comprehensive score of each node. The comprehensive score is calculated as a weighted sum of the weights of each indicator, and the weight coefficients can be adjusted according to the specific application scenario. For example, if the weight coefficients of skill coverage, learning cost, and time cost are 0.5, 0.3, and 0.2, respectively, then the comprehensive score of node 2 is 0.5 × 0.325 + 0.3 × 0.4 + 0.2 × 0.3 = 0.3425.

[0141] The node with the highest overall score and the lowest coverage cost is selected as the current recommended node and added to the node sampling sequence S. For example, if node 4 has the highest overall score of 0.4, then node 4 is added to the sampling sequence S. The user's current skill set is updated, and the above process is repeated until the user's skill set covers the target skill set or a preset number of iterations is reached. The final generated node sampling sequence S represents the user's learning path recommendation result.

[0142] Using the methods described above, we can recommend learning paths that best meet the requirements of skill progression and coverage, based on the user's current skill level and target skill needs, thus helping the user complete the skill learning process efficiently.

[0143] By constructing neighborhood selection rules through calculating skill overlap and difference between nodes, the rationality of candidate node selection is ensured; by introducing skill iteration vectors to calculate progression coefficients, the monotonicity of the skill evolution path is guaranteed; by combining direct and indirect coverage to construct a multi-objective weight matrix, the comprehensiveness of node evaluation is improved; by adopting multi-objective sorting and considering minimum coverage cost constraints to select nodes, the sampling sequence is optimized, providing a high-quality data foundation for subsequent temporal evolution analysis and effectively improving the scientificity and reliability of skill migration path planning.

[0144] like Figure 2 As shown, this embodiment demonstrates the dynamic job matching process based on skill migration trajectories.

[0145] In one optional implementation, an initial job profile is updated based on a temporal evolution chain to generate a dynamic job profile. This dynamic job profile is then matched with job seeker resume information to generate job recommendation results, including:

[0146] Extract the node skill migration trajectory from the temporal evolution chain, construct the skill evolution feature vector according to the skill update frequency and migration intensity, and map the skill evolution feature vector to the skill space of the initial job profile to generate a dynamic skill matrix;

[0147] Calculate the temporal weights of skill items in the dynamic skill matrix, update the skill requirements in the initial job profile based on the temporal weights, construct a skill dependency network to identify the correlation strength between skills, and integrate the correlation strength into the initial job profile to obtain the dynamic job profile.

[0148] The degree of direct matching between the skills in the job seeker's resume and the dynamic job profile is calculated. The job seeker's skill transferability is analyzed using the skill dependency network. The direct matching degree and skill transferability are weighted and combined to obtain a comprehensive matching score.

[0149] The weighting of direct matching degree and skill transferability is adjusted according to the length of the job seeker's work experience, and job recommendation results are generated based on the adjusted comprehensive matching score.

[0150] In the specific implementation process, the skill migration trajectory of each node is first extracted from the temporal evolution chain. The temporal evolution chain is constructed based on historical job description data and contains information on changes in skill demand at multiple time points. For each skill item, its frequency of occurrence and importance at different time points are recorded. For example, for the "data analyst" position, it may be observed that the demand frequency of the skill "Python programming" has increased from 12% to 35% over the past five years, while the demand frequency of "Excel operations" has decreased from 45% to 28%. By calculating the rate of change of each skill item between adjacent time points, a skill migration matrix is ​​constructed. Specifically, if the frequency of skill A at time point t1 is 10% and rises to 15% at time point t2, its rate of change is 50%, indicating that the demand for this skill is on the rise.

[0151] Based on skill update frequency and migration intensity, a skill evolution feature vector is constructed. Update frequency reflects the speed of change in skill demand, while migration intensity reflects the magnitude of change. For example, the skill "machine learning" has an update frequency of 0.8 times per quarter in recent data, and a migration intensity of 0.6 (meaning that each update brings an average demand increase of 60%). These two dimensions of data for all skills are combined into a feature vector, such as [0.8, 0.6], representing the evolutionary characteristics of the "machine learning" skill.

[0152] The next step is to map the skill evolution feature vectors to the skill space of the initial job profile. The initial job profile contains each skill item and its importance weight. For example, the job title "Front-end Development Engineer" might include skills such as "JavaScript" (weight 0.8), "HTML / CSS" (weight 0.7), and "React Framework" (weight 0.6). By combining the evolution feature vector of each skill with the initial weights, a dynamic skill matrix is ​​generated. Each element in this matrix represents the dynamic importance of a specific skill at the current point in time.

[0153] When calculating the temporal weights of skill items in the dynamic skill matrix, both historical importance and future trends of the skills are considered. A time decay function is used to process historical data, making recent data have a greater impact on the current weight. For example, data from one month ago might be assigned a weight coefficient of 0.9, data from six months ago 0.6, and data from one year ago 0.3. In this way, the system calculates the temporal weighted average of each skill item as its current temporal weight.

[0154] The skill requirements in the initial job profile are updated based on time-series weights. For skills with a clear upward trend, such as "big data processing," the initial weight may increase from 0.5 to 0.7; for skills with a clear downward trend, such as "Flash development," the initial weight may decrease from 0.4 to 0.2. In addition, emerging skills, such as "blockchain development," will be identified and added to the job profile, with an initial weight possibly set to 0.4.

[0155] Constructing a skill dependency network is a crucial step in identifying the strength of associations between skills. This involves analyzing skill co-occurrence in historical job data and calculating the conditional probabilities between skill pairs. For example, if 80% of jobs requiring the skill "Python" also require "Data Analysis," then the dependency of "Python" on "Data Analysis" is 0.8. The system establishes this dependency relationship for all skill pairs, forming a skill dependency network.

[0156] The correlation strength is integrated into the initial job profile to obtain a dynamic job profile. Core skill clusters are identified through a skill dependency network, and skill weights are adjusted. For example, if "Java programming," "Spring framework," and "microservice architecture" form a highly dependent skill cluster, the overall importance of each skill within this cluster will be increased. The final dynamic job profile not only reflects the latest importance of each skill but also includes the structured relationships between skills.

[0157] The first step in the recommendation process is to calculate the direct match between the skills in a job seeker's resume and the dynamic job profile. The system compares the job seeker's skill set with the skill set required for the job, calculating the overlap. For each matching skill, it multiplies it by its weight in the dynamic job profile and sums these values ​​to obtain a direct match score. For example, if a job seeker has three skills: "Java" (job weight 0.8), "SQL" (job weight 0.6), and "HTML" (job weight 0.4), their direct match score would be 1.8.

[0158] Skill dependency networks are used to analyze job seekers' skill transferability. This assesses the potential for transferring existing skills to skills required for the position that the job seeker has not yet mastered. For example, if a job seeker is familiar with "Python" but lacks "machine learning" skills, and the skill dependency network shows a dependency of 0.7 between the two, the system considers the job seeker to have a high probability of quickly mastering "machine learning." A weighted sum of all such potential skill transfer paths is calculated to obtain a skill transferability score.

[0159] The overall matching score is calculated by weighting the direct match score with the skill transferability score. Initially, the system may be set to give 70% to direct match and 30% to skill transferability. For example, if a job seeker's direct match score is 0.75 (out of 1) and their skill transferability score is 0.60 (out of 1), then the overall matching score would be 0.75 × 70% + 0.60 × 30% = 0.705.

[0160] The weighting of direct match and skill transferability is adjusted based on the length of the job seeker's work experience. Job seekers with shorter work experience are considered to have stronger learning abilities, thus the weighting of skill transferability is increased; while job seekers with extensive work experience place greater emphasis on the direct match of existing skills. Job recommendations are generated based on the adjusted overall match score. The system sorts all jobs according to their overall match score with the job seeker and selects the top-ranked jobs as recommendations. In practical applications, the system provides a matching analysis explanation for each recommended job, including directly matched skills, potentially transferable skills, and the composition of the overall match score, helping job seekers understand the rationale behind the recommendations and improving their explainability and acceptability.

[0161] By extracting skill transfer trajectories and constructing evolutionary feature vectors, dynamic prediction of job skill requirements was achieved. By introducing temporal weights and skill dependency networks to update job profiles, the accuracy of job requirement descriptions was improved. A comprehensive evaluation combining direct matching degree and skill transfer capability enhanced the scientific nature of job matching. An adaptive weight adjustment mechanism based on professional experience improved the personalization of recommendation results, providing job seekers with more accurate job recommendation services and effectively improving the quality and efficiency of job matching.

[0162] A second aspect of this invention provides a knowledge graph-based dynamic profile construction system for job requirements, the system comprising:

[0163] The first unit is used to segment the company's historical recruitment data to obtain an initial word sequence, construct a semantic similarity matrix based on word co-occurrence relationships, cluster the initial word sequence using the semantic similarity matrix to generate feature clusters that represent job requirements, and store the feature clusters in a knowledge graph database to form an initial job profile.

[0164] The second unit is used to construct a multidimensional feature space based on feature clusters, calculate the migration probability between different feature clusters in the multidimensional feature space, and construct a directed weighted migration graph based on the migration probability.

[0165] The third unit is used to perform temporal sampling of nodes in the directed weighted migration graph, calculate the migration probability gradient between adjacent sampled nodes, and connect nodes whose migration probability change value is greater than a preset gradient threshold to construct a temporal evolution chain.

[0166] The fourth unit is used to update the initial job profile based on the time-series evolution chain to generate a dynamic job profile, and then match the dynamic job profile with the job seeker's resume information to generate job recommendation results.

[0167] A third aspect of the present invention provides an electronic device, comprising:

[0168] processor;

[0169] Memory used to store processor-executable instructions;

[0170] The processor is configured to invoke instructions stored in the memory to execute the aforementioned method.

[0171] A fourth aspect of the present invention provides a computer-readable storage medium having stored thereon computer program instructions that, when executed by a processor, implement the aforementioned method.

[0172] This invention can be a method, apparatus, system, and / or computer program product. The computer program product may include a computer-readable storage medium having computer-readable program instructions loaded thereon for performing various aspects of the invention.

[0173] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some or all of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present invention.

Claims

1. A method for constructing dynamic job requirement profiles based on knowledge graphs, characterized in that, include: The initial word sequence is obtained by segmenting the historical recruitment data of enterprises. A semantic similarity matrix is ​​constructed based on word co-occurrence relationship. The initial word sequence is clustered using the semantic similarity matrix to generate feature clusters that represent job requirements. The feature clusters are stored in a knowledge graph database to form an initial job profile. A multidimensional feature space is constructed based on feature clusters. The migration probability between different feature clusters is calculated in the multidimensional feature space. A directed weighted migration graph is constructed based on the migration probability. Temporal sampling is performed on the nodes in the directed weighted migration graph, the migration probability gradient between adjacent sampled nodes is calculated, and nodes whose migration probability change value is greater than a preset gradient threshold are connected to construct a temporal evolution chain. The initial job profile is updated based on the time-series evolution chain to generate a dynamic job profile. The dynamic job profile is then matched with the job seeker's resume information to generate job recommendation results. A multidimensional feature space is constructed based on feature clusters. The transition probabilities between different feature clusters are calculated within this multidimensional feature space. A directed weighted transition graph is then constructed based on these transition probabilities, including: Extract the dimensional information of word nodes in the feature clusters, and generate dynamic feature vectors based on the temporal co-occurrence relationship of word nodes in recruitment data; The dynamic feature vector is mapped to a multidimensional feature space, and the transfer difficulty coefficient between feature clusters in the multidimensional feature space is calculated. Obtain historical career migration links, extract the frequency of occurrence of migration patterns in the historical career migration links, and correct the migration difficulty coefficient based on the frequency of occurrence; Calculate the strength of the prior dependencies between the corrected transfer difficulty coefficients to generate skill transfer probabilities with transfer order constraints; Using the feature clusters as nodes and the skill transfer probabilities as directed edge weights, a directed weighted transfer graph is constructed.

2. The method according to claim 1, characterized in that, The initial word sequence is obtained by segmenting the company's historical recruitment data. A semantic similarity matrix is ​​constructed based on word co-occurrence relationships, including: Obtain historical recruitment data from enterprises, perform forward maximum matching on the recruitment data based on a preset job domain dictionary to obtain a forward word segmentation sequence, and simultaneously perform reverse maximum matching to obtain a reverse word segmentation sequence; The forward word segmentation sequence is compared with the reverse word segmentation sequence, and the sequence with fewer words is selected as the initial word sequence to generate an initial word sequence set containing word position information. The word window size is set based on the initial word sequence set. The number of co-occurrences between words is counted within the word window, and a word co-occurrence matrix that records the co-occurrence relationships between words is generated. The words in the word co-occurrence matrix are mapped to word vectors, the cosine similarity between word vectors is calculated, and the semantic similarity matrix is ​​constructed by multiplying the co-occurrence frequency by the cosine similarity.

3. The method according to claim 1, characterized in that, The initial word sequence is clustered using a semantic similarity matrix to generate feature clusters representing job requirements. These feature clusters are then stored in a knowledge graph database to form an initial job profile, including: A word association graph is constructed using a semantic similarity matrix, and the eigenvectors of the normalized Laplacian matrix of the word association graph are calculated. The feature vectors are constructed into a low-dimensional feature matrix, and the low-dimensional feature matrix is ​​clustered to generate an initial feature cluster; Calculate the degree centrality and betweenness centrality of word nodes in the initial feature cluster, sort the nodes by importance based on the combined values ​​of degree centrality and betweenness centrality, select word nodes with importance scores higher than a preset importance threshold, and generate feature clusters that represent job requirements. The feature clusters representing job requirements are used as entity nodes, the importance scores of word nodes are used as node weights, and the semantic similarity values ​​between word nodes are used as edge weights. These are stored in a knowledge graph database to form an initial job profile.

4. The method according to claim 1, characterized in that, Temporal sampling is performed on nodes in the directed weighted migration graph. The migration probability gradient between adjacent sampled nodes is calculated. Nodes whose migration probability change value is greater than a preset gradient threshold are connected to construct a temporal evolution chain, including: The migration cost between nodes is extracted from the directed weighted migration graph. The adjacency reachability matrix is ​​constructed using the migration cost between nodes. The skill progression constraint is introduced into the adjacency reachability matrix to generate a weighted asymptotic constraint matrix. The normalization process is then performed to obtain the node sampling probability. Based on the node sampling probability, a local neighborhood node screening rule is designed, a candidate node set that satisfies skill progression is constructed, the skill coverage of each node in the candidate node set is calculated, the nodes in the candidate node set are sorted by multi-objective weights, and the node that satisfies the minimum coverage cost is selected to generate a node sampling sequence. Calculate the migration probability of adjacent nodes in the node sampling sequence, and obtain the migration probability gradient based on the migration probability through difference operation; Node connections with migration probability gradients greater than a preset gradient threshold are selected, and the node connections are verified by an asymptotic constraint matrix. The verified node connections are then constructed into a temporal evolution chain.

5. The method according to claim 4, characterized in that, Based on the node sampling probability, a local neighborhood node selection rule is designed, a candidate node set satisfying skill progression is constructed, the skill coverage of each node in the candidate node set is calculated, the nodes in the candidate node set are sorted by multi-objective weights, and the node that satisfies the minimum coverage cost is selected to generate a node sampling sequence, including: A migration probability matrix between nodes is constructed based on the node sampling probability. Node skill vectors are extracted from the migration probability matrix, and the skill overlap and skill difference between nodes are calculated and combined into a local neighborhood filtering rule. The neighborhood node filtering rule is used to select nodes that meet the conditions from the migration probability matrix to construct a candidate node set. For each node in the candidate node set, calculate the skill increment and loss, construct a skill iteration vector, calculate the skill progression coefficient between nodes based on the skill iteration vector, and select nodes with monotonically progressive skills to construct a skill progression candidate set. The direct coverage is obtained by mapping the skill vectors of the nodes in the skill progression candidate set to the target skill. The indirect coverage is calculated based on the node skill association. The direct coverage and indirect coverage are weighted and combined to form the node skill coverage. The multi-objective weight matrix is ​​constructed using the skill coverage. The nodes in the skill progression candidate set are sorted according to the multi-objective weight matrix, and the node with the highest sorting score and the minimum coverage cost is selected to generate a sampling sequence.

6. The method according to claim 1, characterized in that, The initial job profile is updated based on the temporal evolution chain to generate a dynamic job profile. The dynamic job profile is then matched with job seeker resume information to generate job recommendation results, including: Extract the node skill migration trajectory from the temporal evolution chain, construct the skill evolution feature vector according to the skill update frequency and migration intensity, and map the skill evolution feature vector to the skill space of the initial job profile to generate a dynamic skill matrix; Calculate the temporal weights of skill items in the dynamic skill matrix, update the skill requirements in the initial job profile based on the temporal weights, construct a skill dependency network to identify the correlation strength between skills, and integrate the correlation strength into the initial job profile to obtain the dynamic job profile. The degree of direct matching between the skills in the job seeker's resume and the dynamic job profile is calculated. The job seeker's skill transferability is analyzed using the skill dependency network. The direct matching degree and skill transferability are weighted and combined to obtain a comprehensive matching score. The weighting of direct matching degree and skill transferability is adjusted according to the length of the job seeker's work experience, and job recommendation results are generated based on the adjusted comprehensive matching score.

7. A knowledge graph-based dynamic profile construction system for job requirements, used to implement the method of any one of claims 1-6, characterized in that, include: The first unit is used to segment the company's historical recruitment data to obtain an initial word sequence, construct a semantic similarity matrix based on word co-occurrence relationships, cluster the initial word sequence using the semantic similarity matrix to generate feature clusters that represent job requirements, and store the feature clusters in a knowledge graph database to form an initial job profile. The second unit is used to construct a multidimensional feature space based on feature clusters, calculate the migration probability between different feature clusters in the multidimensional feature space, and construct a directed weighted migration graph based on the migration probability. The third unit is used to perform temporal sampling of nodes in the directed weighted migration graph, calculate the migration probability gradient between adjacent sampled nodes, and connect nodes whose migration probability change value is greater than a preset gradient threshold to construct a temporal evolution chain. The fourth unit is used to update the initial job profile based on the time-series evolution chain to generate a dynamic job profile, and then match the dynamic job profile with the job seeker's resume information to generate job recommendation results.

8. An electronic device, characterized in that, include: processor; Memory used to store processor-executable instructions; The processor is configured to invoke instructions stored in the memory to execute the method according to any one of claims 1 to 6.

9. A computer-readable storage medium having computer program instructions stored thereon, characterized in that, When the computer program instructions are executed by the processor, they implement the method described in any one of claims 1 to 6.

Citation Information

Patent Citations

  • Post competency and recruitment post matching method based on AI

    CN120525496A