mirror of
https://github.com/ArthurDanjou/breast-cancer-detection.git
synced 2026-01-14 11:54:10 +01:00
Translate
This commit is contained in:
@@ -424,21 +424,22 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"Dans le cadre de la classification binaire à partir du dataset Breast Cancer Coimbra, le respect de la distribution des classes lors de la séparation des données est une condition essentielle à la validité des résultats expérimentaux.\n",
|
||||
"In the context of binary classification using the Breast Cancer Coimbra dataset, preserving the class distribution during data splitting is essential for ensuring the validity of experimental results.\n",
|
||||
"\n",
|
||||
"1. Utilisation de stratify=y dans train_test_split\n",
|
||||
"Lors de la séparation du jeu de données en un ensemble d'entraînement et un ensemble de test, nous avons recours à la fonction train_test_split de la bibliothèque scikit-learn. Afin de garantir que les proportions des classes cibles soient conservées dans les deux sous-ensembles, l’argument stratify=y est utilisé.\n",
|
||||
"1. Use of stratify=y in train_test_split\n",
|
||||
"When splitting the dataset into a training set and a test set, we use the train_test_split function from the scikit-learn library. To ensure that the proportions of the target classes are preserved in both subsets, the argument stratify=y is used.\n",
|
||||
"\n",
|
||||
"Cette précaution est particulièrement importante dans le cas de jeux de données déséquilibrés, comme c’est le cas ici, où les deux classes de la variable cible (\"Classification\") ne sont pas également représentées. Un échantillonnage aléatoire simple pourrait introduire un déséquilibre important entre les classes dans le jeu de test, rendant les métriques de performance peu fiables et favorisant potentiellement une classe au détriment de l’autre. L’option stratify=y assure donc une représentativité statistique des classes dans chacun des sous-échantillons.\n",
|
||||
"This precaution is particularly important when working with imbalanced datasets, as is the case here, where the two classes of the target variable (\"Classification\") are not equally represented. Simple random sampling could introduce a significant class imbalance in the test set, making performance metrics unreliable and potentially favoring one class over the other. The stratify=y option therefore ensures statistical representativeness of the classes in each subset.\n",
|
||||
"\n",
|
||||
"2. Recours à StratifiedKFold pour la validation croisée\n",
|
||||
"De manière analogue, lors de l'évaluation du modèle par validation croisée, nous avons choisi l’utilisation de la méthode StratifiedKFold. Contrairement à la validation croisée standard (KFold), cette méthode garantit que la proportion des classes est maintenue dans chacun des k folds.\n",
|
||||
"2. Use of StratifiedKFold for cross-validation\n",
|
||||
"Similarly, for model evaluation through cross-validation, we chose to use the StratifiedKFold method. Unlike standard cross-validation (KFold), this method ensures that the class proportions are maintained in each of the k folds.\n",
|
||||
"\n",
|
||||
"L’objectif est d’obtenir une estimation plus robuste et plus stable de la performance du modèle, en particulier en présence de déséquilibre entre les classes. Le maintien de la structure du dataset initial dans chaque fold limite le risque de surapprentissage (overfitting) ou de sous-apprentissage sur certains folds dominés par une seule classe.\n",
|
||||
"The goal is to obtain a more robust and stable estimate of model performance, particularly in the presence of class imbalance. Preserving the structure of the original dataset within each fold reduces the risk of overfitting or underfitting on certain folds dominated by a single class.\n",
|
||||
"\n",
|
||||
"3. Justification statistique\n",
|
||||
"Le maintien de la distribution des classes dans les procédures d’échantillonnage est une exigence classique en statistique, relevant du principe de représentativité des échantillons. En classification supervisée, l'utilisation systématique de méthodes stratifiées permet d'améliorer la validité externe des résultats (capacité du modèle à généraliser) tout en réduisant la variance des estimations obtenues lors de la validation croisée."
|
||||
]
|
||||
"3. Statistical Justification\n",
|
||||
"Maintaining class distribution during sampling procedures is a classic requirement in statistics, based on the principle of sample representativeness. In supervised classification, systematically using stratified methods improves the external validity of results (the model’s ability to generalize) while reducing the variance of estimates obtained during cross-validation."
|
||||
]
|
||||
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
@@ -548,13 +549,13 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"Lors de l'entraînement de mon réseau de neurones sur le dataset Breast Cancer Coimbra, j’ai obtenu un score F1 de 0.75, ce qui indique une bonne capacité du modèle à détecter les cas positifs (patients malades) tout en limitant les faux positifs.\n",
|
||||
"While training my neural network on the Breast Cancer Coimbra dataset, I obtained an F1 score of 0.75, indicating a good ability of the model to detect positive cases (sick patients) while limiting false positives.\n",
|
||||
"\n",
|
||||
"Un comportement particulier observé durant l’entraînement est que la val_loss est systématiquement inférieure à la train_loss. Ce phénomène s'explique principalement par l'utilisation de la régularisation L2, qui pénalise les poids uniquement pendant la phase d'entraînement, et non lors de l’évaluation sur les données de validation.\n",
|
||||
"De plus, la taille réduite du dataset, l'emploi de class_weights pour compenser le léger déséquilibre des classes, ainsi que l'utilisation du early stopping, peuvent accentuer cet écart.\n",
|
||||
"A particular behavior observed during training is that the val_loss is consistently lower than the train_loss. This phenomenon is mainly explained by the use of L2 regularization, which penalizes the weights only during the training phase, and not during evaluation on the validation data.\n",
|
||||
"Additionally, the small size of the dataset, the use of class_weights to compensate for the slight class imbalance, and the use of early stopping can accentuate this gap.\n",
|
||||
"\n",
|
||||
"Ce comportement n’est pas problématique tant que les performances en validation restent stables et satisfaisantes, ce qui est le cas ici avec un score F1 élevé, métrique prioritaire dans un contexte médical où le rappel est crucial."
|
||||
]
|
||||
"This behavior is not problematic as long as the validation performance remains stable and satisfactory, which is the case here with a high F1 score — a priority metric in a medical context where recall is crucial."
|
||||
]
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
|
||||
Reference in New Issue
Block a user