La CI échoue si la meilleure précision, ou celle du modèle exporté, passe sous 90,0 %.
Matrice de confusion, modèle de référence
Vraie classe \ prédite
sphère
tore
boîte
cylindre
cône
gélule
sphère
100
0
0
0
0
0
tore
0
100
0
0
0
0
boîte
0
0
89
9
1
1
cylindre
0
0
4
94
0
2
cône
0
0
0
0
100
0
gélule
0
0
0
0
0
100
Matrice de confusion, PointNet
Vraie classe \ prédite
sphère
tore
boîte
cylindre
cône
gélule
sphère
100
0
0
0
0
0
tore
0
100
0
0
0
0
boîte
0
0
88
11
0
1
cylindre
0
0
12
83
0
5
cône
0
0
0
0
100
0
gélule
0
0
0
0
0
100
Lignes : la vraie classe ; colonnes : la classe prédite ; la diagonale compte les bonnes réponses. Les erreurs viennent presque toutes de la confusion entre boîte et cylindre.
Technologies
PyTorch
scikit-learn
DVC
MLflow
ONNX
GitHub Actions
Qui fait quoi
PyTorch
Entraîne le PointNet, un réseau qui classe un nuage de points.
scikit-learn
Le modèle de référence : descripteurs invariants par rotation et boosting, qui bat ici le réseau (97,2 % contre 95,2 %).
DVC
Décrit le pipeline (données, entraînement, export, contrôle) pour le rejouer à l'identique ; les données restent hors de git.
MLflow
Garde les paramètres, les métriques et la courbe de perte de chaque entraînement.
ONNX
Le format d'export du PointNet, vérifié identique à PyTorch, que l'API sert sans PyTorch.
GitHub Actions
Rejoue le pipeline en CI et échoue si la précision passe sous 90 %.