Sei sulla pagina 1di 2

** Video youtube **

INTRODUCTION TO DATA ANALYSIS - MACHINE LEARNING

Machine learning consiste en:


-clasificación: se conocen las clases de antemano. Son discretas
-clustering: no se conocen las clases.
-regresión: se conocen las clases de antemano. Son continuas

Un dataset está compuesto por:


Column = feature
Row = instance (cada fila debe ser independiente de la otra)

Learning:
-Unsupervised = exploratory. Cuando no se sabe si hay patrones interesantes sobre
un dataset y se quiere analizar.
-Supervised = predictive. Cuando se tiene una hipótesis y se trata de probarla. En
general, cuando faltan datos de un dataset, con este aprendizaje supervisado es
posible completarlo.

Cluster: región de alta densidad separada por una región de baja densidad
Densidad: número de puntos por medida de distancia.

Standarization: Tener los dos ejes para calcular los clusters en la misma escala.
Para estandarizar:
Punto normalizado = (punto - media)/desviación standard

ALGORITMOS SUPERVISADOS
Se tienen 'labels' para los datos, basados en alguna determinada propiedad. La idea
es conocer el 'label' de un nuevo dato a agregar al dataset.

K-Means: Para clusterizar


K=nro de clústers
Hay que elegir el número K de antemano.

Centroids: puntos elegidos al azar para usar como centros de clústers

Silhouette coeficient: Criterio para saber cuál es el número natural de clústers a


utilizar como solución.
-se toma el punto y se calcula el ratio de la distancia promedio de ese punto a
todos los puntos dentro del clúster
-se lo divide por la distancia al punto más cercano que no esté dentro del clúster

DBSCAN: Para clusterizar


Hay que elegir parámetros para poder utilizarlo.

Label: Es un significado/etiqueta que se le asocia a cada clúster. (=categoría)


Para los algoritmos no supervisados, no hay labels.

Se denomina 'label' a lo que se quiere predecir (clasificación-predicción de


categoría, regresión-predicción de atributo numérico).

No supervisado: Se toman los datos y se le asignan 'labels'.

Supervisado: Se toman los datos y los labels, se agregan nuevos datos y se trata de
predecir qué label le corresponderá a cada uno.
bias VS variance = para encontrar el K adecuado

Dimensionality Reduction: Se toman N features y se lo reduce a M features,


eliminando información que no es tan útil (es como combinar varios features en uno
solo).

Principal component analysis (PCA): Para hacer 'dimensionality reduction'. Se toma


el vector de más varianza y se eliminan los demás datos que no aportan nada.

Algunos algoritmos de clasificación:


-K-Nearest-neighbors classifier: Para cada punto, toma un contorno circular y
decide el label del punto basado en los labels de los puntos que se encuentran
dentro del contorno. Contras del algoritmo: hay que hacer muchísimas comparaciones
por cada punto. Se suelen usar heurísticas para evitar scannear todos los datos por
cada punto, porque es muy costoso computacionalmente.

-Support Vector Machine (SVM): Se dibuja una línea (hiperplano) que divida los
puntos (instancias). La línea óptima se llama 'maximum margin classifier' y es la
que tiene la máxima distancia entre ambos grupos de puntos. Para cada test
instance, sólo se evalúa si se encuentra de un lado o del otro lado de la línea. La
limitación es que los datos no son "separables" linealmente. La idea es que la
línea divisoria no sea necesariamente recta. Tampoco sirven cuando hay más de una
clasificacion (clases) de datos, ya que sólo puede dividir los datos en 2 grupos.
Es muy costoso computacionalmente entrenar un clasificador SVM.
Es conveniente aplicar SVM cuando:
-no hay muchos datos para entrenar el clasificador
-los datos tienen una interpretación geométrica (por ejemplo, procesar imágenes)
-se necesita mucha precisión

-Decision trees: El esfuerzo está en reconocer los patrones de decisión que van a
abrir las ramas del árbol. Se necesita encontrar los features correctos. Existen
técnicas para seleccionar o construir features.

-Logistic Regression: Es un método de clasificación, no de regresión. Calcula el


logaritmo del ratio de un evento positivo y un evento negativo.
Se suele utilizar cuando:
-el problema utiliza datos probabilísticos
-no se tienen muchos features, el modelo va a indicar qué features son importantes
-no se necesita mucha precisión

Algunos algoritmos de clustering:


-K-means: Se toman centros al azar de cada clúster. Estos centros se van a
transformar en los "centros de masa" de cada clúster.
Se suele utilizar cuando:
-se tienen muchos features: se clusterizan y se termina aplicando un clasificador
sobre los features resultantes de la clusterización

Potrebbero piacerti anche