Sinopsis al reuniunii „cum de căutare Yandex ca ilizibilă“

ocolind pe Internet

Yandex știe mai multe trilioane de adrese URL, evită mai multe miliarde de documente pe zi. Dar toate URL-urile nu vor trece niciodată, pentru că Internetul este fără sfârșit.

indexul Clădire

Potrivit ashmanovskoy dinamica de căutare. Google Yandex înainte de aproape două ori indexul de căutare caracterul complet. Acest decalaj a fost făcută posibilă prin îmbunătățiri - achiziționarea de noi mașini și optimizarea proceselor.

Construcția circuitului bazei de căutare

Robotul traversează Internet și indexul documentelor. le pune în copie salvat, apoi pentru a arăta la problema, de exemplu. În cache - un tabel hash separat între centrele de date.
În procesul de robot de indexare extrage cuvinte din documentul și aranjează de Lema, a se vedea link-uri către alte pagini și merge mai departe.
Ajutorul de indexare sunt, de asemenea, utilizate jurnalele Yandex. În cazul în care documentul este prezentat în emisiune sau are un clic al problemei - trebuie să-l lăsați în index. În mod logic, ca trimiteri la un astfel de document ar trebui să conducă la un document bun.

Publicarea indicelui în Search

Principala problemă - toate datele sunt prelucrate în propria harta-YTable reduce, abreviat ca Yt. Volumul total de 50 petabytes.
Descrierea completa - Habré.

probleme mapredyusa

MAP foloseste operare batchevye redyus. Pentru a stabili documentele prioritare pentru a eluda, Yandex ia toate numărul de referință, se conectează cu toate comportamentul utilizatorului și toate formele de descărcare.

Procesul se transformă lent pentru a construi un index - prea.
etapa Batchevye pentru întreaga bază - este stabilită, sau delta, sau toate.

La astfel de volume de date este important pentru a accelera procesul de livrare a indicelui. Pentru a face acest lucru, există circuite rapide. De exemplu, Yandex News - Descărcare știri în timp real și publică pentru utilizator.

Schema căutător

Metacăutare - interoga indicii, care sunt împărțite în bucăți, pe fiecare interogare de căutare merge.

Fiecare centru de date sunt păstrate între 2-4 copii ale indicelui.

Acum, totul este stocat în memoria RAM direct - pentru o lungă perioadă de timp.
Accelerarea poate- traduce sclerodermici.

Cum cluster de căutare

Milioane de copii ale diferitelor programe;

Mii de tipuri de programe, toate comunica prin TCP / IP;

Toate consumă resurse diferite;
Toate programele live pe servere;

Toate plimbari prin torrent.

Mâinile mai mult decât Pirate Bay.

Aceasta a îmbunătăți design-

Yandex a investit în dezvoltarea kernel-ului Linux.
Advance de planificare cum să distribuie programul pe server.
Doriți să combine de căutare și clustere robotice - trebuie să fi rulat separat de hartă a reduce programele de căutare. MR mănâncă discuri și software-ul de rețea consuma CPU.

Dar puteți echilibra pe CPU.

Matriksnet

Formula este simplu :) - conține semne binare documentul și calculul relevant în ciclul. Pentru a răspunde la utilizatorul utilizează până la 200 000 de iterații.

masina de învățare

Indici pentru formula selectată listare completă;

GPU funcționează mai bine CPU. dar eșantionul nu este plasat în memorie pentru învățare;

Mașină de învățare doriți să utilizați nu numai în arborele de selecție. dar, de asemenea, în rețele neuronale.

compresie indicele

Gata pentru a comprima secvența ui32;

Yandex folosesc un algoritm de compresie de proprietate, și economisește 10-15% din RAM.

Întrebări și răspunsuri

clasament Probleme cu formula de creștere

Anterior clasate în căutare de bază, fiecare a dat 100 rezultate.

Acum, primele 100 de rezultate sunt combinate, în medie, și pe locul formulei din nou mai grele. Resursele durează mai puțin de 1.000 de ori.

Formula First clasament a fost marimea de 10 octeți 100 de caractere.

Acum, o formulă relevanță - 100 MB.
zareversinzhinirit Unreal :)

Oleg Fedorov. provocări de căutare cloud

Rezumat nu, este cea mai mare parte din greu pe fierul de călcat.

Alexander Safronov. Cum de a găsi cele mai bune răspunsuri

Obiectiv: Pentru a descrie modul de a îmbunătăți calitatea de căutare Yandex și ce probleme le rezolva.

Toate glandele și infrastructură trebuie să caute → → → clasamentul îmbunătăți calitatea de profit căutare → fericire utilizatorului.

Cum se măsoară

Există două grupuri de măsurători:

1. Evaluarea markup asessorskoy

Learning scoruri mașină de persoane: cerere → → Top - agregare metrice →

2. on-line experimente pe utilizatori, teste AB.

Excepții în îmbunătățirea calității căutării

După ce Yandex lansat un nou clasament on-line, utilizatorii le place - toate opțiunile dorite au crescut, cu excepția uneia. Noi clasamente irosite un bloc nou în contextul blocului inferior.
Yandex a păstrat noile clasamente și clicuri și a donat bani. Mi-mi-mi :)

Ce să îmbunătățească?

Factorul - un număr care descrie documentul, solicitare sau document de comunicare cerere.

1500 factori sunt acum în căutarea web - trebuie să ia în considerare mai mulți parametri diferiți pentru a distinge binele de rău în cerere.

factori tipuri

Text - acoperire, apropierea de cuvinte, aproape de partea de sus;

Query-- numărul de cuvinte;

documentului - participare;

Există instrumente pentru a evalua beneficiile fiecărui factor.

Rezultatul testului Factor

Factori de a crea, evalua și pune în aplicare, în cazul în care este pozitiv

masina de învățare

Factorii separat sunt slabi, astfel încât acestea sunt colectate într-o singură formulă, care va da un singur număr prin care documentele și va rang în căutare.

Matriksnet

Matriksnet - un set de algoritmi de învățare automată cu GBRT - multiple arbori de decizie, alese astfel încât însumarea valorilor din frunze, pentru a primi o predicție bună a evaluării relevanței, care a fost pus evaluator.

Nodurile arborelui - separarea condițiilor care sunt testate pentru numărul de astfel factor №50> 0,5.

rețele neuronale

Folosit, inclusiv în căutare.

Recent, am introdus pe baza algoritmului factorului DSSM - interogarea și documentele ca vectori de numere cu virgulă mobilă, care sunt bine-cosinus multiplicare prezice asessorskuyu evaluare.

lingvistică

Problemele cele mai aplicate rezolvate cu ajutorul lingvisticii - cererile de prelungire.

Extinderea interogările

Motorul de căutare ar trebui să înțeleagă afixe, naștere, etc. Toate acestea pot, dar acum există apeluri pentru a construi nivelul de morfologie pentru limba nefamiliare.

Abrevieri, transliterare, etc. În jurul căutării trebuie predate.

expansiune legate

În exemplul Yandex câștigurile asociate nor de alte cuvinte și fraze, și alte interogări cu o anumită greutate asociată cu cererea inițială.

În cazul în care documentul răspunde bine la interogarea unui utilizator - este probabil să conțină nu numai cuvinte de interogare, dar, de asemenea, legate,

Chiar dacă cuvintele de interogare în textul paginii nu este prezent, atunci asociațiile înțeleg că pagina pe acest subiect.

Cum să obțineți

dicționare gata, dar nu suficient de ei pentru Yandex:

+ mașină de învățare pentru a evalua.

Sarcini interesante de căutare curente și viitoare

Adăugați semnale mai utile prin factori;

de învățare pentru a îmbunătăți și de a optimiza performanța formulelor de mașini;