Community division method, device, system, medium and equipment based on federated learning
By integrating node characteristics and clustering in federated learning, the problem that participants cannot understand the community to which the node belongs is solved, and community division and data security guarantees are achieved among nodes.
Patent Information
- Application Number
- CN202210133364.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-02-10
- Publication Date
- 2024-12-17
- Estimated Expiration
- 2042-02-10
AI Technical Summary
In the federated learning scenario, multiple participants are unable to understand the community to which their nodes belong, resulting in the inability to understand the similarity and correlation between nodes.
By integrating nodes of each participant in federated learning, extracting node characteristics, and through iterative updates, node clustering is implemented to obtain community division results, so that participants can understand the community to which the node belongs.
Without revealing local node data, community division between nodes is realized, data security is ensured, and understanding of correlation between nodes is provided.
Smart Images

Figure CN114493906B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the technical field of federated learning, and in particular to a community division method, device, system, computer-readable medium, and electronic device based on federated learning. Background Art
[0002] Federated learning is a machine learning method that can effectively help multiple participants (which can represent individuals or institutions) jointly train models while meeting data privacy protection requirements. During the federated learning process, the data of all parties are retained locally, without leaking privacy or violating regulations; multiple participants jointly establish a virtual shared model and benefit from it together; the modeling effect of federated learning is the same as the effect of putting the entire data set in one place, or it is not much different (under the condition of user alignment or feature alignment of each data).
[0003] There are a large number of complex systems in nature and social activities, which can usually be described by various networks. A typical network consists of many nodes and edges between nodes, where nodes are used to represent entities in the real system and edges are used to represent the relationship between entities. A network containing multiple nodes can be understood as a community.
[0004] In practice, usually multiple participants only hold their own nodes (the nodes here can be understood as user data stored locally by the participants), but they cannot understand the community (which can also be understood as the category) to which the nodes they hold belong in the entire federated learning scenario. The nodes in the same community are usually related or similar nodes. If the community division in the federated learning scenario can be achieved, it can help users understand the community to which the nodes they hold belong in the entire federated learning scenario, so as to further understand the similarities between nodes.
[0005] Therefore, how to realize the community division of nodes of all participants through federated learning has become an urgent problem that needs to be solved. Summary of the invention
[0006] The purpose of the embodiments of the present disclosure is to provide a community division method, device, system, computer-readable medium and electronic device based on federated learning, which can integrate the nodes of each participant and extract features for each node, and then through federated learning, realize the iteration of node features, so as to realize community division based on the iterated node features. In this way, community division based on federated learning can be realized, so that each participant can understand the community to which the local node belongs based on all the nodes of each participant without leaking the local node data, so that the user can timely understand the correlation between local nodes.
[0007] A first aspect of an embodiment of the present disclosure provides a community division method based on federated learning, including:
[0008] Determine the node union according to the node ciphertext sequence sent by each participant;
[0009] Generate node features for each node in the node set, and determine the node feature set corresponding to each participant according to the node ciphertext sequence of each participant;
[0010] The initialized community cluster features and node feature sets are sent to the corresponding participants; wherein each participant updates the corresponding node features according to the local model and community cluster features;
[0011] When the number of updates meets the preset conditions, the nodes are clustered according to the node characteristics fed back by each participant to obtain multiple community clusters; each community cluster contains at least one node;
[0012] A community division result corresponding to each participant is generated according to the multiple community clusters, and the community division result of each participant is sent to the corresponding participant respectively.
[0013] In an exemplary embodiment of the present disclosure, the method further includes:
[0014] Receive the node ciphertext sequence sent by each participant; wherein each participant calculates the hash value corresponding to the local node set based on a preset hash algorithm to obtain a hash value sequence, and encrypts each hash value in the hash value sequence to obtain a node ciphertext sequence.
[0015] In an exemplary embodiment of the present disclosure, determining a node feature set corresponding to each participant according to a node ciphertext sequence of each participant includes:
[0016] Selecting node features corresponding to the node ciphertext sequence from the node features of the node union to form a node feature set;
[0017] The node feature set is sent to the participants corresponding to the node ciphertext sequence until all participants receive the corresponding node feature set.
[0018] In an exemplary embodiment of the present disclosure, the method further includes:
[0019] Generate a node frequency vector for representing the frequency of occurrence of each node in all node ciphertext sequences and a node position mapping matrix corresponding to each participant according to the node union; wherein the node position mapping matrix includes a vector representation of each node in the node set of the corresponding participant;
[0020] If it is detected that the updated times do not meet the preset conditions, the node features fed back by each participant are updated again according to the node frequency vector and the node position mapping matrix of each participant;
[0021] The updated results will be fed back to the corresponding parties until the number of updates meets the preset conditions.
[0022] In an exemplary embodiment of the present disclosure, node clustering is performed according to the node features fed back by each participant to obtain multiple community clusters, including:
[0023] Receive node characteristics feedback from all participants;
[0024] Perform fusion processing on the updated different node features corresponding to the same node to obtain a fusion processing result;
[0025] Node clustering is performed based on the fusion processing results and the updated node features corresponding to different nodes to obtain multiple community clusters.
[0026] In an exemplary embodiment of the present disclosure, generating a community division result corresponding to each participant according to a plurality of community clusters includes:
[0027] Determine, based on multiple community clusters, the community cluster to which each node in the local node set of each participant belongs;
[0028] The community division results corresponding to each participant are generated according to the community cluster to which each node belongs.
[0029] According to a second aspect of an embodiment of the present disclosure, a community division device based on federated learning is provided, including:
[0030] A node union determination unit, used to determine a node union according to a node ciphertext sequence sent by each participant;
[0031] A node feature determination unit, used to generate node features for each node in the node set, and determine a node feature set corresponding to each participant according to the node ciphertext sequence of each participant;
[0032] A node feature sending unit is used to send the initialized community cluster features and node feature sets to corresponding participants; wherein each participant updates the corresponding node features according to the local model and community cluster features;
[0033] A node clustering unit, which is used to cluster nodes according to the node features fed back by each participant when the number of updates meets a preset condition, to obtain multiple community clusters; wherein each community cluster contains at least one node;
[0034] The community division unit is used to generate a community division result corresponding to each participant according to multiple community clusters, and send the community division result of each participant to the corresponding participant respectively.
[0035] In an exemplary embodiment of the present disclosure, the above-mentioned device further includes:
[0036] The sequence receiving unit is used to receive the node ciphertext sequence sent by each participant; wherein each participant calculates the hash value corresponding to the local node set based on a preset hash algorithm to obtain a hash value sequence, and encrypts each hash value in the hash value sequence to obtain a node ciphertext sequence.
[0037] In an exemplary embodiment of the present disclosure, the node feature determination unit determines the node feature set corresponding to each participant according to the node ciphertext sequence of each participant, including:
[0038] Selecting node features corresponding to the node ciphertext sequence from the node features of the node union to form a node feature set;
[0039] The node feature set is sent to the participants corresponding to the node ciphertext sequence until all participants receive the corresponding node feature set.
[0040] In an exemplary embodiment of the present disclosure, the above-mentioned device further includes:
[0041] A feature extraction unit, used to generate a node frequency vector for representing the frequency of occurrence of each node in all node ciphertext sequences and a node position mapping matrix corresponding to each participant according to the node union; wherein the node position mapping matrix includes a vector representation of each node in the node set of the corresponding participant;
[0042] The feature updating unit is used to update the node features fed back by each participant again according to the node frequency vector and the node position mapping matrix of each participant if it is detected that the number of updated times does not meet the preset conditions; and feed back the results of the re-updating to the corresponding participants until the number of updated times meets the preset conditions.
[0043] In an exemplary embodiment of the present disclosure, the node clustering unit performs node clustering according to the node features fed back by each participant to obtain multiple community clusters, including:
[0044] Receive node characteristics feedback from all participants;
[0045] Perform fusion processing on the updated different node features corresponding to the same node to obtain a fusion processing result;
[0046] Node clustering is performed based on the fusion processing results and the updated node features corresponding to different nodes to obtain multiple community clusters.
[0047] In an exemplary embodiment of the present disclosure, the community division unit generates a community division result corresponding to each participant according to a plurality of community clusters, including:
[0048] Determine, based on multiple community clusters, the community cluster to which each node in the local node set of each participant belongs;
[0049] The community division results corresponding to each participant are generated according to the community cluster to which each node belongs.
[0050] According to a third aspect of an embodiment of the present disclosure, a community division system based on federated learning is provided, including:
[0051] Each participant is used to send a node ciphertext sequence;
[0052] The server is used to determine the node union according to the node ciphertext sequence sent by each participant; generate node features for each node in the node union, and determine the node feature set corresponding to each participant according to the node ciphertext sequence of each participant; and send the initialized community cluster features and node feature set to the corresponding participant;
[0053] Each participant is also used to update the corresponding node features according to the local model and community cluster features, and feed back the updated node features to the server;
[0054] The server is further configured to cluster nodes according to node features fed back by each participant to obtain multiple community clusters when the number of updates meets a preset condition; wherein each community cluster includes at least one node; generate community division results corresponding to each participant according to the multiple community clusters, and send the community division results of each participant to the corresponding participant respectively;
[0055] Each participant is also used to receive the community division results sent by the server.
[0056] According to a fourth aspect of an embodiment of the present disclosure, a computer-readable medium is provided, on which a computer program is stored. When the program is executed by a processor, the community division method based on federated learning as described in the first aspect of the above embodiment is implemented.
[0057] According to a fifth aspect of an embodiment of the present disclosure, an electronic device is provided, comprising: one or more processors; a storage device for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement the community partitioning method based on federated learning as described in the first aspect of the above embodiment.
[0058] According to a sixth aspect of the present application, a computer program product or a computer program is provided, the computer program product or the computer program comprising computer instructions, the computer instructions being stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the methods provided in the above-mentioned various optional implementations.
[0059] The technical solution provided by the embodiments of the present disclosure may have the following beneficial effects:
[0060] In the technical solutions provided in some embodiments of the present disclosure, a node union can be determined based on a node ciphertext sequence sent by each participant; node features are generated for each node in the node union, and a node feature set corresponding to each participant is determined based on the node ciphertext sequence of each participant; the initialized community cluster features and node feature set are sent to the corresponding participants; wherein each participant updates the corresponding node features based on the local model and the community cluster features; when the number of updates meets a preset condition, node clustering is performed based on the node features fed back by each participant to obtain multiple community clusters; wherein each community cluster contains at least one node; a community division result corresponding to each participant is generated based on the multiple community clusters, and the community division results of each participant are sent to the corresponding participants respectively.
[0061] By implementing the embodiments of the present disclosure, it is possible to integrate the nodes of each participant and extract features for each node, and then implement iteration of node features through federated learning, thereby implementing community division based on the iterated node features. In this way, community division based on federated learning can be implemented, so that each participant can understand the community to which the local node belongs based on all the nodes of each participant without leaking local node data, so that users can timely understand the correlation between local nodes.
[0062] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0063] The accompanying drawings herein are incorporated into the specification and constitute a part of the specification, illustrate embodiments consistent with the present disclosure, and together with the specification are used to explain the principles of the present disclosure. Obviously, the accompanying drawings described below are only some embodiments of the present disclosure, and for ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without creative work.
[0064] Figure 1 The exemplary architecture diagram of a community division device based on federated learning to which the embodiment of the present disclosure can be applied is schematically shown;
[0065] Figure 2 A schematic diagram of the structure of a computer system suitable for implementing an electronic device of an embodiment of the present disclosure is shown;
[0066] Figure 3 A flowchart of a community division method based on federated learning according to an embodiment of the present disclosure is schematically shown;
[0067] Figure 4 A flowchart of a community division method based on federated learning according to another embodiment of the present disclosure is schematically shown;
[0068] Figure 5 The following schematically shows an architecture diagram of a community partitioning system based on federated learning according to another embodiment of the present disclosure;
[0069] Figure 6 The structural block diagram of a community division device based on federated learning according to an embodiment of the present disclosure is schematically shown. DETAILED DESCRIPTION
[0070] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in a variety of forms and should not be construed as being limited to the examples set forth herein; on the contrary, these embodiments are provided so that the present disclosure will be more comprehensive and complete, and the concepts of the example embodiments are fully conveyed to those skilled in the art. The described features, structures, or characteristics may be combined in one or more embodiments in any suitable manner. In the following description, many specific details are provided to provide a full understanding of the embodiments of the present disclosure. However, those skilled in the art will appreciate that the technical solutions of the present disclosure may be practiced while omitting one or more of the specific details, or other methods, components, devices, steps, etc. may be adopted. In other cases, known technical solutions are not shown or described in detail to avoid obscuring various aspects of the present disclosure.
[0071] In addition, the accompanying drawings are only schematic illustrations of the present disclosure and are not necessarily drawn to scale. The same reference numerals in the figures represent the same or similar parts, and their repeated description will be omitted. Some of the block diagrams shown in the accompanying drawings are functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities can be implemented in software form, or implemented in one or more hardware modules or integrated circuits, or implemented in different networks and / or processor devices and / or microcontroller devices.
[0072] Figure 1 The following is a schematic diagram schematically showing an exemplary system architecture of a method and apparatus for community division based on federated learning to which an embodiment of the present disclosure can be applied.
[0073] like Figure 1 As shown, the system architecture 100 may include one or more of terminal devices 101, 102, 103, a network 104, and a server 105. The network 104 is used to provide a medium for communication links between the terminal devices 101, 102, 103 and the server 105. The network 104 may include various connection types, such as wired, wireless communication links or optical fiber cables, etc. The terminal devices 101, 102, 103 may be various electronic devices with display screens, including but not limited to desktop computers, portable computers, smart phones, tablet computers, etc. It should be understood that Figure 1 The number of terminal devices, networks and servers in the embodiment is only for illustration. According to the implementation requirements, there may be any number of terminal devices, networks and servers. For example, the server 105 may be a server cluster composed of multiple servers. For example, the terminal device 101, 102 or 103 of each participant can send a node ciphertext sequence; the server 105 determines the node union according to the node ciphertext sequence sent by each participant; generates node features for each node in the node union, and determines the node feature set corresponding to each participant according to the node ciphertext sequence of each participant; sends the initialized community cluster features and node feature set to the corresponding participant; the terminal device 101, 102 or 103 of each participant updates the corresponding node features according to the local model and the community cluster features, and feeds back the updated node features to the server; when the number of updates of the server 105 meets the preset conditions, the node clustering is performed according to the node features fed back by each participant to obtain multiple community clusters; each community cluster contains at least one node; generates community division results corresponding to each participant according to the multiple community clusters, and sends the community division results of each participant to the corresponding participant respectively; the terminal device 101, 102 or 103 of each participant receives the community division results sent by the server.
[0074] Figure 2 A schematic diagram of the structure of a computer system suitable for implementing an electronic device of an embodiment of the present disclosure is shown.
[0075] It should be noted that Figure 2 The computer system 200 of the electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.
[0076] like Figure 2As shown, the computer system 200 includes a central processing unit (CPU) 201, which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM) 202 or the program loaded from the storage part 208 to the random access memory (RAM) 203. In the (RAM) 203, various programs and data required for system operation are also stored. The (CPU) 201, the (ROM) 202 and the (RAM) 203 are connected to each other through a bus 204. An input / output (I / O) interface 205 is also connected to the bus 204.
[0077] The following components are connected to the (I / O) interface 205: an input section 206 including a keyboard, a mouse, etc.; an output section 207 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 208 including a hard disk, etc.; and a communication section 209 including a network interface card such as a LAN card, a modem, etc. The communication section 209 performs communication processing via a network such as the Internet. A drive 210 is also connected to the (I / O) interface 205 as needed. A removable medium 211, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 210 as needed, so that a computer program read therefrom is installed into the storage section 208 as needed.
[0078] In particular, according to an embodiment of the present disclosure, the process described below with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program contains program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through the communication part 209, and / or installed from a removable medium 211. When the computer program is executed by the central processing unit (CPU) 201, various functions defined in the method and apparatus of the present application are executed.
[0079] It should be noted that the computer-readable medium shown in the present disclosure may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, device or device. In the present disclosure, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, in which a computer-readable program code is carried. This propagated data signal may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Computer-readable signal media may also be any computer-readable medium other than computer-readable storage media, which may send, propagate or transmit a program for use by or in conjunction with an instruction execution system, apparatus or device. The program code contained on the computer-readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, optical cable, RF, etc., or any suitable combination of the above.
[0080] The flow chart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present disclosure. In this regard, each box in the flow chart or block diagram can represent a module, a program segment, or a part of a code, and the above-mentioned module, program segment, or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some implementations as replacements, the functions marked in the box can also occur in a sequence different from that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flow chart, and the combination of the boxes in the block diagram or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0081] The units involved in the embodiments described in the present disclosure may be implemented by software or hardware, and the units described may also be arranged in a processor. The names of these units do not, in some cases, constitute limitations on the units themselves.
[0082] As another aspect, the present application also provides a computer-readable medium, which may be included in the electronic device described in the above embodiment; or may exist independently without being assembled into the electronic device. The above computer-readable medium carries one or more programs, and when the above one or more programs are executed by an electronic device, the electronic device implements the method described in the following embodiment. For example, the electronic device may implement the following method. Figure 3 The various steps shown, etc.
[0083] This example implementation provides a community division method based on federated learning. Figure 3 As shown, the community division method based on federated learning may include the following steps S310 to S350, specifically:
[0084] Step S310: Determine the node union according to the node ciphertext sequence sent by each participant.
[0085] Step S320: Generate node features for each node in the node set, and determine the node feature set corresponding to each participant according to the node ciphertext sequence of each participant.
[0086] Step S330: Send the initialized community cluster features and node feature sets to the corresponding participants; wherein each participant updates the corresponding node features according to the local model and community cluster features.
[0087] Step S340: When the number of updates meets the preset conditions, node clustering is performed according to the node features fed back by each participant to obtain multiple community clusters; wherein each community cluster contains at least one node.
[0088] Step S350: Generate community division results corresponding to each participant according to multiple community clusters, and send the community division results of each participant to the corresponding participant respectively.
[0089] Implementation Figure 3The community division method based on federated learning shown can integrate the nodes of each participant, extract features for each node, and then implement node feature iteration through federated learning, thereby implementing community division based on iterated node features. In this way, community division based on federated learning can be implemented, so that each participant can understand the community to which the local node belongs based on all the nodes of each participant without leaking the local node data, so that users can timely understand the association between local nodes. In addition, each participant only needs to provide the node ciphertext sequence of the local node to obtain the node community division result, which can ensure that the data of the local node is not leaked. Without leaking the real data, the node community division result can also be obtained, thereby ensuring the security of the user data corresponding to the node.
[0090] The execution subject of steps S310 to S350 may be a central server, which may exchange data with each participant, and each participant may be understood as a server / terminal device of each organization. i ={C1,C2,……,C n}; where i∈[1,n], n is a positive integer.
[0091] Next, the above steps of this exemplary embodiment are described in more detail.
[0092] In step S310, the node union is determined according to the node ciphertext sequence sent by each participant.
[0093] Specifically, the node union does not include repeated node ciphertexts. For example, if the participants are C1, C2, and C3, the local node ciphertext set of C1 is [node ciphertext 1, node ciphertext 2], the local node ciphertext set of C2 is [node ciphertext 1, node ciphertext 3], and the local node ciphertext set of C3 is [node ciphertext 3, node ciphertext 4]. Then, the node union V determined according to the node ciphertext sequence sent by each participant is union It can be [node ciphertext 1, node ciphertext 2, node ciphertext 3, node ciphertext 4].
[0094] As an optional embodiment, the above method also includes: receiving a node ciphertext sequence sent by each participant; wherein each participant calculates a hash value corresponding to a local node set based on a preset hash algorithm to obtain a hash value sequence, and encrypts each hash value in the hash value sequence to obtain a node ciphertext sequence.
[0095] Specifically, each participant calculates the hash value corresponding to the local node set based on the preset hash algorithm to obtain a hash value sequence, including: each participant obtains algorithm information to determine the preset hash algorithm, and calculates the hash value corresponding to the local node set based on the preset hash algorithm to obtain a hash value sequence; different participants correspond to different hash value sequences and different local node sets, the local node set may include at least one node, the hash value sequence may include the hash value of at least one node, and the number of elements contained in the corresponding local node set and the hash value sequence is the same; wherein the preset hash algorithm may be an MD4 hash algorithm, an MD5 hash algorithm, a SHA hash algorithm, etc., which is not limited in the embodiments of the present application.
[0096] For example, if the participants are C1, C2, and C3, the local node set of C1 is [node 1, node 2], the local node set of C2 is [node 1, node 3], and the local node set of C3 is [node 3, node 4]. Then, C1 can calculate the hash value for each node in [node 1, node 2] to obtain the hash value sequence [hash value 1, hash value 2], C2 can calculate the hash value for each node in [node 1, node 3] to obtain the hash value sequence [hash value 1, hash value 3], and C3 can calculate the hash value for each node in [node 3, node 4] to obtain the hash value sequence [hash value 3, hash value 4]. It should be noted that the preset hash algorithm used by each participant is consistent, so that the hash value of the node calculated when the participants hold the same node is also consistent.
[0097] In addition, each hash value in the hash value sequence is encrypted to obtain a node ciphertext sequence, including: encrypting each hash value in the hash value sequence based on a preset encryption algorithm to obtain a node ciphertext sequence; wherein the preset encryption algorithm can be a hash operation message authentication code encryption algorithm, an AES encryption algorithm, a 3DES encryption algorithm, a DES encryption algorithm, an RSA encryption algorithm, an ECC encryption algorithm, etc., and the embodiments of the present application are not limited thereto.
[0098] For example, if the participants are participant C1, participant C2, and participant C3, participant C1 can encrypt each hash value in the hash value sequence [hash value 1, hash value 2] based on the preset encryption algorithm to obtain a node ciphertext sequence [node ciphertext 1, node ciphertext 2], participant C2 can encrypt each hash value in the hash value sequence [hash value 1, hash value 3] based on the preset encryption algorithm to obtain a node ciphertext sequence [node ciphertext 1, node ciphertext 3], and participant C3 can encrypt each hash value in the hash value sequence [hash value 3, hash value 4] based on the preset encryption algorithm to obtain a node ciphertext sequence [node ciphertext 3, node ciphertext 4].
[0099] It can be seen that by implementing this optional embodiment, the node ciphertext encrypted by each participant can be received, so that each participant can be provided with the result of community division without leaking the local real node data.
[0100] In step S320, node features are generated for each node in the node set, and a node feature set corresponding to each participant is determined based on the node ciphertext sequence of each participant.
[0101] Specifically, node features It can be represented in the form of vector / matrix, where dim is the dimension of the node feature. For example, if the node union V union It can be [node ciphertext 1, node ciphertext 2, node ciphertext 3, node ciphertext 4], and the participants are participant C1, participant C2, and participant C3. The node ciphertext sequence of participant C1 is [node ciphertext 1, node ciphertext 2], the node ciphertext sequence of participant C2 is [node ciphertext 1, node ciphertext 3], and the node ciphertext sequence of participant C3 is [node ciphertext 3, node ciphertext 4]. According to the node ciphertext sequence of participant C1 being [node ciphertext 1, node ciphertext 2], the node feature set corresponding to participant C1 can be determined as [node feature 1, node feature 2], according to the node ciphertext sequence of participant C2 being [node ciphertext 1, node ciphertext 3], the node feature set corresponding to participant C2 can be determined as [node feature 1, node feature 3], and according to the node ciphertext sequence of participant C3 being [node ciphertext 3, node ciphertext 4], the node feature set corresponding to participant C3 can be determined as [node feature 3, node feature 4].
[0102] As an optional embodiment, a node feature set corresponding to each participant is determined based on the node ciphertext sequence of each participant, including: selecting node features corresponding to the node ciphertext sequence from the node features of the node union to form a node feature set; sending the node feature set to the participants corresponding to the node ciphertext sequence until all participants receive the corresponding node feature set.
[0103] For example, if the participants are participant C1, participant C2, and participant C3, the node ciphertext sequence of participant C1 is [node ciphertext 1, node ciphertext 2], and the node ciphertext sequence of participant C2 is [node ciphertext 1, node ciphertext 3], then the node feature set of participant C1 is determined to be [node feature 1, node feature 2], then the node feature set of participant C2 is determined to be [node feature 1, node feature 3], then the node feature set of participant C3 is determined to be [node feature 3, node feature 4], and further, [node feature 1, node feature 2] can be sent to participant C1, [node feature 1, node feature 3] can be sent to participant C2, and [node feature 3, node feature 4] can be sent to participant C3.
[0104] It can be seen that by implementing this optional embodiment, the nodes of each participant can be integrated, and the features of each node in the integration result can be extracted, and the corresponding features can be sent back to the participant based on the nodes held by each participant, so that each participant can iterate the node features locally, thereby realizing federated learning without leaking real data.
[0105] In step S330, the initialized community cluster features and node feature sets are sent to corresponding participants; wherein each participant updates the corresponding node features according to the local model and community cluster features.
[0106] Specifically, the initialized community cluster features can be expressed as |C| is the number of predefined clusters. In addition, the method in which the participants update the corresponding node features according to the local model and community cluster features can be: the participants update the corresponding node features according to the local graph G i ={node set V i , the edge set E i} and generate random walk sequences by random walk; the sequence is modeled by skip-gram, and the edge set E i The edges in are used to connect nodes and represent the relationship between nodes. Then, based on the random walk sequence and the preset loss function Update node features; where f(·) can be understood as a feature, and f(u) represents the node features from EN i Get the feature corresponding to node u, μ c To obtain the features corresponding to the cth cluster from EC, V is the set of participant nodes, and the i-th participant is V i , C is the cluster set, N B (v) is the set of neighboring nodes within the v-node window in the random walk sequence, and γ is a preset parameter.
[0107] As an optional embodiment, the above method also includes: generating a node frequency vector for characterizing the frequency of occurrence of each node in all node ciphertext sequences and a node position mapping matrix corresponding to each participant based on the node union; wherein the node position mapping matrix includes a vector representation of each node in the node set of the corresponding participant; if it is detected that the number of updates does not meet the preset conditions, the node features fed back by each participant are updated again according to the node frequency vector and the node position mapping matrix of each participant; and the results of the re-update are fed back to the corresponding participant until the number of updates meets the preset conditions.
[0108] Specifically, generating a node frequency vector for representing the frequency of occurrence of each node in all node ciphertext sequences and a node position mapping matrix corresponding to each participant according to the node union, including: generating a node frequency vector vc for representing the frequency of occurrence of each node in all node ciphertext sequences according to the node union, For example, if the participants are participant C1, participant C2, and participant C3, the node ciphertext sequence of participant C1 is [node ciphertext 1, node ciphertext 2], the node ciphertext sequence of participant C2 is [node ciphertext 1, node ciphertext 3], and the node ciphertext sequence of participant C3 is [node ciphertext 3, node ciphertext 4], then the frequency of node 1 is 2, the frequency of node 2 is 1, the frequency of node 3 is 2, and the frequency of node 4 is 1. The node frequency vector generated according to the node union can be used to represent the frequency of node 1, node 2, node 3, and node 4, such as [2, 1, 2, 1]; the node position mapping matrix PM corresponding to each participant is generated according to the node union i , PM i Used to indicate the C i The position mapping matrix of the participants, PM i Used to represent the participant C i Each node in the node union V union The position in.
[0109] In addition, the node frequency vector vc and the node position mapping matrix PM of each participant can also be used. i Node characteristics EN fed back by each participant i Update again to obtain the updated result EN; where EN=(∑ i EN i *PM i T )×1 / vc; then according to the updated result EN and expression EN i =PM i *EN calculation needs to be re-issued to each participant’s node feature EN i, so that all participants can re-issue the node feature EN i Update again until the number of updates meets the preset conditions.
[0110] It can be seen that by implementing this optional embodiment, multiple updates of features within preset conditions can be achieved through the node frequency vector and the node position mapping matrix, thereby achieving feature aggregation of multiple participants.
[0111] In step S340, when the number of updates meets the preset conditions, node clustering is performed according to the node features fed back by each participant to obtain multiple community clusters; wherein each community cluster contains at least one node.
[0112] Specifically, the preset condition can be used to limit the number of updates, such as 100 times. In addition, the nodes are clustered according to the node features fed back by each participant to obtain multiple community clusters, including: based on a preset clustering method (such as K-means), the nodes are clustered according to the node features fed back by each participant to obtain multiple community clusters; wherein, the nodes included in each community cluster can come from the same participant or from multiple participants, which is not limited in the embodiments of the present application.
[0113] As an optional embodiment, node clustering is performed according to the node features fed back by each participant to obtain multiple community clusters, including: receiving the node features fed back by each participant; fusing different updated node features corresponding to the same node to obtain a fusion processing result; and node clustering is performed according to the fusion processing result and the updated node features corresponding to different nodes to obtain multiple community clusters.
[0114] Specifically, for example, if the participants are C1, C2, and C3, the node features fed back by C1 include [node feature 1, node feature 2], the node features fed back by C2 include [node feature 1, node feature 3], and the node features fed back by C3 include [node feature 3, node feature 4]. The same nodes include node feature 1 fed back by C1 and node feature 1 fed back by C2, as well as node feature 3 fed back by C2 and node feature 3 fed back by C3. Then, fusion processing can be performed on node feature 1 fed back by C1 and node feature 1 fed back by C2 to obtain fusion processing result 1, and fusion processing can be performed on node feature 3 fed back by C2 and node feature 3 fed back by C3 to obtain fusion processing result 3. Then, node clustering can be performed based on fusion processing result 1, fusion processing result 2, updated node feature 2, and updated node feature 4 to obtain multiple community clusters.
[0115] It can be seen that by implementing this optional embodiment, when the node characteristics meet the update times in the preset conditions, each node can be clustered according to the node characteristics, so as to determine the correlation between different nodes and provide richer description information of the node relationship (i.e., community division results).
[0116] In step S350, a community division result corresponding to each participant is generated according to the multiple community clusters, and the community division result of each participant is sent to the corresponding participant respectively.
[0117] Specifically, the community division results of each participant may be the same or different, and this embodiment of the present application does not limit this.
[0118] As an optional embodiment, community division results corresponding to each participant are generated based on multiple community clusters, including: determining the community cluster to which each node in the local node set of each participant belongs based on the multiple community clusters; and generating the community division results corresponding to each participant based on the community cluster to which each node belongs.
[0119] Specifically, the community division result may include each node of the participant and the community cluster to which each node belongs. For example, the community division result corresponding to participant C1 including node 1 and node 2 may be expressed as {node 1:2, node 2:2}, wherein {node 1:2, node 2:2} may be understood as the community cluster to which node 1 belongs is represented as 2, and the community cluster to which node 2 belongs is represented as 2, that is, node 1 and node 2 belong to community cluster 2, and node 1 and node 2 may be understood as the same type of nodes. If node 1 is used to represent the data of user A, and participant C1 has pre-identified user A as a user with a bad record, the community division result corresponding to participant C1 may facilitate participant C1 to understand that node 1 and node 2 belong to the same type of nodes, that is, user B corresponding to node 2 may also become a user with a bad record.
[0120] It can be seen that the implementation of this optional embodiment can provide each participant with the community division results of the node based on the results of federated learning, so that each participant can understand the community to which each local node belongs, thereby facilitating the participant to more accurately classify the user data corresponding to each node.
[0121] See also Figure 4 , Figure 4 The flowchart of the community division method based on federated learning according to another embodiment of the present disclosure is schematically shown. Figure 4 As shown, the community division method based on federated learning may include: steps S410 to S444.
[0122] Step S410: Party A calculates the hash value corresponding to the local node set based on a preset hash algorithm to obtain a hash value sequence, and encrypts each hash value in the hash value sequence to obtain a node ciphertext sequence A.
[0123] Step S412: Party B calculates the hash values corresponding to the local node set based on a preset hash algorithm to obtain a hash value sequence, and encrypts each hash value in the hash value sequence to obtain a node ciphertext sequence B.
[0124] Step S414: Party A sends node ciphertext sequence A.
[0125] Step S416: Party B sends node ciphertext sequence B.
[0126] Step S418: The server determines the node union according to the node ciphertext sequence A and the node ciphertext sequence B.
[0127] Step S420: The server generates a node frequency vector representing the frequency of occurrence of each node in all node ciphertext sequences and a node position mapping matrix corresponding to each participant based on the node union; wherein the node position mapping matrix includes a vector representation of each node in the node set of the corresponding participant.
[0128] Step S422: The server selects node features corresponding to node ciphertext sequence A from the node features of the node union to form node feature set A, and selects node features corresponding to node ciphertext sequence B from the node features of the node union to form node feature set B.
[0129] Step S424: Participant A sends the initialized community cluster features and node feature set A.
[0130] Step S426: Participant B sends the initialized community cluster features and node feature set B.
[0131] Step S428: Participant A updates the node features in node feature set A according to local model A and community cluster features.
[0132] Step S430: Participant B updates the node features in node feature set B according to local model B and community cluster features.
[0133] Step S432: Party A sends the updated node feature set A.
[0134] Step S434: Party B sends the updated node feature set B.
[0135] Step S436: If the server detects that the number of updated times does not meet the preset conditions, it will update the node features fed back by each participant again according to the node frequency vector and the node position mapping matrix of each participant; and feed back the updated results to the corresponding participants until the number of updated times meets the preset conditions.
[0136] Step S438: When the number of server updates meets the preset conditions, node clustering is performed according to the node features fed back by each participant to obtain multiple community clusters; wherein each community cluster contains at least one node.
[0137] Step S440: The server determines the community cluster to which each node in the local node set of participants A and B belongs based on multiple community clusters, and generates the community division result corresponding to participant A and the community division result corresponding to participant B based on the community cluster to which each node belongs.
[0138] Step S442: Participant A sends the community division result corresponding to participant A.
[0139] Step S444: Participant B sends the community division result corresponding to participant B.
[0140] It can be seen that implementation Figure 4 The method shown can integrate the nodes of each participant, extract features for each node, and then implement node feature iteration through federated learning, thereby implementing community division based on iterated node features. In this way, community division based on federated learning can be implemented, so that each participant can understand the community to which the local node belongs based on all the nodes of each participant without leaking the local node data, so that users can timely understand the association between local nodes. In addition, each participant only needs to provide the node ciphertext sequence of the local node to obtain the node community division result, which can ensure that the data of the local node is not leaked. Without leaking the real data, the node community division result can also be obtained, thereby ensuring the security of the user data corresponding to the node.
[0141] See also Figure 5 , Figure 5 The following schematically shows an architecture diagram of a community partitioning system based on federated learning according to another embodiment of the present disclosure. Figure 5 As shown, the community division system 500 based on federated learning includes a server 520 and participants 510 .
[0142] Each participant 510 is used to send a node ciphertext sequence;
[0143] The server 520 is used to determine a node union according to the node ciphertext sequence sent by each participant 510; generate node features for each node in the node union, and determine a node feature set corresponding to each participant 510 according to the node ciphertext sequence of each participant 510; and send the initialized community cluster features and node feature set to the corresponding participant;
[0144] Each participant 510 is also used to update corresponding node features according to the local model and community cluster features, and feed back the updated node features to the server 520;
[0145] The server 520 is further configured to cluster nodes according to the node features fed back by each participant 510 to obtain a plurality of community clusters when the number of updates meets a preset condition; wherein each community cluster includes at least one node; generate a community division result corresponding to each participant 510 according to the plurality of community clusters, and send the community division result of each participant 510 to the corresponding participant respectively;
[0146] Each participant 510 is also used to receive the community division result sent by the server 520.
[0147] It can be seen that implementation Figure 5 The system shown can integrate the nodes of each participant, extract features for each node, and then implement node feature iteration through federated learning, thereby implementing community division based on iterated node features. In this way, community division based on federated learning can be implemented, so that each participant can understand the community to which the local node belongs based on all the nodes of each participant without leaking the local node data, so that users can timely understand the association between local nodes. In addition, each participant only needs to provide the node ciphertext sequence of the local node to obtain the node community division result, which can ensure that the data of the local node is not leaked. Without leaking the real data, the node community division result can also be obtained, thereby ensuring the security of the user data corresponding to the node.
[0148] Furthermore, in this exemplary embodiment, a community division device based on federated learning is also provided. Figure 6 As shown, the community division device 600 based on federated learning may include:
[0149] A node union determination unit 601, configured to determine a node union according to a node ciphertext sequence sent by each participant;
[0150] A node feature determination unit 602 is used to generate node features for each node in the node set, and determine a node feature set corresponding to each participant according to the node ciphertext sequence of each participant;
[0151] The node feature sending unit 603 is used to send the initialized community cluster features and node feature set to the corresponding participants; wherein each participant updates the corresponding node features according to the local model and community cluster features;
[0152] The node clustering unit 604 is used to cluster nodes according to the node features fed back by each participant when the number of updates meets a preset condition, so as to obtain multiple community clusters; wherein each community cluster contains at least one node;
[0153] The community division unit 605 is used to generate a community division result corresponding to each participant according to multiple community clusters, and send the community division result of each participant to the corresponding participant respectively.
[0154] It can be seen that the implementation Figure 6 The device shown can integrate the nodes of each participant, extract features for each node, and then implement node feature iteration through federated learning, thereby implementing community division based on iterated node features, so that community division based on federated learning can be implemented, so that each participant can understand the community to which the local node belongs based on all the nodes of each participant without leaking the local node data, so that users can timely understand the association between local nodes. In addition, each participant only needs to provide the node ciphertext sequence of the local node to obtain the node community division result, which can ensure that the data of the local node is not leaked, and the node community division result can be obtained without leaking the real data, thereby ensuring the security of the user data corresponding to the node.
[0155] In an exemplary embodiment of the present disclosure, the above-mentioned device further includes:
[0156] The sequence receiving unit is used to receive the node ciphertext sequence sent by each participant; wherein each participant calculates the hash value corresponding to the local node set based on a preset hash algorithm to obtain a hash value sequence, and encrypts each hash value in the hash value sequence to obtain a node ciphertext sequence.
[0157] It can be seen that by implementing this optional embodiment, the node ciphertext encrypted by each participant can be received, so that each participant can be provided with the result of community division without leaking the local real node data.
[0158] In an exemplary embodiment of the present disclosure, the node feature determination unit 602 determines the node feature set corresponding to each participant according to the node ciphertext sequence of each participant, including:
[0159] Selecting node features corresponding to the node ciphertext sequence from the node features of the node union to form a node feature set;
[0160] The node feature set is sent to the participants corresponding to the node ciphertext sequence until all participants receive the corresponding node feature set.
[0161] It can be seen that by implementing this optional embodiment, the nodes of each participant can be integrated, and the features of each node in the integration result can be extracted, and the corresponding features can be sent back to the participant based on the nodes held by each participant, so that each participant can iterate the node features locally, thereby interfering with the realization of federated learning without leaking real data.
[0162] In an exemplary embodiment of the present disclosure, the above-mentioned device further includes:
[0163] A feature extraction unit, used to generate a node frequency vector for representing the frequency of occurrence of each node in all node ciphertext sequences and a node position mapping matrix corresponding to each participant according to the node union; wherein the node position mapping matrix includes a vector representation of each node in the node set of the corresponding participant;
[0164] The feature updating unit is used to update the node features fed back by each participant again according to the node frequency vector and the node position mapping matrix of each participant if it is detected that the number of updated times does not meet the preset conditions; and feed back the results of the re-updating to the corresponding participants until the number of updated times meets the preset conditions.
[0165] It can be seen that by implementing this optional embodiment, multiple updates of features within preset conditions can be achieved through the node frequency vector and the node position mapping matrix, thereby achieving feature aggregation of multiple participants.
[0166] In an exemplary embodiment of the present disclosure, the node clustering unit 604 performs node clustering according to the node features fed back by each participant to obtain multiple community clusters, including:
[0167] Receive node characteristics feedback from all participants;
[0168] Perform fusion processing on the updated different node features corresponding to the same node to obtain a fusion processing result;
[0169] Node clustering is performed based on the fusion processing results and the updated node features corresponding to different nodes to obtain multiple community clusters.
[0170] It can be seen that by implementing this optional embodiment, when the node characteristics meet the update times in the preset conditions, each node can be clustered according to the node characteristics, so as to determine the correlation between different nodes and provide richer description information of the node relationship (i.e., community division results).
[0171] In an exemplary embodiment of the present disclosure, the community division unit 605 generates a community division result corresponding to each participant according to a plurality of community clusters, including:
[0172] Determine, based on multiple community clusters, the community cluster to which each node in the local node set of each participant belongs;
[0173] The community division results corresponding to each participant are generated according to the community cluster to which each node belongs.
[0174] It can be seen that the implementation of this optional embodiment can provide each participant with the community division results of the node based on the results of federated learning, so that each participant can understand the community to which each local node belongs, thereby facilitating the participant to more accurately classify the user data corresponding to each node.
[0175] It should be noted that, although several modules or units of the device for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the embodiments of the present disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. On the contrary, the features and functions of one module or unit described above can be further divided into multiple modules or units to be embodied.
[0176] Since the various functional modules of the community division device based on federated learning in the example embodiment of the present disclosure correspond to the steps of the example embodiment of the community division method based on federated learning mentioned above, for details not disclosed in the embodiment of the device of the present disclosure, please refer to the embodiment of the community division method based on federated learning mentioned above in the present disclosure.
[0177] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary techniques in the art that are not disclosed in the present disclosure. The specification and examples are intended to be exemplary only, and the true scope and spirit of the present disclosure are indicated by the following claims.
[0178] It should be understood that the present disclosure is not limited to the exact structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.
Claims
1. A community division method based on federated learning, characterized in that: include: Determine the node union according to the node ciphertext sequence sent by each participant; wherein the node ciphertext sequence is obtained in the following manner: each participant calculates the hash value corresponding to the local node set based on a preset hash algorithm to obtain a hash value sequence, and encrypts each hash value in the hash value sequence to obtain a node ciphertext sequence; Generate node features for each node in the node union, and determine a node feature set corresponding to each participant according to the node ciphertext sequence of each participant, including: selecting node features corresponding to the node ciphertext sequence from the node features of the node union to form a node feature set; sending the node feature set to the participants corresponding to the node ciphertext sequence until all participants receive the corresponding node feature set; The initialized community cluster features and the node feature set are sent to corresponding participants; each participant updates the corresponding node features according to the local model and the community cluster features; When the number of updates meets the preset conditions, node clustering is performed based on the node features fed back by each participant based on a preset clustering method to obtain multiple community clusters; wherein each community cluster contains at least one node, and the nodes included in each community cluster may come from the same participant or from multiple participants; A community division result corresponding to each participant is generated according to the multiple community clusters, and the community division result of each participant is sent to the corresponding participant respectively.
2. The method according to claim 1, characterized in that The method further comprises: Receive the node ciphertext sequence sent by each participant.
3. The method according to claim 1, characterized in that The method further comprises: Generate a node frequency vector for representing the frequency of occurrence of each node in all node ciphertext sequences and a node position mapping matrix corresponding to each participant according to the node union; wherein the node position mapping matrix includes a vector representation of each node in the node set of the corresponding participant; If it is detected that the updated number of times does not meet the preset condition, the node features fed back by each participant are updated again according to the node frequency vector and the node position mapping matrix of each participant; The updated results are fed back to the corresponding participants until the number of updates meets the preset conditions.
4. The method according to claim 1, characterized in that: Nodes are clustered according to the node features fed back by the participants to obtain multiple community clusters, including: Receive node characteristics fed back by each participant; Perform fusion processing on the updated different node features corresponding to the same node to obtain a fusion processing result; Node clustering is performed according to the fusion processing result and updated node features corresponding to different nodes to obtain multiple community clusters.
5. The method according to any one of claims 1 to 4, characterized in that: Generating community division results corresponding to each participant according to the multiple community clusters includes: Determine, according to the multiple community clusters, the community cluster to which each node in the local node set of each participant belongs; The community division results corresponding to the participants are generated according to the community cluster to which each node belongs.
6. A community division device based on federated learning, characterized in that: include: A node union determination unit, configured to determine a node union according to a node ciphertext sequence sent by each participant; wherein the node ciphertext sequence is obtained in the following manner: each participant calculates a hash value corresponding to a local node set based on a preset hash algorithm to obtain a hash value sequence, and encrypts each hash value in the hash value sequence to obtain a node ciphertext sequence; A node feature determination unit, configured to generate node features for each node in the node union, and determine a node feature set corresponding to each participant according to the node ciphertext sequence of each participant, including: selecting node features corresponding to the node ciphertext sequence from the node features of the node union to form a node feature set; sending the node feature set to the participant corresponding to the node ciphertext sequence until all the participants receive the corresponding node feature set; A node feature sending unit, used to send the initialized community cluster features and the node feature set to corresponding participants; each participant updates the corresponding node features according to the local model and the community cluster features; A node clustering unit, configured to cluster nodes according to the node features fed back by the participants based on a preset clustering method when the number of updates meets a preset condition, to obtain multiple community clusters; wherein each community cluster includes at least one node, and the nodes included in each community cluster may come from the same participant or from multiple participants; The community division unit is used to generate a community division result corresponding to each participant according to the multiple community clusters, and send the community division result of each participant to the corresponding participant respectively.
7. A community division system based on federated learning, characterized in that: include: Each participant is used to send a node ciphertext sequence; wherein the node ciphertext sequence is obtained in the following manner: each participant calculates the hash value corresponding to the local node set based on a preset hash algorithm to obtain a hash value sequence, and encrypts each hash value in the hash value sequence to obtain a node ciphertext sequence; The server is used to determine a node union according to the node ciphertext sequences sent by each participant; generate node features for each node in the node union, and determine a node feature set corresponding to each participant according to the node ciphertext sequences of each participant; send the initialized community cluster features and the node feature set to the corresponding participant; wherein the node feature set is obtained in the following manner: select node features corresponding to the node ciphertext sequence from the node features of the node union to form a node feature set; send the node feature set to the participant corresponding to the node ciphertext sequence until all participants receive the corresponding node feature set; Each participant is further configured to update corresponding node features according to the local model and the community cluster features, and feed back the updated node features to the server; The server is further configured to cluster nodes according to the node features fed back by the participants based on a preset clustering method to obtain multiple community clusters when the number of updates meets a preset condition; wherein each community cluster includes at least one node, and the nodes included in each community cluster may come from the same participant or from multiple participants; generate community division results corresponding to each participant according to the multiple community clusters, and send the community division results of each participant to the corresponding participant respectively; The participants are also used to receive the community division results sent by the server.
8. A computer readable medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the community division method based on federated learning as described in any one of claims 1 to 5 is implemented.
9. An electronic device, characterized in that: include: one or more processors; A storage device, used to store one or more programs, when the one or more programs are executed by the one or more processors, enables the one or more processors to implement the community division method based on federated learning as described in any one of claims 1 to 5.
