Social network-based user recruitment precision matching method
Patent Information
- Application Number
- CN202611206348.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-10
- Publication Date
- 2026-11-03
AI Technical Summary
Existing social network-based recruitment matching schemes fail to effectively consider the natural decay of user interaction frequency over time, resulting in matching rankings deviating from the actual social activity status at the current moment and causing matching bias.
A sliding time window is used to divide the interaction logs, an exponential decay function is introduced to calculate the dynamic edge weights, and a graph convolutional network is used to fuse the static feature vectors and dynamic edge weights to generate high-dimensional feature vectors. Cosine similarity is then calculated to generate a matching and sorting sequence.
By combining time decay mechanism and graph convolutional network, interference from historical redundant interaction data is filtered out, reducing the error of matching results deviating from the actual active state, and ensuring the accuracy and diversity of matching results.
Smart Images

Figure CN123030805A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of big data processing technology, specifically to a method for precise matching of user recruitment based on social networks. Background Technology
[0002] Existing social network-based recruitment and matching schemes extract user registration information and historical posting content as static attribute tags, and extract comment, forwarding, and following records between users as interaction logs. When constructing the social relationship graph, undirected edges are established with users as nodes, and the total number of historical interactions is used as a fixed edge weight. In the matching phase, the static attribute tags are converted into static feature vectors, and the cosine similarity between the static feature vectors and the recruitment task feature vectors is directly calculated. A matching ranking sequence is generated based on the similarity values.
[0003] The aforementioned conventional solutions treat interaction data in social networks as static constants, failing to account for the natural decay of interaction frequency over time. In recruitment scenarios, frequent interactions between users in earlier periods differ from recent frequent interactions in reflecting their current activity level. Existing technologies use the total number of historical interactions as a fixed weight in feature calculation, leading to redundant historical interaction data continuously interfering with the matching process. This causes the output matching ranking to deviate from the user's true social activity level at the current time, resulting in matching bias. Summary of the Invention
[0004] The purpose of this invention is to provide a precise matching method for user recruitment based on social networks, which can solve the problems mentioned in the background art.
[0005] To achieve the above objectives, the technical solution adopted by the present invention is as follows: A precise matching method for user recruitment based on social networks includes: acquiring user node attribute data and interaction log data between nodes in a social network; constructing an initial social relationship graph based on the user node attribute data and the interaction log data; dividing the interaction log data using a preset sliding time window, calculating the interaction frequency within the sliding time window, and processing the interaction frequency using an exponential decay function to generate dynamic edge weights for the connections in the initial social relationship graph; fusing the static feature vectors corresponding to the user node attribute data with the dynamic edge weights to generate initial feature vectors for each node in the initial social relationship graph; inputting the initial feature vectors into a pre-trained graph convolutional network, performing neighbor node feature aggregation processing on the initial feature vectors through the graph convolutional network, and outputting a high-dimensional feature vector containing topological structure information; calculating the cosine similarity between the high-dimensional feature vector and a preset recruitment task feature vector, and generating a matching ranking sequence for the recruitment task based on the cosine similarity.
[0006] Preferably, the step of acquiring user node attribute data and interaction log data between nodes in the social network, and constructing an initial social relationship graph based on the user node attribute data and the interaction log data, includes: extracting user registration information and historical published content from the social network database as the user node attribute data, and extracting comment records, forwarding records, and following records between users as the interaction log data; mapping the user node attribute data to the initial attribute labels of the graph nodes with each user as a graph node; if there is interaction log data between two graph nodes, establishing an undirected edge between the two graph nodes, and using the interaction timestamp and interaction type in the interaction log data as the initial edge attributes of the undirected edge, and combining them to generate the initial social relationship graph.
[0007] Preferably, the step of dividing the interaction log data using a preset sliding time window, calculating the interaction frequency within the sliding time window, and introducing an exponential decay function to process the interaction frequency to generate dynamic edge weights in the initial social relationship graph includes: moving the sliding time window on the time axis according to a preset time step, counting the number of data entries of the interaction log data falling into the current sliding time window, and using the number of data entries as the current interaction frequency of the current sliding time window; obtaining the time difference between the end timestamp of the current sliding time window and the current system timestamp; substituting the current interaction frequency and the time difference into a preset exponential decay function formula to calculate the decayed value, and assigning the decayed value to the corresponding undirected edge to generate the dynamic edge weights.
[0008] Preferably, the step of fusing the static feature vector corresponding to the user node attribute data with the dynamic edge weights to generate the initial feature vector of each node in the initial social relationship graph includes: performing one-hot encoding on the user node attribute data, inputting the encoded sparse matrix into a pre-established embedding layer, and mapping the sparse matrix into the static feature vector of fixed dimension through the embedding layer; obtaining the dynamic edge weights corresponding to all neighboring nodes directly connected to the current node, calculating the mean of all the dynamic edge weights, and generating an edge weight aggregation vector; and concatenating the static feature vector and the edge weight aggregation vector along the feature dimension to generate the initial feature vector of the current node.
[0009] Preferably, the step of inputting the initial feature vector into a pre-trained graph convolutional network and performing neighbor node feature aggregation processing on the initial feature vector through the graph convolutional network to output a high-dimensional feature vector containing topological structure information includes: extracting the initial feature vector of the current node and the initial feature vectors of the first-order neighbor nodes of the current node during the propagation process of each layer of the graph convolutional network; obtaining the adjacency matrix of the initial social relationship graph, performing degree matrix normalization processing on the adjacency matrix to obtain a normalized adjacency matrix; performing matrix multiplication operation between the normalized adjacency matrix and the initial feature vector of the first-order neighbor nodes, and then adding it to the initial feature vector of the current node; and outputting the high-dimensional feature vector after processing by a nonlinear activation function.
[0010] Preferably, the step of calculating the cosine similarity between the high-dimensional feature vector and the preset recruitment task feature vector, and generating a matching ranking sequence for the recruitment task based on the cosine similarity, includes: performing word segmentation on the recruitment task text, inputting the segmentation results into a text vectorization model to generate the recruitment task feature vector; calculating the cosine value of the vector angle between the high-dimensional feature vector of all nodes in the initial social relationship graph and the recruitment task feature vector, and using the vector angle cosine value as the cosine similarity; arranging all the nodes in descending order of the cosine similarity, and extracting the first preset number of nodes from the arranged sequence to generate the matching ranking sequence.
[0011] Preferably, the step of substituting the current interaction frequency and the time difference into a preset exponential decay function formula to calculate the decayed value includes: extracting the interaction type tag that generates the current interaction frequency from the interaction log data, the interaction type tag including comment tag, forward tag, and like tag; retrieving a preset decay factor mapping table, extracting the corresponding basic decay rate from the decay factor mapping table according to the interaction type tag; multiplying the basic decay rate as a coefficient into the base part of the exponential decay function formula, and calculating the decayed value by combining the updated exponential decay function formula with the current interaction frequency and the time difference.
[0012] Preferably, the step of performing matrix multiplication on the normalized adjacency matrix and the initial feature vector of the first-order neighbor node includes: extracting the dynamic edge weights of the edges connecting the first-order neighbor node and the current node; inputting the dynamic edge weights into a feedforward neural network layer, and outputting the attention coefficients corresponding to the first-order neighbor node through the feedforward neural network layer; constructing an attention coefficient matrix using the attention coefficients as diagonal elements; performing a Hadamard product operation on the attention coefficient matrix and the normalized adjacency matrix to obtain a weighted adjacency matrix; replacing the normalized adjacency matrix with the weighted adjacency matrix, and performing the matrix multiplication operation.
[0013] Preferably, the step of inputting the encoded sparse matrix into a pre-established embedding layer and mapping the sparse matrix into a static feature vector of fixed dimension through the embedding layer includes: obtaining the column dimension values of the sparse matrix; constructing an orthogonal mapping matrix with a size equal to the column dimension values multiplied by a preset dimensionality reduction target dimension; multiplying the sparse matrix and the orthogonal mapping matrix to obtain a dimensionality-reduced intermediate mapping matrix; performing L2 norm normalization on each row vector in the intermediate mapping matrix; and using the normalized row vectors as the static feature vectors and inputting them into the embedding layer for feature space transformation.
[0014] Preferably, after extracting the first preset number of nodes from the permutation sequence to generate the matching sorting sequence, the method further includes: extracting the set of second-order neighbor nodes of all nodes included in the matching sorting sequence from the initial social relationship graph; calculating the Jaccard similarity coefficient of any two nodes in the matching sorting sequence on the set of second-order neighbor nodes; if the Jaccard similarity coefficient is greater than a preset similarity threshold, then marking the two nodes as a redundant node pair; retaining the node with the highest cosine similarity in the redundant node pair, removing the node with the lowest cosine similarity in the redundant node pair, reordering the remaining nodes after removal, and updating the matching sorting sequence.
[0015] Compared with the prior art, the beneficial effects of the present invention are as follows: 1. This invention employs a sliding time window to divide the interaction log and introduces an exponential decay function to calculate dynamic edge weights, integrating the time decay mechanism with the graph edge attributes. When the graph convolutional network performs neighbor node feature aggregation, the initial feature vector input carries interaction frequency information that decays over time. By combining the dynamic edge weights with the static feature vector to generate the initial feature vector, and performing matrix multiplication in the graph convolutional network using a normalized adjacency matrix, the interference of historical redundant interaction data on feature representation is filtered out. This allows the output high-dimensional feature vector to reflect the true topological state of the current time node, reducing the error of the matching result deviating from the actual active state.
[0016] 2. In the calculation of the exponential decay function, the basic decay rate is extracted by combining the interaction type label and multiplied into the base, distinguishing the decay rate of different types of interaction behaviors and making the edge weights discriminative. In the feedforward neural network layer, the attention coefficient is output and subjected to Hadamard product operation with the normalized adjacency matrix to construct a weighted adjacency matrix. This ensures that the neighbor node feature aggregation process focuses on the first-order neighbor nodes corresponding to high-weight edges. After generating the matching sorting sequence, the second-order neighbor node set is extracted, and the Jaccard similarity coefficient is calculated to eliminate redundant node pairs, avoiding objects with highly overlapping social circles in the matching results and ensuring the diversity of nodes in the output sequence in terms of social structure. Attached Figure Description
[0017] Figure 1 This is a flowchart of the overall method for precise matching of user recruitment based on social networks according to the present invention; Figure 2 This is a flowchart of the initial social relationship graph construction method of the present invention; Figure 3 This is a flowchart of the dynamic edge weight generation method of the present invention; Figure 4 This is a flowchart of the initial feature vector generation method of the present invention; Figure 5 This is a flowchart of the graph convolutional network feature aggregation and high-dimensional feature generation process of the present invention; Figure 6 This is a flowchart of the matching sorting sequence generation and redundant node removal process of the present invention. Detailed Implementation
[0018] refer to Figure 1In one embodiment, user node attribute data and interaction log data between nodes are obtained from the social network, and an initial social relationship graph is constructed based on the user node attribute data and interaction log data. Specifically, the registration information and historical published content of all users are extracted from the distributed database corresponding to the social network as user node attribute data. The registration information includes the user's age range, geographical distribution, registration duration, and interest tag set. The historical published content includes the text and image content, short video content, and topic participation records posted by the user on the social network. The comment records, forwarding records, and following records between users are extracted as interaction log data. The interaction log data includes the initiating user ID, receiving user ID, interaction timestamp, and interaction type identifier corresponding to each interaction behavior. Each user in the social network is treated as an independent graph node, and the user node attribute data is mapped to the initial attribute label of the corresponding graph node. The initial attribute label corresponds to the user and serves as a unique static identifier for the graph node. For any two graph nodes, if there is at least one valid interaction log data between the users corresponding to the two graph nodes, then an undirected edge is established between the two graph nodes. The two endpoints of the undirected edge correspond to the two user nodes with interaction behavior, respectively. The interaction timestamp and interaction type in the interaction log data are used as the initial edge attributes of the undirected edge. All graph nodes and undirected edges are combined to generate an initial social relationship graph.
[0019] Furthermore, a preset sliding time window is used to divide the interaction log data, calculate the interaction frequency within the sliding time window, and introduce an exponential decay function to process the interaction frequency, generating dynamic edge weights for connections in the initial social relationship graph. The preset sliding time window has a fixed time width, which matches the interaction behavior cycle of the social network. The sliding time window moves along the time axis according to a preset time step, with the time step value being less than or equal to the time width of the sliding time window to ensure that there is an overlapping area between adjacent sliding time windows and avoid omission of interaction log data. For each sliding time window, the number of data entries of the interaction log data corresponding to the edge falling within the time range of the current sliding time window is counted, and this number of data entries is used as the current interaction frequency corresponding to that edge within the current sliding time window. The time difference between the end timestamp of the current sliding time window and the current system timestamp is obtained, with the time difference calculated in seconds as the smallest unit to ensure that the time precision is consistent with the timestamp precision in the interaction log data. Substitute the current interaction frequency and time difference into the preset exponential decay function formula to calculate the decayed value, and assign the decayed value to the corresponding undirected edge to generate the dynamic edge weight of the edge under the current system time.
[0020] Table 1. Correspondence between sliding time window parameters and interaction frequency statistics Table 1 shows the statistical results of the interaction frequency of the target connection as the sliding time window moves along the time axis. The window time width and time step are set to 86,400 seconds. Each window corresponds to a natural day. The interaction frequency is the total number of valid interaction log data of the target connection within the corresponding window, which provides basic input data for the subsequent calculation of the exponential decay function.
[0021] In this embodiment, the dynamic edge weights are calculated using the following exponential decay function formula: in, Let be the dynamic edge weight of the connection between node i and node j at the current system time t. This represents the interaction frequency between node i and node j within the current sliding time window. The preset base attenuation coefficient has a range of positive real numbers. This is the time difference between the end timestamp of the current sliding time window and the current system timestamp, with the time unit consistent with that of the sliding time window.
[0022] Furthermore, the static feature vectors corresponding to the user node attribute data are fused with dynamic edge weights to generate initial feature vectors for each node in the initial social relationship graph. Specifically, discrete attributes in the user node attribute data are one-hot encoded, and continuous attributes are min-max normalized. All processed attribute data are combined to generate a sparse matrix, which is then input into a pre-established embedding layer. The embedding layer is a fully connected neural network layer. Through linear transformation of the embedding layer, the sparse matrix is mapped to a static feature vector of fixed dimension. The dimension of the static feature vector is consistent with the output dimension of the embedding layer, and the dimension of the static feature vectors corresponding to all nodes remains uniform. For any current node in the initial social relationship graph, the dynamic edge weights of all first-order neighbor nodes directly connected to the current node are obtained. The arithmetic mean of all dynamic edge weights is calculated to generate an edge weight aggregation vector that matches the dimension of the static feature vector. The static feature vector and the edge weight aggregation vector are concatenated along the feature dimension. The dimension of the concatenated vector is the sum of the dimensions of the static feature vector and the edge weight aggregation vector. This concatenated vector is used as the initial feature vector of the current node.
[0023] Furthermore, the initial feature vector is input into a pre-trained graph convolutional network (GCNN). The GCNN performs neighbor node feature aggregation on the initial feature vector, outputting a high-dimensional feature vector containing topological information. The pre-trained GCNN consists of two graph convolutional layers and one fully connected output layer. The pre-training process uses user interest tag classification in a social network as the supervised task. The initial feature vectors of user nodes labeled with interest tags are input, and the cross-entropy loss function is used as the pre-training loss function. The weight and bias parameters of the network are updated through backpropagation until the value of the loss function converges to a preset threshold range, completing the pre-training of the GCNN. During the propagation process of each layer of the GCNN, the initial feature vector of the current node and the initial feature vectors of the first-order neighbor nodes of the current node are extracted. The first-order neighbor nodes are nodes that have a direct edge connection with the current node. The adjacency matrix of the initial social relationship graph is obtained. The adjacency matrix is an N-order square matrix, where N is the total number of nodes in the initial social relationship graph. After adding a self-loop structure to the adjacency matrix, the degree matrix is normalized to obtain the normalized adjacency matrix. The normalized adjacency matrix is multiplied with the initial feature vectors of the first-order neighbor nodes to aggregate the features of the neighbor nodes. The aggregated features are then added to the initial feature vector of the current node. After processing by a non-linear activation function, a high-dimensional feature vector with a fixed dimension is output through a fully connected output layer. The high-dimensional feature vector contains both the node's own attribute information and the topological structure information of the social relationship graph.
[0024] In this embodiment, the formula for calculating the normalized adjacency matrix is: in, This is the normalized adjacency matrix; Given the adjacency matrix of the initial social relationship graph, if there is an edge between node i and node j, then the element at the corresponding position in the adjacency matrix... ,otherwise ; It is an identity matrix with the same dimensions as the adjacency matrix A. It is used to introduce the self-loop structure of the nodes to ensure that the feature aggregation process includes the feature information of the nodes themselves. Let be the degree matrix of the initial social relationship graph. The degree matrix is a diagonal matrix, and the elements on the diagonal are... N represents the total number of nodes in the initial social relationship graph.
[0025] The formula for calculating feature propagation in graph convolutional layers is: in, For the first The feature matrix output by the layer graph convolutional layer; For the first The input feature matrix of the layer graph convolutional layer, the first layer input is a matrix composed of the initial feature vectors of all nodes; For the first Trainable weight matrix of a layered graph convolutional layer; For the first Trainable bias vectors for layered graph convolutional layers; It is a non-linear activation function.
[0026] Furthermore, the cosine similarity between the high-dimensional feature vector and the pre-defined recruitment task feature vector is calculated, and a matching ranking sequence for the recruitment task is generated based on the cosine similarity. Specifically, the task description text of the recruitment task is obtained, and the task description text is segmented to remove stop words, punctuation marks, and meaningless special characters. The segmented token sequence is input into a pre-trained text vectorization model. The text vectorization model adopts a Transformer encoder structure, and the pre-training tasks include a masked language model task and a sentence pair matching task. The vector corresponding to the CLStoken output of the last layer of the text vectorization model is extracted as the recruitment task feature vector. For all nodes in the initial social relationship graph, the cosine value of the angle between the high-dimensional feature vector of each node and the recruitment task feature vector is calculated, and this cosine value is used as the cosine similarity between the node and the recruitment task. Arrange all nodes in the initial social relationship graph according to the cosine similarity values from largest to smallest to generate a sorted sequence of all nodes. Extract the first preset number of nodes from the sorted sequence to generate a matching sorted sequence for the current recruitment task. The preset number of nodes matches the target number of recruits for the recruitment task.
[0027] In this embodiment, the formula for calculating cosine similarity is: in, Let v be the cosine similarity between node v and recruitment task T; For nodes The corresponding high-dimensional feature vector; This is the recruitment task feature vector corresponding to recruitment task T; This is the dot product operation for vectors; Let L2 be the L2 norm of the vector.
[0028] This embodiment fully realizes the entire process of precise matching for user recruitment based on social networks. By constructing an initial social relationship graph, it integrates users' static attribute information and dynamic interaction information. It uses a sliding time window combined with an exponential decay function to generate dynamic edge weights, thereby realizing the quantitative expression of the time decay characteristics of interaction data. It generates an initial feature vector by fusing static features and dynamic edge weights. It uses a graph convolutional network to aggregate topological information and extract high-dimensional features. Finally, it generates a matching ranking sequence by calculating cosine similarity, thereby achieving precise matching between user nodes and recruitment tasks.
[0029] refer to Figure 2 In a preferred embodiment, user registration information and historical posted content are extracted from a social network database as user node attribute data, and user comment records, forwarding records, and following records are extracted as interaction log data. Specifically, during the extraction of user registration information, the registration information is cleaned to remove invalid user data with missing values exceeding a preset proportion (set to 30%). The retained registration information includes the user's gender identifier, region code, occupational classification, registration duration, and interest tag set. The region code uses the nationally unified administrative division code, and the occupational classification uses the standard occupational classification code to ensure the standardization of attribute data. During the extraction of historical posted content, the topic tags, content keywords, posting time, and total interaction volume corresponding to the user's posted content are extracted. The weight values of the content keywords are extracted using the TF-IDF algorithm, and the top 20 keywords with the highest weight values are used as the core attributes of the historical posted content. During the extraction of interaction log data, duplicate interaction records and invalid automatic system interaction records are removed. The retained interaction log data includes comment records, forwarding records, following records, and like records. Each interaction log data contains a unique interaction ID, initiating user ID, receiving user ID, interaction timestamp, and interaction type tag. The interaction type tag corresponds to the interaction behavior.
[0030] Furthermore, using each user as a graph node, user node attribute data is mapped to the initial attribute labels of the graph nodes. These initial attribute labels are stored in key-value pairs, where the key is the attribute name and the value is the standardized encoding result corresponding to the attribute. This ensures that the key set of the initial attribute labels for each graph node is completely consistent, facilitating subsequent feature encoding processing. For any two graph nodes, if there is at least one valid interaction log data between them, an undirected edge is established between the two nodes. The initial edge attributes of the undirected edge include the set of interaction timestamps, the set of interaction type labels, and the total number of interactions for all interaction log data corresponding to that edge. All graph nodes and undirected edges are combined to generate an initial social relationship graph. This initial social relationship graph is stored using an adjacency list structure. Each node in the adjacency list has a storage unit containing its initial attribute label, the IDs of all adjacent nodes, and the initial edge attributes of the corresponding edge, improving the efficiency of subsequent data reading and processing.
[0031] refer to Figure 3 Furthermore, the sliding time window moves along the timeline according to a preset time step, and the number of interaction log data entries falling within the current sliding time window is counted. This number of data entries is used as the current interaction frequency within the current sliding time window. Specifically, the sliding time window has a time width of 30 days and a time step of 1 day. The window slides along the timeline in units of days, with each sliding time window covering a time range of 30 days prior to the current moment, ensuring that the updated time range matches the latest interaction log data after each window slide. For each connection in the initial social relationship graph, all interaction log data corresponding to that connection are traversed, and it is determined whether the interaction timestamp of the interaction log data falls within the time range of the current sliding time window. The total number of interaction log data entries falling within the time range is counted, and this total number is used as the current interaction frequency of that connection within the current sliding time window.
[0032] Furthermore, the time difference between the end timestamp of the current sliding time window and the current system timestamp is obtained. The interaction type tags that generate the current interaction frequency are extracted from the interaction log data. The interaction type tags include comment tags, forward tags, like tags, and follow tags. The preset decay factor mapping table is retrieved, and the corresponding basic decay rate is extracted from the decay factor mapping table according to the interaction type tag. The basic decay rate is used as a coefficient to multiply the base part of the exponential decay function formula. The updated exponential decay function formula is combined with the current interaction frequency and the time difference to calculate the decayed value. The decayed value is assigned to the corresponding undirected edge to generate dynamic edge weights.
[0033] Table 2 Mapping Table of Interaction Type Labels and Basic Decay Rates Table 2 shows the base decay rate values corresponding to different interaction type labels. The base decay rate value is negatively correlated with the social association strength of the interaction behavior. The higher the social association strength of the interaction behavior, the lower the corresponding base decay rate and the slower the decay speed of the interaction frequency, ensuring that the dynamic edge weight can distinguish the social value differences of different interaction types.
[0034] In this embodiment, the formula for calculating the dynamic edge weight based on the interaction type is as follows: in, K represents the dynamic edge weight between node i and node j at the current system time t; K is the total number of interaction type labels. The interaction frequency corresponding to the interaction type label k between node i and node j within the current sliding time window; The base decay rate corresponding to the interaction type label k is extracted from the preset decay factor mapping table. This is the time difference between the end timestamp of the current sliding time window and the current system timestamp, with the time unit being days, consistent with the time unit of the sliding time window.
[0035] This embodiment refines the construction process of the initial social relationship graph and the calculation logic of dynamic edge weights. By standardizing and cleaning user node attribute data and interaction log data and storing them in a structured manner, the data quality and access efficiency of the initial social relationship graph are improved. By introducing the basic decay rate corresponding to the interaction type label, different decay calculation logic is adopted for different types of interaction behaviors, so that the dynamic edge weights can accurately reflect the social association strength and time decay characteristics of different interaction behaviors, avoid the confusion of weights of different interaction types, and improve the distinguishability and accuracy of the edge weights.
[0036] refer to Figure 4 In another preferred embodiment, the user node attribute data undergoes one-hot encoding. The encoded sparse matrix is then input into a pre-established embedding layer, which maps the sparse matrix into a static feature vector of fixed dimensions. Specifically, discrete attributes in the user node attribute data, including gender identifier, region code, occupation classification, and interest tags, are each subjected to one-hot encoding. Each value of each discrete attribute corresponds to a dimension in the one-hot encoding. If the attribute value of a node matches that dimension, the encoding value of that dimension is 1; otherwise, it is 0. Continuous attributes in the user node attribute data, including registration duration and total interaction volume of historical published content, undergo min-max normalization, mapping the values of continuous attributes to the interval [0,1].
[0037] In this embodiment, the calculation formula for min-max normalization is: in, The normalized attribute values; This represents the original value of the attribute; This is the minimum value of the attribute across all nodes; This represents the maximum value of this attribute across all nodes.
[0038] Furthermore, the discrete attribute vectors after one-hot encoding are concatenated with the normalized continuous attribute vectors along the feature dimension to generate a sparse matrix corresponding to the user node attribute data. Each row of the sparse matrix corresponds to a user node, and each column corresponds to an attribute encoding dimension. The column dimension values of the sparse matrix are obtained, and an orthogonal mapping matrix is constructed with a size equal to the column dimension value multiplied by the preset dimensionality reduction target dimension. The orthogonal mapping matrix is constructed using the Gram-Schmidt orthogonalization method to ensure that the column vectors of the orthogonal mapping matrix are pairwise orthogonal and that the magnitude of each column vector is 1. The orthogonal mapping matrix is used to map the high-dimensional sparse matrix to a low-dimensional dense feature space. The sparse matrix and the orthogonal mapping matrix are multiplied to obtain the intermediate mapping matrix after dimensionality reduction. The number of rows in the intermediate mapping matrix is the same as the number of rows in the sparse matrix, and the number of columns is the same as the preset dimensionality reduction target dimension.
[0039] Table 3. Correspondence between User Node Attribute Data Encoding and Static Feature Vector Dimensions Table 3 shows the encoding methods, dimensional changes, and output dimensions of the final static feature vectors for different categories of user node attribute data. By adopting differentiated dimensionality reduction target dimension settings for different attributes, the core information of different attributes is preserved while reducing the dimensionality of the sparse matrix, ensuring the expressive power of the static feature vectors.
[0040] Furthermore, L2 norm normalization is performed on each row vector in the intermediate mapping matrix. In this embodiment, the calculation formula for L2 norm normalization is as follows: in, This is the static feature vector corresponding to node v; is the row vector corresponding to node v in the intermediate mapping matrix; row vector The L2 norm is calculated using the following formula: D is the column dimension of the intermediate mapping matrix. row vector The value of the d-th dimension.
[0041] Furthermore, the normalized row vectors are used as static feature vectors and input into the embedding layer for feature space transformation. The embedding layer is a single-layer fully connected neural network layer. The input dimension of the embedding layer is consistent with the dimension of the static feature vector, and the output dimension is a preset fixed dimension. Through the linear transformation and nonlinear activation of the embedding layer, the static feature vector is mapped to a unified feature space, ensuring that the static feature vector dimension of all nodes is completely consistent.
[0042] Furthermore, the dynamic edge weights of all neighboring nodes directly connected to the current node are obtained, the mean of all dynamic edge weights is calculated, and an edge weight aggregation vector is generated. Specifically, for the current node v, the set N(v) of all its first-order neighboring nodes is obtained, and each neighboring node u in the set N(v) is traversed to obtain the dynamic edge weight of the edge connecting node v and node u. Calculate the arithmetic mean of all dynamic edge weights to generate an aggregated edge weight vector.
[0043] In this embodiment, the formula for calculating the edge weight aggregation vector is: in, This is the aggregated vector of edge weights corresponding to node v; Let v be the total number of first-order neighbor nodes of node v; It is an all-1 vector with the same dimension as the static feature vector, ensuring that the dimension of the edge weight aggregation vector matches that of the static feature vector.
[0044] Furthermore, the static feature vector and the edge weight aggregation vector are concatenated along the feature dimension to generate the initial feature vector of the current node. The formula for calculating the initial feature vector is as follows: in, This is the initial feature vector corresponding to node v; This is a concatenation operation on the feature dimension. The dimension of the initial feature vector after concatenation is twice the dimension of the static feature vector.
[0045] This embodiment refines the generation process of static feature vectors and the fusion logic of initial feature vectors. It achieves the structured transformation of user node attribute data through one-hot encoding and normalization. It completes the dimensionality reduction of high-dimensional sparse matrices by using orthogonal mapping matrices and L2 norm normalization, which retains the core attribute information while reducing the feature dimension. By concatenating the dimension-matched edge weight aggregation vector with the static feature vector, it achieves the deep fusion of node static attribute information and dynamic interaction information, providing high-quality input data for feature aggregation of subsequent graph convolutional networks.
[0046] refer to Figure 5In another preferred embodiment, the initial feature vector is input into a pre-trained graph convolutional network (GCNN). The GCNN performs neighbor node feature aggregation on the initial feature vector, outputting a high-dimensional feature vector containing topological information. The pre-trained GCNN consists of three graph convolutional layers, each followed by a batch normalization layer and a dropout layer. The batch normalization layer mitigates the internal covariate shift problem during network training, and the dropout layer reduces the risk of overfitting. The dropout layer's inactivation probability is set to 0.3. During each propagation in the GCNN, the initial feature vector of the current node and the initial feature vectors of its first-order neighbor nodes are extracted to obtain the adjacency matrix of the initial social relationship graph. The adjacency matrix is then normalized to obtain a normalized adjacency matrix.
[0047] Furthermore, the dynamic edge weights of the connections between the first-order neighbor nodes and the current node are extracted and input into the feedforward neural network layer. The feedforward neural network layer outputs the attention coefficients corresponding to the first-order neighbor nodes. The feedforward neural network layer consists of two fully connected layers with an input dimension of 1, corresponding to the values of the dynamic edge weights. The hidden layer dimension is set to 8, and the output dimension is 1, corresponding to the values of the attention coefficients. The activation function of the feedforward neural network layer is the Sigmoid function, which maps the output attention coefficients to the interval [0,1].
[0048] In this embodiment, the formula for calculating the attention coefficient is: in, Let be the attention coefficient of the neighbor node u corresponding to node v; For the mapping function of the feedforward neural network layer; This represents the dynamic edge weight of the connection between node v and node u.
[0049] Furthermore, an attention coefficient matrix is constructed using the attention coefficients as diagonal elements. This matrix is an N-order diagonal matrix, with the diagonal elements corresponding to the attention coefficients of the edges between nodes. The attention coefficient matrix is then multiplied by the normalized adjacency matrix using the Hadamard product to obtain the weighted adjacency matrix. The formula for calculating the weighted adjacency matrix is as follows: in, It is a weighted adjacency matrix; This is the Hadamard product operation, which involves multiplying corresponding elements in two matrices. This is the attention coefficient matrix, where the elements at the edge positions corresponding to node i and node j take values of... .
[0050] Furthermore, the normalized adjacency matrix is replaced with a weighted adjacency matrix, matrix multiplication is performed, and the weighted aggregation of neighbor node features is completed. The propagation formula for the graph convolutional layer is: in, For the first The feature matrix output by the layer graph convolutional layer; For the first The input feature matrix of the layer graph convolutional layer, the first layer input is a matrix composed of the initial feature vectors of all nodes; For the first Trainable weight matrix of a layered graph convolutional layer; For the first Trainable bias vectors for layered graph convolutional layers; The activation function is non-linear, and the ReLU activation function is used.
[0051] Furthermore, the feature matrix output by the last layer of the graph convolutional network is used as the high-dimensional feature vector for all nodes. The high-dimensional feature vector contains the node's own attribute information, dynamic interaction information, and topological structure information of the social relationship graph.
[0052] refer to Figure 6 Furthermore, the recruitment task text is segmented, and the segmentation results are input into a text vectorization model to generate a recruitment task feature vector. Specifically, the task name, task description, recruitment requirements, and task tag text are obtained, and all text content is concatenated into a complete task text. A pre-trained Chinese word segmentation model is used to segment the task text, removing stop words, punctuation marks, numbers, and meaningless special characters from the segmentation results to generate a word segmentation token sequence. The word segmentation token sequence is input into the pre-trained text vectorization model, which adopts a 12-layer Transformer encoder structure. The pre-training process uses a large-scale Chinese corpus, and the pre-training tasks include a masked language model task and a sentence pair matching task. The word segmentation token sequence is padded to a fixed length and then input into the text vectorization model. The vector corresponding to the CLStoken output of the last layer of the model is extracted as the recruitment task feature vector. The dimension of the recruitment task feature vector is consistent with the dimension of the high-dimensional feature vector.
[0053] Furthermore, the cosine of the angle between the high-dimensional feature vectors of all nodes in the initial social relationship graph and the feature vector of the recruitment task is calculated. This cosine angle is used as the cosine similarity. All nodes are arranged in descending order of cosine similarity. The first preset number of nodes in the arrangement are selected to generate a matching sorted sequence. The preset number is determined based on the target number of recruits for the recruitment task, and is usually set to 3-5 times the target number of recruits, to reserve enough candidate nodes for subsequent redundant node removal.
[0054] Furthermore, the set of second-order neighbor nodes for all nodes included in the matching ranking sequence is extracted from the initial social relationship graph. The set of second-order neighbor nodes consists of all first-order neighbor nodes of a node. The node itself and its first-order neighbor nodes are removed from the set to obtain the set of second-order neighbor nodes corresponding to that node. The Jaccard similarity coefficient between any two nodes in the matching ranking sequence on the set of second-order neighbor nodes is calculated. The formula for calculating the Jaccard similarity coefficient is: in, Let v be the Jaccard similarity coefficient between node v and node u. Let v be the set of second-order neighbor nodes corresponding to node v; Let be the set of second-order neighbor nodes corresponding to node u; The number of elements in the set.
[0055] If the Jaccard similarity coefficient is greater than a preset similarity threshold, any two nodes are marked as redundant node pairs. The preset similarity threshold is set to 0.7. When the Jaccard similarity coefficient of the second-order neighbor sets of two nodes exceeds 0.7, it indicates that the social circles of the two nodes highly overlap. Nodes with higher cosine similarity in redundant node pairs are retained, while nodes with lower cosine similarity are removed. If the cosine similarity of two nodes in a redundant node pair is the same, the node with higher degree is retained, and the node with lower degree is removed. After traversing all redundant node pairs and completing the removal operation, the remaining nodes are reordered according to their cosine similarity from largest to smallest, and the matching sorting sequence is updated.
[0056] Table 4. Results of Jaccard Similarity Coefficient Calculation for Candidate Node's Second-Order Neighbor Set Table 4 shows the Jaccard similarity coefficient calculation results of the second-order neighbor set of candidate node pairs in the matching and sorting sequence. Node pairs with a Jaccard similarity coefficient greater than the preset similarity threshold are marked as redundant node pairs, providing a basis for subsequent redundant node removal operations and ensuring the diversity of social structure of nodes in the final matching and sorting sequence.
[0057] This embodiment refines the feature aggregation logic of graph convolutional networks, the generation process of matching and ranking sequences, and the mechanism for removing redundant nodes. By introducing the Hadamard product operation of the attention coefficient matrix and the normalized adjacency matrix, weighted aggregation of neighbor node features is achieved, making the feature aggregation process focus on the first-order neighbor nodes corresponding to high-weighted edges, thus improving the expression accuracy of high-dimensional feature vectors. By calculating the Jaccard similarity coefficient, redundant node pairs with highly overlapping social circles are identified, and redundant nodes are removed, avoiding nodes with highly homogeneous social structures in the matching results, and ensuring the diversity and coverage of nodes in the output matching and ranking sequence.
Claims
1. A precise matching method for user recruitment based on social networks, characterized in that, include: Acquire user node attribute data and interaction log data between nodes in the social network, and construct an initial social relationship graph based on the user node attribute data and the interaction log data; The interaction log data is divided using a preset sliding time window, the interaction frequency within the sliding time window is calculated, an exponential decay function is introduced to process the interaction frequency, and dynamic edge weights are generated for the edges in the initial social relationship graph. The static feature vectors corresponding to the user node attribute data are fused with the dynamic edge weights to generate the initial feature vectors of each node in the initial social relationship graph. The initial feature vector is input into a pre-trained graph convolutional network, and the graph convolutional network performs neighbor node feature aggregation processing on the initial feature vector to output a high-dimensional feature vector containing topological structure information. Calculate the cosine similarity between the high-dimensional feature vector and the preset recruitment task feature vector, and generate a matching and sorting sequence for the recruitment task based on the cosine similarity.
2. The precise matching method for user recruitment based on social networks according to claim 1, characterized in that, The step of acquiring user node attribute data and interaction log data between nodes in a social network, and constructing an initial social relationship graph based on the user node attribute data and the interaction log data, includes: User registration information and historical posting content are extracted from the social network database as user node attribute data, and user comment records, forwarding records, and following records are extracted as interaction log data. Using each user as a graph node, the attribute data of the user node is mapped to the initial attribute label of the graph node; If the interaction log data exists between two graph nodes, an undirected edge is established between the two graph nodes, and the interaction timestamp and interaction type in the interaction log data are used as the initial edge attributes of the undirected edge to generate the initial social relationship graph.
3. The precise matching method for user recruitment based on social networks according to claim 1, characterized in that, The process involves dividing the interaction log data using a preset sliding time window, calculating the interaction frequency within the sliding time window, applying an exponential decay function to process the interaction frequency, and generating dynamic edge weights for the connections in the initial social relationship graph. This includes: The sliding time window moves along the time axis according to a preset time step, and the number of data entries of the interaction log data falling into the current sliding time window is counted. The number of data entries is used as the current interaction frequency of the current sliding time window. Obtain the time difference between the end timestamp of the current sliding time window and the current system timestamp; Substitute the current interaction frequency and the time difference into the preset exponential decay function formula to calculate the decayed value, and assign the decayed value to the corresponding undirected edge to generate the dynamic edge weight.
4. The precise matching method for user recruitment based on social networks according to claim 1, characterized in that, The step of fusing the static feature vectors corresponding to the user node attribute data with the dynamic edge weights to generate the initial feature vectors of each node in the initial social relationship graph includes: The user node attribute data is processed by one-hot encoding, and the encoded sparse matrix is input into a pre-established embedding layer. The embedding layer maps the sparse matrix into a static feature vector of fixed dimensions. Obtain the dynamic edge weights corresponding to all neighboring nodes directly connected to the current node, calculate the mean of all dynamic edge weights, and generate an edge weight aggregation vector; The static feature vector and the edge weight aggregation vector are concatenated along the feature dimension to generate the initial feature vector of the current node.
5. The precise matching method for user recruitment based on social networks according to claim 1, characterized in that, The step of inputting the initial feature vector into a pre-trained graph convolutional network, and performing neighbor node feature aggregation processing on the initial feature vector through the graph convolutional network to output a high-dimensional feature vector containing topological structure information includes: During the propagation process of each layer of the graph convolutional network, the initial feature vector of the current node and the initial feature vector of the first-order neighbor node of the current node are extracted; Obtain the adjacency matrix of the initial social relationship graph, and perform degree matrix normalization on the adjacency matrix to obtain the normalized adjacency matrix; The normalized adjacency matrix is multiplied by the initial feature vector of the first-order neighbor node, and then added to the initial feature vector of the current node. After processing by a nonlinear activation function, the high-dimensional feature vector is output.
6. The precise matching method for user recruitment based on social networks according to claim 1, characterized in that, The step of calculating the cosine similarity between the high-dimensional feature vector and the preset recruitment task feature vector, and generating a matching and ranking sequence for the recruitment task based on the cosine similarity, includes: The recruitment task text is segmented into words, and the segmentation results are input into a text vectorization model to generate the recruitment task feature vector. Calculate the cosine of the angle between the high-dimensional feature vector of all nodes in the initial social relationship graph and the feature vector of the recruitment task, and use the cosine of the angle as the cosine similarity. All nodes are arranged in descending order of cosine similarity, and the first preset number of nodes in the arrangement sequence are extracted to generate the matching sorting sequence.
7. The precise matching method for user recruitment based on social networks according to claim 3, characterized in that, The step of substituting the current interaction frequency and the time difference into a preset exponential decay function formula to calculate the decayed value includes: The interaction type tags that generate the current interaction frequency are extracted from the interaction log data. The interaction type tags include comment tags, forwarding tags, and like tags. Retrieve the preset attenuation factor mapping table, and extract the corresponding basic attenuation rate from the attenuation factor mapping table according to the interaction type label; The base decay rate is multiplied as a coefficient into the base of the exponential decay function formula. The updated exponential decay function formula is then combined with the current interaction frequency and the time difference to calculate the decayed value.
8. The precise matching method for user recruitment based on social networks according to claim 5, characterized in that, The step of performing matrix multiplication between the normalized adjacency matrix and the initial eigenvectors of the first-order neighbor nodes includes: Extract the dynamic edge weights of the edges connecting the first-order neighbor nodes and the current node; The dynamic edge weights are input into the feedforward neural network layer, and the attention coefficients corresponding to the first-order neighbor nodes are output through the feedforward neural network layer. The attention coefficients are used as diagonal elements to construct an attention coefficient matrix. The attention coefficient matrix is then multiplied by the normalized adjacency matrix to obtain a weighted adjacency matrix. The normalized adjacency matrix is replaced with the weighted adjacency matrix, and the matrix multiplication operation is performed.
9. The precise matching method for user recruitment based on social networks according to claim 4, characterized in that, The step of inputting the encoded sparse matrix into a pre-established embedding layer, and mapping the sparse matrix into a fixed-dimensional static feature vector through the embedding layer, includes: Obtain the column dimension values of the sparse matrix and construct an orthogonal mapping matrix with a size equal to the column dimension values multiplied by a preset dimension reduction target dimension; Multiply the sparse matrix with the orthogonal mapping matrix to obtain the dimension-reduced intermediate mapping matrix; The L2 norm normalization process is performed on each row vector in the intermediate mapping matrix, and the normalized row vectors are used as the static feature vectors and input into the embedding layer for feature space transformation.
10. The precise matching method for user recruitment based on social networks according to claim 6, characterized in that, After extracting the first preset number of nodes from the permutation sequence to generate the matching sorted sequence, the method further includes: Extract the set of second-order neighbor nodes of all nodes contained in the matching sorting sequence from the initial social relationship graph; Calculate the Jaccard similarity coefficient of any two nodes in the matching sorting sequence on the set of second-order neighbor nodes. If the Jaccard similarity coefficient is greater than a preset similarity threshold, then mark the two nodes as a redundant node pair. The node with the highest cosine similarity in the redundant node pair is retained, the node with the lowest cosine similarity in the redundant node pair is removed, the remaining nodes after removal are reordered, and the matching sorting sequence is updated.
