Vous êtes sur la page 1sur 104

Machine Translated by Google

¨
Friedrich­Alexander­Universit¨at  Erlangen­Nurnberg

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­ ¨
Alexander­Universit¨at  Erlangen­Nurnberg  
¨ (FAU)  et  du  Fraunhofer­Institut  
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
F0­estimation.
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

F0­Sch¨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  F0­Sch¨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  F0­Sch¨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

2.1  Traitement  du  signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  7

2.2  Estimation  fondamentale  de  la  fréquence . . . . . . . . . . . . . . . . . . . . . . . .  dix


2.3  Jeux  de  données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  14
2.4  Mesures  d'évaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  20

3  Estimation  de  fréquence  fondamentale  basée  sur  un  modèle 25
3.1  YIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  25

3.2  pYIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  30


3.3  GLISSER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  32
3.4  Mélodie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  34

4  Approche  basée  sur  le  DNN 41
4.1  CRÊPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  41

4.2  Approches  propres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  55

5  Evaluation  sur  MDB­stem­synth  5.1   63
CREPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  63

5.2  Approches  personnelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  65

6  Évaluation  des  enregistrements  géorgiens 79

1 Mémoire  de  maîtrise,  Judith  Bauer
Machine Translated by Google

CONTENU

6.1  Estimation  du  pas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  79


6.2  Estimation  de  Voicing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  84

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  multi­hauteur).
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.  Celles­ci  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  (MDB­stem­synth  [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  MDB­stem­synth  [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  MDB­stem­synth.
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  MDB­stem­synth  [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  pression­temps  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] ) :
N­1
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]) :

N­1

X  (m,  k)  = x(n  +  mH)w(n)exp(−2πikn/N). (2.5)


n=0

avec  m     Z  (indice  de  temps),  k     [0 :  K]  (indice  de  fréquence)  et  w :  [0 :  N  −  1]  →  R  (fonction  fenêtre ).  L'indice  


de  temps  m  correspond  au  temps  physique

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  multi­hauteur  [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,  celle­ci  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].  Celles­ci  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

avec  ωref     R  (fréquence  de  référence,  affectée  à  l'indice  bin  1)  et  R     R  (résolution  de  l'axe  des  fréquences).

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  log­fréquence  raffiné  en  additionnant  
sur  tous  les  indices  de  fréquence  appartenant  au  même  ensemble :

YLF(n,  b) := |X  (n,  k)| (2.12)


k P(b)

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

Préd   :=   1  +  ω  ∙  (t2  −  t1), (2.13)

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

pour  n,  k     Z.  Le  paramètre  H     N  détermine  la  quantité  d'harmoniques  qui  sont  utilisées  pour  la  sommation  harmonique.  

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­

stem­synth  [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  MDB­stem­synth

Un  autre  jeu  de  données  qui  sera  utilisé  dans  cette  thèse  est  le  jeu  de  données  MDB­stem­synth  [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  MDB­stem­synth  [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  MDB­stem­synth  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  MDB­stem­synth.  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 :  MDB­melody­synth  
(pour  les  pistes  mélodiques),  MDB­bass­synth  (pour  les  pistes  de  basse),  MDB­mf0­synth  (pour  les  
instruments  à  hauteur  monophonique),  MDB­stem­synth  (pour  les  pistes  solo )  et  Bach10­mf0­synth  (pour  
10  chorals  Bach)  disponibles  sur  [17].  Ici,  nous  nous  concentrons  sur  le  suivi  de  hauteur  monophonique.  
L'ensemble  de  données  MDB­stem­synth  est  donc  approprié  pour  cette  tâche.  MDB­stem­synth  est  publié  
sous  les  termes  de  la  licence  internationale  Creative  Commons  Attribution­NonCommercial  4.0.  Il  peut  être  téléchargé  san
frais  après  avoir  rempli  un  formulaire  de  téléchargement.

MDB­stem­synth  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  MDB­stem­synth  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  plate­forme  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  MDB­stem­synth.

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  MDB­stem­synth.  (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

Attribution­NonCommercial­NoDerivatives  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  demi­ton  correspond  à  100  cents  et  une  
octave  à  1200  cents  (12  demi­tons).  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.

Nous  supposons  qu'une  trajectoire  fréquentielle  estimée  η :  [1 :  N]  →  R     { }  et  une  trajectoire  fréquentielle  annotée  


(vérité  terrain)  η :  [1 :  N]  →  R     { }  sont  donnés  pour  un  signal  discret  x.  Il  est  à  
noter  que  le  taux  d'échantillonnage  du  signal  x  n'est  pas  nécessairement  égal  au  taux  d'échantillonnage  de  la  
trajectoire  fréquentielle.  Par  exemple,  si  un  signal  x  avec  un  taux  d'échantillonnage  de  16000  Hz  est  donné,  les  
instances  temporelles  de  x  ont  une  distance  de  0,0625  millisecondes.  Cependant,  la  trajectoire  de  fréquence  peut  
mapper  des  tranches  de  temps  avec  une  distance  de  10  millisecondes  (taille  de  saut)  aux  valeurs  de  fréquence.  Dans  
la  suite,  nous  utilisons  l'indice  de  temps  n  pour  les  trames  de  la  trajectoire  fréquentielle.  Ainsi,  pour  l'instance  
temporelle  n,  nous  pouvons  calculer  la  différence  entre  les  fréquences  estimées  et  annotées :

η(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 :

  1  si  ∆cents(n)  <  et  η(n)  =     et  η     (n)  =  


Tpas(n) := . (2.19)
0  autre

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) :

  1  si  (∆cents(n)  mod  1200)  <  et  η(n)  =     et  η     (n)  =  

Tchroma(n)  = 1  si  1200  −  (∆cents(n)  mod  1200)  <  et  η(n)  =     et  η     (n)  =   (2.22)


  

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  F­mesure :

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  à  lui­mê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  sous­harmoniques  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  MDB­stem­synth  [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  
MDB­stem­synth  (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  MDB­stem­synth,  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  ceux­ci,  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)) :

P(τ  =  τ0|S,  x(n))  = a(s(i),  τ )P(s(i))[Y  (x(n),  s(i))  =  τ ] (3.3)


je=1

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  MDB­stem­synth  [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  sous­harmoniques  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  MDB­stem­synth  
[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  sous­harmoniques  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 :  MIR­1K  [26],  Bach10  [27],  RWC­Synth  [4,  28],  MedleyDB  [14],  MDB­
STEM­Synth  [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,  celui­ci  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

yˆ :=  (ˆy(1),  yˆ(2), ...,  yˆ(360))     [0,  1]360 (4.1)

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  demi­tons  ω¢  
octave.  En  combinaison  avec  une  résolution  de  20  centièmes  (cinq  entrées  par  demi­ton),  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

ycorrect  =  (ycorrect(1),  ycorrect(2), ...,  ycorrect(360))     [0,  1]360 (4.8)

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

L(ycorrect,  yˆ)  = (−ycorrect(i)  log  ̂y(i)  −  (1  −  ycorrect(i))  log(1  −  yˆ(i))). (4.10)


je=1

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  
sous­harmonique  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  
moments­là,  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  au­dessus  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  (sous­harmoniques  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  sous­harmoniques  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  MDB­stem­synth

Pour  les  deux  exemples  en  cours  d'exécution  de  l'ensemble  de  données  MDB­stem­synth  [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  au­dessus  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  MDB­stem­synth  [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  MDB­stem­synth  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  demi­tons  par  octave  et  10  valeurs  par  
demi­ton  (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.

Mtiny  réduit Mpetit  Mmoyen   Mlarge Mplein


paramètres  entraînables  119  672  486  552  1  628  104  5  877  288  12  747  912  22  239  976

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  MDB­STEM­SYNTH

Chapitre  5

Evaluation  sur  MDB­stem­synth

Dans  ce  chapitre,  l'ensemble  de  données  MDB­stem­synth  [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  
MDB­stem­synth  [8].  Les  poids  des  filtres  formés  sont  publiés  en  ligne  (par  exemple  https://github.com/marl/crepe/raw/
models/model­tiny.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  MDB­STEM­SYNTH

•  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  MDB­stem­synth  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  MDB­stem­synth  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  MDB­stem­synth  [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  MDB­stem­synth.  
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  MDB­stem­synth,  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  ci­dessus.  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  MDB­STEM­SYNTH

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  MDB­STEM­SYNTH

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  MDB­stem­synth  [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  MDB­STEM­SYNTH

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  MDB­stem­synth.  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  sous­harmoniques.  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  MDB­stem­synth.  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  MDB­STEM­SYNTH

Figure  5.3 :  F0­estimations  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  sous­harmoniques  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)

10  centimes 0,778  ±  0,152   0,778  ±  0,152  0,837  ±  0,091  0,945  ±  


25  centimes 0,945  ±  0,052 0,052  0,942  ±  0,043
50  centimes 0,978  ±  0,023 0,979  ±  0,023  0,969  ±  0,027

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  MDB­STEM­SYNTH

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)

10  centimes 0,590  ±  0,119 0,591  ±  0,119  0,837  ±  0,091


25  centimes 0,893  ±  0,086 0,894  ±  0,085  0,942  ±  0,043
50  centimes 0,958  ±  0,051 0,959  ±  0,050  0,969  ±  0,027

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  sous­harmoniques  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  MDB­STEM­SYNTH

Figure  5.4 :  Nous  avons  formé  un  modèle  avec  un  nombre  réduit  de  paramètres.  La  figure  montre  les  F0­estimations  
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  
MDB­stem­synth  [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

156  minutes 220  minutes 162  minutes 149  minutes ­


entraînement

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.  Ceux­ci  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  ci­dessus.  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 :

VCrêpe(n)     [0,  1]. (6.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  ci­dessus.  
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  celles­ci  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  MDB­stem­synth  [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  sous­harmonique  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  multi­hauteur  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  post­traitement.

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é :  2019­10­22.

[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  larynx­microphone  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é :  2019­10­22.

[18]  Musik  aktiv  lernen  mit  music  delta.  https://www.lerneo.de/lernwelten/music­delta/.  Accédé:
2019­10­22.

[19]  Annotations  Medleydb.  https://github.com/marl/medleydb/tree/master/medleydb/data/
Métadonnées.  Consulté :  2019­10­22.

[20]  Worldomètres  de  la  population  de  Géorgie. https://www.worldometers.info/world­population/
Géorgie­population/.  Consulté :  2019­10­22.

[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,  Royaume­Uni,  2005.

[24]  Implémentation  Swipe'.  https://github.com/kylebgorman/swipe.  Consulté :  2019­11­15.

[25]  Traqueur  de  pas  de  crêpe.  https://github.com/marl/crepe.  Consulté :  2019­11­15.

[26]  Chao­Ling  Hsu  et  Jyh­Shing  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  MIR­1K.  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  287­288,  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  auto­encodeurs  wavenet.  Dans  Actes  de  la  34e  Conférence  
internationale  sur  l'apprentissage  automatique,  volume  70,  pages  1068­1077.
JMLR.org,  2017.

[30]  Documentation  Resampy.  https://resampy.readthedocs.io.  Consulté :  2019­10­22.

[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é :  2019­10­22.

[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,  États­Unis,  2015.

[35]  Librosa.  https://librosa.github.io/librosa/.  Consulté :  2019­10­22.

[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,  Fabian­Robert  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

Vous aimerez peut-être aussi