Académique Documents
Professionnel Documents
Culture Documents
04-F0Estimation MasterThesis
04-F0Estimation MasterThesis
¨
FriedrichAlexanderUniversit¨at ErlangenNurnberg
Mémoire
Approches d'apprentissage en profondeur pour
Estimation fondamentale de la fréquence des enregistrements musicaux
Proposé par
Judith Bauer
soumis
18 novembre 2019
Superviseur / Conseiller
Prof. Dr. Meinard Muller ̈
M.Sc. Sébastien Rosenzweig
Réviseurs
Pr Dr Meinard Muller ̈ Pr
Dr Andreas Maier
International Audio Laboratories Erlangen Une institution
conjointe de la Friedrich ¨
AlexanderUniversit¨at ErlangenNurnberg
¨ (FAU) et du FraunhoferInstitut
fur Integrierte Schaltungen IIS.
Machine Translated by Google
Machine Translated by Google
¨
ERKLARUNG
Erkl¨arung
Hiermit versichere ich an Eides statt, dass ich die vorliegende Arbeit selbstst¨andig und ohne
Benutzung anderer als der angegebenen Hilfsmittel angefertigt habe. Die aus anderen Quellen
oder indirekt u¨bernommenen Daten und Konzepte sind unter Angabe der Quelle gekennzeichnet.
Die Arbeit wurde bisher weder im Innoch im Ausland in gleicher oder ̈ahnlicher Form in einem
Verfahren zur Erlangung eines akademischen Grades vorgelegt.
Erlangen, le 18 novembre 2019
Judith Bauer
je
Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
Machine Translated by Google
REMERCIEMENTS
Remerciements
Tout d'abord, je tiens à remercier mes superviseurs Sebastian Rosenzweig et le professeur Dr.
Meinard M¨uller des International Audio Laboratories Erlangen. Sebastian Rosenzweig a toujours
été utile et soutenu en cas de questions et m'a fourni des critiques et des suggestions constructives.
Merci également au Prof. Dr. Meinard M¨uller pour l'opportunité d'écrire ma thèse de Master dans ce
domaine de recherche intéressant et ses conseils et son soutien continu. De plus, je tiens à remercier
l'ensemble du groupe AudioLabs pour l'ambiance de travail conviviale.
Un grand merci bien sûr aussi à ma famille et à Manuel pour le soutien et les encouragements.
iii Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
Machine Translated by Google
ABSTRAIT
Abstrait
Une caractéristique principale de la musique est sa mélodie. Une mélodie est une suite de notes. Les
notes sont caractérisées par leur durée et leur hauteur. Ainsi, l'étude des hauteurs joue un rôle important
dans le traitement de la musique. La tâche d'extraction des hauteurs est étroitement liée à l'examen
des fréquences fondamentales (F0) d'un enregistrement audio. La hauteur est une propriété perçue d'
une note alors que la fréquence fondamentale est une propriété physique de la forme d'onde d'un
enregistrement audio. Dans la plupart des cas, la hauteur correspond à la fréquence fondamentale.
L'estimation F0 est une tâche difficile, car chaque note jouée sur un instrument se compose de la
fréquence fondamentale et de plusieurs harmoniques (pondérées différemment). Pour les
enregistrements audio polyphoniques avec des notes simultanées, cette tâche devient encore plus difficile.
Pour l'estimation de la fréquence fondamentale, plusieurs approches existent déjà. Il existe plusieurs approches
basées sur des modèles qui utilisent des techniques de traitement du signal. De plus, avec l'essor de l'intelligence
artificielle et de l'apprentissage en profondeur, des approches utilisant des réseaux de neurones sont développées pour
F0estimation.
Dans cette thèse, nous donnons d'abord un aperçu des approches basées sur des modèles et les évaluons pour
quelques exemples audio. Comme contribution principale, nous analysons et évaluons CREPE, un réseau de
neurones convolutifs pour l'estimation de F0 développé par Kim et al. [1]. Ensuite, dans une étape suivante, les
modifications du réseau et du processus de formation sont présentées et évaluées. Cela inclut l'augmentation des
données, le gel des couches et les modifications de la structure du réseau. Enfin, CREPE est évalué sur un
ensemble de données composé de musique vocale géorgienne.
Le résultat de nos expériences est que CREPE atteint des précisions élevées sur un ensemble de données d' enregistrements audio
resynthétisés et effectue des performances similaires ou meilleures par rapport aux approches basées sur des modèles précédentes.
Nous avons également réussi à recycler le réseau. Afin d'améliorer la formation en présence de quelques échantillons
de formation, nous avons découvert que l'augmentation des données est une technique utile. Le processus de
formation a été accéléré en utilisant le gel de couche ou un réseau plus petit avec seulement une légère baisse des précisions.
v Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
Machine Translated by Google
ZUSAMMENFASSUNG
Zusammenfassung
Eine wichtige Eigenschaft von Musik ist die Melodie. Eine Melodie ist eine Sequenz von T¨onen.
T¨one werden durch ihre Dauer und die Tonh¨ohe beschrieben. Deshalb spielt die Untersuchung
von Tonh¨ohen eine wichtige Rolle in der Musikverarbeitung. Die Extraktion von Tonh¨ohen
h¨angt eng mit der Untersuchung der Fundamentalfrequenzen (F0) einer Audioaufnahme
zusammen. Die Tonh¨ohe ist eine wahrgenommene Eigenschaft eines Tons, w¨ahrend es sich
bei der Fundamentalfrequenz um eine physikalische Eigenschaft der Wellenform einer
Audioaufnahme handelt. In den meisten F¨allen entspricht die wahrgenommene Tonh¨ohe der Fundamentalfre
F0Sch¨atzung ist eine anspruchsvolle Aufgabe, weil jeder Ton, der auf einem Instrument gespielt wird ,
sich aus der Fundamentalfrequenz und mehreren (unterschiedlich gewichteten) Obert¨onen
zusammensetzt. F¨ur mehrstimmige Audioaufnahmen mit gleichzeitig erklingenden T¨onen wird diese
Aufgabe noch schwieriger.
Zur Fundamentalfrequenzsch¨atzung existentieren bereits mehrere Ans¨atze. Es gibt modellbasierte
Ans¨atze, die Techniken aus der Signalverarbeitung nutzen. Durch den immer gr¨oßeren Einfluss von
k¨unstlicher Intelligenz und Deep Learning werden auch zunehmend Ans¨atze zur F0Sch¨atzung
mit neuronalen Netzen entwickelt.
¨
In dieser Arbeit geben wir zuerst einen Uberblick ̈uber modellbasierte Ans¨atze und wenden
diese auf ausgew¨ahlte Audiobeispiele an. Der Hauptbeitrag dieser Arbeit ist die Analyze und
Evaluation von CREPE, einem Convolutional Neural Network zur F0Sch¨atzung von Kim et
al. [1]. Des Weiteren werden Anpassungen an dem Netz und dem Trainingsprozess
vorgestellt und evaluiert. Dazu geh¨oren die Anreicherung der Daten, die Fixierung von Schichten und
¨
Anderungen
der Netzstruktur. Abschließend wird CREPE auf einem Datensatz mit georgischer
Évaluation de Vokalmusik.
Das Ergebnis unserer Experimente ist, dass CREPE hohe Genauigkeiten auf einem Datensatz
mit resynthetisierten Daten erzielt und vergleichbar oder besser abschneidet als bisherige Ans¨atze.
Des Weiteren war ein erneutes Training des Netzes erfolgreich. Zur Verbesserung des Trainings
mit einem eingeschr¨ankten Datensatz hat sich die Anreicherung der Daten als n¨utzlich erwiesen.
Außerdem konnten wir das Training des Netzes mit Hilfe von fixierten Schichten oder einer reduzierten
Netzgr¨oße beschleunigen, was nur zu geringf¨ugig niedrigeren Genauigkeiten f¨uhrte.
Mémoire de maîtrise, Judith Bauer
vii
Machine Translated by Google
Machine Translated by Google
CONTENU
Contenu
Erkl¨arung je
Remerciements iii
Abstrait v
Zusammenfassung vii
1. Introduction 3
1.1 Structure de la thèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2 Principaux apports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 Fondamentaux 7
3 Estimation de fréquence fondamentale basée sur un modèle 25
3.1 YIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4 Approche basée sur le DNN 41
4.1 CRÊPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5 Evaluation sur MDBstemsynth 5.1 63
CREPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
6 Évaluation des enregistrements géorgiens 79
1 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
CONTENU
7. Conclusions 89
Bibliographie 91
2 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
1. INTRODUCTION
Chapitre 1
Introduction
Les enregistrements musicaux et vocaux sont des données complexes à fort contenu informationnel qui
peuvent être analysées automatiquement. Dans la musique comme dans la parole, la hauteur est un
attribut caractéristique. En parole, la hauteur dépend du locuteur et du contexte de l'enregistrement de la
parole (environnement, situation du locuteur). En parlant, la hauteur change et indique par exemple
qu'une phrase est une question ou une demande. Toujours en musique, la hauteur est un aspect important à analyser.
Les hauteurs correspondent aux notes de musique et décrivent donc la mélodie d'un enregistrement musical. Les
résultats de l'estimation de la hauteur peuvent être utilisés par exemple pour convertir un enregistrement en une
représentation symbolique à l'aide d'une séquence de notes musicales. Une autre application consiste à synchroniser
un enregistrement musical avec une transcription musicale existante en analysant les hauteurs de l'enregistrement à
l'aide d'une estimation de hauteur.
La hauteur est une propriété d'une note perçue par l'auditeur [2]. En revanche, la fréquence fondamentale (F0)
est une propriété physique de la forme d'onde d'un enregistrement audio. Bien que la hauteur corresponde à
la fréquence fondamentale dans la plupart des cas, nous utilisons donc ces termes de manière interchangeable.
La recherche concernant l'estimation de la fréquence fondamentale peut être séparée en différentes tâches.
Tout d'abord, il peut être divisé en estimation F0 pour l'audio monophonique et en estimation F0 pour l'audio
polyphonique. Lors de l'analyse des hauteurs audio polyphoniques, l'objet peut être soit d'analyser les
fréquences fondamentales de la mélodie principale (estimation de la mélodie prédominante), soit d'analyser
plusieurs hauteurs apparaissant simultanément, par exemple plusieurs instruments de musique (estimation multihauteur).
Dans cette thèse, nous nous concentrons sur le suivi de hauteur monophonique comme tâche de base de l'estimation de hauteur.
Pour l'estimation de hauteur monophonique, l'entrée est un enregistrement audio monophonique. A
chaque instant , une seule note de musique est jouée. Une note jouée sur un instrument mélodique
consiste généralement en une fréquence fondamentale. De plus, il existe des partiels harmoniques
qui peuvent être pondérés différemment selon le timbre de l'instrument. La tâche consiste à examiner
les enregistrements musicaux au fil du temps et à déterminer les fréquences fondamentales à ces instants.
Un exemple utilisant un extrait de "Dans la salle du roi de la montagne" (Edvard Grieg) est montré
3 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
1. INTRODUCTION
dans la Figure 1.1. Dans la Figure 1.1a, la représentation de la partition est affichée. La figure 1.1b montre la
forme d'onde correspondante. La séquence attendue des fréquences fondamentales est illustrée à la Figure 1.1c.
Il existe plusieurs approches pour l'estimation de la fréquence fondamentale. Cellesci peuvent être divisées en
méthodes basées sur des modèles (par exemple YIN [3] et pYIN [4]) et en approches basées sur les réseaux de
neurones profonds (DNN). Les approches basées sur des modèles utilisent des techniques issues du traitement
du signal pour analyser un signal musical. Les approches basées sur DNN sont basées sur les données. Ils sont
formés à l'aide de données annotées composées d'extraits audio et des fréquences fondamentales correctes pour
les extraits. Une approche récemment publiée est CREPE (A Convolutional Representation for Pitch Estimation)
développée par Kim et al. [1], qui est basé sur un réseau de neurones à convolution profonde. L'entrée pour
CREPE est un enregistrement audio (comme dans la Figure 1.1b) et la sortie est une séquence de fréquences
fondamentales estimées (comme dans la Figure 1.1c). Dans cette thèse, nous utilisons le réseau du CREPE
comme exemple d' une approche basée sur les données pour l'estimation de la fréquence fondamentale et le
comparons aux approches basées sur des modèles. Comme contribution principale, nous présentons les
modifications apportées au réseau et évaluons les modifications en réentraînant le réseau.
Figure 1.1 : Court extrait de « Dans la salle du roi de la montagne » (Edvard Grieg) joué par un alto.
(a) Représentation de partitions. (b) Forme d'onde d'un enregistrement resynthétisé. (c) Séquence de
valeurs de fréquence fondamentale à partir de l'annotation.
4 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
1.1 STRUCTURE DE LA THÈSE
1.1 Structure de la thèse
Dans le chapitre 2, nous discutons des fondamentaux nécessaires à cette thèse. Cela inclut les aspects de base du traitement
du signal. Ensuite, la tâche d'estimation de la fréquence fondamentale est expliquée. Pour le développement et l'évaluation
des approches d'estimation de F0, certains jeux de données sont nécessaires, c'est pourquoi les jeux de données utilisés
sont présentés. En outre, nous discutons des métriques d'évaluation pour l'estimation de hauteur et l'estimation de voisement.
Au chapitre 3, nous donnons un aperçu des approches basées sur des modèles pour l'estimation de la fréquence
fondamentale . Cela inclut YIN [3] et sa version probabiliste pYIN [4]. Un estimateur de hauteur utilisant une fonction en dents
de scie (SWIPE [5, 6]) et un algorithme pour la musique polyphonique (MELODIA [7]) sont également présentés.
Dans le chapitre 4, nous discutons des modèles basés sur les réseaux de neurones profonds. Tout d'abord, le réseau de
neurones convolutifs CREPE [1] est présenté. Il est examiné à l'aide de certains signaux artificiels. Ensuite, nous développons
des modifications en utilisant l'augmentation des données, le gel des couches et les modifications de la structure du réseau.
Nous évaluons CREPE et les nouvelles approches au chapitre 5. Pour l'évaluation, un ensemble de données avec des stems
audio monophoniques et des annotations de hauteur (MDBstemsynth [8]) est utilisé.
Enfin, nous utilisons un ensemble de données plus réaliste de la musique vocale traditionnelle géorgienne pour l'évaluation
de l'estimation de la hauteur et de l'estimation de la voix au chapitre 6.
1.2 Principaux apports
La première contribution de cette thèse est l'analyse du CREPE [1]. Ici, le fonctionnement est examiné à l'aide de
données générées artificiellement de sinusoïdales, d'un signal chirp et d'un signal avec harmoniques. CREPE est
également appliqué à quelques exemples de l'ensemble de données MDBstemsynth [8] et les résultats sont
comparés aux résultats obtenus avec d'autres estimateurs de hauteur. Ensuite, la version originale de CREPE est
appliquée à l'ensemble de données complet MDBstemsynth.
Comme contribution principale, nous testons plusieurs stratégies pour améliorer les performances du réseau et
le processus de formation. Tout d'abord, nous utilisons l'augmentation des données afin d'augmenter l'ensemble
de données disponible pour la formation et de compenser les biais dans l'ensemble de données. Pour cela, nous
appliquons le pitch shifting aux fichiers audio. Deuxièmement, nous examinons le rôle de la première couche
convolutive et excluons cette couche de la formation en précalculant les poids appropriés. Ensuite, nous
analysons la couche de sortie et augmentons sa dimension. Ensuite, nous modifions la structure du réseau et
diminuons la taille des filtres et le nombre de filtres afin de créer un réseau plus petit.
Nous évaluons ces modifications en utilisant le jeu de données MDBstemsynth [8]. En résumé, nous montrons
que l'augmentation des données (pitch shifting) est utile pour améliorer les performances du réseau. De plus, nous
montrons que le processus de formation peut être accéléré en utilisant des poids fixes pour la première couche et un
réseau plus petit.
5 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
Machine Translated by Google
2. FONDAMENTAUX
Chapitre 2
Fondamentaux
Dans ce chapitre, nous présentons les fondamentaux nécessaires à cette thèse. Nous commençons par les
bases du traitement du signal (analyse de Fourier et transformée de Fourier à court terme) dans la section 2.1.
Ensuite, dans la section 2.2, nous présentons la tâche d'estimation de la fréquence fondamentale. Ensuite, les ensembles
de données qui sont utilisés dans les chapitres suivants sont présentés dans la section 2.3. Ici, les exemples de
fonctionnement sont également présentés. Enfin, nous introduisons des mesures d'évaluation pour l'estimation de hauteur
et l'estimation de voisement dans la section 2.4.
2.1 Traitement du signal
La musique est physiquement représentée par des signaux audio. Lorsque, par exemple, un instrument est joué, cela
crée des changements de pression d'air. À un endroit, ces changements de pression atmosphérique peuvent être
mesurés au fil du temps. Cela conduit à un signal pressiontemps qui capture les propriétés de la musique comme la
hauteur, le volume et le timbre. Mathématiquement, le signal est une fonction f : R → R. Ainsi, chaque instant t correspond
à une valeur f(t). Si un modèle de pression atmosphérique se produit à plusieurs reprises après une période de temps, il
s'agit d'une forme d'onde périodique. Le nombre de périodes par seconde (inverse de la période) est la fréquence ω. Elle
est mesurée en Hertz (Hz). Afin d'examiner les fréquences d'un signal, l'analyse de Fourier est un outil important.
2.1.1 Analyse de Fourier
L'analyse de Fourier a pour objet d'examiner quelles fréquences sont présentes dans un signal. Pour
chaque signal, il est possible de le décomposer en sinusoïdes pondérées de fréquences (et de phases)
différentes . La figure 2.1 montre un exemple de signal (courbe bleue) qui peut être décomposé en
deux composantes (lignes grises) à l'aide de la transformée de Fourier. La représentation du signal d'origine
7 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
2. FONDAMENTAUX
comme deux sinusoïdes de poids 1 et 0,7 est la représentation de Fourier du signal. Quand un
Figure 2.1 : Le signal bleu peut être décomposé en deux signaux gris : sin(t) + 0,7 * sin(2t).
une tonalité unique artificielle idéale est produite, elle provoque une forme d'onde avec une fréquence spécifique
à la hauteur de la tonalité. Par exemple, si un A4 artificiel est produit, cela entraîne des changements de pression
atmosphérique avec une fréquence de 440 Hz. Ainsi, analyser les sinusoïdes et leurs amplitudes dans une forme
d'onde correspond à analyser les sons purs qui composent le signal. Pour approcher les fréquences actuelles et
leurs amplitudes, la transformée de Fourier est calculée. Comme les fonctions continues ne peuvent pas être
traitées par des ordinateurs, une version discrète de la transformée de Fourier est souvent utilisée. Pour cela, au
lieu du signal d'origine f, nous utilisons un signal à temps discret x qui est échantillonné de manière équidistante
avec une période d'échantillonnage T
x(n) := f(n ∙ T). (2.1)
Le taux d'échantillonnage Fs en Hertz (Hz) peut être dérivé de la période d'échantillonnage en prenant l'
inverse
Fs := 1/T. (2.2)
Le taux d'échantillonnage choisi détermine si le signal d'origine peut être reconstruit à partir du signal
discrétisé. Selon le théorème d'échantillonnage, la reconstruction est possible, s'il n'y a pas de fréquences
supérieures à Fs/2. Ainsi, si un signal a un taux d'échantillonnage de par exemple 44100 Hz, le signal
d'origine peut être reconstruit s'il ne contient que des fréquences inférieures à 22050 Hz (les humains
peuvent entendre des fréquences jusqu'à environ 20 kHz). La formule de la transformée de Fourier
discrète (DFT) est (cf. [9, Section 2.1.3] ) :
N1
X(k) = x(n)exp(−2πikn/N) (2.3)
n=0
8 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
2.1 TRAITEMENT DU SIGNAL
pour les échantillons x(0), x(1), ..., x(N − 1) et les indices de fréquence k [0 : N − 1].
X(k) correspond alors à la fréquence physique
k ∙ Fs
Fcoef(k) := (2.4)
N
mesuré en Hertz.
2.1.2 Transformée de Fourier à court terme
La transformée de Fourier discrète analyse les fréquences du signal complet. Cependant, la plupart des signaux
audio changent avec le temps et ne sont cohérents que dans un court intervalle de temps. Ainsi, pour le
traitement audio, la transformée de Fourier à court terme (STFT) peut être utilisée à la place. Il examine
uniquement les fréquences dans un court intervalle. La taille de l'intervalle est déterminée par la taille de fenêtre
N N. Une fenêtre de cette taille est glissée sur le signal dans des intervalles déterminés par la taille de saut H
N. La transformée de Fourier est ensuite calculée pour chaque trame. Ceci conduit à la définition suivante de
la transformée de Fourier à court terme pour un signal à temps discret x : Z → R (d'après [9, Section 2.1.4]) :
N1
m∙H
Tcoef(m) := (2.6)
Fs
mesuré en secondes.
À partir de la transformée de Fourier à court terme, le spectrogramme peut être calculé en prenant la magni
étude :
Y(m, k) = X (m, k) . (2.7)
Après avoir calculé un spectrogramme, un spectrogramme compressé peut être dérivé. Cette procédure équilibre
les composantes sonores avec une énergie faible et élevée. La motivation en est que l' intensité des sons est
perçue de manière logarithmique. Ainsi, les composantes à faible énergie sont améliorées par compression
logarithmique (cf. [9, Section 3.1.2.1]) :
(Γγ ◦ Y)(m, k) := log(1 + γ ∙ Y(m, k)) (2.8)
avec la fonction de compression logarithmique Γγ(v) := log(1 + γ ∙ v) et γ R>0. La constante γ
détermine la quantité de compression. Une valeur plus élevée de γ indique une compression plus élevée.
9 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
2. FONDAMENTAUX
Figure 2.2 : Signal d'une gamme de do majeur jouée par un piano (audio de [10]). (a) Forme d'onde. (b) Spectrogramme de
magnitude. ( c ) Spectrogramme compressé (γ = 10).
Pour un exemple utilisant une gamme de Do majeur jouée par un piano, voir Figure 2.2 (audio de [10]). Il
montre la différence entre un spectrogramme de magnitude et un spectrogramme compressé
logarithmiquement (γ = 10). Dans le spectrogramme compressé, les composants avec une énergie plus faible sont plus visibles.
2.2 Estimation fondamentale de la fréquence
L'analyse de la mélodie d'un enregistrement audio est étroitement liée à la tâche d'estimation des
fréquences fondamentales. Cette tâche, ses variantes et ses défis sont présentés dans cette section.
De plus, nous expliquons une approche pour résoudre cette tâche en utilisant une estimation de fréquence fondamentale basée sur
la saillance.
dix Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
2.2 ESTIMATION DE LA FRÉQUENCE FONDAMENTALE
2.2.1 Description de la tâche
La tâche d'estimation de la fréquence fondamentale peut être séparée en différentes tâches en fonction de l'audio
d'entrée. Si l'entrée est un enregistrement audio monophonique avec une seule hauteur présente à chaque trame de
temps, on parle d'estimation de hauteur monophonique. L'entrée peut également être un enregistrement audio
polyphonique (plusieurs hauteurs présentes à certains moments). Cela peut être le cas si un instrument est enregistré
qui produit plusieurs sons comme un piano ou si plusieurs instruments sont enregistrés où chaque instrument produit
une hauteur comme plusieurs flûtes. Un mélange d'instruments multiphoniques et monophoniques est également
possible. Lors de l'analyse des hauteurs d' un enregistrement audio polyphonique, cette tâche peut être divisée en
estimation de mélodie prédominante et en estimation de hauteurs multiples. Dans l'estimation de mélodie
prédominante, l'objectif est d'identifier les hauteurs appartenant à la mélodie principale (pour certains enregistrements
difficiles à déterminer). Si toutes les hauteurs doivent être étudiées, on parle alors d'estimation multihauteur [11]. Ici,
nous nous concentrons sur l'estimation de hauteur monophonique en tant que tâche de base de l'estimation de
hauteur.
Lorsqu'il est fait référence à l'estimation de la hauteur tonale, celleci est souvent utilisée de manière
interchangeable avec l'estimation de la fréquence fondamentale. Comme expliqué dans la section 2.1, le
signal d'une tonalité enregistrée peut être décomposé en plusieurs sinusoïdes. Chaque sinusoïde est appelée
partielle. La fréquence fondamentale (F0) est la fréquence du partiel avec la fréquence la plus basse. Cette
fréquence est également appelée premier partiel ou premier harmonique [9]. Les autres harmoniques sont les
partiels dont la fréquence est un multiple entier de la fréquence fondamentale. La fréquence fondamentale
est donc une propriété physique de la forme d'onde. La hauteur, en revanche, est une propriété perçue par
l'auditeur [2]. Dans la plupart des cas, la hauteur correspond directement à la fréquence fondamentale.
Pourtant, il existe des exemples où un autre partiel a une amplitude plus élevée que le premier partiel.
L'analyse de la mélodie d'un enregistrement audio est une partie importante du traitement de la musique. Une mélodie
se compose de plusieurs hauteurs dans le temps. Par conséquent, lors de l'analyse des hauteurs d'un enregistrement
audio, une séquence de valeurs de fréquence doit être calculée dans le temps. Un chemin fréquentiel dans le temps
est une trajectoire fréquentielle [9, Section 8.2]. Formellement, une trajectoire fréquentielle peut être définie comme
une fonction η
η : Z → R { }. (2.9)
La fonction η attribue à chaque indice de temps une valeur de fréquence en Hertz (en R) ou un symbole ( ) indiquant
qu'il n'y a pas de mélodie présente à cette instance de temps (non voisée). Dans l'estimation de hauteur, nous nous
intéressons aux fréquences fondamentales. Par conséquent, la trajectoire résultante est appelée trajectoire F0.
Pour calculer une trajectoire F0 à partir d'un enregistrement monophonique, il existe différentes approches. Ils peuvent
être classés comme des approches basées sur un modèle ou basées sur un réseau neuronal profond (basé sur DNN).
Les approches basées sur des modèles utilisent souvent des techniques issues du traitement du signal. Ils peuvent soit
analyser directement le signal dans le domaine temporel, soit transférer le signal dans le domaine fréquentiel à l'aide du
11 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
2. FONDAMENTAUX
Transformer de Fourier puis analyser le spectrogramme. Des exemples d'approches basées sur des modèles sont YIN
[3], pYIN [4], SWIPE [5, 6] et Melodia [7]. Cellesci sont présentées au chapitre 3. Outre les approches basées sur des
modèles, il existe des approches basées sur DNN. Ils utilisent des réseaux de neurones profonds entraînés pour
l'estimation des fréquences fondamentales à l'aide de données audio annotées. Un exemple d'approche utilisant un
réseau de neurones à convolution profonde est le CREPE [1] qui sera présenté dans la section 4.1.
2.2.2 Estimation de la fréquence fondamentale basée sur la saillance
Pour les approches basées sur le domaine fréquentiel pour l'estimation de la fréquence fondamentale, une représentation
de la saillance basée sur un spectrogramme de fréquence logarithmique raffiné peut être utile. Nous commençons par le
calcul d'une transformée de Fourier à court terme comme expliqué dans la section 2.1.2. Les cases de fréquence du STFT
sont également espacées sur l'espace de fréquence. Mais la hauteur perçue est logarithmique dans la fréquence. Ainsi,
au lieu d'utiliser directement les valeurs de fréquence, chaque fréquence ω est affectée à un indice bin Bin(ω)(cf. [9,
Section 8.2.2.1]) :
1200 ω
Bin(ω) := ∙ log2 + 1,5 (2.10)
R ωref
A l'aide de l'Équation 2.10, des ensembles d'indices de fréquence qui sont affectés à un même bin sont définis (cf. [9,
Section 8.2.2.1]) :
P(b) := {k : Bin(Fcoef(k)) = b} (2.11)
pour les indices bin b [1 : B]. Maintenant, nous pouvons définir le spectrogramme logfréquence raffiné en additionnant
sur tous les indices de fréquence appartenant au même ensemble :
Ce spectrogramme à fréquence logarithmique raffiné peut être traité ultérieurement. Tout d'abord, dans la section
2.2.2.1, une technique appelée "Fréquence instantanée" sera expliquée qui conduit à une résolution de fréquence plus
élevée. Ensuite, dans la section 2.2.2.2, une représentation de la saillance est dérivée en utilisant la sommation harmonique.
Ces sections suivent les explications de [9].
12 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
2.2 ESTIMATION DE LA FRÉQUENCE FONDAMENTALE
2.2.2.1 Fréquence instantanée
L'utilisation des fréquences centrales Fcoef(k) telles que définies dans l'équation 2.4 aboutit souvent à un
spectre flou. La raison en est que la résolution en fréquence est trop faible. Une résolution de fréquence plus
élevée est possible en augmentant la longueur de fenêtre N du STFT. Cependant, cela entraîne également
une diminution de la résolution temporelle qui pourrait ne pas être souhaitée. Ceci peut être amélioré en
utilisant la fréquence instantanée. Il prend en compte les informations de phase du spectrogramme pour
augmenter la résolution en fréquence sans modifier la résolution temporelle. Cette section suit [9, Section
8.2.1 et Section 8.2.2.2].
Les composantes de la représentation de Fourier d'un signal sont décrites par un paramètre de fréquence
ω R et un paramètre de phase [0, 1). Lors de la mesure de la phase 1 au temps t1 et de la
Préd
phase 2 au temps t2, la phase peut être prédit pour le temps t2
s'il y a une fréquence ω présente dans le signal. L'erreur de prédiction est alors définie par la différence entre
la phase correcte et la phase prédite :
Err
:= Ψ( 2 − Pred) (2.14)
avec une fonction Ψ qui cartographie la différence de phase dans la plage [0,5, 0,5]. Sur cette base, une
estimation de fréquence améliorée peut être calculée :
Err
SI(ω) := ω + t2 . (2.15)
− t1
IF(ω) est la fréquence instantanée à ω. Ce concept peut être transféré au STFT, conduisant à une
fréquence instantanée F coef(k, n). ÀSI partir de là, des bacs d'indices de fréquence peuvent être calculés et
SI Est obtenu.
un spectrogramme de fréquence logarithmique rLF
affiné Y
2.2.2.2 Sommation harmonique
Selon l'instrument, chaque tonalité produit non seulement un signal de la fréquence fondamentale mais aussi
des partiels harmoniques. Le premier partiel est la fréquence fondamentale. Les autres partiels sont des
multiples entiers du premier partiel. Cela peut être utilisé pour améliorer un spectrogramme. Ainsi, au lieu
d'utiliser directement les fréquences estimées par le STFT, pour chaque entrée du spectrogramme, une
sommation harmonique est effectuée.
13 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
2. FONDAMENTAUX
Pour un spectrogramme tel que défini dans l'équation 2.7, le spectrogramme de somme d'harmoniques est calculé comme suit
(cf. [9, Section 8.2.2.3]) :
H
Y˜(n, k) := Y(n, k∙h) (2.16)
h=1
Lors de l'application de la sommation harmonique à un spectrogramme à fréquence logarithmique, le produit se transforme en
une somme. En effet, dans le spectrogramme d'origine, les partiels sont des multiples entiers. Pour les spectrogrammes log
fréquence, les partiels ont toujours la même distance, indépendamment de la fréquence fondamentale. Il faut donc utiliser une
formule légèrement modifiée.
Lors de l'application de la fréquence instantanée (voir Section 2.2.2.1) pour améliorer la résolution en
fréquence et la sommation harmonique pour améliorer encore le spectrogramme, le résultat est un
spectrogramme Y˜IF LF . Ce spectrogramme est la représentation saillante d'un enregistrement audio. De la saillance
représentation, les fréquences fondamentales peuvent être estimées.
2.3 Jeux de données
Pour l'évaluation des approches d'estimation de hauteur et la formation des approches basées sur DNN, certains fichiers audio
sont nécessaires. Les données utilisées pour ce travail peuvent être divisées en trois groupes. Tout d'abord, certaines données
artificielles telles que les gazouillis et les tonalités avec harmoniques ont été créées. Ensuite, l' ensemble de données MDB
stemsynth [8] est utilisé pour la formation et l'évaluation. De plus, un ensemble de données de musique vocale géorgienne
[12, 13] est utilisé pour l'évaluation sur un ensemble de données plus complexe.
2.3.1 Données artificielles
Pour l'examen d'une approche d'estimation de hauteur, nous avons créé des signaux artificiels. Les trois signaux présentés
servent également d'exemples artificiels pour les chapitres suivants.
Le premier signal est constitué de sinusoïdes. Il commence par un C2 (65,406 Hz), continue par un A5 (880,0 Hz), puis il y a
un break et enfin un E5 (659,255 Hz). Les parties voisées ont une durée de trois secondes chacune, le break a une durée de
deux secondes. Le spectrogramme d'amplitude de ce signal est représenté sur la figure 2.3a.
Le deuxième exemple est un signal avec un partiel harmonique supplémentaire. Avec ce signal, l'
influence des partiels pour l'estimation des fréquences fondamentales peut être examinée. La durée
est de dix secondes. Le signal a une fréquence de 130,813 Hz (C3), qui est la première harmonique.
L' amplitude de cette fréquence diminue de 1,0 à 0,0. De plus, une fréquence de 261,626 Hz (C4,
deuxième harmonique) est présente, pour laquelle l'amplitude augmente de 0,0 à 1,0. Les amplitudes
14
Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
2.3 JEUX DE DONNÉES
des deux tonalités changent linéairement sur la longueur du signal. Pour le spectrogramme de magnitude, voir la figure 2.3b.
Le troisième exemple est un signal chirp. Il est utile pour examiner les estimations de hauteur pour une plus
grande gamme de fréquences. Ici, nous utilisons un chirp qui a une durée de 60 secondes. Il commence à 30 Hz
(entre B0 bémol et B0) et atteint 2000 Hz (entre B6 et C7). L'estimateur de fréquence fondamentale CREPE est
censé être applicable aux fréquences comprises entre 31,70 Hz et 2005,50 Hz, sa plage est donc similaire à la
plage couverte par le chirp. Le spectrogramme d'amplitude du signal chirp est illustré à la figure 2.3c.
Les trois signaux (sinusoïdes pures, signal avec harmoniques, signal chirp) sont créés avec un taux d'échantillonnage de 16000 Hz.
2.3.2 MDBstemsynth
Un autre jeu de données qui sera utilisé dans cette thèse est le jeu de données MDBstemsynth [8]. Il contient
plusieurs fichiers audio monophoniques annotés et est donc utile pour les évaluations plus importantes et la formation
des réseaux de neurones. Dans cette section, nous commençons par une description de l'ensemble de données, puis
introduisons les exemples d'exécution de cet ensemble de données.
2.3.2.1 Description du jeu de données
L'ensemble de données MDBstemsynth [8] est utile pour évaluer les approches d'estimation de hauteur. Il se
compose de plusieurs fichiers audio qui sont plus réalistes que les signaux artificiels présentés dans la section 2.3.1.
Ainsi, cet ensemble de données peut également être utilisé pour la formation d'approches d'estimation de hauteur basées sur DNN.
L'ensemble de données MDBstemsynth est basé sur l'ensemble de données MedleyDB développé par Bittner et al. [14].
MedleyDB se compose d'enregistrements libres de droits de 122 chansons, dont 108 chansons annotées par la
mélodie. Pour chaque morceau, les stems (pistes monophoniques) sont également contenus dans la base de données.
MedleyDB propose des annotations mélodiques pour les tiges. Ces annotations ont été créées à l'aide de pYIN [4] (une approche basée sur un
modèle pour l'estimation de la fréquence fondamentale qui sera discutée dans la section 3.2) et ont été corrigées manuellement.
Cette base de données a été utilisée comme base pour l'ensemble de données MDBstemsynth. Salaman et al. [8] ont d'abord appliqué un
tracker de hauteur monophonique (Spectrum AutoCorrelation, SAC [15]) à certaines tiges du jeu de données MedleyDB. Pour l'étape suivante
"Modélisation sinusoïdale", un algorithme développé par Bonada [16] est utilisé. Il segmente le signal en fonction des périodes estimées par SAC
à l' étape précédente, puis calcule les paramètres harmoniques tels que la fréquence, l'amplitude et la phase pour chaque segment. Ensuite,
dans l'étape de synthèse, les paramètres harmoniques sont utilisés pour créer des stems synthétisés. Pour cela, un oscillateur est créé (avec la
fréquence et l'amplitude appropriées) pour chaque
15 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
2. FONDAMENTAUX
Figure 2.3 : Spectrogrammes de magnitude d'exemples en cours d'exécution (données artificielles). (a)
Sinusoïdes. (b) Signal avec harmoniques. (c) Signal sonore.
16 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
2.3 JEUX DE DONNÉES
partiel. A partir du résultat de l'étape de synthèse, un mix final des stems créés peut être réalisé (Remixing).
Dans cette étape, il est important de peser les tiges en fonction du volume des tiges dans le mélange
d'origine. Les stems résultants et le mixage final conservent le timbre et la dynamique d'origine grâce à la
prise en compte des partiels.
En utilisant la méthode décrite, Salamon et al. [8] ont créé cinq ensembles de données : MDBmelodysynth
(pour les pistes mélodiques), MDBbasssynth (pour les pistes de basse), MDBmf0synth (pour les
instruments à hauteur monophonique), MDBstemsynth (pour les pistes solo ) et Bach10mf0synth (pour
10 chorals Bach) disponibles sur [17]. Ici, nous nous concentrons sur le suivi de hauteur monophonique.
L'ensemble de données MDBstemsynth est donc approprié pour cette tâche. MDBstemsynth est publié
sous les termes de la licence internationale Creative Commons AttributionNonCommercial 4.0. Il peut être téléchargé san
frais après avoir rempli un formulaire de téléchargement.
MDBstemsynth se compose de 230 stems solos (pistes) de différents instruments et voix. Ces hampes
appartiennent à 85 pièces musicales pour lesquelles entre 1 et 17 hampes sont incluses. La base de données
se compose de fichiers audio et d'annotation :
• Stems audio : Les stems audio sont créés en utilisant la méthodologie de Salamon et al.
[8]. Ils sont édités avec un taux d'échantillonnage de 44100 Hz. Les stems les plus courts (de
MusicDelta Rock) ont une durée de 13 secondes, les stems les plus longs (de MatthewEntwistle
AnEveningWithOliver) ont une durée de 1061 secondes (environ 17,7 minutes). Le timbre des tiges
est similaire aux tiges d'origine.
• Tiges d'annotation : Il existe un fichier d'annotation pour chaque tige avec des annotations F0 parfaites.
La première ligne d'un fichier d'annotation contient les horodatages en secondes et la deuxième ligne
contient la valeur F0 en Hertz. Pour les fichiers d'annotation, des trames avec une taille de saut de
128 échantillons (taux d'échantillonnage de l'audio : 44 100 Hz) ont été utilisées. Cette taille de saut
correspond à environ 2,902 millisecondes. Les trames non voisées ont une valeur de fréquence de 0
Hz. De l'ensemble de données complet, environ 44,8 % des trames sont voisées.
La durée totale des fichiers audio dans MDBstemsynth est d'environ 15,56 heures. L' ensemble de données
contient des fréquences approximativement entre 30 Hz et 1220 Hz avec plus de fréquences dans la gamme
inférieure. Pour la distribution des fréquences, voir la figure 2.4.
2.3.2.2 Exécution d'exemples
Comme exemples courants pour les chapitres suivants, deux stems sont sélectionnés : MusicDelta Rock
STEM 02 et MusicDelta InTheHalloftheMountainKing STEM 03. Ils proviennent tous deux de MusicDelta.
MusicDelta était une plateforme d'expérience musicale interactive, mais n'est plus en ligne (était
disponible sur http://musicdelta.com). Il offrait des informations sur les fondamentaux de la musique
17 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
2. FONDAMENTAUX
Figure 2.4 : Répartition des fréquences présentes dans le jeu de données MDBstemsynth.
théorie et histoire de la musique. De plus, il y avait une zone («la scène») avec 40 pièces musicales allant du
classique au pop où certains instruments pouvaient être sélectionnés et écoutés séparément [18].
Les exemples courants sont (métadonnées de [19]):
• MusicDelta Rock STEM 02 : il s'agit du second stem d'une chanson rock jouée par une basse électrique.
Sa durée est de 13,10 secondes. Les fréquences annotées sont comprises entre 40 Hz
et 160Hz.
• MusicDelta InTheHalloftheMountainKing STEM 03 : Il s'agit du troisième stem d'un extrait de « In The
Hall Of The Mountain King » de Peer Gynt composé par Edvard Grieg.
La durée de cette tige est de 17,44 secondes. Il est joué par un alto. Les fréquences annotées
sont compris entre 180 Hz et 480 Hz.
Pour les graphiques des fréquences annotées des deux tiges, voir la figure 2.5. Ces deux exemples ont été
choisis, car ils sont assez courts, ils sont joués par des instruments différents et ont des gammes de
fréquences différentes.
2.3.3 Musique vocale géorgienne (GVM Scherbaum)
La Géorgie est un pays à la frontière de l'Europe et de l'Asie à l'est de la mer Noire et compte environ quatre
millions d'habitants [20]. Les chants traditionnels de Géorgie diffèrent de la musique occidentale par leur
structure tonale [21]. Scherbaum et al. enregistré cinq chants géorgiens qui ont été interprétés
18 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
2.3 JEUX DE DONNÉES
Figure 2.5 : Fréquences annotées pour exécuter des exemples de MDBstemsynth. (a)
MusicDelta Rock STEM 02. (b) MusicDelta InTheHalloftheMountainKing STEM 03.
par trois chanteurs [12, 13]. Pour les enregistrements, un microphone de caméra et un microphone de salle
(enregistreur audio) ont été utilisés. De plus, chaque chanteur a été enregistré avec un microphone de gorge et
un microphone de casque. Les microphones de gorge (également appelés microphones larynx) sont des
microphones qui enregistrent les vibrations du larynx. A cet effet, ils sont directement attachés à la peau de la
gorge des chanteurs. Cela augmente la qualité des enregistrements résultants, car le signal contient moins de
bruit provenant de l'environnement, par exemple d'autres chanteurs. Par conséquent, les enregistrements des
microphones du larynx peuvent être utilisés comme vérité de terrain pour le suivi de la hauteur ou l'estimation de la voix.
L'exemple qui sera utilisé ici est GVM009 BatonebisNanina Tbilisi Mzetamze qui a été enregistré le
18 septembre 2016. Les fichiers audio ont été publiés sous Creative Commons
19 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
2. FONDAMENTAUX
AttributionNonCommercialNoDerivatives 4.0 International License. Les chanteurs sont Nana Valishvili, Nino
Shvelidze et Nino Makharadze. Chaque enregistrement a une durée de 120,5 secondes.
Les enregistrements d'un seul chanteur (casque et micro larynx pour chacun des trois chanteurs) ont un
taux d'échantillonnage de 48000 Hz et les enregistrements de la salle et du micro de la caméra ont un taux
d'échantillonnage de 44100 Hz. Il n'y a pas d'annotations F0 disponibles, mais les estimations F0 des
microphones du larynx peuvent être considérées comme très précises.
2.4 Mesures d'évaluation
Pour l'évaluation des approches d'estimation de hauteur, des mesures d'évaluation sont nécessaires. Dans ce
chapitre, nous présentons des mesures pour évaluer les estimations de hauteur et des mesures pour évaluer la voix
estimations.
2.4.1 Mesures d'estimation de hauteur
Lors de l'exécution de l'estimation de la fréquence fondamentale, le résultat est une trajectoire F0. Si
des annotations de fréquence existent, les fréquences estimées peuvent être comparées aux
fréquences annotées. Pour comparer les fréquences, nous utilisons souvent la différence en cents.
Cent est une unité logarithmique dans les fréquences. Un demiton correspond à 100 cents et une
octave à 1200 cents (12 demitons). La différence entre deux fréquences ω1 et ω2 se calcule comme
suit (cf. [9, Section 1.3.2]) :
ω1
log2 ∙ 1200. (2.17)
ω2
En utilisant la différence entre les fréquences, nous pouvons définir des métriques d'évaluation pour les tâches
d'estimation de hauteur. Souvent, la précision de hauteur brute (RPA) et la précision de chrominance brute (RCA) sont calculées.
Ces métriques ont été introduites pour la première fois dans [22] et ont été utilisées dans le concours de
mélodies du Music Information Retrieval Evaluation Exchange (MIREX) [23] en 2005. Pour le calcul de la
précision brute de hauteur/chroma, un seuil peut être passé comme paramètre . Ce seuil est la tolérance
en cents. Si la différence entre la fréquence de la référence et la fréquence de l'estimation est inférieure à
ce seuil, la fréquence estimée est considérée comme correcte. Le nombre de trames correctes est alors
divisé par le nombre de trames voisées selon la référence.
20 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
2.4 MESURES D'ÉVALUATION
2.4.1.1 Précision de hauteur brute (RPA)
La précision de hauteur brute (RPA) calcule la proportion de trames pour lesquelles l'estimation de
hauteur est correcte (en fonction d'un seuil) par rapport au nombre total de trames voisées dans la
annotation.
η(n)
∆cents(n) := log2 ∙ 1200 . (2.18)
η (n)
Pour le calcul de la précision de hauteur brute, un seuil doit être fixé. Ce seuil détermine l'importance de la différence
en cents entre l'estimation et l'annotation afin que l'estimation soit toujours considérée comme correcte. Par exemple,
si la fréquence annotée est de 440 Hz et la fréquence estimée est de 445 Hz, la différence en cents entre les
fréquences est d'environ 19,56 cents. Si un seuil de 10 centièmes est fixé, la hauteur de cette trame est considérée
comme erronée. Avec un seuil de 25 centimes, le cadre serait compté comme correct. En fonction du seuil N en
centièmes, une fonction seuil Tpitch peut être définie :
La fonction de seuil Tpitch renvoie 1 si l'estimation de hauteur est correcte pour l'instance temporelle n en fonction
du seuil. Étant donné que seules les trames qui sont exprimées dans l'annotation sont prises en compte pour la
précision de la hauteur tonale brute, nous définissons une fonction d'harmonisation :
1 si η(n) =
vη(n) := . (2.20)
0 autre
21 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
2. FONDAMENTAUX
En utilisant la définition de la fonction de seuil et de la fonction de voisement, nous définissons la précision de
hauteur brute Accpitch pour les trajectoires η (estimation) et η (annotation) :
n vη (n) ∙ Tpas(n)
Accpitch := . (2.21)
n vη (n)
Nous additionnons donc sur toutes les instances temporelles n et comptons les trames qui sont voisées et pour lesquelles le
l'estimation est correcte. Ce nombre est divisé par le nombre de trames voisées dans l'annotation.
Un petit exemple pour le calcul de la précision de hauteur brute est présenté dans le tableau 2.1.
indice de temps n1 n2 n3 n4
440Hz 300Hz 220 Hz (non voisé)
(n) η 446Hz 296Hz 442 Hz 300 Hz 23,4
centimes 23,2 centimes 1207,9 centimes
η(n) ∆cents(n)
Tpas(n) avec = 25 cents 1 1 0 0
Tableau 2.1 : Exemple de calcul de la précision de hauteur brute. Si la différence entre la fréquence
annotée et la fréquence estimée est inférieure à 25 cents, l'estimation est considérée comme correcte.
Ici, 2 des 3 trames voisées sont correctes, d'où la précision de hauteur brute est de 2/3.
2.4.1.2 Précision de la chrominance brute (RCA)
Pour la précision de la chrominance brute, seule la chrominance d'une valeur de pitch est prise en compte. Un chroma est
un attribut d'une valeur de hauteur sans tenir compte de l'octave. Il existe douze chromas "B" [9]. Ainsi, par exemple, un ton
noms de douze notes "Do", "Do dièse", ..., fréquence de 440 Hz (A4) et un ton avec avec des valeurs correspondant aux
une fréquence de 880 Hz (A5) ont la même valeur de chrominance . La précision de la chrominance brute se concentre
uniquement sur la chrominance et ne reconnaît donc pas les erreurs d'octave (bonne chrominance prédite, mais mauvaise
octave). Ainsi, la différence entre le RCA et le RPA est une indication de la quantité d'erreurs d'octave.
Quant à la précision de hauteur brute, nous supposons qu'il existe une trajectoire fréquentielle estimée η : [1 : N] →
R { } et une trajectoire fréquentielle annotée (vérité terrain) η pour le signal x. : [1 : N] → R { }
Nous utilisons la fonction ∆cents(n) pour calculer la différence entre la fréquence estimée et la fréquence annotée à
l'instant n de l'Équation 2.18. Avec cette formule, on peut définir une fonction seuil modifiée Tchroma(n) :
0 autre
22 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
2.4 MESURES D'ÉVALUATION
avec mod étant l'opération modulo. Avec l'opération modulo, la différence en cents est mappée sur des valeurs
comprises entre 0 et 1199 (une octave). En utilisant par exemple un seuil de 25 cents, le premier cas de l'équation
s'applique si les fréquences ont une différence de par exemple 1220 cents (1220 mod 1200 = 20). Le deuxième
cas est nécessaire si la différence est par exemple de 1180 centimes (1180 mod 1200 mais 1200 (1180 mod
, 1200) = 20 < ). Avec cela, nous pouvons définir le chroma brut = 1180 >
précision similaire à la précision de hauteur brute
n vη (n) ∙ Tchroma(n)
Accchroma := . (2.23)
n vη (n)
pour les trajectoires fréquentielles η (estimation) et η (annotation).
Pour le même exemple que précédemment, le calcul de la précision de la chrominance brute est présenté dans le
tableau 2.2. La précision de la chrominance brute pour cet exemple est supérieure à la précision de la hauteur brute,
car l'estimation de 442 Hz au lieu de 220 Hz est considérée comme correcte pour la chrominance brute
précision.
indice de temps n1 n2 n3 n4
η (n) 440Hz 300Hz 220Hz (non voisé)
η(n) 446Hz 296Hz 442Hz 300Hz
23,4 cents 23,2 cents 1207,9 cents
∆cents(n)
Tchroma(n) avec = 25 centimes 1 1 1 0
Tableau 2.2 : Exemple de calcul de la précision de la chrominance brute. Si la différence entre la chrominance de
la fréquence annotée et la fréquence estimée est inférieure à 25 cents, l'estimation est considérée comme correcte.
Ici, 3 des 3 trames sonores sont correctes, donc la précision de la chrominance brute est de 1.
2.4.2 Mesures d'estimation de la voix
De nombreux algorithmes d'estimation de hauteur ont également la possibilité de prédire qu'une trame est non voisée.
C'est le cas, lorsqu'il n'y a pas de mélodie présente dans ce cadre. Il existe différentes méthodes courantes pour
traiter les trames non voisées :
• 0 Hertz : si une trame est reconnue comme non voisée par l'algorithme, il renvoie une fréquence
valeur de 0 Hz.
• Fréquence négative : S'il est reconnu qu'une trame est susceptible d'être non voisée, une valeur de fréquence
est calculée qui serait la sortie si la trame est néanmoins voisée. Le négatif de la valeur est la sortie. Donc, si
la trame est prédite comme non voisée, mais si elle était encore voisée, l'estimation serait de 440 Hz, la sortie
serait de 440 Hz.
23 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
2. FONDAMENTAUX
• Confidence : pour chaque trame, une valeur de fréquence estimée est renvoyée. De plus, pour chaque estimation,
une valeur de confiance est calculée. La valeur de confiance indique la probabilité
c'est que la trame est voisée.
Lors de la prédiction si une trame est voisée ou non voisée, le résultat estimé peut être comparé à une
annotation de voisement. Pour cela, des mesures d'estimation de voisement doivent être définies. Par
conséquent, les vrais positifs (TP, estimés exprimés et exprimés dans l'annotation), les vrais négatifs (TN,
estimés non exprimés et non exprimés dans l'annotation), les faux positifs (FP, estimés exprimés mais
non exprimés dans l'annotation) et les faux les négatifs (FN, estimés non exprimés mais exprimés dans
l'annotation) peuvent être comptés. À partir de ces valeurs, deux métriques couramment utilisées peuvent
être dérivées : le rappel et la précision. Le rappel décrit le nombre d'images correctement estimées à partir de celles
qui ont été exprimées dans l'annotation :
TP
Rappel := . (2.24)
TP + FN
La précision décrit le nombre de trames estimées correctement à partir de celles qui ont été estimées comme voisées :
TP
Précision := . (2.25)
TP + PF
Le rappel et la précision peuvent être résumés en Fmesure :
Précision ∙ Rappel F
mesure := 2 ∙ (2.26)
Précision + Rappel.
La mesure F peut être utilisée comme métrique d'évaluation pour l'estimation de la voix. Ses valeurs sont comprises entre
0 (pire estimation) et 1 (estimation parfaite).
24 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
3. ESTIMATION DE LA FRÉQUENCE FONDAMENTALE BASÉE SUR UN MODÈLE
chapitre 3
Fondamentaux basés sur des modèles
Estimation de fréquence
Dans ce chapitre, nous présentons quatre approches basées sur un modèle pour l'estimation de la fréquence fondamentale.
Dans la section 3.1, nous commençons avec YIN, une approche pour l'estimation de F0 qui utilise la méthode
d'autocorrélation. Basé sur YIN, pYIN a été développé comme une version probabiliste de YIN. Il est expliqué dans
la section 3.2. Cette approche calcule plusieurs candidats de hauteur qui sont entrés dans un modèle de Markov
caché pour calculer les estimations de hauteur finales. Une autre approche est SWIPE, présentée dans la section
3.3. Il utilise la distance entre les pics et les vallées d'un signal. SWIPE ainsi que YIN et pYIN sont développés pour
l'estimation F0 pour l'audio monophonique. Pour l'audio polyphonique, Melodia a été développé. Il est expliqué dans
la section 3.4. Melodia est basé sur le calcul d'une fonction de saillance.
3.1 YIN
Une approche pour l'estimation de la fréquence fondamentale est YIN [3], qui est basée sur la méthode de
relation d'autocor. Nous donnons d'abord quelques informations générales sur YIN, puis présentons l' estimation
de voisement de YIN et enfin appliquons YIN aux exemples en cours d'exécution.
3.1.1 Informations générales
YIN [3] est un estimateur de fréquence fondamental qui peut être utilisé pour la parole et la musique.
Il a été développé par de Cheveign´e et Kawahara en 2001/2002. Le nom YIN vient des forces
interconnectées « yin » et « yang » dans la philosophie chinoise. C'est une approche pour
l'estimation de hauteur dans le domaine temporel et est basée sur la méthode d'autocorrélation. L'autocorrélation
25 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
3. ESTIMATION DE LA FRÉQUENCE FONDAMENTALE BASÉE SUR UN MODÈLE
la fonction calcule la similarité d'un signal x : Z → R à luimême à une instance de temps n avec un décalage τ
et une taille de fenêtre N :
n +N
rn(τ ) = x(j)x(j + τ ) (3.1)
j=n
Si la similarité est élevée, le signal est susceptible d'avoir une période τ . Cette fonction a des taux d'erreur élevés, car la
plage de recherche des décalages doit être fixe et la méthode a tendance à choisir un décalage de zéro ou un multiple du
décalage correct. Si l'amplitude augmente dans le signal, cette équation est susceptible de choisir des multiples entiers du
décalage correct, car ils conduisent à une valeur rn plus élevée . Cela peut être évité en utilisant une fonction de différence
dn à la place :
dn(τ ) = rn(0) + rn+τ (0) − 2rn(τ ) (3.2)
Le résultat de cette fonction peut être amélioré en appliquant les étapes de réduction d'erreur suivantes (cf. [3]) :
• Fonction de différence normalisée moyenne cumulée d : Avec cette fonction, une limite inférieure pour
n
la plage de recherche n'est plus nécessaire. Il améliore la fonction de différence 3.2 en renvoyant 1 pour un
décalage de zéro et la moyenne sur des valeurs de décalage plus courtes pour tous les autres décalages.
• Seuil absolu : en définissant un seuil absolu s pour la fonction de différence et en choisissant la plus petite valeur de
retard sous le seuil, les erreurs sousharmoniques peuvent être réduites.
• Interpolation parabolique : une parabole est ajustée à un minimum local de la fonction de différence normalisée
moyenne cumulée. Cela peut éviter les erreurs causées par une combinaison défavorable de la période
d'échantillonnage et de la période du signal (si la période du signal n'est pas un multiple de la période
d'échantillonnage).
• Meilleure estimation locale : lors de la recherche d'une bonne estimation du décalage à l'indice de temps t, une plage de
recherche assez large est sélectionnée en premier. Après avoir trouvé une bonne estimation du décalage, les décalages
dans le voisinage direct sont explorés pour éventuellement identifier un décalage encore plus précis.
Ces étapes aboutissent à une estimation d'un retard. A partir du retard τ la fréquence fondamentale estimée
1 .
peut être calculé : ω =
τ
3.1.2 Voicing en YIN
De plus, les estimations de voisement peuvent être calculées à l'aide de YIN. Une estimation de voisement
indique la probabilité selon YIN qu'une trame soit voisée (contienne une hauteur). YIN calcule plusieurs
valeurs liées au voisement : la puissance fondamentale (estimation de l'énergie de la fondamentale estimée),
la puissance apériodique et la puissance totale. De plus, il y a la mesure apériodique, qui est
26 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
3.1 YIN
proportionnel au rapport de la puissance apériodique à la puissance totale. Pour l'estimation de voisement, la
puissance fondamentale ou la mesure apériodique peut être utilisée. La puissance apériodique et la puissance
totale seules ne sont pas utilisables pour l'estimation de voisement. Ici, nous décidons d'utiliser la mesure apériodique.
Si la mesure apériodique est faible, cela indique qu'il n'y a pas beaucoup d'apériodicité présente et donc la
trame est susceptible d'être voisée. En revanche, si la mesure apériodique est élevée, la trame est susceptible
d'être non voisée. Ainsi, la mesure apériodique peut être utilisée comme indication pour une estimation de voicing.
Cependant, la mesure apériodique n'est pas normalisée à des valeurs comprises entre 0 et 1. Cela rend
une décision claire si une trame est voisée ou non plus compliquée, car il n'est pas clair quelle valeur de
la mesure apériodique utiliser comme limite pour la décision pour voisé/ sourd. En utilisant un exemple
audio du jeu de données de musique vocale géorgienne [12, 13] (voir Section 2.3.3), nous avons examiné
différentes méthodes pour fixer un seuil expérimentalement. Trois méthodes possibles pour fixer un seuil
sont : (1) La moyenne de la mesure apériodique, (2) la médiane de la mesure apériodique et (3) la valeur
max−min .
médiane entre le maximum et le minimum de la mesure apériodique examinée les trois Nous 2
méthodes utilisant l'enregistrement de Batonebis Nanina (micro larynx, chanteur 1) de l'ensemble de
données de musique vocale géorgienne (voir section 2.3.3). Ils conduisent à des seuils de 0,1467
(méthode 1), 0,0034 (méthode 2) et 0,8559 (méthode 3). En regardant les tracés et en écoutant
l'enregistrement, nous avons sélectionné la méthode 1 en utilisant la moyenne de la mesure apériodique.
Selon ce résultat, nous supposons que les trames avec une mesure apériodique inférieure à 0,1467 sont
voisées et les trames avec une mesure apériodique supérieure ou égale à 0,1467 comme non voisées.
Pour un tracé de l'enregistrement avec la puissance fondamentale, la mesure apériodique et le seuil sélectionné, voir Fi
Figure 3.1 : Puissance fondamentale et mesure apériodique de YIN pour un enregistrement du jeu de données
de musique vocale géorgienne [12, 13] (micro larynx, chanteur 1). Comme seuil pour l'estimation de voisement,
nous utilisons la moyenne de la mesure apériodique (0,1467).
27 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
3. ESTIMATION DE LA FRÉQUENCE FONDAMENTALE BASÉE SUR UN MODÈLE
3.1.3 Application de YIN à l'exécution d'exemples
Une implémentation MATLAB de YIN a été fournie par Sebastian Rosenzweig (juillet 2018) et Peter Grosche
(février 2009). Nous avons appliqué YIN aux exemples de course artificielle de la section 2.3.1 et aux exemples
de l'ensemble de données MDBstemsynth [8] introduit dans la section 2.3.2.2. Pour les différents ensembles
de données, nous avons utilisé différentes configurations pour YIN. Pour les exemples de l'ensemble de données
MDBstemsynth (taux d'échantillonnage 44100 Hz), nous avons utilisé une taille de saut de 512 échantillons et
une taille de fenêtre de 2048 échantillons. Le taux d'échantillonnage des exemples artificiels n'est que de 16000
Hz, par conséquent, nous utilisons une taille de saut de 256 échantillons et une taille de fenêtre de 1024
échantillons. La fréquence F0 minimale qui peut être détectée est fixée à 30 Hz et la fréquence F0 maximale est
de 2000 Hz pour tous les exemples en cours d'exécution. Les résultats de l'application de YIN aux exemples en
cours d'exécution sont illustrés à la figure 3.2. Là, les fréquences estimées de YIN et les fréquences annotées sont tracées.
Pour le premier signal artificiel constitué de sinusoïdes, il est remarquable que YIN prédise une fréquence
de 1777,78 Hz pendant la pause. Ceci peut être expliqué par l'algorithme de YIN. Chez YIN, différents
décalages sont examinés et le décalage optimal est choisi. Ces retards sont déterminés par la fréquence
minimale et maximale (paramètre défini par l'utilisateur, ici 30 Hz et 2000 Hz). Le plus petit décalage
possible avec ces paramètres est de 9. Si le plus petit décalage était de 8, le signal serait examiné pour les
oscillations qui se répètent après 8 échantillons. Un tel signal oscillerait à environ 2000 Hz (16000/8)
conduisant à une fréquence qui n'est pas inférieure à la fréquence maximale. En revanche, si YIN démarre
avec un retard de 9, cela se traduit par des fréquences de sortie possibles inférieures ou égales à 1777,78
Hz (16000/9). Ainsi, le décalage le plus bas possible est de 9 et la fréquence la plus élevée pouvant être
détectée est de 1777,78 Hz. Étant donné que le retard le plus bas est choisi, dans ce cas, la sortie est une fréquence de 1777,78
Pour le deuxième exemple artificiel consistant en un signal avec un deuxième partiel, YIN émet la fréquence
inférieure pendant plus de 8 secondes puis passe à la fréquence supérieure.
Ensuite, YIN est appliqué au signal chirp. Le signal s'arrête à une fréquence de 2000 Hz et YIN est configuré pour
examiner les fréquences jusqu'à une limite supérieure de 2000 Hz. Cependant, YIN prédit correctement les
fréquences jusqu'à 1880 Hz, mais certaines erreurs se produisent pour des fréquences plus élevées.
Pour les exemples du jeu de données MDBstemsynth, les estimations sont presque similaires aux annotations.
Dans le deuxième exemple, MusicDelta InTheHalloftheMountainKing STEM 03, il y a une erreur d'octave aux
secondes 6,4 à 6,5 (une octave trop haute, voir la figure 3.3 pour plus de détails). Au début et à la fin de tous les
enregistrements, il y a des estimations de 0 Hz. C'est également le cas au début et à la fin de la pause dans le
premier exemple artificiel.
28 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
3.1 YIN
Figure 3.2 : Fréquences estimées par YIN (bleu) et annotations de fréquence (rouge) pour les exemples en
cours d'exécution. (a) Sinusoïdes. (b) Signal avec harmoniques. (c) Signal
sonore. (d) MusicDelta Rock STEM 02. (e) MusicDelta InTheHalloftheMountainKing STEM 03.
29 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
3. ESTIMATION DE LA FRÉQUENCE FONDAMENTALE BASÉE SUR UN MODÈLE
Figure 3.3 : Fréquences annotées et fréquences estimées à l'aide de YIN pour MusicDelta
InTheHalloftheMountainKing STEM 03 avec une erreur d'octave.
3.2 pYIN
Dans cette section, nous présentons pYIN [4], une approche d'estimation de hauteur basée sur YIN [3]. Nous
commençons par quelques informations générales sur pYIN, expliquons comment pYIN génère des candidats F0 et
comment une trajectoire de hauteur est dérivée à l'aide d'un modèle de Markov caché. Ensuite, nous appliquons pYIN
aux exemples en cours d'exécution.
3.2.1 Informations générales
Dans cette section, nous présentons pYIN [4] (Probabilistic YIN), une approche basée sur le temps pour l'estimation
de la fréquence fondamentale développée par Mauch et Dixon en 2014. Elle est basée sur YIN [3] (Section 3.1) et
étend l'algorithme précédent en fournir plusieurs estimations de hauteur par image. A partir de ces candidats de
hauteur, les fréquences fondamentales estimées peuvent être dérivées à l'aide d'un modèle de Markov caché.
Les premières étapes de pYIN sont les mêmes que celles de YIN. L'algorithme commence par la fonction de différence
définie dans l'équation 3.2. Cette fonction est alors remplacée par la moyenne cumulée normalisée
fonction de différence d . L'étape suivante dans YIN serait de fixer un seuil absolu s et de choisir la plus petite
n
valeur de retard τ en dessous du seuil s : d n (τ ) < s. La période estimée du YIN d'origine après cette étape est
appelée Y (x(n), s) où x : Z → R est le signal. Pour les étapes suivantes, pYIN diffère de YIN. Dans pYIN, certains
candidats F0 sont d'abord générés et à partir de ceuxci, une trajectoire de tangage est calculée à l'aide du suivi de
tangage basé sur HMM.
30 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
3.2 PYIN
3.2.2 Candidats F0
Le seuil s affecte le résultat de YIN, bien que sa valeur soit variable et difficile à choisir correctement.
Au lieu d'utiliser un seuil fixe, pYIN utilise une distribution bêta de paramètres S donnée par P(s(i))
avec des seuils possibles s(1), s(2)..., s(N). Si d n (τ ) est supérieur au seuil pour tous les retards τ
, YIN utiliserait le plus petit d n (τ ). La probabilité que YIN choisisse le minimum absolu est
estimée à l'aide d'une probabilité a priori pa (pouvant être fixée à 0,01). Avec cela, une formule peut
être construite pour calculer pour chaque période possible τ la probabilité que τ soit la période
fondamentale estimée τ0 lors de l'utilisation de YIN. Ceci est calculé en bouclant sur tous les seuils
possibles s(i). Pour chaque seuil possible, la probabilité est augmentée, si YIN choisissait ce retard
étant donné le seuil s(i). Dans ce cas, la probabilité augmente de la probabilité du seuil P(s(i)), si la
fonction différence est inférieure au seuil et sinon la probabilité augmente de pa ∙ P(s(i)) :
où [∙] vaut un si l'expression est vraie et 0 sinon et
1 si d n (τ ) < s(i)
a(s(i), τ ) = . (3.4)
pa sinon
Les pitch candidats sont les fréquences appartenant aux périodes τ qui ont une probabilité positive.
Parmi ces candidats, il y a aussi la sortie du YIN d'origine, donc aucune information n'est perdue en
utilisant pYIN par rapport à YIN. Tous les candidats de hauteur sont utilisés pour un suivi de hauteur
basé sur HMM .
3.2.3 Suivi de hauteur basé sur HMM
Afin de dériver une trajectoire de tangage à partir des candidats F0, un modèle de Markov caché
(HMM) est utilisé. Pour cela, des vecteurs sont dérivés des candidats fréquentiels et de leurs
probabilités de l'étape précédente. Chaque vecteur décrit les probabilités des candidats de hauteur dans une trame
Dans les vecteurs, chaque entrée décrit la probabilité d'une valeur de hauteur correspondant à l'indice de l'entrée
(55 Hz à 880 Hz, intervalles de 10 cents). La dimension de chaque vecteur est ensuite doublée pour refléter
également une indication de voisement/pas de voisement. La probabilité qu'une trame ne soit pas prononcée peut
être calculée à l'aide de l'équation 3.3. À partir de là, les probabilités d'observation peuvent être calculées à l'aide
des résultats de l'étape précédente. Les probabilités de transition devraient alors conduire à des trajectoires de
hauteur avec de petits changements de hauteur et peu de changements de voix. Comparé à YIN, pYIN s'avère
avoir une précision et un rappel plus élevés en raison de la génération de candidats de hauteur.
31 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
3. ESTIMATION DE LA FRÉQUENCE FONDAMENTALE BASÉE SUR UN MODÈLE
3.2.4 Application de pYIN à l'exécution d'exemples
Pour l'évaluation de pYIN, nous avons utilisé le plugin pYIN Vamp pour Sonic Annotator développé par
Mauch et al. [4]. Comme distribution S(i), la distribution Beta avec une moyenne de 0,15 est utilisée. Voir la
figure 3.4 pour une application de pYIN aux exemples en cours. Le résultat de l'application de pYIN à
l'exemple constitué de sinusoïdales montre que les estimations sont similaires aux fréquences annotées. Il
est remarquable que pYIN ait la possibilité de prédire qu'une trame est non voisée. Ainsi, pendant la pause,
il n'y a pas d'estimations de hauteur. L'application de pYIN à l' exemple consistant en un signal avec le
deuxième partiel montre des résultats différents par rapport à YIN.
YIN a prédit la fréquence inférieure pendant plus de 8 secondes alors que pYIN prédit la fréquence inférieure
pendant moins de 6 secondes. Pendant la seconde moitié de l'audio (secondes 5 à 10), l' amplitude de la
seconde harmonique est supérieure à l'amplitude de la fréquence fondamentale.
Les estimations du signal chirp sont très précises.
Pour le premier exemple de l'ensemble de données MDBstemsynth [8], MusicDelta Rock STEM 02, les
estimations sont similaires aux fréquences annotées, sauf pour certaines images où des fréquences trop
élevées sont prédites. Les estimations pour MusicDelta InTheHalloftheMountainKing STEM 03 ne sont pas
très précises. Pour certaines images, les estimations sont similaires aux annotations, mais il existe de
nombreuses erreurs d'octave et également des erreurs avec des distances différentes. La plupart des
estimations erronées sont dues à des estimations trop élevées. Une explication possible est que cet
enregistrement a été réalisé par un alto. Ainsi, le timbre particulier d'un instrument à cordes peut conduire à une mauvaise (trop h
estimations.
3.3 GLISSER
Une autre approche pour l'estimation de la fréquence fondamentale est SWIPE [5, 6] qui est basée sur une forme
d'onde en dents de scie. Dans cette section, nous donnons quelques informations générales sur SWIPE, puis
appliquons une version améliorée de SWIPE, SWIPE aux exemples en cours d'exécution.
3.3.1 Informations générales
SWIPE [5, 6] est l'abréviation de "sawtooth waveform Inspired pitch estimateur" et a été développé par
Arturo Camacho et John G. Harris en 2008. L'idée est que la fréquence fondamentale peut être définie
comme une fréquence dont les harmoniques sont fortement représentées dans le signal par rapport aux
fréquences entre les harmoniques. Ceci peut être examiné en utilisant la transformée de Fourier X d'un
signal x. Donc par exemple |X(k)|, |X(2k)|, |X(3k)| sont élevés, mais les vallées |X(0.5k)|, |X(1.5k)|, |X(2.5k)|
sont faibles si la fréquence Fcoef(k) est une bonne estimation de la fréquence fondamentale. En utilisant
cette idée, la distance moyenne crête à vallée (APVD) pour une fréquence peut être calculée en examinant
32 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
3.3 GLISSER
Figure 3.4 : Fréquences estimées par pYIN (bleu) et annotations de fréquence (rouge) pour les exemples en cours
d'exécution. (a) Sinusoïdes. (b) Signal avec harmoniques. (c) Signal sonore. (d)
MusicDelta Rock STEM 02. (e) MusicDelta InTheHalloftheMountainKing STEM 03.
33 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
3. ESTIMATION DE LA FRÉQUENCE FONDAMENTALE BASÉE SUR UN MODÈLE
la différence entre la transformée de Fourier d'un éventuel pic et la transformée de Fourier des vallées voisines.
Pour étendre cela aux n premiers harmoniques, l'APVD global peut être calculé en faisant la moyenne sur l'APVD
pour les n harmoniques. L'estimation de hauteur est alors la fréquence avec la distance crête à vallée moyenne la
plus élevée.
Cette approche est ensuite encore améliorée par les étapes suivantes (noms tirés de l'article original [5]) :
• Déformation du spectre : au lieu du spectre brut du signal, la racine carrée
du spectre est utilisé.
• Pondération de l'amplitude des harmoniques : Dans la formule originale, toutes les harmoniques ont la même
influence sur l'APVD. L'idée est d'utiliser des poids décroissants à la place. Les meilleurs résultats sont
1 pour une harmonique k.
obtenus pour une décroissance de √ k
• Flou des harmoniques : au lieu de ne considérer que des multiples exacts de la fréquence
(harmoniques exactes), le voisinage des harmoniques a également été examiné.
À côté de SWIPE, les auteurs ont également développé SWIPE , une nouvelle version améliorée de SWIPE. Il
qui empêche l'estimation des sousharmoniques au lieu de la fréquence fondamentale attendue.
3.3.2 Application de SWIPE à l'exécution d'exemples
Une implémentation de SWIPE est disponible sur github [24]. Il a été implémenté par Kyle Gorman et écrit
en C. Ici, nous avons utilisé la version 1.5. Comme plage de fréquence, nous avons sélectionné une
fréquence minimale de 20 Hz et une fréquence maximale de 2500 Hz. La taille du saut est définie sur 0,01 seconde.
Nous avons appliqué SWIPE aux exemples de course artificielle et aux exemples de MDBstemsynth
[8]. Pour les estimations de hauteur résultantes, voir la Figure 3.5. Les estimations pour tous les
exemples sont très précises et similaires aux annotations. Pour le premier exemple constitué de
sinusoïdes pures, SWIPE prédit un nombre indéfini (nan) pendant la pause. Ainsi, aucune valeur
n'est incluse dans le tracé pour la pause. Pour le deuxième exemple artificiel (signal avec deuxième
harmonique), il est remarquable que SWIPE prédise la fréquence inférieure pendant plus de 9
secondes, bien que l'amplitude de la deuxième harmonique soit plus élevée. Pour les autres exemples, les estimations d
SWIPE sont similaires aux annotations.
3.4 Mélodie
Dans cette section, nous présentons Melodia [7]. Il s'agit d'une approche d'estimation F0 qui peut être utilisée pour
la musique polyphonique. Nous commençons par quelques informations générales sur Melodia, puis appliquons
Melodia aux exemples en cours d'exécution.
34 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
3.4 MÉLODIE
Figure 3.5 : Fréquences estimées par SWIPE (bleu) et annotations de fréquence (rouge) pour les exemples en cours
d'exécution. (a) Sinusoïdes. (b) Signal avec harmoniques. (c) Signal sonore. (d)
MusicDelta Rock STEM 02. (e) MusicDelta InTheHalloftheMountainKing STEM 03.
35 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
3. ESTIMATION DE LA FRÉQUENCE FONDAMENTALE BASÉE SUR UN MODÈLE
3.4.1 Informations générales
Melodia [7] a été développé par Salamon et G´omez en 2010. Il s'agit d'une approche d'estimation de hauteur pour la musique
polyphonique. L'objectif est d'identifier les fréquences fondamentales appartenant à la mélodie principale. Pour la musique
avec plusieurs hauteurs simultanées, la mélodie principale est « l' essence » de cette musique lorsqu'elle est entendue en
comparaison » [22]. Salamon et G´omez proposent un système qui identifie d'abord les candidats de hauteur de mélodie, puis
les regroupe en contours de hauteur. L' algorithme se compose des quatre étapes "Extraction de sinusoïde", "Fonction de
saillance", " Création de contour de hauteur" et "Sélection de mélodie":
• Extraction sinusoïdale : Tout d'abord, un filtre est appliqué afin d'améliorer les fréquences qui sont communes aux
hauteurs de mélodie (fréquences de bande médiane). Ensuite, une transformée de Fourier de courte durée est
appliquée. Ensuite, les pics du spectre d'amplitude sont identifiés pour toutes les trames. Pour améliorer la résolution
en fréquence pour les basses fréquences, la fréquence instantanée (voir Section 2.2.2.1) est calculée.
• Calcul de la fonction de saillance : Afin de calculer une fonction de saillance, les fréquences sont affectées à des cases.
Les bacs couvrent les fréquences entre 55 Hertz et 1760 Hertz avec une résolution de fréquence de 10 cents. Pour
chaque trame, une sommation harmonique est appliquée aux pics spectraux.
• Création de contours de hauteur : Tout d'abord, les pics sont examinés plus en détail et le filtrage des
pics est appliqué. Pour cela, les pics sont comparés au pic le plus élevé dans la même trame. Si la
saillance d'un pic est trop faible par rapport à la saillance du pic le plus élevé, le pic est rejeté.
De plus, les pics dont la saillance est trop faible par rapport à tous les autres pics sont filtrés afin de supprimer les pics
au niveau des trames éventuellement non voisées.
Pour le streaming de pointe, la crête la plus élevée est sélectionnée. Le contour de hauteur est
ensuite créé en recherchant à plusieurs reprises un pic voisin à la prochaine tranche de temps avec
une distance d'au plus 80 cents. Pour des intervalles de temps courts, le choix de pics précédemment
supprimés est également possible (saillance masquée). La même stratégie est utilisée pour étendre
la saillance aux images avant le pic maximal initial. Le streaming complet des pics s'arrête si tous les
pics sont traités.
Pour les contours de hauteur créés, certaines caractéristiques sont calculées (par exemple hauteur moyenne, saillance
moyenne de contour, longueur, présence de vibrato,...).
36 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
3.4 MÉLODIE
• Sélection de la mélodie : La première étape de la sélection de la mélodie est la détection de la voix. Ceci est fait en
utilisant la saillance moyenne du contour moyen. Ensuite, les erreurs d'octave et les valeurs aberrantes de hauteur
doivent être évitées en comparant la distance des contours. Si deux contours sont égaux (avec une distance
d'octave), les caractéristiques de l'étape précédente sont utilisées pour choisir un contour. Les contours qui ont
une distance de plus d'une octave par rapport à la hauteur moyenne de la mélodie sont également filtrés (valeurs
aberrantes de la hauteur). Pour récupérer une sortie de mélodie finale, une seule hauteur peut être sélectionnée
par tranche de temps. Si les contours se chevauchent, le contour avec la saillance totale la plus élevée est sélectionné.
3.4.2 Application de Melodia à l'exécution d'exemples
Nous avons évalué les exemples en cours d'exécution à l'aide de Melodia [7]. Comme implémentation,
nous avons utilisé le plugin MELODIA Melody Extraction Vamp pour Sonic Annotator développé par
Salamon et G´omez. Comme type de sortie, nous avons choisi « Melody ». Cela renvoie les fréquences
fondamentales de la mélodie principale en Hertz. Melodia effectue également une détection de voix. Si
une trame est estimée non voisée, une fréquence négative est prédite (négative de la fréquence qui serait
prédite si la trame est néanmoins voisée). Les fréquences fondamentales estimées sont présentées à la
figure 3.7. Pour le premier exemple artificiel (sinusoïdes), Melodia prédit correctement le deuxième et le
troisième ton, qui ont des fréquences de 880 Hz et 659,255 Hz. Pour la première partie (65,406 Hz),
Melodia prédit une fréquence de 880 Hz. Cela pourrait être dû à l'amélioration des fréquences médianes,
donc cette fréquence pourrait être trop basse.
Pour le deuxième exemple artificiel consistant en une tonalité avec une deuxième harmonique
supplémentaire, Melodia prédit que les 1,472 premières secondes seront non voisées. S'il y a une mélodie,
une fréquence de 110 Hz est prédite. La fréquence annotée est de 130,81 Hz. Ensuite, jusqu'à la seconde
8,49, la fréquence correcte (fréquence inférieure) de 130,81 Hz est prédite. À la fin du signal, Melodia
prédit que les trames seront non voisées. Cependant, la fréquence estimée de 130,81 est correcte. Il n'y
a pas de trame pour laquelle la fréquence de la deuxième harmonique (261,62 Hz) est prédite.
Figure 3.6 : Fréquences estimées par Melodia (bleu) et annotations de fréquence (rouge) pour un extrait du signal chirp.
Melodia attribue les fréquences aux bacs avec une résolution de fréquence de 10 cents.
37 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
3. ESTIMATION DE LA FRÉQUENCE FONDAMENTALE BASÉE SUR UN MODÈLE
Le troisième exemple artificiel est le signal chirp (30 Hz à 2000 Hz). Au début, Melodia prédit 0 Hz
puis 220 Hz. Pour les fréquences annotées supérieures à environ 171,6 Hz, les estimations de
fréquence sont correctes. Melodia attribue les fréquences aux cases pour le calcul d'une fonction de
saillance. Ces bacs couvrent les fréquences comprises entre 55 Hz et 1760 Hz. Ainsi, Melodia ne
peut prédire que les fréquences dans cette plage. Pour le signal chirp, nous avons observé que
Melodia prédit les sousharmoniques pour les fréquences supérieures à environ 1729,5 Hz. Les
cases de la fonction de saillance ont une résolution de fréquence de 10 cents. Ainsi, les fréquences
qui peuvent être prédites par Melodia ont une résolution de 10 cents. Cela peut être observé lors de
l'examen plus détaillé des fréquences estimées du signal chirp. Voir Figure 3.6 pour un extrait du signal chirp.
Pour MusicDelta Rock STEM 02, les fréquences estimées ne sont pas très précises. Il y a quelques erreurs
d'octave (l'estimation est trop élevée d'une octave). Cela est probablement dû à la gamme de fréquences de
Melodia. Il y a des fréquences inférieures à 55 Hz dans l'annotation de cet exemple audio, cependant Melodia ne
peut prédire que les fréquences supérieures à 55 Hz. De plus, Melodia améliore les fréquences médianes. Cela
conduit à des erreurs pour les exemples audio qui contiennent des basses fréquences.
Les estimations F0 de Melodia pour MusicDelta InTheHalloftheMountainKing STEM 03 sont similaires aux
annotations avec seulement quelques prédictions erronées.
38 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
3.4 MÉLODIE
Figure 3.7 : Fréquences estimées par Melodia (bleu) et annotations de fréquence (rouge) pour les exemples en cours
d'exécution. (a) Sinusoïdes. (b) Signal avec harmoniques. (c) Signal sonore. (d)
MusicDelta Rock STEM 02. (e) MusicDelta InTheHalloftheMountainKing STEM 03.
39 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
Machine Translated by Google
4. APPROCHE BASÉE SUR DNN
Chapitre 4
Approche basée sur le DNN
Pour l'estimation de fréquence fondamentale, il existe des approches basées sur des modèles et des approches
basées sur DNN . Dans ce chapitre, nous discutons des approches basées sur les réseaux de neurones profonds
(DNN). Premièrement, le CREPE est présenté dans la section 4.1. CREPE est un réseau neuronal convolutif
développé par Kim et al. [1]. Nous donnons quelques informations générales sur CREPE et son architecture
réseau et l'évaluons sur les exemples en cours d'exécution. Ensuite, dans la section 4.2, des approches propres
basées sur CREPE sont introduites. Cela inclut l'augmentation des données, une résolution modifiée pour le
vecteur de sortie, le gel des couches et une structure de réseau modifiée.
4.1 CRÊPE
CREPE est une approche basée sur les données pour l'estimation de la fréquence fondamentale monophonique à
l'aide d'un réseau de neurones à convolution profonde (Deep CNN). L'acronyme CREPE est l'abréviation de "A
Convolutional Representation for Pitch Estimation". Ce réseau a été développé par Jong Wook Kim, Justin Salamon,
Peter Li et Joan Pablo Bello en 2018 [1]. Contrairement aux approches précédentes telles que par exemple SWIPE
[5, 6] (Section 3.3), il calcule la trajectoire F0 directement à partir des données audio en utilisant un réseau de
neurones sans l'application d'étapes de traitement du signal.
Une implémentation du réseau de neurones avec des poids entraînés est disponible en ligne sur github [25].
Cette version de CREPE est entraînée sur six jeux de données audio monophoniques (vocaux et instrumentaux).
Les jeux de données suivants ont été utilisés : MIR1K [26], Bach10 [27], RWCSynth [4, 28], MedleyDB [14], MDB
STEMSynth [8] et NSynth [29].
41 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4. APPROCHE BASÉE SUR DNN
4.1.1 Informations générales
Lorsque l'estimation de hauteur est effectuée à l'aide de CREPE [1], des enregistrements audio sont nécessaires en entrée.
Pour cela, les enregistrements audio peuvent avoir un taux d'échantillonnage arbitraire, mais doivent être fournis au
format de fichier .wav. CREPE peut traiter un ou plusieurs fichiers audio simultanément. Lors de l'évaluation d'un
fichier audio, celuici est d'abord rééchantillonné par le CREPE à l'aide du module python « resampy » [30]. Le réseau
est formé pour les fichiers audio avec un taux d'échantillonnage de 16 000 Hz, de sorte que chaque fichier est
rééchantillonné à ce taux d'échantillonnage. Les fichiers audio rééchantillonnés sont ensuite divisés en courts extraits
également appelés images. Ceci est fait en utilisant une longueur de fenêtre de 1024 échantillons (correspondant à 64 millisecondes).
Les extraits ont une distance de 10 millisecondes (correspondant à 160 échantillons). Cette distance
est appelée taille de saut. La taille du saut peut également être ajustée via un paramètre de CREPE.
Chaque extrait est évalué par le réseau de neurones du CREPE séparément. La sortie du réseau neuronal est un
vecteur à 360 dimensions pour chaque extrait audio. A partir de ce vecteur, la fréquence fondamentale estimée et une
valeur de confiance peuvent être dérivées. Pour la relation entre l'entrée et la sortie du CREPE, voir aussi la Figure
4.1.
Figure 4.1 : Entrée et sortie du réseau de neurones convolutifs du CREPE : L'entrée est un lot de fichiers .wav qui
sont découpés en extraits de 1024 échantillons. À l'aide d'un réseau neuronal, un vecteur à 360 dimensions est
calculé à partir duquel une valeur de pas peut être dérivée.
La sortie du réseau pour un extrait audio est un vecteur
avec des valeurs comprises entre 0 et 1. Une séquence de vecteurs de sortie pour tous les extraits d'un enregistrement audio
42 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4.1 CRÊPE
est également appelée activation du CREPE. Les valeurs d'un vecteur yˆ sont utilisées comme poids pour un
vecteur fixe à 360 dimensions des valeurs en cents
360
ω¢ = (ω¢ (1), ω¢ (2), ..., ω¢ (360)) R . (4.2)
Toutes les valeurs en cents du vecteur sont exprimées en distance en cents par rapport à une fréquence de référence
valeurs dans
par de 10 Hz. Ils ont une différence de 20 centimes. Ils s'étendent sur six octaves avec douze demitons ω¢
octave. En combinaison avec une résolution de 20 centièmes (cinq entrées par demiton), cela donne 6 ∙ 12 ∙ 5 = 360
valeurs. Le vecteur commence par une valeur en cent ω¢ ω¢ (1) = 1997,3794084376191.
Cela correspond à 31,70 Hz (entre B0 et C1). La dernière valeur ω¢ (360) dans le vecteur est 9177,3794084376191.
Cette valeur en cent correspond à environ 2005,50 Hz (entre B6 et C7). Pour les valeurs du vecteur et les valeurs de
fréquence correspondantes, voir également la Figure 4.2. ω¢
Figure 4.2 : Valeurs du vecteur cent ω¢ . CREPE renvoie un vecteur yˆ qui se compose de poids pour contient des
vectorielle ω¢ . Le vecteur à 360 dimensions ω¢ valeurs en cent fixes (distances à une référence la fréquence
de 10 Hz) avec une différence de 20 cents.
Pour dériver le résultat estimé en cents pour un extrait audio donné, le vecteur est multiplié par ω¢ le vecteur de poids ̂y
(vecteur de sortie du réseau) :
:= yˆ|ω¢
R. (4.3)
ω¢,résultat 360
je=1 yˆ(i)
La valeur est le résultat estimé pour un extrait audio donné en centimes. Cette valeur peut être ω¢, résultat converti en
une
valeur de fréquence donnée en Hertz à l'aide de la formule suivante :
ω /1200
ωrésultat := 10 Hz ∙ 2 ¢,résultat . (4.4)
Dans la formule de
ω¢,result, toutes les valeurs du vecteur de sortie yˆ ont une influence sur le résultat.
Cependant, on peut se demander si les valeurs avec une plus grande différence par rapport au pic du vecteur
estimé devraient avoir une influence sur le résultat. Par exemple, s'il existe des pondérations élevées pour des
valeurs en cents d'environ 7 000 cents, il peut toujours y avoir de petites pondérations pour des valeurs en cents inférieures.
Cependant, tous les poids sont pris en compte dans la formule. Cela peut être particulièrement problématique pour un
43 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4. APPROCHE BASÉE SUR DNN
vecteur de poids yˆ avec un pic à un indice très faible ou très élevé et des poids faibles (> 0) dans les
autres entrées. Dans ces cas, la formule peut conduire à une valeur en cents qui est tirée vers un
résultat plus centré. Un autre problème peut survenir si le vecteur de poids contient deux pics à des
positions différentes. Dans ce cas, les deux pics influencent le résultat. Cela conduit à une valeur de
fréquence résultante entre les fréquences des pics. Le résultat est donc une fréquence qui n'est pas
présente dans l' extrait audio. Ces problèmes sont résolus en modifiant la formule de Au lieu de
ω¢,résultat. tous les poids du vecteur de sortie du réseau, seuls les poids sélectionnés influencent le résultat de hauteur.
A cet effet, l'indice de la valeur maximale du vecteur de sortie est déterminé. Pour le résultat de hauteur, nous ne
considérons que les valeurs aux indices autour de cet indice maximum. Cette formule pour le résultat estimé donné
en cents est également utilisée dans le code publié sur github :
m+4
je=m−4
:= yˆ(i) ∙ ω¢ (i)
ω¢,résultat m+4 m = argmax i yˆ(i). (4.5)
je=m−4 yˆ(i)
La valeur en cents estimée peut ensuite être convertie en une estimation de fréquence fondamentale en Hertz à l'aide de l'équation 4.4. Une
illustration des deux méthodes pour le calcul de l'estimation résultante en cents est présentée à la figure 4.3. La figure 4.3a décrit la méthode
utilisant l'équation 4.3. Il ω¢,résultat
Figure 4.3 : Différentes méthodes pour le calcul d'une valeur en cent à partir du vecteur de sortie de CREPE. (a)
Méthode utilisant le vecteur complet ̂y (à gauche) et le vecteur complet ω¢ (à droite). (b) Méthode
utilisant
uniquement des valeurs sélectionnées parmi le vecteur ̂y (à gauche) et le vecteur ω¢ (à droite).
utilise le vecteur complet yˆ (à gauche) et le vecteur complet ω¢ (à droite). A chaque position, les valeurs
44 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4.1 CRÊPE
des deux vecteurs sont multipliés : 0,0 ∙ 1997,3 + 0,1 ∙ 2017,3 + ... + 0,2 ∙ 9157,3 + 0,0 ∙ 91773.
Cette valeur est ensuite divisée par la somme de toutes les valeurs du vecteur yˆ : 0,0 + 0,1 + ... + 0,2 + 0,1.
Le résultat de la division est la valeur en cents résultante pour un extrait audio.
La figure 4.3b montre la méthode de l'équation 4.5. Il utilise uniquement des valeurs sélectionnées parmi le
vecteur yˆ (à gauche) et le vecteur ω¢ (à droite). Le maximum du vecteur yˆ est déterminé (ici : 0,99, entrée
orange). Pour le calcul, seules les valeurs aux indices avec une distance d'au plus 4 sont considérées
(entrées jaunes). Le produit scalaire de ces valeurs est calculé : 0,5 ∙ 4167,3 + 0,6 ∙ 4187,3 + ... + 0,3 ∙
4307,3 + 0,2 ∙ 4327,3. Cette valeur est ensuite divisée par la somme des 9 valeurs marquées dans le vecteur
yˆ : 0,5 + 0,6 + ... + 0,3 + 0,2, ce qui donne la valeur en cents estimée de CREPE.
Ainsi, l'équation 4.5 se concentre uniquement sur une zone autour d'un poids élevé. Cette méthode peut être
considérée comme plus raisonnable, car les poids avec une distance plus élevée au pic n'influencent pas le résultat.
En présence par exemple de deux pics, l'équation 4.3 précédente, qui utilise les vecteurs complets, aboutit
à une estimation de hauteur entre les hauteurs appartenant aux pics. Avec la méthode de l'équation 4.5,
un pic est sélectionné et la valeur de fréquence résultante n'est influencée que par ce pic (et les valeurs
voisines). Donc, s'il y a deux hauteurs dans un extrait audio, une est choisie pour l'estimation de hauteur.
Cependant, exactement quatre valeurs avant et après le pic sont considérées.
Aussi différentes valeurs pour la taille du voisinage sont possibles et la sélection de ce nombre ne peut être
justifiée. Un autre problème ouvert est le choix d'une résolution centime appropriée. En CREPE, les valeurs
en ont une différence de 20 centimes. Des valeurs différentes seraient également possibles. ω¢ Cependant,
cette résolution permet également l'estimation des hauteurs avec une résolution plus fine que 20 centièmes.
Par exemple, si un vecteur a des poids élevés à yˆ(200) et yˆ(201), les deux poids sont multipliés par les
valeurs en cents correspondantes
à ω¢ (200) et ω¢ (201). Ceci conduit à une estimation de fréquence entre
ω¢ (200) et ω¢ (201).
En résumé, il existe deux méthodes pour l'interprétation du vecteur de sortie yˆ. Une possibilité est de
considérer le vecteur complet pour le calcul d'une estimation de hauteur, une autre possibilité est de se
concentrer sur une zone autour du pic du vecteur. La deuxième méthode telle que décrite dans l'équation
4.5 peut être considérée comme plus précise. Cependant, le nombre de valeurs voisines autour du pic et la
résolution du vecteur de sortie pourraient être sélectionnés différemment.
En plus d'une estimation de la fréquence fondamentale, une valeur de confiance peut être dérivée.
Ceci est fait en utilisant le vecteur de sortie du réseau yˆ. La valeur de confiance est la valeur maximale dans le
vecteur yˆ. Étant donné que toutes les valeurs de ce vecteur sont comprises entre 0 et 1, la confiance se situe
également dans cette plage. Une valeur de confiance plus élevée correspond à une probabilité prédite plus élevée
que la trame audio soit voisée. Dans la mise en œuvre du CREPE, un seuil de 0,5 a été fixé. Si la confiance est
inférieure à 0,5, la trame correspondante est prédite comme non voisée. Ce seuil pourrait également être évalué
et fixé à une autre valeur. L'estimation de voisement en combinaison avec l' estimation de hauteur pour une
séquence d'instances temporelles est le résultat de CREPE évalué sur un fichier audio.
45 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4. APPROCHE BASÉE SUR DNN
Ces résultats sont résumés dans un fichier .csv pour chaque fichier d'entrée audio avec les colonnes suivantes :
• horodatage : heure à laquelle une valeur de fréquence a été estimée en secondes.
• fréquence : valeur de fréquence estimée en Hertz.
• confiance : valeur de confiance décrivant la probabilité que la trame donnée soit voisée.
Pour l'évaluation des fichiers audio avec CREPE, certains paramètres supplémentaires peuvent être définis par l'utilisateur :
• Taille de pas : lors de la division des fichiers audio en sections traitées, une taille de saut est nécessaire.
La taille de saut par défaut est de 10 millisecondes.
• Capacité du modèle : il existe cinq tailles de modèle différentes pour le réseau neuronal : minuscule, petit, moyen,
grand et complet. Les modèles diffèrent par leur nombre de filtres. La capacité du modèle par défaut est "pleine".
• Viterbi : Viterbi permet de lisser temporellement la courbe de hauteur résultante. Il n'y a plus
paramètres pour Viterbi, il peut être défini sur vrai ou faux (par défaut : défini sur faux).
• Paramètres de traçage/stockage :
– Enregistrer l'activation : enregistre la matrice d'activation des sorties (résultat de la dernière
CRÊPE).
– Save Plot : enregistre le tracé de la matrice d'activation (un tracé coloré de l'activation
les valeurs peuvent être stockées).
– Plot Voicing : Cette option n'est disponible que si le tracé de la matrice d'activation est enregistré. Ensuite, ce
paramètre peut être utilisé pour inclure un tracé pour la détection d'activité de voisement.
Chacun des cinq modèles différents se compose de son architecture de réseau (définie par les couches, les tailles
de filtre et le nombre de filtres) et les poids formés pour les couches. Dans ce qui suit, nous nous référons aux
modèles comme Mtiny, Msmall, Mmedium, Mlarge et Mfull. Ici, nous définissons un modèle comme étant un tuple
de l'architecture et des poids, par exemple
Mtiny := (Mtiny,architecture, Mtiny,poids). (4.6)
Les différences entre les modèles sont expliquées plus en détail à la section 4.1.2.
46 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4.1 CRÊPE
4.1.2 Architecture réseau
CREPE se compose de cinq modèles différents avec des capacités différentes : Mtiny, Msmall, Mmedium, Mlarge et Mfull. Cependant, la structure
générale de l'architecture est similaire pour tous les modèles.
CREPE reçoit des fichiers audio en entrée, qui sont rééchantillonnés à une fréquence d'échantillonnage de 16000 Hz.
Des extraits de 1024 échantillons des enregistrements audio sont utilisés comme entrée pour le réseau de neurones.
Par conséquent, le réseau de neurones de CREPE commence par une couche d'entrée avec une forme de 1024.
Puis (après une couche de remodelage), un bloc convolutif est répété six fois. Chaque bloc convolutif se compose
d'une couche Convolution (Conv2D), d'une couche de normalisation par lots [31], d'une couche Max Pooling
(MaxPooling2D) et d'une couche Dropout [32]. Le résultat du dernier bloc convolutif (après Permutation pour changer
certaines dimensions) est aplati. La dernière couche est alors une couche entièrement connectée (dense) qui conduit
à une sortie à 360 dimensions. Tous les modèles, indépendamment de la capacité du modèle, utilisent les mêmes
tailles de filtre pour les couches convolutionnelles. Les tailles de filtre sont indiquées dans le tableau 4.1. Le nombre
de filtres des couches convolutives dépend de la position de la couche dans le réseau et de la capacité du modèle
choisi. Cependant, le rapport du nombre de filtres est le même pour chaque capacité de modèle. Pour le nombre de
filtres, voir Tableau 4.2. La structure du modèle complet Mfull et de ses couches est représentée sur la Figure 4.4
(figure similaire à [1]). Pour obtenir un aperçu des dimensions et du nombre de paramètres pour chaque couche
dans Mfull, voir la Figure 4.5. Le nombre de paramètres pour une couche convolutive dépend du nombre de filtres,
des tailles de filtre (y compris le nombre de canaux du filtre) et du nombre de biais de filtre (chaque filtre a une valeur
de biais). Il peut donc être calculé comme
#filters ∙ filterize ∙ #channels + #biases. (4.7)
Par exemple, le nombre de paramètres de la troisième couche convolutionnelle (conv3) de Mfull est 128 ∙ 64 ∙ 128 +
128 = 1048704. Le nombre total de paramètres entraînables du modèle complet est de 22 239 976 (figure 4.5).
indice de la taille du filtre de la couche convolutive
1 512
2 64
3 64
4 64
5 64
6 64
Tableau 4.1 : Tailles des filtres des couches convolutives en fonction de l'indice du bloc convolutif.
En tant que fonctions d'activation, Kim et al. utilisé l'unité linéaire rectifiée (ReLU) pour les couches de
convolution et un sigmoïde pour la couche entièrement connectée. Les auteurs ont implémenté l'architecture
du modèle dans Keras [33]. Les réseaux de neurones sont formés à l'aide d'extraits audio annotés. Ainsi, l'entrée pour le
47 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4. APPROCHE BASÉE SUR DNN
indice de couche convolutive Mtiny Msmall Mmedium Mlarge Mfull 512 1024
1 128 256 768
2 16 32 64 96 128
3 16 32 64 96 128
4 16 32 64 96 128
5 32 64 128 192 256
6 64 128 256 384 512
Tableau 4.2 : Nombre de filtres en fonction de l'indice du bloc convolutif et de la capacité du
modèle choisi.
Figure 4.4 : Architecture du modèle original CREPE Mfull (modèle capacité « full »).
formation sont des extraits audio avec 1024 échantillons. De plus, pour chaque extrait audio, le résultat de
fréquence attendu en cents R est connu. À partir de là, la sortie attendue à 360 dimensions ω¢,correcte
vecteur
peut être dérivé. Ce vecteur est nécessaire au processus d'apprentissage. Il se compose de valeurs
élevées à des positions proches des poids pour les valeurs en cents correctes (flou gaussien avec
un écart type de 25 cents):
2
(ω¢ (i) − ω¢,juste) −
ycorrect(i) = exp 2 ∙ 252
(4.9)
.
Donc si la fréquence correcte n'a qu'une petite distance avec la fréquence correspondant à l'indice i du
vecteur ycorrect, la valeur est proche de exp(0) = 1. Pour les indices correspondant à une fréquence avec
une grande distance à la fréquence correcte, cela la valeur est proche de 0.
48 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4.1 CRÊPE
Figure 4.5 : Résumé du modèle de Keras pour le modèle complet Mfull.
49 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4. APPROCHE BASÉE SUR DNN
Afin d'entraîner le réseau, la sortie du réseau yˆ (Équation 4.1) est comparée au vecteur de sortie correct ycorrect
(Équation 4.8). Pour cela, les auteurs ont utilisé la perte d'entropie croisée binaire :
360
Cette fonction de perte est optimisée à l'aide de l'optimiseur ADAM [34] avec un taux d'apprentissage de 0,0002.
4.1.3 Évaluation sur des exemples d'exécution
Pour l'évaluation des approches d'estimation de hauteur, certains signaux artificiels ont été introduits dans la section
2.3.1. Dans la section 2.3.2.2, nous avons introduit quelques exemples audio supplémentaires à partir de l' ensemble
de données de synthétiseur stem MDB [8]. Dans cette section, nous évaluons CREPE [1] sur ces exemples audio. Pour
toutes les évaluations de cette section, nous utilisons le petit modèle de CREPE Mtiny.
4.1.3.1 Sinusoïdes
Le premier signal artificiel est constitué de sinusoïdes pures. Il commence par un C2 (65,4064 Hz), puis
continue par un A5 (880,0 Hz), puis une pause et enfin un E5 (659,255 Hz). Toutes les tonalités durent 3
secondes chacune et la pause dure 2 secondes. Nous avons créé le signal avec une fréquence
d'échantillonnage de 16000 Hz afin qu'aucun rééchantillonnage pour CREPE ne soit nécessaire. Sur ce signal,
nous avons appliqué CREPE (avec le modèle Mtiny) avec la taille de saut standard de 10 millisecondes. Les
valeurs de fréquence fondamentale estimées sont présentées à la Figure 4.6a. Les estimations du CREPE
sont similaires aux annotations de fréquence. Ce n'est qu'à la seconde 8, à la fin de la pause, que des fréquences trop hautes sont
La raison peut être qu'à ce moment, l'instance CREPE reçoit un extrait audio composé de la pause
et de la nouvelle tonalité. Pendant la pause, CREPE prédit une fréquence de 0 Hz. Si le réseau
neuronal convolutif de CREPE reçoit un vecteur nul en entrée, la sortie est un vecteur de nombres
indéfinis (pas un nombre, nan). Dans les cas où de telles valeurs font partie des prédictions de
fréquence, une fréquence de 0 Hz est renvoyée à la place. Donc CREPE renvoie 0 Hz pendant la pause.
4.1.3.2 Signal avec harmoniques
Les enregistrements musicaux qui ne sont pas créés artificiellement sont constitués de fréquences fondamentales et d'harmoniques.
Afin d'examiner les estimations de CREPE en présence d'harmoniques, nous avons appliqué CREPE à un signal à une harmonique.
L'amplitude de la fréquence fondamentale (C3) augmente linéairement de 0 à 1 tandis que l'amplitude du deuxième partiel (C4)
diminue de 1 à 0. Comme CREPE a été formé avec des données comprenant des harmoniques, il est censé prédire correctement
la fréquence fondamentale.
50 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4.1 CRÊPE
Figure 4.6 : Fréquences estimées par le petit modèle Mtiny de CREPE (bleu) et annotations de fréquence (rouge) pour
les exemples en cours d'exécution. (a) Sinusoïdes. (b) Signal avec harmoniques. (c) Signal sonore . (d) MusicDelta
Rock STEM 02. (e) MusicDelta
InTheHalloftheMountainKing STEM 03.
51 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4. APPROCHE BASÉE SUR DNN
fréquence malgré la présence d'harmoniques. L'objectif était donc d'examiner à quelle hauteur l' amplitude du
deuxième partiel peut être comparée à l'amplitude du premier partiel afin que la fréquence fondamentale
correcte soit prédite par CREPE. Tout d'abord, nous avons appliqué CREPE (Mtiny) avec une taille de saut de
10 millisecondes au signal (taux d'échantillonnage de 16000 Hz). La figure 4.6b montre les fréquences
estimées de CREPE et les fréquences annotées. On peut reconnaître que CREPE a prédit la fréquence
inférieure (C3) pendant plus de 8 secondes, puis a prédit la fréquence supérieure. A partir de la cinquième
seconde, l'amplitude du Do4 est supérieure à l' amplitude du Do3. Cependant, la fréquence inférieure a été
prévue. Pour approfondir cela, nous avons analysé les vecteurs de sortie de CREPE (activations) et les
valeurs de confiance. La figure 4.7a montre les vecteurs renvoyés par le réseau de neurones. Chaque colonne
de la figure correspond à un vecteur de sortie à 360 dimensions yˆ. Les couleurs dans une colonne indiquent
les valeurs des entrées dans le vecteur. Comme les entrées du vecteur de sortie correspondent à des
fréquences, elles sont affichées en Hertz. Il est remarquable que dans la première moitié, il y avait non
seulement des valeurs élevées pour une fréquence de 130,81 Hz correspondant à un Do3, mais aussi pour la
sousharmonique de 65,406 Hz correspondant à un Do2. Cela indique que CREPE a appris à reconnaître une
certaine fréquence en recherchant également les seconds partiels. Ainsi, la présence du C3 augmentait la
probabilité de présence d'un C2.
Les estimations de fréquence dérivées sont présentées dans la Figure 4.7b. La prédiction de la fréquence
inférieure aux secondes 5 à 8 (la fréquence fondamentale a une amplitude inférieure à l'harmonique) indique
également que le CREPE a appris à prédire la fréquence fondamentale en présence d'harmoniques. Pour une
amplitude plus élevée du deuxième partiel, les estimations sont passées à la fréquence plus élevée. À ces
momentslà, le CREPE a prédit des valeurs de confiance plus faibles. Pour un graphique des valeurs de
confiance de CREPE, voir la figure 4.7c. Lorsque l'amplitude du second partiel converge vers 1, le
les valeurs de confiance ont augmenté.
Ainsi CREPE utilise également le second partiel d'un signal pour la prédiction de la fréquence fondamentale et la
fréquence estimée ne correspond pas toujours à la fréquence d' amplitude la plus élevée s'il s'agit du second partiel.
4.1.3.3 Signal sonore
Le dernier exemple artificiel est un signal chirp. CREPE est conçu pour prédire correctement les
fréquences entre 31,70 Hz et 2005,50 Hz. Le signal chirp couvre des fréquences comprises entre 30 Hz et 2000 Hz.
Les fréquences fondamentales estimées de CREPE sont présentées à la Figure 4.6b. Les
prédictions du CREPE sont similaires aux fréquences attendues. Au début du signal, il y a de
petites déviations, car la gamme de fréquences de CREPE commence à une fréquence de 31,70 Hz au lieu de
30 Hz.
De plus, nous avons examiné les estimations de hauteur pour CREPE pour les fréquences audessus de la
limite supérieure de CREPE. Ainsi, un autre signal chirp est créé qui commence à 30 Hz et se termine à 2500 Hz
52 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4.1 CRÊPE
Figure 4.7 : Sortie de CREPE (Mtiny) appliqué à un signal à 130,81 Hz (C3, amplitude linéairement décroissante) et
261,63 Hz (C4, amplitude linéairement croissante). (a) Activation (sortie du réseau du CREPE). (b) Fréquences
fondamentales prédites de CREPE. (c) Confiance prédite du CREPE.
(> 2005,50 Hz) avec des fréquences croissantes linéairement. La durée du signal est de 60 secondes. Nous
avons créé le signal avec une fréquence d'échantillonnage de 16000 Hz. Pour les estimations de hauteur
résultantes de CREPE, voir la figure 4.8. Nous avons appliqué CREPE en utilisant le petit modèle Mtiny et une
taille de saut de 10 millisecondes. La figure montre que les fréquences estimées et attendues sont similaires
jusqu'à une fréquence autour de 2000 Hz. Pour les fréquences plus élevées, CREPE a plutôt prédit les sous
harmoniques de la fréquence correcte (sousharmoniques tracées en gris). Ceci est également raisonnable,
car le vecteur ne contient pas de valeurs pour des fréquences plus élevées, donc la limite supérieure pour un
possible ω¢
fréquences est fixe en raison de ce vecteur.
De plus, nous avons créé un chirp avec une gamme de fréquences plus petite. Le but était d'examiner
en détail la similarité des fréquences prévues et estimées. Ici, nous utilisons un signal chirp avec des
fréquences comprises entre 220 Hz (A3) et 440 Hz (A4). Le signal a une durée de 10 secondes et une
fréquence d'échantillonnage de 16000 Hz. Nous avons appliqué CREPE à ce signal en utilisant Mtiny
et une taille de saut de 10 millisecondes pour obtenir des estimations de fréquence. Ces estimations
ont ensuite été comparées aux fréquences attendues. Les différences sont tracées à la figure 4.9. Les
lignes verticales du tracé indiquent la position des tons naturels entre A3 et A4. La fonction de différence indique
53 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4. APPROCHE BASÉE SUR DNN
Figure 4.8 : Signal chirp linéaire (30 Hz à 2500 Hz, durée : 60 secondes) estimé avec CREPE (Mtiny). Les fréquences
annotées sont représentées en rouge, les fréquences estimées par le CREPE en bleu et les sousharmoniques des
fréquences annotées en gris.
que les estimations sont plus exactes pour les notes de musique par rapport aux fréquences qui ne peuvent pas être
attribuées à une note de musique. Étant donné que le CREPE n'a pas été formé sur les valeurs de fréquence mais sur
les enregistrements musicaux, on peut supposer que les fréquences appartenant aux notes de musique sont apparues
plus souvent que les fréquences entre les notes de musique. Ainsi, la distribution des fréquences dans le jeu de
données d'apprentissage peut être la raison d'une plus grande similitude des estimations et des annotations aux
fréquences appartenant aux notes de musique.
4.1.3.4 Exemples tirés de l'ensemble de données MDBstemsynth
Pour les deux exemples en cours d'exécution de l'ensemble de données MDBstemsynth [8],
MusicDelta Rock STEM 02 et MusicDelta InTheHalloftheMountainKing STEM 03, nous avons
appliqué CREPE en utilisant le petit modèle Mtiny et une taille de saut de 10 millisecondes. Pour les
valeurs de fréquence fondamentale estimées, voir Figure 4.6d et Figure 4.6e. En résumé, on peut
dire que les estimations sont similaires aux fréquences annotées. Pour MusicDelta Rock STEM 02,
il y a deux valeurs aberrantes aux secondes 4,34 et 4,35 (fréquences trop basses), une valeur
aberrante à la seconde 9,26 (fréquence trop élevée) et une estimation erronée à la fin de
l'enregistrement (fréquence trop basse). Pour MusicDelta InTheHalloftheMountainKing STEM 03,
les estimations sont également proches des fréquences annotées. Au début de l'exemple audio, il y a une estimation er
54 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4.2 APPROCHES PROPRES
Figure 4.9 : CREPE a été appliqué à un signal chirp (220 Hz à 440 Hz, durée : 10 secondes). L' estimation
résultante a été comparée aux fréquences correctes et la distance en cents est tracée dans le temps. Les
lignes vertes verticales indiquent les tonalités : A3, B3, C4, D4, E4, F4, G4, A4.
haute fréquence) et de la seconde 6,31 à la seconde 6,49, il y a une erreur d'octave (fréquences estimées
une octave audessus des fréquences annotées).
En résumé, les estimations de CREPE utilisant la petite structure du modèle présentent une grande similarité
avec les fréquences annotées.
4.2 Approches propres
Dans ce qui suit, nous présentons quelques approches propres pour les modifications du réseau de neurones.
Ils peuvent aider à améliorer la formation du réseau. Le réseau peut également être examiné plus en détail.
Tout d'abord, nous avons utilisé l'augmentation des données afin d'augmenter la quantité de données d'entraînement disponibles.
Ensuite, l'influence de la dimension de la dernière couche du réseau a été examinée. Ensuite, nous discutons
de l'influence de la première couche du réseau et des poids appropriés fixés. Enfin, nous proposons une
structure de réseau modifiée avec différentes tailles de filtres et un nombre inférieur de filtres.
4.2.1 Augmentation des données
Lors de la formation d'un réseau, un ensemble de données représentatif est nécessaire. Ceci est dans certains cas difficile à
obtenir. Pour les tâches d'estimation de hauteur, les enregistrements musicaux doivent être représentatifs en ce qui concerne
55 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4. APPROCHE BASÉE SUR DNN
instruments, genre musical et distribution de hauteur. Lors de l'utilisation de l'ensemble de données MDBstemsynth [8],
une certaine variété d'instruments et de genre est assurée. Cependant, il n'y a pas de fréquences supérieures à 1200
Hz présentes dans cet ensemble de données et même les fréquences supérieures à 800 Hz sont plutôt rares. Le réseau
de neurones du CREPE doit être entraîné pour des fréquences jusqu'à 2005,50 Hz. Ainsi, l'utilisation de l'ensemble de
données MDBstemsynth pour un entraînement commençant par des poids aléatoires n'est pas une approche prometteuse.
Afin d'inclure également des fréquences plus élevées dans l'ensemble de données, l'augmentation des données peut être utilisée.
Ici, au lieu d'utiliser l'ensemble de données d'origine pour entraîner le réseau, la hauteur de certains fichiers audio
a été modifiée. Pour cela, un décalage aléatoire entre 0 cents (pas de décalage) et 800 cents a été choisi pour
chaque fichier audio. La limite inférieure de 0 cent a été choisie pour préserver les basses fréquences dans
l'ensemble de données. Nous avons fixé la limite supérieure à 800 cents, car il faut éviter que des fréquences
supérieures à la fréquence maximale de CREPE se produisent dans l'ensemble de données. Si une fréquence de
1200 Hz (fréquence maximale approximative dans l'ensemble de données d'origine) est décalée par le décalage
maximal de 800 cents, cela conduit à une fréquence d'environ 1905 Hz qui est toujours dans la gamme de
fréquences couverte par CREPE. Le pitch shifting a été réalisé en utilisant le package python LibROSA [35, 36, 37]
(librosa.effects.pitch shift). La distribution des pas des trames d'annotation est illustrée à la Figure 4.10. Par rapport
à la distribution d'origine, la proportion de basses fréquences a diminué et la proportion de hautes fréquences a
augmenté en raison du changement de hauteur. Cependant, il y a encore plus de trames pour les graves que pour
les aigus. Un changement de hauteur similaire a également été appliqué à l'ensemble de validation. Nous avons
ensuite recyclé le réseau (architecture de Mtiny) en commençant par des poids aléatoires en utilisant l'ensemble
d'entraînement et de validation par décalage de hauteur. Cela devrait conduire à une meilleure performance du
réseau pour les pas plus élevés par rapport à un réseau formé sur l' ensemble de données d'origine. Le modèle
entraîné à l'aide du pitch shifting est appelé Mshift.
4.2.2 Résolution vectorielle de sortie
La dernière couche de CREPE est une couche entièrement connectée. La sortie de cette couche est un vecteur yˆ
à 360 dimensions avec des valeurs comprises entre 0 et 1 qui sont utilisées comme poids pour un ω¢ à 360
vecteur dimensions fixe . Le vecteur contient des valeurs en cents avec une différence de 20 cents, voir Section
4.1.1 pour ω¢ plus de détails. Lors de la formation d'un réseau et de son évaluation, nous avons découvert que les
précisions de hauteur brute en particulier pour un seuil de 10 cents sont inférieures aux résultats rapportés par Kim et al. [1].
L'idée était de partir de l'architecture du minuscule modèle Mtiny de taille CREPE de la couche , mais change le
de sortie. Ainsi, la dernière couche entièrement connectée avec une dimension de sortie de 360 a été remplacée
par une couche entièrement connectée avec une dimension de sortie de 720. Ce changement entraîne également
une modification du vecteur défini dans la section 4.1.1. C'est maintenant un vecteur ω¢
720 .
ω¢,720 = (ω¢,720(1), ω¢,720(2), ..., ω¢,720(720)) R (4.11)
56 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4.2 APPROCHES PROPRES
Figure 4.10 : Répartition des annotations de fréquence dans l'ensemble d'apprentissage. (a) Avant le changement de hauteur. (b)
Après changement de hauteur.
La valeur la plus basse et la plus haute sont les mêmes que dans la version précédente :
ω¢,720(1) = ω¢ (1) et ω¢,720(720) = ω¢ (360). (4.12)
Mais avec une tessiture de 6 octaves (la même qu'avant), douze demitons par octave et 10 valeurs par
demiton (6 ∙ 12 ∙ 10 = 720), on obtient une résolution fréquentielle de 10 centièmes au lieu de 20 centièmes.
Pour le calcul de l'estimation de fréquence finale, nous utilisons la même formule que celle définie dans
57 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4. APPROCHE BASÉE SUR DNN
Équation 4.5. On identifie donc l'indice de la valeur maximale dans le vecteur de sortie et ω¢,720 ne
considère que les valeurs dans un voisinage de 4 avant et après cet indice pour le calcul.
Cependant, ces valeurs correspondent à des fréquences ± (4 ∙ 10) cents en raison de la résolution accrue.
En utilisant la résolution d'origine, elles correspondaient aux fréquences ±(4 ∙ 20) cents. Le réseau formé
avec une dimension augmentée de la dernière couche est appelé Mdim720.
4.2.3 Gel des couches
Une version préentraînée de CREPE est publiée avec les poids de filtre pour toutes les capacités du
modèle. Pour étudier comment les données d'entrée sont traitées à travers le réseau, nous avons examiné
les poids des filtres. Ici, l'accent est mis sur les poids de la première couche convolutive, car cela donne un
aperçu de la façon dont l'entrée est transformée avant d'être évaluée plus avant dans le réseau. La première
couche de la petite structure du modèle comporte 128 couches chacune d'une dimension de 512. Certains
filtres typiques sont illustrés à la Figure 4.11. On peut reconnaître que certaines des couches ont un cycle périodique
Figure 4.11 : Exemples de filtres de la première couche convolutive de la version préentraînée de CREPE (Mtiny).
structure, par exemple Figure 4.11a, Figure 4.11b et Figure 4.11c (avec une fréquence croissante). Cela
signifie que les filtres produisent des valeurs élevées s'ils sont appliqués à un tableau qui a des valeurs
élevées avec la même distance que les pics de la couche. Ainsi, un filtre périodique mesure la similarité
entre la structure périodique du signal et sa propre structure périodique. Cela indique que la fonctionnalité
de la première couche est similaire à une analyse de Fourier qui compare également un signal avec des
sinusoïdes de fréquences différentes. En plus des filtres périodiques, il existe également des filtres avec un
pic (par exemple, le filtre illustré à la Figure 4.11d) ou plusieurs pics non périodiques (par exemple, le filtre
illustré à la Figure 4.11e). De plus, il existe des filtres qui ont une autre structure, par exemple le filtre illustré
à la Figure 4.11f. Le rôle de ces filtres pour le réseau est encore ouvert.
Étant donné que les filtres présentent une certaine périodicité, nous les avons examinés plus en détail en
appliquant une transformation de Fourier rapide (algorithme rapide pour le calcul de la DFT) à chaque filtre.
Ensuite, la valeur absolue de chaque filtre transformé a été calculée. Les vecteurs résultants ont ensuite été
triés par ordre croissant selon l'indice de leur valeur maximale. Le résultat est illustré à la figure 4.12. Sur
cette figure, il y a une courbe exponentielle visible commençant à 0 Hertz et se terminant à environ 2000
Hertz. La valeur maximale pour chaque filtre (chaque colonne) indique sur quelles fréquences le
58 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4.2 APPROCHES PROPRES
Figure 4.12 : Aux filtres de la première couche du réseau original Mtiny, une transformée de Fourier
a été appliquée. Chaque colonne correspond à un filtre. Les colonnes sont triées par ordre croissant
selon les indices des valeurs maximales. Les flèches orange indiquent les positions des filtres
illustrés à la Figure 4.11.
le filtre se concentre. Il y a plus de filtres se concentrant sur les basses fréquences. Ce résultat est raisonnable, car
la perception de la hauteur est logarithmique en fréquences. La différence en Hertz est plus petite pour les hauteurs
inférieures. Ainsi, dans une gamme de fréquences inférieures, plus de hauteurs sont présentes et plus de filtres sont
nécessaires pour distinguer les valeurs de hauteur.
L'idée du gel des couches était maintenant de précalculer les poids d'une couche et de les utiliser pour l'entraînement.
Ici, nous avons examiné la fonctionnalité des filtres de la première couche convolutive et utilisé les
résultats pour fixer les poids de ces filtres. Comme déjà discuté, les transformées de Fourier des filtres
forment une courbe exponentielle entre 0 Hertz et 2000 Hertz. Ainsi, le filtre avec la fréquence la plus
élevée contient 64 oscillations dans une longueur de filtre (512 échantillons, 32 millisecondes). Ce filtre
128
peut être créé par un sinus de 0 à 128 π. Puisque e 26.3807 = 128 les filtres peuvent être créés comme suit :
indice de filtre
Pour chaque filtre, créez un tableau avec des valeurs linéaires entre 0 et π ∙ e sinus 26.3807 , puis calculez le
de chaque valeur. La transformée de Fourier des filtres calculés est illustrée à la Figure 4.13. Ces filtres sont ensuite
fixés avant d'entraîner le réseau de neurones. Les poids de la première couche convolutive sont définis pour ne pas
pouvoir être entraînés. Le biais de la couche (128 dimensions) est défini sur 0. Nous nous référons au réseau formé
avec des poids précalculés pour la première couche convolutive comme Mfreezed.
59 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4. APPROCHE BASÉE SUR DNN
Figure 4.13 : Spectrogramme des filtres fixés pour la première couche convolutive. Ces filtres sont utilisés pour
Mfreezed.
Tableau 4.3 : Nombre de paramètres entraînables pour les modèles fournis par le CREPE et le nouveau modèle.
4.2.4 Modifier la structure du réseau
Le petit modèle de CREPE Mtiny a encore plus de 486 000 paramètres entraînables (486 552). Afin de
diminuer le nombre de paramètres entraînables, nous avons développé un nouveau modèle qui n'a que
24,6 % de paramètres entraînables par rapport au petit modèle. L'objectif était d'examiner les performances
d'un modèle plus petit. La formation de ce modèle devait être plus rapide, car moins de paramètres doivent
être formés. Pour une comparaison du nombre de paramètres entraînables en fonction des tailles de
modèles, voir le tableau 4.3.
Le nombre de filtres dans le minuscule réseau original Mtiny est élevé pour la première couche convolutive.
Ainsi, au lieu de 128 filtres, nous n'utilisons que 64 filtres. La dernière couche convolutive du petit modèle utilise 64
filtres. Pour le nouveau modèle, cela a été réduit à 32 couches. Nous avons également réduit la taille des filtres.
Auparavant, les tailles étaient de 512 (couche de convolution 1) ou 64 (toutes les autres couches de convolution). Pour
le nouveau modèle, nous utilisons des tailles de filtre de 32 (couche de convolution 1) ou 8 (toutes les autres couches de convolution).
En particulier, l'utilisation de filtres de taille 32 au lieu de 512 dans la première couche convolutive est un remarquable
60 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
4.2 APPROCHES PROPRES
modification. Chaque filtre du nouveau modèle utilise seulement 32 échantillons voisins (correspondant à 2
millisecondes) de l'audio d'entrée pour une application du filtre.
Dans le dernier bloc convolutif, aucun MaxPooling n'est appliqué, car la dimension de sortie de la couche convolutive
est (8,32), elle contient donc 256 valeurs. Avec MaxPooling avec foulée 2, le nombre de valeurs de sortie serait réduit
à 128. Le vecteur de sortie du réseau de neurones a une dimension de 360, de sorte que le nombre de dimensions
avant la couche entièrement connectée peut être augmenté en omettant la couche MaxPooling. Pour l'architecture du
nouveau modèle, voir Figure 4.14.
Figure 4.14 : Architecture de la nouvelle structure de modèle Mreduced avec moins de paramètres entraînables.
Nous nous référons à la version entraînée du modèle avec des paramètres entraînables réduits comme Mreduced.
61 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
Machine Translated by Google
5. ÉVALUATION SUR MDBSTEMSYNTH
Chapitre 5
Evaluation sur MDBstemsynth
Dans ce chapitre, l'ensemble de données MDBstemsynth [8] (voir la section 2.3.2 pour plus de détails) est utilisé pour
l'évaluation des approches d'estimation de hauteur basées sur DNN. Ici, par rapport aux chapitres précédents, les
résultats sur l'ensemble de données complet sont analysés au lieu d'enregistrements audio uniques. Cela conduit à une
vue moins détaillée, mais à des résultats plus généralisables. Tout d'abord, nous avons évalué le réseau original de
CREPE [1] dans la section 5.1, puis nous avons recyclé le réseau à partir de zéro et développé nos propres approches
dans la section 5.2.
Les développeurs du CREPE ont publié la structure du réseau et les poids du modèle pour les cinq
différentes capacités du modèle. Le code nécessaire pour appliquer le CREPE aux enregistrements
musicaux est également publié. Le code des procédures de formation n'est pas disponible et a été implémenté par nos soi
Pour l'évaluation, nous avons calculé les précisions de hauteur brute (RPA) et les précisions de chrominance brute
(RCA) à l'aide de la bibliothèque python mir eval [38].
5.1 CRÊPE
Salaman et al. formé le réseau sur plusieurs ensembles de données (voir la section 4.1), dont l'ensemble de données
MDBstemsynth [8]. Les poids des filtres formés sont publiés en ligne (par exemple https://github.com/marl/crepe/raw/
models/modeltiny.h5.bz2 pour le petit modèle).
Pour évaluer la précision de la hauteur tonale brute et la précision de la chrominance brute d'un lot d'enregistrements
audio, il existe trois possibilités :
• Eval1 (même poids pour tous les fichiers) :
Calculez une valeur RPA pour chaque fichier, obtenez la valeur RPA moyenne en faisant la moyenne des valeurs.
63 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
5. ÉVALUATION SUR MDBSTEMSYNTH
• Eval2 (pondération en fonction de la longueur du fichier) :
Calculez une valeur RPA pour chaque fichier, obtenez la valeur RPA moyenne en pondérant les valeurs individuelles
par la longueur du fichier et en prenant la moyenne.
• Eval3 (pondération en fonction du nombre de trames voisées dans la référence) : calculez
une valeur RPA pour chaque fichier, obtenez la valeur RPA moyenne en pondérant les valeurs individuelles par le
nombre de trames voisées dans la référence et en prenant la moyenne.
Nous avons évalué l'ensemble de données complet MDBstemsynth en utilisant la version de CREPE publiée
par les auteurs. Pour cela, nous avons utilisé le modèle complet (Mfull, le plus grand nombre de filtres dans
chaque couche) avec un pas de 10 millisecondes (160 échantillons). Pour les résultats des précisions de hauteur
brute en utilisant les trois méthodes d'évaluation différentes et les seuils de 10/25/50 cents, voir le tableau 5.1.
La comparaison des méthodes d'évaluation montre que les valeurs résultantes pour le pitch brut
tolérance Eval1 Eval2 Eval3 Kim et al. [1]
10 centimes 0,839 0,878 0,868 0,909
25 centimes 0,926 0,949 0,946 50 0,953
centimes 0,952 0,969 0,970 0,967
Tableau 5.1 : Nous avons calculé les valeurs RPA pour l'ensemble de données complet MDBstemsynth en
utilisant le réseau d'origine (modèle complet Mfull, pas de 10 millisecondes) avec différentes méthodes d'agrégation.
La dernière colonne montre les résultats rapportés par Kim et al. [1] (méthode d'évaluation inconnue).
les précisions diffèrent jusqu'à 0,039 (0,839 pour une tolérance de 10 cents et Eval1 et 0,878 pour une tolérance
de 10 cents et Eval2). Dans ce cas, la méthode d'évaluation Eval2 conduit à des précisions supérieures à Eval1.
Cela indique qu'il existe par exemple des fichiers longs avec des précisions élevées ( poids plus élevé dans la
méthode d'évaluation Eval2) ou des fichiers courts avec des précisions faibles (poids plus faible dans la méthode
d'évaluation Eval2). De plus, la méthode d'évaluation Eval3 renvoie des précisions de hauteur plus élevées que
Eval1. Il existe donc soit des fichiers avec un faible nombre de trames voisées et de faibles précisions, soit des fichiers
avec un nombre élevé de trames voisées et des précisions élevées. Les précisions rapportées par Kim et al. [1] sont plus
élevés pour les seuils de 10 et 25 centimes que nos résultats. Par rapport à la méthode d'évaluation qui renvoie les
précisions les plus élevées, les différences sont de 0,031 (10 cents) et 0,004 (25 cents). Pour un seuil de 50 cents, nous
avons obtenu une précision supérieure à celle rapportée par Kim et al. en utilisant la méthode d'évaluation Eval2.
Ainsi, les résultats de l'évaluation d'un système sur un ensemble de données avec plusieurs fichiers varient en fonction du
type de pondération utilisé pour agréger les résultats des fichiers individuels.
Dans ce qui suit, nous utilisons la méthode d'évaluation Eval1 (même poids pour tous les fichiers).
64 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
5.2 PROPRES APPROCHES
5.2 Approches propres
Tout d'abord, nous avons recyclé la structure du réseau à partir de zéro pour examiner le processus de formation
du réseau. Ensuite, pour éviter un biais induit par le choix du jeu de test, une validation croisée 5 fois a été utilisée.
Ensuite, afin d'étudier plus avant le réseau, nous avons évalué les approches présentées dans la section 4.2 en
utilisant l'ensemble de données MDBstemsynth [8]. Nous avons commencé par l'augmentation des données afin
d'améliorer les résultats de l'entraînement lors de l'entraînement avec un ensemble de données biaisé ou trop petit.
Ensuite, nous avons examiné l'influence de la première couche du réseau et l'avons remplacée par un filtre avec
des poids précalculés. De plus, nous avons étudié un réseau modifié avec une dimension de sortie ajustée. Enfin,
nous avons évalué un réseau avec des couches modifiées.
Lors de la présentation de la formation d'un réseau de neurones dans les sections suivantes, nous avons utilisé
dans la plupart des cas une répartition fixe formation/validation/test de l'ensemble de données MDBstemsynth.
Nous avons créé ce split à la main et il est conçu pour que tous les stems solos (pistes) d'un morceau musical
soient dans le même set. L'ensemble d'entraînement se compose de 60 % des tiges disponibles, les deux autres
ensembles sont constitués de 20 % des tiges chacun. La formation a été effectuée uniquement sur les trames
vocales, car le réseau a besoin d'extraits audio avec des vecteurs d'annotation. Si une trame n'est pas exprimée,
aucun vecteur d'annotation attendu ne peut être calculé. Par conséquent, l'apprentissage n'est possible qu'avec des
trames vocales. Dans MDBstemsynth, environ 44,8 % des trames annotées sont voisées.
5.2.1 Réseau recyclé
Pour avoir une première compréhension du réseau, nous avons recyclé le réseau à partir de zéro. Pour cela, nous
avons utilisé la structure de réseau telle que proposée par Kim et al. [1], mais au lieu des poids préentraînés,
nous avons commencé avec des poids aléatoires. Pour la formation, nous avons utilisé l'architecture du minuscule
modèle Mtiny. La répartition formation/validation/test a été créée à la main comme décrit cidessus. Nous avons
formé le réseau pendant 800 époques. Chaque époque se compose de 30 lots de formation et de 20 lots de validation.
Un lot comprend 32 échantillons. Comme suggéré par les auteurs, nous avons utilisé l'optimiseur d'Adam [34]
avec un taux d'apprentissage de 0,0002 et la perte d'entropie croisée binaire définie dans l'équation 4.10.
Le recyclage du réseau a pris environ 161 minutes (environ 2,69 heures).
Pendant la formation, les précisions de hauteur brute pour la formation et la validation ont été calculées après
chaque époque. Cela a été fait en calculant la précision de la hauteur brute pour chaque formation et chaque lot
de validation et en faisant la moyenne des résultats de tous les lots en une seule époque. Pour les courbes
résultantes, voir la Figure 5.1. Comme prévu, la précision de la hauteur brute a généralement augmenté au fil des
époques. Pour un seuil inférieur de 10 cents, la précision a augmenté plus lentement que pour un seuil élevé de 50 cents.
Une forte augmentation de la précision peut être observée dans les 200 premières époques, après quoi les
précisions ont augmenté plus lentement. Pour les époques ultérieures (époque 200 à 800), le gain de précision
est plus important pour un seuil de 10 cents que pour un seuil de 50 cents. On peut donc supposer que le réseau
65 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
5. ÉVALUATION SUR MDBSTEMSYNTH
Figure 5.1 : Lors du recyclage de la version originale de CREPE (architecture de Mtiny, commençant par des poids
aléatoires), les précisions de hauteur brute pour différents seuils ont été mesurées après chaque lot d'entraînement/
validation. Ces résultats ont été moyennés sur tous les lots de formation/validation à une époque.
identifié une solution qui estime approximativement correctement les hauteurs au début de l' entraînement (époque 0
à environ 150). Cependant, des époques ultérieures ont été nécessaires pour affiner les estimations et ainsi
augmenter la précision de hauteur brute pour les seuils bas.
On peut également observer que généralement la précision de la validation est supérieure à la précision de la formation.
Pour cela, il y a plusieurs explications possibles. L'ensemble d'apprentissage/validation pouvait être biaisé (les
échantillons en perte de validation étaient plus faciles à estimer). De plus, lors de l'utilisation de la régularisation, une
précision d'entraînement inférieure est raisonnable, car les couches d'abandon [32] ne sont activées que pendant
l'entraînement et peuvent augmenter l'erreur.
Une fois le réseau formé, il a été appliqué à l'ensemble de test. L'ensemble de test ne contient que des fichiers audio qui
ne sont pas utilisés pour la formation ou la validation. Ainsi, l'évaluation sur l'ensemble de test n'est pas biaisée en raison
du processus de formation. Comme pour la version originale de CREPE, tous les fichiers ont été rééchantillonnés à un
66 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
5.2 PROPRES APPROCHES
taux d'échantillonnage de 16000 Hz avant l'application du réseau. Le réseau a été configuré pour utiliser
une taille de fenêtre de 1024 échantillons et une taille de pas de 10 millisecondes. Nous avons calculé la hauteur brute
précision pour chaque fichier du jeu de test avec des seuils de 10, 25 et 50 cents. Ces valeurs étaient
résumées à l'aide de la méthode Eval1 (voir section 5.1). Pour les précisions de hauteur brute résultantes et
précisions de chrominance brute voir Tableau 5.2. Le tableau montre que des précisions élevées peuvent être obtenues lorsque
mesure
RPA RCA
tolérance
10 centimes 0,826 ± 0,136 0,826 ± 0,136
25 centimes 0,955 ± 0,042 0,956 ± 0,042
50 centimes 0,982 ± 0,019 0,982 ± 0,019
Tableau 5.2 : Nous avons formé un modèle avec la même architecture que Mtiny en commençant par des poids aléatoires.
Le réseau formé a ensuite été appliqué aux fichiers du jeu de test. Utilisation de la méthode d'évaluation Eval1
ces résultats ont été agrégés afin d'obtenir les valeurs RPA et RCA.
en utilisant un seuil de 50 cents (ou 25 cents). Pour un seuil de 10 centimes, les précisions sont moindres.
Il est également remarquable qu'il n'y ait pas de différences significatives entre les précisions de hauteur brute
et les précisions de chrominance brute. Cela indique que le modèle recyclé ne prédit pas les erreurs
hauteurs à cause d'erreurs d'octave.
À titre de comparaison, nous avons évalué la version originale de CREPE telle que publiée par Kim et al. sur
l'ensemble de test (rééchantillonné par le CREPE à 16000 Hz) en utilisant le minuscule modèle Mtiny et un pas de
10 millisecondes (comme pour le réseau recyclé). De plus, YIN a été évalué sur le test
ensemble. YIN a utilisé les fichiers originaux avec un taux d'échantillonnage de 44100 Hertz. L'évaluation a été réalisée
avec une taille de saut de 512 échantillons (environ 11,6 millisecondes, CREPE : 10 millisecondes) et un
longueur de fenêtre de 4096 échantillons (environ 92,9 millisecondes, CREPE : 64 millisecondes). Le
la fréquence minimale est réglée sur 30 Hertz et la fréquence maximale est réglée sur 1760 Hertz.
Le tableau 5.3 montre les précisions de hauteur brute du réseau recyclé, du réseau d'origine et
YIN. Il est à noter que par rapport à la version originale du CREPE, le réseau reconverti
tolérance RPA (Mtiny) RPA (CRPE recyclé) RPA (YIN)
10 centimes 0,837 ± 0,091 0,826 ± 0,136 0,630 ± 0,154
25 centimes 0,942 ± 0,043 0,955 ± 0,042 0,797 ± 0,104
50 centimes 0,969 ± 0,027 0,982 ± 0,019 0,881 ± 0,069
Tableau 5.3 : Valeurs RPA pour l'ensemble de test évalué à l'aide de la méthode Eval1. La première colonne montre
les résultats de la version originale de CREPE (Mtiny). La deuxième colonne montre les résultats de
le modèle recyclé (même architecture que Mtiny). La troisième colonne montre le résultat de YIN.
obtient un RPA plus élevé pour une tolérance de 25 et 50 cents, mais un RPA plus faible pour une tolérance de 10
cents. Cela montre que le réseau recyclé fonctionne moins bien pour les estimations exactes, mais mieux
pour des estimations approximatives. Les résultats pour des tolérances de 25 et 50 cents peuvent être dus à la
restriction à un seul ensemble de données. Ainsi, la formation et les tests sont effectués sur des ensembles de la même
67 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
5. ÉVALUATION SUR MDBSTEMSYNTH
jeu de données et le modèle peut surajuster les caractéristiques de ce jeu de données. Le RPA bas pour une tolérance
de 10 cents peut s'expliquer en faisant intervenir les courbes RPA. Les valeurs RPA pendant l'entraînement continuaient
d'augmenter pour les époques 700 à 800, de sorte que d'autres améliorations de cette tolérance sont possibles lors d'un
entraînement de plus de 800 époques.
En résumé, nous avons montré qu'un réapprentissage du réseau est possible en un temps relativement court et permet d'obtenir
des précisions de hauteur brute similaires au réseau d'origine.
5.2.2 Validation croisée
Les résultats de la section 5.2.1 dépendent fortement de la répartition train/validation/test. Si, par exemple, l' ensemble
de test contient des exemples relativement faciles à évaluer, cela conduit à un pas brut plus élevé
précisions.
Ainsi, afin d'obtenir un résultat moins biaisé, nous avons appliqué une validation croisée. Ici, la validation croisée 5 fois
est utilisée. Ainsi, l'ensemble de données complet a été divisé en cinq groupes. Chacun des groupes est constitué du
même nombre de tiges et chaque tige ne peut faire partie que d'un seul groupe. Ensuite, nous avons effectué la
formation, la validation et les tests en cinq itérations indépendantes. A chaque fois, un des cinq groupes (20% des tiges)
a servi de jeu de test. Les tiges qui ne sont pas dans l'ensemble de test ont été divisées en un ensemble de validation
(20 % de toutes les tiges) et un ensemble d'apprentissage (60 % de toutes les tiges). Nous avons créé les ensembles
d'entraînement/validation/test afin que tous les stems d'une pièce musicale soient affectés au même ensemble. Ceci
est nécessaire afin d'éviter de s'entraîner et de tester sur le même morceau musical, car cela conduirait à des résultats
RPA trop élevés pour l'ensemble de test.
Pour créer les cinq groupes et diviser le reste des tiges en un ensemble de validation/apprentissage, nous avons utilisé le retour
en arrière. Ainsi, l'algorithme de fractionnement commence avec un fichier et ajoute plus de fichiers tant que toutes les conditions
sont remplies. Si un ensemble approprié est créé, l'algorithme renvoie cet ensemble comme fractionnement suggéré. Sinon,
l'algorithme supprime récursivement les fichiers de l'ensemble et les remplace par d'autres fichiers.
Nous avons utilisé l'architecture du modèle du petit modèle de CREPE (Mtiny) avec des poids aléatoires
comme point de départ. L'entraînement a été effectué avec chaque groupe pendant 800 époques (5 ∙ 800
époques au total). Chaque époque se compose de 30 lots pour la formation et de 20 lots pour l'évaluation. La
taille du lot est de 32. Le processus de formation pour les cinq groupes a pris environ 933 minutes (15,55 heures).
Divisé par 5 (5 plis), cela donne environ 3,11 heures par pli. Cette durée est supérieure à la durée de la
reconversion à la section 5.2.1 (2,69 heures). La raison en est qu'ici nous avons inclus l'évaluation sur
l'ensemble de test dans le processus. L'ensemble de test pour la validation croisée 5 fois est déterminé au
cours du processus, de sorte que le temps supplémentaire est nécessaire pour évaluer les fichiers dans l'
ensemble de test. Comme suggéré par les auteurs, nous avons utilisé l'optimiseur d'Adam [34], un taux
d'apprentissage de 0,0002 et la perte d'entropie croisée binaire (équation 4.10). Dans chaque itération, nous
avons formé un réseau puis l'avons évalué sur l'ensemble de test avec une taille de pas de 10 millisecondes et la méthode d'évalua
68 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
5.2 PROPRES APPROCHES
Éval1. Les résultats des valeurs RPA des cinq plis sont présentés dans le tableau 5.4. Les précisions
tolérance pli1 pli2 pli3 pli4 pli5 moyenne des plis Mtiny 10 cents 0,770 0,829 0,768 0,791
0,815 0,837 25 cents 0,899 0,947 0,912 0,928 0,953 0,942 0,795
0,928
50 centimes 0,932 0,971 0,947 0,961 0,978 0,958 0,969
Tableau 5.4 : En utilisant une validation croisée quintuple, nous avons formé cinq fois un réseau avec la même
architecture que Mtiny . Chaque modèle a ensuite été appliqué à l'ensemble de test avec une taille de pas de 10 millisecondes.
La précision de hauteur brute pour chaque fichier de l'ensemble de test a été calculée et les résultats des fichiers ont
été agrégés à l'aide de la méthode Eval1. Le tableau montre les précisions de hauteur brute pour les cinq itérations
d'entraînement. A titre de comparaison, nous avons ajouté les résultats de la version originale de CREPE (Mtiny, Eval1)
appliquée à l'ensemble de test.
pour fold1 et fold3 sont inférieurs à la précision moyenne. Cela peut indiquer que les ensembles de test utilisés pour
ces plis sont plus difficiles que les ensembles de test des autres plis. Avec pli2 et pli5, des précisions supérieures à la
précision moyenne sont obtenues et le pli 4 conduit à des résultats similaires à la précision moyenne. Les précisions
moyennes sont inférieures aux précisions obtenues en appliquant la version originale de CREPE à l'ensemble de test.
Cela est peutêtre dû au temps de formation court.
La précision moyenne obtenue en utilisant la validation croisée 5 fois est un résultat plus général puisqu'elle ne dépend
pas de la répartition train/validation/test.
5.2.3 Augmentation des données
Comme expliqué dans la section 4.2.1, nous avons utilisé l'augmentation des données afin d'améliorer les résultats de
la formation. Le jeu de données MDBstemsynth [8] contient plus d'exemples pour les basses fréquences que pour les
hautes fréquences. Par conséquent, nous avons appliqué le décalage de hauteur aux fichiers audio dans l' ensemble
d'entraînement et de validation, afin que ces ensembles couvrent une plage de fréquences plus large. Cela devrait
améliorer les performances du réseau pour les hautes fréquences.
Pour la formation, nous avons utilisé l'architecture du petit réseau Mtiny. Le réseau a été initialisé avec des poids
aléatoires. Pour le processus de formation, nous avons utilisé l'optimiseur Adam [34], un taux d'apprentissage de
0,0002 et la perte d'entropie croisée binaire définie dans l'équation 4.10. La formation a été effectuée pendant 800
époques où chaque époque consistait en 30 lots pour la formation et 20 lots pour la validation.
La taille du lot était de 32, donc par lot, 32 échantillons ont été utilisés. Nous nous référons au réseau formé comme
Mshift. La formation complète a duré 156 minutes (environ 2,61 heures). Cette durée est similaire à la durée de
réapprentissage du réseau sans augmentation des données (voir section 5.2.1, la durée d'apprentissage était de 2,69
h). Pendant la formation, nous avons calculé les précisions de hauteur brute. Cela a été fait après chaque époque pour
les lots d'entraînement et de validation. Nous avons mesuré la précision de la hauteur brute pour des seuils de 10, 25
et 50 cents. Comme prévu, les précisions de hauteur brute ont augmenté au fil des époques. Pour des seuils plus
élevés (par exemple 50 cents), la précision de la hauteur brute a augmenté plus rapidement
69 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
5. ÉVALUATION SUR MDBSTEMSYNTH
puis pour des seuils inférieurs, puisque le réseau devient plus précis au fil du temps d'apprentissage.
Cependant, il est remarquable que, surtout pour un seuil de 10 cents, les précisions de hauteur brute soient plutôt faibles.
Pour les précisions de hauteur brute sur les époques, voir la figure 5.2. Le nouveau réseau formé Mshift
Figure 5.2 : Nous avons formé un modèle avec la même architecture que l'architecture du petit modèle
Mtiny en utilisant le pitch shifting. Le modèle résultant est appelé Mshift. La figure montre la précision
de hauteur brute (RPA) pour les lots d'entraînement et de validation après chaque époque pour
différents seuils.
a ensuite été appliqué à l'ensemble de test composé de 20% des fichiers audio de MDBstemsynth. Ces fichiers audio
n'ont pas été utilisés pendant la formation. Aucun changement de hauteur n'est appliqué à l'ensemble de test pour
assurer la comparabilité avec d'autres approches (même ensemble de test). L'évaluation du nouveau réseau formé
sur l'ensemble de test a conduit aux valeurs RPA/RCA indiquées dans le tableau 5.5 (évaluées avec la méthode Eval1).
Les précisions sont inférieures aux précisions obtenues avec la version originale de CREPE (Mtiny).
Cependant, nous avons appliqué le pitch shifting afin d'améliorer les performances pour les hautes fréquences.
Pour examiner la gamme de fréquences, le réseau formé avec le décalage de hauteur a été appliqué au signal
chirp avec des fréquences comprises entre 30 et 2000 Hertz. A titre de comparaison, également le réseau recyclé
70 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
5.2 PROPRES APPROCHES
mesure
tolérance RPA (Mshift) RCA (Mshift) RPA (Mtiny)
10 centimes 0,649 ± 0,118 0,667 ± 0,106 0,837 ± 0,091 0,871 ± 0,105
25 centimes 0,894 ± 0,082 0,942 ± 0,043
50 centimes 0,927 ± 0,081 0,953 ± 0,043 0,969 ± 0,027
Tableau 5.5 : Pour l'entraînement et l'ensemble de validation, le pitch shifting a été appliqué. Après avoir entraîné un modèle avec l'architecture de
Mtiny en utilisant le pitch shifting, nous avons évalué l'ensemble de test à l'aide du nouveau réseau Mshift et calculé les valeurs RPA et RCA
(agrégées à l'aide d'Eval1). Les précisions de hauteur brute et les précisions de chrominance brute sont indiquées dans la première et la deuxième
colonne. A titre de comparaison, nous avons ajouté les résultats de la version originale de CREPE (Mtiny, Eval1) évalués sur le jeu de test.
de la section 5.2.1 a été appliqué au même signal. Les estimations du réseau recyclé et du réseau entraîné avec
augmentation des données sont présentées à la figure 5.3. Cette figure montre que le réseau sans augmentation de
données estime correctement les fréquences inférieures à 1200 Hertz. Pour les fréquences plus élevées, le réseau
prédit les hauteurs des sousharmoniques. En utilisant l'augmentation des données, le réseau reconnaît les
fréquences jusqu'à environ 1600 Hz avec une grande précision. Aussi pour les fréquences plus élevées, les sous
harmoniques sont prédites. Ainsi, la plage de fréquences apprise a augmenté d'environ 400 cents par rapport à un
réseau formé sur l'ensemble de données original MDBstemsynth. Cependant, la plage de fréquences complète
jusqu'à 2000 Hz n'est pas apprise. Cela est probablement dû à la répartition des fréquences encore pas complètement
équilibrée.
5.2.4 Résolution vectorielle de sortie
Une autre approche consistait à modifier le vecteur de sortie. La version originale de CREPE produit un
vecteur à 360 dimensions à partir duquel l'estimation de hauteur finale est calculée. Les valeurs du vecteur
ont une résolution de 20 cents. Ici, nous avons remplacé ce vecteur par un vecteur à 720 dimensions qui
couvre la même gamme de fréquences, mais a une résolution de 10 cents. Pour la formation, nous avons
utilisé le même ensemble train/validation/test créé à la main qu'auparavant. Le réseau a été entraîné à
l'aide de l' optimiseur Adam [34] et d'un taux d'apprentissage de 0,0002. Pour la fonction de perte, nous
avons utilisé la perte d'entropie croisée binaire définie dans l'équation 4.10. Nous nous sommes entraînés
pendant 800 époques (30 lots d'entraînement/20 lots de validation par époque, taille de lot 32). Le processus
de formation complet a duré environ 220 minutes (3,66 heures). Nous avons ensuite appliqué le réseau
formé (appelé Mdim720) aux fichiers audio de l'ensemble de test et calculé la précision de la hauteur brute
pour chaque fichier. À partir de ces valeurs, les précisions de hauteur brute résultantes ont été dérivées à
l'aide de la méthode d'évaluation Eval1, voir le tableau 5.6 pour les résultats. La précision du pitch brut
obtenu avec le nouveau réseau Mdim720 est inférieure au RPA obtenu avec l'original pour un seuil de 10
centimes. Pour des seuils de 25 cents et 50 cents, la précision de hauteur brute du Mdim720 est plus
élevée. Cependant, toutes les précisions de hauteur brute sont inférieures à celles de la version recyclée
de CREPE de la section 5.2.1. Cela indique que la dimension de sortie accrue du réseau n'améliore pas la précision pour
71 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
5. ÉVALUATION SUR MDBSTEMSYNTH
Figure 5.3 : F0estimations d'un signal chirp de 30 Hertz à 2000 Hertz. (a) Estimations utilisant le
réseau recyclé de la section 5.2.1. Les fréquences jusqu'à environ 1200 Hertz sont prédites
correctement. (b) Estimations à l'aide d'un nouveau réseau Mshift formé avec un ensemble de données
à décalage de hauteur. Les fréquences jusqu'à environ 1600 Hertz sont prédites correctement. Pour
les fréquences plus élevées, les sousharmoniques sont prédites.
72 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
5.2 PROPRES APPROCHES
mesure
tolérance RPA (Mdim720) RCA (Mdim720) RPA (Mtiny)
Tableau 5.6 : Nous avons formé un nouveau réseau basé sur l'architecture du petit modèle de CREPE (Mtiny). Le
nouveau réseau Mdim720 a une résolution de sortie accrue. Après la formation, l' ensemble de test a été évalué à
l'aide du nouveau réseau et de la méthode d'évaluation Eval1. Les précisions de pitch brut et les précisions de
chrominance brute résultantes sont indiquées dans la première et la deuxième colonne. A titre de comparaison, nous
avons ajouté les résultats de la version originale de CREPE (Mtiny, Eval1) évalués sur le jeu de test.
Une explication possible est que l'apprentissage du réseau est plus lent en raison du nombre plus élevé de
paramètres. Il est également possible que le nombre de sorties potentielles représentées par les valeurs de la
dernière couche soit trop élevé par rapport aux données d'apprentissage disponibles.
5.2.5 Gel des couches
Au chapitre 4.2.3, nous avons examiné les filtres du premier réseau de neurones convolutifs du CREPE (Mtiny).
Les poids de certains filtres ont une structure périodique. Nous avons donc développé des filtres pour la
première couche convolutive afin que la transformation de Fourier des filtres forme une courbe exponentielle
lorsqu'ils sont triés pour l'indice maximum. Le petit modèle Mtiny de CREPE a 128 filtres avec une taille de filtre
de 512 dans la première couche convolutive. Nous avons utilisé la structure de réseau originale de CREPE
(Mtiny) mais avons remplacé les poids par des poids aléatoires. Pour la première couche convolutive, nous
avons fixé les poids précalculés. Ce réseau a été entraîné à l'aide de l'ensemble train/validation/test fixe.
Comme optimiseur, nous avons utilisé l'optimiseur Adam [34] et le taux d'apprentissage a été fixé à 0,0002. La
fonction de perte était la perte d'entropie croisée binaire (définie dans l'équation 4.10). Pour la formation, nous
avons utilisé une taille de lot de 32 échantillons. À chaque époque, nous nous sommes entraînés avec 30 lots et évalués avec
La formation a été effectuée pendant 800 époques et la formation complète a duré 152 minutes (2,54 heures).
Par rapport à un réapprentissage du réseau sans première couche fixe (Section 5.2.1), cette durée est plus courte de
9 minutes. On s'attend à ce que la formation soit plus rapide, puisqu'aucune formation de la première couche n'est
nécessaire.
Après avoir entraîné le réseau (appelé Mfreezed), nous l'avons appliqué aux fichiers du jeu de test. Pour chaque
fichier, nous avons calculé une précision de hauteur brute et une précision de chrominance brute. Ces valeurs ont été
résumées à l'aide de la méthode Eval1. Pour les résultats, voir le tableau 5.7. Le tableau indique que les précisions de
hauteur brute sont plus faibles pour un seuil de 10 cents et 25 cents et similaires pour un seuil de 50 cents par rapport
à la version originale de CREPE (Mtiny). Il y a principalement deux raisons possibles à ce résultat. Une explication est
que la transformée de Fourier des filtres du réseau d'origine ne forme pas une courbe exponentielle parfaite. Au
contraire, la courbe monte plus vite au début. Un grand nombre de filtres se concentrent sur des fréquences moyennes
d'environ 300 Hz à
73 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
5. ÉVALUATION SUR MDBSTEMSYNTH
mesure
tolérance RPA (Mgelé) RCA (Mgelé) RPA (Mtiny)
10 centimes 0,746 ± 0,129 0,749 ± 0,130 0,837 ± 0,091 0,928 ± 0,058 0,934
25 centimes ± 0,056 0,942 ± 0,043
50 centimes 0,966 ± 0,035 0,972 ± 0,029 0,969 ± 0,027
Tableau 5.7 : Nous avons formé un nouveau réseau basé sur l'architecture du petit modèle de CREPE (Mtiny). Les poids
de la première couche convolutive ont été précalculés et non entraînés. Après la formation, l'ensemble de test a été évalué
à l'aide du nouveau réseau Mfreezed et de la méthode d'évaluation Eval1.
Les précisions de pitch brut et les précisions de chrominance brute résultantes sont indiquées dans la première et la
deuxième colonne. A titre de comparaison, nous avons ajouté les résultats de la version originale de CREPE (Mtiny, Eval1)
évalué sur le jeu de test.
1000 Hz. La courbe exponentielle en revanche monte plus lentement au début. Ainsi, le nombre de filtres précalculés
pour une gamme de basses fréquences pourrait être trop élevé, ce qui correspond à un trop petit nombre de filtres
se concentrant sur les fréquences moyennes qui se produisent fréquemment dans la plupart des jeux de données.
Une autre explication possible des faibles précisions de hauteur brute est la concentration sur le maximum de la
transformée de Fourier de chaque filtre. Il se peut que chaque filtre se concentre sur plus d'une fréquence et mesure
en outre la présence de fréquences plus élevées dans un extrait audio. Cela peut être nécessaire afin d'utiliser des
harmoniques pour l'estimation de la fréquence fondamentale. En générant des filtres constitués d'une seule
fréquence, on évite le bruit dans la transformée de Fourier. Cela conduit éventuellement à des précisions moindres.
Pour cette expérience, nous avons généré les filtres en utilisant des ondes sinusoïdales avec la même phase pour tous les filtres.
De plus, nous avons expérimenté l'utilisation d'ondes sinusoïdales et d'ondes cosinusoïdales. Pour cela, nous avons généré
des filtres avec des fréquences ascendantes similaires à la première expérience. Mais les filtres ont été générés en
alternance sous forme d'onde sinusoïdale ou cosinusoïdale. La formation a été effectuée de manière similaire à la formation
pour Mfreezed sur l'ensemble d'apprentissage et l'ensemble de validation et la durée était de 162 minutes (2,35 heures).
Nous appelons le modèle entraîné Mfreezed2. Les précisions de hauteur brute résultantes pour l'ensemble de test
(calculées avec Eval1) sont présentées dans le tableau 5.8. Le deuxième modèle n'offre que des précisions de hauteur
brute légèrement meilleures pour des seuils de 10 et 25 cents.
mesure
RPA (Mgelé) RPA (Mgelé2)
tolérance
10 centimes 0,746 ± 0,129 0,790 ± 0,120
25 centimes 0,928 ± 0,058 0,935 ± 0,061
50 centimes 0,966 ± 0,035 0,965 ± 0,044
Tableau 5.8 : Nous avons formé deux réseaux avec une première couche fixe. Pour le premier réseau Mfreezed, les filtres
ont été générés à l'aide d'ondes sinusoïdales. Pour les filtres du deuxième réseau Mfreezed2 nous avons utilisé des ondes
sinusoïdales et des ondes cosinusoïdales. Les deux réseaux ont été évalués sur l'ensemble de test en utilisant la méthode
d'évaluation Eval1.
74 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
5.2 PROPRES APPROCHES
5.2.6 Modifier la structure du réseau
Comme présenté dans la section 4.2.4, nous avons développé un nouveau réseau avec un nombre inférieur
de filtres et des filtres plus petits. Cela conduit à un nombre réduit de paramètres entraînables. Comparé au
petit modèle de CREPE Mtiny, ce réseau ne possède que 24,6% des paramètres entraînables. Le nouveau
réseau Mreduced a été formé à l'aide de la répartition fixe train/validation/test qui a été créée à la main. Pour
la formation, nous avons utilisé l'optimiseur Adam [34], un taux d'apprentissage de 0,0002 et la perte d'entropie
croisée binaire (définie dans l'équation 4.10). Nous nous sommes entraînés pendant 800 époques avec 30
lots d'entraînement et 20 lots d'évaluation par époque et une taille de lot de 32. Le processus de formation a
pris 149 minutes (2,48 heures). L'apprentissage est donc plus rapide que l'apprentissage de la petite structure
modèle de CREPE (durée : 161 minutes). De plus, l'apprentissage de ce modèle est plus rapide que l'
apprentissage d'un modèle avec des filtres précalculés pour la première couche (durée : 152 minutes). Après
la formation, le réseau a été évalué sur l'ensemble de test. Pour les résultats de la précision de la hauteur
tonale brute et de la précision de la chrominance brute, voir le tableau 5.9. Il est remarquable que la précision
de hauteur brute soit nettement inférieure pour un seuil de 10 centièmes par rapport à la précision de hauteur
brute de la version originale de CREPE. Cependant, la précision de hauteur brute pour un seuil de 50 cents
n'est que légèrement inférieure pour Mreduced par rapport à la version originale de CREPE (Mtiny).
mesure
tolérance RPA (Mréduit) RCA (Mréduit) RPA (Mtiny)
Tableau 5.9 : Précisions de pitch brut et de chrominance brute pour l'ensemble de test évalué avec un réseau avec
moins de paramètres Mreduced et la méthode d'évaluation Eval1. A titre de comparaison, nous avons ajouté les
résultats de la version originale de CREPE (Mtiny, Eval1) évalués sur le jeu de test.
Nous avons appliqué le nouveau réseau entraîné Mreduced à un signal chirp (30 Hz à 2000 Hz). Pour les
fréquences estimées, voir la figure 5.4. Semblable au réseau recyclé basé sur la petite structure de modèle
de CREPE, les sousharmoniques sont prédites pour des fréquences supérieures à environ 1200 Hz.
Pour les fréquences inférieures à 1200 Hz, les estimations de Mreduced sont assez imprécises. Ceci est
probablement dû au petit réseau qui n'est pas capable d'apprendre une estimation F0 détaillée.
Le nouveau réseau Mreduced n'a que 64 filtres au lieu de 128 filtres (Mtiny) pour la première couche convolutive. Chaque filtre a une dimension de
32 (Mréduit) au lieu de 512 (Mtiny). Aux filtres appris de Mreduced, nous avons appliqué la transformée de Fourier et trié le résultat par ordre
croissant selon l'indice de la valeur maximale. Pour le résultat, voir Figure 5.5. La figure montre encore légèrement une courbe similaire à la
transformée de Fourier des filtres du réseau d'origine Mtiny. Ainsi, le réseau Mreduced a un nombre inférieur de paramètres entraînables et
l'entraînement peut être effectué plus rapidement. Cependant, cela conduit également à une précision de hauteur brute inférieure pour un seuil de
10 cents.
75 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
5. ÉVALUATION SUR MDBSTEMSYNTH
Figure 5.4 : Nous avons formé un modèle avec un nombre réduit de paramètres. La figure montre les F0estimations
de ce modèle Mreduced pour un signal chirp de 30 Hertz à 2000 Hertz.
Figure 5.5 : Nous avons formé un modèle avec un nombre inférieur de filtres et des filtres plus petits Mreduced.
Aux filtres de la première couche convolutive, une transformée de Fourier a été appliquée. Chaque colonne
correspond à un filtre. Nous avons trié les colonnes pour les indices croissants de la valeur maximale.
76 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
5.2 PROPRES APPROCHES
5.2.7 Résumé
Dans les sections précédentes, nous avons décrit la formation de quatre approches différentes. Nous avons
commencé avec un modèle (appelé Mshift) entraîné à l'aide d'un ensemble de données à décalage de hauteur.
Ensuite, nous avons présenté un modèle avec un vecteur de sortie augmenté avec une résolution de 10 cents au lieu
de 20 cents. Nous nous référons au modèle formé comme Mdim720. Ensuite, les poids de la première couche
convolutive ont été fixés et cette couche a été exclue de l'apprentissage. Pour le calcul des poids, nous avons utilisé
deux approches différentes. Pour Mfreezed, nous n'avons utilisé que des ondes sinusoïdales et pour Mfreezed2,
nous avons utilisé des ondes sinusoïdales et des ondes cosinusoïdales. De plus, nous avons formé un réseau avec
un nombre inférieur de filtres et des filtres plus petits. Le réseau formé est appelé Mreduced.
Nous avons effectué toutes les formations en utilisant une répartition fixe train/validation/test de l' ensemble de données
MDBstemsynth [8]. Toutes les approches ont donc été testées sur le même jeu de test. Nous avons évalué les fichiers
audio de l' ensemble de test avec les modèles et résumé les résultats des fichiers à l'aide de la méthode d'évaluation Eval1.
Une vue d'ensemble des précisions de hauteur brute résultantes est donnée dans le Tableau 5.10. Le meilleur/le
pire RPA de chaque ligne est indiqué par une police verte/rouge. Le tableau montre que pour un seuil de 10 centimes,
entimes 0,649 ± 0,118 0Mgelé2
Mshift Mréduit RPA 10 cMdim720 ,778 ± 0,152 0,790 ± 0,120 0,590 ± Miny
0,119 0,837 ± 0,091 RPA 25 centimes 0,871 ± 0,105 0,945 ± 0,052 0,935 ± 0,0 61 0,893 ± 0,086 0,942 ± 0,043 RPA 50 centimes 0,927 ± 0,081
0,978 ± 0,023 0,965 ± 0,044 0,958 ± 0,051 0,969 ± 0,027
Tableau 5.10 : Résumé des précisions de hauteur brute et des durées d'entraînement des différentes approches.
aucune des approches ne conduit à une précision de hauteur brute supérieure à celle du modèle original de CREPE
Mtiny. Pour un seuil de 25 centimes, le RPA obtenu avec Mdim720 est comparable (légèrement supérieur) au RPA
obtenu avec Mtiny. Ce modèle (Mdim720) et Mfreezed2 atteignent également des précisions de hauteur brute
similaires à la précision de hauteur brute de Mtiny pour un seuil de 50 cents. Le modèle Mdim720 conduit à la plus
grande précision par rapport aux autres approches. Cependant, ce modèle avait également une durée d'entraînement
de 220 minutes, ce qui est supérieur aux durées des autres modèles. Afin de gagner du temps de formation, nous
avons développé l'architecture de Mreduced. Bien que tous les modèles aient été formés pendant 800 époques, la
formation pour ce modèle a eu la durée la plus courte.
Ainsi, en utilisant Mshift, nous avons pu étendre la gamme de fréquences pouvant être estimées. Grâce aux
expériences avec Mfreezed2, nous avons reçu de nouvelles informations sur le rôle de la première couche convolutive.
Et en formant Mreduced, nous avons développé un modèle plus rapide et plus petit pour l'estimation de F0.
77 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
Machine Translated by Google
6. ÉVALUATION DES ENREGISTREMENTS GÉORGIENS
Chapitre 6
Évaluation des enregistrements géorgiens
Dans ce chapitre, nous évaluons CREPE sur un jeu de données plus complexe et réaliste. Pour cela,
nous utilisons l'ensemble de données composé de musique vocale géorgienne qui a été introduit dans la
section 2.3.3. Il se compose de cinq chansons géorgiennes interprétées par trois chanteurs. Ici, seul le
chant Batonebis Nanina est utilisé comme exemple courant. Pour ce chant, chaque chanteur a été
enregistré avec un micro casque (HDS) et un micro larynx (LRX). La différence entre ces types de
microphones est que le microphone du larynx est directement attaché à la peau de la gorge du chanteur.
Ainsi, il n'enregistre que les hauteurs, mais pas les paroles du chanteur. Le micro du larynx est également
moins influencé par les autres chanteurs. Ainsi, si le chanteur fait une pause, les voix des autres
chanteurs sont plus audibles dans l'enregistrement du microphone du casque que dans l'enregistrement du microphone
De plus, un enregistrement du microphone de la caméra et un enregistrement du microphone de la salle sont
disponibles. Ceuxci contiennent les voix de tous les chanteurs. En utilisant cet exemple, nous examinerons les
estimations de hauteur de CREPE dans la section 6.1 et les estimations de voisement de CREPE dans la section 6.2.
6.1 Estimation de hauteur
Pour examiner les estimations de hauteur de CREPE pour un exemple plus complexe, nous avons d'abord
appliqué CREPE au larynx et aux enregistrements au casque des chanteurs et comparé les résultats. Ensuite,
les estimations de CREPE sont comparées aux estimations de YIN pour les microphones du larynx.
Enfin, nous appliquons CREPE et Melodia à l'enregistrement du microphone de salle ( enregistrement polyphonique).
79 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
6. ÉVALUATION DES ENREGISTREMENTS GÉORGIENS
6.1.1 Évaluation avec CREPE
Pour chaque chanteur, le CREPE est appliqué aux deux enregistrements (larynx et casque). Pour cela, nous utilisons
la structure complète du modèle Mfull et une taille de saut de 10 millisecondes (de l'audio rééchantillonné à 16 000 Hz).
Dans la figure 6.1, les résultats pour le premier chanteur sont présentés. Sur la figure 6.1a, les trajectoires de
hauteur du microphone du larynx et du microphone du casque évalués avec CREPE sont tracées. Pour certaines
plages de temps, les estimations sont similaires, et pour certaines plages de temps, elles diffèrent beaucoup plus.
Les différences sont calculées en cents et un seuil de 25 cents est appliqué. Si les deux estimations pour
l'enregistrement du larynx et l'enregistrement du casque sont presque similaires (différence ≤ 25 cents), nous
supposons que les deux prédictions sont correctes. Les trames pour lesquelles les estimations de pitch
diffèrent de plus de 25 centièmes (estimation supposée erronée) sont marquées en gris sur la figure 6.1b. Le
CREPE calcule également une valeur de confiance (voicing estimate). Une confiance entre 0,0 et 0,5 indique
qu'une trame est prédite comme non voisée (pas de mélodie) et une confiance entre 0,5 et 1,0 indique qu'une
trame est prédite comme voisée. L'estimation de voisement de CREPE pour l' enregistrement du larynx est
illustrée à la figure 6.1c. Dans la figure, il est visible que les trames avec une grande différence dans les
hauteurs estimées pour les deux microphones coïncident fortement avec les trames qui sont prédites comme
non voisées. Ainsi, pour les trames non voisées (pauses), l'estimation de hauteur est souvent incorrecte. Il est
également à noter que les estimations de hauteur pour l'enregistrement du larynx varient plus que les
estimations de hauteur pour le microphone du casque. Cela est probablement dû à la présence plus forte
d'autres voix dans l' enregistrement au casque. Ainsi, pendant les pauses, les hauteurs des autres chanteurs sont prédites.
Figure 6.1 : Évaluation par CREPE (Mfull) pour le premier chanteur. ( a ) Estimations de hauteur de CREPE pour
l'enregistrement du larynx et pour l'enregistrement au casque. (b) Trames avec une différence de hauteur de plus de
25 cents (marquées en gris). ( c ) Confiance évaluée avec CREPE sur l'enregistrement du larynx (images prédites
comme non prononcées marquées en vert).
80 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
6.1 ESTIMATION DE LA PITCH
Les estimations de hauteur pour les enregistrements du larynx peuvent être considérées comme plus fiables que les
estimations pour les enregistrements au casque, car moins de bruit des autres chanteurs est présent. Par conséquent,
les estimations des enregistrements du larynx peuvent être utilisées comme valeurs de fréquence fondamentale de
vérité de terrain. Ainsi, la précision de hauteur brute peut être calculée sans autres annotations. Les précisions de
hauteur brute pour les trois chanteurs et les différents seuils sont indiqués dans le tableau 6.1. Surtout pour le premier
et le deuxième chanteur, nous avons atteint des précisions élevées.
seuil Chanteur 1 Chanteur 2 Chanteur 3 10 cents
0,901 0,900 0,863
25 centimes 0,967 0,956 0,932
50 centimes 0,978 0,978 0,955
Tableau 6.1 : Précisions de hauteur brute pour les enregistrements au casque des trois chanteurs évalués avec
CREPE (Mfull, taille de saut de 10 ms pour l'audio rééchantillonné à 16 000 Hz). Comme vérité de terrain, les
estimations de fréquences fondamentales du CREPE appliquées aux microphones du larynx sont utilisées.
6.1.2 Comparaison avec YIN
Dans ce qui suit, nous comparons les estimations de fréquences fondamentales de CREPE aux fréquences obtenues
avec YIN [3]. Pour plus de détails sur YIN, voir la section 3.1.
Pour la comparaison avec YIN, les fichiers audio ont été rééchantillonnés à 16000 Hz avant d'appliquer YIN.
CREPE rééchantillonne également les fichiers audio à 16 000 Hz, ce qui garantit que les deux approches
d'estimation de hauteur utilisent exactement la même entrée et augmente la comparabilité des résultats. La
taille de saut pour l'évaluation avec YIN est fixée à 160 échantillons et la longueur de la fenêtre est de 1024 échantillons.
Ces valeurs sont égales aux valeurs utilisées pour l'évaluation avec CREPE : La longueur de fenêtre de CREPE
est fixée à 1024 échantillons et la taille de saut est fixée à 10 millisecondes (correspond à 160 échantillons).
Pour YIN, une fréquence minimale et une fréquence maximale doivent être fixées. Nous utilisons 30 Hz
(minimum) et 1760 Hz (maximum). Pour la comparaison de CREPE (Mfull) et YIN, nous n'utilisons que les
enregistrements des microphones du larynx, car ils contiennent moins de bruit des autres chanteurs. Par
conséquent, les estimations de hauteur sur les microphones du larynx sont plus précises.
Les estimations de hauteur de CREPE et YIN pour le premier chanteur sont présentées dans la Figure 6.2a. La
différence entre les estimations est calculée en cents. Ici, nous considérons les fréquences qui diffèrent de plus de 25
cents comme fausses. Si la différence est faible (≤ 25 cents), nous supposons que CREPE et YIN ont tous deux prédit
la fréquence fondamentale correcte. La figure 6.2b montre les zones avec des prédictions erronées (différence > 25
cents) en gris. Une confiance vocale est obtenue en appliquant le CREPE à l'enregistrement du larynx. Il est ajouté
dans la Figure 6.2c. Pour les valeurs de confiance, un seuil de 0,5 est utilisé et les trames avec une confiance inférieure
à ce seuil (prédites comme non voisées) sont marquées en vert. Il est à noter que les trames qui sont prédites comme
non voisées par le CREPE sont souvent aussi des trames avec une grande différence entre les estimations de
fréquence. Donc probablement, ce sont les plages horaires où le chanteur 1 ne chante pas.
81 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
6. ÉVALUATION DES ENREGISTREMENTS GÉORGIENS
Afin d'étudier plus avant les résultats de hauteur, la précision de hauteur brute est calculée. Comme vérité
terrain , nous utilisons les fréquences fondamentales obtenues en appliquant le CREPE aux enregistrements du larynx.
Pour CREPE, nous choisissons le modèle complet Mfull et une taille de saut de 10 millisecondes de l'audio
rééchantillonné à 16000 Hz. Les estimations évaluées sont les valeurs de fréquence fondamentales obtenues
en utilisant YIN avec les mêmes paramètres que ceux décrits cidessus. Nous calculons la précision de hauteur
brute pour l'enregistrement du larynx de chaque chanteur. Pour les résultats, voir le tableau 6.2. Les précisions
les plus élevées sont atteintes pour le chanteur 1. Cependant, les précisions de hauteur brute pour YIN évaluées
sur les enregistrements du larynx sont significativement inférieures aux précisions de hauteur brute pour CREPE
évaluées sur les enregistrements au casque (cf. Tableau 6.1). Cela indique que les estimations de CREPE pour
les deux types de microphones sont plus similaires que les estimations de CREPE et YIN sur le même type de
microphone ( micro larynx). Une explication possible de ce résultat est que dans les enregistrements du larynx,
les voix des autres chanteurs sont encore légèrement audibles pendant les pauses du chanteur enregistré. Il se
pourrait donc que le CREPE évalué sur un enregistrement du larynx prédise les hauteurs des autres chanteurs
pendant les pauses pendant quelques instants.
Figure 6.2 : Évaluation utilisant CREPE (Mfull) et YIN pour le premier chanteur (enregistrement du larynx). ( a )
Estimations de hauteur pour l'enregistrement du larynx avec CREPE et YIN. (b) Trames avec une différence de
hauteur de plus de 25 cents (marquées en gris). ( c ) Confiance évaluée avec CREPE sur l'enregistrement du larynx
(images prédites comme non prononcées marquées en vert).
6.1.3 Musique polyphonique
CREPE est développé pour estimer les fréquences fondamentales des enregistrements audio monophoniques.
Contrairement à d'autres approches, le CREPE n'est donc pas entraîné à reconnaître la mélodie principale d'un
enregistrement (estimation de la mélodie prédominante). De plus, le CREPE ne prédit qu'une seule valeur de fréquence pour
82 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
6.1 ESTIMATION DE LA PITCH
seuil Chanteur 1 Chanteur 2 Chanteur 3
10 centimes 0,767 0,655 0,669
25 centimes 0,882 0,788 0,803
50 centimes 0,908 0,837 0,860
Tableau 6.2 : Précisions de hauteur brute pour les enregistrements du larynx des trois chanteurs évalués avec
YIN. Comme vérité de terrain, les estimations de fréquence fondamentale de CREPE (Mfull) appliquées aux
microphones du larynx sont utilisées.
à chaque fois et n'a pas la possibilité d'étudier plusieurs hauteurs se produisant simultanément (estimation de plusieurs
hauteurs).
Cependant, nous appliquons CREPE à un enregistrement audio polyphonique afin d'étudier ses résultats.
Pour l'évaluation avec CREPE, nous utilisons la structure complète du modèle Mfull et une taille de saut de
10 millisecondes (les audios sont rééchantillonnés à 16000 Hz par CREPE). Comme exemple, nous
utilisons l'enregistrement du microphone de la salle pour Batonebis Nanina. Il contient les voix des trois chanteurs.
Les estimations de fréquence fondamentale de CREPE sont présentées à la figure 6.3a. Afin de fournir
un certain contexte, nous avons également appliqué CREPE (mêmes paramètres que pour le microphone
de salle) aux enregistrements du larynx et ajouté les valeurs résultantes à la figure. Il est à noter que la
trajectoire des estimations du microphone de salle n'est pas très stable. Au lieu de cela, les estimations
sautent entre les estimations des autres enregistrements. Ceci peut s'expliquer par l'architecture du CREPE.
Le réseau de neurones de CREPE renvoie un vecteur de sortie à 360 dimensions yˆ. L'estimation de pas
est dérivée de ce vecteur en recherchant le pic dans le vecteur et en ne considérant que les entrées à un
certain voisinage autour du pic. Ces valeurs servent de poids pour les valeurs en cents. Pour la musique
polyphonique, les vecteurs de sortie de CREPE contiennent probablement plusieurs pics. Pourtant, seul le
maximum est pris en compte. Ainsi, s'il y a par exemple deux pics, le maximum des deux pics est sélectionné.
C'est un choix assez aléatoire et conduit à des sauts dans la trajectoire de tangage.
Dans la section 3.4, nous avons présenté Melodia. Melodia est une approche d'estimation de hauteur développée
par Salamon et al. [7]. Puisqu'il s'agit d'une approche pour la musique polyphonique, nous l'utilisons ici pour
évaluer l'enregistrement du microphone de la salle. Pour les fréquences fondamentales résultantes, voir la Figure 6.3b.
L'objectif de Melodia est d'identifier les valeurs de fréquence fondamentales de la mélodie principale.
Cependant, l'enregistrement de Batonebis Nanina n'a pas de mélodie principale clairement déterminée.
Cependant, les estimations de Melodia sont plus stables et sautent moins fréquemment entre les estimations
des chanteurs. Melodia se concentre également davantage sur les hauteurs appartenant au chanteur 3. C'est la
chanteuse avec les hauteurs les plus élevées en général. Melodia ne prédit que rarement les fréquences
appartenant au chanteur 1 (voix la plus grave).
Donc, en résumé, on peut dire que CREPE prédit les fréquences appartenant à l'une des voix, mais la trajectoire de
hauteur saute fréquemment. Melodia se concentre plutôt sur les voix plus aiguës et produit une trajectoire de hauteur
plus stable.
83 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
6. ÉVALUATION DES ENREGISTREMENTS GÉORGIENS
Figure 6.3 : Estimation de hauteur pour les enregistrements du larynx de tous les chanteurs et l'enregistrement du microphone
de la salle. (a) Estimation avec CREPE. (b) Estimé avec YIN.
6.2 Estimation de la voix
Dans la section précédente, nous avons discuté de l'estimation des fréquences fondamentales pour la
musique vocale géorgienne. Outre l'estimation de F0, il y a aussi la tâche d'estimation de voisement. L'
estimation de voisement a pour objectif de prédire pour une instance temporelle donnée, si la trame
correspondante est voisée ou non. Si une trame est non voisée, cela implique qu'il n'y a pas de mélodie présente à ce moment
exemple.
84 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
6.2 ESTIMATION DE LA VOIX
CREPE produit une valeur de confiance pour chaque instance de temps qui peut être interprétée comme une estimation
de voisement. Ainsi, la fonction de voisement pour CREPE mappe chaque fois l'instance n à une valeur de confiance
entre 0 et 1 :
Pour CREPE, les valeurs de confiance supérieures à 0,5 indiquent qu'une trame est voisée. Ainsi, à partir de
la fonction de voisement VCrepe(n), une fonction d'activité ACrepe : Z → {0, 1} pour CREPE peut être dérivée,
qui vaut 1 si une trame est prédite comme voisée et 0 sinon :
1
si VCrêpe(n) > 0,5
ACrêpe(n) = . (6.2)
0 autre
YIN calcule plusieurs valeurs liées à la voix. On utilise la mesure apériodique qui est le rapport de la
puissance apériodique à la puissance totale. Pour plus de détails sur le voicing en YIN, voir Section 3.1.2.
Ainsi, une fonction de voisement pour YIN peut être définie comme une fonction qui mappe chaque instance n à une
valeur de voisement :
VYin(n) R≥0. (6.3)
Dans la section 3.1.2, nous avons déduit un seuil de 0,1467 pour la mesure apériodique. Si la mesure apériodique est
supérieure à ce seuil, cela indique qu'une forte apériodicité est présente et donc la trame est considérée comme non
voisée. Sinon, une trame est considérée comme voisée. Ceci conduit à la fonction d'activation suivante AYin : Z → {0, 1}
pour YIN :
1 si VYin(n) < 0,1467
AYin(n) = . (6.4)
0 autre
A titre d'exemple, nous avons examiné les fonctions de voisement et les fonctions d'activation de CREPE et YIN sur
l'enregistrement de Batonebis Nanina (chanteuse 1). Pour CREPE, nous utilisons la structure complète du modèle
Mfull et une taille de saut de 10 millisecondes. Pour YIN, nous avons d'abord rééchantillonné les fichiers audio à
16000 Hz, afin d'utiliser la même entrée que pour CREPE. YIN a ensuite été évalué avec une taille de saut de 160
échantillons et une longueur de fenêtre de 1024 échantillons (identique à CREPE). La fréquence minimale a été
fixée à 30 Hz et la fréquence maximale à 1760 Hz. Voir la figure 6.4 pour les résultats.
Pour le graphique, le résultat de la fonction de voisement de YIN est multiplié par (1). La raison en est que YIN a de
faibles valeurs de voisement aux trames qui sont estimées comme non voisées tandis que CREPE a des valeurs de
voisement élevées aux trames qui sont estimées comme non voisées. Afin de recevoir un tracé standardisé, la
multiplication par (1) est nécessaire. Le graphique montre que les valeurs de voisement sont plus élevées pour les
enregistrements au casque (Figure 6.4a) que pour les enregistrements du larynx (Figure 6.4b). Cela peut s'expliquer
par les pauses dans les enregistrements du larynx. La fonction d'activité de CREPE et YIN pour
85 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
6. ÉVALUATION DES ENREGISTREMENTS GÉORGIENS
les enregistrements du larynx sont illustrés à la figure 6.4c. Ici, nous avons également ajouté l'union et
l'intersection des fonctions d'activité :
1 si ACrepe(n) == 1 ou AYin(n) == 1
(ACrepe AYin)(n) = (6.5)
0 autre
et
1 si ACrepe(n) == 1 et AYin(n) == 1
(ACrepe ∩ AYin)(n) = . (6.6)
0 autre
Grâce à l'écoute de l'enregistrement, en particulier l'intersection des fonctions d'activité de CREPE et YIN
ACrepe ∩ AYin s'est avérée être une bonne estimation pour la voix.
Figure 6.4 : Voicing de CREPE et YIN appliqué à Batonebis Nanina. (a) Estimations de voicing de CREPE et
YIN pour l'enregistrement au casque du chanteur 1. (b) Estimations de voicing de CREPE et YIN pour
l'enregistrement du larynx du chanteur 1. (c) Activités pour l'enregistrement du larynx du chanteur 1.
En utilisant l'intersection des fonctions d'activité de CREPE et YIN, nous comparons les activités
vocales des trois chanteurs. Donc CREPE et YIN sont appliqués aux enregistrements de larynx des
chanteurs. Pour CREPE et YIN, nous utilisons les mêmes paramètres que ceux décrits cidessus.
Les activités qui en résultent sont illustrées à la figure 6.5. Lors de l'écoute de l'enregistrement, on
peut reconnaître qu'il y a certaines secondes où un seul chanteur chante. En écoutant, ces parties
solo se sont produites aux secondes 0, 28, 43, 57, 71, 87 et 101. Ces instances temporelles sont
marquées en orange dans l'intrigue. L'activité vocale sur la figure montre également qu'il n'y a que la
deuxième personne qui chante.
86 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
6.2 ESTIMATION DE LA VOIX
Ainsi, une estimation de voisement très précise peut être obtenue en utilisant l'estimation de voisement de CREPE
et YIN et en combinant cellesci en utilisant l'intersection.
Figure 6.5 : Activation de la voix à l'aide de l'intersection des activités de CREPE et de YIN. Les parties où seul le
chanteur 2 chante sont marquées en orange. (a) ACrepe ∩ AYin pour l'enregistrement du larynx du chanteur 1. (b)
ACrepe ∩ AYin pour l'enregistrement du larynx du chanteur 2. (c) ACrepe ∩ AYin pour l'enregistrement du larynx
du chanteur 3.
87 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
Machine Translated by Google
7. CONCLUSIONS
Chapitre 7
conclusion
Dans cette thèse, nous avons analysé une approche d'estimation de fréquence fondamentale basée sur un
réseau neuronal profond et développé d'autres approches pour améliorer les performances du réseau et le
processus de formation.
Nous avons commencé par une évaluation des approches basées sur des modèles pour l'estimation de la fréquence
fondamentale au chapitre 3. Pour l'évaluation, nous avons utilisé YIN [3], pYIN [4], SWIPE [5, 6] et Melodia [7].
Ces approches pour l'estimation de F0 ont été évaluées sur cinq exemples composés de trois exemples
artificiels et de deux exemples de l'ensemble de données MDBstemsynth [8]. Avec YIN, nous avons
obtenu de bonnes estimations de fréquence, même si la gamme de fréquences doit être restreinte. La
deuxième approche, pYIN, a entraîné des estimations inexactes pour l'un des exemples du synthéstem
MDB, peutêtre en raison de l'instrument (alto). , nous avons obtenu des estimations avec une forte similarité
Utiliser SWIPE pour les fréquences annotées. Il a également été constaté que Melodia produisait des
estimations précises, bien qu'il y ait quelques erreurs dues à l'attribution de fréquences à des bacs avec une plage de fréq
Ensuite, au chapitre 4, nous avons présenté CREPE, un réseau de neurones convolutifs développé par Kim et
al. [1]. Il s'agit d'une approche d'estimation de fréquence fondamentale basée sur un réseau de neurones à
convolution profonde. Nous avons évalué cette approche sur quelques exemples audio et obtenu des estimations
de fréquence précises. Cependant, la gamme de fréquences de CREPE est limitée, de sorte que seules les
fréquences de cette gamme peuvent être estimées correctement. Pour les fréquences plus élevées, CREPE
prédit plutôt la sousharmonique selon nos expériences.
De plus, nous avons développé d'autres approches pour les modifications de CREPE au chapitre 4. Étant donné
que seul un ensemble de données limité était disponible pour la formation, nous avons utilisé l'augmentation des
données. Pour cela, un pitch shifting a été appliqué au jeu de données. Une autre approche consistait à augmenter
la dimension de la couche de sortie du réseau. Cela conduit à une résolution de fréquence plus élevée du vecteur de sortie.
De plus, nous avons évalué les poids de la première couche convolutive du réseau. La transformée de
Fourier des filtres s'est avérée former une courbe similaire à une courbe exponentielle lorsqu'elle est triée
89 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
7. CONCLUSIONS
pour l'indice maximal. Nous avons utilisé ce résultat pour précalculer les poids des filtres afin d'exclure la
première couche du processus d'apprentissage. Enfin, nous avons développé un nouveau réseau avec un
nombre réduit de filtres et filtres plus petits.
Nous avons ensuite évalué ces modifications au chapitre 5. Pour cela nous avons réentrainé le réseau en incluant les
nouvelles approches. En particulier, l'augmentation des données (changement de hauteur) s'est avérée être une technique
utile. Un réseau entraîné n'apprend à prédire correctement les fréquences que dans les plages pour lesquelles il a été
entraîné. Ainsi, en utilisant le pitch shifting, nous avons pu augmenter cette plage de fréquences.
Enfin, nous avons appliqué CREPE à un ensemble de données plus complexe composé de musique
vocale traditionnelle géorgienne au chapitre 6. Pour un enregistrement, nous avons comparé les estimations
F0 obtenues à partir de différents microphones et comparé les estimations de CREPE et YIN. Nous avons
découvert que la différence des estimations de CREPE et YIN est une bonne indication pour les segments
non voisés. S'il n'y a pas de voix présente, la différence entre les estimations est plus élevée. De plus,
nous avons appliqué CREPE à un enregistrement polyphonique (trois chanteurs). Les estimations F0 de
CREPE sont égales à la fréquence de l'un des chanteurs à la plupart des instances temporelles. Ceci peut
s'expliquer par l' architecture du CREPE. De plus, nous avons examiné l'estimation de la voix de CREPE
et YIN sur différents microphones. Il en résulte que la meilleure détection de voisement binaire est obtenue
en utilisant l'intersection des estimations de CREPE et YIN appliquées à l'enregistrement d'un microphone
larynx. En utilisant cette estimation de voicing, nous avons également pu détecter des segments où un
seul chanteur est actif dans un enregistrement.
Des recherches futures concernant le processus de formation du CREPE pourraient évaluer l'influence d'un plus grand
nombre d'époques de formation sur les résultats. L'approche utilisant l'augmentation des données pourrait également être
étendue en ajoutant de la réverbération et une méthode de changement de hauteur différente. De plus, CREPE pourrait
être recyclé pour la musique vocale géorgienne [12, 13] afin d'améliorer les estimations F0 sur cet ensemble de données.
Concernant également l'architecture du CREPE, des recherches complémentaires sont possibles. Cela
pourrait aborder l' examen des paramètres du CREPE. Cela inclut le choix du taux d'échantillonnage pour
l' entrée audio pour CREPE, la taille de la fenêtre pour l'évaluation et la formule pour le calcul d'une sortie
en Hertz (taille du voisinage autour du pic). La structure du réseau pourrait également être modifiée
davantage. La dérivation de la confiance déterminée par le CREPE utilise un seuil qui n'est théoriquement
pas justifié. Au lieu de cela, il pourrait être formé avec l'estimation F0.
Théoriquement, l'estimation multihauteur ou l'estimation de la mélodie prédominante pourrait également être possible avec
CREPE. Cela nécessiterait une interprétation modifiée du vecteur de sortie et d'autres étapes de posttraitement.
90 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
BIBLIOGRAPHIE
Bibliographie
[1] Jong Wook Kim, Justin Salamon, Peter Li et Juan Pablo Bello. CREPE : Une représentation convolutive pour l'estimation de
hauteur. Dans IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), pages 161–165,
2018.
[2] Brian CJ Moore. Introduction à la psychologie de l'ouïe, 5e éd. Presse académique, 2003.
[3] Alain de Cheveign´e et Hideki Kawahara. YIN, un estimateur de fréquence fondamental pour la parole et la musique. Journal
of the Acoustical Society of America (JASA), 111(4):1917–1930, 2002.
[4] Matthias Mauch et Simon Dixon. pYIN : un estimateur de fréquence fondamentale utilisant des distributions de seuil
probabilistes. Dans IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), pages 659–663,
Florence, Italie, 2014.
[5] Arturo Camacho et John G. Harris. Un estimateur de hauteur inspiré de la forme d'onde en dents de scie pour la parole et
musique. Le Journal de l'Acoustical Society of America, 124(3):1638–1652, 2008.
[6] Arturoa Camacho. Swipe : un estimateur de hauteur inspiré de la forme d'onde en dents de scie pour la parole et la musique.
2007. Thèse de doctorat, Université de Floride.
[7] Justin Salamon et Emilia Gomez. Extraction de mélodies à partir de signaux musicaux polyphoniques à l'aide de
caractéristiques de contour de hauteur. IEEE Transactions on Audio, Speech, and Language Processing, 20(6):1759–1770 ,
2012.
[8] Justin Salamon, Rachel M Bittner, Jordi Bonada, Juan J Bosch, Emilia G´omez et Juan Pablo Bello.
Un cadre d'analyse/synthèse pour l'annotation f0 automatique d'ensembles de données multipistes. Dans Actes de la
Conférence internationale sur la recherche d'informations musicales (ISMIR), 2017.
[9] Meinard Muller. Fondamentaux du traitement de la musique. Édition Springer, 2015.
[10] Piano en do majeur. https://upload.wikimedia.org/wikipedia/commons/7/72/C_major.ogg.
Consulté : 20191022.
[11] Justin Salamon, Emilia G´omez, Daniel PW Ellis et Ga¨el Richard. Extraction de mélodies à partir de signaux musicaux
polyphoniques : approches, applications et défis. Magazine de traitement du signal IEEE, 31(2):118–134, 2014.
[12] Frank Scherbaum, Nana Mzhavanadze et Elguja Dadunashvili. Une archive Web à long terme d' enregistrements audio,
vidéo et larynxmicrophone de chants, de prières et de lamentations traditionnels géorgiens avec un accent particulier sur
Svaneti. Symposium international sur la polyphonie traditionnelle, 2018.
91 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
BIBLIOGRAPHIE
[13] Frank Scherbaum, Sebastian Rosenzweig, Meinard Müller, Daniel Vollmer et Nana Mzhavanadze.
Microphones de gorge pour l'analyse de la musique vocale. In Demos and Late Breaking News of the International
Society for Music Information Retrieval Conference (ISMIR), Paris, France, 2018.
[14] Rachel M. Bittner, Justin Salamon, Mike Tierney, Matthias Mauch, Chris Cannam et Juan Pablo Bello. MedleyDB : un
ensemble de données multipiste pour la recherche MIR intensive en annotations. Dans Actes de l' International Society
for Music Information Retrieval Conference (ISMIR), pages 155–160, Taipei, Taïwan, 2014.
[15] Emilia G´omez et Jordi Bonada. Vers la transcription assistée par ordinateur du flamenco : une comparaison
expérimentale des algorithmes de transcription automatique appliqués au chant a cappella. Journal d'informatique
musicale , 37(2):73–90, 2013.
[16] Jordi Bonada. Modélisation sinusoïdale harmonique large bande. Dans 11e Conférence internationale sur le numérique
Effets audio DAFx, volume 8, pages 265–272, Espoo, Finlande, 2008.
[17] Jeux de données Synth. http://synthdatasets.weebly.com/. Consulté : 20191022.
[18] Musik aktiv lernen mit music delta. https://www.lerneo.de/lernwelten/musicdelta/. Accédé:
20191022.
[19] Annotations Medleydb. https://github.com/marl/medleydb/tree/master/medleydb/data/
Métadonnées. Consulté : 20191022.
[20] Worldomètres de la population de Géorgie. https://www.worldometers.info/worldpopulation/
Géorgiepopulation/. Consulté : 20191022.
[21] Meinard Müller, Sebastian Rosenzweig, Jonathan Driedger et Frank Scherbaum. Estimation interactive de la fréquence
fondamentale avec applications à la recherche ethnomusicologique. Dans Actes de la conférence internationale AES
sur l'audio sémantique, pages 186–193, Erlangen, Allemagne, 2017.
[22] Graham E. Poliner, Daniel PW Ellis, Andreas F. Ehmann, Emilia G´omez, Sebastian Streich et Beesuan Ong.
Transcription mélodique de la musique audio : Approches et évaluation. IEEE Transactions on Audio, Speech, and
Language Processing, 15(4):1247–1256, 2007.
[23] J Stephen Downie, Kris West, Andreas Ehmann et Emmanuel Vincent. L'échange d'évaluation de la recherche
d'information musicale de 2005 (mirex 2005) : Aperçu préliminaire. Dans Actes de la Conférence internationale sur la
recherche d'informations musicales (ISMIR), pages 320–323, Londres, RoyaumeUni, 2005.
[24] Implémentation Swipe'. https://github.com/kylebgorman/swipe. Consulté : 20191115.
[25] Traqueur de pas de crêpe. https://github.com/marl/crepe. Consulté : 20191115.
[26] ChaoLing Hsu et JyhShing Roger Jang. Sur l'amélioration de la séparation des voix chantées pour les enregistrements
monauraux à l'aide de l'ensemble de données MIR1K. IEEE Transactions on Audio, Speech, and Language
Processing, 18(2):310–319, février 2010.
[27] Zhiyao Duan, Bryan Pardo et Changshui Zhang. Estimation de fréquence fondamentale multiple en modélisant les pics
spectraux et les régions sans pic. IEEE Transactions on Audio, Speech, and Language Processing, 18(8):2121–2133,
2010.
92 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google
BIBLIOGRAPHIE
[28] Masataka Goto, Hiroki Hashiguchi, Takuichi Nishimura et Ryuichi Oka. Base de données musicales RWC : Bases de
données musicales populaires, classiques et jazz. Dans Actes de la Conférence internationale sur la recherche
d'informations musicales (ISMIR), volume 2, pages 287288, 2002.
[29] Jesse Engel, Cinjon Resnick, Adam Roberts, Sander Dieleman, Mohammad Norouzi, Douglas Eck et Karen Simonyan.
Synthèse audio neuronale de notes de musique avec autoencodeurs wavenet. Dans Actes de la 34e Conférence
internationale sur l'apprentissage automatique, volume 70, pages 10681077.
JMLR.org, 2017.
[30] Documentation Resampy. https://resampy.readthedocs.io. Consulté : 20191022.
[31] Sergueï Ioffe et Christian Szegedy. Normalisation par lots : accélération de la formation approfondie du réseau en
réduisant le changement de covariable interne. Dans Actes de la Conférence internationale sur l'apprentissage
automatique (ICML), pages 448–456, 2015.
[32] Nitish Srivastava, Geoffrey Hinton, Alex Krizhevsky, Ilya Sutskever et Ruslan Salakhutdinov.
Abandon : un moyen simple d'empêcher les réseaux de neurones de se suradapter. Journal of Machine Learning
Research, 15(1):1929–1958, juin 2014.
[33] Keras : la bibliothèque d'apprentissage en profondeur Python. https://keras.io/. Consulté : 20191022.
[34] Diederik P. Kingma et Jimmy Ba. Adam : Une méthode d'optimisation stochastique. Dans Actes de la Conférence
internationale sur les représentations de l'apprentissage (ICLR), San Diego, Californie, ÉtatsUnis, 2015.
[35] Librosa. https://librosa.github.io/librosa/. Consulté : 20191022.
[36] Brian McFee, Colin Raffel, Dawen Liang, Daniel PW Ellis, Matt McVicar, Eric Battenberg et Oriol Nieto. librosa :
analyse de signaux audio et musicaux en python. Dans Actes de la 14e conférence sur le python dans la science,
volume 8, 2015.
[37] Brian McFee, Matt McVicar, Oriol Nieto, Stefan Balke, Carl Thome, Dawen iang, Eric Battenberg, Josh Moore, Rachel
Bittner, Ryuichi Yamamoto, Dan Ellis, FabianRobert St¨oter, Douglas Repetto, Simon Waloschek, CJ Carr, Seth
Kranzler, Keunwoo Choi, Petr Viktorin, Joao Felipe Santos, Adrian Holovaty, Waldir Pimenta et Hojin Lee. librosa
0.5.0, février 2017.
[38] Colin Raffel, Brian McFee, Eric J. Humphrey, Justin Salamon, Oriol Nieto, Dawen Liang et Daniel PW Ellis. MIR
EVAL : Une implémentation transparente des métriques MIR communes. Dans Actes de la Conférence internationale
sur la recherche d'informations musicales (ISMIR), pages 367–372, Taipei, Taïwan, 2014.
93 Mémoire de maîtrise, Judith Bauer
Machine Translated by Google