0% ont trouvé ce document utile (0 vote)
38 vues1 page

KNN pour la prédiction de pannes machines

Le document présente un script R pour appliquer l'algorithme KNN sur un jeu de données de maintenance. Les données sont normalisées et divisées en ensembles d'entraînement et de test, suivies de la prédiction des échecs de machine. Enfin, une matrice de confusion et l'exactitude des prédictions sont calculées et affichées.

Transféré par

loicblue86
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats TXT, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
38 vues1 page

KNN pour la prédiction de pannes machines

Le document présente un script R pour appliquer l'algorithme KNN sur un jeu de données de maintenance. Les données sont normalisées et divisées en ensembles d'entraînement et de test, suivies de la prédiction des échecs de machine. Enfin, une matrice de confusion et l'exactitude des prédictions sont calculées et affichées.

Transféré par

loicblue86
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats TXT, PDF, TXT ou lisez en ligne sur Scribd

#Pour KNN

# Charger les bibliothèques nécessaires


library(class)

# Lire les données


Maintenance_data <- read.csv2("C:/Users/LADY COMPUTER/Documents/data
science/Maintenance_data.csv")

# Convertir les colonnes en facteurs


Maintenance_data$Type <- factor(Maintenance_data$Type)
Maintenance_data$Machine_failure <- factor(Maintenance_data$Machine_failure)

# Normaliser les variables numériques (sauf les facteurs)


numeric_columns <- c("Air_temperature", "Process_temperature", "Rotational_speed",
"Torque", "Tool_wear")
Maintenance_data_scaled <- [Link](scale(Maintenance_data[,
numeric_columns]))

# Ajouter les colonnes de type et de machine_failure


Maintenance_data_scaled$Type <- Maintenance_data$Type
Maintenance_data_scaled$Machine_failure <- Maintenance_data$Machine_failure

# Diviser les données en ensembles d'entraînement et de test (70% - 30%)


[Link](123) # Pour la reproductibilité
total_rows <- nrow(Maintenance_data_scaled)
train_indices <- sample(1:total_rows, size = 0.95 * total_rows)
training_data <- Maintenance_data_scaled[train_indices, ]
test_data <- Maintenance_data_scaled[-train_indices, ]

# Créer les matrices pour KNN


train_x <- training_data[, numeric_columns]
train_y <- training_data$Machine_failure
test_x <- test_data[, numeric_columns]

# Appliquer KNN
k_value <- 5 # Choisir un nombre de voisins (k)
prediction_test_knn <- knn(train = train_x, test = test_x, cl = train_y, k =
k_value)

# Calculer la matrice de confusion


table_mat_knn <- table(test_data$Machine_failure, prediction_test_knn)
print(table_mat_knn)

# Calculer l'exactitude
accuracy_Test_knn <- sum(diag(table_mat_knn)) / sum(table_mat_knn)
print(accuracy_Test_knn)

Vous aimerez peut-être aussi