Description
L'Attentional Factorization Machine (AFM) est un modèle sophistiqué conçu pour améliorer les performances des machines de factorisation en apprenant l'importance des interactions de caractéristiques via des réseaux d'attention. Ce dépôt offre une implémentation directe du modèle AFM en TensorFlow, s'appuyant sur les concepts fondamentaux des Factorization Machines (FM).
Lire la suite
Le projet est basé sur l'article de recherche "Attentional Factorization Machines: Learning the Weight of Feature Interactions via Attention Networks" par Jun Xiao, Hao Ye, Xiangnan He, Hanwang Zhang, Fei Wu et Tat-Seng Chua, présenté à l'IJCAI 2017. L'implémentation prend en charge les tâches de régression et de classification, en optimisant pour le RMSE.
Les utilisateurs peuvent exploiter ce code pour reproduire les résultats de la recherche ou appliquer l'AFM à leurs propres ensembles de données. Le dépôt fournit des instructions claires pour la configuration de l'environnement, qui nécessite TensorFlow (version 1.0.1), NumPy et Scikit-learn. Les ensembles de données doivent suivre le format d'entrée de la boîte à outils LibFM, avec un exemple utilisant l'ensemble de données MovieLens pour la recommandation personnalisée de tags.
L'exemple rapide inclus démontre comment entraîner d'abord un modèle FM pour le pré-entraînement, puis utiliser ces poids pour entraîner le modèle AFM. Cette approche permet une comparaison directe des performances entre le FM standard et l'AFM amélioré. Le code inclut également des fonctionnalités pour l'évaluation des modèles entraînés sur des ensembles de données de test.
Cette implémentation est particulièrement précieuse pour les chercheurs et les praticiens dans les domaines des systèmes de recommandation, de l'apprentissage automatique et de l'apprentissage profond qui cherchent à améliorer la précision et l'interprétabilité de leurs modèles en capturant efficacement les nuances des interactions de caractéristiques. Le mécanisme d'attention permet au modèle de pondérer dynamiquement l'importance des différentes paires de caractéristiques, conduisant à des prédictions plus précises.
- CatégorieModèles d'IA et LLM
- Modèle tarifaireOpen source
- DéploiementCloud, Auto-hébergé
- PlateformesWeb
Fonctionnalités principales de Attentional Factorization Machine
Implémentation TensorFlow de l'Attentional Factorization Machine (AFM)
Prend en charge les tâches de régression et de classification
Optimise pour le RMSE
Apprend le poids des interactions de caractéristiques via des réseaux d'attention
Inclut l'implémentation des Factorization Machines (FM) pour le pré-entraînement
Utilise l'encodage one-hot pour la conversion des vecteurs de caractéristiques
Compatible avec le format de données LibFM
Fournit un exemple d'utilisation avec l'ensemble de données MovieLens
Inclut des scripts pour l'entraînement et l'évaluation
La base de code comprend AFM.py, FM.py et LoadData.py
Prend en charge le pré-entraînement du modèle
Premiers pas avec Attentional Factorization Machine
Configurer l'environnement : Installer TensorFlow (v1.0.1), NumPy et Scikit-learn.
Préparer le jeu de données : Formater les données selon les spécifications de la boîte à outils LibFM.
Entraîner le modèle FM : Exécuter `python FM.py` avec le jeu de données et les paramètres spécifiés pour le pré-entraînement.
Entraîner le modèle AFM : Exécuter `python AFM.py` en utilisant les poids FM pré-entraînés.
Évaluer le modèle : Exécuter `python FM.py` ou `python AFM.py` avec le drapeau `--process evaluate`.
Cas d'utilisation de Attentional Factorization Machine
- Systèmes de recommandation
- Recommandation de tags
- Prédiction du taux de clics
- Apprentissage des interactions de caractéristiques
- Développement de modèles d'apprentissage automatique









