# Satellite IoT Edge Intelligent Computing: A Research on Architecture
## 3 Satellite IoT Edge Intelligent Computing Architecture
### Distributed Intelligent Computing Architecture in Satellite IoT Edge Computing
#### 3.2.2 Training-Inference-Isolated Satellite IoT Edge Intelligent Computing Architecture  
A tricky problem in the edge intelligent computing architecture like the \"master-slave\" structure above is the network communication consumption during the training process. The satellite IoT cloud nodes, as the core of parameter gradient collection and processing, need to establish communication links with each satellite IoT edge node. Therefore, with the expansion of the scale of participating computing nodes, the communication cost will also rise sharply, which is a big challenge for satellite networks. Therefore, for a task with a large amount of computation and a large number of participating nodes, we need a distributed intelligent computing architecture with less communication cost. In the satellite IoT edge intelligent computing architecture, the algorithm can be used to alleviate the network communication pressure caused by the parameter-sharing process, as shown in Figure 3. Specifically, we chose to deploy a deep-learning framework on a cluster of satellite IoT cloud nodes with more computing power. In this framework, each satellite IoT cloud node is abstracted into a node in a logical ring, participating in both parameter calculation and parameter storage. Each node in the logical ring receives data from its left neighbor and sends data to its right neighbor. Figure 2: Cross-layer satellite IoT edge intelligent computing architecture’s neural network training process. In the training process of the neural network, each round of training can be divided into two stages. First, in the gradient calculation stage, each satellite IoT cloud node receives the data collected or generated by the edge node as its own training set and performs the calculation task to get the gradient of the parameter. The second stage is the parameter update phase, in which each node shares its own calculation results with other nodes, and finally each node has the final updated parameters. Referring to the Ring Allreduce algorithm, this process is divided into two steps: in the first step, gradient accumulation is performed, and then the gradient calculated by each node is divided into \(N\) segments (\(N\) is the number of nodes in the logical ring). And each node follows the rules to pass only one gradient segment to the adjacent node. After \(N\)-1 rounds, every segment of gradient has been accumulated. Finally, these segments of gradient are distributed on different nodes. In the second step, each node exchanges its own final gradient segment and accumulates the gradient synchronization of all nodes to update the parameters. The training process of the training-inference-isolated satellite IoT edge intelligent computing architecture is shown in Figure 4.  
In this architecture consisting of \(N\) satellites, in step one, each satellite will send \(N-1\) data segments, and in step two, each satellite will receive \(N-1\) data segments. Further, the amount of data involved in each data transfer is \(K\)/\(N\) (\(K\) is the total number of values that each data segment adds on a different satellite). Therefore, we can calculate the total amount of data involved in the communication with the following formula:  
\[Data_{Tran}=2(N-1)\frac{K}{N}\]  
Figure 4: Training-inference-isolated satellite IoT edge intelligent computing architecture’s neural network training process. Figure 3: Training-inference-isolated satellite IoT edge intelligent computing architecture. In the satellite IoT edge intelligent computing architecture, we envision offloading the inference task to the satellite IoT edge node. After the satellite IoT edge node obtains the trained neural network from the satellite IoT cloud node, each satellite can infer the received data, and the result is fed back to the ground data center or the user end. At this time, the model parameters on each satellite are the same.