Tanta matematica e nessuna magia: come funzionano effettivamente gli assistenti vocali

L'assistente Zuckerberg e il sistema operativo "Samantha": due tipi di sistemi vocali

Lavoro in un laboratorio

Insegno due blocchi di materie all'università: uno di questi è legato all'apprendimento automatico applicato e all'intelligenza artificiale.Il secondo è con la ricerca e le sue varietà.Questo è l'ambito di cui cercherò di parlare oggi.

Ci sono due modi per guardare ciò che èassistente vocale. Immagina di avere un maggiordomo virtuale. Ad esempio, circa cinque anni fa, Mark Zuckerberg ha creato un assistente intelligente nella sua casa, lo ha chiamato "Jarvis". Sapeva come far entrare le persone in casa, aprire e chiudere porte, tende, accendere la luce. Altri esempi di tali dispositivi sono "Alexa" e "Alice", vivono nel dispositivo e sono in grado di migliorare la vita. Possono controllare il forno, la lavatrice, l'aspirapolvere e così via.

Un altro modo di guardare agli assistenti è comeinterfaccia. Nel film "Lei" c'era un sistema operativo chiamato "Samantha", nella recitazione vocale russa aveva la stessa voce di "Alice" di Yandex. Ha agito come un'interfaccia per la gestione del sistema operativo e non è stata progettata come assistente. Apple ha questo approccio: Siri, Microsoft - Ortana, Google - Google Assistant.

Come funzionano?

Tutti gli assistenti sono costruiti su una struttura molto simileprincipio. La prima cosa che deve fare è sentire la voce. Ciò accade sul dispositivo dell'utente: un telefono cellulare o un altoparlante intelligente. L'utente dice: "Alice", "Alexa", "OK Google". Dopo queste parole magiche, il dispositivo è pronto per registrare la voce dell'utente. Questo accade fino a un certo punto, fino a quando il client non è silenzioso o il dispositivo non è stanco di aspettare fino a quando non è silenzioso. Successivamente, i dati vengono inviati al server dell'azienda, che fornisce i servizi.

È qui che inizia la magia.La prima operazione è la conversione da voce a testo. Ognuno dice in modo diverso, come posso convertirlo in testo? Quindi inizia ciò per cui utilizziamo gli assistenti vocali: la fornitura di un servizio. Questa è qualsiasi operazione disponibile online: acquisto di biglietti, prenotazione di un tavolo in un ristorante. L'unica domanda è come fornire un'interfaccia user-friendly. Se non è presente, il dispositivo si trasforma in un oratore.

Dopo aver chiamato il servizio, l'utente deve farlorestituire i risultati, per questo è necessario imballarli correttamente. Molto probabilmente sarà un testo, un numero da una pagina su Internet, una canzone, dati calcolati dalla calcolatrice. I dati vengono riconvertiti in voce e trasmessi al client.

Discorso al testo

La nostra comunicazione avviene attraverso la parola, la voce èmovimento d'aria intorno. Queste vibrazioni cadono sul timpano, spinge tre ossa: la staffa, l'incudine e il martello. Quelli, a loro volta, suonano un organo chiamato lumaca. Abbiamo ottenuto la lumaca dal pesce, è piena d'acqua e ci vivono cellule ciliate, oscillano insieme all'acqua nella lumaca. Le cellule ciliate superiori amplificano le fluttuazioni del fluido e le trasmettono alla parte inferiore delle cellule ciliate, che formano un impulso elettrico. Questo impulso viene trasmesso al cervello.

Inoltre, in diversi punti della coclea, le cellule ciliate sono responsabili di diverse frequenze. Le alte frequenze vengono elaborate nella parte larga, le medie frequenze nel mezzo e le basse frequenze più vicine al centro.

Come possiamo fare in modo che la macchina percepisca un suono in questo modoallo stesso modo - non sotto forma di un segnale grezzo, ma sotto forma di un insieme di frequenze? La risposta a questa domanda fu data dal matematico francese Jean Baptiste Fourier, visse al confine tra il XVIII e il XIX secolo. Lo scienziato ha proposto una tale trasformazione matematica, con l'aiuto della quale tutto è come nell'orecchio: un segnale grezzo viene preso e scomposto in componenti di frequenza.

Cosa fare con le componenti di frequenza?Possiamo mappare una rappresentazione spettrale su un fonema, cioè possiamo convertire il parlato in fonemi. Sono più o meno facilmente convertiti algoritmicamente in lettere. Cioè, possiamo ottenere una parola da una rappresentazione fonetica.

Ma tutto questo è impreciso.Ci sono fonemi che differiscono leggermente, le transizioni da un suono all'altro possono suonare in modo diverso. Si chiamano senones, sono circa 10mila, ma quando sono tanti il ​​compito di definire le parole diventa molto più difficile.

Combattere gli insetti

In che modo i ricercatori affrontano gli errori?La risposta a questa domanda è stata data dal matematico russo Andrei Markov, vissuto a cavallo tra il XIX e il XX secolo. Ha sviluppato una teoria che descrive i processi in cui uno segue dall'altro. E grazie alla sua teoria sono stati sviluppati modelli di Markov nascosti. Questo è uno dei primi modi per correggere errori di questo tipo.

Ad esempio, quando una persona parla indistintamente, luiaccento o pronuncia male la parola: esiste un meccanismo matematico che consente di ripristinare e determinare con elevata precisione ciò che la persona intendeva. Dopotutto, anche le persone commettono errori, ma si capiscono, il che significa che abbiamo un meccanismo per correggere gli errori nella nostra testa.

Ma la rappresentazione del testo non è sufficiente -il computer funziona con i numeri. Come ottenerli? Noam Chomsky ha un'ipotesi che abbiamo una struttura nel cervello, inoltre, disponibile a livello di nascita, che ci aiuta a imparare rapidamente le lingue naturali. Chomsky nel corso della sua vita costruisce, perfeziona e lavora su un modello che determina quali schemi comuni ci sono in una lingua, non importa quale: russo, inglese o cinese.

Sulla diapositiva - La grammatica di Chomsky.È più o meno la stessa cosa che fanno nelle lezioni di lingua russa quando analizzano una frase per composizione. Ci sono nomi, aggettivi, soggetti, predicati, gruppi di verbi: tutto questo è formalizzato e può essere mostrato alla macchina. Questa struttura è facilmente rappresentata sotto forma di numeri.

La macchina può capire in che cosa si trova il soggettoproposta e quale azione intraprendere. Ad esempio, se il cliente dice: "Alice, accendi della musica", "accendi" sarà l'azione, "musica" sarà l'oggetto su cui si svolge l'azione. "Alice" capirà il cliente e inizierà ad agire.

Ma le parole stesse sono una raccolta di lettere, tipocapirne il significato? Ci sono parole simili: "riproduci" e "riproduci", il dispositivo capirà che si tratta della stessa cosa? La risposta a questa domanda è stata data dal linguista americano Leonardo Bloomfield. All'inizio del XX secolo proponeva una teoria in cui il significato di una parola è determinato dal contesto in cui si trova questa parola. Guarda la diapositiva e pensa a quale parola può essere sostituita con tre punti.

La mia risposta sarebbe un elefante, ma quando l'ho chiestostudenti, dicono che potrebbe esserci un rinoceronte o anche una giraffa. Ma in generale, capiamo che questo è un grande animale che vive in Africa e che può essere arrabbiato. Se combiniamo tutto questo, otteniamo una descrizione semantica di questo oggetto senza usare la parola stessa.

Ma se lo digitalizziamo, otteniamo decine di migliaia di cifre.E grazie al matematico americano Gene Golub, è riuscito a capire come ridurre significativamente il numero di cifre.Invece di usare i numeri, hanno usato un insieme di cifre chiamato vettore.E questo vettore può essere usato per comprendere la vicinanza o la distanza nel significato, la coerenza semantica.In questo modo, puoi capire che "giocare" è più o meno la stessa cosa di "giocare".

Ora ci sono strumenti in cui è possibile inserire le parole, e diventerà chiaro come sono distribuite sulla mappa dei significati.Ad esempio, le parole "giraffa", "elefante" e "rinoceronte" sono raggruppate nello spazio dei significati.Questi metodi si sono evoluti e ora sembrano molto più avanzati.

Abbiamo presentato parole sotto forma di struttura, frasi sotto forma di struttura, abbiamo presentato parole sotto forma di significati, tutto questo è sotto forma di numeri, cosa succede dopo?

Servizi

Ogni servizio ha centinaia di migliaia, milioni,miliardi di oggetti. Se parliamo di ricerca su Internet, si tratta di centinaia di miliardi di pagine, decine di miliardi di immagini. Se la musica in streaming, milioni di canzoni.

Uno dei primi approcci all'indicizzazione dei dati −costruire alberi di ricerca binari. Lo stesso si usa nei dizionari: lo apri nel mezzo, e se hai saltato la parola giusta, scorri indietro, se non l'hai capito, vai avanti. Ma nel 1962, i matematici sovietici Georgy Adelson-Velsky ed Evgeniy Landis hanno escogitato una struttura di dati che si mantiene in uno stato di rapido recupero.

Questo sistema funziona solo su dati lineari −numeri o parole. E cosa accadrà ai dati multidimensionali se vogliamo cercare qualcosa su una mappa o nello spazio tridimensionale? Per fare questo, hanno escogitato strutture come kd-trees, che si adattano perfettamente ai compiti di ricerca nello spazio tridimensionale. Ma hanno smesso di lavorare per compiti moderni, in cui il testo è descritto da centinaia di numeri.

Ma grazie al lavoro teorico di fine NovecentoEric Berninson ha proposto lo sviluppo di alberi di ricerca, chiamati Anna, che possono essere utilizzati per garantire una buona qualità di ricerca su grandi collezioni. Funziona per l'intera vasta base di Spotify, un risultato meraviglioso che è stato ottenuto solo cinque anni fa.

Ci sono anche altri approcci:per esempio, il sociologo Stanley Milgram ha eseguito esperimenti bizzarri e talvolta disumani. Ha dato vita alla teoria delle sei strette di mano, secondo cui tutte le persone sulla Terra si conoscono attraverso non più di sei strette di mano. Per fare questo, ha chiesto alle persone di inviare una lettera a uno sconosciuto. Hanno quindi dovuto scegliere tra i loro conoscenti coloro che potevano avere familiarità con questa persona. E si è scoperto che ci sono volute sei lettere per farlo. L'esperimento è stato criticato, ma ripetuto negli anni 2000 e ha confermato i risultati.

Questa è una proprietà straordinaria, che in matematicaacquisì il nome di Conte "Piccolo Mondo". Gli scienziati russi - il gruppo di Yuri Malkov - hanno proposto un algoritmo interessante. Lo usavano per trovare qualcosa ovunque. I nodi in questo grafico non sono più persone, ma documenti.

In questo grafico - la distanza più breve tra qualsiasiun paio di oggetti. Gli utenti possono trovare ciò di cui abbiamo bisogno molto rapidamente. Questa struttura di dati è ora utilizzata in molte aziende in Russia e all'estero: Facebook, Mail.ru, Yandex. Un eccellente modello matematico che ha cambiato non solo i servizi di ricerca e raccomandazione, ma anche gli assistenti vocali.

Leggi di più

Ammira la prima nave orbitale monostadio al mondo del futuro

Per tre anni, gli scienziati hanno creduto che ci fosse acqua nel sud di Marte. Si è scoperto che non lo era

Un aereo ipersonico a idrogeno può raggiungere velocità fino a Mach 12. Sono quasi 15.000 km/h