Veľa matematiky a žiadna mágia: ako vlastne fungujú hlasoví asistenti

Asistent Zuckerberg a operačný systém "Samantha": dva typy hlasových systémov

Pracujem v laboratóriu

reprezentácia údajov strojového učenia.Na univerzite učím dva bloky predmetov: jeden z nich súvisí s aplikovaným strojovým učením a umelou inteligenciou. Druhá je s vyhľadávaním a jeho odrodami. Na priesečníku týchto predmetov leží oblasť, o ktorej sa dnes pokúsim porozprávať.

Existujú dva spôsoby, ako sa pozrieť na to, čo jehlasový asistent. Predstavte si, že máte virtuálneho komorníka. Napríklad asi pred piatimi rokmi si Mark Zuckerberg vyrobil vo svojom dome inteligentného asistenta, ktorý mu hovoril „Jarvis“. Vedel pustiť ľudí do domu, otvárať a zatvárať dvere, závesy, rozsvietiť svetlo. Ďalšími príkladmi takýchto zariadení sú „Alexa“ a „Alice“, žijú v zariadení a sú schopné zlepšiť život. Môžu ovládať rúru, práčku, vysávač a podobne.

Ďalším spôsobom, ako sa pozerať na asistentov, je asrozhranie. Vo filme „Ona“ bol operačný systém s názvom „Samantha“, v ruskom hlasovom hraní mala rovnaký hlas ako „Alice“ z Yandexu. Slúžila ako rozhranie na správu operačného systému a nebola navrhnutá ako asistentka. Apple má tento prístup - Siri, Microsoft - Сortana, Google - Google Assistant.

ako fungujú?

Všetci asistenti sú stavaní na veľmi podobnomprincíp. Prvá vec, ktorú musí urobiť, je počuť hlas. Deje sa tak na zariadení používateľa – mobilnom telefóne alebo inteligentnom reproduktore. Používateľ povie: „Alice“, „Alexa“, „OK Google“. Po týchto magických slovách je zariadenie pripravené nahrať hlas používateľa. Stáva sa to až do určitého bodu - kým klient neutichne alebo kým zariadenie nebude unavené z čakania, kým stíchne. Potom sa údaje odošlú na server spoločnosti, ktorá služby poskytuje.

Tu začína kúzlo.Prvou operáciou je prevod reči na text. Každý hovorí inak, ako to prevediem na text? Potom začína to, na čo využívame hlasových asistentov – poskytovanie služby. Ide o akúkoľvek operáciu, ktorá je dostupná online – nákup lístkov, rezervácia stola v reštaurácii. Jedinou otázkou je, ako poskytnúť užívateľsky prívetivé rozhranie. Ak tam nie je, zariadenie sa zmení na reproduktor.

Po zavolaní služby používateľ potrebujevrátiť výsledky, preto ich musíte správne zabaliť. S najväčšou pravdepodobnosťou to bude text, problém zo stránky na internete, pieseň, údaje, ktoré vypočítala kalkulačka. Údaje sa prevedú späť na reč a prenesú sa ku klientovi.

Reč na text

Naša komunikácia prebieha prostredníctvom reči, hlasu jepohyb vzduchu okolo. Tieto vibrácie dopadajú na ušný bubienok, ten tlačí na tri kostice – strmienok, nákovu a kladivo. Tie zase rozkývajú orgán zvaný slimák. Slimák sme dostali z rýb, je naplnený vodou a žijú v ňom vláskové bunky, ktoré kmitajú spolu s vodou v slimákovi. Horné vláskové bunky zosilňujú kolísanie tekutiny a prenášajú ich do spodnej časti vláskových buniek, ktoré vytvárajú elektrický impulz. Tento impulz sa prenáša do mozgu.

Navyše na rôznych miestach kochley sú vláskové bunky zodpovedné za rôzne frekvencie. Vysoké frekvencie sú spracované v širokej časti, stredné frekvencie budú v strede a nízke frekvencie bližšie k stredu.

Ako môžeme prinútiť stroj vnímať zvuk taktorovnakým spôsobom - nie vo forme surového signálu, ale vo forme súboru frekvencií? Odpoveď na túto otázku dal francúzsky matematik Jean Baptiste Fourier, ktorý žil na hranici XVIII-XIX storočia. Vedec navrhol takú matematickú transformáciu, pomocou ktorej je všetko ako v uchu – surový signál sa zoberie a rozloží na frekvenčné zložky.

Čo robiť s frekvenčnými komponentmi?Môžeme mapovať spektrálne zobrazenie na fonému, to znamená, že môžeme konvertovať reč na fonémy. Viac-menej sa dajú ľahko algoritmicky previesť na písmená. To znamená, že slovo môžeme získať z fonetickej reprezentácie.

Ale toto všetko je nepresné.Existujú fonémy, ktoré sa mierne líšia, prechody z jedného zvuku do druhého môžu znieť odlišne. Nazývajú sa senones, je ich asi 10 000. Ale keď ich je toľko, je úloha definovať slová oveľa ťažšia.

Boj s chybami

Ako sa výskumníci vyrovnávajú s chybami?Odpoveď na túto otázku dal ruský matematik Andrej Markov, ktorý žil na prelome 19.-20. Vyvinul teóriu opisujúcu procesy, kde jeden vyplýva z druhého. A vďaka jeho teórii boli vyvinuté skryté Markovove modely. Toto je jeden z prvých spôsobov, ako opraviť chyby tohto druhu.

Napríklad, keď človek hovorí nezreteľne, onprízvuk alebo nesprávne vysloví slovo - existuje matematický mechanizmus, ktorý vám umožňuje obnoviť a určiť s vysokou presnosťou, čo tým osoba myslela. Veď aj ľudia robia chyby, ale rozumejú si, čiže v hlave máme mechanizmus na opravu chýb.

Ale reprezentácia textu nestačí -počítač pracuje s číslami. Ako ich získať? Noam Chomsky má hypotézu, že v mozgu máme štruktúru, navyše dostupnú už na úrovni narodenia, čo nám pomáha rýchlo sa učiť prirodzené jazyky. Chomsky počas svojho života buduje, zdokonaľuje a pracuje na modeli, ktorý určuje, aké bežné vzorce existujú v jazyku, bez ohľadu na to, aký - ruský, anglický alebo čínsky.

Na snímke - Chomského gramatika.To je asi to isté, čo robia na hodinách ruského jazyka, keď rozoberajú vetu po skladbe. Existujú podstatné mená, prídavné mená, predmety, predikáty, slovesné skupiny - to všetko je formalizované a môže byť zobrazené stroju. Táto štruktúra je ľahko znázornená vo forme čísel.

Stroj dokáže pochopiť, v čom je predmetnávrh a aké kroky podniknúť. Napríklad, ak klient povie: „Alice, zapni hudbu“, potom „zapnúť“ bude akcia, „hudba“ bude objekt, na ktorom sa akcia uskutoční. "Alice" pochopí klienta a začne konať.

Ale samotné slová sú zbierkou písmen, naprrozumiete ich významu? Existujú podobné slová - "hrať" a "hrať", pochopí zariadenie, že ide o to isté? Odpoveď na túto otázku dal americký lingvista Leonardo Bloomfield. Na začiatku dvadsiateho storočia navrhol teóriu, kde význam slova určuje kontext, v ktorom sa toto slovo nachádza. Pozrite sa na snímku a porozmýšľajte, akým slovom možno nahradiť tri bodky.

Moja odpoveď by bola slon, ale keď som sa spýtalštudenti, hovoria, že tam môže byť nosorožec alebo dokonca žirafa. Ale vo všeobecnosti chápeme, že ide o veľké zviera, ktoré žije v Afrike a ktoré sa vie hnevať. Ak toto všetko skombinujeme, potom dostaneme nejaký sémantický popis tohto objektu bez použitia samotného slova.

Ale ak to zdigitalizujeme, dostanemedesiatky tisíc čísel. A vďaka americkému matematikovi Geneovi Golubovi sa mu podarilo prísť na to, ako výrazne znížiť počet číslic. Namiesto čísel použili zbierku čísel nazývanú vektor. A tento vektor možno použiť na pochopenie blízkosti alebo vzdialenosti vo význame, sémantickej príbuznosti. Takže môžete pochopiť, že „hrať“ je približne to isté ako „hrať sa“.

Teraz existujú nástroje, do ktorých môžete zadávať slová,a ukáže sa, ako sú rozmiestnené na mape významov. Napríklad slová „žirafa“, „slon“ a „nosorožec“ sú zoskupené a končia vedľa seba v priestore významov. Tieto metódy sa vyvinuli a teraz vyzerajú oveľa pokročilejšie.

Uviedli sme slová vo forme štruktúry, vety vo forme štruktúry, predstavili sme slová vo forme významov, to všetko je vo forme čísel, čo ďalej?

služby

Každá služba má státisíce, milióny,miliardy predmetov. Ak hovoríme o vyhľadávaní na internete, ide o stovky miliárd stránok, desiatky miliárd obrázkov. Ak streamujete hudbu, milióny skladieb.

Jeden z prvých prístupov k indexovaniu údajov −budovanie binárnych vyhľadávacích stromov. To isté sa používa v slovníkoch: otvoríte ho v strede a ak ste preskočili správne slovo, prejdite späť, ak ste ho nedostali, pokračujte. Ale v roku 1962 sovietski matematici Georgy Adelson-Velsky a Evgeniy Landis prišli s dátovou štruktúrou, ktorá sa udržiava v stave rýchleho vyhľadávania.

Tento systém funguje iba na lineárnych údajoch −čísla alebo slová. A čo sa stane s viacrozmernými údajmi, ak budeme chcieť niečo hľadať na mape alebo v trojrozmernom priestore? Aby to urobili, prišli s takými štruktúrami, ako sú kd-stromy, dokonale zvládajú úlohy vyhľadávania v trojrozmernom priestore. Ale prestali fungovať pri moderných úlohách, kde je text popísaný stovkami čísel.

Ale vďaka teoretickým prácam z konca 20Eric Berninson navrhol vývoj vyhľadávacích stromov s názvom Anna, ktoré možno použiť na zaručenie dobrej kvality vyhľadávania v obrovských zbierkach. Funguje to pre celú obrovskú základňu Spotify – úžasný výsledok, ktorý sa dosiahol len pred piatimi rokmi.

Existujú aj iné prístupy:napríklad sociológ Stanley Milgram robil bizarné a niekedy neľudské experimenty. Zrodil teóriu šiestich podaní rúk, že všetci ľudia na Zemi sa navzájom poznajú nie viac ako šiestimi podaniami rúk. Aby to urobil, požiadal ľudí, aby poslali list cudzincovi. Tí si potom medzi svojimi známymi museli vybrať tých, ktorým táto osoba mohla byť známa. A ukázalo sa, že na to potrebovali šesť písmen. Experiment bol kritizovaný, ale v roku 2000 sa zopakoval - a potvrdil výsledky.

To je úžasná vlastnosť, ktorá v matematikezískal názov Gróf „Small World“. Ruskí vedci - skupina Jurija Malkova - navrhli zaujímavý algoritmus. Použili to, aby našli čokoľvek kdekoľvek. Uzly v tomto grafe už nie sú ľudia, ale dokumenty.

V tomto grafe - najkratšia vzdialenosť medzi ľubovoľnýmipár predmetov. Používatelia môžu veľmi rýchlo nájsť to, čo potrebujeme. Táto dátová štruktúra sa teraz používa v mnohých spoločnostiach v Rusku av zahraničí - Facebook, Mail.ru, Yandex. Vynikajúci matematický model, ktorý zmenil nielen vyhľadávacie a odporúčacie služby, ale aj hlasových asistentov.

Čítaj viac

Pozrite si prvú jednostupňovú orbitálnu loď budúcnosti na svete

Vedci tri roky verili, že na juhu Marsu je voda. Ukázalo sa, že nie

Hypersonické lietadlo na vodíkový pohon môže dosiahnuť rýchlosť až 12 Mach. Je to takmer 15 000 km/h