Sökmotorn ser ut och fungerar. Hur sökmotorer fungerar

Vi har släppt en ny bok, "Social Media Content Marketing: How to get into the head of subscribers and make them fall in love with your brand."

Hur en sökmotor fungerar - grunderna

Alla mer eller mindre erfarna Internetanvändare kan hitta den nödvändiga informationen med hjälp av en sökmotor. Det är dock bara ett fåtal som vet hur sökmotorer. Ja, hur lyckas Google eller Yandex analysera användarens begäran på några sekunder och välja de mest lämpliga webbplatserna från de miljontals webbprojekt som finns på nätverket?
För att förstå hur sökmotorer fungerar måste du bekanta dig med begrepp som indexering och generering av emissioner. Faktum är att sökmotorns roll reduceras till analys av befintliga webbplatser i nätverket och utdata av information som bäst möter internetanvändarens behov.

Fler videor på vår kanal - lär dig internetmarknadsföring med SEMANTICA

Hur en sökmotor fungerar - webbplatsindexering

Det finns sökrobotar som ständigt "går" på nätverket och besöker alla webbplatser som är kända för dem med en viss frekvens. Efter att ha hittat nytt material lägger roboten till det i sin indexdatabas i klartext. Varje sökmotor har ett slags "arkivskåp" där kopior av indexerade webbsidor lagras.
Om roboten besöker en tidigare indexerad sida jämför den den befintliga kopian med nuvarande tillstånd dokumentera. Om det finns betydande avvikelser (om materialet har uppdaterats) görs ändringar i indexbasen.

Råd! Ju oftare webbplatsen uppdateras, desto fler sökrobotar kommer att besöka den. Detta kommer att ha en positiv effekt på indexeringen.

Bildande av relevant fråga

De exakta principerna för hur sökmotorer fungerar hålls strikt hemliga. Dessutom förbättras och förändras algoritmerna ständigt. Det är dock ganska uppenbart att föremålet för ett dokument bestäms utifrån en analys av dess semantik. Sökmotorer kan uppmärksamma följande aspekter:

  • frekvens av användning av nyckelord;
  • tematisk korrespondens av materialet till webbplatsens huvudtema;
  • förekomsten av synonymer för nyckelfraser;
  • förekomsten av nycklar i titlar, metataggar, etc.

Naturligtvis tar sökmotorer inte bara hänsyn till textens kvalitet, utan även många andra parametrar. Webbplatsens förtroende, domänens ålder, tillståndet för länkbasen spelar roll. På senare tid har beteendefaktorer (användaraktivitet - antal visade sidor, kommentarer etc.) blivit av stor betydelse.

Hur sökmotorer fungerar - svaret på en fråga

Baserat på den inmatade sökfrågan analyserar systemet det indexerade materialet. Sedan genererar roboten länkar till sajter som bäst möter användarens önskemål. Nyligen har vissa ändringar gjorts i principen för sökmotorn. Nu utgör robotarna problemet med hänsyn till användarpreferenser.
Låt oss förklara med ett specifikt exempel: det finns två användare, varav en är intresserad av kulinariska recept, och den andra beställer ofta snabbmat hemma. Dessa användare kan ange samma fråga "läcker pizza", men sökmotorn kommer att förse dem med länkar till olika webbplatser. Den första kommer att få en lista med pizzarecept, och den andra kommer att få adresserna till restauranger som specialiserar sig på leverans av denna maträtt.

I juli förra året gick Ilja Segalovich bort, grundare och chef för teknik på Yandex, skapare av den första versionen av sökmotorn och författare till dess namn. Till minne av denna enastående person och offentliga person, som hjälpt många, bl.aCOLTA. SV, publicerar vi den om informationssökning och de matematiska modeller som ligger till grund för den. Ilya Segalovich kallade sökmotorer för ett av världens två nya underverk. I alla fall, utan dem, inklusive utan Segalovichs huvudsakliga idé - Yandex, skulle vårt liv vara helt annorlunda.

Hundratals sökmotorer har skrivits i världen, och om du räknar sökfunktionerna som implementeras i en mängd olika program, måste du hålla räkningen på tusentals. Och oavsett hur sökprocessen implementeras, oavsett vilken matematisk modell den bygger på, är idéerna och programmen som implementerar sökningen ganska enkla. Även om denna enkelhet tydligen tillhör kategorin som de säger "enkelt, men det fungerar." På ett eller annat sätt, men det var sökmotorer som blev en av de två nya underverk i världen, tillhandahållande homosapiens obegränsad och omedelbar tillgång till information. Det första miraklet kan uppenbarligen betraktas som Internet som sådant med dess möjligheter till universell kommunikation.

Sökmotorer i historiskt perspektiv

Det finns en vanlig uppfattning att varje ny generation av programvara är bättre än den tidigare. De säger att innan var allt ofullkomligt, men nu råder nästan artificiell intelligens överallt. En annan extrem synpunkt är att "allt nytt är ett väl glömt gammalt". Jag tror att i förhållande till sökmotorer ligger sanningen någonstans i mitten.

Men vad har egentligen förändrats de senaste åren? Inte algoritmer, inte datastrukturer, inte matematiska modeller. Fast det gör de också. Paradigmet för att använda system har förändrats. Enkelt uttryckt satte sig en hemmafru, som letade efter ett billigare strykjärn och en examen från en extra internatskola, i hopp om att hitta ett jobb som bilmekaniker, vid skärmen med en sökrad. Förutom uppkomsten av en faktor som var omöjlig under tiden före Internet - faktorn för den totala efterfrågan på sökmotorer - blev ett par förändringar uppenbara. Först blev det tydligt att människor inte bara "tänker i ord", utan också "söker med ord". I systemets svar förväntar de sig att se ordet inskrivet i frågesträngen. Och för det andra är det svårt att ”omskola en person som söker” att söka, precis som det är svårt att omskola sig till att tala eller skriva. 1960- och 1980-talens drömmar om iterativ frågeförfining, naturlig språkförståelse, sökning efter mening och generering av sammanhängande svar på frågor är nu hårt pressade av verkligheten.

Algoritm + datastruktur = sökmotor

Som vilket program som helst, arbetar en sökmotor på datastrukturer och exekverar en algoritm. Variationen av algoritmer är inte särskilt stor, men det är den. Förutom kvantdatorer, som lovar oss ett magiskt genombrott i sökningens "algoritmiska komplexitet" och som författaren nästan inte vet något om, finns det fyra klasser av sökalgoritmer. Tre av de fyra algoritmerna kräver "indexering", förbearbetning av dokument, vilket skapar en extra fil, det vill säga ett "index", utformad för att förenkla och påskynda själva sökningen. Dessa är algoritmer för inverterade filer, suffixträd, signaturer. I det degenererade fallet finns det inget preliminärt stadium av indexering, och sökningen sker genom sekventiell skanning av dokument. En sådan sökning kallas direkt.

Direktsökning

Dess enklaste version är bekant för många, och det finns ingen programmerare som inte skulle skriva sådan kod minst en gång i sitt liv:

Trots sin uppenbara enkelhet har direktsökning utvecklats intensivt under de senaste 30 åren. Ett stort antal idéer har lagts fram som minskar söktiden med flera gånger. Dessa algoritmer beskrivs i detalj i en mängd olika litteratur, det finns sammanfattningar och jämförelser. Bra recensioner av direktsökningsmetoder finns i läroböcker som Sedgwick eller Corman. Samtidigt bör man ta hänsyn till att nya algoritmer och deras förbättrade versioner dyker upp hela tiden.

Även om direktsökning av alla texter är en ganska långsam övning, bör man inte tro att direktsökningsalgoritmer inte används på Internet. norsk sökmotor Snabb använde ett chip som implementerar logiken för direktsökning efter förenklade reguljära uttryck (fastpmc) , och placerade 256 av dessa marker på ett bräde. Detta tillät Snabb betjäna ett ganska stort antal förfrågningar per tidsenhet.

Dessutom finns det många program som kombinerar en indexsökning för att hitta ett textblock med en ytterligare direktsökning inom blocket. Till exempel mycket populär, inklusive i Runet, Glimt.

I allmänhet har direkta algoritmer i grunden särskiljande egenskaper för win-win. Till exempel obegränsade möjligheter för ungefärlig och suddig sökning. När allt kommer omkring är all indexering alltid förknippad med förenkling och normalisering av termer, och följaktligen med förlust av information. Direktsökning fungerar direkt på originaldokument utan förvrängning.

Inverterad fil

Denna enklaste datastruktur, trots sitt mystiska utländska namn, är intuitivt bekant för alla läskunniga personer, såväl som för alla databasprogrammerare som inte ens har ägnat sig åt fulltextsökning. Den första kategorin människor vet vad det är med "konkordanser" - alfabetiskt ordnade uttömmande listor med ord från en text eller som tillhör en författare (till exempel "Konkordans till A.S. Pushkins dikter", "Ordbok-konkordans av F.M. Dostojevskijs journalistik ”). De senare hanterar någon form av postningslista när de bygger eller använder ett "databasindex per nyckelfält".

Låt oss illustrera denna struktur med hjälp av en underbar rysk konkordans - "Symfoni", utgiven av Moskva-patriarkatet baserat på texten i den synodala översättningen av Bibeln.

Vi har en alfabetiskt ordnad lista med ord. För varje ord listas alla "positioner" där detta ord förekom. Sökalgoritmen består i att hitta det önskade ordet och ladda in en redan utökad lista med positioner i minnet.

För att spara på diskutrymme och snabba på sökningen tillgrips vanligtvis två knep. Först kan du spara på detaljerna för själva positionen. När allt kommer omkring, ju mer detaljerad en sådan position ges (till exempel när det gäller symfonin är det "bok + kapitel + vers"), desto mer utrymme krävs för att lagra den inverterade filen.

I den mest detaljerade versionen, i den inverterade filen, kan du lagra ordnumret och förskjutningen i byte från början av texten, och teckensnittets färg och storlek, och mycket mer. Oftare anger de helt enkelt numret på dokumentet (säg en bok i Bibeln) och antalet förekomster av detta ord i det. Det är denna förenklade struktur som anses vara den viktigaste i den klassiska teorin om informationssökning - informationHämtning(IR) .

Den andra (inte på något sätt relaterad till den första) komprimeringsmetoden: ordna positionerna för varje ord i stigande adressordning och lagra för varje position inte dess fullständiga adress, utan skillnaden från den föregående. Så här skulle en sådan lista se ut för vår sida, förutsatt att vi kommer ihåg positionen fram till kapitelnumret:

Dessutom påtvingas en enkel packningsmetod den differentiella metoden för att lagra adresser: varför ge ett litet heltal ett fast "stort" antal byte, eftersom du kan ge det nästan så många byte som det förtjänar. Här är det på sin plats att nämna Golomb-koder eller det populära språkets inbyggda funktion Perl: packa("w») .

I litteraturen finns det också ett tyngre artilleri av packningsalgoritmer av det bredaste utbudet: aritmetik, Huffman, LZW etc. Framsteg på detta område pågår. I praktiken används de sällan i sökmotorer: vinsten är liten och processorkraften används ineffektivt.

Som ett resultat av alla beskrivna knep är storleken på den inverterade filen som regel från 7 till 30 procent av storleken på originaltexten, beroende på adresseringsdetaljerna.

Listad i "Röda boken"

Andra algoritmer och datastrukturer än inverterade och framåtgående sökningar har föreslagits upprepade gånger. Dessa är först och främst suffixträd (Manber, Gonnet), såväl som signaturer (Faloutsos).

Den första av dem fungerade också på Internet, eftersom den var en patenterad sökmotoralgoritm. öppen text. Jag har sett suffixindex i inhemska sökmotorer. Den andra - signaturmetoden - är omvandlingen av dokumentet för att blockera tabeller med hashvärden för dess ord - "signatur" och sekventiell visning av "signaturer" under sökningen.

Ingen av metoderna användes i stor utsträckning och förtjänade därför inte en detaljerad diskussion i denna korta artikel.

Matematiska modeller

Ungefär tre av fem sökmotorer och moduler fungerar utan några matematiska modeller. Mer exakt, deras utvecklare ställer sig inte i uppgift att implementera en abstrakt modell och/eller är omedvetna om dess existens. Principen här är enkel: om bara programmet hittar något. Aby hur. Och då kommer användaren att ta reda på det.

Men så fort det handlar om att förbättra kvaliteten på sökningen, om en stor mängd information, om flödet av användarförfrågningar, förutom empiriskt tilldelade koefficienter, visar det sig vara användbart att arbeta med några, om än enkla, teoretiska apparater. Sökmodellen är en slags förenkling av verkligheten, på grundval av vilken en formel erhålls (av sig själv, ingen behöver den) som gör att programmet kan bestämma vilket dokument som ska betraktas som hittat och hur det ska rangordnas. Efter att ha accepterat modellen får koefficienterna ofta en fysisk betydelse och blir tydligare för utvecklaren själv, och det blir mer intressant att välja dem.

Alla olika traditionella modeller för informationsinhämtning (IR) Det är vanligt att dela in i tre typer: mängdteoretisk (boolesk, fuzzy mängd, utökad boolesk), algebraisk (vektor, generaliserad vektor, latent-semantisk, neuralt nätverk) och probabilistisk.

Den booleska modellfamiljen är faktiskt den första som kommer att tänka på för en programmerare som implementerar en fulltextsökning. Det finns ett ord - dokumentet anses hittat, nej - inte hittat. Egentligen är den klassiska booleska modellen en bro som förbinder teorin om informationssökning med teorin om sökning och datamanipulation.

Kritiken mot den booleska modellen, helt rättvist, är dess extrema stelhet och olämplighet för rangordning. Därför föreslog Joyce och Needham redan 1957 att man skulle ta hänsyn till ordens frekvensegenskaper, så att "... jämförelseoperationen skulle vara förhållandet mellan avståndet mellan vektorer ..." (Joyce, 1957). Vektormodell och implementerades framgångsrikt 1968 av grundaren av informationssökningsvetenskap, Gerard Salton (GerardSalton) i sökmotorn SMART(Salton"sMagiskAutomatiskRetrieveravText) .

Rangordningen i denna modell är baserad på den naturliga statistiska observationen att ju högre den lokala frekvensen av en term i ett dokument (TF) och mer "raritet" (d.v.s. omvänd förekomst i dokument) av termen i samlingen (IDF) , desto högre vikt har det givna dokumentet i förhållande till termen. Beteckning IDF introducerades av Karen Spark-Jones 1972 i en artikel om distinkt makt (terminspecificitet) . Från och med nu, beteckningen TF*IDF används ofta som en synonym för vektormodell.

Slutligen, 1977, underbyggde och implementerade Robertson och Spark-Jones en probabilistisk modell (föreslog redan 1960 (Maron)), som också lade grunden för en hel familj. Relevans i denna modell anses vara sannolikheten för att ett visst dokument kan vara av intresse för användaren. Detta innebär att det finns en redan existerande initial uppsättning relevanta dokument, valda av användaren eller erhållna automatiskt under något förenklat antagande. Sannolikheten att vara relevant för varje efterföljande dokument beräknas baserat på förhållandet mellan förekomsten av termer i den relevanta uppsättningen och i den övriga "irrelevanta" delen av samlingen. Även om sannolikhetsmodeller har en viss teoretisk fördel - de ordnar dokument i fallande ordning efter "sannolikhet att vara relevanta" - har de inte vunnit mycket acceptans i praktiken.

Jag tänker inte gå in på detaljer och skriva ut krångliga formler för varje modell. Deras sammanfattning, tillsammans med diskussionen, upptar 35 sidor i komprimerad form i boken "Modern Information Retrieval" (Baeza-Yates). Det är bara viktigt att notera att i var och en av familjerna utgår den enklaste modellen från antagandet om ömsesidigt oberoende av ord och har enkelt skick filtrering: dokument som inte innehåller sökordet hittas aldrig. Avancerade ("alternativa") modeller för var och en av familjerna anser inte orden i frågan som ömsesidigt oberoende, och dessutom låter de dig hitta dokument som inte innehåller ett enda ord från frågan.

Sök "med betydelse"

Möjligheten att hitta och rangordna dokument som inte innehåller ord från en fråga anses ofta vara ett tecken på artificiell intelligens eller sök efter mening och tillskrivs a priori fördelarna med modellen. Frågan om det är så eller inte kommer vi att lämna utanför ramen för denna artikel.

Till exempel kommer jag att beskriva bara en, kanske den mest populära modellen som fungerar enligt innebörden. I informationssökningsteori den här modellen kallas vanligtvis latent semantisk indexering (med andra ord avslöjar dolda betydelser). Denna algebraiska modell är baserad på singulära värdenedbrytning av en rektangulär matris som associerar ord med dokument. Elementet i matrisen är frekvenssvaret, som återspeglar graden av samband mellan ordet och dokumentet, till exempel, TF*IDF. Istället för den ursprungliga miljondimensionella matrisen föreslog författarna till Furnas och Dirvester-metoden att man skulle använda 50-150 "dolda betydelser" som motsvarar de första huvudkomponenterna i dess singularvärdesupplösning.

Singular värdenedbrytning av en verklig matris A storlekar m*n kallas vilken som helst nedbrytning av formen A= USV, var U m*m, V - ortogonal storleksmatris n*n, S- Diagonal dimensionsmatris m*n, vars element sij = 0 , om i inte lika med j, och sii= si >= 0 . Kvantiteter si kallas matrisens singularvärden och är lika med de aritmetiska värdena för kvadratrötterna av matrisens motsvarande egenvärden AAT. I den engelskspråkiga litteraturen brukar singularvärdet nedbrytning kallas SVD-sönderfall.

Det har länge bevisats (Eckart) att om vi lämnar den första k singulartal (resten är lika med noll), kommer vi närmast av alla möjliga approximationer av den ursprungliga rangmatrisen k(på sätt och vis, hennes "närmaste semantiska tolkning av rang k"). Genom att sänka rangen filtrerar vi bort irrelevanta detaljer; ökar försöker vi återspegla alla nyanser av strukturen för verkliga data.

Operationerna för att söka eller hitta liknande dokument är avsevärt förenklade, eftersom varje ord och varje dokument är associerat med en relativt kort vektor av k betydelser (rader och kolumner i motsvarande matriser). Men på grund av den låga meningsfullheten av "betydelser" eller av någon annan anledning, men användningen LSI i pannan för sökandet har inte fått fördelning. Även om denna metod används för hjälpändamål (automatiserad filtrering, klassificering, separering av samlingar, preliminär dimensionsminskning för andra modeller).

Kvalitetskontroll

"... ett stabilitetstest visade att överlappningen av relevanta dokument mellan två bedömare är ungefär 40 % i genomsnitt<...>noggrannhet och återkallelse, mätt mellan bedömare, cirka 65 %<...>Detta sätter en praktisk övre gräns för sökkvaliteten i området 65 %...”

("Vad vi har lärt oss, och inte lärt oss, från TREC", Donna Harman)

Oavsett modell behöver sökmotorn "tuning" - bedöma kvaliteten på sökningen och ställa in parametrar. Kvalitetsbedömning är en grundläggande idé för sökteori. För det är tack vare kvalitetsbedömningen som man kan tala om en viss modells tillämplighet eller otillämplighet och till och med diskutera dess teoretiska aspekter.

I synnerhet är en av de naturliga begränsningarna för sökningens kvalitet observationen som görs i epigrafen: åsikterna från två "bedömare" (specialister som gör en bedömning om relevans) sammanfaller i genomsnitt inte med varandra till en mycket stor utsträckning! Detta innebär en naturlig övre gräns för kvaliteten på sökningen, eftersom kvaliteten mäts av resultaten av jämförelsen med bedömarens åsikt.

"...Jag blev chockad när någon från Googlesa till mig att de inte använder något från TREC alls, eftersom alla algoritmer som skärps på spåret "godtyckliga förfrågningar" krossas av spam ... "

Det är dags att återvända till ämnet som den här artikeln började med: vad har förändrats i sökmotorerna på sistone?

Först och främst blev det uppenbart att webbsökningar inte kan utföras korrekt på något sätt, baserat på en analys (även om det är godtyckligt djup, semantisk etc.) av dokumenttexten enbart. Trots allt icke-textuell (av-sida) faktorer spelar ingen mindre och ibland till och med mer roll än själva sidans text. Position på webbplatsen, närvaro, källans auktoritet, uppdateringsfrekvens, citering av sidan och dess författare - alla dessa faktorer kan inte bortses från.

Efter att ha blivit den främsta källan till referensinformation för den mänskliga arten, har sökmotorer blivit den huvudsakliga trafikkällan för webbplatser. Som ett resultat blev de omedelbart utsatta för "attacker" av skrupelfria författare som ville vara på de första sidorna med sökresultat till varje pris. Den konstgjorda genereringen av ingångssidor mättade med populära ord, cloaking-tekniker, blindtext och många andra knep utformade för att lura sökmotorer översvämmade omedelbart Internet.

Förutom problemet med korrekt rangordning, var skaparna av sökmotorer på Internet tvungna att lösa problemet med att uppdatera och synkronisera en kolossal samling med heterogena format, leveransmetoder, språk, kodningar, en massa meningslösa och duplicerade texter. Det är nödvändigt att upprätthålla databasen i ett tillstånd av maximal fräschör (i själva verket räcker det för att skapa en illusion av färskhet - men detta är ett ämne för en separat diskussion), kanske med hänsyn till användarnas individuella och kollektiva preferenser. Många av dessa uppgifter har aldrig tidigare beaktats i den traditionella vetenskapen om informationssökning.

Tänk till exempel på ett par sådana uppgifter och praktiska sätt att lösa dem i sökmotorer för Internet.

Ranking Kvalitet

Alla icke-textuella kriterier är inte lika användbara. Det var länkens popularitet och dess derivator som visade sig vara den avgörande faktorn som förändrades 1999-2000. sökmotorernas värld och gav dem användarnas hängivenhet. Eftersom det var med dess hjälp som sökmotorer lärde sig att anständigt och självständigt (utan rekvisita från manuellt redigerade resultat) rangordna svar på kortfrekventa frågor som utgör en betydande del av sökflödet.

Den enklaste idén med global (dvs statisk) länkpopularitetsredovisning är att räkna antalet länkar som pekar till sidor. Ungefär vad som inom traditionell biblioteksvetenskap kallas ett citeringsindex. Detta kriterium användes i sökmotorer redan före 1998. Men det är lätt att utsättas för lindning, dessutom tar det inte hänsyn till vikten av själva källorna.

Algoritmen som Brin och Page föreslog 1998 kan betraktas som en naturlig utveckling av denna idé. PageRank- en iterativ algoritm som liknar den som används i problemet med att fastställa vinnaren i en schweizisk schackturnering. I kombination med att söka efter vokabulären för länkar som pekar till en sida (en gammal, mycket produktiv idé som användes i hypertextsökmotorer på 80-talet) möjliggjorde denna åtgärd en dramatisk förbättring av sökkvaliteten.

Lite tidigare än PageRank, har en lokal (d.v.s. dynamisk, frågebaserad) föreslagits - HITS(Kleinberg), som inte används i praktiken främst på grund av beräkningskostnaden. Ungefär av samma anledning som lokala (d.v.s. dynamiska) metoder som verkar på ord.

Båda algoritmerna, deras formler, konvergensvillkor beskrivs i detalj, inklusive i den ryskspråkiga litteraturen. Jag kommer bara att notera att beräkningen av statisk popularitet inte är en uppgift i sig, den används för många hjälpändamål: bestämma ordningen för att kringgå dokument, rangordna sökningen efter länktext, etc. Popularitetsberäkningsformler förbättras ständigt, de inkluderar ytterligare faktorer - tematisk närhet till dokument (till exempel en populär sökmotor www.teoma.com), deras struktur, etc., vilket gör det möjligt att minska påverkan av nepotism. Ett intressant separat ämne är effektiv implementering av lämpliga datastrukturer (Bharat).

Indexkvalitet

Även om storleken på databasen på Internet vid en ytlig blick inte verkar vara en kritisk faktor, är den inte det. Inte konstigt att ökningen i närvaro av sådana maskiner som Google och Snabb, korrelerar väl exakt med tillväxten av deras baser. De främsta skälen: "sällsynta" förfrågningar, det vill säga de för vilka det finns mindre än 100 dokument, uppgår till cirka 30% av den totala massan av sökningar - en mycket betydande del. Detta faktum gör databasens storlek till en av de mest kritiska systemparametrarna.

Men tillväxten av basen, förutom tekniska problem med diskar och servrar, begränsas också av logiska: behovet av att reagera adekvat på skräp, upprepningar etc. Jag kan inte låta bli att beskriva den geniala algoritm som används av moderna sökmotorer för att utesluta "mycket liknande dokument".

Ursprunget för kopior av dokument på Internet kan vara olika. Samma dokument på samma server kan skilja sig åt av tekniska skäl: det kan presenteras i olika kodningar och format, det kan innehålla variabla inlägg - reklam eller aktuellt datum.

En bred klass av dokument på webben kopieras och redigeras aktivt - nyhetsflöden, dokumentation och juridiska dokument, butiksprislistor, svar på vanliga frågor och så vidare. Populära typer av förändringar: korrekturläsning, omorganisation, revidering, sammanfattning, avslöjande av ämne, etc. Slutligen kan publikationer kopieras i strid med upphovsrätten och med uppsåt modifieras för att göra dem svårare att upptäcka.

Dessutom genererar sökmotorers indexering av sidor genererade från databaser en annan vanlig klass av utåt lite olika dokument: profiler, forum, produktsidor i elektroniska butiker.

Uppenbarligen finns det inga speciella problem med fullständiga upprepningar, det räcker att lagra kontrollsumman för texten i indexet och ignorera alla andra texter med samma kontrollsumma. Den här metoden fungerar dock inte för att upptäcka ens lätt modifierade dokument.

För att lösa detta problem, Udi Manber (författare berömt program ungefärlig direktsökning agrep) 1994 föreslog idén, och Andrey Broder 1997 kom på namnet och förde tankarna till bältrosalgoritmen (från ordet bältros- "plattor, vågar"). Här är en grov beskrivning av det.

För varje tio ord i texten beräknas en kontrollsumma (shingel). Dekalogen överlappar, överlappar, så att ingen saknas. Och sedan, från hela uppsättningen av kontrollsummor (uppenbarligen, det finns lika många av dem som det finns ord i dokumentet minus 9), väljs bara de som är delbara med, säg, 25. Eftersom värdena för kontrollsummorna är jämnt fördelade, är urvalskriteriet inte på något sätt kopplat till textens särdrag. Det är tydligt att upprepningen av ens en deskriptor är ett betydande tecken på duplicering, men om det finns många av dem, säg mer än hälften, så med en viss (det är lätt att uppskatta sannolikheten) säkerhet: en kopia har blivit hittades! En matchande shingel i provet motsvarar ju ungefär 25 matchande tio ord in Full text!

Självklart kan du på detta sätt bestämma procentandelen av textöverlappning, identifiera alla dess källor, etc. Denna graciösa algoritm har förkroppsligat docenternas gamla dröm: från och med nu kan den smärtsamma frågan "från vem studenten kopierade denna terminsuppsats" anses vara löst! Det är lätt att uppskatta andelen plagiat i en artikel.

För att läsaren inte ska få intrycket att informationsinhämtning är en uteslutande västerländsk vetenskap, kommer jag att nämna en alternativ algoritm för att bestämma nästan dubbletter, uppfunnen och implementerad i Yandex (Ilyinsky). Den drar fördel av det faktum att de flesta sökmotorer redan har ett inverterat filindex (eller inverterat index), och detta faktum är användbart för att hitta nästan dubbletter.

Priset på en procent

Arkitektoniskt moderna söksystem är komplexa flerdatorkomplex. Från ett visst ögonblick, när systemet växer, faller huvudbelastningen inte på roboten alls, utan på sökningen. Faktum är att inom en sekund kommer tiotals och hundratals förfrågningar.

För att komma till rätta med detta problem är indexet uppdelat i delar och fördelat på tiotals, hundratals och till och med tusentals datorer. Datorerna själva sedan 1997 (sökmotor Inktomi) är vanliga 32-bitarsmaskiner ( linux, Solaris, FreeBSD, Vinna32 ) med motsvarande pris- och prestandabegränsningar. Ett undantag till allmän regel endast AltaVista, som använde relativt "stora" 64-bitars datorer från början Alfa.

Webbsökmotorer (och alla större sökmotorer i allmänhet) kan påskynda sitt arbete med separations- och beskärningstekniker.

Den första tekniken består i att dela upp indexet i uppenbart mer relevanta och mindre relevanta delar. Sökningen utförs först i den första delen, och sedan, om ingenting eller lite hittas, vänder sökmotorn till den andra delen av indexet. Beskär (från engelska. beskärning- "klippning, minskning") är att dynamiskt stoppa behandlingen av begäran efter ackumulering av en tillräcklig mängd relevant information. Det finns också statisk beskärning, när, på grundval av vissa antaganden, indexet reduceras på grund av sådana dokument som säkert aldrig kommer att hittas.

Ett separat problem är att organisera oavbruten drift av multidatorkomplex, sömlös uppdatering av indexet, motstånd mot fel och förseningar i svaren från enskilda komponenter. För kommunikation mellan sökservrar och servrar som samlar in svar och bildar utgivningssidan utvecklas speciella protokoll.

Observera att en procent av prestandan (säg ett dåligt skrivet uttalande i någon slinga) för ett tiotusen datorsystem kostar ungefär hundra datorer. Därför kan man föreställa sig hur koden som ansvarar för sökning och rangordning av resultat rensas upp, hur användningen av alla möjliga resurser optimeras: varje byte av minne, varje diskåtkomst.

Att tänka igenom hela komplexets arkitektur från första början är avgörande, eftersom alla förändringar - till exempel att lägga till en ovanlig rankningsfaktor eller en komplex datakälla - blir extremt smärtsam och komplex procedur. Självklart har system som startar senare en fördel i denna situation. Men användarnas tröghet är mycket hög: till exempel tar det två till fyra år för den bildade mångmiljonpubliken att, om än långsamt, byta till en ovanlig sökmotor, även om den har obestridliga fördelar. I en mycket konkurrensutsatt miljö är detta ibland inte genomförbart.

Syntaktisk klustring av webben
Andrei Z. Broder, Steven C. Glassman, Mark S. Manasse
WWW6, 1997

Approximationen av en matris av en annan av lägre rang
Eckart, G. Young Psychometrica, 1936

Beskrivning och prestandaanalys av signaturfilmetoder
Faloutsos, S. Christodoulakis
ACM TOIS, 1987

Informationsinhämtning med hjälp av en singulär värdenedbrytningsmodell av latent semantisk struktur
G.W. Furnas, S. Deerwester, S.T. Dumais, T.K. Landauer, R.A. Harshman, L.A. Streeter och K.E. Lochbaum
ACM SIGIR, 1988

Exempel på PAT tillämpad på Oxford English Dictionary
Gonnet G.
University of Waterloo, 1987

Thesaurus-metoden för informationssökning
T. Joyce och R.M. Needham
Amerikansk dokumentation, 1958

En effektiv metod för att upptäcka dubbletter av webbdokument med hjälp av inverterat index
S. Ilyinsky, M. Kuzmin, A. Melkov, I. Segalovich
WWW2002, 2002

Suffix Arrays: En ny metod för strängsökning online
U. Manber, G. Myers
Första ACM-SIAM-symposiet om diskreta algoritmer, 1990

Hitta liknande filer i ett stort filsystem
U. Manber
USENIX-konferens, 1994

Om relevans, probabilistisk indexering och informationssökning
MIG. Maron och J.L. Kuhns
Journal of the ACM, 1960

Relevansviktning av söktermer
S.E. Robertson och K. Sparck Jones
JASIS, 1976

Algoritmer i C++
Robert Sedgewick
Addison-Wesley, 1992

En statistisk tolkning av termspecificitet och dess tillämpning vid hämtning
K. Sparck Jones
Journal of Documentation, 1972

Naturligt språk informationssökning
Tomek Strzalkowski (red.)
Kluwer Academic Publishers, 1999

Symfoni eller ordbok-index till de heliga skrifterna i Gamla och Nya testamentet
Sammanställt av M.A. Bondarev, M.S. Kosyan, S.Yu. Kosyan
Moscow Patriarchy Publishing House, 1995

Ordlista

Assessor (assessor, expert) - en specialist inom ämnesområdet som gör en slutsats om relevansen av dokumentet som hittas av sökmotorn.

boolesk modell (booleskt, boolean, boolean, binary) är en sökmodell baserad på operationerna för skärning, förening och subtraktion av mängder.

vektor mönster- en informationssökningsmodell som betraktar dokument och frågor som vektorer i ordrymden, och relevans som avståndet mellan dem.

Probabilistisk modell- en modell för informationsinhämtning som betraktar relevans som sannolikheten för att ett givet dokument matchar en fråga baserat på sannolikheterna för att matcha orden i ett givet dokument till ett idealiskt svar.

Kriterier utanför texten (av-sida, off-page) - kriterier för att rangordna dokument i sökmotorer, med hänsyn till faktorer som inte finns i själva dokumentets text och som inte kan extraheras därifrån på något sätt.

Ingångssidor (dörrar, korridorer) - sidor skapade för att på konstgjord väg öka rankningen i sökmotorer (sökmotorskräp). När de träffar dem omdirigeras användaren till målsidan.

Disambiguation (taggning, delavTaldisambiguation, taggning) - val av en av flera homonymer med hjälp av sammanhanget; på engelska reduceras ofta till den automatiska tilldelningen av den grammatiska kategorin "ordsform".

dubbletter (dubbletter) - olika dokument med identiskt, från användarens synvinkel, innehåll; ungefärliga dubbletter (näradubbletter, nästan dubbletter), till skillnad från exakta dubbletter, innehåller mindre skillnader.

Illusion av friskhet- Effekten av uppenbar färskhet som uppnås av sökmotorer på Internet på grund av den mer regelbundna förbikopplingen av de dokument som oftare hittas av användare.

Inverterad fil (omvändfil, invers fil, postningsindex, postningslista) är ett sökmotorindex som listar orden i en samling dokument, och för varje ord listas alla platser där det förekommer.

Index (index, pekare) - se Indexering.

Citationsindex (Citatindex) - antalet omnämnanden (citeringar) av en vetenskaplig artikel inom traditionell bibliografisk vetenskap beräknas över en tidsperiod, till exempel per år.

Indexering (indexering, indexering) - processen att kompilera eller tilldela en pekare (index) - en tjänstedatastruktur som är nödvändig för efterföljande sökning.

Informationsinhämtning (informationHämtningIR) - söka efter ostrukturerad information, vars representationsenhet är ett dokument i godtyckliga format. Ämnet för sökningen är användarens informationsbehov, informellt uttryckt i sökfrågan. Både sökkriteriet och dess resultat är icke-deterministiska. I dessa funktioner skiljer sig informationshämtning från "datahämtning", som arbetar på en uppsättning av formellt specificerade predikat, behandlar strukturerad information och vars resultat alltid bestäms. Informationshämtningsteori studerar alla komponenter i sökprocessen, nämligen textförbehandling (indexering), frågebearbetning och exekvering, rangordning, användargränssnitt och feedback.

cloaking (cloaking) - en teknik för sökspam, som består i att författarna känner igen dokument från en robot (indexeringsagent) av en sökmotor och genererar speciellt innehåll för den, som är fundamentalt annorlunda än innehållet som utfärdas till användaren.

Term Kontrast- se Särskiljande kraft.

Latent semantisk indexering- en patenterad sökalgoritm av betydelse, identisk med faktoranalys. Den är baserad på singularvärdesuppdelningen av ord-till-dokument-anslutningsmatrisen.

Lematisering (lemmatisering, normalisering) - föra formen av ett ord till en ordboksform, det vill säga ett lemma.

Sökmotorboost- se sökmotors spam.

Nepotism- en typ av sökmotorskräppost, installation av ömsesidiga länkar av dokumentförfattarna i det enda syftet att öka deras rankning i sökresultaten.

Omvänd förekomst i dokument (omvänddokumenterafrekvens, IDF, omvänd frekvens i dokument, omvänd dokumentfrekvens) - en indikator på sökvärdet för ett ord (dess särskiljande kraft); De säger "omvänd" för när man beräknar denna indikator är nämnaren för bråket vanligtvis antalet dokument som innehåller det givna ordet.

Respons- användarens svar på sökresultatet, deras bedömningar om relevansen av de hittade dokumenten, registrerade av sökmotorn och används till exempel för iterativ modifiering av frågan. Detta bör särskiljas från pseudo-feedback, en frågemodifieringsteknik där de första få dokument som hittas automatiskt anses vara relevanta.

homonymi- se Polysemi.

Grunden- del av ett ord som är gemensamt för en uppsättning av dess avlednings- och böjningsformer (oftast).

Sök efter mening- en algoritm för informationshämtning som kan hitta dokument som inte innehåller frågeord.

Sök efter liknande dokument (liknandedokumenteraSök) - uppgiften att hämta information, där själva dokumentet fungerar som en fråga och det är nödvändigt att hitta dokument som liknar det givna så mycket som möjligt.

Söksystem (Sökmotor, SE, informationshämtningssystem, IPS, sökmotor, sökmotor, "sökmotor", "sökmotor") - ett program utformat för att söka information, vanligtvis textdokument.

Sökordning (fråga, fråga) - vanligtvis en textrad.

Polysemi (polysemi, tvetydighet) - närvaron av flera betydelser för samma ord.

fullständighet (återkallelse, täckning) - andelen relevant material som finns i sökmotorns svar i förhållande till allt relevant material i samlingen.

Nästan dubbletter (nära-dubbletter, ungefärliga dubbletter) - se Dubletter.

beskärning (beskärning) - skära av uppenbart irrelevanta handlingar under sökningen för att påskynda verkställandet av begäran.

Direktsökning- sök direkt i dokumenttexten, utan preliminär bearbetning (utan indexering).

Pseudo-feedback- se Feedback.

Ordets särskiljande kraft (terminspecificitet, termindiskrimineringkraft, kontrast, distinkt kraft) - graden av bredd eller smalhet av ordet. För breda termer i sökningen ger för mycket information, medan en betydande del av den är värdelös. Alltför snäva termer hjälper till att hitta för få dokument, även om de är mer exakta.

Vanligt uttryck (regelbundenuttryck, mönster, "mall", mer sällan "stencil", "mask") - ett sätt att spela in ett sökrecept som låter dig bestämma önskemål för ordet du letar efter, dess möjliga stavningar, fel, etc. I vid bemärkelse, ett språk som låter dig ställa frågor med obegränsad komplexitet.

Relevans (relevans, relevans) - Dokumentets överensstämmelse med begäran.

Signatur (signatur, signatur) - en uppsättning hashvärden för ord i något textblock. När du söker efter signaturmetoden alla signaturer för alla block i samlingen genomsöks sekventiellt på jakt efter matchningar med hash-värdena för frågeorden.

böjning (inflation) - bildandet av en form av en viss grammatisk betydelse, vanligtvis obligatorisk i ett givet grammatiskt sammanhang, tillhörande en fast uppsättning former (paradigm) som är karakteristiska för ord av en given typ. Till skillnad från ordbildning leder det aldrig till ett typbyte och genererar en förutsägbar betydelse. Namnböjningen kallas för deklination. (böjning) , och verb - konjugation (konjugation) .

ordbildning (härledning) - bildandet av ett ord eller stam från ett annat ord eller stam.

begriplig- se Särskiljande kraft.

Sökmotors spam (spam, spamdexing, fusksökmotorer) - ett försök att påverka resultatet av informationshämtning av författarna till dokument.

Statisk popularitet- centimeter. PageRank.

härrörande- processen att extrahera grunden till ordet.

Stoppa ord (sluta-ord) - de konjunktioner, prepositioner och andra vanliga ord som denna sökmotor har uteslutit från indexerings- och sökprocessen för att förbättra dess prestanda och/eller söknoggrannhet.

Suffixträd, suffixarrayer (ändelseträd, ändelsematriser, KLAPPA-matriser) är ett index baserat på representationen av alla betydande textsuffix i en datastruktur som kallas "bor" (försök) . ändelse i det här indexet anropas vilken "delsträng" som helst, som börjar vid någon position i texten (texten behandlas som en sammanhängande rad) och fortsätter till slutet. I verkliga applikationer är längden på suffix begränsad, och endast signifikanta positioner indexeras - till exempel början av ord. Detta index låter dig utföra mer komplexa frågor än ett index som bygger på inverterade filer.

Tokenisering (tokenisering, lexikaliskanalys, grafematisk analys, lexikal analys) - urval av ord, siffror och andra symboler i texten, inklusive till exempel att hitta gränserna för meningar.

Noggrannhet (precision) - andel relevant material i sökmotorns svar.

Hashvärde (hash-värde) - betydelse hashfunktioner (hash-fungera) , som omvandlar data av godtycklig längd (vanligtvis en sträng) till ett nummer av en fast ordning.

Frekvens (ord) i dokument (dokumenterafrekvens, förekomst i dokument, dokumentfrekvens) - antalet dokument i samlingen som innehåller det givna ordet.

Termins frekvens (terminfrekvens.TF) - hur ofta ordet används i dokumentet.

singel (singel) - hashvärde för en kontinuerlig sekvens av textord med fast längd.

PageRank- en algoritm för att beräkna den statiska (globala) populariteten för en sida på Internet, uppkallad efter en av författarna - Lawrence Page. Motsvarar sannolikheten för att användaren träffar sidan i random walk-modellen.

TF*IDF- ett numeriskt mått på överensstämmelsen mellan ett ord och ett dokument i en vektormodell; ju mer än relativt oftare ordet hittades i dokumentet och relativt mer sällan- i samlingen.

Vi har släppt en ny bok, "Social Media Content Marketing: How to get into the head of subscribers and make them fall in love with your brand."

Internet är bara en jävla stor sak. Och den har allt. Snacka med vänner? Varsågod - Facebook. Fotoalbum - i Instagram. Köpa en stuga? Jag har redan Jolly Farmer. Har du någonsin använt ett uppslagsverk? Varför, för det finns de som vet allt. Och Idag skulle jag vilja hylla dessa underbara tjänster. Mer specifikt, för att berätta om hur Yandex-sökning fungerar.

Kommer du ihåg Hermione från Harry Potter-sagan? Varför tror du att hon var en sådan superkunnig vetande? Det stämmer, för jag gick hela tiden någonstans för att läsa om alla möjliga trolldrycker, studerade olika trollformler och bad lärare om alla obegripliga ögonblick. I allmänhet gjorde jag allt för att utöka min kunskapsbas. Yandex sökmotor fungerar på samma sätt. Redan innan du ställde en fråga till honom visste han redan något om ditt ämne och hade det i sin spargris.

Hur Yandex sökbas bildas

Spindlar på World Wide Web

Kan flera biljoner webbadresser. Och varje dag studerar han ett par miljarder av dem. Detta görs av speciella spindelrobotar, sökrobotar. De besöker sidan, analyserar innehållet, gör en kopia och skickar den till servern. Och sedan följer de länkar till andra sidor. Det är så sökmotorn lär känna sajten. Nästa steg är indexering.

Om du gör enkla matematiska beräkningar kan du ta reda på att Yandex-spindlar kommer att kringgå alla kända sidor om cirka 2 år. Men detta kommer inte att vara sant, eftersom antalet webbadresser ständigt ökar
=> arbetet med att skapa en sökbas är oändligt.

Indexering

Webbplatsdefinition är en process lägger till allt viktigt sidinformation till sökmotordatabasen. Det vill säga språket bestäms, data om enskilda ord bildas och alla länkar som går ut till andra sidor dras ut. Dessutom har Yandex ett specialverktyg som heter Yandex-loggar. Den studerar hur användaren beter sig i sökresultaten: vad han klickar på och vad han inte klickar på. Baserat på alla mottagna parametrar ställs sökindexet för webbplatsen in.

Yandex-loggar används ofta inte bara för indexering utan också för rankning.

Bygga en sökbas

Sökindex som erhållits under föregående steg skickas till sökbasen. På Yandex Search fungerar den på mjukvaruplattformen mapreduce. . Här förvandlas data till filer och "blir vid liv".

Den totala mängden YT-data är cirka 50 petabyte = 51 200 TB.

Sökdatabasen har en veckouppdatering - en uppdatering. Detta är ögonblicket när Yandex-sökroboten, efter att ha laddat ner ett visst antal filer och beräknat alla nödvändiga egenskaper för dem, beslutar att denna information kan läggas till i sökningen.

Enligt statistiken från Igor Ashmanov, en specialist på sökmotorer på Internet, är fullständigheten i sökbasen för Yandex (röd på diagrammet) flera gånger högre än sin närmaste konkurrent Google (svart).

Än så länge är indexet tidskrävande och fortsätter på ett komplext sätt för en stor mängd data på en gång. Därför har Yandex en speciell snabb loop som kan lägga till och leverera separata, brådskande filer till användaren. Jo, till exempel nyheter i realtid.

Hur fungerar Yandex-sökning?

Varje begäran i Yandex sökmotor går enligt följande schema.

Balanserare är maskiner som aggregerar SERP:er.
SERP-strukturen bildas från resultaten av tre genomsnittliga metasökningar. Låt mig förklara vad detta betyder. I utgången ser du resultatet av frågan efter sidor, bilder och videor. Detta beror på att din fråga går igenom tre olika index. Och längs med dem går han ner till själva djupet av sökbasen, uppdelad i flera tusen bitar. Denna process kallas sökklustring.

Sökklustrets arbete består av fungerar mer än en miljon exemplar av olika program. De utför alla möjliga uppgifter, de har olika systemkrav och de behöver alla "bo" någonstans. Därför kräver sökklustring också en enorm mängd datorjärnhosting.

För att lagra och överföra alla program och data till dem använder Yandex en intern torrent-spårare. Antalet distributioner på den är större än på världens största piratspårare The Pirate Bay.

Tillbaka till emissionsresultat.
De mest relevanta kommer in i sökresultaten, relevant sökfrågedokument . Därefter kommer rankningen - ordningen av sökresultaten. Det passerar med hjälp av en speciell formel. För att säkerställa att ordningen på resultaten är av hög kvalitet, uppdaterad och så relevant som möjligt, har Yandex-utvecklare kommit på en väldigt cool sak.

En maskininlärningsmetod som bygger Yandex rankningsformel. Han uppgraderar ständigt detta schema: han bygger kombinationer, lägger till och tar bort faktorer, sätter odds. En annan viktig egenskap hos denna metod är möjligheten att anpassa rankningsformeln för frågekategorier med smal profil. Det vill säga för individen förfrågningar, till exempel om filmer eller dator spel, kan du förbättra kvaliteten på sökningen. Samtidigt kommer inte rankningen för resten av frågeklasserna att försämras.

Den första Yandex-rankningsformeln var cirka 10 byte. För tillfället - cirka 100 megabyte.

Sökmotorns uppgift är inte bara att hitta nålar i höskullen, utan också att bestämma den vassaste av dem. Och de flesta det fantastiska är hur Yandex-sökning fungerar. Resultatet ges i bråkdelar av sekunder. De första tio mest relevanta frågorna är vanligtvis alla användarnas behov. Om vi ​​i dessa förfrågningar inte hittar det vi letade efter, så försöker vi en annan begära eller ändra sökmotor. Men förr eller senare: "Det finns allt!"

Skärmdumpar tagna från en föreläsning av Petr Popov.

ikon av Arthur Shlain

På Internet, på olika webbplatser, erbjuds användaren en stor mängd olika information. Sökmotorer har skapats för att få den nödvändiga informationen, söka efter svar på frågor. När de hör den här frasen tänker många på Google, Yandex. Det finns dock många fler sökmotorer på Internet.

Vad är en sökmotor

En sökmotor anses vara programvara som består av en databas med dokument. Användare förses med ett speciellt gränssnitt som gör att de kan ange nödvändiga frågor och få länkar med relevant information. De första positionerna i sökresultaten är alltid dokument som är mest relevanta för vad en viss person letar efter.

Sökresultaten, som genereras i enlighet med den angivna frågan, innehåller vanligtvis olika typer av resultat. Det kan innehålla webbsidor, video- och ljudfiler, bilder, pdf-filer, specifika produkter (om sökningen görs i en webbutik).

Sökmotorklassificering

Befintliga sökmotorer klassificeras i flera typer. Först och främst är det värt att nämna traditionella sökmotorer. För sådana sökmotorer är driftprinciperna fokuserade på att hitta information på ett stort antal befintliga webbplatser. Sökmotorer är fortfarande tillgängliga på separata internetresurser:

  • i nätbutiker (för att söka efter rätt produkter);
  • på forum och bloggar (för att söka efter meddelanden);
  • på informationssajter (för att söka efter artiklar om önskat ämne eller nyheter) etc.

Sökmotorer är också uppdelade utifrån geografiska egenskaper. I denna klassificering finns det tre grupper av sökmotorer:

  1. Global. Sökandet genomförs över hela världen. Ledaren i denna grupp är Googles sökmotor. Tidigare fanns det sådana sökmotorer som Inktomi, AltaVista, etc.
  2. Regional. Sökningen utförs efter land eller grupp av länder, som förenas av ett språk. Regionala sökmotorer är utbredda. Deras exempel i Ryssland är Yandex, Rambler.
  3. Lokal. Sökningen genomförs i en specifik stad. Ett exempel på en sådan sökmotor är Tomsk.ru.

Delar av sökmotorer

I vilken sökmotor som helst kan 3 beståndsdelar urskiljas som bestämmer sökmotorns principer:

  • robot (indexerare, spindel, crawler);
  • databas;
  • begäranhanterare.

En robot är ett speciellt program vars syfte är att bilda en databas. Databasen lagrar och sorterar all insamlad information. Begäranshanteraren, även kallad klienten, arbetar med användarförfrågningar. Den har tillgång till databasen. Klienten finns inte alltid på samma dator. Begäran hanteraren kan distribueras över flera fysiskt orelaterade elektroniska datorer.

Alla befintliga system fungerar på samma princip. Tänk till exempel på hur traditionella sökmotorer fungerar för Internet. Robotens funktion liknar handlingarna vanlig användare. Detta program förbigår med jämna mellanrum alla webbplatser, lägger till nya sidor och Internetresurser till databasen. Denna process kallas indexering.

När en användare på Internet anger en specifik fråga i sökrutan börjar klienten att fungera. Programmet kommer åt den befintliga databasen och genererar resultat baserat på nyckelord. Sökmotorn ger länkar till användaren i en viss sekvens. De sorteras allteftersom de matchar frågan, det vill säga relevans tas med i beräkningen.

Varje sökmotor har sitt eget sätt att bestämma relevans. Om användaren skickar en specifik begäran till olika system får han inte exakt samma resultat. Algoritmen för att bestämma relevans hålls hemlig.

Läs mer om relevans

Enkelt uttryckt är relevans överensstämmelsen mellan ett ord eller en kombination av ord som angetts i sökningen till specifika länkar i sökresultaten. Flera nyanser påverkar placeringen av dokument i listan:

  1. Förekomsten av orden som angetts i sökningen i dokument. Denna nyans är uppenbar. Om dokumentet innehåller ord från sökfrågan som angetts av användaren, betyder det att detta dokument matchar sökvillkoren.
  2. Frekvens av förekomst av ord. Ju oftare nyckelord används i ett dokument, desto högre blir det i SERP-listan. Dock inte allt så enkelt. För mycket användning av ord kan vara ett tecken på lågkvalitativt innehåll för sökmotorn.

Algoritmen för att bestämma relevans är ganska komplicerad. För några år sedan kunde länkar som innehåller de nödvändiga sökorden, men som inte motsvarar dem i innehåll, komma in i sökresultaten. För närvarande är principerna för funktion av sökmotorer komplicerade. Nu kan robotar analysera hela texten. Sökmotorer tar hänsyn till ett stort antal olika faktorer. Tack vare detta bildas frågan från relevanta länkar av högsta kvalitet.

Hur man formulerar förfrågningar korrekt

Även i skolan fick vi lära oss att ställa de rätta frågorna. Det beror på vilken typ av svar vi kommer att få. Denna regel behöver dock inte följas när du använder sökmotorer. För moderna sökmotorer spelar det ingen roll i vilket nummer eller fall en person skriver sin begäran. I båda fallen kommer resultatet att innehålla samma resultat.

Sökmotorer behöver inte en tydlig formulering av frågan. Användaren behöver bara välja rätt sökord. Tänk på ett exempel. Vi måste hitta texten till låten "A Day Without You", som framförs av den berömda kvinnliga popgruppen "Via-Gra". När du kontaktar en sökmotor är det inte nödvändigt att namnge gruppen, ange att detta är en låt. Det räcker med att skriva "en dag utan dig sms." Behåll skiftläge, skiljetecken krävs inte. Dessa nyanser beaktas inte av sökmotorer.

Google är den ledande sökmotorn i världen. Det grundades 1998. Systemet är mycket populärt, vilket bekräftas av analytisk information. Cirka 70 % av förfrågningarna som kommer till Internet hanteras av Google. Sökmotordatabasen är enorm. Mer än 60 biljoner olika dokument har indexerats. Google lockar användare med ett enkelt gränssnitt. Huvudsidan har en logotyp och ett sökfält. Den här funktionen låter oss kalla Google en av de mest minimalistiska sökmotorerna.

På andra plats i rankningen av populära sökmotorer ligger Bing. Den dök upp samma år som Google. Skaparen av denna sökmotor är det välkända internationella företaget Microsoft. Lägre positioner i betyget upptas av Baidu, Yahoo!, AOL, Excite, Ask.

Vad är populärt i Ryssland

Yandex är den mest populära sökmotorn i Ryssland. Denna tjänst dök upp 1997. Först var det ryska företaget CompTek International engagerat i det. Lite senare dök Yandex-företaget upp, som fortsatte att engagera sig i en sökmotor. Sökmotorn har vunnit enorm popularitet under åren av dess existens. Det är möjligt att söka på flera språk - ryska, vitryska, ukrainska, tatariska, kazakiska, engelska, tyska, franska, turkiska.

Från statistiska data är det känt att Yandex är av intresse för mer än 50% av Runet-användarna. Över 40 % av människorna föredrar Google. Cirka 3 % av användarna valde Mail.ru, en ryskspråkig internetportal.

Skyddade sökmotorer

De vanliga sökmotorerna som är bekanta för oss är inte precis lämpliga för barn. Unga internetanvändare kan av misstag hitta material för vuxna, information som kan skada psyket. Av denna anledning har särskilda säkra sökmotorer skapats. Deras databaser lagrar endast säkert innehåll för barn.

Ett exempel på en sådan sökmotor är Sputnik.Children. Denna tjänst är ganska ung. Det skapades av Rostelecom 2014. Sökmotorns huvudsida är ljus och intressant designad. Den presenterar ett brett utbud av inhemska och utländska tecknade serier för barn i olika åldrar. På huvudsidan finns det dessutom utbildningslänkar relaterade till flera rubriker - "Sport", "Jag vill veta allt", "Gör det själv", "Spel", "Teknik", "Skola", "Natur".

Ett annat exempel på en säker barnsökmotor är Agakids.ru. Detta är en absolut säker resurs. Hur fungerar en sökmotor? Roboten är konfigurerad på ett sådant sätt att den bara kringgår de webbplatser som är relaterade till barns ämnen eller är användbara för föräldrar. Sökmotorns databas innehåller resurser med tecknade serier, böcker, utbildningslitteratur, spel, målarböcker. Föräldrar som använder Agakids.ru kan själva hitta webbplatser om barns uppfostran och hälsa.

Sammanfattningsvis är det värt att notera att sökmotorer är komplexa system. De möter många problem - problemen med spam, att bestämma dokumentens relevans, sålla bort innehåll av låg kvalitet, analysera dokument som inte innehåller textinformation. Av denna anledning introducerar utvecklare nya tillvägagångssätt och algoritmer som är en affärshemlighet i arbetet med sökmotorer på Internet.

Försäljningsgenerator

Lästid: 13 minuter

Vi skickar materialet till dig:

Från den här artikeln kommer du att lära dig:

  • Hur fungerade de första sökmotorerna?
  • Hur moderna sökmotorer fungerar
  • På vilka principer bygger en sökmotors arbete?
  • Vilka formler använder sökmotorer i sitt arbete
  • Hur sajter rankas
  • Vilka är principerna för Yandex sökmotor

Innan du ägnar dig åt SEO-promotion av sajten är det viktigt att studera principerna för hur sökmotorer fungerar för att uppnå önskade resultat i slutet. Denna kunskap kommer att vara användbar för att utveckla en individuell strategi för att optimera en internetresurs för vissa sökord och kommer att hjälpa till att få den till toppen av sökresultaten.

Vilka principer ligger till grund för de första sökmotorernas arbete


I början av Internet var det bara ett litet antal användare som kunde ansluta till det. Mängden tillgänglig information var också begränsad. På den tiden användes Internet främst av anställda vid forskningsorganisationer. Att söka information på webben var inte lika populärt som det är idag.

Det första försöket att organisera åtkomst till elektronisk data via Internet gjordes av Yahoo!-sökmotorn, som dök upp 1994. Företagets utvecklare har skapat en öppen katalog med webbplatser, länkar till vilka har grupperats efter relevanta ämnen. Med ökningen av antalet resurser i databasen blev det nödvändigt att lägga till ett sökalternativ i katalogen. Det var ännu inte en sökmotor i den form som vi känner till, eftersom den sökte efter information på den interna databasen med webbplatser och inte på alla befintliga internetresurser.

Sådana länkkataloger brukade vara mycket populära förr, men idag har de tappat sin relevans, eftersom antalet sajter ständigt ökar. Till exempel innehåller den största av de moderna katalogerna på Internet, DMOZ (ett annat namn är Open Directory Project), cirka 5 miljoner webbplatser, medan Googles sökmotordatabas innehåller mer än 8 miljarder länkar.

1994 dök den första riktiga WebCrawler-sökmotorn upp.


1995 skapades ytterligare två sökmotorer: Lycos och AltaVista. Den senaste sökmotorn har länge intagit en ledande position inom området för informationssökning online.

1997 utvecklade Stanford University-studenterna Sergey Brin och Larry Page Googles sökmotor, som har blivit den populäraste sökmotorn i världen.

Även 1997 började Yandex-sökmotorn, som är populär i Runet, att arbeta.

Hur fungerar sökmotorer idag?

Om du inte är programmerare och ditt yrke inte har något med IT att göra, varför behöver du förstå hur sökmotorer fungerar? Faktum är att så kallad organisk trafik kommer till företagets webbplats via sökmotorer - det är användare som själva hittat din internetresurs med hjälp av nyckelord i Yandex eller Google. Organisk trafik är en välsmakande del av (målgrupps)kakan. Ju högre nivå, desto större omvandling och försäljning av webbplatsen.

För att användarna enkelt ska kunna hitta din internetresurs är det viktigt att fylla den med rätt innehåll. Sökmotorer, beroende på innehållets kvalitet, rangordnar sajter, vilket påverkar deras plats i sökresultaten. Det visar sig att genom att veta hur sökmotorer indexerar internetresurser kan du optimera deras innehåll och marknadsföra dem till TOPPEN.

Å andra sidan kan sökmotorer användas för att analysera användaråtgärder. Att studera vad de letar efter, vilken information, varor eller tjänster som är relevanta för dem nu. Om det enligt Yandex statistik är möjligt att bilda sig en bild av Runet-användares handlingar, då Googles data- Världsomspännande Internet.


Grundkonceptet som vilken sökmotor som helst arbetar med är ett sökindex – en viss datastruktur som återspeglar information om dokument och var sökorden finns i dem.

Funktionsprinciperna för många sökmotorer är mycket lika. Den största skillnaden ligger i tillvägagångssättet för webbplatsrankning (hur resurserna sorteras i sökresultat).


Varje dag letar ett stort antal användare efter olika information med hjälp av sökmotorer.

Populära sökfrågor är till exempel:

"Abstrakt att skriva":


"Köpa":


För att öka hastigheten på sökmotorn består sökarkitekturen av två element:

  • grundläggande sökning;
  • metasök.

Grundläggande sökning- ett program som söker inom sin del av indexet och ger användaren alla länkar som matchar sökfrågan.

Metasök- ett program som, vid bearbetning av en förfrågan, bestämmer användarens plats och ger ett färdigt sökresultat, om nyckelordet är populärt, men om det inte fanns några sådana förfrågningar tidigare, är den grundläggande sökningen kopplad till verket, som bearbetar länkarna i databasen med hjälp av maskininlärning och utfärdar en lista över dem till användaren.

Sökmotorn analyserar samtidigt användaren och själva sökfrågan enligt följande kriterier:

  • längd;
  • definition;
  • popularitet;
  • konkurrenskraft;
  • syntax;
  • geografi.

Det finns följande typer av förfrågningar:

  • navigering;
  • informativ;
  • transaktionell;
  • multimedia;
  • allmän;
  • officiell.

Efter att sökfrågan har analyserats av parametrar och klassificerats enligt en av de listade typerna, väljer sökmotorn rankningsfunktionen.


Sökmotorer avslöjar inte information om rankningen av sökfrågor, så exemplet i figuren ovan är bara SEO-specialisters antaganden.

Kunskap om typerna av förfrågningar är nödvändig för att välja en strategi för marknadsföring av webbplatser. Till exempel, om en användare anger en allmän fråga, kommer sökmotorn att ge honom länkar av olika slag (kommersiell, multimedia, information, etc.). Om du samtidigt marknadsför din kommersiella webbplats på en allmän begäran och vill föra den till topp tio av sökresultaten, kommer du med stor sannolikhet inte att komma in i TOPPEN, utan bara i antalet platser för kommersiella Internetresurser, bestäms av sökmotorernas rankningsformel. Det visar sig att det är mycket svårare att marknadsföra en webbplats till de första raderna i sökresultaten för allmänna sökfrågor än för andra typer.

Yandex sökmotor har använt maskininlärning sedan 2009. Matrixnät- en speciell algoritm som rangordnar webbplatser för vissa frågor.


Grundprincipen för denna algoritm är följande: bedömaravdelningen samlar in primär information för att utvärdera effektiviteten av rankningsformeln. Anställda på denna avdelning, på basis av en experimentell formel, utvärderar ett urval av Internetresurser enligt vissa parametrar:

1. Vital- företagets officiella internetresurs eller inte. Det kan vara en webbplats, en sida in socialt nätverk eller information om auktoritativa resurser.

2. Användbart(poäng 5) - en webbplats som ger allt nödvändig information genom sökfråga. Användaren anger till exempel "bannertyg" i sökrutan. För att algoritmen ska kunna utvärdera en resurs som användbar måste den innehålla följande information:

  • vad är bannertyg;
  • specifikationer;
  • Foto;
  • slag;
  • prislista;
  • Ytterligare information.

Exempel på en fråga som hamnar överst i sökresultaten:


3. Relevant+(poäng 4) - denna poäng indikerar att informationen på webbplatsen matchar sökfrågan.

4. Relevant-(poäng 3) - webbplatsen matchar inte helt sökfrågan. Till exempel, om frågan "Guardians of the galaxy shows" visar sökmotorn länkar till sidor om filmen, men utan ett spelschema eller med ett föråldrat schema.

5. Irrelevant(poäng 2) - webbplatsen svarar inte på sökfrågan. Till exempel: en användare letar efter information om ett vandrarhem, och sökmotorn ger honom en sida av en helt annan.

För att marknadsföra en webbplats för allmänna eller informativa sökfrågor måste du optimera dess innehåll på ett sådant sätt att sökmotorn tilldelar ett "användbart" betyg under rankningen.

Vad är principen för funktion för en sökmotor baserad på?


Sökmotorn tillåter traditionellt:

Sökmotorns principer bygger på samspelet mellan tre huvudelement. Först görs en sökning på användarinmatade nyckelord eller fraser, Sedan i den matematiska bildningsprocessen resultaten är grupperade efter länkar och webbplatser. Och slutligen, för att läsa information från utvalda internetresurser, används den sökrobot eller andra verktyg. De viktigaste sökrobotarna som för närvarande är populära:

  • sökrobot(ett annat namn är "crawler") - ett program som "går" på webben. Den besöker endast de webbplatser där den hittar åtminstone en minimal matchning med vad som anges i sökfrågan. Arbetet börjar med en lista över adresser från tillgängliga databaser eller ett index.
  • Index."Crawler" skickar all mottagen information till sökindexet. Den senare har alltså alltid uppdaterad information om de hittade webbplatserna och webbsidorna. Om uppdateringar laddas ner till en resurs eller sida uppdateras även denna information i indexet.
  • Sökmotor (server)är en speciell programvara vars huvudsakliga funktion är att analysera informationen som samlas in i sökindexet. Sökmotoralgoritmen fungerar enligt principen att endast stödja de slutliga sökresultaten för Internetresurser. Sökmotorn bestämmer själv hur sidor ska fördelas i sökresultaten.

Alla sökmotorer syftar till att ge användaren de mest relevanta och användbara webbplatserna som matchar sökfrågan. På fackspråk kallas detta för "svarsrelevans". Till exempel, för marknadsföringen av en onlinebutik, är överensstämmelsen mellan innehållet som publiceras på den och användarnas behov av stor betydelse. Webbplatsoptimering kommer att öka sin position i sökresultaten.

Tänk på de viktigaste egenskaperna hos sökmotorer på Internet och principerna för deras arbete:

  • fullständighet- en nyckelegenskap för en sökmotor. Den beräknas som förhållandet mellan antalet valda dokument på användarens begäran och det totala antalet dokument på webben som matchar sökfrågan. Till exempel finns det 200 sidor på Internet där frasen "hur man väljer ett kylskåp" används, sökmotorn returnerade endast 40 för den här frågan, därför är sökningens fullständighet 0,2. Ju högre fullständighetspoäng, desto mer sannolikt kommer användaren att hitta det han letade efter (förutsatt att denna information är tillgänglig på webben).
  • Noggrannhet- den andra, men inte mindre viktiga egenskapen hos sökmotorn. Visar överensstämmelsen mellan hittade dokument och användarens sökfråga. Låt oss säga att i vårt exempel finns det 200 sidor för frågan "hur man väljer ett kylskåp", 80 av dem innehåller frasen "hur man väljer ett kylskåp", och resten har bara separata ord (till exempel "hur man placerar ergonomiskt" ett köksset och välj en plats för ett kylskåp" ). I det här fallet kommer söknoggrannheten att vara lika med: 80 / 200 = 0,4. Ju högre noggrannhet sökningen är, desto snabbare kommer användaren att hitta det han behöver, och desto mindre olika "spam" kommer han att stöta på på vägen.
  • Relevans- En annan viktig parameter för sökmotorn. Det återspeglar den tid som förflutit mellan publiceringen av material på Internet och dess inträde i sökmotorns indexbas. Till exempel, några timmar efter flygkraschen, sökte ett stort antal användare på webben efter information om händelsen. Trots det faktum att lite tid har gått sedan publiceringen av de första meddelandena om detta ämne, lyckades sökmotorer indexera dem och användare kunde ta reda på detaljerna om katastrofen.
  • Fart Sökmotorns arbete beror direkt på dess motstånd mot belastningar. Till exempel, enligt OOO Rambler Internet Holding, behandlar en sökmotor cirka 60 sökfrågor per sekund varje dag. Denna hastighet säkerställs av den minskade handläggningstiden för varje enskild användarförfrågan.
  • synlighet att presentera resultat gör sökmotorn användarvänlig. Sökmotorn kan hitta hundratals och till och med tusentals webbplatser genom sökfråga. Om begäran inte är helt korrekt kan även den första sidan av sökresultaten få sidor som inte riktigt matchar det användaren vill hitta. Som ett resultat tvingas en person att filtrera information i den mottagna listan. Enskilda element Sökmotorresultatsidor hjälper dig att navigera i sökresultaten. Detaljerade förklaringar på sökresultatsidan, till exempel för Yandex, kan ses på länken http://help.yandex.ru/search/?id=481937.

För att en webbplats ska vara på första sidan med sökresultat med hög sannolikhet måste du:

  1. Använd ankarlänkar som omdirigerar användare från tematiska webbplatser till ditt företags webbplats. Detta ökar synligheten för internetresursen för sökmotorn, eftersom inte bara texten med en länk till webbplatsen utan även dess URL kan komma in i sökresultaten.
  2. Använd metataggar tillsammans med väl valda sökord. Detta kommer att göra webbplatssammanfattningen mer unik och effektiv.
  3. Använd titeln Titel.
  4. Korrekt komponera den semantiska kärnan av webbplatsen. Det räcker inte att fördela sökord över innehållet på sajten, det är viktigt att göra det försiktigt och diskret. Inkludera inte nyckelord i varje mening. Sökmotorn kan utvärdera detta som spam.
  5. Använd webbadressen till webbplatsen (adressen till dess plats på webben). Korrekt stavning av adressen påverkar dess rankning av sökmotorn.

Om principerna för driften av alla sökmotorer i enkla ord

En sökmotor är ett speciellt program med ett användarvänligt webbgränssnitt, med vilket användare snabbt och enkelt kan söka efter nödvändig information på webben. Tänk på principen om vilken sökmotor som helst utan att gå in på detaljer och teknisk terminologi.

För att sökmotorn ska kunna förse användaren med en lista med länkar till sidor som innehåller information om sökfrågan måste den känna till innehållet i innehållet på alla sektioner på varje sida. Hur samlar sökmotorn in denna data?

Internet är ett speciellt nätverk som består av enskilda sidor som länkar till varandra. Sökmotorn behöver inte gå till var och en av dem, det räcker att ha information om webbplatser och kataloger med högsta betyg för att samla siddata för senare uppladdning.

Sökmotorn skapar faktiskt ett index där adresserna till alla internetsidor grupperas på ett speciellt sätt. Om en ny webbplats har dykt upp på webben som inte refereras av andra resurser, kommer det att vara svårt för sökmotorn att hitta den för att indexera den och lägga till den i sin databas.

Efter att sökmotorn har genererat en lista med sidor börjar indexeringsprocessen (arbetet med att ladda ner all data från dem). Med hjälp av program speciellt skapade för detta ändamål registrerar sökmotorn ny information eller skriver över den gamla och tar bort irrelevant information. Arbetet med att indexera sajter på Internet pågår.

Program samlar in data i tillfällig lagring. Där ackumuleras de upp till en viss mängd, varefter uppdateringsprocessen startas, vars huvudprincip är aktualisering av information i sökmotorns huvuddatabas.

Sökmotorindexet innehåller ett stort antal sidor. När en användare anger en fråga i sökfältet väljer sökmotorn relevanta länkar från sin databas. Med andra ord, den sammanställer en lista över webbplatser vars sidor nämner de sökord som användaren har angett.

Eftersom sökmotorns interna bas är enorm kan sökresultaten innehålla dussintals sidor. Hur rankar sökmotorn dem? Enligt vilken princip avgör det vilka sidor som ska visas för användaren i första hand? Alla sidor sorteras efter innehåll som matchar sökfrågan. Ju mer fullständig information som finns på sidan är, desto närmare kommer sidan att vara överst på listan.

För närvarande använder sökmotorer maskininlärning för att ranka sidor i SERP:erna. Funktionsprincipen för denna process kan övervägas på ett abstrakt exempel.

Låt oss säga att vi behöver träna en robot för att skilja mellan mogna och omogna äpplen. Programmet för att bestämma egenskaperna hos en frukt fokuserar på dess egenskaper:

  • Färg;
  • storleken;
  • hårdhet;
  • sockerhalt;
  • syrahalt.


För analys får roboten två äpplen: omogna och redo. Han jämför dem. Sedan tränar vi maskinen - vi visar vilka egenskaper hos äpplet som är positiva, vilka som är negativa. Vi förklarar med vilken uppsättning parametrar en frukt kan klassificeras som mogen eller inte.

Således har vi en algoritm för att analysera äpplen, med vilken roboten självständigt kan sortera dem. Nu kan du inte ge två frukter, men mycket mer, maskinen delar upp dem i mogna och omogna.

En liknande funktionsprincip är inneboende i sökmotorns arbete. Det finns specialister involverade i att lära ut maskinalgoritmer för att sortera innehåll. Först analyserar de självständigt sidorna som ingick i sökresultaten för sökfrågan och delar in dem i relevanta och irrelevanta. Sedan tränas roboten i att sortera sidorna.

Sidornas relevans är en indikator i form av ett bråktal. Varje sida tilldelas ett annat relevansvärde. Sedan sorteras alla resurser i fallande ordning för denna indikator. De mest relevanta webbplatserna hamnar i toppen av sökresultaten.

Utöver huvudsorteringsalgoritmen använder sökmotorer olika ytterligare sådana som också kan påverka sökresultaten. De kan till exempel användas för att filtrera bort skrupelfria webbplatser som använder olika "grå" system för marknadsföring.

Grundläggande principer för sökmotorer: formler


Varje sökmotor använder sina egna unika algoritmer för att söka och rangordna sidor och sajter, men funktionsprinciperna för alla sökmotorer är desamma.

Processen att söka efter information som matchar användarens begäran består av flera steg: samla in data på Internet, indexera webbplatser, söka efter nyckelord och rangordna resultaten. Låt oss ta en närmare titt på varje steg.

  1. Datainsamling.

Efter att sajten är klar måste du se till att sökmotorrobotarna vet om dess utseende. Du kan placera externa länkar till din Internetresurs eller använda andra metoder. Så snart roboten kommer in på webbplatsen kommer den att samla in data på varje sida. Denna process kallas genomsökning. Insamlingen av information från webbplatsen sker inte bara efter att den skapats. Roboten kommer med jämna mellanrum att bläddra i Internetresursen för att kontrollera relevansen av informationen och uppdatera tillgänglig data.

För både dig och boten (roboten) bör sådan interaktion vara ömsesidigt fördelaktig och bekväm. Du som webbplatsägare är intresserad av att boten gör sitt jobb snabbt, utan att överbelasta servern, samtidigt som den samlar in data från alla sidor så fullständigt som möjligt. Det är också viktigt för boten att göra allt så snabbt som möjligt för att gå vidare till att samla in data från nästa sida i sin lista. För din del kan du kontrollera att sidan fungerar, att det inte finns några navigeringsproblem, inga 404-sidor osv.

  1. Indexering.

Även om roboten besökte din webbplats mer än en gång, betyder det inte att internetresursen omedelbart blir synlig för sökmotorn och visas i sökresultaten. Efter att ha samlat in data är nästa steg i webbplatsbearbetningsprocessen dess indexering (att skapa en inverterad indexfil för varje sida). Indexet behövs för en snabb sökning. Som regel består den av en lista med ord från texten och information om dem (positioner i texten, vikt etc.).

När indexeringen är klar visas webbplatsen och enskilda sidor i sökmotorns resultat för användarsökningar. Vanligtvis tar inte indexeringsprocessen mycket tid.

  1. Sök information.

I detta skede söks information direkt efter användarnas sökfrågor. Först analyserar sökmotorn frågan, bestämmer vikten av vart och ett av sökorden. Sedan söker den efter matchningar med inverterade index, väljer alla dokument i sökmotordatabasen som matchar sökfrågan.

Ett dokuments överensstämmelse med en begäran bestäms av en speciell formel:

likhet(Q,D) = SUM(w qk * w dk),

var simulering (Q,D)- fråga likhet F dokumentera D; w qk- vikten av det k:te ordet i frågan; w dk- vikten av det k:te ordet i dokumentet.

Dokument som mest liknar användarens fråga återspeglas i sökresultaten.

  1. Rangering.

I det sista skedet grupperar sökmotorn resultaten så att användaren först ser länkar till de mest relevanta sidorna. Varje sökmotor har sin egen unika rankningsformel, som tar hänsyn till påverkan av följande parametrar:

  • sidvikt (citatindex, PageRank);
  • domänmyndighet;
  • textens relevans för frågan;
  • relevansen av texterna i externa länkar till frågan;
  • såväl som många andra rankningsfaktorer.

Tänk till exempel på en förenklad rankningsformel:

Ra(x) = (m * Ta(x) + p*La(x)) * F(PRa),

Var Ra(x)- Dokumentets slutliga överensstämmelse a begäran x, Beskatta)- Relevansen av texten (koden) i dokumentet a begäran x, Slapp)- Relevansen av texten i länkar från andra dokument till dokumentet a begäran x, PR- sida auktoritetsindikator a, konstant i förhållande till X,
F(PRa)är en monotont icke-minskande funktion, och F(0) = 1, det kan antas att F(PRa) = (1 + q * PRa), m, sid, qär några koefficienter.

Således påverkas en sidas position i sökresultaten av olika faktorer som både är relaterade till sökfrågan och inte relaterade till den.

Principen för drift av informationshämtningssystem: rangordningskriterier

Om du vill att din internetresurs ska vara bland de tre bästa eller åtminstone tio av sökresultaten måste du känna till principerna för sökmotorerna och rankningskriterierna för att ständigt optimera webbplatsen för deras krav. Det finns två huvudgrupper av sådana kriterier:

  • Text sökmotorkriterier.

Sökmotorn i det här fallet rankar sidor baserat på kvaliteten på deras textinnehåll. Optimering av den här komponenten av webbplatsen innebär att arbeta med den semantiska kärnan i skedet av att skapa och fylla internetresursen.

Sökmotorn, som behandlar användarens begäran, kommer att visa de mest relevanta resultaten på den första sidan av frågan. I processen att söka efter dokument analyserar sökmotorn riktigheten av att fylla i titelfrasen (titel), sidbeskrivning (beskrivning) och närvaron av en nyckelfråga i rubrikerna (H1, H2, etc.).

  • Sökmotorkriterier som inte är text.

Sökmotorn utför arbete med analysen av dessa kriterier efter att webbplatsen har publicerats och indexerats. Huvudprincipen för att rangordna enligt kriterierna för denna grupp är inte att utvärdera kvaliteten på deras innehåll, utan den externa länkprofilen.

Sökmotorn analyserar antalet länkar till webbplatsen från andra internetresurser, utvärderar deras trovärdighet, tittar på registreringar i kataloger. Om vi ​​drar en analogi, samlar en sökmotor, som en bank som bestämmer sig för att utfärda ett lån till ett företag, recensioner om det från entreprenörer, leverantörer och andra fordringsägare.

Att veta hur sökmotorer fungerar kommer att hjälpa dig att skapa och optimera webbplatser som enkelt tar första positioner i sökresultaten och stannar där länge, eftersom de motsvarar användarnas sökfrågor.

Funktionsprincipen för Yandex sökmotor

Arbetet med så stora och välkända sökmotorer som Google och Yandex bygger på ett system av kluster. De grupperar all information i vissa områden, knutna till ett visst kluster. För att indexera webbplatser och enskilda sidor och samla in data från dem används speciella sökrobotar. De är av två typer: den huvudsakliga sökroboten (designad för att samla in data från regelbundet uppdaterade internetresurser) och sökroboten (behövs för att uppdatera listan över indexerade webbplatser och deras index på kortast möjliga tid). För att Yandex-sökmotorn ska samla information på Internet så fullständigt som möjligt uppdateras sökbasen och programkoden regelbundet:

  1. Databasen med sökinformation uppdateras flera gånger i månaden, medan användare får uppdaterad data från internetresurser när de anger frågor i sökraden. Dessa data läggs till av huvudrobotskannern.
  2. Uppdatering av programkoden eller, som programmerare kallar det, "motorn" är utformad för att hitta och eliminera brister i driften av algoritmer som rankar sidor i sökresultat. Yandex varnar vanligtvis användare om kommande ändringar.

Den största fördelen med Yandex-sökmotorn, som förklarar dess popularitet i Runet, är förmågan att hitta olika ordformer, med hänsyn till de morfologiska egenskaperna hos det ryska språket. Geotargeting och sökformeln låter dig få den mest exakta formuleringen vid utgången. Yandex har också sin egen unika sida- och webbplatsrankningsalgoritm. Den obestridliga fördelen med systemet är den snabba behandlingen av användarsökfrågor och den stabila driften av servrarna.

Som redan nämnts, vid indexering av resurser, tittar sökmotorn på dynamiska länkar, vars närvaro kan få boten att vägra att bestämma webbplatsindexet.

Yandex bygger på analys av textinnehåll i dokument med olika tillägg (.pdf, .rtf, .doc, .xls, .ppt, etc.).

I processen att indexera en internetresurs tar sökmotorn data från robots.txt-filen, medan attributet Allow och några av metataggarna stöds, och metataggarna Revisit-After och Keywords inte tas med i beräkningen.

Snuttar ( korta beskrivningar textdokument) består av fraser på sidan du letar efter, så att skriva taggar i beskrivningen är inte alls nödvändigt, men de kan ställas in om det finns ett sådant behov.

Enligt många utvecklare bestäms koden för indexerade dokument i automatiskt läge, så kodningsmetataggen spelar inte så stor roll.

Yandex ägnar stor uppmärksamhet åt indikatorn sista ändring information (senast ändrad). Om servern slutar överföra dessa data till sökmotorn, kommer indexeringen av webbplatsen att utföras mycket mindre ofta.

Om en internetresurs har sina egna "speglar" (till exempel http://www.site.ru , http://site.ru , https://www.site.ru) måste du se till att sökmotor inte indexerad. Om detta inte är möjligt är det möjligt att limma ihop sådana webbplatser genom att göra lämpliga ändringar i robots.txt-dokumentet.

Efter att internetresursen kommit in i Yandex.Catalog kommer sökmotorn att klassificera den som en webbplats som kräver särskild uppmärksamhet, vilket kommer att påverka dess marknadsföring. Detta kommer också att förenkla proceduren för att bestämma ämnet för webbplatsen, vilket utan tvekan är ett plus, eftersom den kommer att ha en betydande extern länk.

Yandex-utvecklare avslöjar inte IP-adresserna för sina robotar. Icke desto mindre, i loggfilerna på olika webbplatser, kan du hitta textmärken som tillhör robotarna i denna sökmotor.

Den viktigaste av alla sökrobotar är den huvudsakliga. Webbplatsens betydelse för Yandex beror på resultatet av dess arbete med sidindexering.

Varje robot har sitt eget schema för indexering av internetresurser. Arbetstiden för olika robotar med var och en av webbplatserna i sökmotordatabasen kanske inte matchar.

Utöver huvudrobotarna har sökmotorn ytterligare sådana som regelbundet besöker sidorna med internetresurser för att kontrollera deras tillgänglighet. Till exempel är dessa robotar från Yandex.Catalog och Yandex reklamnätverk.

Yandex sökmotor fokuserar på följande nyckelindikatorer för extern optimering:

  1. TCI (Public Subject Citation Index) - visar det genomsnittliga antalet länkar som kommer åt sidan. Det påverkar inte direkt rankningsresultaten, det används för att bestämma positioner i Yandex.Catalog tematiska grupp. Används för marknadsföring av Internetresurser.
  2. WCI (weighted citation index) är en speciell algoritm utformad för att räkna antalet externa länkar till en webbplats. Det är av största vikt när sidor rangordnas av en sökmotor.
  3. Webbplatsnärvaro i Yandex.Catalogue.
  4. Det totala antalet indexerade webbplatssidor.
  5. Frekvensen av att indexera innehållet i Internetresursen.
  6. Närvaron och frånvaron av länkar från webbplatsen, närvaron av webbplatsen i sökfilter.

Citeringsindexet ligger till grund för det tematiska och viktade citeringsindexet.

Citationsindex(CI) - en indikator på antalet citeringar (eller referenser till källan), hjälper till att avgöra vilka av de nyskapade dokumenten som refererar till tidigare publikationer. IC används både för analys av artiklar och författare (till exempel i en vetenskaplig miljö).

I Yandex, liksom i andra sökmotorer, betraktas citeringsindexet som antalet bakåtlänkar utan att ta hänsyn till länkar från webbplatser av följande typer: omodererade kataloger, anslagstavlor, nätverkskonferenser, serverstatistiksidor, XSS-länkar, etc., vars antal ständigt kan öka utan deltagande av ägaren av resursen.

Det bör förtydligas att i Aport-katalogen betraktas IC som ett viktat citeringsindex.

För att beräkna detta index används ett länkdiagram: om webbplatser är grafens hörn och länkar till andra webbplatser är länkar till grafens hörn eller kanter, så visas länkdiagrammet som ett diagram som visas i figuren:


Där A, B, ..., F är vissa webbplatser i Yandex sökmotorindex och pilarna anger riktningarna för länkarna mellan dem (enkelriktad eller tvåvägs).

Citeringsindexet spelar en stor roll i rankningen av dokument av en sökmotor, men de slutliga resultaten beror på mer än bara denna indikator.

Man tror att citeringsindexet kännetecknar publiceringens betydelse, men samtidigt speglar det inte länkstrukturen på sajten, vilket gör att resurser med olika antal externa länkar kan indexeras på samma sätt.

För att eliminera denna brist används ett viktat citeringsindex, som kännetecknar inte bara kvantiteten utan även kvaliteten på hänvisningsresurser. Användningen av länksökning och statisk länkpopularitet underlättar sökmotorernas arbete och sparar dem från olika textspam. I sökandet Googles system PageRank liknar det viktade citeringsindexet.

För att beräkna VCI, samt andra faktorer som påverkar rankningen, används en referensgraf. Webbplatsägaren kan självständigt uppskatta VCI för sin internetresurs genom att kontrollera dess PageRank-värde med någon av de tillgängliga onlinetjänsterna. Men man bör komma ihåg att Yandex-indexet bara innehåller dokument på ryska och bara några få populära dokument från utländska, så värdet på Yandex VIC kommer att skilja sig från Google PageRank.


Dela med sig