[MÚSICA] Finalmente, hablemos sobre la clasificación multiclase. Y en particular, hablaremos sobre el quizás más simple, pero más útil enfoque para realizar clasificaciones multiclase. Se llama enfoque 1 contra todos. Digamos que aquí hay un ejemplo de clasificación multiclase. Te doy una imagen de algún objeto, tal vez es una imagen de mi perro, y la envío al clasificador para intentar predecir qué objeto está en esa imagen. O sea, la salida "y" es el objeto de la imagen. Tal vez un labrador, un golden retriever, un monitor, una cámara, etcétera. Esa es la tarea de predicción que haremos. Y tiene más de dos clases, no sólo +1 y -1, incluso tal vez tenga miles de categorías diferentes. ¿Y cómo resolvemos un problema como éste? Hay muchos enfoques para hacer eso. Hablemos sobre un simple pero muy útil enfoque, llamado uno contra todos y luego usaremos el siguiente ejemplo donde tenemos tres clases, triángulos, corazones y donas. Por supuesto, podrían haber muchas más clases , y usaremos la letra C para denotar el número total de clases. En este caso, C vale tres pero podría ser 10000 en otro caso, y seguir teniendo n puntos de datos. Y para cada dato, no sólo tendremos asociados x1, x2, etcétera, sino también la categoría "y", que sigue siendo +1 ó -1. En este caso es triángulos, corazones o donas, y lo que queremos saber es para una entrada particular x1 ¿cuál es la probabilidad que esta entrada corresponda a un triángulo, a un corazón, o a una dona? O en el caso de la imagen, si corresponde a un labrador retriever, a un golden retriever o una cámara. El modelo de 1 contra todos es sumamente simple y es exactamente lo que se espera de la frase 1 contra todos. Esto es lo que hacemos, entrenamos un clasificador para cada categoría. Por ejemplo, entrenamos uno en que la categoría +1 sean todos los triángulos, y la categoría negativa sea todo lo demás, en nuestro ejemplo corazones y donas, y lo que intentamos hacer es aprender un clasificador que separe la mayoría de triángulos de los corazones y las donas. En particular, vamos a entrenar un clasificador que denotamos P̂ de triángulo, que produce una salida de +1 si la entrada x es más probable que sea un triángulo que cualquier otra cosa. Una dona o un corazón. Luego, la forma que estimaremos la probabilidad de que una entrada x sea un triángulo, es simplemente diciendo que es P̂ de triángulo con y=+1. Así, en la imagen de la derecha, esto es lo que hará nuestro clasificador. Va a asignar Score de xi mayor que 0 en el lado de los triángulos, Score de xi menor que 0 en el lado de las donas y corazones. Lo que significa que en el lado de los triángulos, la probabilidad de que y=triángulo dada la entrada xi, y el parámetro w, será mayor que 0.5, y por otro lado, la probabilidad de que y=triángulo dada la entrada xi, y los parámetros w, será con suerte menor que 0.5. Esto nos permite tomar un punto y decir ¿es más probable que sea un triángulo a que sea una dona o un corazón? Eso no nos dice cómo hacer clasificación multiclase en general. ¿Cómo hacemos clasificación multiclase en general? Lo que haremos será aprender un modelo para cada una de las clases. Así, será 1 contra todos para cada una de las clases. Por lo que aprenderemos un 1 contra todos que intenta comparar triángulos contra donas y corazones, que se definirá como P̂ sub-triángulo, de que y=+1, dados xi y w. Aprenderemos un modelo para corazones que intenta separar corazones de triángulos y donas, que será P̂, y aprendemos diferentes conjuntos de datos, por lo que será sub-corazón. Ese es un corazón retorcido. Quiero corazones bonitos aquí. Ese está un poco más bonito, sólo un poco. [RISAS] La probabilidad que "y" sea +1 dadas la entrada xi y los parámetros w. Y por último, tenemos para donas, la probabilidad acorde al modelo de donas de que y=+1 dados xi y w. Y como última observación, vemos que las w para cada una es la más pequeña, separando las donas del resto. Las w para cada una es la diferencia más pequeña, porque se puede ver que las lineas son diferentes. En la primera es w de triángulos y la segunda es w de corazones, y la última es w de donas. Hemos entrenado estos modelos uno contra todos, y ¿qué debemos obtener? Como predicción, sólo decimos que cualquier clase que tenga la probabilidad más alta, gana. En otras palabras, si la probabilidad que la entrada sea un corazón contra todo lo demás es más alta de que el punto sea un triángulo, más alta de que el punto sea una dona, diremos que la clase es corazón. De forma más explícita, en clasificación multiclase entrenaremos a nuestro modelo para pedir cada clase. ¿cuál es la probabilidad que éste gane contra el resto? La probabilidad de y=1, dado x y estimas uno para cada clase. El único camino es obtener una entrada particular xi, por ejemplo, esta imagen de mi perro. Lo que haremos será calcular una probabilidad para cada clase y estimar una salida máxima y luego un tipo de algoritmo natural. Empezamos con la probabilidad máxima siendo cero, y ŷ siendo una categoría distinta de cero. Y vamos clase por clase, preguntando si la probabilidad de que y=1, acorde al modelo para esta clase, el modelo para Labrador retriever, el modelo para golden retriever, el modelo para cámara. ¿Es mayor que la máxima probabilidad de C hasta el momento? Si es mayor significa que la clase le está ganando, entonces decimos que ŷ es lo que sea que diga esta clase, y actualizamos la probabilidad máxima para que sea acorde a esta clase. Y mientras iteramos sobre cada una de estas, el máximo es el que ganará. Ésta es solo un tipo de algoritmo. Es exactamente lo que se esperaría. Comprobamos lo que cree cada modelo, si cree que es un perro, un Labrador retriever, un golden retriever, una cámara. Cuáles son las probabilidades, y él ha ayudado a poner a ese objeto la probabilidad más alta. Y con ese algoritmo tan simple, ahora tenemos un sistema de clasificación multiclase usando una cierta cantidad de estos clasificadores binarios. [MÚSICA]