máquinasde factorización { factorization machines (fm)...

56
Máquinas de Factorización { Factorization Machines (FM) } Denis Parra Sistemas Recomendadores IIC 3633

Upload: others

Post on 02-Sep-2019

1 views

Category:

Documents


0 download

TRANSCRIPT

Máquinas deFactorización{FactorizationMachines(FM)}

DenisParra

Sistemas Recomendadores

IIC3633

Máquinas deFactorización (2010)

• Inspiradas enSVM,permiten agregar unnúmeroarbitrario defeatures(user,item,contexto)perofuncionan bien con“sparsedata”alincorporarvariableslatentes factorizadas (inspiradas enFactorización Matricial).Nosenecesitan vectoresdesoporte para optimizar elmodelo.

• Generalizan diversos métodos defactorizaciónmatricial.

• Disminuyen lacomplejidad deaprendizaje delmodelo depredicción respecto demétodosanteriores.

Motivación deFM

• Cada tarea derecomendación (implicitfeedback,agregar tiempo,incorporar contexto)requiererediseño delmodelo deoptimización yre-implementación delalgoritmo deinferencia

• Loidealsería usar alguna herramienta comolibSVM,Weka,…agregar losvectores defeatures

• Pero para manejar datos tandispersos,sepodrían mantener las factorizaciones!

Ejemplo

• Supongamos lossiguientes usuarios,itemsytransacciones

Representación Tradicional

http://dparra.sitios.ing.uc.cl/classes/recsys-2016-2/clase8_factorizacion_matricial.pdf

Otros ModelosEjemplos deDatos:Ejemplos deModelos:

Modelos deFactorización Secuencial

Modelos deFactorización

• Ventaja:– Permiten estimar interacciones entredos(omás)variablesincluso si lainteracción noesobservadaexplícitamente.

• Desventajas:–Modelos específicos paracadaproblema

– Algoritmosdeaprendizajeeimplementacionesestándiseñadosparamodelosindividuales

Datos yRepresentación deVariables

• Muchos modelos deMLusan vectores devalores reales como input,loque permiterepresentar,por ejemplo:– Cualquier número devariables

– Variablescategóricas->dummy coding

• Conestemodeloestándarpodemosusarregresión,SVMs,etc.

Modelo deRegresión Lineal

• Equivale aunpolinomio degrado 1• Queremos aprender w0 ylosp parámetros wj• Nologra capturar interacciones latentes comolafactorización matricial

• O(p)parámetros enelmodelo.

Modelo coninteracciones (d=2)

• Regresión Polinomial

• O(p2)parámetros enelmodelo

Representación MatricialcomoVectordeFeatures

Representación MatrizcomoVectordeFeatures

Aplicación deRegresión

• Regresión Lineal:

• RegresiónPolinomial:

• FactorizaciónMatricial:

Problemas conRegresión Tradicional

• Regresión linealnoconsiderainteracionesusuario-item :poderdeexpresiónmuybajo

• RegresiónPolinomial incluyeinteraccionesdeparesperonosepuedeestimarporque– n<<p2 :nro.decasosmuchomenorqueelnúmerodeparámetros.

– Regresiónpolinomial nopuedegeneralizarparacualquierefectodeparesdevariables.

Modelo coninteracción d=2yfactoreslatentes vs.Regresión polinomial

• MáquinadeFactorización

• RegresiónPolinomial

F.M.dadounmodelo cond=2

Sesgo (bias) global

Coeficientesde regresiónde la j-ésimavariable

Interacción de features

Factorización(variables latentes)

F.M.dadounmodelo cond=3

• Modelo

• Parámetros

Ensuma

• FMsusan como entradadatos numéricosreales

• FMs incluyeninteraccionesentrevariablescomolaregresiónpolinomial

• Losparámetrosdelmodeloparalasinteraccionessonfactorizados

• NúmerodeparámetrosesO(kp)vs.O(p2)enregresiónpolinomial.

Ejemplos

A. Dosvariablescategóricas

B. Tresvariablescategóricas

C. Dosvariablescategóricasytiempocomopredictorcontinuo

D. Dosvariablescategóricasytiempodiscretizadoenbins

E. SVD++

F. Factorized Personalized Markov Chains (FPMC)

A.Dosvariablescategóricas

• Así,modelocorrespondeaMFconbiases

B.Tresvariablescategóricas

• Prediccióndetripletas RDFconFM

• Equivalente aPITF(recomendación detags)

C.Dosvariablescategóricasytiempocomopredictorcontinuo

• Modelo corresponde a:

D.Dosvariablescategóricasytiempodiscretizado enbins

• Modelo corresponde a:

E.SVD++

• Modelo idéntico a:

F.FPMC

• Equivalente a:

Comparación conotros modelos

• EnelpaperRendle,S.(2010,December).Factorizationmachines,semuestra comodesde FMsepuede derivar:–MatrixFactorization

– SVD++– Pair-wiseInteractionTag-Factorization(PITF)– FactorizedPersonalizedMarkovChains(FPMC)

Propiedades• Expresividad*(cualquier matrixsemi-definidapositiva)

• Multilinearidad**

• Complexity

*,**ver detalles enRendle,S.(2010,December).Factorizationmachines.

O(kn^2)->O(kn)Ydebido adispersión delosdatos,O(kmD)

Complejidad

Número deparámetros :

1 + p + k*plinealrespectoaltamañodelinputyeltamañodelosfactoreslatentes

Reducción delmodelo

Aprendizaje

• Regularización L2pararegresiónyclasificacion– SGD– ALS–MCMC

• RankingregularizadoL2TodoslosalgoritmostienentiempodeejecuciónO(kNz(x)i)dondei:iteraciones,Nz(X):elementosno-cero,yk:nro.defactoreslatentes.

Software:LibFM

• LibFM implementa FMs–Modelos:FMsde2doorden

– Aprendizaje:SGD,ALS,MCMC

– Clasificación yregresión– Formatodedatos:sparse (LIBSVM,LIBLINEAR,SVMlight,etc.)

– Soportaagrupacióndevariables– OpenSource:GPLv3

www.libfm.org

Predicción deratings(Context-aware)

NetflixPrize

Predicción derelacionesenRedes

KDDCup 2012:track1

Predicción deClicks

KDDCup 2012:Track2

Predecir Resultados deEstudiantes

Algunos Resultados

Algunos Resultados II

UsingLibfm

• Llamada 1:

• Llamada 2:

Ejemplo conlibFMexe

• WrapperdeLibFM paraR

Conclusiones

• FMscombinand regresión lineal/polinomialconmodelosdefactorización.

• Interacción entrevariablesseaprendenvíarepresentaciónlow-rank.

• Es posible laestimación deobservacionesnoobservadas.

• Sepueden calcular eficientemente ytienenuna buena calidad depredicción.

Referencias

• Rendle,S.(2010)“FactorizationMachines”(https://www.ismll.uni-hildesheim.de/pub/pdfs/Rendle2010FM.pdf)

• http://www.slideshare.net/hongliangjie1/libfm

• http://www.slideshare.net/SessionsEvents/steffen-rendle-research-scientist-google-at-mlconf-sf

• http://www.slideshare.net/0x001/intro-to-factorization-machines?next_slideshow=1

Proyecto Finalcurso RecSys 2014

• Trade-offsBetweenImplicitFeedbackandContext-AwareRecommendation– SantiagoLarraín,PUCChile– Nicolás Risso,PUCChile

• Moviecity Dataset

Proyecto Finalcurso RecSys 2014• Moviecity

DatasetMoviecity

DatasetMovieCity II

Métodos I

• HuandKoren ~ImplicitFeedback

Métodos II

• Factorización Tensorial (usando HOSVD)

Métodos III

• FactorizationMachines,Rendle (2010)

Métricas deEvaluación

• RMSE:Diferencia detiempo entreprogramavisto ylopredicho

Comparación delosModelos

Conclusiones

• ErrordeMAEentre40%y70%:diferenciapromedio entreeltiempo predicho yeltiempo que elusuario realmente vio.Mejormétodo es FactorizationMachines,indicandoque para esta tarea elcontexto ayuda.

• Ranking:elmejor método es ImplicitFeedbackrecommender.Extrañamente,estoindica que para rankear,elmejor método norequiere contexto.