CN113316791A - 通信系统中的训练 - Google Patents

通信系统中的训练 Download PDF

Info

Publication number
CN113316791A
CN113316791A CN201980089413.2A CN201980089413A CN113316791A CN 113316791 A CN113316791 A CN 113316791A CN 201980089413 A CN201980089413 A CN 201980089413A CN 113316791 A CN113316791 A CN 113316791A
Authority
CN
China
Prior art keywords
algorithm
population
algorithms
current
updated
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201980089413.2A
Other languages
English (en)
Inventor
F·艾特·奥迪亚
J·霍伊迪斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nokia Technologies Oy
Original Assignee
Nokia Technologies Oy
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nokia Technologies Oy filed Critical Nokia Technologies Oy
Publication of CN113316791A publication Critical patent/CN113316791A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/086Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Neurology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Physiology (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

描述了一种装置、方法和计算机程序,包括:根据来度量评估当前算法种群的一些或所有算法,该算法种群的每个算法实现传输系统;基于度量选择当前种群中的算法的子集;从所述子集生成更新的算法种群;以及基于更新的种群来重复评估、选择和生成,直至达成第一条件。

Description

通信系统中的训练
技术领域
本说明书涉及在通信系统中的训练。
背景技术
简单的通信系统包括发送器、传输信道以及接收器。这种通信系统的设计可以涉及系统的每个部分的单独设计和优化。备选的方法是将整个通信系统视为单个系统,并且寻求优化整个系统。尽管在现有技术中已经进行了一些尝试,但在该领域仍然存有用于进一步发展的余地。
发明内容
在第一方面中,本说明书描述了一种装置,包括:用于根据度量来评估当前算法种群中的一些或所有算法的部件,该种群的每个算法实现传输系统,其中传输系统包括发送器、信道和接收器,其中发送器包括具有至少一些可训练权重的发送器算法(例如,包括发送器神经网络),并且接收器包括具有至少一些可训练权重的接收器算法(例如,包括接收器神经网络);用于基于度量来选择当前种群的算法的子集的部件;用于从所述子集生成更新的算法种群的部件;以及用于基于更新的种群来重复地评估、选择和生成、直至第一条件被达成的部件。当前算法种群和更新的算法种群中的算法的总数可以是相同的。所述算法种群可以包括神经网络。
一些实施例可以包括用于当所述第一条件被达成时选择所述更新的算法种群中的一个算法的部件。所选择的算法可以是种群中性能最佳的算法(根据某些度量,例如上述度量)。所选择的算法可以被用作实现传输系统的算法。
一些实施例提供了用于生成初始算法种群的部件,以及用于将所述初始种群设置为所述当前种群的第一实例的部件。
用于评估当前算法种群中的一些或所有算法的部件可以包括用于计算所述算法的适应度的部件。所述算法的适应度可以使用损失函数被计算。损失函数可以例如通过让通信系统的每个实例发送大量的已知消息并且计算平均损失而被实现。
用于评估当前算法种群中的一些或所有算法的部件可以包括用于计算所述算法的新颖度的部件。所述算法的新颖度可以通过确定种群中的算法之间的距离而被计算。所述距离可以是行为距离(behaviour distance)。该距离可以从算法的可训练权重、输出或者性能来计算。
用于选择当前种群中的算法的子集的部件可以包括:用于根据所述度量选择种群一个或多个最优算法的部件(例如选择最佳K个选项)。
更新的算法种群可以包括被用于评估当前算法种群中的一些或所有算法的部件评估为最满足所述度量的算法。
用于从所述子集生成更新的算法种群的部件可以包括从算法的子集生成一个或多个新算法。例如,(多个)新算法可以基于演进算子被生成。新生成的算法可以接近现有的(所选择的)算法。例如,现有算法的干扰可以被用于生成新算法。
算法的权重中的至少一些权重可以包括量化的权重,其中所述量化权重仅在具有有限数目的条目的码本内取值。量化的权重可以使用固定点算法来表示。
当所述当前算法种群或者更新的算法种群(例如,通过用于评估当前算法种群中的所述一些或所有算法的部件所评估的)中的性能最佳的一个算法达成根据所述度量的预先定义的性能标准时,所述第一条件可能被满足。备选地,或者附加地,第一条件可以包括所定义的迭代次数。
用于从所述子集生成更新的算法种群的部件可以修改所述当前种群的一个或多个所述算法子集中的一个或多个参数和/或一个或多个结构。
所述装置可以包括:至少一个处理器;以及至少一个存储器,包括计算机程序代码,至少一个存储器和计算机程序被配置为与至少一个处理器一起引起装置的执行。
在第二方面中,本说明书描述了一种方法,该方法包括:根据度量来评估当前算法种群(例如神经网络)中的一些或所有算法,该种群的每一个算法实现传输系统,其中传输系统包括发送器、信道和接收器,其中发送器包括具有至少一些可训练权重的发送器算法(例如,包括发送器神经网络),并且接收器包括具有至少一些可训练权重的接收器算法(例如,包括接收器神经网络);基于度量选择当前种群的算法的子集;从所述子集生成更新的算法种群;以及基于更新的种群重复地评估、选择和生成直至第一条件被达成。当前的和更新后种群中的算法的总数可能是相同的。
该方法可以包括当所述第一条件被达成时选择所述更新的算法种群中的一个算法。所选择的算法可以是种群中的性能最佳的算法(例如,根据上述被提及的度量)。所选择的算法可以被用作实现传输系统的算法。
该方法可以包括生成算法的初始种群,并将所述初始种群设置为所述当前种群的第一实例。
评估当前算法种群中的一些或所有算法可以包括以下至少一项:计算所述算法的适应度以及计算所述算法的新颖度。所述算法的适应度可以使用损失函数而被计算。损失函数可以通过例如让通信系统的每个实例发送大量已知消息并且计算平均损失而被实现。
评估当前算法种群中的一些或所有算法可以包括计算所述算法的新颖度。所述算法的新颖度可以通过确定种群中的算法之间的距离(例如行为距离)而被计算。
选择当前种群的算法子集可以包括根据所述度量选择种群的一个或多个最优算法(例如选择最佳K个选项)。
更新的算法种群可以包括被评估为最满足所述度量的算法。
从所述子集生成更新的算法种群可以包括从算法子集生成一个或多个新算法。例如,(多个)新算法可以基于演进算子被生成。新生成的算法可以接近现有的(所选择的)算法。例如,现有算法的干扰可以被用于生成新算法。
算法的至少一些权重可以是量化的权重,其中所述量化的权重只能在具有有限数目的条目的码本内取值。
当所述当前的或者更新的算法种群中表现最佳的一个达成根据所述度量的预先定义的性能标准时,第一条件可能被满足。备选地,或者附加地,第一条件可以包括所定义的迭代次数。
从所述子集生成更新的算法种群可以包括修改所述当前种群的一个或多个所述算法子集中的一个或多个算法的参数和/或一个或多个结构。
在第三方面中,本说明书描述了被配置为执行如参考第二方面所描述的任何方法的任何装置。
在第四方面中,本说明书描述了计算机可读指令,当计算机可读指令由计算装置执行时,使计算装置执行如参考第二方面所描述的任何方法。
在第五方面中,本说明书描述了一种计算机程序,该计算机程序包括用于使装置至少执行以下操作的指令:根据度量来评估当前算法种群(例如神经网络)中的一些或所有算法,该种群的每一个算法实现传输系统,其中传输系统包括发送器、信道以及接收器,其中发送器包括具有至少一些可训练权重的发送器算法(例如,包括发送器神经网络),并且接收器包括具有至少一些可训练权重的接收器算法(例如,包括接收器神经网络);基于度量选择当前种群的算法的子集;从所述子集生成更新的算法种群;以及基于更新的种群重复评估、选择和生成直至达成第一条件。当前算法种群和更新的算法种群中的算法的总数可以是相同的。
在第六方面中,本说明书描述了一种计算机可读介质(诸如非瞬态计算机可读介质),其包括存储在其上的程序指令,该指令用于至少执行以下操作:根据度量来评估当前算法种群中的一些或所有算法(例如,神经网络),该种群的每一个算法实现传输系统,其中传输系统包括发送器、信道和接收器,其中发送器包括具有至少一些可训练权重的发送器算法(例如,包括发送器神经网络),并且接收器包括具有至少一些可训练权重的接收器算法(例如,包括接收器神经网络);基于度量来选择当前的种群的算法的子集;从所述子集生成更新的算法种群;以及基于更新的种群重复评估、选择和生成,直至达成第一条件。当前的和更新后种群中的算法的总数可以是相同的。
在第七方面中,本说明书描述了一种装置,包括:至少一个处理器;以及至少一个存储器,包括计算机程序代码,当计算机程序代码被至少一个处理器执行时,使该设备:根据度量来评估当前算法种群中的一些或所有算法(例如,神经网络),该种群的每一个算法实现传输系统,其中传输系统包括发送器、信道和接收器,其中发送器包括具有至少一些可训练权重的发送器算法(例如,包括发送器神经网络),并且接收器包括具有至少一些可训练权重的接收器算法(例如,包括接收器神经网络);基于度量选择当前种群的算法的子集;从所述子集生成更新的算法种群;以及基于更新的种群重复评估、选择和生成直至达成第一条件。当前的和更新后种群中的算法的总数可以是相同的。
在第八方面中,本说明书描述了一种装置(诸如控制系统),包括:第一控制模块,用于根据度量来评估当前算法种群中的一些或所有算法,算法种群中的每个算法实现传输系统,其中传输系统包括发送器、信道和接收器,其中发送器包括具有至少一些可训练权重的发送器算法,以及接收器包括具有至少一些可训练权重的接收器算法;第二控制模块,用于基于度量选择当前种群的算法的子集;第三控制模块,用于从所述子集生成更新的算法种群;以及第四控制模块,用于基于更新的种群重复地评估、选择和生成,直至达成第一条件。
附图说明
示例实施例将参考以下示意图,以非限制性示例的方式被描述,其中:
图1是根据示例实施例的通信系统的方框图;
图2是示出根据示例实施例的算法的流程图;
图3是示出根据示例实施例的算法的流程图;
图4是根据示例实施例的系统的方框图;
图5是示出根据示例实施例的算法的流程图;
图6是根据示例实施例的系统的组件的方框图;以及
图7A和图7B示出了有形介质,分别是存储计算机可读代码的可移动存储器单元和光盘(CD),当计算机可读代码由计算机运行时,该有形介质根据实施例执行操作。
具体实施方式
图1是示例通信系统的方框图,该示例通信系统总体上由附图标记1指示,示例实施例可以在其中被实现。系统1包括发送器2、信道3和接收器4。在系统层级看,系统1将在发送器2的输入所接收到的输入符号(s)(也被称为消息)转换为在接收器4的输出的输出符号
Figure BDA0003166872880000061
发送器2实现发送器算法。类似地,接收器4实现接收器算法。如下文所详细描述的,发送器2和接收器4的算法被训练以便整体地优化系统1的性能。
如下文进一步被讨论的,发送器2可以包括一个或多个单元10、11(例如包括一个或多个神经网络)的致密层(dense layer)和标准化模块12。致密层10和11可以包括嵌入模块。发送器2内的模块以示例方式被提供,并且修改是可能的。
类似地,接收器4可以包括一个或多个单元14、15(例如,包括一个或多个神经网络)的致密层、softmax模块16和argmax17。如下文所进一步描述,softmax模块的输出是被提供给argmax模块17的输入的概率向量。接收器4内的模块以示例方式被提供,并且修改是可能的。
因此,系统1提供了实现端到端通信系统的自动编码器。自动编码器可以关于与某个性能度量(诸如块错误率(BLER))相关的任意损失函数而被训练。(术语“自动编码器”和“通信系统”两者在下文中均被用于描述系统1.)
通信系统(或者自动编码器)1的实际硬件实现的一个障碍是神经网络所涉及的高存储器要求和计算复杂性。硬件加速可以被提供以实现合理的推断时间。然而,可以被用于加速神经网络评估的图形处理单元(GPU)达到了很高的财务和能源消耗,这在许多通信系统中可能是不可行的。
举例来说,神经网络(或者某些其他参数算法)可以在计算能力强的平台上利用图形处理单元(GPU)被加速进行训练和开发,支持高精度浮点运算(例如32比特或64比特浮点运算)。该等硬件可能针对某些通信系统是不可用的。相应地,实现系统1的发送器2和接收器4的神经网络可以被压缩以满足实际限制。这可以通过使用更简洁的神经网络参数的表现来实现,代价是精度的降低。例如,如下文所进一步描述的,神经网络的权重和/或偏差的压缩可以通过量化而被实现,是的权重被强制在具有有限数目的条目的码本内取值(例如,以低于由训练模块所提供的精度)。在极端情况下,每个权重可以取二进制值(例如-1或+1)。
用于量化神经网络权重的一个方法(或者一些其他算法)是使用K比特固定点算法,而不是使用浮点运算(例如32比特或64比特浮点运算),K通常小于32。将量化原则与固定点运算的使用相结合,结果不仅可以使用更少的比特来表示本文所描述的神经网络的权重,还可以降低运算器的复杂度。
使用K比特固定点算法,其中KE比特被用于整数部分,以及KF比特被用于分数部分(使得KE+KF=K),权重w由以下表示:
Figure BDA0003166872880000081
其中,we,i和wf,j在{0,1}中取值。K是比特的数目,以及KE和KF的整数部分和分数部分的大小是固定的。标量w由K+1比特字
Figure BDA0003166872880000082
表示,其中ws是符号比特(即指示权重符号的比特)。
在一个实施例中,发送器2寻求将M个可能的消息
Figure BDA0003166872880000083
中的一个消息传递给接收器4。为此,发送器2通过信道3发送消息的复数值向量表示
Figure BDA0003166872880000084
通常地,发送器硬件对x施加约束,例如能量约束
Figure BDA0003166872880000085
幅度约束
Figure BDA0003166872880000086
或者平均能量约束
Figure BDA0003166872880000087
信道3由条件概率密度函数(pdf)p(y|x)来描述,其中
Figure BDA0003166872880000088
表示接收的信号。当接收到y时,接收器产生所发送消息s的估计
Figure BDA0003166872880000089
消息索引s可以被馈送到嵌入模块,嵌入:
Figure BDA00031668728800000810
该嵌入模块将s转换为nemb维的实值向量。
嵌入模块之后可能跟随有具有可能不同激励函数(诸如ReLU、tanh、signmoid、线性函数等)的若干致密神经网络(NN)层10、11。神经网络的最终层可能具有2n输出维度和线性激励函数。如果致密层没有被使用,则nemb=2n。
致密层10、11的输出可以通过映射
Figure BDA00031668728800000811
被转换为复数值向量,该映射可以被实现为
Figure BDA00031668728800000812
(此处未显示并且仅为可选步骤。)
标准化通过标准化模块12而被应用,以确保能量、幅度或其他约束被满足。标准化过程的结果是发送器2的发送向量x(其中
Figure BDA00031668728800000813
)。如上所述,发送器2可以被修改,例如复数向量生成和标准化的顺序可以被颠倒。
发送器2定义了以下映射:
Figure BDA00031668728800000814
换言之,TX来自集合
Figure BDA0003166872880000091
中的整数映射到2n维实数值向量。一个示例映射在上文被描述。其他神经网络架构也是可能的,并且上述服务的说明仅作为示例。
如上所述,接收器4包括一个或多个单元14、15(例如包括一个或多个神经网络)的致密层、softmax模块16以及argmax模块17。
如果信道输出向量
Figure BDA0003166872880000092
是复数值,则它可以由接收器4通过映射
Figure BDA0003166872880000093
而被转换为2n维度的实数值向量,该映射可以被实现为
Figure BDA0003166872880000098
针对实数值信道输出
Figure BDA0003166872880000094
该步骤不是必需的。
该结果被反馈到一个或多个层14、15,这些层可以具有不同的激励函数,诸如ReLU、tanh、sigmoid、线性函数等。最后一层可能具有使softmax激励被应用(通过softmax模块16)的M个输出维度。这生成了概率向量
Figure BDA0003166872880000095
其第i个元素[p]i可以被解释为Pr(s=i|y)。针对索引消息的硬决策作为
Figure BDA0003166872880000096
通过argmax模块17而被获得。
发送器2和接收器4可以被实现为分别具有参数向量θT和θR的神经网络。如果差分信道模型可用,则信道模型可以被用作中间的不可训练层,使得整个通信系统1可以被视为具有参数向量θ=(θT,θR)的单个神经网络,该神经网络定义了映射:
Figure BDA0003166872880000097
在一些布置中,自动编码器1可以使用随机梯度下降(SGD)以监督的方式被训练。然而,针对利用量化权重的自动编码器,随机梯度下降的使用是困难的,该自动编码器在离散空间中取值。
图2是示出根据示例实施例的算法的流程图,该算法通常由附图标记20来指示。算法20使用演进计算的原理来训练算法,诸如实现通信系统的神经网络(例如,具有量化权重的神经网络)。
算法20开始于操作21,其中实现端到端通信系统(或自动编码器)(诸如自动编码器1)的神经网络的种群
Figure BDA0003166872880000101
(或者一些其他算法)被初始化。这可以通过根据可能的权重值上的一些概率分布来生成实现发送器神经网络的参数θT和实现接收器神经网络的参数θR来被达到。操作21可以从可能的量化权重中随机生成参数。
在操作22处,新种群从初始种群被生成。如下文进一步所述的,生成新种群可以包括选择初始/当前种群的子集并且从该子集生成新种群。该选择过程是根据度量(诸如损失函数)而进行。一些示例度量在下文被进一步讨论。
随着新种群的生成,算法20是否完成在操作23处被确定。如果完成,算法移动到24。否则,算法移动到操作25。
当条件被达到时,算法20可以被认为是将要完成;示例条件包括预先定义的性能水平或者所定义的迭代次数。在一个实施例中,当在操作22的最近一次迭代中生成的神经网络种群中性能最佳的一个神经网络(根据一些度量)达到根据所述度量的预先定义的性能标准时,该条件被认为已经达成。技术人员将知晓可以在操作23中被使用的其他示例条件。
在操作25,新种群被用作当前种群,并且算法返回到操作22,在操作22中新种群被生成(使用在操作22的前一次迭代中生成的种群作为起点)。
操作22、23和25被重复,直至算法20被认为将完成。当算法被认为将完成时,在操作22的最近一次迭代中生成的神经网络种群中性能最佳的神经网络被选择(在操作24中),并且被用作算法20的输出。以此方式,算法20可以生成用于例如上述自动编码器1的神经网络。
图3是示出根据示例实施例的算法的流程图,该算法通常由附图标记30来指示。算法30是算法20的操作22的示例实现,在算法30中新种群从当前种群被生成。
当前种群包括P个神经网络(也被称为个体)的种群
Figure BDA0003166872880000102
算法30寻求“演进”神经网络的种群,以使得种群在关于算法30的每次迭代上获得平均上更好的损失函数。
算法30在操作31开始,其中根据度量,种群
Figure BDA0003166872880000111
内的一些或所有个体被评估。例如,种群内的每个个体可以关于损失函数L被评估,以计算该种群的适应度fi。根据公式:fi=-L(pi),针对所有
Figure BDA0003166872880000119
的适应度可以被计算。
操作31可以通过,例如让每个端到端通信系统(或者自动编码器)发送大量已知消息来实现,针对已知消息,使用公式
Figure BDA0003166872880000112
来计算平均损失L(pi),其中
Figure BDA0003166872880000113
是输入消息和输出向量之间的类别交叉熵。
在操作32,当前种群的神经网络的子集基于度量(例如,上文提及的适应度)而被选择。该选择可以,例如根据所述度量寻求选择种群的最佳神经网络(诸如最佳K选项)。存在备选方法,诸如下文进一步讨论的,用于开发的目的(例如,降低接近局部极小值的可能性)选择略差于最佳的神经网络(根据度量)。此外,除神经网络以外的算法可以被使用。
在操作32的示例实现中,根据个体{fi}i的适应度,子集
Figure BDA0003166872880000114
被选择,以使
Figure BDA0003166872880000115
以使
Figure BDA0003166872880000116
在操作33,更新的神经网络种群从在操作32中被选择的子集中被生成(或者“被演进”)。例如,可以从在操作32中被选择的子集
Figure BDA0003166872880000117
中生成新的种群,如以下所示:
Figure BDA0003166872880000118
其中Ξ是演进算子。
当前的和更新的种群中的神经网络总数可以是相同的。在一个示例中,更新的种群包括当前种群中的性能最佳的神经网络(例如,最符合相关度量的神经网络),并且更新的种群的所有其他成员均从所述子集中被生成/被演进。例如,假设一个种群包括100个神经网络。种群中的10个性能最佳的神经网络可以被用于生成99个神经网络,其中更新的种群包括该99个新生成的神经网络和当前种群中的性能最佳的神经网络。
因此,在算法20的操作22的每次迭代上,新的更新的神经网络种群被生成。
以上演进算子Ξ可以采取很多形式。例如,如果假设所有具有W个可训练权重的种群的神经网络共享相同的架构,则神经网络p可以由通过其可训练权重的向量化而构建的W维的实数值向量
Figure BDA0003166872880000121
而被唯一地表示。向量
Figure BDA0003166872880000122
可以被称为个体p的基因组(使用遗传算法术语)。
生成新个体的简单方法是对所选择的个体的基因组应用随机干扰。因此,新个体p′可以从另一个体p而获得,如下所示:
Figure BDA0003166872880000123
其中w是随机扰动,并且
Figure BDA0003166872880000124
是权重向量与其唯一对应的神经网络之间的映射。加法可以在伽罗华域上进行。这种对单个基因组的干扰可以被称为突变(同样地,使用遗传算法术语)。也可能通过组合多个所选择的个体以产生新个体而执行交叉。
在算法20和30的一些实施例中,神经网络的权重被量化,使得所述权重只能在具有有限的项目数的码本内取值(如上文所讨论的)。如上文所讨论的,量化权重可以使用固定点运算来被表达。
对神经网络种群内的个体的评估(例如,如关于算法30中所描述的)可以被并行进行;例如,通过在不同的物理硬件组织上实例化种群的多个成员,或者通过在软件中模拟种群的神经网络。通过示例的方式,图4是根据包括多个自动编码器41a、41b...41n(其可以是自动编码器的硬件实现或者软件模拟)的示例实施例的系统的方框图,该系统通常由附图标记40指示。每个自动编码器是包括发送器、信道和接收器的传输系统(诸如自动编码器1),该传输系统被视为具有参数向量θ(其中θ从发送器和接收器神经网络参数中得出)的单个神经网络(或一些其他算法)。因此,自动编码器41a、41b...41n的每一个自动编码器是神经网络种群内的个体的示例。
损失函数模块42a从第一自动编码器41a生成损失函数。类似的损失函数模块42b至42n针对自动编码器41b至41n生成损失函数。损失函数模块42a至42n的输出被提供给处理器43,该处理器通过基于损失函数模块的输出选择自动编码器种群的子集来实现操作32。
在上述实施例中,算法20的操作22通过考虑神经网络种群内神经网络的适应度被实现。这并非对所有实施例都至关重要。
图5是示出根据示例实施例的算法的流程图,该算法通常由附图标记50指示。算法50是操作22的示例实现,其中所谓的新颖度而非适应度被考虑。基于新颖度的算法(在下文被详细描述)包括测量神经网络(或者一些其他算法)行为的“行为特征”和测量不同神经网络或者算法的行为之间的距离的“行为距离”的定义。例如,该行为可以从种群的神经网络的可训练权重、输出或者性能来计算。
算法50在操作51开始,在其中,种群的新颖度被计算。该种群可以是在上述算法20的操作21中生成的初始种群,或者是在操作22的前一次迭代中生成的新种群。我们通过Γ表示函数,该函数测量关于当前种群和先前的种群的个体的新颖度。为此,所定义的行为特征和行为距离被使用。因此,针对种群
Figure BDA0003166872880000131
中的每个神经网络,针对所有
Figure BDA0003166872880000132
的新颖度被计算如下:
Figure BDA0003166872880000133
在操作52,根据新颖度选择种群的子集。以这种方式,种群内个体的行为的新颖度、而非个体的适应度是奖励(reward)。尽管该子集选择的过程是反直觉的,但已被发现会给出良好的结果。
在操作52中,根据个体{ni}i的新颖度,子集可以被定义为
Figure BDA0003166872880000134
以使
Figure BDA0003166872880000135
在操作53,新的种群被在操作52中选择的子集中被选择。新种群可以由
Figure BDA0003166872880000136
给出,其中Ξ是演进算子。
如上所述,操作53可以恢复种群的规模(例如,恢复至P)。
上述讨论的行为特征可以是特定领域的。在自动编码器实现端到端通信系统(例如自动编码器1)的情况下,由编码器生成的星座可以被用作行为特征。例如,行为特征可以是n乘M的矩阵,其中第i列对应于消息i的复数值表示,其中
Figure BDA0003166872880000137
因此,行为距离可以是任何矩阵范数。例如,给定的两个行为特征X1和X2,行为距离可以是||X1-X2||F(其中||X||F是x的Frobenius范数)。
上述算法30通过考虑适应度来选择子集。上述算法50通过考虑新颖度来选择子集。也可能将两种算法的方面相结合,以便通过考虑适应度和新颖度两者来选择子集。例如,某人可以通过同时保持K最佳的表现(根据一些度量)和L最新颖的个体,并且通过创建K最佳表现和L最不同个体的突变来生成新的种群。
为了完整性,图6是前述一个或多个模块(例如,发送器或接收器神经网络)的组件的示意图,其在下文中被统称为处理系统110。处理系统110可以具有处理器112,与处理器紧密耦合并且由RAM124和ROM 122组成的存储器114,以及可选地,硬件键120和显示器128。处理系统110可以包括一个或多个用于连接到网络的网络接口118,例如可以是有线或无线的调制解调器。
处理器112被连接到每个其他组件以便控制其操作。
存储器114可以包括非易失性存储器、硬盘驱动器(HDD)或者固态驱动(SSD)。存储器114的ROM 122存储其他事物中的操作系统125等,并且可以存储软件应用126。存储器114的RAM 124被处理器112使用用于数据的临时存储。操作系统125可以包含代码,该代码当由处理器执行时实现算法20、30和50的方面。
处理器112可以采取任何合适的形式。例如,它可以是微控制器、多个微控制器、处理器、或者多个处理器。
处理系统110可以是独立计算机、服务器、控制台或者其网络。
在一些实施例中,处理系统110也可以与外部软件应用相关联。这些可以是被存储在远程服务器设备上的应用,并且可以部分地或者排他地在远程服务器设备上运行。这些应用可以被称为云托管应用。处理系统110可以与远程服务器设备通信,以便利用存储在其处的软件应用。
图7A和图7B分别示出了存储有计算机可读代码的有形介质,可移动存储器单元165和光盘(CD)168,该代码当由计算机运行时,可以根据上述实施例执行方法。可移动存储器单元165可以是具有存储计算机可读代码的内部存储器166的记忆棒,例如USB记忆棒。存储器166可以由计算机系统经由连接器167被接入。CD 168可以是CD-ROM或者DVD等。其他形式的有形存储介质可以被使用。
本发明的实施例可以在软件、硬件、应用逻辑或者软件、硬件和应用逻辑的组合中被实现。软件、应用逻辑和/或硬件可以位于存储器或者任何计算机介质上。在示例实施例中,应用逻辑、软件或指令集在各种常规计算机可读介质中的任一种上被维护。在本文件的上下文中,“存储器”或“计算机可读介质”可以是能够包含、存储、通信、传播或者运送指令,以由指令执行系统、装置或设备(诸如计算机)使用或与之结合使用的任何非瞬态介质或部件。
参考此情况,其中关于“计算机可读存储介质”、“计算机程序产品”、“被有形实施的计算机程序”等,或者“处理器”或“处理电路系统”等应当被理解为不仅涵盖具有不同架构的计算机(诸如单个/多处理器架构和定序器/并行架构),还涵盖专用电路,(诸如现场可编程门阵列FPGA、专用电路应用ASIC、信号处理设备和其他设备)。引用的计算机程序、指令、代码等应当被理解为将可编程处理器固件的软件(诸如硬件设备的可编程内容)表达为处理器的指令或者固定功能设备、门阵列、可编程逻辑设备等的配置的或者配置设置。
本申请中使用的术语“电路系统”指以下所有内容:(a)纯硬件电路实现(诸如仅在模拟和/或数字电路中的实现)和(b)电路和软件(和/或固件)的组合,诸如(如可用):(i)(多个)处理器的组合或者(ii)(多个)处理器/软件(包括(多个)数字信号处理器)、软件和(多个)存储器的部分,其共同工作以使装置(诸如服务器)执行各种功能);以及(c)电路,诸如(多个)微处理器或者(多个)微处理器的部分,其需要软件或固件用于操作,即使软件或固件物理上不存在。
如果需要,本文所讨论的不同功能可以以不同的顺序和/或并发地执行。此外,如果需要,一个或多个上述功能可以是可选的或者是可以组合的。类似地,还应当理解的是,图2、图3和图5的流程图仅为示例,并且其中所描绘的各种操作可以被省略、重新排序和/或被组合。
示例实施例已经在上文中参考神经网络种群被一般性地描述。这并非对所有实施例都至关重要。例如,例如,其他形式的算法(诸如参数算法)可以被使用。此外,尽管被更新的算法的可训练参数(例如神经网络的参数)中的示例实施例被描述,但这并非对所有实施例都是至关重要的。例如,算法种群可以通过更新种群的算法中的一个或多个算法的一个或多个参数和/或一个或多个结构而被更新。
应当理解的是,上述示例实施例仅为说明性的,并且不限制本发明的范围。本领域技术人员在阅读本说明书时,其他变化和修改将会是显而易见的。
此外,本申请的公开应当被理解为包括本本文中明示或默示公开的任何新颖特征或者特征的任何新颖组合或其任何概括,并且在本申请或由其得出的任何申请的审查过程中,新的权利要求可以被规划以覆盖任何此类特征和/或此类特征的组合。
尽管本发明的各个方面在独立权利要求中被阐述,但是本发明的其他方面包括来自所述实施例和/或从属权利要求的特征与独立权利要求的特征的其他组合,而不仅是权利要求中明确阐述的组合。
本文还应注意的是,尽管上文描述了各种示例,但这些描述不应被视为限制性的。相反,在不脱离所附权利要求中定义的本发明的范围的情况下,可以进行多种变化和修改。

Claims (21)

1.一种装置,包括:
用于根据度量来评估当前算法种群中的一些或所有算法的部件,所述种群中的每个算法实现传输系统,其中所述传输系统包括发送器、信道和接收器,其中所述发送器包括具有至少一些可训练权重的发送器算法,并且所述接收器包括具有至少一些可训练权重的接收器算法;
用于基于所述度量来选择当前的所述种群中的所述算法的子集的部件;
用于从所述子集生成更新的算法种群的部件;以及
用于基于更新的所述种群来重复所述评估、所述选择和所述生成、直至第一条件被达成的部件。
2.根据权利要求1所述的装置,还包括用于当所述第一条件已经被达成时选择所述更新的算法种群中的一个算法的部件。
3.根据权利要求1或权利要求2所述的装置,还包括用于生成初始算法种群以及将初始的所述种群设置为当前的所述种群的第一实例的部件。
4.根据权利要求1至3中任一项所述的装置,其中用于评估所述当前算法种群中的一些或者所有算法的所述部件包括:用于计算所述算法的适应度的部件。
5.根据权利要求4所述的装置,其中所述的算法的所述适应度使用损失函数被计算。
6.根据前述权利要求中任一项所述的装置,其中用于评估所述当前算法种群中的一些或所有算法的所述部件包括:用于计算所述算法的新颖度的部件。
7.根据权利要求6所述的装置,其中所述算法的所述新颖度通过确定所述种群中的算法之间的距离而被计算。
8.根据前述权利要求中任一项所述的装置,其中用于选择当前的所述种群中的所述算法的所述子集的所述部件包括:用于根据所述度量来选择所述种群中的一个或多个最佳算法的部件。
9.根据前述权利要求中任一项所述的装置,其中所述更新的算法种群包括以下算法:所述算法被用于评估所述当前算法种群中的所述一些或所有算法的所述部件评估为最满足所述度量。
10.根据前述权利要求中任一项所述的装置,其中用于从所述子集生成更新的算法种群的所述部件包括:从所述算法的子集生成一个或多个新算法。
11.根据前述权利要求中任一项所述的装置,其中所述算法的所述权重中的至少一些权重是量化的权重,其中所述量化的权重仅在具有有限数目的条目的码本内取值。
12.根据前述权利要求中任一项所述的装置,其中当所述当前算法种群或所述更新的算法种群中性能最佳的一个算法达成根据所述度量的预先定义的性能标准时,所述第一条件被满足。
13.根据前述权利要求中任一项所述的装置,其中所述第一条件包括所定义的迭代次数。
14.根据前述权利要求中任一项所述的装置,其中用于从所述子集生成更新的算法种群的所述部件修改当前的所述种群中的所述算法的子集中的一个或多个算法的一个或多个参数和/或一个或多个结构。
15.根据前述权利要求中任一项所述的装置,其中所述算法种群包括神经网络。
16.根据前述权利要求中任一项所述的装置,其中所述部件包括:
至少一个处理器;以及
至少一个存储器,包括计算机程序代码,所述至少一个存储器和所述计算机程序被配置为与所述至少一个处理器一起引起所述装置的所述执行。
17.一种方法,包括:
根据度量来评估当前算法种群中的一些或所有算法,所述种群中的每个算法实现传输系统,其中所述传输系统包括发送器、信道和接收器,其中所述发送器包括具有至少一些可训练权重的发送器算法,并且所述接收器包括具有至少一些可训练权重的接收器算法;
基于所述度量来选择当前的所述种群中的所述算法的子集;
从所述子集生成更新的算法种群;以及
基于更新的所述种群来重复所述评估、所述选择和所述生成,直至第一条件被达成。
18.根据权利要求17所述的方法,还包括当所述第一条件已经被达成时,选择所述更新的算法种群中的一个算法。
19.根据权利要求17或权利要求18所述的方法,其中评估所述当前算法种群中的一些或所有算法包括以下至少一项:计算所述算法的适应度以及计算所述算法的新颖度。
20.根据权利要求17至19中任一项所述的方法,其中所述算法权重中的至少一些算法权重是量化的权重,其中所述量化的权重仅在具有有限数目的条目的码本内取值。
21.一种计算机可读介质,包括有存储在其上的程序指令,所述程序指令用于至少执行以下操作:
根据度量来评估当前算法种群中的一些或所有算法,所述种群中的每个算法实现传输系统,其中所述传输系统包括发送器、信道和接收器,其中所述发送器包括具有至少一些可训练权重的发送器算法,并且所述接收器包括具有至少一些可训练权重的接收器算法;
基于所述度量来选择当前的所述种群中的所述算法的子集;
从所述子集生成更新的算法种群;以及
基于更新的所述种群来重复所述评估、所述选择和所述生成,直至第一条件被达成。
CN201980089413.2A 2019-01-18 2019-01-18 通信系统中的训练 Pending CN113316791A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2019/051282 WO2020147971A1 (en) 2019-01-18 2019-01-18 Training in communication systems

Publications (1)

Publication Number Publication Date
CN113316791A true CN113316791A (zh) 2021-08-27

Family

ID=65041772

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980089413.2A Pending CN113316791A (zh) 2019-01-18 2019-01-18 通信系统中的训练

Country Status (4)

Country Link
US (1) US20220083870A1 (zh)
EP (1) EP3912094A1 (zh)
CN (1) CN113316791A (zh)
WO (1) WO2020147971A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112740631A (zh) * 2018-07-20 2021-04-30 诺基亚技术有限公司 通过接收算法中的参数的更新来在通信系统中学习
CN114337911A (zh) * 2020-09-30 2022-04-12 华为技术有限公司 一种基于神经网络的通信方法以及相关装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3642970A4 (en) * 2017-06-19 2021-03-31 Virginia Tech Intellectual Properties, Inc. INFORMATION ENABLING AND DECODING FOR WIRELESS TRANSMISSION USING MULTI-ANTENNA TRANSCEIVERS

Also Published As

Publication number Publication date
EP3912094A1 (en) 2021-11-24
US20220083870A1 (en) 2022-03-17
WO2020147971A1 (en) 2020-07-23

Similar Documents

Publication Publication Date Title
US11475298B2 (en) Using quantization in training an artificial intelligence model in a semiconductor solution
TWI791610B (zh) 對人工神經網路及浮點神經網路進行量化的方法及裝置
CN113424202A (zh) 针对神经网络训练调整激活压缩
US11082264B2 (en) Learning in communication systems
US8489526B2 (en) Controlling quarantining and biasing in cataclysms for optimization simulations
CN107340993B (zh) 运算装置和方法
CN112771547A (zh) 通信系统中的端到端学习
KR102562320B1 (ko) 비트 연산 기반의 뉴럴 네트워크 처리 방법 및 장치
CN113273082A (zh) 具有异常块浮点的神经网络激活压缩
KR20220097961A (ko) 인코딩된 데이터를 디코딩하기 위한 순환 신경망 및 시스템
EP3915056A1 (en) Neural network activation compression with non-uniform mantissas
WO2019009897A1 (en) SYSTEMS AND METHODS FOR COMPRESSION AND DISTRIBUTION OF MACHINE LEARNING MODELS
CN114282678A (zh) 一种机器学习模型的训练的方法以及相关设备
CN113316791A (zh) 通信系统中的训练
CN117337432A (zh) 用于使用神经网络对经编码数据进行解码的解码器及系统
CN116431597A (zh) 用于训练数据分类模型的方法、电子设备和计算机程序产品
KR20190130443A (ko) 뉴럴 네트워크의 양자화 방법 및 장치
CN113748626A (zh) 通信系统中的迭代检测
WO2020177863A1 (en) Training of algorithms
Weise et al. A tunable model for multi-objective, epistatic, rugged, and neutral fitness landscapes
WO2023095204A1 (ja) 学習装置、自己符号化装置、学習方法、自己符号化方法及びプログラム
CN115836298A (zh) 能量约束下量化的自动选择和滤波器移除优化
JP6992864B1 (ja) ニューラルネットワーク軽量化装置、ニューラルネットワーク軽量化方法およびプログラム
CN113792784B (zh) 用于用户聚类的方法、电子设备和存储介质
US20240202492A1 (en) Method and apparatus for training graph federated learning models using reinforcement learning-based data augmentation

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination