Strona główna forum Wsparcie Moduły i dodatki Moduł do rekomendacji produktów

Moduł do rekomendacji produktów

Wszystko o modułach i dodatkach dla Magento...

Post 14 gru 2011, o 01:03

Posty: 7
Gadu-Gadu: 0

Witam,
Jestem autorem modułu do rekomendowania produktów. Chciałbym zaprosić do pobrania i instalacji w Waszych sklepach. Moduł był przygotowywany w ramach zaliczenia i zależy mi na szybkim feedbacku, abym mógł załączyć opinie i testy do pracy.

Moduł działa od wersji 1.4.2. Na niższych wersjach nie był testowany.
Załączam link do Magento Connect (krótki opis, zrzuty ekranu) oraz plik w załączniku.

Dziękuję i zapraszam do dyskusji.
Nie masz wystarczających uprawnień, aby zobaczyć pliki załączone do tego postu.

Moduł do rekomendacji produktów

PostTeraz jest 24 lis 2024, o 10:35
Google

Posty: 427
Lokalizacja: Internet

Post 14 gru 2011, o 23:12

Posty: 104
Gadu-Gadu: 0

A mógłbyś dokładniej opisać jak działa moduł?
Dlaczego jest fajny i dlaczego jest lepszy niż pokazywanie losowych produktów?
Module is based on the concept random walk and sales history

To mnie nic nie mówi...
number of iteration length (precision can range from 1 to 20), number of iterations (precision can range from 1 to 9, recommended number of odd) and and percentage of sales history.

To również jest dla mnie niezrozumiałe i wcale nie chodzi o angielski. :)

Post 15 gru 2011, o 19:37

Posty: 7
Gadu-Gadu: 0

Algorytm rekomendacyjny zawarty w module jest połączeniem metod wyszukiwania rekomendowanych produktów oparty na zachowaniach użytkowników (historia zamówień) oraz na charakterystyce produktów i wyszukiwaniu tych, które mają wspólne (podobne) cechy. To na ile algorytm ma się opierać na historii zamówień a na ile na podobieństwie produktów opartych na cechach produktów, można regulować w ustawieniach modułu "What precentage..." (przedział od 0 do 100 - im wyższy, tym bardziej poruszamy się po historii).

Koncepcja losowego spaceru polega na tym (na wzór PageRank), że w każdym kroku algorytm losuje liczbę od 1 do 100 i w zależności od ustawienia ("What precentage..."), algorytm losuje jeden produkt z puli produktów zakupionych w jednym koszyku z produktem przeglądanym lub jeden produkt z grupy produktów posiadający podobne cechy jak produkt przeglądany. I z każdym krokiem (iteracją) algorytm działa na takiej samej zasadzie, z tym, że produktem startowym nie jest już produkt wyświetlony na karcie, lecz produkt wybrany w poprzednim kroku. I teraz "number of iteration length" określa jak długi ma być taki losowy spacer, a "number of iterations" określa ile takich spacerów ma być wykonanych (każdy spacer zaczyna się od początku, czyli od produktu przeglądanego). Każdy krok nadaję wybranemu produktowi +1 pkt. Na koniec działania algorytmu budowany jest ranking i wybieranych jest N (w zależności od ustawienia ilości wyświetlanych produktów) produktów z największą ilością punktów (produkt startowy jest usuwany z tego rankingu).

Dodatkowa informacja nt. szans losowanych produktów. W przypadku losowania podobieństwa produktów, to im bardziej inny produkt ma więcej wspólnych cech, tym większe są szanse wylosowania tego produktu. W przypadku historii zamówień, o ile wyszukiwanie te nie jest ustawione na więcej niż 70%, to nie jest losowany produkt z wszystkich koszyków, gdzie największą szanse wybrania miałby produkt, kiedy najczęściej występuje w parzę z tym produktem, lecz obliczana jest tak jakby "ufność" produktów które występują razem w koszyku. Ufność jest ta wyliczany w następujący sposób: brane są wszystkie produkty które były zakupione w parzę z tym produktem i dziele liczbę wystąpień tej pary przez pierwiastek z łącznej liczby sprzedaży porównywanego produktu. Następnie buduję ranking i wybieram losowo produkt z grupy która ma najwyższy wynik. Ten sposób wydaję się być dobry, ponieważ większe powinien mieć szanse produkt, który np był kupiony 10 razy z tym produktem, ale łącznie był sprzedany tylko 25 razy, niż produkt który był sprzedany 50 razy z tym produktem, ale łącznie tamten produkt został sprzedany 10000 razy.


Gorąco zachęcam do testowania. Jeśli ktoś potrzebuje pomocy przy tym module, to proszę się nie zawahać ze mną skontaktować. PW lub mejl: mrecommender.małpa.gmail.com. Proszę również o kontakt jeśli zdecydowałeś/zdecydowałaś się na instalacje tego modułu. Zależy mi na opinii i testach.

Pozdrawiam.

Post 21 gru 2011, o 12:11

Posty: 5
Gadu-Gadu: 0

Witam

Spróbowałem zainstalować Twój moduł. Sama instalacja przebiegła pomyślnie, natomiast przy wejściu w produkt pojawia się następująca błąd:

"SQLSTATE[HY000]: General error: 1473 Too high level of nesting for select"

moja wersja magento to 1.5.1.0

Pozdrawiam
Zarek

Post 21 gru 2011, o 14:40

Posty: 7
Gadu-Gadu: 0

Witam,

To nie wina wersji Magento, tylko serwera baz danych. U mnie na serwerze nie było takiego problemu, ale najwidoczniej może taki problem się pojawić przy innej konfiguracji.

Chodzi o to, że na potrzeby modułu wykonywane jest bardzo duże zapytanie SQL i im więcej iteracji to tyle tych zapytań jest łączonych w ramach optymalizacji. Jedyne rozwiązanie na szybko, które mi przychodzi teraz do głowy, to zmniejszenie w ustawieniach liczby konfiguracji maksymalnie do 3. Tylko, że to jest ogólnie trochę słabe rozwiązanie. W miarę możliwości postaram się szybko naprawić ten problem i poinformuję na forum o aktualizacji.

Dziękuję za informację. Będę Pana informował o zmianach.

EDIT: Najpóźniej z środy na czwartek po świętach umieszczę aktualizację.

Post 29 gru 2011, o 00:42

Posty: 7
Gadu-Gadu: 0

Witam,
Załączam nową wersję modułu z powyższą poprawką. Na Magento Connect również jest już aktualizacja.
Nie masz wystarczających uprawnień, aby zobaczyć pliki załączone do tego postu.


Powrót do Moduły i dodatki