发明内容
针对现有技术存在的问题,本发明实施例提供一种基于人工智能的无线通信系统。
第一方面,本发明实施例提供一种基于人工智能的通信系统实现方法,包括:
将原有通信系统所包括的多个功能模块划分为可学习模块组和不可学习模块组;其中,所述可学习模块组包括可学习的功能模块,不可学习模块组包括不可学习的功能模块;
针对所述可学习模块组中包括的各可学习的功能模块,进行人工智能算法拟合的选择,根据需要进行实际或仿真进行训练数据的获取,以获得训练好的拟合预测模型;
将训练好的拟合预测模型进行结构与数据转换,与所述不可学习模块组包括的不可学习的功能模块一起组成新的无线通信系统。
进一步地,所述将原有通信系统所包括的多个功能模块划分为可学习模块组和不可学习模块组,包括:
根据所述原有通信系统的功能模块进行划分,将所解决的问题为有界问题的功能模块与所解决的问题为无界问题的功能模块进行隔离;并保持所述不可学习模块组包括的不可学习的功能模块不变。
进一步地,所述针对所述可学习模块组中包括的各可学习的功能模块,进行人工智能算法拟合的选择,根据需要进行实际或仿真进行训练数据的获取,以获得训练好的拟合预测模型,包括:
针对所述可学习模块组中包括的各可学习的功能模块,选择对应的神经网络,确定层数和节点数;
仿真产生或实际捕获训练数据;
进行训练得到拟合参数,以获得训练好的拟合预测模型。
进一步地,所述将训练好的拟合预测模型进行结构与数据转换,与所述不可学习模块组包括的不可学习的功能模块一起组成新的无线通信系统,包括:
当所述神经网络确定之后,删除冗余神经元;
对所述神经网络的判决过程进行浮定点仿真,得出神经元数值的定点表示及每次乘加操作后的定点表示;
将所述神经网络的判决流程转换为串行计算结构;
根据所述原有通信系统的基带速率,在FPGA中将乘法操作进行并行,以将所述神经网络计算延时控制在系统允许范围之内。
进一步地,所述将所述神经网络的判决流程转换为串行计算结构,包括:
将矩阵乘、向量加、卷积和取绝对值的计算操作以顺序进行排放。
第二方面,本发明实施例提供一种通信系统,包括发射机和接收机,所述发射机包括载波调制单元、上变频单元以及编码器,所述接收机包括下变频单元、同步单元、载波调制单元、信道估计单元、频偏估计单元以及解码器,其特征在于,所述编码器和所述解码器均为第一方面提供的方法中所述的可学习的功能模块,由神经网络构建而成。
本发明实施例提供的基于人工智能的无线通信系统,提供了一个完整的新型通信系统的实现流程,在实际无线通信系统的基础上以人工智能算法替代了传统基带信号处理算法,打破了长期以来通信系统的设计框架。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提出将深度学习端到端的学习方法应用于通信系统设计中,将收发机进行联合训练,其优势包括:
1、以单模型替代模块化设计方案,以联合优化的方式取得全局最优解,取得比传统设计方法求解局部最优更好的传输性能;
2、传统通信系统设计方法并不考虑硬件实现中的非理想因素,由于深度学习端到端的学习方法可以在硬件平台中执行,通过神经网络的学习能力可以补偿硬件实现过程中的非线性因素,在硬件上取得更好的性能;
3、传统通信系统需要以数学模型对信道进行建模,难以准确描述复杂信道,而使用深度学习方法可以学习任意复杂信道的特征。
在以上原因的推动下,近年来有学者将深度学习方法引入到通信系统训练中,提出自编码器(Autoencoder)结构,在信道已知的条件下,使用神经网络描述收发机结构,以误码率为损失函数进行联合优化,取得了与传统通信算法相近的性能。
基于以上的理论研究成果,在通信系统硬件平台上应用深度学习端到端学习方法具备一定的可行性,本硬件平台为验证自编码器网络的最新成果,并探索深度学习方法与传统通信系统设计方法的性能对比而建立。
图1为本发明实施例提供的基于人工智能的通信系统实现方法的流程示意图,如图1所示,该方法包括如下步骤:
步骤100、将原有通信系统所包括的多个功能模块划分为可学习模块组和不可学习模块组;其中,所述可学习模块组包括可学习的功能模块,不可学习模块组包括不可学习的功能模块;
本发明实施例对原有通信系统进行模型抽象,根据使用模块进行可学习部分与不可学习部分的划分,可以包括:根据所述原有通信系统的功能模块进行划分,将所解决的问题为有界问题的功能模块与所解决的问题为无界问题的功能模块进行隔离;并保持所述不可学习模块组包括的不可学习的功能模块不变。
具体地,根据通信系统的模块进行划分,如信源编码,信道编码,映射,载波调制,真空传输,同步,载波解调,信道估计,信道均衡,解映射,信道解码,信源解码等。然后对这些互逆的模块进行功能分析,将所解决的问题为“有界”问题的模块与“无界”问题的模块进行隔离。对于发射机而言,在无反馈的点对点通信系统中,发射机所完成的所有信号处理工作都是查表的映射方法,所以,可以将发射机数字基带部分的所有操作都视为有界的。比如,符号的映射,当符号对应的比特数确定之后,只需要用查表映射的方法完成即可,再者看待信道编码,如7-4汉明码与卷积码,7-4汉明码是矩阵乘法,卷积码则如其名,以卷积操作完成编码,故这些方法都划分为有界模块。而接收机当中的信道估计与信道均衡模块,虽然同样是矩阵的乘法,但是矩阵的元素与信道的状态息息相关,无法在一个有限的时间内获取无限的信道状态,所以这个模块是无界的。
对于“无界”问题本发明实施例保留原有无线通信系统方法,而对于有界问题本发明实施例采用人工智能的方法进行处理。其原因在于人工智能方法所能够模拟的是一个准确的分布,或者一个能够用数值约束范围的情况,所以本发明实施例无法对无界的模块运用人工智能的方式进行代替,而相反,有界的情况,本发明实施例可以使用神经网络的概率度量使得这个界能够分布在0.5-1的概率之间,此时这种输出的区间正好对应了模块的有限界底与顶的中间区域。
步骤101、针对所述可学习模块组中包括的各可学习的功能模块,进行人工智能算法拟合的选择,根据需要进行实际或仿真进行训练数据的获取,以获得训练好的拟合预测模型;
对可学习部分进行人工智能算法拟合的选择,根据需要进行实际或仿真进行训练数据的获取可以包括:针对所述可学习模块组中包括的各可学习的功能模块,选择对应的神经网络,确定层数和节点数;仿真产生或实际捕获训练数据;进行训练得到拟合参数,以获得训练好的拟合预测模型。
具体地,对上一步抽离出的可学习部分选择适当的神经网络模型,确定层数和节点数;可学习的模型建立的时候是按照映射的方式产生的,对于这些模块的输入,有的是以存在离散输入的有限组合形式,比如信道编码,比如星座映射,输入的形式只会是有限的离散点集,像这种模式线性模型就能够进行拟合,然而对于这些有界模块的对应模块,比如信道解码,星座解映射,它们的输入是经过干扰的,分布在有界区间上的点集,所以这种界限正好与网络概率分布所对应。然而,神经网络形式多种多样,分别对应着不同的数据分布情况,比如独立分布则全连接方式进行单样本串行处理即可,若对于具有相关性的样本点本发明实施例可以采用RNN及其变种结构进行拟合。然后层数和节点数的选择是一个多方面的因素,需要从硬件资源,仿真的误码率进行综合考虑。
进一步地,对建立的网络模拟产生或在实际硬件上捕获训练数据。本发明实施例的整体系统训练的参数可以从两个方面获得,最简单的方式就是通过分布的函数表示进行数据拟合产生,然而,这种方式并不能模拟出所有经过空间传输所带来的畸变,因为信道与无界模块所带来的影响除了加性的部分,还有衰减因子,比如信道均衡后,噪声被放大,星座点被小量衰减或放大,这需要经过空域采样才能够得到,函数无法准确表示这一过程。所以,本发明实施例需要根据网络在整个系统中的位置来进行数据来源的选择。
最后,进行训练得到拟合参数。这一步是综合性的步骤,需要确定一个优化目标,通过优化目标定义损失函数,然后使用梯度优化的方法对网络参数进行迭代,最终得到了仿真层面上的最优解。
步骤102、将训练好的拟合预测模型进行结构与数据转换,与所述不可学习模块组包括的不可学习的功能模块一起组成新的无线通信系统。
所述为了实现硬件兼容,将训练完成的拟合预测模型进行结构与数据转换,从而使新建系统保持原有通信系统的高速率特性可以包括:当所述神经网络确定之后,删除冗余神经元;对所述神经网络的判决过程进行浮定点仿真,得出神经元数值的定点表示及每次乘加操作后的定点表示;将所述神经网络的判决流程转换为串行计算结构;根据所述原有通信系统的基带速率,在FPGA中将乘法操作进行并行,以将所述神经网络计算延时控制在系统允许范围之内。
具体地,当神经网络确定之后删除冗余神经元;这一步在神经网络的硬件实现上是关键步骤,研究显示,网络层数越深,神经元个数越大,冗余的神经元也越多,这时候本发明实施例可以选择适当地舍去部分神经元,以最终地度量函数为标准进行损失度量,自此得到了一条曲线,然后定义一个阈值,阈值内本发明实施例可以根据资源以及性能的折中进行神经元的舍去,使得最终系统的表示尽可能精简。
接着,对神经网络的判决过程进行浮定点仿真,得出神经元数值的定点表示及每次乘加操作后的定点表示;在PC端本发明实施例使用浮点数的方式进行运算,乘除法的运算定义也比较成熟,然而CPU在处理计算任务时无法保证高效的运算,这是因为在核上运行的任务是经过操作系统调度的,所以如若需要保证网络的运算符合通信系统的基带速率,本发明实施例需要保证网络所进行的任务稳定持续地占据处理器,所以FPGA是一个最佳的任务载体。然而FPGA中数据表示是通过二进制的方式,故此处本发明实施例需要将PC机构建的浮点数运算系统转化为FPGA支持的定点运算系统。
然后,将神经网络的判决流程转换为串行计算结构,如将矩阵乘,向量加,卷积,取绝对值这些计算操作以顺序进行排放;同样,这是硬件实现的重要一环,FPGA的运算法则与CPU不同,CPU强调的是数据的批处理能力,而FPGA强调的是数据的流式处理能力,这就要求本发明实施例将原先系统框架里的循环,成批操作等转化为单点的顺序操作。
最后,参照原有无线通信系统的基带速率,在FPGA中对资源进行规划,特别是乘法操作进行适当地并行,然后将神经网络计算延时控制在系统允许范围之内。FPGA的资源在此处可以表示为四大类,分别为内存,寄存器,DSP,查找表,然而,此处本发明实施例需要特别关注的式DSP以及查找表,这是因为只定义了加减运算的FPGA需要消耗大量的上述资源实现乘法操作。然而,神经网络就是依靠着大量的乘法操作实现其模拟功能,所以此处本发明实施例需要对FPGA的资源进行整合,然后考虑所构建的网络最大的乘法并行度,并且以较为复杂的连线网络对乘法资源进行复用,最终将新构建的复杂乘法运算系统满足在单点处理速率等于基带速率的条件下。
本发明实施例提供的基于人工智能的通信系统实现方法,属于无线通信技术领域,记录了一个完整的新型通信系统的实现流程,该系统的独特之处在于,在实际无线通信系统上以人工智能算法替代了传统基带信号处理算法,打破了长期以来通信系统的设计框架。考虑到真实系统实现时的资源限制,本发明实施例在深度学习模型的建立上,试图将原先的通信系统分割为可学习部分与不可学习部分,对不可学习部分本发明实施例采用传统通信系统上的框架,而在可学习部分本发明实施例使用神经网络结构进行替代。本发明实施例主要提出了一种新型通信系统的建模与实现流程,并且在系统设计上进行整体优化,从模块化设计的局部最优解变为全局最优解。
本发明另一实施例基于人工智能通信系统实现方法具体包括:
步骤一,将原先通信系统的互逆模块进行划分,对模块操作数据为有界条件时,将这些对称模块纳入可学习部分,其它部分则纳入不可学习部分。对于可学习的有界条件,给出的对应定义是通信系统模块所处理的数字信号变化的宽度能够被完全感知。然后可学习部分若在原先通信系统的模块中是相邻关系,那么这些可学习部分就能够合并为一个神经网络,或者是共用一个人工智能模型。
经过上述的划分之后得到了一个发射机与接收机联合构成的抽象模型,该模型由人工智能的拟合模型与传统通信中的数值模型级联而成。
步骤二,对所抽象出的可学习部分进行分析,若模块所对应的变化界限能够被仿真的数值所覆盖,那就使用离线的方式来产生数据点,如果变化的界限不能使用函数关系很准确地表达,那本发明实施例使用射频端提取的实时数据进行在线的训练。在训练的时候为了保证系统设计的完整性,本发明实施例将新增加的神经网络模型与传统通信系统中被保留的模块同时构建在了网络参数训练的过程中,信道的影响我们同样建模为了一层由神经元构成的网络,通过这样整体架构的方法,本发明实施例从原先的通信系统的局部最优解的叠加形式转换到了整个系统的最优形式。
其中的步骤最重要的是构建神经网络算法的模型,在众多的模型库中我们的选择标准以及最终网络的结构受到多方面的影响,有时并非以性能最优为唯一的衡量标准,这是因为该专利最终的目标是将系统嵌入高速的通信系统中,所以本发明实施例还受到了实现时速率稳定性的限制,这就要求从硬件的处理能力,资源限制,以及误码率三个层面来考虑系统的架构选择和优化目标。
所以,在构建神经网络之前,本发明实施例先要明确所使用的硬件能够提供多少的运算资源,然后再进行网络结构布局。在此处需要明确资源如何确定,神经网络中的算法以乘法为基础进行扩展运算,所以本发明实施例尤为关注乘法资源。硬件中实现乘法有DSP,LUT这两种方式,当本发明实施例的数据速率与系统所运行的速率存在倍数差别时,便可以在此时钟驱动的信号处理流程中复用这些乘法资源,这也是实现时的关键方法。当确认了资源数量之后,网络中神经元的界也确定了,剩下的就是利用已确立的网络运算处理逻辑(全连接,卷积等)建立大小适中的神经网络,网络的大小可以根据最终的性能进行调整。
依靠上述的步骤,本发明实施例可以在仿真上构建一个由发射端的部分传统结构,神经网络,模拟信道,接收端的部分传统结构组成的一个完整的系统。接下来,就需要把该系统嵌入实际的通信系统中。
步骤三,仿真系统嵌入真实通信系统,最终得到一个能够维持原速率的稳定系统。此步骤是从理论到实现关键的一步,所有软件层级的语言都需要转化为硬件描述语言。首先在构建算法结构时,本发明实施例需要将CPU的浮点运算转化为FPGA的定点运算,转换的过程需要对每个独立运算块构建,以信噪比为50dB的标准进行衡量,这样可以保证资源得到节约。转换定点系统完成后,接下来的任务就是区分计算架构为发射端与接收端,此处区分的准则只有一个,建立在信道模拟层前的网络为发射机的结构,而建立在信道模拟层后的网络为接收机结构。
本发明实施例还提供一种通信系统,包括发射机和接收机,所述发射机包括载波调制单元、上变频单元以及编码器,所述接收机包括下变频单元、同步单元、载波调制单元、信道估计单元、频偏估计单元以及解码器。其中,所述编码器和所述解码器均为上述各方法实施例中所述的可学习的功能模块,由神经网络构建而成。一个理想的架构体现为,发射端:神经网络+载波调制,接收端:同步,载波解调,信道估计,频偏估计,神经网络。
本发明实施例的优点及积极效果为:从理论架构上,改变了往常确定性的数值的模块处理方式,打破了传统的通信系统信号处理的方法。
从建立形式上,运用了当前神经网络的热点,从概率的方式来建立确定性系统,并且保证在满足输入一个界限时,概率的表示能够在性能上等价甚至优于传统得通信系统。
从实际的拟合环境上看,这种方法综合考虑了信道,硬件等多方面无法精确建模的干扰,用神经网络自学习的方式进行补偿那些传统通信系统中所忽略的影响,最终得到一个理论上最优的仿真模型。
从系统的优化层面,本发明实施例从原先的分离最优的模块组合变成了全局的优化,最终在输入与输出端的流式处理上建立了最优参数解,性能从理论上与仿真结果上得到了提升。
从现实意义上看,本发明实施例在建立仿真系统的同时考虑了硬件资源的限制,所以在性能以及资源两方面取了一个折中方案,在发射功率保证传输稳定的情况条件下,这种全新的架构方式能够投入正式使用。
图2是本发明实施例进行的有界模块与无界模块的划分示意图,图3是本发明实施例基于人工智能通信系统实现方法的网络替代图,图4是本发明实施例基于人工智能通信系统实现方法的硬件发射机与接收机分割图,如图2、图3和图4所示:
对通信系统的分类定义:
本发明实施例首先对传统通信系统进行结构分类,归纳为有界模块以及无界模块。以现有LTE 4G的OFDM通信系统为例,如图2所示,原有通信模块被划分成了有界与无界部分,有界的模块我们使用虚线框圈出。
选择网络结构,确立层数与神经元个数,选择训练数据的来源:
首先虚线框表示的部分本质上属于一种编码结构,而这种编码的结构在输入上是有限的离散点集,并且要求了输入是独立的情况,所以此处选择全连接的神经网络,然后根据硬件的资源限制本发明实施例选定了7层的网络层数,然后每层行列数为16。然后由于信道均衡的效果,本发明实施例可以近似等价信道是加性高斯的,故训练的数据可以用函数模拟的方式产生。
嵌入硬件系统,在传统通信系统上运行,实现稳定传输:
对网络的参数进行训练数据的浮定点系统仿真,将批量运算的网络运算系统转换成流式处理的硬件语言系统,然后调整硬件中新加入模块的计算时钟周期,对于多余的周期用延时单元进行填充,同理,对于缺少的周期,减少前后的延时单元个数,最终达到完美嵌入的效果。
最终通过以上方式,本发明实施例能够实现所需的人工智能通信系统。
以上所描述的系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。