en el video anterior hablamos de una mirada geométrica para comprender que es lo que está haciendo el aprendizaje supervisado y en esta mirada vimos que el conjunto de entrenamiento puede ser visto como un conjunto de puntos en un espacio las clases son, en esta visualización, los colores de los diferentes puntos y el algoritmo de aprendizaje supervisado encuentra en la superficie como separar los puntos en clases diferentes; una vez que tenemos estas superficies separadas podemos asignar una nueva imagen y el modelo entrenado puede hacer predicciones acerca de la clase de la nueva imagen, si es un gato o un perro por suerte estas predicciones son seguras pero por supuesto el modelo puede cometer errores en sus predicciones podemos pensar en la cualidad del modelo entrenado; acá el concepto importante es la generalización para comprender la generalización, debemos pensar en 2 posibles extremos en los que nuestro modelo puede fallar; en un extremo que se llama "desajuste" aparece porque la superficie que el modelo encuentra no se ajusta a la forma que en realidad divide a las 2 clases; esto sucede a veces debido a que el modelo tiene muy pocos parámetros, tiene muy pocas perillas que se puedan ajustar y entonces está limitado en la clase de superficie que puede encontrar; en el otro extremo hay algo que se llama "sobreajuste", el sobreajuste a veces aparece debido a que el modelo tiene demasiados parámetros, hay demasiadas perillas y lo que sucede es que memoriza el conjunto de datos de entrenamiento, en vez de aprender los conceptos subyacentes en el conjunto de datos de entrenamiento podemos pensar al usar estos ejemplos como 3 modelos, 1 con desajuste, el que vimos antes que tiene esta clase de curva suave y luego lo que llamamos acá el modelo sobreajustado, que en este caso tiene una curva en zigzag y podemos usar los ejemplos previos de las imágenes que usamos para entrenar al modelo, entonces esta es una nueva imagen que el modelo nunca vio antes y podemos preguntarle si puede clasificarla como perro o gato lo que podemos ver es que lo que sucede es que el modelo de subajuste, como no puede capturar muy bien la forma real de las categorías, va a, en este caso, decirnos la predicción errónea; el modelo intermedio, esperemos nos va a dar una predicción correcta y el modelo que es sobreajustado, debido a que ajusta para cada grieta que encuentra en el conjunto de datos, otra vez va a tender a equivocarse de forma más frecuente que el mejor modelo; ahora bien cuando le damos el conjunto de datos para entrenar y separamos las 2 superficies, pueden haber 2 tipos de errores, el 1er tipo de error se denomina error de entrenamiento y este es un error donde uno de los puntos del conjunto de datos de entrenamiento se clasifica en forma incorrecta y en general lo que este algoritmo de aprendizaje supervisado hace, es tratar de reducir la cantidad de esos errores, con alguna consideración; esto, como dije, se llama el error de entrenamiento; un tipo diferente de error ocurre cuando queremos ajustar algunos valores de entrada al modelo que no fueron vistos antes, como una imagen que no se usó para entrenarlo y si confunde las clasificaciones, entonces se lo denomina el error de testeo; ahora estamos testeando el modelo, ahora aprende y o bien puede cometer un error o bien no lo hace, si comete un error entonces es un error de testeo; lo que se llama en la literatura "performance generalizada" es la habilidad del algoritmo de aprendizaje de no cometer errores de testeo; que lo haga bien sobre datos que nunca vio antes la performance generalizada es tal vez el concepto central en aprendizaje de máquina captura lo que en verdad queremos, no queremos que el algoritmo del aprendizaje de máquina capture cada grieta que encuentre en el conjunto de datos de entrenamiento, para recordar el conjunto de datos de entrenamiento; lo que nos preocupa es la habilidad del algoritmo de aprendizaje de máquina para encontrar los patrones subyacentes que generalizan bien para cosas que nunca antes había visto; ahora podemos pensar en tomar un modelo y hacerlo más complicado, por ejemplo aumentando el número de parámetros y el número de perillas que podemos manipular en general el rendimiento del entrenamiento, es decir la habilidad para no cometer errores con el conjunto de datos de entrenamiento debe continuar para abajo a medida que agregamos más parámetros; podemos aprender y memorizar el conjunto de datos de entrenamiento cada vez mejor y ajustar para cada grieta en los datos; por el otro lado el rendimiento de la generalización, que es en verdad lo que nos preocupa tenderá 1ro a mejorar a medida que hacemos al modelo más complicado y al llegar a cierto punto va a empezar a declinar otra vez y ese es el punto en el que modelo se encuentra sobreajustado y al memorizar el conjunto de datos en vez de aprender a generalizar entonces cuando vemos curvas como éstas que se muestran en el lado izquierdo de abajo, nos muestran como los rendimientos del entrenamiento decrece en forma monotónica a medida que agregamos más parámetros, pero el rendimiento de las pruebas posee un mínimo y ese es el número de parámetros que es el mejor para esta situación otro concepto que pueden encontrar en la literatura y que deben conocer es el sesgo en la varianza de la descomposición, el sesgo en la varianza de la descomposición es una forma de descomponer los errores que comete el modelo y el sesgo de la varianza de la descomposición del error de entrenamiento significa que existe algún sesgo y que el sesgo viene del modelo es simplemente erróneo, lo que quiere decir que no es lo suficientemente flexible y no puede capturar las 2 superficies de separación en forma correcta la varianza proviene de que puede capturar la aleatoriedad de nuestro conjunto de datos de entrenamiento, lo que significa que por ejemplo para poder clasificar imágenes de gatos o perros, tiene que haber alguna clase de aleatoriedad en las imágenes que estamos usando como conjunto de datos de entrenamiento, no queremos memorizar el azar, porque si lo hacemos entonces el modelo va a variar demasiado para poder entrenarlo y esa es la parte de la varianza del error; ustedes se preguntarán, cómo puedo seleccionar el número de parámetros o la complejidad del modelo para evitar el sobreajuste, para que el modelo sea flexible como para capturar el patrón real en los datos, pero no tan flexible que memorice el conjunto de datos de entrenamiento, en vez de aprender los conceptos subyacentes, una técnica que se puede usar es algo que se llama "validación cruzada" o simplemente validación; en la validación tomamos nuestro conjunto de datos de entrenamiento y lo dividimos en 2 pedazos, uno de los pedazos va a ser ahora el nuevo conjunto de datos de entrenamiento, va a ser una parte más pequeña de los datos originales que conseguimos y el otro pedazo va a ser lo que llamamos el conjunto de datos de validación ahora ajustamos nuestro modelo al nuevo conjunto de datos de entrenamiento, que es un subconjunto de lo que originalmente usamos y probamos su rendimiento para ver que tan bien lo hace sobre el conjunto de datos de validación esta es una forma de estimar cuan bien lo va a hacer cuando se enfrente a datos completamente nuevos, que nunca vio antes debido a que lo estamos probando sobre datos que no fue usada para ajustar las perillas este no es un método completo de prueba y tiene algunos inconvenientes, pero es un método muy fructífero que podemos usar para que nos ayude a seleccionar el modelo con el número correcto de parámetros o a elegir entre 2 modelos alternativos y esto es muy útil para poder elegir entre estos 2 modelos alternativos