bigdata 101 / cursillo (parte3)

15
1

Upload: andres-hurtado

Post on 17-Jan-2017

23 views

Category:

Technology


4 download

TRANSCRIPT

Page 1: BigData 101 / Cursillo (Parte3)

1

Page 2: BigData 101 / Cursillo (Parte3)

MACHINE LEARNING

• Las personas son eficientes buscando patrones, pero muy ineficientes en el procesamiento rápido

• La idea es usar técnicas que permitan computacionalmente realizar esto.• Pero se debe conocer el comportamiento de lo que se busca (una clasificación, un

dato atípico?, un clustering?)

Es diferente a DATA MINING: ésta se ocupa de desenterrar en sí las relaciones entre datos; MachineLearning requiere conocer la tarea que se va a llevar a cabo.REFERENCIAS> • https://dzone.com/articles/understanding-machine-learning

2

Page 3: BigData 101 / Cursillo (Parte3)

CLASIFICACION ALGORITMOS (SEGÚN ATRIBUTOS)• SUPERVISED LEARNING: inferir una función de salida dados unos datos de

entrenamiento que tienen la señal de salida esperada (“labeled”) CLASSIFICATION

• UNSUPERVISED LEARNING: no se dan datos de entrada; sólo se quiere realizar una organización en diferentes grupos llamados clusters. La data en cada grupo comparte propiedades similares CLUSTERING

• SEMISUPERVISED LEARNING: dada una falencia de pocos datos con “label” para entrenamiento, se usa aprendizaje no supervisado para incluir nuevas muestras a cada clase preexistente y posteriormente se usa aprendizaje supervisado para clasificar.

• REINFORCEMENT: Aprender a reaccionar de determinado ambiente

CLASIFICACION ALGORITMOS (SEGÚN OBJETIVO DEL PROBLEMA)• CLASIFICACIÓN• CLUSTERING• OUTLIER DETECTION: Permiten identificar datos significativamente diferentes o

inconsistentes con los demás del dataset.• FILTERING: buscar ítems relevantes de un pool de ítems. Normalmente se usa el

3

Page 4: BigData 101 / Cursillo (Parte3)

histórico del comportamiento de un usuario para ello.

3

Page 5: BigData 101 / Cursillo (Parte3)

CLASSIFICATION-EJEMPLOS• Si un aplicante a crédito debe ser aceptado o rechazado• Si una huella pertenece o no a un sospechoso• Si una persona tiene una enfermedad o no dadosdeterminados registros

fotográficos.

4

Page 6: BigData 101 / Cursillo (Parte3)

CLUSTERING-EJEMPLOS• El banco que quiere vender unos nuevos productos financieros a clientes basados

en su perfil.• Clasificación de documentos automática al radicar

5

Page 7: BigData 101 / Cursillo (Parte3)

OUTLIER DETECTION-EJEMPLOS• Detección de fraude• Diagnóstico médico (virus que no responden a medicamentos)• Jugadores con drogas

6

Page 8: BigData 101 / Cursillo (Parte3)

FILTERING / COLLABORATIVE, Es el mecanismo de filtrado más aplicado. Viene de la idea que si alguien ha visto que otro compra determinado producto de alguien similar, estará más inclinado a comprar ese otro producto. Se usa para sistemas de recomendación (cross-sellingopportunities)

EJEMPLOSNetflixAmazon

7

Page 9: BigData 101 / Cursillo (Parte3)

8

Page 10: BigData 101 / Cursillo (Parte3)

LINEAR REGRESSION• Busca la relación entre variables independientes y una dependiente dentro del

dataset. • Asume una relación lineal pero se puede extrapolar• Asume un grado de causación.• Normalmente se hace primero la correlación y posteriormente una regresión.• Usa el método de mínimos cuadrados para establecer la línea de mejor ajuste

OTROS EJEMPLoS• Edx-mit: Moneyball para la MBA• Cuánto stock de helados necesito según la temperatura• Ver el comportamiento del consumo de combustible según los autos para buscar

relaciones de causalidad o probar hipotesis• https://github.com/andhdo/coursera_dsc_07_regmods_project/blob/mast

er/RegressionModels_MotorTrendCars.pdf [ejemplo prueba de hipotesis]• Hay otra pagina de carros más actual; la referencian en un dataset llamado

mpg, que se traen de la pagina http://fueleconomy.gov/

9

Page 11: BigData 101 / Cursillo (Parte3)

DECISION TREES• La idea es construir una estructura de clasificación de forma tal que cada nodo

indique una decisión y mediante una estrategia greedy (voráz), se vaya seleccionando aquel o aquellos atributos que permiten dividir el dataset completo en una categoría de clasificación.

• La idea es balancear el tamaño del árbol de forma tal que no quede atado solo a los datos que aprendió sino que pueda inferir. Esto es relacionado con lo que se denomina overfitting (se alusta mucho a los samples dados pero después le queda difícil predecir nuevos samples). También lo denominan el principio OCCAM’sRAZOR (entre hipótesis que compiten, la que menos asume cosas es la que se debe elegir: la más simple explicación – William Occam, siglo 13.)

• Por esto es común usar algoritmos de poda de arboles dentro del método de aprendizaje o usando parámetros para que el árbol no crezca más allá de determinado límite.

• La estructura es diciente para un usuario de negocio, por lo cual se pueden explicar algunos pasos de decisión y validar con el negocio su lógica.

LAB• Hay un ejemplo interesante en la pagina de kaggle, se llama sobreviviente del

10

Page 12: BigData 101 / Cursillo (Parte3)

titanic, en el cual dejan un dataset de personas del titanic, y hay que predecir si determinada persona se salbava o no de morir (http://trevorstephens.com/kaggle-titanic-tutorial/r-part-1-booting-up/)

• p0303_tree_titanic.rOTROS EJEMPLOS• Hay un dataset de actividades medidas con un Smartphone y la idea es detectar el

tipo de actividad que se hace (https://www.r-bloggers.com/samsung-phone-data-analysis-project/).

• Edx-mit: Se pueden predecir rangos de precios de inmuebles dados determinados factores hedónicos (Boston Housing Data).

• Se pueden dictar algunos atributos de referencia para otorgar o no créditos a determinado perfil de usuarios.

• Se puede predecir el nivel de perdida de clientes con un árbol de decisión ( http://apuntes-r.blogspot.com.co/2014/09/predecir-perdida-de-clientes-con-arbol.html )

10

Page 13: BigData 101 / Cursillo (Parte3)

Aunque es una vieja técnica sigue siendo aplicable para algunos casos de clustering. La idea es agrupar elementos de forma tal que sean similares unos con otros.Para que el algoritmo funcione se requiere una nocion de distancia y una forma de agrupar elementos unos con otros.El algoritmo comienza con una asignación a un cluster. Posteriormetne hay un paso de reasignación. La reasignación se hace calculando la distancia al centroide de cada uno de sus miembros.

REFERENCIAS• [Ref0: el mas clarito](https://www.youtube.com/watch?v=_aWzGGNrcic)• [Ref1: a lo ultimo tiene las ilustraciones de los

pasos](https://www.youtube.com/watch?v=_aWzGGNrcic)• [Ref2: uno con cartas](https://www.youtube.com/watch?v=zHbxbb2ye3E)

Hoy en día para clustering se usan también lso dendogramas.

11

Page 14: BigData 101 / Cursillo (Parte3)

A PRIORIEs un algoritmo de algo denominado pattern identification; la idea es identificar patrones frecuentes con el fin de recomendarlos a determinados usuarios. Tambienesta técnica se denomina marketBasket. No sólo se usa en retail para ver productos asociados sino que también puede aplicarse por ejemplo a condiciones medicas entre síntomas del paciete y la respectiva droga a usar en el caso.El resultado de este algoritmo es producir reglas que relacionen ítems, por ejemplo {milk,eggs} {bread:pan}Sin embargo este conjunto de reglas debe ser pasado hacia un experto porque no necesariamente todas sirven.El algoritmo basa su construcción en que para que un ítem sea frecuente, los ítems que la componen también deben ser frecuentes en la regla, y es lo que se conoce como “soporte”.

REFERENCIAS• Una buena introducción se encuentra en kdnuggets:

http://www.kdnuggets.com/2016/04/association-rules-apriori-algorithm-

12

Page 15: BigData 101 / Cursillo (Parte3)

tutorial.html

12