Federated learning method of artificial neural network model based on location information
The method addresses the challenge of maintaining processing performance in federated learning by generating a first global model based on the similarity of location information between devices, improving model performance and optimizing it for devices in similar locations while ensuring data privacy.
Patent Information
- Application Number
- PCT/KR2024/018889
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-12-08
- Filing Date
- 2024-11-26
- Publication Date
- 2025-06-12
AI Technical Summary
Federated learning methods face challenges in maintaining processing performance when a large number of devices with varied input data characteristics participate, leading to degraded performance in processing the types of data mainly input from devices.
A method for federated learning of artificial neural network models based on location information, where a first global model is generated by performing federated learning based on the similarity of location information between devices, using a first local model learned in a first device and a second local model learned in a second device.
This approach improves the performance of the model by clustering artificial neural network models based on location information and performing federated learning, resulting in a global model that is more optimized for devices in similar locations, while ensuring the safe protection of personal information locally.
Smart Images

Figure KR2024018889_12062025_PF_FP_ABST
Abstract
Description
Federated learning method for artificial neural network models based on location information
[0001] The present disclosure relates to a method for federated learning of an artificial neural network model based on location information, and more specifically, to a method for generating a first global model by performing federated learning based on the similarity of location information based on a first local model, which is an artificial neural network model learned in a first device based on first local data, and location information of the first device.
[0002] The rapid growth of AI services is advancing our digital lives to a new level of convenience and innovation. However, these technological advancements also pose serious risks to privacy. Concerns about privacy violations are growing as users' sensitive information is used and transmitted to train AI models.
[0003] In this context, federated learning is emerging as a notable alternative. Federated learning is gaining attention as an innovative method for model updates without sharing learning across distributed devices. Each device performs local training and only transmits updated weights to the central server. This ensures that personal information is securely protected locally, while the global model generated on the server achieves similar performance to that achieved with training based on the entire dataset.
[0004] However, when an excessively large number of devices participate in federated learning, which generates input data with diverse characteristics, the distributed global model has the problem of lowering the processing performance for the types of data that are mainly input from the devices.
[0005] Therefore, there is a demand in the art for federated learning methods that are more optimized for the types of data input to the device.
[0006] Korean Patent Publication No. KR 10-20200106174 A discloses a method for performing blockchain-based federated learning in a hybrid system.
[0007] The present disclosure is conceived in response to the aforementioned background technology, and aims to generate a first global model by performing federated learning based on the similarity of location information based on the location information of the first device and the first local model, which is an artificial neural network model learned in the first device based on the first local data.
[0008] Meanwhile, the technical task to be achieved by the present disclosure is not limited to the technical task mentioned above, and may include various technical tasks within a scope obvious to a person skilled in the art from the contents described below.
[0009] According to an embodiment of the present disclosure for realizing the above-described task, a method for federated learning of an artificial neural network model based on location information by a computing device is disclosed. The method may include the steps of: receiving a first local model, which is an artificial neural network model learned in a first device based on first local data, and location information of the first device; receiving a second local model, which is an artificial neural network model learned in a second device based on second local data, and location information of the second device; calculating a similarity between the location information of the first device and the location information of the second device; and generating a first global model based on the similarity, the first local model, and the second local model.
[0010] In one embodiment, the location information of the first device may include GPS (Global Positioning System) information of the first device or a hyper-dimensional vector converted from the GPS information of the first device, and the location information of the second device may include GPS information of the second device or a hyper-dimensional vector converted from the GPS information of the second device.
[0011] In one embodiment, the similarity may be determined using at least one of: a vector similarity between the location information of the first device and the location information of the second device; or a Private Set Intersection protocol.
[0012] In one embodiment, the step of generating a first global model based on the similarity, the first regional model, and the second regional model may include: performing federated learning based on the similarity, the first regional model, and the second regional model; and generating the first global model as a result of the federated learning.
[0013] In one embodiment, the step of performing federated learning based on the similarity, the first regional model, and the second regional model may include the step of performing federated learning based on clustering the first regional model and the second regional model by utilizing the similarity.
[0014] In one embodiment, the step of performing federated learning based on clustering the first regional model and the second regional model by utilizing the similarity may include: a step of classifying the first regional model and the second regional model into a first cluster when the similarity is greater than or equal to a predetermined threshold; and a step of performing federated learning by utilizing all regional models included in the first cluster.
[0015] In one embodiment, the step of performing federated learning based on the similarity, the first regional model, and the second regional model may include: a step of calculating a first weight based on the similarity, and a step of performing federated learning based on weighting parameters of the first regional model and parameters of the second regional model using the first weight.
[0016] In one embodiment, the step of generating a first global model based on the similarity, the first regional model, and the second regional model may include: generating the first global model based on performing federated learning based on the first regional model and the second regional model when the similarity is greater than or equal to a predetermined threshold; generating a second global model based on performing federated learning of a plurality of regional models received from a plurality of devices including the first device and the second device; and adjusting parameters of the first global model based on the second global model.
[0017] In one embodiment, the step of adjusting parameters of the first global model based on the second global model may include: adjusting parameters of the first global model based on a weighted sum of parameters of the first global model and weights of the second global model.
[0018] In one embodiment, the method may further include transmitting the first global model to the first device.
[0019] According to an embodiment of the present disclosure for realizing the above-described task, a computer program stored in a computer-readable storage medium is disclosed that causes a computing device to perform operations for federated learning of an artificial neural network model based on location information. The operations may include: receiving a first local model, which is an artificial neural network model learned in a first device based on first local data, and location information of the first device; receiving a second local model, which is an artificial neural network model learned in a second device based on second local data, and location information of the second device; determining a similarity between the location information of the first device and the location information of the second device, and generating a first global model based on the similarity, the first local model, and the second local model.
[0020] According to an embodiment of the present disclosure for realizing the above-described task, a computing device for federated learning of an artificial neural network model based on location information is disclosed. The computing device includes one or more processors and a memory, and the one or more processors are configured to receive a first local model, which is an artificial neural network model learned in a first device based on first local data, and location information of the first device, receive a second local model, which is an artificial neural network model learned in a second device based on second local data, and location information of the second device, determine a similarity between the location information of the first device and the location information of the second device, and generate a first global model based on the similarity, the first local model, and the second local model.
[0021] By clustering artificial neural network models based on location information and performing federated learning according to the present disclosure, the performance of the model is improved when the global model generated by federated learning is distributed to each device existing in a similar location.
[0022] Meanwhile, the effects of the present disclosure are not limited to the effects mentioned above, and various effects may be included within a range apparent to those skilled in the art from the contents described below.
[0023] FIG. 1 is a block diagram of a computing device for federated learning of an artificial neural network model based on location information according to one embodiment of the present disclosure.
[0024] FIG. 2 is a schematic diagram illustrating a network function according to one embodiment of the present disclosure.
[0025] FIG. 3 is a flowchart illustrating a federated learning process of an artificial neural network model based on location information according to one embodiment of the present disclosure.
[0026] FIG. 4 is a conceptual diagram illustrating a process of generating a first region model and location information in a first device according to one embodiment of the present disclosure.
[0027] FIG. 5 is a conceptual diagram illustrating a process for generating a first global model according to one embodiment of the present disclosure.
[0028] FIG. 6 is a conceptual diagram illustrating a process of generating a first global model based on the similarity of location information according to one embodiment of the present disclosure.
[0029] FIG. 7 is a conceptual diagram illustrating a process for generating a second global model and a first global model according to one embodiment of the present disclosure.
[0030] FIG. 8 is a simplified, general schematic diagram of an exemplary computing environment in which embodiments of the present disclosure may be implemented.
[0031] The present disclosure relates to a method for federated learning of an artificial neural network model based on location information, and more specifically, to a method for generating a first global model by performing federated learning based on the similarity of location information based on a first local model, which is an artificial neural network model learned in a first device based on first local data, and location information of the first device.
[0032] Various embodiments are now described with reference to the drawings. In this specification, various descriptions are provided to facilitate understanding of the present disclosure. However, it will be apparent that these embodiments may be practiced without these specific details.
[0033] As used herein, the terms "component," "module," "system," and the like refer to computer-related entities, hardware, firmware, software, a combination of software and hardware, or an execution of software. For example, a component may be, but is not limited to, a procedure running on a processor, a processor, an object, a thread of execution, a program, and / or a computer. For example, both an application running on a computing device and the computing device may be a component. One or more components may reside within a processor and / or a thread of execution. A component may be localized within a single computer. One or more components of the present disclosure may be distributed between two or more computers, i.e., execution environments. Furthermore, these components may execute from various computer-readable media having various data structures stored therein. Components may communicate via local and / or remote processes, for example, by signals comprising one or more data packets (e.g., data from one component interacting with another component in a local system, a distributed system, and / or data transmitted via signals to another system over a network such as the Internet).
[0034] Furthermore, the term "or" is intended to mean an inclusive "or" rather than an exclusive "or." That is, unless otherwise specified or clear from context, "X employs A or B" is intended to mean either of the natural inclusive permutations. That is, if X employs A; X employs B; or X employs both A and B, "X employs A or B" can apply to any of these cases. Furthermore, the term "and / or" as used herein should be understood to refer to and include all possible combinations of one or more of the associated items listed.
[0035] Additionally, the terms "comprises" and / or "comprising" should be understood to imply the presence of the features and / or components in question. However, it should be understood that the terms "comprises" and / or "comprising" do not exclude the presence or addition of one or more other features, components, and / or groups thereof. Furthermore, unless otherwise specified or clear from the context to refer to the singular form, the singular in the specification and claims should generally be construed to mean "one or more."
[0036] And, the term “at least one of A or B” should be interpreted to mean “if it includes only A”, “if it includes only B”, or “if it is combined in the composition of A and B”.
[0037] Those skilled in the art should further appreciate that the various illustrative logical blocks, configurations, modules, circuits, means, logics, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate the interchangeability of hardware and software, various illustrative components, blocks, configurations, means, logics, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application. However, such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.
[0038] The description of the disclosed embodiments is provided to enable a person skilled in the art to make or use the present disclosure. Various modifications to these embodiments will be apparent to those skilled in the art. The general principles defined herein may be applied to other embodiments without departing from the scope of the present disclosure. Thus, the present disclosure is not limited to the embodiments set forth herein. The present disclosure is to be construed in the widest scope consistent with the principles and novel features disclosed herein.
[0039] FIG. 1 is a block diagram of a computing device for federated learning of an artificial neural network model based on location information according to one embodiment of the present disclosure.
[0040] The configuration of the computing device (100) illustrated in FIG. 1 is merely a simplified example. In one embodiment of the present disclosure, the computing device (100) may include other configurations for performing the computing environment of the computing device (100), and only some of the disclosed configurations may constitute the computing device (100).
[0041] A computing device (100) may include a processor (110), memory (130), and network unit (150).
[0042] The processor (110) may be configured with one or more cores, and may include a processor for data analysis and deep learning, such as a central processing unit (CPU), a general purpose graphics processing unit (GPGPU), and a tensor processing unit (TPU) of a computing device. The processor (110) may read a computer program stored in the memory (130) and perform data processing for machine learning according to an embodiment of the present disclosure. According to an embodiment of the present disclosure, the processor (110) may perform operations for learning a neural network. The processor (110) may perform calculations for learning a neural network, such as processing input data for learning in deep learning (DL), extracting features from input data, calculating errors, and updating weights of a neural network using backpropagation.
[0043] At least one of the CPU, GPGPU, and TPU of the processor (110) can process network function learning. For example, the CPU and GPGPU can jointly process network function learning and data classification using the network function. Furthermore, in one embodiment of the present disclosure, processors of multiple computing devices can be used together to process network function learning and data classification using the network function. Furthermore, a computer program executed in a computing device according to one embodiment of the present disclosure may be a CPU, GPGPU, or TPU executable program.
[0044] The processor (110) can receive a first region model, which is an artificial neural network model learned in the first device based on the first region data, and location information of the first device. For example, if the first device is a CCTV that continuously acquires image information at a fixed location, an image analysis model, which is an artificial neural network model, can be learned using images acquired through the camera in the first device as learning data. The processor (110) can receive the first region model, which is an artificial neural network model learned in this manner, and GPS coordinate information of the first device together.
[0045] The processor (110) may receive a second region model, which is an artificial neural network model learned in the second device based on second region data, and location information of the second device. For example, if the second device is a CCTV that continuously acquires image information at a fixed location, an image analysis model, which is an artificial neural network model, may be learned using images acquired through the camera in the second device as learning data. The processor (110) may receive the second region model, which is an artificial neural network model learned in this manner, and GPS coordinate information of the second device together. In the present disclosure, the second device may include equipment of a similar type or a different type located in a separate location from the first device.
[0046] The processor (110) can calculate the similarity between the location information of the first device and the location information of the second device. For example, the processor (110) can calculate the similarity between the GPS information of the first device and the GPS information of the second device. As another example, the processor (110) can generate a hyperdimensional vector that converts the GPS information of the first device and a hyperdimensional vector that converts the GPS information of the second device, and then determine the similarity between each hyperdimensional vector as the similarity between the location information of the first device and the location information of the second device.
[0047] Additionally, the processor (110) can determine the similarity between the location information of the first device and the location information of the second device using the Private Set Intersection (PSI) protocol. Utilizing the PSI protocol has the advantage of being able to determine the similarity between the location information of the first device and the location information of the second device without transmitting the personal information itself to a central server, even if the location information of the devices corresponds to personal information.
[0048] The processor (110) can generate a first global model based on the determined similarity, the first regional model, and the second regional model. In the present disclosure, if the location information of the first regional model and the second regional model has a high similarity, i.e., if the actual locations of the devices from which the first regional model was generated are close to those from which the second regional model was generated, the first regional model and the second regional model can be federated. A specific method by which the processor generates the first global model will be described below with reference to FIG. 6.
[0049] The processor (110) can generate a second global model by performing federated learning using all regional models transmitted to the central server, including the first regional model and the second regional model. Thereafter, the processor (110) can adjust the parameters of the first global model based on the second global model. A specific method for adjusting the parameters of the first model based on the second global model is described below with reference to FIG. 7.
[0050] When the distance between the devices where the regional models are generated is close, the types of data learned by the regional models and the data input to the regional models are similar, whereas when the distance between the devices is far, the types of data input to the regional models can be significantly different.
[0051] For example, CCTVs installed around school zones may receive a large amount of image data containing children, while CCTVs installed in parking lots may receive a large amount of image data containing cars. In such cases, if federated learning is performed using all local models received from all devices, the resulting global model may have low accuracy for a specific type of learning data. In the present disclosure, when performing federated learning on a computing device (100), which is a central server, only local models that are actually located nearby participate in the federated learning. Therefore, the global model generated as a result of federated learning can have improved model accuracy for a specific type of learning data.
[0052]
[0053]
[0054] According to one embodiment of the present disclosure, the memory (130) may include at least one type of storage medium among a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (e.g., SD or XD memory, etc.), a random access memory (RAM), a static random access memory (SRAM), a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), a programmable read-only memory (PROM), a magnetic memory, a magnetic disk, and an optical disk. The computing device (100) may also operate in relation to web storage that performs the storage function of the memory (130) on the internet. The description of the above-described memory is merely an example, and the present disclosure is not limited thereto.
[0055] The network unit (150) according to one embodiment of the present disclosure can use various wired communication systems such as a public switched telephone network (PSTN), xDSL (x Digital Subscriber Line), RADSL (Rate Adaptive DSL), MDSL (Multi Rate DSL), VDSL (Very High Speed DSL), UADSL (Universal Asymmetric DSL), HDSL (High Bit Rate DSL), and a local area network (LAN).
[0056] In addition, the network unit (150) presented in this specification can use various wireless communication systems such as CDMA (Code Division Multi Access), TDMA (Time Division Multi Access), FDMA (Frequency Division Multi Access), OFDMA (Orthogonal Frequency Division Multi Access), SC-FDMA (Single Carrier-FDMA) and other systems.
[0057] In the present disclosure, the network unit (150) can use any type of wired or wireless communication system.
[0058] The techniques described in this specification can be used in other networks as well as the networks mentioned above.
[0059]
[0060] FIG. 2 is a schematic diagram illustrating a network function according to one embodiment of the present disclosure.
[0061] Throughout this specification, the terms computational model, neural network, network function, and neural network may be used interchangeably. A neural network may be composed of a set of interconnected computational units, generally referred to as nodes. These nodes may also be referred to as neurons. A neural network comprises at least one node. The nodes (or neurons) comprising a neural network may be interconnected by one or more links.
[0062] Within a neural network, one or more nodes connected via links can form a relationship between input nodes and output nodes. The concept of input nodes and output nodes is relative, meaning that any node that is in an output node relationship with one node can also be in an input node relationship with another node, and vice versa. As described above, the relationship between input nodes and output nodes can be created based on links. One input node can be connected to one or more output nodes via links, and vice versa.
[0063] In a relationship between input nodes and output nodes connected through a single link, the data of the output node can have its value determined based on the data input to the input node. Here, the link interconnecting the input nodes and output nodes can have a weight. The weight can be variable and can be varied by the user or an algorithm so that the neural network can perform a desired function. For example, when one or more input nodes are interconnected to one output node through each link, the output node can determine the output node value based on the values input to the input nodes connected to the output node and the weight set on the link corresponding to each input node.
[0064] As described above, a neural network is a network in which one or more nodes are interconnected through one or more links, forming input and output node relationships within the network. The characteristics of a neural network can be determined based on the number of nodes and links within the network, the relationships between the nodes and links, and the weights assigned to each link. For example, if two neural networks have the same number of nodes and links but different weight values for the links, the two neural networks can be perceived as different from each other.
[0065] A neural network can be composed of a set of one or more nodes. A subset of the nodes comprising the neural network can form a layer. Some of the nodes comprising the neural network can form a layer based on their distances from the initial input node. For example, a set of nodes that are n distances from the initial input node can form n layers. The distance from the initial input node can be defined by the minimum number of links required to reach the node from the initial input node. However, this definition of a layer is arbitrary for illustrative purposes, and the degree of a layer within a neural network can be defined in a different way than described above. For example, a layer of nodes can be defined by its distance from the final output node.
[0066] An initial input node may refer to one or more nodes within a neural network into which data is directly input without going through links with other nodes. Alternatively, within a neural network, it may refer to nodes that do not have other input nodes connected by links in the relationship between nodes based on links. Similarly, a final output node may refer to one or more nodes within a neural network that do not have output nodes in their relationship with other nodes. Furthermore, a hidden node may refer to nodes that constitute a neural network other than the initial input node and the final output node.
[0067] A neural network according to one embodiment of the present disclosure may be a neural network in which the number of nodes in an input layer may be the same as the number of nodes in an output layer, and the number of nodes decreases and then increases as it progresses from the input layer to the hidden layer. In addition, a neural network according to another embodiment of the present disclosure may be a neural network in which the number of nodes in an input layer may be less than the number of nodes in an output layer, and the number of nodes decreases as it progresses from the input layer to the hidden layer. In addition, a neural network according to another embodiment of the present disclosure may be a neural network in which the number of nodes in an input layer may be greater than the number of nodes in an output layer, and the number of nodes increases as it progresses from the input layer to the hidden layer. A neural network according to another embodiment of the present disclosure may be a neural network in a combined form of the neural networks described above.
[0068] A deep neural network (DNN) can refer to a neural network that includes multiple hidden layers in addition to input and output layers. Using DNNs, one can identify latent structures in data. For example, one can identify the latent structures of images, text, videos, audio, and music (e.g., what objects are in the image, what the content and emotion of the text are, what the content and emotion of the audio are, etc.). DNNs can include convolutional neural networks (CNNs), recurrent neural networks (RNNs), autoencoders, generative adversarial networks (GANs), restricted Boltzmann machines (RBMs), deep belief networks (DBNs), Q networks, U networks, Siamese networks, and generative adversarial networks (GANs). The description of the deep neural network described above is only an example and the present disclosure is not limited thereto.
[0069] In one embodiment of the present disclosure, the network function may include an autoencoder. An autoencoder may be a type of artificial neural network that outputs output data similar to input data. The autoencoder may include at least one hidden layer, and an odd number of hidden layers may be arranged between input and output layers. The number of nodes in each layer may be reduced from the number of nodes in the input layer to an intermediate layer called a bottleneck layer (encoding), and then expanded symmetrically from the bottleneck layer to the output layer (symmetrical to the input layer). The autoencoder may perform nonlinear dimensionality reduction. The number of input layers and output layers may correspond to the dimensionality after preprocessing of the input data. In the autoencoder structure, the number of nodes in the hidden layer included in the encoder may have a structure in which the number of nodes decreases as it moves away from the input layer. The number of nodes in the bottleneck layer (the layer with the fewest nodes between the encoder and decoder) may be kept above a certain number (e.g., more than half of the input layer), as too few nodes may not transmit enough information.
[0070] Neural networks can learn using at least one of the following methods: supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning. Neural network learning can be the process of applying knowledge to the neural network to perform a specific action.
[0071] Neural networks can be trained to minimize output errors. This process involves repeatedly inputting training data into the neural network, calculating the neural network output and target error for the training data, and backpropagating the neural network error from the output layer to the input layer to update the weights of each node in the neural network to reduce the error. Supervised learning uses training data with the correct answer labeled for each training data (i.e., labeled training data). Unsupervised learning, on the other hand, may not have the correct answer labeled for each training data. For example, in the case of supervised learning for data classification, the training data may be data with each category labeled. Labeled training data is input to the neural network, and the error can be calculated by comparing the output (category) of the neural network with the training data labels. Alternatively, in the case of unsupervised learning for data classification, the error can be calculated by comparing the input training data with the neural network output. The calculated error is backpropagated in the neural network in the backward direction (i.e., from the output layer to the input layer), and the connection weights of each node in each layer of the neural network can be updated according to the backpropagation. The amount of change in the connection weights of each node to be updated can be determined by the learning rate. The neural network's calculation of the input data and the backpropagation of the error can constitute a learning cycle (epoch). The learning rate can be applied differently depending on the number of iterations of the neural network's learning cycle. For example, a high learning rate can be used in the early stages of neural network training to quickly achieve a certain level of performance, thereby increasing efficiency. A lower learning rate can be used in the later stages of training to increase accuracy.
[0072] In neural network training, training data can typically be a subset of real-world data (i.e., the data to be processed using the trained neural network). Therefore, there can be a learning cycle where errors on the training data decrease but errors on the real-world data increase. Overfitting is a phenomenon where excessive training on the training data leads to increased errors on the real-world data. For example, a neural network trained on yellow cats may fail to recognize cats when shown non-yellow colors, a type of overfitting. Overfitting can increase errors in machine learning algorithms. Various optimization methods can be used to prevent overfitting. These methods include increasing the training data, regularization, dropout (inactivating some nodes in the network during the learning process), and the use of batch normalization layers.
[0073]
[0074] FIG. 3 is a flowchart illustrating a federated learning process of an artificial neural network model based on location information according to one embodiment of the present disclosure.
[0075] According to the present disclosure, a federated learning process of an artificial neural network model based on location information may include a step of calculating a similarity between location information of a first device and location information of a second device (S110), a step of classifying a first regional model and a second regional model into a first cluster when the similarity is greater than a predetermined threshold (S130), a step of performing federated learning by utilizing all regional models included in the first cluster (S150), and a step of generating a first global model as a result of the federated learning (S170).
[0076] In step S110, the processor (110) can calculate the similarity between the location information of the first device and the location information of the second device. In the present disclosure, the similarity between the location information of the first device and the second device can be determined by directly comparing GPS information, comparing hyperdimensional vectors generated from GPS information, or utilizing the PSI algorithm, as described above with reference to FIG. 1.
[0077] In step S130, the processor (110) may classify the first regional model and the second regional model into a first cluster if the similarity is greater than a predetermined threshold. For example, if the predetermined threshold is 10 m, the processor (110) may classify the first regional model and the second regional model into a first cluster if the distance between the first device and the second device is 9 m after receiving the location information of the first device and the location information of the second device.
[0078] At step S150, the processor (110) can perform federated learning by utilizing all local models included in the first cluster. For example, if the predetermined threshold is 10 m and the distance between the first device and the second device is 9 m, the processor (110) can perform federated learning by utilizing the first model and the second model.
[0079] In step S170, the processor (110) may generate a first global model as a result of federated learning. For example, if the first cluster includes a first regional model and a second regional model, the processor (110) may calculate the average of each parameter included in the first regional model and the second regional model, and generate a first global model that uses the average as a parameter.
[0080]
[0081] FIG. 4 is a conceptual diagram illustrating a process of generating a first region model and location information in a first device according to one embodiment of the present disclosure.
[0082] As illustrated in FIG. 4, the first device (410) may be a CCTV-type device including a camera, and may train a first local model (430) using images (420) acquired through the camera as training data. In addition, the first device may have unique location information (440). The location information (440) may include latitude information and longitude information utilizing GPS. After training of the first local model (430) is completed, the first device (410) may perform inference on newly acquired image data using the first local model (430).
[0083]
[0084] FIG. 5 is a conceptual diagram illustrating a process for generating a first global model according to one embodiment of the present disclosure.
[0085] In the present disclosure, the central server (510) includes a computing device (100), and regional models included in each device can be transmitted to the central server. For example, in the present disclosure, a first device (520) may be located at location A and include a first regional model (521) that analyzes images. In addition, a second device (530) may be located at location B and include a second regional model (531) that analyzes images. In addition, a third device (540) may be located at location C and include a third regional model (531) that analyzes images. When the first regional model (521), the second regional model (531), and the third regional model (541) are transmitted to the central server (510), the processor (110) may perform federated learning by utilizing the first regional model (521), the second regional model (531), and the third regional model (541). That is, the processor (110) can generate the first global model (511) based on the first regional model (521), the second regional model (531), and the third regional model (541). Specifically, the processor (110) can calculate the average of each parameter of the first regional model (521), the second regional model (531), and the third regional model (541), and then generate an artificial neural network model using the average as a parameter, and then determine the model as the first global model (511).
[0086] In another embodiment, the processor (110) may determine a first weight based on the similarity between the first regional model (521) and the second regional model (531). Thereafter, the processor (110) may perform federated learning based on weighting the parameters of the first regional model and the parameters of the second regional model using the first weight. Specifically, the parameters of the first global model may be determined as shown in [Mathematical Formula 1].
[0087]
[0088] At this time are the parameters of the first regional model, are the parameters of the second regional model, is a parameter of the first global model, may refer to the first weight. The first weight may be determined as a value such as 0.8 when the first device and the second device are within 10 m, and 0.2 when the first device and the second device are further apart than 10 m. However, it is obvious to those skilled in the art that the first weight may be set differently through a design change to generate a high-performance global model.
[0089]
[0090] FIG. 6 is a conceptual diagram illustrating a process of generating a first global model based on the similarity of location information according to one embodiment of the present disclosure.
[0091] In the present disclosure, the processor (110) determines the similarity between the location information of each device, clusters models generated from devices whose similarity is greater than a predetermined threshold, and performs federated learning using only local models included in the same cluster, as described above with reference to FIG. 3.
[0092] The processor (110) can cluster each regional model by utilizing the similarity of the location information of the multiple devices for all regional models transmitted from the multiple devices to the central server (610). For example, the processor (110) can identify a device located near a first device (621) by utilizing the similarity of the location information, and determine a regional model including the first model transmitted from the corresponding device as a first cluster (620). In addition, the processor (110) can identify a device located near a second device (631) by utilizing the similarity of the location information, and determine a regional model including the second model transmitted from the corresponding device as a second cluster (630). In addition, the processor (110) can identify a device located near a third device (641) by utilizing the similarity of the location information, and determine a regional model including the third model transmitted from the corresponding device as a first cluster (640).
[0093] Thereafter, the processor (110) can perform federated learning using only the local models included in the first cluster, and then generate a first global model (611) based on this. When performing federated learning in this way, only the local models included in the first cluster, i.e., the local models whose devices are located close to each other, participate in the federated learning, and the local models included in the second and third clusters do not participate in the federated learning. The first global model (611) generated through the above process can have the advantages of federated learning similar to that learned based on the entire learning dataset while safely protecting personal information locally, and at the same time, can be a model that is more optimized for the device on which the local models included in the first cluster were generated. In other words, the first global model (611) can be a highly accurate model that is learned with a larger number of learning data and better processes data with similar characteristics.
[0094]
[0095] FIG. 7 is a conceptual diagram illustrating a process for generating a second global model and a first global model according to one embodiment of the present disclosure.
[0096] In the present disclosure, the processor (110) may generate a second global model (712) based on performing federated learning of all local models learned in each device. Meanwhile, the processor (110) may generate a first global model (711) based on performing federated learning of local models classified into the same cluster (720) by identifying that the similarity of location information is greater than or equal to a predetermined threshold. Thereafter, the processor (110) may adjust the parameters of the first global model (711) based on the second global model (712). Specifically, the processor (110) may adjust the parameters of the first global model (711) based on a weighted sum of the parameters of the first global model (711) and the parameters of the second global model (712).
[0097] By adjusting the parameters of the first global model (711) based on the second global model (712) as described above, it is possible to control whether to increase the generalization performance of the first global model (711) by giving a high weight to the second global model, or to create a global model specialized for the devices from which the regional models included in the first cluster (720) are created by giving a high weight to the first global model (711).
[0098]
[0099] Meanwhile, a computer-readable medium storing a data structure according to an embodiment of the present disclosure is disclosed.
[0100] A data structure can refer to the organization, management, and storage of data to enable efficient access and modification. A data structure can refer to the organization of data to solve a specific problem (e.g., data retrieval, data storage, or data modification in the shortest possible time). A data structure can also be defined as the physical or logical relationships between data elements designed to support specific data processing functions. Logical relationships between data elements can include connections between user-defined data elements. Physical relationships between data elements can include actual relationships between data elements physically stored on a computer-readable storage medium (e.g., persistent storage). Specifically, a data structure can include a collection of data, relationships between data, and functions or commands applicable to the data. An effectively designed data structure allows a computing device to perform operations while minimizing the use of its resources. Specifically, a computing device can improve the efficiency of operations, reading, inserting, deleting, comparing, exchanging, and searching through an effectively designed data structure.
[0101] Data structures can be categorized as linear or nonlinear, depending on their form. A linear data structure can be a structure in which only one data item is linked to the next. Linear data structures can include lists, stacks, queues, and deques. A list can refer to a series of data sets with an internal order. Lists can also include linked lists. A linked list is a data structure in which data is linked in a single line, each item having a pointer. In a linked list, a pointer can contain information about the next or previous item. Linked lists can be expressed as singly linked lists, doubly linked lists, or circular linked lists, depending on their form. A stack can be a data listing structure with limited data access. A stack can be a linear data structure in which data operations (e.g., insertion or deletion) can only be performed at one end of the data structure. Data stored in a stack can be a Last-in-First-out (LIFO) data structure. A queue is a data structure with limited access to data. Unlike a stack, it can be a first-in, first-out (FIFO) data structure, with later data being retrieved later. A deck can be a data structure that can process data at both ends.
[0102] A nonlinear data structure can be a structure in which multiple pieces of data are connected behind a single piece of data. Nonlinear data structures can include graph data structures. A graph data structure can be defined by vertices and edges, and an edge can include a line connecting two different vertices. Graph data structures can include tree data structures. A tree data structure can be a data structure in which there is only one path connecting two different vertices among multiple vertices included in the tree. In other words, it can be a data structure that does not form a loop in a graph data structure.
[0103] Throughout this specification, the terms computational model, neural network, network function, and neural network may be used interchangeably. Hereinafter, they are collectively referred to as neural networks. The data structure may include a neural network. And the data structure including the neural network may be stored on a computer-readable medium. The data structure including the neural network may also include preprocessed data for processing by the neural network, data input to the neural network, weights of the neural network, hyperparameters of the neural network, data obtained from the neural network, activation functions associated with each node or layer of the neural network, loss functions for learning the neural network, etc. The data structure including the neural network may include any of the components disclosed above. That is, the data structure including the neural network may be configured to include all or any combination of preprocessed data for processing by the neural network, data input to the neural network, weights of the neural network, hyperparameters of the neural network, data obtained from the neural network, activation functions associated with each node or layer of the neural network, loss functions for learning the neural network, etc. In addition to the aforementioned configurations, a data structure including a neural network may include any other information that determines the characteristics of the neural network. Furthermore, the data structure may include any form of data used or generated in the computational process of the neural network, and is not limited to the aforementioned. The computer-readable medium may include a computer-readable recording medium and / or a computer-readable transmission medium. A neural network may be composed of a set of interconnected computational units, which may generally be referred to as nodes. These nodes may also be referred to as neurons. A neural network is composed of at least one node.
[0104] The data structure may include data input to a neural network. The data structure including the data input to the neural network may be stored on a computer-readable medium. The data input to the neural network may include training data input during the neural network training process and / or input data input to the neural network after training has been completed. The data input to the neural network may include data that has undergone preprocessing and / or data that is the target of preprocessing. Preprocessing may include a data processing process for inputting data to the neural network. Accordingly, the data structure may include data that is the target of preprocessing and data generated by the preprocessing. The above-described data structure is merely an example, and the present disclosure is not limited thereto.
[0105] The data structure may include weights of the neural network. (In this specification, the terms "weight" and "parameter" may be used interchangeably.) The data structure including the weights of the neural network may be stored in a computer-readable medium. The neural network may include a plurality of weights. The weights may be variable and may be varied by a user or an algorithm so that the neural network can perform a desired function. For example, when one or more input nodes are interconnected to one output node by respective links, the output node may determine a data value output from the output node based on values input to the input nodes connected to the output node and weights set for links corresponding to each input node. The above-described data structure is merely an example, and the present disclosure is not limited thereto.
[0106] By way of example and not limitation, the weights may include weights that vary during the neural network training process and / or weights that have completed neural network training. The weights that vary during the neural network training process may include weights at the start of the training cycle and / or weights that vary during the training cycle. The weights that have completed neural network training may include weights that have completed the training cycle. Accordingly, a data structure including the weights of a neural network may include a data structure including weights that vary during the neural network training process and / or weights that have completed neural network training. Therefore, the above-described weights and / or combinations of each weight are included in the data structure including the weights of a neural network. The above-described data structures are merely examples and the present disclosure is not limited thereto.
[0107] A data structure including neural network weights can be stored in a computer-readable storage medium (e.g., memory, hard disk) after going through a serialization process. Serialization can be a process of converting a data structure into a form that can be stored on the same or different computing devices and later reconstructed and used. A computing device can serialize the data structure to transmit and receive data over a network. The serialized data structure including neural network weights can be reconstructed on the same or different computing devices through deserialization. The data structure including neural network weights is not limited to serialization. Furthermore, the data structure including neural network weights can include a data structure that increases computational efficiency while minimizing the use of computing device resources (e.g., a B-Tree, a Trie, an m-way search tree, an AVL tree, a Red-Black Tree in nonlinear data structures). The foregoing is merely an example, and the present disclosure is not limited thereto.
[0108] The data structure may include hyperparameters of a neural network. Furthermore, the data structure including the hyperparameters of the neural network may be stored on a computer-readable medium. The hyperparameters may be variables that can be varied by the user. The hyperparameters may include, for example, a learning rate, a cost function, the number of learning cycle repetitions, weight initialization (e.g., setting a range of weight values to be subject to weight initialization), and the number of hidden units (e.g., the number of hidden layers, the number of nodes in the hidden layer). The above-described data structure is merely an example, and the present disclosure is not limited thereto.
[0109]
[0110] FIG. 8 is a simplified, general schematic diagram of an exemplary computing environment in which embodiments of the present disclosure may be implemented.
[0111] Although the present disclosure has been described above as being generally implemented by a computing device, those skilled in the art will appreciate that the present disclosure may be implemented in combination with computer-executable instructions and / or other program modules that may be executed on one or more computers and / or as a combination of hardware and software.
[0112] Generally, program modules include routines, programs, components, data structures, and the like that perform particular tasks or implement particular abstract data types. Furthermore, those skilled in the art will appreciate that the methods of the present disclosure can be implemented with other computer system configurations, including single-processor or multiprocessor computer systems, minicomputers, mainframe computers, as well as personal computers, handheld computing devices, microprocessor-based or programmable consumer electronics, and the like, each of which may be operatively connected to one or more associated devices.
[0113] The described embodiments of the present disclosure can also be practiced in distributed computing environments, where certain tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
[0114] Computers typically include a variety of computer-readable media. Computer-readable media can be any media that can be accessed by a computer, and includes both volatile and nonvolatile media, transitory and non-transitory media, removable and non-removable media. By way of example, and not limitation, computer-readable media can include computer-readable storage media and computer-readable transmission media. Computer-readable storage media includes both volatile and nonvolatile media, transitory and non-transitory media, removable and non-removable media implemented in any method or technology for storing information such as computer-readable instructions, data structures, program modules, or other data. Computer-readable storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital video disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that can be accessed by a computer and used to store the desired information.
[0115] Computer-readable transmission media typically includes any information delivery media that embodies computer-readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism. The term modulated data signal means a signal that has one or more of its characteristics set or changed so as to encode information in the signal. By way of example, and not limitation, computer-readable transmission media includes wired media, such as a wired network or direct-wired connection, and wireless media, such as acoustic, RF, infrared, or other wireless media. Combinations of any of the above are also intended to be included within the scope of computer-readable transmission media.
[0116] An exemplary environment (1100) implementing various aspects of the present disclosure is illustrated, including a computer (1102) comprising a processing unit (1104), system memory (1106), and a system bus (1108). The system bus (1108) connects system components, including but not limited to the system memory (1106), to the processing unit (1104). The processing unit (1104) may be any of a variety of commercially available processors. Dual processors and other multiprocessor architectures may also be utilized as the processing unit (1104).
[0117] The system bus (1108) may be any of several types of bus structures that may be additionally interconnected to a memory bus, a peripheral bus, and a local bus using any of a variety of commercial bus architectures. The system memory (1106) includes read-only memory (ROM) (1110) and random access memory (RAM) (1112). A basic input / output system (BIOS) is stored in non-volatile memory (1110), such as ROM, EPROM, or EEPROM, and includes basic routines that help transfer information between components within the computer (1102), such as during start-up. The RAM (1112) may also include high-speed RAM, such as static RAM, for caching data.
[0118] The computer (1102) also includes an internal hard disk drive (HDD) (1114) (e.g., EIDE, SATA) - which may also be configured for external use within a suitable chassis (not shown), a magnetic floppy disk drive (FDD) (1116) (e.g., for reading from or writing to a removable diskette (1118)), and an optical disk drive (1120) (e.g., for reading from or writing to a CD-ROM disk (1122) or other high-capacity optical media such as a DVD). The hard disk drive (1114), the magnetic disk drive (1116), and the optical disk drive (1120) may be connected to the system bus (1108) by a hard disk drive interface (1124), a magnetic disk drive interface (1126), and an optical drive interface (1128), respectively. The interface (1124) for implementing an external drive includes at least one or both of Universal Serial Bus (USB) and IEEE 1394 interface technologies.
[0119] These drives and their associated computer-readable media provide non-volatile storage of data, data structures, computer-executable instructions, and the like. In the case of the computer (1102), the drives and media correspond to storing any data in a suitable digital format. While the description of computer-readable media above refers to HDDs, removable magnetic disks, and removable optical media such as CDs or DVDs, those skilled in the art will appreciate that other types of media readable by a computer, such as zip drives, magnetic cassettes, flash memory cards, cartridges, and the like, may also be used in the exemplary operating environment, and that any such media may contain computer-executable instructions for performing the methods of the present disclosure.
[0120] A number of program modules, including an operating system (1130), one or more application programs (1132), other program modules (1134), and program data (1136), may be stored in the drive and RAM (1112). All or portions of the operating system, applications, modules, and / or data may also be cached in RAM (1112). It will be appreciated that the present disclosure may be implemented in various commercially available operating systems or combinations of operating systems.
[0121] A user may enter commands and information into the computer (1102) via one or more wired / wireless input devices, such as a keyboard (1138) and a pointing device such as a mouse (1140). Other input devices (not shown) may include a microphone, an IR remote control, a joystick, a game pad, a stylus pen, a touch screen, and the like. These and other input devices are often connected to the processing unit (1104) via an input device interface (1142) that is connected to the system bus (1108), but may be connected by other interfaces such as a parallel port, an IEEE 1394 serial port, a game port, a USB port, an IR interface, and the like.
[0122] A monitor (1144) or other type of display device is also connected to the system bus (1108) via an interface, such as a video adapter (1146). In addition to the monitor (1144), the computer typically includes other peripheral output devices (not shown), such as speakers, a printer, and so on.
[0123] The computer (1102) may operate in a networked environment using logical connections to one or more remote computers, such as remote computer(s) (1148), via wired and / or wireless communications. The remote computer(s) (1148) may be a workstation, a computing device computer, a router, a personal computer, a portable computer, a microprocessor-based entertainment device, a peer device, or other conventional network node, and generally include many or all of the components described for the computer (1102), although for simplicity, only the memory storage device (1150) is shown. The logical connections shown include wired / wireless connections to a local area network (LAN) (1152) and / or a larger network, such as a wide area network (WAN) (1154). Such LAN and WAN networking environments are common in offices and companies and facilitate enterprise-wide computer networks, such as intranets, all of which may be connected to a worldwide computer network, such as the Internet.
[0124] When used in a LAN networking environment, the computer (1102) is connected to a local network (1152) via a wired and / or wireless communication network interface or adapter (1156). The adapter (1156) may facilitate wired or wireless communications to the LAN (1152), which may also include a wireless access point installed therein for communicating with the wireless adapter (1156). When used in a WAN networking environment, the computer (1102) may include a modem (1158), be connected to a communications computing device on the WAN (1154), or have other means of establishing communications over the WAN (1154), such as via the Internet. The modem (1158), which may be internal or external and wired or wireless, is connected to the system bus (1108) via a serial port interface (1142). In a networked environment, program modules or portions thereof described for the computer (1102) may be stored in a remote memory / storage device (1150). It will be appreciated that the network connections depicted are exemplary and other means of establishing a communications link between the computers may be used.
[0125] The computer (1102) operates to communicate with any wireless device or object that is arranged and operates via wireless communication, such as a printer, a scanner, a desktop and / or portable computer, a portable data assistant (PDA), a communication satellite, any equipment or location associated with a radio-detectable tag, and a telephone. This includes at least Wi-Fi and Bluetooth wireless technologies. Accordingly, the communication may be a predefined structure as in a conventional network, or may simply be an ad hoc communication between at least two devices.
[0126] Wi-Fi (Wireless Fidelity) enables connections to the Internet and other devices without wires. Wi-Fi is a wireless technology that allows devices, such as computers, to send and receive data anywhere within the coverage area of a base station, both indoors and outdoors, similar to cell phones. Wi-Fi networks use wireless technologies called IEEE 802.11 (a, b, g, etc.) to provide secure, reliable, and high-speed wireless connections. Wi-Fi can be used to connect computers to each other, to the Internet, and to wired networks (using IEEE 802.3 or Ethernet). Wi-Fi networks can operate in the unlicensed 2.4 and 5 GHz radio bands, at data rates of, for example, 11 Mbps (802.11a) or 54 Mbps (802.11b), or in products that include both bands (dual-band).
[0127] Those skilled in the art will appreciate that information and signals may be represented using any of a variety of different technologies and techniques. For example, the data, instructions, commands, information, signals, bits, symbols, and chips referenced in the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
[0128] Those skilled in the art will appreciate that the various illustrative logical blocks, modules, processors, means, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, various forms of programs or design code (referred to herein, for convenience, as software), or a combination of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Those skilled in the art may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.
[0129] The various embodiments presented herein can be implemented as a method, apparatus, or article of manufacture using standard programming and / or engineering techniques. The term article of manufacture includes a computer program, carrier, or media accessible from any computer-readable storage device. For example, computer-readable storage media include, but are not limited to, magnetic storage devices (e.g., hard disks, floppy disks, magnetic strips, etc.), optical disks (e.g., CDs, DVDs, etc.), smart cards, and flash memory devices (e.g., EEPROMs, cards, sticks, key drives, etc.). Furthermore, various storage media presented herein include one or more devices and / or other machine-readable media for storing information.
[0130] It should be understood that the specific order or hierarchy of steps in the presented processes is merely an example of exemplary approaches. It should be understood that the specific order or hierarchy of steps in the processes may be rearranged within the scope of the present disclosure based on design priorities. The appended method claims provide elements of various steps in a sample order, but are not intended to be limited to the specific order or hierarchy presented.
[0131] The description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present disclosure. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments without departing from the scope of the present disclosure. Therefore, the present disclosure is not intended to be limited to the embodiments disclosed herein, but is to be construed in the broadest scope consistent with the principles and novel features disclosed herein.
Claims
1. A method performed on a computing device for federated learning of an artificial neural network model based on location information, A step of receiving a first local model, which is an artificial neural network model learned in a first device based on first local data, and location information of the first device; A step of receiving a second region model, which is an artificial neural network model learned in a second device based on second region data, and location information of the second device; A step of calculating a similarity between the location information of the first device and the location information of the second device; and A step of generating a first global model based on the above similarity, the first regional model, and the second regional model; Including, method.
2. In paragraph 1, The location information of the first device includes GPS (Global Positioning System) information of the first device or a hyper-dimensional vector converted from the GPS information of the first device, The location information of the second device includes GPS information of the second device or a hyper-dimensional vector converted from GPS information of the second device. method.
3. In paragraph 1, The above similarity is: Vector similarity between the location information of the first device and the location information of the second device; or Private Set Intersection protocol; determined by using at least one of the following: method.
4. In paragraph 1, Based on the above similarity, the first regional model and the second regional model, the step of generating the first global model is: A step of performing federated learning based on the above similarity, the first regional model, and the second regional model; and As a result of the above federated learning, a step of generating the first global model; Including, method.
5. In paragraph 4, The step of performing federated learning based on the above similarity, the first region model, and the second region model is: A step of performing federated learning based on clustering the first regional model and the second regional model by utilizing the above similarity; Including, method.
6. In paragraph 5, Based on clustering the first regional model and the second regional model by utilizing the above similarity, the step of performing federated learning is: a step of classifying the first regional model and the second regional model into a first cluster when the similarity is greater than a predetermined threshold value; and A step of performing federated learning by utilizing all regional models included in the first cluster; Including, method.
7. In paragraph 4, The step of performing federated learning based on the above similarity, the first region model, and the second region model is: A step of calculating a first weight based on the above similarity; and A step of performing federated learning based on weighting the parameters of the first regional model and the parameters of the second regional model using the first weight; Including, method.
8. In paragraph 1, Based on the above similarity, the first regional model and the second regional model, the step of generating the first global model is: A step of generating the first global model based on performing federated learning based on the first regional model and the second regional model when the similarity is greater than a predetermined threshold value; A step of generating a second global model based on performing federated learning of a plurality of regional models received from a plurality of devices including the first device and the second device; and A step of adjusting parameters of the first global model based on the second global model; Including, method.
9. In paragraph 8, Based on the second global model, the step of adjusting the parameters of the first global model is: A step of adjusting the parameters of the first global model based on a weighted sum of the parameters of the first global model and the weights of the second global model; Including, method.
10. In paragraph 1, A step of transmitting the first global model to the first device; Including more, method.
11. A computer program stored in a computer-readable storage medium that causes a computing device to perform operations for federated learning of an artificial neural network model based on location information, the operations comprising: An operation of receiving a first region model, which is an artificial neural network model learned in a first device based on first region data, and location information of the first device; An operation of receiving a second local model, which is an artificial neural network model learned in a second device based on second local data, and location information of the second device; An operation of determining a similarity between the location information of the first device and the location information of the second device; and An operation of generating a first global model based on the above similarity, the first regional model, and the second regional model; Including, A computer program stored on a computer-readable storage medium.
12. A computing device for federated learning of an artificial neural network model based on location information. one or more processors; and memory; Including, One or more of the above processors, Receives a first region model, which is an artificial neural network model learned from a first device based on first region data, and location information of the first device, Receive a second local model, which is an artificial neural network model learned in a second device based on second local data, and location information of the second device; Determining the similarity between the location information of the first device and the location information of the second device, and Based on the above similarity, the first regional model and the second regional model, a first global model is generated. Computing device.
Citation Information
Patent Citations
Vehicle communication control apparatus and method
KR1020240164042A
Portable smart device for caring for skin and eye
KR102737273B1
Scheduling for federated learning
US20230351205A1
Coordination of model trainings for federated learning
US20230351206A1
Federated learning participant selection method and apparatus, and device and storage medium
US20230394365A1