WO2020108472A1 - 编码方法、译码方法及装置 - Google Patents

编码方法、译码方法及装置 Download PDF

Info

Publication number
WO2020108472A1
WO2020108472A1 PCT/CN2019/120898 CN2019120898W WO2020108472A1 WO 2020108472 A1 WO2020108472 A1 WO 2020108472A1 CN 2019120898 W CN2019120898 W CN 2019120898W WO 2020108472 A1 WO2020108472 A1 WO 2020108472A1
Authority
WO
WIPO (PCT)
Prior art keywords
neural network
initial
input information
information
decoding
Prior art date
Application number
PCT/CN2019/120898
Other languages
English (en)
French (fr)
Inventor
徐晨
李榕
于天航
乔云飞
杜颖钢
黄凌晨
王俊
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Priority to JP2021529778A priority Critical patent/JP7228042B2/ja
Priority to EP19890969.9A priority patent/EP3879709A4/en
Publication of WO2020108472A1 publication Critical patent/WO2020108472A1/zh
Priority to US17/330,821 priority patent/US20210279584A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6597Implementations using analogue techniques for coding or decoding, e.g. analogue Viterbi decoder
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • 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/08Learning methods
    • 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/084Backpropagation, e.g. using gradient descent
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • H04L25/03165Arrangements for removing intersymbol interference using neural networks

Definitions

  • Embodiments of the present application relate to the field of communications, and in particular, to an encoding method, decoding method, and device.
  • the encoder/decoder needs to learn the samples of the entire codeword space, and the special length of the polarization code (Polar) leads to the code length.
  • the number of spatial code sequences in the corresponding total codebook increases exponentially. Therefore, in the prior art, when the number of information bits is large, the complexity of traversing the entire codeword space increases sharply, and the implementation is difficult.
  • the present application provides an encoding method, a decoding method, and a device, which can weaken the influence of code length on the traversal of codeword space to a certain extent, thereby improving the learning efficiency of encoding/decoding.
  • an embodiment of the present application provides an encoding method, which may include: acquiring first input information; then, based on an encoding neural network, encode the acquired first input information to obtain first output information, and then , Output the first output information; wherein, the coding neural network contains the first neuron parameter, and the first neuron parameter can be used to indicate the mapping relationship between the first input information and the first output information; and, the coding neural network
  • the initial coding neural network composed of the first neural network unit is obtained after training; wherein, the initial coding neural network contains a mapping between the second input information that can be used to indicate the input of the initial coding neural network and the output second output information
  • the second neuron parameter of the relationship and, after the initial coding neural network is trained, the second neuron parameter is updated to the first neuron parameter; and, the second neuron parameter is the third nerve included in the first neural network unit
  • a meta-parameter composition where the third neuron parameter is used to indicate the mapping relationship between the third input information input by the first neural network unit and the
  • the step of acquiring the first neural network unit may further include: constructing a first initial neural network unit and setting a first initial neuron parameter, where the first initial neuron parameter is used to indicate The mapping relationship between the fourth input information input by the first initial neuron and the output fourth output information, where the first initial neuron parameter includes an initial weight value and an initial bias vector; and, the first initial neural network unit At least one hidden layer is included, and each hidden layer contains Q nodes, and Q is an integer greater than or equal to N, where N is the minimum value between the code length of the third input information and the code length of the third output information; Based on the first initial neuron parameters, the first initial neural network unit is trained until the error between the expected verification result of the fourth output information and the fourth input information is less than the threshold, where the expected verification of the fourth input information The result is that the fourth input information is obtained after multiplication and addition on GF(2) based on the first kernel moment; and, when training the first initial neural network unit, the first initial neural parameter is updated to obtain the first Three neural parameters;
  • an initial neural network unit is generated based on the first kernel matrix, and then the initial neural network unit is trained to generate a neural network unit corresponding to the first kernel matrix.
  • the first kernel matrix is Or, the first kernel matrix is
  • the kernel matrix based on different structures is realized to generate the corresponding neural network unit.
  • the kernel matrix based on different structures is realized to generate the corresponding neural network unit.
  • the initial coding neural network is composed of a first neural network unit and a second neural network unit; wherein, the second neural network unit includes a fourth neuron parameter, and the second neural network unit is composed of the first initial
  • the neural network unit is obtained after training, and after the first initial neural network unit is trained, the first initial neuron parameter is updated to obtain a fourth neuron parameter, and the fourth neural parameter is not the same as the third neural parameter.
  • a neural network unit having different neuron parameters and having the same structure is formed into a coding neural network.
  • the initial coding neural network is composed of a first neural network unit and a third neural network unit
  • the third neural network unit includes fifth neuron parameters;
  • the expected verification result of the input information is obtained by performing multiplication and addition operations on the GF(2 m ) of the fifth input information based on the second kernel matrix; where the fifth input information is training information.
  • the coding neural network is composed of multiple neural network units corresponding to different kernel matrices.
  • the step of acquiring the initial encoding neural network includes: acquiring an encoding network graph, wherein the encoding network graph includes at least one encoding butterfly graph, and the encoding butterfly graph is used to indicate the encoding butterfly graph.
  • the check relationship between the input information and the output information of the coded butterfly diagram match the first neural network unit with at least one coded butterfly diagram; replace the first neural network unit with the coded butterfly diagram that matches successfully, And get the initial coding neural network.
  • a coding neural network composed of small neural network units is realized, so that it can be generalized to the entire codeword space through small learning samples.
  • an embodiment of the present application provides a decoding method.
  • the method may include: acquiring first input information, and then decoding the acquired first input information based on a decoding neural network to obtain and output the first An output information; wherein, the decoding neural network includes a first neuron parameter, and the first neuron parameter is used to indicate the mapping relationship between the first input information and the first output information; and, the decoding neural network is composed of the first
  • the initial decoding neural network composed of neural network units is obtained after training; wherein, the initial decoding neural network contains a mapping relationship between the second input information indicating the input of the initial decoding neural network and the output second output information
  • the step of acquiring the first neural network unit may include: constructing a first initial neural network unit and setting a first initial neuron parameter, where the first initial neuron parameter is used A mapping relationship between the fourth input information input by the initial neuron and the fourth output information output, wherein the first initial neuron parameter includes an initial weight value and an initial bias vector; and, the first initial neural network unit includes At least one hidden layer, each hidden layer contains Q nodes, and Q is an integer greater than or equal to N, where N is the minimum value between the code length of the third input information and the code length of the third output information;
  • the first initial neuron parameter training the first initial neural network unit until the error between the fourth output information and the expected verification result of the fourth input information is less than the threshold, where the expected verification result of the fourth input information
  • the fourth input information is obtained after multiplication and addition operations on GF(2 m ) based on the first kernel moment; and, when training the first initial neural network unit, the first initial neural parameter is updated to obtain the first Three neural parameters; among them, the fourth
  • the first kernel matrix is Or, the first kernel matrix is
  • the initial decoding neural network is composed of a first neural network unit and a second neural network unit; wherein, the second neural network unit includes a fourth neuron parameter, and the second neural network unit is composed of The first initial neural network unit is obtained after training, and after the first initial neural network unit is trained, the first initial neuron parameter is updated to obtain the fourth neuron parameter, and the fourth and third neural parameters Not the same.
  • the initial decoding neural network is composed of a first neural network unit and a third neural network unit
  • the third neural network unit includes a fifth neuron parameter
  • the fifth neuron parameter is used to indicate The mapping relationship between the fifth input information input by the third neural network unit and the output fifth output information; and, the error between the expected verification result of the fifth output information and the fifth input information is less than the threshold, where The expected verification result of the five-input information is obtained by performing multiplication and addition operations on the GF(2 m ) of the fifth input information based on the second kernel matrix; where the fifth input information is training information.
  • the step of acquiring the initial decoding neural network includes: acquiring a decoding network graph, wherein the decoding network graph includes at least one decoding butterfly graph, and the decoding butterfly graph is used to indicate Checking relationship between the input information of the decoding butterfly diagram and the output information of the decoding butterfly diagram; matching the first neural network unit with at least one decoding butterfly diagram; matching the first neural network unit pair successfully The decoding butterfly graph is replaced and the initial decoding neural network is obtained.
  • an embodiment of the present application provides an encoding/decoding method, which may include: encoding and/or decoding first input information based on an encoding/decoding neural network; wherein, encoding/decoding neural
  • the network includes the coding neural network according to any one of claims 1-7 and the decoding neural network according to claims 8-14.
  • the neuron parameters in the coding neural network are not the same as the neuron parameters in the decoding neural network; or, the neuron parameters in the coding neural network and the neural in the decoding neural network The meta parameters are the same.
  • the encoding/decoding neural network can be composed of an encoding neural network and a decoding neural network with the same neuron parameters. It can also be composed of coding neural network and decoding neural network with different neuron parameters.
  • an embodiment of the present application provides an encoding device.
  • the device may include: an acquisition module for acquiring first input information, and an encoding module for encoding the first input information based on an encoding neural network to obtain And output the first output information; wherein, the coding neural network contains the first neuron parameter, and the first neuron parameter is used to indicate the mapping relationship between the first input information and the first output information; and, the coding neural network consists of An initial coding neural network composed of a neural network unit is obtained after training; wherein, the initial coding neural network includes a first relationship indicating the mapping relationship between the second input information input by the initial coding neural network and the output second output information.
  • the second neuron parameter is updated to the first neuron parameter; and, the second neuron parameter is composed of the third neuron parameter included in the first neural network unit ,
  • the third neuron parameter is used to indicate the mapping relationship between the third input information input by the first neural network unit and the output third output information; and, the expected verification of the third output information and the third input information
  • the error between the results is less than the threshold, where the expected verification result of the third input information is obtained by multiplying and adding the third input information on the Galois Field GF(2 m ) based on the first kernel matrix;
  • the first input information is information to be encoded; and, the second input information and the third input information are training information.
  • the encoding module is further configured to: construct a first initial neural network unit and set the first initial neuron parameter, where the first initial neuron parameter is used to indicate the input of the first initial neuron
  • the first kernel moment is obtained after multiplication and addition on GF(2 m ); and, when training the first initial neural network unit, the first initial neural parameter is updated to obtain a third neural parameter; wherein,
  • the first kernel matrix is Or, the first kernel matrix is
  • the initial coding neural network is composed of a first neural network unit and a second neural network unit; wherein, the second neural network unit includes fourth neuron parameters, and the second neural network unit is composed of An initial neural network unit is obtained after training, and after the first initial neural network unit is trained, the first initial neuron parameter is updated to obtain a fourth neuron parameter, and the fourth and third neural parameters are not the same.
  • the initial coding neural network is composed of a first neural network unit and a third neural network unit
  • the third neural network unit includes a fifth neuron parameter
  • the fifth neuron parameter is used to indicate the The mapping relationship between the fifth input information input by the three neural network unit and the output fifth output information; and, the error between the expected verification result of the fifth output information and the fifth input information is less than the threshold, where the fifth The expected verification result of the input information is obtained by performing multiplication and addition operations on the GF(2 m ) of the fifth input information based on the second kernel matrix; where the fifth input information is training information.
  • the encoding module is further used to: obtain an encoding network graph, where the encoding network graph includes at least one encoding butterfly graph, and the encoding butterfly graph is used to indicate input information and encoding of the encoding butterfly graph Check relationship between the output information of the butterfly diagram; match the first neural network unit with at least one coded butterfly diagram; replace the first neural network unit with the matched coded butterfly diagram, and obtain the initial code Neural Networks.
  • an embodiment of the present application provides a decoding apparatus.
  • the apparatus may include: an acquisition module for acquiring first input information, and a decoding module for performing first input information based on a decoding neural network Decoding, obtaining and outputting first output information; wherein, the decoding neural network contains first neuron parameters, and the first neuron parameters are used to indicate the mapping relationship between the first input information and the first output information; and,
  • the decoding neural network is obtained after the initial decoding neural network composed of the first neural network unit is trained; wherein, the initial decoding neural network includes the second input information and the second output for indicating the input of the initial decoding neural network
  • the third neuron parameter included in the network unit wherein the third neuron parameter is used to indicate the mapping relationship between the third input information input by the first neural network unit and the output
  • the decoding module is further configured to: construct a first initial neural network unit and set a first initial neuron parameter, where the first initial neuron parameter is used to indicate the first initial neuron input Mapping relationship between the fourth input information and the output fourth output information, wherein the first initial neuron parameter includes an initial weight value and an initial bias vector; and, the first initial neural network unit includes at least one hidden layer, Each hidden layer contains Q nodes, and Q is an integer greater than or equal to N, where N is the minimum value between the code length of the third input information and the code length of the third output information; based on the first initial neuron Parameters, train the first initial neural network unit until the error between the fourth output information and the expected verification result of the fourth input information is less than the threshold, where the expected verification result of the fourth input information is the fourth input information Obtained by multiplying and adding on GF(2 m ) based on the first kernel moment; and, when training the first initial neural network unit, the first initial neural parameter is updated to obtain a third neural parameter;
  • the first kernel matrix is Or, the first kernel matrix is
  • the initial decoding neural network is composed of a first neural network unit and a second neural network unit; wherein, the second neural network unit includes a fourth neuron parameter, and the second neural network unit is composed of The first initial neural network unit is obtained after training, and after the first initial neural network unit is trained, the first initial neuron parameter is updated to obtain the fourth neuron parameter, and the fourth and third neural parameters Not the same.
  • the initial decoding neural network is composed of a first neural network unit and a third neural network unit
  • the third neural network unit includes a fifth neuron parameter
  • the fifth neuron parameter is used to indicate The mapping relationship between the fifth input information input by the third neural network unit and the output fifth output information
  • the expected verification result of the five-input information is obtained by performing multiplication and addition operations on the GF(2 m ) of the fifth input information based on the second kernel matrix; where the fifth input information is training information.
  • the decoding module is further used to: obtain a decoding network diagram, wherein the decoding network diagram includes at least one decoding butterfly diagram, and the decoding butterfly diagram is used to indicate the decoding butterfly diagram Checking relationship between the input information of the graph and the output information of the decoding butterfly diagram; matching the first neural network unit with at least one decoding butterfly diagram; matching the first neural network unit to the decoding butterfly that successfully matches The shape graph is replaced, and the initial decoding neural network is obtained.
  • an embodiment of the present application provides an encoding/decoding system for encoding and/or decoding first input information based on an encoding/decoding neural network; wherein the system is for including claim 18 The encoding neural network of any one of -24 and the decoding neural network of claims 25-31.
  • the neuron parameters in the coding neural network are different from the neuron parameters in the decoding neural network.
  • the neuron parameters in the coding neural network are the same as the neuron parameters in the decoding neural network.
  • an embodiment of the present application provides a computer-readable storage medium that stores a computer program, where the computer program includes at least one piece of code, and the at least one piece of code can be executed by a device to control the device to execute the first Aspect of the method.
  • an embodiment of the present application provides a computer-readable storage medium that stores a computer program, the computer program includes at least one piece of code, and the at least one piece of code can be executed by a device to control the device to execute Aspect of the method.
  • an embodiment of the present application provides a computer-readable storage medium that stores a computer program, where the computer program includes at least one piece of code, and the at least one piece of code can be executed by a device to control the device to execute a third Aspect of the method.
  • an embodiment of the present application provides a computer program, which is used to execute the method described in the first aspect when the computer program is executed by a device.
  • an embodiment of the present application provides a computer program, which is used to execute the method described in the second aspect when the computer program is executed by a device.
  • an embodiment of the present application provides a computer program, which is used to execute the method described in the third aspect when the computer program is executed by a device.
  • an embodiment of the present application provides a chip including a processing circuit and a transceiver pin.
  • the transceiver pin and the processor communicate with each other through an internal connection channel, and the processor executes the method in the first aspect or any possible implementation manner of the first aspect to control the receiving pin to receive the signal, Control sending pins to send signals.
  • an embodiment of the present application provides a chip including a processing circuit and a transceiver pin.
  • the transceiver pin and the processor communicate with each other through an internal connection channel, and the processor executes the method in the second aspect or any possible implementation manner of the second aspect to control the receiving pin to receive the signal, Control sending pins to send signals.
  • an embodiment of the present application provides a chip including a processing circuit and a transceiver pin.
  • the transceiver pin and the processor communicate with each other through an internal connection channel, and the processor executes the method in the third aspect or any possible implementation manner of the third aspect to control the receiving pin to receive the signal, Control sending pins to send signals.
  • an embodiment of the present application provides an encoding device.
  • the device includes a memory for storing instructions or data, and at least one processor in communication with the memory.
  • the processor may be used to support the operation of the encoding device.
  • the instruction executes the method in the first aspect or any possible implementation manner of the first aspect.
  • an embodiment of the present application provides a decoding device.
  • the device includes a memory for storing instructions or data, and at least one processor in communication with the memory.
  • the processor may be used to support the encoding device in The method in the second aspect or any possible implementation manner of the second aspect is executed when the instruction is executed.
  • an embodiment of the present application provides an encoding/decoding device.
  • the device includes a memory for storing instructions or data, and at least one processor in communication with the memory.
  • the processor may be used to support encoding
  • the device executes the method in the third aspect or any possible implementation manner of the third aspect when the instruction is executed.
  • an embodiment of the present application provides an encoding/decoding system, which includes the encoding device and the decoding device according to the fourth and fifth aspects.
  • FIG. 1 is a schematic diagram of a communication system provided by an embodiment of the present application.
  • FIG. 2a is a schematic structural diagram of a base station according to an embodiment of the present application.
  • 2b is a schematic structural diagram of a terminal according to an embodiment of the present application.
  • FIG. 3 is a schematic diagram of a wireless communication process provided by an embodiment of the present application.
  • FIG. 6 is one of the structural schematic diagrams of the initial neural network unit provided by the embodiment of the present application.
  • FIG. 10 is a schematic flowchart of generating an initial encoding neural network provided by an embodiment of the present application.
  • FIG. 11 is a schematic structural diagram of an encoding network diagram provided by an embodiment of the present application.
  • FIG. 12 is a schematic structural diagram of an encoding butterfly diagram provided by an embodiment of the present application.
  • FIG. 13 is a schematic structural diagram of an initial encoding neural network provided by an embodiment of the present application.
  • 15 is one of the structural schematic diagrams of the initial neural network unit provided by the embodiment of the present application.
  • 16 is a schematic flowchart of a decoding method provided by an embodiment of the present application.
  • 17 is one of the structural schematic diagrams of the initial neural network unit provided by the embodiment of the present application.
  • 21 is a schematic flowchart of a training method of an encoding/decoding neural network provided by an embodiment of the present application.
  • 22 is one of the structural schematic diagrams of the initial neural network unit provided by the embodiment of the present application.
  • FIG. 23 is a schematic structural diagram of an encoding device provided by an embodiment of the present application.
  • FIG. 24 is a schematic structural diagram of a decoding device according to an embodiment of the present application.
  • 25 is a schematic block diagram of an encoding device provided by an embodiment of the present application.
  • 26 is a schematic block diagram of a decoding apparatus provided by an embodiment of the present application.
  • first and second in the description and claims of the embodiments of the present application are used to distinguish different objects, rather than describing a specific order of objects.
  • first target object and the second target object are used to distinguish different target objects, rather than describing a specific order of the target objects.
  • words such as “exemplary” or “for example” are used as examples, illustrations or explanations. Any embodiments or design solutions described as “exemplary” or “for example” in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or design solutions. Rather, the use of words such as “exemplary” or “for example” is intended to present related concepts in a specific manner.
  • multiple processing units refer to two or more processing units; multiple systems refer to two or more systems.
  • FIG. 1 it is a schematic diagram of a communication system provided by an embodiment of the present application.
  • the communication system includes a base station 100 and a terminal 200.
  • the terminal 200 may be a computer, a smart phone, a telephone, a cable TV set-top box, a digital subscriber line router, and other devices.
  • the number of base stations and terminals may be one or more, and the number of base stations and terminals of the communication system shown in FIG. 1 is merely an example of adaptability, which is not limited in this application.
  • the above communication system can be used to support fourth generation (4G) access technology, such as long term evolution (LTE) access technology; or, the communication system can also support fifth generation (fifth generation, 5G) ) Access technology, such as new radio (NR) access technology; or, the communication system can also be used to support third-generation (3G) access technology, such as universal mobile communication system (universal mobile telecommunications) system (UMTS) access technology; or the communication system can also be used to support second generation (2G) access technology, such as global mobile communication system (global system for mobile communications, GSM) access technology; or, the The communication system can also be used for communication systems that support multiple wireless technologies, such as LTE technology and NR technology.
  • 4G fourth generation
  • 5G fifth generation
  • 3G third-generation
  • UMTS universal mobile telecommunications
  • 2G global mobile communication system
  • GSM global system for mobile communications
  • the communication system can also be applied to narrow-band Internet of Things (Narrow Band-Internet of Things, NB-IoT), enhanced data rate GSM evolution system (Enhanced Data Evolution for GSM Evolution, EDGE), broadband code division multiple access system (Wideband Code Division Multiple Access, WCDMA), Code Division Multiple Access 2000 system (Code Division Multiple Access, CDMA2000), Time Division Synchronization Code Division Multiple Access System (Time Division-Synchronization Code Division Multiple Access, TD-SCDMA), long-term evolution system (LongTerm Evolution, LTE) and future-oriented communication technology.
  • narrow-band Internet of Things Narrow Band-Internet of Things, NB-IoT
  • EDGE Enhanced Data Evolution for GSM Evolution, EDGE
  • WCDMA Wideband Code Division Multiple Access
  • CDMA2000 Code Division Multiple Access 2000
  • Time Division Synchronization Code Division Multiple Access System Time Division-Synchronization Code Division Multiple Access
  • LTE LongTerm Evolution
  • the base station 100 in FIG. 1 may be used to support terminal access, for example, it may be a base transceiver station (BTS) and base station controller (BSC) in a 2G access technology communication system, Node B (node B) and radio network controller (RNC) in the 3G access technology communication system, evolved node B (eNB), 5G access technology communication in the 4G access technology communication system Next generation base station (nNB, gNB), transmission and reception point (TRP), relay node (relay node), access point (AP), etc. in the system.
  • BTS base transceiver station
  • BSC base station controller
  • Node B node B
  • RNC radio network controller
  • eNB evolved node B
  • eNB evolved node B
  • nNB Next generation base station
  • TRP transmission and reception point
  • relay node relay node
  • AP access point
  • the terminal in FIG. 1 may be a device that provides voice or data connectivity to users, for example, it may also be called a mobile station, subscriber unit, station, and terminal equipment. TE) etc.
  • the terminal may be a cellular phone (cellular), a personal digital assistant (personal digital assistant, PDA), a wireless modem (modem), a handheld device (handheld), a laptop (laptop) computer, a cordless phone (cordless phone), wireless Local loop (wireless local loop, WLL) station, tablet computer (pad), etc.
  • devices that can access the communication system, communicate with the network side of the communication system, or communicate with other objects through the communication system can be terminals in the embodiments of the present application, for example, intelligent transportation Terminals in automobiles and home appliances in smart homes, power meter reading instruments in smart grids, voltage monitoring instruments, environmental monitoring instruments, video monitoring instruments in smart security networks, cash registers, etc.
  • the terminal may communicate with a base station, such as the base station 10 in FIG. 1. Communication between multiple terminals is also possible.
  • the terminal can be statically fixed or mobile.
  • Figure 2a is a schematic structural diagram of a base station.
  • Figure 2a is a schematic structural diagram of a base station.
  • the base station 100 includes at least one processor 101, at least one memory 102, at least one transceiver 103, at least one network interface 104, and one or more antennas 105.
  • the processor 101, the memory 102, the transceiver 103 and the network interface 104 are connected, for example, through a bus.
  • the antenna 105 is connected to the transceiver 103.
  • the network interface 104 is used to connect the base station to other communication devices through a communication link. In the embodiment of the present application, the connection may include various interfaces, transmission lines or buses, etc., which is not limited in this embodiment.
  • the memory in the embodiment of the present application may include at least one of the following types: read-only memory (ROM) or other types of static storage devices that can store static information and instructions, and random access memory (random access memory, RAM) or other types of dynamic storage devices that can store information and instructions can also be electrically erasable programmable read-only memory (Electrically, programmable-only memory, EEPROM).
  • ROM read-only memory
  • RAM random access memory
  • EEPROM electrically erasable programmable read-only memory
  • the memory may also be a compact disc-read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compact disc, laser disc, optical disc, digital versatile disc, Blu-ray disc, etc.) , Disk storage media or other magnetic storage devices, or any other media that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto.
  • CD-ROM compact disc-read-only memory
  • optical disc storage including compact disc, laser disc, optical disc, digital versatile disc, Blu-ray disc, etc.
  • Disk storage media or other magnetic storage devices or any other media that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto.
  • the memory 102 may exist independently and be connected to the processor 101.
  • the memory 102 may also be integrated with the processor 101, for example, integrated in a chip.
  • the memory 102 can store program codes for executing the technical solutions of the embodiments of the present application, and the execution is controlled by the processor 101.
  • Various executed computer program codes can also be regarded as the driver of the processor 101.
  • the processor 101 is used to execute computer program code stored in the memory 102, so as to implement the technical solution in the embodiments of the present application.
  • the transceiver 103 may be used to support the reception or transmission of radio frequency signals between the access network device and the terminal, and the transceiver 103 may be connected to the antenna 105.
  • the transceiver 103 includes a transmitter Tx and a receiver Rx. Specifically, one or more antennas 105 can receive radio frequency signals, and the receiver Rx of the transceiver 103 is used to receive the radio frequency signals from the antenna, and convert the radio frequency signals into digital baseband signals or digital intermediate frequency signals, and convert the digital
  • the baseband signal or digital intermediate frequency signal is provided to the processor 101, so that the processor 101 performs further processing on the digital baseband signal or digital intermediate frequency signal, such as demodulation processing and decoding processing.
  • the transmitter Tx in the transceiver 103 is also used to receive the modulated digital baseband signal or digital intermediate frequency signal from the processor 101, and convert the modulated digital baseband signal or digital intermediate frequency signal into a radio frequency signal, and pass a Or multiple antennas 105 transmit the radio frequency signal.
  • the receiver Rx can selectively perform one-level or multi-level down-mixing processing and analog-to-digital conversion processing on the radio frequency signal to obtain a digital baseband signal or a digital intermediate frequency signal.
  • the sequence is adjustable.
  • the transmitter Tx can selectively perform one-level or multi-level up-mixing processing and digital-to-analog conversion processing on the modulated digital baseband signal or digital intermediate frequency signal to obtain a radio frequency signal.
  • the up-mixing processing and digital-to-analog conversion processing The sequence is adjustable.
  • Digital baseband signals and digital intermediate frequency signals can be collectively referred to as digital signals.
  • FIG. 2b is a schematic structural diagram of a terminal.
  • Figure 2b is a schematic structural diagram of a terminal.
  • the terminal 200 includes at least one processor 201, at least one transceiver 202, and at least one memory 203.
  • the processor 201, the memory 203 and the transceiver 202 are connected.
  • the terminal 200 may further include one or more antennas 204.
  • the antenna 204 is connected to the transceiver 202.
  • the transceiver 202, the memory 203, and the antenna 204 may refer to the related description in FIG. 2a to implement similar functions.
  • the processor 201 may be a baseband processor or a CPU, and the baseband processor and the CPU may be integrated together or separated.
  • the processor 201 may be used to implement various functions for the terminal 200, for example, to process communication protocols and communication data, or to control the entire terminal 200, execute a software program, and process data of the software program; or the processor 201 It is used to realize one or more of the above functions.
  • the terminal and the base station are mutually a sending end and a receiving end, that is, when the terminal sends a signal to the base station, the terminal serves as the sending end, and the base station serves as the receiving end.
  • the base station serves as the sending end
  • the terminal serves as the receiving end.
  • the source is sent out after source coding, channel coding, and modulation mapping.
  • the sink is sequentially output through demapping demodulation, channel decoding, and source decoding.
  • the coding process (source coding, channel coding, and modulation mapping steps) in FIG. 3 is performed by the terminal, and when the terminal is the receiving end, the decoding process in FIG. 3 (Steps such as mapping demodulation, channel decoding and source decoding) are executed by the terminal.
  • the base station is the same.
  • Current channel coding/decoding methods include but are not limited to: Hamming code and Polar code.
  • the learning process of coding and decoding is mainly for the samples of the entire codeword space.
  • the coding/decoding method with a long code length such as the Polar code
  • an embodiment of the present application proposes an encoding/decoding method that can be generalized to the entire codeword space by sampling a small range of the codeword space.
  • the method forms a coding/decoding neural network through a neural network unit generated based on coding/decoding, and then encodes and/or decodes the information to be coded according to the coding/decoding neural network.
  • FIG. 4 is a schematic flowchart of an encoding method in an embodiment of the present application.
  • FIG. 4 :
  • Step 101 Generate a neural network unit.
  • the encoding device may generate the initial neural network unit based on the kernel matrix, and then, the encoding device trains the initial neural network unit so that the output value of the initial neural network unit is close to the desired optimization target. Then, the initial neural network unit after training is the neural network unit. Among them, the initial neuron parameters included in the initial neural network unit are updated to the neuron parameters included in the neural network unit after training. And, if the output value is close to the desired optimization goal, the error between the output information output by the initial network unit and the expected verification result corresponding to the input input information is less than the threshold.
  • the expected verification result of the input information is obtained after the input information is multiplied and added on the Galois Field (GF) (GF) based on the kernel matrix corresponding to the initial neural network unit.
  • GF Galois Field
  • the error between the output information and the expected verification result of the input information may be the difference between the output information and the expected verification result.
  • the error between the output information and the expected verification result of the input information may be the mean square difference between the output information and the expected verification result.
  • the operator can set the method for obtaining the error between the output information and the expected verification result according to the actual needs, which is not limited in this application.
  • the threshold corresponding to the error between the output information and the expected verification result can also be set accordingly according to the way the error is obtained.
  • Figure 5 is a schematic diagram of the process of generating the neural network unit.
  • Step 1011 construct an initial neural network unit.
  • the coding formula of the Polar code can be expressed by the following formula (1):
  • x is the output information
  • u is the input information
  • G is the encoding matrix.
  • G can also be called a generating matrix, that is, the generating matrix is one of the encoding matrices.
  • both the input information and the output information contain at least one bit of information.
  • n indicates that the coding neural network formed based on G may be composed of one or more neural network units corresponding to the same kernel matrix.
  • the encoding device may acquire the neural network unit based on the kernel matrix. Specifically, the encoding device obtains the calibration corresponding to the expected verification result of the input information of the neural network unit (to distinguish the input information of other neural networks or neural network units, hereinafter referred to as input information 4) based on formula (1) and formula (2) Test equations.
  • x 0 and x 1 are output information 4
  • u 0 and u 1 are input information 4.
  • x 0 , x 1 and x 2 are output information 4, and u 0 , u 1 and u 2 are input information 4.
  • T can be obtained through a look-up table (for example, the value in Table (1)) or can be obtained through calculation.
  • the specific obtaining method can refer to the prior art, which will not be repeated in this application.
  • the initial neural network unit includes an input layer, an output layer, and at least one hidden layer.
  • the initial neural network unit further includes an initial neuron parameter, which is used to indicate the mapping relationship between the input information 4 and the output information 4, wherein the initial neuron parameter may include: an initial weight value w and the initial offset vector b. It should be noted that the initial neuron parameters are generally randomly generated.
  • the hidden layer in the initial neural network unit includes Q nodes.
  • Q is greater than or equal to N
  • N is the minimum value between the code length of the input information and the code length of the output information.
  • the number of hidden layers may be one or more than one, where the more hidden layers, the greater the complexity of the neural network, but the stronger its generalization ability. Therefore, when setting the number of hidden layers of the initial neural network unit and other neural networks in the application examples, the operator can set the number based on actual requirements, combined with factors such as the processing power and computing power of the device, and this application is not limited.
  • the encoding device constructs an initial neural network unit based on the kernel matrix T 2 , where the expected verification result corresponding to the initial neural network unit constructed based on T 2 is shown on the output side of the initial neural network unit of FIG. 6, and the formula ( 3).
  • the number of nodes in the hidden layer is greater than the code length of the input information and output information. That is, when the code length of the input information and the input information is 2, the number of nodes in the hidden layer is an integer greater than 2.
  • the initial neural network unit has one hidden layer, and the hidden layer has 3 nodes as an example for detailed description.
  • Step 1012 Train the initial neural network unit to generate a neural network unit.
  • the encoding device may train the initial neural network unit based on the initial neuron parameters until the error between the output information 4 and the expected verification result of the input information 4 is less than the threshold.
  • the compilation device trains the initial neural network unit based on the input information 4, the expected verification result of the input information 4, and the initial neuron parameters.
  • the training process is as follows:
  • the input h of the next layer of neurons is the output of the neuron in the previous layer connected to it based on the initial Neuron parameters (an initial weight value w is set on each line between the two layers, and an initial bias vector b is set on each node) (the specific values of neuron parameters are not shown in Figure 6 For the setting method, please refer to the prior art, which will not be repeated in this application.) Weighted summation is performed, and then the activation function is passed.
  • the input h of each neuron is shown in formula (5):
  • the output y of the neural network (that is, the input information 4 output by the initial neural network in the embodiment of the present application) can be recursively expressed as:
  • the input information 4: [0, 1] of the initial neural network unit is calculated based on formula (5) and formula (6), and the output information is obtained (to distinguish other training results, hereinafter referred to as training result 1) .
  • the encoding device obtains the error value between the training result 1 and the expected verification result [1, 1].
  • the calculation method of the error value is as described above, that is, the difference between the training result 1 and the expected verification result, or the mean square value.
  • the loss function For specific details of obtaining the loss function, reference may be made to the prior art embodiments, which will not be repeated in this application.
  • the encoding device can calculate the residuals of the output layer by propagating the direction of the error, and then weight-add the residuals of the nodes in each layer layer by layer. Subsequently, based on the learning rate, each The residual value of the node updates the weight of the first layer (that is, the weight between the input layer and the hidden layer), and loops the above method to update the corresponding weight layer by layer.
  • the input information 4 is trained again, and the training result 2 is obtained, and the above steps are repeated, that is, the initial neuron parameters are repeatedly updated until the training result n output by the initial neural network is equal to It is expected that the error between the verification results is less than the target value (for example: the target value can be 0.0001), which can confirm the convergence of the training results.
  • the target value for example: the target value can be 0.0001
  • the above training method is a gradient descent method, and the encoding device may iteratively optimize the initial weight value w and the initial offset vector b through the gradient descent method, so that the loss function reaches the minimum value.
  • the encoding device may iteratively optimize the initial weight value w and the initial offset vector b through the gradient descent method, so that the loss function reaches the minimum value.
  • the encoding device can also train the initial neural network unit and other neural networks in the embodiments of the present application through other training methods, the purpose of which is to make the output value of the neural network close to the optimization target and update the neurons therein parameter.
  • the encoding device is based on a kernel matrix Generate the initial neural network unit, then, the generated initial neural network unit is shown in FIG. 7. Among them, for the input information [u 0 , u 1 , u 2 ], the expected verification result of the input information obtained based on T 3 is:
  • the encoding device is based on a kernel matrix Generate the initial neural network unit, then the generated initial neural network unit is shown in Figure 8.
  • the initial neural network unit after training is the neural network unit in the embodiment of the present application.
  • the initial neural network unit updates the initial neuron parameters it contains to neuron parameters (that is, the third neuron parameter in the embodiment of the present application, hereinafter referred to as neuron parameter 3).
  • the neuron parameters included in the obtained neural network unit after training are also different. That is, corresponding to a kernel matrix, there may be multiple initial neural network units, and each initial neural network unit contains different neuron parameters, and the output information it outputs is the same, that is, although the above multiple initial neural network units include Different neuron parameters, however, have the same coding ability.
  • Step 102 Generate an initial coding neural network.
  • the encoding device may generate an initial encoding neural network based on the neural network unit generated in step 101. That is, the initial coding neural network is composed of one or more neural network units. Among them, the neuron parameter 2 is included in the initial coding nerve, and the neuron parameter 2 is composed of the neuron parameter 3 included in the neural network unit, that is, the neuron parameter included in one or more neural network units constituting the initial coding neural network 2 Make up the initial neuron parameters of the initial coding neural network. Subsequently, the encoding device trains the initial encoding neural network to update the initial neuron parameters.
  • FIG. 10 it is a schematic flowchart of steps for generating an initial encoding neural network.
  • FIG. 10 it is a schematic flowchart of steps for generating an initial encoding neural network.
  • Step 1021 Obtain the coding network diagram.
  • the encoding device may obtain the encoding network graph, where the encoding network graph includes at least one encoding butterfly graph, and the encoding butterfly graph is used to indicate the input information and encoding of the encoding butterfly graph The check relationship between the output information of the butterfly chart.
  • the coding network diagram can be provided by the system.
  • Figure 11 is one of the coding network diagrams.
  • Step 1022 Match the neural network unit with the coded butterfly diagram.
  • step 1023 the neural network unit replaces the coded butterfly graph that matches successfully.
  • the neural network unit generated based on T 2 can be replaced with the coded butterfly graph in the coding network diagram in FIG. 11 that is successfully matched with the neural network unit generated based on T 2 .
  • the encoding device matches the neural network unit with the encoding butterfly diagram in the encoding network diagram one by one.
  • the matching method is:
  • the neural network unit generated based on T 2 can refer to FIG. 6, that is, the code length of the input information and output information of neural network unit 1 are both 2, namely It can be confirmed that the neural network unit 1 is a 2 ⁇ 2 neural network unit.
  • the encoding device may search for the encoding butterfly diagram with the same structure of 2 ⁇ 2 in the encoding network diagram.
  • the encoding device can successfully match the neural network unit 1 with the neural unit 1 in the encoding network diagram, that is, all the encoded butterfly images with a 2 ⁇ 2 structure are replaced with the neural network unit 1, to obtain the initial encoded neural network, such as Shown in Figure 12.
  • the initial coding neural network may be composed of any one or more neural network units in the set of neural network units. That is, any one or more neural network units in the set of neural network units may be replaced with the coded butterfly diagram in the coded network diagram.
  • the initial coding neural network corresponding to the generator matrix G may be composed of neural network units in the set of neural network units corresponding to different kernel matrices.
  • the neural network unit set 1 corresponding to the nuclear matrix T2 includes ⁇ neural network unit 1, neural network unit 2, neural network unit 3 ⁇
  • the neural network unit 2 corresponding to the nuclear matrix T3 includes: ⁇ neural network unit 4,
  • the coding network diagram acquired by the coding device includes at least one coding butterfly diagram with a 2 ⁇ 2 structure and at least one coding butterfly diagram with a 3 ⁇ 3 structure.
  • the encoding device may match the neural network unit 1, the neural network unit 3, and the neural network unit 5 to the encoded butterfly images one by one, and replace the encoded butterfly images successfully matched to obtain an initial encoded neural network.
  • Step 103 Train the initial coding neural network to obtain the coding neural network.
  • the encoding device may train the initial encoding neural network based on the neuron parameter 2 (consisting of the neuron parameter 1) of the initial encoding neural network and the activation function until the initial encoding neural network outputs The error between the output information 2 and the expected verification result of the input information 2 is less than the threshold. And, after the initial coding neural network is trained, the neuron parameter 2 is updated.
  • the trained initial coding neural network is the coding neural network
  • the updated neuron parameter 2 is the corresponding neuron parameter 1 of the coding neural network, where the neuron parameter 1 is used to encode the nerve
  • Step 104 Obtain input information.
  • the encoding device may obtain information that needs to be encoded (that is, the information to be encoded in the embodiment of the present application) from other devices (for example, input devices of terminals) that are in communication with it ), that is to enter information.
  • Step 105 Based on the coding neural network, encode the input information to obtain and output the output information.
  • the encoding device may encode the acquired input information (to distinguish other input information, hereinafter referred to as input information 1) based on the generated encoding neural network to obtain output information 1, and output the output information 1 output.
  • input information 1 to distinguish other input information
  • the specific encoding process is as follows: the encoding device performs weighted summation of the input information 1 based on the neuron parameter 1, and then performs calculation based on the activation function to obtain output information 1.
  • the encoding device performs weighted summation of the input information 1 based on the neuron parameter 1, and then performs calculation based on the activation function to obtain output information 1.
  • the technical solutions in the embodiments of the present application can generate the corresponding neural network unit based on the kernel matrix, and then form the neural network unit into a coding network.
  • a large nerve Network After connecting the small neural network unit, a large nerve Network, so that in the learning process of encoding, it can generalize to the entire codeword space through small learning samples, and weaken the information with longer codewords, such as: the effect of Polar code on the complexity of the neural network and the difficulty of learning .
  • Scenario 1 mainly gives a detailed example of the process of generating the encoding network of the Polar code.
  • the encoding method in the embodiment of the present application can be used as a general encoding method, that is, can be used in other encoding methods, such as Reed-Solomon (RS) code Hamming code, Bose–Chaudhuri–Hocquenghem (BCH) code, convolutional code, turbo code, low-density parity-check (LDPC) code, etc. (hereinafter referred to as Universal coding).
  • RS Reed-Solomon
  • BCH Bose–Chaudhuri–Hocquenghem
  • convolutional code turbo code
  • LDPC low-density parity-check
  • FIG. 14 is a schematic flowchart of an encoding method in an embodiment of the present application.
  • FIG. 14 :
  • Step 201 Generate a neural network unit.
  • the codeword c of the input information u with an arbitrary length k 1 can be expressed by formula (9):
  • the information bit length of u is k 2 .
  • the dimension of the coding matrix G is: k 1 ⁇ k 2 .
  • the encoding device can generate an initial neural network unit corresponding to the kernel matrix.
  • the encoding device trains the initial neural network unit until the output information is close to the expected verification result.
  • the specific details of the training can refer to scene one, which will not be repeated here.
  • Step 202 generate an initial coding neural network.
  • the encoding device can replace the butterfly diagram obtained by the neural network unit with the acquired encoding network diagram to obtain the initial encoding network.
  • scenario 1 for the Hamming code, the encoding device can replace the butterfly diagram obtained by the neural network unit with the acquired encoding network diagram to obtain the initial encoding network.
  • Step 203 Train the initial coding neural network to obtain the coding neural network.
  • Step 204 Obtain input information.
  • Step 205 based on the coding neural network, encode the input information to obtain and output the output information.
  • FIG. 16 is a schematic diagram of a decoding method in an embodiment of the present application.
  • FIG. 16 :
  • Step 301 Generate a neural network unit.
  • the decoding device may generate the initial neural network unit based on the kernel matrix, and then, the encoding device trains the initial neural network unit so that the output value of the initial neural network unit is close to the desired optimization target. Then, the initial neural network unit after training is the neural network unit. Among them, the initial neuron parameters included in the initial neural network unit are updated to the neuron parameters included in the neural network unit after training. And, if the output value is close to the desired optimization goal, the error between the output information output by the initial network unit and the expected verification result corresponding to the input input information is less than the threshold.
  • the expected verification result of the input information is obtained by performing multiplication and addition operations on the GF(2) based on the kernel matrix corresponding to the initial neural network unit.
  • x is the output information of the neural network unit
  • y is the input information of the neural network unit.
  • the input of each neural network unit or neural network is bit information
  • the encoded neural network output is encoded After the channel information is processed, the bit information is converted into a likelihood ratio. Therefore, in this scenario, the input information of the neural network unit and the neural unit is the likelihood ratio of the channel output.
  • the decoding device obtains the expected verification corresponding to the input information of the initial neural network unit based on formula (10) and formula (2) (where n in formula (2) is 1) As a result, an initial neural network unit is generated based on the input information and the expected verification result of the input information.
  • the initial neural network unit is shown in Figure 18.
  • the expected verification result of the input information obtained based on T 3 is:
  • the initial neural network unit is shown in Figure 19.
  • the expected verification result of the input information obtained based on T 4 is:
  • the decoding device trains the initial neural network unit to obtain the neural network unit.
  • the specific training process can refer to scenario 1, which is not repeated here.
  • Step 302 Generate an initial decoding neural network.
  • the decoding device may generate the initial coding neural network by the neural network unit generated in step 301. That is, the initial coding neural network is composed of one or more neural network units.
  • Step 303 Train the initial decoding neural network to obtain a decoding neural network.
  • the decoding device may train the initial decoding neural network to make the output information of the initial decoding neural network close to the expected decoding result, and perform the neuron parameters included in the decoding device. Update.
  • the initial decoding neural network after training is the decoding neural network.
  • the process of the decoding device training the decoding neural network based on the training information is different from the training process of the coding neural network in scene one, in which the coding neural network is trained by After training the input information (ie, training information), the error between the output information and the expected verification result of the input information is obtained, and then, based on the error, other training steps are performed and the neuron parameters are updated.
  • the training process of the decoding neural network because the training information input by the decoding neural network is a likelihood ratio, in the decoding neural network, the process of seeking the loss parameters is: based on the output information and the desired decoding The result is the loss function.
  • the desired decoding result is obtained by: encoding the encoding information (the encoding information is bit information) based on any encoding device (which may be the encoding device in the embodiments of the present application or other encoding devices) And output the encoding result.
  • the encoding result is also bit information.
  • the encoding information is the expected decoding result in this embodiment. That is, the training information input by the decoding neural network is the likelihood ratio value generated after the encoding result is processed by the channel. Therefore, the expected output value of the decoding neural network (that is, the expected decoding result) should be the encoding information.
  • Step 304 Obtain input information.
  • Step 305 Decode the input information based on the decoding neural network to obtain and output the output information.
  • the decoding device may decode the received input information based on the generated decoding neural network to obtain output information, and output the output information.
  • the specific decoding process is: the decoding device weights and sums the input information based on the neuron parameters, and then performs an operation based on the activation function to obtain output information.
  • the technical solution in the embodiments of the present application can generate the corresponding neural network unit based on the kernel matrix, and then form the neural network unit into a decoding neural network.
  • a large Neural network so that in the decoding learning process, it can be generalized to the entire codeword space through small learning samples, and weaken the information with longer codewords, such as: the complexity of the Polar code to the neural network and learning The impact of difficulty.
  • FIG. 20 is a schematic flowchart of an encoding/decoding method in an embodiment of the present application.
  • FIG. 20 is a schematic flowchart of an encoding/decoding method in an embodiment of the present application.
  • FIG. 20 :
  • Step 401 Generate an initial encoding/decoding neural network.
  • the encoding/decoding device may generate an initial encoding/decoding neural network based on the encoding neural network and the decoding neural network described above.
  • the encoding neural network and the decoding neural network in the initial encoding/decoding neural network may have the same neuron parameters.
  • the encoding neural network and the decoding neural network in the initial encoding/decoding neural network can have the same neuron parameters.
  • the encoding neural network and the decoding neural network in the initial encoding/decoding neural network may have different neuron parameters.
  • the encoding neural network and the decoding neural network in the initial encoding/decoding neural network may have different neuron parameters.
  • the Polar code is used as a detailed description.
  • the encoding/decoding device may obtain the encoding neural network generated by the encoding device, where the encoding neural network has completed the training process in scenario 1, that is, the output information of the encoding neural network is close to the expected verification result.
  • the encoding/decoding device can obtain the decoding neural network generated by the decoding device, wherein the decoding neural network can be a trained decoding neural network, that is, the output information of the decoding neural network is close to the expected verification result. Alternatively, it may be an untrained initial decoding neural network, that is, a decoding neural network having only initial neuron parameters.
  • the encoding/decoding device can share the parameters of the obtained encoding neural network and decoding neural network. That is, the neuron parameters in the coding neural network are replaced with the neuron parameters in the decoding neural network (or initial decoding neural network) to generate an initial coding/decoding neural network.
  • the encoding/decoding device may also acquire a decoding neural network that has completed training, and an encoding neural network that has completed training, or an initial encoding neural network that has not completed training.
  • the coding/decoding can replace the neuron parameters in the decoding neural network with the neuron parameters in the coding neural network (or initial coding neural network) to generate the initial coding/decoding neural network.
  • Step 402 Train the initial coding/decoding neural network to obtain a coding/decoding neural network.
  • the coding/decoding device trains the initial coding/decoding neural network, and the trained initial coding/decoding neural network is the coding/decoding neural network.
  • Figure 21 is a schematic flowchart of the initial coding/decoding neural network training method.
  • Figure 21 is a schematic flowchart of the initial coding/decoding neural network training method.
  • the encoding/decoding device inputs input information on the encoding neural network side of the encoding/decoding neural network, which may also be referred to as training information.
  • the code length of the training information is the same as the code length of the encoding/decoding neural network.
  • the encoding neural network in the initial encoding/decoding neural network encodes the training information, and obtains and outputs the encoding result. Then, after the channel processing, the encoding result is input to the decoding neural network, wherein the encoding result on the input decoding neural network side is the likelihood ratio.
  • the input training information is the expected verification result of the encoding/decoding neural network.
  • the encoding/decoding device can obtain the loss function based on the training information and the training result.
  • the method of obtaining the loss function can also be: mean square error, difference value and other functions.
  • the encoding/decoding device judges whether the result of the loss function has converged, that is, whether the error between the training information and the training result is greater than the threshold (for the specific details of the error, please refer to the embodiment in scenario 1 above), if it is less than the threshold , Then the training is over. If it is greater than or equal to the threshold, continue to the next step.
  • the encoding/decoding device may optimize the encoding/decoding neural network through an optimizer.
  • the optimization methods include but are not limited to: gradient encoding, etc. / Decoding neural network to iterate, and update the neuron parameters in the coding/decoding network, and share the updated neuron parameters to the coding neural network and the decoding neural network.
  • the encoding/decoding device repeats the above training steps until the error between the training result and the training information is less than the threshold, or the number of training rounds reaches the threshold of training rounds, or the duration of training reaches the threshold of training duration.
  • the initial coding/decoding neural network after training is the coding/decoding neural network.
  • Step 403 Encode the input information based on the coding/decoding neural network to obtain and output the output information.
  • the trained coding/decoding neural network may be divided into a coding neural network part and a decoding neural network part.
  • the coding/decoding neural network encodes the input information through the coding neural network part to obtain and output the coding result, and then, the decoding neural network part decodes the coding result to obtain and output the decoding result (where, the translation The code result is the output information, and the decoding result is the same as the input information).
  • the coding neural network may be installed in the terminal and/or base station, and the decoding neural network may be installed in the terminal and/or base station.
  • the encoding neural network in the terminal encodes the information to be encoded (ie, input information), obtains and outputs the encoding result, and transmits the channel to the base station.
  • the base station decodes the coding result through a decoding neural network to obtain and output the decoding result, which is the information to be coded.
  • the encoding neural network in the base station encodes the information to be encoded, obtains and outputs the encoding result, and transmits the channel to the terminal.
  • the terminal decodes the encoding result through a decoding neural network to obtain and output the decoding result, which is the information to be encoded.
  • a coding/decoding neural network composed of coding/decoding neural networks with different neuron parameters, such as Hamming code, it can be directly coded through the coding and decoding neural networks on both sides without training And decoding.
  • the technical solutions in the embodiments of the present application share the parameters of the encoding neural network and the decoding neural network, thereby improving the performance of the encoding/decoding neural network and reducing the complexity. And, through the coding/decoding neural network composed of coding neural network and decoding neural network, the learning cost and difficulty are reduced, and the learning efficiency is effectively improved.
  • the encoding/decoding method in the embodiments of the present application may also be applied to a multi-domain.
  • the generator matrix of the binary Polar code is composed of two elements "0" and "1”
  • the generator matrix of the multivariate Polar code can be composed of zero elements and GF(2 m ) (where m is greater than The integer of 1) is composed of non-zero elements.
  • the generation matrix of the multivariate Polar code can still be expressed as the Kronecker product operation based on the kernel matrix.
  • the The 1 in is replaced with a non-zero element on GF(2 m ), such as Where j, k, l are natural numbers, then, according to formula (2), the generating matrix G of the multivariate Polar code can be expressed as In the multivariate domain, corresponding to The neural network unit is shown in Figure 22.
  • the expected verification result of the input information obtained based on T 2 is:
  • the encoding neural network or decoding neural network generated based on it can refer to the descriptions in scenes 1 to 3, which will not be repeated here.
  • the encoding device, the decoding device, and/or the encoding/decoding device in the embodiments of the present application are used in a neural network unit or neural network (referring to an encoding neural network, a decoding neural network, and / Or encoding/decoding neural network)
  • a neural network unit or neural network referring to an encoding neural network, a decoding neural network, and / Or encoding/decoding neural network
  • preset conditions include but are not limited to: the number of training rounds is greater than the threshold of training rounds, that is, training can be stopped when the number of training rounds reaches the threshold of training rounds; the training duration is greater than the threshold of training duration, that is, when the training duration reaches When the training duration threshold is reached, you can stop training.
  • the training condition can be A: the loss function is less than the loss function threshold (that is, the error between the output information described in the embodiments of the present application and the expected verification result is less than the threshold)
  • Training condition B The number of training rounds is greater than the threshold of the number of training rounds. Then, when the loss function has not yet reached the loss function threshold, but the training round number has reached the training round number threshold, the training can be stopped. Thereby reducing training time and saving resources.
  • the inputs of each neural network unit and neural network are training information
  • the inputs of each neural network unit and neural network are information to be encoded.
  • the training information of the neural network unit or neural network with the same structure may be the same as or different from the coding information, which is not limited in this application.
  • the training phase (including the training part of the neural network unit and the training part of the neural network (coding neural network, decoding neural network, and/or coding/decoding neural network)) may be online Held, that is, the training result is directly input to the encoding device as input information.
  • the training phase can also be held offline, that is, before the neural network unit and the neural network in the embodiments of the present application are applied, the training of the neural network unit and the neural network is completed.
  • the encoding device 300 includes a processing unit 301 and a communication unit 302.
  • the encoding device 300 further includes a storage unit 303.
  • the processing unit 301, the communication unit 302, and the storage unit 303 are connected through a communication bus.
  • the storage unit 303 may include one or more memories, and the memory may be one or more devices or devices in a circuit for storing programs or data.
  • the storage unit 303 may exist independently, and is connected to the processing unit 201 through a communication bus.
  • the storage unit may also be integrated with the processing unit 301.
  • the encoding device 300 may be the terminal in the embodiment of the present application, for example, the terminal 200.
  • the schematic diagram of the terminal may be as shown in FIG. 2b.
  • the communication unit 302 of the encoding device 300 may include an antenna and a transceiver of the terminal, such as the antenna 205 and the transceiver 202 in FIG. 2b.
  • the encoding device 300 may be a chip in the terminal in the embodiment of the present application, for example, a chip in the terminal 200.
  • the communication unit 302 may be an input or output interface, a pin or a circuit, or the like.
  • the storage unit may store computer-executed instructions of the method on the terminal side, so that the processing unit 301 executes the encoding method in the foregoing embodiment.
  • the storage unit 303 may be a register, a cache, or RAM.
  • the storage unit 302 may be integrated with the processing unit 301.
  • the storage unit 303 may be a ROM or other type of static storage device that can store static information and instructions.
  • the storage unit 303 may be The processing unit 301 is independent.
  • the transceiver may be integrated on the encoding device 300, for example, the communication unit 302 integrates the transceiver 202.
  • the encoding device 300 may be a base station in the embodiment of the present application, for example, the base station 100.
  • the schematic diagram of the base station 100 may be as shown in FIG. 2a.
  • the communication unit 302 of the encoding device 300 may include an antenna and a transceiver of the base station, such as the antenna 205 and the transceiver 203 in FIG. 2a.
  • the communication unit 302 may also include a network interface of the base station, such as the network interface 204 in FIG. 2a.
  • the encoding device 300 may be a chip in the base station in the embodiment of the present application, for example, a chip in the base station 100.
  • the communication unit 302 may be an input or output interface, a pin or a circuit, or the like.
  • the storage unit may store computer-executed instructions of the method on the base station side, so that the processing unit 301 executes the encoding method in the foregoing embodiment.
  • the storage unit 32 may be a register, a cache, or RAM.
  • the storage unit 303 may be integrated with the processing unit 301; the storage unit 303 may be a ROM or other type of static storage device that can store static information and instructions.
  • the storage unit 303 may be The processing unit 301 is independent.
  • the transceiver may be integrated on the encoding device 300, for example, the communication unit 302 integrates the transceiver 203 and the network interface 204.
  • the encoding device 300 is a base station or a chip in the base station in the embodiment of the present application, the encoding method in the foregoing embodiment may be implemented.
  • the decoding device 400 includes a processing unit 401 and a communication unit 402.
  • the decoding device 400 further includes a storage unit 403.
  • the processing unit 401, the communication unit 402, and the storage unit 403 are connected through a communication bus.
  • the storage unit 403 may include one or more memories, and the memory may be one or more devices or devices in a circuit for storing programs or data.
  • the storage unit 403 may exist independently, and is connected to the processing unit 201 through a communication bus.
  • the storage unit may also be integrated with the processing unit 401.
  • the decoding device 400 may be the terminal in the embodiment of the present application, for example, the terminal 200.
  • the schematic diagram of the terminal can be shown in Figure 2b.
  • the communication unit 403 of the decoding device 400 may include an antenna and a transceiver of the terminal, such as the antenna 205 and the transceiver 202 in FIG. 2b.
  • the decoding device 400 may be a chip in the terminal in the embodiment of the present application, for example, a chip in the terminal 200.
  • the communication unit 402 may be an input or output interface, a pin or a circuit, or the like.
  • the storage unit may store computer-executed instructions of the method on the terminal side, so that the processing unit 401 executes the decoding method in the foregoing embodiment.
  • the storage unit 403 may be a register, a cache, or RAM.
  • the storage unit 403 may be integrated with the processing unit 401; the storage unit 403 may be a ROM or other type of static storage device that can store static information and instructions.
  • the processing unit 401 is independent.
  • the transceiver may be integrated on the decoding device 400, for example, the communication unit 402 integrates the transceiver 202.
  • the decoding device 400 may be a base station in the embodiment of the present application, for example, the base station 100.
  • the schematic diagram of the base station 100 may be as shown in FIG. 2a.
  • the communication unit 402 of the decoding device 400 may include an antenna and a transceiver of the base station, such as the antenna 205 and the transceiver 203 in FIG. 2a.
  • the communication unit 402 may also include a network interface of the base station, such as the network interface 204 in FIG. 2a.
  • the decoding device 400 may be a chip in the base station in the embodiment of the present application, for example, a chip in the base station 100.
  • the communication unit 403 may be an input or output interface, a pin or a circuit, or the like.
  • the storage unit may store computer-executed instructions of the method on the base station side, so that the processing unit 401 executes the decoding method in the foregoing embodiment.
  • the storage unit 32 may be a register, a cache, or a RAM, etc.
  • the storage unit 403 may be integrated with the processing unit 401; the storage unit 403 may be a ROM or other type of static storage device that can store static information and instructions, and the storage unit 403 may be The processing unit 401 is independent.
  • the transceiver may be integrated on the decoding device 400, for example, the communication unit 402 integrates the transceiver 203 and the network interface 204.
  • the decoding device 400 is a base station or a chip in the base station in the embodiments of the present application, the decoding method in the above embodiments may be implemented.
  • the encoding device 500 includes an acquisition module 501 and an encoding module 502.
  • the obtaining module 501 is used for the related steps of “obtaining input information”.
  • the support encoding device 500 executes steps 104 and 204 in the above method embodiment.
  • the encoding module 502 is used for the relevant steps of “obtaining an encoding neural network”.
  • the support encoding apparatus 500 executes step 101, step 102, step 103, step 201, step 202, and step 203 in the above method embodiment.
  • the encoding module 502 can also be used for related steps of "encoding input information".
  • the encoding device 500 is supported to execute steps 105 and 205 in the above method embodiment.
  • the encoding device 500 may implement other functions of the encoding device in the embodiments of the present application through the acquisition module 501 and the encoding module 502. For details, reference may be made to the related content in the foregoing embodiments.
  • the decoding device 600 includes an acquisition module 601 and a decoding module 602.
  • the obtaining module 601 is used for the relevant steps of “obtaining input information”.
  • the support encoding apparatus 500 executes step 404 in the above method embodiment.
  • the decoding module 602 is used for the relevant steps of “obtaining a decoding neural network”. For example, the support decoding device 600 executes steps 301, 302, and 303 in the above method embodiment.
  • the decoding module 602 can also be used for related steps of "decoding input information to obtain and output output information".
  • the supporting decoding device 600 executes step 405 in the above method embodiment.
  • the decoding device 600 may implement other functions of the decoding device in the embodiments of the present application through the obtaining module 601 and the decoding module 602. For details, reference may be made to the related content in the foregoing embodiments.
  • the embodiments of the present application also provide a computer-readable storage medium.
  • the methods described in the above embodiments may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium.
  • Computer-readable media may include computer storage media and communication media, and may also include any media that can transfer a computer program from one place to another.
  • a storage medium may be any available medium that can be accessed by a computer.
  • the computer-readable medium may include RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or use instructions or data structures
  • the required program code is stored in the form of and can be accessed by the computer.
  • any connection is properly termed a computer-readable medium.
  • coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technology such as infrared, radio, and microwave
  • coaxial cable, fiber optic cable , Twisted pair, DSL or wireless technologies such as infrared, radio and microwave are included in the definition of medium.
  • magnetic disks and optical disks include compact disks (CDs), laser disks, optical disks, digital versatile disks (DVDs), floppy disks, and blu-ray disks, where magnetic disks generally reproduce data magnetically, while optical disks reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
  • the embodiments of the present application also provide a computer program product.
  • the methods described in the above embodiments may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. If implemented in software, it can be implemented in whole or in part in the form of a computer program product.
  • the computer program product includes one or more computer instructions. When the above computer program instructions are loaded and executed on the computer, all or part of the processes or functions described in the above method embodiments are generated.
  • the above-mentioned computer may be a general-purpose computer, a dedicated computer, a computer network, a network device, user equipment, or other programmable devices.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Error Detection And Correction (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请实施例提供了一种编码、译码方法及装置,涉及通信领域,该方法可基于核矩阵生成对应的神经网络单元,再将神经网络单元组成编码神经网络或译码神经网络,实现了将小的神经网络单元进行连接后,得到编码神经网络或译码神经网络,从而在编码/译码的学习过程中,能够通过小的学习样本,泛化至整个码字空间,而弱化具有较长码字的信息对神经网络的复杂度以及学习难度的影响。

Description

编码方法、译码方法及装置 技术领域
本申请实施例涉及通信领域,尤其涉及一种编码方法、译码方法及装置。
背景技术
目前,在已有技术的编码/译码的学习过程中,编码/译码器需要对整个码字空间的样本进行学习,而由于极化码(Polar)的编码的特殊性导致了码长的增加,其相应的总码本空间码序列数呈指数式暴增。因此,已有技术在信息比特数较大时,导致对整个码字空间遍历的复杂度剧增,实现难度较大。
发明内容
本申请提供一种编码方法、译码方法及装置,能够在一定程度上弱化码长对码字空间遍历的影响,从而提升编码/译码的学习效率。
为达到上述目的,本申请采用如下技术方案:
第一方面,本申请实施例提供一种编码方法,该方法可以包括:获取第一输入信息;随后,基于编码神经网络,对获取到的第一输入信息进行编码,得到第一输出信息,随后,输出该第一输出信息;其中,编码神经网络中包含有第一神经元参数,第一神经元参数可用于指示第一输入信息与第一输出信息之间的映射关系;以及,编码神经网络由第一神经网络单元组成的初始编码神经网络经过训练后所得;其中,初始编码神经网络中包含有可用于指示初始编码神经网络输入的第二输入信息与输出的第二输出信息之间的映射关系的第二神经元参数;并且,初始编码神经网络经过训练后,将第二神经元参数更新为第一神经元参数;以及,第二神经元参数由第一神经网络单元包含的第三神经元参数组成,其中,第三神经元参数用于指示第一神经网络单元输入的第三输入信息与输出的第三输出信息之间的映射关系;以及,第三输出信息与第三输入信息的期望校验结果之间的误差小于阈值,其中,第三输入信息的期望校验结果为第三输入信息基于第一核矩阵在GF(2)上进行乘法和加法运算后得到的;在方法中,第一输入信息为待编码信息;以及,第二输入信息、第三输入信息为训练信息。
通过上述方式,实现了将小的神经网络单元进行连接后,得到大的神经网络,从而在编码的学习过程中,能够通过小的学习样本,泛化至整个码字空间。
在一种可能的实现方式中,获取第一神经网络单元的步骤,还可以包括:构造第一初始神经网络单元,并设置第一初始神经元参数,其中,第一初始神经元参数用于指示第一初始神经元输入的第四输入信息与输出的第四输出信息之间的映射关系,其中,第一初始神经元参数包括初始权重值与初始偏置向量;以及,第一初始神经网络单元包括至少一个隐藏层,每个隐藏层包含Q个节点,并且,Q为大于等于N的整数,其中,N为第三输入信息的码长与第三输出信息的码长之中的最小值;基于第一初始神经元参数, 对第一初始神经网络单元进行训练,直至第四输出信息与第四输入信息的期望校验结果之间的误差小于阈值,其中,第四输入信息的期望校验结果为第四输入信息基于第一核矩在GF(2)上进行乘法和加法运算后得到的;以及,对第一初始神经网络单元进行训练时,将第一初始神经参数进行更新,得到第三神经参数;其中,第四输入信息为训练信息。
通过上述方式,实现了基于第一核矩阵生成初始神经网络单元,再对初始神经网络单元进行经过训练,以生成对应于第一核矩阵的神经网络单元。
在一种可能的实现方式中,其中,第一核矩阵为
Figure PCTCN2019120898-appb-000001
或者,第一核矩阵为
Figure PCTCN2019120898-appb-000002
通过上述方式,实现了基于不同结构的核矩阵,生成相应的神经网络单元。
在一种可能的实现方式中,若第一核矩阵为
Figure PCTCN2019120898-appb-000003
则第三输入信息的期望校验结果为
Figure PCTCN2019120898-appb-000004
x 1=u 1;其中,x 0与x 1为第三输出信息,u 0与u 1为第三输入信息;或者,若第一核矩阵为
Figure PCTCN2019120898-appb-000005
则第三输入信息的期望校验结果为
Figure PCTCN2019120898-appb-000006
Figure PCTCN2019120898-appb-000007
其中,x 0、x 1与x 2为第三输出信息,u 0、u 1与u 2为第三输入信息。
通过上述方式,实现了基于不同结构的核矩阵,生成相应的神经网络单元。
在一种可能的实现方式中,初始编码神经网络由第一神经网络单元与第二神经网络单元组成;其中,第二神经网络单元包含第四神经元参数,第二神经网络单元由第一初始神经网络单元训练后所得,并且,第一初始神经网络单元经过训练后,将第一初始神经元参数进行更新,得到第四神经元参数,以及,第四神经参数与第三神经参数不相同。
通过上述方式,实现了具有不同神经元参数的并且具有相同结构的神经网络单元组成编码神经网络。
在一种可能的实现方式中,其中,初始编码神经网络由第一神经网络单元与第三神经网络单元组成,第三神经网络单元包含第五神经元参数;第五神经元参数用于指示第三神经网络单元输入的第五输入信息与输出的第五输出信息之间的映射关系;以及,第五输出信息与第五输入信息的期望校验结果之间的误差小于阈值,其中,第五输入信息的期望校验结果为第五输入信息基于第二核矩阵在GF(2 m)上进行乘法和加法运算后得到的;其中,第五输入信息为训练信息。
通过上述方式,实现了由多个对应于不同核矩阵的神经网络单元组成编码神经网络。
在一种可能的实现方式中,获取初始编码神经网络的步骤,包括:获取编码网络图,其中,编码网络图中包括至少一个编码蝶形图,编码蝶形图用于指示编码蝶形图的输入信息与编码蝶形图的输出信息之间的校验关系;将第一神经网络单元与至少一个编码蝶 形图进行匹配;将第一神经网络单元对匹配成功的编码蝶形图进行替换,并得到初始编码神经网络。
通过上述方式,实现了由小的神经网络单元组成编码神经网络,从而可通过小的学习样本,泛化至整个码字空间。
第二方面,本申请实施例提供一种译码方法,该方法可以包括:获取第一输入信息,随后,基于译码神经网络,对获取到的第一输入信息进行译码,得到并输出第一输出信息;其中,译码神经网络中包含第一神经元参数,第一神经元参数用于指示第一输入信息与第一输出信息之间的映射关系;以及,译码神经网络由第一神经网络单元组成的初始译码神经网络经过训练后所得;其中,初始译码神经网络中包含用于指示初始译码神经网络输入的第二输入信息与输出的第二输出信息之间的映射关系的第二神经元参数;并且,初始译码神经网络经过训练后,将第二神经元参数更新为第一神经元参数;以及,第二神经元参数由第一神经网络单元包含的第三神经元参数组成,其中,第三神经元参数用于指示第一神经网络单元输入的第三输入信息与输出的第三输出信息之间的映射关系;以及,第三输出信息与第三输入信息的期望校验结果之间的误差小于阈值,其中,第三输入信息的期望校验结果为第三输入信息基于第一核矩阵在GF(2 m)上进行乘法和加法运算后得到的;其中,第一输入信息为待译码信息;以及,第二输入信息、第三输入信息为训练信息。
在一种可能的实现方式中,获取第一神经网络单元的步骤,可以包括:构造第一初始神经网络单元,并设置第一初始神经元参数,其中,第一初始神经元参数用于指示第一初始神经元输入的第四输入信息与输出的第四输出信息之间的映射关系,其中,第一初始神经元参数包括初始权重值与初始偏置向量;以及,第一初始神经网络单元包括至少一个隐藏层,每个隐藏层包含Q个节点,并且,Q为大于等于N的整数,其中,N为第三输入信息的码长与第三输出信息的码长之中的最小值;基于第一初始神经元参数,对第一初始神经网络单元进行训练,直至第四输出信息与第四输入信息的期望校验结果之间的误差小于阈值,其中,第四输入信息的期望校验结果为第四输入信息基于第一核矩在GF(2 m)上进行乘法和加法运算后得到的;以及,对第一初始神经网络单元进行训练时,将第一初始神经参数进行更新,得到第三神经参数;其中,第四输入信息为训练信息。
在一种可能的实现方式中,其中,第一核矩阵为
Figure PCTCN2019120898-appb-000008
或者,第一核矩阵为
Figure PCTCN2019120898-appb-000009
在一种可能的实现方式中,若第一核矩阵为
Figure PCTCN2019120898-appb-000010
则第三输入信息的期望校验结果为
Figure PCTCN2019120898-appb-000011
x 1=y 1;其中,x 0与x 1为第三输出信息,y 0与y 1为第三输入信息;或 者,若第一核矩阵为
Figure PCTCN2019120898-appb-000012
则第三输入信息的期望校验结果为
Figure PCTCN2019120898-appb-000013
Figure PCTCN2019120898-appb-000014
其中,x 0、x 1与x 2为第三输出信息,y 0、y 1与y 2为第三输入信息。
在一种可能的实现方式中,其中,初始译码神经网络由第一神经网络单元与第二神经网络单元组成;其中,第二神经网络单元包含第四神经元参数,第二神经网络单元由第一初始神经网络单元训练后所得,并且,第一初始神经网络单元经过训练后,将第一初始神经元参数进行更新,得到第四神经元参数,以及,第四神经参数与第三神经参数不相同。
在一种可能的实现方式中,其中,初始译码神经网络由第一神经网络单元与第三神经网络单元组成,第三神经网络单元包含第五神经元参数;第五神经元参数用于指示第三神经网络单元输入的第五输入信息与输出的第五输出信息之间的映射关系;以及,第五输出信息与第五输入信息的期望校验结果之间的误差小于阈值,其中,第五输入信息的期望校验结果为第五输入信息基于第二核矩阵在GF(2 m)上进行乘法和加法运算后得到的;其中,第五输入信息为训练信息。
在一种可能的实现方式中,获取初始译码神经网络的步骤,包括:获取译码网络图,其中,译码网络图中包括至少一个译码蝶形图,译码蝶形图用于指示译码蝶形图的输入信息与译码蝶形图的输出信息之间的校验关系;将第一神经网络单元与至少一个译码蝶形图进行匹配;将第一神经网络单元对匹配成功的译码蝶形图进行替换,并得到初始译码神经网络。
第三方面,本申请实施例提供一种编码/译码方法,该方法可以包括:基于编码/译码神经网络,对第一输入信息进行编码和/或译码;其中,编码/译码神经网络包含权利要求1-7任一项的编码神经网络以及权利要求8-14的译码神经网络。
通过上述方式,实现了一种学习复杂度低,难度较小的编码/译码方法。
在一种可能的实现方式中,其中,编码神经网络中的神经元参数与译码神经网络中的神经元参数不相同;或者,编码神经网络中的神经元参数与译码神经网络中的神经元参数相同。
通过上述方式,实现了编/译码神经网络可由具有相同神经元参数的编码神经网络和译码神经网络组成。还可以由具有不相同的神经元参数的编码神经网络和译码神经网络组成。
第四方面,本申请实施例提供一种编码装置,装置可以包括:获取模块,用于获取第一输入信息,以及,编码模块,用于基于编码神经网络,对第一输入信息进行编码, 得到并输出第一输出信息;其中,编码神经网络中包含第一神经元参数,第一神经元参数用于指示第一输入信息与第一输出信息之间的映射关系;以及,编码神经网络由第一神经网络单元组成的初始编码神经网络经过训练后所得;其中,初始编码神经网络中包含用于指示初始编码神经网络输入的第二输入信息与输出的第二输出信息之间的映射关系的第二神经元参数;并且,初始编码神经网络经过训练后,将第二神经元参数更新为第一神经元参数;以及,第二神经元参数由第一神经网络单元包含的第三神经元参数组成,其中,第三神经元参数用于指示第一神经网络单元输入的第三输入信息与输出的第三输出信息之间的映射关系;以及,第三输出信息与第三输入信息的期望校验结果之间的误差小于阈值,其中,第三输入信息的期望校验结果为第三输入信息基于第一核矩阵在伽罗华域GF(2 m)上进行乘法和加法运算后得到的;其中,第一输入信息为待编码信息;以及,第二输入信息、第三输入信息为训练信息。
在一种可能的实现方式中,编码模块还用于:构造第一初始神经网络单元,并设置第一初始神经元参数,其中,第一初始神经元参数用于指示第一初始神经元输入的第四输入信息与输出的第四输出信息之间的映射关系,其中,第一初始神经元参数包括初始权重值与初始偏置向量;以及,第一初始神经网络单元包括至少一个隐藏层,每个隐藏层包含Q个节点,并且,Q为大于等于N的整数,其中,N为第三输入信息的码长与第三输出信息的码长之中的最小值;基于第一初始神经元参数,对第一初始神经网络单元进行训练,直至第四输出信息与第四输入信息的期望校验结果之间的误差小于阈值,其中,第四输入信息的期望校验结果为第四输入信息基于第一核矩在GF(2 m)上进行乘法和加法运算后得到的;以及,对第一初始神经网络单元进行训练时,将第一初始神经参数进行更新,得到第三神经参数;其中,第四输入信息为训练信息,并且,第四输入信息与第三输入信息相同或不同。
在一种可能的实现方式中,其中,第一核矩阵为
Figure PCTCN2019120898-appb-000015
或者,第一核矩阵为
Figure PCTCN2019120898-appb-000016
在一种可能的实现方式中,若第一核矩阵为
Figure PCTCN2019120898-appb-000017
则第三输入信息的期望校验结果为
Figure PCTCN2019120898-appb-000018
x 1=u 1;其中,x 0与x 1为第三输出信息,u 0与u 1为第三输入信息;或者,若第一核矩阵为
Figure PCTCN2019120898-appb-000019
则第三输入信息的期望校验结果为
Figure PCTCN2019120898-appb-000020
Figure PCTCN2019120898-appb-000021
其中,x 0、x 1与x 2为第三输出信息,u 0、u 1与u 2为第三输入信息。
在一种可能的实现方式中,其中,初始编码神经网络由第一神经网络单元与第二神经网络单元组成;其中,第二神经网络单元包含第四神经元参数,第二神经网络单元由第一初始神经网络单元训练后所得,并且,第一初始神经网络单元经过训练后,将第一 初始神经元参数进行更新,得到第四神经元参数,以及,第四神经参数与第三神经参数不相同。
在一种可能的实现方式中,其中,初始编码神经网络由第一神经网络单元与第三神经网络单元组成,第三神经网络单元包含第五神经元参数;第五神经元参数用于指示第三神经网络单元输入的第五输入信息与输出的第五输出信息之间的映射关系;以及,第五输出信息与第五输入信息的期望校验结果之间的误差小于阈值,其中,第五输入信息的期望校验结果为第五输入信息基于第二核矩阵在GF(2 m)上进行乘法和加法运算后得到的;其中,第五输入信息为训练信息。
在一种可能的实现方式中,编码模块还用于:获取编码网络图,其中,编码网络图中包括至少一个编码蝶形图,编码蝶形图用于指示编码蝶形图的输入信息与编码蝶形图的输出信息之间的校验关系;将第一神经网络单元与至少一个编码蝶形图进行匹配;将第一神经网络单元对匹配成功的编码蝶形图进行替换,并得到初始编码神经网络。
第五方面,本申请实施例提供一种译码装置,装置可以包括:获取模块,用于获取第一输入信息,以及,译码模块,用于基于译码神经网络,对第一输入信息进行译码,得到并输出第一输出信息;其中,译码神经网络中包含第一神经元参数,第一神经元参数用于指示第一输入信息与第一输出信息之间的映射关系;以及,译码神经网络由第一神经网络单元组成的初始译码神经网络经过训练后所得;其中,初始译码神经网络中包含用于指示初始译码神经网络输入的第二输入信息与输出的第二输出信息之间的映射关系的第二神经元参数;并且,初始译码神经网络经过训练后,将第二神经元参数更新为第一神经元参数;以及,第二神经元参数由第一神经网络单元包含的第三神经元参数组成,其中,第三神经元参数用于指示第一神经网络单元输入的第三输入信息与输出的第三输出信息之间的映射关系;以及,第三输出信息与第三输入信息的期望校验结果之间的误差小于阈值,其中,第三输入信息的期望校验结果为第三输入信息基于第一核矩阵在伽罗华域GF(2 m)上进行乘法和加法运算后得到的;其中,第一输入信息为待译码信息;以及,第二输入信息、第三输入信息为训练信息。
在一种可能的实现方式中,译码模块还用于:构造第一初始神经网络单元,并设置第一初始神经元参数,其中,第一初始神经元参数用于指示第一初始神经元输入的第四输入信息与输出的第四输出信息之间的映射关系,其中,第一初始神经元参数包括初始权重值与初始偏置向量;以及,第一初始神经网络单元包括至少一个隐藏层,每个隐藏层包含Q个节点,并且,Q为大于等于N的整数,其中,N为第三输入信息的码长与第三输出信息的码长之中的最小值;基于第一初始神经元参数,对第一初始神经网络单元进行训练,直至第四输出信息与第四输入信息的期望校验结果之间的误差小于阈值,其中,第四输入信息的期望校验结果为第四输入信息基于第一核矩在GF(2 m)上进行乘法和加法运算后得到的;以及,对第一初始神经网络单元进行训练时,将第一初始神经参数 进行更新,得到第三神经参数;其中,第四输入信息为训练信息,并且,第四输入信息与第三输入信息相同或不同。
在一种可能的实现方式中,其中,第一核矩阵为
Figure PCTCN2019120898-appb-000022
或者,第一核矩阵为
Figure PCTCN2019120898-appb-000023
在一种可能的实现方式中,若第一核矩阵为
Figure PCTCN2019120898-appb-000024
则第三输入信息的期望校验结果为
Figure PCTCN2019120898-appb-000025
x 1=y 1;其中,x 0与x 1为第三输出信息,y 0与y 1为第三输入信息;或者,若第一核矩阵为
Figure PCTCN2019120898-appb-000026
则第三输入信息的期望校验结果为
Figure PCTCN2019120898-appb-000027
Figure PCTCN2019120898-appb-000028
其中,x 0、x 1与x 2为第三输出信息,y 0、y 1与y 2为第三输入信息。
在一种可能的实现方式中,其中,初始译码神经网络由第一神经网络单元与第二神经网络单元组成;其中,第二神经网络单元包含第四神经元参数,第二神经网络单元由第一初始神经网络单元训练后所得,并且,第一初始神经网络单元经过训练后,将第一初始神经元参数进行更新,得到第四神经元参数,以及,第四神经参数与第三神经参数不相同。
在一种可能的实现方式中,其中,初始译码神经网络由第一神经网络单元与第三神经网络单元组成,第三神经网络单元包含第五神经元参数;第五神经元参数用于指示第三神经网络单元输入的第五输入信息与输出的第五输出信息之间的映射关系;以及,第五输出信息与第五输入信息的期望校验结果之间的误差小于阈值,其中,第五输入信息的期望校验结果为第五输入信息基于第二核矩阵在GF(2 m)上进行乘法和加法运算后得到的;其中,第五输入信息为训练信息。
在一种可能的实现方式中,译码模块还用于:获取译码网络图,其中,译码网络图中包括至少一个译码蝶形图,译码蝶形图用于指示译码蝶形图的输入信息与译码蝶形图的输出信息之间的校验关系;将第一神经网络单元与至少一个译码蝶形图进行匹配;将第一神经网络单元对匹配成功的译码蝶形图进行替换,并得到初始译码神经网络。
第六方面,本申请实施例提供一种编码/译码系统,系统用于基于编码/译码神经网络,对第一输入信息进行编码和/或译码;其中,系统用于包含权利要求18-24任一项的编码神经网络以及权利要求25-31的译码神经网络。
在一种可能的实现方式中,其中,编码神经网络中的神经元参数与译码神经网络中的神经元参数不相同。或者,编码神经网络中的神经元参数与译码神经网络中的神经元 参数相同。
第七方面,本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包含至少一段代码,该至少一段代码可由装置执行,以控制装置执行第一方面所述的方法。
第八方面,本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包含至少一段代码,该至少一段代码可由装置执行,以控制装置执行第二方面所述的方法。
第九方面,本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包含至少一段代码,该至少一段代码可由装置执行,以控制装置执行第三方面所述的方法。
第九方面,本申请实施例提供一种计算机程序,当计算机程序被装置执行时,用于执行第一方面所述的方法。
第十方面,本申请实施例提供一种计算机程序,当计算机程序被装置执行时,用于执行第二方面所述的方法。
第十一方面,本申请实施例提供一种计算机程序,当计算机程序被装置执行时,用于执行第三方面所述的方法。
第十二方面,本申请实施例提供了一种芯片,该芯片包括处理电路、收发管脚。其中,该收发管脚、和该处理器通过内部连接通路互相通信,该处理器执行第一方面或第一方面的任一种可能的实现方式中的方法,以控制接收管脚接收信号,以控制发送管脚发送信号。
第十三方面,本申请实施例提供了一种芯片,该芯片包括处理电路、收发管脚。其中,该收发管脚、和该处理器通过内部连接通路互相通信,该处理器执行第二方面或第二方面的任一种可能的实现方式中的方法,以控制接收管脚接收信号,以控制发送管脚发送信号。
第十四方面,本申请实施例提供了一种芯片,该芯片包括处理电路、收发管脚。其中,该收发管脚、和该处理器通过内部连接通路互相通信,该处理器执行第三方面或第三方面的任一种可能的实现方式中的方法,以控制接收管脚接收信号,以控制发送管脚发送信号。
第十五方面,本申请实施例提供了一种编码装置,该装置包括存储器,用于存储指令或数据,以及,与存储器进行通信连接的至少一个处理器,处理器可用于支持编码装置在运行所述指令时执行第一方面或第一方面的任一种可能的实现方式中的方法。
第十六方面,本申请实施例提供了一种译码装置,该装置包括存储器,用于存储指令或数据,以及,与存储器进行通信连接的至少一个处理器,处理器可用于支持编码装置在运行所述指令时执行第二方面或第二方面的任一种可能的实现方式中的方法。
第十七方面,本申请实施例提供了一种编/译码装置,该装置包括存储器,用于存储指令或数据,以及,与存储器进行通信连接的至少一个处理器,处理器可用于支持编码装置在运行所述指令时执行第三方面或第三方面的任一种可能的实现方式中的方法。
第十八方面,本申请实施例提供一种编码/译码系统,该系统包括上述第四方面和第五方面涉及的编码装置和译码装置。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图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是本申请实施例提供的一种译码装置的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
本申请实施例的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一目标对象和第二目标对象等是用于区别不同的目标对象,而不是用于描述目标对象的特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。例如,多个处理单元是指两个或两个以上的处理单元;多个系统是指两个或两个以上的系统。
在对本申请实施例的技术方案说明之前,首先结合附图对本申请实施例的通信系统进行说明。参见图1,为本申请实施例提供的一种通信系统示意图。该通信系统中包括基站100、终端200。在本申请实施例具体实施的过程中,终端200可以为电脑、智能手机、电话机、有线电视机顶盒、数字用户线路路由器等设备。需要说明的是,在实际应用中,基站与终端的数量均可以为一个或多个,图1所示通信系统的基站与终端的数量仅为适应性举例,本申请对此不做限定。
上述通信系统可以用于支持第四代(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)以及面向未来的通信技术。
以及,图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)等等。为方便描述,本申请所有实施例中,为终端提供无线通信功能的装置统称为网络设备或基站。
图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进行通信。多个终端之间也可以进行通信。终端可以是静态固定的,也可以是移动的。
图2a是一种基站的结构示意图。在图2a中:
基站100中包括至少一个处理器101、至少一个存储器102、至少一个收发器103、至少一个网络接口104和一个或多个天线105。处理器101、存储器102、收发器103和网络接口104相连,例如通过总线相连。天线105与收发器103相连。网络接口104用于使得基站通过通信链路,与其它通信设备相连。在本申请实施例中,所述连接可包括各类接口、传输线或总线等,本实施例对此不做限定。
本申请实施例中的处理器,例如处理器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可以是集成在一个芯片中或位于多个不同的芯片上。
本申请实施例中的存储器,例如存储器102,可以包括如下至少一种类型:只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态 存储设备,也可以是电可擦可编程只读存储器(Electrically erasable programmabler-only memory,EEPROM)。在某些场景下,存储器还可以是只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器102可以是独立存在,与处理器101相连。可选的,存储器102也可以和处理器101集成在一起,例如集成在一个芯片之内。其中,存储器102能够存储执行本申请实施例的技术方案的程序代码,并由处理器101来控制执行,被执行的各类计算机程序代码也可被视为是处理器101的驱动程序。例如,处理器101用于执行存储器102中存储的计算机程序代码,从而实现本申请实施例中的技术方案。
收发器103可以用于支持接入网设备与终端之间射频信号的接收或者发送,收发器103可以与天线105相连。收发器103包括发射机Tx和接收机Rx。具体地,一个或多个天线105可以接收射频信号,该收发器103的接收机Rx用于从天线接收所述射频信号,并将射频信号转换为数字基带信号或数字中频信号,并将该数字基带信号或数字中频信号提供给所述处理器101,以便处理器101对该数字基带信号或数字中频信号做进一步的处理,例如解调处理和译码处理。此外,收发器103中的发射机Tx还用于从处理器101接收经过调制的数字基带信号或数字中频信号,并将该经过调制的数字基带信号或数字中频信号转换为射频信号,并通过一个或多个天线105发送所述射频信号。具体地,接收机Rx可以选择性地对射频信号进行一级或多级下混频处理和模数转换处理以得到数字基带信号或数字中频信号,所述下混频处理和模数转换处理的先后顺序是可调整的。发射机Tx可以选择性地对经过调制的数字基带信号或数字中频信号时进行一级或多级上混频处理和数模转换处理以得到射频信号,所述上混频处理和数模转换处理的先后顺序是可调整的。数字基带信号和数字中频信号可以统称为数字信号。
图2b是一种终端的结构示意图。在图2b中:
终端200包括至少一个处理器201、至少一个收发器202和至少一个存储器203。处理器201、存储器203和收发器202相连。可选的,终端200还可以包括一个或多个天线204。天线204与收发器202相连。
收发器202、存储器203以及天线204可以参考图2a中的相关描述,实现类似功能。
处理器201可以是基带处理器,也可以是CPU,基带处理器和CPU可以集成在一起,或者分开。
处理器201可以用于为终端200实现各种功能,例如用于对通信协议以及通信数据进行处理,或者用于对整个终端200进行控制,执行软件程序,处理软件程序的数据;或者处理器201用于实现上述功能中的一种或者多种。
在上述通信系统中,终端在与基站进行通信时,终端与基站会互为发送端与接收端,即,终端向基站发送信号时,终端作为发送端,基站作为接收端,反之,基站向终端发送信号时,基站作为发送端,而终端作为接收端。具体的,在无线通信的过程中,基本流程如图3所示,在图3中:
在发送端,信源依次经过信源编码、信道编码、和调制映射后发出。在接收端,依次通过解映射解调、信道译码和信源译码输出信宿。
需要说明的是,当终端作为发送端时,图3中的编码过程(信源编码、信道编码、和调制映射等步骤)由终端执行,当终端作为接收端时,图3中的译码过程(映射解调、信道译码和信源译码等步骤)由终端执行。基站相同。
目前的信道编/译码方式包括但不限于:汉明码、Polar码。
在已有技术中,编译码的学习过程,主要是针对整个码字空间的样本进行学习,但是,对于码长较长的编/译码方式,例如:Polar码,举例说明,当信息比特长度K=32时,则有2 32个码字。因此,由于难度以及复杂度剧增,已有技术无法完成对编译码的学习。
综上,本申请实施例中提出了一种实现通过对码字空间的小范围采样,即可泛化到整个码字空间的编码/译码方法。该方法通过基于编码/译码生成的神经网络单元,构成编码/译码神经网络,再根据编码/译码神经网络对待编码信息进行编码和/或译码。
结合上述如图1所示的通信系统示意图,下面介绍本申请的具体实施方案:
场景一
结合图1,如图4所示为本申请实施例中的编码方法的流程示意图,在图4中:
步骤101,生成神经网络单元。
具体的,在本申请的实施例中,编码装置可基于核矩阵生成初始神经网络单元,随后,编码装置对初始神经网络单元进行训练,使初始神经网络单元的输出值接近期望的优化目标。则,训练后的初始神经网络单元即为所述神经网络单元。其中,初始神经网络单元所包含的初始神经元参数,经过训练后,更新为神经网络单元中包含的神经元参数。以及,输出值接近期望的优化目标即为:初始网络单元输出的输出信息与输入的输入信息对应的期望校验结果之间的误差小于阈值。在本申请的实施例中,输入信息的期望校验结果为输入信息基于初始神经网络单元对应的核矩阵在伽罗华域(Galois Field)GF(2)上进行乘法和加法运算后得到的。
可选地,在一个实施例中,输出信息与输入信息的期望校验结果之间的误差可以为输出信息与期望校验结果之间的差值。
可选地,在另一个实施例中,输出信息与输入信息的期望校验结果之间的误差可以为输出信息与期望校验结果之间的均方差。
操作人员可根据实际需求设置求取输出信息与期望校验结果之间的误差的方式,本申请不做限定。
以及,对应于输出信息与期望校验结果之间的误差的阈值也可根据误差求取的方式不同,进行相应的设置。
下面结合Polar码对生成神经网络单元的方法进行详细阐述,如图5所示为生成神经网络单元的流程示意图,在图5中:
步骤1011,构造初始神经网络单元。
具体的,Polar码的编码公式可以用下列公式(1)表示:
x=uG        (1)
其中,x为输出信息,u为输入信息,G为编码矩阵,在Polar码中,G也可以称为 生成矩阵,即生成矩阵为编码矩阵中的一种。其中,输入信息与输出信息均包含至少一个比特信息。
在已有技术中,Polar码的生成矩阵G的表达式可以如公式(2):
Figure PCTCN2019120898-appb-000029
其中,
Figure PCTCN2019120898-appb-000030
表示克罗内克积,
Figure PCTCN2019120898-appb-000031
表示克罗内克幂。以及,n表示基于G所构成的编码神经网络可以由一个或多个相同的核矩阵对应的神经网络单元组成。具体实现将在下面的实施例中进行详细说明。
在本申请的实施例中,构成初始神经网络单元时,编码装置可基于核矩阵,获取到神经网络单元。具体的,编码装置基于公式(1)与公式(2)获取神经网络单元的输入信息(为区别其它神经网络或神经网络单元的输入信息,以下简称输入信息4)的期望校验结果对应的校验方程。
举例说明:若
Figure PCTCN2019120898-appb-000032
则输入信息4对应的校验方程为:
Figure PCTCN2019120898-appb-000033
x 1=u 1        (3)
其中,x 0与x 1为输出信息4,u 0与u 1为输入信息4。
Figure PCTCN2019120898-appb-000034
则输入信息4对应的校验方程为:
Figure PCTCN2019120898-appb-000035
其中,x 0、x 1与x 2为输出信息4,u 0、u 1与u 2为输入信息4。
需要说明的是,T的取值可以通过查表(例如表(1)中的取值)获取也可以通过计算获取,具体获取方式可参照已有技术中,本申请不再赘述。
以及,常用T如表(1)所示:
Figure PCTCN2019120898-appb-000036
Figure PCTCN2019120898-appb-000037
Figure PCTCN2019120898-appb-000038
Figure PCTCN2019120898-appb-000039
表1
继续参照图5,初始神经网络单元包括输入层、输出层以及至少一个隐藏层。在本申请的实施例中,初始神经网络单元还包括有初始神经元参数,该参数用于指示输入信息4与输出信息4之间的映射关系,其中,初始神经元参数可包括:初始权重值w以及初始偏置向量b。需要说明的是,初始神经元参数一般情况下为随机生成的。
以及,初始神经网络单元中的隐藏层包含Q个节点,在本申请的实施例中,Q大于等于N,而N为输入信息的码长与输出信息的码长之中的最小值。需要说明的是,隐藏层的数量可以为一个或一个以上,其中,隐藏层的数量越多,则神经网络的复杂度越大,但其泛化能力越强。因此,操作人员在设置初始神经网络单元以及申请实施例中的其它神经网络的隐藏层的数量时,可基于实际需求,结合装置的处理能力、计算能力等因素进行设置,本申请不做限定。
在本实施例中,以Polar码为例,构造的初始神经网络单元如图6所示。在图6中:
编码装置基于核矩阵T 2构造初始神经网络单元,其中,对应于基于T 2构造的初始神经网络单元的期望校验结果如图6的初始神经网络单元的输出侧所示,即可参照公式(3)。
由于Polar码的特殊性,其编码或译码过程中,输入信息与输出信息的码长对称,即相等。举例说明:如公式(3),输入信息为:u 0与u 1,则,输出信息为:x 0与x 1,码长为N=2。
因此,在Polar码中,隐藏层中的节点个数大于输入信息与输出信息的码长。即,在 输入信息与输入信息的码长为2的情况下,隐藏层中的节点数为大于2的整数。在图6中,仅以初始神经网络单元具有一个隐藏层,并且,隐藏层具有3个节点为例进行详细说明。
步骤1012,对初始神经网络单元进行训练,生成神经网络单元。
具体的,在本实施例中,编码装置可基于初始神经元参数,对初始神经网络单元进行训练,直至输出信息4与输入信息4的期望校验结果之间的误差小于阈值。
仍以图6中的初始神经网络单元为例进行说明:
具体的,以输入信息4为[0,1],即u 0=0与u 1=1为例。编译装置对输入信息4基于公式(3)在GF(2)域上进行乘法和加法运算,即异或运算(需要说明的是,在本实施例中,m=1,即基于输入信息的二元特性,本实施例的期望校验结果在二元域上进行运算),得到对应于输入信息4的期望校验结果为:[1,1],即,x 0=1,x 1=1。
随后,编译装置基于输入信息4、输入信息4的期望校验结果以及初始神经元参数对初始神经网络单元进行训练,训练过程如下:
1)获取损失函数。
具体的,对于相邻两层的神经元(即输入层、输入层或隐藏层中的节点),下一层神经元的输入h即为与之相连的上一层神经元的输出x基于初始神经元参数(两层之间的每一条连线上均设置有一个初始权重值w,以及每个节点上设置有一个初始偏置向量b)(图6中未示出神经元参数的具体数值,设置方式可参照已有技术中,本申请不再赘述)对进行加权求和,再经过激活函数,每个神经元的输入h如公式(5)所示:
h=f(wx+b)        (5)
则,神经网络的输出y(即为本申请实施例中初始神经网络输出的输入信息4)可以递归表示为:
y=f n(w nf n-1+b n)         (6)
继续参照图6,基于公式(5)和公式(6)对初始神经网络单元的输入信息4:[0,1]进行运算,并获取输出信息(为区分其它训练结果,以下简称训练结果1)。
随后,编码装置获取训练结果1与期望校验结果[1,1]之间的误差值。误差值的计算方法如上文所述,即,可以为训练结果1与期望校验结果之间的差值,或均方值。求取损失函数的具体细节可参照已有技术实施例,本申请不再赘述。
2)将误差反向传播。
具体的,编码装置可通过将误差方向传播,计算出输出层的残差,然后再逐层对每一层中的节点的残差进行加权求和,随后,基于学习率,与输入层每个节点的残差值,更新第一层权重(即输入层与隐藏层之间的权重),并循环上述方法,逐层更新对应的权重。随后,在利用更新后的权重,再次对输入信息4进行训练,并获得训练结果2,以及,循环上述步骤,即,对初始神经元参数进行反复更新,直至初始神经网络输出的训练结果n与期望校验结果之间的误差小于目标值(例如:目标值可以为0.0001),即可确认训练结果收敛。
上述训练方法即为梯度下降法,编码装置可通过梯度下降法对初始权重值w以及初始偏置向量b迭代优化,以使损失函数达到最小值。梯度下降法的具体细节可参照已有技术实施例,本申请不再赘述。
需要说明的是,编码装置还可以通过其它训练方法对本申请实施例中的初始神经网络单元以及其它神经网络进行训练,其目的均为使神经网络的输出值接近优化目标,并更新其中的神经元参数。
在一个实施例中,若编码装置基于核矩阵
Figure PCTCN2019120898-appb-000040
生成初始神经网络单元,则,生成的初始神经网络单元如图7所示。其中,对于输入信息[u 0,u 1,u 2],基于T 3得到的输入信息的期望校验结果为:
Figure PCTCN2019120898-appb-000041
在另一个实施例中,若编码装置基于核矩阵
Figure PCTCN2019120898-appb-000042
生成初始神经网络单元,则,生成的初始神经网络单元如图8所示。其中,对于输入信息[u 0,u 1,u 2],基于T 3得到的输入信息的期望校验结果为:
Figure PCTCN2019120898-appb-000043
x 1=u 1,x 2=u 2
在又一个实施例中,若编码装置基于核矩阵
Figure PCTCN2019120898-appb-000044
生成初始神经网络单元,则,生成的初始神经网络单元如图9所示。其中,对于输入信息[u 0,u 1,u 2,u 3],基于T 4得到的输入信息的期望校验结果为:
Figure PCTCN2019120898-appb-000045
Figure PCTCN2019120898-appb-000046
x 3=u 3
继续参照图5,在本申请的实施例中,训练完成的初始神经网络单元即为本申请实施例中的神经网络单元。其中,初始神经网络单元经过训练后,将其所包含的初始神经元参数更新为神经元参数(即为本申请实施例中的第三神经元参数,以下简称神经元参数3)。
在本申请的实施例中,神经网络单元可达到的结果为:基于其所包含的神经元参数3与激活函数,对输入的编码信息或训练信息(例如输入信息3)进行编码后,输出的输出信息3等于或接近输入信息3的期望校验结果。
需要说明的是,对于相同的输入信息以及相同的训练方式,由于初始神经网络单元包含的初始神经元参数不同,其所训练后的得到的神经网络单元所包含的神经元参数也不相同。即,对应于一个核矩阵,可具有多个初始神经网络单元,每个初始神经网络单元包含的神经元参数不相同,其所输出的输出信息相同,即,上述多个初始神经网络单元虽包含不同的神经元参数,但是,编码能力相同。
步骤102,生成初始编码神经网络。
具体的,在本申请的实施例中,编码装置可基于步骤101生成的神经网络单元,生成初始编码神经网络。即,初始编码神经网络由一个或一个以上神经网络单元组成。其中,初始编码神经中包含有神经元参数2,该神经元参数2由神经网络单元包含的神经元参数3组成,即,组成初始编码神经网络的一个或一个以上神经网络单元包含的神经元参数2组成了初始编码神经网络的初始神经元参数。随后,编码装置对初始编码神经网络进行训练,以更新所述初始神经元参数。
具体的,如图10所示为生成初始编码神经网络的步骤流程示意图,在图10中:
步骤1021,获取编码网络图。
具体的,在本申请的实施例中,编码装置可获取到编码网络图,其中,编码网络图中包括至少一个编码蝶形图,编码蝶形图用于指示编码蝶形图的输入信息与编码蝶形图的输出信息之间的校验关系。需要说明的是,编码网络图可由系统提供。如图11为编码网络图中的一种。
步骤1022,将神经网络单元与编码蝶形图进行匹配。
步骤1023,将神经网络单元对匹配成功的编码蝶形图进行替换。
具体的,举例说明:参照公式(2),如果要生成对应于公式(7)的初始编码神经网络:
Figure PCTCN2019120898-appb-000047
则可将基于T 2生成的神经网络单元对图11中的编码网络图中与基于T 2生成的神经网络单元匹配成功的编码蝶形图进行替换。
具体的,编码装置将神经网络单元与编码网络图中的编码蝶形图进行逐一匹配。其中,匹配方式为:
例如:基于T 2生成的神经网络单元(为区分其它神经网络单元,以下简称神经网络单元1)可参照图6,即,神经网络单元1的输入信息与输出信息的码长均为2,即可确认神经网络单元1为2×2的神经网络单元。编码装置可在编码网络图中查找同样结构为2×2的编码蝶形图,2×2结构的编码蝶形图如图12所示。
接着,编码装置可将神经网络单元1对编码网图中与神经单元1匹配成功的,即,所有具有2×2结构的编码蝶形图替换为神经网络单元1,得到初始编码神经网络,如图12所示。
需要说明的是,如上文所述,对于同一个核矩阵,可对应存在多个具有不同神经元参数的神经网络单元,多个神经网络单元可作为对应与同一核矩阵的神经网络单元集合。可选地,在一个实施例中,初始编码神经网络可由神经网络单元集合中的任一一个或一个以上的神经网络单元组成。即,可将神经网络单元集合中的任一一个或一个以上的神经网络单元对编码网络图中的编码蝶形图进行替换。
可选地,在另一个实施例中,根据公式(8):
Figure PCTCN2019120898-appb-000048
可知,对应于生成矩阵G的初始编码神经网络可由对应于不同核矩阵的神经网络单元集合中的神经网络单元组成。
举例说明:核矩阵T2对应的神经网络单元集合1中包括{神经网络单元1、神经网络单元2、神经网络单元3},核矩阵T3对应的神经网络集合2中包括:{神经网络单元4、神经网络单元5、神经网络单元6},则,编码装置获取到的编码网络图中包含至少一个2×2结构的编码蝶形图以及至少一个3×3结构的编码蝶形图。随后编码装置可将神经网络单元1、神经网络单元3以及神经网络单元5对编码蝶形图进行逐一匹配,并对匹配成功的编码蝶形图进行替换,得到初始编码神经网络。
步骤103,对初始编码神经网络进行训练,得到编码神经网络。
具体的,在本申请的实施例中,编码装置可基于初始编码神经网络的神经元参数2 (由神经元参数1组成)以及激活函数,对初始编码神经网络进行训练,直至初始编码神经网络输出的输出信息2与输入信息2的期望校验结果之间的误差小于阈值。以及,初始编码神经网络经过训练后,将神经元参数2进行更新。
在本申请的实施例中,训练完成的初始编码神经网络即为编码神经网络,更新后的神经元参数2即为编码神经网络对应的神经元参数1,其中,神经元参数1用于编码神经网络输入的输入信息1与输出的输出信息1之间的映射关系。
对初始编码神经网络训练的具体步骤可参照神经网络单元的训练步骤,此处不赘述。
步骤104,获取输入信息。
具体的,在本申请的实施例中,编码装置可从其它与其进行通信连接的其它装置(例如:终端的输入装置)中获取到需要进行编码的信息(即本申请实施例中的待编码信息),即输入信息。
步骤105,基于编码神经网络,对输入信息进行编码,得到并输出输出信息。
具体的,在本申请的实施例中,编码装置可将获取到的输入信息(为区分其它输入信息,以下简称输入信息1)基于生成编码神经网络进行编码,得到输出信息1,并将输出信息1输出。其中,具体编码过程为:编码装置将输入信息1基于神经元参数1进行加权求和,再基于激活函数进行运算,得到输出信息1。具体细节可参照现有技术实施例中,本申请不做赘述。
综上所述,本申请实施例中的技术方案,可基于核矩阵生成对应的神经网络单元,再将神经网络单元组成编码网络,实现了将小的神经网络单元进行连接后,得到大的神经网络,从而在编码的学习过程中,能够通过小的学习样本,泛化至整个码字空间,而弱化具有较长码字的信息,例如:Polar码对神经网络的复杂度以及学习难度的影响。
场景二
场景一主要对于Polar码的编码网络生成过程进行详细举例,本申请实施例中的编码方法可作为通用编码方法即,可用于其他编码方式,如里德-所罗门(Reed-Solomon,RS)码,汉明码,波斯-乔德瑞-侯昆海恩(Bose–Chaudhuri–Hocquenghem,BCH)码,卷积码,涡轮(Turbo)码、低密度奇偶校验(low-density parity-check,LDPC)码等(以下简称通用编码)。
结合图1,如图14所示为本申请实施例中的编码方法的流程示意图,在图14中:
步骤201,生成神经网络单元。
具体的,在本实施例中,对于通用编码,具有任意长度k 1的输入信息u的码字c可用公式(9)表示:
c=uG      (9)
其中,u的信息比特长度为k 2。则,编码矩阵G的维度为:k 1×k 2
同样的,编码装置可生成对应于核矩阵的初始神经网络单元。
为更好地理解本申请实施例中的技术方案,下面以通用编码中的汉明码为例进行详细阐述。需要说明的是,在汉明码中,编码矩阵与核矩阵相同,即,G=T。
以核矩阵为
Figure PCTCN2019120898-appb-000049
为例,生成的初始神经网络单元如图15所示。
若输入信息u=[0,1],则输入信息u的期望校验结果为:c=uG=[0,1,0]。
随后,编码装置对初始神经网络单元进行训练,直至输出信息接近期望校验结果。训练的具体细节可参照场景一,此处不赘述。
步骤202,生成初始编码神经网络。
与场景一中相同,对于汉明码,编码装置可将神经网络单元对获取到的编码网络图中的蝶形图进行替换,得到初始编码网络,具体细节可参照场景一,此处不赘述。
步骤203,对初始编码神经网络进行训练,得到编码神经网络。
该步骤的具体细节可参照场景一,此处不赘述。
步骤204,获取输入信息。
该步骤的具体细节可参照场景一,此处不赘述。
步骤205,基于编码神经网络,对输入信息进行编码,得到并输出输出信息。
该步骤的具体细节可参照场景一,此处不赘述。
场景三
结合图1,如图16所示为本申请实施例中的译码方法的示意图,在图16中:
步骤301,生成神经网络单元。
具体的,在本申请的实施例中,译码装置可基于核矩阵生成初始神经网络单元,随后,编码装置对初始神经网络单元进行训练,使初始神经网络单元的输出值接近期望的优化目标。则,训练后的初始神经网络单元即为所述神经网络单元。其中,初始神经网络单元所包含的初始神经元参数,经过训练后,更新为神经网络单元中包含的神经元参数。以及,输出值接近期望的优化目标即为:初始网络单元输出的输出信息与输入的输入信息对应的期望校验结果之间的误差小于阈值。在本申请的实施例中,输入信息的期望校验结果为输入信息基于初始神经网络单元对应的核矩阵在GF(2)上进行乘法和加法运算后得到的。
下面结合Polar码对生成神经网络单元的方法进行详细阐述。
具体的,Polar码的译码公式可以用下列公式(10)表示:
x=yG       (10)
其中,x为神经网络单元的输出信息,y为神经网络单元的输入信息,需要说明的是,在场景一中,各神经网络单元或神经网络的输入均为比特信息,编码神经网络输出编码后的比特信息,经过信道处理,将比特信息转换为似然比值。因此,在本场景中,神经网络单元与神经单元的输入信息均为信道输出的似然比值。
在本申请的实施例中,译码装置基于公式(10)与公式(2)(其中,公式(2)中的n为1),获取到对应于初始神经网络单元的输入信息的期望校验结果,并基于输入信息以及输入信息的期望校验结果生成初始神经网络单元。
举例说明:若
Figure PCTCN2019120898-appb-000050
则初始神经网络单元如图17所示。其中,对于输入信 息[y 0,y 1,y 2],基于T 3得到的输入信息的期望校验结果为:
Figure PCTCN2019120898-appb-000051
Figure PCTCN2019120898-appb-000052
Figure PCTCN2019120898-appb-000053
则初始神经网络单元如图18所示。其中,对于输入信息[y 0,y 1,y 2],基于T 3得到的输入信息的期望校验结果为:
Figure PCTCN2019120898-appb-000054
Figure PCTCN2019120898-appb-000055
则初始神经网络单元如图19所示。其中,对于输入信息[y 0,y 1,y 2,y 3],基于T 4得到的输入信息的期望校验结果为:
Figure PCTCN2019120898-appb-000056
Figure PCTCN2019120898-appb-000057
生成初始神经网络单元的具体细节可参照场景一,此处不赘述。
随后,译码装置对初始神经网络单元进行训练,得到神经网络单元。具体训练过程可参照场景一,此处不赘述。
步骤302,生成初始译码神经网络。
具体的,在本申请的实施例中,译码装置可步骤301生成的神经网络单元,生成初始编码神经网络。即,初始编码神经网络由一个或一个以上神经网络单元组成。
具体细节可参照场景一,此处不赘述。
步骤303,对初始译码神经网络进行训练,得到译码神经网络。
具体的,在本申请的实施例中,译码装置可通过对初始译码神经网络进行训练,使初始译码神经网络的输出信息接近期望译码结果,并对其所包含的神经元参数进行更新。训练后的初始译码神经网络即为译码神经网络。
具体的,在本申请的实施例中,译码装置基于训练信息对译码神经网络进行训练的过程与场景一中编码神经网络的训练过程不同,其中,编码神经网络在训练过程中,是通过对输入信息(即训练信息)进行训练后,再获取输出信息与输入信息的期望校验结果之间的误差,随后,再基于误差,进行其他训练步骤,并更新神经元参数。而在译码神经网络的训练过程中,由于译码神经网络输入的训练信息为似然比,因此,在译码神经网络中,其在求损失参数的过程为:基于输出信息与期望译码结果求取损失函数。其中,期望译码结果的获取方式为:基于任一编码装置(可以是本申请实施例中的编码装置,也可以是其它类型的编码装置)对编码信息(该编码信息为比特信息)进行编码,并输出编码结果,编码结果同样为比特信息,则,编码信息即为本实施例中的期望译码结果。即,译码神经网络输入的训练信息为编码结果经过信道处理后生成的似然比值,因此,译码神经网络的期望输出值(即期望译码结果)应为所述编码信息。
步骤304,获取输入信息。
该步骤的具体细节可参照场景一,此处不赘述。
步骤305,基于译码神经网络,对输入信息进行译码,得到并输出输出信息。
具体的,在本申请的实施例中,译码装置可将接收到的输入信息基于生成的译码神 经网络进行译码,得到输出信息,并将输出信息输出。其中,具体译码过程为:译码装置将输入信息基于神经元参数进行加权求和,再基于激活函数进行运算,得到输出信息。具体细节可参照现有技术实施例中,本申请不做赘述。
综上所述,本申请实施例中的技术方案,可基于核矩阵生成对应的神经网络单元,再将神经网络单元组成译码神经网络,实现了将小的神经网络单元进行连接后,得到大的神经网络,从而在译码的学习过程中,能够通过小的学习样本,泛化至整个码字空间,而弱化具有较长码字的信息,例如:Polar码对神经网络的复杂度以及学习难度的影响。
可选地,本申请实施例中的译码方法同样可适用于其他编码方式(即通用编码),例如:汉明码。具体细节可参照场景一、场景二以及场景三,此处不赘述。
场景四
结合图1,如图20所示为本申请实施例中的编/译码方法的流程示意图,在图20中:
步骤401,生成初始编/译码神经网络。
具体的,在本申请的实施例中,编/译码装置可基于上文中所述的编码神经网络以及译码神经网络,生成初始编/译码神经网络。
可选地,在一个实施例中,生成初始编/译码神经网络中的编码神经网络与译码神经网络可具有相同的神经元参数。例如,在Polar码中,即可实现生成初始编/译码神经网络中的编码神经网络与译码神经网络可具有相同的神经元参数。
可选地,在另一个实施例中,生成初始编/译码神经网络中的编码神经网络与译码神经网络可具有不相同的神经元参数。例如,在汉明码中,即可实现生成初始编/译码神经网络中的编码神经网络与译码神经网络可具有不相同的神经元参数。
在本实施例中,以Polar码为进行详细说明。
具体的,编/译码装置可获取编码装置生成的编码神经网络,其中,该编码神经网络已完成场景一中的训练过程,即,编码神经网络的输出信息接近期望校验结果。
随后,编/译码装置可获取译码装置生成的译码神经网络,其中,该译码神经网络可以为已训练完成的译码神经网络,即,译码神经网络的输出信息接近期望校验结果。或者,还可以为未经过训练的初始译码神经网络,即,仅具有初始的神经元参数的译码神经网络。
接着,编/译码装置可对获取到的编码神经网络与译码神经网络进行参数共享。即,将编码神经网络中的神经元参数对译码神经网络(或初始译码神经网络)中的神经元参数进行替换,以生成初始编/译码神经网络。
在另一个实施例中,编/译码装置还可获取已完成训练的译码神经网络,以及,获取已完成训练的编码神经网络,或者,未完成训练的初始编码神经网络。编/译码可将译码神经网络中的神经元参数对编码神经网络(或初始编码神经网络)中的神经元参数进行替换,以生成初始编/译码神经网络。
步骤402,对初始编/译码神经网络进行训练,得到编/译码神经网络。
具体的,在本申请的实施例中,编/译码装置对初始编/译码神经网络进行训练,训练后的初始编/译码神经网络即为编/译码神经网络。
如图21所示为初始编/译码神经网络的训练方法的流程示意图,在图21中:
编/译码装置在编/译码神经网络的编码神经网络侧输入输入信息,也可以称之为训练信息。其中,训练信息的码长与编/译码神经网络的码长相同。
随后,初始编/译码神经网络中的编码神经网络对训练信息进行编码,得到并输出编码结果。接着,编码结果经过信道处理后,输入至译码神经网络,其中,输入译码神经网络侧的编码结果为似然比值。
接着,译码神经网络侧对输入的似然比值进行译码,得到并输出译码结果,也可称为训练结果。
在本实施例中,输入的训练信息即为编/译码神经网络的期望校验结果。编/译码装置可基于训练信息与训练结果,获取损失函数。获取损失函数的方式同样可以为:均方差、差值等函数。以及,编/译码装置判断损失函数的结果是否收敛,即,训练信息与训练结果之间的误差是否大于阈值(求取误差的具体细节可参照上述场景一中的实施例),若小于阈值,则,训练结束。若大于或等于阈值,则继续下一步。
在本实施例中,在误差大于或等于阈值的情况下,编/译码装置可通过优化器对编/译码神经网络进行优化,优化方法包括但不限于:以梯度下降等方式,对编/译码神经网络进行迭代,并对编/译码网络中的神经元参数进行更新,并将更新后的神经元参数共享给编码神经网络与译码神经网络。随后,编/译码装置重复上述训练步骤,直至训练结果与训练信息之间的误差小于阈值,或者,训练的轮数达到训练轮数阈值,或者,训练的时长达到训练时长阈值。
训练后的初始编/译码神经网络即为编/译码神经网络。
步骤403,基于编/译码神经网络对输入信息进行编码,得到并输出输出信息。
具体的,在本申请的实施例中,训练完成的编/译码神经网络可分为编码神经网络部分和译码神经网络部分。其中,编/译码神经网络通过编码神经网络部分对输入信息进行编码,得到并输出编码结果,随后,由译码神经网络部分对编码结果进行译码,得到并输出译码结果(其中,译码结果即为输出信息,并且译码结果与输入信息相同)。
其中,编码神经网络可设置于终端和/或基站中,译码神经网络可设置于终端和/或基站中。
具体的,当终端向基站发送信号时,由终端中的编码神经网络部分对待编码信息(即输入信息)进行编码后,得到并输出编码结果,并信道传输给基站。基站接收到编码结果后,通过译码神经网络对编码结果进行译码,得到并输出译码结果,即为所述待编码信息。
当基站向终端发送信号时,由基站中的编码神经网络部分对待编码信息进行编码后,得到并输出编码结果,并信道传输给终端。终端接收到编码结果后,通过译码神经网络对编码结果进行译码,得到并输出译码结果,即为所述待编码信息。
需要说明的是,对于汉明码等由具有不相同的神经元参数的编码/译码神经网络组成的编/译码神经网络,可不经过训练,可直接通过两侧编码、译码神经网络进行编码及译码。
综上所述,本申请实施例中的技术方案,通过对编码神经网络与译码神经网络的参 数共享,从而提升编/译码神经网络的性能,并且降低复杂度。以及,通过由编码神经网络与译码神经网络组成的编/译码神经网络,降低了学习成本以及难度,有效的提升了学习效率。
可选地,在一个实施例中,本申请实施例中编码/译码方法还可以应用于多元域。以Polar码举例:具体的,二元Polar码的生成矩阵由“0”、“1”两种元素构成,而多元Polar的生成矩阵则可由零元素和GF(2 m)(其中,m为大于1的整数)上的非零元素构成。与二元Polar码相同,多元Polar码的生成矩阵仍可以表示为基于核矩阵的克罗内克积运算得到。以场景一中的
Figure PCTCN2019120898-appb-000058
为例,在本实施例中,将
Figure PCTCN2019120898-appb-000059
中的1替换为GF(2 m)上的非零元素,如
Figure PCTCN2019120898-appb-000060
其中j,k,l为自然数,则,根据公式(2),多元Polar码的生成矩阵G可表示为
Figure PCTCN2019120898-appb-000061
在多元域中,对应于
Figure PCTCN2019120898-appb-000062
的神经网络单元如图22所示。其中,对于输入信息[y 0,y 1],基于T 2得到的输入信息的期望校验结果为:
Figure PCTCN2019120898-appb-000063
对于多元域上生成的神经网络单元,基于其所生成的编码神经网络或译码神经网络的方式均可参照场景一至三中的描述,此处不赘述。
可选地,在一个实施例中,本申请实施例中的编码装置、译码装置和/或编/译码装置在对神经网络单元或神经网络(指编码神经网络、译码神经网络、和/或编/译码神经网络)进行训练的过程中,还可设置有预设条件,当训练过程中达到预设条件的情况下,则停止训练。预设条件包括但不限于:训练轮数大于训练轮数阈值,即,当训练的轮数达到训练轮数阈值时,即可停止训练;训练时长大于训练时长阈值,即,当训练的时长达到训练时长阈值时,即可停止训练。还可以设置其它预设条件,本申请对此不作限定。需要说明的是,可设置多个训练条件,例如:训练条件可以为A:损失函数小于损失函数阈值(即本申请实施例中所述的输出信息与期望校验结果之间的误差小于阈值),训练条件B:训练轮数大于训练轮数阈值。则,当损失函数仍未达到损失函数阈值,但是,训练轮数已经到达训练轮数阈值的情况下,则可停止训练。从而减少训练耗时,并节约资源。
可选地,在本申请的实施例中,在训练阶段,各神经网络单元以及神经网络的输入均为训练信息,在编码阶段,各神经网络单元以及神经网络的输入均为待编码信息。其中,具有相同结构的神经网络单元或神经网络的训练信息可以与编码信息相同或不同,本申请不做限定。
可选的,在一个实施例中,训练阶段(包括对神经网络单元的训练部分以及对神经网络(编码神经网络、译码神经网络和/或编/译码神经网络)的训练部分)可在线举行,即,将训练结果直接作为输入信息输入编码装置。在另一个实施例中,训练阶段还可以离线举行,即,在应用本申请实施例中的神经网络单元及神经网络之前,完成对神经网络单元以及神经网络的训练。
下面介绍本申请实施例提供的一种编码装置。如图23所示:
该编码装置300包括:处理单元301以及通信单元302。可选的,该编码装置300还包括存储单元303。处理单元301、通信单元302和存储单元303通过通信总线相连。
存储单元303可以包括一个或者多个存储器,存储器可以是一个或者多个设备、电路中用于存储程序或者数据的器件。
存储单元303可以独立存在,通过通信总线与处理单元201相连。存储单元也可以与处理单元301集成在一起。
编码装置300可以是本申请实施例中的终端,例如终端200。终端的示意图可以如图2b所示。可选的,编码装置300的通信单元302可以包括终端的天线和收发机,例如图2b中的天线205和收发机202。
编码装置300可以是是本申请实施例中的终端中的芯片,例如终端200中的芯片。通信单元302可以是输入或者输出接口、管脚或者电路等。可选的,存储单元可以存储终端侧的方法的计算机执行指令,以使处理单元301执行上述实施例中的编码方法。存储单元303可以是寄存器、缓存或者RAM等,存储单元302可以和处理单元301集成在一起;存储单元303可以是ROM或者可存储静态信息和指令的其他类型的静态存储设备,存储单元303可以与处理单元301相独立。可选的,随着无线通信技术的发展,收发机可以被集成在编码装置300上,例如通信单元302集成了收发机202。
编码装置300可以是本申请实施例中的基站,例如基站100。基站100的示意图可以如图2a所示。可选的,编码装置300的通信单元302可以包括基站的天线和收发机,例如图2a中的天线205和收发机203。通信单元302还可以包括基站的网络接口,例如图2a中的网络接口204。
编码装置300可以是本申请实施例中的基站中的芯片,例如基站100中的芯片。通信单元302可以是输入或者输出接口、管脚或者电路等。可选的,存储单元可以存储基站侧的方法的计算机执行指令,以使处理单元301执行上述实施例中的编码方法。存储单元32可以是寄存器、缓存或者RAM等,存储单元303可以和处理单元301集成在一起;存储单元303可以是ROM或者可存储静态信息和指令的其他类型的静态存储设备,存储单元303可以与处理单元301相独立。可选的,随着无线通信技术的发展,收发机可以被集成在编码装置300上,例如通信单元302集成了收发机203,网络接口204。
当编码装置300是本申请实施例中的基站或者基站中的芯片时,可以实现上述实施例中的编码方法。
下面介绍本申请实施例提供的一种译码装置。如图24所示:
该译码装置400包括:处理单元401以及通信单元402。可选的,该译码装置400还包括存储单元403。处理单元401、通信单元402和存储单元403通过通信总线相连。
存储单元403可以包括一个或者多个存储器,存储器可以是一个或者多个设备、电路中用于存储程序或者数据的器件。
存储单元403可以独立存在,通过通信总线与处理单元201相连。存储单元也可以与处理单元401集成在一起。
译码装置400可以是本申请实施例中的终端,例如终端200。终端的示意图可以如图 2b所示。可选的,译码装置400的通信单元403可以包括终端的天线和收发机,例如图2b中的天线205和收发机202。
译码装置400可以是是本申请实施例中的终端中的芯片,例如终端200中的芯片。通信单元402可以是输入或者输出接口、管脚或者电路等。可选的,存储单元可以存储终端侧的方法的计算机执行指令,以使处理单元401执行上述实施例中的译码方法。存储单元403可以是寄存器、缓存或者RAM等,存储单元403可以和处理单元401集成在一起;存储单元403可以是ROM或者可存储静态信息和指令的其他类型的静态存储设备,存储单元403可以与处理单元401相独立。可选的,随着无线通信技术的发展,收发机可以被集成在译码装置400上,例如通信单元402集成了收发机202。
译码装置400可以是本申请实施例中的基站,例如基站100。基站100的示意图可以如图2a所示。可选的,译码装置400的通信单元402可以包括基站的天线和收发机,例如图2a中的天线205和收发机203。通信单元402还可以包括基站的网络接口,例如图2a中的网络接口204。
译码装置400可以是本申请实施例中的基站中的芯片,例如基站100中的芯片。通信单元403可以是输入或者输出接口、管脚或者电路等。可选的,存储单元可以存储基站侧的方法的计算机执行指令,以使处理单元401执行上述实施例中的译码方法。存储单元32可以是寄存器、缓存或者RAM等,存储单元403可以和处理单元401集成在一起;存储单元403可以是ROM或者可存储静态信息和指令的其他类型的静态存储设备,存储单元403可以与处理单元401相独立。可选的,随着无线通信技术的发展,收发机可以被集成在译码装置400上,例如通信单元402集成了收发机203,网络接口204。
当译码装置400是本申请实施例中的基站或者基站中的芯片时,可以实现上述实施例中的译码方法。
下面介绍本申请实施例提供的一种编码装置500。如图25所示:
编码装置500包括:获取模块501、编码模块502。
其中,获取模块501用于“获取输入信息”的相关步骤。例如,支持编码装置500执行上述方法实施例中的步骤104、步骤204。
编码模块502用于“获取编码神经网络”的相关步骤。例如,支持编码装置500执行上述方法实施例中的步骤101、步骤102、步骤103、步骤201、步骤202、步骤203。
以及,编码模块502还可用于“对输入信息进行编码”的相关步骤。例如:支持编码装置500执行上述方法实施例中的步骤105、步骤205。
编码装置500可以通过获取模块501、编码模块502实现本申请实施例中编码装置的其他功能,具体可以参考上述实施例中的相关内容。
下面介绍本申请实施例提供的一种编码装置600。如图26所示:
译码装置600包括:获取模块601、译码模块602。
其中,获取模块601用于“获取输入信息”的相关步骤。例如,支持编码装置500执行上述方法实施例中的步骤404。
译码模块602用于“获取译码神经网络”的相关步骤。例如,支持译码装置600执行上述方法实施例中的步骤301、步骤302、步骤303。
译码模块602还可用于“对输入信息进行译码,得到并输出输出信息”的相关步骤。例如,支持译码装置600执行上述方法实施例中的步骤405。
译码装置600可以通过获取模块601、译码模块602实现本申请实施例中译码装置的其他功能,具体可以参考上述实施例中的相关内容。
本申请实施例还提供了一种计算机可读存储介质。上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。如果在软件中实现,则功能可以作为一个或多个指令或代码存储在计算机可读介质上或者在计算机可读介质上传输。计算机可读介质可以包括计算机存储介质和通信介质,还可以包括任何可以将计算机程序从一个地方传送到另一个地方的介质。存储介质可以是可由计算机访问的任何可用介质。
作为一种可选的设计,计算机可读介质可以包括RAM,ROM,EEPROM,CD-ROM或其它光盘存储器,磁盘存储器或其它磁存储设备,或可用于承载的任何其它介质或以指令或数据结构的形式存储所需的程序代码,并且可由计算机访问。而且,任何连接被适当地称为计算机可读介质。例如,如果使用同轴电缆,光纤电缆,双绞线,数字用户线(DSL)或无线技术(如红外,无线电和微波)从网站,服务器或其它远程源传输软件,则同轴电缆,光纤电缆,双绞线,DSL或诸如红外,无线电和微波之类的无线技术包括在介质的定义中。如本文所使用的磁盘和光盘包括光盘(CD),激光盘,光盘,数字通用光盘(DVD),软盘和蓝光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光光学地再现数据。上述的组合也应包括在计算机可读介质的范围内。
本申请实施例还提供了一种计算机程序产品。上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。如果在软件中实现,可以全部或者部分得通过计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行上述计算机程序指令时,全部或部分地产生按照上述方法实施例中描述的流程或功能。上述计算机可以是通用计算机、专用计算机、计算机网络、网络设备、用户设备或者其它可编程装置。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。

Claims (36)

  1. 一种编码方法,其特征在于,包括:
    获取第一输入信息;
    基于编码神经网络,对所述第一输入信息进行编码,得到并输出第一输出信息;
    其中,所述编码神经网络中包含第一神经元参数,所述第一神经元参数用于指示所述第一输入信息与所述第一输出信息之间的映射关系;
    以及,所述编码神经网络由第一神经网络单元组成的初始编码神经网络经过训练后所得;其中,所述初始编码神经网络中包含用于指示所述初始编码神经网络输入的第二输入信息与输出的第二输出信息之间的映射关系的第二神经元参数;并且,所述初始编码神经网络经过训练后,将所述第二神经元参数更新为所述第一神经元参数;
    以及,所述第二神经元参数由所述第一神经网络单元包含的第三神经元参数组成,其中,所述第三神经元参数用于指示所述第一神经网络单元输入的第三输入信息与输出的第三输出信息之间的映射关系;以及,所述第三输出信息与所述第三输入信息的期望校验结果之间的误差小于阈值,其中,所述第三输入信息的期望校验结果为所述第三输入信息基于第一核矩阵在伽罗华二元域GF(2)上进行乘法和加法运算后得到的;
    其中,所述第一输入信息为待编码信息;以及,所述第二输入信息、所述第三输入信息为训练信息。
  2. 根据权利要求1所述的方法,其特征在于,获取所述第一神经网络单元的步骤,包括:
    构造所述第一初始神经网络单元,并设置所述第一初始神经元参数,其中,所述第一初始神经元参数用于指示所述第一初始神经元输入的第四输入信息与输出的第四输出信息之间的映射关系,其中,所述第一初始神经元参数包括初始权重值与初始偏置向量;以及,所述第一初始神经网络单元包括至少一个隐藏层,每个所述隐藏层包含Q个节点,并且,Q为大于等于N的整数,其中,N为所述第三输入信息的码长与所述第三输出信息的码长之中的最小值;
    基于所述第一初始神经元参数,对所述第一初始神经网络单元进行训练,直至所述第四输出信息与所述第四输入信息的期望校验结果之间的误差小于所述阈值,其中,所述第四输入信息的期望校验结果为所述第四输入信息基于所述第一核矩在GF(2)上进行乘法和加法运算后得到的;以及,对所述第一初始神经网络单元进行训练时,将所述第一初始神经参数进行更新,得到所述第三神经参数;其中,所述第四输入信息为训练信息。
  3. 根据权利要求1或2所述的方法,其特征在于,其中,
    所述第一核矩阵为
    Figure PCTCN2019120898-appb-100001
    或者,
    所述第一核矩阵为
    Figure PCTCN2019120898-appb-100002
  4. 根据权利要求1至3任一项所述的方法,其特征在于,
    若所述第一核矩阵为
    Figure PCTCN2019120898-appb-100003
    则所述第三输入信息的期望校验结果为
    Figure PCTCN2019120898-appb-100004
    x 1=u 1
    其中,x 0与x 1为所述第三输出信息,u 0与u 1为所述第三输入信息;
    或者,
    若第一核矩阵为
    Figure PCTCN2019120898-appb-100005
    则所述第三输入信息的期望校验结果为
    Figure PCTCN2019120898-appb-100006
    Figure PCTCN2019120898-appb-100007
    其中,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所述的方法,其特征在于,其中,
    所述第一核矩阵为
    Figure PCTCN2019120898-appb-100008
    或者,
    所述第一核矩阵为
    Figure PCTCN2019120898-appb-100009
  11. 根据权利要求8至10任一项所述的方法,其特征在于,
    若所述第一核矩阵为
    Figure PCTCN2019120898-appb-100010
    则所述第三输入信息的期望校验结果为
    Figure PCTCN2019120898-appb-100011
    x 1=y 1
    其中,x 0与x 1为所述第三输出信息,y 0与y 1为所述第三输入信息;
    或者,
    若第一核矩阵为
    Figure PCTCN2019120898-appb-100012
    则所述第三输入信息的期望校验结果为
    Figure PCTCN2019120898-appb-100013
    Figure PCTCN2019120898-appb-100014
    其中,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所述的装置,其特征在于,其中,
    所述第一核矩阵为
    Figure PCTCN2019120898-appb-100015
    或者,
    所述第一核矩阵为
    Figure PCTCN2019120898-appb-100016
  20. 根据权利要求17至19任一项所述的装置,其特征在于,
    若所述第一核矩阵为
    Figure PCTCN2019120898-appb-100017
    则所述第三输入信息的期望校验结果为
    Figure PCTCN2019120898-appb-100018
    x 1=u 1
    其中,x 0与x 1为所述第三输出信息,u 0与u 1为所述第三输入信息;
    或者,
    若第一核矩阵为
    Figure PCTCN2019120898-appb-100019
    则所述第三输入信息的期望校验结果为
    Figure PCTCN2019120898-appb-100020
    Figure PCTCN2019120898-appb-100021
    其中,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所述的装置,其特征在于,其中,
    所述第一核矩阵为
    Figure PCTCN2019120898-appb-100022
    或者,
    所述第一核矩阵为
    Figure PCTCN2019120898-appb-100023
  27. 根据权利要求24至26任一项所述的装置,其特征在于,
    若所述第一核矩阵为
    Figure PCTCN2019120898-appb-100024
    则所述第三输入信息的期望校验结果为
    Figure PCTCN2019120898-appb-100025
    x 1=y 1
    其中,x 0与x 1为所述第三输出信息,y 0与y 1为所述第三输入信息;
    或者,
    若第一核矩阵为
    Figure PCTCN2019120898-appb-100026
    则所述第三输入信息的期望校验结果为
    Figure PCTCN2019120898-appb-100027
    Figure PCTCN2019120898-appb-100028
    其中,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中任一项所述的方法时控制所述收发管脚发送和/或接收信号。
PCT/CN2019/120898 2018-11-27 2019-11-26 编码方法、译码方法及装置 WO2020108472A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2021529778A JP7228042B2 (ja) 2018-11-27 2019-11-26 符号化方法及び装置並びに復号化方法及び装置
EP19890969.9A EP3879709A4 (en) 2018-11-27 2019-11-26 CODING METHOD AND DEVICE, DECODING METHOD AND DEVICE
US17/330,821 US20210279584A1 (en) 2018-11-27 2021-05-26 Encoding method and apparatus, and decoding method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201811428115.5A CN111224677B (zh) 2018-11-27 2018-11-27 编码方法、译码方法及装置
CN201811428115.5 2018-11-27

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/330,821 Continuation US20210279584A1 (en) 2018-11-27 2021-05-26 Encoding method and apparatus, and decoding method and apparatus

Publications (1)

Publication Number Publication Date
WO2020108472A1 true WO2020108472A1 (zh) 2020-06-04

Family

ID=70827430

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/120898 WO2020108472A1 (zh) 2018-11-27 2019-11-26 编码方法、译码方法及装置

Country Status (5)

Country Link
US (1) US20210279584A1 (zh)
EP (1) EP3879709A4 (zh)
JP (1) JP7228042B2 (zh)
CN (1) CN111224677B (zh)
WO (1) WO2020108472A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11468328B2 (en) * 2020-02-24 2022-10-11 Qualcomm Incorporated Managing information transmission for wireless communication
US11159170B1 (en) * 2020-10-22 2021-10-26 Texas Instruments Incorporated Differential converter with offset cancelation
KR20240011730A (ko) * 2021-05-21 2024-01-26 엘지전자 주식회사 오토 인코더를 이용하는 무선 통신 시스템에서 신호를송수신하기 위한 방법 및 이를 위한 장치
CN113438049A (zh) * 2021-05-31 2021-09-24 杭州电子科技大学 一种基于dnn模型分析的汉明码译码方法及系统
CN115603859A (zh) * 2021-07-09 2023-01-13 华为技术有限公司(Cn) 模型训练方法及相关装置
WO2024031502A1 (en) * 2022-08-11 2024-02-15 Qualcomm Incorporated Determining quantization information

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107017892A (zh) * 2017-04-06 2017-08-04 华中科技大学 一种校验级联极化码编码方法及系统
US20180268595A1 (en) * 2017-03-20 2018-09-20 Google Llc Generating cartoon images from photos
CN108833313A (zh) * 2018-07-12 2018-11-16 北京邮电大学 一种基于卷积神经网络的无线信道估计方法及装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2040903C (en) * 1991-04-22 2003-10-07 John G. Sutherland Neural networks
US5502713A (en) * 1993-12-07 1996-03-26 Telefonaktiebolaget Lm Ericsson Soft error concealment in a TDMA radio system
JP3174212B2 (ja) * 1994-02-18 2001-06-11 株式会社日立製作所 ビタビ復号方式およびビタビ復号器ならびにデータ記録再生装置
US20100161530A1 (en) * 2002-12-18 2010-06-24 Battelle Memorial Institute Method for enhanced accuracy in predicting peptides elution time using liquid separations or chromatography
CN101997492A (zh) * 2010-09-29 2011-03-30 东南大学 基于简化模糊神经网络的增强维纳模型的功放预失真方法
WO2015157643A1 (en) * 2014-04-10 2015-10-15 Vega-Avila Rolando Solar energy forecasting
CN105720992B (zh) * 2016-01-22 2019-07-23 哈尔滨工业大学深圳研究生院 一种极化码的简化译码方法
CN108809506B (zh) * 2017-05-05 2020-09-04 华为技术有限公司 一种编码方法及装置
CN107516110B (zh) * 2017-08-22 2020-02-18 华南理工大学 一种基于集成卷积编码的医疗问答语义聚类方法
CN108120451A (zh) * 2017-12-21 2018-06-05 苏州大学 基于改进pso优化神经网络的硅微加速度计温度补偿方法、系统
CN108777584A (zh) * 2018-07-06 2018-11-09 中国石油大学(华东) 一种极化码译码参数的快速优化方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180268595A1 (en) * 2017-03-20 2018-09-20 Google Llc Generating cartoon images from photos
CN107017892A (zh) * 2017-04-06 2017-08-04 华中科技大学 一种校验级联极化码编码方法及系统
CN108833313A (zh) * 2018-07-12 2018-11-16 北京邮电大学 一种基于卷积神经网络的无线信道估计方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3879709A4 *

Also Published As

Publication number Publication date
JP7228042B2 (ja) 2023-02-22
CN111224677A (zh) 2020-06-02
EP3879709A4 (en) 2021-12-22
JP2022511771A (ja) 2022-02-01
CN111224677B (zh) 2021-10-15
EP3879709A1 (en) 2021-09-15
US20210279584A1 (en) 2021-09-09

Similar Documents

Publication Publication Date Title
WO2020108472A1 (zh) 编码方法、译码方法及装置
KR102569349B1 (ko) 극성 코드 인코딩 방법 및 디바이스
RU2603280C1 (ru) Системы и способы для множественного доступа с разреженным кодом
EP3844883B1 (en) Method and system for decoding data using compressed channel output information
WO2018171516A1 (en) Method and apparatus for error-correction encoding using a polar code
WO2016119105A1 (zh) 极化Polar码的生成方法和设备
CN108282259B (zh) 一种编码方法及装置
US20230299872A1 (en) Neural Network-Based Communication Method and Related Apparatus
WO2018137663A1 (zh) 一种编码方法、译码方法、编码装置及译码装置
JP2015501596A (ja) 低複雑性および高電力効率の誤り訂正符号化スキーム
CN116530023A (zh) 具有外部块码和内部极化调整卷积码的串行级联码
US11558068B2 (en) Method and apparatus for encoding polar code concatenated with CRC code
CN113473149A (zh) 用于无线图像传输的语义信道联合编码方法及装置
CN107864029A (zh) 一种降低多用户检测复杂度的方法
US20230208554A1 (en) Encoding and Decoding Method and Apparatus
KR20190117186A (ko) 학습 기반 채널코드 디코딩 방법 및 장치
WO2022111575A1 (zh) 传输数据的方法以及装置
Yan et al. Channel noise optimization of polar codes decoding based on a convolutional neural network
CN109831281B (zh) 一种低复杂度稀疏码多址接入系统多用户检测方法及装置
WO2018127069A1 (zh) 一种编码方法及装置
WO2020156095A1 (zh) 译码的方法和译码装置
CN113472360A (zh) 极化码的译码方法和译码装置
WO2022268130A1 (zh) 一种网络编码方法及装置
CN114915376B (zh) 译码方法、编码方法、装置、设备和存储介质
WO2024055894A1 (zh) 一种编/译码方法及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19890969

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021529778

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2019890969

Country of ref document: EP

Effective date: 20210609