Datos, modelo, entrenamiento, inferencia: los conceptos básicos en un solo ejemplo
Todo el camino del aprendizaje automático con la estimación del precio de un piso: los datos y cómo dividirlos, un modelo con parámetros, el entrenamiento por descenso de gradiente, los hiperparámetros y la tasa de aprendizaje, la evaluación, la inferencia y un glosario de términos con enlaces a las partes de la serie.
Serie Fundamentos de IA Parte 3 de 52
- Mapa de la inteligencia artificial: qué es cada cosa y cómo encaja todo
- Breve historia de la inteligencia artificial: de Turing a los modelos de lenguaje
- Datos, modelo, entrenamiento, inferencia: los conceptos básicos en un solo ejemplo
- Cómo leer la notación matemática: símbolos, subíndices, sumatorios y cuantificadores
- Conjuntos y relaciones: las piezas con las que se construyen las definiciones en IA
- Funciones y aplicaciones: por qué todo modelo de IA es una función
- Lógica y demostraciones: las reglas con las que se razona en IA
- Grafos y árboles: la estructura sobre la que se apoyan la búsqueda y las redes neuronales
- Álgebra lineal para aprendizaje automático: vectores, matrices y por qué la IA sobre todo multiplica
- Derivadas, gradiente y regla de la cadena: cómo sabe un modelo en qué dirección aprender
- Descenso de gradiente: cómo aprende un modelo
- Qué es la probabilidad: del lanzamiento de un dado a los axiomas de Kolmogórov
- Probabilidad condicionada y teorema de Bayes: cómo cambiar una estimación cuando te enteras de algo nuevo
- Variable aleatoria y función de distribución: una sola función que lo dice todo sobre la distribución
- Función de densidad y función de probabilidad: por qué una variable continua tiene probabilidad cero en cada punto
- Esperanza, varianza y covarianza: dónde está una distribución, qué anchura tiene y qué se relaciona con qué
- Resumen de las distribuciones de probabilidad: Bernoulli, binomial, Poisson, uniforme, normal y exponencial
- Ley de los grandes números y teorema central del límite: por qué las medias se comportan de forma tan predecible
- Estadística y estimación de parámetros: máxima verosimilitud, MAP e intervalos de confianza
- Teoría de la información: entropía, entropía cruzada y divergencia KL, el origen de las funciones de pérdida
- Búsqueda en el espacio de estados: BFS, DFS, UCS y A* con animaciones
- Juegos y adversarios: minimax, poda alfa-beta y Monte Carlo tree search
- Satisfacción de restricciones: backtracking, propagación de restricciones y AC-3 con un sudoku y un mapa de regiones checas
- Lógica y sistemas basados en conocimiento: encadenamiento hacia delante y hacia atrás, resolución y sistemas expertos
- Planificación: STRIPS, el mundo de bloques, heurísticas a partir de la relajación y la planificación en los agentes de IA
- Búsqueda local y recocido simulado: un viajante por las capitales regionales checas
- Algoritmos genéticos: población, cruce, mutación y selección en una mochila para la excursión
- Estrategias evolutivas y programación genética: de la regla de un quinto a la ley de Kepler
- Optimización por colonia de hormigas: cómo un rastro de feromona encuentra un camino corto
- Optimización por enjambre de partículas: inercia, experiencia propia y experiencia del enjambre
- Neuroevolución: evolución de los pesos y la forma de las redes neuronales, y el algoritmo NEAT
- Conjuntos difusos y funciones de pertenencia: cómo escribir «algo cálido»
- Lógica difusa y probabilidad: por qué «algo cálido» no significa «probablemente cálido»
- Lógica difusa: t-normas, implicaciones y reglas SI–ENTONCES
- Control difuso: Mamdani y Sugeno, del ventilador al péndulo invertido sobre un carro
- Agrupamiento difuso: el algoritmo fuzzy c-means y los puntos entre clusters
- Sistemas neuro-difusos (ANFIS): reglas difusas que aprenden de los datos
- Cadenas de Markov: matriz de transición, distribución estacionaria y PageRank
- Modelos ocultos de Márkov: el algoritmo de Viterbi y el casino deshonesto
- Redes bayesianas: por qué está mojada la hierba y qué significa eso para el aspersor
- El filtro de Kalman: cómo estimar a partir de mediciones imprecisas dónde está un coche y a qué velocidad va
- Tipos de aprendizaje automático: supervisado, no supervisado, semisupervisado y más
- Prompts, contexto y RAG: cómo darle a un modelo la información correcta
- Autocodificadores variacionales (VAE): imágenes nuevas a partir de un espacio latente continuo
- Redes generativas adversarias (GAN): el falsificador contra el detective
- Modelos de difusión: cómo el ruido puro se convierte en una imagen
- Procesos de decisión de Markov: estados, acciones, recompensas y ecuaciones de Bellman
- Q-learning y DQN: aprender el valor de las acciones, de la tabla a la red neuronal
- Gradiente de la política y PPO: aprender directamente la política
- Cómo funciona un agente de IA: un modelo de lenguaje en un bucle con herramientas
- Programación con agentes de IA: encargo, pruebas y revisión
- Evaluación y seguridad de los sistemas de IA: cómo medir y cómo vigilar
Temario completo de la serie 52 de 83 temas publicados
- Qué significan datos, modelo, entrenamiento e inferencia y cómo se relacionan entre sí.
- La diferencia entre parámetros e hiperparámetros y por qué importa la tasa de aprendizaje.
- Por qué el entrenamiento es caro una sola vez y la inferencia barata, pero frecuente.
Conviene conocer antes: Mapa de la inteligencia artificial: qué es cada cosa y cómo encaja todo
A lo largo de toda la serie se repiten cuatro palabras: datos, modelo, entrenamiento e inferencia. Ya se trate de reconocer dígitos, de un filtro de spam o de un gran modelo de lenguaje, el camino es siempre el mismo: a partir de ejemplos se aprende una función que luego responde a preguntas nuevas. En esta parte recorremos el camino entero con el ejemplo más pequeño posible —estimar el precio de un piso a partir de su superficie— y en cada paso contamos cómo es en los grandes modelos. Al final hay un glosario de términos con enlaces a las partes donde puedes aprender más sobre ellos.
Continúa las partes Mapa de la inteligencia artificial y Breve historia de la IA.
1. Datos: ejemplos con respuestas correctas
Definición — datos, características y etiquetas
Los datos son los ejemplos de los que aprende el modelo. Cada ejemplo tiene características (entradas que conocemos sobre él) y, en el aprendizaje supervisado, también una etiqueta (la respuesta correcta). Los datos se dividen en tres partes: entrenamiento (de ellos aprende el modelo), validación (con ellos ajustamos la configuración y elegimos el modelo) y prueba (se usan una sola vez al final, para que el resultado estime honestamente cómo le irá al modelo con datos nuevos).
Un libro de texto con ejercicios y las soluciones al final. Con los ejercicios practicas, un examen de prueba te dice si ya lo dominas, y el examen de verdad (que no has visto nunca antes) muestra cómo estás realmente.
Nuestros datos son inventados: 60 pisos, cada uno con su superficie (la característica) y su precio en millones de coronas checas (la etiqueta). El precio crece con la superficie, pero no exactamente: dos pisos del mismo tamaño se diferencian en ubicación, estado y planta. Los dividimos en 40 de entrenamiento, 10 de validación y 10 de prueba.
Definición — un conjunto de datos formalmente
Un conjunto de datos es una sucesión finita de pares D = ((x(1), y(1)), …, (x(n), y(n))), donde x(i) ∈ ℝd es el vector de las d características del i-ésimo ejemplo e y(i) su etiqueta — un número real en la regresión, un elemento de un conjunto finito de clases en la clasificación. Se supone que los ejemplos son independientes entre sí y que proceden de la misma distribución (desconocida) que las consultas futuras.
Una partición de los datos son tres partes disjuntas Dtr, Dval, Dtest que juntas forman D; cada ejemplo pertenece exactamente a una de ellas. Aquí d = 1 (la superficie), n = 60 y las partes tienen 40, 10 y 10 ejemplos.
Una tabla en la que cada fila es un piso: columnas con las características y una última columna con el precio. Disjuntas significa que ningún piso está en dos partes a la vez; si no, el «examen de verdad» contendría ejemplos que el modelo ya ha visto. Y la suposición de la misma distribución dice que los pisos de prueba vienen del mismo mercado que aquellos por los que preguntaremos después; sin ella, el error en la prueba no diría nada sobre el futuro.
En los grandes modelos de lenguaje, los datos son billones de tokens de texto de la web, de libros y de código; la característica es el texto hasta ese punto y la etiqueta, el siguiente token (la parte sobre el preentrenamiento). El principio es el mismo.
2. Modelo: una función con parámetros
Definición — modelo y parámetros
Un modelo es una función que calcula una salida a partir de una entrada y contiene números ajustables — los parámetros (en las redes neuronales, pesos). La forma de la función la elegimos nosotros; los valores de los parámetros los busca el aprendizaje. Nuestro modelo es una recta: precio = w · superficie + b, con dos parámetros: w (cuánto sube el precio con cada metro) y b (dónde empieza la recta).
Un modelo es una máquina con perillas. La nuestra tiene dos. Un modelo de lenguaje tiene miles de millones, pero sigue siendo una máquina que calcula una salida a partir de una entrada, y sus «conocimientos» no son otra cosa que la posición de las perillas.
ŷ = w · x + b
- ŷ
- el precio predicho; el acento circunflejo lo distingue del precio real y, con el que luego lo comparamos
- w
- pendiente — cuántos millones añade cada metro de más; sin ella, el precio no dependería en absoluto de la superficie
- x
- superficie en m², la única característica; lo único que el modelo sabe del piso
- b
- ordenada en el origen — «el precio de un piso de cero metros»; sin ella, la recta tendría que pasar por el origen, y los precios de los pisos no tienden a cero
3. Entrenamiento: ajustar los parámetros
Definición — función de pérdida y entrenamiento
La función de pérdida es un número que dice cuánto se equivoca el modelo en los datos de entrenamiento — aquí, la media de los cuadrados de los errores (MSE). El entrenamiento busca los parámetros con la menor pérdida posible, casi siempre mediante descenso de gradiente: calcula en qué dirección crece la pérdida y mueve los parámetros un pequeño paso en sentido contrario. Una pasada por todos los datos de entrenamiento es una época.
Niebla en una colina y la meta de bajar al valle. Solo ves la pendiente bajo tus pies, así que das un paso cuesta abajo, vuelves a mirar, otro paso. Cada paso es un ajuste de las perillas; el valle son las perillas con las que el modelo menos se equivoca.
Nuestra función de pérdida, el error cuadrático medio (MSE), escrita completa:
J(w, b) = (1/n) ∑i=1n ( w xi + b − yi )2
- J(w, b)
- la pérdida como función de los parámetros — los datos son fijos, solo podemos cambiar w y b, por eso solo ellos están entre paréntesis
- (1/n) ∑
- la media sobre los n = 40 pisos de entrenamiento — para que la pérdida sea comparable entre conjuntos de distinto tamaño y ningún piso tenga preferencia
- w xi + b − yi
- el error en el i-ésimo piso: la predicción ŷi menos el precio real; positivo cuando el modelo se pasa, negativo cuando se queda corto
- 2
- el cuadrado — para que los errores positivos y negativos no se anulen, los errores grandes pesen más que los pequeños y la pérdida se pueda derivar sin problemas
Teorema — el gradiente del MSE para una recta
Para J como arriba y ŷi = w xi + b se cumple
∂J/∂w = (2/n) ∑i (ŷi − yi) · xi, ∂J/∂b = (2/n) ∑i (ŷi − yi).
Demostración. La derivada de una suma es la suma de las derivadas. Para un solo término, por la regla de la cadena: ∂/∂w (w xi + b − yi)2 = 2 (w xi + b − yi) · xi, porque el interior del paréntesis tiene derivada xi respecto a w; respecto a b, su derivada es 1. ∎
Cada piso «tira» de los parámetros en proporción a cuánto se equivocó el modelo con él. En w, el tirón se multiplica además por la superficie: un error en un piso grande dice más sobre la pendiente que un error en un estudio.
Un paso del descenso de gradiente mueve entonces ambos parámetros en contra del gradiente:
w ← w − η · ∂J/∂w
- w
- el parámetro antes y después del paso — la flecha ← significa «sobrescribe con el nuevo valor», no igualdad
- −
- vamos en contra del gradiente, es decir, cuesta abajo: queremos reducir la pérdida, no aumentarla
- η
- tasa de aprendizaje — qué tan largo es el paso; el gradiente solo vale cerca del punto, así que el paso debe ser pequeño (ver la siguiente sección)
- ∂J/∂w
- el gradiente — en qué dirección y con qué pendiente crece la pérdida cuando aumentamos w
Todo el entrenamiento como algoritmo (exactamente así lo calcula la figura de abajo):
w, b = 0, 0 # parámetros iniciales
for epocha in range(200): # hiperparámetro: número de épocas
gw = gb = 0
for plocha, cena in trenovaci_data: # una época = todos los datos
x = plocha / 100 # superficie en cientos de m²
chyba = (w * x + b) - cena # ŷ − y
gw += 2 * chyba * x / n # ∂J/∂w
gb += 2 * chyba / n # ∂J/∂b
w, b = w - eta * gw, b - eta * gb # paso cuesta abajo, eta = tasa de aprendizaje
Introducimos la superficie en cientos de m² (52 m² → 0,52). En metros, el gradiente respecto a w saldría decenas de veces mayor que respecto a b, y una única tasa de aprendizaje no serviría para ambos parámetros a la vez. Este escalado de características es habitual en la práctica. Por eso w aparece abajo en millones por 100 m².
Ejemplo — el primer paso del descenso
En el punto w = b = 0 el modelo predice 0 en todas partes, así que el error en cada piso es −yi. Por tanto, el gradiente es
∂J/∂w = −2 · (1/n) ∑ xi yi = −2 · 5,678 = −11,36, ∂J/∂b = −2 · ȳ = −2 · 6,88 = −13,76,
donde 5,678 es la media de los productos de la superficie (en cientos de m²) por el precio, e ȳ = 6,88, el precio medio en millones. Con tasa de aprendizaje η = 0,5:
w ← 0 − 0,5 · (−11,36) = 5,68, b ← 0 − 0,5 · (−13,76) = 6,88.
(Aquí w está en millones por 100 m².) La pérdida baja de 54,2 a 17,7. Ambos gradientes eran negativos (el modelo se quedaba corto en todas partes), así que ambos parámetros aumentaron.
Empezamos con w = 0 y b = 0 (el modelo dice «todo cuesta cero», pérdida 54,2) y hacemos 200 épocas de descenso de gradiente. El resultado: w = 0,0910 millones por m², es decir, unas 91 000 CZK por cada metro de más, y b = 0,35 millones. La solución exacta por mínimos cuadrados (para una recta se puede calcular con una fórmula, ver la parte sobre la regresión lineal) difiere solo en el cuarto decimal. El descenso llegó adonde debía.
4. Hiperparámetros: lo que fijamos nosotros
Definición — hiperparámetros
Los hiperparámetros son ajustes del aprendizaje que el modelo no puede aprender por sí mismo y que elegimos nosotros: la forma y el tamaño del modelo, la tasa de aprendizaje (qué tan grande es un paso del descenso de gradiente), el número de épocas, el tamaño del lote (batch) (cuántos ejemplos se usan en un paso). Se ajustan según los resultados en los datos de validación, nunca en los de prueba.
Los parámetros son lo que aprende el alumno. Los hiperparámetros son cómo le enseñamos: qué tan rápido, cuánto tiempo, cuántos ejemplos a la vez.
Con una tasa de 0,05 el modelo aprende despacio: tras 200 épocas su pérdida es 0,48 y todavía no ha llegado. Con 0,5 llega a 0,165 en unas pocas decenas de épocas. Con 1,6 los pasos son tan grandes que el modelo salta el valle cada vez más lejos y la pérdida explota: tras cinco épocas es 46 310 590. Elegir bien la tasa de aprendizaje es uno de los ajustes más frecuentes en todo el aprendizaje automático.
Para una recta y el MSE se puede calcular exactamente dónde está el límite entre «despacio» y «explota». La pérdida es una función cuadrática de los parámetros, así que su curvatura es igual en todas partes y la describen dos números: la curvatura en la dirección empinada y en la dirección plana del valle (los valores propios λ de la matriz hessiana, la tabla de segundas derivadas).
et+1 = (1 − η λ) · et
- et+1
- la distancia de los parámetros a los mejores valores tras la siguiente época (en una de las dos direcciones) — es lo que queremos llevar a cero
- 1
- sin paso, la distancia se quedaría como estaba; el paso le quita la fracción η λ. Si |1 − η λ| < 1, la distancia disminuye; si es mayor que 1, crece en progresión geométrica
- η
- tasa de aprendizaje — lo único que elegimos aquí nosotros
- λ
- la curvatura de la pérdida en esa dirección — la dan los datos, no nosotros; en la dirección empinada el gradiente es grande y, por tanto, el paso es largo
- et
- la distancia antes de la época; la fórmula se repite, así que tras t épocas et = (1 − η λ)t e0
Teorema — cuándo converge el descenso de gradiente
Si la pérdida es cuadrática con matriz hessiana H cuyos valores propios son 0 < λmin ≤ λmax, entonces el descenso de gradiente con tasa de aprendizaje constante η converge al mínimo desde cualquier punto inicial si y solo si 0 < η < 2 / λmax.
Demostración. En las coordenadas de los vectores propios de H, la desviación respecto al mínimo evoluciona componente a componente como et+1 = (1 − η λ) et. Todas las componentes tienden a cero si y solo si |1 − η λ| < 1 para ambos λ, es decir, 0 < η λ < 2; la condición más estricta es la de λmax. ∎
Ejemplo — el límite para nuestros pisos
Para el MSE de una recta, H = (2/n) · [[∑xi2, ∑xi], [∑xi, n]] = [[1,193, 1,435], [1,435, 2]] (superficie en cientos de m²). Los valores propios salen λmax = 3,087 y λmin = 0,106, así que el descenso converge para η < 2 / 3,087 = 0,648.
η = 0,05: el multiplicador en la dirección plana es 1 − 0,05 · 0,106 = 0,9947; tras 200 épocas queda 0,9947200 ≈ 35 % de la desviación original — por eso el modelo no ha llegado.
η = 0,5: los multiplicadores son 0,544 y 0,947; tras 200 épocas queda 0,947200 ≈ 2 · 10−5 de la desviación — prácticamente nada.
η = 1,6 > 0,648: en la dirección empinada |1 − 1,6 · 3,087| = 3,94. La desviación se multiplica aproximadamente por cuatro en cada época, y la pérdida, que crece con su cuadrado, por 15,5 — en la gráfica, de 801 a 12 395.
El valle es un canal estrecho: empinado a lo ancho, casi plano a lo largo. La tasa de aprendizaje tiene que ser lo bastante pequeña para las paredes empinadas; si no, saltas a la ladera de enfrente más arriba de donde estabas. Pero entonces avanzas a lo largo del canal muy despacito. Este conflicto entre la dirección empinada y la plana es la razón por la que en los grandes modelos se usan variantes más inteligentes del descenso.
5. Cuán bueno es el modelo
El error en cualquier parte de los datos D′ con m ejemplos lo medimos con la raíz del error cuadrático medio (RMSE):
RMSE = √(1/m) ∑(x, y) ∈ D′ (ŷ(x) − y)2
- √
- la raíz devuelve el resultado de (M CZK)² a millones de coronas — el número se puede leer como el «error típico»
- (1/m) ∑D′
- la media sobre la parte elegida — de entrenamiento, de validación o de prueba; cada una responde a una pregunta distinta
- (ŷ(x) − y)2
- el cuadrado del error en un piso, igual que en la pérdida — medimos con lo mismo que minimizamos
El error medio (la raíz del MSE) es de 0,41 millones en los datos de entrenamiento, 0,60 en los de validación y 0,51 millones en los de prueba, o sea, aproximadamente medio millón de coronas. Con una sola característica no puede ser mejor: el ruido que añadimos a los precios (ubicación, estado) tiene justo ese tamaño y no se puede adivinar a partir de la superficie. Quien quiera una estimación más precisa necesita más características, no una recta más lista. Si, por el contrario, hiciéramos el modelo demasiado flexible, se aprendería de memoria el ruido de los datos de entrenamiento (sobreajuste) y se equivocaría más con pisos nuevos.
6. Inferencia: el modelo en funcionamiento
Definición — inferencia
La inferencia es el uso de un modelo entrenado: los parámetros están fijos y el modelo solo calcula la salida para una entrada nueva. Mientras tanto no aprende (salvo que lo volvamos a entrenar expresamente). En los modelos de lenguaje, cada respuesta es inferencia: el modelo genera token a token y, para cada token, hace una pasada por la red.
El entrenamiento es estudiar; la inferencia es el examen, o el trabajo. Se estudia una vez y durante mucho tiempo; luego se trabaja a diario y deprisa. Cuando escribes con un chatbot, no le estás enseñando (eso ocurre en otro momento y de otra manera), solo lo estás usando.
Para un piso de 65 m², nuestro modelo estima 6,27 millones. Eso cuesta 3 operaciones aritméticas. El entrenamiento costó unas 72 000 operaciones. En los grandes modelos la proporción es parecida, solo que a otra escala: el entrenamiento dura meses en miles de tarjetas gráficas; una respuesta, segundos. Pero las respuestas son miles de millones, así que en los modelos más usados la inferencia puede costar en total más cálculo que su entrenamiento — y por eso se trabaja tanto en hacer los modelos más pequeños y más rápidos.
Ejemplo — inferencia y número de operaciones
Sustituimos los parámetros aprendidos w = 9,0957 millones por 100 m² (es decir, 0,0910 por m²) y b = 0,3538; la superficie en cientos de m², x = 0,65:
ŷ = 9,0957 · 0,65 + 0,3538 = 5,9122 + 0,3538 = 6,2660 ≈ 6,27 millones.
Son 3 operaciones: la conversión de unidades (dividir entre cien), una multiplicación y una suma. Una época de entrenamiento hace, para cada uno de los 40 pisos, una predicción, un error y las dos contribuciones al gradiente — contamos unas 9 operaciones por piso (el número exacto depende de qué consideremos una operación), es decir, 40 · 9 · 200 = 72 000 operaciones para todo el entrenamiento. La proporción entre el entrenamiento y una predicción es 24 000 : 1.
7. Glosario
Los términos de esta parte y dónde puedes aprender más sobre ellos en la serie:
- datos
- ejemplos de los que aprende el modelo — aquí 60 pisos con superficie y precio — en detalle
- característica
- un dato de entrada que describe un ejemplo (la superficie); una imagen tiene miles de características — sus píxeles — en detalle
- etiqueta
- la respuesta correcta que queremos predecir (el precio) — en detalle
- datos de entrenamiento, validación y prueba
- con los primeros aprende el modelo, con los segundos se ajusta la configuración, los terceros se usan una sola vez al final — en detalle
- modelo
- una función con parámetros ajustables que calcula una salida a partir de una entrada — en detalle
- parámetro (peso)
- un número dentro del modelo que se aprende; los modelos de lenguaje tienen miles de millones — en detalle
- función de pérdida
- un número que mide cuánto se equivoca el modelo; el aprendizaje lo reduce — en detalle
- entrenamiento (aprendizaje)
- la búsqueda de parámetros con los que la pérdida en los datos de entrenamiento es pequeña — en detalle
- gradiente
- la dirección en la que la pérdida crece más rápido; el entrenamiento va en sentido contrario — en detalle
- época
- una pasada por todos los datos de entrenamiento — en detalle
- lote (batch)
- cuántos ejemplos se usan en un paso de aprendizaje — en detalle
- hiperparámetro
- un ajuste que elegimos nosotros y que el modelo no aprende (tasa de aprendizaje, número de épocas, tamaño del modelo) — en detalle
- sobreajuste
- el modelo se aprende de memoria los datos de entrenamiento y falla con datos nuevos — en detalle
- inferencia
- el uso de un modelo entrenado con una entrada nueva — lo que ocurre cuando le preguntas a un chatbot — en detalle
- token
- un trozo de texto con el que trabaja un modelo de lenguaje — en detalle
- embedding
- un vector de números que representa una palabra, una imagen u otro objeto — en detalle
- contexto y prompt
- todo el texto que recibe el modelo durante la inferencia — en detalle
8. Resumen
- Datos = ejemplos con características y etiquetas, divididos en una parte de entrenamiento, una de validación y una de prueba.
- Modelo = una función con parámetros; el entrenamiento busca los parámetros con la menor pérdida, normalmente mediante descenso de gradiente.
- Nuestro modelo aprendió 91 000 CZK por m², lo mismo que el cálculo exacto.
- Los hiperparámetros los elegimos nosotros: con una tasa de aprendizaje pequeña el entrenamiento es lento; con una grande, se desmorona.
- El error en la prueba (0,51 millones) corresponde al ruido de los datos; un modelo mejor necesita más características.
- Inferencia = el uso de un modelo entrenado; es barata por consulta, pero las consultas son muchísimas.
¿Quieres probarlo tú mismo? Pídele a un agente de IA que descargue datos reales de precios de pisos en tu ciudad, los divida en tres partes y entrene la misma recta; y luego, que añada una segunda característica (por ejemplo, la distancia al centro) y compare el error en la prueba.
¿Lo ves de otra manera? Escribe a support@coden-app.com.