## 3 Results and Discussion
### Fault Classification Results  
The investigated GCPV system operates in 22 working modes (Class \(C_{i},i=0..21\)) when the first mode is the healthy one. A sample training dataset using 50 percent of the data was utilized in order to train the NNs, and the remaining data were utilized to validate and evaluate the trained NNs (see Table 2). In the present work, a method for detecting and diagnosing faults is provided. Almost all stochastic measurements are decor-related. After being normalized to have unit variance and zero mean, a PCA model is generated. Then, using a 95% cumulative variance criterion, the acquired variances of the variables are stored and arranged in decreasing order after being computed by the use of the eigenvalue decomposition. Consequently, five PCs were maintained to be utilized to train the NN classifiers. Therefore, denoising variables and selecting and thereby extracting statistical features using an MSPCA tool is crucial for achieving higher accuracy in FDD-based techniques. As a result, in this study, the NN classifiers are introduced with the newly obtained dataset. Using labeled training data, this method teaches a set of predefined fault types. Several ML techniques, including DT, SVM, DA, KNN, and NB, are employed to test and evaluate the performance of our suggested strategy in terms of diagnostic precision, recall, accuracy, and computation time. The different existing techniques are implemented in a MATLAB environment. The accuracy of these techniques is computed using a 10-fold cross-validation metric in order to determine the FDD efficiency of the suggested techniques. The number of hidden layers selected for the NN and CFNN is 10, and it was [10, 10, 10] for MNN, with a total of 50 max epochs with full batch size. The \(K\) value for KNN is equal to 3, and the \(K\) and \(C\) parameters for SVM are set with the lowest RMSE value. The number of splits for DT is equal to 50. This work then employs a PCA model with a \(\{PC_{l=5},Q,\Phi\}\) group of features. Table 3 shows the overall normalized accuracy values for the various extracted features and the NN classifiers. \begin{table}
\begin{tabular}{c c c c c} \hline \hline
**Type of Fault** & **Class** & **State** & \
\begin{tabular}{c} **Training** \\ **Dataset** \\ \end{tabular} &
\begin{tabular}{c} **Testing** \\ **Dataset** \\ \end{tabular} \\ \hline Fault-free & \(C_{0}\) & healthy case & 3000 & 3000 \\ \hline Simple faults in \(PV_{1}\) & \(C_{1}\) & \(Fault_{1}\) & 3000 & 3000 \\  & \(C_{2}\) & \(Fault_{2}\) & 3000 & 3000 \\  & \(C_{3}\) & \(Fault_{3}\) & 3000 & 3000 \\  & \(C_{4}\) & \(Fault_{4}\) & 3000 & 3000 \\ \hline Simple faults in \(PV_{2}\) & \(C_{5}\) & \(Fault_{5}\) & 3000 & 3000 \\  & \(C_{6}\) & \(Fault_{6}\) & 3000 & 3000 \\  & \(C_{7}\) & \(Fault_{7}\) & 3000 & 3000 \\  & \(C_{8}\) & \(Fault_{8}\) & 3000 & 3000 \\ \hline Multiple faults in \(PV_{1}\) & \(C_{13}\) & \(Fault_{13}\) & 3000 & 3000 \\ \hline Multiple faults in \(PV_{2}\) & \(C_{14}\) & \(Fault_{14}\) & 3000 & 3000 \\ \hline  & \(C_{9}\) & \(Fault_{9}\) & 3000 & 3000 \\  & \(C_{10}\) & \(Fault_{10}\) & 3000 & 3000 \\  & \(C_{11}\) & \(Fault_{11}\) & 3000 & 3000 \\  & \(C_{12}\) & \(Fault_{12}\) & 3000 & 3000 \\  & \(C_{15}\) & \(Fault_{15}\) & 3000 & 3000 \\ Mixed faults & \(C_{16}\) & \(Fault_{16}\) & 3000 & 3000 \\  & \(C_{17}\) & \(Fault_{17}\) & 3000 & 3000 \\  & \(C_{18}\) & \(Fault_{18}\) & 3000 & 3000 \\  & \(C_{19}\) & \(Fault_{19}\) & 3000 & 3000 \\  & \(C_{20}\) & \(Fault_{20}\) & 3000 & 3000 \\  & \(C_{21}\) & \(Fault_{21}\) & 3000 & 3000 \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Construction of the database. Table 4 shows the obtained results in terms of normalized accuracy values for the diverse extracted features based on the combined MSPCA technique and the NN classifiers.