Els sistemes de recomanació són sistemes intel·ligents que proporcionen als usuaris un seguit de suggeriments personalitzats (recomanacions) sobre un determinat tipus d'elements (ítems) que poden interessar a l'usuari basant-se en les preferències que ha expressat de forma implícita o explícita.
Així doncs, dona suport a l'usuari a l'hora de prendre decisions mentre interactua amb una massa important d'informació, emprant diversos mètodes per fer aquesta tria automàtica. De manera que permeten que a l'usuari li arribi allò que li interessa de manera més ràpida i eficaç.
Un dels principals reptes que avui dia han d'afrontar els sistemes d'informació és la gestió eficaç del gran volum de documents que emmagatzemen per poder facilitar l'accés a la informació i a recursos que satisfacin les seves necessitats d'una manera senzilla i àgil. Aquesta necessitat es torna més apressant en una societat com l'actual on el nivell d'exigència dels usuaris és cada vegada major.
Tradicionalment, en l'àmbit de les biblioteques el problema de la sobrecàrrega d'informació s'ha abordat adoptant diferents mesures, com per exemple la creació de serveis de difusió selectiva d'informació (DSI), en els quals, d'acord amb el perfil dels usuaris subscrits al servei, es generen periòdicament (o a petició del mateix usuari) una sèrie d'alertes en les quals se'ls notifica de l'existència de recursos que s'adeqüen als seus interessos.
La Web, encara que presenta característiques pròpies que la diferencien clarament de les biblioteques, pateix, en essència, el mateix problema i els esforços per atenuar-ho se centren en l'aplicació de solucions similars, com és el cas dels sistemes de filtratge d'informació (també coneguts com a sistemes de recomanació). De fet, els sistemes de recomanació podrien considerar-se sistemes de DSI aplicats a la Web però, lògicament, amb unes capacitats de filtratge infinitament més potents i sofisticades. Aquests sistemes apliquen tècniques de filtratge d'informació que faciliten l'accés dels usuaris a la informació que necessiten. En dominis textuals, els sistemes de filtratge avaluen i garbellen els recursos disponibles en la Web (normalment en format HTML o XML) bàsicament per assistir als usuaris en tasques de recuperació d'informació (principalment mitjançant l'ús d'agents de filtratge), encara que també s'utilitzen per predir la valoració dels usuaris sobre ítems que encara no han avaluat.
L'origen d'aquest tipus de sistemes es remunta a principis de la dècada dels 90 del passat segle, quan comencen a sorgir dins dels serveis de newsgroups (grups de notícies) serveis de filtratge de notícies que permetien a la seva comunitat d'usuaris accedir exclusivament a aquelles que potencialment podien ser del seu interès.
En l'actualitat els sistemes de recomanació han evolucionat i és possible trobar-los en diversos àmbits d'aplicació com en el comerç electrònic, on s'han convertit en una eina fonamental per als proveïdors en línia o en els serveis d'informació científica.
No obstant això, en cada domini es presenten diferents problemes als quals cal donar diferents solucions. La necessària capacitat d'evolució ha implicat que els sistemes de recomanació s'hagin diversificat. Els sistemes de recomanació són la peça clau de les xarxes socials i de la indústria de l'entreteniment.
Els sistemes de recomanació necessiten principalment dades de l'usuari perquè les recomanacions siguin encertades. Se solen classificar per si utilitzen preferències explícites, implícites o una combinació d'ambdues per calcular les recomanacions:
Es considera que un sistema de recomanació utilitza preferències explícites, quan l'usuari expressa de forma clara les seves preferències conscientment en el perfil, sent una tècnica molt potent en la qualitat d'informació que s'obté.
Per exemple, el cas de valorar un contingut (on la valoració consisteix a donar un valor numèric dins d'un rang definit), preguntes personals i socials, etc.
Alguns exemples de recol·lecció de dades de forma explícita són:
Sistemes que dedueixen les preferències a partir del comportament de l'usuari i del seu historial, així permetent que en la majoria dels casos no sigui necessari demanar a l'usuari gran quantitat d'informació sobre les seves preferències perquè pugui ser recomanat. Solen ser els preferits, ja que tenen un impacte molt reduït o inexistent en la interacció habitual de l'usuari amb l'aplicació.
Per exemple, el passat d'usuaris amb perfil semblant al subjecte en qüestió, sistemes d'aprenentatge, etc.
Aquestes tècniques requereixen un grau d'interpretació per part de l'expert per entendre els objectius reals de l'usuari i per tant, es genera un possible error que afectarà la creació dels perfils d'usuari. Alguns exemples de recol·lecció de dades de forma implícita són:
En general, els sistemes de recomanació combinen aquestes preferències per construir els perfils d'usuari, utilitzant inicialment mètodes explícits per obtenir la informació bàsica del perfil, i a mesura que l'usuari interacciona amb el sistema de recomanació, utilitzar preferències implícites amb la finalitat de refinar el perfil inicial i millorar les seves prediccions.
La forma més coneguda de classificar als sistemes de recomanació és segons la metodologia que utilitzen per resoldre el problema de la recomanació. En la literatura trobem diferents metodologies: basada en el contingut, basada en coneixement, en filtre cooperatiu, en mètodes demogràfics i finalment la metodologia híbrida, basada en la combinació de les anteriors.
Per dur a terme la cerca idònia, el perfil de l'usuari és contrastat amb les característiques dels ítems. Hi ha diversos mètodes:
Els sistemes basats en contingut, consisteixen en la recerca d'objectes basant-se en el coneixement que es té sobre les valoracions de l'usuari, així recomanant ítems que s'adaptin millor a les seves preferències, sent similars, de manera que li puguin agradar o interessar.
Utilitza tècniques d'aprenentatge tal com els Decision Trees, els Neural Networks o les representacions basades en vectors.
Avantatjes
Problemes
Els sistemes de recomanació basats en el filtratge col·laboratiu són aquells en els que les recomanacions es realitzen basant-se únicament en els termes de similitud entre els usuaris. Aquesta similitud la determinarà el perfil de cada usuari. Els usuaris d'un sistema col·laboratiu comparteixen les seves valoracions i opinions respecte als ítems que coneixen.
La base teòrica d'aquests sistemes de recomanació és bastant senzilla: es formen grups d'usuaris més propers (aquells que els seus perfils són més semblants) i se li recomanen aquells objectes que són més similars a ell.
Shardaham i Maes van distingir tres fases fonamentals en el funcionament d'aquests sistemes:
1. El sistema guarda el perfil de cada usuari amb les seves preferències dins d'una base de dades.
2. Es creen grups d'usuaris amb les característiques semblants mitjançant el grau de similitud entre els usuaris que hi ha a la base de dades.
3. El sistema utilitza la informació obtinguda anteriorment per poder realitzar les recomanacions.
Per la realització d'un bon sistema de recomanació col·laboratiu és necessari utilitzar un bon algoritme de filtratge col·laboratiu. Aquests algoritmes es poden separar en dues categories:
Aquests algoritmes utilitzen tota la base de dades per tal de generar una predicció. S'utilitzen tècniques de similitud per trobar les semblances entre una parella d'usuaris. Posteriorment, s'utilitza una sèrie d'algoritmes que combinen les preferències de tots dos per realitzar les prediccions i les recomanacions.
Aquests algoritmes són molt populars i d'èxit a la pràctica però també són els que tenen més problemes d'escassetat i escalabilitat a la base de dades.
Aquests algoritmes proporcionen recomanacions d'ítems desenvolupant primer un model de les puntuacions dels usuaris sobre aquests ítems. S'utilitza una aproximació probabilística que calcula el valor esperat d'una predicció de l'usuari donades les seves puntuacions sobre altres ítems.
Avantatges
Problemes
Els sistemes de recomanació basats en coneixement pretenen profunditzar en el coneixement dels usuaris i els ítems (majoritàriament de domini complex) per a l'elaboració de les recomanacions que encaixin de forma adequada amb els requisits de l'usuari. És a dir, quan no és suficient establir propietats de l'ítem sinó que s'ha de tenir en compte altres aspectes com l'experiència o les expectatives de l'usuari en el domini a tractar.
Aquests sistemes creen una representació explícita sobre el producte així com les oportunitats que l'envolten, permetent:
Avantatges
Problemes
Són sistemes de recomanació similars als col·laboratius, però en el càlcul dels veïns propers utilitzen informació demogràfica (edat, sexe, etc.).
Avantatge
Problemes
El sistema de recomanació híbrid combina dos o més tècniques per a obtenir millors resultats. Així doncs, com a conseqüència s'atenuen els desavantatges de cada un dels sistemes i es combinen els beneficis.
Diferenciem en 7 estratègies d'hibridació (segons Burke 2002), les quals es poden sub agrupar en 3 dissenys generals (Jannach 2012):
Ponderat (weighted): El valor de la recomanació d'un ítem s'obté ponderant els diferents resultats obtinguts pels sistemes de recomanació.
Commutació (switching): El sistema en lloc d'executar totes les estratègies simultàniament, té en compte algun criteri per a commutar entre elles. Quan es compleixen certes condicions el sistema fa ús d'una estratègia, i en cas contrari, recorre a les restants.
Mixt (mixed): Executa més d'un mètode de recomanació simultàniament. Es presenten les diferents recomanacions al mateix moment.
Combinació de característiques: En aquest model s'uneixen en un únic conjunt les dades que utilitzen les diferents estratègies i amb aquest nou conjunt s'executa un sol algoritme de recomanació.
Cascada: Aquest mètode es divideix en dues etapes. Primer s'executa una de les estratègies de recomanació i obté un primer conjunt de productes candidats per tal d'executar una recomanació final, la qual refina el resultat
Meta-nivell: En aquest mètode el model après per un sistema de recomanació és usat com a font d'entrada per un altre sistema de recomanació. En aquest cas, la contribució del primer sistema de recomanació reemplaça completament la font original de coneixement.
En els sistemes de recomanació s'han utilitzat diferents tipus de mètriques per avaluar com d'exactes són les prediccions. Avaluar el rendiment dels algoritmes de recomanació no és fàcil, perquè diferents algoritmes poden ser millors o pitjors depenent de la base de dades escollida. Segons Herlocker, una mètrica per a l'exactitud d'un sistema de recomanació mesura, empíricament, com és de proper l'ordre d'ítems predits per a un usuari del sistema respecte al veritable ordre que faria l'usuari.
Són aquelles mètriques que mesuren com de prop estan les puntuacions predites pel sistema respecte a les puntuacions reals de dades per l'usuari. Entre aquestes mètriques destaquen les estadístiques com: l'error mig absolut (MAE per les seves sigles en anglès) i altres mètriques relacionades com l'error mig absolut normalitzat i l'error mig quadrat (Salazar G 2006)
Mesura la desviació de les recomanacions predites i els valores reals. A menor MAE millor prediu el sistema les avaluacions dels usuaris.
Fórmula utilitzada:
MAE =
Per tindre en compte el pes de l'error al valor de la variable mitjana, es normalitza el valor absolut, tenint en compte en valor absolut mig normalitzat.
Fórmula utilitzada:
MAE =
Utilitzat pel càlcul de precisió. Proporciona la mitja de les diferències en mitjana entre els valors pronosticats i els observats.
Fórmula utilitzada:
EMC =
Tenen com a principal objectiu trobar allò que l'usuari busca, però també cal destacar que hi ha diferències significatives entre ambdós.
Per una banda, un motor de cerca està orientat a oferir respostes concretes a les necessitats puntuals dels usuaris. Aquestes necessitats s'expressen en forma de consulta de text, i a partir d'aquestes consultes, els cercadors són capaços d'oferir continguts que estiguin relacionats amb les necessitats expressades a la consulta. D'aquesta manera, s'ajuda als usuaris a solucionar, almenys en part, el creixent problema de sobresaturació d'informació al que ens veiem sotmesos avui dia. Els cercadors més populars acostumen a oferir serveis addicionals a la cerca d'enllaços web, com per exemple la cerca de continguts audiovisuals, mapes o per exemple la traducció de texts.
D'altra banda, un sistema de recomanació s'encarrega d'obtenir informació de l'usuari de la forma més transparent possible, analitzant el seu comportament i sent capaç de detectar articles, productes o continguts que resultin interessants per l'usuari. Aquest, proporciona la informació necessària al sistema sense que pràcticament se n'adoni. Aquests sistemes poden i acostumen a utilitzar-se per enviar publicitat, i és per això que estan despertant l'interès de multitud d'empreses.
Actualment, l'evolució d'aquests sistemes va encaminada a la fusió entre cercadors i recomanadors. Per una banda, als motors de cerca, la interacció (usuari/servei), es produeix sobretot de l'usuari cap al servei. És l'usuari el que introdueix la informació a cercar, el cercador es limita a oferir el tipus d'informació seleccionada per l'usuari.
Per contra, als sistemes de recomanació, la interacció (usuari/servei), es produeix del servei cap a l'usuari en major mesura. L'usuari es registra i no introdueix més informació de forma explícita.
Es pot dir que aquests sistemes tenen poca interactivitat. La tendència actual és aprofitar els avantatges dels dos sistemes per tal d'oferir una major interactivitat a on la interacció (usuari/servei) es du a terme de forma bidireccional. Un clar exemple d'aquesta tendència és el creixent nombre de xarxes socials que hi ha hagut en els últims anys, aquestes utilitzen motors de cerca i sistemes de recomanació conjuntament. En un futur pròxim, gràcies a l'espectacular creixement d'Internet, s'espera que aquests sistemes s'acabin integrant amb els navegadors web, i que aquests alhora s'integrin amb els sistemes operatius existents per tal d'oferir un servei únic.
Alguns exemples de llocs web que utilitzen els sistemes de recomanació com a eina principal:
Aquest article té bibliografia, però no se sap quina referència verifica cada part. Podeu millorar aquest article assignant cadascuna d'aquestes obres a frases o paràgrafs concrets. |