Conception - Recommandation intelligente de films

From air
Jump to navigation Jump to search

Voici la fiche de conception du projet 'Recommandation intelligente de films'.

Page d'accueil du projet

Équipe

  • Rachex Coralie (Chef de projet - Scrum Master)
  • Niogret Edwin
  • Hattinguais Julian
  • Navarro Elsa
  • Dunand Quentin

Schéma de la structure de l'application

Choix des langages de programmation

  • Python : pour le back-end
  • AngularJS : pour le front-end
  • MySql : pour la base de données

Choix technologiques

  • TensorFlow : librairie open source pour l'apprentissage automatique, utilisant des graphiques de flux de données.
  • Keras : librairie de réseaux neuronaux de haut niveau, écrite en Python et capable de fonctionner au dessus de TensorFlow.
  • Flask : framework open-source de développement web en Python.

API en back-end

Routes
Requête Route Description Permission
POST /auth/signup Création d'un compte utilisateur
POST /auth/login Connexion d'un utilisateur
/auth/logout Déconnexion d'un utilisateur
POST /api/updateMovies ... L'utilisateur doit être connecté
GET /api/likedMovies/<string:opinion> ... L'utilisateur doit être connecté
POST /api/likedMovie/<int:idMovie>/<int:isLiked> ... L'utilisateur doit être connecté
PUT /api/likedMovie/<int:idMovie>/<int:isLiked> ... L'utilisateur doit être connecté
DELETE /api/likedMovie/<int:idMovie> ... L'utilisateur doit être connecté
POST /api/train Lance l'entrainement du modèle avec les films annotés par l'utilisateur, présent en base de données. L'utilisateur doit être connecté
GET /api/prediction Lance une prédiction à partir du modèle de l'utilisateur et retourne une liste de recommandation de films. L'utilisateur doit être connecté
POST /api/popularity Lance la recherche de popularité sur Twitter et retourne une liste de films ordonnée par popularité décroissante et une seconde liste ordonnée par avis décroissant L'utilisateur doit être connecté