## 5 Experiments and Results
### Experimental Setup and Evaluation Metrics
Within the training set, 14,241 were normal samples and 2792 were fault samples. The test set also contained 5678 samples. The proportion of fault samples is relatively low, resulting in significant class imbalance in the training data. To address this issue, we constructed a GAN model as detailed in Figure 6 and trained it using all fault samples extracted from the training set. As shown in Figure 8, after 25 training epochs, the loss curves of both the generator and discriminator stabilized with mild oscillations, indicating that the adversarial training reached a balanced state. At this point, the generator was able to produce synthetic data resembling real fault samples, while the discriminator found it increasingly difficult to distinguish between real and fake data. To balance the training set, we calculated the shortfall in fault samples relative to normal samples (11,449 samples) and determined the number of synthetic samples needed. By feeding random noise into the trained generator, we generated 11,449 synthetic fault samples, which were then combined with the real fault samples and the normal samples to construct a balanced training set of 28,482 samples for subsequent model training and evaluation. In our experiments, the GAN model was trained for 50 epochs. This number was determined based on preliminary trials, where both the training and validation loss curves were observed to stabilize within about 50 epochs, and the quality of the generated samples became comparable to the real samples. Further increasing the number of epochs resulted in negligible improvements but increased computational costs. To intuitively demonstrate the effectiveness of the trained GAN in generating realistic fault samples, we visualized the distributions of real and synthetic samples using both t-SNE and PCA (see Figure 5). t-SNE and PCA provide non-linear and linear dimensionality reduction, respectively, allowing for the visualization of high-dimensional data in two-dimensional  
Figure 8: Generator and discriminator loss during GAN training. space. As shown in Figure 9, the distributions of the fake samples (yellow) and the real samples (blue) largely overlap, indicating that the generator successfully captures the key characteristics of the real fault data and is able to produce high-quality synthetic samples. This also suggests that our GAN does not suffer from severe mode collapse during training. To verify the effectiveness of the CNN-LSTM classification module within the GAN-CNN-LSTM framework, we trained the classifier using the balanced dataset constructed above. As shown in Figure 10, after approximately 30 training epochs, the model's loss values stabilized with slight fluctuations, indicating convergence and a stable training process. Next, we fed the fixed test set into the trained classifier to evaluate its fault detection capability. The test results are summarized in Table 4, reflecting the model's classification performance across different sample types. We separately recorded the model's classification metrics on both normal samples and fault samples (i.e., positive class). For normal samples, the Precision, Recall, and F1-Score \begin{table}
\begin{tabular}{c c c c c} \hline \hline
**Label** & **Precision** & **Recall** & **F1-Score** & **Accuracy** \\ \hline
0 & 97.56\% & 99.18\% & 98.36\% & 97.23\% \\
1 & 95.38\% & 87.23\% & 91.12\% & 97.23\% \\ \hline \hline \end{tabular}
\end{table} 
Table 4: Classification results of the GAN-CNN-LSTM model on the test set. Figure 10: Training loss curve of the GAN-CNN-LSTM classifier. Figure 9: Distributions of the fake samples and real samples. all exceeded 97%, and the overall test Accuracy reached 97.23%. More importantly, for the fault detection task, which is the primary focus of this study, the model achieved a Precision of 95.23%, Recall of 87.23%, and a comprehensive F1-Score of 91.12% on the positive class--demonstrating strong performance in identifying fault samples.