[R-es] SVM hadoop

MªLuz Morales mlzmrls en gmail.com
Vie Dic 11 11:37:50 CET 2015


ah fantástico!
Muchas gracias!!!

Un saludo.
MªLuz

El 11 de diciembre de 2015, 11:27, Jorge Ayuso Rejas <jayusor en gmail.com>
escribió:

> Si SparkR está muy bien pero todavía está en algunas cosas un poco verde.
>
> para la parte de mlib solo se pueden hacer glm:
>
> https://spark.apache.org/docs/latest/sparkr.html#machine-learning
>
> Justo di un pequeño taller de esto en las jornadas de R, aquí tienes los
> apuntes:
>
> http://jayusor.github.io/taller_SparkR/
>
> Un saludo.
>
> El 11 de diciembre de 2015, 10:57, MªLuz Morales <mlzmrls en gmail.com>
> escribió:
>
>> Hola Jorge,
>> muchas gracias por tu esquema. Mi caso sería el primero, el más
>> complicado. Por lo que he leído, svm no es fácil de implementar, aunque he
>> visto algo(muy poco) de implementación svm en hadoop con R. Yo he
>> encontrado que hay algo llamado SparkR, mediante lo cual puedes usar la
>> librería mllib, que tiene svm y ejecutarlo directamente desde R y corre en
>> paralelo mediante Spark. Espero haberlo entendido bien. También esto puede
>> estar integrado con hadoop. No se si realmente se podrá hacer un svm o
>> tendrá limitaciones...
>>
>> Un saludo
>> MªLuz
>>
>> El 11 de diciembre de 2015, 9:49, Jorge Ayuso Rejas <jayusor en gmail.com>
>> escribió:
>>
>>> Hola Mª Luz,
>>>
>>> Te cuento un poco mi visión:
>>>
>>> Lo primero de todo es tener claro qué quiero hacer exactamente en
>>> paralelo, se me ocurren 3 escenarios:
>>>
>>> (1)  Aplicar un modelo en este caso SVM sobre unos datos muy grandes y
>>> por eso necesito hadoop/spark
>>> (2)  Realizar muchos modelos SVM sobre datos pequeños (por ejemplo uno
>>> por usuario)  y por eso necesito hadoop/spark para parelilizar estos
>>> procesos en muchas máquinas y acabar en un tiempo finito.
>>> (3)  Con un modelo ya realizado en local sobre una muestra quiero hacer
>>> predicciones "predict" sobre muchos datos y por eso necestio hadoop/spark
>>> para hacer las predicciones ne paralelo.
>>>
>>>
>>> Posibles soluciones:
>>>
>>> (1) Lo más complicado de los 3 escenarios. Lo primero de todo es pensar
>>> si con una muestra suficientemente grande y un único ordenador potente
>>> (32gb 64gb?) te puede valer. Si es el caso puedes usar R y cualquier
>>> paquete que incluya SVM. Si esto no te vale y quieres hacerlo sobre el
>>> total de los datos (En mi opinión esto no garantiza que vayas a conseguir
>>> mejores resultados..). Por lo que estuve investigando (si me equivoco que
>>> alguien me corrija!) los SVM no son de lo mejorcito para paralelizar, Spark
>>> como comentó Carlos tiene implementado SVM lineal pero hoy por hoy no lo
>>> podrás ejecutar desde R (si desde python). Otras opciones que te recomiendo
>>> es probar con otros algoritmos, mira por ejemplo h2o (http://h2o.ai/)
>>>
>>>
>>> (2) Con esto te vale perfectamente RHADOOP y cualquier svm implementado
>>> en R ya que cada svm es 'pequeño' solo que tienes que hacer muchos
>>>
>>> (3) Lo mismo que (2) puedes te vale con RHADOOP y hacer `predict` en
>>> paralelo.
>>>
>>>
>>> Un saludo,
>>> Jorge A.
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> El 11 de diciembre de 2015, 8:49, MªLuz Morales <mlzmrls en gmail.com>
>>> escribió:
>>>
>>>> Hola,
>>>> cuando hablas de la opción Rstudio en Amazon, te refieres mediante
>>>> hadoop?
>>>> (esa es la idea que tengo, usar R con hadoop en amazon, pero necesito
>>>> que
>>>> el algoritmo svm sea paralelizable...
>>>>
>>>> Esto otro que mencionas:
>>>> http://www.teraproc.com/front-page-posts/r-on-demand/
>>>> que entorno de paralelización usa? conozco hadoop y spark,
>>>>
>>>>
>>>> Gracias
>>>> Un saludo
>>>>
>>>>
>>>> El 10 de diciembre de 2015, 16:03, Carlos Ortega <
>>>> cof en qualityexcellence.es>
>>>> escribió:
>>>>
>>>> > Hola,
>>>> >
>>>> > Puedes poner un RStudio en Amazon, poner "caret" y a correr....
>>>> > No sé si tendrás suficiente con lo que te pueda ofrecer Amazon para tu
>>>> > problema... creo que sí...  ;-)....
>>>> >
>>>> > O directamente hacerlo aquí, que toda esta instalación ya la tienen
>>>> hecha:
>>>> >
>>>> > http://www.teraproc.com/front-page-posts/r-on-demand/
>>>> >
>>>> > Gracias,
>>>> > Carlos.
>>>> >
>>>> > El 10 de diciembre de 2015, 14:43, MªLuz Morales <mlzmrls en gmail.com>
>>>> > escribió:
>>>> >
>>>> >> Hola,
>>>> >>
>>>> >> gracias por tu sugerencia, aunque creo que no será suficiente porque
>>>> mi
>>>> >> objetivo es trabajar con big data
>>>> >>
>>>> >> El 10 de diciembre de 2015, 13:23, Carlos Ortega <
>>>> >> cof en qualityexcellence.es> escribió:
>>>> >>
>>>> >>> Hola,
>>>> >>>
>>>> >>> ¿Y no te valdría el ejecutar tu código con "caret" y activar la
>>>> opción
>>>> >>> de paralelizar?.
>>>> >>> El escenario "caret + paralelización + svm" funciona sin problemas.
>>>> >>>
>>>> >>> Adjunto una captura de pantalla del libro de "Kuhn" (Applied
>>>> Predictive
>>>> >>> Modeling) con los tiempos de ejecución que se obtienen al ejecutar
>>>> >>> diferentes modelos (SVM, RF, LDA) sobre un mismo conjunto de datos y
>>>> >>> utiilzando diferente número de "cores".
>>>> >>>
>>>> >>> Gracias,
>>>> >>> Carlos Ortega
>>>> >>> www.qualityexcellence.es
>>>> >>>
>>>> >>> El 10 de diciembre de 2015, 11:56, MªLuz Morales <mlzmrls en gmail.com
>>>> >
>>>> >>> escribió:
>>>> >>>
>>>> >>>> Hola,
>>>> >>>> gracias por vuestras respuestas anteriores.  Son interesantes
>>>> aunque me
>>>> >>>> han
>>>> >>>> surgido algunas dudas. Por ejemplo, con respecto al paquete e1071.
>>>> En
>>>> >>>> este
>>>> >>>> enlace parece que si lo usan para hacer máquina de soporte vector
>>>> en
>>>> >>>> hadoop.
>>>> >>>>
>>>> >>>>
>>>> http://stackoverflow.com/questions/17731261/r-hadoop-rmr2-svm-model-conver-result-list-class-to-original-class-sv?rq=1
>>>> >>>>
>>>> >>>> Carlos, por qué decías que no correrán en paralelo los svm del
>>>> paquete
>>>> >>>> e1071??
>>>> >>>>
>>>> >>>> Gracias
>>>> >>>> Un saludo
>>>> >>>> MªLuz
>>>> >>>>
>>>> >>>> El 10 de diciembre de 2015, 2:35, Javier Marcuzzi <
>>>> >>>> javier.ruben.marcuzzi en gmail.com> escribió:
>>>> >>>>
>>>> >>>> > Estimados
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> > Un día leí algo en el siguiente hipervínculo, pero nunca lo use.
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>>
>>>> http://blog.revolutionanalytics.com/2015/06/using-hadoop-with-r-it-depends.html
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> > Javier Rubén Marcuzzi
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> > *De: *Carlos J. Gil Bellosta
>>>> >>>> > *Enviado: *miércoles, 9 de diciembre de 2015 14:33
>>>> >>>> > *Para: *MªLuz Morales
>>>> >>>> > *CC: *r-help-es
>>>> >>>> > *Asunto: *Re: [R-es] SVM hadoop
>>>> >>>>
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> > No, no correrán en paralelo si usas los SVM de paquetes como
>>>> e1071.
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> > No obstante, tienes, por un lado, los trucos habituales para
>>>> hacer
>>>> >>>> algo
>>>> >>>> >
>>>> >>>> > "parecido" a SVM o "basado" en SVM pero que no sea SVM. Si es
>>>> que eso
>>>> >>>> te
>>>> >>>> >
>>>> >>>> > vale.
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> > Puedes probar a hacerlo con mllib (sobre Spark), como aquí
>>>> >>>> >
>>>> >>>> > <
>>>> >>>> >
>>>> >>>>
>>>> http://spark.apache.org/docs/latest/mllib-linear-methods.html#linear-support-vector-machines-svms
>>>> >>>> > >.
>>>> >>>> >
>>>> >>>> > ¡Pero no lo he probado nunca!
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> > Un saludo,
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> > Carlos J. Gil Bellosta
>>>> >>>> >
>>>> >>>> > http://www.datanalytics.com
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> > El 9 de diciembre de 2015, 13:15, MªLuz Morales <
>>>> mlzmrls en gmail.com>
>>>> >>>> >
>>>> >>>> > escribió:
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> > > Buenos días,
>>>> >>>> >
>>>> >>>> > >
>>>> >>>> >
>>>> >>>> > > alguien sabe si hay alguna manera de implementar una máquina de
>>>> >>>> soporte
>>>> >>>> >
>>>> >>>> > > vectorial (svm) con R-hadoop??
>>>> >>>> >
>>>> >>>> > >
>>>> >>>> >
>>>> >>>> > > Mi interés es hacer procesamiento big data con svm. Se que en
>>>> R,
>>>> >>>> existen
>>>> >>>> >
>>>> >>>> > > los paquetes {RtextTools} y {e1071} que permiten hacer svm.
>>>> Pero no
>>>> >>>> estoy
>>>> >>>> >
>>>> >>>> > > segura de que el algoritmo sea paralelizable, es decir, que
>>>> pueda
>>>> >>>> correr
>>>> >>>> > en
>>>> >>>> >
>>>> >>>> > > paralelo a través de la plataforma R-hadoop.
>>>> >>>> >
>>>> >>>> > >
>>>> >>>> >
>>>> >>>> > > Muchas gracias
>>>> >>>> >
>>>> >>>> > > Un saludo
>>>> >>>> >
>>>> >>>> > > MªLuz Morales
>>>> >>>> >
>>>> >>>> > >
>>>> >>>> >
>>>> >>>> > >         [[alternative HTML version deleted]]
>>>> >>>> >
>>>> >>>> > >
>>>> >>>> >
>>>> >>>> > > _______________________________________________
>>>> >>>> >
>>>> >>>> > > R-help-es mailing list
>>>> >>>> >
>>>> >>>> > > R-help-es en r-project.org
>>>> >>>> >
>>>> >>>> > > https://stat.ethz.ch/mailman/listinfo/r-help-es
>>>> >>>> >
>>>> >>>> > >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >                 [[alternative HTML version deleted]]
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> > _______________________________________________
>>>> >>>> >
>>>> >>>> > R-help-es mailing list
>>>> >>>> >
>>>> >>>> > R-help-es en r-project.org
>>>> >>>> >
>>>> >>>> > https://stat.ethz.ch/mailman/listinfo/r-help-es
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>> >
>>>> >>>>
>>>> >>>>         [[alternative HTML version deleted]]
>>>> >>>>
>>>> >>>> _______________________________________________
>>>> >>>> R-help-es mailing list
>>>> >>>> R-help-es en r-project.org
>>>> >>>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>>> >>>>
>>>> >>>
>>>> >>>
>>>> >>>
>>>> >>> --
>>>> >>> Saludos,
>>>> >>> Carlos Ortega
>>>> >>> www.qualityexcellence.es
>>>> >>>
>>>> >>
>>>> >>
>>>> >
>>>> >
>>>> > --
>>>> > Saludos,
>>>> > Carlos Ortega
>>>> > www.qualityexcellence.es
>>>> >
>>>>
>>>>         [[alternative HTML version deleted]]
>>>>
>>>> _______________________________________________
>>>> R-help-es mailing list
>>>> R-help-es en r-project.org
>>>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>>>
>>>
>>>
>>>
>>> --
>>> Jorge Ayuso Rejas
>>>
>>
>>
>
>
> --
> Jorge Ayuso Rejas
>

	[[alternative HTML version deleted]]



Más información sobre la lista de distribución R-help-es