2 Obtención, selección y tratamiento de conjuntos de datos

El uso eficiente de los datos es un factor clave en la sostenibilidad de los algoritmos de IA. La forma en que se recopilan, almacenan y procesan los datos impacta significativamente el consumo energético y la huella de carbono. Para minimizar el impacto ambiental, se deben considerar las siguientes prácticas a lo largo del ciclo de vida:

2.1 Minimización de datos innecesarios

Para optimizar el uso de los datos y reducir el consumo energético, es fundamental implementar estrategias que permitan seleccionar solo la información relevante y eliminar redundancias innecesarias. A continuación, se detallan las principales técnicas:

 Filtrado de datos

El filtrado de datos es el proceso mediante el cual se eliminan registros irrelevantes o redundantes, mejorando la eficiencia del almacenamiento y procesamiento. Algunas técnicas incluyen:

  • Filtrado basado en reglas: Se establecen criterios específicos para seleccionar los datos útiles y descartar el resto. Ejemplo: eliminación de datos fuera de un rango determinado.
  • Filtrado estadístico: Uso de métricas como la media, la desviación estándar y los percentiles para identificar y eliminar valores atípicos o poco representativos.
  • Filtrado por correlación: Se eliminan variables altamente correlacionadas para reducir la redundancia en modelos de aprendizaje automático.
  • Filtrado por varianza: Se descartan características con baja variabilidad en el conjunto de datos, ya que aportan poca información útil al modelo.
  • Filtrado semántico: Se utilizan técnicas de procesamiento de lenguaje natural (NLP) para filtrar textos irrelevantes en análisis de datos no estructurados.

    Reducción de redundancia

  • Eliminar datos duplicados o redundantes ayuda a optimizar el almacenamiento y la eficiencia computacional. Algunas estrategias clave incluyen:

  • Detección y eliminación de duplicados: Uso de herramientas como fuzzy matching para identificar registros similares que puedan representar la misma entidad.
  • Agrupación y normalización: Consolidación de registros que contienen información repetida en múltiples fuentes.
  • Uso de técnicas de hashing: Aplicación de funciones hash para identificar y eliminar duplicados con eficiencia computacional.
  • Reducción de características (Feature Selection): Eliminación de variables redundantes mediante técnicas como selección basada en importancia de características y algoritmos de selección secuencial.

    Uso de técnicas de compresión

La compresión de datos permite reducir el tamaño del almacenamiento y la cantidad de datos transmitidos, disminuyendo el consumo energético. Algunas técnicas destacadas incluyen:

  • Compresión sin pérdida: Se aplican algoritmos como Huffman coding, Run-Length Encoding (RLE) y Lempel-Ziv-Welch (LZW), que permiten reconstruir los datos originales sin pérdida de información.
  • Compresión con pérdida: Se utilizan métodos como la Transformada Discreta de Fourier (DFT) o la Transformada Wavelet para reducir la resolución de imágenes y audios sin afectar significativamente la calidad perceptual.
  • Codificación de datos: Técnicas como quantization y bit-packing reducen la representación de datos numéricos sin perder precisión significativa.
  • Almacenamiento eficiente en bases de datos: Uso de formatos como Parquet y ORC, diseñados para reducir el almacenamiento y acelerar las consultas.
  • Compresión diferencial: Utilizada en series temporales, permite almacenar solo las diferencias entre registros consecutivos en lugar de los valores completos.

La combinación de estas estrategias en la fase de obtención y tratamiento de datos permite una reducción significativa del consumo energético, asegurando al mismo tiempo la calidad y utilidad de la información utilizada en los modelos de IA.

2.2 Fuentes de datos sostenibles

La selección de fuentes de datos sostenibles contribuye a la reducción del impacto ambiental al disminuir la necesidad de recopilar, generar y transferir grandes volúmenes de datos. La reutilización de datasets existentes evita procesos intensivos en energía asociados a la captura, limpieza y almacenamiento inicial de nuevos datos, mientras que la selección de fuentes de datos cercanas al entorno de procesamiento reduce el consumo energético derivado de la transmisión de información a través de redes.

Uso de datasets abiertos: El uso de datasets abiertos y reutilizables permite aprovechar datos ya existentes, evitando la generación de nuevos conjuntos de datos, que suele implicar procesos costosos en términos de energía y recursos (captura, etiquetado, almacenamiento y mantenimiento). La reutilización de datos promueve la eficiencia del ciclo de vida del dato y reduce la huella ambiental asociada al desarrollo de modelos de IA.

2.3 Minimización de transferencia de datos

La selección de fuentes de datos locales o cercanas al entorno de cómputo reduce el volumen de datos transmitidos a través de redes, disminuyendo el consumo energético asociado a operaciones de transferencia, especialmente relevante en escenarios de grandes volúmenes de datos o procesamiento distribuido

Estrategias de preprocesamiento eficientes:

El preprocesamiento eficiente de datos no solo mejora la calidad del modelo, sino que también contribuye a la reducción del consumo energético. Algunas técnicas clave incluyen:

  • Normalización y estandarización: Escalado de valores para evitar desbalances en el modelo y reducir la complejidad del entrenamiento.
  • Reducción de dimensionalidad: Aplicar técnicas como PCA (Análisis de Componentes Principales), t-SNE o Autoencoders para reducir la cantidad de variables sin comprometer la calidad del modelo, optimizando el procesamiento de datos.
  • Transformaciones de datos optimizadas: Uso de funciones matemáticas eficientes. Empleo de transformaciones y operaciones matemáticas optimizadas que reducen el número de cálculos necesarios durante el entrenamiento y la inferencia. Algunos ejemplos incluyen el uso de operaciones vectorizadas frente a bucles iterativos, funciones de activación computacionalmente eficientes (como ReLU frente a funciones exponenciales), aproximaciones numéricas simplificadas y transformaciones lineales precomputadas. Estas prácticas permiten reducir el tiempo de cómputo y el consumo energético asociado al procesamiento de datos. Para convertir datos de manera que se reduzca el tiempo de cómputo en modelos de IA.
  • Uso de técnicas de balanceo de datos: Aplicación de métodos como oversampling y undersampling para equilibrar clases sin generar grandes volúmenes de datos adicionales.
  • Procesamiento distribuido: Implementación de frameworks para distribuir la carga de trabajo y mejorar la eficiencia energética en el preprocesamiento de datos a gran escala.

2.4 Almacenamiento energético eficiente

La eficiencia en el almacenamiento de datos permite reducir costos y consumo de energía, contribuyendo a un menor impacto ambiental. Algunas estrategias incluyen:

  • Uso de infraestructuras cloud sostenibles: Elegir proveedores de almacenamiento en la nube que utilicen energía renovable y optimización de recursos.
  • Almacenamiento en bases de datos eficientes: Implementar esquemas de indexación y modelos de almacenamiento optimizados como NoSQL, Parquet y ORC, que permiten consultas rápidas y reducen el uso de recursos.
  • Compresión de almacenamiento: Uso de formatos optimizados como Gzip, Parquet u ORC con Zstandard en escenarios donde el volumen de datos almacenados o transferidos es elevado y el acceso es mayoritariamente secuencial o por lotes. En estos casos, la reducción del tamaño de los datos disminuye las operaciones de lectura/escritura en disco y la transferencia por red, lo que puede traducirse en un menor consumo energético total, especialmente cuando el coste energético de la compresión y descompresión es inferior al ahorro obtenido en almacenamiento y E/S.
  • Implementación de almacenamiento en caché: Uso de soluciones como Redis o Memcached para reducir accesos a bases de datos y mejorar la eficiencia en la recuperación de datos.
  • Estrategias de eliminación y archivado: Eliminación periódica de datos obsoletos y almacenamiento en frío para datos de baja frecuencia de acceso, reduciendo la carga en sistemas activos.

2.5 Datos sintéticos y aumentación de datos

La generación de datos sintéticos y la aumentación de datos son técnicas clave para reducir la dependencia de grandes volúmenes de datos reales, cuya recopilación, almacenamiento y preprocesamiento suelen ser intensivos en recursos. Al generar datos artificiales de forma controlada o reutilizar datos existentes mediante transformaciones, es posible entrenar modelos con conjuntos de datos más compactos o mejor informados, evitando la necesidad de recopilar y almacenar grandes cantidades de datos brutos. Esto puede reducir el número de iteraciones de entrenamiento necesarias y, en consecuencia, el consumo computacional y energético asociado al procesamiento de datos. 

Estas técnicas permiten crear conjuntos de datos diversificados y representativos sin incurrir en los costes ambientales de la recolección de datos a gran escala, siempre que el coste computacional de la generación o aumentación de datos se vea compensado por la reducción del volumen de datos reales y del esfuerzo de entrenamiento posterior.

Generación de datos sintéticos

Los datos sintéticos son creados artificialmente mediante técnicas de simulación, modelos generativos o redes neuronales. Su uso es especialmente útil en entornos donde la recopilación de datos reales es costosa, poco ética o insostenible. Algunas técnicas comunes incluyen:

  • Redes Generativas Adversariales (GANs): Modelos que generan datos sintéticos indistinguibles de los reales, útiles para tareas como la generación de imágenes, texto o audio.
  • Simulación: Uso de entornos virtuales para generar datos sintéticos, especialmente en aplicaciones como vehículos autónomos o robótica.
  • Modelos basados en reglas: Creación de datos mediante reglas predefinidas, útiles en aplicaciones como la generación de transacciones financieras o datos médicos.

    Aumentación de datos

La aumentación de datos consiste en aplicar transformaciones a los datos existentes para crear nuevas muestras, diversificando el conjunto de datos sin necesidad de recopilar información adicional. Algunas técnicas incluyen:

  • Aumentación de imágenes: Rotación, escalado, cambio de brillo o contraste en imágenes para crear nuevas variantes.
  • Aumentación de texto: Uso de sinónimos, reordenación de frases o traducción inversa para generar nuevas muestras de texto.
  • Aumentación de audio: Cambio de tono, velocidad o adición de ruido de fondo en archivos de audio.

    Beneficios en eficiencia energética

  • Reducción de la recopilación de datos: Evita el consumo energético asociado a la recolección y almacenamiento de grandes volúmenes de datos reales.
  • Optimización del entrenamiento: El uso de datos sintéticos y técnicas de aumentación puede contribuir a mejorar la capacidad de generalización del modelo cuando los datos generados son representativos y están correctamente alineados con el dominio del problema. En estos casos, una mejor generalización puede ayudar a estabilizar el proceso de entrenamiento y reducir la necesidad de ajustes reiterados o reentrenamientos extensivos. No obstante, este efecto no es automático y depende de la calidad de los datos sintéticos, del modelo empleado y del contexto de aplicación.
  • Ahorro de recursos: Permite trabajar con conjuntos de datos más pequeños, pero igualmente efectivos, reduciendo el tiempo de cómputo y el consumo energético.

2.6 Selección activa de datos (Active Learning)

La selección activa de datos, o Active Learning, es una técnica que permite a los modelos de IA seleccionar de manera inteligente los datos más informativos para su entrenamiento, reduciendo la cantidad de datos necesarios y, por tanto, el consumo energético asociado al procesamiento.

¿Cómo funciona el Active Learning?

En lugar de entrenar con todo el conjunto de datos disponible, el modelo identifica iterativamente las muestras más relevantes para mejorar su rendimiento. Este proceso se realiza en ciclos:

  1. Entrenamiento inicial: El modelo se entrena con un pequeño subconjunto de datos.
  2. Selección de muestras: El modelo identifica las muestras más útiles (por ejemplo, aquellas con mayor incertidumbre o error).
  3. Etiquetado y reentrenamiento: Las muestras seleccionadas se etiquetan (manual o automáticamente) y se añaden al conjunto de entrenamiento.
  4. Repetición: El proceso se repite hasta que el modelo alcanza el rendimiento deseado.

    Técnicas comunes

  • Muestreo por incertidumbre: Selección de muestras donde el modelo tiene mayor incertidumbre en sus predicciones.
  • Muestreo por diversidad: Selección de muestras que representan una amplia variedad de casos, evitando redundancias.
  • Muestreo basado en modelos: Uso de modelos auxiliares para predecir qué muestras serán más útiles para el entrenamiento.

    Beneficios en eficiencia energética

  • Reducción del volumen de datos: Disminuye la cantidad de datos necesarios para entrenar el modelo, reduciendo el consumo energético en almacenamiento y procesamiento.
  • Optimización del entrenamiento: Permite alcanzar un rendimiento similar con menos iteraciones de entrenamiento.
  • Ahorro de recursos: Reduce la necesidad de etiquetado manual, que puede ser costoso en términos de tiempo y energía.