Upgrade to Pro — share decks privately, control downloads, hide ads and more …

La machine comprend ma voix

hellosct1
November 20, 2022

La machine comprend ma voix

Présentation effectuée au Capitole du libre 2022 par Christophe Villeneuve sur "La machine comprend ma voix".
Cette session montrera les progrès de ce projet et ceux de Deep Speech qui permet de contrôler le matériel par la voix.
Par ailleurs, une démo sur un Raspberry Pi permet d'illustrer différentes fonctionnalités de la voix sans Internet.

hellosct1

November 20, 2022
Tweet

More Decks by hellosct1

Other Decks in Science

Transcript

  1. La machine comprend ma voix
    Christophe Villeneuve
    @hellosct1
    @[email protected]
    Capitole du Libre 2022

    View Slide

  2. Atos open source - afup – lemug.fr – mariadb – drupal – mozilla - firefox – lemugfr - sumo – webextensions – VR – AR – XR - Cause commune 93.1 FM - TechSpeaker - Lizard - eyrolles – editions eni – programmez – linux pratique – webriver – elephpant -
    CommonVoice – Sécurité - Cybersécurité
    Christophe Villeneuve

    Consultant Open Source

    Dresseur animaux

    View Slide

  3. @hellosct1 – Capitole Du Libre 2022
    Aujourd’hui

    Rappels des Assistants

    Construire son Assistant

    La qualité

    View Slide

  4. @hellosct1 – Capitole Du Libre 2022
    Parle moi !!!
    - Animation stand
    - Translation FR -> EN
    - Traduction en temps réél
    - Raspberry PI 3+

    View Slide

  5. @hellosct1 – Capitole Du Libre 2022
    Assistants vocaux
    Construire son Assistant
    La qualité

    View Slide

  6. @hellosct1 – Capitole Du Libre 2022
    Assistant numérique :
    au service de l’utilisateur

    Smartphone

    Enceinte connectée

    Mixed Reality
    Souvent utilisé dans des
    contextes où la voix est plus
    efficace pour communiquer
    Que faire avec ?

    View Slide

  7. @hellosct1 – Capitole Du Libre 2022
    Matériels disponible

    View Slide

  8. @hellosct1 – Capitole Du Libre 2022
    Traitement de la voix

    Obligation d’un réseau
    – Connecter aux internets

    Accès aux services cloud pour pouvoir fonctionner
    – Entrainement et transcription gourmands en calculs

    Contraintes
    – Souvent laissé à des services tiers en-ligne
    – Nécessite beaucoup de données audio avec texte associé
    – Voix personnelle, mais enregistrement parfois constant

    View Slide

  9. @hellosct1 – Capitole Du Libre 2022
    L’utilisation de la recherche vocale aujourd’hui
    2016 2020
    2016 2020

    View Slide

  10. @hellosct1 – Capitole Du Libre 2022
    Common Voice

    But
    – Aider à apprendre aux machines comment les humains
    parlent vraiment

    Destiné à rendre la reconnaissance vocale ouverte et
    accessible à tout le monde

    Objectifs
    – 10 000 heures de données validées par langue
    – Mini 2 000 heures
    → Assistant numérique et voix
    Common Voice & Deep Speech

    View Slide

  11. @hellosct1 – Capitole Du Libre 2022
    Objectifs (1/2)

    Cassons les barrières de la voix
    – Accès : peu de gros jeux de données publiquement
    accessibles
    – Coût : ticket d’entrée important pour les jeux de
    données commerciaux, avec des complexités
    légales
    – Biais : seuls certains marchés sont bien pourvus

    View Slide

  12. @hellosct1 – Capitole Du Libre 2022
    Objectifs (2/2)

    Collecte de données ouvertes pour l’apprentissage machine

    Données : audio et texte correspondant

    Diversité
    – Langues
    – Accents
    – Ages
    – Genres
    – Qualité sonore

    Nous visons 10 000 heures de données validées par langue :
    https://voice.mozilla.org

    View Slide

  13. @hellosct1 – Capitole Du Libre 2022
    Ingredients

    View Slide

  14. @hellosct1 – Capitole Du Libre 2022
    Assistants vocaux
    Construire son Assistant
    La qualité

    View Slide

  15. @hellosct1 – Capitole Du Libre 2022
    Construire son assistant
    Import
    CC0
    Sentence
    Collector
    Saisie
    CCO

    View Slide

  16. @hellosct1 – Capitole Du Libre 2022
    Proposer et valider
    de nouvelles phrases

    Posséder un compte sur Common Voice.

    Identifiez-vous sur le Collecteur de phrases
    – Avec vos identifiants de Common Voice.
    Validation des phrases
    Page
    → page de validation.
    Ajouter de nouvelle phrases
    Page
    → Ajouter une nouvelle phrase

    View Slide

  17. @hellosct1 – Capitole Du Libre 2022
    Collecteur de phrases : Ajouter
    https://commonvoice.mozilla.org/sentence-collector/#/fr/add

    View Slide

  18. @hellosct1 – Capitole Du Libre 2022
    Collecteur de phrases : Valider
    https://commonvoice.mozilla.org/sentence-collector/#/fr/review/fr

    View Slide

  19. @hellosct1 – Capitole Du Libre 2022
    Voice.mozilla.org → Parler
    https://voice.mozilla.org/speak

    View Slide

  20. @hellosct1 – Capitole Du Libre 2022
    Voice.mozilla.org → Ecouter
    https://voice.mozilla.org/listen

    View Slide

  21. @hellosct1 – Capitole Du Libre 2022

    View Slide

  22. @hellosct1 – Capitole Du Libre 2022

    Heures enregistrées / Heures validées
    Qualité ?

    View Slide

  23. @hellosct1 – Capitole Du Libre 2022
    Mots ajoutés

    Les mots ajoutés quand on parle

    L’erreur est le mot ‘de’ qui a été ajouté
    Elle est située dans la zec
    Louise- Gosford, une aire
    publique de chasse et de pêche

    View Slide

  24. @hellosct1 – Capitole Du Libre 2022
    Mots oubliés

    Les mots qu’on oublie

    L’erreur est le mot ‘de’ qui a été oublié
    Angel est sur le point de
    l’interroger mais Wo-Pang se
    suicide

    View Slide

  25. @hellosct1 – Capitole Du Libre 2022
    Mots accrochés

    Les mots qu’on accroche

    La première syllabe du mot ‘Phénicie’ a été accrochée
    Elle relie le nord de l’égypte à
    la Phé Phénicie, l’Assyrie et la
    Mésopotamie

    View Slide

  26. @hellosct1 – Capitole Du Libre 2022
    Lettre(s) oubliée(s)

    Les lettres oubliées qui modifient le sens de la phrase

    La lettre ‘s’ a été oubliée
    → la phrase ne veut plus rien dire
    En conséquence, Durant
    Motors perdit des parts de
    marché et des revendeurs.

    View Slide

  27. @hellosct1 – Capitole Du Libre 2022
    Inversion de syllabe

    Une syllabe inversée dans un mot

    Le môt ‘évêché’ est prononcé « échevé »
    → qui est une erreur
    Selon l’échevé de Liège, l’abbé
    Schoonbroodt ne dispose
    d’aucun recours.

    View Slide

  28. @hellosct1 – Capitole Du Libre 2022
    Matériels

    View Slide

  29. @hellosct1 – Capitole Du Libre 2022
    Mauvaise compréhension
    de l’échantillon

    Le matériel « Micro » de mauvaise qualité

    Un « brouhaha » empêche la compression

    View Slide

  30. @hellosct1 – Capitole Du Libre 2022
    Bruit de souffle

    Le réglage du micro est mal réglé ou trop élevé
    → Nous obtenons un bruit de souffle

    View Slide

  31. @hellosct1 – Capitole Du Libre 2022
    Volume faible

    Le volume du micro est faible
    → rend l’échantillon incompréhensible

    View Slide

  32. @hellosct1 – Capitole Du Libre 2022
    Début coupé

    le ou les premiers mots ne sont pas enregistrés

    L’enregistrement est déclenché trop tard

    Les deux premiers ne sont enregistrés
    → Clavier ou souris appuyé trop tard
    Puis il affine son plumage et
    replie les ailes.

    View Slide

  33. @hellosct1 – Capitole Du Libre 2022
    Echantillon coupé

    l’enregistrement de l’échantillon est stoppé
    avant la fin
    → Il manque une partie de la phrase
    Les droits de Gielow sont
    ensuite rachetés au moment
    de la Réforme protestante.

    View Slide

  34. @hellosct1 – Capitole Du Libre 2022
    Le dernier mot a été coupé

    le ou les derniers mots sont coupés avant la fin
    de l’enregistrement

    La dernière syllabe du mot ‘Montgeroult’ est
    coupé
    L’ensemble du groupe scolaire
    se situe à Montgeroult.

    View Slide

  35. @hellosct1 – Capitole Du Libre 2022
    Envoyez un rapport

    Bouton « signaler »

    View Slide

  36. @hellosct1 – Capitole Du Libre 2022
    Construire son assistant : dataset

    View Slide

  37. @hellosct1 – Capitole Du Libre 2022
    Données ouvertes

    Décentraliser les données : plus de pouvoir aux
    utilisateurs et contributeurs
    – Facile à obtenir, exploiter
    – Partage des données
    – Intégration dans d’autres
    jeux de données
    – Outiller les communautés
    https://voice.mozilla.org/fr/datasets

    View Slide

  38. @hellosct1 – Capitole Du Libre 2022
    Quelques chiffres (Nov. 2022)

    100 langues actives
    – l’anglais, le français, l’allemand, le Kabyle,
    l’espéranto, le catalan, le breton, le basque…

    + 100000 contributeurs individuels
    Enregistré / validé

    + 200 développeurs

    View Slide

  39. @hellosct1 – Capitole Du Libre 2022
    Construire son assistant : DeepSpeech

    View Slide

  40. @hellosct1 – Capitole Du Libre 2022
    DeepSpeech

    Speech To Text
    – Voix vers le texte

    Text To Speech
    – Texte vers la Voix

    View Slide

  41. @hellosct1 – Capitole Du Libre 2022
    Projets

    NVIDIA Nemo
    – https://github.com/NVIDIA/NeMo

    DeepSpeech
    – https://github.com/mozilla/DeepSpeech

    Coqui
    – https://coqui.ai/
    – https://github.com/coqui-ai/stt

    View Slide

  42. @hellosct1 – Capitole Du Libre 2022
    Comment fait on ?

    Modèles
    – https://github.com/mozilla/deepspeech

    Languages
    – Python / Rust / NodeJS / .Net

    Projets locals
    – Pas de dépendance aux réseaux

    Compatilibité Navigateurs
    – Firefox et les autres

    View Slide

  43. @hellosct1 – Capitole Du Libre 2022
    Demo : coqui.ai

    Coqui STT et TTS

    Start
    https://stt.readthedocs.io/en/latest/TRAINING_INTRO.html
    $ git clone --recurse-submodules https://github.com/coqui-ai/STT
    $ cd STT
    $ docker build -f Dockerfile.train . -t stt-train:latest
    $ docker run -it stt-train:latest
    python -m coqui_stt_training.train --train_files
    train.csv --dev_files dev.csv --test_files
    test.csv

    View Slide

  44. @hellosct1 – Capitole Du Libre 2022
    Raspberry PI : spchcat (1/

    Dépendance
    – Pulseaudio libpulse0 libsox3
    – Spchcat

    https://github.com/petewarden/spchcat

    Modèle
    – curl -LO
    https://github.com/coqui-ai/STT/releases/download/v0.9.3/coq
    ui-stt-0.9.3-models.pbmm
    – curl -LO
    https://github.com/coqui-ai/STT/releases/download/v0.9.3/coq
    ui-stt-0.9.3-models.scorer
    – sudo wget
    https://coqui.gateway.scarf.sh/french/commonvoice-fr/v0.8/mo
    del.tflite

    View Slide

  45. @hellosct1 – Capitole Du Libre 2022
    Raspberry PI : spchcat (2/

    Start
    spchcat --language=fr_FR
    pi@demo-gf-2:~ $ spchcat --source file --language
    en_US audio/4507-16021-0012.wav
    TensorFlow: v2.3.0-14-g4bdd3955115
    Coqui STT: v1.1.0-0-gf3605e23
    why should one halt on the way
    https://github.com/petewarden/spchcat

    View Slide

  46. @hellosct1 – Capitole Du Libre 2022
    https://voice.mozilla.org

    View Slide

  47. @hellosct1 – Capitole Du Libre 2022
    Alors

    Pensez à faire des pauses

    Changez vous l’esprit

    Un peu de détente

    View Slide

  48. @hellosct1 – Capitole Du Libre 2022
    Allez plus loin !

    Site officiel Common Voice
    – https://voice.mozilla.org/

    Common Voice – DeepSpeech Français
    – https://github.com/Common-Voice/commonvoice-fr

    Guide de la communauté
    – https://github.com/common-voice/community-play
    book

    Nous contacter
    – Forum Discourse Francophone

    https://discourse.mozilla.org/c/voice/fr

    View Slide

  49. @hellosct1 – Capitole Du Libre 2022

    View Slide

  50. @hellosct1 – Capitole Du Libre 2022
    Merci
    Christophe Villeneuve
    @hellosct1
    @[email protected]

    View Slide