Tabel 2.1.1 Primele cateva iteratii ale ecuatiei anterior prezentate asupra grafului (Langville si Meyer, 2006)..........................................................................................12
Tabel 2.1.2 Cota de piata la nivel mondial, motoare de cautare (StatCounter Global Stats, 2018)................................................................................................................15
Tabel 2.4.1 Comparatie intre functiile oferite pentru diferite tipuri de cautari in unele motoare de cautare.....................................................................................................22
Tabel 2.5.1 Tipuri de continut web invizibil (Sherman si Price, 2001)..........................26
Tabel 3.4.1 Indicatori pentru a masura fiabilitatea programului propus (Littlefair, 2018)..........................................................................................................................34
1. Introducere
Lucrarea de fata, prin continut si aplicatia realizata, se incadreaza in domeniul de mare actualitate al motoarelor de cautare. Alegerea temei este motivata si sustinuta de experienta de lucru de peste 10 ani in domeniu. Am putut identifica principalele probleme ale motoarelor de cautare din magazinele online (de exemplu, o persoana poate naviga pe site-ul Amazon si cauta o carte; unele rezultate, nerelevante, apar mai sus ca altele, relevante, si uneori nu se obtin prin cautari rezultatele dorite).
Motivatia principala a lucrarii este data de experienta negativa avuta pe principalele motoare de cautare pentru magazine online, fie ele din Romania sau pe plan international. Filtrele Amazon nu functioneaza intotdeauna corect (din perspectiva noastra), iar cautarea de produse pe site uneori nu returneaza lucrurile potrivite (o persoana poate cauta ceva si fie nu obtine niciun fel de rezultate, fie obtine rezultate nedorite). Iar aici este vorba de probleme pe site-ului unei companii gigant, care a avut in 2017 vanzari de 177,9 miliarde de dolari (Kim, 2018). Intreaga piata romaneasca de e-commerce a fost estimata de GPeC (Gala Premiilor eCommerce, un eveniment major pentru piata de e-commerce din Romania) la 2,8 miliarde de euro (Radu, 2018), asa ca, in mod firesc, magazinele online romanesti au avut bugete mai mici pentru investitia in motoare de cautare eficiente. Unele probleme sunt mai mari pe site-urile romanesti de comert online. Am vrut sa aratam o modalitate practica prin care se pot face unele imbunatatiri la un motor de cautare cu resurse putine. Vom prezenta in lucrare inclusiv idei noi, potential utile de folosit pentru magazinele online in viitor.
In ceea ce priveste gradul de noutate al lucrarii – solutia propusa de noi vine ca element de noutate cu un grad de predictie asupra termenilor introdusi de utilizator. Solutia exista deja in motoare de cautare generaliste (Google, Bing, Yahoo!, Yandex, Baidu), sau in unele tastaturi pentru telefoanele mobile (SwiftKey pentru Android si iOS). Ea insa nu a fost implementata in magazinele online suficient de mult. Un exemplu foarte bun de predictie este cel oferit de tastatura de mobil a celor de la SwiftKey. Am dorit cu programul propus de noi sa simulam unele din functionalitatile de predictie pentru un eventual motor de cautare pentru produsele din magazinele online. O mare parte din facilitatile prezentate sunt deja incluse in SwiftKey.
Scopul de la care am pornit lucrarea a fost atat de a implementa ideile pe care le am in domeniul cautarii pentru motoarele de cautare, de a da un model practic si verificabil, cat si de a veni cu noi idei, ca posibile rute de prospectat pentru aplicatii viitoare. Acestea au ramas in plan pur teoretic, urmand a fi implementate de alte entitati, in incercarea de a imbunatati performantele motoarelor de cautare din prezent.
Descrierea fiecarui capitol:
-
2. Istoric si motivatie - acest capitol are o abordare mai degraba teoretica, am prezentat aspecte ce tin de partile legate de teorie (istoric, motivatie) ale unui motor de cautare pentru magazine online.
-
2.1 Istoric al cautarii informatiei - am prezentat in acest subcapitol evolutia tehnica, de la primele colectii de documente de pe peretii pictati ai pesterilor, mai departe pe papirus, pergament, hartie si, in final, suport electronic. Am prezentat sistemele de organizare a informatiei, diferite solutii pentru a cataloga informatiile. Apoi au fost prezentate detalii despre cum primele motoare de cautare aveau dificultati in sortarea informatiilor de pe Internet. S-a continuat cu doi algoritmi de sortare a datelor - PageRank (1998), motorul din spatele Google, si HITS (tot 1998), un algoritm folosit initial de motorul de cautare Teoma. Am discutat in continuare despre RankBrain, unui sistem de inteligenta artificiala bazat pe machine learning pentru a genera rezultatele cautarilor. Au fost prezentate apoi cotele principalelor motoare de cautare, Google avand peste 90% din piata, si principalele motoare de cautare avand aproape 99% din piata motoarelor de cautare la nivel mondial. Am discutat si despre platforma de cautare din spatele YouTube si cea a Facebook.
-
2.2 Modalitatea de functionare a unui motor de cautare - in acest subcapitol am aratat pentru inceput unde pornesc cautarile internautilor (Amazon, alte motoare de cautare importante, retaileri). S-a prezentat si Teoria Setului Difuz (Fuzzy Set Theory), o ramura a logicii difuze, si rolul ei in cautari. Au fost descrise in continuare tipurile de cautari in metodele de obtinere a informatiei - cautari de proximitate / logica difuza / cautari booleene / puterea data unor termeni.
-
2.3 Evaluarea eficientei unui motor de cautare - in subcapitolul 2.3 au fost prezentati diferiti KPI (indicatori cheie de performanta, key performance indicators) folositi pentru evaluarea unui motor de cautare - procentul de utilizatori care folosesc cautarea / numarul de cautari per vizita / procentul de iesiri din pagina rezultate cautari / numarul mediu de itemi pentru o vizita cu cautari vs. vizitele care nu au cautari / procentul cautarilor fara niciun rezultat / cautarile cele mai frecvente / intentia de cautare.
-
2.4 Starea actuala a domeniului – in inceputul subcapitolului a fost prezentata o comparatie intre functiile oferite pentru diferite tipuri de cautari in unele motoare de cautare - abilitatea de a interpreta termenul scris gresit „Latpop” / filtrare in rezultate / sortare rezultate / abilitatea de a interpreta „procesor laptop” (inclusiv in engleza). Motoarele comparate au fost Google.com / Bing.com / Amazon.com / Target.com / eBay.com / olx.ro / eMAG.ro / Elefant.ro / F64.ro / evoMAG.ro. A fost descris apoi un studiu de uzabilitate din 2015 realizat de echipa de la Baymard Institute, in care au fost analizate cele mai importante 50 de site-uri de e-commerce de pe piata Statelor Unite.
-
2.5 Limitarile unui motor de cautare generalist - in subcapitolul acesta au fost expuse unele din limitarile motoarelor de cautare generaliste (motoarele de cautare generaliste sunt motoare de tipul Google, Bing, Yahoo!, care cauta in surse de date diverse, spre deosebire de cele specializate, cum sunt YouTube sau Amazon, care cauta doar anumite tipuri de date). Exista diferite tipuri de continut care nu sunt indexabile de motoarele de cautare generaliste, si intelegerea acestor lucruri ajuta la alegerea unui motor de cautare pentru nevoi specifice. Capitolul si-a propus sa arate ca exista anumite cautari pentru care motoarele de cautare generaliste (Google, Bing, Yahoo!, Yandex, Baidu etc.) nu sunt cele optime.
-
2.6 Solutii potentiale pentru paginile de rezultate cautari fara niciun rezultat – in acest subcapitol am dat niste solutii pentru cautarile care in mod tipic nu returneaza niciun rezultat (de exemplu, cineva cauta un produs care nu exista pe site, sau tasteaza un cuvant gresit, rezultand un cuvant pentru care nu exista rezultate in mod tipic). De asemenea, am prezentat concluziile unui studiu comparativ intre mai multe motoare de cautare.
-
2.7 Viitorul motoarelor de cautare ale magazinelor online - am prezentat aici primele incercari de aplicare a unor metode de machine learning asupra eficientei motoarelor de cautare. Am folosit pentru aceasta o resursa de pe site-ul Loop54, care este un SaaS (software ca serviciu, software as a service) folosit de diferite site-uri pentru a creste vanzarile si ratele de conversie prin imbunatatirea experientei vizitatorilor (CX, Customer eXperience).
-
3. Solutia propusa - am scris in acest capitol despre solutia software propusa de catre noi pentru rezolvarea unor parti din problemele identificate in partea teoretica.
-
3.1 Scop si obiective - in subcapitol au fost descrise, in mod sumar, care a fost scopul si care au fost obiectivele cercetarii noastre - se poate face relativ simplu un instrument care sa foloseasca predictia rezultatelor posibile, si apoi sa filtreze rezultatele obtinute.
-
3.2 Descrierea algoritmului - am descris in acest subcapitol, pas dupa pas, cum functioneaza algoritmul meu. Se citeste de la tastatura un text. Se verifica daca programul poate prezice niste termeni alternativi: de exemplu, inversarea unor litere in cuvant („latpop” vs. „laptop”) – au fost prezentate mai multe solutii de acest tip. O alta functie a programului este de a cauta si sorta cuvintele in varianta finala introdusa de la tastatura in baza de date de laptopuri.
-
3.3 Utilitatea metodei - in subcapitol am prezentat utilitatea demersului. In primul rand, functia de auto-completare termeni, iar apoi, functia de validare date. Mai departe, odata realizata procedura pe un set de date (programul a fost facut sa functioneze pe o baza de date pentru laptop-uri), se pot imagina usor solutii pentru alte tipuri de date de pe site-uri de tip e-commerce.
-
3.4 Analiza implementarii algoritmului - subcapitolul prezinta de ce a fost ales limbajul de programare C++ si paradigma de scriere cod programare functionala, apoi procedura, pas cu pas, prin care a fost facut programul. Ulterior, au fost prezentati cativa indicatori folositi pentru a masura fiabilitatea software-ului, folosind un program numit CCCC. Au fost detaliati indicatorii folositi, sumar.
-
3.5 Posibilitati de extindere a algoritmului - este un subcapitol in care am prezentat diferite posibile viitoare solutii prin care se poate perfectiona aplicatia noastra.
-
Lucrarea se incheie cu un capitol de concluzii si bibliografia aferenta.
Dostları ilə paylaş: |