深度通信网络专栏(4)|自编码器:Blind Channel Equalization using Variational Autoencoders

本文主要是介绍深度通信网络专栏(4)|自编码器:Blind Channel Equalization using Variational Autoencoders,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文地址:https://arxiv.org/abs/1803.01526

文章目录

    • 前言
    • 文章主要贡献
    • 系统模型
      • 变分自编码器
      • 引入神经网络
    • 仿真结果

前言

深度通信网络专栏|自编码器:整理2018-2019年使用神经网络实现通信系统自编码器的论文,一点拙见,如有偏颇,望不吝赐教,顺颂时祺。

文章主要贡献

原来提出的最大似然估计下的盲信道均衡使用期望最大或近似期望最大,计算复杂度过高。

本文提出用变分自编码器(VAE)实现最大似然估计下的盲信道均衡,与恒模算法(CMA)相比可达到更低的ber和更低的信道获取时延。VAE的性能接近非盲自适应线性最小均方误差均衡器。

VAE由两层卷积层和少量自由参数构成,虽然计算复杂度比CMA高,但是需要估计的自由参数个数较少。

系统模型

在这里插入图片描述
一个端到端系统可表示为以上结构, y = x ∗ h + w \mathbf{y}=\mathbf{x} * \mathbf{h}+\mathbf{w} y=xh+w
使用QPSK调制,则 x = x I + j ⋅ x Q \mathrm{x}=\mathrm{x}^{I}+j \cdot \mathrm{x}^{Q} x=xI+jxQ h = h I + j ⋅ h Q \mathbf{h}=\mathbf{h}^{I}+j \cdot \mathbf{h}^{Q} h=hI+jhQ y = y I + j ⋅ y Q \mathbf{y}=\mathbf{y}^{I}+j \cdot \mathbf{y}^{Q} y=yI+jyQ
给定xy 的条件概率函数为:
p θ ( y ∣ x ) = p θ ( y I ∣ x I ) p θ ( y Q ∣ x Q ) = 1 ( π σ w 2 ) N ⋅ e − ∥ y − x ∗ h ∥ 2 / σ w 2 \begin{aligned} p_{\boldsymbol{\theta}}(\mathbf{y} | \mathbf{x}) &=p_{\boldsymbol{\theta}}\left(\mathbf{y}^{I} | \mathbf{x}^{I}\right) p_{\boldsymbol{\theta}}\left(\mathbf{y}^{Q} | \mathbf{x}^{Q}\right) \\ &=\frac{1}{\left(\pi \sigma_{w}^{2}\right)^{N}} \cdot e^{-\|\mathbf{y}-\mathbf{x} * \mathbf{h}\|^{2} / \sigma_{w}^{2}} \end{aligned} pθ(yx)=pθ(yIxI)pθ(yQxQ)=(πσw2)N1eyxh2/σw2

变分自编码器

ML估计,即是估计向量h 和噪声方差 σ w 2 \sigma_{w}^{2} σw2,使得 log ⁡ p θ ( y ) \log p_{\boldsymbol{\theta}}(\mathbf{y}) logpθ(y)最大,令 θ ≜ { h , σ w 2 } \boldsymbol{\theta} \triangleq\left\{\mathbf{h}, \sigma_{w}^{2}\right\} θ{h,σw2}。使用变分法可以简化这一信道估计问题:使用变分法求泛函数 log ⁡ p θ ( y ) \log p_{\boldsymbol{\theta}}(\mathbf{y}) logpθ(y)的极小值,将问题转化为 最大化 log ⁡ p θ ( y ) \log p_{\boldsymbol{\theta}}(\mathbf{y}) logpθ(y)的lower bound!使用神经网络解决此最大最小化问题。

补充:变分法
- 变分法用于求解使泛函数取得极大值或极小值的极值函数
- 泛函数:输入是一个函数,输出是一个值。
- 通常在变分法中,泛函数是一个积分
eg. I ( y ) = ∫ x 1 x 2 F d x I(y)=\int_{x_{1}}^{x_{2}} F d x I(y)=x1x2Fdx,F可以是y(x)和y(x)各阶导数的函数。
- 在这里 p θ ( y ) = ∫ x p ( x ) p θ ( y ∣ x ) d x p_{\boldsymbol{\theta}}(\mathbf{y})=\int_{\mathbf{x}} p(\mathbf{x}) p_{\boldsymbol{\theta}}(\mathbf{y} | \mathbf{x}) d \mathbf{x} pθ(y)=xp(x)pθ(yx)dx ,y是x的函数。

log ⁡ p θ ( y ) ≥ E q Φ ( x ∣ y ) [ − log ⁡ q Φ ( x ∣ y ) + log ⁡ p θ ( x , y ) ] = − D K L [ q Φ ( x ∣ y ) ∥ p ( x ) ] ⎵ A + E q Φ ( x ∣ y ) [ log ⁡ p θ ( y ∣ x ) ] ⎵ B ≜ − L ( θ , Φ , y ) \begin{aligned} \log p_{\boldsymbol{\theta}}(\mathbf{y}) \geq & \mathbb{E}_{q_{\Phi}(\mathbf{x} | \mathbf{y})}\left[-\log q_{\Phi}(\mathbf{x} | \mathbf{y})+\log p_{\boldsymbol{\theta}}(\mathbf{x}, \mathbf{y})\right] \\=& \underbrace{-D_{K L}\left[q_{\Phi}(\mathbf{x} | \mathbf{y}) \| p(\mathbf{x})\right]}_{A} \\ &+\underbrace{\mathbb{E}_{q_{\Phi}(\mathbf{x} | \mathbf{y})}\left[\log p_{\boldsymbol{\theta}}(\mathbf{y} | \mathbf{x})\right]}_{B} \triangleq-\mathcal{L}(\boldsymbol{\theta}, \mathbf{\Phi}, \mathbf{y}) \end{aligned} logpθ(y)=EqΦ(xy)[logqΦ(xy)+logpθ(x,y)]A DKL[qΦ(xy)p(x)]+B EqΦ(xy)[logpθ(yx)]L(θ,Φ,y)
引入了自由参数Φ,问题转化为找到θ和Φ,使得 L ( θ , Φ , y ) \mathcal{L}(\boldsymbol{\theta}, \mathbf{\Phi}, \mathbf{y}) L(θ,Φ,y)最小。那么如何得到 L ( θ , Φ , y ) \mathcal{L}(\boldsymbol{\theta}, \mathbf{\Phi}, \mathbf{y}) L(θ,Φ,y)呢?
分析上式,可知上式与 p θ ( y ∣ x ) p_{\boldsymbol{\theta}}(\mathbf{y} | \mathbf{x}) pθ(yx) q Φ ( x ∣ y ) q_{\Phi}(\mathrm{x} | \mathrm{y}) qΦ(xy) p ( x ) p(\mathbf{x}) p(x)有关,其中: p θ ( y ∣ x ) = p θ ( y I ∣ x I ) p θ ( y Q ∣ x Q ) = 1 ( π σ w 2 ) N ⋅ e − ∥ y − x ∗ h ∥ 2 / σ w 2 \begin{aligned} p_{\boldsymbol{\theta}}(\mathbf{y} | \mathbf{x}) &=p_{\boldsymbol{\theta}}\left(\mathbf{y}^{I} | \mathbf{x}^{I}\right) p_{\boldsymbol{\theta}}\left(\mathbf{y}^{Q} | \mathbf{x}^{Q}\right) \\ &=\frac{1}{\left(\pi \sigma_{w}^{2}\right)^{N}} \cdot e^{-\|\mathbf{y}-\mathbf{x} * \mathbf{h}\|^{2} / \sigma_{w}^{2}} \end{aligned} pθ(yx)=pθ(yIxI)pθ(yQxQ)=(πσw2)N1eyxh2/σw2
p ( x ) = p ( x I ) p ( x Q ) = 2 − 2 N p(\mathbf{x})=p\left(\mathbf{x}^{I}\right) p\left(\mathbf{x}^{Q}\right)=2^{-2 N} p(x)=p(xI)p(xQ)=22N
只需得到 q Φ ( x ∣ y ) q_{\Phi}(\mathrm{x} | \mathrm{y}) qΦ(xy)即可得到 L ( θ , Φ , y ) \mathcal{L}(\boldsymbol{\theta}, \mathbf{\Phi}, \mathbf{y}) L(θ,Φ,y),此时可用解析的方法找到θ和Φ。

引入神经网络

在这里插入图片描述

用神经网络来求 q Φ ( x ∣ y ) q_{\Phi}(\mathrm{x} | \mathrm{y}) qΦ(xy) q Φ ( x ∣ y ) = ∏ j = 0 N − 1 q Φ ( x j ∣ y ) = ∏ j = 0 N − 1 q Φ ( x j I ∣ y ) q Φ ( x j Q ∣ y ) q_{\Phi}(\mathrm{x} | \mathrm{y})=\prod_{j=0}^{N-1} q_{\Phi}\left(x_{j} | \mathrm{y}\right)=\prod_{j=0}^{N-1} q_{\Phi}\left(x_{j}^{I} | \mathrm{y}\right) q_{\Phi}\left(x_{j}^{Q} | \mathrm{y}\right) qΦ(xy)=j=0N1qΦ(xjy)=j=0N1qΦ(xjIy)qΦ(xjQy)
神经网络的输出为 q Φ ( x j I ∣ y ) 和 q Φ ( x j Q ∣ y ) q_{\Phi}\left(x_{j}^{I} | \mathbf{y}\right) 和q_{\Phi}\left(x_{j}^{Q} | \mathbf{y}\right) qΦ(xjIy)qΦ(xjQy),输出维度为2N.

至此,我们得到了 L ( θ , Φ , y ) \mathcal{L}(\boldsymbol{\theta}, \mathbf{\Phi}, \mathbf{y}) L(θ,Φ,y)的显示表达。

仿真结果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这篇关于深度通信网络专栏(4)|自编码器:Blind Channel Equalization using Variational Autoencoders的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/659884

相关文章

深度解析Python中递归下降解析器的原理与实现

《深度解析Python中递归下降解析器的原理与实现》在编译器设计、配置文件处理和数据转换领域,递归下降解析器是最常用且最直观的解析技术,本文将详细介绍递归下降解析器的原理与实现,感兴趣的小伙伴可以跟随... 目录引言:解析器的核心价值一、递归下降解析器基础1.1 核心概念解析1.2 基本架构二、简单算术表达

深度解析Java @Serial 注解及常见错误案例

《深度解析Java@Serial注解及常见错误案例》Java14引入@Serial注解,用于编译时校验序列化成员,替代传统方式解决运行时错误,适用于Serializable类的方法/字段,需注意签... 目录Java @Serial 注解深度解析1. 注解本质2. 核心作用(1) 主要用途(2) 适用位置3

Debian 13升级后网络转发等功能异常怎么办? 并非错误而是管理机制变更

《Debian13升级后网络转发等功能异常怎么办?并非错误而是管理机制变更》很多朋友反馈,更新到Debian13后网络转发等功能异常,这并非BUG而是Debian13Trixie调整... 日前 Debian 13 Trixie 发布后已经有众多网友升级到新版本,只不过升级后发现某些功能存在异常,例如网络转

Java MCP 的鉴权深度解析

《JavaMCP的鉴权深度解析》文章介绍JavaMCP鉴权的实现方式,指出客户端可通过queryString、header或env传递鉴权信息,服务器端支持工具单独鉴权、过滤器集中鉴权及启动时鉴权... 目录一、MCP Client 侧(负责传递,比较简单)(1)常见的 mcpServers json 配置

Maven中生命周期深度解析与实战指南

《Maven中生命周期深度解析与实战指南》这篇文章主要为大家详细介绍了Maven生命周期实战指南,包含核心概念、阶段详解、SpringBoot特化场景及企业级实践建议,希望对大家有一定的帮助... 目录一、Maven 生命周期哲学二、default生命周期核心阶段详解(高频使用)三、clean生命周期核心阶

深度剖析SpringBoot日志性能提升的原因与解决

《深度剖析SpringBoot日志性能提升的原因与解决》日志记录本该是辅助工具,却为何成了性能瓶颈,SpringBoot如何用代码彻底破解日志导致的高延迟问题,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言第一章:日志性能陷阱的底层原理1.1 日志级别的“双刃剑”效应1.2 同步日志的“吞吐量杀手”

深度解析Python yfinance的核心功能和高级用法

《深度解析Pythonyfinance的核心功能和高级用法》yfinance是一个功能强大且易于使用的Python库,用于从YahooFinance获取金融数据,本教程将深入探讨yfinance的核... 目录yfinance 深度解析教程 (python)1. 简介与安装1.1 什么是 yfinance?

Python开发简易网络服务器的示例详解(新手入门)

《Python开发简易网络服务器的示例详解(新手入门)》网络服务器是互联网基础设施的核心组件,它本质上是一个持续运行的程序,负责监听特定端口,本文将使用Python开发一个简单的网络服务器,感兴趣的小... 目录网络服务器基础概念python内置服务器模块1. HTTP服务器模块2. Socket服务器模块

Go语言网络故障诊断与调试技巧

《Go语言网络故障诊断与调试技巧》在分布式系统和微服务架构的浪潮中,网络编程成为系统性能和可靠性的核心支柱,从高并发的API服务到实时通信应用,网络的稳定性直接影响用户体验,本文面向熟悉Go基本语法和... 目录1. 引言2. Go 语言网络编程的优势与特色2.1 简洁高效的标准库2.2 强大的并发模型2.

Go语言使用select监听多个channel的示例详解

《Go语言使用select监听多个channel的示例详解》本文将聚焦Go并发中的一个强力工具,select,这篇文章将通过实际案例学习如何优雅地监听多个Channel,实现多任务处理、超时控制和非阻... 目录一、前言:为什么要使用select二、实战目标三、案例代码:监听两个任务结果和超时四、运行示例五