ebook

第 2 章

5G チャネル推定のための AI ワークフロー


チャネル推定は、現代のどのような無線システムでも解決しなければならない基本的な課題です。受信機は、送信機によって送信された信号がチャネルでどのように変更されているのかを把握し、各時点と周波数でチャネルモデルを指定する方法を特定する必要があります。チャネル推定が適切に行われると、スループットが向上し、エラーレートが減少します。

チャネル推定の実行に使用される従来型のアルゴリズムは、線形近似や 3 次多項式近似などの数学的近似アルゴリズムに基づいています。しかし、アンテナ数の増加、周波数の広範囲化、環境の多様化に伴い、チャネルの変動性が高まりました。

AI を使用してモデルの学習を行えば、パラメーターの数が多くても、チャネルの動作を監視し、正確な推定を行うことができます。AI ベースのモデルでは、信号の検出と分類を、従来型の手法よりも高速な、数ミリ秒で実行できます。AI ベースのモデル内の手法はシンプルなため、必要な消費電力と計算量も低減できます。

このセクションでは、5G チャネル推定を実行する畳み込みニューラル ネットワーク (CNN) をディープラーニングを使用して作成する AI モデルを例に、そのデータ準備からモデル化、シミュレーション、展開に至るプロセスについて説明します。AI モデルが完成すると、システムの他の部分を変更することなく、無線システム全体の性能を向上させることができます。

 左から右に向かって、各ブロックは、5G 規格に準拠した波形の合成から始まり、AI アルゴリズム設計への移行、FPGA HDL コードの展開に至る AI ベース 5G チャネル推定の開発の反復手順を示しています。

MATLAB を使用すると、5G に準拠した波形作成、そのデータを使用した AI ベースのチャネル推定モデルの学習、モデルのシミュレーション、テスト、最適化、および展開を容易に行うことができる。

セクション

データの準備

チャネル推定のための AI ベースモデル作成プロセスにおける最初の手順は、モデルの学習で使用する 5G 準拠の波形の生成です。学習データは、堅牢性が高くなければなりません。つまり、規格に準拠しているだけでなく、包括的で、チャネル劣化要因と現実的なシナリオを表すものである必要があります。

MATLAB を使用すれば、規格に準拠した波形と堅牢性の高いデータセットを簡単に生成できます。AI ベースチャネル推定モデルの学習用データセットを作成するには、以下を行います。

  • 無線波形発生器を使用して 5G 規格の波形を生成する。
  • 無線波形発生器を使用して信号を増強し、実際の環境で信号に加えられる歪みを追加することで、データセットがより現実的なシナリオを表すようにする。シンプルなドロップダウン メニューを使用して、ガウスノイズ、位相ノイズ、または周波数ノイズを追加できます。
  • 信号ラベラーアプリを使用して、専門知識をデータセットに適用する。ラベルデータは、学習時の信号の特性評価に役立ちます。また、ラベルデータによって人間の知能がモデルに組み込まれます。
無線波形発生器のスクリーンショットで 5G 波形の合成が示されています。

無線波形発生器には、波形の規格と周波数範囲を選択するオプションと、波形データを生成する前に劣化要因を追加するオプションが用意されています。

データを収集してラベル付けした後は、そのデータを処理して、AI モデルの学習で入力として使用できる信号を作成する必要があります。たとえば、Y 軸に時間、X 軸に周波数をプロットし、時間と周波数の各座標で信号強度を色として取得してヒートマップを作成できます。これによって、画像分類のために学習させるディープラーニング ネットワークへの入力に適した一連の画像が作成されます。

また、データを学習データと検証データに分割することもできます。これにより、モデルの学習後にモデルの検証と調整を行う際に使用するデータセットが得られます。

データの収集、管理、ラベル付けを行う方法は、具体的なプロジェクトによって異なります。プロジェクトによっては、モデルの学習に十分な実データを取得できます。

Y 軸が時間、X 軸が周波数である、5G データセットの信号強度の色分けされたプロット。

無線波形発生器は、さまざまな規格に対応した堅牢性の高い合成波形データセットを作成するのに役立ちます。

十分なデータを取得できない場合は、合成データを使用して実際のシステムで生じる事象を表すという方法もあります。実際の環境で生じる状況を合成データで再現するのは難しい場合があります。MATLAB を使用すれば、標準的なチャネル劣化要因の広範なライブラリを使用して、実環境の状況を容易に再現できます。

セクション

AI モデリング

MATLAB 内では、回帰、ディープネットワーク、クラスタリングなど、分類や予測に使用される一般的な AI アルゴリズムを直接利用できます。AI モデル構築の最初の手順として、使用するアプローチを選択します。たとえば、CCN を構築してチャネル推定を実行するアプローチなどです。

CNN は優れた画像処理機能があるため、この AI モデルに最適です。転移学習を利用したメリットを活かせるため、GoogLeNet や AlexNet などの既存の学習済み画像処理ネットワークに基づいてモデルを構築できます。

パイロットシンボルが付けられた受信信号を入力として受け取り、チャネル推定を出力する、チャネル推定用の畳み込みニューラル ネットワークを示した図。

チャネル推定 CNN は、パイロットシンボルが付けられた 5G の波形を表すラベル付けされた画像を受け取り、チャネル歪みの推定を返す。

CNN を構築するには、ディープ ネットワーク デザイナーを使用して、ニューラル ネットワークの学習と構築を行います。以下を行うことができます。

  • 生成したデータをインポートし、学習プロセスを可視化する。
  • Parallel Computing Toolbox を使用することで、専用のプログラミングを行うことなく、学習を高速化する。

PyTorch® や TensorFlow™ などのオープンソースのフレームワークを使用して作成された AI モデルをインポートすることもできます。

その後、実験マネージャーアプリを使用して、モデルを調整し、最適な学習オプションを見つけることができます。グリッド探索、ランダム探索、ベイズ最適化ベースの探索を使用して、ハイパーパラメーターを広範にスイープします。

実験を並列して実行することで、さまざまな学習構成を同時にテストできます。混同行列とカスタムメトリクス関数は、学習済みネットワークの評価に役立ちます。

MATLAB を使用して「ゴールデン リファレンス」、つまり AI モデルの比較対象にすることができる最適なチャネル推定モデルを作成できます。作成したモデルを、同じ環境内の同じチャネルモデルの従来型の手法 (線形補間アルゴリズムなど) と比較することもできます。

横に並べられたチャネル推定の 4 つの出力。このうち 3 つは、線形内挿、実用的推定器、ニューラル ネットワークなどの各種モデルからのデータを表しています。4 つ目が、実際のチャネルです。

チャネル推定の各種アプローチの結果が、平均二乗誤差 (MSE) を使用して実際のチャネルと比較され、ニューラル ネットワークが最も正確であることが示されている。

セクション

シミュレーションとテスト

AI ベースのチャネル推定モデルの妥当性をローカルで確認した後は、より大規模なシステムのコンテキストでグローバルに妥当性を確認する必要があります。また、無線 5G 信号を使用してモデルをテストおよび微調整する必要も生じます。

MATLAB を使用すれば、他のブロックをドラッグアンドドロップするのと同じように、AI モデルを既存のシステム シミュレーションに接続できます。

パネルナビゲーション

複数のソースからの設計コンポーネントの統合方法と、結果として得られたシステムの要件準拠の検証方法に関する詳細については、以下をご覧ください。

テストのために、以下を行うことができます。

  • テストと計測向けハードウェア機器を使用して、ラボ環境を作成する。Instrument Control Toolbox を使用してハードウェアを MATLAB 環境に接続し、MATLAB からハードウェアにデータをライブストリーミングして、OTA テストを実行します。
  • ソフトウェア無線を使用して、無線でデータを送信し、リアルタイムのチャネルの影響が含まれたデータを受信する。
ブロック線図により、RF 信号の生成と取得用の機器およびサポート対象の SDR 送信機と受信機によって解析用の信号のフローが、どのように作成されるのかを示しています。

SDR と信号送受信用の機器を使用して、ライブデータを MATLAB に直接収集する。

AI ベースのチャネル推定 CNN を統合すると、無線システムから何が得られるでしょうか。改善の余地について調べる必要がある主なメトリクスは、以下のとおりです。

  • スループット: 1 秒間に正常に送信されるデータ量が増加している
  • エラー: ブロックエラーレート、ビットエラーレート、パケットエラーレートが減少している
セクション

展開

MATLAB には独自のコード生成フレームワークが用意されており、コードを記述し直すことなくモデルを任意の場所に展開できます。以下を行うことができます。

  • 設計段階でハードウェアのプロトタイプ AI モデルを反復的に改善およびテストする
  • システムの妥当性確認またはロールアウトのために AI モデルを運用環境のハードウェアに展開する

たとえば、AI ベースのチャネル推定モデルを FPGA に展開できます。Deep Learning HDL Toolbox™ を使用してモデルを変換し、HDL ワークフローを作成します。その後、コンパイル、展開、予測を行って、さまざまな FPGA プラットフォームで推論の速度と正確性を判定します。

その他の展開ターゲットの例を以下に示します。

  • 低電力で軽量の組み込みデバイス (車で使用されるものなど)
  • 低コストのラピッド プロトタイピング (Raspberry Pi など)
  • エッジベースの IoT アプリケーション (工場内の機器のセンサーやコントローラーなど)
  • C/C++、HDL、PLC、または CUDA のコードを実行する組み込みプラットフォーム

MATLAB ではデスクトップ環境またはサーバー環境に展開することもできます。これにより、デスクトップの実行可能ファイルから、AWS® または Azure® 上のクラウドベースのエンタープライズ システム (金融解析プラットフォームなど) に拡張できます。

展開オプションの階層で、モデルを組み込みハードウェアまたはエンタープライズ システムに展開できることが示されています。

MATLAB のコード生成により、さまざまなハードウェア プラットフォームに展開できます。