‫Entonces, hemos visto cómo podemos evaluar el rendimiento de nuestro modelo o al menos el rendimiento inicial
‫en algo como la precisión de época y la pérdida de época y ver cómo podemos rastrear diferentes experimentos.
‫Pero esto es solo en los conjuntos de validación y entrenamiento de modelos, y realmente solo en lo que el modelo ha aprendido en
‫el conjunto de datos.
‫¿Cuáles son otras formas realmente buenas de evaluar?
‫Lo que nuestro modelo ha aprendido es a usarlo para lo que lo estamos construyendo, si estamos construyendo una visión de perro.
‫Y siempre debemos tener en cuenta cuál es el objetivo final con cualquier proyecto en el que estemos trabajando.
‫Estamos desarrollando la visión del perro para ver si podemos crear un modelo de aprendizaje automático que pueda identificar a un perro en una
‫foto.
‫Entonces va a hacer algunas predicciones, dando una foto.
‫Así que hagámoslo.
‫Si volvemos a echar un vistazo a nuestro flujo de trabajo donde ajustamos el modelo a los datos.
‫Ahora es el momento de hacer una predicción.
‫Así que estamos todavía en el paso tres.
‫Hemos hecho un poquito.
‫Hemos tocado el paso cuatro.
‫Y recuerde, estos no son pasos realmente lineales.
‫Así que estos son solo los acabo de poner aquí porque es fácil de entender así.
‫Pero recuerde, no son necesariamente lineales, por lo que puede hacerlos fuera de orden.
‫Volvemos, haremos un pequeño rumbo, haciendo y evaluando predicciones usando un modelo entrenado.
‫Es hora de convertirlo en turno de rebajas y entrar.
‫está bien.
‫Por lo tanto, hacer predicciones con un modelo entrenado es muy similar a cómo lo hicimos en el préstamo
‫de Saikat, por lo que podemos llamar a la función de predicción y pasarle datos en el mismo formato en el que se entrenó el modelo.
‫Eso es lo importante.
‫Primero veamos el código y luego discutiremos lo que está sucediendo.
‫Así que haga predicciones sobre los datos de validación.
‫Así que recuerde, creamos un lote de datos de validación.
‫Ahora, esto no se usó para entrenar.
‫Ese es el punto importante.
‫Si volvemos a nuestros tres conjuntos, la forma en que evaluamos un modelo es porque se entrena
‫en el conjunto de entrenamiento, queremos comprobarlo, sus resultados iniciales en el conjunto de validación y luego ambos exámenes.
‫Entonces, el examen de práctica y el examen final son conjuntos de datos que el modelo no ha visto antes.
‫Así que volvemos, vayamos al modelo o en realidad lo guardaremos en predicciones, predicciones, modelo igual.
‫No prediga los datos de Vall porque recordemos qué son los datos válidos.
‫Datos válidos.
‫Conjunto de datos por lotes.
‫Aquí vamos.
‫Tenemos algunas imágenes y algunas etiquetas, por lo que sabemos cuáles son las verdaderas etiquetas de la validación.
‫Entonces, cuando pasamos este lote, el conjunto de datos de mañana no predice debido a la naturaleza de la función de predicción.
‫Solo verá las imágenes en datos virtuales y luego hará predicciones basadas en esas imágenes.
‫Entonces, lo que podemos hacer es comparar esas predicciones que estarán en forma de etiquetas.
‫Bueno no exactamente.
‫Veremos cómo se ven en un segundo.
‫Podemos comparar las predicciones del modelo que hace en las imágenes de validación con las etiquetas reales de las
‫imágenes de validación.
‫Ahora, eso fue mucho hablar.
‫Es mucho mejor ver esto en código, así que detallado solo dirá, oye, cuando estés haciendo predicciones,
‫muéstrame tu progreso.
‫Bueno, eso fue muy rápido porque tenemos doscientas imágenes, así que esa es la belleza de trabajar
‫en una GPU.
‫Las predicciones también son muy rápidas.
‫Y eso solo tomó unos siete milisegundos.
‫Así que ni siquiera un segundo entero.
‫Y si no configuramos detallado para que sea igual a uno, no obtendríamos la salida de esta pequeña barra de progreso.
‫Puede que estés mirando esto y pienses, ¿qué está pasando aquí?
‫Muchos números diferentes.
‫Entonces, echemos un vistazo a la forma de predicción de Shapir.
‫Si recuerdas, ¿dónde se alinea esto? Si vamos, Len, ¿por qué?
‫Val.
‫Doscientas, entonces está el primer Qype, entonces doscientas imágenes.
‫¿De dónde crees que viene el segundo barco?
‫Ciento veinte, ¿dónde hemos visto eso antes,
‫Len?
‫Razas únicas.
‫Ciento veinte, entonces esto significa que tenemos una matriz de doscientos por ciento veinte, entonces
‫tenemos 200.
‫Veamos el primer elemento.
‫Entonces tenemos 200 predicciones, cero.
‫200 matrices.
‫De ciento veinte números diferentes que son realmente pequeños y nos preguntamos qué está
‫pasando aquí.
‫Mmm.
‫Averigüemos la duración de esto.
‫Ciento veinte, maravilloso.
‫Entonces, ¿qué es esto realmente?
‫Es una probabilidad asociada.
‫Para la probabilidad, básicamente lo que nuestro modelo cree que es una determinada imagen, por lo que aquí hay un valor
‫de probabilidad para cada etiqueta.
‫Entonces, el valor aquí, el valor más alto en esta matriz de predicciones.
‫Entonces las predicciones cero son correctas.
‫Esto es para una imagen, la primera imagen en los datos de validación.
‫Entonces, el valor más alto aquí corresponderá al índice de la etiqueta que el modelo cree que es
‫más probable.
‫Y nuevamente, esto es mucho hablar, va a tener un poco más de sentido una vez que comencemos a armarlo
‫con el código, pero solo tengan paciencia conmigo por un segundo.
‫Si sumamos todos estos, se acercarán mucho a uno o tal vez a uno.
‫Exactamente.
‫Y digo muy cerca porque la forma en que las computadoras almacenan los números no es exactamente.
‫Así que si sigues con los puntos decimales.
‫Derecha.
‫Se va a acercar mucho a uno, pero puede que no sea exactamente uno, y quizás estés diciendo: Daniel,
‫¿qué me estás diciendo?
‫Esta es la forma en que los números de la tienda de computadoras no son exactos.
‫Bueno, ni siquiera lo entiendo completamente, pero debes saber que cuando una computadora almacena un número que tiene muchos
‫decimales debido a la forma en que es más eficiente almacenarlo en un chip de
‫computadora, no va a ser perfecto. exacto.
‫Por eso digo que cuando sumas una sola matriz de predicción, va a estar muy cerca de una.
‫Y ahora voy a vincular esto de nuevo a donde hemos regresado a nuestro modelo.
‫Por eso hemos utilizado la activación softmax.
‫Podrías estar diciendo tan lejos.
‫Este es un video, Zygi, ya nos hablaste de Softmax.
‫Realmente no tenía sentido y realmente no tiene sentido ahora.
‫Pero si volvemos a Softmax, simplemente vamos, sí, ¿qué tal si vamos?
‫¿Qué es Softmax si volvemos a nuestra amigable página de Wikipedia?
‫Nos lo dirá.
‫Eso, pero después de aplicar softmax, cada componente estará en el intervalo entre cero y uno y
‫los componentes sumarán uno.
‫Entonces eso es lo que estamos obteniendo aquí.
‫Obtenemos nuestros componentes porque usamos una activación softmax en la última capa de nuestra red, se
‫genera una matriz, una matriz de predicción que tiene una longitud de 120 y todos estos valores en la predicción cero y
‫en la predicción de cada uno.
‫Tiene predicciones.
‫Uno también estará muy cerca de uno.
‫Entonces, las predicciones uno se suman a uno.
‫O muy cerca de uno.
‫Oh, predicciones.
‫Aquí vamos.
‫Mira, esto es un poco más de uno, es muy cercano a uno de los más decimales que hay, el número menos
‫exacto es con una computadora.
‫Así que juntemos todo esto.
‫Porque ahora mismo se ha hablado mucho, quiero mostrarte un ejemplo concreto.
‫Tomemos las predicciones cero.
‫Entonces vamos a eliminar estas células.
‫Y solo un pequeño dato también, recuerde nuestra magonet, arquitectura V2, todo lo que hace toda la
‫capa softmax es tomar estos mil doscientos ochenta de salida, esta matriz de números y
‫cambiarla a una matriz de números como esta o como la ciento veinte usando una activación softmax.
‫Porque recuerde, para problemas de clasificación multiclase, queremos la activación softmax.
‫Pero si estuviéramos haciendo una sola clasificación, usaríamos sigmoide.
‫Entonces, para volver aquí, echemos un vistazo.
‫Entonces, la primera predicción, voy a escribir algunos pequeños trucos de indexación aquí, y solo quiero que lo
‫vean un poco a medida que avanza.
‫Pero quiero que empieces a pensar en cómo se unen todas estas cosas.
‫Hagamoslo.
‫Porque nuestro objetivo ahora es nuestro modelo, como hicimos algunas predicciones aquí, pero nuestro objetivo es comprender estas predicciones más a fondo
‫a medida que nuestra computadora las entiende correctamente, porque todas son numéricas.
‫Así que recuerde al principio cómo pasamos mucho tiempo convirtiendo nuestros datos en números, algo así como cuando llega a la
‫salida de un modelo de aprendizaje automático.
‫Derecha.
‫Así que esto es en lo que estamos enfocados.
‫Pasamos mucho tiempo preparando nuestros insumos.
‫Ahora vamos a dedicar mucho tiempo a preparar nuestros resultados, que es lo que estamos haciendo ahora.
‫Así que imprimamos predicciones cero y luego lo que vamos a hacer es buscar el valor máximo de probabilidad.
‫Así que recuerde la función dentro del préstamo, es posible que no llame a predecir prober, que
‫genera una probabilidad de predicción, esto es lo que predice hace por defecto bajo intensivo.
‫Vamos aquí, predicción enpi, predicciones de Mac cero.
‫Así que estamos encontrando.
‫Recordemos, predicción cero, cómo parece que estamos encontrando el valor máximo aquí.
‫Eso es todo lo que hace esa línea.
‫Y luego, ¿qué vamos a hacer a continuación?
‫Así que queremos.
‫¿Qué más queremos?
‫Queremos encontrar la suma.
‫Entonces, ENPI en realidad podríamos configurar esto para que podamos hacer varios.
‫Entonces el índice es igual a cero.
‫Solo para que podamos verlo con múltiples ejemplos, por lo que Sam Sam va a ser un índice de predicciones de ENPI, agradable y
‫simple.
‫Luego vamos a decir, vaya, fue un error tipográfico terrible, Daniel.
‫Vamos, vamos a ir al índice de masa.
‫Así que busque el índice en esta matriz, que tiene el valor máximo.
‫Entonces, ¿cuál es igual al valor máximo?
‫NPR respalda el índice de predicciones y, por supuesto, lo que estamos haciendo ahora es un poco tedioso.
‫Vamos a trabajar en esto más adelante.
‫Entonces, podría imaginarse si seguimos escribiendo celdas como esta, aquí es donde estamos
‫haciendo funcionar todo nuestro código tanto como podamos para que no solo tengamos que escribir continuamente este tipo
‫de declaraciones de impresión para explorar nuestros datos o Explore nuestro índice de predicciones de predicciones.
‫Maravilloso, predijo Leibel.
‫Ahora, antes de ejecutar esta celda, vamos en contra de nuestra regla cardinal de, en caso de duda, ejecutar
‫el código, queremos que solo piense en lo que está haciendo esta.
‫Déjame recordarte qué son las razas únicas.
‫Así que estas son todas nuestras razas de perros.
‫Entonces, si tenemos predicciones y encontramos el índice de masa del mismo y luego encontramos dónde ocurre ese índice y
‫razas únicas, ¿qué crees que devolverá?
‫Pista, lo hemos escrito aquí.
‫Muy bien, eliminemos a este chico malo y luego cambiaremos.
‫Maravilloso.
‫Así que aquí está el índice cero, esta es esa matriz, exactamente lo mismo aquí, la salida de nuestro modelo cuando llamamos
‫a predecir.
‫Entonces, el valor máximo, la probabilidad de predicción, el máximo que puede ser es uno porque recuerde,
‫el total de una función softmax está entre cero y uno.
‫Por tanto, el valor más alto que puede tener un único valor es uno.
‫Así que esto significa que estamos prediciendo la difamación más alta aquí con una probabilidad de predicción del veintiuno punto seis por
‫ciento.
‫Ahora, la suma de todos estos valores está muy cerca de uno nuevamente.
‫Al alinearse con la regla softmax entre cero y uno, sumará uno, pero debido a cómo las computadoras
‫calculan los números, no exactamente uno y el índice máximo.
‫Entonces, donde ocurre este valor es diecisiete.
‫Entonces, si podemos sumar tres, encontramos 17 en algún lugar.
‫Tal vez ahí.
‫Eso es todo.
‫Ahora, el Border Terrier de Labellers predicho, es decir, para el índice cero.
‫O para validación, imagen cero.
‫La etiqueta predicha es border terrier.
‫Ahora cambiemos esto.
‫¿Y si hiciéramos y si indexáramos?
‫¿Cuál es nuestro número favorito?
‫42.
‫Entonces obtuvimos el valor máximo, la probabilidad de predicción, por lo que esto es mucho más alto.
‫Este es el 75 por ciento, así que estoy bastante seguro con este.
‫Por lo tanto, se podría decir que cuanto mayor sea este valor a uno, cuanto más cerca esté de uno, más confianza tendrá
‫un modelo en una determinada predicción.
‫La suma es muy cercana a uno, el índice máximo es de ciento trece y los etiquetadores predichos recorren
‫el recorrido.
‫Entonces, si vamos aquí, calificaciones únicas.
‫Si tuviéramos que encontrar el número de índice 113.
‫Encontraríamos walkaround allí vamos, caminar alrededor.
‫113.
‫Camine, así es como convertimos nuestras probabilidades de predicción en forma numérica, algo que nuestra computadora entiende
‫en algo que nosotros entendemos como una etiqueta de predicción.
‫Así que ahora tenemos una forma de convertir nuestras predicciones en algo que podamos entender.
‫Lo que empezaremos a hacer a continuación es crear una pequeña función que nos permitirá encontrar las etiquetas predichas
‫para cada muestra en el conjunto de validación.
‫Entonces, alrededor de doscientas imágenes, y luego descomprimiremos estos datos, estableceremos los datos de validación y
‫compararemos las predicciones de una manera visual con las etiquetas de verdad.
‫Ahora, nuevamente, hablamos mucho, pero en el siguiente video, comenzaremos a desarrollar esa funcionalidad
‫y veremos cómo se ve en realidad.
‫Y estoy tan emocionado, ¿verdad?
‫Porque una de las partes más divertidas es comparar las predicciones de su modelo con lo que realmente está sucediendo.
‫La visión del perro está cobrando vida.