L'azienda Mozilla ha presentato il motore di riconoscimento vocale DeepSpeech 0.6

Presentato il rilascio del motore di riconoscimento vocale sviluppato dalla Mozilla DeepSpeech 0.6, che implementa l'architettura di riconoscimento vocale omonima, proposta da ricercatori dell'azienda Baidu. L'implementazione è scritta in Python utilizzando la piattaforma di machine learning TensorFlow e è distribuito disponibile sotto la licenza libera MPL 2.0. È supportato su Linux, Android, macOS e Windows. Le prestazioni sono sufficienti per utilizzare il motore su schede LePotato, Raspberry Pi 3 e Raspberry Pi 4.

Il pacchetto include anche vengono suggeriti modelli addestrati, casi d'uso file audio e strumenti per il riconoscimento tramite riga di comando. Per l'integrazione della funzione di riconoscimento vocale nelle proprie applicazioni, sono disponibili moduli pronti all'uso per Python, NodeJS, C++ e .NET (moduli per Rust e Go) sono stati preparati separatamente da sviluppatori esterni. Il modello fornito è disponibile solo per la lingua inglese, ma per altre lingue, tramite la documentazione guida è possibile addestrare autonomamente il sistema utilizzando dati vocali, raccolti dal progetto Common Voice.

DeepSpeech è significativamente più semplice rispetto ai sistemi tradizionali e offre al contempo una qualità di riconoscimento superiore in presenza di rumori ambientali. Nello sviluppo non vengono utilizzati modelli acustici tradizionali e la nozione di fonemi, ma viene impiegato un sistema di machine learning ben ottimizzato basato su reti neurali, che consente di evitare lo sviluppo di componenti separati per la modellazione di varie deviazioni, come il rumore, l'eco e le particolarità del parlato.

Il rovescio della medaglia di questo approccio è che, per ottenere un riconoscimento di alta qualità e addestrare la rete neurale, il motore DeepSpeech richiede una grande quantità di dati eterogenei, registrati in condizioni reali da voci diverse e in presenza di rumori naturali.
La raccolta di tali dati è gestita dal progetto creato in Mozilla Common Voice, che fornisce un insieme di dati verificati con 780 ore in inglese, 325 in tedesco, 173 in francese e 27 ore in russo.

L'obiettivo finale del progetto Common Voice è accumulare 10.000 ore di registrazioni di varie pronunce di frasi standard del linguaggio umano, il che consentirà di raggiungere un livello accettabile di errori nel riconoscimento. Attualmente, i partecipanti al progetto hanno già dettato in totale 4.3 mila ore, di cui 3.5 mila sono state verificate. Per addestrare il modello finale della lingua inglese per DeepSpeech sono state utilizzate 3816 ore di parlato, oltre a Common Voice, che copre dati dai progetti LibriSpeech, Fisher e Switchboard, e include circa 1700 ore di registrazioni trascritte di programmi radiofonici.

Utilizzando il modello inglese pronto per il download, il livello di errore di riconoscimento in DeepSpeech è del 7.5% sulla base di un insieme di test. LibriSpeech. A titolo di confronto, il livello di errore nel riconoscimento da parte di un umano è valutata è del 5.83%.

DeepSpeech è composto da due sottosistemi: il modello acustico e il decodificatore. Il modello acustico utilizza metodi di deep learning per calcolare la probabilità della presenza di determinati simboli nel suono in ingresso. Il decodificatore applica un algoritmo di ricerca a banda per convertire i dati sulle probabilità dei simboli in una rappresentazione testuale.

Principali novità DeepSpeech 0.6 (la versione 0.6 non è compatibile con le versioni precedenti e richiede l'aggiornamento del codice e dei modelli):

  • È stato proposto un nuovo decodificatore streaming, che garantisce una maggiore reattività e non dipende dalla dimensione dei dati audio elaborati. Di conseguenza, nella nuova versione di DeepSpeech, è stato possibile ridurre la latenza di riconoscimento a 260 ms, il che è il 73% più veloce di prima, e consente di applicare DeepSpeech in soluzioni per il riconoscimento vocale in tempo reale.
  • Sono state apportate modifiche all'API e sono stati eseguiti lavori per unificare i nomi delle funzioni. Sono state aggiunte funzioni per ottenere metadati aggiuntivi sulla sincronizzazione, che consentono non solo di ottenere una rappresentazione testuale in output, ma anche di monitorare l'associazione di singoli simboli e frasi alla posizione nel flusso audio.
  • Nel toolkit per l'addestramento dei moduli è stata aggiunta la supporto per l'uso della libreria CuDNN per ottimizzare le prestazioni delle reti neurali ricorrenti (RNN), sono stati ottenuti notevoli miglioramenti, con un aumento della produttività dell'apprendimento del modello di circa due volte, ma sono stati necessari cambiamenti nel codice che compromettono la compatibilità con i modelli precedentemente preparati.
  • I requisiti minimi per la versione di TensorFlow sono stati aggiornati da 1.13.1 a 1.14.0. È stato aggiunto il supporto per l'edizione leggera TensorFlow Lite, il cui utilizzo ha ridotto le dimensioni del pacchetto DeepSpeech da 98 MB a 3.7 MB. Anche la dimensione del file pacchettizzato con il modello per l'uso su dispositivi embedded e mobili è stata ridotta da 188 MB a 47 MB (è stato utilizzato un metodo di quantizzazione dopo il completamento dell'addestramento del modello).
  • Il modello linguistico è stato convertito in un altro formato di struttura dei dati, che consente di eseguire il mapping dei file in memoria durante il caricamento. Il supporto per il vecchio formato è stato interrotto.
  • È stato modificato il modo di caricamento del file con il modello linguistico, riducendo il consumo di memoria e diminuendo i ritardi nell'elaborazione della prima richiesta dopo la creazione del modello. Durante il funzionamento, DeepSpeech ora consuma 22 volte meno memoria e avvia 500 volte più velocemente.

    L'azienda Mozilla ha presentato il motore di riconoscimento vocale DeepSpeech 0.6
  • È stata eseguita una filtrazione delle parole rare nel modello linguistico. Il numero totale delle parole è stato ridotto a 500.000 delle più comuni nel testo utilizzato per l'addestramento del modello. Questa pulizia ha consentito di ridurre la dimensione del modello linguistico da 1800 MB a 900 MB, senza influire significativamente su delle prestazioni di riconoscimento.
  • È stato aggiunto il supporto per varie tecniche di creazione di ulteriori variazioni (augmentation) dei dati audio utilizzati durante l'allenamento (ad esempio, l'aggiunta a un insieme di varianti in cui sono stati introdotti distorsioni o rumori).
  • È stata aggiunta una libreria con binding per l'integrazione con applicazioni basate sulla piattaforma .NET.
  • La documentazione è stata completamente rielaborata e ora è disponibile su un sito separato deepspeech.readthedocs.io.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster