MÉLY AJÁNLÓRENDSZEREK 2. RÉSZ

MÉLY AJÁNLÓRENDSZEREK 2. RÉSZ

Előző bejegyzésünkben az ajánlórendszerek elvi osztályozásáról volt szó, most azonban konkrét algoritmusok kerülnek bemutatásra. Az ajánlórendszerek kényelmet és gyorsaságot kínálnak, mellyel több eladást generálnak a felhasználójuk számára. Egy ajánló rendszer feladata az egyéni igényeknek legmegfelelőbb termék ajánlása. Gyakorlatilag azt a feladatot látja el, mint egy hús-vér eladó, amikor személyes beszélgetést folytat a vásárlóval, hogy felmérje annak igényeit és megismerje a vásárló személyét, majd ez alapján javaslatot tesz kínálatából számára.

MÁTRIX FAKTORIZÁCIÓ:

Matematikai modell: Memórián alapuló megoldás, mint a felhasználó alapú vagy az elem alapú (kollaboratív szűrés)

Kezdeti állapot

Értékelés Táblázat

 

A cél a hiányzó értékelések megbecslése modell paraméterekkel, melyek a felhasználókhoz tartozó embedding reprezentációs mátrix (F) és az elemekhez tartozó embedding reprezentációs mátrix (T). Ezen paramétermátrixok (F, T) meghatározásához gépi tanulás szükséges: veszteség függvény minimalizálása, például gradient descent eljárással, (vagy evolúciós algoritmussal). Szorzatuk tartalmazza az összes elem becslőjét (É), tehát a korábban látott táblázatot teljesen kitöltve. Megfigyelhetjük, hogy a mátrixok közös dimenziója azonos nagyságú, amely reprezentálja a tulajdonság teret, és amely szintén paramétere a modellnek, ezen paraméterek látens tulajdonságokat alkotnak, melyek nem meghatározott, számunkra jól ismert (műfaj, szerző, stb…) tulajdonságok.

Reprezentációk Mátrixszorzata

Error: 3-2 | 5-13 | ….

 

RMSE

 

Gradient descent-el iteratívan az optimalizáló algoritmus állítgatja a reprezentációk értékét

 

Shallow learning-gel betanult reprezentációk

Mi alapján döntjük el mekkora legyenek a reprezentációs vektorok? here comes the black magic, alkalmazási terület válogatja, hogy mekkora az ideális reprezentációs vektor méret.

MÉLY AJÁNLÓK:

A felhasználók, illetve a termékek közötti kapcsolat sokszor nem lineáris, amelyet a hagyományos lineáris algebrán alapuló megoldásokkal csak kényelmetlenül lehet modellezni. A neurális háló kiváló függvény becslő, így ezt a problémát kiküszöböli. A mély ajánlórendszer esetén a feladat ugyan az. A meghatározott személy, illetve a meghatározott elem között a tetszés mértékét kifejezni a múltbéli (saját + idegen) értékelések alapján. Ehhez azonban

minimális információveszteséggel szükséges reprezentálni a felhasználót, illetve a terméket, azaz az adatokat embedding módszerrel kompatibilissá kell tenni a bemenettel, hogy a hálózat fogadni tudja azt. Erre többféle megoldás létezik:

    One Hot Encoding

N darab elem esetén a k-adik elem one hot reprezentációja:     [ 0   0   0   .   .   .   1   .   .   0]

Egy one hot reprezentáció ugyan már neurális háló bemenet kompatibilis, de nem tartalmazza veszteség nélkül az eredeti elemben meglévő információt. Ugyanis a hasonló elemek is ugyan olyan távol vannak egymástól (Euklidészi n dimenziós térben), mint a teljesen különböző elemek.

    Learned Embedding

Az embedding egy jelentés térbeli leágyazás, amelyet egy neurális háló architektúra végez. Feladata a fontos, de nem expliciten kifejezhető befolyásoló tényezőket modellezni, azáltal, hogy a one hotban szereplő egy értéket egy elosztott formában (embedding vektorban) tárolja. Egy elem különböző jellemzői külön-külön beágyazhatók. Egybefűzve a beágyazásokat nagyságrendekkel több információt reprezentál a bemeneti vektor az elemről, mint a one hot beágyazás esetében.

Ezen réteg kimenete meghatározható méretű vektor, legyen b.

  • Ez a vektor kezdetekben random értékeket tartalmaz, melyhez tartozó entitás a tanulás folyamán elfoglalja helyét a b dimenziós térben. Értelemszerűen minden egyes elemet egy pont reprezentál. Az embedding képes magasabb rendű kapcsolatok tárolására, gyakorlatilag a pontok helyzete ezen b dimenziós térben magában tartalmazza az elem jelentés vagy hasonlóság térbeli hova tartozását.

Az embedding leágyazást végző neurális háló állhat a mély ajánlórendszertől külön, vagy képezheti annak szerves részét is (on-the-fly). A korszerű architektúrák esetén a leágyazást nem egy külön tanított neurális háló végzi, hanem az ajánlórendszerrel együtt tanul. Innen ered az On-the-fly kifejezés.

 

A megfelelően reprezentált elemekre és felhasználókra (és akár tartalmi tulajdonságokra) kapcsolt teljesen összekapcsolt neurális háló (FC) egy end-to-end, state-of-the-art mély ajánló rendszer táblázat kitöltő becslőjét alkotja.

Biztosak vagyunk abban, hogy az Ön vállalkozásában is vannak mesterséges intelligenciával automatizálható munkafolyamatok: amennyiben szeretné élvezni a mesterséges intelligencia használatával járó előnyöket, úgy jelentkezzen ingyenes, személyes konzultációnkra elérhetőségeink valamelyikén.

Close Menu