Skip to content
Extraits de code Groupes Projets
Valider ee223e5f rédigé par Adrien Payen's avatar Adrien Payen
Parcourir les fichiers

update readme evaluator

parent ea272ae6
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -62,15 +62,15 @@ Le tiny dataset est une version plus petite du small dataset et est utilisé pou
- evaluator.ipynb
Pour ce jupyter notebook Evaluator.ipynb, l'importation de certains packages et modules clés est essentielle. Dans notre cas, nous avons importé les packages `model_selection` et `accuracy` de **Surprise**, ce dernier étant nécessaire pour effectuer une validation croisée et utiliser des métriques prédéfinies pour évaluer les modèles. Cela nous permettra d'obtenir des informations précieuses sur les performances de nos modèles de recommandation.
Pour ce jupyter notebook Evaluator.ipynb, l'importation de certains **packages** et modules clés est essentielle. Dans notre cas, nous avons importé les packages `model_selection` et `accuracy` de **Surprise**, ce dernier étant nécessaire pour effectuer une **validation croisée** et utiliser des **métriques** prédéfinies pour **évaluer les modèles**. Cela nous permettra d'obtenir des informations précieuses sur les performances de nos modèles de recommandation.
En ce qui concerne l'adaptation les **'loaders'**, nous avons apporté des modifications à la fonction `load_ratings()`. Cette fonction a été ajustée pour permettre le chargement de données dans un format compatible avec **Surprise**. Un argument supplémentaire, `surprise_format`, a été ajouté pour conditionner le chargement en un objet Dataset compatible Surprise à partir d'un **DataFrame Pandas**. Cela simplifie grandement le processus de préparation des données pour l'entraînement des modèles.
En ce qui concerne l'adaptation des **loaders**, nous avons apporté des modifications à la fonction `load_ratings()`. Cette fonction a été ajustée pour permettre le chargement de données dans un **format** compatible avec **Surprise**. Un argument supplémentaire, `surprise_format`, a été ajouté pour conditionner le chargement en un objet **Dataset** compatible Surprise à partir d'un **DataFrame Pandas**. Cela simplifie grandement le processus de préparation des données pour l'entraînement des modèles.
Pour évaluer nos modèles, nous avons mis en œuvre trois méthodes de **validation croisée**. La première méthode, `generate_split_predictions()`, divise l'ensemble de données en un ensemble d'entraînement et un ensemble de test en utilisant train_test_split de Surprise. Ensuite, avec `generate_loo_top_n()`, nous appliquons un processus "leave-one-out" pour générer des recommandations top-N et évaluer les performances du modèle. Enfin, `generate_full_top_n()` utilise l'ensemble complet de données pour générer des recommandations top-N sans division. Ces approches nous offrent une vision complète des performances de nos modèles dans différents scénarios.
Pour évaluer nos modèles, nous avons mis en œuvre trois méthodes de **validation croisée**. La première méthode, `generate_split_predictions()`, divise l'ensemble de données en un ensemble d'entraînement et un ensemble de test en utilisant `train_test_split` de Surprise. Ensuite, avec `generate_loo_top_n()`, nous appliquons un processus **"leave-one-out"** pour générer des recommandations top-N et évaluer les performances du modèle. Enfin, `generate_full_top_n()` utilise l'**ensemble complet de données** pour **générer des recommandations** top-N sans division. Ces approches nous offrent une vision complète des performances de nos modèles dans différents scénarios.
Pour améliorer notre évaluation, nous avons également introduit trois nouvelles métriques. La première, `rmse` (split type), représente la racine carrée de l'erreur quadratique moyenne pour évaluer les prédictions. Ensuite, `hit rate` (loo type) mesure le taux de succès, indiquant le pourcentage d'utilisateurs pour lesquels l'un des films recommandés correspond à ceux notés dans l'ensemble de test. Enfin, `novelty` (full type) évalue la nouveauté des recommandations en fonction de la popularité des films recommandés, fournissant ainsi des informations sur la diversité et la pertinence des suggestions.
Pour améliorer notre évaluation, nous avons également introduit trois **nouvelles métriques**. La **première**, `rmse (split type)`, représente la racine carrée de l'erreur quadratique moyenne pour évaluer les prédictions. **Ensuite**, `hit rate (loo type)` mesure le taux de succès, indiquant le pourcentage d'utilisateurs pour lesquels l'un des films recommandés correspond à ceux notés dans l'ensemble de test. **Enfin**, `novelty (full type)` évalue la nouveauté des recommandations en fonction de la popularité des films recommandés, fournissant ainsi des informations sur la diversité et la pertinence des suggestions.
Pour conclure notre processus d'évaluation, nous avons mis en place une fonction `export_evaluation_report()`. Cette fonction permet d'exporter le rapport d'évaluation vers un fichier CSV dans un répertoire spécifié. Cela facilite le partage et la consultation des résultats, ce qui est crucial pour optimiser nos modèles et affiner nos stratégies de recommandation.
Pour conclure notre processus d'évaluation, nous avons mis en place une fonction `export_evaluation_report()`. Cette fonction permet d'**exporter le rapport** d'évaluation vers un **fichier CSV** dans un répertoire spécifié. Cela facilite le partage et la consultation des résultats, ce qui est crucial pour optimiser nos modèles et affiner nos stratégies de recommandation.
## Contact
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter