tags:
- marcheflow-ci
- prediction-producteurs
- tabular-classification
- synthetic-data
josue310/save-model-tta — Prédiction d'acceptation producteur (MarchéFlow CI, Niveau 3)
⚠️ Données synthétiques
Ce modèle est entraîné sur un dataset entièrement simulé
(data/generer_dataset.py + data/DATASET.md dans le dépôt source) : ~50
producteurs fictifs, historique de sollicitations simulé avec bruit
gaussien. Aucune donnée réelle de production ou de livraison n'a été
utilisée. Ce modèle est fourni à des fins de démonstration et ne doit pas
être utilisé pour des décisions réelles sans réentraînement sur des données
observées.
Tâche
Classification binaire : étant donné les caractéristiques d'un couple (producteur, produit, nouvelle demande), prédire la probabilité que ce producteur accepte de produire et livre conforme.
Algorithme
random_forest (scikit-learn), sélectionné pour son F1 sur un
split 80/20 stratifié parmi GradientBoostingClassifier et
RandomForestClassifier.
Métriques (sur le jeu de test synthétique, 20%)
- Accuracy : 0.6516
- Precision : 0.6502
- Recall : 0.7323
- F1 : 0.6888
- Matrice de confusion : [[100, 78], [53, 145]]
Importance des features
compatibilite_delai: 0.3376taux_conformite: 0.1648attractivite_prix: 0.1510capacite_estimee: 0.1457taux_acceptation_historique: 0.1093specialisation_score: 0.0792compatibilite_zone: 0.0124
Features attendues (dans cet ordre exact)
['specialisation_score', 'capacite_estimee', 'compatibilite_delai', 'compatibilite_zone', 'taux_acceptation_historique', 'taux_conformite', 'attractivite_prix']
Voir app/ml/charger_modele.py::FEATURES dans le dépôt source pour la
définition de chaque feature.
Limites d'usage
- Données d'entraînement synthétiques : aucune garantie de généralisation à des producteurs réels.
- Les tables de référence zone × produit cultivable sont des hypothèses de démo, non validées agronomiquement.
- Ne pas utiliser pour des décisions d'engagement contractuel : les prédictions de ce modèle sont des suggestions, pas des engagements ("statut": "suggestion_marche_non_engagee" dans l'API).