El machine learning funciona a través de la lógica matemática. Por lo tanto, las características relevantes de cada punto de datos deben expresarse numéricamente para poder introducirse en un algoritmo matemático que "aprenderá" a asignar una entrada determinada al output deseado.
Los puntos de datos en el machine learning suelen representarse en forma de vector, en el que cada elemento (o dimensión) del embedding vectorial de un punto de datos corresponde a su valor numérico para una característica específica. Para las modalidades de datos que son intrínsecamente numéricas, como los datos financieros o las coordenadas geoespaciales, esto es relativamente sencillo. Pero muchas modalidades de datos, como texto, imágenes, datos gráficos de redes sociales o comportamientos de usuarios de aplicación, no son intrínsecamente numéricos y, por lo tanto, implican una ingeniería de características menos intuitiva de inmediato para expresarse de una manera preparada para el ML.
El proceso (a menudo manual) de elegir qué aspectos de los datos utilizar en los algoritmos de machine learning se denomina selección de características. Las técnicas de extracción de características refinan los datos hasta sus dimensiones más relevantes y significativas. Ambos son subconjuntos de la ingeniería de características, la disciplina más amplia de preprocesamiento de datos sin procesar para su uso en machine learning. Una distinción notable del deep learning es que normalmente opera con datos sin procesar y automatiza gran parte del proceso de ingeniería de características, o al menos el proceso de extracción de características. Esto hace que el deep learning sea más escalable, aunque menos interpretable, que el machine learning tradicional.
Parámetros y optimización del modelo de machine learning
Como ejemplo práctico, consideremos un algoritmo simple de regresión lineal para predecir los precios de venta de viviendas basándose en una combinación ponderada de tres variables: metros cuadrados, antigüedad de la casa y número de dormitorios. Cada casa se representa como una incrustación vectorial con 3 dimensiones: [square footage, bedrooms, age]. Una casa de 30 años con 4 dormitorios y 1900 pies cuadrados podría representarse como [1900, 4, 30] (aunque a efectos matemáticos esos números podrían escalarse primero, o normalizarse, a un rango más uniforme).
El algoritmo es una función matemática sencilla:
Precio = (A * metros cuadrados) + (B * número de habitaciones) – (C * Antigüedad) + Precio base
Aquí, , y son los parámetros del modelo: al ajustarlos se ajustará la importancia que tiene el modelo para cada variable. El objetivo del machine learning es encontrar los valores óptimos para dichos parámetros del modelo: en otras palabras, los valores de los parámetros que dan como resultado que la función general genere los Resultados más precisos. Aunque la mayoría de las instancias reales de machine learning implican algoritmos más complejos con un mayor número de variables de entrada, el principio sigue siendo el mismo: optimizar los parámetros ajustables del algoritmo para obtener una mayor precisión.