## 2 ANC Method Based on VMD and GBDT
### Feature Extraction with VMD  
The variational mode decomposition (VMD) decomposes the noise data \(x(i)\) into intrinsic mode functions (IMFs) \(u_{k}(i)\) with the number of \(K\)[1]:  
\[x(i)=\sum\limits_{k=1}^{K}u_{k}(i)=A_{k}(i)\cos[\phi_{k}(i)] \tag{1}\]  
where \(K=6\) in this paper, \(\phi_{k}(i)\) is mode phase and \(A_{k}(i)\) is the envelope. To obtain the IMFs and central frequency, the optimum of the augmented Lagrangian is performed as following:  
\[\begin{array}{c}L(u_{k}(t),\ f_{k},\ \lambda_{t})=\alpha\sum\limits_{k=1}^{K} \|\frac{d}{dt}\Big{[}\Big{(}\delta(t)+\frac{j}{nt}\Big{)}*u_{k}(t)\Big{]}e^{-j 2\pi f_{k}t}\|_{2}^{2}\\ +\|x(t)-\sum\limits_{k=1}^{K}u_{k}(t)\|_{2}^{2}+\langle\lambda_{t},\ x_{t}- \sum\limits_{k=1}^{K}u_{k}(t)\rangle\end{array} \tag{2}\]  
Figure 1: Block diagram of active noise control based on VMD and GBDT.  
where \(\lambda_{t}\) is the Lagrangian coefficient, \(\alpha\) is the scale factor, \(\delta\) is the Fermi-Dirac distribution, \(\|\cdot\|_{2}^{2}\) is the 2-norm and \(\langle\cdot\rangle\) is the inner product. The VMD method captures the mode waveforms and central frequencies of the raw rolling bearing vibration signal in the frequency domain.  
Furthermore, the approximate entropy (AE) [22] is used to transform the IMF sequences into six feature values for each noise dataset. A window with length of m was set for the noise convolution signals \(X_{c}(1),\ X_{c}(2),\ \ldots,\ X_{c}(N)\) with length of \(N\). A set of vectors with dimension of \(m\) was thus obtained:  
\[\mathbf{X}_{c}(i)=\{X_{c}(i),\ X_{c}(i+1),\ldots,\ X_{c}(i+m-1)\},\quad i=1,\ 2,\ \ldots,\ N-m+1. \tag{3}\]  
The distance between \(\mathbf{X}_{c}(i)\) and \(\mathbf{X}_{c}(j)\) is defined as the largest difference between the two corresponding elements and is calculated as:  
\[d[\mathbf{X}_{c}(i),\ \mathbf{X}_{c}(j)]=\max_{k=0\sim m-1}[|X_{c}(i+k)-X_{c}(j+ k)|]. \tag{4}\]  
\(C_{i}^{m}(r)\), the ratio of \(\{d[\mathbf{X}_{c}(i),\ \mathbf{X}_{c}(j)]<r\}\) to the total number of \(N-m\), is calculated as:  
\[C_{i}^{m}(r)=\frac{1}{N-m}\{d[\mathbf{X}_{c}(i),\ \mathbf{X}_{c}(j)]<r\}, \tag{5}\]  
where the statistical distance, \(d[\mathbf{X}_{c}(i),\ \mathbf{X}_{c}(j)]\), is smaller than the given threshold \(r\). Take the logarithm of \(C_{i}^{m}(r)\) and calculate the average value:  
\[\phi^{m}(r)=\frac{1}{N-m+1}\sum_{i=1}^{N-m+1}\ln C_{i}^{m}(r). \tag{6}\]  
Then, the approximate entropy of the signal can be obtained by the following formula:  
\[AE(m,r,N)=\phi^{m}(r)-\phi^{m+1}(r) \tag{7}\]  
where \(m=2\), \(r=0.1\sim 0.25\times\text{std}_{X_{c}}\) and \(\text{std}_{X_{c}}\) is the standard deviation of the original signal. This paper assumed \(r=0.2\times\text{std}_{X_{c}}\).  
We used PCA [23] to further extract features of AE in datasets of different types of noise. Then, the k-means++ cluster [24] algorithm was used to classify different types of noise. Taking the analysis of white noise as an example, the feature extraction based on VMD, PCA and k-means++ is shown in Figure 2.  
It should be noted that PCA and k-means++ algorithm are only used to classify multiple noise sources. Then, according to the classification results, the raw noise dataset of each type is sent to the corresponding GBDT regressor.