# Evaluation of Supervised Machine Learning Classifiers for Fault Detection in PV Panels

Bassel Chokr, Nizar Chatti, Abdérafi Charki, Thierry Lemenand, Mohammad Hammoud

► To cite this version:

Bassel Chokr, Nizar Chatti, Abdérafi Charki, Thierry Lemenand, Mohammad Hammoud. Evaluation of Supervised Machine Learning Classifiers for Fault Detection in PV Panels. INTERNATIONAL CONGRESS ON MEASUREMENT, QUALITY AND DATA SCIENCE, MQDS 2023, Jun 2023, Bordeaux, France. hal-05437330

HAL Id: hal-05437330

https://univ-angers.hal.science/hal-05437330v1

Submitted on 5 Jan 2026

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons CC BY 4.0 - Attribution - International License
# Evaluation of Supervised Machine Learning Classifiers for Fault Diagnosis in PV Panels

Bassel Chokr¹, Nizar Chatti², Abderafi Charki³, Thierry Lemenand⁴, Mohammad Hammoud⁵

¹LARIS, Polytech Angers, Avenue Notre Dame du Lac, 49000 Angers, bassel.chokr@univ-angers.fr

²LARIS, Polytech Angers, Avenue Notre Dame du Lac, 49000 Angers, nizar.chatti@univ-angers.fr

³LARIS, Polytech Angers, Avenue Notre Dame du Lac, 49000 Angers, abderafi.charki@univ-angers.fr

⁴LARIS, Polytech Angers, Avenue Notre Dame du Lac, 49000 Angers, thierry.lemenand@univ-angers.fr

⁵SDM group, Lebanese International University, Beirut 146404, Lebanon, mohamad.hammoud@liu.edu.lb

**ABSTRACT:** With the rapid expansion and installation of Photovoltaic (PV) power plant, developing a proper Fault Detection and Diagnosis (FDD) strategy has become a significant issue to be able to organize and plan for maintenance and to reduce repair time, which in turn ensures the availability of the plant. In this context, supervised Machine Learning (ML) algorithms are being extensively developed and their performances are analyzed in terms of different metrics including precision, detection accuracy, F1-score and recall. In this paper, FDD performances on PV panels are compared using faulty and non-faulty dataset acquired experimentally from a Grid-connected PV system (GPVS) emulator. To achieve this purpose, five ML classifiers were evaluated, and the obtained results made it possible to select the most efficient classifier to be used for FDD based on different evaluation metrics and computational time.

**Keywords:** Grid Connected PV System, Fault Detection and Diagnosis, Supervised Machine Learning, Classification

**Copyright:** This is an open-access article distributed under the terms of the Creative Commons Attribution 3.0 License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.

**Corresponding author:** Bassel Chokr, e-mail: bassel.chokr@univ-angers.fr.

## 1. INTRODUCTION

The growing demand for energy across various economic and industrial sectors has led to the depletion of fossil fuel reserves, and the continuously increase production of energy from non-renewable polluting resources constantly raises concerns about their extreme impact on global warming and climate change [1].

Consequently, in recent years, many countries have started shifting their attention to renewable energy sources like solar, hydro, wind, and biofuels [2]. Among these, photovoltaic (PV) solar panels have emerged as a clean, abundant, and pollution-free energy system, finding application in both small installations and large-scale power plants. However, as large-scale PV panel projects have progressed, it has become evident that the development of monitoring tools is essential to detect and address various issues that can affect the dependability, reliability, and robustness of these systems [3].

Within the scope of monitoring such plants using Prognostics and Health Management

(PHM) techniques, an implementation of Fault Detection and Diagnosis (FDD) tools can enhance the safety and efficiency of PV panels by identifying anomalies early on, allowing for timely predictive or corrective maintenance. FDD in PV panels can be broadly categorized into two distinct approaches: model-based and data-driven methods.

Model-based approaches involve using equations that represent the physical phenomena occurring within different components of the grid-connected PV system. For instance, Chouder et al. [4] employed a single diode PV cell model to simulate both the PV cell and the connected inverter, validating their model with real-world data. Barth et al. [5] discussed the use of both single and double diode models to represent PV cells. However, using physics-based models for FDD in PV systems can pose challenges due to the system's complexity, uncertainties in parameters, measurement noise, and various operating modes. Nevertheless, PV systems are typically well-equipped with instrumentation, allowing for the collection of extensive data using
Supervisory Control and Data Acquisition (SCADA) systems or Data Acquisition Cards (DAQ). This is where data-driven approaches come into play, efficiently improving the decision-making processes after data preprocessing and analysis. Data-driven methods have gained substantial attention across various research and application domains, resulting in numerous effective FDD approaches [6].

Among these data-driven approaches, Machine Learning (ML) algorithms have shown great promise for addressing various faults affecting PV panels, thanks to the abundance of monitoring data [7]–[12]. However, it is important to acknowledge that there are challenges that can affect the FDD capabilities of ML algorithms, particularly concerning the nature of faults, which can be abrupt, intermittent, permanent, or incipient. These faults can stem from environmental stress or damage to the PV array, such as connector disconnection, open-circuit faults, solar cell yellowing and browning, delamination, cracks, coating defects, wiring issues, overheating, and more [13]–[16]. Among these faults, incipient ones are particularly challenging to detect because they start with small magnitude changes and evolve slowly over time. Detecting them early is crucial to prevent gradual damage to PV cells leading to fatal failures.

The FDD task in ML can be approached through three paradigms. First, supervised mode detection relies on having information about the normality of the data, allowing for the labelling of data as normal or abnormal (fault classes) during the training phase. Second, in semi-supervised mode, only normal data is present in the training dataset. Third, unsupervised mode detection which lacks prior information about data normality. Fault detection, often referred to as "anomaly detection," has led to various research endeavours that depend on data characteristics, the availability of normality labels, and the specific application domains [17]–[19]. In this study, we concentrate on

supervised ML algorithms, considering a labelled dataset.

In order to classify PV system faults, we propose in this paper to compare the performances of five supervised ML algorithms, namely K-Nearest Neighbours (KNN) [20], Classification and Regression Trees (CART) [21] Random Forest (RF) [22], Naïve Bayes [23], and Artificial Neural Network - Multi-Layer Perceptron (ANN-MLP) [24], [25].

FDD performances are evaluated by using a faulty and non-faulty dataset acquired experimentally from a Grid-connected PV system (GPVS) emulator.

We have worked on the same dataset earlier and published another article on studying data dimensionality reduction for FDD application in PV systems. For further information, readers may follow this reference [26].

The rest of the paper is organized as follows: Section 2 presents the system description and dataset. Section 3 represents the used ML pipeline including the classifiers and the evaluation metrics. Section 4 presents the obtained results and performance assessment. Section 5 concludes the paper and presents perspectives.

# 2. SYSTEM DESCRIPTION

## 2.1. Setup Overview

This study focuses on an emulated grid connected PV system (GPVS) including different constitutive parts described in Figure 1. The system was set in 2018 by Azzeddine et al. [27], it encompasses a PV array emulator which produces DC current, a boost DC-DC converter, and a DC/AC inverter (containing six Insulated-Gate Bipolar Transistor (IGBT)) which is then connected a grid emulator or to an AC load.

The system is controlled by a DSpace 1104 board, which is also used as DAQ for data acquisition, thus all the system components are connected to the board with sensors. The board also uses
Proportional and integral (PI) controller to control the boost converter.

Chroma 62150H-1000S was used to emulate solar PV arrays. The device provides the freedom to control the required system parameters or the outdoor conditions by adjusting the temperature, irradiation, and humidity. For grid emulation, Chroma 61511 device was utilized, tuned to three-phase mode to replicate an actual grid system network.

The system runs in two modes; the maximum power point tracking (MPPT) mode and the intermediate power point tracking (IPPT) mode, both controlled by the boost DC-DC converter. The system mode depends on the comparison between the value of the available power from the arrays and the array's rated power. For more information on the system details, readers may refer to [28].

<figure><img src="image_2.png" /><figcaption>Figure 1: Grid connected Photovoltaic System (GPVS)</figcaption></figure>

## 2.2. GPVS Dataset

Using the emulated system, a dataset was gathered and it is published for research use on Mendeley Data website [29].

The data gathered is separated into two categories based on the two modes MPPT and IPPT. In this work, only data acquired during MPPT mode are considered due to their completeness. The data are divided into eight datasets, representing

respectively the normal operating mode (NOM) and seven different induced faults, as listed in Table 1. Each file has 13 features (See Table 2), measured using sensors and acquired by the DAQ.

The data was acquired with respect to a sampling period equal to 100 µs, and within a time window of 15 seconds on average for each mode. The faults are introduced at an unspecified time between the 7th and the 8th minute. In order to be labelling the data, we approximated the time of injection based on the results of Azzeddine et al. [27] and labelled all the data after the approximated time of fault injection as representative of the examined fault. The number of samples labelled and used in this study are listed in Table 1.

<table><caption>Table 1 Description of labels in GPVS MPPT Data</caption><thead><tr><th>Label</th><th>Case</th><th>Number of Acquired Samples</th><th>Description</th></tr></thead><tbody><tr><td>F0</td><td>Normal Operating Mode</td><td>61006</td><td>No Fault injected</td></tr><tr><td>F1</td><td>Inverter fault</td><td>59006</td><td>Complete failure in one of the six IGBTs</td></tr><tr><td>F2</td><td>Feedback current sensor fault</td><td>64007</td><td>One phase sensor fault with 20% error.</td></tr><tr><td>F3</td><td>Grid anomaly</td><td>4961</td><td>Intermittent voltage sags</td></tr><tr><td>F4</td><td>PV array mismatch</td><td>79008</td><td>10 to 20% nonhomogeneous partial shading</td></tr><tr><td>F5</td><td>PV array mismatch</td><td>79007</td><td>15% open circuit in PV array</td></tr><tr><td>F6</td><td>MPPT/IPPT T controller fault</td><td>39004</td><td>-20% gain parameter of PI controller in MPPT/IPPT controller of the boost converter</td></tr><tr><td>F7</td><td>Boost converter controller fault</td><td>54006</td><td>+20% in time constant parameter of PI controller in MPPT/IPPT controller of the boost converter</td></tr></tbody></table>

Label F1 represents a complete failure occurring at one of the six IGBTs. F2 stands for a 20% error
in acquisition value of a feedback current sensor. F3 depicts a fault on the grid when intermittent voltage sags occur. F4 designates a PV array mismatch fault where partial shading occurs over the panels. F5 is where a 15% open circuit occurs in the PV array. F6 is a 20% error in the gain parameter of the PI controller in the MPPT/IPPT controller. Finally, F7 represents a 20% increase in the time constant parameter of the PI controller. In, addition F0 is the label used for the NOM.

<table><caption>Table 2: GPVS Dataset Features</caption><thead><tr><td>Feature Symbol</td><td>Description</td></tr></thead><tbody><tr><td>I<sub>pv</sub></td><td>Current at PV array</td></tr><tr><td>V<sub>pv</sub></td><td>Voltage at PV array</td></tr><tr><td>V<sub>dc</sub></td><td>DC voltage</td></tr><tr><td>i<sub>a</sub></td><td>Inverter Phase_A current</td></tr><tr><td>i<sub>b</sub></td><td>Inverter Phase_B current</td></tr><tr><td>i<sub>c</sub></td><td>Inverter Phase_C current</td></tr><tr><td>V<sub>a</sub></td><td>Inverter Phase_A voltage</td></tr><tr><td>V<sub>b</sub></td><td>Inverter Phase_B voltage</td></tr><tr><td>V<sub>c</sub></td><td>Inverter Phase_C voltage</td></tr><tr><td>I<sub>abc</sub></td><td>Estimated current magnitude.</td></tr><tr><td>If</td><td>Estimated current frequency.</td></tr><tr><td>V<sub>abc</sub></td><td>Estimated voltage magnitude.</td></tr><tr><td>V<sub>f</sub></td><td>Estimated voltage frequency.</td></tr></tbody></table>

## 3. SUPERVISED ML PIPELINE

Supervised ML procedure pipeline includes multiple steps leading to the selection of a model able to produce accurate predictions when dealing with new data for FDD. The steps for supervised ML are selection of Data, which is GPVS dataset in our case, data pre-processing as well as splitting of data to training and testing sets. The following steps include the learning phase, where different ML algorithms are fitted to the training set to produce a candidate model. The candidate model is then evaluated using the test set based on different metrics. An optimal classifier is then selected according to its ability to produce the most efficient model for performing predictions. The steps are depicted in Figure 2. The pipeline steps will be discussed in the following subsections.

### 3.1. Pre-processing by Normalization

Data scaling is an essential step that precedes applying an ML algorithm for it makes all the features values available in a dataset, equal in range such as within [-1,1] and [0,1] ranges. This

minimizes the effects of the features having larger range on the algorithm [30]. In this work, the Z-score normalization which is based on the standard deviation and the mean value of a given feature, is used and is calculated as follows:

$$Z = \frac{x_i - \mu}{\sigma} \qquad (1)$$

where $x_i$ is the original variable value, $\mu$ is the mean, and $\sigma$ is the standard deviation.

### 3.2. Classifiers

For classification of faults and NOM, five supervised ML algorithms will be used, K-Nearest Neighbours (KNN), Classification and Regression Trees (CART) Random Forest (RF), Naïve Bayes (NB), and Artificial Neural Network Multi-Layer Perceptron (ANN-MLP). In the following, a brief description of each used algorithm is presented.

#### 3.2.1. K Nearest Neighbours

It indicates that datapoints in each dataset are typically found near other items with similar features. When the datapoints are labelled, the label of an unclassified datapoint is inferred by checking the labels of its closest neighbours. The KNN algorithm identifies the K nearest datapoints to a considered datapoint and determines its label by finding the most used labels among those nearest neighbours. For further information, readers can refer to [31].
<figure><img src="image_3.png" /><figcaption>Figure 2: Supervised ML pipeline</figcaption></figure>

### 3.2.2. Classification And Regression Trees (CART)

The classification model generated by this algorithm is structured like a tree with a root node, intermediate nodes, and leaf nodes. The generated tree is called a Decision Tree (DT). For data classification, the root node evaluates a test condition to determine the appropriate branch to follow, and this process continues until an intermediate node with a new test condition, or a leaf node associated with the decision result is reached [21].

### 3.2.3. Random Forest (RF)

The RF algorithm involves creating multiple DT using a resampled dataset from the original training data. Each DT is generated using the CART algorithm. Rather than utilizing all the features in the samples, the RF algorithm adopts a random feature selection method, which selects a subset of features at each non-leaf node split in the DT. This is done to decrease correlation between the DTs and improve accuracy [22].

### 3.2.4. Naïve Bayes (NB)

This classifier is based on Bayesian rules used in conditional probability. It calculates the probability that a given datapoint belongs to one of the labelled classes according to the values of the input features, then classifies the given datapoint to the category with the highest calculated probability-[23].

### 3.2.5. Artificial Neural Network - Multi-Layer Perceptron (ANN - MLP)

MLP is a feedforward ANN created using at least one hidden layer and an output layer. Data is received at the input layer of MLP, then passes through the hidden layers, and the results are presented in the output layer. In general, having more neurons in the hidden layers of the network produces higher prediction accuracy but slows the learning process of the algorithm [25].

## 3.3. Evaluation Metrics

For each classifier used we establish the confusion matrix which includes the true and false classification prediction. The confusion matrix is shown in Figure 3.

<figure><img src="image_4.png" /><figcaption>Figure 3: Multi-class confusion matrix</figcaption></figure>

Confusion matrix serves as the basis for calculating the values of the evaluation metrics used. The columns represent the classes predicted by the classifier and the rows represent the actual class labels.

The five selected classifiers are then evaluated using Recall, Precision, Accuracy and F1-score metrics. Accuracy is the most common metric used to evaluate a classifier; it is the percentage of correct predictions over all the predictions. The second metric is Precision (P) which measures how many
positive predictions are correct. The third metric is Recall (R) which is the percentage of how many of the positive the classifier predicted correctly out of all the positive cases available in the data. The last metric evaluated used is the F1-score (F1s) which is the average value of the recall and precision to give a representation of the two metrics in one value to aid in the evaluation of multiple classifiers.

$$ \text{Accuracy} = \frac{TP + TN}{TP + TN + FP + FN} \qquad (2) $$

$$ \text{Precision} = \frac{TP}{TP + FP} \qquad (3) $$

$$ \text{Recall} = \frac{TP}{TP + FN} \qquad (4) $$

$$ \text{F1-score} = 2 \times \frac{\text{Recall} \times \text{Precision}}{\text{Recall} + \text{Precision}} \qquad (5) $$

In equations (2) to (5), *TP* (True Positive) is the number of correctly identified samples, *TN* (True Negative) is the number of correctly dismissed samples, *FP* (False Positive) is the number of incorrectly dismissed samples, *FN* (False Negative) is the number of incorrectly identified samples [32]–[34].

In addition, the classifiers will also be compared based on the computational time taken by each for learning and prediction.

In the next section, the evaluation results of the five classifiers will be presented and compared.

# 4. RESULTS

## 4.1. Comparison study based on accuracy and computational time.

Five classifying algorithms are used to create a model able to predict NOM and seven faulty modes labelled in the GPVS dataset. Results of the accuracy and computational time needed for learning and prediction are presented in Table 3.

<table><caption>Table 3: Accuracy, learning and prediction computational time of the studied classifiers.</caption><thead><tr><th>Classifier</th><th>Accuracy (%)</th><th>Learning CT (s)</th><th>Prediction CT (s)</th></tr></thead><tbody><tr><td>CART</td><td>99.53</td><td>3.91</td><td>0.017</td></tr><tr><td>KNN</td><td>96.68</td><td>1.64</td><td>12.25</td></tr><tr><td>RF</td><td>99.82</td><td>71.56</td><td>2.05</td></tr><tr><td>NB</td><td>93.77</td><td>0.40</td><td>0.16</td></tr><tr><td>ANN-MLP</td><td>99.82</td><td>186.98</td><td>0.26</td></tr></tbody></table>

By comparison, RF and ANN-MLP both yield the best accuracy of 99.82% compared to the other three classifiers, while NB scored the lowest accuracy of 93.77%.

<figure><img src="image_5.png" /></figure>

<figure><img src="image_6.png" /></figure>

<figure><img src="image_7.png" /></figure>

<figure><img src="image_8.png" /></figure>

<figure><img src="image_9.png" /><figcaption>Figure 4: KNN, NB, CART, RF and ANN-MLP confusion matrices</figcaption></figure>
On the other hand, the fastest classifier in terms of learning CT is NB while the slowest is ANN. MLP which takes 186.98 s. Moreover, for prediction CT, the fastest algorithm is CART which takes 0.017 s, while the slowest is KNN consuming 12.25 s.

For the most accurate classifiers, RF needs 2.05 s to make prediction, more than ANN-MLP that just needs 0.26 s. This difference implies that ANN-MLP performs very well for real-time fault detection with high accuracy.

In the following section, the performances of the classifiers are tested in predicting each class of the dataset namely the NOM and the seven faults.

<table><caption>Table 4: Performance evaluation metrics of CART, KNN, RF, NB, ANN-MLP with NOM and the seven faults.</caption><thead><tr><th rowspan="2">NOM/<br>Fault</th><th colspan="3">CART</th><th colspan="3">KNN</th><th colspan="3">RF</th><th colspan="3">NB</th><th colspan="3">ANN-MLP</th></tr><tr><th>Prec.</th><th>R</th><th>F1s</th><th>Prec.</th><th>R</th><th>F1s</th><th>Prec.</th><th>R</th><th>F1s</th><th>Prec.</th><th>R</th><th>F1s</th><th>Prec.</th><th>R</th><th>F1s</th></tr></thead><tbody><tr><td>F0</td><td>100</td><td>100</td><td>100</td><td>91</td><td>97</td><td>94</td><td>100</td><td>100</td><td>100</td><td>96</td><td>99</td><td>98</td><td>100</td><td>100</td><td>100</td></tr><tr><td>F1</td><td>100</td><td>100</td><td>100</td><td>98</td><td>97</td><td>98</td><td>100</td><td>100</td><td>100</td><td>91</td><td>87</td><td>89</td><td>100</td><td>100</td><td>100</td></tr><tr><td>F2</td><td>100</td><td>100</td><td>100</td><td>98</td><td>97</td><td>98</td><td>100</td><td>100</td><td>100</td><td>100</td><td>96</td><td>98</td><td>100</td><td>100</td><td>100</td></tr><tr><td>F3</td><td>99</td><td>99</td><td>99</td><td>93</td><td>72</td><td>81</td><td>100</td><td>100</td><td>100</td><td>89</td><td>54</td><td>67</td><td>99</td><td>99</td><td>99</td></tr><tr><td>F4</td><td>100</td><td>100</td><td>100</td><td>100</td><td>100</td><td>100</td><td>100</td><td>100</td><td>100</td><td>100</td><td>100</td><td>100</td><td>100</td><td>100</td><td>100</td></tr><tr><td>F5</td><td>99</td><td>99</td><td>99</td><td>99</td><td>96</td><td>98</td><td>100</td><td>100</td><td>100</td><td>95</td><td>83</td><td>88</td><td>100</td><td>100</td><td>100</td></tr><tr><td>F6</td><td>100</td><td>100</td><td>100</td><td>97</td><td>94</td><td>95</td><td>100</td><td>100</td><td>100</td><td>100</td><td>99</td><td>100</td><td>100</td><td>100</td><td>100</td></tr><tr><td>F7</td><td>99</td><td>99</td><td>99</td><td>93</td><td>96</td><td>94</td><td>99</td><td>100</td><td>100</td><td>78</td><td>99</td><td>87</td><td>100</td><td>100</td><td>100</td></tr></tbody></table>

ANN-MLP and RF scored the highest F1-score with each of the labeled classes in the GPVS dataset. It is worth highlighting that both classifiers were also to classify the fault F3 accurately compared to the other classifiers, especially NB and KNN. These two classifiers struggled to identify the fault in an efficient way, hence they resulted with a 81% and 67% F1-scores respectively when classifying fault F3. This is probably due to the lower amount of samples available for learning fault F3 which is 4961 compared to the available number of samples for the other seven classes, this can be reviewed by Table 1 in section 2.

## 5. CONCLUSION AND DISCUSSION

In this work, the performances of five supervised ML classifiers are evaluated using an open-source dataset of a PV system, GPVS. The considered algorithms are CART, KNN, NB, ANN-MLP and RF, as they are commonly used in FDD

## 4.2. Optimal Classifier per Class

The confusion matrix of each classifier with the seven faults and NOM is first established and presented in Figure 4. From the confusion matrix, the indicators TP, TN, FP and FN are inferred.

Using the confusion matrix elements of each classifier, the following metrics are evaluated: Precision (Prec.), Recall (R) and F1-score (F1s). The metrics are presented in Table 4.

applications. Then, a comparison study is fulfilled based on different metrics including CT needed for learning and prediction.

The study concludes that the classifiers RF and ANN-MLP have the same highest accuracy, 99.82%, in predicting the eight classes, NOM and seven faults. The difference between the classifiers was significant with regards to the CT, where RF presents the best performance during the learning phase, while ANN-MLP overpasses its performance during the prediction phase as shown in section 4.

Therefore, these two classifiers are the optimal supervised ML algorithms for predicting faults within the presented Grid-connected PV system (GPVS) and for performing fast predictions. This proves that they are the best classifiers to guarantee the best performances for real time FDD.
REFERENCES

[1] D. J. Wuebbles and A. K. Jain, "Concerns about climate change and the role of fossil fuel use," *Fuel Processing Technology*, vol. 71, no. 1, pp. 99-119, Jun. 2001, doi: 10.1016/S0378-3820(01)00139-4.

[2] D. Gielen, F. Boshell, D. Saygin, M. D. Bazilian, N. Wagner, and R. Gorini, "The role of renewable energy in the global energy transformation," *Energy Strategy Reviews*, vol. 24, pp. 38-50, Apr. 2019, doi: 10.1016/j.esr.2019.01.006.

[3] S. R. Madeti and S. N. Singh, "A comprehensive study on different types of faults and detection techniques for solar photovoltaic system," *Solar Energy*, vol. 158, pp. 161-185, Dec. 2017, doi: 10.1016/j.solener.2017.08.069.

[4] A. Chouder, S. Silvestre, N. Sadaoui, and L. Rahmani, "Modeling and simulation of a grid connected PV system based on the evaluation of main PV module parameters," *Simulation Modelling Practice and Theory*, vol. 20, no. 1, pp. 46-58, Jan. 2012, doi: 10.1016/j.simpat.2011.08.011.

[5] N. Barth, R. Jovanovic, S. Ahzi, and M. A. Khaleel, "PV panel single and double diode models: Optimization of the parameters and temperature dependence," *Solar Energy Materials and Solar Cells*, vol. 148, pp. 87-98, Apr. 2016, doi: 10.1016/j.solmat.2015.09.003.

[6] D. Solomatine, L. M. See, and R. J. Abrahart, "Data-Driven Modelling: Concepts, Approaches and Experiences," in *Practical Hydroinformatics*, vol. 68, R. J. Abrahart, L. M. See, and D. P. Solomatine, Eds., in Water Science and Technology Library, vol. 68, Berlin, Heidelberg: Springer Berlin Heidelberg, 2008, pp. 17-30. doi: 10.1007/978-3-540-79881-2_2.

[7] A. Chouder and S. Silvestre, "Automatic supervision and fault detection of PV systems based on power losses analysis," *Energy Conversion and Management*, vol. 51, no. 10, pp. 1929-1937, Oct. 2010, doi: 10.1016/j.enconman.2010.02.025.

[8] S. Rodrigues, H. G. Ramos, and F. Morgado-Dias, "Machine Learning in PV Fault Detection, Diagnostics and Prognostics: A Review," in *2017 IEEE 44th Photovoltaic Specialist Conference (PVSC)*, Washington, DC: IEEE, Jun. 2017, pp. 3178-3183. doi: 10.1109/PVSC.2017.8366581.

[9] F. Aziz, A. Ul Haq, S. Ahmad, Y. Mahmoud, M. Jalal, and U. Ali, "A Novel Convolutional Neural Network-Based Approach for Fault Classification in Photovoltaic Arrays," *IEEE Access*, vol. 8, pp. 41889-41904, 2020, doi: 10.1109/ACCESS.2020.2977116.

[10] S. Jumaboev, D. Jurakuziev, and M. Lee, "Photovoltaics Plant Fault Detection Using Deep Learning Techniques," *Remote Sensing*, vol. 14, no. 15, Art. no. 15, Jan. 2022, doi: 10.3390/rs14153728.

[11] D. Korkmaz and H. Acikgoz, "An efficient fault classification method in solar photovoltaic modules using transfer learning and multi-scale convolutional neural network," *Engineering Applications of Artificial Intelligence*, vol. 113, p. 104959, Aug. 2022, doi: 10.1016/j.engappai.2022.104959.

[12] D. Adhya, S. Chatterjee, and A. K. Chakraborty, "Performance assessment of selective machine learning techniques for improved PV array fault diagnosis," *Sustainable Energy, Grids and Networks*, vol. 29, p. 100582, Mar. 2022, doi: 10.1016/j.segan.2021.100582.

[13] A. Ndiaye, A. Charki, A. Kobi, C. M. F. Kébé, P. A. Ndiaye, and V. Sambou, "Degradations of silicon photovoltaic modules: A literature review," *Solar Energy*, vol. 96, pp. 140-151, Oct. 2013, doi: 10.1016/j.solener.2013.07.005.

[14] R. Doumane, M. Balistrou, P. O. Logerais, O. Riou, J. F. Durastanti, and A. Charki, "A Circuit-Based Approach to Simulate the Characteristics of a Silicon Photovoltaic Module With Aging," *Journal of Solar Energy Engineering*, vol. 137, no. 2, Apr. 2015, doi: 10.1115/1.4029541.

[15] A. Charki, "Accelerated degradation testing of a photovoltaic module," *J. Photon. Energy*, vol. 3, no. 1, p. 033099, Mar. 2013, doi: 10.1117/1.JPE.3.033099.

[16] D. K. Jha, A. Ray, K. Mukherjee, and S. Chakraborty, "Classification of Two-Phase Flow Patterns by Ultrasonic Sensing," *Journal of Dynamic Systems, Measurement, and Control*, vol. 135, no. 2, Nov. 2012, doi: 10.1115/1.4007555.

[17] L. C. Brito, G. A. Susto, J. N. Brito, and M. A. V. Duarte, "Fault Detection of Bearing: An Unsupervised Machine Learning Approach Exploiting Feature Extraction and Dimensionality Reduction," *Informatics*, vol. 8, no. 4, Art. no. 4, Dec. 2021, doi: 10.3390/informatics8040085.

[18] K. Yan, J. Huang, W. Shen, and Z. Ji, "Unsupervised learning for fault detection and diagnosis of air handling units," *Energy and Buildings*, vol. 210, p. 109689, Mar. 2020, doi: 10.1016/j.enbuild.2019.109689.

[19] B. Li, F. Cheng, H. Cai, X. Zhang, and W. Cai, "A semi-supervised approach to fault detection and diagnosis for building HVAC systems based on the modified generative adversarial network," *Energy and Buildings*, vol. 246, p. 111044, Sep. 2021, doi: 10.1016/j.enbuild.2021.111044.

[20] L. Wang, H. Qiu, P. Yang, and J. Gao, "Fault Diagnosis Method Based on An Improved KNN Algorithm for PV strings," in *2021 4th Asia Conference on Energy and Electrical Engineering (ACEEE)*, Sep. 2021, pp. 91-98. doi: 10.1109/ACEEE51855.2021.9575060.

[21] M. M. Badr et al., "Intelligent fault identification strategy of photovoltaic array based on ensemble self-training learning," *Solar Energy*, vol. 249, pp. 122-138, Jan. 2023, doi: 10.1016/j.solener.2022.11.017.

[22] Z. Chen et al., "Random forest based intelligent fault diagnosis for PV arrays using array voltage and string currents," *Energy Conversion and Management*, vol. 178, pp. 250-264, Dec. 2018, doi: 10.1016/j.enconman.2018.10.040.

[23] W. He, D. Yin, K. Zhang, X. Zhang, and J. Zheng, "Fault Detection and Diagnosis Method of Distributed Photovoltaic Array Based on Fine-Tuning Naive Bayesian Model," *Energies*, vol. 14, no. 14, Art. no. 14, Jan. 2021, doi: 10.3390/en14144140.

[24] F. A. Olivencia Polo, J. Ferrero Bermejo, J. F. Gómez Fernández, and A. Crespo Márquez, "Failure mode prediction and energy forecasting of PV plants to assist dynamic maintenance tasks by ANN based models," *Renewable Energy*, vol. 81, pp. 227-238, Sep. 2015, doi: 10.1016/j.renene.2015.03.023.

[25] R. G. Vieira, M. Dhimish, F. M. U. de Araújo, and M. I. da Silva Guerra, "Comparing multilayer perceptron and probabilistic neural network for PV systems fault detection," *Expert Systems with Applications*, vol. 201, p. 117248, Sep. 2022, doi: 10.1016/j.eswa.2022.117248.
[26] B. Chokr, N. Chatti, A. Charki, T. Lemenand, and M. Hammoud, "Feature extraction-reduction and machine learning for fault diagnosis in PV panels," *Solar Energy*, vol. 262, p. 111918, Sep. 2023, doi: 10.1016/j.solener.2023.111918.

[27] B. Azzeddine, B. Wahiba, G. Amar, and M. Saad, "Real-time fault detection in PV systems under MPPT using PMU and high-frequency multi-sensor data through online PCA-KDE-based multivariate KL divergence," *International Journal of Electrical Power & Energy Systems*, vol. 125, p. 106457, Feb. 2021, doi: 10.1016/j.ijepes.2020.106457.

[28] A. Guichi, A. Talha, E. M. Berkouk, S. Mekhilef, and S. Gassab, "A new method for intermediate power point tracking for PV generator under partially shaded conditions in hybrid system," *Solar Energy*, vol. 170, pp. 974-987, Aug. 2018, doi: 10.1016/j.solener.2018.06.027.

[29] A. Bakdi, A. Guichi, S. Mekhilef, and W. Bounoua, "GPVS-Faults: Experimental Data for fault scenarios in grid-connected PV systems under MPPT and IPPT modes," vol. 1, Aug. 2020, doi: 10.17632/n76t439f65.1.

[30] J. Han, J. Pei, and M. Kamber, *Data Mining: Concepts and Techniques*. Elsevier, 2011.

[31] S. B. Kotsiantis, "Supervised Machine Learning: A Review of Classification Techniques," in *Proceedings of the 2007 Conference on Emerging Artificial Intelligence Applications in Computer Engineering: Real World AI Systems with Applications in EHealth, HCI, Information Retrieval and Pervasive Technologies*, NLD: IOS Press, 2007, pp. 3-24.

[32] A. Kouadri et al., "Hidden Markov model based principal component analysis for intelligent fault diagnosis of wind energy converter systems," *Renewable Energy*, vol. 150, pp. 598-606, May 2020, doi: 10.1016/j.renene.2020.01.010.

[33] A. A. Taha and A. Hanbury, "Metrics for evaluating 3D medical image segmentation: analysis, selection, and tool," *BMC Med Imaging*, vol. 15, p. 29, Aug. 2015, doi: 10.1186/s12880-015-0068-x.

[34] R. Choudhary and H. K. Gianey, "Comprehensive Review On Supervised Machine Learning Algorithms," in *2017 International Conference on Machine Learning and Data Science (MLDS)*, Dec. 2017, pp. 37-43. doi: 10.1109/MLDS.2017.11.