E-book

IA para sistemas de comunicaciones inalámbricas con MATLAB

CAPÍTULOS

Capítulo 2: Flujo de trabajo de IA para estimación de un canal 5G

Capítulo 2

Flujo de trabajo de IA para estimación de un canal 5G


La estimación de un canal es un problema básico que todo sistema inalámbrico moderno debe resolver. El receptor debe comprender cómo el canal altera las señales enviadas por el transmisor y averiguar cómo especificar el modelo de canal en cada instancia del tiempo y la frecuencia. Cuando la estimación de un canal se efectúa correctamente, la tasa de transferencia aumenta y la tasa de error disminuye.

Los algoritmos tradicionales utilizados para realizar la estimación de un canal se basan en algoritmos de ajuste matemático, tales como ajuste lineal o ajuste polinomial de tercer grado. Pero la variabilidad de los canales ha aumentado con el creciente número de antenas, una mayor gama de frecuencias y entornos cambiantes.

Utilizando IA, puede entrenar un modelo para observar el comportamiento de un canal y realizar estimaciones precisas a pesar de la gran cantidad de parámetros. Un modelo basado en IA puede realizar detección y clasificación de señales en unos pocos milisegundos, más rápido que el método tradicional. Dado que los métodos del modelo basado en IA son simples, el consumo de potencia y requisitos computacionales es reducido.

En esta sección se explica el proceso paso a paso, desde la preparación de datos hasta el modelado, la simulación y el despliegue de un modelo de IA con Deep Learning para crear una red neuronal convolucional (CNN) que realiza estimación de un canal 5G. Una vez terminado, el modelo de IA permitirá mejorar el rendimiento general del sistema inalámbrico sin necesidad de modificar ninguna otra parte del sistema.

 De izquierda a derecha, pasos iterativos del desarrollo de estimación de canal 5G basada en IA, desde la síntesis de formas de onda conformes con el estándar 5G, al diseño de algoritmos de IA y el despliegue de código HDL en FPGA.

MATLAB puede ayudar a crear formas de onda conformes con 5G, y emplear esos datos para entrenar, simular, probar, optimizar y desplegar un modelo de estimación de canal basado en IA.

partición

Preparación de datos

El primer paso del proceso de creación de un modelo de estimación de canal basada en IA es generar formas de onda conformes con 5G para entrenar el modelo. Los datos de entrenamiento deben ser sólidos, es decir, no solo deben ser conformes con estándares, sino que también deben ser detallados y representar distorsiones y escenarios de canal realistas.

MATLAB facilita la generación de formas de onda conformes con estándares y conjuntos de datos sólidos. Para crear un conjunto de datos para entrenar un modelo de estimación de canal basado en IA:

  • Utilice Wireless Waveform Generator para generar formas de onda del estándar 5G.
  • Aumente esas señales con Wireless Waveform Generator para que el conjunto de datos sea más realista, agregando distorsiones a las que se enfrentarán las señales en el mundo real. Con un sencillo menú desplegable, puede agregar ruido gaussiano, ruido de fase o ruido de frecuencia.
  • Utilice la app Signal Labeler para aplicar su propio conocimiento especializado al conjunto de datos. Los datos etiquetados ayudan a caracterizar las señales durante el entrenamiento e incorporan inteligencia humana al modelo.
Wireless Waveform Generator que muestra la síntesis de formas de onda 5G.

Wireless Waveform Generator ofrece opciones para seleccionar estándares de forma de onda y rangos de frecuencia, y agregar distorsiones antes de generar datos de forma de onda.

Después de recopilar y etiquetar los datos, deberá procesarlos para crear una señal que se pueda utilizar como entrada para entrenar un modelo de IA. Por ejemplo, puede representar el tiempo en el eje y y la frecuencia en el eje x, y capturar la intensidad de la señal en cada coordenada de tiempo y frecuencia con un color para crear un mapa de calor. Con esta serie de imágenes, podrá alimentar redes de Deep Learning entrenadas para identificar imágenes.

También puede dividir los datos en datos de entrenamiento y datos de validación, a fin de crear un conjunto de datos para validar y ajustar el modelo una vez que esté entrenado.

La forma de recopilar, gestionar y etiquetar los datos dependerá del proyecto en cuestión. En algunos proyectos, es posible capturar suficientes datos del mundo real para entrenar un modelo.

Gráfica codificada por colores de la intensidad de las señales de un conjunto de datos 5G, con el tiempo en el eje y y la frecuencia en el eje x.

Wireless Waveform Generator ayuda a crear conjuntos de datos de forma de onda sintéticos sólidos para diversos estándares.

Cuando esto no sea posible, puede crear datos sintetizados para representar las distorsiones a las que se enfrentará un sistema real. Puede resultar complicado replicar las condiciones que se ven en la práctica con datos sintetizados. MATLAB ayuda a replicar condiciones del mundo real con su extensa librería de distorsiones de canal típicas.

partición

Modelado con IA

Desde MATLAB, tiene acceso directo a algoritmos de IA comunes para identificación y predicción, incluyendo regresión, redes profundas y agrupación. El primer paso para crear un modelo de IA es seleccionar un enfoque; por ejemplo, crear una CNN para realizar estimación de un canal.

Esta es una magnífica opción, ya que las CNN son perfectas para el procesamiento de imágenes. Como ventaja añadida, utilizan la transferencia del aprendizaje y, por lo tanto, el modelo puede basarse en redes de procesamiento de imágenes entrenadas preexistentes, tales como GoogLeNet o AlexNet.

Diagrama que muestra una red neuronal convolucional para estimación de un canal que toma como entrada una señal recibida con símbolos piloto y genera como salida la estimación de un canal.

La CNN de estimación de un canal toma como entrada imágenes etiquetadas que representen formas de onda 5G con símbolos piloto y devuelve una estimación de la distorsión de un canal.

Para crear y entrenar la red neuronal, utilice Deep Network Designer. Puede hacer lo siguiente:

  • Importar los datos generados y ver el proceso de entrenamiento.
  • Acelerar el entrenamiento sin necesidad de programación especializada con Parallel Computing Toolbox.

También puede importar modelos de IA desarrollados con marcos de código abierto tales como PyTorch® y TensorFlow™.

Luego, puede utilizar la app Experiment Manager para ajustar el modelo y buscar opciones de entrenamiento óptimas. Utilice búsqueda de cuadrícula, búsqueda aleatoria y búsqueda basada en optimización bayesiana para hacer un barrido de los hiperparámetros.

Ejecutando experimentos en paralelo, puede probar diferentes configuraciones de entrenamiento al mismo tiempo. Las matrices de confusión y las funciones métricas personalizadas ayudarán a evaluar la red entrenada.

Con MATLAB, puede crear una “referencia de alto nivel” o un modelo de estimación de un canal perfecto con el que se pueda comparar el modelo de IA. Además, puede comparar el modelo con un método tradicional, como un algoritmo de interpretación lineal, para el mismo modelo de canal en el mismo entorno.

Resultados de la estimación de un canal, lado a lado. Tres columnas representan datos de diferentes modelos, incluyendo la interpolación lineal, un estimador práctico y la red neuronal. La cuarta representa el canal propio.

Comparación de los resultados de diferentes enfoques de estimación de canal y el propio canal utilizando el error cuadrático medio (ECM), que demuestra que el enforque de red neuronal es el más preciso.

partición

Simulación y pruebas

Una vez que haya validado localmente el modelo de estimación de canal basado en IA, deberá validarlo globalmente en el contexto del sistema más amplio. Además, deberá probar y ajustar el modelo con señales 5G inalámbricas.

Con MATLAB, puede conectar el modelo de IA a una simulación del sistema existente de la misma forma que se incorpora cualquier otro bloque.

Navegación de panel

Para obtener más información sobre la integración de componentes de diseño de diversas fuentes y verificar que el sistema resultante cumple con los requisitos, lea:

Para las pruebas puede:

  • Crear una configuración de laboratorio con equipos de hardware de prueba y medición. Este hardware se puede conectar al entorno de MATLAB con Instrument Control Toolbox para transmitir en vivo los datos desde MATLAB al hardware y realizar pruebas OTA.
  • Utilizar radios definidas por software para transmitir los datos de manera inalámbrica y recibirlos con efectos de canal en tiempo real.
Diagrama de bloques que muestra cómo instrumentos de generación y captura de señales de RF y transmisores y receptores de SDR admitidos crean flujos de señales para analizarlos.

Capture datos en vivo directamente en MATLAB utilizando SDR e instrumentos de transmisión y recepción de señales.

¿Qué cabe esperar del sistema inalámbrico después de integrar la CNN de estimación de canal basada en IA? Las métricas clave que se deben examinar para comprobar las mejoras son:

  • Tasa de tasa de transferencia: la cantidad de datos transmitidos correctamente por segundo debería aumentar
  • Errores: la tasa de errores de bloques, la tasa de errores de bits y la tasa de errores de paquetes deberían disminuir
partición

Despliegue

MATLAB cuenta con un marco de generación de código exclusivo que permite desplegar los modelos en cualquier parte sin necesidad de reescribir el código. Puede hacer lo siguiente:

  • Mejorar y probar de manera iterativa prototipos de modelos de IA en hardware durante la fase de diseño
  • Desplegar el modelo de IA en hardware de producción para validar o lanzar el sistema

Por ejemplo, si desea desplegar el modelo de estimación de canal basado en IA en una FPGA, puede utilizar Deep Learning HDL Toolbox™ para convertir el modelo y crear un flujo de trabajo HDL. Luego, compile, despliegue y realice predicción para determinar la velocidad y precisión de la inferencia en distintas plataformas FPGA.

Entre las posibles plataformas de despliegue se encuentran:

  • Dispositivos integrados ligeros y de baja potencia, tales como los utilizados en un automóvil
  • Placas de prototipado rápido de bajo coste, tales como Raspberry Pi
  • Aplicaciones de IoT basadas en edge, tales como un sensor y un controlador de una máquina de una fábrica
  • Plataformas integradas que ejecuten código C/C++, HDL, PLC o CUDA

Con MATLAB, también puede desplegar en entornos de escritorio o servidor, lo que permite escalar desde ejecutables de escritorio hasta sistemas empresariales basados en la nube en AWS® o Azure® (por ejemplo, una plataforma de análisis financiero).

Jerarquía de opciones de despliegue que muestra que los modelos se pueden desplegar en hardware integrado o en sistemas empresariales.

La generación de código de MATLAB permite realizar despliegues en diversas plataformas de hardware.