Processing

Please wait...

Settings

Settings

Goto Application

1. WO2020108472 - CODING METHOD AND APPARATUS, DECODING METHOD AND APPARATUS

Document

说明书

发明名称 0001   0002   0003   0004   0005   0006   0007   0008   0009   0010   0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070   0071   0072   0073   0074   0075   0076   0077   0078   0079   0080   0081   0082   0083   0084   0085   0086   0087   0088   0089   0090   0091   0092   0093   0094   0095   0096   0097   0098   0099   0100   0101   0102   0103   0104   0105   0106   0107   0108   0109   0110   0111   0112   0113   0114   0115   0116   0117   0118   0119   0120   0121   0122   0123   0124   0125   0126   0127   0128   0129   0130   0131   0132   0133   0134   0135   0136   0137   0138   0139   0140   0141   0142   0143   0144   0145   0146   0147   0148   0149   0150   0151   0152   0153   0154   0155   0156   0157   0158   0159   0160   0161   0162   0163   0164   0165   0166   0167   0168   0169   0170   0171   0172   0173   0174   0175   0176   0177   0178   0179   0180   0181   0182   0183   0184   0185   0186   0187   0188   0189   0190   0191   0192   0193   0194   0195   0196   0197   0198   0199   0200   0201   0202   0203   0204   0205   0206   0207   0208   0209   0210   0211   0212   0213   0214   0215   0216   0217   0218   0219   0220   0221   0222   0223   0224   0225   0226   0227   0228   0229   0230   0231   0232   0233   0234   0235   0236   0237   0238   0239   0240   0241   0242   0243   0244   0245   0246   0247   0248   0249   0250   0251   0252   0253   0254   0255   0256   0257   0258   0259   0260   0261   0262   0263   0264   0265   0266   0267   0268   0269   0270   0271   0272   0273   0274   0275   0276   0277   0278   0279   0280   0281   0282   0283   0284   0285   0286   0287   0288   0289   0290   0291   0292   0293   0294   0295   0296   0297   0298   0299   0300   0301   0302   0303   0304   0305   0306   0307   0308   0309   0310   0311  

权利要求书

1   2   3   4   5   6   7   8   9   10   11   12   13   14   15   16   17   18   19   20   21   22   23   24   25   26   27   28   29   30   31   32   33   34   35   36  

附图

1   2A   2B   3   4   5   6   7   8   9   10   11   12   13   14   15   16   17   18   19   20   21   22   23   24   25   26  

说明书

发明名称 : 编码方法、译码方法及装置

技术领域

[0001]
本申请实施例涉及通信领域,尤其涉及一种编码方法、译码方法及装置。

背景技术

[0002]
目前,在已有技术的编码/译码的学习过程中,编码/译码器需要对整个码字空间的样本进行学习,而由于极化码(Polar)的编码的特殊性导致了码长的增加,其相应的总码本空间码序列数呈指数式暴增。因此,已有技术在信息比特数较大时,导致对整个码字空间遍历的复杂度剧增,实现难度较大。
[0003]
发明内容
[0004]
本申请提供一种编码方法、译码方法及装置,能够在一定程度上弱化码长对码字空间遍历的影响,从而提升编码/译码的学习效率。
[0005]
为达到上述目的,本申请采用如下技术方案:
[0006]
第一方面,本申请实施例提供一种编码方法,该方法可以包括:获取第一输入信息;随后,基于编码神经网络,对获取到的第一输入信息进行编码,得到第一输出信息,随后,输出该第一输出信息;其中,编码神经网络中包含有第一神经元参数,第一神经元参数可用于指示第一输入信息与第一输出信息之间的映射关系;以及,编码神经网络由第一神经网络单元组成的初始编码神经网络经过训练后所得;其中,初始编码神经网络中包含有可用于指示初始编码神经网络输入的第二输入信息与输出的第二输出信息之间的映射关系的第二神经元参数;并且,初始编码神经网络经过训练后,将第二神经元参数更新为第一神经元参数;以及,第二神经元参数由第一神经网络单元包含的第三神经元参数组成,其中,第三神经元参数用于指示第一神经网络单元输入的第三输入信息与输出的第三输出信息之间的映射关系;以及,第三输出信息与第三输入信息的期望校验结果之间的误差小于阈值,其中,第三输入信息的期望校验结果为第三输入信息基于第一核矩阵在GF(2)上进行乘法和加法运算后得到的;在方法中,第一输入信息为待编码信息;以及,第二输入信息、第三输入信息为训练信息。
[0007]
通过上述方式,实现了将小的神经网络单元进行连接后,得到大的神经网络,从而在编码的学习过程中,能够通过小的学习样本,泛化至整个码字空间。
[0008]
在一种可能的实现方式中,获取第一神经网络单元的步骤,还可以包括:构造第一初始神经网络单元,并设置第一初始神经元参数,其中,第一初始神经元参数用于指示第一初始神经元输入的第四输入信息与输出的第四输出信息之间的映射关系,其中,第一初始神经元参数包括初始权重值与初始偏置向量;以及,第一初始神经网络单元包括至少一个隐藏层,每个隐藏层包含Q个节点,并且,Q为大于等于N的整数,其中,N为第三输入信息的码长与第三输出信息的码长之中的最小值;基于第一初始神经元参数, 对第一初始神经网络单元进行训练,直至第四输出信息与第四输入信息的期望校验结果之间的误差小于阈值,其中,第四输入信息的期望校验结果为第四输入信息基于第一核矩在GF(2)上进行乘法和加法运算后得到的;以及,对第一初始神经网络单元进行训练时,将第一初始神经参数进行更新,得到第三神经参数;其中,第四输入信息为训练信息。
[0009]
通过上述方式,实现了基于第一核矩阵生成初始神经网络单元,再对初始神经网络单元进行经过训练,以生成对应于第一核矩阵的神经网络单元。
[0010]
在一种可能的实现方式中,其中,第一核矩阵为 或者,第一核矩阵为
[0011]
通过上述方式,实现了基于不同结构的核矩阵,生成相应的神经网络单元。
[0012]
在一种可能的实现方式中,若第一核矩阵为 则第三输入信息的期望校验结果为 x 1=u 1;其中,x 0与x 1为第三输出信息,u 0与u 1为第三输入信息;或者,若第一核矩阵为 则第三输入信息的期望校验结果为 其中,x 0、x 1与x 2为第三输出信息,u 0、u 1与u 2为第三输入信息。
[0013]
通过上述方式,实现了基于不同结构的核矩阵,生成相应的神经网络单元。
[0014]
在一种可能的实现方式中,初始编码神经网络由第一神经网络单元与第二神经网络单元组成;其中,第二神经网络单元包含第四神经元参数,第二神经网络单元由第一初始神经网络单元训练后所得,并且,第一初始神经网络单元经过训练后,将第一初始神经元参数进行更新,得到第四神经元参数,以及,第四神经参数与第三神经参数不相同。
[0015]
通过上述方式,实现了具有不同神经元参数的并且具有相同结构的神经网络单元组成编码神经网络。
[0016]
在一种可能的实现方式中,其中,初始编码神经网络由第一神经网络单元与第三神经网络单元组成,第三神经网络单元包含第五神经元参数;第五神经元参数用于指示第三神经网络单元输入的第五输入信息与输出的第五输出信息之间的映射关系;以及,第五输出信息与第五输入信息的期望校验结果之间的误差小于阈值,其中,第五输入信息的期望校验结果为第五输入信息基于第二核矩阵在GF(2 m)上进行乘法和加法运算后得到的;其中,第五输入信息为训练信息。
[0017]
通过上述方式,实现了由多个对应于不同核矩阵的神经网络单元组成编码神经网络。
[0018]
在一种可能的实现方式中,获取初始编码神经网络的步骤,包括:获取编码网络图,其中,编码网络图中包括至少一个编码蝶形图,编码蝶形图用于指示编码蝶形图的输入信息与编码蝶形图的输出信息之间的校验关系;将第一神经网络单元与至少一个编码蝶 形图进行匹配;将第一神经网络单元对匹配成功的编码蝶形图进行替换,并得到初始编码神经网络。
[0019]
通过上述方式,实现了由小的神经网络单元组成编码神经网络,从而可通过小的学习样本,泛化至整个码字空间。
[0020]
第二方面,本申请实施例提供一种译码方法,该方法可以包括:获取第一输入信息,随后,基于译码神经网络,对获取到的第一输入信息进行译码,得到并输出第一输出信息;其中,译码神经网络中包含第一神经元参数,第一神经元参数用于指示第一输入信息与第一输出信息之间的映射关系;以及,译码神经网络由第一神经网络单元组成的初始译码神经网络经过训练后所得;其中,初始译码神经网络中包含用于指示初始译码神经网络输入的第二输入信息与输出的第二输出信息之间的映射关系的第二神经元参数;并且,初始译码神经网络经过训练后,将第二神经元参数更新为第一神经元参数;以及,第二神经元参数由第一神经网络单元包含的第三神经元参数组成,其中,第三神经元参数用于指示第一神经网络单元输入的第三输入信息与输出的第三输出信息之间的映射关系;以及,第三输出信息与第三输入信息的期望校验结果之间的误差小于阈值,其中,第三输入信息的期望校验结果为第三输入信息基于第一核矩阵在GF(2 m)上进行乘法和加法运算后得到的;其中,第一输入信息为待译码信息;以及,第二输入信息、第三输入信息为训练信息。
[0021]
在一种可能的实现方式中,获取第一神经网络单元的步骤,可以包括:构造第一初始神经网络单元,并设置第一初始神经元参数,其中,第一初始神经元参数用于指示第一初始神经元输入的第四输入信息与输出的第四输出信息之间的映射关系,其中,第一初始神经元参数包括初始权重值与初始偏置向量;以及,第一初始神经网络单元包括至少一个隐藏层,每个隐藏层包含Q个节点,并且,Q为大于等于N的整数,其中,N为第三输入信息的码长与第三输出信息的码长之中的最小值;基于第一初始神经元参数,对第一初始神经网络单元进行训练,直至第四输出信息与第四输入信息的期望校验结果之间的误差小于阈值,其中,第四输入信息的期望校验结果为第四输入信息基于第一核矩在GF(2 m)上进行乘法和加法运算后得到的;以及,对第一初始神经网络单元进行训练时,将第一初始神经参数进行更新,得到第三神经参数;其中,第四输入信息为训练信息。
[0022]
在一种可能的实现方式中,其中,第一核矩阵为 或者,第一核矩阵为
[0023]
在一种可能的实现方式中,若第一核矩阵为 则第三输入信息的期望校验结果为 x 1=y 1;其中,x 0与x 1为第三输出信息,y 0与y 1为第三输入信息;或 者,若第一核矩阵为 则第三输入信息的期望校验结果为 其中,x 0、x 1与x 2为第三输出信息,y 0、y 1与y 2为第三输入信息。
[0024]
在一种可能的实现方式中,其中,初始译码神经网络由第一神经网络单元与第二神经网络单元组成;其中,第二神经网络单元包含第四神经元参数,第二神经网络单元由第一初始神经网络单元训练后所得,并且,第一初始神经网络单元经过训练后,将第一初始神经元参数进行更新,得到第四神经元参数,以及,第四神经参数与第三神经参数不相同。
[0025]
在一种可能的实现方式中,其中,初始译码神经网络由第一神经网络单元与第三神经网络单元组成,第三神经网络单元包含第五神经元参数;第五神经元参数用于指示第三神经网络单元输入的第五输入信息与输出的第五输出信息之间的映射关系;以及,第五输出信息与第五输入信息的期望校验结果之间的误差小于阈值,其中,第五输入信息的期望校验结果为第五输入信息基于第二核矩阵在GF(2 m)上进行乘法和加法运算后得到的;其中,第五输入信息为训练信息。
[0026]
在一种可能的实现方式中,获取初始译码神经网络的步骤,包括:获取译码网络图,其中,译码网络图中包括至少一个译码蝶形图,译码蝶形图用于指示译码蝶形图的输入信息与译码蝶形图的输出信息之间的校验关系;将第一神经网络单元与至少一个译码蝶形图进行匹配;将第一神经网络单元对匹配成功的译码蝶形图进行替换,并得到初始译码神经网络。
[0027]
第三方面,本申请实施例提供一种编码/译码方法,该方法可以包括:基于编码/译码神经网络,对第一输入信息进行编码和/或译码;其中,编码/译码神经网络包含权利要求1-7任一项的编码神经网络以及权利要求8-14的译码神经网络。
[0028]
通过上述方式,实现了一种学习复杂度低,难度较小的编码/译码方法。
[0029]
在一种可能的实现方式中,其中,编码神经网络中的神经元参数与译码神经网络中的神经元参数不相同;或者,编码神经网络中的神经元参数与译码神经网络中的神经元参数相同。
[0030]
通过上述方式,实现了编/译码神经网络可由具有相同神经元参数的编码神经网络和译码神经网络组成。还可以由具有不相同的神经元参数的编码神经网络和译码神经网络组成。
[0031]
第四方面,本申请实施例提供一种编码装置,装置可以包括:获取模块,用于获取第一输入信息,以及,编码模块,用于基于编码神经网络,对第一输入信息进行编码, 得到并输出第一输出信息;其中,编码神经网络中包含第一神经元参数,第一神经元参数用于指示第一输入信息与第一输出信息之间的映射关系;以及,编码神经网络由第一神经网络单元组成的初始编码神经网络经过训练后所得;其中,初始编码神经网络中包含用于指示初始编码神经网络输入的第二输入信息与输出的第二输出信息之间的映射关系的第二神经元参数;并且,初始编码神经网络经过训练后,将第二神经元参数更新为第一神经元参数;以及,第二神经元参数由第一神经网络单元包含的第三神经元参数组成,其中,第三神经元参数用于指示第一神经网络单元输入的第三输入信息与输出的第三输出信息之间的映射关系;以及,第三输出信息与第三输入信息的期望校验结果之间的误差小于阈值,其中,第三输入信息的期望校验结果为第三输入信息基于第一核矩阵在伽罗华域GF(2 m)上进行乘法和加法运算后得到的;其中,第一输入信息为待编码信息;以及,第二输入信息、第三输入信息为训练信息。
[0032]
在一种可能的实现方式中,编码模块还用于:构造第一初始神经网络单元,并设置第一初始神经元参数,其中,第一初始神经元参数用于指示第一初始神经元输入的第四输入信息与输出的第四输出信息之间的映射关系,其中,第一初始神经元参数包括初始权重值与初始偏置向量;以及,第一初始神经网络单元包括至少一个隐藏层,每个隐藏层包含Q个节点,并且,Q为大于等于N的整数,其中,N为第三输入信息的码长与第三输出信息的码长之中的最小值;基于第一初始神经元参数,对第一初始神经网络单元进行训练,直至第四输出信息与第四输入信息的期望校验结果之间的误差小于阈值,其中,第四输入信息的期望校验结果为第四输入信息基于第一核矩在GF(2 m)上进行乘法和加法运算后得到的;以及,对第一初始神经网络单元进行训练时,将第一初始神经参数进行更新,得到第三神经参数;其中,第四输入信息为训练信息,并且,第四输入信息与第三输入信息相同或不同。
[0033]
在一种可能的实现方式中,其中,第一核矩阵为 或者,第一核矩阵为
[0034]
在一种可能的实现方式中,若第一核矩阵为 则第三输入信息的期望校验结果为 x 1=u 1;其中,x 0与x 1为第三输出信息,u 0与u 1为第三输入信息;或者,若第一核矩阵为 则第三输入信息的期望校验结果为 其中,x 0、x 1与x 2为第三输出信息,u 0、u 1与u 2为第三输入信息。
[0035]
在一种可能的实现方式中,其中,初始编码神经网络由第一神经网络单元与第二神经网络单元组成;其中,第二神经网络单元包含第四神经元参数,第二神经网络单元由第一初始神经网络单元训练后所得,并且,第一初始神经网络单元经过训练后,将第一 初始神经元参数进行更新,得到第四神经元参数,以及,第四神经参数与第三神经参数不相同。
[0036]
在一种可能的实现方式中,其中,初始编码神经网络由第一神经网络单元与第三神经网络单元组成,第三神经网络单元包含第五神经元参数;第五神经元参数用于指示第三神经网络单元输入的第五输入信息与输出的第五输出信息之间的映射关系;以及,第五输出信息与第五输入信息的期望校验结果之间的误差小于阈值,其中,第五输入信息的期望校验结果为第五输入信息基于第二核矩阵在GF(2 m)上进行乘法和加法运算后得到的;其中,第五输入信息为训练信息。
[0037]
在一种可能的实现方式中,编码模块还用于:获取编码网络图,其中,编码网络图中包括至少一个编码蝶形图,编码蝶形图用于指示编码蝶形图的输入信息与编码蝶形图的输出信息之间的校验关系;将第一神经网络单元与至少一个编码蝶形图进行匹配;将第一神经网络单元对匹配成功的编码蝶形图进行替换,并得到初始编码神经网络。
[0038]
第五方面,本申请实施例提供一种译码装置,装置可以包括:获取模块,用于获取第一输入信息,以及,译码模块,用于基于译码神经网络,对第一输入信息进行译码,得到并输出第一输出信息;其中,译码神经网络中包含第一神经元参数,第一神经元参数用于指示第一输入信息与第一输出信息之间的映射关系;以及,译码神经网络由第一神经网络单元组成的初始译码神经网络经过训练后所得;其中,初始译码神经网络中包含用于指示初始译码神经网络输入的第二输入信息与输出的第二输出信息之间的映射关系的第二神经元参数;并且,初始译码神经网络经过训练后,将第二神经元参数更新为第一神经元参数;以及,第二神经元参数由第一神经网络单元包含的第三神经元参数组成,其中,第三神经元参数用于指示第一神经网络单元输入的第三输入信息与输出的第三输出信息之间的映射关系;以及,第三输出信息与第三输入信息的期望校验结果之间的误差小于阈值,其中,第三输入信息的期望校验结果为第三输入信息基于第一核矩阵在伽罗华域GF(2 m)上进行乘法和加法运算后得到的;其中,第一输入信息为待译码信息;以及,第二输入信息、第三输入信息为训练信息。
[0039]
在一种可能的实现方式中,译码模块还用于:构造第一初始神经网络单元,并设置第一初始神经元参数,其中,第一初始神经元参数用于指示第一初始神经元输入的第四输入信息与输出的第四输出信息之间的映射关系,其中,第一初始神经元参数包括初始权重值与初始偏置向量;以及,第一初始神经网络单元包括至少一个隐藏层,每个隐藏层包含Q个节点,并且,Q为大于等于N的整数,其中,N为第三输入信息的码长与第三输出信息的码长之中的最小值;基于第一初始神经元参数,对第一初始神经网络单元进行训练,直至第四输出信息与第四输入信息的期望校验结果之间的误差小于阈值,其中,第四输入信息的期望校验结果为第四输入信息基于第一核矩在GF(2 m)上进行乘法和加法运算后得到的;以及,对第一初始神经网络单元进行训练时,将第一初始神经参数 进行更新,得到第三神经参数;其中,第四输入信息为训练信息,并且,第四输入信息与第三输入信息相同或不同。
[0040]
在一种可能的实现方式中,其中,第一核矩阵为 或者,第一核矩阵为
[0041]
在一种可能的实现方式中,若第一核矩阵为 则第三输入信息的期望校验结果为 x 1=y 1;其中,x 0与x 1为第三输出信息,y 0与y 1为第三输入信息;或者,若第一核矩阵为 则第三输入信息的期望校验结果为 其中,x 0、x 1与x 2为第三输出信息,y 0、y 1与y 2为第三输入信息。
[0042]
在一种可能的实现方式中,其中,初始译码神经网络由第一神经网络单元与第二神经网络单元组成;其中,第二神经网络单元包含第四神经元参数,第二神经网络单元由第一初始神经网络单元训练后所得,并且,第一初始神经网络单元经过训练后,将第一初始神经元参数进行更新,得到第四神经元参数,以及,第四神经参数与第三神经参数不相同。
[0043]
在一种可能的实现方式中,其中,初始译码神经网络由第一神经网络单元与第三神经网络单元组成,第三神经网络单元包含第五神经元参数;第五神经元参数用于指示第三神经网络单元输入的第五输入信息与输出的第五输出信息之间的映射关系;以及,第五输出信息与第五输入信息的期望校验结果之间的误差小于阈值,其中,第五输入信息的期望校验结果为第五输入信息基于第二核矩阵在GF(2 m)上进行乘法和加法运算后得到的;其中,第五输入信息为训练信息。
[0044]
在一种可能的实现方式中,译码模块还用于:获取译码网络图,其中,译码网络图中包括至少一个译码蝶形图,译码蝶形图用于指示译码蝶形图的输入信息与译码蝶形图的输出信息之间的校验关系;将第一神经网络单元与至少一个译码蝶形图进行匹配;将第一神经网络单元对匹配成功的译码蝶形图进行替换,并得到初始译码神经网络。
[0045]
第六方面,本申请实施例提供一种编码/译码系统,系统用于基于编码/译码神经网络,对第一输入信息进行编码和/或译码;其中,系统用于包含权利要求18-24任一项的编码神经网络以及权利要求25-31的译码神经网络。
[0046]
在一种可能的实现方式中,其中,编码神经网络中的神经元参数与译码神经网络中的神经元参数不相同。或者,编码神经网络中的神经元参数与译码神经网络中的神经元 参数相同。
[0047]
第七方面,本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包含至少一段代码,该至少一段代码可由装置执行,以控制装置执行第一方面所述的方法。
[0048]
第八方面,本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包含至少一段代码,该至少一段代码可由装置执行,以控制装置执行第二方面所述的方法。
[0049]
第九方面,本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包含至少一段代码,该至少一段代码可由装置执行,以控制装置执行第三方面所述的方法。
[0050]
第九方面,本申请实施例提供一种计算机程序,当计算机程序被装置执行时,用于执行第一方面所述的方法。
[0051]
第十方面,本申请实施例提供一种计算机程序,当计算机程序被装置执行时,用于执行第二方面所述的方法。
[0052]
第十一方面,本申请实施例提供一种计算机程序,当计算机程序被装置执行时,用于执行第三方面所述的方法。
[0053]
第十二方面,本申请实施例提供了一种芯片,该芯片包括处理电路、收发管脚。其中,该收发管脚、和该处理器通过内部连接通路互相通信,该处理器执行第一方面或第一方面的任一种可能的实现方式中的方法,以控制接收管脚接收信号,以控制发送管脚发送信号。
[0054]
第十三方面,本申请实施例提供了一种芯片,该芯片包括处理电路、收发管脚。其中,该收发管脚、和该处理器通过内部连接通路互相通信,该处理器执行第二方面或第二方面的任一种可能的实现方式中的方法,以控制接收管脚接收信号,以控制发送管脚发送信号。
[0055]
第十四方面,本申请实施例提供了一种芯片,该芯片包括处理电路、收发管脚。其中,该收发管脚、和该处理器通过内部连接通路互相通信,该处理器执行第三方面或第三方面的任一种可能的实现方式中的方法,以控制接收管脚接收信号,以控制发送管脚发送信号。
[0056]
第十五方面,本申请实施例提供了一种编码装置,该装置包括存储器,用于存储指令或数据,以及,与存储器进行通信连接的至少一个处理器,处理器可用于支持编码装置在运行所述指令时执行第一方面或第一方面的任一种可能的实现方式中的方法。
[0057]
第十六方面,本申请实施例提供了一种译码装置,该装置包括存储器,用于存储指令或数据,以及,与存储器进行通信连接的至少一个处理器,处理器可用于支持编码装置在运行所述指令时执行第二方面或第二方面的任一种可能的实现方式中的方法。
[0058]
第十七方面,本申请实施例提供了一种编/译码装置,该装置包括存储器,用于存储指令或数据,以及,与存储器进行通信连接的至少一个处理器,处理器可用于支持编码装置在运行所述指令时执行第三方面或第三方面的任一种可能的实现方式中的方法。
[0059]
第十八方面,本申请实施例提供一种编码/译码系统,该系统包括上述第四方面和第五方面涉及的编码装置和译码装置。

附图说明

[0060]
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0061]
图1是本申请实施例提供的通信系统示意图;
[0062]
图2a是本申请实施例提供的一种基站的结构示意图;
[0063]
图2b是本申请实施例提供的一种终端的结构示意图;
[0064]
图3是本申请实施例提供的无线通信流程示意图;
[0065]
图4是本申请实施例提供的一种编码方法的流程示意图之一;
[0066]
图5是本申请实施例提供的一种编码方法的流程示意图之一;
[0067]
图6是本申请实施例提供的初始神经网络单元的结构示意图之一;
[0068]
图7是本申请实施例提供的初始神经网络单元的结构示意图之一;
[0069]
图8是本申请实施例提供的初始神经网络单元的结构示意图之一;
[0070]
图9是本申请实施例提供的初始神经网络单元的结构示意图之一;
[0071]
图10是本申请实施例提供的生成初始编码神经网络的流程示意图;
[0072]
图11是本申请实施例提供的编码网络图的结构示意图;
[0073]
图12是本申请实施例提供的编码蝶形图的结构示意图;
[0074]
图13是本申请实施例提供的初始编码神经网络的结构示意图;
[0075]
图14是本申请实施例提供的一种编码方法的流程示意图之一;
[0076]
图15是本申请实施例提供的初始神经网络单元的结构示意图之一;
[0077]
图16是本申请实施例提供的一种译码方法的流程示意图;
[0078]
图17是本申请实施例提供的初始神经网络单元的结构示意图之一;
[0079]
图18是本申请实施例提供的初始神经网络单元的结构示意图之一;
[0080]
图19是本申请实施例提供的初始神经网络单元的结构示意图之一;
[0081]
图20是本申请实施例提供的一种编/译码方法的流程示意图;
[0082]
图21是本申请实施例提供的编/译码神经网络的训练方法的流程示意图;
[0083]
图22是本申请实施例提供的初始神经网络单元的结构示意图之一;
[0084]
图23是本申请实施例提供的一种编码装置的结构示意图;
[0085]
图24是本申请实施例提供的一种译码装置的结构示意图;
[0086]
图25是本申请实施例提供的一种编码装置的示意性框图;
[0087]
图26是本申请实施例提供的一种译码装置的示意性框图。

具体实施方式

[0088]
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0089]
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
[0090]
本申请实施例的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一目标对象和第二目标对象等是用于区别不同的目标对象,而不是用于描述目标对象的特定顺序。
[0091]
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
[0092]
在本申请实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。例如,多个处理单元是指两个或两个以上的处理单元;多个系统是指两个或两个以上的系统。
[0093]
在对本申请实施例的技术方案说明之前,首先结合附图对本申请实施例的通信系统进行说明。参见图1,为本申请实施例提供的一种通信系统示意图。该通信系统中包括基站100、终端200。在本申请实施例具体实施的过程中,终端200可以为电脑、智能手机、电话机、有线电视机顶盒、数字用户线路路由器等设备。需要说明的是,在实际应用中,基站与终端的数量均可以为一个或多个,图1所示通信系统的基站与终端的数量仅为适应性举例,本申请对此不做限定。
[0094]
上述通信系统可以用于支持第四代(fourth generation,4G)接入技术,例如长期演进(long term evolution,LTE)接入技术;或者,该通信系统也可以支持第五代(fifth generation,5G)接入技术,例如新无线(new radio,NR)接入技术;或者,该通信系统也可以用于支持第三代(third generation,3G)接入技术,例如通用移动通信系统(universal mobile telecommunications system,UMTS)接入技术;或者通信系统也可以用于支持第二代(second generation,2G)接入技术,例如全球移动通讯系统(global system for mobile communications,GSM)接入技术;或者,该通信系统还可以用于支持多种无线技术的通信系统,例如支持LTE技术和NR技术。另外,该通信系统也可以适用于窄带物联网系统(Narrow Band-Internet of Things,NB-IoT)、增强型数据速率GSM演进系统(Enhanced Data rate for GSM Evolution,EDGE)、宽带码分多址系统(Wideband Code Division Multiple Access,WCDMA)、码分多址2000系统(Code Division Multiple Access, CDMA2000)、时分同步码分多址系统(Time Division-Synchronization Code Division Multiple Access,TD-SCDMA),长期演进系统(Long Term Evolution,LTE)以及面向未来的通信技术。
[0095]
以及,图1中的基站100可用于支持终端接入,例如,可以是2G接入技术通信系统中的基站收发信台(base transceiver station,BTS)和基站控制器(base station controller,BSC)、3G接入技术通信系统中的节点B(node B)和无线网络控制器(radio network controller,RNC)、4G接入技术通信系统中的演进型基站(evolved nodeB,eNB)、5G接入技术通信系统中的下一代基站(next generation nodeB,gNB)、发送接收点(transmission reception point,TRP)、中继节点(relay node)、接入点(access point,AP)等等。为方便描述,本申请所有实施例中,为终端提供无线通信功能的装置统称为网络设备或基站。
[0096]
图1中的终端可以是一种向用户提供语音或者数据连通性的设备,例如也可以称为移动台(mobile station),用户单元(subscriber unit),站台(station),终端设备(terminal equipment,TE)等。终端可以为蜂窝电话(cellular phone),个人数字助理(personal digital assistant,PDA),无线调制解调器(modem),手持设备(handheld),膝上型电脑(laptop computer),无绳电话(cordless phone),无线本地环路(wireless local loop,WLL)台,平板电脑(pad)等。随着无线通信技术的发展,可以接入通信系统、可以与通信系统的网络侧进行通信,或者通过通信系统与其它物体进行通信的设备都可以是本申请实施例中的终端,譬如,智能交通中的终端和汽车、智能家居中的家用设备、智能电网中的电力抄表仪器、电压监测仪器、环境监测仪器、智能安全网络中的视频监控仪器、收款机等等。在本申请实施例中,终端可以与基站,例如图1中的基站10进行通信。多个终端之间也可以进行通信。终端可以是静态固定的,也可以是移动的。
[0097]
图2a是一种基站的结构示意图。在图2a中:
[0098]
基站100中包括至少一个处理器101、至少一个存储器102、至少一个收发器103、至少一个网络接口104和一个或多个天线105。处理器101、存储器102、收发器103和网络接口104相连,例如通过总线相连。天线105与收发器103相连。网络接口104用于使得基站通过通信链路,与其它通信设备相连。在本申请实施例中,所述连接可包括各类接口、传输线或总线等,本实施例对此不做限定。
[0099]
本申请实施例中的处理器,例如处理器101,可以包括如下至少一种类型:通用中央处理器(Central Processing Unit,CPU)、数字信号处理器(Digital Signal Processor,DSP)、微处理器、特定应用集成电路专用集成电路(Application-Specific Integrated Circuit,ASIC)、微控制器(Microcontroller Unit,MCU)、现场可编程门阵列(Field Programmable Gate Array,FPGA)、或者用于实现逻辑运算的集成电路。例如,处理器101可以是一个单核(single-CPU)处理器或多核(multi-CPU)处理器。至少一个处理器101可以是集成在一个芯片中或位于多个不同的芯片上。
[0100]
本申请实施例中的存储器,例如存储器102,可以包括如下至少一种类型:只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态 存储设备,也可以是电可擦可编程只读存储器(Electrically erasable programmabler-only memory,EEPROM)。在某些场景下,存储器还可以是只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
[0101]
存储器102可以是独立存在,与处理器101相连。可选的,存储器102也可以和处理器101集成在一起,例如集成在一个芯片之内。其中,存储器102能够存储执行本申请实施例的技术方案的程序代码,并由处理器101来控制执行,被执行的各类计算机程序代码也可被视为是处理器101的驱动程序。例如,处理器101用于执行存储器102中存储的计算机程序代码,从而实现本申请实施例中的技术方案。
[0102]
收发器103可以用于支持接入网设备与终端之间射频信号的接收或者发送,收发器103可以与天线105相连。收发器103包括发射机Tx和接收机Rx。具体地,一个或多个天线105可以接收射频信号,该收发器103的接收机Rx用于从天线接收所述射频信号,并将射频信号转换为数字基带信号或数字中频信号,并将该数字基带信号或数字中频信号提供给所述处理器101,以便处理器101对该数字基带信号或数字中频信号做进一步的处理,例如解调处理和译码处理。此外,收发器103中的发射机Tx还用于从处理器101接收经过调制的数字基带信号或数字中频信号,并将该经过调制的数字基带信号或数字中频信号转换为射频信号,并通过一个或多个天线105发送所述射频信号。具体地,接收机Rx可以选择性地对射频信号进行一级或多级下混频处理和模数转换处理以得到数字基带信号或数字中频信号,所述下混频处理和模数转换处理的先后顺序是可调整的。发射机Tx可以选择性地对经过调制的数字基带信号或数字中频信号时进行一级或多级上混频处理和数模转换处理以得到射频信号,所述上混频处理和数模转换处理的先后顺序是可调整的。数字基带信号和数字中频信号可以统称为数字信号。
[0103]
图2b是一种终端的结构示意图。在图2b中:
[0104]
终端200包括至少一个处理器201、至少一个收发器202和至少一个存储器203。处理器201、存储器203和收发器202相连。可选的,终端200还可以包括一个或多个天线204。天线204与收发器202相连。
[0105]
收发器202、存储器203以及天线204可以参考图2a中的相关描述,实现类似功能。
[0106]
处理器201可以是基带处理器,也可以是CPU,基带处理器和CPU可以集成在一起,或者分开。
[0107]
处理器201可以用于为终端200实现各种功能,例如用于对通信协议以及通信数据进行处理,或者用于对整个终端200进行控制,执行软件程序,处理软件程序的数据;或者处理器201用于实现上述功能中的一种或者多种。
[0108]
在上述通信系统中,终端在与基站进行通信时,终端与基站会互为发送端与接收端,即,终端向基站发送信号时,终端作为发送端,基站作为接收端,反之,基站向终端发送信号时,基站作为发送端,而终端作为接收端。具体的,在无线通信的过程中,基本流程如图3所示,在图3中:
[0109]
在发送端,信源依次经过信源编码、信道编码、和调制映射后发出。在接收端,依次通过解映射解调、信道译码和信源译码输出信宿。
[0110]
需要说明的是,当终端作为发送端时,图3中的编码过程(信源编码、信道编码、和调制映射等步骤)由终端执行,当终端作为接收端时,图3中的译码过程(映射解调、信道译码和信源译码等步骤)由终端执行。基站相同。
[0111]
目前的信道编/译码方式包括但不限于:汉明码、Polar码。
[0112]
在已有技术中,编译码的学习过程,主要是针对整个码字空间的样本进行学习,但是,对于码长较长的编/译码方式,例如:Polar码,举例说明,当信息比特长度K=32时,则有2 32个码字。因此,由于难度以及复杂度剧增,已有技术无法完成对编译码的学习。
[0113]
综上,本申请实施例中提出了一种实现通过对码字空间的小范围采样,即可泛化到整个码字空间的编码/译码方法。该方法通过基于编码/译码生成的神经网络单元,构成编码/译码神经网络,再根据编码/译码神经网络对待编码信息进行编码和/或译码。
[0114]
结合上述如图1所示的通信系统示意图,下面介绍本申请的具体实施方案:
[0115]
场景一
[0116]
结合图1,如图4所示为本申请实施例中的编码方法的流程示意图,在图4中:
[0117]
步骤101,生成神经网络单元。
[0118]
具体的,在本申请的实施例中,编码装置可基于核矩阵生成初始神经网络单元,随后,编码装置对初始神经网络单元进行训练,使初始神经网络单元的输出值接近期望的优化目标。则,训练后的初始神经网络单元即为所述神经网络单元。其中,初始神经网络单元所包含的初始神经元参数,经过训练后,更新为神经网络单元中包含的神经元参数。以及,输出值接近期望的优化目标即为:初始网络单元输出的输出信息与输入的输入信息对应的期望校验结果之间的误差小于阈值。在本申请的实施例中,输入信息的期望校验结果为输入信息基于初始神经网络单元对应的核矩阵在伽罗华域(Galois Field)GF(2)上进行乘法和加法运算后得到的。
[0119]
可选地,在一个实施例中,输出信息与输入信息的期望校验结果之间的误差可以为输出信息与期望校验结果之间的差值。
[0120]
可选地,在另一个实施例中,输出信息与输入信息的期望校验结果之间的误差可以为输出信息与期望校验结果之间的均方差。
[0121]
操作人员可根据实际需求设置求取输出信息与期望校验结果之间的误差的方式,本申请不做限定。
[0122]
以及,对应于输出信息与期望校验结果之间的误差的阈值也可根据误差求取的方式不同,进行相应的设置。
[0123]
下面结合Polar码对生成神经网络单元的方法进行详细阐述,如图5所示为生成神经网络单元的流程示意图,在图5中:
[0124]
步骤1011,构造初始神经网络单元。
[0125]
具体的,Polar码的编码公式可以用下列公式(1)表示:
[0126]
x=uG (1)
[0127]
其中,x为输出信息,u为输入信息,G为编码矩阵,在Polar码中,G也可以称为 生成矩阵,即生成矩阵为编码矩阵中的一种。其中,输入信息与输出信息均包含至少一个比特信息。
[0128]
在已有技术中,Polar码的生成矩阵G的表达式可以如公式(2):
[0129]
[0130]
其中, 表示克罗内克积, 表示克罗内克幂。以及,n表示基于G所构成的编码神经网络可以由一个或多个相同的核矩阵对应的神经网络单元组成。具体实现将在下面的实施例中进行详细说明。
[0131]
在本申请的实施例中,构成初始神经网络单元时,编码装置可基于核矩阵,获取到神经网络单元。具体的,编码装置基于公式(1)与公式(2)获取神经网络单元的输入信息(为区别其它神经网络或神经网络单元的输入信息,以下简称输入信息4)的期望校验结果对应的校验方程。
[0132]
举例说明:若 则输入信息4对应的校验方程为:
[0133]
x 1=u 1 (3)
[0134]
其中,x 0与x 1为输出信息4,u 0与u 1为输入信息4。
[0135]
则输入信息4对应的校验方程为:
[0136]
[0137]
其中,x 0、x 1与x 2为输出信息4,u 0、u 1与u 2为输入信息4。
[0138]
需要说明的是,T的取值可以通过查表(例如表(1)中的取值)获取也可以通过计算获取,具体获取方式可参照已有技术中,本申请不再赘述。
[0139]
以及,常用T如表(1)所示:
[0140]
[0141]
[0142]
[0143]
[0144]
表1
[0145]
继续参照图5,初始神经网络单元包括输入层、输出层以及至少一个隐藏层。在本申请的实施例中,初始神经网络单元还包括有初始神经元参数,该参数用于指示输入信息4与输出信息4之间的映射关系,其中,初始神经元参数可包括:初始权重值w以及初始偏置向量b。需要说明的是,初始神经元参数一般情况下为随机生成的。
[0146]
以及,初始神经网络单元中的隐藏层包含Q个节点,在本申请的实施例中,Q大于等于N,而N为输入信息的码长与输出信息的码长之中的最小值。需要说明的是,隐藏层的数量可以为一个或一个以上,其中,隐藏层的数量越多,则神经网络的复杂度越大,但其泛化能力越强。因此,操作人员在设置初始神经网络单元以及申请实施例中的其它神经网络的隐藏层的数量时,可基于实际需求,结合装置的处理能力、计算能力等因素进行设置,本申请不做限定。
[0147]
在本实施例中,以Polar码为例,构造的初始神经网络单元如图6所示。在图6中:
[0148]
编码装置基于核矩阵T 2构造初始神经网络单元,其中,对应于基于T 2构造的初始神经网络单元的期望校验结果如图6的初始神经网络单元的输出侧所示,即可参照公式(3)。
[0149]
由于Polar码的特殊性,其编码或译码过程中,输入信息与输出信息的码长对称,即相等。举例说明:如公式(3),输入信息为:u 0与u 1,则,输出信息为:x 0与x 1,码长为N=2。
[0150]
因此,在Polar码中,隐藏层中的节点个数大于输入信息与输出信息的码长。即,在 输入信息与输入信息的码长为2的情况下,隐藏层中的节点数为大于2的整数。在图6中,仅以初始神经网络单元具有一个隐藏层,并且,隐藏层具有3个节点为例进行详细说明。
[0151]
步骤1012,对初始神经网络单元进行训练,生成神经网络单元。
[0152]
具体的,在本实施例中,编码装置可基于初始神经元参数,对初始神经网络单元进行训练,直至输出信息4与输入信息4的期望校验结果之间的误差小于阈值。
[0153]
仍以图6中的初始神经网络单元为例进行说明:
[0154]
具体的,以输入信息4为[0,1],即u 0=0与u 1=1为例。编译装置对输入信息4基于公式(3)在GF(2)域上进行乘法和加法运算,即异或运算(需要说明的是,在本实施例中,m=1,即基于输入信息的二元特性,本实施例的期望校验结果在二元域上进行运算),得到对应于输入信息4的期望校验结果为:[1,1],即,x 0=1,x 1=1。
[0155]
随后,编译装置基于输入信息4、输入信息4的期望校验结果以及初始神经元参数对初始神经网络单元进行训练,训练过程如下:
[0156]
1)获取损失函数。
[0157]
具体的,对于相邻两层的神经元(即输入层、输入层或隐藏层中的节点),下一层神经元的输入h即为与之相连的上一层神经元的输出x基于初始神经元参数(两层之间的每一条连线上均设置有一个初始权重值w,以及每个节点上设置有一个初始偏置向量b)(图6中未示出神经元参数的具体数值,设置方式可参照已有技术中,本申请不再赘述)对进行加权求和,再经过激活函数,每个神经元的输入h如公式(5)所示:
[0158]
h=f(wx+b) (5)
[0159]
则,神经网络的输出y(即为本申请实施例中初始神经网络输出的输入信息4)可以递归表示为:
[0160]
y=f n(w nf n-1+b n) (6)
[0161]
继续参照图6,基于公式(5)和公式(6)对初始神经网络单元的输入信息4:[0,1]进行运算,并获取输出信息(为区分其它训练结果,以下简称训练结果1)。
[0162]
随后,编码装置获取训练结果1与期望校验结果[1,1]之间的误差值。误差值的计算方法如上文所述,即,可以为训练结果1与期望校验结果之间的差值,或均方值。求取损失函数的具体细节可参照已有技术实施例,本申请不再赘述。
[0163]
2)将误差反向传播。
[0164]
具体的,编码装置可通过将误差方向传播,计算出输出层的残差,然后再逐层对每一层中的节点的残差进行加权求和,随后,基于学习率,与输入层每个节点的残差值,更新第一层权重(即输入层与隐藏层之间的权重),并循环上述方法,逐层更新对应的权重。随后,在利用更新后的权重,再次对输入信息4进行训练,并获得训练结果2,以及,循环上述步骤,即,对初始神经元参数进行反复更新,直至初始神经网络输出的训练结果n与期望校验结果之间的误差小于目标值(例如:目标值可以为0.0001),即可确认训练结果收敛。
[0165]
上述训练方法即为梯度下降法,编码装置可通过梯度下降法对初始权重值w以及初始偏置向量b迭代优化,以使损失函数达到最小值。梯度下降法的具体细节可参照已有技术实施例,本申请不再赘述。
[0166]
需要说明的是,编码装置还可以通过其它训练方法对本申请实施例中的初始神经网络单元以及其它神经网络进行训练,其目的均为使神经网络的输出值接近优化目标,并更新其中的神经元参数。
[0167]
在一个实施例中,若编码装置基于核矩阵 生成初始神经网络单元,则,生成的初始神经网络单元如图7所示。其中,对于输入信息[u 0,u 1,u 2],基于T 3得到的输入信息的期望校验结果为:
[0168]
在另一个实施例中,若编码装置基于核矩阵 生成初始神经网络单元,则,生成的初始神经网络单元如图8所示。其中,对于输入信息[u 0,u 1,u 2],基于T 3得到的输入信息的期望校验结果为: x 1=u 1,x 2=u 2
[0169]
在又一个实施例中,若编码装置基于核矩阵 生成初始神经网络单元,则,生成的初始神经网络单元如图9所示。其中,对于输入信息[u 0,u 1,u 2,u 3],基于T 4得到的输入信息的期望校验结果为: x 3=u 3
[0170]
继续参照图5,在本申请的实施例中,训练完成的初始神经网络单元即为本申请实施例中的神经网络单元。其中,初始神经网络单元经过训练后,将其所包含的初始神经元参数更新为神经元参数(即为本申请实施例中的第三神经元参数,以下简称神经元参数3)。
[0171]
在本申请的实施例中,神经网络单元可达到的结果为:基于其所包含的神经元参数3与激活函数,对输入的编码信息或训练信息(例如输入信息3)进行编码后,输出的输出信息3等于或接近输入信息3的期望校验结果。
[0172]
需要说明的是,对于相同的输入信息以及相同的训练方式,由于初始神经网络单元包含的初始神经元参数不同,其所训练后的得到的神经网络单元所包含的神经元参数也不相同。即,对应于一个核矩阵,可具有多个初始神经网络单元,每个初始神经网络单元包含的神经元参数不相同,其所输出的输出信息相同,即,上述多个初始神经网络单元虽包含不同的神经元参数,但是,编码能力相同。
[0173]
步骤102,生成初始编码神经网络。
[0174]
具体的,在本申请的实施例中,编码装置可基于步骤101生成的神经网络单元,生成初始编码神经网络。即,初始编码神经网络由一个或一个以上神经网络单元组成。其中,初始编码神经中包含有神经元参数2,该神经元参数2由神经网络单元包含的神经元参数3组成,即,组成初始编码神经网络的一个或一个以上神经网络单元包含的神经元参数2组成了初始编码神经网络的初始神经元参数。随后,编码装置对初始编码神经网络进行训练,以更新所述初始神经元参数。
[0175]
具体的,如图10所示为生成初始编码神经网络的步骤流程示意图,在图10中:
[0176]
步骤1021,获取编码网络图。
[0177]
具体的,在本申请的实施例中,编码装置可获取到编码网络图,其中,编码网络图中包括至少一个编码蝶形图,编码蝶形图用于指示编码蝶形图的输入信息与编码蝶形图的输出信息之间的校验关系。需要说明的是,编码网络图可由系统提供。如图11为编码网络图中的一种。
[0178]
步骤1022,将神经网络单元与编码蝶形图进行匹配。
[0179]
步骤1023,将神经网络单元对匹配成功的编码蝶形图进行替换。
[0180]
具体的,举例说明:参照公式(2),如果要生成对应于公式(7)的初始编码神经网络:
[0181]
[0182]
则可将基于T 2生成的神经网络单元对图11中的编码网络图中与基于T 2生成的神经网络单元匹配成功的编码蝶形图进行替换。
[0183]
具体的,编码装置将神经网络单元与编码网络图中的编码蝶形图进行逐一匹配。其中,匹配方式为:
[0184]
例如:基于T 2生成的神经网络单元(为区分其它神经网络单元,以下简称神经网络单元1)可参照图6,即,神经网络单元1的输入信息与输出信息的码长均为2,即可确认神经网络单元1为2×2的神经网络单元。编码装置可在编码网络图中查找同样结构为2×2的编码蝶形图,2×2结构的编码蝶形图如图12所示。
[0185]
接着,编码装置可将神经网络单元1对编码网图中与神经单元1匹配成功的,即,所有具有2×2结构的编码蝶形图替换为神经网络单元1,得到初始编码神经网络,如图12所示。
[0186]
需要说明的是,如上文所述,对于同一个核矩阵,可对应存在多个具有不同神经元参数的神经网络单元,多个神经网络单元可作为对应与同一核矩阵的神经网络单元集合。可选地,在一个实施例中,初始编码神经网络可由神经网络单元集合中的任一一个或一个以上的神经网络单元组成。即,可将神经网络单元集合中的任一一个或一个以上的神经网络单元对编码网络图中的编码蝶形图进行替换。
[0187]
可选地,在另一个实施例中,根据公式(8):
[0188]
[0189]
可知,对应于生成矩阵G的初始编码神经网络可由对应于不同核矩阵的神经网络单元集合中的神经网络单元组成。
[0190]
举例说明:核矩阵T2对应的神经网络单元集合1中包括{神经网络单元1、神经网络单元2、神经网络单元3},核矩阵T3对应的神经网络集合2中包括:{神经网络单元4、神经网络单元5、神经网络单元6},则,编码装置获取到的编码网络图中包含至少一个2×2结构的编码蝶形图以及至少一个3×3结构的编码蝶形图。随后编码装置可将神经网络单元1、神经网络单元3以及神经网络单元5对编码蝶形图进行逐一匹配,并对匹配成功的编码蝶形图进行替换,得到初始编码神经网络。
[0191]
步骤103,对初始编码神经网络进行训练,得到编码神经网络。
[0192]
具体的,在本申请的实施例中,编码装置可基于初始编码神经网络的神经元参数2 (由神经元参数1组成)以及激活函数,对初始编码神经网络进行训练,直至初始编码神经网络输出的输出信息2与输入信息2的期望校验结果之间的误差小于阈值。以及,初始编码神经网络经过训练后,将神经元参数2进行更新。
[0193]
在本申请的实施例中,训练完成的初始编码神经网络即为编码神经网络,更新后的神经元参数2即为编码神经网络对应的神经元参数1,其中,神经元参数1用于编码神经网络输入的输入信息1与输出的输出信息1之间的映射关系。
[0194]
对初始编码神经网络训练的具体步骤可参照神经网络单元的训练步骤,此处不赘述。
[0195]
步骤104,获取输入信息。
[0196]
具体的,在本申请的实施例中,编码装置可从其它与其进行通信连接的其它装置(例如:终端的输入装置)中获取到需要进行编码的信息(即本申请实施例中的待编码信息),即输入信息。
[0197]
步骤105,基于编码神经网络,对输入信息进行编码,得到并输出输出信息。
[0198]
具体的,在本申请的实施例中,编码装置可将获取到的输入信息(为区分其它输入信息,以下简称输入信息1)基于生成编码神经网络进行编码,得到输出信息1,并将输出信息1输出。其中,具体编码过程为:编码装置将输入信息1基于神经元参数1进行加权求和,再基于激活函数进行运算,得到输出信息1。具体细节可参照现有技术实施例中,本申请不做赘述。
[0199]
综上所述,本申请实施例中的技术方案,可基于核矩阵生成对应的神经网络单元,再将神经网络单元组成编码网络,实现了将小的神经网络单元进行连接后,得到大的神经网络,从而在编码的学习过程中,能够通过小的学习样本,泛化至整个码字空间,而弱化具有较长码字的信息,例如:Polar码对神经网络的复杂度以及学习难度的影响。
[0200]
场景二
[0201]
场景一主要对于Polar码的编码网络生成过程进行详细举例,本申请实施例中的编码方法可作为通用编码方法即,可用于其他编码方式,如里德-所罗门(Reed-Solomon,RS)码,汉明码,波斯-乔德瑞-侯昆海恩(Bose–Chaudhuri–Hocquenghem,BCH)码,卷积码,涡轮(Turbo)码、低密度奇偶校验(low-density parity-check,LDPC)码等(以下简称通用编码)。
[0202]
结合图1,如图14所示为本申请实施例中的编码方法的流程示意图,在图14中:
[0203]
步骤201,生成神经网络单元。
[0204]
具体的,在本实施例中,对于通用编码,具有任意长度k 1的输入信息u的码字c可用公式(9)表示:
[0205]
c=uG (9)
[0206]
其中,u的信息比特长度为k 2。则,编码矩阵G的维度为:k 1×k 2
[0207]
同样的,编码装置可生成对应于核矩阵的初始神经网络单元。
[0208]
为更好地理解本申请实施例中的技术方案,下面以通用编码中的汉明码为例进行详细阐述。需要说明的是,在汉明码中,编码矩阵与核矩阵相同,即,G=T。
[0209]
以核矩阵为 为例,生成的初始神经网络单元如图15所示。
[0210]
若输入信息u=[0,1],则输入信息u的期望校验结果为:c=uG=[0,1,0]。
[0211]
随后,编码装置对初始神经网络单元进行训练,直至输出信息接近期望校验结果。训练的具体细节可参照场景一,此处不赘述。
[0212]
步骤202,生成初始编码神经网络。
[0213]
与场景一中相同,对于汉明码,编码装置可将神经网络单元对获取到的编码网络图中的蝶形图进行替换,得到初始编码网络,具体细节可参照场景一,此处不赘述。
[0214]
步骤203,对初始编码神经网络进行训练,得到编码神经网络。
[0215]
该步骤的具体细节可参照场景一,此处不赘述。
[0216]
步骤204,获取输入信息。
[0217]
该步骤的具体细节可参照场景一,此处不赘述。
[0218]
步骤205,基于编码神经网络,对输入信息进行编码,得到并输出输出信息。
[0219]
该步骤的具体细节可参照场景一,此处不赘述。
[0220]
场景三
[0221]
结合图1,如图16所示为本申请实施例中的译码方法的示意图,在图16中:
[0222]
步骤301,生成神经网络单元。
[0223]
具体的,在本申请的实施例中,译码装置可基于核矩阵生成初始神经网络单元,随后,编码装置对初始神经网络单元进行训练,使初始神经网络单元的输出值接近期望的优化目标。则,训练后的初始神经网络单元即为所述神经网络单元。其中,初始神经网络单元所包含的初始神经元参数,经过训练后,更新为神经网络单元中包含的神经元参数。以及,输出值接近期望的优化目标即为:初始网络单元输出的输出信息与输入的输入信息对应的期望校验结果之间的误差小于阈值。在本申请的实施例中,输入信息的期望校验结果为输入信息基于初始神经网络单元对应的核矩阵在GF(2)上进行乘法和加法运算后得到的。
[0224]
下面结合Polar码对生成神经网络单元的方法进行详细阐述。
[0225]
具体的,Polar码的译码公式可以用下列公式(10)表示:
[0226]
x=yG (10)
[0227]
其中,x为神经网络单元的输出信息,y为神经网络单元的输入信息,需要说明的是,在场景一中,各神经网络单元或神经网络的输入均为比特信息,编码神经网络输出编码后的比特信息,经过信道处理,将比特信息转换为似然比值。因此,在本场景中,神经网络单元与神经单元的输入信息均为信道输出的似然比值。
[0228]
在本申请的实施例中,译码装置基于公式(10)与公式(2)(其中,公式(2)中的n为1),获取到对应于初始神经网络单元的输入信息的期望校验结果,并基于输入信息以及输入信息的期望校验结果生成初始神经网络单元。
[0229]
举例说明:若 则初始神经网络单元如图17所示。其中,对于输入信 息[y 0,y 1,y 2],基于T 3得到的输入信息的期望校验结果为:
[0230]
则初始神经网络单元如图18所示。其中,对于输入信息[y 0,y 1,y 2],基于T 3得到的输入信息的期望校验结果为:
[0231]
则初始神经网络单元如图19所示。其中,对于输入信息[y 0,y 1,y 2,y 3],基于T 4得到的输入信息的期望校验结果为:
[0232]
生成初始神经网络单元的具体细节可参照场景一,此处不赘述。
[0233]
随后,译码装置对初始神经网络单元进行训练,得到神经网络单元。具体训练过程可参照场景一,此处不赘述。
[0234]
步骤302,生成初始译码神经网络。
[0235]
具体的,在本申请的实施例中,译码装置可步骤301生成的神经网络单元,生成初始编码神经网络。即,初始编码神经网络由一个或一个以上神经网络单元组成。
[0236]
具体细节可参照场景一,此处不赘述。
[0237]
步骤303,对初始译码神经网络进行训练,得到译码神经网络。
[0238]
具体的,在本申请的实施例中,译码装置可通过对初始译码神经网络进行训练,使初始译码神经网络的输出信息接近期望译码结果,并对其所包含的神经元参数进行更新。训练后的初始译码神经网络即为译码神经网络。
[0239]
具体的,在本申请的实施例中,译码装置基于训练信息对译码神经网络进行训练的过程与场景一中编码神经网络的训练过程不同,其中,编码神经网络在训练过程中,是通过对输入信息(即训练信息)进行训练后,再获取输出信息与输入信息的期望校验结果之间的误差,随后,再基于误差,进行其他训练步骤,并更新神经元参数。而在译码神经网络的训练过程中,由于译码神经网络输入的训练信息为似然比,因此,在译码神经网络中,其在求损失参数的过程为:基于输出信息与期望译码结果求取损失函数。其中,期望译码结果的获取方式为:基于任一编码装置(可以是本申请实施例中的编码装置,也可以是其它类型的编码装置)对编码信息(该编码信息为比特信息)进行编码,并输出编码结果,编码结果同样为比特信息,则,编码信息即为本实施例中的期望译码结果。即,译码神经网络输入的训练信息为编码结果经过信道处理后生成的似然比值,因此,译码神经网络的期望输出值(即期望译码结果)应为所述编码信息。
[0240]
步骤304,获取输入信息。
[0241]
该步骤的具体细节可参照场景一,此处不赘述。
[0242]
步骤305,基于译码神经网络,对输入信息进行译码,得到并输出输出信息。
[0243]
具体的,在本申请的实施例中,译码装置可将接收到的输入信息基于生成的译码神 经网络进行译码,得到输出信息,并将输出信息输出。其中,具体译码过程为:译码装置将输入信息基于神经元参数进行加权求和,再基于激活函数进行运算,得到输出信息。具体细节可参照现有技术实施例中,本申请不做赘述。
[0244]
综上所述,本申请实施例中的技术方案,可基于核矩阵生成对应的神经网络单元,再将神经网络单元组成译码神经网络,实现了将小的神经网络单元进行连接后,得到大的神经网络,从而在译码的学习过程中,能够通过小的学习样本,泛化至整个码字空间,而弱化具有较长码字的信息,例如:Polar码对神经网络的复杂度以及学习难度的影响。
[0245]
可选地,本申请实施例中的译码方法同样可适用于其他编码方式(即通用编码),例如:汉明码。具体细节可参照场景一、场景二以及场景三,此处不赘述。
[0246]
场景四
[0247]
结合图1,如图20所示为本申请实施例中的编/译码方法的流程示意图,在图20中:
[0248]
步骤401,生成初始编/译码神经网络。
[0249]
具体的,在本申请的实施例中,编/译码装置可基于上文中所述的编码神经网络以及译码神经网络,生成初始编/译码神经网络。
[0250]
可选地,在一个实施例中,生成初始编/译码神经网络中的编码神经网络与译码神经网络可具有相同的神经元参数。例如,在Polar码中,即可实现生成初始编/译码神经网络中的编码神经网络与译码神经网络可具有相同的神经元参数。
[0251]
可选地,在另一个实施例中,生成初始编/译码神经网络中的编码神经网络与译码神经网络可具有不相同的神经元参数。例如,在汉明码中,即可实现生成初始编/译码神经网络中的编码神经网络与译码神经网络可具有不相同的神经元参数。
[0252]
在本实施例中,以Polar码为进行详细说明。
[0253]
具体的,编/译码装置可获取编码装置生成的编码神经网络,其中,该编码神经网络已完成场景一中的训练过程,即,编码神经网络的输出信息接近期望校验结果。
[0254]
随后,编/译码装置可获取译码装置生成的译码神经网络,其中,该译码神经网络可以为已训练完成的译码神经网络,即,译码神经网络的输出信息接近期望校验结果。或者,还可以为未经过训练的初始译码神经网络,即,仅具有初始的神经元参数的译码神经网络。
[0255]
接着,编/译码装置可对获取到的编码神经网络与译码神经网络进行参数共享。即,将编码神经网络中的神经元参数对译码神经网络(或初始译码神经网络)中的神经元参数进行替换,以生成初始编/译码神经网络。
[0256]
在另一个实施例中,编/译码装置还可获取已完成训练的译码神经网络,以及,获取已完成训练的编码神经网络,或者,未完成训练的初始编码神经网络。编/译码可将译码神经网络中的神经元参数对编码神经网络(或初始编码神经网络)中的神经元参数进行替换,以生成初始编/译码神经网络。
[0257]
步骤402,对初始编/译码神经网络进行训练,得到编/译码神经网络。
[0258]
具体的,在本申请的实施例中,编/译码装置对初始编/译码神经网络进行训练,训练后的初始编/译码神经网络即为编/译码神经网络。
[0259]
如图21所示为初始编/译码神经网络的训练方法的流程示意图,在图21中:
[0260]
编/译码装置在编/译码神经网络的编码神经网络侧输入输入信息,也可以称之为训练信息。其中,训练信息的码长与编/译码神经网络的码长相同。
[0261]
随后,初始编/译码神经网络中的编码神经网络对训练信息进行编码,得到并输出编码结果。接着,编码结果经过信道处理后,输入至译码神经网络,其中,输入译码神经网络侧的编码结果为似然比值。
[0262]
接着,译码神经网络侧对输入的似然比值进行译码,得到并输出译码结果,也可称为训练结果。
[0263]
在本实施例中,输入的训练信息即为编/译码神经网络的期望校验结果。编/译码装置可基于训练信息与训练结果,获取损失函数。获取损失函数的方式同样可以为:均方差、差值等函数。以及,编/译码装置判断损失函数的结果是否收敛,即,训练信息与训练结果之间的误差是否大于阈值(求取误差的具体细节可参照上述场景一中的实施例),若小于阈值,则,训练结束。若大于或等于阈值,则继续下一步。
[0264]
在本实施例中,在误差大于或等于阈值的情况下,编/译码装置可通过优化器对编/译码神经网络进行优化,优化方法包括但不限于:以梯度下降等方式,对编/译码神经网络进行迭代,并对编/译码网络中的神经元参数进行更新,并将更新后的神经元参数共享给编码神经网络与译码神经网络。随后,编/译码装置重复上述训练步骤,直至训练结果与训练信息之间的误差小于阈值,或者,训练的轮数达到训练轮数阈值,或者,训练的时长达到训练时长阈值。
[0265]
训练后的初始编/译码神经网络即为编/译码神经网络。
[0266]
步骤403,基于编/译码神经网络对输入信息进行编码,得到并输出输出信息。
[0267]
具体的,在本申请的实施例中,训练完成的编/译码神经网络可分为编码神经网络部分和译码神经网络部分。其中,编/译码神经网络通过编码神经网络部分对输入信息进行编码,得到并输出编码结果,随后,由译码神经网络部分对编码结果进行译码,得到并输出译码结果(其中,译码结果即为输出信息,并且译码结果与输入信息相同)。
[0268]
其中,编码神经网络可设置于终端和/或基站中,译码神经网络可设置于终端和/或基站中。
[0269]
具体的,当终端向基站发送信号时,由终端中的编码神经网络部分对待编码信息(即输入信息)进行编码后,得到并输出编码结果,并信道传输给基站。基站接收到编码结果后,通过译码神经网络对编码结果进行译码,得到并输出译码结果,即为所述待编码信息。
[0270]
当基站向终端发送信号时,由基站中的编码神经网络部分对待编码信息进行编码后,得到并输出编码结果,并信道传输给终端。终端接收到编码结果后,通过译码神经网络对编码结果进行译码,得到并输出译码结果,即为所述待编码信息。
[0271]
需要说明的是,对于汉明码等由具有不相同的神经元参数的编码/译码神经网络组成的编/译码神经网络,可不经过训练,可直接通过两侧编码、译码神经网络进行编码及译码。
[0272]
综上所述,本申请实施例中的技术方案,通过对编码神经网络与译码神经网络的参 数共享,从而提升编/译码神经网络的性能,并且降低复杂度。以及,通过由编码神经网络与译码神经网络组成的编/译码神经网络,降低了学习成本以及难度,有效的提升了学习效率。
[0273]
可选地,在一个实施例中,本申请实施例中编码/译码方法还可以应用于多元域。以Polar码举例:具体的,二元Polar码的生成矩阵由“0”、“1”两种元素构成,而多元Polar的生成矩阵则可由零元素和GF(2 m)(其中,m为大于1的整数)上的非零元素构成。与二元Polar码相同,多元Polar码的生成矩阵仍可以表示为基于核矩阵的克罗内克积运算得到。以场景一中的 为例,在本实施例中,将 中的1替换为GF(2 m)上的非零元素,如 其中j,k,l为自然数,则,根据公式(2),多元Polar码的生成矩阵G可表示为 在多元域中,对应于 的神经网络单元如图22所示。其中,对于输入信息[y 0,y 1],基于T 2得到的输入信息的期望校验结果为:
[0274]
对于多元域上生成的神经网络单元,基于其所生成的编码神经网络或译码神经网络的方式均可参照场景一至三中的描述,此处不赘述。
[0275]
可选地,在一个实施例中,本申请实施例中的编码装置、译码装置和/或编/译码装置在对神经网络单元或神经网络(指编码神经网络、译码神经网络、和/或编/译码神经网络)进行训练的过程中,还可设置有预设条件,当训练过程中达到预设条件的情况下,则停止训练。预设条件包括但不限于:训练轮数大于训练轮数阈值,即,当训练的轮数达到训练轮数阈值时,即可停止训练;训练时长大于训练时长阈值,即,当训练的时长达到训练时长阈值时,即可停止训练。还可以设置其它预设条件,本申请对此不作限定。需要说明的是,可设置多个训练条件,例如:训练条件可以为A:损失函数小于损失函数阈值(即本申请实施例中所述的输出信息与期望校验结果之间的误差小于阈值),训练条件B:训练轮数大于训练轮数阈值。则,当损失函数仍未达到损失函数阈值,但是,训练轮数已经到达训练轮数阈值的情况下,则可停止训练。从而减少训练耗时,并节约资源。
[0276]
可选地,在本申请的实施例中,在训练阶段,各神经网络单元以及神经网络的输入均为训练信息,在编码阶段,各神经网络单元以及神经网络的输入均为待编码信息。其中,具有相同结构的神经网络单元或神经网络的训练信息可以与编码信息相同或不同,本申请不做限定。
[0277]
可选的,在一个实施例中,训练阶段(包括对神经网络单元的训练部分以及对神经网络(编码神经网络、译码神经网络和/或编/译码神经网络)的训练部分)可在线举行,即,将训练结果直接作为输入信息输入编码装置。在另一个实施例中,训练阶段还可以离线举行,即,在应用本申请实施例中的神经网络单元及神经网络之前,完成对神经网络单元以及神经网络的训练。
[0278]
下面介绍本申请实施例提供的一种编码装置。如图23所示:
[0279]
该编码装置300包括:处理单元301以及通信单元302。可选的,该编码装置300还包括存储单元303。处理单元301、通信单元302和存储单元303通过通信总线相连。
[0280]
存储单元303可以包括一个或者多个存储器,存储器可以是一个或者多个设备、电路中用于存储程序或者数据的器件。
[0281]
存储单元303可以独立存在,通过通信总线与处理单元201相连。存储单元也可以与处理单元301集成在一起。
[0282]
编码装置300可以是本申请实施例中的终端,例如终端200。终端的示意图可以如图2b所示。可选的,编码装置300的通信单元302可以包括终端的天线和收发机,例如图2b中的天线205和收发机202。
[0283]
编码装置300可以是是本申请实施例中的终端中的芯片,例如终端200中的芯片。通信单元302可以是输入或者输出接口、管脚或者电路等。可选的,存储单元可以存储终端侧的方法的计算机执行指令,以使处理单元301执行上述实施例中的编码方法。存储单元303可以是寄存器、缓存或者RAM等,存储单元302可以和处理单元301集成在一起;存储单元303可以是ROM或者可存储静态信息和指令的其他类型的静态存储设备,存储单元303可以与处理单元301相独立。可选的,随着无线通信技术的发展,收发机可以被集成在编码装置300上,例如通信单元302集成了收发机202。
[0284]
编码装置300可以是本申请实施例中的基站,例如基站100。基站100的示意图可以如图2a所示。可选的,编码装置300的通信单元302可以包括基站的天线和收发机,例如图2a中的天线205和收发机203。通信单元302还可以包括基站的网络接口,例如图2a中的网络接口204。
[0285]
编码装置300可以是本申请实施例中的基站中的芯片,例如基站100中的芯片。通信单元302可以是输入或者输出接口、管脚或者电路等。可选的,存储单元可以存储基站侧的方法的计算机执行指令,以使处理单元301执行上述实施例中的编码方法。存储单元32可以是寄存器、缓存或者RAM等,存储单元303可以和处理单元301集成在一起;存储单元303可以是ROM或者可存储静态信息和指令的其他类型的静态存储设备,存储单元303可以与处理单元301相独立。可选的,随着无线通信技术的发展,收发机可以被集成在编码装置300上,例如通信单元302集成了收发机203,网络接口204。
[0286]
当编码装置300是本申请实施例中的基站或者基站中的芯片时,可以实现上述实施例中的编码方法。
[0287]
下面介绍本申请实施例提供的一种译码装置。如图24所示:
[0288]
该译码装置400包括:处理单元401以及通信单元402。可选的,该译码装置400还包括存储单元403。处理单元401、通信单元402和存储单元403通过通信总线相连。
[0289]
存储单元403可以包括一个或者多个存储器,存储器可以是一个或者多个设备、电路中用于存储程序或者数据的器件。
[0290]
存储单元403可以独立存在,通过通信总线与处理单元201相连。存储单元也可以与处理单元401集成在一起。
[0291]
译码装置400可以是本申请实施例中的终端,例如终端200。终端的示意图可以如图 2b所示。可选的,译码装置400的通信单元403可以包括终端的天线和收发机,例如图2b中的天线205和收发机202。
[0292]
译码装置400可以是是本申请实施例中的终端中的芯片,例如终端200中的芯片。通信单元402可以是输入或者输出接口、管脚或者电路等。可选的,存储单元可以存储终端侧的方法的计算机执行指令,以使处理单元401执行上述实施例中的译码方法。存储单元403可以是寄存器、缓存或者RAM等,存储单元403可以和处理单元401集成在一起;存储单元403可以是ROM或者可存储静态信息和指令的其他类型的静态存储设备,存储单元403可以与处理单元401相独立。可选的,随着无线通信技术的发展,收发机可以被集成在译码装置400上,例如通信单元402集成了收发机202。
[0293]
译码装置400可以是本申请实施例中的基站,例如基站100。基站100的示意图可以如图2a所示。可选的,译码装置400的通信单元402可以包括基站的天线和收发机,例如图2a中的天线205和收发机203。通信单元402还可以包括基站的网络接口,例如图2a中的网络接口204。
[0294]
译码装置400可以是本申请实施例中的基站中的芯片,例如基站100中的芯片。通信单元403可以是输入或者输出接口、管脚或者电路等。可选的,存储单元可以存储基站侧的方法的计算机执行指令,以使处理单元401执行上述实施例中的译码方法。存储单元32可以是寄存器、缓存或者RAM等,存储单元403可以和处理单元401集成在一起;存储单元403可以是ROM或者可存储静态信息和指令的其他类型的静态存储设备,存储单元403可以与处理单元401相独立。可选的,随着无线通信技术的发展,收发机可以被集成在译码装置400上,例如通信单元402集成了收发机203,网络接口204。
[0295]
当译码装置400是本申请实施例中的基站或者基站中的芯片时,可以实现上述实施例中的译码方法。
[0296]
下面介绍本申请实施例提供的一种编码装置500。如图25所示:
[0297]
编码装置500包括:获取模块501、编码模块502。
[0298]
其中,获取模块501用于“获取输入信息”的相关步骤。例如,支持编码装置500执行上述方法实施例中的步骤104、步骤204。
[0299]
编码模块502用于“获取编码神经网络”的相关步骤。例如,支持编码装置500执行上述方法实施例中的步骤101、步骤102、步骤103、步骤201、步骤202、步骤203。
[0300]
以及,编码模块502还可用于“对输入信息进行编码”的相关步骤。例如:支持编码装置500执行上述方法实施例中的步骤105、步骤205。
[0301]
编码装置500可以通过获取模块501、编码模块502实现本申请实施例中编码装置的其他功能,具体可以参考上述实施例中的相关内容。
[0302]
下面介绍本申请实施例提供的一种编码装置600。如图26所示:
[0303]
译码装置600包括:获取模块601、译码模块602。
[0304]
其中,获取模块601用于“获取输入信息”的相关步骤。例如,支持编码装置500执行上述方法实施例中的步骤404。
[0305]
译码模块602用于“获取译码神经网络”的相关步骤。例如,支持译码装置600执行上述方法实施例中的步骤301、步骤302、步骤303。
[0306]
译码模块602还可用于“对输入信息进行译码,得到并输出输出信息”的相关步骤。例如,支持译码装置600执行上述方法实施例中的步骤405。
[0307]
译码装置600可以通过获取模块601、译码模块602实现本申请实施例中译码装置的其他功能,具体可以参考上述实施例中的相关内容。
[0308]
本申请实施例还提供了一种计算机可读存储介质。上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。如果在软件中实现,则功能可以作为一个或多个指令或代码存储在计算机可读介质上或者在计算机可读介质上传输。计算机可读介质可以包括计算机存储介质和通信介质,还可以包括任何可以将计算机程序从一个地方传送到另一个地方的介质。存储介质可以是可由计算机访问的任何可用介质。
[0309]
作为一种可选的设计,计算机可读介质可以包括RAM,ROM,EEPROM,CD-ROM或其它光盘存储器,磁盘存储器或其它磁存储设备,或可用于承载的任何其它介质或以指令或数据结构的形式存储所需的程序代码,并且可由计算机访问。而且,任何连接被适当地称为计算机可读介质。例如,如果使用同轴电缆,光纤电缆,双绞线,数字用户线(DSL)或无线技术(如红外,无线电和微波)从网站,服务器或其它远程源传输软件,则同轴电缆,光纤电缆,双绞线,DSL或诸如红外,无线电和微波之类的无线技术包括在介质的定义中。如本文所使用的磁盘和光盘包括光盘(CD),激光盘,光盘,数字通用光盘(DVD),软盘和蓝光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光光学地再现数据。上述的组合也应包括在计算机可读介质的范围内。
[0310]
本申请实施例还提供了一种计算机程序产品。上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。如果在软件中实现,可以全部或者部分得通过计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行上述计算机程序指令时,全部或部分地产生按照上述方法实施例中描述的流程或功能。上述计算机可以是通用计算机、专用计算机、计算机网络、网络设备、用户设备或者其它可编程装置。
[0311]
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。

权利要求书

[权利要求 1]
一种编码方法,其特征在于,包括: 获取第一输入信息; 基于编码神经网络,对所述第一输入信息进行编码,得到并输出第一输出信息; 其中,所述编码神经网络中包含第一神经元参数,所述第一神经元参数用于指示所述第一输入信息与所述第一输出信息之间的映射关系; 以及,所述编码神经网络由第一神经网络单元组成的初始编码神经网络经过训练后所得;其中,所述初始编码神经网络中包含用于指示所述初始编码神经网络输入的第二输入信息与输出的第二输出信息之间的映射关系的第二神经元参数;并且,所述初始编码神经网络经过训练后,将所述第二神经元参数更新为所述第一神经元参数; 以及,所述第二神经元参数由所述第一神经网络单元包含的第三神经元参数组成,其中,所述第三神经元参数用于指示所述第一神经网络单元输入的第三输入信息与输出的第三输出信息之间的映射关系;以及,所述第三输出信息与所述第三输入信息的期望校验结果之间的误差小于阈值,其中,所述第三输入信息的期望校验结果为所述第三输入信息基于第一核矩阵在伽罗华二元域GF(2)上进行乘法和加法运算后得到的; 其中,所述第一输入信息为待编码信息;以及,所述第二输入信息、所述第三输入信息为训练信息。
[权利要求 2]
根据权利要求1所述的方法,其特征在于,获取所述第一神经网络单元的步骤,包括: 构造所述第一初始神经网络单元,并设置所述第一初始神经元参数,其中,所述第一初始神经元参数用于指示所述第一初始神经元输入的第四输入信息与输出的第四输出信息之间的映射关系,其中,所述第一初始神经元参数包括初始权重值与初始偏置向量;以及,所述第一初始神经网络单元包括至少一个隐藏层,每个所述隐藏层包含Q个节点,并且,Q为大于等于N的整数,其中,N为所述第三输入信息的码长与所述第三输出信息的码长之中的最小值; 基于所述第一初始神经元参数,对所述第一初始神经网络单元进行训练,直至所述第四输出信息与所述第四输入信息的期望校验结果之间的误差小于所述阈值,其中,所述第四输入信息的期望校验结果为所述第四输入信息基于所述第一核矩在GF(2)上进行乘法和加法运算后得到的;以及,对所述第一初始神经网络单元进行训练时,将所述第一初始神经参数进行更新,得到所述第三神经参数;其中,所述第四输入信息为训练信息。
[权利要求 3]
根据权利要求1或2所述的方法,其特征在于,其中, 所述第一核矩阵为 或者, 所述第一核矩阵为
[权利要求 4]
根据权利要求1至3任一项所述的方法,其特征在于, 若所述第一核矩阵为 则所述第三输入信息的期望校验结果为 x 1=u 1; 其中,x 0与x 1为所述第三输出信息,u 0与u 1为所述第三输入信息; 或者, 若第一核矩阵为 则所述第三输入信息的期望校验结果为 其中,x 0、x 1与x 2为所述第三输出信息,u 0、u 1与u 2为所述第三输入信息。
[权利要求 5]
根据权利要求2至4任一项所述的方法,其特征在于,其中, 所述初始编码神经网络由所述第一神经网络单元与第二神经网络单元组成; 其中,所述第二神经网络单元包含第四神经元参数,所述第二神经网络单元由所述第一初始神经网络单元训练后所得,并且,所述第一初始神经网络单元经过训练后,将所述第一初始神经元参数进行更新,得到所述第四神经元参数,以及,所述第四神经参数与所述第三神经参数不相同。
[权利要求 6]
根据权利要求2至4任一项所述的方法,其特征在于,其中, 所述初始编码神经网络由所述第一神经网络单元与第三神经网络单元组成,所述第三神经网络单元包含第五神经元参数; 所述第五神经元参数用于指示所述第三神经网络单元输入的第五输入信息与输出的第五输出信息之间的映射关系;以及,所述第五输出信息与所述第五输入信息的期望校验结果之间的误差小于阈值,其中,所述第五输入信息的期望校验结果为所述第五输入信息基于第二核矩阵在GF(2)上进行乘法和加法运算后得到的; 其中,所述第五输入信息为训练信息。
[权利要求 7]
根据权利要求1所述的方法,其特征在于,获取所述初始编码神经网络的步骤,包括: 获取编码网络图,其中,所述编码网络图中包括至少一个编码蝶形图,所述编码蝶形图用于指示所述编码蝶形图的输入信息与所述编码蝶形图的输出信息之间的校验关系; 将所述第一神经网络单元与所述至少一个编码蝶形图进行匹配; 将第一神经网络单元对匹配成功的编码蝶形图进行替换,并得到所述初始编码神经网络。
[权利要求 8]
一种译码方法,其特征在于,包括: 获取第一输入信息; 基于译码神经网络,对所述第一输入信息进行译码,得到并输出第一输出信息; 其中,所述译码神经网络中包含第一神经元参数,所述第一神经元参数用于指示所述第一输入信息与所述第一输出信息之间的映射关系; 以及,所述译码神经网络由第一神经网络单元组成的初始译码神经网络经过训练后所得;其中,所述初始译码神经网络中包含用于指示所述初始译码神经网络输入的第二输入信息与输出的第二输出信息之间的映射关系的第二神经元参数;并且,所述初始译码神经网络经过训练后,将所述第二神经元参数更新为所述第一神经元参数; 以及,所述第二神经元参数由所述第一神经网络单元包含的第三神经元参数组成,其中,所述第三神经元参数用于指示所述第一神经网络单元输入的第三输入信息与输出的第三输出信息之间的映射关系;以及,所述第三输出信息与所述第三输入信息的期望校验结果之间的误差小于阈值,其中,所述第三输入信息的期望校验结果为所述第三输入信息基于第一核矩阵在GF(2)上进行乘法和加法运算后得到的; 其中,所述第一输入信息为待译码信息;以及,所述第二输入信息、所述第三输入信息为训练信息。
[权利要求 9]
根据权利要求8所述的方法,其特征在于,获取所述第一神经网络单元的步骤,包括: 构造所述第一初始神经网络单元,并设置所述第一初始神经元参数,其中,所述第一初始神经元参数用于指示所述第一初始神经元输入的第四输入信息与输出的第四输出信息之间的映射关系,其中,所述第一初始神经元参数包括初始权重值与初始偏置向量;以及,所述第一初始神经网络单元包括至少一个隐藏层,每个所述隐藏层包含Q个节点,并且,Q为大于等于N的整数,其中,N为所述第三输入信息的码长与所述第三输出信息的码长之中的最小值; 基于所述第一初始神经元参数,对所述第一初始神经网络单元进行训练,直至所述第四输出信息与所述第四输入信息的期望校验结果之间的误差小于所述阈值,其中,所述第四输入信息的期望校验结果为所述第四输入信息基于所述第一核矩在GF(2)上进行乘法和加法运算后得到的;以及,对所述第一初始神经网络单元进行训练时,将所述第一初始神经参数进行更新,得到所述第三神经参数;其中,所述第四输入信息为训练信息。
[权利要求 10]
根据权利要求8或9所述的方法,其特征在于,其中, 所述第一核矩阵为 或者, 所述第一核矩阵为
[权利要求 11]
根据权利要求8至10任一项所述的方法,其特征在于, 若所述第一核矩阵为 则所述第三输入信息的期望校验结果为 x 1=y 1; 其中,x 0与x 1为所述第三输出信息,y 0与y 1为所述第三输入信息; 或者, 若第一核矩阵为 则所述第三输入信息的期望校验结果为 其中,x 0、x 1与x 2为所述第三输出信息,y 0、y 1与y 2为所述第三输入信息。
[权利要求 12]
根据权利要求9至11任一项所述的方法,其特征在于,其中, 所述初始译码神经网络由所述第一神经网络单元与第二神经网络单元组成; 其中,所述第二神经网络单元包含第四神经元参数,所述第二神经网络单元由所述 第一初始神经网络单元训练后所得,并且,所述第一初始神经网络单元经过训练后,将所述第一初始神经元参数进行更新,得到所述第四神经元参数,以及,所述第四神经参数与所述第三神经参数不相同。
[权利要求 13]
根据权利要求9至11任一项所述的方法,其特征在于,其中, 所述初始译码神经网络由所述第一神经网络单元与第三神经网络单元组成,所述第三神经网络单元包含第五神经元参数; 所述第五神经元参数用于指示所述第三神经网络单元输入的第五输入信息与输出的第五输出信息之间的映射关系;以及,所述第五输出信息与所述第五输入信息的期望校验结果之间的误差小于阈值,其中,所述第五输入信息的期望校验结果为所述第五输入信息基于第二核矩阵在GF(2)上进行乘法和加法运算后得到的; 其中,所述第五输入信息为训练信息。
[权利要求 14]
根据权利要求8所述的方法,其特征在于,获取所述初始译码神经网络的步骤,包括: 获取译码网络图,其中,所述译码网络图中包括至少一个译码蝶形图,所述译码蝶形图用于指示所述译码蝶形图的输入信息与所述译码蝶形图的输出信息之间的校验关系; 将所述第一神经网络单元与所述至少一个译码蝶形图进行匹配; 将第一神经网络单元对匹配成功的译码蝶形图进行替换,并得到所述初始译码神经网络。
[权利要求 15]
一种编码/译码方法,其特征在于,包括: 基于编码/译码神经网络,对第一输入信息进行编码和/或译码; 其中,所述编码/译码神经网络包含权利要求1-7任一项所述的编码神经网络以及权利要求8-14所述的译码神经网络。
[权利要求 16]
根据权利要求15所述的方法,其特征在于,其中, 所述编码神经网络中的神经元参数与所述译码神经网络中的神经元参数不相同; 或者, 所述编码神经网络中的神经元参数与所述译码神经网络中的神经元参数相同。
[权利要求 17]
一种编码装置,其特征在于,包括: 获取模块,用于获取第一输入信息; 编码模块,用于基于编码神经网络,对所述第一输入信息进行编码,得到并输出第一输出信息; 其中,所述编码神经网络中包含第一神经元参数,所述第一神经元参数用于指示所述第一输入信息与所述第一输出信息之间的映射关系; 以及,所述编码神经网络由第一神经网络单元组成的初始编码神经网络经过训练后所得;其中,所述初始编码神经网络中包含用于指示所述初始编码神经网络输入的第二输入信息与输出的第二输出信息之间的映射关系的第二神经元参数;并且,所述初始编码神经网络经过训练后,将所述第二神经元参数更新为所述第一神经元参数; 以及,所述第二神经元参数由所述第一神经网络单元包含的第三神经元参数组成,其中,所述第三神经元参数用于指示所述第一神经网络单元输入的第三输入信息与输出 的第三输出信息之间的映射关系;以及,所述第三输出信息与所述第三输入信息的期望校验结果之间的误差小于阈值,其中,所述第三输入信息的期望校验结果为所述第三输入信息基于第一核矩阵在GF(2)上进行乘法和加法运算后得到的; 其中,所述第一输入信息为待编码信息;以及,所述第二输入信息、所述第三输入信息为训练信息。
[权利要求 18]
根据权利要求17所述的装置,其特征在于,所述编码模块还用于: 构造所述第一初始神经网络单元,并设置所述第一初始神经元参数,其中,所述第一初始神经元参数用于指示所述第一初始神经元输入的第四输入信息与输出的第四输出信息之间的映射关系,其中,所述第一初始神经元参数包括初始权重值与初始偏置向量;以及,所述第一初始神经网络单元包括至少一个隐藏层,每个所述隐藏层包含Q个节点,并且,Q为大于等于N的整数,其中,N为所述第三输入信息的码长与所述第三输出信息的码长之中的最小值; 基于所述第一初始神经元参数,对所述第一初始神经网络单元进行训练,直至所述第四输出信息与所述第四输入信息的期望校验结果之间的误差小于所述阈值,其中,所述第四输入信息的期望校验结果为所述第四输入信息基于所述第一核矩在GF(2)上进行乘法和加法运算后得到的;以及,对所述第一初始神经网络单元进行训练时,将所述第一初始神经参数进行更新,得到所述第三神经参数;其中,所述第四输入信息为训练信息。
[权利要求 19]
根据权利要求17或18所述的装置,其特征在于,其中, 所述第一核矩阵为 或者, 所述第一核矩阵为
[权利要求 20]
根据权利要求17至19任一项所述的装置,其特征在于, 若所述第一核矩阵为 则所述第三输入信息的期望校验结果为 x 1=u 1; 其中,x 0与x 1为所述第三输出信息,u 0与u 1为所述第三输入信息; 或者, 若第一核矩阵为 则所述第三输入信息的期望校验结果为 其中,x 0、x 1与x 2为所述第三输出信息,u 0、u 1与u 2为所述第三输入信息。
[权利要求 21]
根据权利要求18至20任一项所述的装置,其特征在于,其中, 所述初始编码神经网络由所述第一神经网络单元与第二神经网络单元组成; 其中,所述第二神经网络单元包含第四神经元参数,所述第二神经网络单元由所述第一初始神经网络单元训练后所得,并且,所述第一初始神经网络单元经过训练后,将所述第一初始神经元参数进行更新,得到所述第四神经元参数,以及,所述第四神经参数与所述第三神经参数不相同。
[权利要求 22]
根据权利要求18至20任一项所述的装置,其特征在于,其中, 所述初始编码神经网络由所述第一神经网络单元与第三神经网络单元组成,所述第三神经网络单元包含第五神经元参数; 所述第五神经元参数用于指示所述第三神经网络单元输入的第五输入信息与输出的第五输出信息之间的映射关系;以及,所述第五输出信息与所述第五输入信息的期望校验结果之间的误差小于阈值,其中,所述第五输入信息的期望校验结果为所述第五输入信息基于第二核矩阵在GF(2)上进行乘法和加法运算后得到的; 其中,所述第五输入信息为训练信息。
[权利要求 23]
根据权利要求17所述的装置,其特征在于,所述编码模块还用于: 获取编码网络图,其中,所述编码网络图中包括至少一个编码蝶形图,所述编码蝶形图用于指示所述编码蝶形图的输入信息与所述编码蝶形图的输出信息之间的校验关系; 将所述第一神经网络单元与所述至少一个编码蝶形图进行匹配; 将第一神经网络单元对匹配成功的编码蝶形图进行替换,并得到所述初始编码神经网络。
[权利要求 24]
一种译码装置,其特征在于,包括: 获取模块,用于获取第一输入信息; 译码模块,用于基于译码神经网络,对所述第一输入信息进行译码,得到并输出第一输出信息; 其中,所述译码神经网络中包含第一神经元参数,所述第一神经元参数用于指示所述第一输入信息与所述第一输出信息之间的映射关系; 以及,所述译码神经网络由第一神经网络单元组成的初始译码神经网络经过训练后所得;其中,所述初始译码神经网络中包含用于指示所述初始译码神经网络输入的第二输入信息与输出的第二输出信息之间的映射关系的第二神经元参数;并且,所述初始译码神经网络经过训练后,将所述第二神经元参数更新为所述第一神经元参数; 以及,所述第二神经元参数由所述第一神经网络单元包含的第三神经元参数组成,其中,所述第三神经元参数用于指示所述第一神经网络单元输入的第三输入信息与输出的第三输出信息之间的映射关系;以及,所述第三输出信息与所述第三输入信息的期望校验结果之间的误差小于阈值,其中,所述第三输入信息的期望校验结果为所述第三输入信息基于第一核矩阵在GF(2)上进行乘法和加法运算后得到的; 其中,所述第一输入信息为待译码信息;以及,所述第二输入信息、所述第三输入信息为训练信息。
[权利要求 25]
根据权利要求24所述的装置,其特征在于,所述译码模块还用于: 构造所述第一初始神经网络单元,并设置所述第一初始神经元参数,其中,所述第一初始神经元参数用于指示所述第一初始神经元输入的第四输入信息与输出的第四输出信息之间的映射关系,其中,所述第一初始神经元参数包括初始权重值与初始偏置向量;以及,所述第一初始神经网络单元包括至少一个隐藏层,每个所述隐藏层包含Q个节点,并且,Q为大于等于N的整数,其中,N为所述第三输入信息的码长与所述第三输出信息的码长之中的最小值; 基于所述第一初始神经元参数,对所述第一初始神经网络单元进行训练,直至所述第四输出信息与所述第四输入信息的期望校验结果之间的误差小于所述阈值,其中,所述第四输入信息的期望校验结果为所述第四输入信息基于所述第一核矩在GF(2)上进行乘法和加法运算后得到的;以及,对所述第一初始神经网络单元进行训练时,将所述第一初始神经参数进行更新,得到所述第三神经参数;其中,所述第四输入信息为训练信息。
[权利要求 26]
根据权利要求24或25所述的装置,其特征在于,其中, 所述第一核矩阵为 或者, 所述第一核矩阵为
[权利要求 27]
根据权利要求24至26任一项所述的装置,其特征在于, 若所述第一核矩阵为 则所述第三输入信息的期望校验结果为 x 1=y 1; 其中,x 0与x 1为所述第三输出信息,y 0与y 1为所述第三输入信息; 或者, 若第一核矩阵为 则所述第三输入信息的期望校验结果为 其中,x 0、x 1与x 2为所述第三输出信息,y 0、y 1与y 2为所述第三输入信息。
[权利要求 28]
根据权利要求25至27任一项所述的装置,其特征在于,其中, 所述初始译码神经网络由所述第一神经网络单元与第二神经网络单元组成; 其中,所述第二神经网络单元包含第四神经元参数,所述第二神经网络单元由所述第一初始神经网络单元训练后所得,并且,所述第一初始神经网络单元经过训练后,将所述第一初始神经元参数进行更新,得到所述第四神经元参数,以及,所述第四神经参数与所述第三神经参数不相同。
[权利要求 29]
根据权利要求25至27任一项所述的装置,其特征在于,其中, 所述初始译码神经网络由所述第一神经网络单元与第三神经网络单元组成,所述第三神经网络单元包含第五神经元参数; 所述第五神经元参数用于指示所述第三神经网络单元输入的第五输入信息与输出的第五输出信息之间的映射关系;以及,所述第五输出信息与所述第五输入信息的期望校验结果之间的误差小于阈值,其中,所述第五输入信息的期望校验结果为所述第五输入信息基于第二核矩阵在GF(2)上进行乘法和加法运算后得到的; 其中,所述第五输入信息为训练信息。
[权利要求 30]
根据权利要求24所述的装置,其特征在于,所述译码模块还用于: 获取译码网络图,其中,所述译码网络图中包括至少一个译码蝶形图,所述译码蝶形图用于指示所述译码蝶形图的输入信息与所述译码蝶形图的输出信息之间的校验关系; 将所述第一神经网络单元与所述至少一个译码蝶形图进行匹配; 将第一神经网络单元对匹配成功的译码蝶形图进行替换,并得到所述初始译码神经网络。
[权利要求 31]
一种编码/译码系统,其特征在于, 所述系统用于基于编码/译码神经网络,对第一输入信息进行编码和/或译码; 其中,所述所述系统用于包含权利要求17-23任一项所述的编码神经网络以及权利要求24-30任一项所述的译码神经网络。
[权利要求 32]
根据权利要求31所述的系统,其特征在于,其中, 所述编码神经网络中的神经元参数与所述译码神经网络中的神经元参数不相同; 或者, 所述编码神经网络中的神经元参数与所述译码神经网络中的神经元参数相同。
[权利要求 33]
一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包含至少一段代码,该至少一段代码可由装置执行,以控制所述装置执行权利要求1-16中任一项所述的方法。
[权利要求 34]
一种计算机程序,当所述计算机程序被装置执行时,用于执行权利要求1-16中任一项所述的方法。
[权利要求 35]
一种装置,其特征在于,包括: 存储器,用于存储指令; 以及,与所述存储器进行通信连接的至少一个处理器,其中,所述至少一个处理器用于在运行所述指令时执行权利要求1-16中任一项所述的方法。
[权利要求 36]
一种芯片,其特征在于,包括:处理电路、收发管脚,其中,所述收发管脚和所述处理电路通过内部连接通路互相通信,所述处理电路用于在执行权利要求1-16中任一项所述的方法时控制所述收发管脚发送和/或接收信号。

附图

[ 图 1]  
[ 图 2A]  
[ 图 2B]  
[ 图 3]  
[ 图 4]  
[ 图 5]  
[ 图 6]  
[ 图 7]  
[ 图 8]  
[ 图 9]  
[ 图 10]  
[ 图 11]  
[ 图 12]  
[ 图 13]  
[ 图 14]  
[ 图 15]  
[ 图 16]  
[ 图 17]  
[ 图 18]  
[ 图 19]  
[ 图 20]  
[ 图 21]  
[ 图 22]  
[ 图 23]  
[ 图 24]  
[ 图 25]  
[ 图 26]