SlideShare une entreprise Scribd logo
1  sur  20
Télécharger pour lire hors ligne
Département
Signal et systèmes embarqués
Liège Creative - 27/04/2018
Positionnement du problème
You	shall	
not	pass!
Wingardium	
Leviosa
Surtitrage	automatique
§ You	shall	not	pass	!
§ Wingardium	Leviosa
§ …
Challenges
• Acquisition	multi-locuteurs	la	moins	invasive	
possible	(confort	de	l’acteur	et	direction	
artistique).
• Prétraitement	du	signal	de	parole	afin	d’assurer	
un	taux	élevé	de	reconnaissance	vocale	(bruit	
ambiant,	interférences,	réverbération,	etc.).
• Reconnaissance	vocale	dans	plusieurs	langues.
• Détection	correcte	du	prompt	en	fonction	des	
résultats	de	la	reconnaissance	vocale	(Parole	->	
texte)
• Faisabilité	« temps	réel »	du	système.
Architecture système
Acquisition
Trames
audio
Prétraitement	
signal	de	parole
Speech	Cloud	
API	(Google,	
Nuance,	etc.)
Indice	du	
prompt	
(UDP/IP)
Identification	
du	prompt
Texte
Application
Le	traitement	des	trames	s’effectue	en	parallèle	
(Multi-Threading)	pour	chaque	micro.
Acquisition – 4 approches testées (monolocuteur)
Setups Avantages Inconvénients
Microphone	champ	proche
dit	« madonna »
Super	directif, bon	rapport	
signal	à	bruit
Dépend de	la	direction	
artistique
Microphone	champ	lointain	
omnidirectionnel
Non	intrusif,	facile	à	
déployer
Non	directif,	mauvais	
rapport	signal à	bruit
Microphone	champ	lointain	
directionnel dit	« shotgun »
Non	intrusif,	directif,	bon	
rapport	signal	à	bruit
Nécessité	de	« traquer »	
l’acteur
Réseau	de	microphones en
champ	lointain	(ULG)
Non	intrusif,	super	directif	
(steering),	bon	rapport	
signal	à	bruit
Dépend	de	la	configuration
du	réseau	de	microphone	+	
algorithme	de	
beamforming
Acquisition – Illustration
Prof.	J.J.	Embrechts	
Audio	and	acoustics	laboratory/CEDIA
Simulation	multi-locuteurs avec	8	micros	
directifs	(~shotguns)	synchronisés	à	48000	Hz.
Architecture système
Acquisition
Trames
audio
Prétraitement	
signal	de	parole
Speech	Cloud	
API	(Google,	
Nuance,	etc.)
Indice	du	
prompt	
(UDP/IP)
Identification	
du	prompt
Texte
Application
Le	traitement	des	trames	s’effectue	en	parallèle	
(Multi-Threading)	pour	chaque	micro.
Prétraitement du signal de parole
• Objectif	:	amélioration	du	signal	utile	+	relaxation	du	
moteur	de	reconnaissance	via	algorithmes	de	dé-
bruitage,	dé-réverbération et	détecteur	d’activité	
vocale.
• Création	d’une	base	de	données	bruitée	pour	tester	les	
algorithmes	(bruit	d’audience,	piano,	etc.).
• Approches	implémentées	:
– « Single	channel	filtering »	:	Karhunen-Loeve	transform,	
Wiener	algorithm,	Multiband	spectral-subtractive,	etc.
– “Adaptive	filtering”	:	LMS	&	RLS	filter
– VAD	:	WebRTC(GMM-based)
Évaluation – Acquisition + prétraitement
• Critère	d’évaluation	:	« Word	Error	Rate »	qui	
est	la	distance	de	Levenshtein	entre	la	phrase	
attendue	et	la	phrase	obtenue	par	
reconnaissance	vocale.
• Moteur	de	reco	:	Google	API
• Conclusions	:
– Micro	madonna	>>	(5%	WER)
– Adaptive	filtering	>>	Single	channel	filtering,	
performances	proches	du	micro	madonna
Architecture système
Acquisition
Trames
audio
Prétraitement	
signal	de	parole
Speech	Cloud	
API	(Google,	
Nuance,	etc.)
Indice	du	
prompt	
(UDP/IP)
Identification	
du	prompt
Texte
Application
Le	traitement	des	trames	s’effectue	en	parallèle	
(Multi-Threading)	pour	chaque	micro.
Identificateur de prompts - Concept
Prétraitement	+	VAD
ONE	DOES
NOT SIMPLY
TRAIN	A	RNN
GOOGLE	SPEECH	API
t(0)
t(1)
t(2)
DATA	PROCESSING
CLASSIFICATION
P001	:	You	shall	
not	pass!
P002	:	ONE	
DOES	NOT	
SIMPLY	TRAIN	A	
DNN
P003	:	
Wingardium	
Leviosa
?
Classification – TF IDF
• Analogie	avec	la	recherche	de	documents	via	une	
requête	(ex	:	moteur	de	recherche	Google)
• Documents	=>	Prompts	et	Query	=>	Sortie	de	
l’ASR
• Utilisation	de	l’approche	Term	Frequency (TF)	–
Inverse	Document	Frequency (IDF)	+	Cosine	
Similarity	:
– TF	:	Étape	de	vectorisation	des	documents
– IDF	:	Étape	de	pondération	des	vecteurs
– CosSim	:	Étape	de	classification
Classification – Illustration (1)
(1)	
https://janav.wordpress.com/2013/10/27/t
f-idf-and-cosine-similarity/
1	– TF	vectorisation
2	– TF	normalisation
3	– IDF	pondération
VECTORISATION
CLASSIFICATION
4	– TF/IDF	Documents 5	– TF/IDF	Query
X
6	– Cosine	similarity
Classification - Commentaires
• Approche	nécessaire	mais	pas	suffisante	pour	
avoir	un	système	fonctionnel	->	Si	plusieurs	
prompts	partagent	des	mots	communs,	des	
transitions	« brutales »	apparaissent	et	dégradent	
l’expérience.
• Nécessité	de	« lisser »	le	processus	de	décision	en	
ajoutant	des	contraintes	supplémentaires	sur	les	
transitions	possibles	entre	prompts	->	framework	
des	Modèles	Cachés	de	Markov	(HMM).
Classification- HMM
• Design	simple	:	
– 1	état	par	prompt	(Xi).
– Probabilités	de	transition	(aij)	entre	états	éditées	
« à	la	main ».	aij	=	P(Xj|Xi)
– Probabilités	d’émission	(bik)	correspondent	aux	
CosSim.	bik=P(Ok|Xi)=CosSim(Query_k,Prompt_i)
– Pas	d’entrainement,	HMM	utilisé	uniquement	
pour	le	décodage	(Viterbi).
HMM - Configuration 0.33
I
P001
F
P002
0.5
0.5
0.33
0.33
0.5
0.5
Le soft !
Classification - Résultats
Conclusions et perspectives
• Taux	de	classification	des	prompts	>	95%.	
• Degré	de	liberté	offert	dans	le	design	des	transitions	
possibles	entre	prompts	->	utilisation	agnostique	pour	
le	end-user	(artistes).
• Perspectives	d’amélioration	de	la	v0	:
– Acquisition	unique	par	réseau	de	micro	pour	filtrer	
spatialement	les	acteurs	+	renforcement	par	GéoLoc?!
– Détection	automatique	de	la	langue	pour	configurer	le	
moteur	de	reconnaissance	vocale.	
– Approche	TF-IDF	basée	sur	les	mots	et	non	pas	la	
sémantique	du	prompt	->	pas	de	place	à	l’interprétation,	
variation	artistique	->	Approche	sémantique	à	envisager.
Reconnaissance vocale et création artistique

Contenu connexe

Similaire à Reconnaissance vocale et création artistique

Sonar devant le Java User Group de Lausanne
Sonar devant le Java User Group de LausanneSonar devant le Java User Group de Lausanne
Sonar devant le Java User Group de LausanneFreddy Mallet
 
Rex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantesRex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantesChristophe Furmaniak
 
Réseaux audionumériques 2016
Réseaux audionumériques 2016Réseaux audionumériques 2016
Réseaux audionumériques 2016Guillaume Lecreux
 
Présentation solutions nemo (anite) 2014
Présentation solutions nemo (anite) 2014Présentation solutions nemo (anite) 2014
Présentation solutions nemo (anite) 2014Patrick Medenou
 
Mastère Professionnelle 2015
Mastère Professionnelle 2015Mastère Professionnelle 2015
Mastère Professionnelle 2015Rawdha MABROUKI
 
Présentation1
Présentation1Présentation1
Présentation1majed.echi
 
Présentation1
Présentation1Présentation1
Présentation1majed.echi
 

Similaire à Reconnaissance vocale et création artistique (8)

Applications IHM avec zenon
Applications IHM avec zenonApplications IHM avec zenon
Applications IHM avec zenon
 
Sonar devant le Java User Group de Lausanne
Sonar devant le Java User Group de LausanneSonar devant le Java User Group de Lausanne
Sonar devant le Java User Group de Lausanne
 
Rex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantesRex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantes
 
Réseaux audionumériques 2016
Réseaux audionumériques 2016Réseaux audionumériques 2016
Réseaux audionumériques 2016
 
Présentation solutions nemo (anite) 2014
Présentation solutions nemo (anite) 2014Présentation solutions nemo (anite) 2014
Présentation solutions nemo (anite) 2014
 
Mastère Professionnelle 2015
Mastère Professionnelle 2015Mastère Professionnelle 2015
Mastère Professionnelle 2015
 
Présentation1
Présentation1Présentation1
Présentation1
 
Présentation1
Présentation1Présentation1
Présentation1
 

Plus de Geeks Anonymes

Programmer sous Unreal Engine
Programmer sous Unreal EngineProgrammer sous Unreal Engine
Programmer sous Unreal EngineGeeks Anonymes
 
Implémentation efficace et durable de processus métiers complexes
Implémentation efficace et durable de processus métiers complexesImplémentation efficace et durable de processus métiers complexes
Implémentation efficace et durable de processus métiers complexesGeeks Anonymes
 
Managing Open Source Licenses (Geeks Anonymes)
Managing Open Source Licenses (Geeks Anonymes)Managing Open Source Licenses (Geeks Anonymes)
Managing Open Source Licenses (Geeks Anonymes)Geeks Anonymes
 
Reprendre le contrôle de ses données
Reprendre le contrôle de ses donnéesReprendre le contrôle de ses données
Reprendre le contrôle de ses donnéesGeeks Anonymes
 
Geeks Anonymes - Le langage Go
Geeks Anonymes - Le langage GoGeeks Anonymes - Le langage Go
Geeks Anonymes - Le langage GoGeeks Anonymes
 
Le rôle du testeur et le Blackbox testing
Le rôle du testeur et le Blackbox testingLe rôle du testeur et le Blackbox testing
Le rôle du testeur et le Blackbox testingGeeks Anonymes
 
Vulnérabilités au cœur des applications Web, menaces et contre-mesures
 Vulnérabilités au cœur des applications Web, menaces et contre-mesures Vulnérabilités au cœur des applications Web, menaces et contre-mesures
Vulnérabilités au cœur des applications Web, menaces et contre-mesuresGeeks Anonymes
 
191121 philippe teuwen cryptographie et attaques materielles
191121 philippe teuwen cryptographie et attaques materielles191121 philippe teuwen cryptographie et attaques materielles
191121 philippe teuwen cryptographie et attaques materiellesGeeks Anonymes
 
"Surfez couverts !" - Conseils de Cyber securité
"Surfez couverts !" - Conseils de Cyber securité "Surfez couverts !" - Conseils de Cyber securité
"Surfez couverts !" - Conseils de Cyber securité Geeks Anonymes
 
Introduction au développement mobile - développer une application iOS et Andr...
Introduction au développement mobile - développer une application iOS et Andr...Introduction au développement mobile - développer une application iOS et Andr...
Introduction au développement mobile - développer une application iOS et Andr...Geeks Anonymes
 
Intelligence artificielle et propriété intellectuelle
Intelligence artificielle et propriété intellectuelleIntelligence artificielle et propriété intellectuelle
Intelligence artificielle et propriété intellectuelleGeeks Anonymes
 
Pour une histoire plophonique du jeu video
Pour une histoire plophonique du jeu videoPour une histoire plophonique du jeu video
Pour une histoire plophonique du jeu videoGeeks Anonymes
 
Become Rick and famous, thanks to Open Source
Become Rick and famous, thanks to Open SourceBecome Rick and famous, thanks to Open Source
Become Rick and famous, thanks to Open SourceGeeks Anonymes
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language ProcessingGeeks Anonymes
 
Sécurité, GDPR : vos données ont de la valeur
Sécurité, GDPR : vos données ont de la valeur Sécurité, GDPR : vos données ont de la valeur
Sécurité, GDPR : vos données ont de la valeur Geeks Anonymes
 

Plus de Geeks Anonymes (20)

Programmer sous Unreal Engine
Programmer sous Unreal EngineProgrammer sous Unreal Engine
Programmer sous Unreal Engine
 
Implémentation efficace et durable de processus métiers complexes
Implémentation efficace et durable de processus métiers complexesImplémentation efficace et durable de processus métiers complexes
Implémentation efficace et durable de processus métiers complexes
 
Managing Open Source Licenses (Geeks Anonymes)
Managing Open Source Licenses (Geeks Anonymes)Managing Open Source Licenses (Geeks Anonymes)
Managing Open Source Licenses (Geeks Anonymes)
 
Reprendre le contrôle de ses données
Reprendre le contrôle de ses donnéesReprendre le contrôle de ses données
Reprendre le contrôle de ses données
 
Geeks Anonymes - Le langage Go
Geeks Anonymes - Le langage GoGeeks Anonymes - Le langage Go
Geeks Anonymes - Le langage Go
 
Le rôle du testeur et le Blackbox testing
Le rôle du testeur et le Blackbox testingLe rôle du testeur et le Blackbox testing
Le rôle du testeur et le Blackbox testing
 
Kubernetes
KubernetesKubernetes
Kubernetes
 
Vulnérabilités au cœur des applications Web, menaces et contre-mesures
 Vulnérabilités au cœur des applications Web, menaces et contre-mesures Vulnérabilités au cœur des applications Web, menaces et contre-mesures
Vulnérabilités au cœur des applications Web, menaces et contre-mesures
 
191121 philippe teuwen cryptographie et attaques materielles
191121 philippe teuwen cryptographie et attaques materielles191121 philippe teuwen cryptographie et attaques materielles
191121 philippe teuwen cryptographie et attaques materielles
 
"Surfez couverts !" - Conseils de Cyber securité
"Surfez couverts !" - Conseils de Cyber securité "Surfez couverts !" - Conseils de Cyber securité
"Surfez couverts !" - Conseils de Cyber securité
 
Introduction au développement mobile - développer une application iOS et Andr...
Introduction au développement mobile - développer une application iOS et Andr...Introduction au développement mobile - développer une application iOS et Andr...
Introduction au développement mobile - développer une application iOS et Andr...
 
Le langage rust
Le langage rustLe langage rust
Le langage rust
 
Test your code
Test your codeTest your code
Test your code
 
Intelligence artificielle et propriété intellectuelle
Intelligence artificielle et propriété intellectuelleIntelligence artificielle et propriété intellectuelle
Intelligence artificielle et propriété intellectuelle
 
Pour une histoire plophonique du jeu video
Pour une histoire plophonique du jeu videoPour une histoire plophonique du jeu video
Pour une histoire plophonique du jeu video
 
Become Rick and famous, thanks to Open Source
Become Rick and famous, thanks to Open SourceBecome Rick and famous, thanks to Open Source
Become Rick and famous, thanks to Open Source
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language Processing
 
Sécurité, GDPR : vos données ont de la valeur
Sécurité, GDPR : vos données ont de la valeur Sécurité, GDPR : vos données ont de la valeur
Sécurité, GDPR : vos données ont de la valeur
 
Modern sql
Modern sqlModern sql
Modern sql
 
Qt
QtQt
Qt
 

Reconnaissance vocale et création artistique