@@ -133,15 +133,15 @@ Lors de ce rendu, différentes analyses ont pu être effectuées sur les dataset
...
@@ -133,15 +133,15 @@ Lors de ce rendu, différentes analyses ont pu être effectuées sur les dataset
Une fonction export_evaluation_report() a été mise en œuvre pour exporter le rapport d'évaluation vers un fichier CSV dans un répertoire spécifié.
Une fonction export_evaluation_report() a été mise en œuvre pour exporter le rapport d'évaluation vers un fichier CSV dans un répertoire spécifié.
Pour mettre en place un système de recommandation robuste, 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 des chargeurs (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 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.
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.