¿Qué son las normas y cómo se utilizan en aprendizaje automático?
Las normas son herramientas fundamentales en el aprendizaje automático y otras áreas de la ciencia de datos utilizadas para medir diversas propiedades de los vectores. Existen diferentes tipos de normas que se emplean para calcular errores, distancias y más. En este artículo, exploraremos las normas más comunes y discutiremos cómo se pueden implementar utilizando la biblioteca NumPy en Python. Las normas que abordaremos incluyen L0, L1, L2 y la norma infinita.
¿Cómo calcular la norma L0?
La norma L0 es la más sencilla de entender: calcula la cantidad de elementos distintos de cero en un vector. Es útil para determinar elementos no nulos, por ejemplo, al evaluar la cantidad de compras realizadas por usuarios, donde cada componente del vector representa una compra. Este es el procedimiento para calcular la norma L0 en Python con NumPy:
import numpy as np
vector = np.array([1, 2, 0, 5, 6, 0])
norma_l0 = np.linalg.norm(vector, ord=0)
print(norma_l0)
¿Cómo se calcula la norma L1?
La norma L1, también conocida como norma de suma absoluta, entrega la suma de los valores absolutos de los componentes del vector. Esta norma cobra relevancia en situaciones donde necesitamos una medida que dependa linealmente de cada componente del vector:
vector = np.array([1, -1, 1, -1, 1])
norma_l1 = np.linalg.norm(vector, ord=1)
print(norma_l1)
¿Por qué es importante la norma L2?
La norma L2 es probablemente la más conocida. Está relacionada con la distancia euclidiana, la medida estándar en geometría para calcular la distancia entre dos puntos en un espacio. Se utiliza ampliamente en aprendizaje automático debido a su simplicidad y eficacia computacional. Al elevar los componentes al cuadrado en lugar de tomar la raíz cuadrada, es posible optimizar algoritmos para mejorar el rendimiento:
vector = np.array([1, 1])
norma_l2 = np.linalg.norm(vector)
print(norma_l2)
norma_l2_squared = np.linalg.norm(vector) ** 2
print(norma_l2_squared)
norma_l2_squared_internal = np.dot(vector, vector)
print(norma_l2_squared_internal)
¿Qué es la norma infinita y cómo se calcula?
La norma infinita proporciona el valor absoluto más grande de un vector. Es útil en situaciones en las que necesitamos detectar valores extremos que puedan ser significativos para un análisis más detallado. Su cálculo en Python es sencillo usando NumPy:
vector = np.array([1, 2, 3, -100])
norma_inf = np.linalg.norm(vector, ord=np.inf)
print(norma_inf)
Las normas son herramientas versátiles y potentes en el aprendizaje automático, desempeñando un papel crucial para evaluar diferentes aspectos de los datos de entrada. Su correcta aplicación puede mejorar significativamente la eficiencia de los algoritmos. A medida que avances en tus estudios y aplicaciones de machine learning, comprender y utilizar estas normas te será cada vez más indispensable. ¡Sigue aprendiendo y explorando el vasto mundo del aprendizaje automático!