Merci pour votre réponse Maxime.
Je vais solliciter votre avis sur le projet fil rouge.
Je suis dans le groupe voice separation que vous connaissez qui s’intéresse à la séparation des voix dans la musique (et plus si possible avec les instruments).
Nous sommes partis sur les données du set dsd100, un jeu classiquement utilisé pour cette thématique. C’est un jeu très propre qui contient en .wav les chansons complètes et les fichiers individuels des voix, bass, batterie, autres… Le tout est échantillonné à 44100 Hz.
Nous avons rééchantillonné à 22050 pour commencer ce qui est classique et on s’est d’abord posé la question de savoir si à un moment donné il était possible de prédire s’il y avait des voix ou non.
A la base la voix est présente en moyenne à 75% sur l’ensemble des 100 titres environ mais il y a pas mal de dispersion (histogramme/kde)!!!
Nous sommes passé à la représentation spectrale via la transformée de Fourrier en essayant ensuite de définir un seuil de parole ou non. Ce qui me dérange un peu, c’est que l’approche de découper les spectres en fenêtres coulissantes qui est classique et utilisée pour cela génère des quantités de données importantes pour lesquelles nous sommes moyennement équipés. De ce fait, certaines personnes du groupe n’ont au début utilisé qu’un seul morceau sur les 100 pour développer le classifieur.
J’ai sous entendu que ce n’était pas très raisonnable sachant que déjà 100 titres n’est pas énorme et pas forcément suffisamment représentatif de l’univers musical si on souhaite avoir quelque chose de généralisable (là je sais que j’en demande beaucoup)., mais de là à travailler sur un seul!!! C’est la première chose.
Ensuite , on a logiquement utilisé la partie vocale comme notre target puisque c’est ce que l’on souhaite extraire au final. Et limités pas nos capacités, nous n’avons passé que des morceaux de la chanson complète sans rajouter en plus quelques pistes avec juste les instruments ou juste la voix. Du coup, on est quand même sur quelque chose de compliqué avec un déséquilibre de classe et de la dispersion , raison pour laquelle j’avais suggéré de rajouter des instruments seuls pour équilibrer et plus de morceaux, surtout qu’en se restreignant trop, du fait de la dispersion, on peut être seulement à 5/10% de non vocal sur certains morceaux. Déséquilibre encore plus marqué. Etant assez seul dans cette approche, cela n’a pas été retenu par le groupe et les résultats de l’IT1 ont été présenté avec un classifieur entrainé et testé sur un seul morceau… Ca me navre un peu scientifiquement, mais je suis les décisions de la majorité du groupe. Comme je ne suis pas celui qui avance le plus vite dans les sprints je suis en peu en retard pour présenter les tout nouveaux résultats sur le projet, ce qui ne m’empêche pas de faire valoir mon point de vue.
La data augmentation est une évidence pour moi. On l’a vue notamment avec le transfer_learning et l’exercice sur les tableaux de peintres. Le rééquilibrage des classes et la diversité de la data pour avoir un modèle plus robuste au final également. Il est évident que nous n’avons pas les moyens de passer 20 000 morceaux allant du rap, au jazz, au rock, hard_rock, métal…, ni le temps de trouver et récolter toutes ces données.
Que pensez vous néanmoins du fait d’entrainer avec des morceaux contenant tous les instruments ensemble sans la voix, ainsi que la voix seule? Des articles disent que les CNN sont en mesure de détecter la nature de la parole humaine et de séparer les instruments via une approche par les spectros. Ceci est fort possible. Pas le temps néanmoins, de devenir un véritable expert du domaine le temps du projet. Je me dis juste qu’on ne passe pas assez de temps parfois à bien penser et réfléchir sa base de données et à partir comme des flèches chercher du résultat. Néanmoins, le résultat est meilleur au final il me semble, si les données sont bien pensées.
Je ne vous dérange pas davantage, je voulais votre avis au fait de rajouter des morceaux sans voix pour rééquilibrer les classes et de la voix seule pour que l’algo ne voit pas systématiquement que des mélanges de tout…Je me mets à sa place lol, mais retrouver ce qui est de la voix quand on a que des mélanges de tout et juste la cible 1 ou 0 sur des fenêtres de spectros… Il doit etre vraiment fort pour y arriver… Pour ce qui est du choix ensuite, doit il s’agir de morceaux de musique présents dans les chansons passées pour entrainer ou au contraire de morceaux différents? Idem pour la voix seule?
J’aurais tendance à dire que pour la diversité de la donnée, il faudrait prendre des voix et de la musique différente des chansons passées en entrainement avec mais du point de vue du modèle, même si il ne le sait pas, c’est peut-être bien qu’il voit la chanson d’une part, la musique d’autre part et la voix enfin sur le même morceau pour faciliter la déconvolution et son traitement de la donnée? Mais si il est assez malin, je vais plutôt dire assez fort, ce qui est le cas, il verra qu’il faut faire mix moins music pour avoir la voix et entrainé ainsi, si on ne lui donne en test que le mix, et qu’on lui donne à traiter que des mix, ce quiu sera le cas. il risque de bugger un peu. En passant 13 chanson, 13 voix et 13 musique on arrive environ à 50/50 au niveau des classes parlé/non parlé… et à rééquilibrer. Mais je pense qu’il vaudrait mieux tout bien réfléchi 13 voix différentes des morceaux et encore 13 musiques différentes des morceaux et des voix. Quel est votre point de vue?
Désolé d’avoir été aussi long.
Ensuite n’est ce pas trop néanmoins de prendre le même nombre de musique seule et de voix seule que de morceaux et de de faire 13, 13, 13. Ne faudrait-il pas diminuer un peu voix et musique par rapport au titre complet? Par exemple 13, 7, 10 ou 15 , 5 10
Merci encore pour votre aide et votre analyse