La inteligencia artificial y la ciencia de datos usan matemática para ordenar información, detectar patrones, comparar ejemplos, estimar resultados, medir errores y tomar decisiones basadas en datos.
La inteligencia artificial y la ciencia de datos pueden parecer temas avanzados, pero muchas de sus ideas iniciales se apoyan en matemática básica: contar, sumar, promediar, comparar, medir distancias y trabajar con porcentajes.
Un modelo no entiende los datos como una persona. Trabaja con números, relaciones entre números y reglas para ajustar sus resultados.
En este tema veremos ejemplos simples que muestran cómo los conceptos del curso aparecen en problemas de análisis de datos e inteligencia artificial.
Para procesar información, muchas veces primero hay que representarla con números. Una edad, una venta, una nota, una temperatura o una cantidad de clics son datos numéricos directos.
const usuario = {
edad: 28,
compras: 5,
minutosEnSitio: 42
};
console.log(usuario.edad);
console.log(usuario.compras);
console.log(usuario.minutosEnSitio);
Un conjunto de datos reúne muchos registros. Cada registro puede representar una persona, una venta, una medición, una imagen, una partida o cualquier elemento que se quiera analizar.
const ventas = [
{ dia: "lunes", total: 1200 },
{ dia: "martes", total: 950 },
{ dia: "miércoles", total: 1800 },
{ dia: "jueves", total: 1500 }
];
console.log(ventas.length);
El promedio resume varios valores en uno solo. En ciencia de datos se usa para describir ventas, tiempos, edades, notas, consumos y muchas otras mediciones.
const tiempos = [12, 18, 15, 20, 10];
const suma = tiempos.reduce((total, tiempo) => total + tiempo, 0);
const promedio = suma / tiempos.length;
console.log(promedio);
El valor mínimo y el valor máximo ayudan a conocer el rango de los datos. Esto permite detectar límites, valores extremos y posibles errores de carga.
const edades = [22, 34, 19, 41, 28];
const minimo = Math.min(...edades);
const maximo = Math.max(...edades);
console.log(minimo);
console.log(maximo);
Contar frecuencias significa calcular cuántas veces aparece cada valor o categoría. Esto sirve para analizar respuestas, productos, etiquetas y resultados de clasificación.
const categorias = ["A", "B", "A", "C", "B", "A"];
const frecuencias = {};
for (const categoria of categorias) {
frecuencias[categoria] = (frecuencias[categoria] || 0) + 1;
}
console.log(frecuencias);
Los porcentajes permiten comparar partes con un total. En datos se usan para tasas de conversión, proporción de errores, participación de categorías y cambios entre períodos.
const visitas = 1200;
const compras = 84;
const tasaConversion = compras / visitas * 100;
console.log(tasaConversion.toFixed(2) + "%");
Cuando dos variables tienen escalas muy distintas, una puede dominar a la otra. Normalizar convierte los valores a una escala común, por ejemplo entre 0 y 1.
const valor = 75;
const minimo = 0;
const maximo = 100;
const normalizado = (valor - minimo) / (maximo - minimo);
console.log(normalizado);
En inteligencia artificial, las variables de entrada son los datos que usa un modelo para producir una respuesta. También se las suele llamar características o atributos.
const departamento = {
metrosCuadrados: 60,
habitaciones: 3,
distanciaCentro: 4.5
};
const entrada = [
departamento.metrosCuadrados,
departamento.habitaciones,
departamento.distanciaCentro
];
console.log(entrada);
Un modelo simple puede verse como una fórmula que combina datos de entrada. Por ejemplo, una estimación puede sumar valores multiplicados por pesos.
const metros = 60;
const habitaciones = 3;
const distanciaCentro = 4.5;
const precioEstimado =
metros * 1200 +
habitaciones * 8000 -
distanciaCentro * 1500;
console.log(precioEstimado);
Para mejorar un modelo hay que medir qué tan lejos está su resultado del valor real. Una forma simple es usar la diferencia absoluta.
const valorReal = 150000;
const valorEstimado = 142500;
const error = valorReal - valorEstimado;
const errorAbsoluto = Math.abs(error);
console.log(errorAbsoluto);
Clasificar significa asignar una categoría. Un programa puede clasificar un correo como normal o sospechoso, una imagen como una clase determinada o un cliente como activo o inactivo.
const probabilidadSospechoso = 0.82;
const umbral = 0.70;
if (probabilidadSospechoso >= umbral) {
console.log("Correo sospechoso");
} else {
console.log("Correo normal");
}
Una probabilidad expresa qué tan posible es un resultado. En muchos sistemas se representa con un número entre 0 y 1, donde 0 significa imposible y 1 significa seguro.
const probabilidadLluvia = 0.35;
if (probabilidadLluvia > 0.5) {
console.log("Conviene llevar paraguas");
} else {
console.log("La probabilidad de lluvia es baja");
}
Muchos algoritmos comparan ejemplos. Una forma básica de comparar dos registros numéricos es medir la distancia entre ellos.
const usuarioA = { edad: 25, compras: 4 };
const usuarioB = { edad: 28, compras: 5 };
const diferenciaEdad = usuarioA.edad - usuarioB.edad;
const diferenciaCompras = usuarioA.compras - usuarioB.compras;
const distancia = Math.sqrt(
diferenciaEdad * diferenciaEdad +
diferenciaCompras * diferenciaCompras
);
console.log(distancia);
Un sistema de recomendación puede comenzar comparando gustos o comportamientos. Si dos usuarios son parecidos, tal vez a uno le interese algo que el otro ya eligió.
const producto = {
nombre: "Curso de JavaScript",
puntuacion: 4.8,
cantidadValoraciones: 120
};
if (producto.puntuacion >= 4.5 && producto.cantidadValoraciones >= 50) {
console.log("Recomendado");
}
Un dato atípico es un valor muy distinto del resto. Puede representar un caso especial, un error de carga o una situación importante que merece revisión.
const importes = [1200, 950, 1100, 980, 50000];
const limiteRevision = 10000;
for (const importe of importes) {
if (importe > limiteRevision) {
console.log("Revisar importe: " + importe);
}
}
Los resultados dependen de los datos usados. Si los datos están incompletos, mal medidos o representan solamente una parte del problema, el análisis puede producir conclusiones incorrectas.
La matemática ayuda a calcular, pero no garantiza por sí sola que los datos sean justos, completos o adecuados.
const datos = [18, 22, null, 31, 27];
const datosValidos = datos.filter(valor => valor !== null);
console.log(datos.length);
console.log(datosValidos.length);
const edad = -5;
if (edad < 0) {
console.log("Dato inválido");
} else {
console.log("Dato válido");
}
La matemática básica es una base concreta para entender sistemas de datos e inteligencia artificial. Antes de hablar de modelos complejos, conviene dominar representaciones numéricas, promedios, porcentajes, distancias, errores y comparaciones.
Con este tema cerramos el recorrido introductorio de matemática básica para programación. Los conceptos vistos en el curso aparecen constantemente al escribir algoritmos, validar datos, construir interfaces, crear videojuegos, analizar información y resolver problemas reales con código.