Archivo por meses: abril 2016

Deep Learning revolutionises speech technologies

One of the objectives of language technology experts is speaking and interacting with machines in any language. This is nothing new; but this type of technology is increasingly common at user level.

The new generation of speech recognition and natural language processing systems has already begun to filter down to users, through improvements in personal assistants (such as Apple Siri, Google Now and Microsoft Cortana) and new products such as Skype’s voice translator or Amazon Echo’s smart speaker.

grafico 1

Fig. 1: General diagram of a neural network

Deep Learning is no more than the evolution of traditional neural networks (algorithms designed to reproduce the mechanics of the human brain in the encoding and decoding of messages, enabling self-learning). However, their widespread use seems to be reinventing research and development in various fields, such as image processing, language processing, and speech technologies. Neural networks are learning systems that use relatively simple mathematical functions, called neurons, which work in an interconnected way to create various layers (see Fig. 1). The layers enable different levels of abstraction and, to a certain extent, a form of learning that is more similar to that of humans. This contrasts with previous techniques, such as statistics, in which the system learns from the data, as in Deep Learning, but without considering abstractions.

Neural networks have existed since the 1950s, but now they really work

A frequently asked question is why artificial neural networks (a mathematical technique that goes back to the 1950s) are so popular today. In fact, in 1969, Minsky & Papert clearly defined their limitations, including the fact that single-layer neural networks cannot compute the XOR operation for two inputs (the result is true if one of the two inputs is true, but not both, e.g. Juan is tall or short); and the fact that computational capacity at the time was not enough to process multilayer neural networks. The problem of training for the XOR operation was solved with the backpropagation algorithm (Rumlelhart et al., 1986), and computational capacity has increased dramatically with the use of Graphics Processing Units (GPUs) that enable hundreds of operations to be performed at the same time. An important milestone was reached in 2006: the year in which the concept of Deep Learning was introduced with the development of an effective way of training very deep neural networks (networks of several layers) (Hinton et al., 2006). Currently, neural algorithms are advancing at such a pace that the specific architectures that are effective today could be replaced by others tomorrow. So we are talking about a field that is in constant evolution.

The use of deep learning in speech applications

In a natural way, neural networks have become a tool for automatic learning. Multiple-tier architectures with a range of network types have been used satisfactorily for classification and prediction techniques. Recently, automatic learning has crossed boundaries and successfully entered other areas. As a result, voice recognition and automatic translation can be approached as automatic learning problems that can be solved via specific neural architectures. Neural architectures have been effective in the fields of speech technologies, voice recognition, automatic translation and voice synthesis.

Voice recognition and its jump to quality

In recent years, Deep Learning algorithms have been the key to obtaining significant advances in the features of automatic speech recognition systems. Neural networks have proved to be a versatile tool that can model all the acoustic, phonetic and linguistic aspects of this task. Complex, traditional systems based on many specific components have already been replaced by general structures that are highly versatile and have better features. Every year, new architectures appear that are based on recurrent neural networks (Karparthy, 2014) and offer significant improvements in the hit rate.

The new systems may not increase knowledge of the complexity of the problem, but they have helped to resolve it. Now we can build machines that have a surprising capacity to learn models, through the use of examples, as complex as those involved in speech recognition.

Text translation in one step


Fig. 2: Autoencoder

Text translation via Deep Learning relies on an autoencoder structure (Cho, 2015) to translate from a source to a target language (see Fig. 2). The encoder learns a representation (M) of the input data (source language, S) and then decodes it to output data (target language, T). The autoencoder is trained using translated texts. Source words are mapped to a small space (see Fig. 3). This operation reduces the vocabulary and takes advantages of synergies between similar words (in morphological, syntactical and/or semantic terms). The new representation of words is encoded in a summary vector (a representation of the source language that we have to decode into the target language), using a recurrent neural network. This kind of network has the advantage of helping us to find the most accurate words, according to the context. Decoding is carried out using the reverse steps to the encoder.

Recently, this architecture has been improved by an attention mechanism, which uses the context of the word that is being translated instead of using the sentence as such.


Fig. 2: Example of mapping of words

Voice synthesis with natural intonation in broad contexts

In voice synthesis, written phrases are transformed into one of the possible correct ways of reading them. The most mature technology to date concatenated pre-recorded segments. However, in the last decade, advances have been made in statistical synthesis, which is the traditional technology. In this technique, the voice is modelled through parameters that define oral discourse, for example, pauses and intonation, learnt statistically. Given a phrase, appropriate models are selected for the phonemes and a generation algorithm produces what is finally transformed into voice. One of the first applications of Deep Learning was to broaden the definition of the contexts. In statistical synthesis, a precise phoneme is defined according to the context. In contrast, in Deep Learning, the appropriate parameters can be found without an explicit definition of contexts (Zen et al., 2013).

Recently, recurrent neural networks have been used that model time sequences: the learning system itself learns the continuity of speech. Specifically, recurrent neural networks called long short-term memory (LSTM) facilitate learning of elements such as the intonation of a question or the reading of relative clauses, which occur in broad contexts of reading.

Neither traditional statistical systems nor current systems can read in a way that shows comprehension of the text. In both systems, learning is based on three elements: algorithms, data and calculation capacity. The major advances in Big Data processing and in the capacity to carry out complex calculations and multiple operations simultaneously open up new perspectives for Deep Learning. If the observable data and calculation capacity are increased, would this paradigm be able to model the intricate mental processes we use to read?

What remains to be seen

For the sceptics who saw neural networks, the precursors to Deep Learning, fail in the 1980s, we should explain that advances in the new neural techniques can be seen in the quality of speech systems, which are revolutionary (LeCun et al., 2015). For example, in voice recognition, the error rate has been brought down by around 10% (see TIMIT). The fact that the functions that characterise a problem do not need to be designed, as they are learnt automatically, has enabled challenges to be extended in the field of speech technologies to end-to-end voice recognition (learning one function that enables the direct transfer of voice to text) (Hannun et al., 2014), multilingual translation (Firat et al., 2016) and multimodal translation (image and text) (Elliot et al., 2015).

From left to right: José A. R. Fonollosa, Marta R. Costa-jussà and Antonio Bonafonte.

At the Center for Language and Speech Technologies and Applications (TALP UPC) we are leaders in the development of research on the granularity of characters (Costa-jussà & Fonollosa, 2016). This technique enables learning of text translation by detecting subsequences of words with meaning, such as prefixes and suffixes, and reducing the size of the vocabulary. This leads to a high level of generalisation, particularly for morphologically flexible languages, which has a positive impact on the quality of the translation.

We may reach certain limits in neural networks again, but these architectures have already opened up new horizons for research and for a wide range of applications. These include the “simple” design of a machine that can win the popular Japanese game GO, and the major impact that neural networks could have in growing sectors such as artificial intelligence (AI), the internet of things (IoT), social computing, or image recognition, in addition to those mentioned above. Neural networks are beginning to be implemented in areas such as the aerospace industry, education, finances, defence, e-commerce and health (diagnostics and drug prescription). Some technological innovations are being tackled that would not have been feasible or manageable with traditional techniques such as statistics. So it seems reasonable to consider that neural systems are here to stay for a while.

Will you join in?

Marta R. Costa-jussà, José A. R. Fonollosa y Antonio Bonafonte
Investigadors del Centre de Tecnologies i Aplicacions del Llenguatge i de la Parla (TALP UPC)

El Deep Learning revoluciona les tecnologies de la parla

Parlar i interactuar amb les màquines en qualsevol idioma ha estat un dels objectius dels experts en tecnologies del llenguatge. No és nou, però cada vegada més aquest tipus de tecnologies s’està estenent a nivell d’usuari.

La nova generació de sistemes de reconeixement de la parla i també de processament del llenguatge natural ja han començat a arribar als usuaris a través de millores en els assistents personals (per exemple Apple Siri, Google Now, Microsoft Cortana) o mitjançant nous productes com el traductor de veu de Skype o l’altaveu intel·ligent Amazon Echo.

grafico 1

Fig 1: Esquema genèric d’una xarxa neuronal

El Deep Learning (els algoritmes que intenten reproduir les mecàniques del cervell humà en la codificació i descodificació de missatges i permeten l’autoaprenentatge), no és més que l’evolució de les clàssiques xarxes neuronals. Però el seu ús massiu sembla estar reinventant el desenvolupament i la investigació en diversos àmbits com el tractament de la imatge, el processament del llenguatge i les tecnologies de la parla. Les xarxes neuronals són sistemes d’aprenentatge que utilitzen unitats matemàtiques relativament senzilles, anomenades neurones, que treballen interconnectades, creant així diverses capes (veure Fig. 1). Aquestes capes permeten diferents nivells d’abstracció i, en certa manera, un aprenentatge més semblant a l’humà. Això contrasta amb les tècniques utilitzades fins el moment, com les estadístiques, on s’aprèn de les dades, igual que amb Deep Learning, però sense considerar abstraccions.

Les xarxes neuronals existeixen des dels anys 50, però ara funcionen

Una pregunta habitual és per què les xarxes neuronals artificials (una tècnica matemàtica que es remunta als anys 50) són ara tan populars. De fet, el 1969, Minsky & Papert van definir clarament les limitacions de les mateixes, incloent per una banda que les xarxes d’una sola capa són incapaces de computar la funció XOR entre dues condicions (el resultat és veritat només si una de les dues és veritat però no totes dues, ex. Joan és alt o baix); i, d’altra banda, que la capacitat computacional del moment no era suficient per processar xarxes neuronals de diverses capes. El problema de l’entrenament de la funció XOR es va solucionar amb l’algoritme de propagació inversa (Rumlelhart et al, 1986) i la capacitat computacional ha millorat enormement amb l’ús de les GPUs (Graphical Processing Units) que permeten fer centenars d’operacions alhora. Això sense oblidar que el 2006 es va assolir una fita important, que va marcar la introducció del concepte Deep Learning, quan es va aconseguir una manera efectiva d’entrenar xarxes neuronals molt profundes (és a dir, de diverses capes) (Hinton et al., 2006). Actualment, els algoritmes neuronals avancen amb tal rapidesa que les arquitectures particulars que avui són efectives podrien demà ser substituïdes en benefici d’altres, la qual cosa vol dir que parlem d’un camp en contínua evolució.

L’ús de Deep Learning en aplicacions de la parla

De forma natural, les xarxes neuronals s’han convertit en una eina per a l’aprenentatge automàtic. Així doncs, les arquitectures de múltiples capes amb varietat de tipologies de xarxes s’han utilitzat satisfactòriament per tècniques de classificació o predicció. Recentment aquest aprenentatge automàtic ha creuat fronteres i ha conquistat altres àrees, de manera que el reconeixement de veu o la traducció automàtica es poden plantejar com a problemes d’aprenentatge automàtic solucionables mitjançant determinades arquitectures neuronals. Vegem quines arquitectures neuronals han resultat efectives per camps de les tecnologies de la parla com el reconeixement de veu, la traducció automàtica i la síntesi de veu.

Reconeixement de veu i el seu salt de qualitat

En els últims anys, els algoritmes de Deep Learning han estat la clau per obtenir un salt molt significatiu en les prestacions dels sistemes de reconeixement automàtic de la parla. Les xarxes neuronals han mostrat ser una eina versàtil capaç de modelar tots els aspectes acústics, fonètics i lingüístics associats amb aquesta tasca. Els complexos sistemes tradicionals basats en una multitud de components específics han estat ja substituïts per estructures genèriques de gran versatilitat i millors prestacions. I any rere any segueixen apareixent noves arquitectures basades únicament en xarxes neuronals recurrents (Karparthy, 2014) amb millores significatives en la taxa d’encert.

Potser aquests nous sistemes no aportin coneixement sobre la complexitat del problema, però sí que han ajudat a resoldre-ho. Ara sabem construir màquines amb una capacitat sorprenent d’aprendre, a partir d’exemples, models tan complexos com els implicats en el reconeixement de la parla.

Traducció de text en un sol pas


Fig. 2: Auto-codificador

La traducció de text mitjançant Deep Learning passa d’un llenguatge font a un llenguatge destí mitjançant una estructura d’auto-codificador (Cho, 2015) (veure Fig. 2): un codificador aprèn una representació (M) de les dades d’entrada (llenguatge font, S) per després descodificar-a dades de sortida (llenguatge destí, T). Aquest auto-codificador s’entrena amb textos traduïts. Les paraules font es mapegen a un espai reduït (veure Fig. 3). Aquesta operació permet reduir el vocabulari i aprofitar sinergies entre paraules similars (en termes morfològics, sintàctics i/o semàntics). Aquesta nova representació de paraules es codifica en un vector resum (una representació del llenguatge font que hem de descodificar al llenguatge destí) utilitzant una xarxa neuronal recurrent. Aquest tipus de xarxes té l’avantatge que ajuda a trobar les paraules més precises en funció del context. La descodificació es realitza seguint els passos inversos al codificador.

Recentment, s’han aplicat millores a aquesta arquitectura mitjançant un mecanisme d’atenció que permet utilitzar el context de la paraula que està sent traduïda en lloc d’utilitzar tota l’oració com a tal.


Fig. 3: Mapejat il·lustratiu de paraules

Síntesi de veu amb entonació natural en contextos llargs

En la síntesi de veu es transformen frases escrites en una de les possibles formes correctes de llegir-les. La tecnologia més madura fins ara concatena segments pregravats. No obstant això, en l’última dècada s’han fet avenços en síntesi estadística (tecnologia tradicional), que modela la veu mitjançant paràmetres que defineixin el discurs oral (per exemple, les pauses o l’entonació) i són apresos estadísticament. Donada una frase, se seleccionen els models adequats als seus fonemes i un algoritme de generació produeix el que finalment es transforma en veu. Una de les primeres aplicacions de Deep Learning ha estat generalitzar la definició dels contextos: en la síntesi estadística, es defineix un fonema precís segons el context. En canvi, a través de Deep Learning, és possible trobar els paràmetres adequats sense una definició explícita de contextos (Zen et al., 2013).

Recentment s’han utilitzat xarxes neuronals recurrents que modelen seqüències temporals: el propi sistema d’aprenentatge aprèn la continuïtat de la parla. Concretament, les xarxes recurrents denominades LSTM (long short-term memory) faciliten l’aprenentatge d’elements com l’entonació d’una pregunta o la lectura de frases relatives, que es produeixen en contextos de lectura llargs.

Tant els sistemes tradicionals estadístics com els actuals no fan una lectura que mostri encara la comprensió del text. Tots dos basen el seu aprenentatge en tres elements: algoritmes, dades i capacitat de càlcul. Els enormes avenços en tractament de Big Data, en capacitat per executar càlculs complexos i múltiples operacions simultànies obren noves perspectives per al Deep Learning. Augmentant les dades observables i la capacitat de càlcul, podrà aquest paradigma modelar els intricats processos mentals que utilitzem en la lectura?

El que queda per veure

Per als escèptics, els que van veure fracassar les xarxes neuronals en els 80 (precursores de l’actual Deep Learning) convé explicar que les millores aconseguides amb les noves tècniques neuronals ja s’han materialitzat en la qualitat dels sistemes de la parla i són revolucionàries (LeCun et al., 2015). Per exemple, en reconeixement de veu s’han aconseguit reduccions de la tasa d’error properes al 10% (veure TIMIT). A més, el fet que no calgui dissenyar les funcions que caracteritzen un problema, ja que s’aprenen automàticament, ha permès, només en el camp de les tecnologies de la parla, ampliar reptes, com són el reconeixement de veu end-to-end (aprèn una única funció que permet el pas directe de veu a text) (Hannun et al., 2014), traducció multilingüe (Firat et al., 2016) i multimodal (imatge i text) (Elliot et al., 2015).

D’esquerra a dreta: José A. R. Fonollosa, Marta R. Costa-jussà i Antonio Bonafonte.

Al Centre de Tecnologies del Llenguatge i de la Parla (TALP UPC) som pioners en el desenvolupament d’una línia d’investigació sobre la granularitat de caràcters (Costa-jussà & Fonollosa, 2016). Aquesta tècnica permet aprendre la traducció de text detectant subseqüències de paraules amb significat, com prefixos o sufixos, i reduint la grandària del vocabulari. Això aporta un alt nivell de generalització especialment per a llengües morfològicament flexibles, aportant un alt benefici en la qualitat de la traducció.

Pot ser que tornem a arribar a certs límits en les xarxes neuronals, però aquestes arquitectures ja han obert nous horitzons tant per a la investigació com per a un ampli ventall d’aplicacions, des del “simple” disseny d’una màquina capaç de vèncer en el popular joc japonès GO, fins el fort impacte que pot significar en sectors en creixement com la intel·ligència artificial (IA), internet of things (IoT), social computing, o el reconeixement d’imatge a més dels ja esmentats. Ens aboquem cap a la implementació de les xarxes neuronals en àmbits com la indústria aerospacial, l’educació, les finances, la defensa, l’e-commerce o la salut (diagnòstics, prescripció de medicaments). Afrontem novetats tecnològiques que amb tècniques clàssiques, com l’estadística, no han estat factibles o no han estat satisfactòriament abordables, raó per la qual sembla raonable pensar que els sistemes neuronals han vingut per quedar-se algun temps.


Marta R. Costa-jussà, José A. R. Fonollosa i Antonio Bonafonte
Investigadors del Centre de Tecnologies i Aplicacions del Llenguatge i de la Parla (TALP UPC)