纠错码可以提高通信传输的可靠性,传输码字的最优解码方法是最大似然法,但由于维数问题,这是(NP-hard),所以实际人们采用次优解码算法。一个关键是置换解码中置换的选择,我们结合领域知识和机器学习概念(如节点嵌入和自注意力),与基线解码器相比,我们的方法减轻了误码率。
I INTRODUCTION
实际中,延迟和计算复杂度限制了码字大小,所以人们提出了有低复杂度编码和解码方法的结构化码字。一些结构化码字都拥有置换群(PG)的主要特征,PG中的置换可以把码字映射为某个不同的码字,这对不同的解码器至关重要。比如并行软决策置信传播(BP)解码器,解码错误码字可能失败,但解码相同错误码字的置换可能会成功,mRRD,BPL可以在相同错误码字的不同置换上多次运行以权衡复杂度和高解码增益。
我们的工作通过删除冗余运行以获得每个单词的最佳匹配置换,从而保留计算资源。所以我们的目标是找到把一个单词映射为最可能解码的置换的函数。
最近用于解码的机器学习中提出了两类解码器,1)使用神经网络架构的无模型解码器,2)实现了经典BP解码器的参数化版本的基于模型的解码器。目前2)占主导,但由于归纳偏置,他会受到正则化假设空间的影响。
我们利用PG和DL提高限基于约束模型的解码器的解码能力,1)使用自注意力,通过提取相关特征,以独立于单词的方式嵌入码字的所有不同的组置换。在测试前的预处理阶段进行一次,测试时,训练好的NN接收错误单词和嵌入的置换,预测每个置换成功解码的概率,此后,选择一组1,5,或10个最可能解码的置换,对置换的信道词解码,凭经验选择最好的子集。
以上方法在不同长度的BCH码上模拟,在随即置换选择的基线模型上得到2.75dB的增益。
III Background
A Coding
长度K的二进制信息被生成矩阵G编码为长n的码字
,每个c满足Hc=0,H是奇偶校验矩阵(
唯一确定),然后码字c被BPSK调制映射,(0→1,1→-1),生成调制词x,通过AWGN传送,收到y=x+z,
接收器处要检查收到的词是否有错误,所以使用硬决策(HD)
=1{yi<0)计算估计码字
, 若s=H
为0,则得出
,非零的s表示有信道错误发生。解码函数
与
一起使用。
一个标准的软决策算法是BP, BP是一个基于图的以迭代方式解码错误码字的推理方法,处理称为 Tanner 图的因子图。通过在Tanner图的节点上传递消息运行,直到达到收敛或最大迭代次数,影响收敛的一个特性是cycles,指tanner图中互相连接,有每条边出现一次的闭环的节点的子集,沿cycles传播的信息在几个BP迭代后变得相关,阻止收敛到正确的后验分布,减少了整体的解码性能。
B . Permutation Group of a code
𝜋 是一个{1,...n}上的置换,码字c=(c1,...cn)的置换交换c的条目位置:如果 𝒄 ∈ C 意味着 𝜋(𝒄) ∈ C,则置换 𝜋 是码字C 的自同构,C的所有自同构置换群称作Aut(C),也称作code的PG.
一个广泛使用有已知PGs的codes族是BCH族,PGs为
即Aut(C)包含nlog2(n+1)个置换。
减轻cycle不利影响的一个方法是使用code置换,在置换后的收到词上使用BP然后对解码词应用逆置换。可以看作是对有不同奇偶校验矩阵的原始接收词上应用BP。因为Tanner图有cycles,所以不能担保BP能收敛到最优解并且每个置换都能进行不同的解码尝试。而如我们V中实验看到的,这种策略已被证明可以产生更好的收敛性和整体解码增益。
C. Graph Node Embedding
使用一个节点嵌入法为code的Tanner图嵌入不同的节点,考虑了code的结构。Iv-B中我们探索了node2vec的方法。节点嵌入的目标是使用总结了相关图中位置和局部邻近结构的低维向量嵌入图中节点。在学习到的向量空间里,可以看到几何关系,如交互被建模为节点的边。node2vec通过最大化固定长度采样随机游走中后续节点出现的平均概率来训练。使用了BFS和DFS图查找以生成高质量信息节点表示。
D . Self-Attention
输入序列进入注意力模型,输出结果是输入的一种嵌入表示。当输入单个序列时,会采用注意力机制来关注同一序列中的所有位置,这通常称为序列的自注意表示。
相对于非注意表示获得更好的更丰富的置换模型,我们使用自注意力进行置换表示,基础原理来自于置换距离度量保留,因为置换之间的索引交换次数只影响positional embedding additions,相似的一组置换在学习到的向量空间里会有相近的几何自注意力表示。
IV. THE DECODING ALGORITHM
A. Problem Formulation and Algorithm Overview
解码时,为PG内每个置换执行解码算法计算都很大,尤其在置换群很大时,所以替代性方法是先选择最好的置换,然后仅解码它对应的置换词。对收到的词y来说,最优的置换Π*需要最小化比特错误率:(c是提交的码字,BER是汉明距离)
但正确的码字在解码中是不知道的,所以我们提出的方法旨在估计最佳置换而不对每个code置换解码,并且不依赖于正确码字c。
上图是我们的架构,主要部分是置换嵌入块perm2vec和置换分类g,置换嵌入收到置换Π,输出嵌入向量qΠ,然后向量Π(y)和qΠ作为置换分类的输入,计算词Π(y)成功被解码的概率p(y,Π),然后我们挑选出最大概率。
执行解码,最后解码词
被得到。算法如下:
B. Permutation Embedding
包含两层:1注意力+平均池化。我们使用学习到的位置嵌入,比起常量位置编码有更好的性能,首先在相应的code的Tanner图上预训练node2vec节点嵌入,然后将变量节点输出嵌入作为初始位置嵌入,有助于我们的模型合并一些图结构并使用code信息。使用dw表示输出嵌入空间的维度,(在节点嵌入训练前设置).我们使用一个注意力头就够了,不需多头。(这里可以使用任意嵌入模型训练,但并非node2vec)
Π(i)的嵌入向量为ui∈ , 变量节点的嵌入为v ∈
.请注意,u𝑖 和 v 都是学习的,但如上所述,v 是使用嵌入在code的 Tanner 图上的预训练变量节点的输出来初始化的,因此增强注意力头会对输入序列 W = (w1, . . . , w𝑛) w𝑖 ∈ R 𝑑𝑤 , w𝑖 = u𝑖 + v进行操作。
注意力头计算输出序列P = (p1, . . . , p𝑛), where p𝑖 ∈。
注意权重系数(softmax)
两个输入向量之间的归一化相对注意力。 𝑸, 𝑲, 𝑽 ∈ 𝑹 𝑑𝑤 ×𝑑𝑝都是学习的参数矩阵。
最后置换Π的向量表示使用平均池化操作,,被传递给置换分类器。置换嵌入如下图:
C. Permutation Classifier
置换分类器对收到词y和置换Π后成功解码的概率进行预测。 考虑对数似然比LLR进行软解码更方便,AWGN时,LLR的值由给出,假设知道方差。
输入被传递给MLP,包括置换输入LLR的绝对值和置换词Π(l)的s,实现使用线性映射获得
,Wl和Ws都是学到的矩阵,然后使用相似度函数:
o是Hadamard积,定义
,都是学到的矩阵和偏置。
最后成功解码的估计可能性为:
g(h)是最后一个隐藏层,σ是sigmoid函数,选择最佳置换的图置换选择(GPS)算法如上面图1.
D 训练细节
联合训练置换嵌入和置换分类器,使用单个解码器dec,交叉损失熵计算为:
在置换Π下如果成功解码,dy,Π=1,否则等于0。
每个最小batch包含K个收到的词,数据集包含一组置换词(y,Π)和一个对应的标签dy,Π,
使用一个全零的传送码字,测试数据集由随意选择的二进制码字c组成。每个码字通过方差σz的有具体信噪比的AWGN传输,每个batch有相同数量的正向例(d=1)和(d=0)负向例,用于训练perm2vec和GPS分类器的所有超参数如下表。
为了预训练节点嵌入,使用【29】中的默认参数,有些被修改为:随机游走的数量2000,步长10,邻近大小10,节点嵌入维度80。
由于perm2vec仅仅依赖于被给的置换,所以所有嵌入都可以计算一次存储在内存里,在测试时,的确定依赖于置换分类器nlog2(n+1)个并行前向传递的延迟。
V. EXPERIMENTAL SETUP AND RESULTS
提出的GPS算法在5个BCHcodes 上评估, (31, 16), (63, 36), (63, 45), (127, 64), and (255, 163),关于解码器dec,我们在 BP (GPS+BP) 和预训练的 WBP (GPS+WBP) 之上应用 GPS,用【41】的配置训练,对于最长的code,(255,163),由于会引起内存问题,不应用WBP。.所有解码器都经过 5 次 BP 迭代测试,并且在每次迭代后采用校正子停止准则。
后续不写了,,,待定。