🏁 This page has been validated by alexoudeon on 2024-09-20 at 00:00:00.
Gérer ses partitions avec un logiciel
Pour gérer mes partitions, j'utilise un outil développé par mes soins qui n'est pas disponible au public. Il est écrit en 1500 lignes de Python.
La première fonctionnalité est de scanner toutes les partitions aux formats MSCX et MSCZ de MuseScore stockées dans une arborescence pour en extraire des caractéristiques techniques : nombre de notes, accords, armures, tempo... Ces méta-données ont un objectif documentaire, d'aide à la recherche et d'analyse pour le deep learning plus bas.
La seconde fonctionnalité est de déclarer explicitement les partitions et leurs attributs qui ne peuvent pas être devinés : année, tonalité, vidéo YouTube... La liste des partitions est décorrélée des méta-données, car on peut vouloir stocker des partitions sans pour autant les avoir à l'écran.
Une troisième fonctionnalité attribue un score statique de difficulté à chaque partition. Il s'agit simplement d'un calcul de norme vectorielle divisée par la norme vectorielle maximale s'il existait un morceau combinant toutes les caractéristiques les plus extrêmes. Un tel morceau n'existe pas, alors on réétalonne à la fin tous les scores entre 0 et 100, ce qui est une opération très dépendante de votre répertoire musical. Il faut avoir un nombre significatif de partitions avant d'avoir des scores correctement distribués, mais une partition complexe de votre choix devrait aider à calibrer rapidement cet algorithme. Ce score obtenu est très imprécis, car il considère chaque attribut indépendamment.
Une quatrième fonctionnalité va nous permettre de classer les partitions deux à deux en indiquant laquelle est la plus compliquée à jouer. L'algorithme va systématiquement proposer les partitions ayant le plus besoin d'être classées et qui ont un score de difficulté semblable. Cela équilibre le nombre de comparaisons par partition. Par défaut, l'algorithme ne choisit pas une partition qui n'a jamais été évaluée au moins une fois volontairement, car on peut lister une partition dans la bibliothèque sans pour autant l'avoir étudiée. Dans l'attente d'un score définitif, il convient de comparer une partition au plus 5 fois par itération.
La cinquième fonctionnalité est liée au deep learning. Puisque le score statique vectoriel est imprécis, on préfèrera optimiser un réseau de neurones de type feed forward (FNN) qui va brasser ce score statique avec les données de comparaison. La convergence du réseau neuronal va donner un nouveau score beaucoup plus dynamique qui tiendra compte de la relation entre les différents attributs. C'est avec ce score qu'est construite ma liste de partitions par difficulté croissante. On constate que ce score est beaucoup plus cohérent même s'il persiste quelques étrangetés parfois. L'entraînement dure deux minutes sur CPU et le modèle s'exécute très rapidement après sauvegarde (simple calcul matriciel). Tout réentraînement génère un résultat sensiblement stable. Ce résultat sophistiqué et passionnant était l'objectif initial recherché du développement de ce gestionnaire de partitions. La complexité du sujet en a finalement fait un outil complet.
Une sixième fonctionnalité génère une matrice de corrélation entre les différents paramètres. Il est possible de voir parmi la trentaine d'attributs ceux qui ont contribué le plus significativement (ou pas) au score de deep learning.
Une septième fonctionnalité permet de lister les partitions imprimées pour m'aider à trier mon classeur par style et ordre alphabétique. Pour réduire l'espace occupé, les partitions sont rangées deux par deux dans une pochette plastique même si c'est un peu plus chronophage.
Une huitième fonctionnalité est liée à l'apprentissage répété et espacé. Selon cette vidéo, quelque chose s'apprend beaucoup mieux lorsqu'on la répète à intervalles variables : si je rate, je dois réviser dans un délai court, mais si je réussis, je peux réviser plus tard mais pas trop. Le logiciel permet de gérer aisément la périodicité de ces révisions, de compter les succès et les échecs, et de décaler les dates après des périodes d'absence. Charge à l'étudiant d'inscrire les bonnes partitions dans son cursus à un rythme régulier. Et finalement, est-ce que ça marche ? Franchement oui même si on tourne en moyenne toujours autour des mêmes morceaux.
Revision #5 was last modified by alexoudeon
on 2024-09-20 at 00:00:00 — 7e1fb38b3de6a2bc