Un motor eficient de căutare în e-commerce


Viitorul motoarelor de căutare ale magazinelor online



Yüklə 367,98 Kb.
səhifə7/11
tarix02.08.2018
ölçüsü367,98 Kb.
#66424
1   2   3   4   5   6   7   8   9   10   11

2.7 Viitorul motoarelor de căutare ale magazinelor online


Loop54 este un SaaS (software ca serviciu, software as a service) bazat pe machine learning folosit de diferite site-uri pentru a crește vânzările și ratele de conversie prin îmbunătățirea experienței vizitatorilor (CX, Customer eXperience).

Într-un articol de pe site-ul propriu, compania arată cum machine learning va schimba viitorul căutărilor în e-commerce, unele tendințe fiind deja aplicate. (Loop54.com, 2017)

Motoarele de căutare clasice pentru magazine online se axează în mod tipic pe lucruri precum (Loop54.com, 2017):


  • Indexare eficientă – folosită pentru a localiza rapid datele fără a trebui să caute în fiecare coloană de tabel de fiecare dată când o tabelă de baze de date este accesată.

  • Reguli de ierarhizare bazate pe atribute - ierarhizează rezultatele pe baza relevanței așteptate a căutării unui utilizator, folosind o combinație de metode dependente de căutarea făcută și altele independente de căutarea efectuată.

  • Potrivită a căutării relaxată (fuzzy) – potrivire a căutării în mod aproximativ (de exemplu, „lpatop” pentru „laptop”).

  • Variații – obținerea unor cuvinte chiar dacă nu sunt în forma exactă (carte / cărți / cărțile / cartea)

  • Împărțire pe elemente (tokenization) – procesul prin care o căutare se împarte în segmente de cuvinte, fraze, simboluri și alte părți relevante, numite elemente (tokens).

În evoluția machine learning, algoritmii de căutare au putut face avansuri tehnologice foarte mari în ceea ce privește datele comportamentale. Ele au folosit comportamentul de click, de adăugare în coș și de cumpărare pentru a influența sortarea rezultatelor (în acest sens, sortarea nu se face exclusiv bazat pe locația în metadatele unui produs a unui text căutat). Machine learning a adus abilitatea motoarelor de căutare de a înțelege relațiile dintre produse, chiar înainte ca orice text să fie căutat sau să se fie obținut date de comportament. În acest fel, un motor de căutare poate localiza produse similare sau complementare mai departe decât pe baza unei simple categorii comune sau a unui brand de producător. Poate identifica tipare complexe în toate metadatele și construi o arhitectură profundă în catalogul de produse. Pornind de la aceste elemente de bază, un motor de căutare bazat pe machine learning poate produce o listă de produse asemănătoare care nu au nicio legătură cu căutarea efectuată. (Loop54.com, 2017).

Furnizarea unei liste de „produse asemănătoare” care sunt similare cu produsul la care se uită un client poate duce la rate de conversie (din vizitator în client) crescute și la valori medii ale coșului de cumpărături mărite, și ele. Machine learning permite unui motor de căutare să structureze unele relații dintre produse care nu existat vreodată. Făcând asta, poate realiza o listă inteligentă, auto-perfectibilă de „rezultate asemănătoare”, care să fie complet diferite de cele oferite în general de sistemele clasice. Mai mult, acest tip de motor de căutare nu are nicio nevoie de a avea date de comportament pentru a funcționa, eliminând din strat problema unui început de funcționare mai dificil (de notat, totuși, că datele de comportament sunt necesare, și ar fi bine să fie adăugate motorului pentru a ajuta la sortarea produselor, pentru o relevanță crescută). (Loop54.com, 2017)


3. Soluția propusă

3.1 Scop și obiective


Ne-am propus cu programul la care am lucrat să arăt că se poate face relativ simplu un instrument care să folosească o căutare într-o bază de date de laptopuri, pe două planuri – predicția unor termeni introduși la tastatură în mod parțial corect, și apoi sortarea rezultatelor obținute pe baza unor criterii de relevanță. Soluția găsită în final este, încă, inferioară la modul general unor soluții dedicate precum cele ale Google, Amazon sau eMAG, dar pe anumite segmente, soluția propusă le poate depăși și pe cele dedicate într-o eventuală analiză comparativă.

3.2 Descrierea algoritmului


Algoritmul propus urmărește introducerea de date și căutarea într-o bază de date de laptopuri. Baza de date e formată din numele laptopului și URL-ul aferent de pe site-ul eMAg.ro. Propunerea noastră e pe două planuri: pe de o parte, am făcut un algoritm de predicție cuvinte, se introduc unul sau mai mulți termeni, iar algoritmul creat urmărește dacă acei termeni sunt tastați, cumva greșit, și în a doua parte am făcut o sortare a rezultatelor care conțin termenii căutați.

În prima etapă în care este construit algoritmul se citește de la tastatură un text, format doar din anumite caractere (litere, cifre, spațiu, cratimă, punct, virgulă, ghilimele). Am făcut ca textul introdus să poată fi prelucrat de la tastatură ușor, prin folosirea unor comenzi speciale, pentru deplasarea cursorului în text, deși textul se citește literă cu literă, și nu ca string (text). Există un număr maxim de cuvinte pentru care se afișează predicții, 5, apoi un cuvânt e necesar să aibă între 3 și 14 litere, și tot stringul introdus de la tastatură trebuie să aibă maxim 60 de caractere cu spații (și alte semne permise). Pentru a vedea predicții, se apasă tasta TAB, pentru a căuta direct, fără predicții, se apasă tasta ENTER.

Programul citește apoi dintr-un fișier text predicțiile posibile pentru fiecare din cuvinte. Predicțiile au fost generate din baza de date folosită (o listă de laptopuri de pe site-ul eMAG). Se verifică dacă programul poate prezice niște termeni alternativi: de exemplu, inversarea unor litere în cuvânt („latpop” vs. „laptop”). Apoi, pe baza unei matrici cu poziția fiecărei litere de pe tastatură, programul poate interpreta dacă cuvântul „laptop” a fost tastat de fapt ca „lstpop” (pe tastatură, litera „s” este lângă litera „a”). Programul verifică în toate tastele din jurul tastei respective. O altă variantă de predicție sunt cuvintele care încep cu un string. De asemenea, se caută și dacă un cuvânt a fost tastat cumva cu o literă în plus față de cuvântul dorit. O altă procedură verifică dacă un termen are o literă în minus.

Dacă se găsește mai mult de o predicție, programul oferă opțiunea de a alege între predicțiile găsite.

În partea a doua a programului, se caută cuvintele în varianta finală introdusă de la tastatură în baza de date de laptopuri. Programul este capabil să înțeleagă anumite echivalări, de exemplu între termenii „DVD” și „DVD-ROM”, sau „MSDos” și „MS-Dos” etc.

Dacă un termen va fi mai la începutul stringului introdus, acela va avea prioritate mai mare în căutări decât un termen aflat la finalul stringului.

Dacă un string are 4 termeni, dar în baza de date de laptopuri sunt doar rezultate în care apar 3 termeni, vor fi afișați aceia.


Yüklə 367,98 Kb.

Dostları ilə paylaş:
1   2   3   4   5   6   7   8   9   10   11




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin