E-book

L'IA pour les systèmes de télécommunications avec MATLAB

CHAPITRES

Chapitre 2 : workflow d'IA pour l'estimation du canal 5G

Chapitre 2

Workflow d'IA pour l'estimation du canal 5G


L'estimation du canal est un défi fondamental que tout système de télécommunications moderne doit résoudre. Le récepteur doit comprendre comment le canal modifie les signaux envoyés par l'émetteur et déterminer comment spécifier le modèle de canal pour chaque instance de temps et de fréquence. Lorsque l'estimation du canal est bien menée, le débit augmente et les taux d'erreur diminuent.

Les algorithmes traditionnels utilisés pour effectuer l'estimation du canal sont basés sur des algorithmes mathématique d'ajustement, tels que l'ajustement linéaire ou l'ajustement polynomial d'ordre 3. La variabilité du canal s'est toutefois accrue avec l'augmentation du nombre d'antennes, l'élargissement de la gamme de fréquences et la variation des environnements.

Grâce à l'IA, vous pouvez entraîner un modèle afin qu'il observe le comportement du canal et produise des estimations précises malgré le grand nombre de paramètres. Un modèle basé sur l'IA peut effectuer la détection et la classification des signaux en quelques millisecondes, ce qui est plus rapide que la méthode traditionnelle. Du fait que les méthodes internes du modèle basé sur l'IA sont simples, cela peut également réduire la consommation d'énergie et les exigences de calcul.

Cette section vous guide tout au long du processus, de la préparation des données à la modélisation, la simulation et le déploiement d'un modèle d'IA utilisant le Deep Learning pour créer un réseau de neurones à convolution (CNN) qui effectue une estimation du canal 5G. Une fois prêt, ce modèle d'IA vous permettra d'améliorer les performances globales du système de télécommunications sans avoir à modifier d'autre partie du système.

 De gauche à droite, les blocs illustrent les étapes itératives du développement d'un modèle basé sur l'IA pour l'estimation du canal 5G : en premier lieu, la synthèse de formes d'onde conformes à la norme 5G, puis le design de l'algorithme d'IA, et enfin le déploiement du code HDL sur FPGA.

MATLAB peut vous aider à créer des formes d'onde conformes à la norme 5G, à utiliser ces données pour entraîner un modèle basé sur l'IA pour l'estimation du canal, à simuler, tester et optimiser le modèle, puis à le déployer.

section

Préparation des données

La première étape du processus de création d'un modèle basé sur l'IA pour l'estimation du canal consiste à générer des formes d'onde conformes à la norme 5G, qui serviront à entraîner votre modèle. Les données d'apprentissage doivent être robustes, c'est-à-dire qu'elles doivent être non seulement conformes aux normes, mais aussi complètes et représentatives des dégradations du canal et de scénarios réalistes.

MATLAB permet de générer facilement des formes d'onde conformes aux normes et des jeux de données robustes. Pour créer un jeu de données qui servira à entraîner un modèle d'estimation du canal basé sur l'IA :

  • Utilisez Wireless Waveform Generator pour générer des formes d'onde conformes à la norme 5G.
  • Augmentez ces signaux avec Wireless Waveform Generator pour rendre le jeu de données plus représentatif de la réalité en ajoutant des distorsions auxquelles les signaux seront confrontés dans le monde réel. Un simple menu déroulant vous permet d'ajouter du bruit gaussien, du bruit de phase ou de fréquence.
  • Utilisez l'application Signal Labeler pour appliquer une expertise métier à votre jeu de données. Les données labellisées contribuent à la caractérisation du signal pendant l'apprentissage et intègrent l'intelligence humaine dans le modèle.
Une capture d'écran de Wireless Waveform Generator montre la synthèse de formes d'onde 5G.

Wireless Waveform Generator propose des options permettant de sélectionner des normes et plages de fréquences pour la forme d'onde et d'ajouter des dégradations avant de générer les données de forme d'onde.

Une fois vos données collectées et labellisées, vous devrez les traiter afin de créer un signal pouvant être utilisé comme entrée pour entraîner un modèle d'IA. Vous pouvez par exemple représenter le temps sur l'axe des y et la fréquence sur l'axe des x, et capturer sous forme de couleur la force du signal pour chaque coordonnée de temps et de fréquence afin de créer une heat map. Cela va créer une série d'images utilisables pour alimenter les réseaux de Deep Learning entraînés à classifier des images.

Il vous faudra également scinder vos données en données d'apprentissage et de validation afin de disposer d'un jeu de données qui servira à valider et ajuster votre modèle une fois celui-ci entraîné.

La manière de collecter, gérer et labelliser les données dépend de la nature de votre projet. Dans certains projets, vous pourrez peut-être capturer des données réelles qui s'avéreront suffisantes pour entraîner un modèle.

Graphique utilisant un code couleur pour représenter les intensités de signal d'un jeu de données 5G, avec le temps sur l'axe y et la fréquence sur l'axe x.

L'outil Wireless Waveform Generator vous aide à créer des jeux de données synthétiques robustes de forme d'onde pour diverses normes.

Lorsque cela n'est pas possible, vous pouvez envisager d'utiliser des données synthétiques pour représenter ce à quoi un système réel est exposé. Il peut être difficile de recréer les conditions observées sur le terrain avec des données synthétisées. MATLAB peut vous aider à recréer des conditions réelles grâce à sa vaste bibliothèque de dégradations typiques du canal.

section

Modélisation de l'IA

Dans MATLAB, vous avez à disposition des algorithmes d'IA couramment utilisés pour la classification et la prédiction, comme la régression, les réseaux profonds et le clustering. La première étape de la construction d'un modèle d'IA consiste à choisir une approche, par exemple la construction d'un réseau CNN pour effectuer l'estimation du canal.

Un CNN est un choix judicieux pour ce modèle d'IA car les CNN excellent dans le traitement d'images. Ils présentent l'avantage supplémentaire de s'appuyer sur l'apprentissage par transfert, de sorte que votre modèle peut exploiter des réseaux de traitement d'images entraînés préexistants, comme GoogLeNet ou AlexNet.

Diagramme montrant un réseau de neurones à convolution pour l'estimation du canal, qui accepte en entrée un signal reçu avec des symboles pilotes et produit en sortie une estimation du canal.

L'estimation du canal par le CNN prend en entrée des images labellisées qui représentent des formes d'onde 5G avec des symboles pilotes et renvoie en sortie une estimation de la distorsion du canal.

Afin de créer le CNN, utilisez Deep Network Designer pour entraîner et créer le réseau de neurones. Vous pouvez :

  • Importer les données que vous avez générées et visualiser le processus d'apprentissage
  • Accélérer l'apprentissage sans aucune programmation spécialisée en utilisant Parallel Computing Toolbox

Vous pouvez également importer des modèles d'IA développés en utilisant des frameworks Open Source tels que PyTorch® et TensorFlow™.

Vous pouvez ensuite utiliser l'application Experiment Manager pour ajuster le modèle et trouver les options d'apprentissage optimales. Utilisez la recherche par grille, la recherche aléatoire et la recherche basée sur l'optimisation bayésienne pour balayer l'espace des hyperparamètres.

Exécuter des expériences en parallèle vous permet de tester simultanément différentes configurations d'apprentissage. Les matrices de confusion et les fonctions de métriques personnalisées vous aideront à évaluer votre réseau entraîné.

Avec MATLAB, vous pouvez créer un modèle de référence ou modèle parfait d'estimation du canal, auquel votre modèle d'IA peut être comparé. Vous pouvez également comparer votre modèle à une méthode traditionnelle, telle qu'un algorithme d'interprétation linéaire, pour le même modèle de canal dans le même environnement.

Quatre sorties côte à côte, représentant l'estimation du canal. Les trois premières représentent les données issues de différents modèles, à savoir l'interpolation linéaire, un estimateur pratique et le réseau de neurones. La quatrième représente le canal réel.

Les résultats de différentes approches d'estimation du canal sont comparés au canal réel en utilisant l'erreur quadratique moyenne (MSE). Cette comparaison montre que le réseau de neurones est l'approche la plus précise.

section

Simulation et tests

Une fois que vous aurez validé localement votre modèle d'estimation du canal basé sur l'IA, vous devrez le valider de manière globale, dans le contexte d'un système plus étendu. Vous devrez également tester et affiner votre modèle avec des signaux 5G over-the-air.

Avec MATLAB, vous pouvez intégrer votre modèle d'IA à une simulation de système existante de la même manière qu'avec n'importe quel autre bloc.

Navigation dans l'interface

Pour en savoir plus sur l'intégration de composants de design provenant de sources diverses et sur la manière de vérifier que le système résultant répond aux exigences, lisez le document suivant :

Pour les tests, vous pouvez :

  • Créer une configuration de laboratoire avec des équipements hardware de tests et de mesures. Le hardware peut être connecté à l'environnement MATLAB en utilisant Instrument Control Toolbox pour streamer des données de MATLAB vers le hardware et effectuer des tests OTA.
  • Utiliser des radios logicielles (SDR) pour émettre les données par voie radio et recevoir les données avec des effets de canal temps réel.
Un schéma bloc montre comment les instruments de génération/capture de signaux RF et les émetteurs/récepteurs SDR supportés créent des flux de signaux pour l'analyse.

Acquérir des données temps réel directement dans MATLAB en utilisant une SDR et des instruments d'émission et de réception de signaux.

Que pouvez-vous attendre de votre système de télécommunications une fois que vous avez intégré votre CNN d'estimation du canal basé sur l'IA ? Les principales métriques à examiner pour constater les améliorations comprennent :

  • Le débit — La quantité de données transmises avec succès par seconde devrait augmenter.
  • Les erreurs — Le taux d'erreur de bloc, le taux d'erreur binaire et le taux d'erreur paquet devraient baisser.
section

Déploiement

MATLAB inclut un framework unique de génération de code qui permet de déployer des modèles n'importe où sans avoir à réécrire le code. Vous pouvez :

  • Améliorer et tester de manière itérative des prototypes de modèles d'IA sur le hardware pendant la phase de design.
  • Déployer votre modèle d'IA sur du hardware de production pour la validation ou le déploiement du système.

Par exemple, vous souhaiterez peut-être déployer le modèle d'estimation du canal basé sur l'IA sur une carte FPGA. Utilisez Deep Learning HDL Toolbox™ pour convertir le modèle et créer un workflow HDL. Ensuite, compilez, déployez et effectuez des prédictions pour déterminer la vitesse et la précision de l'inférence sur différentes plateformes FPGA.

Autres cibles de déploiement :

  • Dispositifs embarqués légers et de faible puissance (tels que ceux utilisés dans une voiture)
  • Cartes de prototypage rapide à faible coût, comme Raspberry Pi
  • Applications IoT en périphérie, telles qu'un capteur et un contrôleur sur une machine dans une usine
  • Plateformes embarquées exécutant du code C/C++, HDL, PLC ou CUDA

MATLAB peut également être déployé sur des environnements desktop ou serveur, ce qui vous permet d'évoluer d'exécutables desktop à des systèmes d'entreprise basés dans le cloud sur AWS® ou Azure® (comme une plateforme d'analyse financière).

Une hiérarchie des options de déploiement montre que les modèles peuvent être déployés sur du hardware embarqué ou sur des systèmes d'entreprise.

La génération de code MATLAB permet le déploiement sur un large éventail de plateformes hardware.