一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于神经网络的通信方法以及相关装置与流程

2022-04-13 12:07:13 来源:中国专利 TAG:


1.本技术涉及通信技术领域,尤其涉及一种基于神经网络的通信方法以及相关装置。


背景技术:

2.无线通信系统可以分为三部分:发送端(transmitter)、信道(channel)和接收端(receiver),信道用于传输发送端与接收端之间交互的波形信号。
3.传统的无线通信系统中,发送端包括信源编码器(source encoder)和信道编码器(channel encoder),接收端包括信源译码器(source decoder)和信道译码器(channel)。信源编码是一种以提高通信有效性为目的而对信源符号进行的变换,目的是为了减少或消除信源剩余度而进行的信源符号变换。信道编码通过对信源编码输出的符号进行相应的处理,使通信系统具有一定的纠错能力和抗干扰能力,可降低信道传输过程中的误码率。
4.为了优化无线通信系统的性能,需要对上述各个编码器和译码器进行优化。由于不同的编码器和译码器均有独立的数学模型,因此,通常是基于各自的数学模型进行独立优化。而实际的应用场景中,信道与发送端和接收端存在非理想化和非线性的问题。因此,造成数学模型失配,进而影响无线通信系统的性能。


技术实现要素:

5.本技术实施例提供了一种基于神经网络的通信方法,发送端使用的编码神经网络与接收端使用的译码神经网络进行联合训练优化。编码神经网络中的第一神经网络复用译码神经网络及译码神经网络的参数。使得译码神经网络为编码神经网络提供一部分先验信息,进而使得编码神经网络能更准确预测动作的收益,从而降低梯度估计的方差,加速网络收敛的速度及提高收敛的性能。
6.第一方面,本技术实施例提出一种基于神经网络的通信方法,方法应用于发送端,包括:
7.发送端获取第一数据流;
8.发送端使用编码神经网络对第一数据流进行处理,得到第一符号流,编码神经网络包括:第一神经网络,第一神经网络复用部分或全部的译码神经网络,和/或部分或全部的译码神经网络的参数;
9.发送端输出第一符号流。
10.可选的,编码神经网络既可以部署于发送端内部,也可以部署于云端服务器。当编码神经网络部署于云端服务器时,由发送端向云端服务器请求该编码神经网络的服务。
11.具体的,发送端获取第一数据流,该第一数据流为二进制比特流(binary digit,bit)。当发送端与接收端之间进行通信交互时,该第一数据流为发送端向接收端发送的正常数据。当发送端与接收端之间进行神经网络的训练时,该第一数据流为发送端向接收端发送的训练样本数据。
12.当第一数据流为训练样本数据时,该第一数据流可以是预配置于发送端内部,该第一数据流也可以是外部(相对于发送端)输入的数据,该第一数据流还可以是发送端与接收端协商的数据,此处不做限制。
13.在一种可选的实现方式中,该第一数据流在预配置于发送端内部的同时,该第一数据流还可以预配置于接收端内部。
14.在一种可选的实现方式中,本技术实施例的编码神经网络采用一种改进的“演员-评判家(actor-critic)”算法进行训练。按照功能划分,编码神经网络可以分为第一神经网络和第二神经网络两部分,其中,第一神经网络也称为“critic神经网络”,第二神经网络也称为“actor神经网络”。
15.第一神经网络可以是复用全部的译码神经网络,例如:第一神经网络采用该译码神经网络的全部神经元结构(神经元结构包括神经元层数)。
16.第一神经网络还可以复用部分的译码神经网络(和/或部分的译码神经网络的参数),例如:第一神经网络采用该译码神经网络的部分神经元结构,其中,可以是第一神经网络中的神经元层数与译码神经网络中的神经元层数一致,但是第一神经网络中仅部分神经元与译码神经网络中的神经元一致;
17.也可以是第一神经网络中的部分神经元层与译码神经网络中的部分神经元层一致,但是第一神经网络中神经元层数与译码神经网络中的神经元层数不一致;
18.还可以是第一神经网络中部分神经元采用译码神经网络中部分神经元的参数,或译码神经网络中部分神经元参数的变形;
19.还可以是第一神经网络中部分神经元采用译码神经网络中部分神经元的变形等,此处不做限制。
20.需要说明的是,“复用”既可以指第一神经网络使用译码神经网络中完全一致的神经元或神经元参数,也可以指的是第一神经网络包括译码神经网络中的神经元或神经元参数,还可以指的是指第一神经网络使用译码神经网络中神经元的变形或神经元参数的变形等此处不作限制。
21.本技术实施例中,编码神经网络中的第一神经网络复用译码神经网络及译码神经网络的参数。使得译码神经网络为编码神经网络提供一部分先验信息,使之能更准确预测动作的收益,从而降低梯度估计的方差,加速网络收敛的速度及提高收敛的性能。
22.结合第一方面,在第一方面的一种可能的实现方式中,发送端输出第一符号流之后,还包括:
23.发送端接收第一权重,其中,第一权重来自译码神经网络,第一权重用于训练第一神经网络。
24.本技术实施例中,发送端还可以使用来自译码神经网络的第一权重,训练编码神经网络。该第一权重来自接收端的译码神经网络,以此实现端到端的联合优化训练。
25.结合第一方面,在第一方面的一种可能的实现方式中,发送端输出第一符号流之后,还包括:
26.发送端接收第一梯度,其中,第一梯度来自译码神经网络,第一梯度用于训练第一神经网络。
27.本技术实施例中,发送端还可以使用来自译码神经网络的第一梯度,训练编码神
经网络。该第一梯度来自接收端的译码神经网络,以此实现端到端的联合优化训练。
28.结合第一方面,在第一方面的一种可能的实现方式中,发送端输出第一符号流之后,还包括:
29.发送端接收第一函数,其中,第一函数来自译码神经网络,第一函数用于训练第一神经网络。
30.具体的,第一函数:可以指的是传输第一函数本身;也可以是第一函数的函数值(或计算结果);还可以是第一函数本身和第一函数的函数值(或计算结果),此处不做限定。
31.当发送端接收的是第一函数,发送端使用编码神经网络(例如:第一神经网络)对该第一函数进行计算处理,生成新的梯度。该新的梯度用于训练(例如:更新)编码神经网络(例如:第一神经网络)。
32.本技术实施例中,第一函数原来是接收端侧训练译码神经网络使用的函数。因此,在接收端侧生成第一函数后,可以向发送端发送该第一函数。发送端使用第一函数训练第一神经网络,以此实现端到端的联合优化训练。
33.结合第一方面,在第一方面的一种可能的实现方式中,发送端输出第一符号流之后,还包括:
34.发送端接收第二函数,其中,第二函数来自译码神经网络,第二函数为损失函数和/或奖励函数;
35.发送端使用编码神经网络对第二函数进行处理,得到第二梯度,第二梯度用于训练编码神经网络。
36.具体的,第二函数:可以指的是传输第二函数本身;也可以是第二函数的函数值(或计算结果);还可以是第二函数本身和第二函数的函数值(或计算结果),此处不做限定。
37.当发送端接收的是第二函数,发送端使用编码神经网络对第二函数进行计算处理,生成第二梯度。该第二梯度用于训练(例如:更新)编码神经网络。具体的,编码神经网络使用梯度估计(gradient approximation)算法对第二函数进行计算处理,生成第二梯度。示例性的,梯度估计算法包括但不限于:随机梯度下降法(stochastic gradient descent,sgd)、“adagrad算法”、均方根支柱算法(root mean square prop,rmsprop)、自适应矩估计(adaptive moment estimation)算法,或动量(momentum)算法等。
38.本技术实施例中,第一函数原来是接收端侧训练译码神经网络使用的函数。因此,在接收端侧生成第一函数后,可以向发送端发送该第一函数。发送端使用第一函数训练第一神经网络,以此实现端到端的联合优化训练。
39.结合第一方面,在第一方面的一种可能的实现方式中,发送端输出第一符号流,包括:
40.发送端对第一符号流进行滤波处理,得到第一波形信号,其中,第一波形信号中滤除带外信号;
41.发送端输出第一波形信号。
42.本实施例中,为了在第一符号流中引入符号间干扰,发送端使用第一滤波器对第一符号流进行滤波处理,得到第一波形信号。
43.可选的,该第一滤波器可选用低通滤波器。
44.可选的,该第一滤波器还可以滤除第一符号流中的带外信号,限制发送的带宽。
45.本技术实施例中,为了提升信号的传输性能,发送端可以使用第一滤波器对第一符号流进行滤波处理,得到第一波形信号。
46.结合第一方面,在第一方面的一种可能的实现方式中,发送端使用编码神经网络对第一数据流进行处理,得到第一符号流,包括:
47.发送端对第一数据流进行编码处理,得到第一信道编码码字;
48.发送端使用编码神经网络对第一信道编码码字进行处理,得到第一符号流。
49.具体的,为了避免发生维度灾难(dimension curse)的问题(又称为维数灾难的问题),该信源编码、信道编码、调制和/或滤波等相关操作,还可以由发送端中的其它模块执行,该其它模块称为第一模块。该第一模块既可以部署于编码神经网络输入侧,也可以部署于编码神经网络输出侧,还可以同时部署于编码神经网络的输入侧与输出侧。
50.本实施例中,发送端使用第一模块对第一数据流进行处理,得到第一信道编码码字。
51.可选的,该第一模块可以级联于该通信系统外,以进一步提高系统的无差错传输性能。
52.结合第一方面,在第一方面的一种可能的实现方式中,发送端使用编码神经网络对第一信道编码码字进行处理,得到第一符号流,包括:
53.发送端使用编码神经网络对第一信道编码码字进行处理,得到第一中间符号;
54.发送端使用滤波神经网络对第一中间符号进行滤波处理,得到第一符号流,其中,第一符号流中引入符号间干扰。
55.具体的,在接收端侧,可以引入该滤波神经网络。可选的,在发送端部署该滤波神经网络,在接收端侧同样部署该滤波神经网络。可选的,仅在接收端侧部署该滤波神经网络。该滤波神经网络可以部署于第二滤波器与模数转换器之间,该滤波神经网络也可以部署于模数转换器与译码神经网络之间,此处不做限定。
56.以基于过采样的1bit通信系统为例,由于1bit量化带来的信息损失导致传统方式如导频无法完成对信道的有效估计及均衡,故在衰落信道场景下,通信系统的性能较差。衰落是指由于信道的变化导致接收信号的幅度发生随机变化的现象,即信号衰落。导致信号衰落的信道被称作衰落信道。
57.基于此,通过设置滤波神经网络,该滤波神经网络对编码神经网络输出的第一符号流进行滤波处理,得到第一中间符号。当通信系统中还包括上采样模块时,上采样模块对第一中间符号进行上采样处理,得到第二中间符号,其中,第二中间符号为第一中间符号在采样点后做插零处理得当。再次,发送端中的滤波神经网络对第二中间符号进行滤波处理,得到第一符号流,该滤波神经网络进行的滤波处理包括引入符号间干扰(inter symbol interference,isi)。
58.可选的,编码神经网络,译码神经网络和滤波神经网络可以是联合训练;也可以在使用预训练模型(如加性白高斯噪音(additive white gaussian nois,awgn)信道下训练的编码神经网络和译码神经网络)初始化,然后单独训练滤波神经网络。
59.本技术实施例中,编码神经网络后增加滤波神经网络,该滤波神经网络在衰落信道的场景下,与编码神经网络和译码神经网络一并进行端到端的联合训练优化。具体地,滤波神经网络对过采样的编码神经网络映射的符号(第一符号流)进行滤波,从而缓解衰落信
道对系统造成的影响,在接收端量化精度较高时,滤波神经网络在训练后可以起到预均衡的效果。但是由于低精度量化带来的信息丢失,滤波神经网络在低精度量化时较难学到预均衡,其更倾向于另一个局部最优解。通过编码神经网络、译码神经网络及滤波设置网络的联合训练优化,使发送端与接收端之间能利用信道的多径干扰,从而区分发送信号。提升了在衰落信道场景下的通信性能。
60.第二方面,本技术实施例提出一种基于神经网络的通信方法,方法应用于接收端,还包括:
61.接收端获取第一数据流;
62.接收端接收第一符号流,第一符号流来自发送端,其中,第一符号流由发送端使用编码神经网络对第一数据流进行处理得到,编码神经网络包括:第一神经网络,第一神经网络复用部分或全部的译码神经网络,和/或部分或全部的译码神经网络的参数;
63.接收端使用译码神经网络对第一符号流进行处理,得到第二数据流;
64.接收端根据第一数据流和第二数据流,训练译码神经网络。
65.具体的,在发送端侧,对第一符号流进行滤波处理后,得到第一波形信号。发送端通过信道将该第一波形信号发送至接收端,为了便于描述,将该信道称为第一信道。第一波形信号在第一信道传输过程中,受到信道干扰的影响。则接收端使用译码神经网络对该受到第一信道干扰的第一波形信号(第一符号流)进行处理,得到第二数据流。
66.示例性的,该译码神经网络包括但不限于:全连接神经网络、径向基神经网络、卷积神经网络、循环神经网络、霍普菲尔德神经网络、受限玻尔兹曼机或深度置信网络等。该编码神经网络可以是上述的任一种神经网络,该编码神经网络也可以是上述多种神经网络的结合,此处不做限制。
67.需要说明的是,该译码神经网络可以与编码神经网络采用相同的神经网络,也可以采用不同的神经网络,还可以采用部分相同的神经网络,此处不做限制。
68.可选的,译码神经网络(和/或编码神经网络)可选用的损失函数包括但不限于:二值交叉熵、分类交叉熵,或均方误差等。以选用二值交叉熵为例,则本技术实施例中端到端联合优化的目标是输入与输出的交叉熵最小。
69.本技术实施例中,编码神经网络中的第一神经网络复用译码神经网络及译码神经网络的参数。使得译码神经网络为编码神经网络提供一部分先验信息,使之能更准确预测动作的收益,从而降低梯度估计的方差,加速网络收敛的速度及提高收敛的性能。端到端的联合优化训练,进一步提升系统的通信效率。
70.结合第二方面,在第二方面的一种可能的实现方式中,接收端根据第一数据流和第二数据流,训练译码神经网络,包括:
71.接收端使用译码神经网络,对第一数据流和第二数据流进行处理,得到第一函数,其中,第一函数为损失函数和/或奖励函数;
72.接收端使用译码神经网络,对第一函数进行处理,得到第一梯度;
73.接收端使用第一梯度训练译码神经网络。
74.具体的,接收端使用第一数据流和第二数据流训练译码神经网络。具体的,译码神经网络根据第一数据流和第二数据流,计算得到第一函数,第一函数为损失函数和/或奖励函数。译码神经网络根据该第一函数求得第一梯度,该第一梯度用于译码神经网络的进一
步训练(例如:更新)。进一步的,译码神经网络可以向编码神经网络分享经过训练后的译码神经网络的权重,为了便于说明,该权重称为第一权重。
75.结合第二方面,在第二方面的一种可能的实现方式中,接收端使用译码神经网络,对第一数据流和第二数据流进行处理,得到第一函数之后,还包括:
76.接收端向发送端发送第一函数,第一函数用于训练编码神经网络中的第一神经网络。
77.本技术实施例中,在接收端侧生成第一函数后,可以向发送端发送该第一函数。发送端使用第一函数训练第一神经网络,以此实现端到端的联合优化训练。
78.结合第二方面,在第二方面的一种可能的实现方式中,接收端使用第一梯度训练译码神经网络之后,还包括:
79.接收端向发送端发送第一梯度,第一梯度用于训练编码神经网络中的第一神经网络。
80.本技术实施例中,发送端还可以使用来自译码神经网络的第一梯度,训练编码神经网络。该第一梯度来自接收端的译码神经网络,以此实现端到端的联合优化训练。
81.结合第二方面,在第二方面的一种可能的实现方式中,接收端使用第一梯度训练译码神经网络之后,还包括:
82.接收端使用译码神经网络,生成第一权重,其中,第一权重为译码神经网络的权重;
83.接收端向发送端发送第一权重,第一权重用于训练编码神经网络中的第一神经网络。
84.在一种可选的实现方式中,接收端通过奖励反馈帧,或梯度/权重共享帧向发送端传输二函数、第一梯度或第一权重。发送端对来自接收端的奖励反馈帧,或梯度/权重共享帧进行校验。当发现存在循环冗余码校验(cyclic redundancy check,crc)错误时,发送端将该奖励反馈帧,或梯度/权重共享帧中对应的数据(指的是训练数据,例如第二函数、第一梯度或第一权重)丢弃。是因为如果数据帧在空口传输有可能会出错,而错误的数据(指的是训练数据,例如第二函数、第一梯度或第一权重)将对强化学习训练带来负面影响。通过上述手段可有效消除该负面影响。
85.本技术实施例中,发送端还可以使用来自译码神经网络的第一权重,训练编码神经网络。该第一权重来自接收端的译码神经网络,以此实现端到端的联合优化训练。
86.结合第二方面,在第二方面的一种可能的实现方式中,接收端根据第一数据流和第二数据流,训练译码神经网络之后,还包括:
87.接收端使用译码神经网络,对第一数据流和第二数据流进行处理,得到第二函数,其中,第二函数为损失函数和/或奖励函数;
88.接收端向发送端发送第二函数,第二函数用于训练编码神经网络。
89.具体的,接收端使用译码神经网络对第一数据流和第二数据流进行处理,得到第二函数的函数值,该第二函数的函数值用于训练编码神经网络(包括第一神经网络和第二神经网络)。
90.当发送端接收的是第二函数,发送端使用编码神经网络对第二函数进行计算处理,生成第二梯度。该第二梯度用于训练(例如:更新)编码神经网络。具体的,编码神经网络
使用梯度估计(gradient approximation)算法对第二函数进行计算处理,生成第二梯度。示例性的,梯度估计算法包括但不限于:随机梯度下降法(stochastic gradient descent,sgd)、“adagrad算法”、均方根支柱算法(root mean square prop,rmsprop)、自适应矩估计(adaptive moment estimation)算法,或动量(momentum)算法等。
91.本技术实施例中,发送端还可以使用来自译码神经网络的第二函数,训练编码神经网络。该第二函数来自接收端的译码神经网络,以此实现端到端的联合优化训练。
92.结合第二方面,在第二方面的一种可能的实现方式中,接收端使用译码神经网络对第一符号流进行处理,得到第二数据流,包括:
93.接收端接收第一波形信号,第一波形信号由发送端对第一符号流进行滤波处理得到;
94.接收端对第一波形信号进行量化处理,得到量化符号序列,其中,一组第一数据流映射至一个或多个量化符号序列,量化符号序列中每个符号内至多存在一次比特位翻转,比特位翻转为0至1或1至0;
95.接收端使用译码神经网络对量化符号序列中的第一序列进行处理,得到第二数据流。
96.具体的,当第一符号流包括x组符号组,每组符号组包括n个符号,第一波形信号包括x组符号组,x为大于或等于1的正整数,n为大于或等于1的正整数;当接收端对第一波形信号中n个符号进行量化处理,得到量化符号序列,量化符号序列的长度为nm,其中,m为接收端的过采样倍率。
97.该量化符号序列具有以下特征:一组第一数据流映射至一个或多个量化符号序列,量化符号序列中每个符号内至多存在一次比特位翻转,比特位翻转为0至1或1至0。
98.可选的,该模数转换器可以是过采样的模数转换器,当该模数转换器的过采样倍率为m时,该量化符号序列的符号率为mxfs,其中,m为大于0的整数。过采样(oversampling)是指以高于信号带宽两倍或其最高频率对其进行采样的过程。
99.可选的,该模数转换器还可以是采样精度(量化精度)受限的模数转换器,例如:采样精度为1比特(bit)的过采样模数转换器(简称为1bit过采样adc)。
100.可选的,量化符号序列中第一序列的长度为[(n-1)m 1,nm]。示例性的,n=2,即当第一符号流包括x组符号组,每组符号组包括2个符号时,译码神经网络用于处理(也称为检测)的第一序列长度为[m 1,2m]。第一序列长度越长,过采样倍数越高,将会获得更好的性能。因为多个第一序列可以对应一个数据。因此,过采样过程后生成的量化符号序列即使存在差异,最终也能正确的还原出数据。多个序列可以对应一个序列且一个序列不能对应多个数据,以保证译码的正确率。
[0101]
结合第二方面,在第二方面的一种可能的实现方式中,接收端对第一波形信号进行量化处理,得到量化符号序列,包括:
[0102]
接收端接收受到第一信道干扰的第一波形信号,其中,第一信道为接收端与发送端之间的信道;
[0103]
接收端对受到第一信道干扰的第一波形信号进行量化处理,得到量化符号序列。
[0104]
本技术实施例中,接收端可以使用受到信道干扰的波形信号进行训练,提升训练结果的适用能力,进一步提升通信系统的性能。
[0105]
结合第二方面,在第二方面的一种可能的实现方式中,接收端使用译码神经网络对第一符号流进行处理,得到第二数据流,包括:
[0106]
接收端使用译码神经网络对第一波形信号进行处理,得到第一信道译码码字或对数似然比;
[0107]
接收端对第一信道译码码字或对数似然比进行处理,得到第二数据流。
[0108]
具体的,在一种可选的实现方式中,发送端侧,第一数据流的信源编码、信道编码、调制和/或滤波等相关操作,由发送端中的其它模块(即第一模块)执行时。在接收端侧,信源译码、信道译码、解调和/或均衡(equalization)等处理,可以由译码神经网络执行,也可以由于该译码神经网络相独立的其它处理模块执行,该其它处理模块称为第二模块。该第二模块既可以部署于译码神经网络输入侧,也可以部署于译码神经网络输出侧,还可以同时部署于译码神经网络的输入侧与输出侧。具体的,首先,接收端使用译码神经网络对第一波形信号进行处理,得到第一信道译码码字或对数似然比(log-likelihood ratio,llr),对数似然比在通信中通常用于软译码。其次,接收端使用第二模块对第一信道译码码字或对数似然比进行处理,得到第二数据流。
[0109]
结合第二方面,在第二方面的一种可能的实现方式中,接收端对第一波形信号进行量化处理,得到量化符号序列,包括:
[0110]
接收端对第一波形信号进行滤波处理,得到第二波形信号;
[0111]
接收端对第二波形信号进行量化处理,得到量化符号序列。
[0112]
本实施例中,接收端使用第二滤波器对经过第一信道传输的第一波形信号进行滤波处理,得到第二波形信号。可选的,该第二滤波器可选用匹配滤波器。
[0113]
在一种可选的实现方式中,第一滤波器与第二滤波器可以选用相同的根升余弦滤波器(root-raised cosine filter,rrc filter)。rrc滤波器用于执行信号整形(signal shaping)。
[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]
处理模块,具体用于对第一波形信号进行量化处理,得到量化符号序列,其中,一组第一数据流映射至一个或多个量化符号序列,量化符号序列中每个符号内至多存在一次比特位翻转,比特位翻转为0至1或1至0;
[0157]
处理模块,具体用于使用译码神经网络对量化符号序列中的第一序列进行处理,得到第二数据流。
[0158]
在本技术的一些可选实施例中,
[0159]
收发模块,具体用于接收受到第一信道干扰的第一波形信号,其中,第一信道为接收端与发送端之间的信道;
[0160]
处理模块,具体用于对受到第一信道干扰的第一波形信号进行量化处理,得到量化符号序列。
[0161]
在本技术的一些可选实施例中,
[0162]
处理模块,具体用于使用译码神经网络对第一波形信号进行处理,得到第一信道译码码字或对数似然比;
[0163]
处理模块,具体用于对第一信道译码码字或对数似然比进行处理,得到第二数据流。
[0164]
在本技术的一些可选实施例中,
[0165]
处理模块,具体用于对第一波形信号进行量化处理,得到量化符号序列;
[0166]
处理模块,具体用于使用译码神经网络对量化符号序列中的第一序列进行处理,得到第一信道译码码字或对数似然比。
[0167]
在本技术的一些可选实施例中,
[0168]
处理模块,具体用于当第一符号流包括x组符号组,每组符号组包括n个符号,第一波形信号包括x组符号组,x为大于或等于1的正整数,n为大于或等于1的正整数;
[0169]
处理模块对第一波形信号中n个符号进行量化处理,得到量化符号序列,量化符号序列的长度为nm,量化符号序列中第一序列的长度为[(n-1)m 1,nm],其中,m为接收端的过采样倍率。
[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]
处理器,具体用于对第一波形信号进行量化处理,得到量化符号序列,其中,一组第一数据流映射至一个或多个量化符号序列,量化符号序列中每个符号内至多存在一次比特位翻转,比特位翻转为0至1或1至0;
[0216]
处理器,具体用于使用译码神经网络对量化符号序列中的第一序列进行处理,得到第二数据流。
[0217]
在本技术的一些可选实施例中,
[0218]
收发器,具体用于接收受到第一信道干扰的第一波形信号,其中,第一信道为接收端与发送端之间的信道;
[0219]
处理器,具体用于对受到第一信道干扰的第一波形信号进行量化处理,得到量化符号序列。
[0220]
在本技术的一些可选实施例中,
[0221]
处理器,具体用于使用译码神经网络对第一波形信号进行处理,得到第一信道译码码字或对数似然比;
[0222]
处理器,具体用于对第一信道译码码字或对数似然比进行处理,得到第二数据流。
[0223]
在本技术的一些可选实施例中,
[0224]
处理器,具体用于对第一波形信号进行量化处理,得到量化符号序列;
[0225]
处理器,具体用于使用译码神经网络对量化符号序列中的第一序列进行处理,得到第一信道译码码字或对数似然比。
[0226]
在本技术的一些可选实施例中,
[0227]
处理器,具体用于当第一符号流包括x组符号组,每组符号组包括n个符号,第一波形信号包括x组符号组,x为大于或等于1的正整数,n为大于或等于1的正整数;
[0228]
处理器对第一波形信号中n个符号进行量化处理,得到量化符号序列,量化符号序
列的长度为nm,量化符号序列中第一序列的长度为[(n-1)m 1,nm],其中,m为接收端的过采样倍率。
[0229]
在本技术的一些可选实施例中,
[0230]
处理器,具体用于对第一波形信号进行滤波处理,得到第二波形信号;
[0231]
处理器,具体用于对第二波形信号进行量化处理,得到量化符号序列。
[0232]
第七方面,本技术实施例提供了一种通信装置,该通信装置可以实现上述第一、或第二方面所涉及方法中发送端或接收端所执行的功能。该通信装置包括处理器、存储器以及与该处理器连接的接收器和与该处理器连接的发射器;该存储器用于存储程序代码,并将该程序代码传输给该处理器;该处理器用于根据该程序代码中的指令驱动该接收器和该发射器执行如上述第一、或第二方面的方法;接收器和发射器分别与该处理器连接,以执行上述各个方面的该的方法中通信装置的操作。具体地,发射器可以进行发送的操作,接收器可以进行接收的操作。可选的,该接收器与发射器可以是射频电路,该射频电路通过天线实现接收与发送消息;该接收器与发射器还可以是通信接口,处理器与该通信接口通过总线连接,该处理器通过该通信接口实现接收或发送消息。
[0233]
第八方面,本技术实施例提供一种通信装置,该通信装置可以包括网络设备或终端设备或者芯片等实体,该通信装置包括:处理器,存储器;该存储器用于存储指令;该处理器用于执行该存储器中的该指令,使得该通信装置执行如前述第一方面或第二方面中任一项该的方法。
[0234]
第九方面,本技术实施例提供了一种存储一个或多个计算机执行指令的计算机可读存储介质,当该计算机执行指令被处理器执行时,该处理器执行如前述第一方面或第二方面中任意一种可能的实现方式。
[0235]
第十方面,本技术实施例提供一种存储一个或多个计算机执行指令的计算机程序产品(或称计算机程序),当该计算机执行指令被该处理器执行时,该处理器执行前述第一方面或第二方面中任意一种可能的实现方式。
[0236]
第十一方面,本技术提供了一种芯片系统,该芯片系统包括处理器,用于支持计算机设备实现上述方面中所涉及的功能。在一种可能的设计中,该芯片系统还包括存储器,该存储器,用于保存计算机设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。
[0237]
第十二方面,本技术提供了一种通信系统,该通信系统包括如上述第五方面或第六方面中的通信装置。
附图说明
[0238]
图1为本技术实施例提供的一种神经网络100的示意性框图;
[0239]
图2为本技术实施例涉及的损失函数的优化示意图;
[0240]
图3为本技术实施例涉及的梯度反向传播示意图;
[0241]
图4为强化学习示意图;
[0242]
图5为本技术实施例涉及的一种自编码器结构示意图;
[0243]
图6a为本技术实施例提出的一种应用场景示意图;
[0244]
图6b为本技术实施例提出的另一种应用场景示意图;
[0245]
图7为本技术实施例中通信装置的硬件结构示意图;
[0246]
图8为本技术实施例提出的一种基于神经网络的通信方法的实施例示意图;
[0247]
图9为本技术实施例中一种通信系统的结构示意图;
[0248]
图10为本技术实施例中又一种通信系统的结构示意图;
[0249]
图11为本技术实施例中编码神经网络与译码神经网络的一种结构示意图;
[0250]
图12为本技术实施例提出的一种应用场景的流程示意图;
[0251]
图13为本技术实施例中涉及的帧结构示意图;
[0252]
图14为本技术实施例涉及的一种仿真实验示意图;
[0253]
图15为本技术实施例提出的一种基于神经网络的通信方法的又一种实施例示意图;
[0254]
图16a为本技术实施例提出的又一种通信系统的结构示意图;
[0255]
图16b为本技术实施例中涉及的基于过采样的1bit通信系统的原理示意图;
[0256]
图16c为本技术实施例中涉及的基于过采样的1bit通信系统的又一种原理示意图;
[0257]
图17为本技术实施例中一种迭代接收结构示意图;
[0258]
图18为本技术实施例涉及的一种符号映射图;
[0259]
图19为本技术实施例中一种符号映射示意图;
[0260]
图20为本技术实施例涉及的又一种仿真实验示意图;
[0261]
图21为本技术实施例涉及的又一种仿真实验示意图;
[0262]
图22为本技术实施例提出的又一种通信系统的结构示意图;
[0263]
图23为本技术实施例涉及的又一种仿真实验示意图;
[0264]
图24为本技术实施例涉及的又一种仿真实验示意图;
[0265]
图25为本技术实施例中通信装置的一种实施例示意图;
[0266]
图26为本技术实施例中通信装置的一种实施例示意图。
具体实施方式
[0267]
本技术的说明书和权利要求书及上述附图中的术语“第一”、第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本技术的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
[0268]
下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚地描述。在本技术的描述中,除非另有说明,“/”表示或的意思,例如,a/b可以表示a或b;本技术中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,在本技术的描述中,“至少一项”是指一项或者多项,“多项”是指两项或两项以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也
可以是多个。
[0269]
为了便于理解本方案,首先对神经网络进行介绍。应理解,神经网络(也称为神经网络模型)是一种模仿动物神经网络行为特征的网络模型,这种网络模型依靠其复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。
[0270]
训练神经网络的过程也就是对神经元对应的权重进行学习的过程,其最终目的是得到训练好的神经网络的每一层神经元对应的权重。
[0271]
下面结合图1,对本技术实施例中神经网络(包括编码神经网络、译码神经网络以及滤波神经网络)的训练流程进行示例性说明。需要指出的是,图1以及图1的相关描述,并不对实际训练流程构成限定。
[0272]
图1为本技术实施例提供的一种神经网络100的示意性框图。神经网络100包括n层神经元,n层神经元中的每一层包括一个或者多个神经元,每一层的所有神经元与下一层的所有神经元连接。以图1中的神经网络100为例进行说明,参考图1,第1层包括两个神经元、第2至n-1层中的每一层均包括三个神经元、第n层包括一个神经元,其中,n为不小于2的正整数,图1中的i为不大于n且不小于1的正整数。每个神经元具有对应的权重。
[0273]
下面对神经网络100训练过程中的一次迭代进行详细描述。
[0274]
从训练数据集中获取训练数据,将训练数据作为神经网络100的第1层的输入,第一层的输入经过第1至第n层中的多个神经元之后,从第n层输出一个预测结果。具体地,每一层神经元均具有对应的权重。将训练数据输入第一层神经元,第一层神经元基于对应的权重输出第一层神经元的输出值。以第一层神经元的输出值作为第二层神经元的输入,第二层神经元基于对应的权重输出第二层神经元的输出值。同理,以此类推,最终从第n层输出一个预测结果。
[0275]
其中,第1层也称为输入层,第n层也称为输出层,中间的第2层至第n-1层也称为隐藏层。
[0276]
在训练神经网络100的过程中,希望神经网络100的第n层输出的预测结果尽可能的接近训练数据的先验知识(prior knowledge),先验知识也被称为真实值(ground truth),一般包括由人提供的训练数据对应的真实结果。所以可以通过比较当前的预测结果和先验知识,再根据两者之间的差异情况来更新神经网络100中每一层神经元对应的权重(当然,在第一次更新之前通常会有初始化的过程,即为初始化神经网络100中各层神经元对应的权重)。因此,得到第n层输出的预测结果后,采用误差算法,根据预测结果和先验知识修正神经元对应的权重,具体如下。
[0277]
神经网络中的每一层的工作可以用以下数学表达式描述:
[0278]
h=f(wx b);
[0279]
其中,h为神经元的输出,w为权重矩阵,b为偏置向量,f为激活函数。则神经网络的输出可以递归表达为:
[0280]
y=fn(w
nfn-1
(...) bn);
[0281]
简单的说,可以将神经网络理解为一个从输入数据集合到输出数据集合的映射关系。而通常神经网络都是随机初始化的,用已有数据从随机的w和b得到这个映射关系的过程被称为神经网络的训练。训练的具体方式为采用损失函数(loss function)对神经网络的输出结果进行评价,并将误差反向传播,通过梯度下降的方法即能迭代优化w和b直到损
失函数达到最小值。示例性的,请参阅图2,图2为本技术实施例涉及的损失函数的优化示意图。
[0282]
梯度下降的过程可以表示为:
[0283][0284]
其中,θ为待优化参数(如w和b),l为损失函数,η为学习率,控制梯度下降的步长。
[0285]
反向传播的过程利用到求偏导的链式法则,即前一层参数的梯度可以由后一层参数的梯度递推计算得到。示例性的,请参阅图3,图3为本技术实施例涉及的梯度反向传播示意图。梯度的反向传播,可以用以下公式表达:
[0286][0287]
其中,w
ij
为节点(也称为神经元)j连接节点i的权重,si为节点i上的输入加权和。
[0288]
具体的,从物理层面神经网络中的每一层的工作可以理解为通过五种对输入空间(输入向量的集合)的操作,完成输入空间到输出空间的变换(即矩阵的行空间到列空间),这五种操作包括:1、升维/降维;2、放大/缩小;3、旋转;4、平移;5、“弯曲”。其中1、2和3的操作由w*x完成,4的操作由 b完成,5的操作则由f()来实现。这里之所以用“空间”二字来表述是因为被分类的对象并不是单个事物,而是一类事物,空间是指这类事物所有个体的集合。其中,w是权重向量,该向量中的每一个值表示该层神经网络中的一个神经元的权重值。该向量决定着上文所述的输入空间到输出空间的空间变换,即每一层的权重控制着如何变换空间。训练神经网络的目的,也就是最终得到训练好的神经网络的所有层的权重矩阵。因此,神经网络的训练过程本质上就是学习控制空间变换的方式,更具体的就是学习权重矩阵,在本技术以下实施方式中,该权重矩阵可以细化为结构参数集合和网络参数集合。
[0289]
因为期望神经网络的输出尽可能的接近目标值,所以可以通过比较当前网络的预测值和目标值,再根据两者之间的差异情况来更新每一层神经网络的权重向量(当然,在第一次更新之前通常会有初始化的过程,即为神经网络中的各层预先配置参数)。例如,如果网络的预测值过高,则调整权重矩阵中的权重的值从而降低预测值,经过不断的调整,直到神经网络输出的值接近目标值或者等于目标值。因此,就需要预先定义“如何比较预测值和目标值之间的差异”,即损失函数(loss function)或目标函数(objective function),损失函数是用于衡量预测值和目标值的差异的重要方程。其中,以损失函数举例,损失函数的输出值(loss)越高表示差异越大,神经网络的训练可以理解为尽可能缩小loss的过程。
[0290]
根据预测结果和先验知识计算损失函数。根据损失函数,沿着第n层至第1层的方向,修正神经网络100中每一层神经元对应的权重。可通过计算出每一个权重对应的梯度来对权重进行修正,该梯度由损失函数得到,该梯度可以通过损失函数对权重求导数获得。
[0291]
根据预测结果和先验知识修正权重包括,根据预测结果和先验知识计算损失函数,根据损失函数,沿着第n层至第1层的方向计算每层神经元对应的权重的梯度。换句话说,各层神经元对应的权重的梯度的计算是按照从第n层到第1层的顺序逐层进行的,计算完第i层神经元对应的权重的梯度后,开始计算第i-1层神经元对应的权重的梯度。得到每层神经元对应的权重的梯度后,根据各梯度对各层神经元对应的权重进行修正,完成一次迭代。
[0292]
在多次迭代的过程中,各层神经元对应的权重不断地得到修正,从而实现神经网络100输出的预测结果尽可能的接近训练数据的先验知识。
[0293]
接下来,对本技术实施例涉及的一些人工智能(artificial intelligence,ai)领域的概念进行介绍。
[0294]
(1)、强化学习。
[0295]
请参阅图4,图4为强化学习示意图。强化学习是智能体(agent)以与环境(environment)交互的方式进行学习,智能体根据环境反馈的状态(state),对环境做出动作(action),从而获得奖励(reward)及下一个时刻的状态,目标是使智能体在一段时间内积累最大的奖赏。强化学习不同于监督学习,主要表现在无需训练集,强化学习中由环境提供的强化信号对产生动作的好坏作一种评价(通常为标量信号),而不是告诉强化学习系统如何去产生正确的动作。由于外部环境提供的信息很少,智能体必须靠自身的经历进行学习。通过这种方式,智能体在行动-评价的环境中获得知识,改进行动方案以适应环境。常见的强化学习算法有q学习(q-learning),策略梯度(policy gradient),“actor-critic”等。目前常用的强化学习算法通常为深度强化学习,其主要将强化学习与深度学习结合,采用神经网络对策略/价值函数进行建模,从而适应更大输入/输出维度,被称为深度强化学习(deep reinforcement learning,drl)。
[0296]
(2)、监督学习。
[0297]
监督学习是研究/应用最为广泛的技术。监督学习的目标是给定一个训练集(包含多对输入数据及标签),学习训练集中输入(数据)和输出(标签)的映射关系,同时,希望其映射关系还能应用于训练集之外的数据。训练集为正确的输入输出对的集合。
[0298]
(3)、自编码器。
[0299]
请参阅图5,图5为本技术实施例涉及的一种自编码器结构示意图。自编码器属于非监督学习,具体如下:编码器(encoder)通过f函数,将输入数据x映射(或压缩)到隐空间(latent space)的变量。译码器(decoder)通过g函数,从隐空间变量z恢复出原始数据其中,f函数和g函数可以用神经网络实现,该自编码器的优化目标可以是寻找f函数和g函数的参数,使得恢复数据的误差最小。从自编码器完成的任务来说,也可以将其看作标签已知(一般为输入数据,例如是0或1的比特数据)的监督学习过程。
[0300]
一般来说,通信系统完成的任务与自编码器非常相似,可以将整个通信系统类比于一个受限的自编码器,发送端为编码器,接收端为译码器。对于无线通信系统来说,信道产生的影响可以叠加在隐空间中。该隐空间的变量是发送端发出的波形信号。
[0301]
现有技术中,通信系统部署自编码器时,该自编码器通常建立仿真环境进行训练。具体如下:首先,在仿真环境中训练自编码器中涉及的神经网络,每个神经网络均有数学建模并且进行独立优化。其次,采用迁移学习(transfer learning)将神经网络迁移到实际环境中。
[0302]
而实际的应用场景中,信道与发送端和接收端存在非理想化和非线性的问题,即数学模型与实际场景存在差异。因此,造成数学模型失配,优化的神经网络与实际场景不相符,进而影响部署该神经网络的无线通信系统的性能。
[0303]
基于此,本技术实施例提出一种基于神经网络的通信方法,编码神经网络中的第一神经网络复用译码神经网络及译码神经网络的参数。使得译码神经网络为编码神经网络
提供一部分先验信息,使之能更准确预测动作的收益,从而降低梯度估计的方差,加速网络收敛的速度及提高收敛的性能。
[0304]
首先,介绍本方案的一些应用场景。请参阅图6a,图6a为本技术实施例提出的一种应用场景示意图。在一种可选的实现方式中,本技术实施例涉及的发送端可以是网络设备,接收端可以是终端设备。在另一种可选的实现方式中,本技术实施例涉及的发送端可以是终端设备,接收端可以是网络设备。
[0305]
请参阅图6b,图6b为本技术实施例提出的另一种应用场景示意图。在另一种可选的实现方式中,本技术实施例涉及的发送端可以是终端设备,接收端可以是与该发送端建立通信连接的另一终端设备。
[0306]
本技术实施例中,终端设备也可以称为用户设备(user equipment,ue)。本技术实施例中所涉及的终端设备作为一种具有无线收发功能的设备,可以经网络设备中的接入网设备与一个或多个核心网(core network,cn)进行通信。终端设备也可称为接入终端、终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、无线网络设备、用户代理或用户装置等。终端设备可以部署在陆地上,包括室内或室外、手持或车载;也可以部署在水面上(如轮船等);还可以部署在空中(例如飞机、气球和卫星上等)。终端设备可以是蜂窝电话(cellular phone)、无绳电话、会话启动协议(session initiation protocol,sip)电话、智能电话(smart phone)、手机(mobile phone)、无线本地环路(wireless local loop,wll)站、个人数字处理(personal digital assistant,pda),可以是具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它设备、车载设备、可穿戴设备、无人机设备或物联网、车联网中的终端、第五代移动通信(fifth generation,5g)网络以及未来网络中的任意形态的终端、中继用户设备或者未来演进的公用陆地移动通信网络(public land mobile network,plmn)中的终端等,其中,中继用户设备例如可以是5g家庭网关(residential gateway,rg)。例如终端设备可以是虚拟现实(virtual reality,vr)终端、增强现实(augmented reality,ar)终端、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程医疗(remote medical)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等。本技术实施例对此并不限定。
[0307]
网络设备可以看作是运营商网络的子网络,是运营商网络中业务节点与终端设备之间的实施系统。终端设备要接入运营商网络,首先是经过网络设备,进而可通过网络设备与运营商网络的业务节点连接。本技术实施例中的网络设备,是一种为终端设备提供无线通信功能的设备,也可以称为(无线)接入网((radio)access network,(r)an)。网络设备包括但不限于:5g系统中的下一代基站节点(next generation node base station,gnb)、长期演进(long term evolution,lte)中的演进型节点b(evolved node b,enb)、无线网络控制器(radio network controller,rnc)、节点b(node b,nb)、基站控制器(base station controller,bsc)、基站收发台(base transceiver station,bts)、家庭基站(例如,home evolved nodeb,或home node b,hnb)、基带单元(base band unit,bbu)、传输点(transmitting and receiving point,trp)、发射点(transmitting point,tp)、小基站设备(pico)、移动交换中心,或者未来网络中的网络设备等。采用不同无线接入技术的系统
中,具备接入网设备功能的设备的名称可能会有所不同。
[0308]
本技术提供的一种基于神经网络的通信方法可以应用于各类通信系统中,例如,可以是物联网(internet of things,iot)、窄带物联网(narrow band internet of things,nb-iot)、长期演进(long term evolution,lte),也可以是第五代(5g)通信系统,还可以是lte与5g混合架构、也可以是5g新无线(new radio,nr)系统以及未来通信发展中出现的新的通信系统等。本技术的5g通信系统可以包括非独立组网(non-standalone,nsa)的5g通信系统、独立组网(standalone,sa)的5g通信系统中的至少一种。通信系统还可以是公共陆地移动网络(public land mobile network,plmn)网络、设备到设备(device-to-device,d2d)网络、机器到机器(machine to machine,m2m)网络或者其他网络。
[0309]
此外,本技术实施例还可以适用于面向未来的其他通信技术,例如6g等。本技术描述的网络架构以及业务场景是为了更加清楚的说明本技术的技术方案,并不构成对本技术提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本技术提供的技术方案对于类似的技术问题,同样适用。
[0310]
图7为本技术实施例中通信装置的硬件结构示意图。该通信装置可以是本技术实施例中网络设备或终端设备的一种可能的实现方式。如图7所示,通信装置至少包括处理器704,存储器703,和收发器702,存储器703进一步用于存储指令7031和数据7032。可选的,该通信装置还可以包括天线706,i/o(输入/输出,input/output)接口710和总线712。收发器702进一步包括发射器7021和接收器7022。此外,处理器704,收发器702,存储器703和i/o接口710通过总线712彼此通信连接,天线706与收发器702相连。
[0311]
处理器704可以是通用处理器,例如但不限于,中央处理器(central processing unit,cpu),也可以是专用处理器,例如但不限于,数字信号处理器(digital signal processor,dsp),应用专用集成电路(application specific integrated circuit,asic)和现场可编程门阵列(field programmable gate array,fpga)等。该处理器704还可以是神经网络处理单元(neural processing unit,npu)。此外,处理器704还可以是多个处理器的组合。特别的,在本技术实施例提供的技术方案中,处理器704可以用于执行,后续方法实施例中基于神经网络的通信方法的相关步骤。处理器704可以是专门设计用于执行上述步骤和/或操作的处理器,也可以是通过读取并执行存储器703中存储的指令7031来执行上述步骤和/或操作的处理器,处理器704在执行上述步骤和/或操作的过程中可能需要用到数据7032。
[0312]
收发器702包括发射器7021和接收器7022,在一种可选的实现方式中,发射器7021用于通过天线706发送信号。接收器7022用于通过天线706之中的至少一根天线接收信号。特别的,在本技术实施例提供的技术方案中,发射器7021具体可以用于通过天线706之中的至少一根天线执行,例如,后续方法实施例中基于神经网络的通信方法应用于网络设备或终端设备时,网络设备或终端设备中接收模块或发送模块所执行的操作。
[0313]
在本技术实施例中,收发器702用于支持通信装置执行前述的接收功能和发送功能。将具有处理功能的处理器视为处理器704。接收器7022也可以称为输入口、接收电路等,发射器7021可以称为发射器或者发射电路等。
[0314]
处理器704可用于执行该存储器703存储的指令,以控制收发器702接收消息和/或发送消息,完成本技术方法实施例中通信装置的功能。作为一种实现方式,收发器702的功
能可以考虑通过收发电路或者收发的专用芯片实现。本技术实施例中,收发器702接收消息可以理解为收发器702输入消息,收发器702发送消息可以理解为收发器702输出消息。
[0315]
存储器703可以是各种类型的存储介质,例如随机存取存储器(random access memory,ram),只读存储器(read only memory,rom),非易失性ram(non-volatile ram,nvram),可编程rom(programmable rom,prom),可擦除prom(erasable prom,eprom),电可擦除prom(electrically erasable prom,eeprom),闪存,光存储器和寄存器等。存储器703具体用于存储指令7031和数据7032,处理器704可以通过读取并执行存储器703中存储的指令7031,来执行本技术方法实施例中所述的步骤和/或操作,在执行本技术方法实施例中操作和/或步骤的过程中可能需要用到数据7032。
[0316]
可选的,该通信装置还可以包括i/o接口710,该i/o接口710用于接收来自外围设备的指令和/或数据,以及向外围设备输出指令和/或数据。
[0317]
下面介绍本技术实施例的方法部分。为了便于说明,本技术实施例提出的一种基于神经网络的通信方法可以分为:1、训练部分;2、通信部分。
[0318]
首先,结合附图说明训练部分:请参阅图8,图8为本技术实施例提出的一种基于神经网络的通信方法的实施例示意图。本技术实施例提出的一种基于神经网络的通信方法包括:
[0319]
801、发送端获取第一数据流。
[0320]
本实施例中,发送端获取第一数据流,该第一数据流为二进制比特流(binary digit,bit)。当发送端与接收端之间进行通信交互时,该第一数据流为发送端向接收端发送的正常数据。当发送端与接收端之间进行神经网络的训练时,该第一数据流为发送端向接收端发送的训练样本数据。
[0321]
当第一数据流为训练样本数据时,该第一数据流可以是预配置于发送端内部,该第一数据流也可以是外部(相对于发送端)输入的数据,该第一数据流还可以是发送端与接收端协商的数据,此处不做限制。
[0322]
在一种可选的实现方式中,该第一数据流在预配置于发送端内部的同时,该第一数据流还可以预配置于接收端内部。
[0323]
802、发送端使用编码神经网络对第一数据流进行处理,得到第一符号流。
[0324]
本实施例中,发送端获取第一数据流后,发送端使用编码神经网络对第一数据流进行处理,得到第一符号流。
[0325]
可选的,发送端还可以对第一符号流(或第一数据流)进行速率匹配(rate matching)和/或调制等操作。其中,速率匹配(rate matching)是指传输信道上的比特被重发(repeated)或者被打孔(punctured),以匹配物理信道的承载能力,信道映射时达到传输格式所要求的比特速率。该调制主要实现把基带频谱搬移到射频频段,从而实现无线发送功能。
[0326]
在一种可选的实现方式中,该编码神经网络可以执行信源编码、信道编码、调制和/或滤波中的一种或多种功能。示例性的,请参阅图9,图9为本技术实施例中一种通信系统的结构示意图。该通信系统中,发送端侧为编码神经网络,接收端侧为译码神经网络,其它模块或组件未示出。
[0327]
在另一种可选的实现方式中,该信源编码、信道编码、调制和/或滤波等相关操作,
可以由其它神经网络(相对于编码神经网络)执行。
[0328]
在另一种可选的实现方式中,为了避免发生维度灾难(dimension curse)的问题(又称为维数灾难的问题),该信源编码、信道编码、调制和/或滤波等相关操作,还可以由发送端中的其它模块执行,该其它模块称为第一模块。该第一模块既可以部署于编码神经网络输入侧,也可以部署于编码神经网络输出侧,还可以同时部署于编码神经网络的输入侧与输出侧。
[0329]
维度灾难通常是指在涉及到向量的计算的问题中,随着维数的增加,计算量呈指数倍增长的一种现象。示例性的,请参阅图10,图10为本技术实施例中又一种通信系统的结构示意图。该通信系统中,发送端侧为第一模块和编码神经网络,接收端侧为译码神经网络和第二模块,其它模块或组件未示出。具体的,使用第一模块执行信源编码、信道编码、调制和/或滤波等相关操作。首先,第一模块对第一数据流进行编码处理后,得到第一信道编码码字。其次,编码神经网络对第一信道编码码字进行处理,得到第一中间符号。再次,上采样模块对第一中间符号进行上采样处理,得到第二中间符号,其中,第二中间符号为第一中间符号在采样点后做插零处理得到。再次,发送端中的滤波神经网络对第二中间符号进行滤波处理,得到第一符号流,该滤波神经网络进行的滤波处理包括引入符号间干扰(inter symbol interference,isi)。
[0330]
示例性的,该编码神经网络包括但不限于:全连接神经网络、径向基(radial basis function,rbf)神经网络、卷积神经网络、循环神经网络、霍普菲尔德神经网络、受限玻尔兹曼机或深度置信网络等。该编码神经网络可以是上述的任一种神经网络,该编码神经网络也可以是上述多种神经网络的结合,此处不做限制。
[0331]
803、发送端向接收端发送第一符号流。
[0332]
本实施例中,发送端通过信道向接收端发送第一符号流。该第一符号流相较于传统的发送端发出的符号流,具有波形优化的特点。
[0333]
可选的,发送端向接收端发送的第一符号流,可以使用发送端内部的滤波器进行滤波处理。
[0334]
示例性的,该滤波处理包括引入符号间干扰。
[0335]
示例性的,该滤波处理还包括滤除带外信号,其中,带外信号中的“带外”,指的是指给定工作频带后,在这工作频带外面的频率成分的频谱。
[0336]
804、接收端使用译码神经网络对第一符号流进行处理,得到第二数据流。
[0337]
本实施例中,具体的,在发送端侧,对第一符号流进行滤波处理后,得到第一波形信号。发送端通过信道将该第一波形信号发送至接收端,为了便于描述,将该信道称为第一信道。第一波形信号在第一信道传输过程中,受到信道干扰的影响。则接收端使用译码神经网络对该受到第一信道干扰的第一波形信号(第一符号流)进行处理,得到第二数据流。
[0338]
在一种可选的实现方式中,发送端侧,第一数据流的信源编码、信道编码、调制和/或滤波等相关操作,由发送端中的其它模块(即第一模块)执行时。在接收端侧,信源译码、信道译码、解调和/或均衡(equalization)等处理,可以由译码神经网络执行,也可以由于该译码神经网络相独立的其它处理模块执行,该其它处理模块称为第二模块。该第二模块既可以部署于译码神经网络输入侧,也可以部署于译码神经网络输出侧,还可以同时部署于译码神经网络的输入侧与输出侧。具体的,首先,接收端使用译码神经网络对第一波形信
号进行处理,得到第一信道译码码字或对数似然比(log-likelihood ratio,llr),对数似然比在通信中通常用于软译码。其次,接收端使用第二模块对第一信道译码码字或对数似然比进行处理,得到第二数据流。
[0339]
示例性的,该译码神经网络包括但不限于:全连接神经网络、径向基神经网络、卷积神经网络、循环神经网络、霍普菲尔德神经网络、受限玻尔兹曼机或深度置信网络等。该编码神经网络可以是上述的任一种神经网络,该编码神经网络也可以是上述多种神经网络的结合,此处不做限制。
[0340]
需要说明的是,该译码神经网络可以与编码神经网络采用相同的神经网络,也可以采用不同的神经网络,还可以采用部分相同的神经网络,此处不做限制。
[0341]
805、接收端根据第一数据流和第二数据流,训练译码神经网络。
[0342]
本实施例中,接收端得到第二数据流后,接收端根据第一数据流和第二数据流训练译码神经网络。具体的,首先,接收端使用译码神经网络对第一数据流和第二数据流进行处理,得到第一函数的函数值,其中,该第一函数为损失函数和/或奖励函数。其次,接收端使用译码神经网络对第一函数的函数值进行处理,得到第一梯度。再次,接收端使用第一梯度训练译码神经网络。
[0343]
在一种可选的实现方式中,该第一数据流预置于接收端内部,接收端从接收端内部获取该第一数据流。
[0344]
在另一种可选的实现方式中,该第一数据流来自发送端。接收端与发送端之间协商后,发送端向接收端发送该第一数据流。具体的,该第一数据流可以通过与第一信道相独立的第二信道发送至接收端。该第二信道为该发送端与该接收端之间已经建立通信的信道。
[0345]
在本技术实施例中,第一函数:可以指的是传输第一函数本身;也可以是第一函数的函数值(或计算结果);还可以是第一函数本身和第一函数的函数值(或计算结果),此处不做限定。第二函数:可以指的是传输第二函数本身;也可以是第二函数的函数值(或计算结果);还可以是第二函数本身和第二函数的函数值(或计算结果),此处不做限定。
[0346]
806、接收端向发送端发送第一函数、第二函数、第一梯度和/或第一权重。
[0347]
本实施例中,当接收端使用第一数据流和第二数据流训练译码神经网络后,接收端向发送端发送该第一函数、第二函数、第一梯度和/或第一权重。
[0348]
在本技术实施例中,传输(发送或接收)的第一函数和/或第二函数,包括多种实现方式。示例性的,以第一函数为例进行说明:可以是传输第一函数本身;也可以是传输第一函数的函数值(或计算结果);还可以是传输第一函数本身和第一函数的函数值(或计算结果),此处不做限定。
[0349]
下面进行具体描述。
[0350]
首先,请参阅图11,图11为本技术实施例中编码神经网络与译码神经网络的一种结构示意图。在一种可选的实现方式中,本技术实施例的编码神经网络采用一种改进的“演员-评判家(actor-critic)”算法进行训练。按照功能划分,编码神经网络可以分为第一神经网络和第二神经网络两部分,其中,第一神经网络也称为“critic神经网络”,第二神经网络也称为“actor神经网络”。
[0351]
第一神经网络可以是复用全部的译码神经网络,例如:第一神经网络采用该译码
神经网络的全部神经元结构(神经元结构包括神经元层数)。
[0352]
第一神经网络还可以复用部分的译码神经网络(和/或部分的译码神经网络的参数),例如:第一神经网络采用该译码神经网络的部分神经元结构,其中,可以是第一神经网络中的神经元层数与译码神经网络中的神经元层数一致,但是第一神经网络中仅部分神经元与译码神经网络中的神经元一致;
[0353]
也可以是第一神经网络中的部分神经元层与译码神经网络中的部分神经元层一致,但是第一神经网络中神经元层数与译码神经网络中的神经元层数不一致;
[0354]
还可以是第一神经网络中部分神经元采用译码神经网络中部分神经元的参数,或译码神经网络中部分神经元参数的变形;
[0355]
还可以是第一神经网络中部分神经元采用译码神经网络中部分神经元的变形等,此处不做限制。
[0356]
需要说明的是,“复用”既可以指第一神经网络使用译码神经网络中完全一致的神经元或神经元参数,也可以指的是第一神经网络包括译码神经网络中的神经元或神经元参数,还可以指的是指第一神经网络使用译码神经网络中神经元的变形或神经元参数的变形等此处不作限制。
[0357]
在一种可选的实现方式中,接收端使用第一数据流和第二数据流训练译码神经网络。具体的,译码神经网络根据第一数据流和第二数据流,计算得到第一函数,第一函数为损失函数和/或奖励函数。译码神经网络根据该第一函数求得第一梯度,该第一梯度用于译码神经网络的进一步训练(例如:更新)。进一步的,译码神经网络可以向编码神经网络分享经过训练后的译码神经网络的权重,为了便于说明,该权重称为第一权重。示例性的,如图9、图10或图11所示,译码神经网络向编码神经网络中的第一神经网络分享第一权重,该第一权重用于更新第一神经网络。可选的,接收端通过第二信道向发送端发送该第一权重。
[0358]
在另一种可选的实现方式中,接收端使用译码神经网络对第一数据流和第二数据流进行处理,得到第二函数的函数值,该第二函数的函数值用于训练编码神经网络(包括第一神经网络和第二神经网络)。
[0359]
示例性的,如图9、图10或图11所示,译码神经网络向编码神经网络发送第一函数和/或第二函数。该第一函数用于训练(或更新)第一神经网络。该第二函数用于训练(或更新)编码神经网络,可以是训练第一神经网络,也可以是训练第二神经网络,还可以是第一神经网络和第二神经网络。可选的,接收端通过第二信道向发送端发送该第一函数和/或第二函数。
[0360]
807、发送端使用第一函数、第二函数、第一梯度和/或第一权重训练编码神经网络。
[0361]
本实施例中,当发送端接收第一函数、第二函数、第一梯度和/或第一权重后,发送端使用第一函数、第二函数、第一梯度和/或第一权重训练编码神经网络。下面分别进行说明。
[0362]
首先,介绍第一函数。当发送端接收的是第一函数,发送端使用编码神经网络(例如:第一神经网络)对该第一函数进行计算处理,生成新的梯度。该新的梯度用于训练(例如:更新)编码神经网络(例如:第一神经网络)。
[0363]
其次,介绍第二函数。当发送端接收的是第二函数,发送端使用编码神经网络对第
二函数进行计算处理,生成第二梯度。该第二梯度用于训练(例如:更新)编码神经网络。具体的,编码神经网络使用梯度估计(gradient approximation)算法对第二函数进行计算处理,生成第二梯度。示例性的,梯度估计算法包括但不限于:随机梯度下降法(stochastic gradient descent,sgd)、“adagrad算法”、均方根支柱算法(root mean square prop,rmsprop)、自适应矩估计(adaptive moment estimation)算法,或动量(momentum)算法等。
[0364]
再次,介绍第一梯度和/或第一权重。当发送端接收第一梯度和/或第一权重后,发送端根据第一梯度和/或第一权重对编码神经网络进行训练。具体的,根据第一梯度和/或第一权重更新编码神经网络。
[0365]
可选的,训练完成后,发送端与接收端可以使用编码神经网络与译码神经网络进行数据的交互,也可以不使用编码神经网络与译码神经网络进行数据的交互。此时,使用编码神经网络与译码神经网络进行数据的交互,作为发送端与接收端之间数据交互过程的可选项,用于增强波形。
[0366]
可选的,该第二信道保持连接,则本技术实施例中涉及的训练方法可以持续进行。示例性的,如根据当前信道环境训练,得到该环境下的增强波形。当信道环境改变之后,继续训练得到新的增强波形。
[0367]
需要说明的是,当发送端还包括其它神经网络时,例如:滤波神经网络等。该滤波神经网络作为编码神经网络的一部分,通过上述方法进行训练,此处不再赘述。当接收端还包括其它神经网络时,该其它神经网络作为译码神经网络的一部分,通过上述方法进行训练,此处不再赘述。
[0368]
需要说明的是,上述训练的相关步骤,既可以与实际通信流程同时进行,也可以与实际通信流程相互独立进行。
[0369]
本技术实施例中,发送端使用的编码神经网络与接收端使用的译码神经网络进行联合训练优化。编码神经网络中的第一神经网络复用译码神经网络及译码神经网络的参数。使得译码神经网络为编码神经网络提供一部分先验信息,进而使得编码神经网络能更准确预测动作的收益,从而降低梯度估计的方差,加速网络收敛的速度及提高收敛的性能。
[0370]
在图8-图11所示实施例的基础上,请参阅图12,图12为本技术实施例提出的一种应用场景的流程示意图。图12所示的应用场景中,发送端为网络设备中,接收端为终端设备中。需要说明的是,图12仅做示例性说明,对实际方法不做限制。具体如下:
[0371]
s1、配置超参。
[0372]
步骤s1中,网络设备(发送端)为终端设备配置超参(hyper parameter),超参也称为超参数。在机器学习的上下文中,超参数是在开始学习过程之前设置值的参数,而不是通过训练得到的参数数据。通常情况下,需要对超参数进行优化,给学习机选择一组最优超参数,以提高学习的性能和效果。
[0373]
在一种可选的实现方式中,步骤s1配置的超参还包括训练样本,该训练样本即前述实施例的“第一数据流”。
[0374]
具体的,网络设备向终端设备发送超参配置帧,该超参配置帧包括以下参数的一种或多种:批大小(batch size),学习率(learning rate),符号数,块大小,或译码神经网络的配置参数。其中,译码神经网络的配置参数包括但不限于:神经网络类型,包含层数(神经元层数),每层神经元数,或每层激活函数。该激活函数包括但不限于:“sigmoid函数”、“tanh函数”、“relu函数”、“leaky relu函数”、“maxout函数”,或“softmax函数”等。
[0375]
可选的,该超参配置帧还可以包括:训练样本,该训练样本作为译码神经网络训练时标签。该训练样本即前述实施例的“第一数据流”。
[0376]
s2、初始化译码神经网络。
[0377]
步骤s2中,终端设备根据步骤s1中配置的超参,初始化译码神经网络。
[0378]
s3、发送译码神经网络权重。
[0379]
步骤s3中,为了配置编码神经网络中的第一神经网络,终端设备向网络设备发送译码神经网络的权重。
[0380]
s4、初始化编码神经网络。
[0381]
步骤s4中,网络设备根据接收的译码神经网络的权重,初始化编码神经网络。具体的,可以是初始化编码神经网络中的第一神经网络。
[0382]
s5、发送训练样本。
[0383]
步骤s5中,网络设备向终端设备发送训练样本。
[0384]
在一种可选的实现方式中,当步骤s1配置的超参中未包括训练样本时,步骤s5中发送的训练样本包括两部分,即前述实施例的“第一数据流”和“第二数据流”,其中,“第一数据流”通过第二信道向终端设备发送,该第二信道为网络设备与终端设备之间已经配置好的信道,该第二信道可以是预配置的信道,第二信道中的数据可以正确地传输;“第二数据流”通过第一信道向终端设备发送,该第一信道与该第二信道不一致。
[0385]
在另一种可选的实现方式中,当步骤s1配置的超参中包括训练样本时,步骤s5中发送的训练样本仅包括前述实施例的“第二数据流”。
[0386]
具体的,该训练样本可以通过训练数据帧的形式向终端设备发送。示例性的,请参阅图13,图13为本技术实施例中涉及的帧结构示意图。训练数据帧的一帧包含一批(batch)数据,这一批数据的大小由前述步骤s1中超参配置帧确定。在训练数据帧中,每个样本(sample)代表一组训练数据,长度与前述步骤s1中超参配置帧中的符号数,块大小相关。
[0387]
s6、训练译码神经网络。
[0388]
步骤s6中,终端设备根据接收的训练样本,训练译码神经网络。具体训练方式与前述实施例类似,此处不再赘述。
[0389]
s7、发送译码神经网络权重。
[0390]
步骤s7中,终端设备向网络设备发送以下至少一项:译码神经网络的权重,译码神经网络得到的奖励函数、损失函数和/或梯度等。
[0391]
可选的,上述译码神经网络的权重,译码神经网络得到的奖励函数、损失函数和/或梯度,可以通过奖励反馈帧发送至网络设备(发送端)。
[0392]
示例性的,请参阅图13,在奖励反馈帧中,奖励聚合等级(reward aggregation level,ralv)指示样本的数量,该样本的数量进一步指示多少个样本的奖励聚合在同一奖励反馈帧中一并发送。例如:当奖励聚合等级为1时,1个样本的奖励聚合在同一奖励反馈帧中一并发送;当奖励聚合等级为2时,2个样本的奖励聚合在同一奖励反馈帧中一并发送;当奖励聚合等级为8时,8个样本的奖励聚合在同一奖励反馈帧中一并发送。以此类推,此处不做赘述。
[0393]
可选的,终端设备通过梯度/权重共享帧向网络设备发送译码神经网络的权重(或
梯度等),梯度/权重共享帧可以包括译码神经网络的权重。该梯度/权重共享帧还可以包括量化精度。
[0394]
s8、训练第一神经网络。
[0395]
步骤s8中,网络设备根据来自终端设备的译码神经网络的权重等,训练编码神经网络中的第一神经网络。具体的,可以使用该权重更新第一神经网络。
[0396]
可选的,当步骤s7中,终端设备还向网络设备发送译码神经网络得到的奖励函数、损失函数和/或梯度时,第一神经网络根据上述数据进行训练(或更新)。
[0397]
上述步骤s5-s8,也称为译码神经网络的非监督学习的相关流程。
[0398]
s9、发送训练样本。
[0399]
步骤s9中,网络设备向终端设备发送训练样本,该训练样本可以与步骤s5中的训练样本类似。该训练样本也可以与步骤s5中的训练样本不同,此处不做限制。
[0400]
具体的,与前述步骤s5类似,网络设备也可以通过训练样本帧向终端设备发送训练样本。
[0401]
s10、计算损失函数。
[0402]
步骤s10中,译码神经网络根据步骤s9中的训练样本,计算损失函数(和/或奖励函数)。示例性的,该损失函数(和/或奖励函数)为前述实施例中的“第二函数”。
[0403]
s11、发送奖励。
[0404]
步骤s11中,终端设备向网络设备发送该第二函数。具体的,与前述步骤s7类似,在奖励反馈帧,或梯度/权重共享帧中向网络设备发送该第二函数。
[0405]
s12、训练编码神经网络。
[0406]
步骤s12中,网络设备根据来自终端设备的译码神经网络的第二函数(或其它权重或其它梯度),训练编码神经网络。
[0407]
可选的,网络设备对来自终端设备的奖励反馈帧,或梯度/权重共享帧进行校验。当发现存在循环冗余码校验(cyclic redundancy check,crc)错误时,网络设备将该奖励反馈帧,或梯度/权重共享帧中对应的数据(指的是训练数据,例如第二函数、第一梯度或第一权重)丢弃。是因为如果数据帧在空口传输有可能会出错,而错误的数据(指的是训练数据,例如第二函数、第一梯度或第一权重)将对强化学习训练带来负面影响。通过上述手段可有效消除该负面影响。
[0408]
上述步骤s9-s12,也称为编码神经网络的强化学习的相关流程。
[0409]
需要说明的是,步骤s5-s8,与,步骤s9-s12之间的执行顺序此处不做限制。例如:可以先执行步骤s5-s8,后执行步骤s9-s12。也可以先执行步骤s9-s12,后执行步骤s5-s8。还可以是先执行步骤s5-s8一定轮数(即重复执行s5-s8一定次数)后,再执行步骤s9-s12一定轮数(即重复执行s9-s12一定次数)。还可以是先执行步骤s9-s12一定轮数(即重复执行s9-s12一定次数)后,再执行步骤s5-s8一定轮数(即重复执行s5-s8一定次数)。
[0410]
s13、停止训练反馈。
[0411]
步骤s13中,当前述步骤s5-s8“非监督学习”,与,步骤s9-s12“强化学习”执行的过程中满足一定条件时,停止训练反馈。该条件包括但不限于:
[0412]
a、当训练执行一定轮数后,执行步骤s13。例如:前述步骤s5-s8“非监督学习”,与,步骤s9-s12“强化学习”分别执行5轮后,执行步骤s13。
[0413]
b、当译码神经网络(和/或编码神经网络)的奖励差达到一定阈值时,执行步骤s13,该奖励差指的是两次训练得到的奖励的差值。示例性的,该阈值可以是:1.0x10的-3次方。具体的,当奖励差小于1.0x10的-3次方时,执行步骤s13。
[0414]
c、译码神经网络对训练样本(例如:第一符号流)进行处理得到第二数据流。译码神经网络通过校验第一数据流(样本)与第二数据流,得到误码率(也称为错包率)。当该错包率满足小于或等于某一阈值时,执行步骤s13。该阈值可以是:1.0x10的-2次方、或1.0x10的-3次方,或1.0x10的-6次方。
[0415]
步骤s13由终端设备(接收端)触发。具体的,终端设备向网络设备发送训练结束反馈帧,该训练结束反馈帧可以是现有的应答/否定应答(ack/nack)帧的变形。示例性的,该训练结束反馈帧包括如表1所示的一种或多种控制字段:
[0416][0417]
表1
[0418]
s14、停止训练。
[0419]
步骤s14中,与步骤s13类似,停止训练可以由网络设备(发送端)触发。
[0420]
需要说明的是,步骤s14与步骤s13相互独立,此处不对步骤s14的执行顺序进行限定。步骤s14可以执行于步骤s5-s12之间的任意步骤。
[0421]
s15、停止训练指示。
[0422]
步骤s14后,执行步骤s15。步骤s15中,网络设备向终端设备发送训练结束指示帧。示例性的,该训练结束指示帧与步骤s13中“训练结束反馈帧”类似,此处不再赘述。
[0423]
s16、错包监控。
[0424]
步骤s16中,终端设备通过检测信道质量(例如前述实施例的第一信道)或检测错包率,确定是否触发重新训练。示例性的,终端设备中译码神经网络对训练样本(例如:第一符号流)进行处理得到第二数据流。译码神经网络通过校验第一数据流(样本)与第二数据流,得到误码率(也称为错包率)。当该错包率满足大于或等于某一阈值时,执行步骤s17。该阈值可以是:1.0x10的-9次方。
[0425]
s17、重新训练请求。
[0426]
步骤s17中,终端设备向网络设备发起重新训练请求,以触发前述步骤s5-s8与步
骤s9-s12的相关训练步骤。
[0427]
可选的,终端设备通过向网络设备发送重新训练请求帧,发起重新训练请求。示例性的,该重新训练请求帧包括如表2所示的控制字段:
[0428][0429]
表2
[0430]
本实施例中,通过上述步骤可以对发送端的编码神经网络(和滤波神经网络),与接收端的译码神经网络进行端到端的联合优化。请参阅图14,图14为本技术实施例涉及的一种仿真实验示意图。如图14所示,在一种示例性的仿真实验场景中,本技术技术方案收敛速度与收敛性能,与现有技术方案相比,有大幅度提升。
[0431]
接下来,在前述实施例所介绍的训练部分的基础上,介绍本技术实施例涉及的通信部分。
[0432]
首先,结合附图说明通信部分:请参阅图15,图15为本技术实施例提出的一种基于神经网络的通信方法的又一种实施例示意图。示例性的,以编码神经网络与第一模块相互独立,译码神经网络与第二模块相互独立为例进行说明。另外,第一模块的相关功能集成于编码神经网络,第二模块的相关功能集成于译码神经网络的方案与图15所示的实施例方法类似,此处不再赘述。为了便于理解,下面结合图16a一并说明,图16a为本技术实施例提出的又一种通信系统的结构示意图。
[0433]
本技术实施例提出的一种基于神经网络的通信方法包括:
[0434]
1501、发送端获取第一数据流。
[0435]
本实施例中,与前述步骤801类似,发送端获取第一数据流。该第一数据流为发送端与接收端之间通信交互的数据。
[0436]
1502、发送端使用第一模块对第一数据流进行处理,得到第一信道编码码字。
[0437]
本实施例中,发送端使用第一模块对第一数据流进行处理,得到第一信道编码码字。
[0438]
可选的,该第一模块可以级联于该通信系统外,以进一步提高系统的无差错传输性能。
[0439]
1503、发送端使用编码神经网络对第一信道编码码字进行处理,得到第一符号流。
[0440]
本实施例中,发送端使用编码神经网络对第一模块生成的第一信道编码码字(进行处理,得到第一符号流。
[0441]
具体的,该第一数据流为二进制比特。该第一符号流为实数符号或复数符号,该第一符号流的符号率为fs。
[0442]
可选的,发送端还可以对第一符号流(进行速率匹配(rate matching)和调制等操作。其中,速率匹配(rate matching)是指传输信道上的比特被重发(repeated)或者被打孔(punctured),以匹配物理信道的承载能力,信道映射时达到传输格式所要求的比特速率。
[0443]
1504、发送端使用第一滤波器对第一符号流进行滤波处理,得到第一波形信号。
[0444]
本实施例中,为了在第一符号流中引入符号间干扰,发送端使用第一滤波器对第一符号流进行滤波处理,得到第一波形信号。
[0445]
可选的,该第一滤波器可选用低通滤波器。
[0446]
可选的,该第一滤波器还可以滤除第一符号流中的带外信号,限制发送的带宽。
[0447]
1505、发送端向接收端发送第一波形信号。
[0448]
本实施例中,发送端通过信道向接收端发送第一波形信号。具体的,该信道为经过简单通信配置的信道,具有基础的收发能力。本技术实施例中,将该信道称为第一信道。
[0449]
1506、接收端对第一波形信号进行滤波处理,得到第二波形信号。
[0450]
本实施例中,接收端使用第二滤波器对经过第一信道传输的第一波形信号进行滤波处理,得到第二波形信号。
[0451]
可选的,该第二滤波器可选用匹配滤波器。
[0452]
在一种可选的实现方式中,第一滤波器与第二滤波器可以选用相同的根升余弦滤波器(root-raised cosine filter,rrc filter)。rrc滤波器用于执行信号整形(signal shaping)。
[0453]
1507、接收端对第二波形信号进行量化处理,得到量化符号序列。
[0454]
本实施例中,接收端得到第二波形信号后,使用模数转换器(analog-to-digital converte,adc)对第二波形信号进行量化处理,得到量化符号序列。
[0455]
具体的,当第一符号流包括x组符号组,每组符号组包括n个符号,第一波形信号包括x组符号组,x为大于或等于1的正整数,n为大于或等于1的正整数;当接收端对第一波形信号中n个符号进行量化处理,得到量化符号序列,量化符号序列的长度为nm,其中,m为接收端的过采样倍率。
[0456]
该量化符号序列具有以下特征:一组第一数据流映射至一个或多个量化符号序列,量化符号序列中每个符号内至多存在一次比特位翻转,比特位翻转为0至1或1至0。
[0457]
可选的,该模数转换器可以是过采样的模数转换器,当该模数转换器的过采样倍率为m时,该量化符号序列的符号率为mxfs,其中,m为大于0的整数。过采样(oversampling)是指以高于信号带宽两倍或其最高频率对其进行采样的过程。
[0458]
可选的,该模数转换器还可以是采样精度(量化精度)受限的模数转换器,例如:采样精度为1比特(bit)的过采样模数转换器(简称为1bit过采样adc)。
[0459]
具体的,以采用1bit过采样adc的通信系统为例进行说明。具体来说,为了实现信号的无差错传播及大于1比特/符号(bit/symbol)的频谱效率,该系统将两个符号组成超级符号(super symbol)发送,并在接收端低精度过采样检测。如图16b所示,图16b为本技术实施例中涉及的基于过采样的1bit通信系统的原理示意图。通信系统系统从两个4-移幅键控(amplitude-shift keying,ask)中选择8种转移状态进行传输,挑选的准则是使传输的超级符号在接收端能无混叠区分。
[0460]
如图16c所示,图16c为本技术实施例中涉及的基于过采样的1bit通信系统的又一种原理示意图。接收端的adc过采样倍率为m,接收端adc后将m 1个采样点用于检测并恢复出发送信号,如第一个符号是(1,1,1,1),第二个符号为(1,-1,-1,-1),其能达到的频谱效率为1.5bit/symbol。
[0461]
示例性的,以第一数据流的长度3bit,接收端侧adc的过采样倍率m=5为例进行说
明。在发送端侧,编码神经网络将长度为3bit的第一数据流映射至2个实数符号,即第一符号流为2个实数符号。在接收端侧,过采样倍率为5的adc对该第一符号流进行量化处理后,得到长度为10bit的量化符号序列。请参阅图18,图18为本技术实施例涉及的一种符号映射图。在另一种表示方法中,编码神经网络将长度为3bit的第一数据流映射至2个实数符号,也可以表示为:6bit映射到2个复数符号。则接收端中过采样倍率为5的adc对该第一符号流进行量化处理后,得到长度为20bit的量化符号序列。
[0462]
1508、接收端使用译码神经网络对量化符号序列中的第一序列进行处理,得到第一信道译码码字或对数似然比。
[0463]
本实施例中,接收端使用译码神经网络对量化符号序列中的第一序列进行处理,得到第一信道译码码字或对数似然比。
[0464]
可选的,量化符号序列中第一序列的长度为[(n-1)m 1,nm]。示例性的,n=2,即当第一符号流包括x组符号组,每组符号组包括2个符号时,译码神经网络用于处理(也称为检测)的第一序列长度为[m 1,2m]。第一序列长度越长,过采样倍数越高,将会获得更好的性能。
[0465]
示例性的,在前述图18所示示例的基础上,即以第一数据流的长度3bit,接收端侧adc的过采样倍率m=5为例进行说明。译码神经网络对量化符号序列中第一序列进行处理,该第一序列的长度为6bit,即m 1=6。则第一序列与第一数据流之间的映射关系如图19所示,图19为本技术实施例中一种符号映射示意图。具体的,第一数据流[1,1,0]映射至第一序列[0,0,0,0,0,0];第一数据流[1,1,1]映射至第一序列[0,0,0,0,0,1]或第一序列[0,0,0,0,1,1]等。因为多个第一序列可以对应一个数据。因此,过采样过程后生成的量化符号序列即使存在差异,最终也能正确的还原出数据。多个序列可以对应一个序列且一个序列不能对应多个数据,以保证译码的正确率。
[0466]
可选的,译码神经网络(和/或编码神经网络)可选用的损失函数包括但不限于:二值交叉熵、分类交叉熵,或均方误差等。以选用二值交叉熵为例,则本技术实施例中端到端联合优化的目标是输入与输出的交叉熵最小。
[0467]
1509、接收端使用第二模块对第一信道译码码字或对数似然比进行处理,得到第二数据流。
[0468]
本实施例中,接收端使用第二模块对第一信道译码码字或对数似然比进行处理,得到第二数据流。
[0469]
可选的,如图17所示,图17为本技术实施例中一种迭代接收结构示意图。本技术实施例中第二模块可以选用软判决译码,则该第二模块也可以称为软判决译码器。软判决译码是利用数字技术对纠错码实现最佳或接近最佳译码的技术。其性能接近最佳的最大似然译码,而译码器却比最大似然译码的简单。译码神经网络的损失函数可以选用二值交叉熵(binary cross entropy)。采用上述结构的接收端中,译码神经网络与第二模块可以采用迭代接收(包括训练和推理)。示例性的,译码神经网络将外信息(extrinsic information)传输至第二模块(软判决译码器)。由第二模块对该外信息进行译码操作后,向译码神经网络发送译码结果,该译码结果为先验对数似然比(a priori llr)。通过上述结构,可进一步提升该通信系统的性能。软判决译码是利用数字技术对纠错码实现最佳或接近最佳译码的技术。其性能接近最佳的最大似然译码,而译码器却比最大似然译码的简单。
[0470]
可选的,该第二模块可以级联于该通信系统外,以进一步提高系统的无差错传输性能。
[0471]
本技术实施例中,接收端可以采用过采样的模数转换器对第一符号流进行量化处理,得到量化符号序列。该量化符号序列与第一数据流之间存在以下对应关系:一个或多个量化符号序列唯一对应一个第一数据流。因此,模数转换器过采样过程后生成的量化符号序列即使存在差异,最终也能正确的还原出数据。多个序列可以对应一个序列且一个序列不能对应多个数据,以保证译码的正确率。请参阅图20和图21,图20为本技术实施例涉及的又一种仿真实验示意图,图21为本技术实施例涉及的又一种仿真实验示意图。其中,图20对应无独立的第一模块的通信系统,图21对应有独立的第一模块的通信系统。具体的,接收机解调门限(eb/no),定义为每比特能量除以噪声功率谱密度。其中:eb:信号比特能量(单位:焦耳/比特),no:噪声功率谱密度(瓦特/赫兹)。随着接收机解调门限的上升,本技术技术方案的误块率(block error rate,bler)相较于现有技术方案的误块率下降幅度大,与现有技术方案相比,误块率性能有大幅度提升。
[0472]
在上述实施例的基础上,在发送端侧,还可以引入滤波神经网络。示例性的,该滤波神经网络部署于编码神经网络与第一滤波器之间。可选的,还可以在编码神经网络与滤波神经网络之间引入上采样模块。该滤波神经网络可以作为编码神经网络的一部分,也可以与编码神经网络相互独立。为了便于理解,请参阅图22,图22为本技术实施例提出的又一种通信系统的结构示意图。
[0473]
在另一种可选的实现方式中,在接收端侧,可以引入该滤波神经网络。可选的,在发送端部署该滤波神经网络,在接收端侧同样部署该滤波神经网络。可选的,仅在接收端侧部署该滤波神经网络。该滤波神经网络可以部署于第二滤波器与模数转换器之间,该滤波神经网络也可以部署于模数转换器与译码神经网络之间,此处不做限定。
[0474]
以基于过采样的1bit通信系统为例,由于1bit量化带来的信息损失导致传统方式如导频无法完成对信道的有效估计及均衡,故在衰落信道场景下,通信系统的性能较差。衰落是指由于信道的变化导致接收信号的幅度发生随机变化的现象,即信号衰落。导致信号衰落的信道被称作衰落信道。
[0475]
基于此,通过设置滤波神经网络,该滤波神经网络对编码神经网络输出的第一符号流进行滤波处理,得到第一中间符号。当通信系统中还包括上采样模块时,上采样模块对第一中间符号进行上采样处理,得到第二中间符号,其中,第二中间符号为第一中间符号在采样点后做插零处理得当。再次,发送端中的滤波神经网络对第二中间符号进行滤波处理,得到第一符号流,该滤波神经网络进行的滤波处理包括引入符号间干扰(inter symbol interference,isi)。
[0476]
具体的,滤波神经网络也可以是单层神经网络节点,每个神经网络节点包含权重z,如包含g个神经网络节点,则待训练权重为[z0,z1,

zg-1],z为正整数,g为正整数。该模块与上采样后的时域信号卷积实现滤波处理,等价的,也可以在频域相乘实现滤波处理。
[0477]
可选的,编码神经网络,译码神经网络和滤波神经网络可以是联合训练;也可以在使用预训练模型(如加性白高斯噪音(additive white gaussian nois,awgn)信道下训练的编码神经网络和译码神经网络)初始化,然后单独训练滤波神经网络。
[0478]
本技术实施例中,编码神经网络后增加滤波神经网络,该滤波神经网络在衰落信
道的场景下,与编码神经网络和译码神经网络一并进行端到端的联合训练优化。具体地,滤波神经网络对过采样的编码神经网络映射的符号(第一符号流)进行滤波,从而缓解衰落信道对系统造成的影响,在接收端量化精度较高时,滤波神经网络在训练后可以起到预均衡的效果。但是由于低精度量化带来的信息丢失,滤波神经网络在低精度量化时较难学到预均衡,其更倾向于另一个局部最优解。通过编码神经网络、译码神经网络及滤波设置网络的联合训练优化,使发送端与接收端之间能利用信道的多径干扰,从而区分发送信号。提升了在衰落信道场景下的通信性能。请参阅图23,图23为本技术实施例涉及的又一种仿真实验示意图。图23所示的仿真实验具体指的是接收端采用低精度adc的场景下信道的归一化功率。其中,“现有技术的信道”指的是未采用滤波神经网络的通信系统(例如图16a所示的通信系统)中的信道测量结果;“本方案的信道”指的是采用滤波神经网络的通信系统(例如图22所示的通信系统)中的信道测量结果。由图23可知,采用滤波神经网络的通信系统,在低量化精度adc的场景下没有得到预均衡的效果,因此更倾向于另一个局部最优解。符合前述技术效果论述。请参阅图24,图24为本技术实施例涉及的又一种仿真实验示意图。相较于未使用编码神经网络的方案(例如:图16a所示的通信系统),使用编码神经网络的方案的误块率(block error rate,bler)下降幅度大。使用编码神经网络的方案的误块率性能有大幅度提升。
[0479]
需要说明的是,前述实施例中涉及的各种模块和器件,例如:第一模块、上采样模块、第一滤波器、第二滤波器,或模数转换器等。既可以是由处理器实现相关功能,也可以是独立实现的元器件,此处不做限定。
[0480]
上述主要以方法的角度对本技术实施例提供的方案进行了介绍。可以理解的是,通信装置为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,本技术能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0481]
本技术实施例可以根据上述方法示例对通信装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本技术实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
[0482]
下面对本技术中的通信装置进行详细描述,请参阅图25,图25为本技术实施例中通信装置的一种实施例示意图。通信装置2500可以部署于网络设备或终端设备中,通信装置2500包括:
[0483]
收发模块2501,用于获取第一数据流;
[0484]
处理模块2502,用于使用编码神经网络对第一数据流进行处理,得到第一符号流,编码神经网络包括:第一神经网络,第一神经网络复用部分或全部的译码神经网络,和/或部分或全部的译码神经网络的参数;
[0485]
收发模块2501,还用于输出第一符号流。
[0486]
在本技术的一些可选实施例中,
[0487]
收发模块2501,还用于接收第一权重,其中,第一权重来自译码神经网络,第一权重用于训练第一神经网络。
[0488]
在本技术的一些可选实施例中,
[0489]
收发模块2501,还用于接收第一梯度,其中,第一梯度来自译码神经网络,第一梯度用于训练第一神经网络。
[0490]
在本技术的一些可选实施例中,
[0491]
收发模块2501,还用于接收第二函数,其中,第二函数来自译码神经网络,第二函数为损失函数和/或奖励函数;
[0492]
收发模块2501,还用于使用编码神经网络对第二函数进行处理,得到第二梯度,第二梯度用于训练编码神经网络。
[0493]
在本技术的一些可选实施例中,
[0494]
处理模块2502,具体用于对第一符号流进行滤波处理,得到第一波形信号,其中,第一波形信号中滤除带外信号;
[0495]
收发模块2501,具体用于输出第一波形信号。
[0496]
在本技术的一些可选实施例中,
[0497]
处理模块2502,具体用于对第一数据流进行编码处理,得到第一信道编码码字;
[0498]
处理模块2502,具体用于使用编码神经网络对第一信道编码码字进行处理,得到第一符号流。
[0499]
在本技术的一些可选实施例中,
[0500]
处理模块2502,具体用于使用编码神经网络对第一信道编码码字进行处理,得到第一中间符号;
[0501]
处理模块2502,具体用于使用滤波神经网络对第一中间符号进行滤波处理,得到第一符号流,其中,第一符号流中引入符号间干扰。
[0502]
在本技术的一些可选实施例中,
[0503]
处理模块2502,具体用于对第一中间符号进行上采样处理,得到第二中间符号;
[0504]
处理模块2502,具体用于使用滤波神经网络对第二中间符号进行滤波处理,得到第一符号流。
[0505]
在一种可能的实现方式中,收发模块2501用于执行图8对应的实施例中的步骤801、步骤803和步骤806。
[0506]
在一种可能的实现方式中,处理模块2502用于执行图8对应的实施例中的步骤802和步骤807。
[0507]
在一种可能的实现方式中,收发模块2501用于执行图15对应的实施例中的步骤1501和步骤1505。
[0508]
在一种可能的实现方式中,处理模块2502用于执行图15对应的实施例中的步骤1502、步骤1503和步骤1504。
[0509]
请参阅图26,图26为本技术实施例中通信装置的一种实施例示意图。通信装置2600可以部署于网络设备或终端设备中,通信装置2600包括:
[0510]
收发模块2601,用于获取第一数据流;
[0511]
收发模块2601,还用于接收第一符号流,第一符号流来自发送端,其中,第一符号流由发送端使用编码神经网络对第一数据流进行处理得到,编码神经网络包括:第一神经网络,第一神经网络复用部分或全部的译码神经网络,和/或部分或全部的译码神经网络的参数;
[0512]
处理模块2602,用于使用译码神经网络对第一符号流进行处理,得到第二数据流;
[0513]
处理模块2602,还用于根据第一数据流和第二数据流,训练译码神经网络。
[0514]
在本技术的一些可选实施例中,
[0515]
处理模块2602,具体用于使用译码神经网络,对第一数据流和第二数据流进行处理,得到第一函数,其中,第一函数为损失函数和/或奖励函数;
[0516]
处理模块2602,具体用于使用译码神经网络,对第一函数进行处理,得到第一梯度;
[0517]
处理模块2602,具体用于使用第一梯度训练译码神经网络。
[0518]
在本技术的一些可选实施例中,
[0519]
收发模块2601,还用于向发送端发送第一梯度,第一梯度用于训练编码神经网络中的第一神经网络。
[0520]
在本技术的一些可选实施例中,
[0521]
处理模块2602,还用于使用译码神经网络,生成第一权重,其中,第一权重为译码神经网络的权重;
[0522]
处理模块2602,还用于向发送端发送第一权重,第一权重用于训练编码神经网络中的第一神经网络。
[0523]
在本技术的一些可选实施例中,
[0524]
处理模块2602,还用于使用译码神经网络,对第一数据流和第二数据流进行处理,得到第二函数,其中,第二函数为损失函数和/或奖励函数;
[0525]
收发模块2601,还用于向发送端发送第二函数,第二函数用于训练编码神经网络。
[0526]
在本技术的一些可选实施例中,
[0527]
收发模块2601,具体用于接收第一波形信号,第一波形信号由发送端对第一符号流进行滤波处理得到;
[0528]
处理模块2602,具体用于对第一波形信号进行量化处理,得到量化符号序列,其中,一组第一数据流映射至一个或多个量化符号序列,量化符号序列中每个符号内至多存在一次比特位翻转,比特位翻转为0至1或1至0;
[0529]
处理模块2602,具体用于使用译码神经网络对量化符号序列中的第一序列进行处理,得到第二数据流。
[0530]
在本技术的一些可选实施例中,
[0531]
收发模块2601,具体用于接收受到第一信道干扰的第一波形信号,其中,第一信道为接收端与发送端之间的信道;
[0532]
处理模块2602,具体用于对受到第一信道干扰的第一波形信号进行量化处理,得到量化符号序列。
[0533]
在本技术的一些可选实施例中,
[0534]
处理模块2602,具体用于使用译码神经网络对第一波形信号进行处理,得到第一
信道译码码字或对数似然比;
[0535]
处理模块2602,具体用于对第一信道译码码字或对数似然比进行处理,得到第二数据流。
[0536]
在本技术的一些可选实施例中,
[0537]
处理模块2602,具体用于对第一波形信号进行量化处理,得到量化符号序列;
[0538]
处理模块2602,具体用于使用译码神经网络对量化符号序列中的第一序列进行处理,得到第一信道译码码字或对数似然比。
[0539]
在本技术的一些可选实施例中,
[0540]
处理模块2602,具体用于当第一符号流包括x组符号组,每组符号组包括n个符号,第一波形信号包括x组符号组,x为大于或等于1的正整数,n为大于或等于1的正整数;
[0541]
处理模块2602对第一波形信号中n个符号进行量化处理,得到量化符号序列,量化符号序列的长度为nm,量化符号序列中第一序列的长度为[(n-1)m 1,nm],其中,m为接收端的过采样倍率。
[0542]
在本技术的一些可选实施例中,
[0543]
处理模块2602,具体用于对第一波形信号进行滤波处理,得到第二波形信号;
[0544]
处理模块2602,具体用于对第二波形信号进行量化处理,得到量化符号序列。
[0545]
在一种可能的实现方式中,收发模块2601用于执行图8对应的实施例中的步骤803和步骤806。
[0546]
在一种可能的实现方式中,处理模块2602用于执行图8对应的实施例中的步骤804和步骤805。
[0547]
在一种可能的实现方式中,收发模块2601用于执行图15对应的实施例中的步骤1505。
[0548]
在一种可能的实现方式中,处理模块2602用于执行图15对应的实施例中的步骤1506、步骤1507、步骤1508和步骤1509。
[0549]
需要说明的是,通信装置2500/通信装置2600中各模块/或元器件之间的信息交互、执行过程等内容,与本技术中图8-图24对应的方法实施例基于同一构思,具体内容可参见本技术前述所示的方法实施例中的叙述,此处不再赘述。
[0550]
需要说明的是,对于通信装置2500/通信装置2600的具体实现方式以及带来的有益效果,均可以参考图8-图24对应的各个方法实施例中的叙述,此处不再一一赘述。
[0551]
上述实施例中的通信装置,可以是网络设备,也可以是应用于网络设备中的芯片或者其他可实现上述网络设备功能的组合器件、部件等。当通信装置是网络设备时,收发模块可以是收发器,该收发器可以包括天线和射频电路等,处理模块可以是处理器,例如基带芯片等。当通信装置是具有上述网络设备功能的部件时,收发模块可以是射频单元,处理模块可以是处理器。当通信装置是芯片系统时,收发模块可以是芯片系统的输入端口,收发模块可以是芯片系统的输出接口、处理模块可以是芯片系统的处理器,例如:中央处理器(central processing unit,cpu)和/或神经网络处理器(neural processing unit,npu)。
[0552]
上述实施例中的通信装置,可以是终端设备,也可以是应用于终端设备中的芯片或者其他可实现上述终端设备功能的组合器件、部件等。当通信装置是终端设备时,收发模块可以是收发器,该收发器可以包括天线和射频电路等,处理模块可以是处理器,例如基带
芯片等。当通信装置是具有上述终端设备功能的部件时,收发模块可以是射频单元,处理模块可以是处理器。当通信装置是芯片系统时,收发模块可以是芯片系统的输入端口,收发模块可以是芯片系统的输出接口、处理模块可以是芯片系统的处理器,例如:中央处理器(central processing unit,cpu)和/或神经网络处理器(neural processing unit,npu)。
[0553]
在本技术实施例中,该通信装置所包括的存储器主要用于存储软件程序和数据,例如存储上述实施例中所描述的第一数据流或第一梯度等。该通信装置还具有以下功能:
[0554]
收发器,用于获取第一数据流;
[0555]
处理器,用于使用编码神经网络对第一数据流进行处理,得到第一符号流,编码神经网络包括:第一神经网络,第一神经网络复用部分或全部的译码神经网络,和/或部分或全部的译码神经网络的参数;
[0556]
收发器,还用于输出第一符号流。
[0557]
在本技术的一些可选实施例中,
[0558]
收发器,还用于接收第一权重,其中,第一权重来自译码神经网络,第一权重用于训练第一神经网络。
[0559]
在本技术的一些可选实施例中,
[0560]
收发器,还用于接收第一梯度,其中,第一梯度来自译码神经网络,第一梯度用于训练第一神经网络。
[0561]
在本技术的一些可选实施例中,
[0562]
收发器,还用于接收第二函数,其中,第二函数来自译码神经网络,第二函数为损失函数和/或奖励函数;
[0563]
收发器,还用于使用编码神经网络对第二函数进行处理,得到第二梯度,第二梯度用于训练编码神经网络。
[0564]
在本技术的一些可选实施例中,
[0565]
处理器,具体用于对第一符号流进行滤波处理,得到第一波形信号,其中,第一波形信号中滤除带外信号;
[0566]
收发器,具体用于输出第一波形信号。
[0567]
在本技术的一些可选实施例中,
[0568]
处理器,具体用于对第一数据流进行编码处理,得到第一信道编码码字;
[0569]
处理器,具体用于使用编码神经网络对第一信道编码码字进行处理,得到第一符号流。
[0570]
在本技术的一些可选实施例中,
[0571]
处理器,具体用于使用编码神经网络对第一信道编码码字进行处理,得到第一中间符号;
[0572]
处理器,具体用于使用滤波神经网络对第一中间符号进行滤波处理,得到第一符号流,其中,第一符号流中引入符号间干扰。
[0573]
在本技术的一些可选实施例中,
[0574]
处理器,具体用于对第一中间符号进行上采样处理,得到第二中间符号;
[0575]
处理器,具体用于使用滤波神经网络对第二中间符号进行滤波处理,得到第一符号流。
[0576]
该通信装置还具有以下功能:
[0577]
收发器,用于获取第一数据流;
[0578]
收发器,还用于接收第一符号流,第一符号流来自发送端,其中,第一符号流由发送端使用编码神经网络对第一数据流进行处理得到,编码神经网络包括:第一神经网络,第一神经网络复用部分或全部的译码神经网络,和/或部分或全部的译码神经网络的参数;
[0579]
处理器,用于使用译码神经网络对第一符号流进行处理,得到第二数据流;
[0580]
处理器,还用于根据第一数据流和第二数据流,训练译码神经网络。
[0581]
在本技术的一些可选实施例中,
[0582]
处理器,具体用于使用译码神经网络,对第一数据流和第二数据流进行处理,得到第一函数,其中,第一函数为损失函数和/或奖励函数;
[0583]
处理器,具体用于使用译码神经网络,对第一函数进行处理,得到第一梯度;
[0584]
处理器,具体用于使用第一梯度训练译码神经网络。
[0585]
在本技术的一些可选实施例中,
[0586]
收发器,还用于向发送端发送第一梯度,第一梯度用于训练编码神经网络中的第一神经网络。
[0587]
在本技术的一些可选实施例中,
[0588]
处理器,还用于使用译码神经网络,生成第一权重,其中,第一权重为译码神经网络的权重;
[0589]
处理器,还用于向发送端发送第一权重,第一权重用于训练编码神经网络中的第一神经网络。
[0590]
在本技术的一些可选实施例中,
[0591]
处理器,还用于使用译码神经网络,对第一数据流和第二数据流进行处理,得到第二函数,其中,第二函数为损失函数和/或奖励函数;
[0592]
收发器,还用于向发送端发送第二函数,第二函数用于训练编码神经网络。
[0593]
在本技术的一些可选实施例中,
[0594]
收发器,具体用于接收第一波形信号,第一波形信号由发送端对第一符号流进行滤波处理得到;
[0595]
处理器,具体用于对第一波形信号进行量化处理,得到量化符号序列,其中,一组第一数据流映射至一个或多个量化符号序列,量化符号序列中每个符号内至多存在一次比特位翻转,比特位翻转为0至1或1至0;
[0596]
处理器,具体用于使用译码神经网络对量化符号序列中的第一序列进行处理,得到第二数据流。
[0597]
在本技术的一些可选实施例中,
[0598]
收发器,具体用于接收受到第一信道干扰的第一波形信号,其中,第一信道为接收端与发送端之间的信道;
[0599]
处理器,具体用于对受到第一信道干扰的第一波形信号进行量化处理,得到量化符号序列。
[0600]
在本技术的一些可选实施例中,
[0601]
处理器,具体用于使用译码神经网络对第一波形信号进行处理,得到第一信道译
码码字或对数似然比;
[0602]
处理器,具体用于对第一信道译码码字或对数似然比进行处理,得到第二数据流。
[0603]
在本技术的一些可选实施例中,
[0604]
处理器,具体用于对第一波形信号进行量化处理,得到量化符号序列;
[0605]
处理器,具体用于使用译码神经网络对量化符号序列中的第一序列进行处理,得到第一信道译码码字或对数似然比。
[0606]
在本技术的一些可选实施例中,
[0607]
处理器,具体用于当第一符号流包括x组符号组,每组符号组包括n个符号,第一波形信号包括x组符号组,x为大于或等于1的正整数,n为大于或等于1的正整数;
[0608]
处理器对第一波形信号中n个符号进行量化处理,得到量化符号序列,量化符号序列的长度为nm,量化符号序列中第一序列的长度为[(n-1)m 1,nm],其中,m为接收端的过采样倍率。
[0609]
在本技术的一些可选实施例中,
[0610]
处理器,具体用于对第一波形信号进行滤波处理,得到第二波形信号;
[0611]
处理器,具体用于对第二波形信号进行量化处理,得到量化符号序列。
[0612]
应理解,上述处理装置可以是一个芯片,该处理器可以通过硬件实现也可以通过软件来实现,当通过硬件实现时,该处理器可以是逻辑电路、集成电路等;当通过软件来实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现,该存储器可以集成在处理器中,可以位于该处理器之外,独立存在。
[0613]
其中,“通过硬件实现”是指通过不具有程序指令处理功能的硬件处理电路来实现上述模块或者单元的功能,该硬件处理电路可以通过分立的硬件元器件组成,也可以是集成电路。为了减少功耗、降低尺寸,通常会采用集成电路的形式来实现。硬件处理电路可以包括asic(application-specific integrated circuit,专用集成电路),或者pld(programmable logic device,可编程逻辑器件);其中,pld又可包括fpga(field programmable gate array,现场可编程门阵列)、cpld(complex programmable logic device,复杂可编程逻辑器件)等等。这些硬件处理电路可以是单独封装的一块半导体芯片(如封装成一个asic);也可以跟其他电路(如cpu、dsp)集成在一起后封装成一个半导体芯片,例如,可以在一个硅基上形成多种硬件电路以及cpu,并单独封装成一个芯片,这种芯片也称为soc,或者也可以在硅基上形成用于实现fpga功能的电路以及cpu,并单独封闭成一个芯片,这种芯片也称为sopc(system on a programmable chip,可编程片上系统)。
[0614]
本技术还提供一种通信系统,其包括网络设备和终端设备。
[0615]
本技术实施例还提供的一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机控制通信装置执行如前述方法实施例所示任一项实现方式。
[0616]
本技术实施例还提供的一种计算机程序产品,计算机程序产品包括计算机程序代码,当计算机程序代码在计算机上运行时,使得计算机执行如前述方法实施例所示任一项实现方式。
[0617]
本技术实施例还提供一种芯片系统,包括存储器和处理器,存储器用于存储计算机程序,处理器用于从存储器中调用并运行计算机程序,使得芯片执行如前述方法实施例所示任一项实现方式。
[0618]
本技术实施例还提供一种芯片系统,包括处理器,处理器用于调用并运行计算机程序,使得芯片执行如前述方法实施例所示任一项实现方式。
[0619]
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本技术提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。
[0620]
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本技术可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用cpu、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本技术而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、u盘、移动硬盘、rom、ram、磁碟或者光盘等,包括若干指令用以使得一台计算机设备执行本技术各个实施例所述的方法。
[0621]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
[0622]
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、通信装置、计算设备或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、通信装置、计算设备或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的通信装置、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘(solid state disk,ssd))等。
[0623]
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本技术的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本技术的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
[0624]
另外,本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
[0625]
应理解,在本技术实施例中,“与a相应的b”表示b与a相关联,根据a可以确定b。但还应理解,根据a确定b并不意味着仅仅根据a确定b,还可以根据a和/或其它信息确定b。
[0626]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0627]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0628]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0629]
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0630]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0631]
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例方法的全部或部分步骤。
[0632]
总之,以上所述仅为本技术技术方案的较佳实施例而已,并非用于限定本技术的保护范围。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献