Multă matematică și nicio magie: cum funcționează de fapt asistenții vocali

Asistentul Zuckerberg și sistemul de operare „Samantha”: două tipuri de sisteme de voce

Lucrez într-un laborator

reprezentarea datelor de învățare automată.Predau două blocuri de discipline la universitate: una dintre ele este legată de învățarea automată aplicată și inteligența artificială. Al doilea este cu căutarea și varietățile sale. La intersecția acestor subiecte se află zona despre care voi încerca să vorbesc astăzi.

Există două moduri de a privi ceea ce esteasistent vocal. Imaginează-ți că ai un majordom virtual. De exemplu, în urmă cu aproximativ cinci ani, Mark Zuckerberg și-a făcut un asistent inteligent în casa lui, numit „Jarvis”. Știa să lase oamenii să intre în casă, să deschidă și să închidă uși, draperii, să aprindă lumina. Alte exemple de astfel de dispozitive sunt „Alexa” și „Alice”, ele trăiesc în dispozitiv și sunt capabile să îmbunătățească viața. Pot controla cuptorul, mașina de spălat, aspiratorul și așa mai departe.

Un alt mod de a privi asistenții este cainterfata. În filmul „Ea” a existat un sistem de operare numit „Samantha”, în interpretarea vocală rusă avea aceeași voce ca „Alice” de la Yandex. Ea a acționat ca o interfață pentru managementul sistemului de operare și nu a fost proiectată ca asistentă. Apple are această abordare - Siri, Microsoft - Сortana, Google - Asistent Google.

Cum funcționează?

Toți asistenții sunt construiti pe o bază foarte similarăprincipiu. Primul lucru pe care trebuie să-l facă este să audă vocea. Acest lucru se întâmplă pe dispozitivul utilizatorului - un telefon mobil sau un difuzor inteligent. Utilizatorul spune: „Alice”, „Alexa”, „OK Google”. După aceste cuvinte magice, dispozitivul este gata să înregistreze vocea utilizatorului. Acest lucru se întâmplă până la un moment dat - până când clientul tace sau dispozitivul este obosit să aștepte până când tace. După aceea, datele sunt trimise către serverul companiei, care furnizează serviciile.

Aici începe magia.Prima operație este conversia vorbire în text. Toată lumea spune diferit, cum transform asta în text? Apoi începe ceea ce folosim asistenții vocali - furnizarea unui serviciu. Aceasta este orice operațiune care este disponibilă online - cumpărarea de bilete, rezervarea unei mese într-un restaurant. Singura întrebare este cum să oferiți o interfață ușor de utilizat. Dacă nu este acolo, dispozitivul se transformă într-un vorbitor.

După apelarea serviciului, utilizatorul trebuiereturnați rezultatele, pentru aceasta trebuie să le împachetați corespunzător. Cel mai probabil, va fi un text, o problemă dintr-o pagină de pe Internet, o melodie, date pe care le-a calculat calculatorul. Datele sunt convertite înapoi în vorbire și transmise clientului.

Vorbire către text

Comunicarea noastră are loc prin vorbire, vocea estemișcarea aerului în jur. Aceste vibrații cad pe timpan, împinge trei oase - etrierul, nicovala și ciocanul. Aceștia, la rândul lor, balansează un organ numit melc. Melcul l-am luat din pește, este umplut cu apă și în el trăiesc celule de păr, ele oscilează împreună cu apa din melc. Celulele capilare superioare amplifică fluctuațiile fluidului și le transmit în partea inferioară a celulelor părului, care formează un impuls electric. Acest impuls este transmis creierului.

Mai mult, în diferite locuri ale cohleei, celulele părului sunt responsabile pentru frecvențe diferite. Frecvențele înalte sunt procesate în partea largă, frecvențele medii vor fi în mijloc, iar frecvențele joase mai aproape de centru.

Cum putem face ca mașina să perceapă sunetul așa?în același mod - nu sub forma unui semnal brut, ci sub forma unui set de frecvențe? Răspunsul la această întrebare a fost dat de matematicianul francez Jean Baptiste Fourier, el a trăit la granița secolelor XVIII-XIX. Omul de știință a propus o astfel de transformare matematică, cu ajutorul căreia totul este la fel ca în ureche - un semnal brut este preluat și descompus în componente de frecvență.

Ce să faci cu componentele de frecvență?Putem mapa o reprezentare spectrală la un fonem, adică putem converti vorbirea în foneme. Ele sunt mai mult sau mai puțin ușor convertite algoritmic în litere. Adică putem obține un cuvânt dintr-o reprezentare fonetică.

Dar toate acestea sunt inexacte.Există foneme care diferă ușor, tranzițiile de la un sunet la altul pot suna diferit. Se numesc senones, sunt aproximativ 10 mii, dar când sunt atât de multe, sarcina de a defini cuvintele devine mult mai dificilă.

Combaterea bug-urilor

Cum abordează cercetătorii erorile?Răspunsul la această întrebare a fost dat de matematicianul rus Andrei Markov, care a trăit la începutul secolelor XIX-XX. El a dezvoltat o teorie care descrie procesele în care unul decurge de la celălalt. Și datorită teoriei sale, au fost dezvoltate modele Markov ascunse. Aceasta este una dintre primele modalități de a remedia erori de acest fel.

De exemplu, când o persoană vorbește neclar, elaccent sau el pronunță greșit cuvântul - există un mecanism matematic care vă permite să restaurați și să determinați cu mare precizie ce a vrut să spună persoana respectivă. La urma urmei, oamenii fac și greșeli, dar se înțeleg, ceea ce înseamnă că avem un mecanism de corectare a erorilor în cap.

Dar reprezentarea textului nu este suficientă -computerul funcționează cu numere. Cum să le obții? Noam Chomsky are o ipoteză că avem o structură în creier, de altfel, disponibilă la nivelul nașterii, care ne ajută să învățăm rapid limbile naturale. Chomsky de-a lungul vieții construiește, perfecționează și lucrează pe un model care determină ce tipare comune există într-o limbă, indiferent de ce - rusă, engleză sau chineză.

Pe diapozitiv - gramatica lui Chomsky.Este cam același lucru pe care îl fac în lecțiile de limba rusă atunci când analizează o propoziție după compunere. Există substantive, adjective, subiecte, predicate, grupuri de verbe - toate acestea sunt formalizate și pot fi arătate mașinii. Această structură este ușor de reprezentat sub formă de numere.

Aparatul poate înțelege în ce este subiectulpropunere și ce măsuri trebuie luate. De exemplu, dacă clientul spune: „Alice, pornește niște muzică”, atunci „pornește” va fi acțiunea, „muzică” va fi obiectul asupra căruia are loc acțiunea. „Alice” va înțelege clientul și va începe să ia măsuri.

Dar cuvintele în sine sunt o colecție de litere, cum ar fiintelegeti semnificatia lor? Există cuvinte similare - „play” și „play”, va înțelege dispozitivul că acesta este același lucru? Răspunsul la această întrebare a fost dat de lingvistul american Leonardo Bloomfield. La începutul secolului XX, el a propus o teorie în care sensul unui cuvânt este determinat de contextul în care se află acest cuvânt. Priviți diapozitivul și gândiți-vă ce cuvânt poate fi înlocuit cu trei puncte.

Răspunsul meu ar fi un elefant, dar când am întrebatstudenților, ei spun că ar putea fi un rinocer sau chiar o girafă. Dar, în general, înțelegem că acesta este un animal mare care trăiește în Africa și care poate fi furios. Dacă combinăm toate acestea, atunci obținem o descriere semantică a acestui obiect fără a folosi cuvântul în sine.

Dar dacă digitalizăm acest lucru, vom obținezeci de mii de numere. Și datorită matematicianului american Gene Golub, el a reușit să descopere cum să reducă semnificativ numărul de cifre. În loc să folosească numere, au folosit o colecție de numere numită vector. Și acest vector poate fi folosit pentru a înțelege proximitatea sau distanța în sens, relația semantică. Deci puteți înțelege că „joaca” este aproximativ același cu „joacă”.

Acum există instrumente prin care puteți introduce cuvinte,și va deveni clar modul în care sunt distribuite pe harta semnificațiilor. De exemplu, cuvintele „girafă”, „elefant” și „rinocer” sunt grupate și ajung una lângă alta în spațiul semnificațiilor. Aceste metode au evoluat și acum par mult mai avansate.

Am prezentat cuvinte sub formă de structură, propoziții sub formă de structură, am prezentat cuvinte sub formă de semnificații, toate acestea sunt sub formă de numere, ce urmează?

Servicii

Fiecare serviciu are sute de mii, milioane,miliarde de obiecte. Dacă vorbim despre căutarea pe Internet, acestea sunt sute de miliarde de pagini, zeci de miliarde de imagini. Dacă muzică în flux, milioane de melodii.

Una dintre primele abordări ale indexării datelor −construirea arborilor binari de căutare. Același lucru este folosit în dicționare: îl deschideți în mijloc și, dacă ați sărit cuvantul potrivit, derulați înapoi, dacă nu l-ați primit, mergeți mai departe. Dar în 1962, matematicienii sovietici Georgy Adelson-Velsky și Evgeniy Landis au venit cu o structură de date care se menține într-o stare de căutare rapidă.

Acest sistem funcționează numai pe date liniare −numere sau cuvinte. Și ce se va întâmpla cu datele multidimensionale dacă vrem să căutăm ceva pe o hartă sau în spațiul tridimensional? Pentru a face acest lucru, au venit cu structuri precum kd-trees, fac față perfect sarcinilor de căutare în spațiul tridimensional. Dar au încetat să lucreze pentru sarcini moderne, în care textul este descris cu sute de numere.

Dar datorită lucrării teoretice de la sfârșitul secolului al XX-leaEric Berninson a propus dezvoltarea arborilor de căutare, numiti Anna, care pot fi folosite pentru a garanta o bună calitate a căutării pe colecții uriașe. Acest lucru funcționează pentru întreaga bază vastă Spotify - un rezultat minunat care a fost obținut cu doar cinci ani în urmă.

Există și alte abordări:de exemplu, sociologul Stanley Milgram a realizat experimente bizare și uneori inumane. El a dat naștere teoriei a șase strângeri de mână, conform căreia toți oamenii de pe Pământ se cunosc prin nu mai mult de șase strângeri de mână. Pentru a face acest lucru, le-a cerut oamenilor să trimită o scrisoare unui străin. Ei au trebuit apoi să aleagă dintre cunoscuții lor pe cei care ar putea fi familiarizați cu această persoană. Și s-a dovedit că le-au fost necesare șase scrisori pentru a face asta. Experimentul a fost criticat, dar repetat în anii 2000 - și a confirmat rezultatele.

Aceasta este o proprietate uimitoare, care în matematicăa căpătat numele Conte „Lumea Mică”. Oamenii de știință ruși - grupul lui Yuri Malkov - au propus un algoritm interesant. L-au folosit pentru a găsi orice oriunde. Nodurile din acest grafic nu mai sunt oameni, ci documente.

În acest grafic - cea mai scurtă distanță dintre oricarecâteva obiecte. Utilizatorii pot găsi foarte repede ceea ce avem nevoie. Această structură de date este acum utilizată în multe companii din Rusia și din străinătate - Facebook, Mail.ru, Yandex. Un model matematic excelent care a schimbat nu numai serviciile de căutare și recomandare, ci și asistenții vocali.

Citeste mai mult

Vedeți prima navă orbitală cu o singură treaptă din lume a viitorului

Timp de trei ani, oamenii de știință au crezut că există apă în sudul lui Marte. S-a dovedit că nu a fost

Aeronava hipersonică alimentată cu hidrogen dezvoltă viteze de până la Mach 12. Este aproape 15.000 km/h