[MÚSICA] Bienvenidos a un nuevo video de nuestro curso Minería de datos. En este video veremos algunas variantes importantes en el clasificador de vecinos cercanos. La principal variante al método de vecinos cercanos que vamos a explorar en este video es el uso de distintas medidas de distancia. Lo que nos motiva esto es que dependiendo del tipo de variables que tenemos para describir los datos tendremos que cambiar nuestra métrica. Como vimos anteriormente, los datos son en general representados por un vector de descriptores. En general, típicamente los valores que pueden tomar las distintas columnas en este vector son de naturaleza muy distinta. Por ejemplo, en el caso de una base de datos de clientes la variable profesión toma valores muy distintos a los que toma la variable monto de gasto mensual. De hecho, una es categórica y la otra es numérica. Por ejemplo, si representamos a nuestros clientes con las variables profesión, rango de sueldo, monto de gasto mensual y ubicación de la tienda, ¿cómo calculamos la distancia entre los clientes Juan y María considerando esas variables? Lo primero es notar que siempre en el cálculo de la distancia vamos a ir comparando las variables correspondientes, es decir nunca calcularemos diferencias entre variables distintas. En este ejemplo, nuestra función de distancia debería ir acumulando de alguna forma las diferencias entre cada una de las variables en cuestión. Veamos primero cómo comparar dos objetos usando la variable ubicación. En este caso esa variable corresponde a un par de números continuos. Latitud y longitud. Lo más natural es usar la distancia euclidiana o de Manhattan para calcular la distancia entre dos pares numéricos. Usando la distancia euclidiana, tendremos que calcular la raíz cuadrada de la suma de las diferencias de cada coordenada de nuestro par de números al cuadrado. Así en este ejemplo obtenemos aproximadamente una distancia de 88.079. Notar que si quisiéramos medir la distancia entre dos datos que están representados en D dimensiones simplemente es la misma fórmula extendiendo la resta para cada una de las dimensiones de los datos. También podemos calcular la distancia usando la ubicación a través de la distancia de Manhattan, que simplemente corresponde a la suma de los valores absolutos de las diferencias de cada coordenada. Usando entonces Manhattan, tendríamos que la distancia entre ambos clientes sería de aproximadamente 124.07. Pasemos ahora a otro tipo de variables. Siguiendo por el ejemplo de los clientes, la variable género puede tomar dos valores posibles, femenino y masculimo. Las variables que pueden tomar dos valores son conocidas como variables binarias, y generalmente las transformamos para que tomen los valores 0 o 1. En este caso en particular, podríamos asignar el valor, al valor femenino el 1 y al valor masculino el 0. La distancia de Hamming es la más común para las variables binarias. Es muy sencilla, simplemente compara los números binarios retornando 1 si es que son distintos o 0 si es que son iguales. En nuestro ejemplo de clientes, si tenemos a un hombre y a una mujer, la distancia entre ellos considerando la variable género sería igual a 1. you que la variable género del hombre vale 0 y la variable género de la mujer vale 1. De forma similar, si tenemos a dos mujeres, la distancia entre ellas considerando la variable género sería 0 you que ambas tienen un valor 1 en esa variable. Si tuviéramos varias variables binarias, tendríamos que agrupar todas las variables y calcular la distancia de Hamming entre los conjuntos de variables. Esta extensión es bastante simple, lo único que debemos hacer es sumar el número de veces en que las variables binarias son distintas. Por ejemplo, en la figura marcamos con rojo todos los casos en que las variables binarias son distintas. Así la distancia de Hamming entre los vectores que vemos es igual a 3. Ahora consideremos que las variables binarias son género si es trabajador independiente o no y si tiene hijos o no. En la diapositiva vemos dos clientes distintos, una mujer que no es trabajadora independiente y que sí tiene hijos y un hombre que sí es trabajador independiente y que no tiene hijos. Las codificaciones para ambos clientes serían 101 y 010 respectivamente. La distancia de Hamming entre ambos clientes sería igual a 3 you que son distintas las tres variables binarias. Algo que se usa bastante en la práctica es dividir la cantidad de casos en que las variables binarias son distintas por el total de variables binarias de tal forma de mantener números pequeños en el resultado de la distancia. En el mismo ejemplo, en vez de usar 3 como distancia entre los vectores binarios, usamos 3 dividido por 7. La razón por la cual queremos mantener números pequeños en las distancias es porque si un grupo de variables toma valores de distancia muy grandes estas gobernarían la distancia total a la hora de juntar las distancias entre los distintos tipos de variables. Algo que también se usa para visualizar la distancia entre dos vectores de variables binarias es una matriz que nos muestra el número de veces que ha ocurrido cada una de las combinaciones posibles de valores binarios. Vemos en colores las posibles combinaciones en la matriz, se cuenta el número de veces que ocurre cada combinación. Por ejemplo, la combinación 10 ocurre dos veces, las veo marcadas con rojo en los vectores binarios. Otro tipo interesante de variables son las variables categóricas. Estas variables en general pueden tomar varios valores o categorías, además estas categorías no tienen un orden definido entre sí, por ejemplo la variable profesión. Otro ejemplo puede ser la variable deporte que practica, los valores posibles que tomaría esta variable son fútbol, tenis, basquetbol, natación, etcétera. Veamos un ejemplo de cómo calcular la distancia entre dos objetos usando un conjunto de variables categóricas. En este caso nuestros objetos son Pedro y Sofía descritos a través de tres variables categóricas, profesión, ciudad y deporte que practican. Para obtener la distancia simplemente contamos el número de casos en que las variables son distintas dividido por el total de las variables categóricas. Aquí son distintas en los casos de las variables profesión y ciudad. La distancia entre Pedro y Sofía sería entonces 2 dividido por 3. Una consideración importante es que debemos preocuparnos de la cantidad de valores posibles que puede tomar una variable categórica, you que mientras más valores la variable puede tomar serán menos probables que distintos objetos tengan el mismo valor en esa variable. Por ejemplo, la variable profesión puede tener muchos más valores posibles que la variable estado civil. Eso deberíamos considerarlo de alguna forma. Una solución posible es usar pesos en la distancia, pesos altos asociados a las variables con menos valores posibles y pesos bajos asociados a las variables con más valores posibles. De tal forma de que cada vez que dos objetos sean distintos, en una variable categórica que toma muchos valores, esto no afecte tanto en el cálculo de la distancia. Por ejemplo, si tenemos 100 posibles profesiones y 4 posibles estados civiles, en vez de sumar 1 cada vez que los objetos sean distintos en una variable, sumarmos un cuarto y 1 dividido por 100 respectivamente. Otro tipo de variable que aparecen mucho en la práctica son las variables ordinales. Estas variables son como las variables categóricas pero la principal diferencia es que los valores posibles que pueden tomar tienen un orden. Por ejemplo, el rango de sueldo. Vemos en este caso que existen 5 posibles rango de sueldo. Pero naturalmente el rango menor de 200 está por debajo del rango entre 200 y 500. La forma más común de tratar estas variables es mapeando desde el valor mínimo al máximo al intervalo 0 1. De tal forma de generar números asociados a cada rango posible. Así el rango menor que 200 correspondería al 0, luego el rango entre 200 y 500 correspondería a 0,25 y así sucesivamente. Luego de esta transformación, simplemente podemos usar distancia euclidiana para estas variables. Veamos un ejemplo concreto. Supongamos que queremos calcular la distancia entre Juan y María según las variables posición en la empresa y rango de sueldo. Los valores mapeados al rango 0 1 están entre paréntesis. Primero mapeamos cada uno de los valores al valor que corresponde en el rango 0 1. Ahora simplemente usamos distancia euclidiana para obtener la distancia final entre Juan y María. En este caso nos da 1.03. En este video aprendimos a calcular distancias para variables numéricas, binarias, categóricas y ordinales. Dado que en la realidad nos topamos con todas estas variables a la hora de hacer clasificación con vecinos cercanos. Es necesario definir con mucho cuidado nuestra medida de distancia. [AUDIO_EN_BLANCO]