# Research on a Mongolian Text to Speech Model Based on Ghost and ILPCnet
## 3 Mongolian Speech Synthesis Model Based on Ghost-ILPCnet
### Encoder-Decoder
#### 3.2.2 Ghost Module  
The research shows that, in ordinary deep convolutional neural networks, in order to obtain richer feature information [21], the number of convolution channels and the network parameters are usually increased. However, it also brings about other problems, such as an increased computational complexity and slower speech synthesis speed. In addition, the features generated by the convolution have a considerable amount of redundant information and some channel characteristics are highly similar to each other [22]. Therefore, a variety of linear operation methods are needed to deal with these characteristics to improve the computational efficiency. Compared with the fully convolutional neural network, the Ghost module used in this paper was a unique neural network, which was composed of a convolution and linear transformation. The convolution part could effectively reduce the number of parameters and calculations by reducing the number of output channels, while the linear transformation part dynamically adjusted the number of channels to ensure that the output was consistent with the dimensions of the Mel spectrogram. Especially when the sentences were long, the Ghost module was used to completely parallelize the model training process, which greatly improved the training efficiency. The principle of the Ghost module is shown in Figure 5.  
Suppose that \(c\) is the input phoneme sequence \(X\) channels number and \(n\) is the output acoustic feature \(Y\) channels number. In order to obtain n output channels, the input, \(X\), must first pass through an ordinary convolution layer with a convolution kernel size of \(k\) and obtain a feature sequence, \(Y^{\prime}\) (ontology feature sequence), with a channel number of \(m\), where \(m\) is much smaller than \(n\). Therefore, let \(\text{n}=\text{m}\ *\ \text{s}\), that is, after some linear operations with a small number of calculations, \(s\) feature pathways are generated, which are 'phantom' feature pathways. The calculation process is as follows:  
\[y_{\text{ij}}=\varnothing_{\text{ij}}(y^{\prime}_{\text{i}})\,\forall\text{i }=1,\dots,\text{m},\text{j}=1,\dots\text{s} \tag{5}\]  
In Equation (5), the feature of the \(i\)-th channel in \(Y^{\prime}\) is \(y^{\prime}_{i}\) and the \(j\)-th linear operation of \(y^{\prime}_{i}\) is represented by \(\varnothing_{i,j}\). After linear processing, \(Y=[y_{11},y_{12},\dots,y_{\text{ms}}]\) containing \(n\) feature channels can be obtained and used as the output of the Ghost module. In order to achieve this goal, we treated the ontology feature sequence directly as a component of the output feature sequence. Therefore, each intrinsic channel underwent \(s-1\) linear transformations, resulting in a total of \(n(s-1)/s\) linear transformations to achieve more efficient calculations. Using the grouped convolution, a linear transformation could be achieved, and the number of groups was \(n/s\). Each intrinsic channel can use \(s-1\) convolution kernels of size \(d\) to obtain \(s-1\) outputs, and the outputs of these grouped convolutions can be spliced together using identity mapping, so that the final output is obtained, as shown in Table 1.  
By comparing the parameters and operations of the ordinary convolution and Ghost, when the convolution kernel size of the ordinary convolution was \(k\), the sizes of \(k\) and \(d\) were similar, and \(s\) was much smaller than \(c\). Then, the comparison of the parameter quantity and calculation quantity is as shown in Equations (6) and (7), respectively. \[\text{r}_{\text{para}}=\frac{\text{c}*\text{k}*\text{n}}{\text{c}*\text{k}* \frac{\text{n}}{\text{s}}+\text{d}*\frac{\text{n}}{\text{s}}*(\text{s}-1)} \approx\frac{\text{s}*\text{c}}{\text{c}+\text{s}-1}\approx\text{s} \tag{6}\]