Method and device for joint training of autoencoding model, and anomaly detection method and device
By deploying encoding and decoding networks on the client and server side, and using encryption technology to process and transmit data, the data island problem is solved, and the self-encoding model training and abnormal detection under privacy protection is realized, improving the accuracy of the model.
Patent Information
- Application Number
- CN202210756064.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-06-29
- Publication Date
- 2025-08-26
- Estimated Expiration
- 2042-06-29
AI Technical Summary
In the context of big data, the data island phenomenon makes it difficult to integrate data from different platforms, and it is impossible to safely conduct multi-party joint training of machine learning models, especially on the premise of ensuring data privacy.
The joint training self-coding model method based on privacy protection is adopted. By deploying the encoding network on the client and the decoding network on the server, the sample graph data is processed locally using encryption technology, sample characterization is generated and sent to the server for graph reconstruction and loss calculation, and gradient encryption is back-passed to update the encoding network.
It realizes that under the premise of protecting data privacy, the self-encoding model is jointly trained, which improves the accuracy of the model and provides more accurate execution results for downstream tasks.
Smart Images

Figure CN115017528B_ABST
Abstract
Description
Technical Field
[0001] This specification relates to the field of privacy protection technology, and in particular to a method and device for jointly training an autoencoder model based on privacy protection, and a method and device for anomaly detection. Background Art
[0002] In the context of big data, it's often necessary to integrate business data from different data sources. In machine learning-based user classification analysis scenarios, electronic payment platforms possess user transaction flow data, social platforms possess user social data, and banks possess user loan data. However, in reality, data often exists in silos. Due to industry competition, data security, and user privacy, data integration faces significant obstacles. Integrating data from various platforms to train machine learning models is difficult. Jointly training machine learning models using data from multiple sources while ensuring data confidentiality has become a major challenge.
[0003] So, when faced with the phenomenon of data silos, how to integrate data from multiple parties and safely conduct multi-party joint training models becomes a problem to be solved. Summary of the Invention
[0004] One or more embodiments of this specification provide a method and device for jointly training an autoencoding model based on privacy protection, and a method and device for anomaly detection, so as to complete the training of the autoencoding model while protecting privacy data.
[0005] According to a first aspect, a method for jointly training an autoencoder model based on privacy protection is provided, wherein the autoencoder model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server. The method is performed by any first client among the multiple clients, comprising:
[0006] Processing local first sample graph data with users as nodes using a first coding network to obtain first sample representations of a plurality of sample users, where the plurality of sample users are users shared by the plurality of clients;
[0007] encrypting the first sample graph data and each first sample representation;
[0008] Sending the obtained first sample graph data ciphertext and each first sample representation ciphertext to a server, so that the server determines a user representation of each sample user based on the sample representation ciphertext sent by each client, determines graph reconstruction data using the decoding network and the user representation of each sample user, and determines a first prediction loss based on the graph reconstruction data and the first sample graph data ciphertext;
[0009] Obtaining a first gradient ciphertext from the server, where the first gradient ciphertext is determined and encrypted by the server based on a first prediction loss;
[0010] The first encoding network is updated according to the first gradient ciphertext.
[0011] According to a second aspect, a method for jointly training an autoencoder model based on privacy protection is provided. The autoencoder model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server. The method is performed by the server and includes:
[0012] Obtaining sample representation ciphertexts of multiple sample users from multiple clients, respectively, wherein a first sample representation ciphertext from any first client is obtained by the first client processing and encrypting local first sample graph data with users as nodes using a first coding network, and the multiple sample users are users shared by the multiple clients;
[0013] Obtaining, at least from a first client, first sample graph data ciphertext corresponding to the first sample graph data;
[0014] Determining a user representation of each sample user based on the sample representation ciphertext sent by each client, and determining graph reconstruction data using the decoding network and each user representation;
[0015] Determining a first prediction loss using the first sample graph data ciphertext and the graph reconstruction data; determining a first gradient corresponding to an input layer of the decoding network using the first prediction loss;
[0016] The first gradient is encrypted, and the obtained first gradient ciphertext is sent to a first client, so that the first client updates the first coding network according to the first gradient ciphertext.
[0017] According to a third aspect, a method for jointly training an autoencoder model based on privacy protection is provided, wherein the autoencoder model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server, the method comprising:
[0018] Each client uses a local coding network to process local sample graph data with users as nodes to obtain local sample representations of multiple sample users, where the multiple sample users are users shared by the multiple clients;
[0019] Each client encrypts the local sample representations of the multiple sample users respectively, and sends the obtained sample representation ciphertext to the server;
[0020] At least one of the multiple clients encrypts its local sample graph data to obtain at least one sample graph data ciphertext, and sends the at least one sample graph data ciphertext to the server;
[0021] The server determines the user representation of each sample user based on the sample representation ciphertext sent by each client, and determines graph reconstruction data using the decoding network and each user representation;
[0022] The server determines at least one prediction loss using the at least one sample graph data ciphertext and the graph reconstruction data; and determines at least one loss gradient corresponding to an input layer of the decoding network using the at least one prediction loss.
[0023] The server encrypts the at least one loss gradient to obtain at least one gradient ciphertext, and sends the ciphertext to the at least one client;
[0024] The at least one client updates its local coding network according to the at least one gradient ciphertext.
[0025] According to a fourth aspect, a method for jointly training an autoencoder model based on privacy protection is provided, wherein the autoencoder model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server. The method is performed by any first client among the multiple clients, including:
[0026] Processing local first sample graph data with business objects as nodes using a first coding network to obtain first sample representations of respective sample objects, where the sample objects are business objects shared by the multiple clients;
[0027] encrypting the first sample graph data and each first sample representation;
[0028] Sending the obtained first sample graph data ciphertext and each first sample representation ciphertext to a server, so that the server determines a user representation of each sample user based on the sample representation ciphertext sent by each client, determines graph reconstruction data using the decoding network and the user representation of each sample user, and determines a first prediction loss based on the graph reconstruction data and the first sample graph data ciphertext;
[0029] Obtaining a first gradient ciphertext from the server, where the first gradient ciphertext is determined and encrypted by the server based on a first prediction loss;
[0030] The first encoding network is updated according to the first gradient ciphertext.
[0031] According to a fifth aspect, a method for jointly training an autoencoder model based on privacy protection is provided, wherein the autoencoder model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server. The method is executed by the server and includes:
[0032] Obtaining sample representation ciphertexts of multiple sample objects from multiple clients, respectively, wherein a first sample representation ciphertext from any first client is obtained by the first client processing and encrypting local first sample graph data having business objects as nodes using a first coding network, and the multiple sample objects are business objects shared by the multiple clients;
[0033] Obtaining, at least from a first client, first sample graph data ciphertext corresponding to the first sample graph data;
[0034] Determining a user representation of each sample user based on the sample representation ciphertext sent by each client, and determining graph reconstruction data using the decoding network and each user representation;
[0035] Determining a first prediction loss using the first sample graph data ciphertext and the graph reconstruction data; determining a first gradient corresponding to an input layer of the decoding network using the first prediction loss;
[0036] The first gradient is encrypted, and the obtained first gradient ciphertext is sent to a first client, so that the first client updates the first coding network according to the first gradient ciphertext.
[0037] According to a sixth aspect, a method for detecting anomalies based on an autoencoder model is provided. The autoencoder model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server. The multiple encoding networks and the decoding network are pre-trained jointly. The method is executed by any first client among the multiple clients, including:
[0038] Processing local first target graph data with users as nodes using a local first coding network to obtain first target representations of multiple target users, where the multiple target users are users shared by the first client and at least one other client;
[0039] Encrypting the first target graph data and the first target representations of the multiple target users, and sending the obtained first target graph data ciphertext and the first target representation ciphertext to a server, so that the server determines a comprehensive representation of each target user based on the target representation ciphertext sent by the first client and the at least one other client, and determines graph reconstruction data using the decoding network and the comprehensive representation of each target user; and determining an anomaly detection result for the first target graph data using the first target graph data ciphertext, the graph reconstruction data, and an anomaly threshold;
[0040] Obtain the anomaly detection result from the server.
[0041] According to a seventh aspect, an anomaly detection method based on an autoencoder model is provided. The autoencoder model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server. The multiple encoding networks and the decoding network are pre-trained jointly. The method is executed by the server and includes:
[0042] Obtaining target representation ciphertexts of multiple target users from at least two clients, respectively, wherein a first target representation ciphertext from any first client is obtained by the first client processing local first target graph data with users as nodes and encrypting it using a first coding network, and the multiple target users are users shared by the at least two clients;
[0043] obtaining, from at least a first client, a first target graph data ciphertext corresponding to the first target graph data;
[0044] Determining a comprehensive representation of each target user based on the target representation ciphertext sent by the at least two clients, and determining graph reconstruction data using the decoding network and each comprehensive representation;
[0045] An anomaly detection result for the first target graph data is determined using the first target graph data ciphertext, the graph reconstruction data, and an anomaly threshold, and the anomaly detection result is sent to the first client.
[0046] According to an eighth aspect, a device for jointly training an autoencoding model based on privacy protection is provided, wherein the autoencoding model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server, and the device is deployed on any first client among the multiple clients, including:
[0047] A first processing module is configured to process local first sample graph data with users as nodes using a first coding network to obtain first sample representations of multiple sample users, where the multiple sample users are users shared by the multiple clients;
[0048] a first encryption module configured to encrypt the first sample graph data and each first sample representation;
[0049] a first sending module configured to send the obtained first sample graph data ciphertext and each first sample representation ciphertext to a server, so that the server determines a user representation of each sample user based on the sample representation ciphertext sent by each client, determines graph reconstruction data using the decoding network and the user representation of each sample user, and determines a first prediction loss based on the graph reconstruction data and the first sample graph data ciphertext;
[0050] A first acquisition module is configured to acquire a first gradient ciphertext from the server, where the first gradient ciphertext is determined and encrypted by the server based on a first prediction loss;
[0051] A first updating module is configured to update the first encoding network according to the first gradient ciphertext.
[0052] According to a ninth aspect, a device for jointly training an autoencoding model based on privacy protection is provided, wherein the autoencoding model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server. The device is deployed on the server and includes:
[0053] A second acquisition module is configured to respectively acquire sample representation ciphertexts of a plurality of sample users from a plurality of clients, wherein a first sample representation ciphertext from any first client is obtained by the first client processing and encrypting local first sample graph data with users as nodes using a first coding network, and the plurality of sample users are users shared by the plurality of clients;
[0054] a third acquisition module, configured to obtain, from at least the first client, the first sample graph data ciphertext corresponding to the first sample graph data;
[0055] A first determination module is configured to determine a user representation of each sample user based on the sample representation ciphertext sent by each client;
[0056] a second determination module configured to determine graph reconstruction data using the decoding network and each user representation;
[0057] a third determining module, configured to determine a first prediction loss using the first sample graph data ciphertext and the graph reconstruction data;
[0058] a fourth determining module, configured to determine a first gradient corresponding to an input layer of the decoding network using the first prediction loss;
[0059] The first encryption and sending module is configured to encrypt the first gradient and send the obtained first gradient ciphertext to the first client, so that the first client updates the first coding network according to the first gradient ciphertext.
[0060] According to a tenth aspect, a device for jointly training an autoencoding model based on privacy protection is provided, wherein the autoencoding model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server, and the device is deployed on any first client among the multiple clients, including:
[0061] a second processing module configured to process local first sample graph data with business objects as nodes using a first coding network to obtain first sample representations of respective multiple sample objects, wherein the multiple sample objects are business objects shared by the multiple clients;
[0062] a second encryption module configured to encrypt the first sample graph data and each first sample representation;
[0063] a second sending module configured to send the obtained first sample graph data ciphertext and each first sample representation ciphertext to a server, so that the server determines a user representation of each sample user based on the sample representation ciphertext sent by each client, determines graph reconstruction data using the decoding network and the user representation of each sample user, and determines a first prediction loss based on the graph reconstruction data and the first sample graph data ciphertext;
[0064] a fourth acquisition module configured to acquire a first gradient ciphertext from the server, where the first gradient ciphertext is determined and encrypted by the server based on a first prediction loss;
[0065] A second updating module is configured to update the first encoding network according to the first gradient ciphertext.
[0066] According to an eleventh aspect, a device for jointly training an autoencoding model based on privacy protection is provided, wherein the autoencoding model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server. The device is deployed on the server and includes:
[0067] a fifth acquisition module configured to respectively acquire sample representation ciphertexts of a plurality of sample objects from a plurality of clients, wherein a first sample representation ciphertext from any first client is obtained by the first client processing and encrypting local first sample graph data having business objects as nodes using a first coding network, and the plurality of sample objects are business objects shared by the plurality of clients;
[0068] A sixth acquisition module is configured to obtain the first sample graph data ciphertext corresponding to the first sample graph data from at least the first client;
[0069] a fifth determination module configured to determine a user representation of each sample user based on the sample representation ciphertext sent by each client, and determine graph reconstruction data using the decoding network and each user representation;
[0070] a sixth determination module, configured to determine a first prediction loss using the first sample graph data ciphertext and the graph reconstruction data; and determine a first gradient corresponding to an input layer of the decoding network using the first prediction loss;
[0071] The second encryption and sending module is configured to encrypt the first gradient and send the obtained first gradient ciphertext to the first client, so that the first client updates the first coding network according to the first gradient ciphertext.
[0072] According to a twelfth aspect, an anomaly detection device based on an autoencoder model is provided, wherein the autoencoder model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server, wherein the multiple encoding networks and the decoding network are pre-jointly trained, and the device is deployed on any first client among the multiple clients, including:
[0073] a third processing module configured to process local first target graph data with users as nodes using a local first coding network to obtain first target representations of multiple target users, where the multiple target users are users shared by the first client and at least one other client;
[0074] a third encryption module configured to encrypt the first target graph data and the first target representations of the plurality of target users;
[0075] a third sending module configured to send the obtained first target graph data ciphertext and the first target representation ciphertext to a server, so that the server determines a comprehensive representation of each target user based on the target representation ciphertext sent by the first client and the at least one other client, and determines graph reconstruction data using the decoding network and the comprehensive representation of each target user; and determines an anomaly detection result for the first target graph data using the first target graph data ciphertext, the graph reconstruction data, and an anomaly threshold;
[0076] A seventh acquisition module is configured to obtain the anomaly detection result from the server.
[0077] According to a thirteenth aspect, an anomaly detection device based on an autoencoder model is provided, wherein the autoencoder model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server, wherein the multiple encoding networks and the decoding network are pre-jointly trained, and the device is deployed on the server, comprising:
[0078] an eighth acquisition module configured to respectively acquire target representation ciphertexts of a plurality of target users from at least two clients, wherein a first target representation ciphertext from any first client is obtained by the first client processing local first target graph data with users as nodes using a first coding network and encrypting the data, and the plurality of target users are users shared by the at least two clients;
[0079] A ninth acquisition module, configured to obtain, from at least the first client, the first target graph data ciphertext corresponding to the first target graph data;
[0080] a seventh determination module configured to determine a comprehensive representation of each target user based on the target representation ciphertext sent by the at least two clients;
[0081] an eighth determination module, configured to determine graph reconstruction data using the decoding network and the comprehensive representations;
[0082] A determination and sending module is configured to use the first target graph data ciphertext, the graph reconstruction data and the anomaly threshold to determine an anomaly detection result for the first target graph data, and send the anomaly detection result to the first client.
[0083] According to the fourteenth aspect, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed in a computer, the computer is caused to execute the methods described in the first aspect, the second aspect, the fourth aspect, the fifth aspect, the sixth aspect and the seventh aspect.
[0084] According to the fifteenth aspect, a computing device is provided, comprising a memory and a processor, wherein the memory stores executable code, and when the processor executes the executable code, the methods described in the first aspect, the second aspect, the fourth aspect, the fifth aspect, the sixth aspect and the seventh aspect are implemented.
[0085] According to the methods and apparatus provided in the embodiments of this specification, each client possesses an encoding network, enabling local encoding to obtain sample representations of each sample user without leaving the domain. This data is then encrypted and sent to the server, preventing data leakage during transmission and protecting the client's privacy. The server utilizes the decoding network and the synthesized user representations of each sample user (incorporating the features and graph structure of each client's sample user) to obtain graph reconstruction data, which incorporates the features and graph structure of each client's sample user. The server then uses the graph reconstruction data and the ciphertext of the sample graph data of the client (e.g., the first client) that needs to train the local encoding network to determine the prediction loss and corresponding gradient. The gradient is then encrypted and transmitted back to the client that needs to train the local encoding network to train its local encoding network. This allows for the training of the autoencoder model while protecting privacy. Furthermore, by combining the features and graph structure of sample users from multiple clients to train the model, a more accurate model with corresponding encoding and decoding results can be obtained, providing a basis for ensuring the accuracy of downstream tasks when using this model. BRIEF DESCRIPTION OF THE DRAWINGS
[0086] To more clearly illustrate the technical solutions of the embodiments of the present invention, the following briefly introduces the drawings required for describing the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. Those skilled in the art can also derive other drawings based on these drawings without inventive effort.
[0087] Figure 1 A schematic diagram of an implementation framework of an embodiment disclosed in this specification;
[0088] Figure 2 A flowchart of a method for jointly training an autoencoder model based on privacy protection provided in an embodiment;
[0089] Figure 3A 、 Figure 3B and Figure 3C The structural diagrams of the autoencoder model are shown respectively;
[0090] Figure 4 A flowchart of a method for jointly training an autoencoder model based on privacy protection provided in an embodiment;
[0091] Figure 5 A flowchart of a method for jointly training an autoencoder model based on privacy protection provided in an embodiment;
[0092] Figure 6 A flowchart of an anomaly detection method based on an autoencoder model provided in an embodiment;
[0093] Figure 7 A schematic block diagram of a device for jointly training an autoencoding model based on privacy protection provided in an embodiment;
[0094] Figure 8 A schematic block diagram of a device for jointly training an autoencoding model based on privacy protection provided in an embodiment;
[0095] Figure 9 A schematic block diagram of a device for jointly training an autoencoding model based on privacy protection provided in an embodiment;
[0096] Figure 10 A schematic block diagram of a device for jointly training an autoencoding model based on privacy protection provided in an embodiment;
[0097] Figure 11 A schematic block diagram of an anomaly detection device based on an autoencoder model provided in an embodiment;
[0098] Figure 12 A schematic block diagram of an anomaly detection device based on an autoencoder model provided in an embodiment. DETAILED DESCRIPTION
[0099] The technical solutions of the embodiments of this specification will be described in detail below with reference to the accompanying drawings.
[0100] Figure 1 This is a schematic diagram of an implementation scenario of an embodiment disclosed in this specification. Figure 1 As shown, in this implementation scenario, client 1, client 2, ..., client N, and a server are schematically shown. Client 1, client 2, ..., client N each holds partial features of a user, and a graph structure with users as nodes is formed. The partial features of a user held by different clients may include features of different dimensions, or may include features of the same dimension.
[0101] In an exemplary scenario, the client 1 may be, for example, an electronic payment platform, which stores a portion of the user's characteristics (eg, payment-related characteristics). Figure 1 In the figure, features f1 to f4 are schematically shown; and client 1 also stores a graph structure 1 constructed by, for example, payment relationships. More specifically, users with payment or transfer relationships in the electronic payment platform can be connected through edges, thereby forming graph structure 1. Client 2 can be, for example, a social platform, which stores another part of the user's features (for example, features related to social interaction). Figure 1 In the figure, features f5, f6, and f7 are schematically shown; and the client 2 also stores a graph structure 2, for example, constructed by social relationships. More specifically, in the social platform, users who are friends or have communication records can be connected through connecting edges, thereby forming a graph structure 2... Client N can be, for example, an e-commerce platform, which stores another part of the user's features (for example, transaction-related features). This part of the features is stored in Figure 1 Schematically shown as features f8 and f9 in FIG. Furthermore, the client N also stores a graph structure 3 constructed, for example, by transaction relationships. More specifically, on the e-commerce platform, users who have transactions or purchase records at the same merchant or purchase the same item can be connected via edges, thereby forming a graph structure 3.
[0102] To improve the accuracy of the autoencoder model's encoding and decoding results, it is desirable to perform machine learning based on rich sample data. However, each client only stores a subset of user features and a graph structure based on certain relationships. Therefore, it is desirable to combine the user feature data and graph structure data stored in each client to jointly train an autoencoder model. Furthermore, it is desirable to prevent the leakage of the original data from each client during the joint training process to ensure privacy and security.
[0103] To this end, in one embodiment of this specification, a neutral (trusted by each client) server is introduced in addition to each client, allowing the clients and server to jointly train the autoencoder model. To balance data privacy and computational efficiency, the trained autoencoder model is divided into two parts: an encoding network for extracting user representations and a decoding network for verifying the accuracy of the encoding results.
[0104] The encoding network is used to generate representations of user-corresponding nodes based on user features and graph structure. The calculation involves raw feature data and graph structure data, and is related to privacy data. Therefore, it can be performed locally on the client. Accordingly, each client deploys an encoding network to ensure that the user's feature data and graph structure data on each client can be extracted without leaving the domain (i.e., locally on the client).
[0105] The decoding network is used to synthesize the representations of the nodes obtained by encoding, and based on the synthesis results, decode (reconstruct) the user's feature data (and graph structure data) based on the representations of each node. The calculation of the decoding network involves the data of each client and can be performed on a server trusted by each client. The corresponding server deploys the decoding network to achieve a certain degree of improvement in computing and training efficiency while protecting the security of private data.
[0106] Before training the autoencoder model, each client (i.e., Client 1, Client 2, ..., Client N) needs to identify the users they share, namely, multiple sample users. The autoencoder model is then jointly trained based on the feature data of these sample users. Specifically, during autoencoder model training, each client uses its local encoding network to process local sample graph data with users as nodes (graph data corresponding to the sample graph structure, i.e., Graph Data 1, Graph Data 2, ..., Graph Data N), obtains sample representations for multiple sample users, encrypts the sample representations for each sample user, and sends the ciphertext of the sample representations for each sample user to the server. The client (e.g., Client 1) that needs to train its local encoding network encrypts its sample graph data and sends the ciphertext of the sample graph data to the server.
[0107] The server determines the user representation of each sample user based on the sample representation ciphertext sent by each client (the user representation of sample user i incorporates the features of the sample users of each client and their neighbors), uses the decoding network and the user representation of each sample user to determine the graph reconstruction data, and based on the graph reconstruction data and the sample graph data ciphertext of client 1, determines the prediction loss corresponding to client 1, determines the gradient G1 corresponding to client 1 based on the prediction loss and the decoding network, encrypts the gradient G1, and sends the obtained gradient ciphertext [G1] to client 1. Client 1 updates its local encoding network based on the gradient ciphertext [G1].
[0108] In the above process, the training of the autoencoding model is completed while protecting privacy data. In addition, by combining the characteristics of sample users from multiple clients and the graph structure training model, a model with more accurate encoding and decoding results can be obtained, providing a basis for ensuring the accuracy of task execution results when using this model to perform downstream tasks.
[0109] The following describes in detail the privacy-preserving joint training autoencoder model method and device, and the anomaly detection method and device provided in this specification, in conjunction with specific embodiments.
[0110] It is understandable that each client (the client participating in the training of the autoencoder model) holds some of the user's features. The users contained in each client may have common users or may not have common users. In order to train the autoencoder model, it is first necessary to determine the users shared by all clients (that is, to obtain the intersection PSI (Private Set Intersection) of the user identifiers). Then, the feature data of the users shared by all clients (sample users) and the graph structure with users as nodes held by each client are used to jointly train the autoencoder model.
[0111] To clarify the layout, we first explain the process for determining shared users (sample users) between clients. During this shared user determination process, each client first performs a hash operation on the user identifiers of each user in its local graph structure to obtain a set of hash values. The user identifiers can be information that uniquely identifies a user within the client, such as a user name or user ID. Each client can perform a hash operation on the user identifiers of each user in its local graph structure based on a preset hash algorithm to obtain a hash value corresponding to each user identifier. The hash values corresponding to each user identifier constitute the set of hash values. It is understood that this preset hash algorithm can be a hash algorithm pre-negotiated between multiple clients.
[0112] Then, each client sends a hash value set to the server. After receiving the hash value sets sent by multiple clients, the server compares the hash values in the hash value sets of each client, determines the common hash value set of the hash value sets of each client, and sends the common hash value set to each client.
[0113] Each client identifies the user corresponding to the shared hash value set as a sample user. Specifically, after obtaining the shared hash value set, each client matches each hash value in the shared hash value set with the hash value corresponding to each local user ID to determine the user (i.e., user ID) corresponding to each hash value in the shared hash value set. The user corresponding to each hash value in the shared hash value set is then identified as a sample user. In this way, each client identifies the users it shares with other clients, i.e., the sample users. Afterwards, the autoencoder model training process begins.
[0114] Figure 2 A flowchart of a method for jointly training an autoencoder model based on privacy protection in one embodiment of this specification is shown. The autoencoder model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server. It should be noted that, for clarity, the process for jointly training an autoencoder model based on privacy protection provided in this embodiment of this specification is described below from the perspective of any first client (e.g., client i) among the multiple clients and the server. The operations performed by other clients in this process for jointly training an autoencoder model based on privacy protection can refer to the operations performed by the first client.
[0115] Among them, multiple clients (clients participating in the training of the autoencoding model) respectively hold partial features of the user, the coding network, and the graph structure with the user as the node. In this specification, for the sake of clarity, the coding network held by the first client is referred to as the first coding network, the graph structure held by the first client is referred to as the first graph structure, the graph data corresponding to the first graph structure used in the training process is referred to as the first sample graph data, and the partial features of the user held by the first client during the training process are referred to as the first features. Specifically, during the training of the autoencoding model, if Figure 2 As shown, the method may include the following steps S210-S290:
[0116] In step S210, the first client uses a first coding network to process local first sample graph data T1 with users as nodes to obtain first sample representations S(x1) of multiple sample users. The multiple sample users are users shared by multiple clients.
[0117] It can be understood that the edges in the first graph structure represent the relationships between users. For example, if the first client is an electronic payment platform, the edges in the first graph structure represent the relationships between users such as transfers and payments. For another example, if the first client is a social platform, the edges in the first graph structure can represent friendships or communications between users.
[0118] In this step, the first client may input the first sample graph data into the first coding network to obtain the first sample representations of each of the multiple sample users through the first coding network. The first sample graph data T1 may include first feature data X1 indicating the first feature of the user, and first adjacency data A1 indicating the user connection relationship. In one embodiment, the first feature data X1 and the first adjacency data A1 may both exist in the form of a matrix. Accordingly, the first feature data X1 may be referred to as a first feature matrix, and the first adjacency data A1 may be referred to as a first adjacency matrix.
[0119] In one embodiment, the first encoding network may include a first graph neural network; accordingly, in step S210, it may include that the first client inputs the first feature data X1 and the first adjacent data A1 into the first graph neural network to obtain the first embedding vector T(x1) of each sample user, and the first embedding vector T(x1) of each sample user constitutes the first sample representation S(x1) of each sample user.
[0120] In this implementation, the first client inputs the first feature data X1 and the first adjacency data A1 into the first graph neural network. The first graph neural network, through its several aggregation layers, uses the first feature data X1 and the first adjacency data A1 to perform several levels of vector aggregation on the nodes corresponding to each sample user, thereby obtaining an embedding vector for the sample user, referred to as the first embedding vector T(x1). The first embedding vector T(x1) of each sample user is determined as its first sample representation S(x1). It will be understood that the first adjacency data A1 is data indicating user connection relationships. Based on the first adjacency data A1, the neighboring nodes and corresponding users (i.e., the neighboring users of the sample user) of the nodes corresponding to each sample user in the first graph structure local to the first client can be determined.
[0121] In another implementation, the first client can determine the first sub-adjacency data corresponding to each sample user based on the first adjacency data A1, and determine the first sub-feature data corresponding to each sample user from the first feature data X1, wherein the first sub-adjacency data corresponding to the sample user includes several order neighbor nodes of the node corresponding to the sample user (related to the number of layers of the aggregation layer of the first graph neural network), and the first sub-feature data includes the first feature of the sample user and the first features of the users corresponding to several order neighbor nodes of its corresponding node.
[0122] In one case, the first client can input the first sub-adjacency data and first sub-feature data corresponding to each sample user into the first graph neural network. The first graph neural network, through its several aggregation layers, performs several levels of vector aggregation on the nodes corresponding to the sample user to obtain the first embedding vector of the sample user (i.e., obtain the first sample representation S(x1)). In another case, the first client can splice the first adjacency data corresponding to each sample user based on a preset order to obtain spliced adjacency data; splice the first sub-feature data corresponding to each sample user based on the preset order to obtain spliced feature data; then, input the spliced adjacency data and spliced feature data into the first graph neural network. The first graph neural network, through its several aggregation layers, performs several levels of vector aggregation on the nodes corresponding to each sample user to obtain the first embedding vector of each sample user (i.e., obtain the first sample representation S(x1)).
[0123] In one implementation, the autoencoding model can autoencode the structure of the client's graph structure and / or the features of the users corresponding to the nodes in the graph structure. If the autoencoding model can autoencode the features of the users corresponding to the nodes in the graph structure, the encoding network of the autoencoding model can include a graph neural network and a multi-layer perceptron arranged in parallel. The multi-layer perceptron can compress and extract more important feature vectors (i.e., the perception vectors mentioned later) from the original user features, thereby compressing and extracting feature vectors that better represent the user's characteristics. The embedding vectors aggregated for the sample users by the graph neural network and the perception vectors perceived by the multi-layer perceptron are then combined and used as input to a decoding subnetwork related to feature decoding in a subsequent decoding network (i.e., the feature decoder mentioned later). This ensures that the combination of the graph neural network and the multi-layer perceptron produces a highly accurate representation of the user, thereby improving the accuracy of the encoding and decoding results of the trained autoencoding model.
[0124] Accordingly, in one embodiment, the first encoding network includes a first graph neural network and a first multilayer perceptron. Step S210 includes: In step 11, the first client inputs first feature data and first adjacency data into the first graph neural network to obtain a first embedding vector T(x1) for each of the multiple sample users. In step 12, the first features of the multiple sample users are input into the first multilayer perceptron to obtain a first perceptual vector P(x1) for each of the multiple sample users; the first embedding vector and the first perceptual vector of each sample user constitute its first sample representation S(x1).
[0125] In this implementation, the first graph neural network and the first multi-layer perceptron are set up in parallel, and the first client inputs the first feature data and the first adjacent data into the first graph neural network, and can input the first features of multiple sample users into the first multi-layer perceptron in parallel. The process of obtaining the first embedding vector T(x1) of each of the multiple sample users can refer to the process described in the aforementioned embodiment and will not be repeated here. After the first client inputs the first features of the multiple sample users into the first multi-layer perceptron, the first multi-layer perceptron can compress and extract the first features of each sample user respectively to obtain the first perception vector P(x1) of each of the multiple sample users, and determine the first embedding vector T(x1) and the first perception vector P(x1) of each sample user as the first sample representation S(x1) of each sample user.
[0126] After the first client obtains each first sample representation S(x1), in step S220, the first client encrypts the first sample graph data T1 and each first sample representation S(x1). The first client can encrypt the first sample graph data and each first sample representation using any encryption method to obtain the first sample graph data ciphertext M[T1] and each first sample representation ciphertext M[S(x1)].
[0127] In one embodiment, in consideration of the computational complexity and privacy data security during model training, in step S220, the first client adds noise r to the first sample graph data T1 and each first sample representation S(x1) based on a differential privacy algorithm. Specifically, based on the differential privacy algorithm, corresponding noise r is generated for the first sample graph data T1 and each first sample representation S(x1), and the generated corresponding noise r is added to the first sample graph data T1 and each first sample representation S(x1), respectively, to obtain the corresponding first sample graph data ciphertext M[T1] and each first sample representation ciphertext M[S(x1)].
[0128] In one scenario, the differential privacy algorithm is pre-negotiated by each client and notified to the server. Alternatively, the server determines the algorithm and distributes it to each client. Using the differential privacy algorithm, noise is added to the first sample graph data and each first sample representation. This ensures that the client's private data (the first sample graph data and each first sample representation) is not exposed (nor exposed to other clients) without increasing the computational load during model training.
[0129] In another embodiment, in step S220, the first client uses the target public key of the server to encrypt the first sample graph data and each first sample representation.
[0130] In this implementation, before the user clustering model training process begins, the server can pre-generate a public-private key pair, namely a target public key PK and its corresponding target private key SK. The server then sends the target public key PK to each client, ensuring that each client maintains the target public key PK privately, while the server maintains the target private key SK privately. Subsequently, during the user clustering model training process, the first client can use the target public key PK to encrypt the first sample graph data T1 and each first sample representation S(x1), respectively, to ensure the security of private data during data transmission.
[0131] In another implementation, the server can also generate multiple public-private key pairs. In this way, the server can send a different target public key to each client to ensure the security of private data between clients. The first client can use its obtained target public key to encrypt the first sample graph data T1 and each first sample representation S(x1). After that, after the server obtains the sample graph data ciphertext and each sample representation ciphertext encrypted by each client using its obtained target public key, it can use the private key corresponding to each client's target public key to decrypt the client's sample graph data ciphertext and each sample representation ciphertext.
[0132] After the first client encrypts the first sample graph data and each first sample representation, in step S230, the first client sends the obtained ciphertext of the first sample graph data and each first sample representation ciphertext to the server. Then, in step S240, the server determines the user representation of each sample user based on the sample representation ciphertext sent by each client.
[0133] In one implementation, after the server obtains the sample representation ciphertext M[S(x)] of each sample user sent by each client, it can comprehensively determine the user representation of each sample user based on the sample representation ciphertext of the sample user sent by all clients.
[0134] In one embodiment, the encoding network of each client includes a graph neural network, that is, the sample representation ciphertext of each sample user includes the sample user's embedding vector ciphertext. Accordingly, the server can, for each sample user, for example, for sample user i, based on the embedding vector ciphertext M[T(x i )] (eg including a first client (eg Figure 1 The embedded vector ciphertext M[T(x 1i )], the embedded vector ciphertext M[T(x 2i )] ... the embedded vector ciphertext M[T(x Ni )]), comprehensively determine the comprehensive embedding vector C of the sample user i T (x i), as the user representation C(x i ).
[0135] In another embodiment, the encoding network of each client includes a graph neural network and a multi-layer perceptron arranged in parallel, that is, the sample representation ciphertext M[S(x)] of each sample user includes the sample user's embedding vector ciphertext M[T(x)] and the perceptual vector ciphertext M[P(x)]. Accordingly, the server can, for each sample user, for example, for sample user i, based on the embedding vector ciphertext M[T(x)] of the sample user i sent by all clients, i )], comprehensively determine the comprehensive embedding vector C of the sample user i T (x i For each sample user, for example, for sample user i, based on the perception vector ciphertext M[P(x i )] (eg including a first client (eg Figure 1 The sample user i’s perception vector ciphertext M[P(x 1i )], the perception vector ciphertext M[P(x 2i )]……The perception vector ciphertext M[P(x Ni )]), comprehensively determine the comprehensive perception vector C of the sample user i P (x i ); Then the comprehensive embedding vector C of each sample user T (x) and the integrated perception vector C P (x), and determine the user representation C(x) of each sample user.
[0136] In one embodiment, the sample representation ciphertext M[S(x)] is a noisy representation with noise added using a differential privacy algorithm. In this case, the server does not need to decrypt the noisy representation and can directly determine the user representation C(x) of each sample user based on the noisy representations of each sample user sent by all clients. Accordingly, in step S240, the server determines the user representation C(x) of each sample user based on the mean or sum of the noisy representations of the sample user sent by all clients.
[0137] In another embodiment, the sample representation ciphertext M[S(x)] may be a representation encrypted using the target public key of the server. In this case, the server may first decrypt the sample representation ciphertext M[S(x)] and determine the user representation C(x) of each sample user based on the decryption result S(x). Accordingly, in step S240, the server decrypts the sample representation ciphertext M[S(x)] using the private key SK corresponding to the target public key PK to obtain the sample representation plaintext S(x). For each sample user, the user representation C(x) of the sample user is determined based on the mean or sum of the sample representation plaintext S(x) corresponding to the sample representation ciphertext M[S(x)] of the sample user sent by all clients.
[0138] In the above embodiment, the calculated mean or sum is determined as the user representation C(x) of the sample user. This can avoid the impact on the training of the autoencoder model (and subsequent anomaly detection) process when data loss occurs on some clients. That is, even if data loss occurs on some clients, it will not affect the training of the autoencoder model.
[0139] The following example illustrates a situation where data loss occurs on some clients. For example, clients A, B, and C participate in the training of the autoencoder model. Theoretically, the common users among the three, i.e., sample users, include sample user 1. However, during the training of the autoencoder model, client A experiences feature loss on sample user 1. That is, the server only obtains the sample representation ciphertext of sample user 1 from clients B and C, but does not obtain the sample representation ciphertext of sample user 1 from client A.
[0140] After the server determines the user representation C(x) of each sample user, in step S250 , the server determines graph reconstruction data using the decoding network and the user representation C(x) of each sample user.
[0141] Among them, the specific settings of the decoding network can be set according to the usage requirements of the model user. The decoding network may include a decoding subnetwork related to feature decoding, namely a feature decoder, and / or a decoding subnetwork related to the graph structure, namely a structure decoder.
[0142] In one embodiment, the decoding network includes a structural decoder. In this case, the encoding network of each client may include a graph neural network, and the structure of the autoencoding model is as follows: Figure 3A As shown. Accordingly, the user representation of each sample user includes the comprehensive embedding vector of each sample user. It can be understood that the embedding vector of each sample user of each client aggregates the features of the sample user and the features of the sample user's neighbor users, which can reflect the graph structure held by the client; and the comprehensive embedding vector C T(x) The comprehensive embedding vector C is composed of the features of the sample users of each client and the features of the neighboring users of the sample users in the local graph structure. T (x) can reflect the graph structure of each client to a certain extent. In this implementation, the server will embed the vector C T (x) Input the structure decoder to obtain the structure reconstruction data as graph reconstruction data T'. For the sake of clarity, it will be referred to as sample graph reconstruction data T'.
[0143] In one embodiment, the decoding network includes a feature decoder. In this case, the encoding network of each client may include only a graph neural network, or may include both a graph neural network and a multi-layer perceptron. The following example illustrates that the encoding network of each client includes a graph neural network and a multi-layer perceptron. The structure of the autoencoder model is as follows: Figure 3B shown.
[0144] Correspondingly, the first sample representation ciphertext includes: the first embedding vector ciphertext M[T(x1)] of each sample user determined based on the first feature data and the first adjacent data, and the first perception vector ciphertext M[P(x1)] of each sample user determined based on the first features of multiple sample users; the user representation C(x) of each sample user includes: the comprehensive embedding vector C of each sample user determined based on the embedding vector ciphertext and the perception vector ciphertext in the sample representation ciphertext sent by each client. T (x) and the integrated perception vector C P (x).
[0145] As mentioned before, the comprehensive embedding vector C T (x i ) integrates the features of the sample user i of each client and the features of the neighboring users of the sample user i in the local graph structure, which can fully characterize the features of the sample user i, and the comprehensive perception vector C P (x i ) is a feature vector that can better represent the characteristics of the sample user i. In this implementation, the server embeds the comprehensive embedding vector C of each sample user T (x) and the comprehensive perception vector C P (x) is fused to obtain a fusion vector, which is input into the feature decoder to obtain feature reconstruction data as graph reconstruction data T', that is, sample graph reconstruction data T'.
[0146] In one embodiment, the decoding network includes a structure decoder and a feature decoder. In this case, the encoding network of each client can include only a graph neural network, or it can include both a graph neural network and a multi-layer perceptron. The following takes the example of the encoding network of each client including a graph neural network and a multi-layer perceptron as an example. The structure of the autoencoder model is as follows: Figure 3C As shown; in this case, the user representation C(x) of each sample user includes: the comprehensive embedding vector C of each sample user T (x) and the integrated perception vector C P (x);
[0147] In step S250, the server uses the structure decoder and the integrated embedding vector C in step 21. T (x), determine the structure reconstruction data. In step 22, the server uses the feature decoder and the comprehensive embedding vector C T (x) and the comprehensive perception vector C P (x), determine the feature reconstruction data, the structure reconstruction data and the feature reconstruction data constitute the graph reconstruction data T'.
[0148] After the server determines the graph reconstruction data, in step S260 , the server determines a first prediction loss L1 based on the graph reconstruction data T′ and the first sample graph data ciphertext M[T1].
[0149] In one embodiment, the graph reconstruction data T' includes structure reconstruction data and feature reconstruction data. Accordingly, in the process of determining the first prediction loss in step S260, the difference between the graph structure decoded by the autoencoder model and the original graph structure, and the difference between the decoded features and the original features can be combined to determine the first prediction loss. Specifically, it can include, in step 31, the server using the respective ciphertexts of the first feature data and the first adjacent data, as well as the structure reconstruction data and the feature reconstruction data, to determine the first prediction loss L1.
[0150] In one implementation, step 31 includes: in step 311, the server determines the first structure loss L using the first adjacent data ciphertext M[A1] and the structure reconstruction data. c In one case, the server can determine the structural difference between the reconstructed graph structure and the original graph structure based on the first adjacent data ciphertext M[A1] and the structural reconstruction data, and determine the first structural loss based on the structural difference. Specifically, the server can calculate the difference between the first adjacent data ciphertext and the structural reconstruction data, that is, the structural difference, and determine the structural difference as the first structural loss L. c .
[0151] In step 312, the server uses the first feature data ciphertext M[X1] and the feature reconstruction data to determine the first feature loss L fThe server can determine the feature difference between the reconstructed features and the original features of each sample user based on the first feature data ciphertext M[X1] and the feature reconstruction data, and determine the first feature loss based on the feature difference. Specifically, the difference between the first feature data ciphertext and the feature reconstruction data, i.e., the feature difference, can be calculated, and the feature difference is determined as the first feature loss.
[0152] In step 313, the server side calculates the loss of the first structure and L c The first feature loss L f , determine the first prediction loss L1. In one implementation, the server can c The product of the first weight value and the first feature loss L f The sum of the product of the weight value and the second weight value is determined as the first prediction loss L1, which can be expressed as: L1=aL c + bL f , where a represents the first weight value, and b represents the second weight value. The sum of a and b may be equal to 1.
[0153] In another embodiment, when the graph reconstruction data includes structure reconstruction data, the server determines the first structure loss L using the first adjacency data ciphertext M[A1] and the structure reconstruction data. c , the first structural loss L c Determined as the first prediction loss L1. In the case where the graph reconstruction data includes feature reconstruction data, the server uses the first feature data ciphertext M[X1] and the feature reconstruction data to determine the first feature loss L f , the first feature loss L f Determined as the first prediction loss L1.
[0154] It can be understood that when the first sample graph data ciphertext (the first adjacent data ciphertext M[A1] and the first feature data ciphertext M[X1]) are data ciphertexts encrypted using the target public key of the server, the server can first use the private key SK corresponding to the target public key PK to decode the first adjacent data ciphertext M[A1] and the first feature data ciphertext M[X1] to obtain the first adjacent data plaintext A1 and the first feature data plaintext X1, and then use the first adjacent data plaintext A1 and the first feature data plaintext X1 to determine the first prediction loss L1.
[0155] In the case where the first sample graph data ciphertext (the first adjacent data ciphertext M[A1] and the first feature data ciphertext M[X1]) is the case where noisy perturbation data is added using the differential privacy algorithm, the server does not need to decrypt the first adjacent data ciphertext M[A1] and the first feature data ciphertext M[X1], and directly uses the first adjacent data ciphertext M[A1] and the first feature data ciphertext M[X1] to determine the first prediction loss L1.
[0156] After determining the first prediction loss L1, in step S270, the server uses the first prediction loss L1 to determine the first gradient G1 corresponding to the input layer of the decoding network (that is, the first gradient G1 corresponding to the first client).
[0157] Wherein, in the case where the decoding network includes a structure decoder and a feature decoder, in one embodiment, step S270 includes: in step 41, the server uses the first prediction loss L1 to determine the first structure gradient G corresponding to the input layer of the structure decoder through back propagation. c In this step, the server can use the first prediction loss L1 to determine the loss gradient of each layer of the structure decoder layer by layer through back propagation, starting from the output layer of the structure decoder, and pass the determined loss gradient of each layer to the previous layer until the loss gradient corresponding to the input layer of the structure decoder is determined, that is, the first structure gradient G c . Then, based on the loss gradient of each layer and the current values of the parameters of each layer of the structure decoder, the corresponding update value can be determined, and the current values of the parameters of each layer of the structure decoder are updated to the update value to achieve the update of the structure decoder.
[0158] In step 42, the server uses the first prediction loss L1 to determine the first feature gradient G corresponding to the input layer of the feature decoder through back propagation. f , the first structural gradient G c and the first characteristic gradient G f In this step, the server can use the first prediction loss L1 to determine the loss gradient of each layer of the feature decoder layer by layer through back propagation, starting from the output layer of the feature decoder, and pass the determined loss gradient of each layer to the previous layer until the loss gradient corresponding to the input layer of the feature decoder is determined, that is, the first feature gradient G f Then, based on the loss gradient of each layer and the current value of the parameters of each layer of the feature decoder, the corresponding update value can be determined, and the current value of the parameters of each layer of the feature decoder can be updated to the update value to achieve the update of the feature decoder. Figure 3C shown.
[0159] In the case where the decoding network includes a structure decoder, in one embodiment, the server uses the first prediction loss L1 to determine the first structure gradient G corresponding to the input layer of the structure decoder through back propagation. c , and determine it as the first gradient G1. Figure 3A When the decoding network includes a feature decoder, the server uses the first prediction loss L1 to determine the first feature gradient G corresponding to the input layer of the feature decoder through back propagation. f, and determine it as the first gradient G1. Figure 3B shown.
[0160] After obtaining the first gradient G1, the server encrypts the first gradient G1 in step S280. In step S290, the server sends the obtained first gradient ciphertext M[G1] to the first client. The server can encrypt the first gradient G1 using various encryption methods. In one embodiment, in step S280, the server adds noise to the first gradient G1 using a differential privacy algorithm; or it can encrypt the first gradient G1 using the server's target private key SK.
[0161] Next, in step S2100, the first client updates the first coding network according to the first gradient ciphertext M[G1]. Specifically, the first client updates the parameters of the first coding network according to the first gradient ciphertext M[G1] through back propagation.
[0162] In one embodiment, the first gradient ciphertext M[G1] is encrypted using the server's private key (i.e., the target private key SK). In step S290, the first client uses the server's target public key PK to decrypt the first gradient ciphertext M[G1], obtaining the first gradient plaintext G1. The first coding network is then updated based on the first gradient plaintext G1. In this implementation, when the first gradient ciphertext M[G1] is encrypted using the server's private key, to ensure normal training of the first coding network, the first client uses the server's target public key PK to decrypt the first gradient ciphertext M[G1]. The parameters of the first coding network are then updated via backpropagation based on the obtained first gradient plaintext G1.
[0163] In one embodiment, the first gradient ciphertext M[G1] is a perturbed gradient with noise added by the server using a differential privacy algorithm. In step S290, the first client updates the first coding network based on the perturbed gradient. In this implementation, if the first gradient ciphertext is a perturbed gradient, the first client does not need to decrypt the perturbed gradient and can directly update the parameters of the first coding network using backpropagation based on the perturbed gradient.
[0164] In one embodiment, when the decoding network includes a structure decoder and a feature decoder, the first gradient ciphertext M[G1] includes the first structure gradient ciphertext M[G c ] and the first characteristic gradient ciphertext M[G f ]; In one case, if the first coding network includes a first graph neural network and a first multi-layer perceptron, in step S290, the first client generates a first structure gradient ciphertext M[G c ] and the first characteristic gradient ciphertext M[G f ], update the first graph neural network; according to the first feature gradient ciphertext M[Gf ], update the first multilayer perceptron, such as Figure 3C Specifically, the first client can use the first structure gradient ciphertext M[G c ] and the first characteristic gradient ciphertext M[G f ], determine the comprehensive gradient, and update the parameters of the first graph neural network through back propagation based on the comprehensive gradient; and update the parameters of the first multi-layer perceptron through back propagation based on the first feature gradient ciphertext. In another case, if the first coding network includes the first graph neural network, then in step S290, the first client updates the parameters of the first multi-layer perceptron based on the first structural gradient ciphertext M[G c ] and the first characteristic gradient ciphertext M[G f ], and update the first graph neural network.
[0165] In yet another embodiment, when the decoding network includes a structural decoder, the first gradient ciphertext includes a first structural gradient ciphertext M[G c ], the first coding network includes a first graph neural network. In step S290, the first client generates a first structure gradient ciphertext M[G c ], update the first graph neural network, such as Figure 3A shown.
[0166] In yet another embodiment, when the decoding network includes a feature decoder, the first gradient ciphertext includes a first feature gradient ciphertext M[G f ], in one case, if the first coding network includes a first graph neural network and a first multi-layer perceptron, in step S290, the first client generates a first feature gradient ciphertext M[G f ], respectively update the first graph neural network and the first multi-layer perceptron, such as Figure 3B shown.
[0167] In this embodiment, each client possesses an encoding network, enabling local encoding to obtain sample representations for each sample user without leaving the domain. This data is then encrypted and sent to the server, preventing data leakage during transmission and protecting the client's privacy. The server utilizes the decoding network and the synthesized user representations of each sample user (incorporating the features and graph structure of each client's sample user) to obtain graph reconstruction data. This graph reconstruction data incorporates the features and graph structure of each client's sample user. The server then uses the graph reconstruction data and the ciphertext of the sample graph data of the client (e.g., the first client) that needs to train the local encoding network to determine the prediction loss and corresponding gradient. The gradient is then encrypted and transmitted back to the client that needs to train the local encoding network to train its local encoding network. This allows for the training of the autoencoder model while protecting privacy. Furthermore, by combining the features and graph structure of sample users from multiple clients to train the model, a more accurate model with corresponding encoding and decoding results can be obtained, providing a foundation for ensuring the accuracy of downstream tasks executed using this model.
[0168] Furthermore, the encoding network includes a graph neural network and a multi-layer perceptron, which can improve the accuracy of features decoded (or reconstructed) by the autoencoder model's feature decoder, providing a foundation for improving the accuracy of downstream tasks (such as detecting user profile anomalies). Furthermore, the decoding network includes a feature decoder and / or a structure decoder, facilitating the configuration of various downstream task scenarios, such as detecting user profile (feature) anomalies and / or detecting anomalies in user relationships.
[0169] Moreover, in this embodiment, the label data of sample users is not required in the process of training the autoencoder model, which reduces the data annotation cost.
[0170] During the training of the autoencoder model, this embodiment determines the prediction loss corresponding to each target client based on sample graph data (including the graph structure and features of the users corresponding to the nodes) and graph reconstruction data (incorporating the graph structures of multiple clients and features of the users corresponding to the nodes) of the client whose local encoding network needs to be trained (hereinafter referred to as the target client). Furthermore, the parameters of the decoding network of the autoencoder model and the local encoding network of each target client are adjusted with the goal of minimizing the prediction loss corresponding to each target client. Adjusting the parameters of the decoding network with the goal of minimizing the prediction loss corresponding to each target client enables the decoding network to learn the global (all clients) data landscape (feature landscape and / or graph structure landscape) and learn to decode corresponding graph reconstruction data (including structure reconstruction data and / or feature reconstruction data) that better matches the global data landscape. Adjusting the parameters of the local encoding network of each target client with the goal of minimizing the prediction loss corresponding to each target client enables the local encoding network of each target client to learn its own data landscape and acquire the ability to encode data that better matches its own data landscape.
[0171] In one embodiment, the plurality of clients include a second client, and the method may further include the following steps 51-53:
[0172] In step 51, the server obtains the second sample graph data ciphertext corresponding to the local second sample graph data sent by the second client. The process of the second client determining to obtain the second sample graph data ciphertext is similar to the process of the first client determining to obtain the first sample graph data ciphertext, which will not be repeated here.
[0173] In step 52, the server uses the second graph data ciphertext and the graph reconstruction data to determine a second prediction loss. The second prediction loss is then used to determine a second gradient corresponding to the input layer of the decoding network. The process for determining the second prediction loss can be referenced to the process for determining the first prediction loss, and the process for determining the second gradient can be referenced to the process for determining the first gradient. This description is omitted here.
[0174] In step 53, the server encrypts the second gradient and sends the resulting second gradient ciphertext to the second client, so that the second client updates its local second coding network based on the second gradient ciphertext. The process of encrypting and sending the second gradient can be seen in the same way as the process of encrypting and sending the first gradient, and will not be repeated here.
[0175] When any client needs to train its local coding network, it can send the ciphertext of its sample graph data to the server. The server determines the gradient corresponding to the client based on the ciphertext of the client's sample graph data and the graph reconstruction data, and then encrypts the gradient corresponding to the client and feeds it back to the client, allowing the client to update its local coding network.
[0176] Corresponding to the above method embodiment, the embodiment of this specification provides a method for jointly training an autoencoding model based on privacy protection, wherein the autoencoding model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on the server, such as Figure 4 As shown, the method is described from the perspective of multiple clients and servers, and includes the following steps S410-S470: In step S410, each client uses a local coding network to process local sample graph data with users as nodes to obtain local sample representations of multiple sample users, where the multiple sample users are users shared by the multiple clients;
[0177] In step S420, each client encrypts the local sample representations of the multiple sample users respectively, and sends the obtained sample representation ciphertext to the server;
[0178] In step S430, at least one of the plurality of clients encrypts its local sample graph data to obtain at least one ciphertext of the sample graph data, and sends the at least one ciphertext of the sample graph data to the server;
[0179] In step S440, the server determines the user representation of each sample user based on the sample representation ciphertext sent by each client, and determines graph reconstruction data using the decoding network and each user representation;
[0180] In step S450, the server determines at least one prediction loss using the at least one sample graph data ciphertext and the graph reconstruction data; and determines at least one loss gradient corresponding to an input layer of the decoding network using the at least one prediction loss.
[0181] In step S460, the server encrypts the at least one loss gradient to obtain at least one gradient ciphertext, and sends the ciphertext to the at least one client.
[0182] In step S470, the at least one client updates its local coding network according to the at least one gradient ciphertext.
[0183] In this embodiment, the specific implementation process of each step can refer to the specific implementation process of the previous embodiment, which will not be repeated here.
[0184] Corresponding to the above method embodiment, the embodiment of this specification provides a method for jointly training an autoencoding model based on privacy protection, wherein the autoencoding model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on the server, such as Figure 5As shown, the following description is made from the perspective of any first client and server among the multiple clients, and the method includes the following steps:
[0185] In step S510, a first client uses a first coding network to process local first sample graph data with business objects as nodes to obtain first sample representations of multiple sample objects, each of which is a business object shared by the multiple clients. The business objects may be users, products, or other types of business objects.
[0186] In step S520, the first client encrypts the first sample graph data and each first sample representation;
[0187] In step S530, the first client sends the obtained first sample graph data ciphertext and each first sample representation ciphertext to the server.
[0188] In step S540, the server determines the user representation of each sample user based on the sample representation ciphertext sent by each client, determines the graph reconstruction data using the decoding network and the user representation of each sample user, and determines the first prediction loss based on the graph reconstruction data and the first sample graph data ciphertext.
[0189] In step S550, the server uses the first prediction loss to determine a first gradient corresponding to the input layer of the decoding network.
[0190] In step S560, the server encrypts the first gradient.
[0191] In step S570 , the server sends the obtained first gradient ciphertext to the first client.
[0192] In step S580, the first client updates the first coding network according to the first gradient ciphertext.
[0193] In this embodiment, the specific implementation process of each step can refer to the specific implementation process of the previous embodiment, which will not be repeated here.
[0194] Corresponding to the above method embodiment, the embodiment of this specification provides an anomaly detection method based on an autoencoder model, wherein the autoencoder model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on the server. The multiple encoding networks and the decoding network are pre-jointly trained, for example, based on the aforementioned privacy-preserving joint training autoencoder model. Figure 6 As shown, the following description is made from the perspective of any first client among the multiple clients and the server. The method includes the following steps S610-S670:
[0195] In step S610, the first client uses a local first coding network to process local first target graph data with users as nodes to obtain first target representations for multiple target users, where the multiple target users are shared by the first client and at least one other client. The process by which the first client obtains the first target representations can be found in the process by which the first client obtains the first sample representations, and is not further described here.
[0196] The first target graph data is graph data corresponding to the first graph structure held by the first client. The first target graph data may be slightly different from the first sample graph data held by the first client during the training process of the autoencoding model. For example, the nodes corresponding to some users may be added or reduced, and / or the connections between certain users may change. This does not affect the accuracy of subsequent encoding and decoding results.
[0197] In step S620, the first client encrypts the first target graph data and the first target representations of the multiple target users. The process of encrypting the first target graph data and the first target representation can be referred to the process of encrypting the first sample graph data and the first sample representation by the first client, and will not be repeated here.
[0198] In step S630, the first client sends the obtained first target graph data ciphertext and first target representation ciphertext to the server. In one implementation, when the first client sends the first target representation ciphertext of each target user to the server, it may also send the hash value of the user identifier of each target user, so that the server can obtain the target representation ciphertext of each target user from at least one other client based on the hash value of the user identifier of each target user.
[0199] Then, in step S640, the server determines a comprehensive representation of each target user based on the target representation ciphertext sent by the first client and the at least one other client. The process of determining the comprehensive representation of each target user by the server can be found in the process of determining the user representation of each sample user by the server, and will not be further described here.
[0200] In step S650, the server determines graph reconstruction data (referred to as target graph reconstruction data) using the combined representations of the decoding network and each target user. The specific implementation of this step can be found in the graph reconstruction data determination process described in the aforementioned embodiment of the privacy-preserving jointly trained autoencoder model, and will not be further elaborated here.
[0201] In step S660, the server determines an anomaly detection result for the first target graph data using the first target graph data ciphertext, the graph reconstruction data, and an anomaly threshold, wherein the anomaly threshold may be a value preset based on experience.
[0202] It can be understood that the decoding network may include a structure decoder and / or a feature decoder, wherein, when it includes a structure decoder, the anomaly detection result determined by the server includes an anomaly detection result for the structure of the first target graph data (i.e., a structural anomaly detection result). At this time, the anomaly threshold may include a first anomaly threshold set for the structural anomaly.
[0203] In the case where it includes a feature decoder, the anomaly detection result determined by the server includes an anomaly detection result for the user feature of the first target graph data (i.e., a feature anomaly detection result). At this time, the anomaly threshold may include a second anomaly threshold set for the feature anomaly.
[0204] In the case where the decoding network includes a structural decoder, the first target graph data includes second feature data indicating a second feature of the user, and second adjacency data indicating a user connection relationship; the first target representation ciphertext includes: a second embedding vector ciphertext determined and encrypted based on the second feature data and the second adjacency data; the comprehensive representation includes: a target embedding vector determined based on the second embedding vector ciphertext in the first target representation ciphertext sent by at least two clients.
[0205] Accordingly, in step S660, the server can use the second adjacent data ciphertext and the structure reconstruction data (graph reconstruction data) to determine the structural difference between the graph structure decoded by the structure decoder and the original graph structure of the first client, and the structural difference includes: the structural difference between each reconstructed user connection relationship (the connection relationship between each target user and its neighboring users) decoded (reconstructed) by the structure decoder and the each original user connection relationship of the first client.
[0206] Next, the server compares the structural differences of each user connection relationship against a first anomaly threshold. If the structural differences in the user connection relationships exceed the first anomaly threshold, the user connection relationship (edge) is considered anomaly. If the structural differences in the user connection relationships do not exceed the first anomaly threshold, the user connection relationship (edge) is considered normal. For example, if edges in the first graph structure of the first client represent transaction relationships between users, if a user connection relationship (e.g., the edge between the node corresponding to user A and the node corresponding to user B) is anomaly, then the transaction between user A and user B is considered anomaly.
[0207] In the case where the decoding network includes a feature decoder, taking the example of the first encoding network including a first graph neural network and a first multi-layer perceptron, the first target representation ciphertext may include: a second embedding vector ciphertext determined and encrypted based on the second feature data and the second adjacent data, and a second perception vector ciphertext determined and encrypted based on the second feature data; the comprehensive representation includes: a target embedding vector and a target perception vector respectively determined based on the second embedding vector ciphertext and the second perception vector ciphertext in the first target representation ciphertext sent by at least two clients. Accordingly, in step S660, the server can use the second feature data ciphertext and the feature reconstruction data to determine the feature difference between the feature data decoded by the feature decoder and the original feature data of the first client, and the feature difference includes: the feature difference between the reconstructed features of each target user decoded (reconstructed) by the feature decoder and the original features of each target user of the first client.
[0208] Next, the server compares the feature differences of each target user with the second abnormality threshold. If the feature difference of the target user exceeds the second abnormality threshold, it can be considered that there is an abnormality in the feature (i.e., portrait) of the target user. If the feature difference of the target user does not exceed the second abnormality threshold, it can be considered that there is no abnormality in the feature (i.e., portrait) of the target user.
[0209] In this way, based on the graph reconstruction data decoded by the decoding network, anomaly detection of the client's graph data can be achieved, and the location of the anomaly can be located.
[0210] After determining the anomaly detection results for the first target graph data, the server sends the anomaly detection results to the first client in step S670. In step S680, the first client retrieves the anomaly detection results. These anomaly detection results may include an indication of whether the characteristics (profiles) of each target user are abnormal and / or whether the relationships between the target user and its neighboring users are abnormal.
[0211] In this embodiment, the server can obtain graph reconstruction data that integrates the graph data of each client and the features of the target user (and its neighboring users) based on decoding of the decoding network, and then determine the difference between the first target graph data ciphertext and the graph reconstruction data that only contain the graph data held by the first client itself and the features of the target user (and its neighboring users). Then, combined with the anomaly threshold, a relatively accurate anomaly detection result can be obtained, wherein the anomaly detection result can locate the specific node (user) and / or specific edge (association relationship between users) where the anomaly exists in the first client.
[0212] Considering that the types of abnormalities experienced by abnormal users may vary, for example, the abnormality type of the abnormal user may be that the user's account has been stolen, or that the user has engaged in unsafe transactions, etc. Given that different abnormality types have different user feature data, accordingly, in one embodiment, the method may further include: inputting the first target representation of each target user with abnormalities represented by the corresponding abnormality detection result into a user classification model to determine the abnormality type corresponding to each target user.
[0213] It is understood that the user classification model can be used to distinguish the abnormality type corresponding to each user. The user classification model can be a model pre-trained based on user features (user target representation) and their corresponding label data, where the label data represents the user's abnormality type.
[0214] In one embodiment, after obtaining the trained first encoding network, the first client (or other client) may further utilize its local graph data of the first graph structure and the labels corresponding to the training users therein (labels annotated for the task scenario) to continue fine-tuning the parameters of the first encoding network to obtain the first encoding network for the task scenario. For example, after the first client determines the target users with anomalies based on the anomaly detection results, it uses the target users with anomalies as training users, obtains label data for each training user, inputs the target representation of each training user into the anomaly classification model to be trained, obtains the predicted anomaly category for each training user, and determines the category loss based on the predicted anomaly category and label data for each training user. Subsequently, based on the category loss, the parameters of the first encoding network and the classification model are fine-tuned until a preset model convergence condition is met. The model convergence condition may include, but is not limited to, the determined category loss being lower than a preset category loss threshold or the number of iterations exceeding a preset number.
[0215] The foregoing description describes specific embodiments of the present disclosure, and other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims can be performed in a different order than that described in the embodiments and still achieve the desired results. In addition, the processes depicted in the accompanying drawings do not necessarily need to be performed in the specific order shown or in a sequential order to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0216] Corresponding to the above method embodiment, the embodiment of this specification provides a device 700 for jointly training an autoencoding model based on privacy protection, wherein the autoencoding model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on the server. The device is deployed on any first client among the multiple clients, and its schematic block diagram is as follows: Figure 7Shown, including:
[0217] A first processing module 710 is configured to process local first sample graph data with users as nodes using a first coding network to obtain first sample representations of multiple sample users, where the multiple sample users are users shared by the multiple clients;
[0218] A first encryption module 720 configured to encrypt the first sample graph data and each first sample representation;
[0219] A first sending module 730 is configured to send the obtained first sample graph data ciphertext and each first sample representation ciphertext to a server, so that the server determines a user representation of each sample user based on the sample representation ciphertext sent by each client, determines graph reconstruction data using the decoding network and the user representation of each sample user, and determines a first prediction loss based on the graph reconstruction data and the first sample graph data ciphertext;
[0220] A first acquisition module 740 is configured to acquire a first gradient ciphertext from the server, where the first gradient ciphertext is determined and encrypted by the server based on a first prediction loss;
[0221] The first updating module 750 is configured to update the first encoding network according to the first gradient ciphertext.
[0222] In one embodiment, the first encoding network includes a first graph neural network and a first multi-layer perceptron, and the first sample graph data includes first feature data indicating a first feature of a user, and first adjacency data indicating a connection relationship between users;
[0223] The first processing module 710 is specifically configured to input the first feature data and the first adjacency data into a first graph neural network to obtain a first embedding vector for each of the multiple sample users;
[0224] The first features of the multiple sample users are input into the first multi-layer perceptron to obtain the first perception vectors of the multiple sample users respectively; the first embedding vector and the first perception vector of each sample user constitute its first sample representation.
[0225] In one possible implementation, the first encryption module 720 is specifically configured to add noise to the first sample graph data and each first sample representation based on a differential privacy algorithm; or
[0226] The first sample graph data and each first sample representation are encrypted respectively using the target public key of the server.
[0227] In one embodiment, the decoding network includes a structure decoder and a feature decoder; the first gradient ciphertext includes a first structure gradient ciphertext and a first feature gradient ciphertext; the first structure gradient ciphertext is the ciphertext of the gradient corresponding to the input layer of the structure decoder; the first feature gradient ciphertext is the ciphertext of the gradient corresponding to the input layer of the feature decoder;
[0228] The first updating module 750 is specifically configured to update the first graph neural network according to the first structural gradient ciphertext and the first feature gradient ciphertext;
[0229] The first multi-layer perceptron is updated according to the first feature gradient ciphertext.
[0230] In one possible implementation, the first gradient ciphertext is a gradient ciphertext encrypted using a private key of the server;
[0231] The first update module 750 is specifically configured to use the target public key of the server to decrypt the first gradient ciphertext to obtain a first gradient plaintext; and update the first coding network according to the first gradient plaintext.
[0232] In one possible implementation, the first gradient ciphertext is a perturbation gradient with noise added by the server using a differential privacy algorithm;
[0233] The first updating module 750 is specifically configured to update the first encoding network according to the disturbance gradient.
[0234] Corresponding to the above method embodiment, the embodiment of this specification provides a device 800 for jointly training an autoencoding model based on privacy protection, wherein the autoencoding model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server. The device is deployed on the server, and its schematic block diagram is as follows: Figure 8 Shown, including:
[0235] A second acquisition module 810 is configured to respectively acquire sample representation ciphertexts of a plurality of sample users from a plurality of clients, wherein a first sample representation ciphertext from any first client is obtained by the first client processing and encrypting local first sample graph data with users as nodes using a first coding network, and the plurality of sample users are users shared by the plurality of clients;
[0236] A third acquisition module 820 is configured to obtain, from at least the first client, the first sample graph data ciphertext corresponding to the first sample graph data;
[0237] A first determination module 830 is configured to determine a user representation of each sample user based on the sample representation ciphertext sent by each client;
[0238] A second determination module 840 is configured to determine graph reconstruction data using the decoding network and each user representation;
[0239] A third determination module 850 is configured to determine a first prediction loss using the first sample graph data ciphertext and the graph reconstruction data;
[0240] a fourth determining module 860 configured to determine a first gradient corresponding to an input layer of the decoding network using the first prediction loss;
[0241] The first encryption and sending module 870 is configured to encrypt the first gradient and send the obtained first gradient ciphertext to the first client, so that the first client updates the first coding network according to the first gradient ciphertext.
[0242] In one embodiment, the first sample graph data includes first feature data indicating a first feature of a user, and first adjacency data indicating a user connection relationship; the first sample representation ciphertext includes: a first embedding vector ciphertext determined based on the first feature data and the first adjacency data; and a first perception vector ciphertext determined based on the first features of the plurality of sample users;
[0243] The decoding network includes a structure decoder and a feature decoder; the user representation includes: a comprehensive embedding vector and a comprehensive perception vector respectively determined based on the embedding vector ciphertext and the perception vector ciphertext in the sample representation ciphertext sent by each client;
[0244] The second determining module 840 is specifically configured to determine structure reconstruction data using the structure decoder and the integrated embedding vector;
[0245] Feature reconstruction data is determined by utilizing the feature decoder, the integrated embedding vector, and the integrated perception vector, and the structure reconstruction data and the feature reconstruction data constitute graph reconstruction data.
[0246] In one embodiment, the third determination module 850 includes a determination unit (not shown in the figure) configured to determine the first prediction loss using the respective ciphertexts of the first feature data and the first adjacent data, as well as the structure reconstruction data and the feature reconstruction data.
[0247] In one possible implementation, the determining unit is specifically configured to determine a first structure loss using the first contiguous data ciphertext and the structure reconstruction data;
[0248] Determining a first feature loss using the first feature data ciphertext and the feature reconstruction data;
[0249] The first prediction loss is determined based on the first structural loss and the first feature loss.
[0250] In one embodiment, the fourth determining module 860 is specifically configured to use the first prediction loss to determine the first structural gradient corresponding to the input layer of the structural decoder through back propagation;
[0251] The first prediction loss is used to determine a first feature gradient corresponding to an input layer of the feature decoder through back propagation, where the first structural gradient and the first feature gradient constitute the first gradient.
[0252] In one possible implementation, the multiple clients include a second client, and the apparatus further includes:
[0253] An obtaining module (not shown in the figure) is configured to obtain the second sample graph data ciphertext corresponding to the local second sample graph data sent by the second client;
[0254] a ninth determination module (not shown in the figure), configured to determine a second prediction loss using the second graph data ciphertext and the graph reconstruction data; and determine a second gradient corresponding to an input layer of the decoding network using the second prediction loss;
[0255] The third encryption and sending module (not shown in the figure) is configured to encrypt the second gradient and send the obtained second gradient ciphertext to the second client, so that the second client updates its local second coding network according to the second gradient ciphertext.
[0256] In one possible implementation, the first encryption sending module 870 is specifically configured to use a differential privacy algorithm to add noise to the first gradient; or to use the target private key of the server to encrypt the first gradient.
[0257] In one possible implementation, the sample representation ciphertext is a noisy representation to which noise is added using a differential privacy algorithm; the first determination module 830 is specifically configured to determine, for each sample user, the user representation of the sample user based on the mean or sum of the noisy representations of the sample user sent by all clients.
[0258] In one embodiment, the sample representation ciphertext is a representation encrypted using a target public key of the server; the first determining module 830 is specifically configured to decrypt the sample representation ciphertext using a private key corresponding to the target public key to obtain a sample representation plaintext;
[0259] For each sample user, the user representation of the sample user is determined based on the average or sum of the sample representation plaintexts corresponding to the sample representation ciphertexts of the sample user sent by all clients.
[0260] Corresponding to the above method embodiment, the embodiment of this specification provides a device 900 for jointly training an autoencoding model based on privacy protection, wherein the autoencoding model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on the server. The device is deployed on any first client among the multiple clients, and its schematic block diagram is as follows: Figure 9 Shown, including:
[0261] A second processing module 910 is configured to process local first sample graph data with business objects as nodes using a first coding network to obtain first sample representations of a plurality of sample objects, wherein the plurality of sample objects are business objects shared by the plurality of clients;
[0262] A second encryption module 920 is configured to encrypt the first sample graph data and each first sample representation;
[0263] A second sending module 930 is configured to send the obtained first sample graph data ciphertext and each first sample representation ciphertext to the server, so that the server determines the user representation of each sample user based on the sample representation ciphertext sent by each client, determines graph reconstruction data using the decoding network and the user representation of each sample user, and determines a first prediction loss based on the graph reconstruction data and the first sample graph data ciphertext;
[0264] A fourth acquisition module 940 is configured to acquire a first gradient ciphertext from the server, where the first gradient ciphertext is determined and encrypted by the server based on a first prediction loss;
[0265] The second updating module 950 is configured to update the first encoding network according to the first gradient ciphertext.
[0266] Corresponding to the above method embodiment, the embodiment of this specification provides a device 1000 for jointly training an autoencoding model based on privacy protection, wherein the autoencoding model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server. The device is deployed on the server, and its schematic block diagram is as follows: Figure 10 Shown, including:
[0267] A fifth acquisition module 1010 is configured to respectively acquire sample representation ciphertexts of a plurality of sample objects from a plurality of clients, wherein a first sample representation ciphertext from any first client is obtained by the first client processing and encrypting local first sample graph data having business objects as nodes using a first coding network, and the plurality of sample objects are business objects shared by the plurality of clients;
[0268] A sixth obtaining module 1020 is configured to obtain the first sample graph data ciphertext corresponding to the first sample graph data from at least the first client;
[0269] A fifth determination module 1030 is configured to determine a user representation of each sample user based on the sample representation ciphertext sent by each client, and determine graph reconstruction data using the decoding network and each user representation;
[0270] A sixth determination module 1040 is configured to determine a first prediction loss using the first sample graph data ciphertext and the graph reconstruction data; and determine a first gradient corresponding to an input layer of the decoding network using the first prediction loss;
[0271] The second encryption and sending module 1050 is configured to encrypt the first gradient and send the obtained first gradient ciphertext to the first client, so that the first client updates the first coding network according to the first gradient ciphertext.
[0272] Corresponding to the above method embodiment, the embodiment of this specification provides an anomaly detection device 1100 based on an autoencoder model, wherein the autoencoder model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server. The multiple encoding networks and the decoding network are pre-trained jointly. The device is deployed on any first client among the multiple clients. Its schematic block diagram is as follows: Figure 11 Shown, including:
[0273] A third processing module 1110 is configured to process local first target graph data with users as nodes using a local first coding network to obtain first target representations of multiple target users, where the multiple target users are users shared by the first client and at least one other client;
[0274] A third encryption module 1120 is configured to encrypt the first target graph data and the first target representations of the plurality of target users;
[0275] The third sending module 1130 is configured to send the obtained first target graph data ciphertext and the first target representation ciphertext to the server, so that the server determines the comprehensive representation of each target user based on the target representation ciphertext sent by the first client and the at least one other client, and determines graph reconstruction data using the decoding network and the comprehensive representation of each target user; and determines an anomaly detection result for the first target graph data using the first target graph data ciphertext, the graph reconstruction data, and the anomaly threshold;
[0276] The seventh acquisition module 1140 is configured to obtain the anomaly detection result from the server.
[0277] In one embodiment, the device further comprises:
[0278] The input determination module (not shown in the figure) is configured to input the first target representation of each target user with abnormalities represented by the corresponding abnormality detection result into the user classification model to determine the abnormality type corresponding to each target user.
[0279] Corresponding to the above method embodiment, the embodiment of this specification provides an anomaly detection device 1200 based on an autoencoding model, wherein the autoencoding model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server. The multiple encoding networks and the decoding network are pre-trained jointly, and the device is deployed on the server. The schematic block diagram is as follows: Figure 12 Shown, including:
[0280] An eighth acquisition module 1210 is configured to respectively acquire target representation ciphertexts of a plurality of target users from at least two clients, wherein a first target representation ciphertext from any first client is obtained by the first client processing and encrypting local first target graph data with users as nodes using a first coding network, and the plurality of target users are users shared by the at least two clients;
[0281] A ninth acquisition module 1220 is configured to acquire, from at least the first client, the first target graph data ciphertext corresponding to the first target graph data;
[0282] A seventh determination module 1230 is configured to determine a comprehensive representation of each target user based on the target representation ciphertext sent by the at least two clients;
[0283] an eighth determination module 1240 configured to determine graph reconstruction data using the decoding network and the comprehensive representations;
[0284] The determination and sending module 1250 is configured to use the first target graph data ciphertext, the graph reconstruction data and the anomaly threshold to determine the anomaly detection result for the first target graph data, and send the anomaly detection result to the first client.
[0285] In one embodiment, the first encoding network includes a first graph neural network and a first multi-layer perceptron; the first target graph data includes second feature data indicating a second feature of a user, and second adjacency data indicating a user connection relationship; the first target representation ciphertext includes: a second embedding vector ciphertext determined based on the second feature data and the second adjacency data; and a second perceptual vector ciphertext determined based on the second features of the multiple target users;
[0286] The decoding network includes a structure decoder and a feature decoder; the comprehensive representation includes: a target embedding vector and a target perception vector respectively determined based on a second embedding vector ciphertext and a second perception vector ciphertext in the first target representation ciphertext sent by the at least two clients;
[0287] The eighth determination module 1240 is specifically configured to determine structure reconstruction data using the structure decoder and the target embedding vector; and determine feature reconstruction data using the feature decoder, the target embedding vector and the target perception vector;
[0288] The determination and sending module 1250 is specifically configured to use the second adjacent data ciphertext, the structure reconstruction data and the first anomaly threshold to determine the structural anomaly detection result; and use the second feature data ciphertext, the feature reconstruction data and the second anomaly threshold to determine the feature anomaly detection result.
[0289] The above-mentioned device embodiments correspond to the method embodiments. For detailed descriptions, please refer to the description of the method embodiments, which will not be repeated here. The device embodiments are obtained based on the corresponding method embodiments and have the same technical effects as the corresponding method embodiments. For detailed descriptions, please refer to the corresponding method embodiments.
[0290] An embodiment of this specification also provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed in a computer, the computer is caused to execute the privacy-protection-based joint training autoencoding model method or the autoencoding model-based anomaly detection method provided in this specification.
[0291] An embodiment of this specification also provides a computing device, including a memory and a processor, wherein the memory stores executable code, and when the processor executes the executable code, it implements the privacy protection-based joint training autoencoding model method or the autoencoding model-based anomaly detection method provided in this specification.
[0292] The various embodiments in this specification are described in a progressive manner. Similar portions between the various embodiments can be referenced to each other, and each embodiment focuses on the differences between the other embodiments. In particular, the storage medium and computing device embodiments are described briefly because they are generally similar to the method embodiments. For relevant portions, refer to the description of the method embodiments.
[0293] Those skilled in the art will appreciate that, in one or more of the above examples, the functions described in the embodiments of the present invention may be implemented using hardware, software, firmware, or any combination thereof. When implemented using software, these functions may be stored in a computer-readable medium or transmitted as one or more instructions or codes on a computer-readable medium.
[0294] The specific implementation methods described above further illustrate the purpose, technical solutions, and beneficial effects of the embodiments of the present invention. It should be understood that the above description is only a specific implementation method of the embodiments of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent replacements, improvements, etc. made on the basis of the technical solutions of the present invention shall be included in the scope of protection of the present invention.
Claims
1. A method for jointly training an autoencoder model based on privacy protection, wherein the autoencoder model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server. The method is performed by any first client among the multiple clients, comprising: Processing local first sample graph data with users as nodes using a first coding network to obtain first sample representations of a plurality of sample users, where the plurality of sample users are users shared by the plurality of clients; encrypting the first sample graph data and each first sample representation; Sending the obtained first sample graph data ciphertext and each first sample representation ciphertext to a server, so that the server determines a user representation of each sample user based on the sample representation ciphertext sent by each client, determines graph reconstruction data using the decoding network and the user representation of each sample user, and determines a first prediction loss based on the graph reconstruction data and the first sample graph data ciphertext; Obtaining a first gradient ciphertext from the server, where the first gradient ciphertext is determined and encrypted by the server based on a first prediction loss; The first encoding network is updated according to the first gradient ciphertext.
2. The method according to claim 1, wherein The first encoding network includes a first graph neural network and a first multi-layer perceptron, and the first sample graph data includes first feature data indicating a first feature of a user and first adjacency data indicating a connection relationship between users; The obtaining of first sample representations of the plurality of sample users includes: Inputting the first feature data and the first adjacency data into a first graph neural network to obtain a first embedding vector for each of the plurality of sample users; The first features of the multiple sample users are input into the first multi-layer perceptron to obtain the first perception vectors of the multiple sample users respectively; the first embedding vector and the first perception vector of each sample user constitute its first sample representation.
3. The method according to claim 1, wherein The encrypting the first sample graph data and each first sample representation includes: Based on a differential privacy algorithm, adding noise to the first sample graph data and each first sample representation respectively; or The first sample graph data and each first sample representation are encrypted respectively using the target public key of the server.
4. The method according to claim 2, wherein: The decoding network includes a structure decoder and a feature decoder; the first gradient ciphertext includes a first structure gradient ciphertext and a first feature gradient ciphertext; the first structure gradient ciphertext is the ciphertext of the gradient corresponding to the input layer of the structure decoder; the first feature gradient ciphertext is the ciphertext of the gradient corresponding to the input layer of the feature decoder; The updating of the first encoding network according to the first gradient ciphertext includes: Updating the first graph neural network according to the first structural gradient ciphertext and the first feature gradient ciphertext; The first multi-layer perceptron is updated according to the first feature gradient ciphertext.
5. The method according to claim 1, wherein The first gradient ciphertext is a gradient ciphertext encrypted using a private key of the server; The updating of the first encoding network according to the first gradient ciphertext includes: Decrypting the first gradient ciphertext using the target public key of the server to obtain a first gradient plaintext; The first encoding network is updated according to the first gradient plaintext.
6. The method of claim 1, wherein: The first gradient ciphertext is a perturbation gradient with noise added by the server using a differential privacy algorithm; The updating of the first encoding network according to the first gradient ciphertext includes: The first encoding network is updated according to the disturbance gradient.
7. A method for jointly training an autoencoder model based on privacy protection, wherein the autoencoder model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server, the method being executed by the server and comprising: Obtaining sample representation ciphertexts of multiple sample users from multiple clients, respectively, wherein a first sample representation ciphertext from any first client is obtained by the first client processing and encrypting local first sample graph data with users as nodes using a first coding network, and the multiple sample users are users shared by the multiple clients; Obtaining, at least from a first client, first sample graph data ciphertext corresponding to the first sample graph data; Determining a user representation of each sample user based on the sample representation ciphertext sent by each client, and determining graph reconstruction data using the decoding network and each user representation; Determining a first prediction loss using the first sample graph data ciphertext and the graph reconstruction data; determining a first gradient corresponding to an input layer of the decoding network using the first prediction loss; The first gradient is encrypted, and the obtained first gradient ciphertext is sent to a first client, so that the first client updates the first coding network according to the first gradient ciphertext.
8. The method of claim 7, wherein: The first sample graph data includes first feature data indicating a first feature of a user, and first adjacency data indicating a connection relationship between users; The first sample representation ciphertext includes: a first embedding vector ciphertext determined based on the first feature data and the first adjacent data; and a first perception vector ciphertext determined based on the first features of the plurality of sample users; The decoding network includes a structure decoder and a feature decoder; the user representation includes: a comprehensive embedding vector and a comprehensive perception vector respectively determined based on the embedding vector ciphertext and the perception vector ciphertext in the sample representation ciphertext sent by each client; Determining graph reconstruction data using the decoding network and each user representation includes: determining structure reconstruction data using the structure decoder and the integrated embedding vector; Feature reconstruction data is determined by utilizing the feature decoder, the integrated embedding vector, and the integrated perception vector, and the structure reconstruction data and the feature reconstruction data constitute graph reconstruction data.
9. The method of claim 8, wherein: The determining a first prediction loss by using the first sample graph data ciphertext and the graph reconstruction data includes: The first prediction loss is determined using the ciphertexts of the first feature data and the first adjacent data, the structure reconstruction data, and the feature reconstruction data.
10. The method of claim 9, wherein: The determining the first prediction loss by using the ciphertexts of the first feature data and the first adjacent data, the structure reconstruction data, and the feature reconstruction data includes: determining a first structure loss using the first contiguous data ciphertext and the structure reconstruction data; Determining a first feature loss using the first feature data ciphertext and the feature reconstruction data; The first prediction loss is determined based on the first structural loss and the first feature loss.
11. The method of claim 8, wherein: The determining a first gradient corresponding to an input layer of the decoding network by using the first prediction loss includes: Determining a first structural gradient corresponding to an input layer of the structural decoder by backpropagation using the first prediction loss; The first prediction loss is used to determine a first feature gradient corresponding to an input layer of the feature decoder through back propagation, where the first structural gradient and the first feature gradient constitute the first gradient.
12. The method of claim 7, wherein the plurality of clients includes a second client, the method further comprising: Obtaining a second sample graph data ciphertext corresponding to the local second sample graph data sent by the second client; Determining a second prediction loss using the second sample graph data ciphertext and the graph reconstruction data; determining a second gradient corresponding to an input layer of the decoding network using the second prediction loss; The second gradient is encrypted, and the obtained second gradient ciphertext is sent to the second client, so that the second client updates its local second coding network according to the second gradient ciphertext.
13. The method of claim 7, wherein: The encrypting the first gradient includes: Using a differential privacy algorithm, adding noise to the first gradient; or The first gradient is encrypted using the target private key of the server.
14. The method of claim 7, wherein: The sample representation ciphertext is a noisy representation added with noise using a differential privacy algorithm; and determining the user representation of each sample user based on the sample representation ciphertext sent by each client includes: For each sample user, a user representation of the sample user is determined based on a mean or a sum of the noisy representations of the sample user sent by all clients.
15. The method of claim 7, wherein: The sample representation ciphertext is a representation encrypted using the target public key of the server; The determining of the user representation of each sample user based on the sample representation ciphertext sent by each client includes: Decrypting the sample representation ciphertext using the private key corresponding to the target public key to obtain the sample representation plaintext; For each sample user, the user representation of the sample user is determined based on the average or sum of the sample representation plaintexts corresponding to the sample representation ciphertexts of the sample user sent by all clients.
16. A method for jointly training an autoencoder model based on privacy protection, wherein the autoencoder model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server, the method comprising: Each client uses a local coding network to process local sample graph data with users as nodes to obtain local sample representations of multiple sample users, where the multiple sample users are users shared by the multiple clients; Each client encrypts the local sample representations of the multiple sample users respectively, and sends the obtained sample representation ciphertext to the server; At least one of the multiple clients encrypts its local sample graph data to obtain at least one sample graph data ciphertext, and sends the at least one sample graph data ciphertext to the server; The server determines the user representation of each sample user based on the sample representation ciphertext sent by each client, and determines graph reconstruction data using the decoding network and each user representation; The server determines at least one prediction loss using the at least one sample graph data ciphertext and the graph reconstruction data; and determines at least one loss gradient corresponding to an input layer of the decoding network using the at least one prediction loss. The server encrypts the at least one loss gradient to obtain at least one gradient ciphertext; sending them to the at least one client respectively; The at least one client updates its local coding network according to the at least one gradient ciphertext.
17. A method for jointly training an autoencoder model based on privacy protection, wherein the autoencoder model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server, the method being executed by any first client among the multiple clients, comprising: Processing local first sample graph data with business objects as nodes using a first coding network to obtain first sample representations of respective sample objects, where the sample objects are business objects shared by the multiple clients; encrypting the first sample graph data and each first sample representation; Sending the obtained first sample graph data ciphertext and each first sample representation ciphertext to a server, so that the server determines a user representation of each sample user based on the sample representation ciphertext sent by each client, determines graph reconstruction data using the decoding network and the user representation of each sample user, and determines a first prediction loss based on the graph reconstruction data and the first sample graph data ciphertext; Obtaining a first gradient ciphertext from the server, where the first gradient ciphertext is determined and encrypted by the server based on a first prediction loss; The first encoding network is updated according to the first gradient ciphertext.
18. A method for jointly training an autoencoder model based on privacy protection, wherein the autoencoder model includes multiple encoding networks deployed on multiple clients and a decoding network deployed on a server, the method being executed by the server and comprising: Obtaining sample representation ciphertexts of multiple sample objects from multiple clients, respectively, wherein a first sample representation ciphertext from any first client is obtained by the first client processing and encrypting local first sample graph data having business objects as nodes using a first coding network, and the multiple sample objects are business objects shared by the multiple clients; Obtaining, at least from a first client, first sample graph data ciphertext corresponding to the first sample graph data; Determining a user representation of each sample user based on the sample representation ciphertext sent by each client, and determining graph reconstruction data using the decoding network and each user representation; Determining a first prediction loss using the first sample graph data ciphertext and the graph reconstruction data; determining a first gradient corresponding to an input layer of the decoding network using the first prediction loss; The first gradient is encrypted, and the obtained first gradient ciphertext is sent to a first client, so that the first client updates the first coding network according to the first gradient ciphertext.
19. An anomaly detection method based on an autoencoder model, the autoencoder model comprising a plurality of encoding networks deployed on a plurality of clients, and a decoding network deployed on a server, the plurality of encoding networks and the decoding network being jointly trained in advance based on the method of claim 16, the anomaly detection method being executed by any first client among the plurality of clients, comprising: Processing local first target graph data with users as nodes using a local first coding network to obtain first target representations of multiple target users, where the multiple target users are users shared by the first client and at least one other client; Encrypting the first target graph data and the first target representations of the multiple target users, and sending the obtained first target graph data ciphertext and the first target representation ciphertext to a server, so that the server determines a comprehensive representation of each target user based on the target representation ciphertext sent by the first client and the at least one other client, and determines graph reconstruction data using the decoding network and the comprehensive representation of each target user; and determining an anomaly detection result for the first target graph data using the first target graph data ciphertext, the graph reconstruction data, and an anomaly threshold; Obtain the anomaly detection result from the server.
20. The method of claim 19, further comprising: The first target representation of each target user with an abnormality represented by the corresponding abnormality detection result is input into the user classification model to determine the abnormality type corresponding to each target user.
21. An anomaly detection method based on an autoencoder model, the autoencoder model comprising a plurality of encoding networks deployed on a plurality of clients, and a decoding network deployed on a server, the plurality of encoding networks and the decoding network being jointly trained in advance based on the method of claim 16, the anomaly detection method being executed by the server, comprising: Obtaining target representation ciphertexts of multiple target users from at least two clients, respectively, wherein a first target representation ciphertext from any first client is obtained by the first client processing local first target graph data with users as nodes and encrypting it using a first coding network, and the multiple target users are users shared by the at least two clients; obtaining, from at least a first client, a first target graph data ciphertext corresponding to the first target graph data; Determining a comprehensive representation of each target user based on the target representation ciphertext sent by the at least two clients, and determining graph reconstruction data using the decoding network and each comprehensive representation; An anomaly detection result for the first target graph data is determined using the first target graph data ciphertext, the graph reconstruction data, and an anomaly threshold, and the anomaly detection result is sent to the first client.
22. The method of claim 21, wherein: The first encoding network includes a first graph neural network and a first multi-layer perceptron; the first target graph data includes second feature data indicating a second feature of a user, and second adjacency data indicating a connection relationship between users; The first target representation ciphertext includes: a second embedding vector ciphertext determined based on the second feature data and the second adjacency data; and a second perception vector ciphertext determined based on the second features of the plurality of target users; The decoding network includes a structure decoder and a feature decoder; the comprehensive representation includes: a target embedding vector and a target perception vector respectively determined based on a second embedding vector ciphertext and a second perception vector ciphertext in the first target representation ciphertext sent by the at least two clients; The determining of graph reconstruction data using the decoding network and the comprehensive representations includes: Determining structure reconstruction data using the structure decoder and the target embedding vector; Determining feature reconstruction data using the feature decoder, the target embedding vector, and the target perception vector; The determining of an anomaly detection result for the first target graph data using the first target graph data ciphertext, the graph reconstruction data, and an anomaly threshold includes: Determining a structural anomaly detection result using the second contiguous data ciphertext, the structural reconstruction data, and a first anomaly threshold; A feature anomaly detection result is determined using the second feature data ciphertext, the feature reconstruction data, and a second anomaly threshold.
23. A device for jointly training an autoencoding model based on privacy protection, the autoencoding model comprising multiple encoding networks deployed on multiple clients and a decoding network deployed on a server, the device being deployed on any first client among the multiple clients, comprising: A first processing module is configured to process local first sample graph data with users as nodes using a first coding network to obtain first sample representations of multiple sample users, where the multiple sample users are users shared by the multiple clients; a first encryption module configured to encrypt the first sample graph data and each first sample representation; a first sending module configured to send the obtained first sample graph data ciphertext and each first sample representation ciphertext to a server, so that the server determines a user representation of each sample user based on the sample representation ciphertext sent by each client, determines graph reconstruction data using the decoding network and the user representation of each sample user, and determines a first prediction loss based on the graph reconstruction data and the first sample graph data ciphertext; A first acquisition module is configured to acquire a first gradient ciphertext from the server, where the first gradient ciphertext is determined and encrypted by the server based on a first prediction loss; A first updating module is configured to update the first encoding network according to the first gradient ciphertext.
24. An apparatus for jointly training an autoencoding model based on privacy protection, the autoencoding model comprising multiple encoding networks deployed on multiple clients and a decoding network deployed on a server, the apparatus being deployed on the server, comprising: A second acquisition module is configured to respectively acquire sample representation ciphertexts of a plurality of sample users from a plurality of clients, wherein a first sample representation ciphertext from any first client is obtained by the first client processing and encrypting local first sample graph data with users as nodes using a first coding network, and the plurality of sample users are users shared by the plurality of clients; a third acquisition module, configured to obtain, from at least the first client, the first sample graph data ciphertext corresponding to the first sample graph data; A first determination module is configured to determine a user representation of each sample user based on the sample representation ciphertext sent by each client; a second determination module configured to determine graph reconstruction data using the decoding network and each user representation; a third determining module, configured to determine a first prediction loss using the first sample graph data ciphertext and the graph reconstruction data; a fourth determining module, configured to determine a first gradient corresponding to an input layer of the decoding network using the first prediction loss; The first encryption and sending module is configured to encrypt the first gradient and send the obtained first gradient ciphertext to the first client, so that the first client updates the first coding network according to the first gradient ciphertext.
25. A device for jointly training an autoencoding model based on privacy protection, the autoencoding model comprising multiple encoding networks deployed on multiple clients and a decoding network deployed on a server, the device being deployed on any first client among the multiple clients, comprising: a second processing module configured to process local first sample graph data with business objects as nodes using a first coding network to obtain first sample representations of respective multiple sample objects, wherein the multiple sample objects are business objects shared by the multiple clients; a second encryption module configured to encrypt the first sample graph data and each first sample representation; a second sending module configured to send the obtained first sample graph data ciphertext and each first sample representation ciphertext to a server, so that the server determines a user representation of each sample user based on the sample representation ciphertext sent by each client, determines graph reconstruction data using the decoding network and the user representation of each sample user, and determines a first prediction loss based on the graph reconstruction data and the first sample graph data ciphertext; a fourth acquisition module configured to acquire a first gradient ciphertext from the server, where the first gradient ciphertext is determined and encrypted by the server based on a first prediction loss; A second updating module is configured to update the first encoding network according to the first gradient ciphertext.
26. An apparatus for jointly training an autoencoding model based on privacy protection, the autoencoding model comprising multiple encoding networks deployed on multiple clients and a decoding network deployed on a server, the apparatus being deployed on the server, comprising: a fifth acquisition module configured to respectively acquire sample representation ciphertexts of a plurality of sample objects from a plurality of clients, wherein a first sample representation ciphertext from any first client is obtained by the first client processing and encrypting local first sample graph data having business objects as nodes using a first coding network, and the plurality of sample objects are business objects shared by the plurality of clients; A sixth acquisition module is configured to obtain the first sample graph data ciphertext corresponding to the first sample graph data from at least the first client; a fifth determination module configured to determine a user representation of each sample user based on the sample representation ciphertext sent by each client, and determine graph reconstruction data using the decoding network and each user representation; a sixth determination module, configured to determine a first prediction loss using the first sample graph data ciphertext and the graph reconstruction data; and determine a first gradient corresponding to an input layer of the decoding network using the first prediction loss; The second encryption and sending module is configured to encrypt the first gradient and send the obtained first gradient ciphertext to the first client, so that the first client updates the first coding network according to the first gradient ciphertext.
27. An anomaly detection device based on an autoencoder model, the autoencoder model comprising multiple encoding networks deployed on multiple clients and a decoding network deployed on a server, the multiple encoding networks and the decoding network being pre-trained jointly based on the device of claim 23, the anomaly detection device being deployed on any first client among the multiple clients, comprising: a third processing module configured to process local first target graph data with users as nodes using a local first coding network to obtain first target representations of multiple target users, where the multiple target users are users shared by the first client and at least one other client; a third encryption module configured to encrypt the first target graph data and the first target representations of the plurality of target users; a third sending module configured to send the obtained first target graph data ciphertext and the first target representation ciphertext to a server, so that the server determines a comprehensive representation of each target user based on the target representation ciphertext sent by the first client and the at least one other client, and determines graph reconstruction data using the decoding network and the comprehensive representation of each target user; and determines an anomaly detection result for the first target graph data using the first target graph data ciphertext, the graph reconstruction data, and an anomaly threshold; A seventh acquisition module is configured to obtain the anomaly detection result from the server.
28. An anomaly detection device based on an autoencoder model, the autoencoder model comprising multiple encoding networks deployed on multiple clients and a decoding network deployed on a server, the multiple encoding networks and the decoding network being pre-trained jointly based on the device of claim 23, the anomaly detection device being deployed on the server, comprising: an eighth acquisition module configured to respectively acquire target representation ciphertexts of a plurality of target users from at least two clients, wherein a first target representation ciphertext from any first client is obtained by the first client processing local first target graph data with users as nodes using a first coding network and encrypting the data, and the plurality of target users are users shared by the at least two clients; A ninth acquisition module, configured to obtain, from at least the first client, a first target graph data ciphertext corresponding to the first target graph data; a seventh determination module configured to determine a comprehensive representation of each target user based on the target representation ciphertext sent by the at least two clients; an eighth determination module, configured to determine graph reconstruction data using the decoding network and the comprehensive representations; A determination and sending module is configured to use the first target graph data ciphertext, the graph reconstruction data and the anomaly threshold to determine an anomaly detection result for the first target graph data, and send the anomaly detection result to the first client.
29. A computing device comprising a memory and a processor, wherein: The memory stores executable code, and when the processor executes the executable code, the method according to any one of claims 1 to 15 or 17 to 22 is implemented.
Citation Information
Patent Citations
Method and device for multi-party joint training of graph neural network
CN110782044A
Transverse federated learning optimization method and device based on semi-supervision and storage medium
CN111291897A