Method and apparatus for training neural network decoder in wireless communication system

By training neural network decoders using base code-based coefficients and data refinement, the method addresses high complexity and resource issues in LDPC code decoding, achieving efficient and improved performance in wireless communication systems.

WO2026054417A1PCT designated stage Publication Date: 2026-03-12SAMSUNG ELECTRONICS CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-08-28
Publication Date
2026-03-12

AI Technical Summary

Technical Problem

Existing neural network decoders for LDPC codes in wireless communication systems face challenges with high learning complexity, resource-intensive computation, and limited performance improvement due to large parameter sets and varying code types, lengths, and coding rates.

Method used

A method for training a neural network decoder using base code-based coefficients, employing data refinement and compression techniques to optimize decoding coefficients, allowing real-time learning with reduced resource requirements and enhanced performance.

Benefits of technology

The proposed method enables efficient training of neural network decoders for LDPC codes, reducing learning latency and resource usage while improving performance by applying learned coefficients to various lifting sizes, enhancing real-time learning effectiveness.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2025013196_12032026_PF_FP_ABST
    Figure KR2025013196_12032026_PF_FP_ABST
Patent Text Reader

Abstract

The present disclosure relates to a method and an apparatus for training a neural network decoder in a wireless communication system. According to one embodiment of the present disclosure, a training method of a decoding apparatus in a wireless communication system comprises the operations of: receiving channel information; calculating a log-likelihood ratio (LLR) using a base code on the basis of the channel information; generating a training data set on the basis of the LLR; performing iterative decoding on the training data set; and optimizing at least one decoding coefficient in a neural network on the basis of a result of the iterative decoding.
Need to check novelty before this filing date? Find Prior Art

Description

Method and device for learning a neural network decoder in a wireless communication system

[0001] The present disclosure relates to a method and apparatus for learning a neural network decoder in a wireless communication system.

[0002] With the development of digital technology, electronic devices are available in various forms, such as smart phones, tablet personal computers, and personal digital assistants (PDAs).

[0003] As artificial intelligence (AI) technology advances, electronic devices can apply AI technology to provide a variety of AI services. Electronic devices can provide AI services by providing software components (e.g., services, functions, or programs) that process user-requested tasks and provide customized services (e.g., customized information based on user voice commands) based on AI and voice recognition technologies.

[0004] Machine learning is a field related to artificial intelligence, developing algorithms and technologies that enable computers to learn. Deep learning refers to a set of machine learning algorithms that attempt to achieve a high level of abstraction (the task of extracting only the essential information from large amounts of complex data) through a combination of nonlinear transformation methods.

[0005] Meanwhile, key technologies for various wireless service standards, including the New Radio (NR) standard, a fifth-generation data transmission method, enhanced Mobile Broad-Band (eMBB), Ultra Reliable Low Latency Communication (URLLC), and the Internet of Things (IoT), are attracting significant attention. Accordingly, research is actively underway on decoding low-density parity-check (LDPC) codes in wireless communication systems or storage devices, including flash memory.

[0006] The above information may be provided as background information to aid in understanding this document. None of the above is claimed to be prior art related to this document or can be used to determine prior art.

[0007] The present disclosure relates to a device and method for model compression and data refinement for neural network decoder training, and more particularly, to a device and method for model compression and data refinement for neural network low-density parity-check (LDPC) decoder training.

[0008] According to one embodiment, a learning method of a decoding device in a wireless communication system may include: receiving channel information; calculating a log-likelihood ratio (LLR) using a base code based on the channel information; generating a learning data set based on the LLR; performing iterative decoding on the learning data set; and optimizing at least one decoding coefficient in a neural network based on a result of the iterative decoding.

[0009] According to one embodiment, a storage medium storing at least one computer-readable instruction, wherein the at least one instruction, when executed by at least a part of at least one processor (120) of an electronic device, causes the electronic device to perform at least one operation, the at least one operation including: receiving channel information; calculating a log-likelihood ratio (LLR) using a base code based on the channel information; generating a learning data set based on the LLR; performing iterative decoding on the learning data set; and optimizing at least one decoding coefficient in a neural network based on a result of the iterative decoding.

[0010] According to one embodiment, an electronic device includes at least one processor (120); and a memory (130) storing at least one instruction, wherein the at least one instruction, when executed by at least a part of the at least one processor (120), causes the electronic device to perform at least one operation, wherein the at least one operation may include: receiving channel information; calculating a log-likelihood ratio (LLR) using a base code based on the channel information; generating a learning data set based on the LLR; performing iterative decoding on the learning data set; and optimizing at least one decoding coefficient in a neural network based on a result of the iterative decoding.

[0011] By constructing a neural network decoder using coefficients learned through a neural network based on the base code proposed in this disclosure, real-time learning can be performed with a small amount of learning data and learning delay, thereby improving the performance of the decoding device.

[0012] In connection with the description of the drawings, the same or similar reference numerals may be used for the same or similar components.

[0013] FIG. 1 is a block diagram of an electronic device within a network environment according to one embodiment of the present disclosure.

[0014] FIG. 2 illustrates a block diagram of an electronic device according to one embodiment of the present disclosure.

[0015] FIG. 3 illustrates a block diagram of a decoder in an electronic device according to one embodiment of the present disclosure.

[0016] FIG. 4 is a diagram schematically illustrating the correlation between a base graph and a Tanner graph according to one embodiment of the present disclosure.

[0017] FIG. 5 illustrates the structure of a neural network-based decoder in an electronic device according to one embodiment of the present disclosure.

[0018] FIG. 6 is a flowchart illustrating a decryption operation of an electronic device according to one embodiment of the present disclosure.

[0019] FIG. 7 illustrates a block diagram of the operation of a learning unit of an electronic device according to one embodiment of the present disclosure.

[0020] FIG. 8 illustrates a block diagram of a learning and data refinement operation of a learning unit of an electronic device according to one embodiment of the present disclosure.

[0021] FIG. 9 is a flowchart illustrating a learning operation of an electronic device according to one embodiment of the present disclosure.

[0022] FIG. 10 is a diagram illustrating an example of the number of parameters required in a neural network according to one embodiment of the present disclosure.

[0023] FIG. 11 is a diagram illustrating the ratio of a valid data set to the entire learning data set according to one embodiment of the present disclosure.

[0024] FIG. 12 is a diagram illustrating the relationship between a signal to noise ratio (SNR) and a block error rate (BLER) of an electronic device according to one embodiment of the present disclosure.

[0025] FIG. 13 is a diagram illustrating the relationship between SNR and the average number of iterative decoding operations according to one embodiment of the present disclosure.

[0026] FIG. 14 is a diagram illustrating the relationship between the signal to noise ratio (SNR) and the block error rate (BLER) for the number of base codes of an electronic device according to one embodiment of the present disclosure.

[0027] FIG. 15 is a diagram illustrating the relationship between the SNR and the average number of iterative decodings for the number of base codes according to one embodiment of the present disclosure.

[0028] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings so that those skilled in the art can easily implement the present disclosure. However, the present disclosure may be implemented in various different forms and is not limited to the embodiments described herein. In connection with the description of the drawings, the same or similar reference numerals may be used for identical or similar components. Furthermore, in the drawings and related descriptions, descriptions of well-known functions and configurations may be omitted for clarity and conciseness.

[0029] FIG. 1 is a block diagram of an electronic device (101) within a network environment (100) according to various embodiments. Referring to FIG. 1, in the network environment (100), the electronic device (101) may communicate with the electronic device (102) via a first network (198) (e.g., a short-range wireless communication network), or may communicate with at least one of the electronic device (104) or the server (108) via a second network (199) (e.g., a long-range wireless communication network). In one embodiment, the electronic device (101) may communicate with the electronic device (104) via the server (108). According to one embodiment, the electronic device (101) may include a processor (120), a memory (130), an input module (150), an audio output module (155), a display module (160), an audio module (170), a sensor module (176), an interface (177), a connection terminal (178), a haptic module (179), a camera module (180), a power management module (188), a battery (189), a communication module (190), a subscriber identification module (196), or an antenna module (197). In some embodiments, the electronic device (101) may omit at least one of these components (e.g., the connection terminal (178)), or may have one or more other components added. In some embodiments, some of these components (e.g., the sensor module (176), the camera module (180), or the antenna module (197)) may be integrated into one component (e.g., the display module (160)).

[0030] The processor (120) may, for example, execute software (e.g., a program (140)) to control at least one other component (e.g., a hardware or software component) of the electronic device (101) connected to the processor (120) and perform various data processing or operations. According to one embodiment, as at least a part of the data processing or operations, the processor (120) may store commands or data received from other components (e.g., a sensor module (176) or a communication module (190)) in a volatile memory (132), process the commands or data stored in the volatile memory (132), and store result data in a non-volatile memory (134). According to one embodiment, the processor (120) may include a main processor (121) (e.g., a central processing unit or an application processor) or an auxiliary processor (123) (e.g., a graphics processing unit, a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor) that can operate independently or together with the main processor (121). For example, when the electronic device (101) includes the main processor (121) and the auxiliary processor (123), the auxiliary processor (123) may be configured to use less power than the main processor (121) or to be specialized for a given function. The auxiliary processor (123) may be implemented separately from the main processor (121) or as a part thereof.

[0031] The auxiliary processor (123) may control at least a portion of functions or states associated with at least one component (e.g., a display module (160), a sensor module (176), or a communication module (190)) of the electronic device (101), for example, on behalf of the main processor (121) while the main processor (121) is in an inactive (e.g., sleep) state, or together with the main processor (121) while the main processor (121) is in an active (e.g., application execution) state. In one embodiment, the auxiliary processor (123) (e.g., an image signal processor or a communication processor) may be implemented as a part of another functionally related component (e.g., a camera module (180) or a communication module (190)). In one embodiment, the auxiliary processor (123) (e.g., a neural network processing unit) may include a hardware structure specialized for processing artificial intelligence models. The artificial intelligence models may be generated through machine learning. This learning can be performed, for example, on the electronic device (101) itself where the artificial intelligence model is executed, or can be performed through a separate server (e.g., server (108)). The learning algorithm can include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but is not limited to the examples described above. The artificial intelligence model can include multiple artificial neural network layers.The artificial neural network may be one of a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), a restricted Boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), a deep Q-network, or a combination of two or more of the above, but is not limited to the examples described above. In addition to, or alternatively to, a hardware structure, an artificial intelligence model may include a software structure.

[0032] The memory (130) can store various data used by at least one component (e.g., processor (120) or sensor module (176)) of the electronic device (101). The data can include, for example, software (e.g., program (140)) and input data or output data for commands related thereto. The memory (130) can include volatile memory (132) or non-volatile memory (134).

[0033] The program (140) may be stored as software in memory (130) and may include, for example, an operating system (142), middleware (144), or an application (146).

[0034] The input module (150) can receive commands or data to be used in a component of the electronic device (101) (e.g., a processor (120)) from an external source (e.g., a user) of the electronic device (101). The input module (150) can include, for example, a microphone, a mouse, a keyboard, a key (e.g., a button), or a digital pen (e.g., a stylus pen).

[0035] The audio output module (155) can output audio signals to the outside of the electronic device (101). The audio output module (155) can include, for example, a speaker or a receiver. The speaker can be used for general purposes, such as multimedia playback or recording playback. The receiver can be used to receive incoming calls. In one embodiment, the receiver can be implemented separately from the speaker or as part of the speaker.

[0036] The display module (160) can visually provide information to an external party (e.g., a user) of the electronic device (101). The display module (160) may include, for example, a display, a holographic device, or a projector and a control circuit for controlling the device. According to one embodiment, the display module (160) may include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of a force generated by the touch.

[0037] The audio module (170) can convert sound into an electrical signal, or vice versa, convert an electrical signal into sound. According to one embodiment, the audio module (170) can acquire sound through the input module (150), output sound through the sound output module (155), or an external electronic device (e.g., electronic device (102)) (e.g., speaker or headphone) directly or wirelessly connected to the electronic device (101).

[0038] The sensor module (176) can detect the operating status (e.g., power or temperature) of the electronic device (101) or the external environmental status (e.g., user status) and generate an electrical signal or data value corresponding to the detected status. According to one embodiment, the sensor module (176) can include, for example, a gesture sensor, a gyro sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, a temperature sensor, a humidity sensor, or an illuminance sensor.

[0039] The interface (177) may support one or more designated protocols that may be used to directly or wirelessly connect the electronic device (101) with an external electronic device (e.g., the electronic device (102)). In one embodiment, the interface (177) may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.

[0040] The connection terminal (178) may include a connector through which the electronic device (101) may be physically connected to an external electronic device (e.g., electronic device (102)). According to one embodiment, the connection terminal (178) may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (e.g., a headphone connector).

[0041] The haptic module (179) can convert electrical signals into mechanical stimuli (e.g., vibration or movement) or electrical stimuli that a user can perceive through tactile or kinesthetic sensations. According to one embodiment, the haptic module (179) can include, for example, a motor, a piezoelectric element, or an electrical stimulation device.

[0042] The camera module (180) can capture still images and videos. According to one embodiment, the camera module (180) may include one or more lenses, image sensors, image signal processors, or flashes.

[0043] The power management module (188) can manage power supplied to the electronic device (101). According to one embodiment, the power management module (188) can be implemented as, for example, at least a part of a power management integrated circuit (PMIC).

[0044] A battery (189) may power at least one component of the electronic device (101). In one embodiment, the battery (189) may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.

[0045] The communication module (transmitter / receiver) (190) may support the establishment of a direct (e.g., wired) communication channel or a wireless communication channel between the electronic device (101) and an external electronic device (e.g., electronic device (102), electronic device (104), or server (108)), and the performance of communication through the established communication channel. The communication module (190) may operate independently from the processor (120) (e.g., application processor) and may include one or more communication processors that support direct (e.g., wired) communication or wireless communication. According to one embodiment, the communication module (190) may include a wireless communication module (192) (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module (194) (e.g., a local area network (LAN) communication module, or a power line communication module). Among these communication modules, the corresponding communication module can communicate with an external electronic device (104) via a first network (198) (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network (199) (e.g., a long-range communication network such as a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., a LAN or WAN)). These various types of communication modules can be integrated into a single component (e.g., a single chip) or implemented as multiple separate components (e.g., multiple chips). The wireless communication module (192) can verify or authenticate the electronic device (101) within a communication network such as the first network (198) or the second network (199) by using subscriber information (e.g., an international mobile subscriber identity (IMSI)) stored in the subscriber identification module (196).

[0046] The wireless communication module (192) can support 5G networks and next-generation communication technologies following the 4G network, such as NR access technology (new radio access technology). The NR access technology can support high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimization of terminal power and connection of multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency (URLLC (ultra-reliable and low-latency communications)). The wireless communication module (192) can support, for example, a high-frequency band (e.g., mmWave band) to achieve a high data transmission rate. The wireless communication module (192) can support various technologies for securing performance in a high-frequency band, such as beamforming, massive multiple-input and multiple-output (MIMO), full dimensional MIMO (FD-MIMO), array antenna, analog beam-forming, or large scale antenna. The wireless communication module (192) can support various requirements specified in the electronic device (101), an external electronic device (e.g., the electronic device (104)), or a network system (e.g., the second network (199)). According to one embodiment, the wireless communication module (192) can support a peak data rate (e.g., 20 Gbps or more) for eMBB realization, a loss coverage (e.g., 164 dB or less) for mMTC realization, or a U-plane latency (e.g., 0.5 ms or less for downlink (DL) and uplink (UL), or 1 ms or less for round trip) for URLLC realization.

[0047] The antenna module (197) can transmit or receive signals or power to or from an external device (e.g., an external electronic device). In one embodiment, the antenna module (197) may include an antenna including a radiator formed of a conductor or a conductive pattern formed on a substrate (e.g., a PCB). In one embodiment, the antenna module (197) may include a plurality of antennas (e.g., an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network, such as the first network (198) or the second network (199), may be selected from the plurality of antennas, for example, by the communication module (190). A signal or power may be transmitted or received between the communication module (190) and an external electronic device via the at least one selected antenna. In some embodiments, in addition to the radiator, another component (e.g., a radio frequency integrated circuit (RFIC)) may be additionally formed as a part of the antenna module (197).

[0048] According to various embodiments, the antenna module (197) may form a mmWave antenna module. In one embodiment, the mmWave antenna module may include a printed circuit board, an RFIC disposed on or adjacent a first side (e.g., a bottom side) of the printed circuit board and capable of supporting a designated high-frequency band (e.g., a mmWave band), and a plurality of antennas (e.g., an array antenna) disposed on or adjacent a second side (e.g., a top side or a side side) of the printed circuit board and capable of transmitting or receiving signals in the designated high-frequency band.

[0049] At least some of the above components can be interconnected and exchange signals (e.g., commands or data) with each other via a communication method between peripheral devices (e.g., a bus, GPIO (general purpose input and output), SPI (serial peripheral interface), or MIPI (mobile industry processor interface)).

[0050] According to one embodiment, commands or data may be transmitted or received between the electronic device (101) and an external electronic device (104) via a server (108) connected to a second network (199). Each of the external electronic devices (102 or 104) may be the same or a different type of device as the electronic device (101). According to one embodiment, all or part of the operations executed in the electronic device (101) may be executed in one or more of the external electronic devices (102, 104, or 108). For example, when the electronic device (101) is to perform a certain function or service automatically or in response to a request from a user or another device, the electronic device (101) may, instead of or in addition to executing the function or service itself, request one or more external electronic devices to perform the function or at least a part of the service. One or more external electronic devices that receive the request may execute at least a portion of the requested function or service, or an additional function or service related to the request, and transmit the result of the execution to the electronic device (101). The electronic device (101) may process the result as is or additionally and provide it as at least a portion of a response to the request. For this purpose, cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used, for example. The electronic device (101) may provide an ultra-low latency service by using distributed computing or mobile edge computing, for example. In another embodiment, the external electronic device (104) may include an Internet of Things (IoT) device. The server (108) may be an intelligent server utilizing machine learning and / or a neural network. According to one embodiment, the external electronic device (104) or the server (108) may be included in the second network (199).The electronic device (101) can be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology and IoT-related technology.

[0051] Electronic devices according to various embodiments disclosed in this document may take various forms. Electronic devices may include, for example, portable communication devices (e.g., smartphones), computer devices, portable multimedia devices, portable medical devices, cameras, wearable devices, or home appliances. Electronic devices according to embodiments of this document are not limited to the aforementioned devices.

[0052] The various embodiments of this document and the terminology used herein are not intended to limit the technical features described in this document to a specific embodiment, but should be understood to include various modifications, equivalents, or substitutes of the embodiment. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of the item, unless the context clearly indicates otherwise. In this document, each of the phrases "A or B", "at least one of A and B", "at least one of A or B", "A, B, or C", "at least one of A, B, and C", and "at least one of A, B, or C" can include any one of the items listed together in the corresponding phrase among those phrases, or all possible combinations thereof. Terms such as "first," "second," or "first" or "second" may be used merely to distinguish one component from another, and do not limit the components in any other respect (e.g., importance or order). When a component (e.g., a first component) is referred to as "coupled" or "connected" to another component (e.g., a second component), with or without the terms "functionally" or "communicatively," it means that the component can be connected to the other component directly (e.g., wired), wirelessly, or through a third component.

[0053] The term "module" used in various embodiments of this document may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit. A module may be an integral component, or a minimum unit or portion of such a component that performs one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).

[0054] Various embodiments of the present document may be implemented as software (e.g., a program (140)) including one or more instructions stored in a storage medium (e.g., an internal memory (136) or an external memory (138)) readable by a machine (e.g., an electronic device (101)). For example, a processor (e.g., a processor (120)) of the machine (e.g., an electronic device (101)) may call at least one instruction among the one or more instructions stored from the storage medium and execute it. This enables the machine to operate to perform at least one function according to the at least one called instruction. The one or more instructions may include code generated by a compiler or code executable by an interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory' simply means that the storage medium is a tangible device and does not contain signals (e.g., electromagnetic waves), and the term does not distinguish between cases where data is stored semi-permanently or temporarily on the storage medium.

[0055] In the following description, an electronic device may include a receiving device that receives a signal (or data) from a transmitting device of a wireless communication system. For example, the electronic device may include a base station that receives a signal (or data) from a terminal. For example, the base station may be at least one of a Node B, a BS (base station), an eNB (eNode B), or a gNB (gNode B). For example, the electronic device may include a terminal that receives a signal (or data) from the base station. For example, the terminal may be at least one of a UE (user equipment), an MS (mobile station), a cellular phone, a smartphone, a computer, or a multimedia system capable of performing a communication function.

[0056] FIG. 2 illustrates a block diagram of an electronic device according to one embodiment of the present disclosure.

[0057] According to one embodiment, the electronic device (101) may include and / or execute a frontend module (210) and / or a service processing module (220). The frontend module (210) and / or the service processing module (220) may be executed by, for example, the processor (120), or may be included as at least a part of the processor (120) or another entity. At least some of the operations performed by the frontend module (210) and / or the service processing module (220) in the present disclosure may be understood to be performed by, for example, the processor (120) and / or another entity under the control of the processor (120).

[0058] The front-end module (210) can perform at least one operation for data exchange with, for example, external electronic devices (106a, 106b, 106c, ..., 106n). For example, the front-end module (210) can provide data that can configure a user interface (UI) that can input user input from the external electronic devices (106a, 106b, 106c, ..., 106n). The front-end module (210) can provide processing for a user request to the service processing module (220). The service processing module (220) can perform a service using the user request and may also be referred to as a back-end module. The service processing module (220) can provide a response corresponding to the user request to the front-end module (210). The front-end module (210) can provide a response received from the service processing module (220) to an external electronic device (106a, 106b, 106c, ..., 106n).

[0059] The service processing module (220) may include, for example, a user request confirmation module (221), an optimization module (222), an AI model management module (224), a policy management module (226), and / or a service execution module (227).

[0060] The user request verification module (221) can verify information associated with a user request provided from an external electronic device (106a, 106b, 106c, ..., 106n). The information associated with the user request can be expressed as, for example, the number of user requests over a certain period of time and / or the size of the user request, but there is no limitation thereto. For example, the user request verification module (221) can count the number of user requests provided from the external electronic device (106a, 106b, 106c, ..., 106n) and / or monitor the size of the content included in the user request (for example, text and / or graphic objects, but there is no limitation thereto), but there is no limitation on the type of information associated with the user request and / or the verification method.

[0061] The optimization module (222) can provide at least one optimal number of instances for each of at least one AI model linked to the service.

[0062] The AI ​​model management module (224) can store and / or manage (e.g., including but not limited to, adding, deleting, and / or updating) AI models associated with a service.

[0063] The policy management module (226) may, for example, store and / or manage (e.g., including but not limited to, adding, deleting, and / or updating) acceptable response times. For example, the management device (104) may verify (e.g., receive or determine) at least one input for determining an acceptable response time and provide it to the electronic device (101). For example, an administrator may input information regarding an acceptable response time for a given service into the management device (104), but this is exemplary and there is no limitation on the manner in which the acceptable response time is verified.

[0064] The service execution module (227) may execute, for example, at least one instance group (231, 232, 233) corresponding to at least one AI model linked to the service. The service execution module (227) may execute, for example, at least one instance group (231, 232, 233) corresponding to at least one AI model according to the optimal number of instances provided by the optimization module (222). The service execution module (227) may process a user request based on the executed at least one instance group (231, 232, 233) and provide a response according to the processing result to an external electronic device (106a, 106b, 106c, ..., 106n) through the front-end module (210). According to one embodiment, when there are multiple instances being executed, the user request may be distributedly processed by the multiple instances.

[0065] For decoding, a neural network based on the sum-product algorithm can be used. This constructs a DNN neural network based on the parity check matrix of error-correcting codes, and layer-by-layer operations in the neural network follow the formula of the sum-product algorithm. For example, a syndrome test is performed on even-numbered layers, and decoding is terminated if the syndrome test passes.

[0066] The device used in the LDPC decoding technique based on the offset min-sum algorithm consists of an LDPC decoder, a storage unit, and a neural network. The neural network is used to optimize the offset coefficients. To enable real-time learning of the offset coefficients, if LDPC decoding is successful, the received signal and decoding result are stored in the storage unit and used as training data for offset coefficient optimization. The same offset coefficients can be used for a certain period of time during decoding, depending on the time required to collect the training data or the training process.

[0067] The device used in the LDPC decoding technique based on the self-correcting min-sum algorithm consists of an LDPC decoder, a storage unit, and a neural network. The decoder uses four coefficients, which have different values ​​for each iteration, and these coefficients are learned through the neural network. Furthermore, the neural network uses a hysteresis-based self-correction technique to train by removing some nodes within the neural network, thereby generating a dropout effect and addressing the overfitting problem in real-time learning.

[0068] Building a neural network requires dozens of layers, with each layer containing thousands or tens of thousands of nodes, resulting in significant learning complexity. Furthermore, parameters have different values ​​depending on the type, length, and coding rate of the LDPC code being applied. Because various communication systems vary in code type, length, and coding rate, all parameters appropriate for each must be stored.

[0069] In the case of the neural network based on the sum-product algorithm and the LDPC decoding technique based on the self-correcting min-sum algorithm described above, different parameter values ​​are applied to each node and connection at each iteration, so parameters numbering from thousands to hundreds of thousands must be stored for each code.

[0070] In the case of the LDPC decoding technique based on the self-correcting min-sum algorithm described above, since four different parameter values ​​are applied for each iteration, the number of parameter values ​​per code is in the tens to hundreds, which may be small compared to the neural network based on the sum-product algorithm and the LDPC decoding technique based on the self-correcting min-sum algorithm. However, during learning, it still has the same amount of computation as learning thousands to hundreds of thousands of parameters. Therefore, although it has a structure that performs real-time learning, it has problems with delay and many resources due to the large amount of computation. In addition, since only decodable cases are collected as learning data, the performance improvement effect brought about by real-time learning is not large.

[0071] Accordingly, the present disclosure provides a device and method for efficiently training a neural network decoder. More specifically, the present disclosure provides a device and method for efficiently training a neural network decoder for decoding LDPC codes. In one embodiment, the present disclosure can train coefficients through a base code-based neural network.

[0072] In one embodiment, the learned coefficients can be applied to LDPC codes of various lifting sizes based on the corresponding base code. Since the neural network is small, the amount of resources required for learning is small, and the learning latency is short, which may increase the applicability of real-time learning. Furthermore, the method proposed in this disclosure can reduce learning latency by applying data cleaning techniques, including data deletion and replacement. Furthermore, since the method proposed in this disclosure directly generates learning data, the performance improvement effect brought about by real-time learning can be enhanced.

[0073] FIG. 3 illustrates a block diagram of a decoder in an electronic device according to one embodiment of the present disclosure.

[0074] Referring to FIG. 3, the decoder proposed in the present disclosure may include at least one of a processing unit (310), a storage unit (320), and a training unit (330). Additionally, the decoder proposed in the present disclosure may include at least one of a log-likelihood ratio (LLR) calculation unit (300) and a CRC separation and code block decomposition unit (315).

[0075] In one embodiment, the processing unit (310) may receive as input the LLR value, which is the output of the LLR calculation unit (300), and output a decoded binary vector. In one embodiment, the decoder performs an iterative decoding algorithm operation that receives four parameters and operates, and the parameter values ​​may be different for each iteration. In one embodiment, the model parameter (360) may be received and set from the storage unit (320). In one embodiment, the decoder may remove a CRC (cyclic redundancy check) portion in a code word output from the CRC separation and code block desegmentation unit (315) and perform an operation of reconnecting the divided code blocks (CRC detachment and codeblock desegmentation).

[0076] The storage unit (320) may include a memory device that stores parameters to be applied to the processing unit (310) of the decoder. In one embodiment, the memory may store one or more parameter sets and may transmit a corresponding model parameter set (360) to the processing unit (310) according to code information (350).

[0077] The learning unit (330) may include at least one of a learning data set generation unit utilizing channel information, a neural network learning unit performing parameter optimization, and a learning data update and refinement unit. In one embodiment, the learning unit (330) may transfer model parameters (365) to the storage unit (320) upon completion of learning. In one embodiment, if real-time learning is not used, the decoder may omit the learning unit (330).

[0078] FIG. 4 is a diagram schematically illustrating the correlation between a base graph and a Tanner graph according to one embodiment of the present disclosure.

[0079] ( ) LDPC code is Parity check matrix of size Based on and variable nodes (VN) It is expressed as a Tanner graph showing the connections between check nodes (CN), and the connections between variable nodes and check nodes are referred to as edges. At this time, the number of edges is equal to the number of 1s in the parity check matrix.

[0080] LDPC codes used in various communication systems including NR (new radio) are Protograph LDPC codes, one of the multi-edge type LDPC code families, and these have a smaller size. ) can be characterized by its structure as a base code. The Tanner graph of the base code is also called the base graph. Variable nodes (VN) of the dog and ( ) consists of check nodes (CN). And the number of edges is can be referred to as

[0081] From the base code ( ) To obtain the LDPC code, the base graph is can perform copying. This copying operation can be referred to as lifting, and Z is called the lifting size. Nodes and edges copied from the same node and edge can be grouped and defined as a type, and by permuting edges with the same type, Z copied base graphs can be combined to form a large Tanner graph. Since permutation is performed within the same type, the structural characteristics of the LDPC codes generated through the lifting process are the same as the base code. Therefore, for Z ( ) protograph LDPC code and ( ) The relationship between the base codes is as shown in the mathematical expression 1 below.

[0082] [Mathematical Formula 1]

[0083]

[0084] The Z supported by the NR (new radio) standard is as shown in Table 1 below.

[0085] [Table 1]

[0086]

[0087] Figure 4 shows the correlation between the basegraph and the tannergraph when Z=3.

[0088] Figure 4 (a) illustrates an example of a base graph having a structure of a (1,0) base code, i.e., having one check node (400) and one variable node (410). Figure 4 (b) illustrates an example of a base graph having the structure of the base code illustrated in (a) copied three times (three check nodes (401, 403, 405), three variable nodes (411, 413, 415)).

[0089] Figure 4 (c) shows an example of a Tanner graph in which the connections between check nodes and variable nodes in the copied base graph are permuted ((three check nodes (420, 430, 440), three variable nodes (450, 460, 470)). That is, nodes and edges copied from the same node and edge can be grouped and defined as one type, and Z copied base graphs can be constructed by permuting edges having the same type.

[0090] In this disclosure, we propose a method for learning decoding coefficients by constructing a neural network having a base code structure, taking advantage of the fact that the base code has the structural characteristics of an LDPC code and that the decoding coefficients can be optimized based on the structural characteristics of the LDPC code. Furthermore, in the method proposed in this disclosure, the learned coefficients can be equally applied to LDPC codes of various lifting sizes based on the base code. In the method proposed in this disclosure, the neural network of the decoder can be compressed through a pruning technique to learn the parameters applied to the decoder using the base code described above.

[0091] FIG. 5 illustrates the structure of a neural network-based decoder in an electronic device according to one embodiment of the present disclosure.

[0092] The LDPC code decoder can perform decoding using an iterative decoding algorithm. The neural network constituting the neural network decoder proposed in this disclosure may be expressed in the form of a trellis for the iterative decoding operation.

[0093] Referring to Fig. 5, the neural network-based decoder includes a channel input layer (500) and It is composed of sub-neural networks (SNNs), and each SNN can be composed of a check node update layer (515, 525, ..., 555) and a variable node update layer (510, 520, ..., 550). In one embodiment, one SNN can correspond to one iterative decoding. In one embodiment, the channel input layer (500) has a total of N nodes, the check node update layer (515, 525, ..., 555) of each SNN can have E nodes, and the variable node update layer (510, 520, ..., 550) can have N nodes.

[0094] The internal computational operation of the neural network proposed in this disclosure is described below.

[0095] FIG. 6 is a flowchart illustrating a decryption operation of an electronic device according to one embodiment of the present disclosure.

[0096] As an example, is defined as the channel log likelihood ratio (LLR) calculated for the j-th code bit of the codeword, and each of them becomes the output of N nodes constituting the channel input layer.

[0097] In one embodiment, the electronic device performs an LLR initialization process for messages exchanged between a variable node and a check node at operation 610, can be set. First, initialization can be performed for messages transmitted from all variable nodes to the check node. The initial value for the message transmitted from the j-th variable node to the i-th check node ( ) is expressed as a formula as in mathematical formula 2.

[0098] [Equation 2]

[0099]

[0100] Meanwhile, the initial value for the message transmitted from all check nodes to the variable node is the same as 0 (Mathematical Formula 3).

[0101] [Equation 3]

[0102]

[0103] In one embodiment, at operation 620, the electronic device may perform an operation on a message transmitted from a check node to a variable node after the initialization process is completed. In SNN l, a message transmitted from the i-th check node to the j-th variable node ( ), that is, an example of expressing the output operation of the check node update layer as a formula is as shown in Mathematical Expression 4 below.

[0104] [Equation 4]

[0105]

[0106] In mathematical formula 4 is a set of indices of variable nodes connected to the i-th check node, can refer to a set of indices of variable nodes excluding the j-th variable node in the set.

[0107] As an example, class can be defined by a normalization factor and an offset factor. In one embodiment, the ReLU function is an activation function used in neural networks. It could be. is an input value calculated using the output value of the previous SNN, and the first SNN silver It can be like this.

[0108] In one embodiment, the electronic device, in operation 630, takes as input the output of the check node update layer and the output of the channel input layer in the variable node update layer, and calculates a posteriori probability log-likelihood ratio (LLR)( ) can be calculated and output, and an example of expressing this as a formula is as shown in Mathematical Formula 5 below.

[0109] [Equation 5]

[0110]

[0111] In mathematical equation 5 is a set of indices of check nodes neighboring the j-th variable node. class can be defined by a channel normalization factor and a channel offset factor. In one embodiment, the ReLU function is an activation function used in neural networks. It could be.

[0112] According to one embodiment, the electronic device may determine a decoded codeword based on a posterior probability log-likelihood ratio in operation 640 as shown in Equation 6 below.

[0113] [Equation 6]

[0114]

[0115] In one embodiment, the electronic device may determine at operation 650 whether the value l is equal to a maximum number of iterations (lmax).

[0116] According to one embodiment, the electronic device, if the value of l is not equal to the maximum number of iterations (lmax), in operation 660, the parity check matrix Perform a syndrome check using Thus, the validity of the judged codeword can be determined. In one example, a valid codeword If it is determined as , it means that the decryption is successful and the decryption can be terminated. In one embodiment, an invalid codeword If it is determined, the output of the check node update layer can be used in the output of the variable node update layer to calculate the input of the check node update layer of the next SNN as in Equation 7 below.

[0117] [Equation 7]

[0118]

[0119] In one embodiment, the electronic device may determine whether a self-correction condition is satisfied based on the result of the operation at operation 680.

[0120] In one embodiment, the electronic device, in operation 695, The input of SNN l If the signs are different and the information is judged to be unreliable, the information is deleted. It is possible to perform self-correction. An example of the formula for this self-correction is shown in Mathematical Formula 8 below.

[0121] [Equation 8]

[0122]

[0123] If the input of SNN l If the information has been deleted About the calculated can be maintained.

[0124] In one embodiment, if the electronic device determines that the self-correction condition is not satisfied based on the operation result in operation 680, the electronic device proceeds to operation 620 by assigning l+1 to the value l in operation 690, thereby performing the operation described above. It can be performed on a dog's SNN

[0125] According to one embodiment, the electronic device may terminate the decoding operation if the value of l in operation 650 is equal to the maximum number of iterations (lmax).

[0126] FIG. 7 illustrates a block diagram of the operation of a learning unit of an electronic device according to one embodiment of the present disclosure.

[0127] Figure 7 illustrates the operation of the learning unit (330) of the decoder illustrated in Figure 3.

[0128] In one embodiment, the learning unit of the electronic device is a normalization coefficient ( ), offset coefficient ( ), channel normalization coefficient ( ), and channel offset coefficient ( ) can perform an operation to optimize at least one of the channel information (700). In one embodiment, the electronic device can receive channel information (700) and generate a data set (710). In one embodiment, the learning data is ( ) can be generated based on the base code. First, It can be encoded by taking as input a random binary vector of length . The generated The codeword of the length is BPSK modulated and the received signal is generated, and the channel LLR, i.e., can be calculated. In one embodiment, the received signal can be generated by utilizing the results of the channel and SNR estimator used in the receiver. In one embodiment, if the receiver does not have a channel and SNR estimator, it can be generated by directly inputting channel information. In one embodiment, the electronic device can map the calculated channel LLR as shown in Equation 9 below.

[0129] [Equation 9]

[0130]

[0131] In one embodiment, the electronic device generates a data set (710), class We can configure initial learning data using , as data, and codewords as labels. Unlike The subscript '1' indicates the SNN index, and parameter learning for SNN 1 is performed first, and as learning for each SNN progresses, The l value of can be updated. That is, the generated data set is the channel log-likelihood ratio (LLR) for the j-th code bit of the codeword. and if l=1, the message transmitted from the jth variable node to the ith check node May include at least one of:

[0132] In this disclosure, the neural network of a decoder can be compressed through a pruning technique to learn parameters applicable to the decoder. In one embodiment, during pruning, nodes to be deleted from each node can be removed according to the following rules based on the structural characteristics of the protograph LDPC code.

[0133] In one embodiment, if there are N nodes in the channel input layer and the variable node update layer, then the N nodes are It can be classified into types, and each type can include Z nodes. In one embodiment, the electronic device can delete Z-1 nodes, leaving only one node among Z nodes within the same type. As a result, in the compressed model, only one node per type exists in the channel input layer and variable node update layer. It can contain nodes of the dog.

[0134] In one embodiment, the check node update layer may include E nodes. In one embodiment, the E nodes are It can be classified into types, and each type can include Z nodes. In one embodiment, the electronic device can delete Z-1 nodes, leaving only one node among Z nodes in the same type. By going through this process, the number of nodes in the channel input layer and the variable node update layer is reduced from N. , and the check node update layer is in E. can be compressed into ( ) is similar to the neural network decoder structure for the base code.

[0135] In one embodiment, the electronic device generates a data set ( class ) is input into the sub-neural network (720) and the normalization coefficient ( ), offset coefficient ( ), channel normalization coefficient ( ), and channel offset coefficient ( ) can learn at least one of them. In one embodiment, learning can be performed sequentially for each SNN. That is, parameter learning for SNN 1 can be performed first, and when parameter learning for SNN 1 is completed, learning for SNN 2 can be performed. This process can be repeated until the learning of the SNN for the last l is completed.

[0136] As an example, when training SNN l, the output of the variable node update of SNN is input as a sigmoid function, which is one of the activation functions, and can be converted into a value between 0 and 1. An example of this expressed as a formula is as shown in Mathematical Formula 10 below.

[0137] [Equation 10]

[0138]

[0139] The loss function that indicates how much the neural network output used in this disclosure differs from the data label is exemplified in mathematical expression 11 below.

[0140] [Equation 11]

[0141]

[0142] In mathematical expression 11 is the label of the training data, and the transmitted codeword With =1- There may be a relationship. Learning is the process of finding parameters that minimize the above-mentioned loss, which represents the difference between the neural network output and the data label. Various optimization methods exist for neural network learning. In the embodiments of the present disclosure, learning is performed using, for example, the Adam method, but is not limited thereto.

[0143] In one embodiment, the electronic device normalizes the coefficients ( ), offset coefficient ( ), channel normalization coefficient ( ), channel offset coefficient ( ), , Data update and refinement operations can be performed using at least one of the input parameters.

[0144] In one embodiment, once training for SNN l is complete, training data for SNN (l+1) Training data can be input to SNN l, to which learned parameters are applied to generate . At this time, a codeword can be determined for the output of the variable node update layer, and a parity check can be performed. This can be identical to the parity check operation in a neural network decoder. In one embodiment, if the parity check result shows that the syndrome is 0, the data can be removed from the training data set and not participate in training for subsequent SNNs, including SNN (l+1).

[0145] In one embodiment, the electronic device may: It can be output and used as input to the sub-neural network (720).

[0146] As an example, for training data where the syndrome operation result described above is not 0, An example of a calculation that can be performed and expressed in a formula is as follows: Mathematical Formula 12.

[0147] [Equation 12]

[0148]

[0149] At this time, the electronic device Data replacement can be performed, and an example of this expressed in a formula is as shown in Mathematical Formula 13.

[0150] [Equation 13]

[0151]

[0152] As an example, class If the sign (positive or negative) is different, it is considered an unreliable singular input. can be replaced with 0 instead of the calculated value ( =0). In one embodiment, If this is replaced with 0 during SNN l learning, the input of SNN l+1 may not be replaced with 0 regardless of the sign. This is the same self-correction technique applied in the decoder.

[0153] The data cleansing performed in the learning unit of the present invention as described above is summarized as follows.

[0154] - Data deletion: If the result of the syndrome operation for a temporary codeword is 0, the corresponding data is deleted from the training data set.

[0155] - Data replacement: If the result of the syndrome operation for a temporary codeword is not 0, the operation of comparing the data with the data before the update and replacing the singular input with a changed sign with 0.

[0156] In one embodiment, data deletion refers to deleting the data itself from the training data set, while data replacement refers to replacing values ​​only for specific inputs that satisfy conditions within the data. This process can be repeated until coefficient optimization for all iterations is complete.

[0157] FIG. 8 illustrates a block diagram of a learning and data refinement operation of a learning unit of an electronic device according to one embodiment of the present disclosure.

[0158] In one embodiment, the electronic device may generate a learning data set and set l=1 in operation 810. In one embodiment, generating the learning data set comprises: class It may include configuring initial learning data using the data as the data and the code word as the label, and the data set creation (710) operation described in FIG. 7 may be applied.

[0159] In one embodiment, the electronic device is configured to perform a normalization coefficient ( ) at operation 820. ), offset coefficient ( ), channel normalization coefficient ( ), and channel offset coefficient ( ) can perform a learning operation that optimizes at least one of the following: In one embodiment, the learning operation (720) in the sub-neural network described in FIG. 7 can be applied to operation 820.

[0160] In one embodiment, the electronic device may determine whether the value l is equal to the maximum number of iterations (lmax) at operation 830. In one embodiment, the electronic device may terminate the learning operation if the value l is equal to the maximum number of iterations (lmax).

[0161] In one embodiment, the electronic device can determine a tentative codeword in operation 840 if the value of l is not equal to the maximum number of repetitions (lmax). In one embodiment, the electronic device can determine a parity check matrix in operation 850. Perform a syndrome check using Thus, the validity of the provisional codeword determined above can be determined. In one example, a valid codeword If determined to be an invalid codeword, the data may be deleted from the training data set (operation 860). In one embodiment, an invalid codeword If determined to be , the data can be compared with the data before the update and the singular input with a changed sign can be replaced with 0 (action 870).

[0162] In one embodiment, the electronic device may set l= l+1 after operations 860 and 870, and perform operation 820, repeating the operations until the value of l reaches a maximum number of repetitions (lmax).

[0163] In one embodiment, the learning unit may be operated only during initial setup, whenever there is a significant change in the surrounding channel environment, or may be operated periodically. In one embodiment, the learning unit may be operated whenever there is a significant change in the surrounding channel environment, or when operated continuously or periodically, the previously optimized coefficient values ​​may be set as initial values ​​to reduce the time required for learning.

[0164] In one embodiment, the storage unit may store a normalization coefficient, an offset coefficient, a channel normalization coefficient, and a channel offset coefficient. In one embodiment, when the receiver determines which code is used, the coefficient values ​​of the corresponding code may be retrieved from the storage unit and an iterative decoding operation may be performed.

[0165] FIG. 9 is a flowchart illustrating a learning operation of an electronic device according to one embodiment of the present disclosure.

[0166] At step 900, the electronic device can receive channel information.

[0167] In step 910, the electronic device can calculate a log-likelihood ratio (LLR) using a base code based on the channel information.

[0168] At step 920, the electronic device can generate a learning data set based on the LLR.

[0169] At step 930, the electronic device can perform iterative decoding on the learning data set.

[0170] In step 940, the electronic device can optimize at least one decoding coefficient in the neural network based on the iterative decoding result.

[0171] In one embodiment, the electronic device may remove data for which decryption has been successfully performed from the training data set for which the repeated decryption is performed based on the decryption result.

[0172] In one embodiment, the electronic device may compare the sign of the first data that failed to be decoded based on the nth decoding result with the (n-1)th decoded second data. In one embodiment, if the compared signs are different, the electronic device may replace the first data with a predetermined value.

[0173] In one embodiment, the at least one decoding coefficient may include at least one of a normalization coefficient, an offset coefficient, a channel normalization coefficient, and a channel offset coefficient.

[0174] In one embodiment, determining whether the decryption is successful may be based on performing a syndrome check using a parity check matrix.

[0175] In one embodiment, the electronic device can compute check node messages using normalization coefficients and offset coefficients. In one embodiment, the electronic device can compute variable node messages using channel normalization coefficients and channel offset coefficients. In one embodiment, the electronic device can determine a codeword based on the messages of the variable node.

[0176] In one embodiment, the base code may be a compressed code in which at least one remaining node except for one node and edge of the same type is deleted, taking into account the structural characteristics of a low-density parity-check (LDPC) code.

[0177] Below, FIGS. 10 to 15 illustrate performance according to embodiments of the present disclosure.

[0178] The present disclosure can apply the same parameters learned from the same neural network to LDPC codes derived from the same base code. Furthermore, the neural network utilizes the structural characteristics of protograph-based LDPC codes to apply model compression in the form of removing Z-1 nodes, excluding one of the Z nodes in each layer of the neural network.

[0179] The size of the neural network of the present disclosure is 1 / Z compared to the conventional technology to which it is compared. For example, in the case of NR LDPC code, Z ranges from 2 to 384. Compared to the neural network of an LDPC code with Z of 2, it is composed of 50% of the nodes and connections, and compared to the neural network of an LDPC code with Z of 384, the neural network of the present disclosure is composed of 0.26% of the nodes and connections. Since the number of gradient operations increases proportionally according to the number of nodes and connections during the learning process, the number of operations is drastically reduced through the method proposed in the present disclosure, and the memory space required during the calculation process is also reduced proportionally.

[0180] FIG. 10 is a diagram illustrating an example of the number of parameters required in a neural network according to one embodiment of the present disclosure.

[0181] According to previous research results, for the general performance of the decoder, all possible codewords must be included in the training data and trained. However, in the existing neural network structure, which is not the method proposed in this disclosure, training all possible codewords is nearly impossible because there are too many possible codewords. For example, in the above example, for the case of Z = 384, the number of possible codewords is 2. 12*384It is unrealistic to include all codewords in the training data during learning. However, in the case of the method proposed in this disclosure, the number of codewords required for the neural network is 2 because it utilizes very small-sized linear codes that reflect the connection characteristics of LDPC codes. 12 It has the advantage of being easy to construct a learning data set with dogs.

[0182] In this disclosure, an encoding process is required to generate a data set for real-time learning. In one embodiment, since the learning unit operates based on a base code, the encoding complexity is significantly reduced compared to the original LDPC code. For example, if encoding is performed using matrix multiplication, the number of operations is reduced to (1 / Z)^2 compared to conventional LDPC codes. Furthermore, the memory required to store the data set for real-time learning is also dramatically reduced. Since the length of the channel LLR and codeword pairs that constitute the data set is reduced to 1 / Z, the memory space occupied by the learning data is also reduced to 1 / Z. Furthermore, since the NR standard allows for 51 types of LDPC codes from a single base code, technologies that do not use a base code require storing all 51 parameter sets, whereas the method proposed in this disclosure can be applied to all 51 LDPC codes with a single parameter set. Therefore, the size of the memory device within the storage unit for storing the parameter sets can be reduced.

[0183] FIG. 11 is a diagram illustrating the ratio of a valid data set to the entire learning data set according to one embodiment of the present disclosure.

[0184] Figure 11 shows the ratio of data participating in learning decoding coefficients for each iteration compared to the initial learning data set. The LDPC decoder can check whether a codeword has been found by checking the syndrome during the decoding process. Reflecting this characteristic, the method proposed in this disclosure can perform a syndrome check by determining the codeword using the learned decoding coefficients after learning for each iteration is completed. For data with a syndrome of '0', the correct answer has been found, which means that it is close to the minimum in terms of loss and that the gradient is very small. Therefore, data with a small impact on weight and bias updates can be removed from the learning data set, and learning can be performed by forming a learning data set with only data with a non-zero syndrome, and this operation can be referred to as data cleansing.

[0185] Referring to Figure 11, due to the characteristics of the LDPC decoder, in the case of training with data cleansing, as learning progresses to the latter half of the repetition, the amount of data with syndrome 0 increases, so the size of the training data decreases, and as a result, learning progresses faster.

[0186] FIG. 12 is a diagram illustrating the relationship between a signal-to-noise ratio (SNR) and a block error rate (BER) of an electronic device according to one embodiment of the present disclosure.

[0187] FIG. 13 is a diagram illustrating the relationship between SNR and the average number of iterative decoding operations according to one embodiment of the present disclosure.

[0188] FIG. 12 and FIG. 13 show the simulation results for the BER (Block error rate) and the average number of iterated decodings, respectively, for four NR LDPC codes having the same (32,12) base code. Each LDPC code is set to a different Z, and in FIG. 12 and FIG. 13, (a) is a graph for an LDPC code set to 2, which is the smallest Z in the specification, (b) and (c) are graphs for an LDPC code set to 26 and 52, respectively, and (d) is graphs for an LDPC code set to 384, which is the largest Z in the specification. Since the four LDPC codes have the same base code, they are all set to the same parameters in the method proposed in the present disclosure (neural self-corrected min-sum (NSCMS) (ET)). On the other hand, in the conventional technique (NSCMS (CT)), all four LDPC codes are set to different parameters.

[0189] Simulation results show that the proposed method (NSCMS(ET)) has similar performance to the conventional NSCMS(CT), and has a larger performance difference compared to the Normalized min-sum (NMS), Offset min-sum (OMS), and Self-corrected min-sum (SCMS) techniques. Belief-propagation (BP) is known as the best decoding technique among LDPC decoding techniques, and its computation is very complex.

[0190] FIG. 14 is a diagram illustrating the relationship between the signal to noise ratio (SNR) and the block error rate (BLER) for the number of base codes of an electronic device according to one embodiment of the present disclosure.

[0191] FIG. 15 is a diagram illustrating the relationship between the SNR and the average number of iterative decodings for the number of base codes according to one embodiment of the present disclosure.

[0192] Figures 14 and 15 show simulation results for NR LDPC codes having base codes different from the four LDPC codes illustrated in Figures 12 and 13. It can be seen that the codes have similar performance to the conventional NSCMS (CT) codes even with other base codes, and at this time, Z is 52, indicating that the parameter learning complexity is only about 2% of the conventional technology.

[0193] In one embodiment, the device proposed in the present disclosure may include at least one of a processing unit that decrypts a message by inputting a channel LLR, a storage unit that stores decryption parameters, and a learning unit that performs learning on the parameters.

[0194] In one embodiment, the parameter may include at least one of a normalization coefficient, an offset coefficient, a channel normalization coefficient, and a channel offset coefficient.

[0195] In one embodiment, the processing unit may include a neural network decoder comprising a channel input layer and a plurality of sub-neural networks.

[0196] In one embodiment, the sub-neural network may be composed of a layer that performs check node updates and a layer that performs variable node updates.

[0197] In one embodiment, the storage unit may include a memory that stores parameters for each base code.

[0198] In one embodiment, the learning unit may include at least one of a learning data generation device, a learning data update and refinement device, and a neural network learning device.

[0199] In one embodiment, the learning data generation device can generate codewords through base code encoding and calculate an LLR to which a virtual channel is applied for the codewords.

[0200] In one embodiment, the virtual channel may be generated based on a channel or SNR value estimated by the receiver.

[0201] In one embodiment, the neural network of the learning unit may have a structure of a neural network in which all but one of the nodes and edges of the same type are pruned, taking into account the structural characteristics of the Protograph-based LDPC code.

[0202] In one embodiment, the learning data update and refinement device may be configured to perform data refinement including learning data update using learned parameters and a learning data set input, syndrome-based data deletion, and sign-change-based data replacement.

[0203] According to one embodiment, the method according to one embodiment disclosed in this document may be provided as included in a computer program product. The computer program product may be traded as a product between a seller and a buyer. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., compact disc read-only memory (CD-ROM)), or may be distributed online (e.g., downloaded or uploaded) via an application store (e.g., Play Store™) or directly between two user devices (e.g., smart phones). In the case of online distribution, at least a portion of the computer program product may be temporarily stored or temporarily generated in a machine-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or an intermediary server.

[0204] According to one embodiment, each component (e.g., a module or a program) of the above-described components may include one or more entities, and some of the entities may be separated and arranged in other components. According to one embodiment, one or more components or operations of the aforementioned components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, a plurality of components (e.g., a module or a program) may be integrated into a single component. In this case, the integrated component may perform one or more functions of each of the plurality of components identically or similarly to those performed by the corresponding component among the plurality of components prior to the integration. According to one embodiment, the operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, omitted, or one or more other operations may be added.

Claims

1. In electronic devices, At least one processor (120); and Contains a memory (130) storing at least one instruction, wherein said at least one instruction, when executed by at least a part of said at least one processor (120), causes said electronic device to perform at least one operation; At least one of the above actions: The action of receiving channel information, Based on the above channel information, an operation of calculating an LLR (log-likelihood ratio) using a base code; An operation of generating a learning data set based on the above LLR, An operation of performing iterative decoding on the above learning data set, and An electronic device characterized by including an operation of optimizing at least one decoding coefficient in a neural network based on the above iterative decoding result.

2. In the first paragraph, the operation of performing the iterative decoding is: An electronic device characterized by including an operation of removing data for which decryption has been successfully performed from the training data set for which repeated decryption is performed based on the decryption result.

3. In the first paragraph, the operation of performing the iterative decoding is: An operation of comparing the sign of the first data that failed to be decoded based on the nth decoding result with the n-1th decoded second data, and An electronic device characterized by including an operation of replacing the first data with a predetermined value when the compared signs are different.

4. In the first paragraph, at least one decoding coefficient is, An electronic device characterized by comprising at least one of a normalization coefficient, an offset coefficient, a channel normalization coefficient, and a channel offset coefficient.

5. In paragraph 2, An electronic device characterized in that determining whether the above decryption is successful is based on performing a syndrome check using a parity check matrix.

6. In the first paragraph, the operation of performing the iterative decoding is: The operation of computing check node messages using normalization coefficients and offset coefficients; An operation for computing messages of a variable node using a channel normalization coefficient and a channel offset coefficient, and An electronic device characterized by including an operation for determining a code word based on messages of variable nodes.

7. In the first paragraph, the base code is An electronic device characterized in that it is a compressed code in which at least one remaining node except for one node and edge of the same type is deleted, taking into account the structural characteristics of an LDPC (low-density parity-check) code.

8. In a learning method of a decryption device in a wireless communication system, The action of receiving channel information; An operation of calculating a log-likelihood ratio (LLR) using a base code based on the above channel information; An operation of generating a learning data set based on the above LLR; An operation of performing iterative decoding on the above learning data set; and A method characterized by comprising: an operation of optimizing at least one decoding coefficient in a neural network based on the result of the above iterative decoding.

9. In the 8th paragraph, the operation of performing the iterative decoding is: A method characterized by comprising: an operation of removing data for which decoding has been successfully performed from the training data set for which repeated decoding is performed based on the decoding result.

10. In the 8th paragraph, the operation of performing the iterative decoding is: An operation of comparing the sign of the first data that failed to be decoded based on the nth decoding result with the n-1th decoded second data; and A method characterized by comprising: an operation of replacing the first data with a predetermined value when the compared signs are different.

11. In the 8th paragraph, the at least one decoding coefficient is, A method characterized by comprising at least one of a normalization coefficient, an offset coefficient, a channel normalization coefficient, and a channel offset coefficient.

12. In paragraph 9, A method characterized in that determining whether the above decryption is successful is based on performing a syndrome check using a parity check matrix.

13. In the 8th paragraph, the operation of performing the iterative decoding is: The operation of computing check node messages using normalization coefficients and offset coefficients; An operation for computing messages of a variable node using a channel normalization coefficient and a channel offset coefficient, and A method characterized by including an operation of determining a code word based on messages of variable nodes.

14. In paragraph 8, the base code is A method characterized in that the code is compressed by deleting at least one remaining node except for one node and edge of the same type, taking into account the structural characteristics of the LDPC (low-density parity-check) code.

15. In a storage medium storing at least one computer-readable instruction, the at least one instruction, when executed by at least a part of at least one processor (120) of an electronic device, causes the electronic device to perform at least one operation, At least one of the above actions: The action of receiving channel information; An operation of calculating a log-likelihood ratio (LLR) using a base code based on the above channel information; An operation of generating a learning data set based on the above LLR; An operation of performing iterative decoding on the above learning data set; and A storage medium characterized by comprising an operation of optimizing at least one decoding coefficient in a neural network based on the result of the above iterative decoding.

Citation Information

Patent Citations

  • Method for selecting LDPC base code in multi-lpdc code, and device therefor

    KR1020180104759A

  • Hunminjeongeum for the dissemination of the global standardization of Hangul: The sound and character output of software algorithm processing by adding additionally generated fonts and characters including the old character, modified character, double character, and elementary, middle, and final sound

    KR1020230118313A

  • Composition for prevention, improvement or treatment of inflammatory bowel disease including mubong peel extract, and use thereof

    KR1020240077023A

  • 3 dimension electronic device manufactured by thermoplasticization process and the manufactured method thereof

    KR102259270B1

  • Heating device for washing machine.

    KR102635730B1