Mpc-based worker quality and collaboration ability evaluation method and system
By training a global encoder on the worker terminal and using MPC nodes for secret sharing, the privacy leakage problem in the assessment of worker quality and collaboration ability is solved, and a comprehensive assessment and integrated score of worker ability is achieved while protecting privacy.
Patent Information
- Application Number
- CN202511747897.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-26
- Publication Date
- 2026-02-10
- Estimated Expiration
- 2045-11-26
AI Technical Summary
Existing technologies pose a risk of privacy breaches in assessing worker quality and teamwork skills, and cannot comprehensively evaluate worker quality and teamwork skills while protecting privacy.
The method adopts an MPC-based approach, which generates node embedding features by training a global encoder on the worker terminal and constructs a multinomial for secret sharing. The MPC nodes are used to calculate quality and collaboration ability scores, and combined with labor costs to generate a comprehensive score, thus ensuring privacy protection.
It enables a comprehensive assessment of workers' quality and collaborative abilities while protecting their privacy, providing high-quality assessment results for intelligent decision-making.
Smart Images

Figure CN121212914B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of privacy protection technology in mobile crowd sensing, and in particular to a method and system for evaluating worker quality and collaborative ability based on MPC. Background Technology
[0002] Mobile crowdsourcing sensing systems rely on a large number of participants contributing sensing data and computing resources to achieve data collection and analysis in application scenarios such as environmental monitoring, smart cities, and public safety. To optimize the overall system effectiveness, the workforce platform needs to recruit high-quality workers while controlling costs, and simultaneously ensuring the fairness and rationality of incentive distribution. The workforce platform primarily relies on two types of key information in its recruitment decisions: one is data quality information formed by workers' historical performance and reliability, and the other is cost information required for workers to participate in tasks.
[0003] Traditional centralized recruitment mechanisms require workers to submit raw sensory data and plaintext job offers to a hiring platform for unified evaluation and selection. However, this model poses significant privacy risks: raw data may expose workers' location information, behavioral characteristics, and sensitive preferences, while plaintext job offers may reveal workers' actual costs and capabilities, which can then be inferred and exploited by the hiring platform or other workers in subsequent interactions.
[0004] To address privacy risks, existing technologies offer partial solutions, but none can comprehensively protect worker privacy or provide a complete assessment of workers. Specifically, one approach is based on federated learning, where workers can train quality assessment models locally and only upload updated parameters to the platform for aggregation, thus protecting the privacy of raw data to some extent. However, in subsequent recruitment decisions, the platform still needs to use workers' plaintext quality scores and costs for joint calculations to determine incentive allocation, potentially indirectly exposing workers' cost or ability information. Another approach uses secure multi-party computation or homomorphic encryption to encrypt workers' bids, protecting bid privacy through encrypted ranking and winner determination. However, this approach typically cannot integrate workers' quality scores into the decision-making calculation while ensuring data privacy. Attempting to integrate them requires decrypting or state transitions of some data, increasing computational and communication overhead and introducing new privacy risks. Summary of the Invention
[0005] Therefore, it is necessary to provide an MPC-based method and system for evaluating worker quality and collaboration ability that can protect privacy and comprehensively assess workers, addressing the aforementioned technical issues.
[0006] A worker quality and collaboration ability assessment method based on MPC, applied to worker terminals, the method includes:
[0007] S1. Obtain the first feature of the associated worker, and generate the node embedding feature of the associated worker based on the first feature and the trained global encoder;
[0008] S2. Construct the first polynomial corresponding to each sub-feature vector after the node embedding feature is split; the first polynomial includes the independent variable associated with the MPC node;
[0009] S3. Assign values to the independent variables in the first polynomial, and secretly share the first result after assignment to the associated MPC node, so that the MPC node generates the quality score and collaboration ability score of the associated worker based on the first result and the second result sent to the MPC node by the neighbor of the associated worker.
[0010] S4. Encrypt and send the labor cost of the associated worker to the MPC node, so that the MPC node can obtain a comprehensive score of the associated worker based on the labor cost, the quality score and the collaboration ability score.
[0011] In this application, by obtaining the first feature of the associated worker and generating node embedding features of the associated worker based on the first feature and a trained global encoder, the global encoder is trained on the worker's terminal. This allows the global encoder to be trained even when the employment platform cannot access the plaintext gradient of the associated worker, thus protecting worker privacy. A first polynomial is constructed corresponding to each sub-feature vector after the node embedding feature is decomposed. This first polynomial includes independent variables associated with the MPC node. Values are assigned to the independent variables in the first polynomial, and the first result is secretly shared with the associated MPC node. Based on the first result and the second result sent to the MPC node by the associated worker's neighbors, the associated worker's quality score and collaboration ability score are generated. This allows the quality and collaboration ability assessment of the associated worker to be completed at the MPC node, ensuring that the employment platform cannot obtain these scores. The employment cost of the associated worker is encrypted and sent to the MPC node, allowing the MPC node to obtain a comprehensive score for the associated worker based on the employment cost, quality score, and collaboration ability score. This allows for a comprehensive evaluation of the associated worker by combining their quality and collaboration ability.
[0012] In one embodiment, the training process of the global encoder in step S1 includes:
[0013] S11. Receive the neighbor list sent by the employment platform, and obtain the second feature updated from the first feature of the associated worker; the neighbor list includes unique identifiers of workers who have a cooperative relationship with the associated worker;
[0014] S12. Construct a second polynomial based on the sub-feature vectors after the second feature split; the second polynomial includes independent variables associated with the MPC node;
[0015] S13. Assign values to the independent variables in the second polynomial, and send the assigned third result to the corresponding MPC node so that the MPC node aggregates the fourth result of each neighbor of the associated worker to obtain an initial aggregation result, and sends the initial aggregation result to the worker terminal.
[0016] S14. Receive the initial aggregation result, and obtain the third feature based on the first aggregation result reconstructed from the initial aggregation result and the second feature. Send the noisy gradient obtained based on the third feature to the employment platform so that the employment platform can calculate the global parameters of the global encoder based on the noisy gradient.
[0017] S15. Replace the second feature in steps S12 and S14 with the third feature, and repeat steps S12, S13 and S14 until the global parameters calculated in the labor platform are stable, and obtain the trained global encoder.
[0018] In this application, step S11 involves receiving a neighbor list sent by the employment platform and obtaining the updated second feature of the associated worker after the first feature is obtained; the neighbor list includes unique identifiers of workers with cooperative relationships with the associated worker; step S12 involves constructing a second polynomial based on the sub-feature vectors after splitting the second feature; the second polynomial includes independent variables associated with the MPC node; step S13 involves assigning values to the independent variables in the second polynomial and sending the assigned third result to the corresponding MPC node, so that the MPC node aggregates the fourth result of each neighbor of the associated worker to obtain an initial aggregation result, which is then sent to the worker terminal; step S14 involves receiving the initial aggregation result and, based on the initial aggregation... The reconstructed first aggregation result and second feature are used to obtain the third feature. The noisy gradient obtained based on the third feature is sent to the labor platform so that the labor platform can calculate the global parameters of the global encoder based on the noisy gradient. S15: Replace the second feature in steps S12 and S14 with the third feature, and repeat steps S12, S13 and S14 until the global parameters calculated in the labor platform are stable, and obtain the trained global encoder. In this way, under the premise of ensuring the privacy of each worker's data, the features of the neighbors are securely aggregated by MPC, realizing distributed collaborative training based on the cooperative graph structure, and finally obtaining a high-performance and privacy-secure global encoder model.
[0019] In one embodiment, step S11 includes:
[0020] A first object that has a cooperative relationship with the associated worker is sent to the employment platform, so that when the employment platform finds the associated worker among the second objects sent by the first object, the first object is identified as the neighbor of the associated worker, and a neighbor list consisting of the unique identifiers of the neighbors is sent to the worker terminal of the associated worker; the second object is the worker that has a cooperative relationship with the first object;
[0021] Receive the neighbor list sent by the employment platform.
[0022] In this application, by sending a first object that has a cooperative relationship with the associated worker to the employment platform, the employment platform determines the first object as the neighbor of the associated worker when there is an associated worker in the second object sent by the first object, and sends a neighbor list consisting of the unique identifiers of the neighbors to the worker terminal of the associated worker; the second object is the worker that has a cooperative relationship with the first object, so as to ensure that the neighbor list sent by the employment platform consists of unique identifiers of neighbors who actually have a cooperative relationship.
[0023] In one embodiment, step S12 includes:
[0024] Obtain the maximum value among the sub-feature vectors after the second feature split;
[0025] A finite field is defined by prime numbers greater than the maximum value, and multiple secret coefficients are selected from the finite field;
[0026] Based on the secret coefficients and the sub-feature vectors after the second feature split, a second polynomial is constructed;
[0027] The expression for the second polynomial Q(x) is:
[0028] ;
[0029] Where h is the sub-feature vector after the second feature split, x is the independent variable, and r t-1 Let p be the (t-1)th secret coefficient, and p be a prime number.
[0030] In this application, by obtaining the maximum value of each sub-feature vector after the second feature is split, using prime numbers greater than the maximum value as a finite field, and selecting multiple secret coefficients from the finite field, a second polynomial is constructed based on the secret coefficients and the sub-feature vectors after the second feature is split. This ensures that when the assigned second result is sent to the MPC node, the MPC node cannot obtain the specific values of each sub-feature vector after the second feature is split, thereby ensuring that the worker's data is not leaked.
[0031] In one embodiment, the process of obtaining the initial aggregation result in step S13 includes:
[0032] The number of neighbors of the associated worker is determined in the MPC node, and an initial aggregation result is obtained based on the number of neighbors and the fourth result sent to the MPC node by the neighbors;
[0033] Step S14 involves obtaining the first aggregation result by performing a reconstruction aggregation process on the initial aggregation result to obtain the first aggregation result.
[0034] The formula for calculating the initial aggregation result is as follows: ;
[0035] The formula for calculating the first aggregation result is:
[0036] ;
[0037] in, Let |N(i)| be the initial aggregation result of the r-th MPC node, |N(i)| be the number of neighbors of worker i, and N(i) be the list of neighbors of worker i. For the fourth result sent to the r-th MPC node by the neighbor j of worker i, Agg i The first aggregation result of worker i is t, where t is the preset threshold and s is the s-th MPC node.
[0038] In this application, a two-stage mechanism of "initial aggregation based on the number of neighbors and final aggregation based on reconstruction" is adopted to efficiently realize privacy-preserving collaborative aggregation on graph structure data while ensuring information theory security. This not only meets the needs of graph neural networks for neighbor information fusion, but also flexibly controls security and fault tolerance through preset thresholds, providing a feasible privacy computing solution for sensitive scenarios such as employment platforms.
[0039] In one embodiment, the formula for obtaining the third feature in step S14 is:
[0040] ;
[0041] in, The third feature associated with worker i, W is a non-linear activation function. k This is the weight matrix. The second feature is represented by ⊕, which indicates the concatenation vector. Agg i This is the first aggregation result for worker i.
[0042] In this application, by using the formula By updating the features, the updated features can be combined with the features of the neighbors, making the updated third feature more consistent with the actual situation.
[0043] In one embodiment, the formula for obtaining the global parameters in step S15 is:
[0044] ;
[0045] ;
[0046] ;
[0047] Among them, W k Here is the weight matrix, and η is the learning rate. For gradient updates, For the loss function L i Gradient of the model parameter θ; N(0, σ) 2 () has a mean of 0 and a variance of σ. 2 Differential privacy noise; θ old θ is the global parameter calculated in the previous iteration. new Here, N represents the global parameters calculated in the current iteration, and N is the number of worker terminals. For noisy gradients, The first feature associated with worker i, This is the third feature of worker i.
[0048] In this application, by using a worker terminal , Calculate the noisy gradient and apply it to the employment platform. The global parameters are calculated and sent to the worker's terminal. This ensures that the process of generating node embedding features using the global encoder does not take place on the worker platform, thus ensuring the security of the node embedding features.
[0049] In one embodiment, the process of generating the node embedding features in step S1 includes:
[0050] Determine the second aggregation result corresponding to the stable global parameters of the global encoder;
[0051] Based on the second aggregation result and the first feature, the node embedding features of the associated worker are generated using the trained global encoder.
[0052] In one embodiment, the formula for calculating the comprehensive score in step S4 is as follows: ;
[0053] Among them, [U i [b] represents the comprehensive score for worker i. i [q] represents the labor cost of worker i. i [c] represents the quality score of worker i. i[ ] represents the collaborative ability score of worker i, with α and β as weights.
[0054] In this application, by determining the second aggregation result corresponding to the stable global parameters of the global encoder, and based on the second aggregation result and the first feature, the trained global encoder is used to generate node embedding features of associated workers. This can provide the employment platform with high-quality node embedding features that can be directly used for intelligent decision-making while fully protecting the data privacy of all parties, thereby empowering key business scenarios such as recommendation, risk control, and matching.
[0055] A worker quality and collaboration ability assessment system based on MPC, the system comprising:
[0056] The feature generation module is used to obtain the first feature of the associated worker and generate the node embedding feature of the associated worker based on the first feature and the trained global encoder.
[0057] The feature splitting module is used to construct the first polynomial corresponding to each sub-feature vector after the node embedding feature splitting; the first polynomial includes independent variables associated with the MPC node;
[0058] The scoring calculation module is used to assign values to the independent variables in the first polynomial and secretly share the first result after assignment to the associated MPC node, so that the MPC node generates the quality score and collaboration ability score of the associated worker based on the first result and the second result sent to the MPC node by the neighbor of the associated worker.
[0059] The comprehensive evaluation module is used to encrypt and send the labor cost of the associated worker to the MPC node, so that the MPC node can obtain a comprehensive score of the associated worker based on the labor cost, the quality score and the collaboration ability score.
[0060] The aforementioned MPC-based worker quality and collaboration ability assessment system obtains the first feature of associated workers and generates node embedding features of associated workers based on the first feature and a trained global encoder. The global encoder is trained on the worker's terminal, allowing training to be completed even when the employment platform cannot access the plaintext gradients of associated workers, thus protecting worker privacy. By constructing a first polynomial corresponding to each sub-feature vector after decomposing the node embedding features, and including independent variables associated with MPC nodes, the system assigns values to the independent variables in the first polynomial and secretly shares the first result with the associated MPC nodes. This allows the MPC nodes to generate quality and collaboration ability scores for associated workers based on the first result and the second result sent to the MPC nodes by the associated workers' neighbors. This enables the quality and collaboration ability assessment of associated workers to be completed at the MPC nodes, ensuring that the employment platform cannot obtain the quality and collaboration ability scores of associated workers. By encrypting and sending the labor costs of associated workers to the MPC node, the MPC node can obtain a comprehensive score for the associated workers based on their labor costs, quality scores, and collaboration ability scores. This allows for a comprehensive evaluation of the associated workers by combining their quality and collaboration ability. Attached Figure Description
[0061] Figure 1 This is an application environment diagram of an MPC-based worker quality and collaboration ability assessment method in one embodiment;
[0062] Figure 2 This is a flowchart illustrating a worker quality and collaboration ability assessment method based on MPC in one embodiment.
[0063] Figure 3 This is a schematic diagram of the overall structure in one embodiment;
[0064] Figure 4 This is a block diagram of a worker quality and collaboration ability assessment system based on MPC in one embodiment. Detailed Implementation
[0065] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0066] The worker quality and collaboration ability assessment method based on MPC provided in this application embodiment can be applied to, for example... Figure 1In the application environment shown, worker terminal 102 interacts with MPC node 104 and employment platform 106 via wired / wireless channels. S1: Obtain the first feature of the associated worker and generate node embedding features of the associated worker based on the first feature and a trained global encoder; the global encoder is trained on the worker terminal. S2: Construct the first polynomial corresponding to each sub-feature vector after the node embedding feature is split; the first polynomial includes independent variables associated with the MPC node. S3: Assign values to the independent variables in the first polynomial and secretly share the first result with the associated MPC node, so that the MPC node generates the associated worker's quality score and collaboration ability score based on the first result and the associated worker's neighbors. S4: Encrypt and send the associated worker's employment cost to the MPC node, so that the MPC node obtains the associated worker's comprehensive score based on the associated worker's employment cost, quality score, and collaboration ability score. Worker terminal 102 can be, but is not limited to, various personal computers, laptops, smartphones, tablets, IoT devices, etc.
[0067] In one embodiment, such as Figure 2 As shown, a method for evaluating worker quality and collaboration ability based on MPC is provided, and this method is applied to... Figure 1 Taking the worker terminal in the example, the explanation includes the following steps:
[0068] S1. Obtain the first feature of the associated worker, and generate the node embedding feature of the associated worker based on the first feature and the trained global encoder; the training of the global encoder is carried out in the worker terminal.
[0069] In this context, a worker terminal is a personal terminal associated with a worker uploading a first characteristic. The worker terminal uses a private key to encrypt the first characteristic uploaded by the associated worker to prevent data leakage. An associated worker refers to the object that used that worker terminal to upload the first characteristic. For example, if worker a uses worker terminal A to upload a characteristic, and worker b uses worker terminal B to upload a characteristic, then worker a is the associated worker of worker terminal A, and worker b is the associated worker of worker terminal B.
[0070] The first feature includes, but is not limited to, the type of equipment and sensors used by the associated worker in history, the distribution of historically collected data, and the numerical features derived from the quantification of current geographical location information.
[0071] The process of generating node embedding features involves inputting the first feature into the trained global encoder and outputting the node embedding features associated with the worker.
[0072] The training of the global encoder is carried out on the worker terminal, which ensures that the model parameters of the global encoder are never accessed by the platform or any single point entity, thus achieving strict end-to-end protection of the data.
[0073] S2. Construct the first polynomial corresponding to each sub-feature vector after the node embedding feature is split; the first polynomial includes the independent variable associated with the MPC node;
[0074] The splitting process involves directly decomposing the node embedding feature into multiple independent sub-feature vectors. For example, if the node embedding feature is [134,−251,908,421], then the split sub-feature vectors are 134, -251, 908, and 421. Each sub-feature vector after the node embedding feature is split corresponds to a first polynomial.
[0075] MPC (Secure Multi-Party Computation) nodes execute secure computation protocols based on additive secret sharing or Shamir secret sharing, supporting secure addition, secure multiplication, secure comparison, and secure random number generation.
[0076] Specifically, the first maximum value among the sub-feature vectors after the node embedding feature is split is obtained; a prime number greater than the first maximum value is taken as the first finite field, and multiple first secret coefficients are selected from the first finite field; based on the first secret coefficients and the sub-feature vectors after the first feature is split, a first polynomial is constructed.
[0077] S3. Assign values to the independent variables in the first polynomial, and secretly share the first result after assignment to the associated MPC node, so that the MPC node can generate the quality score and collaboration ability score of the associated worker based on the first result and the neighbor of the associated worker.
[0078] Specifically, when secretly sharing the first result with the associated MPC node, the value assigned to the independent variable determines the MPC node to which the first result is sent. For example, if the independent variable in the first polynomial is 3, then the first result obtained with the independent variable set to 3 will be sent to the MPC node numbered 3.
[0079] The first result sent to the MPC node is a specific value, but the MPC node cannot use this value to deduce the split sub-feature vectors. This ensures that the first feature of the associated worker is not leaked.
[0080] The steps for obtaining the second result sent by the worker's neighbor to the MPC node are the same as those for obtaining the first result, except that the node embedding features of the worker are replaced with the node embedding features of the neighbor. Specifically, the first features of the neighbor are obtained, and the node embedding features of the neighbor are generated based on the first features of the neighbor and the trained global encoder; the first polynomial corresponding to each sub-feature vector after the node embedding features of the neighbor are decomposed is constructed; the independent variables in the first polynomial are assigned values, and the assigned second result is secretly shared with the associated MPC node.
[0081] After receiving the first result from the associated worker and the second result from the associated worker's neighbors, the MPC node uses the trained evaluation model to generate a quality score and a collaboration ability score for the associated worker. Specifically, the average of the second result and the first result are input into the evaluation model, which outputs the quality score and collaboration ability score for the associated worker. The expressions for obtaining the quality score and collaboration ability score for the associated worker are as follows: , [q i [c] represents the quality score of worker i. i [Score the collaborative ability of worker i] To evaluate the model, The average of the encrypted second result, [e i [The first result is] , The first result sent from worker terminal associated with worker i to the m-th MPC node, [] represents the encrypted information.
[0082] The neighbors of an associated worker refer to other workers who have a historical working relationship with the associated worker.
[0083] Quality score is a rating of the quality of a worker's task completion. Collaboration score is a rating of a worker's ability to collaborate with other workers to complete a task.
[0084] S4. Encrypt and send the labor cost of associated workers to the MPC node, so that the MPC node can obtain a comprehensive score of associated workers based on their labor cost, quality score, and collaboration ability score.
[0085] Among them, the labor cost of associated workers is sent to the MPC node by the worker terminal through an encrypted channel.
[0086] The formula for calculating the overall score can be: , where [U i [b] represents the comprehensive score for worker i. i [q] represents the labor cost of worker i. i [c] represents the quality score of worker i. i[Score the collaborative ability of worker i.]
[0087] In the aforementioned MPC-based worker quality and collaboration ability assessment method, a first feature of the associated worker is obtained, and node embedding features of the associated worker are generated based on the first feature and a trained global encoder. The global encoder is trained on the worker's terminal, thus completing the training of the global encoder without the employment platform accessing the plaintext gradient of the associated worker, protecting worker privacy. A first polynomial is constructed corresponding to each sub-feature vector after the node embedding feature decomposition. This first polynomial includes independent variables associated with the MPC node. Values are assigned to the independent variables in the first polynomial, and the first result is secretly shared with the associated MPC node. Based on the first result and the second result sent to the MPC node by the associated worker's neighbors, the associated worker's quality score and collaboration ability score are generated. This allows the assessment of the associated worker's quality and collaboration ability to be completed at the MPC node, ensuring that the employment platform cannot obtain the associated worker's quality and collaboration ability scores. By encrypting and sending the labor costs of associated workers to the MPC node, the MPC node can obtain a comprehensive score for the associated workers based on their labor costs, quality scores, and collaboration ability scores. This allows for a comprehensive evaluation of the associated workers by combining their quality and collaboration ability.
[0088] In one embodiment, the training process of the global encoder in step S1 includes:
[0089] S11. Receive the neighbor list sent by the employment platform and obtain the second feature updated from the first feature of the associated worker; the neighbor list includes the unique identifiers of workers who have a cooperative relationship with the associated worker.
[0090] Specifically, the process of obtaining the second feature after the first feature is updated includes: the worker terminal constructs a third polynomial based on the sub-feature vectors after the first feature is split; the third polynomial includes independent variables associated with the MPC node number; the worker terminal assigns values to the independent variables in the third polynomial and sends the assigned fifth result to the corresponding MPC node, so that the MPC node aggregates the sixth result of each neighbor of the worker to obtain the first initial aggregation result, and sends the first initial aggregation result to the worker terminal; the worker terminal receives the first initial aggregation result and obtains the second feature based on the reconstructed third aggregation result and the first feature.
[0091] S12. Construct a second polynomial based on the sub-feature vectors after the second feature split; the second polynomial includes independent variables associated with the MPC nodes;
[0092] The splitting process involves directly dividing the second feature into multiple independent sub-feature vectors. Each sub-feature vector after the second feature split corresponds to a second polynomial.
[0093] S13. Assign values to the independent variables in the second polynomial and send the assigned third result to the corresponding MPC node so that the MPC node can aggregate the fourth result of each neighbor of the associated worker to obtain the initial aggregation result and send the initial aggregation result to the worker terminal.
[0094] Specifically, when secretly sharing the third result, the value assigned to the independent variable determines the value at which the resulting third result is sent to the MPC node encoded with that value. The assigned third result is then distributed to the corresponding MPC node via an encrypted communication channel.
[0095] The third result sent to the MPC node is a specific value, but the MPC node cannot use this value to deduce the split sub-feature vectors, thus protecting the second feature of the associated worker.
[0096] The MPC node aggregates the fourth result of each neighbor of the associated worker to obtain the initial aggregation result, which is performed in dense state.
[0097] S14. Receive the initial aggregation result, reconstruct the first aggregation result and the second feature based on the initial aggregation result, obtain the third feature, and send the noisy gradient obtained based on the third feature to the employment platform so that the employment platform can calculate the global parameters of the global encoder based on the noisy gradient.
[0098] The process of obtaining the third feature based on the first aggregation result and the second feature is essentially an update of the second feature. Each feature update is performed at a different layer in the graph neural network.
[0099] Global parameters are the parameters to be trained in the global encoder. In each repeated iteration, the global parameters obtained in the current iteration are updated based on the global parameters obtained in the previous iteration.
[0100] S15. Replace the second feature in steps S12 and S14 with the third feature, and repeat steps S12, S13 and S14 until the global parameters calculated in the labor platform are stable, and obtain the trained global encoder.
[0101] Global parameter stability means that the difference between the global parameters obtained in the current iteration and the global parameters obtained in the previous iteration is less than a preset difference.
[0102] The calculation of global parameters is carried out on the user platform. After obtaining stable global parameters, the user platform will send the global parameters to the worker terminal. The worker terminal receives the global parameters and thus obtains the trained global encoder.
[0103] In this embodiment, step S11 involves receiving a neighbor list sent by the employment platform and obtaining the updated second feature of the associated worker after the first feature is obtained; the neighbor list includes unique identifiers of workers with cooperative relationships with the associated worker; step S12 involves constructing a second polynomial based on the sub-feature vectors after splitting the second feature; the second polynomial includes independent variables associated with the MPC node; step S13 involves assigning values to the independent variables in the second polynomial and sending the assigned third result to the corresponding MPC node, so that the MPC node aggregates the fourth result of each neighbor of the associated worker to obtain an initial aggregation result, which is then sent to the worker terminal; step S14 involves receiving the initial aggregation result and, based on the initial aggregation result... After reconstructing the first aggregation result and the second feature, a third feature is obtained. The noisy gradient obtained based on the third feature is sent to the employment platform so that the employment platform can calculate the global parameters of the global encoder based on the noisy gradient. S15, the second feature in steps S12 and S14 is replaced with the third feature, and steps S12, S13 and S14 are repeated until the global parameters calculated in the employment platform are stable, and the trained global encoder is obtained. In this way, while ensuring the data privacy of each worker, the features of the neighbors are securely aggregated by MPC, and distributed collaborative training based on the cooperative graph structure is realized, and finally a high-performance and privacy-secure global encoder model is obtained.
[0104] In one embodiment, step S11 includes:
[0105] Send a first object that has a cooperative relationship with the associated worker to the employment platform. When the employment platform finds an associated worker among the second objects sent by the first object, it identifies the first object as a neighbor of the associated worker and sends a list of neighbors consisting of unique identifiers of the neighbors to the worker terminal of the associated worker. The second object is a worker that has a cooperative relationship with the first object.
[0106] Receive the neighbor list sent by the employment platform.
[0107] The first object is sent to the employment platform through the worker's terminal associated with the worker. Specifically, in response to the first object input operation, the worker terminal identifies the first object that has a cooperative relationship with the associated worker; in response to the first object sending operation, it sends the input first object to the employment platform.
[0108] When determining the neighbors of associated workers, if an associated worker exists in the second object sent by the first object to the employment platform, then the first object is considered a neighbor of the associated worker. For example, if A sends C and D, who have a cooperative relationship, to the platform, C sends B, who has a cooperative relationship, to the platform, and D sends A, who has a cooperative relationship, to the platform, then A's only neighbor is D, and not C.
[0109] When a first object with a cooperative relationship with an associated worker is sent to the platform, the unique identifiers of the associated worker and the first object are sent, and these unique identifiers are bound together. When the first object sends a second object with a cooperative relationship to the platform, the unique identifiers of both the first and second objects are sent, and these unique identifiers are bound together.
[0110] In this embodiment, by sending a first object that has a cooperative relationship with the associated worker to the employment platform, the employment platform determines the first object as the neighbor of the associated worker when there is an associated worker in the second object sent by the first object, and sends a neighbor list consisting of the unique identifiers of the neighbors to the worker terminal of the associated worker; the second object is the worker that has a cooperative relationship with the first object, so as to ensure that the neighbor list sent by the employment platform consists of unique identifiers of neighbors who actually have a cooperative relationship.
[0111] In one embodiment, step S12 includes:
[0112] Obtain the maximum value among the sub-feature vectors after the second feature split;
[0113] A finite field is formed using prime numbers greater than the maximum value, and multiple secret coefficients are selected from the finite field;
[0114] Construct a second polynomial based on the sub-feature vectors after splitting the secret coefficient and the second feature;
[0115] The expression for the second polynomial Q(x) is:
[0116] ;
[0117] Where h is the sub-feature vector after the second feature split, x is the independent variable, and r t-1 Let p be the (t-1)th secret coefficient, and p be a prime number. The finite field is represented as Z. p ={0,1,2,…,p-1}.
[0118] The sub-feature vectors after the second feature decomposition are all numerical features, so the maximum value of each sub-feature vector can be determined. For example, if the sub-feature vectors are 134, -251, 908, and 421, then the maximum value is 908.
[0119] The number of secret coefficients is less than the total number of MPC nodes, specifically the result of subtracting one from the preset threshold. The number of secret coefficients satisfies both privacy requirements (anti-collusion) and availability requirements (tolerance for offline / failed nodes). t is the preset threshold, which satisfies t>c and... Where c is the number of MPC nodes allowed to collide, m is the total number of MPC nodes, and s is the number of offline MP nodes that can be tolerated. Further, t = (m / 2) + 1.
[0120] Furthermore, based on the assigned value of x in the second polynomial Q(x), the resulting third result is sent to the x-th MPC node. For example, if x is 3, the resulting third result is sent to the 3rd MPC node. The third result is... .
[0121] In this embodiment, by obtaining the maximum value of each sub-feature vector after the second feature is split, using prime numbers greater than the maximum value as a finite field, and selecting multiple secret coefficients from the finite field, a second polynomial is constructed based on the secret coefficients and the sub-feature vectors after the second feature is split. This ensures that when the assigned second result is sent to the MPC node, the MPC node cannot obtain the specific values of each sub-feature vector after the second feature is split, thereby ensuring that the worker's data is not leaked.
[0122] In one embodiment, the process of obtaining the initial aggregation result in step S13 includes:
[0123] The number of neighbors of the associated worker is determined in the MPC node, and the initial aggregation result is obtained based on the number of neighbors and the fourth result sent to the MPC node by the neighbors;
[0124] Step S14 involves obtaining the first aggregation result by performing a reconstruction aggregation process on the initial aggregation result to obtain the first aggregation result.
[0125] The formula for calculating the initial aggregation result is: ;
[0126] The formula for calculating the first aggregation result is:
[0127] ;
[0128] in, Let |N(i)| be the initial aggregation result of the r-th MPC node, |N(i)| be the number of neighbors of worker i, and N(i) be the list of neighbors of worker i. For the fourth result sent to the r-th MPC node by the neighbor j of worker i, Agg i The first aggregation result of worker i is t, where t is the preset threshold and s is the s-th MPC node.
[0129] The calculation steps for the fourth result of the neighbor are the same as those for the third result, except that the second feature of the associated worker is replaced with the second feature of the neighbor.
[0130] The initial aggregation result is calculated in the MPC node. After obtaining the initial aggregation result, the MPC sends the initial aggregation result to the worker terminal. The worker terminal receives the initial aggregation result and performs reconstruction aggregation processing on the initial aggregation result to obtain the first aggregation result.
[0131] In this embodiment, a two-stage mechanism of "initial aggregation based on the number of neighbors and final aggregation based on reconstruction" is adopted to efficiently realize privacy-preserving collaborative aggregation on graph structure data while ensuring information theory security. This not only meets the needs of graph neural networks for neighbor information fusion, but also flexibly controls security and fault tolerance through preset thresholds, providing a feasible privacy computing solution for sensitive scenarios such as employment platforms.
[0132] In one embodiment, the formula for obtaining the third feature in step S14 is:
[0133] ;
[0134] in, The third feature associated with worker i, W is a non-linear activation function. k This is the weight matrix. The second feature is represented by ⊕, which indicates the concatenation vector. Agg i This is the first aggregation result for worker i.
[0135] In this embodiment, the formula is used. By updating the features, the updated features can be combined with the features of the neighbors, making the updated third feature more consistent with the actual situation.
[0136] In one embodiment, the formula for obtaining the global parameters in step S15 is:
[0137] ;
[0138] ;
[0139] ;
[0140] Among them, W k Here is the weight matrix, and η is the learning rate. For gradient updates, For the loss function L i The gradient with respect to the model parameters θ, N(0, σ) 2 () has a mean of 0 and a variance of σ. 2 Differential privacy noise, θ old θ is the global parameter calculated in the previous iteration. new Here, N represents the global parameters calculated in the current iteration, and N is the number of worker terminals. For noisy gradients, The first feature associated with worker i, This is the third feature of worker i.
[0141] The calculation of global parameters takes place on the worker platform. Specifically, the worker terminal first uses... and Calculate the noisy gradient and send it to the employment platform. The employment platform then... Global parameters are calculated and sent to the worker terminal, where the global encoder is used to generate node embedding features.
[0142] In this embodiment, by using a worker terminal , Calculate the noisy gradient and apply it to the employment platform. The global parameters are calculated and sent to the worker's terminal. This ensures that the process of generating node embedding features using the global encoder does not take place on the worker platform, thus ensuring the security of the node embedding features.
[0143] In one embodiment, the process of generating node embedding features in step S1 includes:
[0144] Determine the second aggregation result corresponding to the stable global parameters of the global encoder;
[0145] Based on the second aggregation result and the first feature, the node embedding features of the associated workers are generated using the trained global encoder.
[0146] The process of determining the second aggregation result includes: S11, receiving the neighbor list sent by the platform and obtaining the updated second feature of the worker's associated worker from the worker terminal; the neighbor list includes neighbors with cooperative relationships with the associated worker; S12, constructing a second polynomial based on the sub-feature vectors after splitting the second feature; the second polynomial includes an independent variable associated with the MPC node's number; S13, assigning values to the independent variables in the second polynomial and sending the assigned third result to the corresponding MPC node, so that the MPC node aggregates the fourth result of each neighbor of the associated worker to obtain the initial aggregation result. S14. Send the initial aggregation result to the worker terminal; receive the initial aggregation result, and obtain the third feature based on the first aggregation result and the second feature reconstructed from the initial aggregation result. Send the noisy gradient obtained based on the third feature to the employment platform so that the employment platform can calculate the global parameters of the global encoder based on the noisy gradient; S15. Replace the second feature in steps S12 and S14 with the third feature, and repeat steps S12, S13 and S14 until the global parameters calculated in the employment platform are stable, and use the first aggregation result obtained when the global parameters are stable as the second aggregation result.
[0147] The expression for generating the node embedding features of associated workers using the trained global encoder is as follows: , where e i f is the node embedding feature associated with worker i. θ For the trained global encoder, The first feature associated with worker i, This is the result of the second aggregation.
[0148] In this embodiment, by determining the second aggregation result corresponding to the stable global parameters of the global encoder, and based on the second aggregation result and the first feature, the trained global encoder is used to generate node embedding features of associated workers. This can provide the employment platform with high-quality node embedding features that can be directly used for intelligent decision-making while fully protecting the data privacy of all parties, thereby empowering key business scenarios such as recommendation, risk control, and matching.
[0149] In one embodiment, the formula for calculating the comprehensive score in step S4 is as follows: ;
[0150] Among them, [U i [b] represents the comprehensive score for worker i. i [q] represents the labor cost of worker i. i [c] represents the quality score of worker i. i [ ] represents the collaborative ability score of worker i, with α and β as weights.
[0151] α and β reflect the contribution of quality and collaboration capabilities to the overall score. The overall score is calculated within the MPC node, ensuring the quality score [q] is accurate. i Collaboration ability score [c] i and labor costs [b i All are protected and do not require decryption on the platform.
[0152] Specifically, (1) the MPC node receives the encrypted shares [α] and [β] of weights α and β sent by the platform through the secret sharing mechanism; the MPC node performs secret addition and multiplication locally to calculate the numerator Num of the comprehensive scoring formula. i share [Num i ]:[Num i ]=[αq i ]+[βc i (mod p). Constant multiplication [αq] i ] and [βc i ] It relies on the non-interactive constant multiplication homomorphism implementation of Shamir's secret sharing, which has high computational efficiency. (2) Since the division operation needs to be transformed into the multiplication operation in the secret sharing, the MPC nodes collectively execute the interactive iterative inversion protocol, and based on the labor cost share [b i ]Calculate the inverse share [1 / b i (3) MPC nodes collaboratively execute the interactive dense-state multiplication protocol, and transfer the numerator share [Num] i ] and the inverse share [1 / b i Multiply by , and calculate the final comprehensive score [U] i ]=[Num i ]×[1 / b i ].
[0153] In this embodiment, by using Calculate a comprehensive score for associated workers, which allows for a holistic evaluation of them by combining their quality and collaborative abilities.
[0154] In some embodiments, the MPC node, based on a secure ranking network protocol for secure comparison, performs encrypted ranking of the comprehensive scores of each associated worker in a encrypted state. Then, based on the preset labor demand in the employment platform and the ranking results of the comprehensive scores, it determines the target workers to complete the tasks posted by the employment platform. For example, if the labor demand is 5, then the top 5 workers with the highest comprehensive scores are selected as the target workers to complete the tasks posted by the employment platform. Further, the employment platform assigns the tasks to the target workers' terminals and issues incentives to the target workers who complete the tasks based on their labor costs. Payment methods include, but are not limited to, online and offline payments.
[0155] This application also provides an application scenario in which the above-mentioned MPC-based worker quality and collaboration ability assessment method is applied. Specifically, the application of the MPC-based worker quality and collaboration ability assessment method in this scenario is as follows:
[0156] The system framework mainly includes the following three types of entities: (1) Worker terminals associated with workers: refers to personal terminal devices participating in mobile swarm intelligence sensing tasks. In addition to uploading the first feature of associated workers, the worker terminal is also responsible for maintaining the secret topology information of the neighbor list. In the secure neighborhood feature exchange protocol, the worker terminal uses a private key to encrypt the initial first feature, second feature, third feature, and node embedding feature, and constructs a secret sharing share, strictly limiting the plaintext range of the first feature and labor cost, ensuring that the plaintext of the first feature and labor cost exists only in the worker terminal's memory, and is transmitted to the MPC node only in the form of secret sharing. (2) Employment platform, whose main functions include: task release, worker set management, and secure aggregation of global parameters in the global encoder. The employment platform calculates and stores the securely aggregated global parameters, receives the unique identifier of the target worker, and the noisy gradient sent by the worker terminal, ensuring that the employment platform cannot infer any sensitive information of the target worker. (3) Multi-party secure computation nodes (MPC), where m MPC nodes are composed of m independent, mutually untrusted entities or institutions. Set the number of secret coefficients, with a preset threshold less than the total number of MPC nodes. Generally, m=3 or m=5 and t>c are recommended. The configuration is as follows: c is the number of MPC nodes allowed to collide, and s is the number of offline MP nodes that can be tolerated.
[0157] A job platform has launched a high-precision urban air quality monitoring task and is now recruiting a team of workers to collect air pollutant data such as PM2.5 and PM10 in specific urban areas using mobile devices, such as smartphones with environmental sensors or vehicle-mounted devices. The recruitment process must protect workers' sensitive information and recruit high-quality, cooperative workers at a low cost to maximize the platform's benefits. A schematic diagram of the overall structure is shown below. Figure 3 As shown.
[0158] Phase 1: System initialization and global encoder training.
[0159] 1. Determine the neighbor list and the first characteristic. The worker terminal sends the ID (Identifier) of the first object with a cooperative relationship with the associated worker to the employment platform. If the ID of the associated worker is among the IDs of the second object sent by the first object, the employment platform determines the first object as a neighbor of the associated worker and sends a neighbor list consisting of the neighbor IDs to the worker terminal of the associated worker. The worker terminal receives the neighbor list sent by the employment platform. The employment platform constructs a collaboration graph based on the IDs of the associated workers sent by the worker terminals and the objects with cooperative relationships with the associated workers. To protect privacy, the employment platform does not centrally store the complete collaboration graph, but instead sends a neighbor list to the associated worker terminal for each worker. Worker i's worker terminal W i Obtain the first feature of the associated worker. The worker's feature is represented as follows: When k=1, Let k be the first feature of worker i, and k be the feature updated after the kth iteration.
[0160] 2. Secret Sharing Embedded Transmission and Closed-State Aggregation Protocol. The second feature is obtained after calculating the first feature of worker i in the (k-1)th iteration. The required first aggregation result Agg i To prevent neighboring devices from embedding and leaking privacy, the worker terminal will... Convert to secret sharing form And distribute it to m MPC nodes, Convert to secret sharing form The expression for distributing the data to m MPC nodes is: Here, SecretShare(·) is Shamir's secret sharing. This allows the plaintext vector to be split into m parts, and any part smaller than t cannot recover the original vector. Even if an MPC node obtains any t-1 parts or fewer of the m parts, that MPC node cannot infer any information about the features before the split. The worker terminal will... Convert to secret sharing form The steps for distributing the data to m MPC nodes are as follows: worker terminal W i right Each sub-feature vector h after splitting is executed independently of the following steps: worker terminal W i Choose a large prime number p as the finite field Z p ={0,1,2,…,p-1}, where the prime number p is greater than the maximum value in the sub-feature vector h, and a preset threshold t is determined based on security requirements and the number of MPC nodes.
[0161] MPC nodes perform feature aggregation of neighbors in dense mode, ensuring that no MPC node can obtain the plaintext features of its neighbors. Worker i's worker terminal Wi Randomly select t-1 numbers from a finite field as secret coefficients. And construct a second polynomial Q(x) of degree t-1, such that the result of the second polynomial Q(x) at x=0 is the sub-eigenvector h, where .
[0162] worker i's worker terminal W i Calculate the third result at x=1,2,3,…,m as the share [h]. x And the share [h] x Distributed to MPC nodes via encrypted communication channels.
[0163] Since the order of the second polynomial Q(x) is t-1, according to algebraic principles, for any number of shares less than t (i.e., fewer than t equations), it is impossible to determine a unique second polynomial Q(x) within the MPC node, let alone recover the sub-eigenvector h from the second polynomial. For example, in a configuration of m=3 and t=2, a single MPC node or two MPC nodes connected in series cannot deduce the value of the sub-eigenvector h from the shares.
[0164] The MPC node receives the fourth result from all neighbors of the associated worker. Then, based on the number of neighbors and the fourth result sent by the neighbors to the MPC node, the initial aggregation result is obtained. The MPC node needs to collaboratively execute an interactive dense-state multiplication protocol to calculate the initial aggregation result. The formula for calculating the initial aggregation result is: .
[0165] 3. Local embedding reconstruction and third feature. The MPC node will use the initial aggregation result. Return to worker terminal W i Worker Terminal W i After receiving initial aggregation results from at least t MPC nodes, the first aggregation result is reconstructed locally on the worker terminal using Lagrange interpolation. The formula for calculating the first aggregation result is as follows: .
[0166] During the k-th iteration, the third feature in the k-layer graph neural network Using the first aggregation result of the reconstruction Agg i Complete the calculation. .
[0167] 4. Local gradient calculation and safe aggregation. Each worker terminal, based on local data, minimizes the local loss function L. i Calculate gradient update , where η is the learning rate, used to control the update magnitude. For the loss function L iThe gradient with respect to the model parameter θ, .
[0168] To provide privacy protection, worker terminals W i exist Add differential privacy noise N(0, σ) 2 This yields the noisy gradient. The formula for calculating the noisy gradient is: .
[0169] The employment platform calculates global parameters through secure aggregation, using the following formula: .
[0170] Once the global parameters are stable, the trained global encoder is obtained, and the stable global parameters are sent to the worker's terminal to generate node embedding features. This step ensures that the employment platform cannot access the plaintext gradients of any worker.
[0171] Phase Two: Local Reasoning and Embedded Secret Sharing on the Worker Side.
[0172] 1. Node embedding generation. Worker terminal W i Using the global encoder f trained in Phase 1 θ Generate node embedding features e i The expression for generating the node embedding features of associated workers using the trained global encoder is as follows: .
[0173] 2. Embedded Vector Secret Sharing. The worker terminal obtains the first maximum value among the sub-feature vectors after the node's embedded feature is split; a first finite field is defined by prime numbers greater than the first maximum value, and multiple first secret coefficients are selected from this finite field; based on the first secret coefficients and the sub-feature vectors after the first feature split, a first polynomial is constructed. Values are assigned to the independent variables in the first polynomial, and the assigned first result is secretly shared with the associated MPC nodes. This ensures that no single MPC node can recover the plaintext embedding, thus achieving data protection.
[0174] Phase 3: Quality and collaboration capability assessment within MPC nodes.
[0175] 1. Evaluate the model's parameter training. The employment platform selects a small set S of workers with labeled historical data as the training set, and evaluates the parameters by embedding share [E]. i ] and label share Perform dense gradient descent optimization to determine the evaluation model. parameters This makes the evaluation model It has generalization ability. Specifically, through Determine the evaluation model parameters .
[0176] 2. Quality and Collaboration Capability Assessment. An assessment model obtained through training will be used. Based on the first result and the second result sent to the MPC node by the associated worker's neighbors, the quality score of the associated worker is output [q]. i ] and collaboration ability score [c i The expressions for obtaining the quality score and collaboration ability score of the associated workers are as follows: Among them, the evaluation model It can be a multilayer perceptron.
[0177] Phase Four: Comprehensive Score Calculation and Reverse Auction Decision.
[0178] 1. Comprehensive score calculation. The MPC node calculates the overall score based on the generated quality score [q]. i ] and collaboration ability score [c i ] and labor costs [b i The comprehensive score is calculated using the following formula: The overall score calculation is performed in the MPC node to ensure the quality score [q]. i ] and collaboration ability score [c i ] and labor costs [b i All data is protected and does not require decryption on the employment platform.
[0179] 2. Target worker screening and payment calculation. MPC nodes execute a secure ranking network protocol based on secure comparison, performing a comprehensive score [U] for all workers in a closed state. i The encrypted share is used for sorting, and the target workers for completing the tasks posted by the employment platform are determined based on the preset employment demand and the sorting results of the comprehensive score in the employment platform. This process does not reveal the plaintext size relationship of any worker's comprehensive score. The MPC node executes the encrypted version of the VCG (Vickrey–Clarke–Groves) mechanism in encrypted state, and calculates the encrypted share of the payment price for each target worker based on the worker set and the encrypted share of the employment cost of all workers. i The employment platform only receives the target worker's ID and the employment cost.
[0180] Phase 5: Task Allocation and Incentive Distribution
[0181] The employment platform assigns urban air quality monitoring tasks or sub-tasks to worker terminals corresponding to the target worker's ID; and distributes them according to the payment price p for each target worker. i Incentives are distributed to target workers through a pre-set payment system. Throughout the task allocation and incentive distribution process, the employment platform only obtains the plaintext ID of the target worker and the plaintext payment price p. iThe employment platform cannot access the primary characteristics of all participating workers, the plaintext employment costs of all participating workers, the plaintext quality scores, plaintext collaboration ability scores, plaintext overall utility scores of all participating workers, or any sensitive information about non-target workers.
[0182] This application achieves end-to-end privacy protection for sensitive worker data through a joint mechanism of federated learning and MPC, enabling secure, fair, and efficient worker recruitment. The recruitment platform receives plaintext results from the MPC nodes: it assigns tasks based on the target worker ID and pays corresponding incentives, ensuring the platform cannot access the worker's raw data, model parameters, or plaintext recruitment information, thus achieving end-to-end privacy protection. Furthermore, this method integrates worker quality, collaborative ability, and recruitment costs into a unified comprehensive scoring function. All calculations are securely completed within the MPC nodes, without the need for sensitive data decryption or state transitions, significantly improving the system utility and task completion efficiency of the recruitment scheme. The recruitment platform only receives the target worker ID and its plaintext payment price from the decrypted output of the MPC nodes, preventing access to any other worker's sensitive information, ensuring the fairness of incentive allocation, and minimizing the risk of side-channel leakage.
[0183] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0184] Based on the same inventive concept, this application also provides an MPC-based worker quality and collaboration ability assessment system for implementing the aforementioned MPC-based worker quality and collaboration ability assessment method. The solution provided by this system is similar to the implementation scheme described in the above method. Therefore, the specific limitations of one or more MPC-based worker quality and collaboration ability assessment system embodiments provided below can be found in the limitations of the MPC-based worker quality and collaboration ability assessment method described above, and will not be repeated here.
[0185] In one embodiment, such as Figure 4 As shown, an MPC-based worker quality and collaboration ability assessment system is provided, including:
[0186] The feature generation module is used to obtain the first feature of the associated worker and generate the node embedding feature of the associated worker based on the first feature and the trained global encoder; the training of the global encoder is carried out in the worker terminal.
[0187] The feature splitting module is used to construct the first polynomial corresponding to each sub-feature vector after the node embedding feature splitting; the first polynomial includes the independent variables associated with the MPC node;
[0188] The scoring calculation module is used to assign values to the independent variables in the first polynomial and secretly share the first result after assignment to the associated MPC node, so that the MPC node can generate the quality score and collaboration ability score of the associated worker based on the first result and the second result sent to the MPC node by the neighbor of the associated worker.
[0189] The comprehensive evaluation module is used to encrypt and send the labor costs of associated workers to the MPC nodes, so that the MPC nodes can obtain a comprehensive score of the associated workers based on their labor costs, quality scores, and collaboration ability scores.
[0190] The modules in the aforementioned MPC-based worker quality and collaboration ability assessment system can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the computer device's memory as software, so that the processor can call and execute the corresponding operations of each module.
[0191] In one embodiment, a computer device is also provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps in the above method embodiments.
[0192] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the steps in the above method embodiments.
[0193] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above method embodiments.
[0194] Those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments described above. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.
[0195] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0196] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A worker quality and collaboration ability assessment method based on MPC, applied to worker terminals, characterized in that, The method includes: S1. Obtain the first feature of the associated worker, and generate the node embedding feature of the associated worker based on the first feature and the trained global encoder; S2. Construct the first polynomial corresponding to each sub-feature vector after the node embedding feature is split; the first polynomial includes the independent variable associated with the MPC node; S3. Assign values to the independent variables in the first polynomial, and secretly share the first result after assignment to the associated MPC node, so that the MPC node generates the quality score and collaboration ability score of the associated worker based on the first result and the second result sent to the MPC node by the neighbor of the associated worker. S4. Encrypt and send the labor cost of the associated worker to the MPC node, so that the MPC node can obtain a comprehensive score of the associated worker based on the labor cost, the quality score and the collaboration ability score of the associated worker; The training process of the global encoder in step S1 includes: S11. Receive the neighbor list sent by the employment platform, and obtain the second feature updated from the first feature of the associated worker; the neighbor list includes unique identifiers of workers who have a cooperative relationship with the associated worker; S12. Construct a second polynomial based on the sub-feature vectors after the second feature split; the second polynomial includes independent variables associated with the MPC node; S13. Assign values to the independent variables in the second polynomial, and send the assigned third result to the corresponding MPC node so that the MPC node aggregates the fourth result of each neighbor of the associated worker to obtain an initial aggregation result, and sends the initial aggregation result to the worker terminal. S14. Receive the initial aggregation result, and obtain the third feature based on the first aggregation result reconstructed from the initial aggregation result and the second feature. Send the noisy gradient obtained based on the third feature to the employment platform so that the employment platform can calculate the global parameters of the global encoder based on the noisy gradient. S15. Replace the second feature in steps S12 and S14 with the third feature, and repeat steps S12, S13 and S14 until the global parameters calculated in the labor platform are stable, and obtain the trained global encoder.
2. The method according to claim 1, characterized in that, Step S11 includes: A first object that has a cooperative relationship with the associated worker is sent to the employment platform, so that when the employment platform finds the associated worker among the second objects sent by the first object, the first object is identified as the neighbor of the associated worker, and a neighbor list consisting of the unique identifiers of the neighbors is sent to the worker terminal of the associated worker; the second object is the worker that has a cooperative relationship with the first object; Receive the neighbor list sent by the employment platform.
3. The method according to claim 1, characterized in that, Step S12 includes: Obtain the maximum value among the sub-feature vectors after the second feature split; A finite field is defined by prime numbers greater than the maximum value, and multiple secret coefficients are selected from the finite field; Based on the secret coefficients and the sub-feature vectors after the second feature split, a second polynomial is constructed; The expression for the second polynomial Q(x) is: ; Where h is the sub-feature vector after the second feature split, x is the independent variable, and r t-1 Let p be the (t-1)th secret coefficient, and p be a prime number.
4. The method according to claim 1, characterized in that, Step S13, which obtains the initial aggregation result, includes: The number of neighbors of the associated worker is determined in the MPC node, and an initial aggregation result is obtained based on the number of neighbors and the fourth result sent to the MPC node by the neighbors; Step S14 involves obtaining the first aggregation result by performing a reconstruction aggregation process on the initial aggregation result to obtain the first aggregation result. The formula for calculating the initial aggregation result is as follows: ; The formula for calculating the first aggregation result is: ; in, Let |N(i)| be the initial aggregation result of the r-th MPC node, |N(i)| be the number of neighbors of worker i, and N(i) be the list of neighbors of worker i. For the fourth result sent to the r-th MPC node by the neighbor j of worker i, Agg i The first aggregation result of worker i is t, where t is the preset threshold and s is the s-th MPC node.
5. The method according to claim 1, characterized in that, The formula for obtaining the third feature in step S14 is: ; in, The third feature associated with worker i, W is a non-linear activation function. k This is the weight matrix. The second feature is represented by ⊕, which indicates the concatenation vector. Agg i This is the first aggregation result for worker i.
6. The method according to claim 1, characterized in that, The formula for obtaining the global parameters in step S15 is: ; ; ; Among them, W k Here is the weight matrix, and η is the learning rate. For gradient updates, For loss function L i The gradient with respect to the model parameter θ; N(0, σ 2 () has a mean of 0 and a variance of σ 2 Differential privacy noise; θ old θ is the global parameter calculated in the previous iteration. new Here, N represents the global parameters calculated in the current iteration, and N is the number of worker terminals. For noisy gradients, The first feature associated with worker i, This is the third characteristic of worker i.
7. The method according to claim 1, characterized in that, The process of generating node embedding features in step S1 includes: Determine the second aggregation result corresponding to the stable global parameters of the global encoder; Based on the second aggregation result and the first feature, the node embedding features of the associated worker are generated using the trained global encoder.
8. The method according to claim 1, characterized in that, The formula for calculating the comprehensive score in step S4 is as follows: ; Among them, [U i [b] represents the comprehensive score for worker i. i [q] represents the labor cost of worker i. i [c] represents the quality score of worker i. i [ ] represents the collaborative ability score of worker i, with α and β as weights.
9. A worker quality and collaboration ability assessment system based on MPC, used to perform the method according to any one of claims 1-8, characterized in that, The system includes: The feature generation module is used to obtain the first feature of the associated worker and generate the node embedding feature of the associated worker based on the first feature and the trained global encoder. The feature splitting module is used to construct the first polynomial corresponding to each sub-feature vector after the node embedding feature splitting; the first polynomial includes independent variables associated with the MPC node; The scoring calculation module is used to assign values to the independent variables in the first polynomial and secretly share the first result after assignment to the associated MPC node, so that the MPC node generates the quality score and collaboration ability score of the associated worker based on the first result and the second result sent to the MPC node by the neighbor of the associated worker. The comprehensive evaluation module is used to encrypt and send the labor cost of the associated worker to the MPC node, so that the MPC node can obtain a comprehensive score of the associated worker based on the labor cost, the quality score and the collaboration ability score.
Citation Information
Patent Citations
Crowd sensing method and system based on blockchain
CN112053043A
Shapley value and multi-arm bandit machine-based worker recruitment method in crowd sensing
CN118297322A