diff --git a/read_cifar.py b/read_cifar.py
index 5b01659ed4c4edbd505fe6825a2d8bb3d3ec9c6b..530ac81e3e4151e6ff69a0a1d4960972d49b4e91 100644
--- a/read_cifar.py
+++ b/read_cifar.py
@@ -2,87 +2,82 @@ import numpy as np
 import os
 import pickle
 
-# Commentaire global expliquant le but du code
-'''Here is the code to prepare the CIFAR dataset, create a function to read CIFAR batches, and split the dataset into training and testing sets:'''
-
-# Fonction read_cifar_batch :
+# Function read_cifar_batch:
 '''
-Arguments :
-Le chemin d'un seul batch en tant que chaîne de caractères.
+Arguments:
+A single batch's path as a string.
 
-Returns :
-Une matrice de données de taille (taille_du_batch , taille_des_données)
-Un vecteur d'étiquettes (labels) de taille (taille_du_batch)
+Returns:
+A data matrix of size (batch_size, data_size)
+A labels vector of size (batch_size)
 '''
 
 def read_cifar_batch(batch_path):
-    # Ouvre le fichier du batch et charge les données
+    # Opens the batch file and loads the data
     with open(batch_path, 'rb') as f:
         batch_dict = pickle.load(f, encoding='bytes')
-    # Convertit les données en float32
+    # Converts the data to float32
     data = batch_dict[b'data'].astype(np.float32)
-    # Convertit les étiquettes en int64
+    # Converts the labels to int64
     labels = np.array(batch_dict[b'labels'], dtype=np.int64)
     return data, labels
 
-# Fonction read_cifar :
-''' 
-*** lit le chemin du répertoire contenant tous les lots (y compris test_batch)***
+# Function read_cifar:
+'''
+Reads the directory path containing all the batches (including test_batch).
 
-*Arguments :
-Le chemin du répertoire contenant les six lots (cinq data_batch et un test_batch) en tant que chaîne de caractères.
+Arguments:
+The directory path containing all six batches (five data_batch and one test_batch) as a string.
 
-*Returns :
--Une matrice de données de taille (taille_du_lot , taille_des_données).
--Un vecteur d'étiquettes(labels) de taille (taille_du_lot).
+Returns:
+- A data matrix of size (total_batch_size, data_size).
+- A labels vector of size (total_batch_size).
 '''
 def read_cifar(folder):
-    # Liste des noms de fichiers de batch
+    # List of batch file names
     batch_files = ["data_batch_1", "data_batch_2", "data_batch_3", "data_batch_4", "data_batch_5", "test_batch"]
-    data_list, labels_list = [], []
+    data_list, labels_list = []
 
-    # Boucle sur les fichiers de batch
+    # Loop over batch files
     for batch_file in batch_files:
         path = os.path.join(folder, batch_file)
-        # Appelle read_cifar_batch pour lire chaque batch
+        # Calls read_cifar_batch to read each batch
         data, labels = read_cifar_batch(path)
         data_list.append(data)
         labels_list.append(labels)
 
-    # Combine les données de tous les batches
+    # Combines data from all batches
     data = np.vstack(data_list)
-    # Combine les étiquettes de tous les batches
+    # Combines labels from all batches
     labels = np.hstack(labels_list)
 
     return data, labels
 
-# Fonction pour diviser les données en ensembles d'entraînement et de test :
+# Function to split the data into training and testing sets:
 '''
-*Arguments :
--data et labels, deux tableaux de même taille dans la première dimension.
--split, un nombre flottant compris entre 0 et 1, qui détermine le facteur de répartition de l'ensemble d'entraînement par rapport à l'ensemble de test.
+Arguments:
+- data and labels, two arrays of the same size in the first dimension.
+- split, a floating-point number between 0 and 1, determining the split ratio of the training set compared to the test set.
 
-*Renvoie :
--data_train : les données d'entraînement.
--labels_train : les étiquettes correspondantes.
--data_test : les données de test.
--labels_test : les étiquettes correspondantes.
+Returns:
+- data_train: the training data.
+- labels_train: the corresponding labels.
+- data_test: the testing data.
+- labels_test: the corresponding labels.
 '''
 def split_dataset(data, labels, split):
-    # Vérifie que le ratio de division est valide
+    # Check that the split ratio is valid
     assert 0 < split < 1
     n = len(data)
-    # Mélange les indices des données
+    # Shuffle the data indices
     indices = np.random.permutation(n)
     split_index = int(split * n)
-    # Sépare les indices pour l'ensemble d'entraînement et de test
+    # Separate the indices for the training and test sets
     train_indices = indices[:split_index]
     test_indices = indices[split_index:]
-    # Sépare les données et étiquettes en ensembles d'entraînement et de test
+    # Split the data and labels into training and test sets
     data_train = data[train_indices]
     labels_train = labels[train_indices]
     data_test = data[test_indices]
     labels_test = labels[test_indices]
-    return data_train, labels_train, data_test, labels_test
-
-
+    return data_train, labels_train, data_test, labels_test
\ No newline at end of file