SlideShare una empresa de Scribd logo
1 de 14
Rekomendacinės sistemos algoritmų veikimo
elektroninio knygyno duomenų bazėje
analizė

Aurimas Rapečka,
dr. Virginijus Marcinkevičius,
prof. habil. dr. Gintautas Dzemyda

2013-09-21
Rekomendacinės sistemos (RS)


RS sprendžia šias pagrindines problemas:
1. Padeda išsirinkti produktą iš panašių produktų
gausos.
2. Padeda išskirti reikiamą produktą iš nereikalingų
produktų aibės.



Atsirado kaip atsakas į informacijos perteklių internete.



Padeda vartotojui išsirinkti norimą prekę ar paslaugą.
Rekomendacinės sistemos (2)


Didžiajai daliai RS reikalinga:
◦ 1. Vartotojų aibė.
◦ 2. Produktų aibė.
◦ 3. Vartotojų vertinimų produktams aibė.



RS etapai
◦ Įvesties (duomenys – vertinimai, demografiniai, turinys)
◦ Filtravimo (ieškoma panašumų tarp vartotojų)
◦ Išvesties (prognozė arba rekomendacija)
Elektroninio knygyno duomenų bazė



Objektas – anekdotai.
Duomenų kiekis:

◦ 19329 knygos, 14197 vartotojai, 41177 užsakymai.
◦ Užpildymas – 0,033%.
7000 6409
6000
Pirkėjų skaičius



5000
4000
3000

2341

2000

1181
752
481
308 168 100
189 104 67 68 49 48 37 28 28 13 12 14 14 7 13 15 4 6 5 6 3 13 81

1000
0
1

3

5

7

9

11

13

15

17

19

21

Vieno pirkėjo įsigytų knygų skaičius

23

25

27

29

>30
Populiariausi rekomendavimo algoritmai

RS efektyvumo matai

Programinė įranga
Atnaujinta

Progr.
kalba

Realizuoti

Reitingų

Produktų

savo

RS algoritmų

progn.

rekomend.

MyMediaLite

2013 04

C#

>20

Taip

Taip

Taip

Apache Mahout

2012 06

Java

3

Ne

Taip

Taip

GraphLab

2012 05

C++

15

Taip

Taip

Taip

LensKit

2012

Java

?

Taip

Taip

Taip

Waffles

2013 04

C++

>5

Ne

Taip

Ne

easyrec

2012 02

Online

1

Ne

Taip

Taip

RecLab

2011 02

Online

1

Ne

Taip

Ne

Crab

2011

Python

>5

Taip

Taip

Taip

recommenderlab

2011 11

C++

4

Taip

Taip

Taip

Jellyfish

2012 12

Python

1

Ne

Taip

Ne

OpenSlopeOne

2010 06

PHP

1

Taip

Taip

Ne

AppRecommender

2011

Python

>10

Ne

Taip

Taip
Eksperimentų rezultatai
AUC prec@5 prec@10 MAP recall@5 NDCG

Mok. laikas, ms

Test. laikas, ms

Random

0,50

0,00

0,00

0,00

0,00

0,11

0,00

176,91

Zero

0,61

0,00

0,00

0,01

0,01

0,13

0,00

152,21

MostPopular

0,65

0,01

0,01

0,04

0,05

0,16

0,10

173,21

MostPopularByAtt.

0,77

0,03

0,02

0,09

0,11

0,22

1,60

238,01

BPRMF

0,65

0,01

0,01

0,03

0,05

0,16

118,91

168,41

BPRLinear

0,76

0,02

0,01

0,06

0,08

0,19

1639,99

201,21

LeastSquareSLIM

0,61

0,00

0,00

0,01

0,00

0,12

244112,00

671,54

ItemAttributeSVM

0,50

0,00

0,00

0,00

0,00

0,00

1032,26

75,00

SoftMarginRanking

0,62

0,00

0,00

0,02

0,02

0,14

114,51

184,21

WRMF

0,66

0,01

0,01

0,04

0,05

0,16

524,73

187,81

WeightedBPRMF

0,55

0,01

0,01

0,03

0,04

0,15

108,21

167,91

MultiCoreBPRMF

0,65

0,01

0,01

0,04

0,05

0,16

29,90

209,41

CLiMF

0,50

0,00

0,00

0,00

0,00

0,00

7808,05

29,50

BPRSLIM

0,64

0,03

0,02

0,11

0,13

0,22

4333,45

278,52

UserKNN

0,70

0,04

0,02

0,13

0,16

0,25

49674,44

2233,73

ItemKNN

0,68

0,03

0,02

0,08

0,12

0,21

125422,70

3787,32

ItemAttributeKNN

0,69

0,02

0,01

0,06

0,08

0,19

129198,60

5252,30
MAP

0.15

0.10

0.05

0.00
0.05
0.04
0.03
0.02
0.01
0.00
ItemAttri…

ItemKNN

UserKNN

BPRSLIM

CLiMF

MultiCore…

Weighted…

WRMF

SoftMargi…

ItemAttri…

LeastSqu…

BPRLinear

BPRMF

MostPopu…

MostPopu…

Zero

Random

Eksperimentų rezultatai (2)
prec@

prec@5

prec@10
Eksperimentų rezultatai (3)
<…>

Algoritmas

AUC

Vieta

prec@5

Vieta

MAP

Vieta

Random

0,499

18

0,001

17

0,004

17

13,18

17

Zero

0,552

15

0,001

16

0,008

16

12,27

16

MostPopular

0,719

3

0,017

10

0,051

10

7,18

9

MostPopByAtt(C)*

0,781

1

0,032

5

0,100

5

5,27

3

BPRMF

0,711

5

0,016

13

0,050

12

9,82

12

BPRLinear

0,716

4

0,017

11

0,054

8

9,36

8

SoftMarginRankMF

0,650

9

0,005

15

0,021

15

12,18

14

WRMF

0,654

8

0,018

8

0,054

9

9,09

10

WeightedBPRMF

0,506

16

0,009

14

0,026

14

12,45

15

MultiCoreBPRMF

0,722

2

0,017

12

0,051

11

8,73

11

CLiMF

0,501

17

0,000

18

0,001

18

15,27

18

BPRSLIM

0,635

11

0,038

4

0,120

3

7,64

4

UserKNN

0,677

7

0,048

1

0,149

1

5,27

1

ItemKNN

0,639

10

0,030

7

0,084

7

9,45

7

ItemAttributeKNN

0,633

12

0,017

9

0,047

13

13,00

13

MostPopByAtt(A)*

0,700

6

0,030

6

0,085

6

6,91

6

BPRLinear

0,623

14

0,041

3

0,120

4

6,91

5

ItemAttributeKNN

0,624

13

0,043

2

0,123

2

7,00

2

Vidurk.

Galut. vieta
Eksperimentų rezultatai (4)

k

3

5

8

10

20

1

MPopByAtt (c)

UserKNN

UserKNN

UserKNN

MPopByAtt (c)

2

UserKNN

MPopByAtt (c)

MPopByAtt (c)

MPopByAtt (c)

UserKNN

3

MostPopular

MPopByAtt (a)

BPRSLIM

BPRSLIM

BPRSLIM

4

BRPLinear (a)

BRPLinear (a)

MPopByAtt (a)

MPopByAtt (a)

MPopByAtt (a)

5

MPopByAtt (a)

ItemAttributeKNN

BRPLinear (a)

ItemKNN

ItemKNN
Išvados
1. Atkreipiamas dėmesys, kad turimo duomenų rinkinio
užpildymais nenuliniais elementais yra labai mažas (50,68%
pirkėjų įsigujo tik vieną knygą, o 88,29% sistemos vartotojų
yra nupirkę mažiau nei 5 knygas), todėl siūlomų algoritmų
tikslumas nėra didelis.
2. Naujiems arba neaktyviems vartotojams (pirkimų istorijoje
turintiems tik 1 ar 2 nupirktų knygų įrašus) geriausius
rezultatus parodė MostPopular ir MostPopularByAttributes
algoritmai, kuomet atsižvelgiama ne vien tik į knygų, bet ir į
knygų kategorijų bei autorių populiarumą visoje sistemoje.
Išvados
3. Vartotojams, turintiems daugiau nei 3 knygas pirkimų
istorijoje, geriausias rekomendacijas generavo UserKNN
algoritmas, analizuojantis konkretaus vartotojo pirkimų
istoriją ir ieškantis panašumų kitų vartotojų pirkimų
istorijose. Tačiau pastebėtina, kad šis metodas reikalauja
daugiau kompiuterio operatyviosios atminties ir laiko išteklių
skaičiavimams, todėl jis negali veikti realiu laiku.

4. Nustatyta, kad esant didesniam vartotojo pirktų knygų
skaičiui (>8), pakankamai gerus rezultatus pademonstravo
BPRSLIM algoritmas, kurio skaičiavimai vyksta daug
greičiau. Šis algoritmas galėtų būti naudojamas kaip
alternatyva didelių resursų reikalaujančiam UserKNN
algoritmui.
Ačiū už dėmesį

Más contenido relacionado

Destacado (18)

2012 keynote-0
2012 keynote-02012 keynote-0
2012 keynote-0
 
Tabaquismo danexa aguilar 902
Tabaquismo danexa aguilar 902Tabaquismo danexa aguilar 902
Tabaquismo danexa aguilar 902
 
Recomanacions lectores (e. lluch)
Recomanacions lectores (e. lluch)Recomanacions lectores (e. lluch)
Recomanacions lectores (e. lluch)
 
que hacer para bajar de peso
que hacer para bajar de pesoque hacer para bajar de peso
que hacer para bajar de peso
 
Caratula
CaratulaCaratula
Caratula
 
4x4
4x44x4
4x4
 
Clasificacion general individual prologo pasto
Clasificacion general individual prologo pastoClasificacion general individual prologo pasto
Clasificacion general individual prologo pasto
 
Konposatuak froga
Konposatuak frogaKonposatuak froga
Konposatuak froga
 
Posters
PostersPosters
Posters
 
26 octubre la jornada cinga fòrum 2013,pdf
26 octubre la jornada cinga fòrum 2013,pdf26 octubre la jornada cinga fòrum 2013,pdf
26 octubre la jornada cinga fòrum 2013,pdf
 
Οι φάλαινες - Ορέστης
Οι φάλαινες - ΟρέστηςΟι φάλαινες - Ορέστης
Οι φάλαινες - Ορέστης
 
3
33
3
 
Demokratiakademin Om vi fick bestämma
Demokratiakademin Om vi fick bestämmaDemokratiakademin Om vi fick bestämma
Demokratiakademin Om vi fick bestämma
 
PA
PAPA
PA
 
Artilharia segundona 2013
Artilharia segundona 2013Artilharia segundona 2013
Artilharia segundona 2013
 
Presentacion de Imagenes
Presentacion de Imagenes Presentacion de Imagenes
Presentacion de Imagenes
 
LT Kosenconf946 #2
LT Kosenconf946 #2LT Kosenconf946 #2
LT Kosenconf946 #2
 
Anuncios
AnunciosAnuncios
Anuncios
 

Más de Lietuvos kompiuterininkų sąjunga

Eimutis KARČIAUSKAS. Informatikos mokymo pasiekimų vertinimų analizė
Eimutis KARČIAUSKAS. Informatikos mokymo pasiekimų vertinimų analizėEimutis KARČIAUSKAS. Informatikos mokymo pasiekimų vertinimų analizė
Eimutis KARČIAUSKAS. Informatikos mokymo pasiekimų vertinimų analizėLietuvos kompiuterininkų sąjunga
 
B. Čiapas. Prekių atpažinimo tyrimas naudojant giliuosius neuroninius tinklus...
B. Čiapas. Prekių atpažinimo tyrimas naudojant giliuosius neuroninius tinklus...B. Čiapas. Prekių atpažinimo tyrimas naudojant giliuosius neuroninius tinklus...
B. Čiapas. Prekių atpažinimo tyrimas naudojant giliuosius neuroninius tinklus...Lietuvos kompiuterininkų sąjunga
 
D. Dluznevskij. YOLOv5 efektyvumo tyrimas „iPhone“ palaikomose sistemose
D. Dluznevskij.  YOLOv5 efektyvumo tyrimas „iPhone“ palaikomose sistemoseD. Dluznevskij.  YOLOv5 efektyvumo tyrimas „iPhone“ palaikomose sistemose
D. Dluznevskij. YOLOv5 efektyvumo tyrimas „iPhone“ palaikomose sistemoseLietuvos kompiuterininkų sąjunga
 
I. Jakšaitytė. Nuotoliniai kursai informatikos mokytojų kvalifikacijai kelti:...
I. Jakšaitytė. Nuotoliniai kursai informatikos mokytojų kvalifikacijai kelti:...I. Jakšaitytė. Nuotoliniai kursai informatikos mokytojų kvalifikacijai kelti:...
I. Jakšaitytė. Nuotoliniai kursai informatikos mokytojų kvalifikacijai kelti:...Lietuvos kompiuterininkų sąjunga
 
E..Zikariene. Priziurima aplinkos duomenu klasifikacija, pagrista erdviniais ...
E..Zikariene. Priziurima aplinkos duomenu klasifikacija, pagrista erdviniais ...E..Zikariene. Priziurima aplinkos duomenu klasifikacija, pagrista erdviniais ...
E..Zikariene. Priziurima aplinkos duomenu klasifikacija, pagrista erdviniais ...Lietuvos kompiuterininkų sąjunga
 
V. Marcinkevičius. ARIS dirbtinio intelekto kurso mokymosi medžiaga, www.aris...
V. Marcinkevičius. ARIS dirbtinio intelekto kurso mokymosi medžiaga, www.aris...V. Marcinkevičius. ARIS dirbtinio intelekto kurso mokymosi medžiaga, www.aris...
V. Marcinkevičius. ARIS dirbtinio intelekto kurso mokymosi medžiaga, www.aris...Lietuvos kompiuterininkų sąjunga
 
Jolanta Navickaitė. Skaitmeninė kompetencija ir informatikos naujovės bendraj...
Jolanta Navickaitė. Skaitmeninė kompetencija ir informatikos naujovės bendraj...Jolanta Navickaitė. Skaitmeninė kompetencija ir informatikos naujovės bendraj...
Jolanta Navickaitė. Skaitmeninė kompetencija ir informatikos naujovės bendraj...Lietuvos kompiuterininkų sąjunga
 
Romas Baronas. Tarpdisciplininiai moksliniai tyrimai – galimybė atsiverti ir ...
Romas Baronas. Tarpdisciplininiai moksliniai tyrimai – galimybė atsiverti ir ...Romas Baronas. Tarpdisciplininiai moksliniai tyrimai – galimybė atsiverti ir ...
Romas Baronas. Tarpdisciplininiai moksliniai tyrimai – galimybė atsiverti ir ...Lietuvos kompiuterininkų sąjunga
 
Monika Danilovaitė. Informatikos metodų taikymas balso klosčių būklei įvertin...
Monika Danilovaitė. Informatikos metodų taikymas balso klosčių būklei įvertin...Monika Danilovaitė. Informatikos metodų taikymas balso klosčių būklei įvertin...
Monika Danilovaitė. Informatikos metodų taikymas balso klosčių būklei įvertin...Lietuvos kompiuterininkų sąjunga
 
Gražina Korvel. Lombardo šnekos ir jos akustinių ypatybių analizė
Gražina Korvel. Lombardo šnekos ir jos akustinių ypatybių analizėGražina Korvel. Lombardo šnekos ir jos akustinių ypatybių analizė
Gražina Korvel. Lombardo šnekos ir jos akustinių ypatybių analizėLietuvos kompiuterininkų sąjunga
 
Gediminas Navickas. Ar mes visi vienodai suvokiame sintetinę kalbą?
Gediminas Navickas. Ar mes visi vienodai suvokiame sintetinę kalbą?Gediminas Navickas. Ar mes visi vienodai suvokiame sintetinę kalbą?
Gediminas Navickas. Ar mes visi vienodai suvokiame sintetinę kalbą?Lietuvos kompiuterininkų sąjunga
 
Tomas Kasperavičius. Robotikos realizacija edukacinėje erdvėje
Tomas Kasperavičius. Robotikos realizacija edukacinėje erdvėjeTomas Kasperavičius. Robotikos realizacija edukacinėje erdvėje
Tomas Kasperavičius. Robotikos realizacija edukacinėje erdvėjeLietuvos kompiuterininkų sąjunga
 
Paulius Šakalys. Robotika: sąvoka, rūšys, pritaikymas edukacinėje erdvėje
Paulius Šakalys. Robotika: sąvoka, rūšys, pritaikymas edukacinėje erdvėjePaulius Šakalys. Robotika: sąvoka, rūšys, pritaikymas edukacinėje erdvėje
Paulius Šakalys. Robotika: sąvoka, rūšys, pritaikymas edukacinėje erdvėjeLietuvos kompiuterininkų sąjunga
 

Más de Lietuvos kompiuterininkų sąjunga (20)

LIKS ataskaita 2021-2023
LIKS ataskaita 2021-2023LIKS ataskaita 2021-2023
LIKS ataskaita 2021-2023
 
Eimutis KARČIAUSKAS. Informatikos mokymo pasiekimų vertinimų analizė
Eimutis KARČIAUSKAS. Informatikos mokymo pasiekimų vertinimų analizėEimutis KARČIAUSKAS. Informatikos mokymo pasiekimų vertinimų analizė
Eimutis KARČIAUSKAS. Informatikos mokymo pasiekimų vertinimų analizė
 
B. Čiapas. Prekių atpažinimo tyrimas naudojant giliuosius neuroninius tinklus...
B. Čiapas. Prekių atpažinimo tyrimas naudojant giliuosius neuroninius tinklus...B. Čiapas. Prekių atpažinimo tyrimas naudojant giliuosius neuroninius tinklus...
B. Čiapas. Prekių atpažinimo tyrimas naudojant giliuosius neuroninius tinklus...
 
D. Dluznevskij. YOLOv5 efektyvumo tyrimas „iPhone“ palaikomose sistemose
D. Dluznevskij.  YOLOv5 efektyvumo tyrimas „iPhone“ palaikomose sistemoseD. Dluznevskij.  YOLOv5 efektyvumo tyrimas „iPhone“ palaikomose sistemose
D. Dluznevskij. YOLOv5 efektyvumo tyrimas „iPhone“ palaikomose sistemose
 
I. Jakšaitytė. Nuotoliniai kursai informatikos mokytojų kvalifikacijai kelti:...
I. Jakšaitytė. Nuotoliniai kursai informatikos mokytojų kvalifikacijai kelti:...I. Jakšaitytė. Nuotoliniai kursai informatikos mokytojų kvalifikacijai kelti:...
I. Jakšaitytė. Nuotoliniai kursai informatikos mokytojų kvalifikacijai kelti:...
 
G. Mezetis. Skaimenines valstybes link
G. Mezetis. Skaimenines valstybes link G. Mezetis. Skaimenines valstybes link
G. Mezetis. Skaimenines valstybes link
 
E..Zikariene. Priziurima aplinkos duomenu klasifikacija, pagrista erdviniais ...
E..Zikariene. Priziurima aplinkos duomenu klasifikacija, pagrista erdviniais ...E..Zikariene. Priziurima aplinkos duomenu klasifikacija, pagrista erdviniais ...
E..Zikariene. Priziurima aplinkos duomenu klasifikacija, pagrista erdviniais ...
 
V. Jakuška. Ką reikėtu žinoti apie .lt domeną?
V. Jakuška. Ką reikėtu žinoti apie .lt domeną?V. Jakuška. Ką reikėtu žinoti apie .lt domeną?
V. Jakuška. Ką reikėtu žinoti apie .lt domeną?
 
V. Marcinkevičius. ARIS dirbtinio intelekto kurso mokymosi medžiaga, www.aris...
V. Marcinkevičius. ARIS dirbtinio intelekto kurso mokymosi medžiaga, www.aris...V. Marcinkevičius. ARIS dirbtinio intelekto kurso mokymosi medžiaga, www.aris...
V. Marcinkevičius. ARIS dirbtinio intelekto kurso mokymosi medžiaga, www.aris...
 
Jolanta Navickaitė. Skaitmeninė kompetencija ir informatikos naujovės bendraj...
Jolanta Navickaitė. Skaitmeninė kompetencija ir informatikos naujovės bendraj...Jolanta Navickaitė. Skaitmeninė kompetencija ir informatikos naujovės bendraj...
Jolanta Navickaitė. Skaitmeninė kompetencija ir informatikos naujovės bendraj...
 
Raimundas Matylevičius. Asmens duomenų valdymas
Raimundas Matylevičius. Asmens duomenų valdymasRaimundas Matylevičius. Asmens duomenų valdymas
Raimundas Matylevičius. Asmens duomenų valdymas
 
Romas Baronas. Tarpdisciplininiai moksliniai tyrimai – galimybė atsiverti ir ...
Romas Baronas. Tarpdisciplininiai moksliniai tyrimai – galimybė atsiverti ir ...Romas Baronas. Tarpdisciplininiai moksliniai tyrimai – galimybė atsiverti ir ...
Romas Baronas. Tarpdisciplininiai moksliniai tyrimai – galimybė atsiverti ir ...
 
Monika Danilovaitė. Informatikos metodų taikymas balso klosčių būklei įvertin...
Monika Danilovaitė. Informatikos metodų taikymas balso klosčių būklei įvertin...Monika Danilovaitė. Informatikos metodų taikymas balso klosčių būklei įvertin...
Monika Danilovaitė. Informatikos metodų taikymas balso klosčių būklei įvertin...
 
Rima Šiaulienė. IT VBE 2021 teksto maketavimo užduotis
Rima Šiaulienė. IT VBE 2021 teksto maketavimo užduotisRima Šiaulienė. IT VBE 2021 teksto maketavimo užduotis
Rima Šiaulienė. IT VBE 2021 teksto maketavimo užduotis
 
Gražina Korvel. Lombardo šnekos ir jos akustinių ypatybių analizė
Gražina Korvel. Lombardo šnekos ir jos akustinių ypatybių analizėGražina Korvel. Lombardo šnekos ir jos akustinių ypatybių analizė
Gražina Korvel. Lombardo šnekos ir jos akustinių ypatybių analizė
 
Gediminas Navickas. Ar mes visi vienodai suvokiame sintetinę kalbą?
Gediminas Navickas. Ar mes visi vienodai suvokiame sintetinę kalbą?Gediminas Navickas. Ar mes visi vienodai suvokiame sintetinę kalbą?
Gediminas Navickas. Ar mes visi vienodai suvokiame sintetinę kalbą?
 
Eugenijus Valavičius. Hiperteksto kelias
Eugenijus Valavičius. Hiperteksto keliasEugenijus Valavičius. Hiperteksto kelias
Eugenijus Valavičius. Hiperteksto kelias
 
Tomas Kasperavičius. Robotikos realizacija edukacinėje erdvėje
Tomas Kasperavičius. Robotikos realizacija edukacinėje erdvėjeTomas Kasperavičius. Robotikos realizacija edukacinėje erdvėje
Tomas Kasperavičius. Robotikos realizacija edukacinėje erdvėje
 
Paulius Šakalys. Robotika: sąvoka, rūšys, pritaikymas edukacinėje erdvėje
Paulius Šakalys. Robotika: sąvoka, rūšys, pritaikymas edukacinėje erdvėjePaulius Šakalys. Robotika: sąvoka, rūšys, pritaikymas edukacinėje erdvėje
Paulius Šakalys. Robotika: sąvoka, rūšys, pritaikymas edukacinėje erdvėje
 
Olga Kurasova. Dirbtinis intelektas ir neuroniniai tinklai
Olga Kurasova. Dirbtinis intelektas ir neuroniniai tinklaiOlga Kurasova. Dirbtinis intelektas ir neuroniniai tinklai
Olga Kurasova. Dirbtinis intelektas ir neuroniniai tinklai
 

Rapečka, Aurimas ; Marcinkevičius, Virginijus ; Dzemyda, Gintautas „Rekomendacinės sistemos algoritmų veikimo elektroninio knygyno duomenų bazėje analizė“ (VU MII)