掌桥专利:专业的专利平台
掌桥专利
首页

一种基于深度学习辅助的极化码译码方法、装置、电子设备和计算机可读存储介质

文献发布时间:2023-06-19 18:37:28


一种基于深度学习辅助的极化码译码方法、装置、电子设备和计算机可读存储介质

技术领域

本发明属于电子通信技术领域,尤其涉及一种基于深度学习辅助的极化码译码方法、装置、电子设备和计算机可读存储介质。

背景技术

Arikan教授提出的极化码是第一种被严格证明能够实现二进制对称信道容量的信道编码。然而,极化码的SC译码远远达不到理论的纠错性能,为了解决这个问题,有人提出了SCL译码器,其译码性能在高信噪比的情况下能够接近最大似然译码性能,同时使用循环冗余校验(CRC)对信息比特进行串接能够显著的提升译码性能。

当SC译码出现错误时,我们可以尝试在额外的解码中纠正错误,其中一种方法使用SCF译码对低可靠性的位置进行比特翻转,在一定程度上能够阻止SC译码的错误传播,同样对SCL译码也有效果,但是计算复杂度很高。后来针对SCL译码又提出了移位剪枝操作,即在低可靠性的位置将窗口进行移位,这种方案能够取得较好的性能并且不需要额外的空间,它可以以更少的尝试次数超过位翻转方案的性能,因此能够减少一定的计算复杂度。

上述方法虽然在性能上得到了一定的提升,但是往往需要多次译码才能达到理想的结果。因此如何在尽量少的尝试次数下来得到较好的性能提升是译码后处理的研究重点之一。

发明内容

本发明的主要目的是,通过使用深度神经网络来准确估计SCL译码在其第一次运行中丢失正确路径的信息比特节点位置,并结合可以指定位置移位剪枝的SCL译码器再次进行译码,最终能取得优异的译码性能。

为实现以上目的,本发明提供了一种基于神经网络辅助后处理的极化码译码方法,包括如下步骤:

步骤1)建立数据集;

步骤2)给定神经网络模型的预训练:利用上述数据集收集的大量带标签数据对给定的神经网络模型进行训练,当训练模型的推理与数据集中标签的拟合度比较高时停止训练,完成模型训练;

步骤3)第一次SCL译码:首先进行第一次SCL译码,若译码结果能够通过CRC校验,则认为译码成功,输出通过CRC校验的路径作为译码输出;否则,执行下一步骤4);

步骤4)神经网络预测错误译码位置:将步骤3)中得到的路径度量张量值作为神经网络模型的输入,神经网络模型预测输出正确路径被移除位置的估计;

步骤5)第二次SCL译码:根据信道接收的待译码比特软信息以及步骤4)预测出的被移除位置,执行一种指定位置移位剪枝SCL译码器,即对指定译码节点位置,该SCL译码器将裂解的2L条路径中的前L条抛弃,保留后L条路径作为后续译码路径的集合;对于其他译码节点位置,正常保留前L条路径作为后续译码路径集合;以及

步骤6)判断指定位置移位剪枝SCL译码输出的L条路径是否通过循环冗余CRC校验,若是,输出通过CRC校验的路径作为译码输出;否则,输出第一条路径作为输出;译码终止。

本发明的进一步改进在于,步骤1)进一步包括以下步骤:

步骤1.1将对数似然比LLR和信源码字一起输入到译码器进行译码;

步骤1.2在译码过程中,每译出一位码字,就将信源码字与当前 List中前L条译码路径进行比较,若没有匹配路径存在,将2L条路径度量张量作为X,当前信息比特节点位置作为标签Y存储下来,运行至程序结束。

本发明的进一步改进在于,所述神经网络模型的预训练方法包括以下步骤:

步骤2.1建立极化码SCL译码失败位置的数据集:在工作信噪比处反复运行SCL译码流程,收集足量的带标签数据,组成数据集;

步骤2.2根据步骤1)建立的数据集,其特征在于:将(X,Y)作为一组带标签数据,X为极化码SCL译码过程中收集的L条译码路径度量 PM而形成的L×K维PM张量,Y为正确路径被移除出SCL译码器L 条路径的信息比特节点位置;

步骤2.3选定神经网络模型,并对选定的神经网络模型执行以下训练过程:初始化神经网络模型参数,利用步骤1)中收集的带标签数据集训练神经网络模型,当训练模型的推理与数据集中标签Y的拟合度比较高时停止训练,完成模型训练。

为了实现以上发明目的,本发明还提供了一种基于神经网络辅助后处理的极化码译码装置,包括:

数据集模块,用于建立极化码SCL译码失败位置的数据集,在工作信噪比处基于蒙特卡洛仿真反复运行SCL译码流程,收集足量的带标签数据,组成数据集;

神经网络模型的预训练模块,用于利用上述数据集模块收集的大量带标签数据对神经网络模型进行训练,当训练模型的推理与数据集中标签的拟合度比较高时停止训练,完成模型训练;

第一SCL译码模块,用于进行第一次SCL译码,确定译码结果能否通过CRC校验;

神经网络的错误译码位置预测模块,用于预测输出正确路径被移除位置;

第二SCL译码模块,用于根据信道接收的待译码比特软信息以及预测出的被移除位置,执行一种指定位置移位剪枝SCL译码器。

本发明进一步改进在于,所述第二SCL译码模块包括:对指定译码节点位置,该SCL译码器将裂解的2L条路径中的前L条抛弃,保留后 L条路径作为后续译码路径的集合;对于其他译码节点位置,正常保留前L条路径作为后续译码路径集合。

为了实现以上发明目的,本发明还提供了一种电子设备,包括:

处理器;以及

存储器,用于存储所述处理器的可执行指令;

其中,所述处理器配置为经由执行所述可执行指令来执行前述的方法。

为了实现以上发明目的,本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现前述的方法。

本发明的有益效果如下:与其他后处理方式相比,在仅执行一次额外译码的基础上,大大的提高了译码器的性能。

附图说明

图1为数据集收集数量图;

图2为译码流程图;

图3为性能仿真图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。

需要强调的是,在描述本发明过程中,各种公式和约束条件分别使用前后一致的标号进行区分,但也不排除使用不同的标号标志相同的公式和/或约束条件,这样设置的目的是为了更清楚的说明本发明特征所在。

本发明以1/2码率的极化码码为实施例,对本发明提供的一种基于神经网络辅助后处理的极化码码译码方法进行详细的说明。

对于码率为1/2的Polar码,其码长为N=128,信息位长度为K=64, CRC校验位长度为8,SCL译码的列表长度为L=32;辅助神经网络使用ResNet18神经网络。当然,辅助神经网络也可以选用其他神经网络,此处不做限制。

一种数据集的收集方法,包括以下步骤:

1)将对数似然比LLR和信源码字一起输入到译码器进行译码;

2)在译码过程中,每译出一位码字,就将信源码字与当前List 中前32条译码路径进行比较,若没有匹配路径存在,将64条路径度量张量作为X,当前信息比特节点位置作为标签Y存储下来,运行至程序结束。

如图1所示,为该实施例的数据收集详情。

如图2所示,一种基于神经网络辅助后处理的极化码译码方法,包括如下步骤:

1)ResNet18神经网络模型的预训练:利用上述数据集收集的大量带标签数据对ResNet18神经网络模型进行训练,当训练模型的推理与数据集中标签Y的拟合度比较高时停止训练,完成模型训练;

2)第一次SCL译码:首先进行第一次SCL译码,若译码结果能够通过CRC校验,则认为译码成功,输出通过CRC校验的路径作为译码输出;否则,执行下一步骤3);

3)ResNet18神经网络预测错误译码位置:将步骤3)中得到的路径度量张量值作为ResNet18神经网络模型的输入,神经网络模型预测输出正确路径被移除位置的估计;

4)第二次SCL译码:根据信道接收的待译码比特软信息以及步骤3)预测出的被移除位置,执行一种指定位置移位剪枝SCL译码器,即对指定译码节点位置,该SCL译码器将裂解的64条路径中的前32 条抛弃,保留后32条路径作为后续译码路径的集合;对于其他译码节点位置,正常保留前L条路径作为后续译码路径集合。

本实施例主要通过ResNet18神经网络强大的学习能力来较为准确的预测第一次SCL译码中正确路径被移除的位置,然后在第二次 SCL译码中,于指定位置进行移位剪枝,从而大大的提升了其译码性能。经过神经网络辅助的后处理译码器性能在有数据集训练的信噪比处已经能够达到列表大小为128的CA-SCL译码器,在其他信噪比位置,其仍能超过列表大小为64的CA-SCL译码器。本发明与其他后处理方式相比,在仅执行一次额外译码的基础上,大大的提高了译码器的性能。

如图3所示,为该实施例的性能详情。

ResNet18神经网络模型的预训练方法包括以下步骤:

1)建立极化码SCL译码失败位置的数据集:在工作信噪比处反复运行SCL译码流程,收集足量的带标签数据,组成数据集;

2)根据步骤1)建立的数据集,将(X,Y)作为一组带标签数据,X 为极化码SCL译码过程中收集的L条译码路径度量PM而形成的L ×K维PM张量,Y为正确路径被移除出SCL译码器L条路径的信息比特节点位置;

3)选定神经网络模型,并对选定的神经网络模型执行以下训练过程:初始化神经网络模型参数,利用步骤1)中收集的带标签数据集训练神经网络模型,当训练模型的推理与数据集中标签Y的拟合度比较高时停止训练,完成模型训练。

综上所述,本发明一种神经网络辅助的极化码SCL译码方法包括以下步骤:

1)获取N个待译码比特的软信息,其中N为码长;

2)对所述待译码软信息执行SCL译码过程,同时在SCL译码过程中遍历信息节点收集L条译码路径度量PM而形成L×K维PM 张量,输出SCL译码的L条路径以及L×K维PM张量,其中L为 SCL译码的保持路径数,K为极化码的信息节点数;

3)判断SCL译码输出的L条路径是否通过循环冗余CRC校验,若是,则译码终止,输出通过CRC校验的路径作为译码输出;否则,执行下一步骤4);

4)以步骤2)产生的L×K维PM张量作为已训练神经网络模型的输入,神经网络模型预测SCL译码过程中正确路径被移除位置,输出正确路径被移除位置的估计;

5)根据步骤1)获取的待译码比特软信息以及步骤4)预测出的被移除位置,执行一种指定位置移位剪枝的SCL译码器,其中的指定位置设置为步骤4)预测出的被移除位置;

6)步骤5)中的指定位置移位剪枝的SCL译码器执行以下操作:对指定译码节点位置,SCL译码器将裂解的2L条路径中的前L条抛弃,保留后L条路径作为后续译码路径的集合;对于其他译码节点位置,SCL译码器规则不变,也即正常保留裂解的2L条路径中的前 L条作为后续译码路径集合;

7)判断指定位置移位剪枝SCL译码输出的L条路径是否通过循环冗余CRC校验,若是,输出通过CRC校验的路径作为译码输出;否则,输出第一条路径作为输出;译码终止。

本发明还提供了一种基于神经网络辅助后处理的极化码译码装置,包括:数据集模块,用于建立极化码SCL译码失败位置的数据集,在工作信噪比处基于蒙特卡洛仿真反复运行SCL译码流程,收集足量的带标签数据,组成数据集;ResNet18神经网络模型的预训练模块,用于利用上述数据集模块收集的大量带标签数据对ResNet18模型进行训练,当训练模型的推理与数据集中标签的拟合度比较高时停止训练,完成模型训练;第一SCL译码模块,用于进行第一次SCL译码,确定译码结果能否通过CRC校验;ResNet18神经网络的错误译码位置预测模块,用于预测输出正确路径被移除位置;以及第二SCL译码模块,用于根据信道接收的待译码比特软信息以及预测出的被移除位置,执行一种指定位置移位剪枝SCL译码器。

所述第二SCL译码模块包括:对指定译码节点位置,该SCL译码器将裂解的2L条路径中的前L条抛弃,保留后L条路径作为后续译码路径的集合;对于其他译码节点位置,正常保留前L条路径作为后续译码路径集合。

本发明还提供了一种电子设备,包括处理器、存储器。所述存储器用于存储所述处理器的可执行指令;所述处理器配置为经由执行所述可执行指令来执行前述的方法。

本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现前述的方法。

本发明的有益效果如下:与其他后处理方式相比,在仅执行一次额外译码的基础上,大大的提高了译码器的性能。

以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围。

技术分类

06120115637710