• Non ci sono risultati.

Esperimenti di estrazione delle features

In questo paragrafo si illustrano le prove effettuate per ottenere delle buone features. Dove non specificato, si deve assumere che i risultati sono stati ottenuti seguendo il procedimento descritto nel capitolo II.

Il sistema di riconoscimento nella fase di acquisizione, come illustrato nel secondo capitolo, registra 2 campioni originali, ai quali vengono sommati dei disturbi per simulare l’ambiente di lavoro e estendere il database. In tabella 5.3 sono elencati i disturbi utilizzati. Si è pervenuti a queste decisioni in base a varie prove, i cui risultati più importanti sono elencati in tabella 5.4.

Sorgenti di rumore Trapano elettrico Smerigliatrice elettrica Motore elettrico Rumore bianco Compressore elettrico Trapano + smerigliatrice Compressore + motore

Tab. 5.3 Tipi di disturbo usati per gli esperimenti

N. campioni originali N. di disturbi sommati agli originali

Errori nel riconoscimento di 50 campioni per comando

4 35 4 4 10 4 4 7 2 4 4 3 2 10 3 2 7 3

Tab. 5.4 Esperimenti più significativi per la determinazione del numero finale di campioni originali e di disturbi da sommare ad essi.

Dopo i procedimenti su elencati, i campioni sono pronti per l’estrazione delle features. Oltre all’applicazione dei filtri di Mel, sono stati contemplati altri metodi, come quello basato sulla trasformata wavelet o quello di calcolare l’energia del segnale. Di seguito verrà fornita una tabella che riassume i risultati più significativi sull’uso di tali tecniche.

Metodo usato per l’estrazione delle

features

N. di campioni originali per il training/test per

comando

Errore

Calcolo dell’energia del

segnale per frame separati 2/50 60%

Calcolo dell’energia del segnale con overlapping

tra frame 2/50 55% Decomposizione wavelet come in tabella 1.1 2/50 4% 8 coefficienti di Mel effettivi 2/50 0.3%

Tab. 5.5 Risultati dell’uso dei vari metodi nel riconoscimento di 50 campioni originali per comando.

La seguente tabella riporta i risultati migliori ottenuti variando le dimensioni della finestra di Hamming e l’overlapping tra i frame; inoltre sono riportate alcune prove effettuate ricorrendo all’applicazione della finestra rettangolare.

N. punti per frame Overlapping in punti Tipo di finestra Coefficienti di

Mel effettivi Errore

512 32 Hamming 8 4% 1024 300 Hamming 8 5% 1024 100 Hamming 8 0.3% 2048 600 Hamming 16 0.4% 4096 670 Hamming 24 0.2% 1024 100 Rettangolare 8 10% 4096 670 Rettangolare 24 7%

Tab. 5.6 Risultati ottenuti variando le dimensioni, il tipo della finestra e l’overlapping tra i frame nel calcolo delle features.

Gli ultimi esperimenti realizzati riguardano i valori da assegnare ai parametri γ e ν per il training e si è trovato che i risultati migliori si avevano per γ = 0.01 e ν = 0.05 (tabella 5.7).

Per tutte le prove si è usato un kernel RBF in quanto, come già affermato nel precedente capitolo, è quello che assicura le prestazioni migliori.

γ ν Errore 0.1 0.05 4% 0.1 0.01 10% 0.01 0.05 0.3% 0.7 0.05 21% 0.005 0.05 0.6%

Tab. 5.7 Risultati ottenuti variando il γ e il ν per tentativi, per il test sono stati usati 50 campioni per comando.

Fra tutti i risultati contenuti nelle precedenti tabelle 6.4, 6.5, 6.6, 6.7 sono stati evidenziati in grassetto quelli che apparivano di volta in volta i più adatti a garantire l’ottimizzazione del funzionamento nel sistema che costituisce l’oggetto di questa tesi. Infatti per esso, come è stato spiegato nelle specifiche tecniche (vedi paragrafo 1.4), è prevista una implementazione in un sistema basato su DSP, in cui prevalgono le esigenze sia di non occupare troppa memoria, sia di eseguire operazioni in modo veloce, fattori che sono stati esaminati nel capitolo IV.

Riassumendo in un’unica tabella i dati più significativi elencati nelle precedenti, appare chiaro come essi giustifichino le scelte tecniche indicate già nel capitolo II.

N. campioni originali 2

N. di disturbi sommati agli originali 7

N. punti per frame 1024

Overlapping tra frame in punti 100

Tipo di finestra Hamming

Coefficienti di Mel effettivi 8

γ 0.01

ν 0.05

Errore 0.3%

Conclusioni

Nel IV paragrafo del primo capitolo erano state elencate le specifiche tecniche alle quali il particolare sistema per il riconoscimento vocale qui esaminato doveva rispondere; pertanto nel corso del lavoro svolto si sono individuate le soluzioni più opportune al raggiungimento dei singoli obiettivi prefissati. I risultati ottenuti sono soddisfacenti perché è stato verificato che il sistema si comporta molto bene nel riconoscimento di ciascun comando, inoltre esso ha anche il pregio di presentare una buona robustezza ai disturbi, elementi questi che lo rendono adatto agli usi industriali. Infine l’aver convertito il programma del sistema di riconoscimento da Matlab in C/C++ è un ulteriore aspetto positivo perché consente l’integrazione in un sistema elettronico basato su DSP, ciò rende il dispositivo più rispondente alle esigenze del mercato e dunque più idoneo alla commercializzazione.

Riferimenti bibliografici

[1] A. Martini, “Le difficoltà di apprendimento della lingua scritta.” Ed. del Cerro, pp. 13-19, Pisa 1995.

[2] B. S. Atal, “Effectiveness of linear prediction characteristics of the speech wave for auto-matic speaker identification and verification.” JASA, 55(6):1304- 1312, June 1974.

[3] O. Farooq, “Mel Filter-Like Admissible Wavelet Packet Structure for Speech Recognition”, IEEE Signal Processing Letters, vol. 8, No.7, July 2001.

[4] J. G. Wilpon, B.-H. Juang, and L. R. Rabiner, “An investigation on the use of acoustic sub-word units for automatic speech recognition,” Proceedings of the International Conference on Acoustics, Speech, and Signal Processing, pp. 821- 824, Dallas, USA, April 1987.

[5] R. Rosenfeld, “Adaptive Statistical Language Modeling: a Maximum Entropy Approach”, Ph. D. dissertation, Carnegie Mellon University, Pittsburgh, USA, 1994.

[6] P. Clarkson and R. Rosenfeld, “Statistical Language modelling using

CMU-Cambridge Toolkit,” Proceedings of Eurospeech, pp. 2707-2710, Rhodes, Greece, September 1997.

[7] F. Jelinek, Statistical Methods for Speech Recognition, MIT Press, Cambridge, Massachusetts, USA, 1997.

[8] A.P. Dempster, N.M. Laird and D.B. Rubin, “Maximum Likelihood Estimation

from Incomplete Data,” Journal of the Royal Statistical Society, vol. 39, no.1, pp. 1-38, 1977.

[9] R.A. Redner and H.F. Walker, “Mixture Densities, Maximum Likelihood and the EM Algorithm,” SIAM Review, vol. 26, no. 2, pp. 195-239, 1984.

[10] J.S. Bridle and L. Dodd, “An Alphanet Approach to Optimizing Input Transformations for Continuous Speech Recognition,” Proceedings of the

International Conference on Acoustics, Speech and Signal Processing, vol. 1, pp. 277-280, May 1991.

[11] M.D. Richard and R.P. Lippmann, “Neural Network Classifiers Estimate Bayesian a Posteriori Probabilities”, Neural Computation, vol. 3, no. 4, pp. 461- 483, 1991.

[12] J. Tebelskis, Speech Recognition using Neural Networks, Ph. D. dissertation, Carnegie Mellon University, Pittsburgh, USA, 1995.

[13] M. Minsky and S. Papert, Perceptrons: An Introduction to Computational Geometry, MIT Press, Cambridge, MA, USA, 1969.

[14] A. Robinson, “An application of recurrent nets to phone probability estimation,” IEEE Transactions on Neural Networks, vol. 5, no. 2, pp. 298-305, 1994.

[15] A. Robinson, et. al., “The Use of Recurrent Neural Networks in Continuous Speech Recognition,” in Automatic Speech and Speaker Recognition -- Advanced Topics, chapter 19, Kluwer Academic Publishers, 1996.

[16] Y. Bengio, “A Connectionist Approach to Speech Recognition,” International Journal of Pattern Recognition and Artificial Intelligence, vol. 7, no. 4, pp. 3-22, 1993.

[17] Oppenheim, A. V. and R. W. Schafer, Discrete-Time Signal Processing, Prentice-Hall, 1989,

[18] M. Brookes, “Voicebox: Speech Processing Toolbox for Matlab”, Imperial College, London,

[19] Anil K. Jain, “Fundamentals of Digital Image Processing”, Prentice Hall. [20] V.N. Vapnik, Statistical Learning Theory, John Wiley, New York, NY, USA, 1998.

[21] C.J.C. Burges, A Tutorial on Support Vector Machines for Pattern Recognition, http://svm.research.bell-labs.com/SVMdoc.html, AT&T Bell Labs, November 1999.

[22] V. Vapnik, The Nature of Statistical Learning Theory, Springer-Verlag, New York, USA,1995.

[23] P.E. Gill, W. Murray, and M.H. Wright, Practical Optimization, Academic Press, New York, 1981.

[24] D.P. Bertsekas, Constrained Optimization and Lagrange Multiplier Methods, Academic Press, New York, 1982.

[25] B. Schölkopf, Support Vector Learning, Ph.D. dissertation, R. Oldenbourg Verlag Publications, Munich, Germany, 1997.

[26] E. Osuna, et. al. “An Improved Training Algorithm for Support Vector Machines,”Proceedings of the IEEE NNSP’97, pp. 24-26, Amelia Island, USA, September 1997.

[27] Chih-Chung Chang and Chih-Jen Lin “LIBSVM : a library for support vector machines.” http://www.csie.ntu.edu.tw/~cjlin/papers/libsvm.ps.gz.

[28] R. Camposano and J. Wilberg, “Embedded system design,” in Design Automation for Embedded Systems, vol. 1. Amsterdam: Kluwer6, no. 1, pp. 5–6, Jan. 199.

[29] P. M. Kogge, The Architecture of Pipelined Computers McGraw-Hill, New York, 1981.

[30] J. R. Ellis, Bulldog: A Compiler for VLIW Architectures. Cambridge, MA: MIT Press, 1986.

[31] P. Marwedel and G. Goossens, Code Generation for Embedded Processors. Boston: Kluwer, 1995.

[32] R. M. Stallman, Using and Porting GNU CC, Free Software Foundation, June 1993.

Documenti correlati