*3.1. Data Set Construction*

The 4.8 MW wind turbine benchmark system has four measurement outputs, namely the pitch angle β, the generator rotating speed ω*g*, the rotor angular speed ω*r*, and generator torque τ*g*. By using the measurement outputs above, the data set recorded from each measurement, denoted by β*s*, ω*gs*, ω*rs*, and τ*gs*, can be obtained as follows:

$$\begin{aligned} \boldsymbol{\beta}\_{\text{S}} &= \begin{bmatrix} \beta\_{\text{s}11} & \beta\_{\text{s}12} & \cdots & \beta\_{\text{s}1\gamma} \\ \beta\_{\text{s}21} & \beta\_{\text{s}22} & \cdots & \beta\_{\text{s}2\gamma} \\ \vdots & \vdots & \ddots & \vdots \\ \beta\_{\text{s}N1} & \beta\_{\text{s}N2} & \cdots & \beta\_{\text{s}N\gamma} \end{bmatrix} \in \mathbb{R}^{\mathbf{N}\times\gamma}, & \quad \boldsymbol{\omega}\_{\text{S}^{\text{g}}} &= \begin{bmatrix} \boldsymbol{\omega}\_{\text{g}\text{s}11} & \boldsymbol{\omega}\_{\text{g}\text{s}12} & \cdots & \boldsymbol{\omega}\_{\text{g}\text{s}1\gamma} \\ \boldsymbol{\omega}\_{\text{g}\text{s}21} & \boldsymbol{\omega}\_{\text{g}\text{s}22} & \cdots & \boldsymbol{\omega}\_{\text{g}\text{s}2\gamma} \\ \vdots & \vdots & \ddots & \vdots \\ \boldsymbol{\omega}\_{\text{g}\text{s}21} & \boldsymbol{\omega}\_{\text{g}\text{s}22} & \cdots & \boldsymbol{\omega}\_{\text{g}\text{s}2\gamma} \end{bmatrix} \in \mathbb{R}^{\mathbf{N}\times\gamma} \\ \boldsymbol{\omega}\_{\text{g}\text{s}31} & \boldsymbol{\omega}\_{\text{s}\text{s}\mathbf{1}} & \cdots & \boldsymbol{\omega}\_{\text{g}\text{s}1\gamma} \end{aligned} \tag{1}$$

where *N* is the number of the measurement points recorded, and γ is the number of the measurement scenarios. Specifically, for each measurement output, the dataset is recorded under γ operation scenarios (including the fault-free condition, and various faulty conditions), and *N* measurement points are documented at each scenario. As a result, the original data set can be described by:

$$X = \begin{bmatrix} \beta\_{\mathbb{S}^\*} \\ \alpha\_{\mathbb{S}^{\mathbb{S}^\*}} \\ \alpha\_{\mathbb{S}^\*} \\ \tau\_{\mathbb{S}^{\mathbb{S}^\*}} \end{bmatrix} \in R^{\overline{\mathbb{N}} \times \mathbb{N}^\*},\tag{2}$$

where *N* = 4*N*.

#### *3.2. Data Set Pre-Processing*

In order to enhance the feature extraction capability, the time-domain data is pre-proceeded to generate frequency-domain data with a reshaping expression.

According to the original data-set model *X* defined in (2), we can rewrite it as:

$$X = \begin{bmatrix} X\_1 & X\_2 & \cdots & X\_{\mathcal{V}} \end{bmatrix} = \begin{bmatrix} \begin{array}{cccc} \mathbf{x}\_{11} & \mathbf{x}\_{12} & \cdots & \mathbf{x}\_{1\mathcal{V}} \\ \mathbf{x}\_{21} & \mathbf{x}\_{22} & \cdots & \mathbf{x}\_{2\mathcal{V}} \\ \vdots & \vdots & \ddots & \vdots \\ \mathbf{x}\_{\overline{\nabla}\mathbf{1}} & \mathbf{x}\_{\overline{\nabla}\mathbf{2}} & \cdots & \mathbf{x}\_{\overline{\nabla}\mathbf{V}} \end{bmatrix} \tag{3}$$

where *Xi* <sup>=</sup> *<sup>x</sup>*1*<sup>i</sup> <sup>x</sup>*2*<sup>i</sup>* ··· *xNi <sup>T</sup>* , *i* = 1, 2, ··· , γ, and [·] *<sup>T</sup>* represents the transpose of the vector [·]. The Fourier transform of *Xi* can be calculated as follows:

$$X\_i(k) = \sum\_{t=1}^{\overline{N}} \chi\_{ti} e^{\frac{-j2\pi}{\overline{N}}k(t-1)},\tag{4}$$

where *k* = 0, 1, 2, ··· , *N* − 1.

In terms of (4), the discrete-time Fourier transform can transform a sequence of *N* numbers *x*1*<sup>i</sup> x*2*<sup>i</sup>* ··· *xNi* into a sequence of complex numbers *Xi*(0), *Xi*(1), ··· , *Xi N* − 1 , which can also be denoted by the symbols *f* (1) *<sup>i</sup>* , *f* (2) *<sup>i</sup>* , ··· , *<sup>f</sup>* (*N*) *<sup>i</sup>* . By arranging the sequence of the complex numbers as a vector, we have:

$$\begin{bmatrix} X\_i(0) \\ X\_i(1) \\ \vdots \\ X\_i(\overline{N}-1) \end{bmatrix} = \Omega \begin{bmatrix} \mathbf{x}\_{1i} \\ \mathbf{x}\_{2i} \\ \mathbf{x}\_{3i} \\ \vdots \\ \mathbf{x}\_{\overline{N}i} \end{bmatrix} := \begin{bmatrix} f\_i^{(1)} \\ f\_i^{(2)} \\ \vdots \\ \vdots \\ f\_i^{(\overline{N})} \end{bmatrix} \tag{5}$$

where:

$$
\Omega = \begin{bmatrix}
1 & 1 & 1 & \cdots & 1 \\
1 & e^{\frac{-j2\pi}{N}} & e^{\frac{-j4\pi}{N}} & \cdots & e^{\frac{-j2(\overline{N}-1)\pi}{N}} \\
\vdots & \vdots & \vdots & \ddots & \vdots \\
e^{\frac{-j2(\overline{N}-1)\pi}{N}} & e^{\frac{-j4(\overline{N}-1)\pi}{N}} & \cdots & e^{\frac{-j2(\overline{N}-1)^2\pi}{N}}
\end{bmatrix} \tag{6}
$$

and Ω is called the Fourier transform base. It is clear that *i* = 1, 2, ··· , γ in (5).

The Fourier transform above can be calculated by using the fast Fourier transform algorithm [45,46]. The fast Fourier transform algorithm treats the columns of a matrix as vectors and returns the Fourier transform vector for each column, leading to a Fourier transform matrix.

Taking magnitude and reshaping the vector in (5), one can obtain the matrix expression as follows:

$$F\_{\vec{i}} = \begin{bmatrix} \left| f\_i^{(1)} \right| & \left| f\_i^{(r+1)} \right| & \cdots & \left| f\_i^{((l-1)r+1)} \right| \\ \left| f\_i^{(2)} \right| & \left| f\_i^{(r+2)} \right| & \cdots & \left| f\_i^{((l-1)r+2)} \right| \\ \vdots & \vdots & \ddots & \vdots \\ \left| f\_i^{(r)} \right| & \left| f\_i^{(2r)} \right| & \cdots & \left| f\_i^{(\overline{N})} \right| \end{bmatrix} \in \mathbb{R}^{r \times l}, \ i = 1, 2, \cdots, \ \gamma, \tag{7}$$

where *<sup>r</sup>* indicates the number of rows, *<sup>l</sup>* stands for the number of columns, (·) represents the absolute value or magnitude of the complex number (·), and *N* = *lr*. By determining two parameters *r* and *l*, the frequency-domain data of the wind turbine can be described as follows:

$$\left| \left\{ \mathcal{F} \mid \mathcal{F} = \mathrm{I} \mathcal{F}\_1, \mathcal{F}\_2, \dots, \mathcal{F}\_{i^{\mu}}, \dots, \mathcal{F}\_{\mathcal{Y}} \right\} \right| \in \mathbb{R}^{r \times l \times \mathcal{V}}.\tag{8}$$

Therefore, the dataset has been reformatted as a tensor data expression. From (8), one can see the dataset has γ samples, and the size of each sample is *r* × *l*.

The reshaping process of the obtained data set above can be described by the flowchart in Figure 5. From this figure, one can see the data vector (e.g., *Xi* <sup>=</sup> *<sup>x</sup>*1*<sup>i</sup> <sup>x</sup>*2*<sup>i</sup>* ··· *xNi <sup>T</sup>* , *i* = 1, 2, ··· , γ) is projected into a frequency-domain space relying on the Fourier transform base, and the tensor representation is further generated in terms of (7) and (8).

**Figure 5.** Reprocessing and reshaping of the experimental data.

### *3.3. Dimensionality Reduction and Feature Extraction for Wind Turbines by Using the Uncorrelated Multi-Linear Principal Component Analysis Method*

The multi-linear principal component analysis (MPCA) technique [47], which belongs to one of the unsupervised machine learning algorithms, is usually to cope with the tensor expression dataset. However, some of the correlations of the principal components amongst the projected directions are neglected to some extent, which means the final features obtained by MPCA would be redundant. In contrast to other multilinear PCA techniques, such as MPCA, two-dimensional PCA, and so forth, UMPCA seeks a tensor-to-vector projection, which can capture the maximum number of the uncorrelated multilinear features [39,48]. In this paper, UMPCA is thus used to extract the significant features of the 4.8 MW benchmark wind turbines.

The *n*-mode product of a tensor F by a matrix *U* is denoted by F ×*<sup>n</sup> U* [39,48].

Suppose the dataset *zi*(*p*), *i* = 1, 2, ... , γ represents the *p*th principal components (e.g., low-dimensional features), where *zi*(*p*) is the projection of the *i*th data sample *F<sup>i</sup>* by the *p*-th elementary multi-linear projection (EMP) *Up* = *<sup>u</sup>*(*n*) *p T* , *n* = 1, 2, ... , *Q* , where *Q* represents the number of projection directions. As a result, the formula of *zi*(*p*) can be described as follows [39,48]:

$$\varpi\_i(p) = \mathbb{F}\_i \times\_{n=1}^{Q} \left\{ \left( \mathfrak{u}\_p^{(n)} \right)^T, n = 1, 2, \dots, Q \right\}, \ i = 1, 2, \dots, \gamma. \tag{9}$$

The objective of the UMPCA methodology is to seek *Up* that projects *F<sup>i</sup>* into a feature subspace to determine a tensor-to-vector projection, whose functionality will guarantee the implementation for the maximum direction of the original data sets, and the significant features extracted are uncorrelated. Based on the above, the variance can be calculated by [39,48]:

$$\mathcal{S}\_{T\_p}^{\overline{z}} = \sum\_{i=1}^{\mathcal{V}} \left[ z\_i(p) - \overline{z}\_p \right]^2,\tag{10}$$

where *zp* = γ *i*=1 *zi*(*p*) <sup>γ</sup> . Let *hp* denote the *p*th coordinate vector, describing the training sample in the *p*th EMP space. The *i*th component of *hp* equals the *p*-th component of *zi*, that is, *hp*(*i*) = *zi*(*p*).

In order to determine a set of projection directions *Up* = *<sup>u</sup>*(*n*) *p T* , *n* = 1, 2, ... , *Q* to maximize the variance and generate uncorrelated features, the cost function can be given as follows [39,48]:

$$\begin{cases} \left(\mathfrak{u}\_p^{(n)}\right)^T, n = 1, 2, \dots, Q \end{cases} = \text{argmax} \mathbf{S}\_{T\_p}^z$$
 
$$\text{s.t.} \{\mathfrak{u}\_p^{(n)}\}^T \cdot \mathfrak{u}\_p^{(n)} = 1, \text{ and } \frac{\left(\mathfrak{h}\_p\right)^T \mathfrak{h}\_q}{\|\|\mathbf{h}\_p\| \|\|\mathbf{h}\_q\|} = \delta\_{pq}, \ (p, q = 1, 2, \dots, P),$$

where *P* is the dimensionality of the projected space, and:

$$
\delta\_{pq} = \begin{cases} & 1, & \text{if } p = q \\ & 0, & \text{otherwise.} \end{cases} \tag{12}
$$

In terms of the background of the benchmark wind turbine in Section 2 and the fundamental principle of the UMPCA [39,48] mentioned above, the specific procedures of the significant feature extraction for wind turbines can be illustrated as follows.


$$z\_i = F\_i \times\_{n=1}^Q \left\{ \left( \mathfrak{u}\_p^{(n)} \right)^T, n = 1, \ 2, \dots, Q \right\}\_{p=1}^P, i = 1, \ 2, \dots, \ \gamma. \tag{13}$$

#### *3.4. FFT Plus UMPCA Algorithm*

The specific procedures of the dimensionality reduction and feature extraction based on FFT plus the UMPCA technique for wind turbines can be described as follows:

#### **Algorithm 1**

**Input:** Date set F <sup>F</sup> <sup>=</sup> *F***1**, *F***2**, ... , *F***i**, ... , *F*<sup>γ</sup> . **Output:** Significant features *<sup>z</sup><sup>i</sup>* = *<sup>F</sup><sup>i</sup>* <sup>×</sup>*<sup>Q</sup> n*=1 *<sup>u</sup>*(*n*) *p T* , *n* = 1, 2, ... , *Q P p*=1 , *i* = 1, 2, ... , γ.


$$\mathbf{z}\_{i} = \mathbf{F}\_{l} \times\_{n-1}^{Q} \left\{ \left( \mathbf{u}\_{p}^{(n)} \right)^{T}, n = 1, \ 2, \dots, \ Q \right\}\_{p=1}^{P}, \ i = 1, \ 2, \dots, \ \gamma. \text{ As a result, for the tensor dataset } \mathcal{F}, \text{ where } \gamma = \begin{cases} 1, & \text{if } \mathbf{x}\_{i} = \mathbf{x}\_{i} \\ 0, & \text{otherwise} \end{cases} \right\}$$

*n*=1 *<sup>u</sup>*(*n*) *p T*

, *n* = 1, 2, ... , *Q*

*P p*=1 .

the resultant UMPCA feature vector *z* can be given as *z* = F ×*<sup>Q</sup>*

#### **4. Experimentation Designs**

#### *4.1. Brief Description and Definition*

In this section, in order to validate the applicability of the proposed methodology for fault diagnosis and fault classification in wind turbine systems, five different topologies of experimentation are addressed subsequently. Furthermore, actuator and sensor faults are simultaneously considered in each group of experiment. The size of each data set is 1000 × 440,001.

For the simplicity of the description for the subsequent experimentations, we define some abbreviations for different types of faulty conditions in two actuators and four sensors. 'A1 represents the first actuator relevant to the pitch angle reference (β*r*); 'A2 stands for the second actuator relevant to the generator torque reference (τ*g*,*r*); 'S1 is the first sensor to measure the pitch angle (β), 'S2' indicates the second sensor to measure the generator rotating speed (ω*g*), 'S3 stands for the third sensor to measure the rotor angular speed (ω*r*), and 'S4' defines as the fourth sensor to measure the generator torque (τ*g*). The detailed information is shown in Table 2.

**Table 2.** Symbols and acronyms of the actuator and sensor for 4.8 MW wind turbines.


In addition, 'FF' indicates fault free. 'EL', 'SWD', and 'RN' represent effectiveness losses, sinusoidal wave disturbances, and random numbers, respectively. Their combination, including 'EL + SWD', 'EL + RN', 'SWD + RN', and 'EL + SWD + RN', are also taken into consideration.

The other abbreviations of the parameters for faulty signals are defined as follows, whose specifications are explained in Table 3:

#### (1) 'EL': Percentage (P);


**Table 3.** Operation Conditions, Parameters, and Acronyms for 4.8 MW Wind Turbine Systems.


#### *4.2. Experimental Statement*

In the experiment, the fault signals are shown in Table 4. For instance, the effective loss (EL) of every single actuator or sensor is selected as 1%, 2%, 3%, ... , 19% and 20% of the normal value, respectively, which means there are 20 faulty cases for the typical fault EL. More detailed information on other faults can refer to Table 4.


**Table 4.** Actuator and sensor fault signals: Experimentation design.


**Table 4.** *Cont.*

Supplementary Explanations: (i). AWGN signals are introduced to each faulty condition, and the number of AWGN signals is equal to 50; (ii). For β*r*, the EL is increased from 1.00 to 20.00% with an increase of 1.00%, and the Amplitude of the SWD increases from 0.01 to 0.20 with an increase by 0.01, and the Bias varies between 0.10 and 2.00 with the interval of 0.10, gradually, as well as the Mean of RN increases from 0.01 to 0.20 with an increase by 0.01, and the Variance increases between 0.20 and 2.10 with the interval of 0.10.

In this section, five groups of experiments of multiple actuator and sensor faults are discussed:


These scenarios are further illustrated by Figures 6–8. From Figure 6, one can see there are eight combinations of actuator and sensor faults under Scenario I, and two combinations in Scenario II. Figure 7 describes Scenario III and Figure 8 explains Scenarios IV and V, respectively.

**Figure 6.** Experimentation design for actuator and sensor fault classification, under Scenario I (1AF + 3SFs) and Scenario II (1AF + 4SFs).


**Figure 7.** Experimentation design for actuator and sensor fault classification, under Scenario III (2AFs + 2SFs).


**Figure 8.** Experimentation design for actuator and sensor fault classification, under Scenario IV (2AFs + 3SFs) and Scenario V (2AFs + 4SFs).

In order to evaluate the feasibility and capability of the proposed FFT + UMPCA algorithm, the MPCA, UMPCA, and FFT + MPCA techniques are also discussed and analyzed. The datasets of the experiments using the algorithms MPCA, UMPCA, FFT + MPCA, and FFT + UMPCA, respectively, are shown in Tables 5 and 6. In Table 5, *XMPCA* <sup>I</sup> , *<sup>X</sup>MPCA* II , *<sup>X</sup>MPCA* III , *<sup>X</sup>MPCA* IV , and *<sup>X</sup>MPCA* <sup>V</sup> are the tensor datasets for the MPCA algorithm under scenarios I, II, III, IV and V, respectively. *XUMPCA* <sup>I</sup> , *<sup>X</sup>UMPCA* II , *XUMPCA* III , *<sup>X</sup>UMPCA* IV , *<sup>X</sup>UMPCA* <sup>V</sup> denote the tensor datasets for the UMPCA algorithm under scenarios I, II, III, IV, and V, respectively. In Table 6, *XFFT*+*MPCA* <sup>I</sup> , *<sup>X</sup>FFT*+*MPCA* II , *<sup>X</sup>FFT*+*MPCA* III , *<sup>X</sup>FFT*+*MPCA* IV , and *<sup>X</sup>FFT*+*MPCA* V represent the tensor datasets for the FFT + MPCA algorithm under scenarios I, II, III, IV, and V, respectively. *XFFT*+*UMPCA* <sup>I</sup> , *<sup>X</sup>FFT*+*UMPCA* II , *<sup>X</sup>FFT*+*UMPCA* III , *<sup>X</sup>FFT*+*UMPCA* IV , and *<sup>X</sup>FFT*+*UMPCA* <sup>V</sup> are the tensor datasets for the FFT + UMPCA algorithm under scenarios I, II, III, IV, and V, respectively.


**Table 5.** Datasets of experimentations with AWGN noises based on different topologies of the data-driven methodologies: MPCA and UMPCA.

**Table 6.** Datasets of experimentations with AWGN noises based on different topologies of the data-driven methodologies: FFT + MPCA and FFT + UMPCA.


Simulations were operated under the environment of Windows Server 2016 Technical Preview 5 OS and software MathWorks MATLAB R2018a, and run on a server with DELL PowerEdge C6100 4 Nodes Server Dual Intel Xeon 5670, Hex-Core, 2.93 GHz CPU, 384 GB memory, and 3 TB storage (Overall: 48-Core CPU, 1.50 TB Memory, and 36 TB Storage).

### **5. Simulation Results**

#### *5.1. Time-Domain Space Characteristics of Wind Turbine Benchmark Systems*

The curves displayed in Figure 9a–d show the time-domain responses of the four measurement outputs β, ω*g*, ω*r*, and τ*<sup>g</sup>* under fault-free, and various faulty conditions of the actuator and sensor faults, including 'EL', 'SWD', 'RN', 'EL + SWD', 'EL + RN', 'SWD + RN', and 'EL + SWD + RN', respectively.

From Figure 9a–c, one can see that the curves are difficult to distinguish between fault-free and faulty situations. In Figure 9d, from 0–2300 s, it is impossible to find differences among the fault-free and faulty cases. From 2300–4400 s, one can see the fault-free curve is distinguishable from the faulty curves; however, it is hard to see the differences between the faulty curves. As a result, fault classification and diagnosis techniques are needed. It is noted that the overall simulated time of the 4.8 MW wind turbine benchmark system is 4400 s with the interval of 0.01 s. Consequently, the dimension of each experimental sample is 440,001.

(**a**) Output response of the pitch angle under healthy and faulty conditions, respectively.

(**b**) Output response of the generator speed under healthy and faulty conditions, respectively.

<sup>(</sup>**c**) Output response of the rotor speed under healthy and faulty conditions, respectively.

(**d**) Output response of the generator torque under healthy and faulty conditions, respectively.

**Figure 9.** Output responses of four sensor outputs β, ω*g*, ω*r*, and τ*g*, respectively, under healthy and multiple faults operation conditions occurring between 0 and 4400 s: (**a**–**d**).

#### *5.2. Feature Extractions and Fault Classifications for Scenario I*

*Data Set for Scenario I:* In this data set, it includes 'FF' samples and eight types of '1AF + 3SFs' samples. The detailed information is shown in Figure 6—Scenario I. In order to validate the effectiveness of the proposed algorithm by comparison, four types of tensor datasets are established, which are *XMPCA* <sup>I</sup> <sup>∈</sup> *<sup>R</sup>*{440,000×4×9000} , *XUMPCA* <sup>I</sup> <sup>∈</sup> *<sup>R</sup>*{22,000×80×9000} , *XFFT*+*MPCA* <sup>I</sup> <sup>∈</sup> *<sup>R</sup>*{550×800×4×9000} , and *XFFT*+*UMPCA* <sup>I</sup> <sup>∈</sup> *<sup>R</sup>*{100×220×80×9000} , respectively. The detailed information can be found in Tables 5 and 6.

For *XMPCA* <sup>I</sup> <sup>∈</sup> *<sup>R</sup>*{440,000×4×9000} : '440,000' represents the dimensionality of the feature subspace, '4' stands for the dimensionality of the parameter subspace, and '9000' illustrates the dimensionality of the sample subspace; for *XUMPCA* <sup>I</sup> <sup>∈</sup> *<sup>R</sup>*{22,000×80×9000} : '22,000' represents the dimensionality of the feature subspace, '80' stands for the dimensionality of the parameter subspace, and '9000' illustrates the dimensionality of the sample subspace.

For *XFFT*+*MPCA* <sup>I</sup> <sup>∈</sup> *<sup>R</sup>*{550×800×4×9000} : The original data set *X*<sup>I</sup> ∈ *R*{440,000×36,000} is projected into a frequency-domain subspace and reshaped into a tensor data representation *XFFT*+*MPCA* <sup>I</sup> <sup>∈</sup> *R*{550×800×4×9000} for the FFT + MPCA algorithm, where '4' stands for the dimensionality of the parameter subspace, '9000' illustrates the dimensionality of the sample subspace, and '500 × 800' is the size of the reshaped feature matrix. For *XFFT*+*UMPCA* <sup>I</sup> <sup>∈</sup> *<sup>R</sup>*{100×220×80×9000} : The original data set *X*<sup>I</sup> ∈ *R*{440,000×36,000} is projected into a frequency-domain subspace and reshaped into a tensor dataset *XFFT*+*UMPCA* <sup>I</sup> <sup>∈</sup> *<sup>R</sup>*{100×220×80×9000} for the FFT <sup>+</sup> UMPCA algorithm.

Fault classification under scenario I is shown by Figures 10 and 11. Comparing Figure 10 with Figure 11, one can see that the three-dimensional space visualization results in Figure 11 are better than those in Figure 10. One can see, in Figure 11, that only two types of faulty condition cannot be distinguished, which are '{A1 & (S2 + S3 + S4)}' and '{A2 & (S2 + S3 + S4)}', respectively.

(**b**) Classification using UMPCA

**Figure 10.** Three-dimensional space visualization performance for fault classification for wind turbines subjected to single actuator fault and three sensor faults under AWGN noises, using (**a**) MPCA and (**b**) UMPCA, respectively.

**Figure 11.** Three-dimensional space visualization performance for fault classification for wind turbines subjected to single actuator fault and three sensor faults under AWGN noises, using (**a**) FFT + MPCA and (**b**) FFT + UMPCA, respectively.

Specifically, from Figure 10a, the data generally cluster in three large groups, by using the MPCA algorithm, indicating a poor classification performance. To see the details, one can see one of the overlapping occurs between 'Fault Free' and '{A1 & (S1 + S3 + S4)}', and the other exists between '{A1 & (S2 + S3 + S4)}' and '{A2 & (S2 + S3 + S4)}'. Moreover, the rest of the five classes of faulty situations indistinguishably cluster together. From Figure 10b based on the UMPCA, the visualized results cluster around more groups, but are still unsatisfactory for classification.

From Figure 11a,b, one can see that both methods, that is, FFT + MPCA and FFT + UMPCA, can successfully classify seven classes of faulty/heathy conditions. It is noticed that the spatial distance amongst these generated features in Figure 11a is closer than that in Figure 11b in the corresponding three-dimensional space. In other words, there are larger distances between different faulty data in Figure 11b comparing with Figure 11a, indicating a better classification performance of the FFT + UMPCA algorithm. As a result, it is evident that the proposed FFT + UMPCA algorithm outperforms the MPCA, UMPCA, and FFT + MPCA for fault classification under scenario I.
