IMMERSION
MUSICALE
GraphDay
Paris, 29/09/2015
-
Frédéric Notet
CTO
MUSIMAP ?
Courte présentation de Musimap S.A.
LA BASE DE DONNEES
Notre transition à Neo4j et les outils utilisés
LES CAS D’USAGE
En quoi Neo4j nous apporte-t-elle des solutions ?
EXEMPLES
Quelques visualisations de réponse à des requêtes.
SOMMAIRE
1. MUSIMAP
Courte présentation de la société et du projet
LES ORIGINES DU PROJET
“Aucun musicien ne peut créer de la musique sans influences. Tout est interconnecté !”
L’IMPORTANCE DES EMOTIONS
Un réseau de “Mood” pour humaniser les réponses...
LA SOCIETE
1994 : Thèse sur le morphing musical de Pierre Lebecque à l’Université de Louvain-La-Neuve, Belgique.
2007 : Création de la société « The World Is A Mix » basée à Montpellier, France.
- Développement d’une banque de données basée sur la musique (MySQL)
- Développement d’un premier back-office de gestion des données
- Développement d’une navigation dans une carte de la musique (Flash)
- Expertise de +- 1 million de morceaux musicaux, de pionniers et d’ambassadeurs
2010 : Période de transition (regardez « Silicon Valley » pour connaître les difficultés que peut connaître une jeune startup)
2014 : Création de la société « Musimap SNC »
- levée de fond visant à finaliser la technologie
2015 : Création de la société « Musimap S.A. » basée à Liège, Belgique.
- Réécriture complète de la banque de données et migration des données
- Mise en place d’une architecture globale (Neo4j + ElasticSearch + RabbitMQ + Laravel)
- Import massif des différents artistes, albums et morceaux
- Réécriture d’une API pour tous les i/o avec les différents services
- Réécriture du back-office de gestion des données sous Laravel
- Réécriture de l’algorithme de recommandation en plugin java pour Neo4j
- Développement d’un outil B2B destinés aux professionnels du secteur de la musique de films
- Participation au C/O Pop de Cologne (19/08/2015)
- Participation au sein du #MusicTechFest @ Ljubljana (18-20/09/2015)
L’EQUIPE
Pierre Lebecque
Concepteur du projet, Head Of Research.
Frédéric Notet
Lead-Developer, Chief Technical Officer
Olivier Lebeau
Head Of Content
Vincent Favrat
Chief Executive Officer
Fabrizio Giugno
Back-End Developer
Mounir Bouzanih
Front-End Developer
Les Partenaires :
GraphAware, Christophe Willemsen, 6ème sans Ascenseur, i-Logs,...
L’ADN DE LA MUSIQUE
2. BASE DE DONNEES
Notre transition à Neo4j et les outils utilisés
MySQL
Un schéma relationnel d’un concept de Graph Database
Neo4j
LES PRINCIPAUX OUTILS
Laravel 5.1 + NeoClient + Git
Framework PHP utilisé pour nos différents projets avec la librairie NeoClient by GraphAware Ltd.
Neo4j Enterprise 2.2.3 – mode HA
Serveur de stockage des données primaire. Réplication HA en place
ElasticSearch
Serveur d’indexation des données servant lors des recherches.
RabbitMQ
Serveur de messagerie afin de gérer les files d’attente de jobs demandés
Rundeck
Application de gestion des scripts de maintenance des data (GUI
3. LES CAS D’USAGE
En quoi Neo4j nous apporte-t-elle des solutions ?
L’algorithme de recommandation
• Développement d’un plugin Java pour Neo4j
• Analyse de 55 paramètres sémantiques pondérés
• Prise en charge d’un système de Fuzz des informations
• Analyse en temps-réel parmi 30 millions de morceaux
• Calcul d’un score de similarité entre chaque morceaux
• Temps de réponse moyen : < 2,5 secondes
L’analyse sociale
• Correspondance des informations avec les sources sociales
• Mise en place d’une traduction de ces informations vers une sémantique unique
• Analyse des informations de portrait et expertise sociale enregistrée.
• Calcul d’un Fuzz potentiel des informations
• Calcul d’un score d’expertise pour chaque élément
• Temps de réponse moyen : < 3 secondes
Un Outil B2B
4. EXEMPLES
Quelques visualisations de réponse à des requêtes
Feeling Good – Nina Simone
DES LIAISONS MULTIPLES
https://www.musimap.com
https://developers.musimap.net
@Musimap / @frednotet

Immersion Musicale avec Neo4j

  • 1.
  • 2.
    MUSIMAP ? Courte présentationde Musimap S.A. LA BASE DE DONNEES Notre transition à Neo4j et les outils utilisés LES CAS D’USAGE En quoi Neo4j nous apporte-t-elle des solutions ? EXEMPLES Quelques visualisations de réponse à des requêtes. SOMMAIRE
  • 3.
    1. MUSIMAP Courte présentationde la société et du projet
  • 4.
    LES ORIGINES DUPROJET “Aucun musicien ne peut créer de la musique sans influences. Tout est interconnecté !”
  • 5.
    L’IMPORTANCE DES EMOTIONS Unréseau de “Mood” pour humaniser les réponses...
  • 6.
    LA SOCIETE 1994 :Thèse sur le morphing musical de Pierre Lebecque à l’Université de Louvain-La-Neuve, Belgique. 2007 : Création de la société « The World Is A Mix » basée à Montpellier, France. - Développement d’une banque de données basée sur la musique (MySQL) - Développement d’un premier back-office de gestion des données - Développement d’une navigation dans une carte de la musique (Flash) - Expertise de +- 1 million de morceaux musicaux, de pionniers et d’ambassadeurs 2010 : Période de transition (regardez « Silicon Valley » pour connaître les difficultés que peut connaître une jeune startup) 2014 : Création de la société « Musimap SNC » - levée de fond visant à finaliser la technologie 2015 : Création de la société « Musimap S.A. » basée à Liège, Belgique. - Réécriture complète de la banque de données et migration des données - Mise en place d’une architecture globale (Neo4j + ElasticSearch + RabbitMQ + Laravel) - Import massif des différents artistes, albums et morceaux - Réécriture d’une API pour tous les i/o avec les différents services - Réécriture du back-office de gestion des données sous Laravel - Réécriture de l’algorithme de recommandation en plugin java pour Neo4j - Développement d’un outil B2B destinés aux professionnels du secteur de la musique de films - Participation au C/O Pop de Cologne (19/08/2015) - Participation au sein du #MusicTechFest @ Ljubljana (18-20/09/2015)
  • 7.
    L’EQUIPE Pierre Lebecque Concepteur duprojet, Head Of Research. Frédéric Notet Lead-Developer, Chief Technical Officer Olivier Lebeau Head Of Content Vincent Favrat Chief Executive Officer Fabrizio Giugno Back-End Developer Mounir Bouzanih Front-End Developer Les Partenaires : GraphAware, Christophe Willemsen, 6ème sans Ascenseur, i-Logs,...
  • 8.
  • 9.
    2. BASE DEDONNEES Notre transition à Neo4j et les outils utilisés
  • 10.
    MySQL Un schéma relationneld’un concept de Graph Database
  • 11.
  • 12.
    LES PRINCIPAUX OUTILS Laravel5.1 + NeoClient + Git Framework PHP utilisé pour nos différents projets avec la librairie NeoClient by GraphAware Ltd. Neo4j Enterprise 2.2.3 – mode HA Serveur de stockage des données primaire. Réplication HA en place ElasticSearch Serveur d’indexation des données servant lors des recherches. RabbitMQ Serveur de messagerie afin de gérer les files d’attente de jobs demandés Rundeck Application de gestion des scripts de maintenance des data (GUI
  • 13.
    3. LES CASD’USAGE En quoi Neo4j nous apporte-t-elle des solutions ?
  • 14.
    L’algorithme de recommandation •Développement d’un plugin Java pour Neo4j • Analyse de 55 paramètres sémantiques pondérés • Prise en charge d’un système de Fuzz des informations • Analyse en temps-réel parmi 30 millions de morceaux • Calcul d’un score de similarité entre chaque morceaux • Temps de réponse moyen : < 2,5 secondes
  • 15.
    L’analyse sociale • Correspondancedes informations avec les sources sociales • Mise en place d’une traduction de ces informations vers une sémantique unique • Analyse des informations de portrait et expertise sociale enregistrée. • Calcul d’un Fuzz potentiel des informations • Calcul d’un score d’expertise pour chaque élément • Temps de réponse moyen : < 3 secondes
  • 16.
  • 17.
    4. EXEMPLES Quelques visualisationsde réponse à des requêtes
  • 18.
    Feeling Good –Nina Simone
  • 19.
  • 20.

Notes de l'éditeur

  • #5 Nous vivons dans un réseau d’influences. Un style = un groupe d’artistes = un groupe d’albums = un groupe de tracks
  • #6 - Nous tentons de recréer le cerveau humain, ses connaissances et sa réflexion
  • #9 - 12 éléments interviennent dans cette analyse que nous faisons de la musique
  • #11 Avec la table “cultural_link”, on faisait du GRAPH sans le savoir (cultural_from / cultural_to) Limitation de la taille de la DB Requêtes compliquées (jointures)
  • #12 Une DB ayant grandie assez rapidement En perpétuelle population Chaque traitement prend du temps car bcp de targets
  • #13 - Expliquer pourquoi ces outils
  • #15 - Expliquer les grandes lignes
  • #16 - Expliquer les grandes lignes
  • #17 Outils de recherche destinée aux professionnels du secteur de la musique pour films (supervisors, sound designers, producteurs,…) Recherche TALN Calcul d’un score de fiabilité de la réponse
  • #19 - Comment sont reliés les moods entre une Track, son Album, son Artiste et son Genre principal
  • #20 - Même les erreurs peuvent être symétriques.