## 3 Methodology
### Model Architecture
#### 3.1.2 The Ensemble DNN Model  
We provide the microscopic view of the ensemble DNN model in Figure 4. The ensemble neural network model derives a final consensus on the results of the distributed backbone model, just as neurons reach agreement through voting to learn the world model in the neocortex composed of neuron columns, as explained in [9]. The ensemble DNN model takes the initial input with the size of \(N\) and returns an output with a size equal to the number of distributed models (\(M\)). \(M\) is smaller than \(N\) as the distributed models are learned on partitioned datasets. This model first takes a weighted input tensor and injects it into an FC (fully connected) layer. Then, the data are fed forward through a sequence of six FC residual blocks that follow the ResNet architecture [12], which is an evolved version of a convolutional network [31]. Each residual block comprises a batch normalization layer, an FC layer, a dropout layer, and an activation (ReLU) layer. The output of the preceding block is added to the activation layer of the next block. After the last residual block, the _Sigmoid_ function, as defined in  
Figure 4: Structure of the DNN ensemble model. Equation (1), is applied. The dimension of the _Sigmoid_ function output is identical to that of the weighted input tensor. The result of the _Sigmoid_ function is multiplied by the weighted input tensor through the overlay function. At this time, the shape of the output is the same as the number of distributed models (\(N\)) so that the final similarities of all design rights are obtained. \[Sigmoid(x_{i})=\frac{1}{1+e^{-x_{i}}},\quad i\in 1,\,2,\,3,\,\ldots,\,k \tag{1}\]  
Figure 5 shows that the overlay function is given \(p\) weighted input tensors. The overlay function multiplies the similarity coefficient learned by the ensemble DNN model for each input tensor. The similarity coefficient is computed using the _Sigmoid_ or the _Softmax_ function (Equation (2)), depending on the model we use for the backbone layer. The design right similarities are in descending order in a \(P\times M\) matrix. Given the similarity table, we can instantly identify the Top-N design rights the input image is suspected to be related to. \[Softmax(x_{i})=\frac{x_{i}}{\sum_{j=1}^{k}e^{x_{j}}},\quad i\in 1,\,2,\,3,\, \ldots,\,k \tag{2}\]  
The ensemble DNN model takes the input as a weighted input tensor containing the results of the preceding variance model and infers which model is the most relevant to the input image according to the similarity coefficient. The order of the preceding distributed models must remain unchanged during training and inference to determine the most pertinent variance model. Since the size of the output is very small compared to the size of the input, the ensemble model is designed to follow a fairly simple structure. When a class is added or changed, the output layer of the ensemble DNN model must be adjusted accordingly, and the retraining process has to be carried out. Illegal counterfeits can violate multiple design rights. Thus, we should be able to detect various relevant design rights at the same time. How such a requirement is met depends on whether we use the image classification or the objection detection model as the backbone model. If the backbone model implements image classification, the similarity of each image classification backbone model is returned for every design right. For example, the model learned from one of the five supersets giving 100 design rights yields the similarity of 20 classes. We chose the Sigmoid function over the Softmax function shown in Equation (2) to enable \(k\) multiple class detections from a single input image. On the other hand, the object detection model already identifies multiple class objects in bounding boxes simultaneously within one image. The object detection model uses the Softmax function to predict an individual object's class (design right) in bounding boxes. Figure 5: An example of overlay function operation.