inteligencia_artificial:conceptos
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| inteligencia_artificial:conceptos [2023/05/04 13:55] – [Ajuste y sobreajuste] alberto | inteligencia_artificial:conceptos [2023/05/09 11:45] (actual) – [Ataques adversarios] alberto | ||
|---|---|---|---|
| Línea 67: | Línea 67: | ||
| ==== Modelo de regresión lineal simple ==== | ==== Modelo de regresión lineal simple ==== | ||
| + | En este modelo los datos tienen una única dimensión.\\ | ||
| Se puede visualizar una nube de puntos, en los que la dimensión de los datos de entrada se encuentra representada en los valores del eje X y los de salida en el eje Y, generando los diferentes puntos.\\ | Se puede visualizar una nube de puntos, en los que la dimensión de los datos de entrada se encuentra representada en los valores del eje X y los de salida en el eje Y, generando los diferentes puntos.\\ | ||
| El modelo debe generar la recta que más se aproxime a los puntos de forma automática, | El modelo debe generar la recta que más se aproxime a los puntos de forma automática, | ||
| Línea 83: | Línea 84: | ||
| La mejor forma de representar estos valores, es de forma matricial: | La mejor forma de representar estos valores, es de forma matricial: | ||
| Matriz de datos X = | Matriz de datos X = | ||
| - | | x< | + | | 1 | x< |
| - | | x< | + | | 1 | x< |
| - | | x< | + | | 1 | x< |
| - | | x< | + | | 1 | x< |
| Matriz de valores de salida Y = | Matriz de valores de salida Y = | ||
| Línea 126: | Línea 127: | ||
| El problema es que resolver para cualquier GPU esta fórmula requiere de invertir matrices, lo cual tiene un coste computacional enorme. Además, no siempre será posible encontrar el mínimo de nuestra función de forma analítica. Esto es debido a que elevando al cuadrado el error, forzamos funciones convexas (con un sólo mínimo, para hacer posible este cálculo) cuando no necesariamente puede resultar lo más acertado.\\ | El problema es que resolver para cualquier GPU esta fórmula requiere de invertir matrices, lo cual tiene un coste computacional enorme. Además, no siempre será posible encontrar el mínimo de nuestra función de forma analítica. Esto es debido a que elevando al cuadrado el error, forzamos funciones convexas (con un sólo mínimo, para hacer posible este cálculo) cuando no necesariamente puede resultar lo más acertado.\\ | ||
| - | + | \\ | |
| + | Ejemplo de cálculo de los mínimos ordinarios en el [[https:// | ||
| ==== Descenso del Gradiente ==== | ==== Descenso del Gradiente ==== | ||
| {{youtube> | {{youtube> | ||
| Línea 224: | Línea 225: | ||
| Sólo hay 2 casos diferentes: la última capa en la que el error a pertenece a la función de coste, y el otro caso son el resto de capas, que dependen de otra capa. | Sólo hay 2 casos diferentes: la última capa en la que el error a pertenece a la función de coste, y el otro caso son el resto de capas, que dependen de otra capa. | ||
| - | ===== Ajuste y sobreajuste | + | ==== Ajuste y sobreajuste ==== |
| {{youtube> | {{youtube> | ||
| Si un modelo no se ajusta adecuadamente a los datos suministrados, | Si un modelo no se ajusta adecuadamente a los datos suministrados, | ||
| Línea 230: | Línea 231: | ||
| La mejor forma de saber un modelo sufre de overfitting, | La mejor forma de saber un modelo sufre de overfitting, | ||
| - | Se realizan pruebas al mismo tiempo que se entrena el modelo, de modo que podemos ver su comportamiento antes nuevos datos, que generalmente tendrá un error superior al de los datos de entrenamiento. Mientras este error (el producido con datos nuevos) siga decreciendo, | + | Se realizan pruebas al mismo tiempo que se entrena el modelo, de modo que podemos ver su comportamiento antes nuevos datos, que generalmente tendrá un error superior al de los datos de entrenamiento. Mientras este error (el producido con datos nuevos) siga decreciendo, |
| + | |||
| + | Para que la estrategia Hold-out funcione los datos deben estar idénticamente distribuidos en ambos grupos, de modo que no exista una naturaleza distinta. Esto puede conseguirse distribuyéndolos de forma aleatoria. Y asegurándonos que no existan dependencias entre datos que enmascare el overfitting (por ejemplo, en los fotogramas de una película, en las diferentes secuencias hay muchos iguales, lo que en función de cuáles sean elegidos para hacer test, puede enmascarar el overfitting).\\ | ||
| + | |||
| + | Suele ser más complicado hacer un correcto tratamiento de los datos que realizar el entrenamiento (unas pocas líneas de código). | ||
| + | |||
| + | ===== Ataques adversarios ===== | ||
| + | {{youtube> | ||
| + | Se trata de crear diferencias en los datos de entrada para confundir a la red neuronal y que de resultados erróneos. Algo equivalente a las " | ||
| + | No necesariamente pueden ser fácilmente detectables. Por ejemplo en el caso de reconocimiento de imágenes, pueden ser imágenes modificadas y que llamen la atención por psicodélicas, | ||
| + | Se pueden crear dejando la red neuronal entrenada con los parámetros fijos y actuando sobre los datos de entrada (como si fueran parámetros) para maximizar el error.\\ | ||
| + | Es muy probable que si afecta a una red neuronal, afecte también a otras redes neuronales del mismo tipo, o con la misma función.\\ | ||
inteligencia_artificial/conceptos.1683201315.txt.gz · Última modificación: por alberto
