# Lightweight End-to-End Speech Enhancement Generative Adversarial Network Using Sinc Convolutions
## 4 Sinc-Convolution  
Different from a standard convolutional layer that performs a set of time-domain convolutions between the input waveform and some Finite Impulse Response filters, Sinc convolution conducts the convolutional operation with a predefined function \(g\), depending on few learnable parameters \(\phi\) as  
\[y[n]=x[n]*g[n,\phi], \tag{3}\]  
where \(x[n]\) is a chunk of speech waveforms, and \(y[n]\) is the filtered output. Inspired by standard filtering in digital signal processing, [PERSON] et al. [26] define \(g\) as a filter bank consisting of rectangular bandpass filters. In the frequency domain, the magnitude of a generic bandpass filter can be written as  
\[G[f,f_{1},f_{2}]=rect(\frac{f}{2f_{2}})-rect(\frac{f}{2f_{1}}), \tag{4}\]  
where \(f_{1}\) and \(f_{2}\) are the learnable low and high cutoff frequencies, and \(rect(\cdot)\) is the rectangular function in the magnitude frequency domain. In the time domain, the reference function \(g\) transforms to  
\[g[n,f_{1},f_{2}]=2f_{2}sinc(2\pi f_{2}n)-2f_{1}sinc(2\pi f_{1}n). \tag{5}\]  
The Sinc function here is the unnormalized Sinc function, i.e., \(sinc(x)=\frac{sinc(x)}{x}\). [PERSON] et al. [26] initialize filters with cutoff frequencies of the mel-scale filterbank, which has the advantage of directly allocating more filters in the lower part of the spectrum. [PERSON] et al. [34] execute experiments over different initialization schemes, but no benefit for the downstream task is observed. Please note that there are two constraints in Equation (5) that need to be satisfied: \(f_{1}\geqslant 0\) and \(f_{2}\geqslant f_{1}\). In addition, the de facto frequences that are calculated in Equation (5) are \(f_{1}^{\prime}\) and \(f_{2}^{\prime}\), where  
\[f_{1}^{\prime}=|f_{1}|, \tag{6}\] \[f_{2}^{\prime}=|f_{1}|+|f_{2}-f_{1}|.\]  
To smooth out the abrupt discontinuities at the end of \(g\), Hamming window \(w[n]\)[35] of length \(L\) is deployed by  
\[g_{w}[n,f_{1}^{\prime},f_{2}^{\prime}]=g[n,f_{1}^{\prime},f_{2}^{\prime}] \cdot w[n], \tag{7}\]  
where  
\[w[n]=0.54-0.46\cdot cos(\frac{2\pi n}{L}). \tag{8}\]  
It is also suggested that no significant performance difference appears when adopting other window functions [26]. As the filters \(g\) are symmetric, the filters can be computed efficiently by considering one side of the filter and inheriting the results for the other half. Moreover, the symmetry does not introduce any phase distortion, keeping the essence of processing raw inputs for speech enhancement.  
Another remarkable property of Sinc convolution is its small parameter scale. If a CNN layer is composed of F filters of length M, a standard CNN employs \(F\times M\) parameters. Unlike a standard convolutional layer, only two parameters are employed for each Sinc filter, regardless of its length. For instance, if \(F=64\) and \(M=251\), the CNN layer employs approximately \(16\,\mathrm{K}\) parameters. By contrast, a Sinc-convolution layer only employs 128 parameters. This property offers the possibility to obtain selective filters with many taps, with negligible parameter increment.