KR20240001134A - Method and device for transmitting and receiving signals in a wireless communication system using an auto encoder - Google Patents

Method and device for transmitting and receiving signals in a wireless communication system using an auto encoder Download PDF

Info

Publication number
KR20240001134A
KR20240001134A KR1020237035662A KR20237035662A KR20240001134A KR 20240001134 A KR20240001134 A KR 20240001134A KR 1020237035662 A KR1020237035662 A KR 1020237035662A KR 20237035662 A KR20237035662 A KR 20237035662A KR 20240001134 A KR20240001134 A KR 20240001134A
Authority
KR
South Korea
Prior art keywords
neural network
encoder
codeword
unit
receives
Prior art date
Application number
KR1020237035662A
Other languages
Korean (ko)
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 엘지전자 주식회사
Publication of KR20240001134A publication Critical patent/KR20240001134A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0071Use of interleaving
    • 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
    • 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
    • G06N3/0455Auto-encoder networks; Encoder-decoder 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
    • 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
    • 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/27Coding, 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 using interleaving techniques
    • 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0064Concatenated codes
    • H04L1/0065Serial concatenated codes

Abstract

본 명세서는 오토 인코더를 이용하는 무선 통신 시스템에서 송신단이 신호를 전송하기 위한 방법을 제공한다.
보다 구체적으로, 송신단에 의해 수행되는 상기 방법은 사전 학습된 송신단 인코더 뉴럴 네트워크(neural network)에 기초하여 입력 데이터를 인코딩(encoding)하는 단계; 및 상기 인코딩된 입력 데이터에 기초하여 상기 신호를 수신단으로 전송하는 단계를 포함하되, 상기 송신단 인코더 뉴럴 네트워크는 (i) 상기 입력 데이터를 입력 받아 제 1 코드워드(codeword)를 출력하는 제 1 인코더 뉴럴 네트워크, (ii) 상기 제 1 코드워드를 입력 받아 인터리빙(interleaving)하고, 상기 인터리빙된 제 1 코드워드를 출력하는 인터리버(interleaver) 및 (iii) 상기 인터리빙된 제 1 코드워드를 입력 받아 상기 인코딩된 입력 데이터를 구성하는 제 2 코드워드를 출력하는 제 2 인코더 뉴럴 네트워크를 직렬적으로(serially) 포함하는 것을 특징으로 한다.
This specification provides a method for a transmitter to transmit a signal in a wireless communication system using an auto encoder.
More specifically, the method performed by the transmitting end includes encoding input data based on a pre-trained transmitting end encoder neural network; And transmitting the signal to a receiving end based on the encoded input data, wherein the transmitting end encoder neural network includes (i) a first encoder neural network that receives the input data and outputs a first codeword. a network, (ii) an interleaver that receives the first codeword, interleaves it, and outputs the interleaved first codeword, and (iii) receives the interleaved first codeword and encodes the encoded codeword. It is characterized by serially including a second encoder neural network that outputs a second codeword constituting the input data.

Figure P1020237035662
Figure P1020237035662

Description

오토 인코더를 이용하는 무선 통신 시스템에서 신호를 송수신하기 위한 방법 및 이를 위한 장치 Method and device for transmitting and receiving signals in a wireless communication system using an auto encoder

본 명세서는 오토 인코더를 이용하여 신호를 송수신하기 위한 것으로, 보다 구체적으로 오토 인코더를 이용하는 무선 통신 시스템에서 신호를 송수신하기 위한 방법 및 이를 위한 장치에 관한 것이다.This specification relates to transmitting and receiving signals using an auto encoder, and more specifically, to a method and device for transmitting and receiving signals in a wireless communication system using an auto encoder.

무선 통신 시스템이 음성이나 데이터 등과 같은 다양한 종류의 통신 서비스를 제공하기 위해 광범위하게 전개되고 있다. 일반적으로 무선통신 시스템은 가용한 시스템 자원(대역폭, 전송 파워 등)을 공유하여 다중 사용자와의 통신을 지원할 수 있는 다중 접속(multiple access) 시스템이다. 다중 접속 시스템의 예들로는 CDMA(Code Division Multiple Access) 시스템, FDMA(Frequency Division Multiple Access) 시스템, TDMA(Time Division Multiple Access) 시스템, SDMA(Space Division Multiple Access), OFDMA(Orthogonal Frequency Division Multiple Access) 시스템, SC-FDMA(Single Carrier Frequency Division Multiple Access) 시스템, IDMA (Interleave Division Multiple Access) 시스템 등이 있다.Wireless communication systems are being widely deployed to provide various types of communication services such as voice and data. In general, a wireless communication system is a multiple access system that can support communication with multiple users by sharing available system resources (bandwidth, transmission power, etc.). Examples of multiple access systems include Code Division Multiple Access (CDMA) systems, Frequency Division Multiple Access (FDMA) systems, Time Division Multiple Access (TDMA) systems, Space Division Multiple Access (SDMA), and Orthogonal Frequency Division Multiple Access (OFDMA) systems. , SC-FDMA (Single Carrier Frequency Division Multiple Access) system, IDMA (Interleave Division Multiple Access) system, etc.

본 명세서는 뉴럴 네트워크를 활용하여 통신에서 발생하는 전송 오류를 정정하기 위한 방법 및 이를 위한 장치를 제공함에 목적이 있다.The purpose of this specification is to provide a method and device for correcting transmission errors occurring in communication using a neural network.

본 명세서는 통신에서 발생하는 전송 오류를 정정하기 위한 뉴럴 네트워크의 복잡도를 감소시키는 방법 및 이를 위한 장치를 제공함에 목적이 있다.The purpose of this specification is to provide a method and device for reducing the complexity of a neural network for correcting transmission errors occurring in communication.

본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The technical problems to be achieved in the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art from the description below. You will be able to.

본 명세서는 오토 인코더(auto encoder)를 이용하는 무선 통신 시스템에서 신호를 송수신하기 위한 방법 및 이를 위한 장치를 제공한다.This specification provides a method and device for transmitting and receiving signals in a wireless communication system using an auto encoder.

보다 구체적으로, 본 명세서는, 오토 인코더를 이용하는 무선 통신 시스템에서 송신단이 신호를 전송하기 위한 방법은, 사전 학습된 송신단 인코더 뉴럴 네트워크(neural network)에 기초하여 입력 데이터를 인코딩(encoding)하는 단계; 및 상기 인코딩된 입력 데이터에 기초하여 상기 신호를 수신단으로 전송하는 단계를 포함하되, 상기 송신단 인코더 뉴럴 네트워크는 (i) 상기 입력 데이터를 입력 받아 제 1 코드워드(codeword)를 출력하는 제 1 인코더 뉴럴 네트워크, (ii) 상기 제 1 코드워드를 입력 받아 인터리빙(interleaving)하고, 상기 인터리빙된 제 1 코드워드를 출력하는 인터리버(interleaver) 및 (iii) 상기 인터리빙된 제 1 코드워드를 입력 받아 상기 인코딩된 입력 데이터를 구성하는 제 2 코드워드를 출력하는 제 2 인코더 뉴럴 네트워크를 직렬적으로(serially) 포함하는 것을 특징으로 한다.More specifically, the present specification provides a method for a transmitter to transmit a signal in a wireless communication system using an auto encoder, including the steps of encoding input data based on a pre-trained transmitter encoder neural network; And transmitting the signal to a receiving end based on the encoded input data, wherein the transmitting end encoder neural network includes (i) a first encoder neural network that receives the input data and outputs a first codeword. a network, (ii) an interleaver that receives the first codeword, interleaves it, and outputs the interleaved first codeword, and (iii) receives the interleaved first codeword and encodes the encoded codeword. It is characterized by serially including a second encoder neural network that outputs a second codeword constituting the input data.

또한, 본 명세서는, 상기 제 1 인코더 뉴럴 네트워크는 n1개의 제 1 인코더 컴포넌트 뉴럴 네트워크로 구성되고, 상기 제 2 인코더 뉴럴 네트워크는 n2개의 상기 제 1 인코더 컴포넌트 뉴럴 네트워크 및 n3개의 제 2 인코더 컴포넌트 뉴럴 네트워크로 구성되고, 상기 n1, n2 및 n3는 0이 아닌 양의 정수인 것을 특징으로 할 수 있다.In addition, in this specification, the first encoder neural network consists of n1 first encoder component neural networks, and the second encoder neural network consists of n2 first encoder component neural networks and n3 second encoder component neural networks. It may be characterized in that n1, n2, and n3 are positive integers other than 0.

또한, 본 명세서는, 상기 입력 데이터의 길이가 k인 것에 기초하여, 상기 제 1 인코더 뉴럴 네트워트의 코드 레이트(code rate)는 k/n1이고, 상기 제 2 인코더 뉴럴 네트워크의 코드 레이트는 n1/(n2+n3)이고, 상기 송신단 인코더 뉴럴 네트워크의 전체 코드 레이트는 k/(n2+n3)인 것을 특징으로 할 수 있다.In addition, in this specification, based on the length of the input data being k, the code rate of the first encoder neural network is k/n1, and the code rate of the second encoder neural network is n1/( n2+n3), and the overall code rate of the transmitter encoder neural network may be k/(n2+n3).

또한, 본 명세서는, 상기 제 1 인코더 컴포넌트 뉴럴 네트워크 및 상기 제 2 인코더 컴포넌트 뉴럴 네트워크 각각은 적어도 하나 이상의 계층(layer)으로 구성되고, 상기 제 1 인코더 컴포넌트 뉴럴 네트워크 및 상기 제 2 인코더 컴포넌트 뉴럴 네트워크는 입력 값에 대한 필터링(filtering)을 위한 (i) 필터링 함수 및 (ii) 상기 필터링 함수의 출력을 입력 받는 활성화 함수(activation function)를 포함하는 뉴럴 네트워크 구성 단위에 기초하여 구성되는 것을 특징으로 할 수 있다.Additionally, in this specification, the first encoder component neural network and the second encoder component neural network each consist of at least one layer, and the first encoder component neural network and the second encoder component neural network are It may be characterized in that it is configured based on a neural network unit including (i) a filtering function for filtering the input value and (ii) an activation function that receives the output of the filtering function. there is.

또한, 본 명세서는, 상기 제 1 인코더 컴포넌트 뉴럴 네트워크 및 상기 제 2 인코더 컴포넌트 뉴럴 네트워크 각각은 2개의 계층(layer)으로 구성되는 것을 특징으로 할 수 있다.Additionally, in this specification, the first encoder component neural network and the second encoder component neural network may each be composed of two layers.

또한, 본 명세서는, 상기 n1 및 상기 n2의 값은 동일하고, 상기 n3는 1인 것을 특징으로 할 수 있다.Additionally, the present specification may be characterized in that the values of n1 and n2 are the same, and n3 is 1.

또한, 본 명세서는, 상기 제 1 인코더 컴포넌트 뉴럴 네트워크는 하나의 입력 값을 입력 받는 제 1 뉴럴 네트워크 구성 단위 및 상기 제 1 뉴럴 네트워크 구성 단위의 출력을 입력 받는 제 2 뉴럴 네트워크 구성 단위를 포함하고, 상기 제 2 뉴럴 네트워크 구성 단위의 출력에 선형 회귀(Linear regression)를 적용하고, 상기 선형 회귀가 적용된 상기 제 2 뉴럴 네트워크 구성 단위의 출력에 eLu(exponential linear unit) 함수를 적용하는 것을 특징으로 할 수 있다.In addition, in this specification, the first encoder component neural network includes a first neural network unit that receives one input value and a second neural network unit that receives an output of the first neural network unit, It may be characterized in that linear regression is applied to the output of the second neural network component, and an eLu (exponential linear unit) function is applied to the output of the second neural network component to which the linear regression is applied. there is.

또한, 본 명세서는, 상기 제 2 인코더 컴포넌트 뉴럴 네트워크는 상기 n1개의 입력 값을 입력 받는 제 3 뉴럴 네트워크 구성 단위 및 상기 제 3 뉴럴 네트워크 구성 단위의 출력 값을 입력 받는 제 4 뉴럴 네트워크 구성 단위를 포함하고, 상기 제 4 뉴럴 네트워크 구성 단위의 출력 값에 상기 선형 회귀를 적용하고, 상기 선형 회귀가 적용된 상기 제 4 뉴럴 네트워크 구성 단위의 출력값에 상기 eLu 함수를 적용하는 것을 특징으로 할 수 있다.In addition, in this specification, the second encoder component neural network includes a third neural network unit that receives the n1 input values and a fourth neural network unit that receives the output values of the third neural network unit. And, the linear regression may be applied to the output value of the fourth neural network structural unit, and the eLu function may be applied to the output value of the fourth neural network structural unit to which the linear regression has been applied.

또한, 본 명세서는, 상기 제 1 뉴럴 네트워크 구성 단위 및 상기 제 3 뉴럴 네트워크 구성 단위는 상기 2개의 계층 중 하나인 제 1 계층을 구성하고, 상기 제 2 뉴럴 네트워크 구성 단위 및 상기 제 4 뉴럴 네트워크 구성 단위는 상기 2개의 계층 중 나머지 하나인 제 2 계층을 구성하는 것을 특징으로 할 수 있다.In addition, in this specification, the first neural network structural unit and the third neural network structural unit constitute a first layer, which is one of the two layers, and the second neural network structural unit and the fourth neural network structural unit The unit may be characterized as configuring a second layer, which is the remaining one of the two layers.

또한, 본 명세서는, 상기 제 1 뉴럴 네트워크 구성 단위 내지 상기 제 4 뉴럴 네트워크 구성 단위 각각의 출력 값이 출력되는 출력 채널의 개수는 100인 것을 특징으로 할 수 있다.In addition, the present specification may be characterized in that the number of output channels through which output values of each of the first to fourth neural network structural units are output is 100.

또한, 본 명세서는, 상기 인터리버에 입력되는 상기 제 1 코드워드 비트열(bit stream) 내의 i+1번째 비트(bit)는 아래의 수학식에 기초하여 인터리빙되고,In addition, in this specification, the i+1th bit in the first codeword bit stream input to the interleaver is interleaved based on the equation below,

[수학식][Equation]

Figure pct00001
Figure pct00001

여기서, L은 인터리버의 크기이고, f0은 상수 오프셋(constant offset)이고, f1은 상기 L과 서로소 관계를 만족하는 소수(prime number)이고, f2는 L의 약수(fraction)들 중 2의 거듭 제곱 수(power of 2)에 해당하는 수인 것을 특징으로 할 수 있다.Here, L is the size of the interleaver, f0 is a constant offset, f1 is a prime number that satisfies the disjoint relationship with L, and f2 is the power of 2 among the divisors of L. It may be characterized as a number corresponding to a square number (power of 2).

또한, 본 명세서는, 상기 f0 은 0이고, 상기 제 1 코드워드의 비트열에 대하여 상기 f2의 값만큼 병렬(parallel) 연산이 수행되는 것을 특징으로 할 수 있다.Additionally, in this specification, f0 may be 0, and a parallel operation may be performed on the bit string of the first codeword equal to the value of f2.

또한, 본 명세서는, 상기 적어도 하나 이상의 계층 중 가장 먼저 위치하는 계층을 구성하는 특정 뉴럴 네트워크 구성 단위는 상기 필터링 함수의 출력 채널의 수를 감소시키기 위한 풀링 계층(pooling layer)을 더 포함하고, 상기 풀링 계층은 상기 필터링 함수 및 상기 활성화 함수 사이에 위치하는 것을 특징으로 할 수 있다.In addition, the present specification provides that the specific neural network unit constituting the first layer among the at least one layer further includes a pooling layer for reducing the number of output channels of the filtering function, The pooling layer may be located between the filtering function and the activation function.

또한, 본 명세서는, 상기 가장 먼저 위치하는 계층 이후에 위치하는 계층들을 구성하는 각각의 뉴럴 네트워크 구성 단위들은 상기 풀링 계층(pooling layer)을 더 포함하는 것을 특징으로 할 수 있다.In addition, the present specification may be characterized in that each neural network structural unit constituting the layers located after the first layer further includes the pooling layer.

또한, 본 명세서는, 오토 인코더(auto encoder)를 이용하는 무선 통신 시스템에서 신호를 송수신하기 위한 송신단에 있어서, 무선 신호를 전송하기 위한 전송기(transmitter); 무선 신호를 수신하기 위한 수신기(receiver); 적어도 하나의 프로세서; 및 상기 적어도 하나의 프로세서에 동작 가능하게 접속 가능하고, 상기 적어도 하나의 프로세서에 의해 실행될 때, 동작들을 수행하는 지시(instruction)들을 저장하는 적어도 하나의 컴퓨터 메모리를 포함하며, 상기 동작들은, 사전 학습된 송신단 인코더 뉴럴 네트워크(neural network)에 기초하여 입력 데이터를 인코딩(encoding)하는 단계; 및 상기 인코딩된 입력 데이터에 기초하여 상기 신호를 수신단으로 전송하는 단계를 포함하되, 상기 송신단 인코더 뉴럴 네트워크는 (i) 상기 입력 데이터를 입력 받아 제 1 코드워드(codeword)를 출력하는 제 1 인코더 뉴럴 네트워크, (ii) 상기 제 1 코드워드를 입력 받아 인터리빙(interleaving)하고, 상기 인터리빙된 제 1 코드워드를 출력하는 인터리버(interleaver) 및 (iii) 상기 인터리빙된 제 1 코드워드를 입력 받아 상기 인코딩된 입력 데이터를 구성하는 제 2 코드워드를 출력하는 제 2 인코더 뉴럴 네트워크를 직렬적으로(serially) 포함하는 것을 특징으로 한다.In addition, this specification provides a transmitter for transmitting and receiving signals in a wireless communication system using an auto encoder, including a transmitter for transmitting a wireless signal; A receiver for receiving wireless signals; at least one processor; and at least one computer memory operably connectable to the at least one processor and storing instructions that, when executed by the at least one processor, perform operations, the operations comprising: pre-learning Encoding input data based on a transmitter encoder neural network; And transmitting the signal to a receiving end based on the encoded input data, wherein the transmitting end encoder neural network includes (i) a first encoder neural network that receives the input data and outputs a first codeword. a network, (ii) an interleaver that receives the first codeword, interleaves it, and outputs the interleaved first codeword, and (iii) receives the interleaved first codeword and encodes the encoded codeword. It is characterized by serially including a second encoder neural network that outputs a second codeword constituting the input data.

또한, 본 명세서는, 오토 인코더(auto encoder)를 이용하는 무선 통신 시스템에서 수신단이 신호를 수신하기 위한 방법은, 사전 학습된 송신단 인코더 뉴럴 네트워크(neural network)에 기초하여 인코딩된 데이터를 포함하는 신호를 송신단으로부터 수신하는 단계; 사전 학습된 수신단 디코더 뉴럴 네트워크(neural network)에 기초하여 상기 신호에 포함된 상기 인코딩된 데이터를 디코딩(decoding)하는 단계를 포함하되, 상기 수신단 디코더 뉴럴 네트워크는 순차적으로 연결된 적어도 하나 이상의 기본 디코더 뉴럴 네트워크를 포함하고, 상기 적어도 하나 이상의 기본 디코더 뉴럴 네트워크 각각은 (i) 송신단 인코더 뉴럴 네트워크에 포함된 제 2 인코더 뉴럴 네트워크에서 출력된 제 2 코드워드에 대한 디코딩을 수행하고, 제 2 디코딩된 코드워드를 출력하는 제 2 디코더 뉴럴 네트워크, (ii) 상기 제 2 디코딩된 코드워드를 입력 받아 디-인터리빙(de-interleaving)하고, 상기 디-인터리빙된 제 2 디코딩된 코드워드를 출력하는 디-인터리버(de-interleaver) 및 (iii) 상기 디-인터리빙된 제 2 디코딩된 코드워드에 대한 디코딩을 수행하고, 상기 디-인터리빙된 제 2 디코딩된 코드워드에 대한 디코딩에 기초한 제 1 디코딩된 코드워드를 출력하는 제 1 디코더 뉴럴 네트워크를 직렬적으로(serially) 포함하는 것을 특징으로 한다.In addition, this specification provides that a method for a receiving end to receive a signal in a wireless communication system using an auto encoder is to receive a signal containing data encoded based on a pre-learned transmitting end encoder neural network. Receiving from a transmitting end; Decoding the encoded data included in the signal based on a pre-trained receiving end decoder neural network, wherein the receiving end decoder neural network is at least one sequentially connected basic decoder neural network. Includes, wherein each of the at least one basic decoder neural network (i) performs decoding on the second codeword output from the second encoder neural network included in the transmitter encoder neural network, and outputs the second decoded codeword a second decoder neural network that outputs, (ii) a de-interleaver (de) that receives the second decoded codeword, de-interleaves it, and outputs the de-interleaved second decoded codeword; -interleaver) and (iii) performing decoding on the de-interleaved second decoded codeword and outputting a first decoded codeword based on decoding on the de-interleaved second decoded codeword. It is characterized in that it includes a first decoder neural network serially.

또한, 본 명세서는, 무선 통신 시스템에서 신호를 송수신하기 위한 송신단에 있어서, 무선 신호를 전송하기 위한 전송기(transmitter); 무선 신호를 수신하기 위한 수신기(receiver); 적어도 하나의 프로세서; 및 상기 적어도 하나의 프로세서에 동작 가능하게 접속 가능하고, 상기 적어도 하나의 프로세서에 의해 실행될 때, 동작들을 수행하는 지시(instruction)들을 저장하는 적어도 하나의 컴퓨터 메모리를 포함하며, 상기 동작들은, 사전 학습된 송신단 인코더 뉴럴 네트워크(neural network)에 기초하여 인코딩된 데이터를 포함하는 신호를 송신단으로부터 수신하는 단계; 사전 학습된 수신단 디코더 뉴럴 네트워크(neural network)에 기초하여 상기 신호에 포함된 상기 인코딩된 데이터를 디코딩(decoding)하는 단계를 포함하되, 상기 수신단 디코더 뉴럴 네트워크는 순차적으로 연결된 적어도 하나 이상의 기본 디코더 뉴럴 네트워크를 포함하고, 상기 적어도 하나 이상의 기본 디코더 뉴럴 네트워크 각각은 (i) 송신단 인코더 뉴럴 네트워크에 포함된 제 2 인코더 뉴럴 네트워크에서 출력된 제 2 코드워드에 대한 디코딩을 수행하고, 제 2 디코딩된 코드워드를 출력하는 제 2 디코더 뉴럴 네트워크, (ii) 상기 제 2 디코딩된 코드워드를 입력 받아 디-인터리빙(de-interleaving)하고, 상기 디-인터리빙된 제 2 디코딩된 코드워드를 출력하는 디-인터리버(de-interleaver) 및 (iii) 상기 디-인터리빙된 제 2 디코딩된 코드워드에 대한 디코딩을 수행하고, 상기 디-인터리빙된 제 2 디코딩된 코드워드에 대한 디코딩에 기초한 제 1 디코딩된 코드워드를 출력하는 제 1 디코더 뉴럴 네트워크를 직렬적으로(serially) 포함하는 것을 특징으로 한다.In addition, the present specification provides a transmitter for transmitting and receiving signals in a wireless communication system, including a transmitter for transmitting a wireless signal; A receiver for receiving wireless signals; at least one processor; and at least one computer memory operably connectable to the at least one processor and storing instructions that, when executed by the at least one processor, perform operations, the operations comprising: pre-learning Receiving a signal containing data encoded based on a neural network of a transmitter encoder from a transmitter; Decoding the encoded data included in the signal based on a pre-trained receiving end decoder neural network, wherein the receiving end decoder neural network is at least one sequentially connected basic decoder neural network. Includes, wherein each of the at least one basic decoder neural network (i) performs decoding on the second codeword output from the second encoder neural network included in the transmitter encoder neural network, and outputs the second decoded codeword a second decoder neural network that outputs, (ii) a de-interleaver (de) that receives the second decoded codeword, de-interleaves it, and outputs the de-interleaved second decoded codeword; -interleaver) and (iii) performing decoding on the de-interleaved second decoded codeword and outputting a first decoded codeword based on decoding on the de-interleaved second decoded codeword. It is characterized in that it includes a first decoder neural network serially.

또한, 본 명세서는, 하나 이상의 명령어들을 저장하는 비일시적 컴퓨터 판독 가능 매체(computer readable medium, CRM)에 있어서, 하나 이상의 프로세서들에 의해 실행 가능한 하나 이상의 명령어들은 송신단이, 사전 학습된 송신단 인코더 뉴럴 네트워크(neural network)에 기초하여 입력 데이터를 인코딩(encoding)하도록 하고, 상기 인코딩된 입력 데이터에 기초하여 상기 신호를 수신단으로 전송하도록 하되, 상기 송신단 인코더 뉴럴 네트워크는 (i) 상기 입력 데이터를 입력 받아 제 1 코드워드(codeword)를 출력하는 제 1 인코더 뉴럴 네트워크, (ii) 상기 제 1 코드워드를 입력 받아 인터리빙(interleaving)하고, 상기 인터리빙된 제 1 코드워드를 출력하는 인터리버(interleaver) 및 (iii) 상기 인터리빙된 제 1 코드워드를 입력 받아 상기 인코딩된 입력 데이터를 구성하는 제 2 코드워드를 출력하는 제 2 인코더 뉴럴 네트워크를 직렬적으로(serially) 포함하는 것을 특징으로 한다.In addition, the present specification provides that, in a non-transitory computer readable medium (CRM) storing one or more instructions, one or more instructions executable by one or more processors are transmitted through a pre-trained transmitter encoder neural network. The input data is encoded based on a neural network, and the signal is transmitted to the receiving end based on the encoded input data. The encoder neural network at the transmitting end (i) receives the input data and transmits the signal to the receiving end. 1 A first encoder neural network that outputs a codeword, (ii) an interleaver that receives the first codeword, interleaves it, and outputs the interleaved first codeword, and (iii) It is characterized by serially comprising a second encoder neural network that receives the interleaved first codeword and outputs a second codeword constituting the encoded input data.

또한, 본 명세서는, 하나 이상의 메모리들 및 상기 하나 이상의 메모리들과 기능적으로 연결되어 있는 하나 이상의 프로세서들을 포함하는 장치에 있어서, 상기 하나 이상의 프로세서들은 상기 장치가, 상기 장치의 사전 학습된 송신단 인코더 뉴럴 네트워크(neural network)에 기초하여 입력 데이터를 인코딩(encoding)하도록 상기 장치를 제어하고, 상기 인코딩된 입력 데이터에 기초하여 상기 신호를 수신단으로 전송하도록 하되 상기 장치를 제어하되, 상기 송신단 인코더 뉴럴 네트워크는 (i) 상기 입력 데이터를 입력 받아 제 1 코드워드(codeword)를 출력하는 제 1 인코더 뉴럴 네트워크, (ii) 상기 제 1 코드워드를 입력 받아 인터리빙(interleaving)하고, 상기 인터리빙된 제 1 코드워드를 출력하는 인터리버(interleaver) 및 (iii) 상기 인터리빙된 제 1 코드워드를 입력 받아 상기 인코딩된 입력 데이터를 구성하는 제 2 코드워드를 출력하는 제 2 인코더 뉴럴 네트워크를 직렬적으로(serially) 포함하는 것을 특징으로 한다.In addition, the present specification relates to a device including one or more memories and one or more processors functionally connected to the one or more memories, wherein the one or more processors are configured to use a pre-trained transmitter encoder neural network of the device. The device is controlled to encode input data based on a network (neural network), and the device is controlled to transmit the signal to a receiving end based on the encoded input data, wherein the transmitting end encoder neural network (i) a first encoder neural network that receives the input data and outputs a first codeword, (ii) receives the first codeword, interleaves it, and outputs the first codeword serially comprising an interleaver that outputs an interleaver and (iii) a second encoder neural network that receives the interleaved first codeword and outputs a second codeword constituting the encoded input data. It is characterized by

본 명세서는 뉴럴 네트워크를 활용하여 통신에서 발생하는 전송 오류를 효과적으로 정정할 수 있는 효과가 있다.This specification has the effect of effectively correcting transmission errors occurring in communication by utilizing a neural network.

본 명세서는 통신에서 발생하는 전송 오류를 정정하기 위한 뉴럴 네트워크의 복잡도를 감소시킬 수 있는 효과가 있다.This specification has the effect of reducing the complexity of a neural network for correcting transmission errors occurring in communication.

본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects that can be obtained from the present invention are not limited to the effects mentioned above, and other effects not mentioned can be clearly understood by those skilled in the art from the description below. .

본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는, 첨부 도면은 본 발명에 대한 실시예를 제공하고, 상세한 설명과 함께 본 발명의 기술적 특징을 설명한다.
도 1은 3GPP 시스템에 이용되는 물리 채널들 및 일반적인 신호 전송을 예시한다.
도 2는 6G 시스템에서 제공 가능한 통신 구조의 일례를 나타낸 도이다.
도 3은 퍼셉트론 구조의 일례를 나타낸 도이다.
도 4는 다층 퍼셉트론 구조의 일례를 나타낸 도이다.
도 5는 심층 신경망의 일례를 나타낸 도이다.
도 6은 컨볼루션 신경망의 일례를 나타낸 도이다.
도 7은 컨볼루션 신경망에서의 필터 연산의 일례를 나타낸 도이다.
도 8은 순환 루프가 존재하는 신경망 구조의 일례를 나타낸다.
도 9는 순환 신경망의 동작 구조의 일례를 나타낸다.
도 10은 오토 인코더를 사용하는 무선 통신 시스템의 일 예를 나타낸 도이다.
도 11은 오토 인코더를 이용한 통신 체인(chain)의 개념적 구조의 일 예를 나타낸 도이다.
도 12는 본 명세서에서 제안하는 오토 인코더에 기반한 통신 시스템의 일 예를 나타낸 개념도이다.
도 13 및 도 14는 본 명세서에서 제안한 방법의 이해를 돕기 위한 터보 코드의 예시를 나타낸 도이다.
도 15는 본 명세서에서 제안하는 직렬 연결 뉴럴 네트워크 오토 인코더의 전체적인 구조의 일 예를 나타낸 도이다.
도 16은 본 명세서에서 제안된 방법이 적용될 수 있는 송신단 인코더 뉴럴 네트워크의 일 예를 나타낸 도이다.
도 17은 본 명세서에서 제안된 방법이 적용될 수 있는 수신단 디코더 뉴럴 네트워크의 일 예를 나타낸 도이다.
도 18은 본 명세서에서 제안된 방법이 적용될 수 있는 수신단 디코더 뉴럴 네트워크의 일 예를 나타낸 도이다.
도 19는 본 명세서에서 제안하는 방법이 적용될 수 있는 뉴럴 네트워크를 구성하기 위한 기본 뉴럴 네트워크 구성 단위의 일 예를 나타낸 도이다.
도 20 및 도 21은 본 명세서에서 제안하는 뉴럴 네트워크 구성 단위에 기초하여 구성되는 송신단 인코더 뉴럴 네트워크의 일 예를 나타낸 도이다.
도 22는 본 명세서에서 제안하는 뉴럴 네트워크 구성 단위에 기초하여 구성되는 수신단 디코더 뉴럴 네트워크의 일 예를 나타낸 도이다.
도 23은 본 명세서에서 제안하는 뉴럴 네트워크 구성 방법에서 사용될 수 있는 다양한 활성화 함수들의 예시를 나타낸 도면이다.
도 24 및 도 25는 본 명세서에서 제안하는 인터리버 디자인 방법의 일 예를 나타낸 도이다.
도 26은 본 명세서에서 제안하는 풀링 계층 구성 방법의 이해를 돕기 위한 도이다.
도 27은 뉴럴 네트워크에 사용되는 필터 수의 증가에 따른 뉴럴 네트워크의 학습 능력의 변화를 나타낸 도이다.
도 28은 본 명세서에서 제안하는 풀링 계층 구성 방법의 일 예를 나타낸 도이다.
도 29는 풀링 계층이 적용된 뉴럴 네트워크 구성 단위(Conv1dCode) 구조의 일 예를 나타낸 도이다.
도 30은 본 명세서에서 제안하는 풀링 계층 구성 방법의 수신단 디코더 뉴럴 네트워크에의 적용 여부에 기초한 복잡도의 비교 분석 결과를 나타낸 도이다.
도 31은 본 명세서에서 제안하는 높은 코드 레이트 달성을 위한 레이트-매칭 방법의 일 예를 나타낸 도이다.
도 32는 본 명세서에서 제안하는 풀링 계층 구성 방법 적용 시의 채널 코딩 성능을 나타낸 도이다.
도 33 및 도 34는 본 명세서에서 제안하는 인터리버 디자인 방법 적용 시의 채널 코딩 성능을 나타낸 도이다.
도 35는 본 명세서에서 제안하는 다양한 활성화 함수의 사용에 따른 채널 코딩 성능을 나타낸 도이다.
도 36은 본 명세서에서 제안하는 오토 인코더를 이용하는 무선 통신 시스템에서 신호를 송수신하기 위한 방법의 일례를 나타낸 순서도이다.
도 37은 본 발명에 적용되는 통신 시스템을 예시한다.
도 38은 본 발명에 적용될 수 있는 무선 기기를 예시한다.
도 39는 전송 신호를 위한 신호 처리 회로를 예시한다.
도 40은 본 발명에 적용되는 무선 기기의 다른 예를 나타낸다.
도 41은 본 발명에 적용되는 휴대 기기를 예시한다.
도 42는 본 발명에 적용되는 차량 또는 자율 주행 차량을 예시한다.
도 43은 본 발명에 적용되는 차량을 예시한다.
도 44는 본 발명에 적용되는 XR 기기를 예시한다.
도 45는 본 발명에 적용되는 로봇을 예시한다.
도 46은 본 발명에 적용되는 AI 기기를 예시한다.
The accompanying drawings, which are included as part of the detailed description to aid understanding of the present invention, provide embodiments of the present invention, and together with the detailed description, explain technical features of the present invention.
Figure 1 illustrates physical channels and typical signal transmission used in a 3GPP system.
Figure 2 is a diagram showing an example of a communication structure that can be provided in a 6G system.
Figure 3 is a diagram showing an example of a perceptron structure.
Figure 4 is a diagram showing an example of a multi-layer perceptron structure.
Figure 5 is a diagram showing an example of a deep neural network.
Figure 6 is a diagram showing an example of a convolutional neural network.
Figure 7 is a diagram showing an example of a filter operation in a convolutional neural network.
Figure 8 shows an example of a neural network structure in which a circular loop exists.
Figure 9 shows an example of the operational structure of a recurrent neural network.
Figure 10 is a diagram showing an example of a wireless communication system using an auto encoder.
Figure 11 is a diagram showing an example of the conceptual structure of a communication chain using an auto encoder.
Figure 12 is a conceptual diagram showing an example of a communication system based on an auto encoder proposed in this specification.
Figures 13 and 14 show examples of turbo codes to help understand the method proposed in this specification.
Figure 15 is a diagram showing an example of the overall structure of the serial-connected neural network autoencoder proposed in this specification.
Figure 16 is a diagram showing an example of a transmitter encoder neural network to which the method proposed in this specification can be applied.
Figure 17 is a diagram showing an example of a receiving-end decoder neural network to which the method proposed in this specification can be applied.
Figure 18 is a diagram showing an example of a receiving-end decoder neural network to which the method proposed in this specification can be applied.
Figure 19 is a diagram showing an example of a basic neural network unit for configuring a neural network to which the method proposed in this specification can be applied.
Figures 20 and 21 are diagrams showing an example of a transmitter encoder neural network constructed based on the neural network structural unit proposed in this specification.
Figure 22 is a diagram showing an example of a receiving-end decoder neural network constructed based on the neural network structural unit proposed in this specification.
Figure 23 is a diagram showing examples of various activation functions that can be used in the neural network construction method proposed in this specification.
Figures 24 and 25 are diagrams showing an example of the interleaver design method proposed in this specification.
Figure 26 is a diagram to help understand the pooling layer configuration method proposed in this specification.
Figure 27 is a diagram showing changes in the learning ability of a neural network as the number of filters used in the neural network increases.
Figure 28 is a diagram showing an example of the pooling layer configuration method proposed in this specification.
Figure 29 is a diagram showing an example of a neural network unit (Conv1dCode) structure to which a pooling layer is applied.
Figure 30 is a diagram showing the results of a comparative analysis of complexity based on whether or not the pooling layer configuration method proposed in this specification is applied to the decoder neural network at the receiving end.
Figure 31 is a diagram showing an example of a rate-matching method for achieving a high code rate proposed in this specification.
Figure 32 is a diagram showing channel coding performance when applying the pooling layer configuration method proposed in this specification.
Figures 33 and 34 are diagrams showing channel coding performance when applying the interleaver design method proposed in this specification.
Figure 35 is a diagram showing channel coding performance according to the use of various activation functions proposed in this specification.
Figure 36 is a flowchart showing an example of a method for transmitting and receiving signals in a wireless communication system using an auto encoder proposed in this specification.
Figure 37 illustrates a communication system applied to the present invention.
Figure 38 illustrates a wireless device to which the present invention can be applied.
Figure 39 illustrates a signal processing circuit for a transmission signal.
Figure 40 shows another example of a wireless device applied to the present invention.
Figure 41 illustrates a portable device to which the present invention is applied.
Figure 42 illustrates a vehicle or autonomous vehicle to which the present invention is applied.
Figure 43 illustrates a vehicle to which the present invention is applied.
Figure 44 illustrates an XR device applied to the present invention.
Figure 45 illustrates a robot applied to the present invention.
Figure 46 illustrates an AI device applied to the present invention.

이하의 기술은 CDMA, FDMA, TDMA, OFDMA, SC-FDMA 등과 같은 다양한 무선 접속 시스템에 사용될 수 있다. CDMA는 UTRA(Universal Terrestrial Radio Access)나 CDMA2000과 같은 무선 기술로 구현될 수 있다. TDMA는 GSM(Global System for Mobile communications)/GPRS(General Packet Radio Service)/EDGE(Enhanced Data Rates for GSM Evolution)와 같은 무선 기술로 구현될 수 있다. OFDMA는 IEEE 802.11 (Wi-Fi), IEEE 802.16 (WiMAX), IEEE 802-20, E-UTRA(Evolved UTRA) 등과 같은 무선 기술로 구현될 수 있다. UTRA는 UMTS(Universal Mobile Telecommunications System)의 일부이다. 3GPP(3rd Generation Partnership Project) LTE(Long Term Evolution)은 E-UTRA를 사용하는 E-UMTS(Evolved UMTS)의 일부이고 LTE-A(Advanced)/LTE-A pro는 3GPP LTE의 진화된 버전이다. 3GPP NR(New Radio or New Radio Access Technology)는 3GPP LTE/LTE-A/LTE-A pro의 진화된 버전이다. 3GPP 6G는 3GPP NR의 진화된 버전일 수 있다.The following technologies can be used in various wireless access systems such as CDMA, FDMA, TDMA, OFDMA, SC-FDMA, etc. CDMA can be implemented with wireless technologies such as Universal Terrestrial Radio Access (UTRA) or CDMA2000. TDMA can be implemented with wireless technologies such as Global System for Mobile communications (GSM)/General Packet Radio Service (GPRS)/Enhanced Data Rates for GSM Evolution (EDGE). OFDMA can be implemented with wireless technologies such as IEEE 802.11 (Wi-Fi), IEEE 802.16 (WiMAX), IEEE 802-20, Evolved UTRA (E-UTRA), etc. UTRA is part of the Universal Mobile Telecommunications System (UMTS). 3rd Generation Partnership Project (3GPP) Long Term Evolution (LTE) is part of Evolved UMTS (E-UMTS) using E-UTRA, and LTE-A (Advanced)/LTE-A pro is an evolved version of 3GPP LTE. 3GPP NR (New Radio or New Radio Access Technology) is an evolved version of 3GPP LTE/LTE-A/LTE-A pro. 3GPP 6G may be an evolved version of 3GPP NR.

설명을 명확하게 하기 위해, 3GPP 통신 시스템(예, LTE, NR 등)을 기반으로 설명하지만 본 발명의 기술적 사상이 이에 제한되는 것은 아니다. LTE는 3GPP TS 36.xxx Release 8 이후의 기술을 의미한다. 세부적으로, 3GPP TS 36.xxx Release 10 이후의 LTE 기술은 LTE-A로 지칭되고, 3GPP TS 36.xxx Release 13 이후의 LTE 기술은 LTE-A pro로 지칭된다. 3GPP NR은 TS 38.xxx Release 15 이후의 기술을 의미한다. 3GPP 6G는 TS Release 17 및/또는 Release 18 이후의 기술을 의미할 수 있다. "xxx"는 표준 문서 세부 번호를 의미한다. LTE/NR/6G는 3GPP 시스템으로 통칭될 수 있다. 본 발명의 설명에 사용된 배경기술, 용어, 약어 등에 관해서는 본 발명 이전에 공개된 표준 문서에 기재된 사항을 참조할 수 있다. 예를 들어, 다음 문서를 참조할 수 있다.For clarity of explanation, the description is based on a 3GPP communication system (eg, LTE, NR, etc.), but the technical idea of the present invention is not limited thereto. LTE refers to technology after 3GPP TS 36.xxx Release 8. In detail, LTE technology after 3GPP TS 36.xxx Release 10 is referred to as LTE-A, and LTE technology after 3GPP TS 36.xxx Release 13 is referred to as LTE-A pro. 3GPP NR refers to technology after TS 38.xxx Release 15. 3GPP 6G may refer to technologies after TS Release 17 and/or Release 18. “xxx” refers to the standard document detail number. LTE/NR/6G can be collectively referred to as a 3GPP system. Regarding background technology, terms, abbreviations, etc. used in the description of the present invention, matters described in standard documents published before the present invention may be referred to. For example, you can refer to the following document:

3GPP LTE3GPP LTE

- 36.211: Physical channels and modulation- 36.211: Physical channels and modulation

- 36.212: Multiplexing and channel coding- 36.212: Multiplexing and channel coding

- 36.213: Physical layer procedures- 36.213: Physical layer procedures

- 36.300: Overall description- 36.300: Overall description

- 36.331: Radio Resource Control (RRC)- 36.331: Radio Resource Control (RRC)

3GPP NR3GPP NR

- 38.211: Physical channels and modulation- 38.211: Physical channels and modulation

- 38.212: Multiplexing and channel coding- 38.212: Multiplexing and channel coding

- 38.213: Physical layer procedures for control- 38.213: Physical layer procedures for control

- 38.214: Physical layer procedures for data- 38.214: Physical layer procedures for data

- 38.300: NR and NG-RAN Overall Description- 38.300: NR and NG-RAN Overall Description

- 38.331: Radio Resource Control (RRC) protocol specification- 38.331: Radio Resource Control (RRC) protocol specification

물리 채널 및 프레임 구조Physical Channel and Frame Structure

물리 채널 및 일반적인 신호 전송Physical channels and typical signal transmission

도 1은 3GPP 시스템에 이용되는 물리 채널들 및 일반적인 신호 전송을 예시한다. 무선 통신 시스템에서 단말은 기지국으로부터 하향링크(Downlink, DL)를 통해 정보를 수신하고, 단말은 기지국으로 상향링크(Uplink, UL)를 통해 정보를 전송한다. 기지국과 단말이 송수신하는 정보는 데이터 및 다양한 제어 정보를 포함하고, 이들이 송수신 하는 정보의 종류/용도에 따라 다양한 물리 채널이 존재한다.Figure 1 illustrates physical channels and typical signal transmission used in a 3GPP system. In a wireless communication system, a terminal receives information from a base station through downlink (DL), and the terminal transmits information to the base station through uplink (UL). The information transmitted and received between the base station and the terminal includes data and various control information, and various physical channels exist depending on the type/purpose of the information they transmit and receive.

단말은 전원이 켜지거나 새로이 셀에 진입한 경우 기지국과 동기를 맞추는 등의 초기 셀 탐색(Initial cell search) 작업을 수행한다(S11). 이를 위해, 단말은 기지국으로부터 주 동기 신호(Primary Synchronization Signal, PSS) 및 부 동기 신호(Secondary Synchronization Signal, SSS)을 수신하여 기지국과 동기를 맞추고, 셀 ID 등의 정보를 획득할 수 있다. 그 후, 단말은 기지국으로부터 물리 방송 채널(Physical Broadcast Channel, PBCH)를 수신하여 셀 내 방송 정보를 획득할 수 있다. 한편, 단말은 초기 셀 탐색 단계에서 하향링크 참조 신호(Downlink Reference Signal, DL RS)를 수신하여 하향링크 채널 상태를 확인할 수 있다.When the terminal is turned on or enters a new cell, it performs an initial cell search task such as synchronizing with the base station (S11). To this end, the terminal can synchronize with the base station by receiving a primary synchronization signal (PSS) and a secondary synchronization signal (SSS) from the base station and obtain information such as a cell ID. Afterwards, the terminal can receive broadcast information within the cell by receiving a physical broadcast channel (PBCH) from the base station. Meanwhile, the terminal can check the downlink channel status by receiving a downlink reference signal (DL RS) in the initial cell search stage.

초기 셀 탐색을 마친 단말은 물리 하향링크 제어 채널(Physical Downlink Control Channel, PDCCH) 및 상기 PDCCH에 실린 정보에 따라 물리 하향링크 공유 채널(Physical Downlink Control Channel; PDSCH)을 수신함으로써 좀더 구체적인 시스템 정보를 획득할 수 있다(S12).After completing the initial cell search, the terminal acquires more specific system information by receiving a physical downlink control channel (PDCCH) and a physical downlink shared channel (PDSCH) according to the information carried in the PDCCH. You can do it (S12).

한편, 기지국에 최초로 접속하거나 신호 송신을 위한 무선 자원이 없는 경우, 단말은 기지국에 대해 임의 접속 과정(Random Access Procedure, RACH)을 수행할 수 있다(S13 내지 S16). 이를 위해, 단말은 물리 임의 접속 채널(Physical Random Access Channel, PRACH)을 통해 특정 시퀀스를 프리앰블로 송신하고(S13 및 S15), PDCCH 및 대응하는 PDSCH를 통해 프리앰블에 대한 응답 메시지((RAR(Random Access Response) message)를 수신할 수 있다. 경쟁 기반 RACH의 경우, 추가적으로 충돌 해결 절차(Contention Resolution Procedure)를 수행할 수 있다(S16).Meanwhile, when accessing the base station for the first time or when there are no radio resources for signal transmission, the terminal can perform a random access procedure (RACH) on the base station (S13 to S16). To this end, the terminal transmits a specific sequence as a preamble through a physical random access channel (PRACH) (S13 and S15), and a response message (RAR (Random Access Response) message) can be received. In the case of contention-based RACH, a contention resolution procedure can be additionally performed (S16).

상술한 바와 같은 절차를 수행한 단말은 이후 일반적인 상/하향링크 신호 송신 절차로서 PDCCH/PDSCH 수신(S17) 및 물리 상향링크 공유 채널(Physical Uplink Shared Channel, PUSCH)/물리 상향링크 제어 채널(Physical Uplink Control Channel; PUCCH) 송신(S18)을 수행할 수 있다. 특히 단말은 PDCCH를 통하여 하향링크 제어 정보(Downlink Control Information, DCI)를 수신할 수 있다. 여기서, DCI는 단말에 대한 자원 할당 정보와 같은 제어 정보를 포함하며, 사용 목적에 따라 포맷이 서로 다르게 적용될 수 있다.The terminal that has performed the above-described procedure will then perform PDCCH/PDSCH reception (S17) and Physical Uplink Shared Channel (PUSCH)/Physical Uplink Control Channel (Physical Uplink) as a general uplink/downlink signal transmission procedure. Control Channel (PUCCH) transmission (S18) can be performed. In particular, the terminal can receive downlink control information (DCI) through PDCCH. Here, DCI includes control information such as resource allocation information for the terminal, and different formats may be applied depending on the purpose of use.

한편, 단말이 상향링크를 통해 기지국에 송신하는 또는 단말이 기지국으로부터 수신하는 제어 정보는 하향링크/상향링크 ACK/NACK 신호, CQI(Channel Quality Indicator), PMI(Precoding Matrix 인덱스), RI(Rank Indicator) 등을 포함할 수 있다. 단말은 상술한 CQI/PMI/RI 등의 제어 정보를 PUSCH 및/또는 PUCCH를 통해 송신할 수 있다.Meanwhile, the control information that the terminal transmits to the base station through uplink or that the terminal receives from the base station includes downlink/uplink ACK/NACK signals, CQI (Channel Quality Indicator), PMI (Precoding Matrix Index), and RI (Rank Indicator). ), etc. may be included. The terminal can transmit control information such as the above-described CQI/PMI/RI through PUSCH and/or PUCCH.

상향링크 및 하향링크 채널의 구조Structure of uplink and downlink channels

하향링크 채널 구조Downlink channel structure

기지국은 후술하는 하향링크 채널을 통해 관련 신호를 단말에게 전송하고, 단말은 후술하는 하향링크 채널을 통해 관련 신호를 기지국으로부터 수신한다.The base station transmits related signals to the terminal through a downlink channel described later, and the terminal receives related signals from the base station through a downlink channel described later.

(1) 물리 하향링크 공유 채널(PDSCH)(1) Physical downlink shared channel (PDSCH)

PDSCH는 하향링크 데이터(예, DL-shared channel transport block, DL-SCH TB)를 운반하고, QPSK(Quadrature Phase Shift Keying), 16 QAM(Quadrature Amplitude Modulation), 64 QAM, 256 QAM 등의 변조 방법이 적용된다. TB를 인코딩하여 코드워드(codeword)가 생성된다. PDSCH는 다수의 코드워드들을 나를 수 있다. 코드워드(codeword) 별로 스크램블링(scrambling) 및 변조 매핑(modulation mapping)이 수행되고, 각 코드워드로부터 생성된 변조 심볼들은 하나 이상의 레이어로 매핑된다(Layer mapping). 각 레이어는 DMRS(Demodulation Reference Signal)과 함께 자원에 매핑되어 OFDM 심볼 신호로 생성되고, 해당 안테나 포트를 통해 전송된다.PDSCH carries downlink data (e.g., DL-shared channel transport block, DL-SCH TB), and modulation methods such as QPSK (Quadrature Phase Shift Keying), 16 QAM (Quadrature Amplitude Modulation), 64 QAM, and 256 QAM are used. Applies. A codeword is generated by encoding TB. PDSCH can carry multiple codewords. Scrambling and modulation mapping are performed for each codeword, and modulation symbols generated from each codeword are mapped to one or more layers (Layer mapping). Each layer is mapped to resources along with DMRS (Demodulation Reference Signal), generated as an OFDM symbol signal, and transmitted through the corresponding antenna port.

(2) 물리 하향링크 제어 채널(PDCCH)(2) Physical downlink control channel (PDCCH)

PDCCH는 하향링크 제어 정보(DCI)를 운반하고 QPSK 변조 방법 등이 적용된다. 하나의 PDCCH는 AL(Aggregation Level)에 따라 1, 2, 4, 8, 16 개 등의 CCE(Control Channel Element)로 구성된다. 하나의 CCE는 6개의 REG(Resource Element Group)로 구성된다. 하나의 REG는 하나의 OFDM 심볼과 하나의 (P)RB로 정의된다.PDCCH carries downlink control information (DCI) and QPSK modulation method is applied. One PDCCH consists of 1, 2, 4, 8, or 16 CCEs (Control Channel Elements) depending on the AL (Aggregation Level). One CCE consists of six REGs (Resource Element Group). One REG is defined by one OFDM symbol and one (P)RB.

단말은 PDCCH 후보들의 세트에 대한 디코딩(일명, 블라인드 디코딩)을 수행하여 PDCCH를 통해 전송되는 DCI를 획득한다. 단말이 디코딩하는 PDCCH 후보들의 세트는 PDCCH 검색 공간(Search Space) 세트라 정의한다. 검색 공간 세트는 공통 검색 공간 (common search space) 또는 단말-특정 검색 공간 (UE-specific search space)일 수 있다. 단말은 MIB 또는 상위 계층 시그널링에 의해 설정된 하나 이상의 검색 공간 세트 내 PDCCH 후보를 모니터링하여 DCI를 획득할 수 있다.The terminal obtains DCI transmitted through the PDCCH by performing decoding (aka blind decoding) on a set of PDCCH candidates. The set of PDCCH candidates that the terminal decodes is defined as the PDCCH search space set. The search space set may be a common search space or a UE-specific search space. The UE can obtain DCI by monitoring PDCCH candidates within one or more search space sets set by MIB or higher layer signaling.

상향링크 채널 구조Uplink channel structure

단말은 후술하는 상향링크 채널을 통해 관련 신호를 기지국으로 전송하고, 기지국은 후술하는 상향링크 채널을 통해 관련 신호를 단말로부터 수신한다.The terminal transmits related signals to the base station through an uplink channel, which will be described later, and the base station will receive the related signals from the terminal through an uplink channel, which will be described later.

(1) 물리 상향링크 공유 채널(PUSCH)(1) Physical uplink shared channel (PUSCH)

PUSCH는 상향링크 데이터(예, UL-shared channel transport block, UL-SCH TB) 및/또는 상향링크 제어 정보(UCI)를 운반하고, CP-OFDM (Cyclic Prefix - Orthogonal Frequency Division Multiplexing) 파형(waveform), DFT-s-OFDM (Discrete Fourier Transform - spread - Orthogonal Frequency Division Multiplexing) 파형 등에 기초하여 전송된다. PUSCH가 DFT-s-OFDM 파형에 기초하여 전송되는 경우, 단말은 변환 프리코딩(transform precoding)을 적용하여 PUSCH를 전송한다. 일 예로, 변환 프리코딩이 불가능한 경우(예, transform precoding is disabled) 단말은 CP-OFDM 파형에 기초하여 PUSCH를 전송하고, 변환 프리코딩이 가능한 경우(예, transform precoding is enabled) 단말은 CP-OFDM 파형 또는 DFT-s-OFDM 파형에 기초하여 PUSCH를 전송할 수 있다. PUSCH 전송은 DCI 내 UL 그랜트에 의해 동적으로 스케줄링 되거나, 상위 계층(예, RRC) 시그널링 (및/또는 Layer 1(L1) 시그널링(예, PDCCH))에 기초하여 반-정적(semi-static)으로 스케줄링 될 수 있다(configured grant). PUSCH 전송은 코드북 기반 또는 비-코드북 기반으로 수행될 수 있다.PUSCH carries uplink data (e.g., UL-shared channel transport block, UL-SCH TB) and/or uplink control information (UCI), and CP-OFDM (Cyclic Prefix - Orthogonal Frequency Division Multiplexing) waveform. , DFT-s-OFDM (Discrete Fourier Transform - spread - Orthogonal Frequency Division Multiplexing) waveform, etc. are transmitted. When the PUSCH is transmitted based on the DFT-s-OFDM waveform, the terminal transmits the PUSCH by applying transform precoding. For example, if transform precoding is not possible (e.g., transform precoding is disabled), the terminal transmits PUSCH based on the CP-OFDM waveform, and if transform precoding is possible (e.g., transform precoding is enabled), the terminal transmits CP-OFDM. PUSCH can be transmitted based on the waveform or DFT-s-OFDM waveform. PUSCH transmission is scheduled dynamically by UL grant within DCI, or semi-statically based on upper layer (e.g., RRC) signaling (and/or Layer 1 (L1) signaling (e.g., PDCCH)). Can be scheduled (configured grant). PUSCH transmission can be performed based on codebook or non-codebook.

(2) 물리 상향링크 제어 채널(PUCCH)(2) Physical Uplink Control Channel (PUCCH)

PUCCH는 상향링크 제어 정보, HARQ-ACK 및/또는 스케줄링 요청(SR)을 운반하고, PUCCH 전송 길이에 따라 다수의 PUCCH들로 구분될 수 있다.PUCCH carries uplink control information, HARQ-ACK, and/or scheduling request (SR), and can be divided into multiple PUCCHs depending on the PUCCH transmission length.

6G 시스템 일반6G system general

6G (무선통신) 시스템은 (i) 디바이스 당 매우 높은 데이터 속도, (ii) 매우 많은 수의 연결된 디바이스들, (iii) 글로벌 연결성(global connectivity), (iv) 매우 낮은 지연, (v) 배터리-프리(battery-free) IoT 디바이스들의 에너지 소비를 낮추고, (vi) 초고신뢰성 연결, (vii) 머신 러닝 능력을 가지는 연결된 지능 등에 목적이 있다. 6G 시스템의 비젼은 intelligent connectivity, deep connectivity, holographic connectivity, ubiquitous connectivity와 같은 4가지 측면일 수 있으며, 6G 시스템은 아래 표 1과 같은 요구 사항을 만족시킬 수 있다. 즉, 표 1은 6G 시스템의 요구 사항의 일례를 나타낸 표이다.6G (wireless communications) systems require (i) very high data rates per device, (ii) very large number of connected devices, (iii) global connectivity, (iv) very low latency, (v) battery- The goal is to reduce the energy consumption of battery-free IoT devices, (vi) ultra-reliable connectivity, and (vii) connected intelligence with machine learning capabilities. The vision of the 6G system can be four aspects such as intelligent connectivity, deep connectivity, holographic connectivity, and ubiquitous connectivity, and the 6G system can satisfy the requirements shown in Table 1 below. That is, Table 1 is a table showing an example of the requirements of a 6G system.

Figure pct00002
Figure pct00002

6G 시스템은 Enhanced mobile broadband (eMBB), Ultra-reliable low latency communications (URLLC), massive machine-type communication (mMTC), AI integrated communication, Tactile internet, High throughput, High network capacity, High energy efficiency, Low backhaul and access network congestion, Enhanced data security와 같은 핵심 요소(key factor)들을 가질 수 있다.The 6G system includes Enhanced mobile broadband (eMBB), Ultra-reliable low latency communications (URLLC), massive machine-type communication (mMTC), AI integrated communication, Tactile internet, High throughput, High network capacity, High energy efficiency, Low backhaul and It can have key factors such as access network congestion and enhanced data security.

도 2는 6G 시스템에서 제공 가능한 통신 구조의 일례를 나타낸 도이다.Figure 2 is a diagram showing an example of a communication structure that can be provided in a 6G system.

6G 시스템은 5G 무선통신 시스템보다 50배 더 높은 동시 무선통신 연결성을 가질 것으로 예상된다. 5G의 key feature인 URLLC는 6G 통신에서 1ms보다 적은 단-대-단(end-to-end) 지연을 제공함으로써 보다 더 주요한 기술이 될 것이다. 6G 시스템은 자주 사용되는 영역 스펙트럼 효율과 달리 체적 스펙트럼 효율이 훨씬 우수할 것이다. 6G 시스템은 매우 긴 배터리 수명과 에너지 수확을 위한 고급 배터리 기술을 제공할 수 있어, 6G 시스템에서 모바일 디바이스들은 별도로 충전될 필요가 없을 것이다. 6G에서 새로운 네트워크 특성들은 다음과 같을 수 있다.The 6G system is expected to have simultaneous wireless communication connectivity that is 50 times higher than that of the 5G wireless communication system. URLLC, a key feature of 5G, will become an even more important technology in 6G communications by providing end-to-end delay of less than 1ms. The 6G system will have much better volumetric spectral efficiency, unlike the frequently used area spectral efficiency. 6G systems can provide ultra-long battery life and advanced battery technologies for energy harvesting, so mobile devices in 6G systems will not need to be separately charged. New network characteristics in 6G may include:

- 위성 통합 네트워크(Satellites integrated network): 글로벌 모바일 집단을 제공하기 위해 6G는 위성과 통합될 것으로 예상된다. 지상파, 위성 및 공중 네트워크를 하나의 무선통신 시스템으로 통합은 6G에 매우 중요하다.- Satellites integrated network: 6G is expected to be integrated with satellites to serve the global mobile constellation. Integration of terrestrial, satellite and aerial networks into one wireless communication system is very important for 6G.

- 연결된 인텔리전스(Connected intelligence): 이전 세대의 무선 통신 시스템과 달리 6G는 혁신적이며, "연결된 사물”에서 "연결된 지능"으로 무선 진화가 업데이트될 것이다. AI는 통신 절차의 각 단계(또는 후술할 신호 처리의 각 절차)에서 적용될 수 있다.- Connected intelligence: Unlike previous generations of wireless communication systems, 6G is revolutionary and will update the evolution of wireless from “connected things” to “connected intelligence.” AI will be used to control each step of the communication process (or signal, as described later). can be applied in each procedure of processing).

- 무선 정보 및 에너지 전달의 완벽한 통합(Seamless integration wireless information and energy transfer): 6G 무선 네트워크는 스마트폰들과 센서들과 같이 디바이스들의 배터리를 충전하기 위해 전력을 전달할 것이다. 그러므로, 무선 정보 및 에너지 전송 (WIET)은 통합될 것이다.- Seamless integration wireless information and energy transfer: 6G wireless networks will deliver power to charge the batteries of devices such as smartphones and sensors. Therefore, wireless information and energy transfer (WIET) will be integrated.

- 유비쿼터스 슈퍼 3D 연결(Ubiquitous super 3D connectivity): 드론 및 매우 낮은 지구 궤도 위성의 네트워크 및 핵심 네트워크 기능에 접속은 6G 유비쿼터스에서 슈퍼 3D 연결을 만들 것이다.- Ubiquitous super 3D connectivity: Connectivity of drones and very low Earth orbit satellites to networks and core network functions will create super 3D connectivity in 6G ubiquitous.

위와 같은 6G의 새로운 네트워크 특성들에서 몇 가지 일반적인 요구 사항은 다음과 같을 수 있다.In the above new network characteristics of 6G, some general requirements may be as follows.

- 스몰 셀 네트워크(small cell networks): 스몰 셀 네트워크의 아이디어는 셀룰러 시스템에서 처리량, 에너지 효율 및 스펙트럼 효율 향상의 결과로 수신 신호 품질을 향상시키기 위해 도입되었다. 결과적으로, 스몰 셀 네트워크는 5G 및 비욘드 5G (5GB) 이상의 통신 시스템에 필수적인 특성이다. 따라서, 6G 통신 시스템 역시 스몰 셀 네트워크의 특성을 채택한다.- Small cell networks: The idea of small cell networks was introduced to improve received signal quality resulting in improved throughput, energy efficiency and spectral efficiency in cellular systems. As a result, small cell networks are an essential feature for 5G and Beyond 5G (5GB) communications systems. Therefore, the 6G communication system also adopts the characteristics of a small cell network.

- 초 고밀도 이기종 네트워크(Ultra-dense heterogeneous network): 초 고밀도 이기종 네트워크들은 6G 통신 시스템의 또 다른 중요한 특성이 될 것이다. 이기종 네트워크로 구성된 멀티-티어 네트워크는 전체 QoS를 개선하고 비용을 줄인다.- Ultra-dense heterogeneous network: Ultra-dense heterogeneous networks will be another important characteristic of the 6G communication system. Multi-tier networks comprised of heterogeneous networks improve overall QoS and reduce costs.

- 대용량 백홀(High-capacity backhaul): 백홀 연결은 대용량 트래픽을 지원하기 위해 대용량 백홀 네트워크로 특징 지어진다. 고속 광섬유 및 자유 공간 광학 (FSO) 시스템이 이 문제에 대한 가능한 솔루션일 수 있다.- High-capacity backhaul: Backhaul connections are characterized by high-capacity backhaul networks to support high-capacity traffic. High-speed fiber and free-space optics (FSO) systems may be possible solutions to this problem.

- 모바일 기술과 통합된 레이더 기술: 통신을 통한 고정밀 지역화(또는 위치 기반 서비스)는 6G 무선통신 시스템의 기능 중 하나이다. 따라서, 레이더 시스템은 6G 네트워크와 통합될 것이다.- Radar technology integrated with mobile technology: High-precision localization (or location-based services) through communication is one of the functions of the 6G wireless communication system. Therefore, radar systems will be integrated with 6G networks.

- 소프트화 및 가상화(Softwarization and virtualization): 소프트화 및 가상화는 유연성, 재구성성 및 프로그래밍 가능성을 보장하기 위해 5GB 네트워크에서 설계 프로세스의 기초가 되는 두 가지 중요한 기능이다. 또한, 공유 물리적 인프라에서 수십억 개의 장치가 공유될 수 있다.- Softwarization and virtualization: Softwarization and virtualization are two important features that form the basis of the design process in 5GB networks to ensure flexibility, reconfigurability, and programmability. Additionally, billions of devices may be shared on a shared physical infrastructure.

6G 시스템의 핵심 구현 기술Core implementation technology of 6G system

인공 지능(Artificial Intelligence)Artificial Intelligence

6G 시스템에 가장 중요하며, 새로 도입될 기술은 AI이다. 4G 시스템에는 AI가 관여하지 않았다. 5G 시스템은 부분 또는 매우 제한된 AI를 지원할 것이다. 그러나, 6G 시스템은 완전히 자동화를 위해 AI가 지원될 것이다. 머신 러닝의 발전은 6G에서 실시간 통신을 위해 보다 지능적인 네트워크를 만들 것이다. 통신에 AI를 도입하면 실시간 데이터 전송이 간소화되고 향상될 수 있다. AI는 수많은 분석을 사용하여 복잡한 대상 작업이 수행되는 방식을 결정할 수 있다. 즉, AI는 효율성을 높이고 처리 지연을 줄일 수 있다.The most important and newly introduced technology in the 6G system is AI. AI was not involved in the 4G system. 5G systems will support partial or very limited AI. However, 6G systems will be AI-enabled for full automation. Advances in machine learning will create more intelligent networks for real-time communications in 6G. Introducing AI in communications can simplify and improve real-time data transmission. AI can use numerous analytics to determine how complex target tasks are performed. In other words, AI can increase efficiency and reduce processing delays.

핸드 오버, 네트워크 선택, 자원 스케쥴링과 같은 시간 소모적인 작업은 AI를 사용함으로써 즉시 수행될 수 있다. AI는 M2M, 기계-대-인간 및 인간-대-기계 통신에서도 중요한 역할을 할 수 있다. 또한, AI는 BCI(Brain Computer Interface)에서 신속한 통신이 될 수 있다. AI 기반 통신 시스템은 메타 물질, 지능형 구조, 지능형 네트워크, 지능형 장치, 지능형 인지 라디오(radio), 자체 유지 무선 네트워크 및 머신 러닝에 의해 지원될 수 있다.Time-consuming tasks such as handover, network selection, and resource scheduling can be performed instantly by using AI. AI can also play an important role in M2M, machine-to-human and human-to-machine communications. Additionally, AI can enable rapid communication in BCI (Brain Computer Interface). AI-based communication systems can be supported by metamaterials, intelligent structures, intelligent networks, intelligent devices, intelligent cognitive radios, self-sustaining wireless networks, and machine learning.

최근에는 AI를 무선 통신 시스템과 통합하려고 하는 시도들이 나타나고 있으나, 이는 application layer, network layer 특히, 딥러닝을 wireless resource management and allocation 분야에 집중되어 왔다. 그러나, 이러한 연구는 점점 MAC layer 와 Physical layer로 발전하고 있으며, 특히 물리계층에서 딥러닝을 무선 전송(wireless transmission)과 결합하고자 하는 시도들이 나타나고 있다. AI 기반의 물리계층 전송은, 근본적인 신호 처리 및 통신 메커니즘에 있어서, 전통적인 통신 프레임워크가 아니라 AI 드라이버에 기초한 신호 처리 및 통신 메커니즘을 적용하는 것을 의미한다. 예를 들어, 딥러닝 기반의 채널 코딩 및 디코딩(channel coding and decoding), 딥러닝 기반의 신호 추정(estimation) 및 검출(detection), 딥러닝 기반의 MIMO mechanism, AI 기반의 자원 스케줄링(scheduling) 및 할당(allocation) 등을 포함할 수 있다.Recently, attempts have been made to integrate AI with wireless communication systems, but these have been focused on the application layer and network layer, especially deep learning in the field of wireless resource management and allocation. However, this research is gradually advancing to the MAC layer and Physical layer, and attempts are being made to combine deep learning with wireless transmission, especially in the Physical layer. AI-based physical layer transmission means applying signal processing and communication mechanisms based on AI drivers, rather than traditional communication frameworks, in terms of fundamental signal processing and communication mechanisms. For example, deep learning-based channel coding and decoding, deep learning-based signal estimation and detection, deep learning-based MIMO mechanism, AI-based resource scheduling, and May include allocation, etc.

머신 러닝은 채널 추정 및 채널 트래킹을 위해 사용될 수 있으며, DL(downlink)의 물리 계층(physical layer)에서 전력 할당(power allocation), 간섭 제거 (interference cancellation) 등에 사용될 수 있다. 또한, 머신 러닝은 MIMO 시스템에서 안테나 선택, 전력 제어(power control), 심볼 검출(symbol detection) 등에도 사용될 수 있다.Machine learning can be used for channel estimation and channel tracking, and can be used for power allocation, interference cancellation, etc. in the physical layer of the DL (downlink). Machine learning can also be used for antenna selection, power control, and symbol detection in MIMO systems.

그러나 물리계층에서의 전송을 위한 DNN의 적용은 아래와 같은 문제점이 있을 수 있다.However, application of DNN for transmission in the physical layer may have the following problems.

딥러닝 기반의 AI 알고리즘은 훈련 파라미터를 최적화하기 위해 수많은 훈련 데이터가 필요하다. 그러나 특정 채널 환경에서의 데이터를 훈련 데이터로 획득하는데 있어서의 한계로 인해, 오프라인 상에서 많은 훈련 데이터를 사용한다. 이는 특정 채널 환경에서 훈련 데이터에 대한 정적 훈련(static training)은, 무선 채널의 동적 특성 및 다이버시티(diversity) 사이에 모순(contradiction)이 생길 수 있다.Deep learning-based AI algorithms require a large amount of training data to optimize training parameters. However, due to limitations in acquiring data from a specific channel environment as training data, a lot of training data is used offline. This means that static training on training data in a specific channel environment may result in a contradiction between the dynamic characteristics and diversity of the wireless channel.

또한, 현재 딥러닝은 주로 실제 신호(real signal)을 대상으로 한다. 그러나, 무선 통신의 물리 계층의 신호들은 복소 신호(complex signal)이다. 무선 통신 신호의 특성을 매칭시키기 위해 복소 도메인 신호의 검출하는 신경망(neural network)에 대한 연구가 더 필요하다.Additionally, current deep learning mainly targets real signals. However, signals of the physical layer of wireless communication are complex signals. More research is needed on neural networks that detect complex domain signals to match the characteristics of wireless communication signals.

이하, 머신 러닝에 대해 보다 구체적으로 살펴본다.Below, we will look at machine learning in more detail.

머신 러닝은 사람이 할 수 있거나 혹은 하기 어려운 작업을 대신해낼 수 있는 기계를 만들어내기 위해 기계를 학습시키는 일련의 동작을 의미한다. 머신 러닝을 위해서는 데이터와 러닝 모델이 필요하다. 머신 러닝에서 데이터의 학습 방법은 크게 3가지 즉, 지도 학습(supervised learning), 비지도 학습(unsupervised learning) 그리고 강화 학습(reinforcement learning)으로 구분될 수 있다.Machine learning refers to a series of operations that train machines to create machines that can perform tasks that are difficult or difficult for humans to perform. Machine learning requires data and a learning model. In machine learning, data learning methods can be broadly divided into three types: supervised learning, unsupervised learning, and reinforcement learning.

신경망 학습은 출력의 오류를 최소화하기 위한 것이다. 신경망 학습은 반복적으로 학습 데이터를 신경망에 입력시키고 학습 데이터에 대한 신경망의 출력과 타겟의 에러를 계산하고, 에러를 줄이기 위한 방향으로 신경망의 에러를 신경망의 출력 레이어에서부터 입력 레이어 방향으로 역전파(backpropagation) 하여 신경망의 각 노드의 가중치를 업데이트하는 과정이다.Neural network learning is intended to minimize errors in output. Neural network learning repeatedly inputs learning data into the neural network, calculates the output of the neural network and the error of the target for the learning data, and backpropagates the error of the neural network from the output layer of the neural network to the input layer to reduce the error. ) is the process of updating the weight of each node in the neural network.

지도 학습은 학습 데이터에 정답이 라벨링된 학습 데이터를 사용하며 비지도 학습은 학습 데이터에 정답이 라벨링되어 있지 않을 수 있다. 즉, 예를 들어 데이터 분류에 관한 지도 학습의 경우의 학습 데이터는 학습 데이터 각각에 카테고리가 라벨링된 데이터 일 수 있다. 라벨링된 학습 데이터가 신경망에 입력되고 신경망의 출력(카테고리)과 학습 데이터의 라벨을 비교하여 오차(error)가 계산될 수 있다. 계산된 오차는 신경망에서 역방향(즉, 출력 레이어에서 입력 레이어 방향)으로 역전파 되며, 역전파에 따라 신경망의 각 레이어의 각 노드들의 연결 가중치가 업데이트 될 수 있다. 업데이트 되는 각 노드의 연결 가중치는 학습률(learing rate)에 따라 변화량이 결정될 수 있다. 입력 데이터에 대한 신경망의 계산과 에러의 역전파는 학습 사이클(epoch)을 구성할 수 있다. 학습률은 신경망의 학습 사이클의 반복 횟수에 따라 상이하게 적용될 수 있다. 예를 들어, 신경망의 학습 초기에는 높은 학습률을 사용하여 신경망이 빠르게 일정 수준의 성능을 확보하도록 하여 효율성을 높이고, 학습 후기에는 낮은 학습률을 사용하여 정확도를 높일 수 있다Supervised learning uses training data in which the correct answer is labeled, while unsupervised learning may not have the correct answer labeled in the training data. That is, for example, in the case of supervised learning on data classification, the learning data may be data in which each training data is labeled with a category. Labeled learning data is input to a neural network, and error can be calculated by comparing the output (category) of the neural network with the label of the learning data. The calculated error is backpropagated in the reverse direction (i.e., from the output layer to the input layer) in the neural network, and the connection weight of each node in each layer of the neural network can be updated according to backpropagation. The amount of change in the connection weight of each updated node may be determined according to the learning rate. The neural network's calculation of input data and backpropagation of errors can constitute a learning cycle (epoch). The learning rate may be applied differently depending on the number of repetitions of the learning cycle of the neural network. For example, in the early stages of neural network training, a high learning rate can be used to ensure that the neural network quickly achieves a certain level of performance to increase efficiency, and in the later stages of training, a low learning rate can be used to increase accuracy.

데이터의 특징에 따라 학습 방법은 달라질 수 있다. 예를 들어, 통신 시스템 상에서 송신단에서 전송한 데이터를 수신단에서 정확하게 예측하는 것을 목적으로 하는 경우, 비지도 학습 또는 강화 학습 보다는 지도 학습을 이용하여 학습을 수행하는 것이 바람직하다.Learning methods may vary depending on the characteristics of the data. For example, in a communication system, when the goal is to accurately predict data transmitted from a transmitter at a receiver, it is preferable to perform learning using supervised learning rather than unsupervised learning or reinforcement learning.

러닝 모델은 인간의 뇌에 해당하는 것으로서, 가장 기본적인 선형 모델을 생각할 수 있으나, 인공 신경망(artificial neural networks)와 같은 복잡성이 높은 신경망 구조를 러닝 모델로 사용하는 머신 러닝의 패러다임을 딥러닝(deep learning)이라 한다.The learning model corresponds to the human brain, and can be considered the most basic linear model. However, deep learning is a machine learning paradigm that uses a highly complex neural network structure, such as artificial neural networks, as a learning model. ).

학습(learning) 방식으로 사용하는 신경망 코어(neural network cord)는 크게 심층 신경망(DNN, deep neural networks), 합성곱 신경망(CNN, convolutional deep neural networks), 순환 신경망(RNN, Recurrent Boltzmann Machine) 방식이 있다.Neural network cores used as learning methods are broadly divided into deep neural networks (DNN), convolutional deep neural networks (CNN), and Recurrent Boltzmann Machine (RNN). there is.

인공 신경망(artificial neural network)은 여러 개의 퍼셉트론을 연결한 예시이다.An artificial neural network is an example of connecting multiple perceptrons.

도 3을 참조하면, 입력 벡터 x=(x1,x2,...,xd) 가 입력되면 각 성분에 가중치(W1,W2,...,Wd)를 곱하고, 그 결과를 모두 합산한 후, 활성함수 σ() 를 적용하는 전체 과정을 퍼셉트론(perceptron)이라 한다. 거대한 인공 신경망 구조는 도 3에 도시한 단순화된 퍼셉트론 구조를 확장하여 입력벡터를 서로 다른 다 차원의 퍼셉트론에 적용할 수도 있다. 설명의 편의를 위해 입력값 또는 출력값을 노드(node)라 칭한다.Referring to Figure 3, when the input vector x=(x1,x2,...,xd) is input, each component is multiplied by the weights (W1,W2,...,Wd), and the results are added together, The entire process of applying the activation function σ() is called a perceptron. A large artificial neural network structure can extend the simplified perceptron structure shown in FIG. 3 and apply input vectors to different multi-dimensional perceptrons. For convenience of explanation, input or output values are referred to as nodes.

한편, 도 3에 도시된 퍼셉트론 구조는 입력값, 출력값을 기준으로 총 3개의 층(layer)로 구성되는 것으로 설명할 수 있다. 1st layer와 2nd layer 사이에는 (d+1) 차원의 퍼셉트론 H개, 2nd layer와 3rd layer 사이에는 (H+1)차원 퍼셉트론이 K 개 존재하는 인공신경망을 도 4와 같이 표현할 수 있다.Meanwhile, the perceptron structure shown in FIG. 3 can be described as consisting of a total of three layers based on input and output values. An artificial neural network in which there are H (d+1)-dimensional perceptrons between the 1st layer and the 2nd layer, and K (H+1)-dimensional perceptrons between the 2nd layer and the 3rd layer can be expressed as shown in Figure 4.

입력벡터가 위치하는 층을 입력층(input layer), 최종 출력값이 위치하는 층을 출력층(output layer), 입력층과 출력층 사이에 위치하는 모든 층을 은닉층(hidden layer)라 한다. 도 4의 예시는 3개의 층이 개시되나, 실제 인공신경망 층의 개수를 카운트할 때는 입력층을 제외하고 카운트하므로 총 2개의 층으로 볼 수 있다. 인공신경망은 기본 블록의 퍼셉트론을 2차원적으로 연결되어 구성된다.The layer where the input vector is located is called the input layer, the layer where the final output value is located is called the output layer, and all layers located between the input layer and the output layer are called hidden layers. In the example of FIG. 4, three layers are disclosed, but when counting the actual number of artificial neural network layers, the input layer is counted excluding the input layer, so it can be viewed as a total of two layers. An artificial neural network is constructed by two-dimensionally connecting perceptrons of basic blocks.

전술한 입력층, 은닉층, 출력층은 다층 퍼셉트론 뿐 아니라 후술할 CNN, RNN 등 다양한 인공신경망 구조에서 공동적으로 적용될 수 있다. 은닉층의 개수가 많아질수록 인공신경망이 깊어진 것이며, 충분히 깊어진 인공신경망을 러닝모델로 사용하는 머신러닝 패러다임을 딥러닝(Deep Learning)이라 한다. 또한 딥러닝을 위해 사용하는 인공신경망을 심층 신경망(DNN: Deep neural network)라 한다.The above-described input layer, hidden layer, and output layer can be jointly applied not only to the multi-layer perceptron, but also to various artificial neural network structures such as CNN and RNN, which will be described later. As the number of hidden layers increases, the artificial neural network becomes deeper, and the machine learning paradigm that uses a sufficiently deep artificial neural network as a learning model is called deep learning. Additionally, the artificial neural network used for deep learning is called a deep neural network (DNN).

도 5에 도시된 심층 신경망은 은닉층+출력층이 8개로 구성된 다층 퍼셉트론이다. 상기 다층 퍼셉트론 구조를 완전 연결 신경망(fully-connected neural network)이라 표현한다. 완전 연결 신경망은 서로 같은 층에 위치하는 노드 간에는 연결 관계가 존재하지 않으며, 인접한 층에 위치한 노드들 간에만 연결 관계가 존재한다. DNN은 완전 연결 신경망 구조를 가지고 다수의 은닉층과 활성함수들의 조합으로 구성되어 입력과 출력 사이의 상관관계 특성을 파악하는데 유용하게 적용될 수 있다. 여기서 상관관계 특성은 입출력의 결합확률(joint probability)을 의미할 수 있다. 도 5는 심층 신경망 예시를 나타낸 도이다.The deep neural network shown in Figure 5 is a multi-layer perceptron consisting of 8 hidden layers and 8 output layers. The multi-layer perceptron structure is expressed as a fully-connected neural network. In a fully connected neural network, no connection exists between nodes located on the same layer, and only between nodes located on adjacent layers. DNN has a fully connected neural network structure and is composed of a combination of multiple hidden layers and activation functions, so it can be usefully applied to identify correlation characteristics between input and output. Here, the correlation characteristic may mean the joint probability of input and output. Figure 5 is a diagram showing an example of a deep neural network.

한편, 복수의 퍼셉트론을 서로 어떻게 연결하느냐에 따라 전술한 DNN과 다른 다양한 인공 신경망 구조를 형성할 수 있다.Meanwhile, depending on how multiple perceptrons are connected to each other, various artificial neural network structures different from the above-described DNN can be formed.

DNN은 하나의 층 내부에 위치한 노드들이 1차원적의 세로 방향으로 배치되어 있다. 그러나, 도 6은 노드들이 2차원적으로 가로 w개, 세로 h개의 노드가 배치할 경우를 가정할 수 있다(도 6의 컨볼루션 신경망 구조). 이 경우, 하나의 입력노드에서 은닉층으로 이어지는 연결과정에서 연결 하나당 가중치가 부가되므로 총 hХw 개의 가중치를 고려해야한다. 입력층에 hХw 개의 노드가 존재하므로 인접한 두 층 사이에는 총 h2w2 개의 가중치가 필요하다.In DNN, nodes located inside one layer are arranged in a one-dimensional vertical direction. However, in Figure 6, it can be assumed that the nodes are arranged two-dimensionally with w nodes horizontally and h nodes vertically (convolutional neural network structure in Figure 6). In this case, a weight is added to each connection during the connection process from one input node to the hidden layer, so a total of hХw weights must be considered. Since there are hХw nodes in the input layer, a total of h2w2 weights are needed between two adjacent layers.

도 6은 컨볼루션 신경망의 일례를 나타낸 도이다.Figure 6 is a diagram showing an example of a convolutional neural network.

도 6의 컨볼루션 신경망은 연결개수에 따라 가중치의 개수가 기하급수적으로 증가하는 문제가 있어 인접한 층 간의 모든 모드의 연결을 고려하는 대신, 크기가 작은 필터(filter)가 존재하는 것으로 가정하여 도 6에서와 같이 필터가 겹치는 부분에 대해서는 가중합 및 활성함수 연산을 수행하도록 한다.The convolutional neural network in FIG. 6 has a problem in that the number of weights increases exponentially depending on the number of connections, so instead of considering all mode connections between adjacent layers, it is assumed that a small filter exists, and FIG. As shown, weighted sum and activation function calculations are performed on areas where filters overlap.

하나의 필터는 그 크기만큼의 개수에 해당하는 가중치를 가지며, 이미지 상의 어느 특정한 특징을 요인으로 추출하여 출력할 수 있도록 가중치의 학습이 이루어질 수 있다. 도 6에서는 3Х3 크기의 필터가 입력층의 가장 좌측 상단 3Х3 영역에 적용되고, 해당 노드에 대한 가중합 및 활성함수 연산을 수행한 결과 출력값을 z22에 저장한다.One filter has a weight corresponding to its size, and the weight can be learned so that a specific feature in the image can be extracted and output as a factor. In Figure 6, a filter of size 3Х3 is applied to the upper leftmost 3Х3 area of the input layer, and the output value as a result of performing the weighted sum and activation function calculation for the corresponding node is stored in z22.

상기 필터는 입력층을 스캔하면서 가로,세로 일정 간격 만큼 이동하면서 가중합 및 활성함수 연산을 수행하고 그 출력값을 현재 필터의 위치에 위치시킨다. 이러한 연산 방식은 컴퓨터 비전(computer vision) 분야에서 이미지에 대한 컨볼루션(convolution) 연산과 유사하여 이러한 구조의 심층 신경망을 컨볼루션 신경망(CNN: convolutional neural network)라 하고, 컨볼루션 연산 결과 생성되는 은닉층을 컨볼루션 층(convolutional layer)라 한다. 또한, 복수의 컨볼루션 층이 존재하는 신경망을 심층 컨볼루션 신경망(DCNN: Deep convolutional)이라 한다.The filter scans the input layer and moves at a certain distance horizontally and vertically, performs weighted sum and activation function calculations, and places the output value at the current filter position. This operation method is similar to the convolution operation on images in the field of computer vision, so a deep neural network with this structure is called a convolutional neural network (CNN), and the hidden layer generated as a result of the convolution operation is is called a convolutional layer. Additionally, a neural network with multiple convolutional layers is called a deep convolutional neural network (DCNN).

도 7은 컨볼루션 신경망에서의 필터 연산의 일례를 나타낸 도이다.Figure 7 is a diagram showing an example of a filter operation in a convolutional neural network.

컨볼루션 층에서는 현재 필터가 위치한 노드에서, 상기 필터가 커버하는 영역에 위치한 노드만을 포괄하여 가중합을 계산함으로써, 가중치의 개수를 줄여줄 수 있다. 이로 인해, 하나의 필터가 로컬(local) 영역에 대한 특징에 집중하도록 이용될 수 있다. 이에 따라 CNN은 2차원 영역 상의 물리적 거리가 중요한 판단 기준이 되는 이미지 데이터 처리에 효과적으로 적용될 수 있다. 한편, CNN은 컨볼루션 층의 직전에 복수의 필터가 적용될 수 있으며, 각 필터의 컨볼루션 연산을 통해 복수의 출력 결과를 생성할 수도 있다.In the convolution layer, the number of weights can be reduced by calculating a weighted sum by including only nodes located in the area covered by the filter from the node where the current filter is located. Because of this, one filter can be used to focus on features for a local area. Accordingly, CNN can be effectively applied to image data processing where physical distance in a two-dimensional area is an important decision criterion. Meanwhile, CNN may have multiple filters applied immediately before the convolution layer, and may generate multiple output results through the convolution operation of each filter.

한편, 데이터 속성에 따라 시퀀스(sequence) 특성이 중요한 데이터들이 있을 수 있다. 이러한 시퀀스 데이터들의 길이 가변성, 선후 관계를 고려하여 데이터 시퀀스 상의 원소를 매 시점(timestep) 마다 하나씩 입력하고, 특정 시점에 출력된 은닉층의 출력 벡터(은닉 벡터)를, 시퀀스 상의 바로 다음 원소와 함께 입력하는 방식을 인공 신경망에 적용한 구조를 순환 신경망 구조라 한다.Meanwhile, depending on the data properties, there may be data for which sequence characteristics are important. Considering the length variability and precedence relationship of these sequence data, elements in the data sequence are input one by one at each time step, and the output vector (hidden vector) of the hidden layer output at a specific time point is input together with the next element in the sequence. The structure that applies this method to an artificial neural network is called a recurrent neural network structure.

도 8을 참조하면, 순환 신경망(RNN: recurrent neural netwok)은 데이터 시퀀스 상의 어느 시선 t의 원소 (x1(t), x2(t), ,..., xd(t))를 완전 연결 신경망에 입력하는 과정에서, 바로 이전 시점 t-1은 은닉 벡터 (z1(t1), z2(t1),..., zH(t1))을 함께 입력하여 가중합 및 활성함수를 적용하는 구조이다. 이와 같이 은닉 벡터를 다음 시점으로 전달하는 이유는 앞선 시점들에서의 입력 벡터속 정보들이 현재 시점의 은닉 벡터에 누적된 것으로 간주하기 때문이다.Referring to FIG. 8, a recurrent neural network (RNN) connects elements (x1(t), In the input process, the immediately previous point t-1 is a structure in which the hidden vectors (z1(t1), z2(t1),..., zH(t1)) are input together and a weighted sum and activation function are applied. The reason for passing the hidden vector to the next time point like this is because the information in the input vector from previous time points is considered to be accumulated in the hidden vector at the current time point.

도 8은 순환 루프가 존재하는 신경망 구조의 일례를 나타낸다.Figure 8 shows an example of a neural network structure in which a circular loop exists.

도 8을 참조하면, 순환 신경망은 입력되는 데이터 시퀀스에 대하여 소정의 시점 순서대로 동작한다.Referring to FIG. 8, the recurrent neural network operates in a predetermined time point order with respect to the input data sequence.

시점 1에서의 입력 벡터 (x1(t), x2(t), ,..., xd(t))가 순환 신경망에 입력되었을 때의 은닉 벡터 (z1(1),z2(1),...,zH(1))가 시점 2의 입력 벡터 (x1(2),x2(2),...,xd(2))와 함께 입력되어 가중합 및 활성 함수를 통해 은닉층의 벡터 (z1(2),z2(2) ,...,zH(2))를 결정한다. 이러한 과정은 시점 2, 시점 3, ,,, 시점 T 까지 반복적으로 수행된다.Hidden vector (z1(1),z2(1),.. when the input vector (x1(t), .,zH(1)) is input together with the input vector (x1(2),x2(2),...,xd(2)) at viewpoint 2, and the vector (z1( 2) Determine z2(2) ,...,zH(2)). This process is performed repeatedly until time point 2, time point 3, ,,, time point T.

도 9는 순환 신경망의 동작 구조의 일례를 나타낸다.Figure 9 shows an example of the operational structure of a recurrent neural network.

한편, 순환 신경망 내에서 복수의 은닉층이 배치될 경우, 이를 심층 순환 신경망(DRNN: Deep recurrent neural network)라 한다. 순환 신경망은 시퀀스 데이터(예를 들어, 자연어 처리(natural language processing)에 유용하게 적용되도록 설계되어 있다.Meanwhile, when multiple hidden layers are placed within a recurrent neural network, it is called a deep recurrent neural network (DRNN). Recurrent neural networks are designed to be usefully applied to sequence data (for example, natural language processing).

학습(learning) 방식으로 사용하는 신경망 코어로서 DNN, CNN, RNN 외에 제한 볼츠만 머신(RBM, Restricted Boltzmann Machine), 심층 신뢰 신경망(DBN, deep belief networks), 심층 Q-네트워크(Deep Q-Network)와 같은 다양한 딥 러닝 기법들을 포함하며, 컴퓨터비젼, 음성인식, 자연어처리, 음성/신호처리 등의 분야에 적용될 수 있다.As a neural network core used as a learning method, in addition to DNN, CNN, and RNN, it includes Restricted Boltzmann Machine (RBM), deep belief networks (DBN), Deep Q-Network, and It includes various deep learning techniques, and can be applied to fields such as computer vision, speech recognition, natural language processing, and voice/signal processing.

최근에는 AI를 무선 통신 시스템과 통합하려고 하는 시도들이 나타나고 있으나, 이는 application layer, network layer 특히, 딥러닝을 wireless resource management and allocation 분야에 집중되어 왔다. 그러나, 이러한 연구는 점점 MAC layer 와 Physical layer로 발전하고 있으며, 특히 물리계층에서 딥러닝을 무선 전송(wireless transmission)과 결합하고자 하는 시도들이 나타나고 있다. AI 기반의 물리계층 전송은, 근본적인 신호 처리 및 통신 메커니즘에 있어서, 전통적인 통신 프레임워크가 아니라 AI 드라이버에 기초한 신호 처리 및 통신 메커니즘을 적용하는 것을 의미한다. 예를 들어, 딥러닝 기반의 채널 코딩 및 디코딩(channel coding and decoding), 딥러닝 기반의 신호 추정(estimation) 및 검출(detection), 딥러닝 기반의 MIMO mechanism, AI 기반의 자원 스케줄링(scheduling) 및 할당(allocation) 등을 포함할 수 있다.Recently, attempts have been made to integrate AI with wireless communication systems, but these have been focused on the application layer and network layer, especially deep learning in the field of wireless resource management and allocation. However, this research is gradually advancing to the MAC layer and Physical layer, and attempts are being made to combine deep learning with wireless transmission, especially in the Physical layer. AI-based physical layer transmission means applying signal processing and communication mechanisms based on AI drivers, rather than traditional communication frameworks, in terms of fundamental signal processing and communication mechanisms. For example, deep learning-based channel coding and decoding, deep learning-based signal estimation and detection, deep learning-based MIMO mechanism, AI-based resource scheduling, and May include allocation, etc.

용어 정의Term Definition

설명의 편의를 위해, 본 명세서에서는 아래와 같은 기호/약어/용어가 혼용될 수 있다.For convenience of explanation, the following symbols/abbreviations/terms may be used interchangeably in this specification.

- AE: Auto Encoder- AE: Auto Encoder

- FC: Fully Connected- FC: Fully Connected

- IR: Incremental Redundancy- IR: Incremental Redundancy

- LDPC: Low Density Parity Check- LDPC: Low Density Parity Check

- SCNN-AE: Serially Concatenated Neural-Network AutoEncoder- SCNN-AE: Serially Concatenated Neural-Network AutoEncoder

- NN: Neural Network- NN: Neural Network

- Tx: Transmitter- Tx: Transmitter

- Rx: Receiver- Rx: Receiver

- RS: Reference Symbols- RS: Reference Symbols

오토 인코더(Auto encoder)Auto encoder

뉴럴 네트워크(Neural network)를 통신 시스템(communication system)에 적용하기 위해서 다양한 시도들이 이루어지고 있다. 특히, 뉴럴 네트워크를 통신 시스템에 적용하기 위한 다양한 시도들 중 물리 계층(physical layer)에 뉴럴 네트워크를 적용하려는 시도는 주로 수신단(receiver)의 특정 기능을 최적화하는 것에 중점을 두었다. 예를 들어, 채널 디코더(channel decoder)를 뉴럴 네트워크로 구성하여 수신단의 성능 향상을 달성할 수 있다. 또 다른 예로, 다수 개의 송수신 안테나(antenna)를 가진 MIMO 시스템에서, MIMO 디텍터(detector)를 뉴럴 네트워크로 구현하여 성능 향상을 달성할 수도 있다.Various attempts are being made to apply neural networks to communication systems. In particular, among various attempts to apply neural networks to communication systems, attempts to apply neural networks to the physical layer mainly focused on optimizing specific functions of the receiver. For example, the performance of the receiving end can be improved by configuring the channel decoder with a neural network. As another example, in a MIMO system with multiple transmit/receive antennas, performance improvement can be achieved by implementing a MIMO detector as a neural network.

뉴럴 네트워크(Neural network)를 통신 시스템에 적용하기 위한 또 다른 접근 방식으로, 통신 시스템에서 오토 인코더(autoencoder)를 사용하는 방식이 있다. 여기서, 오토 인코더란 오토 인코더에 입력된 정보와 동일한 정보를 출력하는 특성을 갖는 인공 신경망의 한 유형이다. 송신단이 전송한 신호가 왜곡 없이 수신단에서 복원되도록 하는 것이 통신 시스템에서의 목표이므로, 오토 인코더의 특성은 상기 통신 시스템의 목표에 바람직하게 부합할 수 있다.Another approach to apply a neural network to a communication system is to use an autoencoder in the communication system. Here, an autoencoder is a type of artificial neural network that has the characteristic of outputting the same information as the information input to the autoencoder. Since the goal of a communication system is to ensure that the signal transmitted from the transmitting end is restored at the receiving end without distortion, the characteristics of the autoencoder can suit the goal of the communication system.

상기 오토 인코더를 통신 시스템에 적용하는 경우, 통신 시스템의 송신단 및 수신단은 각각 뉴럴 네트워크로 구성되며, 이를 통해 단-대-단(end-to-end) 관점에서 최적화를 수행하여 성능 향상이 달성될 수 있다.When applying the auto-encoder to a communication system, the transmitting and receiving ends of the communication system are each composed of a neural network, and through this, performance improvement can be achieved by performing optimization from an end-to-end perspective. You can.

도 10은 오토 인코더를 사용하는 무선 통신 시스템의 일 예를 나타낸 도이다. 송신단(101)은 f(s)로 표현되는 뉴럴 네트워크로 구성되고, 수신단(103)은 g(s)로 표현되는 뉴럴 네트워크로 구성된다. 즉, 상기 뉴럴 네트워크들(f(s) 및 g(s))은 각각 송신단(101)과 수신단(103)의 구성요소(component)이다. 다시 말해, 송신단(101)과 수신단(103) 각각은 뉴럴 네트워크로(또는, 뉴럴 네트워크에 기초하여) 구성된다.Figure 10 is a diagram showing an example of a wireless communication system using an auto encoder. The transmitting end 101 is composed of a neural network expressed as f(s), and the receiving end 103 is composed of a neural network expressed as g(s). That is, the neural networks (f(s) and g(s)) are components of the transmitting end 101 and the receiving end 103, respectively. In other words, the transmitting end 101 and the receiving end 103 are each configured as a neural network (or based on a neural network).

최근 심층 학습(Deep Learning) 기술이 발달하여, 많은 영역에서 AI(artificial intelligence)/ML(machine learning)이 적용되고 있다. 특히, 상기 AI/ML이 반복성/지속성이 요구되는 과제에 적용되는 경우, 상기 AI/ML은 매우 효율적일 수 있다.Recently, deep learning technology has developed, and AI (artificial intelligence)/ML (machine learning) is being applied in many areas. In particular, when the AI/ML is applied to tasks that require repeatability/continuity, the AI/ML can be very efficient.

LDPC(low-density parity-check) 및 폴라 코딩(Polar Coding)이라는 새로운 채널 코딩(channel coding)기술이 5G에 이르러 도입되었다. 상기 LDPC 및 폴라 코딩의 채널 코딩 성능은 4G에서 사용되던 터보 코드(Turbo code) 또는 TBCC(Tail-biting convolutional codes)의 채널 코딩 성능을 능가한다. 그러나, 상기 LDPC 및 폴라 코딩을 사용하는 채널 코딩은 기술은 개발 및 5G 표준에 반영될 때, 가산성 백색 가우시안 잡음(Additive white Gaussian noise, AWGN) 채널에 최적화되도록 설계 되었다.New channel coding technologies called low-density parity-check (LDPC) and polar coding were introduced in 5G. The channel coding performance of the LDPC and polar coding exceeds that of the Turbo code or Tail-biting convolutional codes (TBCC) used in 4G. However, channel coding using LDPC and polar coding is designed to be optimized for additive white Gaussian noise (AWGN) channels when the technology is developed and reflected in 5G standards.

통신에서, 오버헤드(Overhead)를 최소화 하기 위해, 변조(Modulation)와 코드-레이트(Code-rate)를 조합하여 MCS(Modulation and code-rate Set)가 정의되고, 상기 MCS는 채널의 특성에 맞게 설정되어 통신에 사용된다. 여기서, 상기 통신은 유/무선 통신을 모두 포함하는 의미로 사용되며, 이하 같다.In communications, in order to minimize overhead, an MCS (Modulation and code-rate set) is defined by combining modulation and code-rate, and the MCS is defined according to the characteristics of the channel. It is set and used for communication. Here, the communication is used to include both wired and wireless communication, and the same applies hereinafter.

3GPP 통신에서는 데이터 에러율(Data error rate)을 나타내는 FER(Frame Error Rate)(또는, BLER(Block Error Rate))의 값이 10^(-1)(또는, 10^(-2))을 만족하는 MCS가 사용된다. FER의 값이 10^(-1)라는 것은 10번의 신호 전송 시 평균적으로 1번의 전송 오류가 발생한다는 것을 나타내며, BLER의 값이 10^(-2)라는 것은 100번의 신호 전송 시 평균적으로 1번의 전송 오류가 발생한다는 것을 나타낸다. 전송 오류의 발생으로 인한 문제를 해결하기 위해, 3GPP 표준에서는 재전송(retransmission) 동작이 정의되며, 상기 재전송 동작의 효율을 높이기 위해 HARQ(Hybrid automatic repeat request) 기법이 사용된다. 이 때, 뉴럴 네트워크를 이용한 통신에서 채널에 최적화 되지 않은 코딩 기법이 사용되는 경우, 다음과 같은 문제들이 발생 할 수 있다.In 3GPP communication, the value of FER (Frame Error Rate) (or BLER (Block Error Rate)), which represents the data error rate, satisfies 10^(-1) (or 10^(-2)). MCS is used. A FER value of 10^(-1) indicates that, on average, one transmission error occurs in 10 signal transmissions, and a BLER value of 10^(-2) indicates that, on average, one transmission error occurs in 100 signal transmissions. Indicates that a transmission error has occurred. To solve problems caused by transmission errors, a retransmission operation is defined in the 3GPP standard, and a hybrid automatic repeat request (HARQ) technique is used to increase the efficiency of the retransmission operation. At this time, if a coding technique that is not optimized for the channel is used in communication using a neural network, the following problems may occur.

- 신호 전송 중에 오류가 발생할 확률이 증가하고, 이를 정정하기 위해서 재전송(HARQ, ARQ)이 수행되어야만 한다.- The probability of an error occurring during signal transmission increases, and retransmission (HARQ, ARQ) must be performed to correct this.

- 재전송을 위해 기지국은 재전송할 데이터(data)를 저장해야 한다. 또한, 단말은 먼저 수신한 데이터와 재전송된 데이터를 컴바이닝(combining)하기 위해 상기 먼저 수신된 데이터를 저장해야 한다. 따라서, 재전송할 데이터/먼저 수신한 데이터를 저장하기 위한 기지국/단말의 메모리가 낭비된다.- For retransmission, the base station must store the data to be retransmitted. Additionally, the terminal must store the previously received data in order to combine the previously received data with the retransmitted data. Accordingly, the memory of the base station/terminal for storing data to be retransmitted/data received earlier is wasted.

- 전송 오류가 발생한 데이터의 재전송으로 인해 데이터 쓰루풋(throughput)이 감소된다.- Data throughput is reduced due to retransmission of data with transmission errors.

- 데이터의 재전송을 위한 자원이 낭비 된다.- Resources for retransmitting data are wasted.

본 명세서는 오토 인코더 아키텍쳐(Architecture)를 이용하는 뉴럴 네트워크를 통해서 송신단과 수신단사이의 채널에 최적화된 코딩 기법(Coding scheme)을 구성하는 방법을 제안한다. 보다 구체적으로, 본 명세서에서 제안하는 방법은, 통신 채널에서 발생한 오류를 오토 인코더 뉴럴 네트워크를 이용하여 정정하는 코딩 기법에 관한 것이다.This specification proposes a method of configuring a coding scheme optimized for the channel between the transmitting end and the receiving end through a neural network using an auto-encoder architecture. More specifically, the method proposed in this specification relates to a coding technique for correcting errors occurring in a communication channel using an autoencoder neural network.

본 명세서에서 제안하는 방법을 통해 BLER과 재전송률이 개선될 수 있다. 또한, 개선된 BLER과 재전송률에 기초하여 시스템의 데이터 쓰트풋(Throughput)이 증가될 수 있으며, 턴-어라운드 지연(Turn-around delay)을 감소시킴으로써 단-대-단 지연(end-to end delay)이 개선될 수 있다.BLER and retransmission rate can be improved through the method proposed in this specification. Additionally, the data throughput of the system can be increased based on improved BLER and retransmission rate, and end-to-end delay can be improved by reducing turn-around delay. ) can be improved.

도 11은 오토 인코더를 이용한 통신 체인(chain)의 개념적 구조의 일 예를 나타낸 도이다.Figure 11 is a diagram showing an example of the conceptual structure of a communication chain using an auto encoder.

보다 구체적으로, 도 11에서, 오토 인코더라는 구조적인 관점에 기초하면, 송신단(101)은 상기 오토 인코더를 구성하는 구성요소 중 하나인 인코더 f(.)로 해석될 수 있고, 수신단(103)은 상기 오토 인코더를 구성하는 구성요소 중 하나인 디코더 g(.)로 해석될 수 있다. 또한, 상기 오토 인코더를 구성하는 인코더 f(.)인 송신단(101)과 상기 오토 인코더를 구성하는 디코더 g(.)인 수신단(103) 사이에는 채널이 존재한다. 위와 같은 해석에 따라, 송신단(101)은 '송신단 인코더'로 호칭될 수 있고, 수신단(103)은 '수신단 디코더'라고 호칭될 수 있으며, 이와 동일/유사하게 해석될 수 있는 범위에서 다양하게 호칭될 수 있다.More specifically, in FIG. 11, based on the structural perspective of an autoencoder, the transmitting end 101 can be interpreted as an encoder f(.), which is one of the components constituting the autoencoder, and the receiving end 103 is It can be interpreted as a decoder g(.), one of the components constituting the auto encoder. In addition, a channel exists between the transmitting end 101, which is the encoder f(.) constituting the auto encoder, and the receiving end 103, which is the decoder g(.) constituting the auto encoder. According to the above interpretation, the transmitting end 101 may be called a 'transmitting end encoder', and the receiving end 103 may be called a 'receiving end decoder', and may be called variously within the scope of the same/similar interpretation. It can be.

오토 인코더의 구조는 Under-complete AE 및 Over-complete AE의 2가지 구조로 구분될 수 있다. 상기 Under-complete AE는 송신단 인코더 f(.)의 출력 데이터인 X가 송신단 인코더 f(.)에 대한 입력 데이터인 U보다 작은 양으로 표현이 되는 구조인데, 이는 특징 압출/추출(Feature compression/extraction) 등과 같은 기술에서 사용될 수 있다.The structure of the autoencoder can be divided into two structures: Under-complete AE and Over-complete AE. The Under-complete AE is a structure in which X, the output data of the transmitter encoder f(.), is expressed in a smaller amount than U, the input data to the transmitter encoder f(.). ) can be used in technologies such as

반면, Over-complete AE는 송신단 인코더 f(.)의 출력 데이터인 X가 송신단 인코더 f(.)에 대한 입력 데이터인 U보다 많은 양으로 표현되는 구조인데, 본 구조에 기초한 송신단 인코더에서는 입력 데이터 U에 redundancy가 추가되어 출력 데이터 X가 출력된다. 이는 채널 코딩 등과 같이 패리티(Parity)를 추가하는 기술 등에서 사용될 수 있다. 본 명세서에서 제안하는 방법들에는 Over-complete AE 구조에 기초하는 오토 인코더가 사용된다. 이 때, 입력 데이터에 추가되는 Redundancy의 양은 코드-레이트(Code-Rate)(R)에 기초하여 조절 될 수 있다.On the other hand, over-complete AE is a structure in which the output data, Redundancy is added to output data X. This can be used in technologies that add parity, such as channel coding. The methods proposed in this specification use an autoencoder based on an over-complete AE structure. At this time, the amount of redundancy added to the input data can be adjusted based on the code-rate (R).

U, X 및 R 사이의 관계는 아래의 수학식에 따라서 정의된다.The relationship between U, X and R is defined according to the equation below.

Figure pct00003
Figure pct00003

다시 도 11에서, 송신단 인코더 f(.)(101)는 코드-레이트(R)에 반비례하는 양으로 입력 데이터 U를 인코딩(Over-complete)한다. 상기 인코딩된 입력 데이터는 채널을 통하여 수신단 디코더 g(.)(103)에 전달되고, 수신단 디코더 g(.)(103)는 인코딩된 데이터를 디코딩하여 인코딩 되기 전의 입력 데이터를 복원한다.Again in FIG. 11, the transmitter encoder f(.)(101) encodes (over-completes) the input data U with an amount inversely proportional to the code-rate (R). The encoded input data is transmitted to the receiving end decoder g(.)(103) through a channel, and the receiving end decoder g(.)(103) decodes the encoded data and restores the input data before encoding.

송신단 인코더/수신단 디코더의 뉴럴 네트워크 구성 방법How to configure a neural network for the transmitter encoder/receiver decoder

본 명세서에서 제안하는 방법은, 통신 채널에서 발생한 오류를 오토 인코더 뉴럴 네트워크(Autoencoder Neural Network: AE-NN)를 이용하여 정정하는 (채널) 코딩 기법에 관한 것이다. 보다 구체적으로, 본 명세서는 통신 채널에서 발생한 오류를 정정하는 (채널) 코딩 기법이 효율적으로 수행될 수 있도록 하기 위한 특정한 AE-NN의 구조를 제안한다. 상기 특정한 AE-NN의 구조를 구성한다는 것은 (i) 통신 시스템을 구성하는 송신단의 송신단 인코더 뉴럴 네트워크의 구조 및 (ii) 상기 통신 시스템을 구성하는 수신단의 수신단 인코더 뉴럴 네트워크의 구조를 특정한 방식에 기초하여 구성한다는 것을 의미할 수 있다.The method proposed in this specification relates to a (channel) coding technique for correcting errors occurring in a communication channel using an autoencoder neural network (AE-NN). More specifically, this specification proposes a specific AE-NN structure to ensure that a (channel) coding technique for correcting errors occurring in a communication channel can be efficiently performed. Constructing the structure of the specific AE-NN is based on (i) the structure of the transmitting end encoder neural network of the transmitting end constituting the communication system and (ii) the structure of the receiving end encoder neural network of the receiving end constituting the communication system in a specific manner. This can mean that it is composed.

도 12는 본 명세서에서 제안하는 오토 인코더에 기반한 통신 시스템의 일 예를 나타낸 개념도이다.Figure 12 is a conceptual diagram showing an example of a communication system based on an auto encoder proposed in this specification.

보다 구체적으로, 도 12에서, u(1201)은 송신단(101)에서 전송하고자 하는 정보이고, 상기 정보는 송신단(101)의 송신단 인코더 뉴럴 네트워크(NN-encoder)를 통해서 코딩된다. 상기 송신단 인코더 뉴럴 네트워크에 기초해서 코딩된 상기 정보는 송신단(101)과 수신단(103) 사이의 채널을 통해서 송신단(101)으로부터 수신단(103)으로 전달된다. 이후, 수신단(103)은 채널을 통과한 상기 코딩된 정보를 수신하고, 수신단 디코더 뉴럴 네트워크(NN-decoder)에 기초해서 상기 코딩된 정보를 복원한다. 여기서, 수신단(103)이 상기 코딩된 정보를 복원한다는 것은, 수신단(103)이, 상기 수신단 디코더 뉴럴 네트워크에 기초해서, (i) 상기 코딩된 정보가 전송되는 채널을 추정하고, (ii) 상기 추정된 채널에 기초하여 상기 코딩된 정보를 디코딩하는 동작들을 포함하는 것으로 해석될 수 있으며, 상기와 같은 해석은 이하에서 동일하게 적용될 수 있다.More specifically, in FIG. 12, u (1201) is information to be transmitted by the transmitter 101, and the information is coded through the transmitter encoder neural network (NN-encoder) of the transmitter 101. The information coded based on the transmitter encoder neural network is transmitted from the transmitter 101 to the receiver 103 through a channel between the transmitter 101 and the receiver 103. Afterwards, the receiving end 103 receives the coded information passing through the channel and restores the coded information based on the receiving end decoder neural network (NN-decoder). Here, the receiving end 103 restoring the coded information means that the receiving end 103 estimates, based on the receiving end decoder neural network, (i) a channel through which the coded information is transmitted, and (ii) the It can be interpreted as including operations for decoding the coded information based on the estimated channel, and the above interpretation can be equally applied hereinafter.

상기 송신단 인코더 뉴럴 네트워크와 상기 수신단 인코더 뉴럴 네트워크는 채널 상황에 최적화되도록 사전 학습되며, 송신단(101)과 수신단(103)은 사전 학습된 상기 송신단 인코더 뉴럴 네트워크와 상기 수신단 인코더 뉴럴 네트워크에 기초하여 채널 상황에 최적화된 통신을 수행할 수 있다.The transmitting end encoder neural network and the receiving end encoder neural network are pre-trained to be optimized for the channel situation, and the transmitting end 101 and the receiving end 103 are pre-trained based on the channel situation based on the transmitting end encoder neural network and the receiving end encoder neural network. Optimized communication can be performed.

본 명세서에서 제안하는 오토 인코더 기반의 코딩(coding) 방법은 오류 정정 부호 중의 하나인 터보 코드(Turbo code) 방식을 인공지능에 적용한 것이다.The auto-encoder-based coding method proposed in this specification applies the Turbo code method, one of the error correction codes, to artificial intelligence.

터보 코드 방식의 인공지능에의 적용에 대한 구체적인 설명에 앞서, 도 13 및 도 도 13 및 도 14는 본 명세서에서 제안한 방법의 이해를 돕기 위한 터보 코드의 예시를 나타낸 도이다.Prior to a detailed description of the application of the turbo code method to artificial intelligence, Figures 13 and 13 and 14 show examples of turbo codes to help understand the method proposed in this specification.

도 13 및 도 14에 도시된 것과 같이, 터보 코드는 기본적으로 2개의 구성요소 코드(component code)와 상기 2개의 구성요소 코드들 사이에 인터리버(interleaver)(

Figure pct00004
)가 위치하는 형태로 구성이 된다.As shown in FIGS. 13 and 14, the turbo code basically includes two component codes and an interleaver (interleaver) between the two component codes.
Figure pct00004
) is located.

보다 구체적으로, 도 13은 PCCC(parallel concatenated convolutional code) 터보 코드에 관련된 것이다. 도 13을 참조하면, 상기 PCCC 터보 코드는 ENC 1로 표시된 제 1 구성요소 코드(1301) 및 ENC 2로 표시된 제 2 구성요소 코드(1302)가 병렬적으로 위치하고, 상기 구성요소 코드들(1301 및 1302)의 사이에

Figure pct00005
로 표시되는 인터리버(1303)가 위치하는 형태로 구성되는 것을 알 수 있다. 여기서, 상기 PCCC 터보 코드의 입력 u1은 x0, x1 및 x2로 구성되어 출력되는데, 상기 x0은 입력 u1과 동일하고, 상기 x1은 입력 u1이 제 1 구성요소 코드(1301)에 의하여 인코딩되어 출력된 것이다. 또한, 상기 x2는 입력 u1이 인터리버(1303)에 의해서 인터리빙된 u2가 제 2 구성요소 코드(1302)에 의하여 인코딩되어 출력된 것이다. 상기 PCCC 터보 코드는 하나의 입력 u1을 입력 받아 3개의 값(x0, x1 및 x2)을 출력하므로, 상기 PCCC 터보 코드의 코드 레이트의 값은 1/3이다.More specifically, Figure 13 relates to parallel concatenated convolutional code (PCCC) Turbo code. Referring to FIG. 13, the PCCC turbo code has a first component code 1301 indicated as ENC 1 and a second component code 1302 indicated as ENC 2 located in parallel, and the component codes 1301 and Between 1302)
Figure pct00005
It can be seen that the interleaver 1303 indicated by is configured in such a way that it is located. Here, the input u1 of the PCCC turbo code is composed of x0, x1, and x2 and output. The x0 is the same as the input u1, and the x1 is the input u1 encoded by the first component code 1301 and output. will be. In addition, the x2 is output by encoding u2, which is input u1 interleaved by the interleaver 1303, by the second component code 1302. Since the PCCC turbo code receives one input u1 and outputs three values (x0, x1, and x2), the code rate value of the PCCC turbo code is 1/3.

또한, 도 14은 SCCC(Serial concatenated convolutional codes) 터보 코드에 관련된 것이다. 도 14를 참조하면, 상기 SCCC 터보 코드는 ENC 1로 표시된 제 1 구성요소 코드(1401) 및 ENC 2로 표시된 제 2 구성요소 코드(1402)가 위치하고, 상기 구성요소 코드들(1401 및 1402)의 사이에

Figure pct00006
로 표시되는 인터리버(1403)가 직렬적으로 위치하는 형태로 구성되는 것을 알 수 있다. 여기서, 상기 SCCC 터보 코드의 입력 u1은 x0, x1 및 x2로 구성되어 출력된다. 보다 구체적으로, 입력 u1은 제 1 구성요소 코드(1401)에 의하여 인코딩되어 c1으로 출력된다. 이후, 상기 c1은 인터리버(1403)에 의해서 인터리빙 되고, 제 2 구성요소 코드(1402)는 상기 인터리빙된 c1을 입력 u2를 입력 받는다. 상기 u2는 제 2 구성요소 코드(1402)에 의하여 인코딩되고, 결과적으로 x0, x1 및 x2로 구성된 c2가 출력된다. 상기 SCCC 터보 코드는 하나의 입력 u1을 입력 받아 3개의 값(x0, x1 및 x2)을 출력하므로, 상기 SCCC 터보 코드의 코드 레이트의 값은 1/3이다.Additionally, Figure 14 relates to SCCC (Serial concatenated convolutional codes) turbo codes. Referring to FIG. 14, the SCCC Turbo code has a first component code 1401 indicated as ENC 1 and a second component code 1402 indicated as ENC 2, and the components of the component codes 1401 and 1402 are located. Between
Figure pct00006
It can be seen that the interleaver 1403, indicated by , is configured to be located in series. Here, the input u1 of the SCCC turbo code is composed of x0, x1, and x2 and is output. More specifically, input u1 is encoded by the first component code 1401 and output as c1. Afterwards, the c1 is interleaved by the interleaver 1403, and the second component code 1402 receives the interleaved c1 as input u2. The u2 is encoded by the second component code 1402, and as a result, c2 consisting of x0, x1, and x2 is output. Since the SCCC turbo code receives one input u1 and outputs three values (x0, x1, and x2), the code rate value of the SCCC turbo code is 1/3.

일반적으로, SCCC 터보 코드는 PCCC 터보 코드에 비하여 다소 낮은 Waterfall 성능을 가지나, PCCC 터보 코드에 비하여 더 뛰어난 Error floor 성능을 가질 수 있다.In general, SCCC turbo codes have somewhat lower waterfall performance than PCCC turbo codes, but can have better error floor performance than PCCC turbo codes.

SCCC 터보 코드는 PCCC 터보 코드에 비하여 더 뛰어난 Error floor 성능을 가지므로, 본 명세서에서는 안정적인 데이터 전송을 위해서 SCCC-터보 코드의 형태를 인공지능에 적용한 방식이 제안된다. 여기서, SCCC-터보 코드의 형태가 인공지능에 적용된 방식은 직렬 연결 뉴럴 네트워크 오토 인코더 (Serially Concatenated Neural-Network AutoEncoder: SCNN-AE)로 호칭될 수 있다.Since the SCCC turbo code has better error floor performance than the PCCC turbo code, this specification proposes a method that applies the form of the SCCC-turbo code to artificial intelligence for stable data transmission. Here, the method in which the form of the SCCC-Turbo code is applied to artificial intelligence can be called a Serially Concatenated Neural-Network AutoEncoder (SCNN-AE).

도 15는 본 명세서에서 제안하는 직렬 연결 뉴럴 네트워크 오토 인코더의 전체적인 구조의 일 예를 나타낸 도이다.Figure 15 is a diagram showing an example of the overall structure of the serial-connected neural network autoencoder proposed in this specification.

도 15에서, 송신단(101)은 특정한 구조를 갖는 송신단 인코더 뉴럴 네트워크에 기초하여 구성되는데, 송신단(101)은 상기 송신단 인코더 뉴럴 네트워크에 기초하여 입력 데이터(u)를 인코딩하고, 상기 인코딩된 입력 데이터(x0, x1 및 x2)는 송신단이 전송하는 신호에 포함되어 채널 상으로 수신단(103)으로 전달된다.In Figure 15, the transmitter 101 is configured based on a transmitter encoder neural network having a specific structure. The transmitter 101 encodes input data u based on the transmitter encoder neural network, and the encoded input data (x0, x1, and x2) are included in the signal transmitted by the transmitting end and are transmitted to the receiving end 103 on the channel.

보다 구체적으로, 송신단(101)의 송신단 인코더 뉴럴 네트워크는 뉴럴 네트워크 f1(101-1), 뉴럴 네트워크 f2(101-2) 및 인터리버(interleaver)(

Figure pct00007
)(101-3)를 포함한다(로 구성된다). 여기서, f1(101-1)은 상기 송신단 인코더 뉴럴 네트워크의 입력 데이터를 입력 받고, 이를 인코딩하여 제 1 코드워드(codeword)를 출력한다. 인터리버(101-3)는 상기 제 1 코드워드를 f1(101-2)로부터 입력 받아 이를 인터리빙(interleaving)하고, 상기 인터리빙된 제 1 코드워드를 출력한다. 또한, f2(101-3)는 상기 인터리빙된 제 1 코드워드를 인터리버(101-3)로부터 입력 받아 제 2 코드워드(x0, x1 및 x2)를 출력한다. 상기 제 2 코드워드는 상기 송신단 인코더 뉴럴 네트워크에 포함된 전력 노멀라이저(Power Normalizer)(101-4)를 거쳐서 채널 상으로 전송된다. 이 때, 전력 노멀라이저는 송신단(101)의 출력 전력의 크기가 1이 되도록 조정하는 역할을 한다.More specifically, the transmitter encoder neural network of the transmitter 101 includes a neural network f1 (101-1), a neural network f2 (101-2), and an interleaver (
Figure pct00007
) includes (consists of) (101-3). Here, f1 (101-1) receives input data from the transmitter encoder neural network, encodes it, and outputs a first codeword. The interleaver 101-3 receives the first codeword from f1 (101-2), interleaves it, and outputs the interleaved first codeword. Additionally, f2 (101-3) receives the interleaved first codeword from the interleaver (101-3) and outputs second codewords (x0, x1, and x2). The second codeword is transmitted on the channel through a power normalizer 101-4 included in the transmitter encoder neural network. At this time, the power normalizer serves to adjust the output power of the transmitter 101 to be 1.

상기 설명된 내용을 요약하면, 상기 송신단 인코더 뉴럴 네트워크는 (i) 입력 데이터를 입력 받아 제 1 코드워드(codeword)를 출력하는 제 1 인코더 뉴럴 네트워크, (ii) 상기 제 1 코드워드를 입력 받아 인터리빙(interleaving)하고, 상기 인터리빙된 제 1 코드워드를 출력하는 인터리버(interleaver) 및 (iii) 상기 인터리빙된 제 1 코드워드를 입력 받아 상기 인코딩된 입력 데이터를 구성하는 제 2 코드워드를 출력하는 제 2 인코더 뉴럴 네트워크를 직렬적으로(serially) 포함하는 것으로 설명될 수 있다. 또한, 상기 송신단 인코더 뉴럴 네트워크는 송신단(101)이 전송하는 신호의 출력 전력의 크기가 1이 되도록 조정하는 전력 노멀라이저를 더 포함하는 것으로 설명될 수 있다.In summary, the transmitter encoder neural network is (i) a first encoder neural network that receives input data and outputs a first codeword, (ii) receives the first codeword and interleaves it. (iii) an interleaver that receives the interleaved first codeword and outputs the interleaved first codeword, and (iii) a second device that receives the interleaved first codeword and outputs a second codeword constituting the encoded input data. It can be described as involving serially an encoder neural network. In addition, the transmitter encoder neural network may be described as further including a power normalizer that adjusts the output power of the signal transmitted by the transmitter 101 to be 1.

다시 도 15로 돌아와서, 수신단(103)은 특정한 구조를 갖는 적어도 하나 이상의 기본(basic) 수신단 디코더 뉴럴 네트워크가 순차적으로 연결된 형태로 구성되는데, 수신단(103)은 상기 수신단 디코더 뉴럴 네트워크에 기초하여 채널상으로 송신단(101)이 전송한 신호를 수신하고, 상기 신호에 포함된 인코딩된 송신단(101)의 입력 데이터(x0, x1 및 x2)를 복원한다. 도 15에서, Imax는 수신단 디코더 뉴럴 네트워크에 포함될 수 있는(구성할 수 있는) 기본 수신단 디코더 뉴럴 네트워크의 최대값(즉, 최대 decoding iteration)을 나타낸다.Returning to Figure 15, the receiving end 103 is composed of at least one basic receiving end decoder neural network having a specific structure connected sequentially. The signal transmitted by the transmitter 101 is received, and the encoded input data (x0, x1, and x2) of the transmitter 101 included in the signal is restored. In Figure 15, Imax represents the maximum value (i.e., maximum decoding iteration) of the basic receiving end decoder neural network that can be included (configurable) in the receiving end decoder neural network.

보다 구체적인 설명을 위한 편의를 위해, 수신단 디코더 뉴럴 네트워크에 포함된(수신단 디코더 뉴럴 네트워크를 구성하는) 적어도 하나 이상의 기본 수신단 디코더 뉴럴 네트워크들 중 가장 먼저 위치하는 기본 수신단 디코더 뉴럴 네트워크를 예시로 설명하도록 한다. 수신단(103)의 기본 수신단 디코더 뉴럴 네트워크는 뉴럴 네트워크 g2(103-2), 뉴럴 네트워크 g1(103-1) 및 디-인터리버(de-interleaver)(

Figure pct00008
)(103-3)를 포함한다. 여기서, g2(103-2)는 상기 채널상으로 전송된 송신단(101)의 신호에 포함된 f2(101-2)와 관련된 코드워드(제 2 코드워드(x0, x1 및 x2))에 대한 디코딩(decoding)을 수행하고, 제 2 디코딩된 코드워드를 출력한다. 또한, 디-인터리버(103-3)는 g2(103-2)로부터 상기 제 2 디코딩된 코드워드를 입력 받아 이를 디-인터리빙(de-interleaving)하고, 상기 디-인터리빙된 제 2 디코딩된 코드워드를 출력한다. 이 때, 상기 디-인터리빙된 제 2 디코딩된 코드워드는 f2(101-2)와 관련된 코드워드에 디코딩과 디-인터리빙이 순차적으로 수행된 것이므로, 상기 디-인터리빙된 제 2 디코딩된 코드워드는 f1(101-1)과 관련된 코드워드(제 1 코드워드)일 수 있다. g1(103-1)은 상기 f1(101-1)과 관련된 코드워드를 디-인터리버(103-3)로부터 입력 받아 이를 디코딩하고, 제 1 디코딩된 코드워드를 출력한다. 상기 제 1 디코딩된 코드워드는 인터리빙되어 상기 가장 먼저 위치하는 기본 수신단 디코더 뉴럴 네트워크의 다음에 연결된 기본 수신단 디코더 뉴럴 네트워크로 입력된다. 이 때, 상기 제 1 디코딩된 코드워드의 인터리빙은 (i) 상기 가장 먼저 위치하는 기본 수신단 디코더 뉴럴 네트워크 및 (ii) 상기 가장 먼저 위치하는 기본 수신단 디코더 뉴럴 네트워크의 다음에 연결된 기본 수신단 디코더 뉴럴 네트워크 사이에 위치하는 인터리버에 의하여 수행된다. 상기 제 1 디코딩된 코드워드가 인터리빙되어 상기 가장 먼저 위치하는 기본 수신단 디코더 뉴럴 네트워크의 다음에 연결된 기본 수신단 디코더 뉴럴 네트워크로 입력될 때, 상기 가장 먼저 위치하는 기본 수신단 디코더 뉴럴 네트워크의 다음에 연결된 기본 수신단 디코더 뉴럴 네트워크는 채널 상으로 전송된 송신단(101)이 전송한 신호를 함께 입력 받는다. 상기 설명된 내용은 수신단 디코더 뉴럴 네트워크에 포함된 적어도 하나 이상의 기본 수신단 디코더 뉴럴 네트워크들에 각각 포함된 g2 및 g1에 대해서도 적용될 수 있음은 물론이다.For the convenience of a more detailed explanation, the basic receiving end decoder neural network located first among at least one basic receiving end decoder neural network included in the receiving end decoder neural network (constituting the receiving end decoder neural network) will be explained as an example. . The basic receiving end decoder neural network of the receiving end 103 includes neural network g2 (103-2), neural network g1 (103-1), and de-interleaver (
Figure pct00008
)(103-3). Here, g2 (103-2) decodes the codeword (second codeword (x0, x1, and x2)) related to f2 (101-2) included in the signal of the transmitter 101 transmitted on the channel. (decoding) is performed, and the second decoded codeword is output. In addition, the de-interleaver 103-3 receives the second decoded codeword from g2 (103-2), de-interleaves it, and deinterleaves the second decoded codeword. outputs. At this time, the de-interleaved second decoded codeword is obtained by sequentially performing decoding and de-interleaving on the codeword related to f2 (101-2), so the de-interleaved second decoded codeword is It may be a codeword (first codeword) related to f1 (101-1). g1 (103-1) receives the codeword related to f1 (101-1) from the de-interleaver (103-3), decodes it, and outputs the first decoded codeword. The first decoded codeword is interleaved and input to a basic receiving end decoder neural network connected next to the first basic receiving end decoder neural network. At this time, the interleaving of the first decoded codeword is between (i) the basic receiving end decoder neural network located first and (ii) the basic receiving end decoder neural network connected next to the basic receiving end decoder neural network located first. It is performed by an interleaver located in . When the first decoded codeword is interleaved and input to the basic receiving end decoder neural network connected next to the first-positioned basic receiving end decoder neural network, the basic receiving end connected next to the first-positioned basic receiving end decoder neural network The decoder neural network receives the signal transmitted by the transmitter 101 on the channel. Of course, the above description can also be applied to g2 and g1 respectively included in at least one basic receiving end decoder neural network included in the receiving end decoder neural network.

상기 설명된 내용을 요약하면, 상기 수신단 디코더 뉴럴 네트워크는 순차적으로 연결된 적어도 하나 이상의 기본 디코더 뉴럴 네트워크를 포함한다. 여기서, 상기 적어도 하나 이상의 기본 디코더 뉴럴 네트워크 각각은 (i) 송신단 인코더 뉴럴 네트워크에 포함된 제 2 인코더 뉴럴 네트워크에서 출력된 제 2 코드워드에 대한 디코딩을 수행하고, 제 2 디코딩된 코드워드를 출력하는 제 2 디코더 뉴럴 네트워크, (ii) 상기 제 2 디코딩된 코드워드를 입력 받아 디-인터리빙(de-interleaving)하고, 상기 디-인터리빙된 제 2 디코딩된 코드워드를 출력하는 디-인터리버(de-interleaver) 및 (iii) 상기 디-인터리빙된 제 2 디코딩된 코드워드에 대한 디코딩을 수행하고, 상기 디-인터리빙된 제 2 디코딩된 코드워드에 대한 디코딩에 기초한 제 1 디코딩된 코드워드를 출력하는 제 1 디코더 뉴럴 네트워크를 직렬적으로(serially) 포함하는 것으로 설명될 수 있다.To summarize what has been described above, the receiving end decoder neural network includes at least one basic decoder neural network connected sequentially. Here, each of the at least one basic decoder neural network (i) performs decoding on the second codeword output from the second encoder neural network included in the transmitter encoder neural network and outputs the second decoded codeword. A second decoder neural network, (ii) a de-interleaver that receives the second decoded codeword, de-interleaves it, and outputs the deinterleaved second decoded codeword. ) and (iii) a first device that performs decoding on the de-interleaved second decoded codeword and outputs a first decoded codeword based on the decoding on the de-interleaved second decoded codeword. It can be described as including a decoder neural network serially.

또한, 상기 적어도 하나 이상의 기본 디코더 뉴럴 네트워크 중 상기 수신단 디코더 뉴럴 네트워크에서 가장 먼저 위치한 기본 수신단 디코더 뉴럴 네트워크는 수신단(103)이 채널 상으로 수신한 송신단 신호에 포함된 코드워드(제 2 코드워드(x0, x1 및 x2))만을 입력 받는다. 반면, 상기 가장 먼저 위치한 기본 수신단 디코더 뉴럴 네트워크 외의 기본 수신단 디코더 뉴럴 네트워크들은 (i) 자신 바로 이전에 위치한 기본 디코더 뉴럴 네트워크에서 출력되는 제 1 디코딩된 코드워드 및 (ii) 수신단(103)이 채널 상으로 수신한 송신단 신호에 포함된 코드워드(제 2 코드워드(x0, x1 및 x2))를 모두 입력 받는다. 이 때, 상기 가장 먼저 위치한 기본 수신단 디코더 뉴럴 네트워크가 수신단(103)이 채널 상으로 수신한 송신단 신호에 포함된 코드워드(제 2 코드워드(x0, x1 및 x2))만을 입력 받는다는 것은, 자신의 바로 이전에 위치한 기본 수신단 디코더 뉴럴 네트워크로부터 입력 받는 코드워드가 0인 것으로 이해될 수도 있다.In addition, among the at least one basic decoder neural network, the basic receiving end decoder neural network located first in the receiving end decoder neural network is a codeword (second codeword (x0) included in the transmitting end signal received on the channel by the receiving end 103. , only x1 and x2)) are input. On the other hand, the basic receiving end decoder neural networks other than the basic receiving end decoder neural network located first include (i) the first decoded codeword output from the basic decoder neural network located immediately before it and (ii) the receiving end 103 on the channel. All codewords (second codewords (x0, x1, and x2)) included in the transmitter signal received are input. At this time, this means that the basic receiving end decoder neural network located first receives only the codewords (second codewords (x0, x1, and x2)) included in the transmitting end signal received on the channel by the receiving end 103. It may be understood that the codeword received from the basic receiver decoder neural network located immediately before is 0.

도 16은 본 명세서에서 제안된 방법이 적용될 수 있는 송신단 인코더 뉴럴 네트워크의 일 예를 나타낸 도이다.Figure 16 is a diagram showing an example of a transmitter encoder neural network to which the method proposed in this specification can be applied.

보다 구체적으로, 도 16은 송신단 인코더 뉴럴 네트워크에 포함된(를 구성하는) 제 1 인코더 뉴럴 네트워크 및 제 2 인코더 뉴럴 네트워크의 구체적인 구현 형태와 관련된 도이다. 도 15에서와 같이, 도 16에서의 송신단 인코더 뉴럴 네트워크는 제 1 인코더 뉴럴 네트워크(101-1), 인터리버(101-3) 및 제 2 인코더 뉴럴 네트워크(101-2)를 직렬적으로 포함하는 형태로 구성될 수 있다.More specifically, FIG. 16 is a diagram related to a specific implementation form of the first encoder neural network and the second encoder neural network included in (constituting) the encoder neural network at the transmitting end. As shown in FIG. 15, the transmitter encoder neural network in FIG. 16 includes a first encoder neural network 101-1, an interleaver 101-3, and a second encoder neural network 101-2 in series. It can be composed of:

도 16에서, 제 1 인코더 뉴럴 네트워크(f1)(101-1)는 2개의 인코더 컴포넌트 뉴럴 네트워크(f1(1)(101-1a) 및 f1(2)(101-1b))로 구성되고, 제 2 인코더 뉴럴 네트워크(f2)(101-2)는 3개의 인코더 컴포넌트 뉴럴 네트워크(f2(1)(101-2a), f2(2)(101-2b) 및 f2(3)(101-2c))로 구성될 수 있다. 여기서, f1(1)(101-1a), f1(2)(101-1b), f2(1)(101-2a) 및 f2(2)(101-2b)는 동일한 형태의 뉴럴 네트워크로 구성될 수 있으며, f1(1)(101-1a), f1(2)(101-1b), f2(1)(101-2a) 및 f2(2)(101-2b)를 구성하는 동일한 형태의 뉴럴 네트워크는 제 1 인코더 컴포넌트 뉴럴 네트워크로 호칭될 수 있다. 또한, f2(3)(101-2c)는 상기 제 1 인코더 컴포넌트 뉴럴 네트워크와는 다른 형태의 뉴럴 네트워크로 구성될 수 있으며, 이는 제 2 인코더 컴포넌트 뉴럴 네트워크로 호칭될 수 있다.In Figure 16, the first encoder neural network (f1) (101-1) is composed of two encoder component neural networks (f1 (1) (101-1a) and f1 (2) (101-1b), and 2 Encoder Neural Network (f2)(101-2) consists of 3 encoder component neural networks (f2(1)(101-2a), f2(2)(101-2b) and f2(3)(101-2c). It can be composed of: Here, f1(1)(101-1a), f1(2)(101-1b), f2(1)(101-2a), and f2(2)(101-2b) may be composed of the same type of neural network. and the same type of neural network constituting f1(1)(101-1a), f1(2)(101-1b), f2(1)(101-2a), and f2(2)(101-2b). The first encoder component may be called a neural network. Additionally, f2(3)(101-2c) may be composed of a different type of neural network from the first encoder component neural network, and may be referred to as a second encoder component neural network.

또한, 도 16에서, 제 1 인코더 뉴럴 네트워크(f1(1,2))(101-1)는 입력(u)을 입력 받고, 입력 받은 입력(u)에 대해서 코드워드(c1)을 생성한다. 상기 코드워드(c1)는 제 1 인코더 뉴럴 네트워크(f1(1,2))(101-1)가 입력 받은 입력(u)에 대한 인코딩에 기초하여 생성되는 것일 수 있다. 여기서, 제 1 인코더 뉴럴 네트워크(f1(1,2))(101-1)는 상기 코드워드(c1)의 코드-레이트(code-rate)의 값이 1/2이 되도록 구성 되어있다. 즉, 제 1 인코더 뉴럴 네트워크(f1(1,2))(101-1)는 길이가 1인 입력(u)을 입력 받아, 길이가 2인 코드워드(c1)를 출력한다. 또한, 제 2 인코더 뉴럴 네트워크(f2(1,2,3))(101-2)는 코드워드(c1)을 입력 받고, 입력 받은 코드워드(c1)에 대하여 코드워드(c2)를 생성한다. 상기 코드워드(c2)는 제 2 인코더 뉴럴 네트워크(f2(1,2,3))(101-2)가 입력 받은 코드워드(c1)에 대한 인코딩에 기초하여 생성되는 것일 수 있다. 여기서, 제 2 인코더 뉴럴 네트워크(f2(1,2,3))(101-2)는 상기 코드워드(c2)의 코드-레이트(code-rate)의 값이 2/3이 되도록 구성 되어있다. 즉, 제 2 인코더 뉴럴 네트워크(f2(1,2,3))(101-1)는 길이가 2인 코드워드(c1)을 입력 받아, 길이가 3인 코드워드(c2)를 출력한다.Additionally, in Figure 16, the first encoder neural network (f1(1,2)) 101-1 receives input (u) and generates a codeword (c1) for the received input (u). The codeword (c1) may be generated based on encoding of the input (u) received by the first encoder neural network (f1(1,2)) 101-1. Here, the first encoder neural network (f1(1,2)) 101-1 is configured such that the code-rate value of the codeword (c1) is 1/2. That is, the first encoder neural network (f1(1,2)) 101-1 receives an input (u) with a length of 1 and outputs a codeword (c1) with a length of 2. Additionally, the second encoder neural network (f2(1,2,3)) 101-2 receives the codeword (c1) and generates a codeword (c2) for the received codeword (c1). The codeword (c2) may be generated based on encoding of the codeword (c1) received by the second encoder neural network (f2(1,2,3)) 101-2. Here, the second encoder neural network (f2(1,2,3)) 101-2 is configured such that the code-rate value of the codeword (c2) is 2/3. That is, the second encoder neural network (f2(1,2,3)) 101-1 receives a codeword (c1) with a length of 2 and outputs a codeword (c2) with a length of 3.

도 16에서, 설명의 편의를 위해, 제 1 인코더 뉴럴 네트워크(101-1)를 구성하는 인코더 컴포넌트 뉴럴 네트워크의 개수는 2개이고, 제 2 인코더 뉴럴 네트워크(101-2)를 구성하는 인코더 컴포넌트 뉴럴 네트워크의 개수는 3개인 경우의 예시로 설명했지만, 제 1 인코더 뉴럴 네트워크(101-1) 및 제 2 인코더 뉴럴 네트워크(101-2)는 다양한 형태로 구성될 수 있음은 물론이다. 즉, 제 1 인코더 뉴럴 네트워크(101-1)는 n1개의 제 1 인코더 컴포넌트 뉴럴 네트워크로 구성되고, 제 2 인코더 뉴럴 네트워크(101-2)는 n2개의 상기 제 1 인코더 컴포넌트 뉴럴 네트워크 및 n3개의 제 2 인코더 컴포넌트 뉴럴 네트워크로 구성될 수 있다. 이 때, n1, n2 및 n3는 0이 아닌 양의 정수일 수 있다. 이 때, 제 1 인코더 뉴럴 네트워트(101-1)의 입력(u)이 k가 될 수 있고, 코드 레이트(code rate)는 k/n1이 되고, 상기 제 2 인코더 뉴럴 네트워크(101-2)의 코드 레이트는 n1/(n2+n3)일 수 있다. 여기서, 상기 n1 및 상기 n2의 값은 동일하고, 상기 n3의 값은 상기 n1 및 n2와 다른 값일 수 있다. 특히, 상기 n3의 값은 1일 수 있다. 전체 code-rate은 k/(n2+n3)가 된다.In FIG. 16, for convenience of explanation, the number of encoder component neural networks constituting the first encoder neural network 101-1 is two, and the number of encoder component neural networks constituting the second encoder neural network 101-2 is 2. Although the number of has been described as an example of 3, it goes without saying that the first encoder neural network 101-1 and the second encoder neural network 101-2 can be configured in various forms. That is, the first encoder neural network 101-1 is composed of n1 first encoder component neural networks, and the second encoder neural network 101-2 is composed of n2 first encoder component neural networks and n3 second encoder component neural networks. The encoder component may be composed of a neural network. At this time, n1, n2, and n3 may be positive integers other than 0. At this time, the input (u) of the first encoder neural network (101-1) may be k, the code rate may be k/n1, and the The code rate may be n1/(n2+n3). Here, the values of n1 and n2 may be the same, and the value of n3 may be different from n1 and n2. In particular, the value of n3 may be 1. The total code-rate becomes k/(n2+n3).

도 17은 본 명세서에서 제안된 방법이 적용될 수 있는 수신단 디코더 뉴럴 네트워크의 일 예를 나타낸 도이다.Figure 17 is a diagram showing an example of a receiving-end decoder neural network to which the method proposed in this specification can be applied.

보다 구체적으로, 도 17은 수신단 디코더 뉴럴 네트워크를 구성하는 기본 수신단 디코더 뉴럴 네트워크의 구체적인 동작을 보여준다. 도 17에서, g2는 도 15에서 설명한 제 2 디코더 뉴럴 네트워크(103-2)를 나타내고, g1는 도 15에서 설명한 제 1 디코더 뉴럴 네트워크(103-1)를 나타낸다. 또한,

Figure pct00009
(103-3)는 도 15에서 설명한 디-인터리버를 나타내고,
Figure pct00010
는 도 15에서 설명한 인터리버를 나타낸다.More specifically, Figure 17 shows the specific operation of the basic receiving end decoder neural network that constitutes the receiving end decoder neural network. In FIG. 17, g2 represents the second decoder neural network 103-2 described in FIG. 15, and g1 represents the first decoder neural network 103-1 described in FIG. 15. also,
Figure pct00009
(103-3) represents the de-interleaver described in Figure 15,
Figure pct00010
represents the interleaver described in FIG. 15.

제 2 디코더 뉴럴 네트워크(103-2)는 채널상으로 송신단(101)으로부터 전송된 데이터(x0, x1, x2)에 대한 디코딩을 수행하여, 송신단 인코더 뉴럴 네트워크를 구성하는 제 2 인코더 뉴럴 네트워크의 입력에 대응되는 A Posteriori u2를 생성한다. 상기 생성된 A Posteriori u2로부터 입력(x0, x1 및 x2)와 상관성(correlation)이 있는 u2(A Priori)가 제거되고(+: 동작)(103-5), 디-인터리버(π-1)(103-3)를 거치면, 송신단 인코더 뉴럴 네트워크를 구성하는 제 1 인코더 뉴럴 네트워크의 출력에 대응되는 코드워드(c1)(Extrinsic information)이 획득된다.The second decoder neural network 103-2 performs decoding on the data (x0, x1, x2) transmitted from the transmitter 101 on the channel, and is the input of the second encoder neural network constituting the transmitter encoder neural network. Create A Posteriori u2 corresponding to . From the generated A Posteriori u2, u2 (A Priori) that has correlation with the input (x0, x1 and x2) is removed (+: operation) (103-5), and de-interleaver (π-1) ( After passing through 103-3), a codeword (c1) (Extrinsic information) corresponding to the output of the first encoder neural network constituting the transmitter encoder neural network is obtained.

이후, 제 1 디코더 뉴럴 네트워크(g1)(103-1)는 상기 코드워드(c1)(A Priori)를 입력 받고, 상기 코드워드(c1)(A Priori)에 대한 디코딩을 통해 A Posteriori c1을 생성한다. 다음, Extrinsic c1을 생성하기 위해서, 제 1 디코더 뉴럴 네트워크(103-1)이 생성한 A posteriori c1로부터 A Priori c1에 제거된 후(103-6), 인터리빙(103-4)된다. 여기서, 상기 인터리빙된 데이터는 상기 설명한 동작들을 수행한 기본 수신단 디코더 뉴럴 네트워크의 바로 다음에 연결된 기본 수신단 디코더 뉴럴 네트워크의 입력으로 전달된다.Afterwards, the first decoder neural network (g1) 103-1 receives the codeword (c1) (A Priori) and generates A Posteriori c1 through decoding of the codeword (c1) (A Priori). do. Next, to generate extrinsic c1, A priori c1 is removed from A posteriori c1 generated by the first decoder neural network (103-1) (103-6) and then interleaved (103-4). Here, the interleaved data is delivered to the input of a basic receiving end decoder neural network connected immediately after the basic receiving end decoder neural network that performed the operations described above.

도 18은 본 명세서에서 제안된 방법이 적용될 수 있는 수신단 디코더 뉴럴 네트워크의 일 예를 나타낸 도이다.Figure 18 is a diagram showing an example of a receiving-end decoder neural network to which the method proposed in this specification can be applied.

보다 구체적으로, 도 18은 도 17에서 설명한 기본 수신단 디코더 뉴럴 네트워크들 n개가 연속적으로 연결(n-iteration)되어 구성된 수신단 디코더 뉴럴 네트워크의 일 예를 나타낸다. 도 18에서, 도 17에서 설명된 Extrinsic information 생성을 위한 뺄셈 연산(103-5 및 103-6)은 g2,i, g1,i에 포함된다. 연속적으로 연결된 기본 수신단 디코더 뉴럴 네트워크들 중 첫 번째 기본 수신단 디코더 뉴럴 네트워크를 제외한 나머지 기본 수신단 디코더 뉴럴 네트워크들은 (i) 채널 상으로 전송된 데이터와 (ii) 자신의 바로 앞에 위치한 기본 수신단 디코더 뉴럴 네트워크에서 수행된 디코딩에 기초하여 생성된 데이터를 함께 입력 받고, 상기 (i) 및 (ii)의 데이터에 기초하여 디코딩을 수행한다. 상기 (i) 및 (ii)의 데이터에 기초하여 디코딩이 반복되어 수행됨으로써, (a) 마지막에 위치한 기본 수신단 디코더 뉴럴 네트워크에서 복원되는 데이터와 (b) 송신단 인코더가 전송한 입력 데이터(u) 간의 오차가 감소할 수 있다.More specifically, FIG. 18 shows an example of a receiving decoder neural network configured by successively connecting (n-iteration) n basic receiving decoder neural networks described in FIG. 17. In FIG. 18, the subtraction operations 103-5 and 103-6 for generating extrinsic information described in FIG. 17 are included in g2,i and g1,i. Among the continuously connected basic receiver decoder neural networks, except for the first basic receiver decoder neural network, the remaining basic receiver decoder neural networks are connected to (i) data transmitted on the channel and (ii) the basic receiver decoder neural network located right in front of it. Data generated based on the performed decoding is input together, and decoding is performed based on the data in (i) and (ii) above. By repeatedly performing decoding based on the data in (i) and (ii), there is a difference between (a) the data restored from the last basic receiving end decoder neural network and (b) the input data (u) transmitted by the transmitting end encoder. Error can be reduced.

구체적인 뉴럴 네트워크 구조 - (제안 1)Specific neural network structure - (Proposal 1)

이하에서는, 앞서 살펴본 (i) 송신단 인코더 뉴럴 네트워크를 구성하는 제 1 인코더 뉴럴 네트워크 및 제 2 인코더 뉴럴 네트워크와 (ii) 수신단 디코더 뉴럴 네트워크를 구성하는 제 1 디코더 뉴럴 네트워크 및 제 2 디코더 뉴럴 네트워크의 보다 구체적인 구조에 대해 살펴본다.In the following, (i) the first encoder neural network and the second encoder neural network constituting the transmitting end encoder neural network and (ii) the first decoder neural network and the second decoder neural network constituting the receiving end decoder neural network are described above. Let's look at the specific structure.

(채널)코딩에 AI를 적용하는 경우, AI가 학습해야 할 정보의 공간(Space)이 중요한 문제가 된다. 보다 구체적으로, 정보는 임의적인(Random) 특성을 가지므로, 길이가 k인 정보의 경우, AI는 2k경우에 대해서 학습해야 한다. 정보의 길이(크기)가 커질수록 AI가 학습해야 할 공간의 크기가 기하급수적으로 증가하는 문제를 해결하기 위해, 송신단 인코더 뉴럴 네트워크/수신단 디코더 뉴럴 네트워크는 특정한 구조적인 제한을 가지도록 구성될 수 있고, 뉴럴 네트워크는 상기 특정한 구조를 학습할 수 있다.When applying AI to (channel) coding, the space of information that AI needs to learn becomes an important issue. More specifically, since information has random characteristics, for information of length k, AI must learn for 2k cases. To solve the problem that the size of the space that AI must learn increases exponentially as the length (size) of information increases, the transmitter encoder neural network/receiver decoder neural network can be configured to have specific structural restrictions. , a neural network can learn the specific structure.

본 명세서에서 제안하는 SCNN-AE의 경우, 송신단 인코더와 수신단 디코더를 구성하기 위해 컨볼루션 뉴럴 네트워크(Convolutional Neural Network: CNN)가 사용된다. CNN의 Kernel을 이용한 필터링(filtering)은 마치 convolution code와 비슷한 역할을 하기 때문이다. 송신단 인코더 단의 관점에서, 송신단 인코더를 구성하는 뉴럴 네트워크의 은닉층(Hidden layer)이 많을수록 입력이 더 잘 분리되는 특성이 있다. 반면, 은닉층의 개수가 늘어나면, 뉴럴 네트워크의 복잡도가 증가하고, 개수가 증가하는 정도에 비하여 성능의 개선의 정도가 미미해 지므로, 적절한 개수의 은닉층을 구성하는 것이 중요하다.In the case of SCNN-AE proposed in this specification, a convolutional neural network (CNN) is used to configure the transmitter encoder and the receiver decoder. This is because filtering using CNN's Kernel plays a similar role to a convolution code. From the perspective of the transmitter encoder stage, the more hidden layers there are in the neural network constituting the transmitter encoder, the better the input is separated. On the other hand, as the number of hidden layers increases, the complexity of the neural network increases and the degree of performance improvement becomes insignificant compared to the increase in the number, so it is important to configure an appropriate number of hidden layers.

도 19는 본 명세서에서 제안하는 방법이 적용될 수 있는 뉴럴 네트워크를 구성하기 위한 기본 뉴럴 네트워크 구성 단위의 일 예를 나타낸 도이다.Figure 19 is a diagram showing an example of a basic neural network unit for configuring a neural network to which the method proposed in this specification can be applied.

본 명세서에서, (i) 송신단 인코더 뉴럴 네트워크를 구성하는 제 1 인코더 뉴럴 네트워크(f1) 및 제 2 인코더 뉴럴 네트워크(f2)와 (ii) 수신단 디코더 뉴럴 네트워크를 구성하는 제 1 디코더 뉴럴 네트워크(g1) 및 제 2 디코더 뉴럴 네트워크(g2)를 구성하는 방법은, 상기 f1, f2, g1 및 g2를 동일한 구조에 기초하여 구성하되, 각각에 적용되는 파라미터만을 다르게 적용하는 방법이다. 즉, 상기 f1, f2, g1 및 g2를 구성하기 위해 도 19에 도시된 뉴럴 네트워크 구성 단위가 동일하게 사용되고, 상기 f1, f2, g1 및 g2 각각의 은닉층의 개수(뉴럴 네트워크 구성 단위의 개수), 필터 개수 등의 파라미터가 상기 f1, f2, g1 및 g2 각각에 대하여 다르게 적용될 수 있다.In this specification, (i) a first encoder neural network (f1) and a second encoder neural network (f2) constituting the transmitting end encoder neural network and (ii) a first decoder neural network (g1) constituting the receiving end decoder neural network. And the method of configuring the second decoder neural network (g2) is a method of configuring f1, f2, g1, and g2 based on the same structure, but applying only the parameters applied to each differently. That is, the same neural network structural units shown in FIG. 19 are used to construct f1, f2, g1, and g2, and the number of hidden layers (number of neural network structural units) of each of f1, f2, g1, and g2, Parameters such as the number of filters may be applied differently to each of f1, f2, g1, and g2.

도 19에서, Cin은 입력 데이터의 디멘젼(dimension)을 나타내고, k는 커널 크기(kernel-size)[필터 크기(filter-size)], Cout은 출력 데이터의 디멘젼을 나타내며, 상기 f1, f2, g1 및 g2 구성의 기초가 되는 뉴럴 네트워크 구성 단위는 입력 데이터에 대한 필터링(filtering)을 위한 필터링 함수(Conv1d)(1910) 및 상기 필터링 함수의 출력을 입력 받아 비선형화하는 활성화 함수(ACT)(activation function)(1920)로 구성된다. 뉴럴 네트워크는 계층(Layer) 간의 독립성을 유지하기 비-선형성(non-linearity) 기능이 있는 함수를 활성화 함수로 사용한다. 또한, 뉴럴 네트워크 학습에서 필수적인 역-전파(Back-propagation) 시 기울기 소멸(Vanishing Gradient) 문제를 해결하기 위해서, ReLu(Rectified Linear Unit) 함수 또는 ReLu 함수를 변형시킨 함수가 활성화 함수로 사용된다. 송신단 인코더/수신단 디코더의 f1(1,2), f2(1,2,3)/g1, g2는 하나의 뉴럴 네트워크 구성 단위(Conv1dCode)가 하나의 은닉층(Hidden layer)을 구성하고, Cin/Cout은 서로 다른 파라미터를 가진다.In Figure 19, Cin represents the dimension of the input data, k is the kernel size (kernel-size) (filter-size), and Cout represents the dimension of the output data, where f1, f2, and g1 And the neural network unit that is the basis of the g2 configuration is a filtering function (Conv1d) (1910) for filtering the input data and an activation function (ACT) that receives the output of the filtering function and non-linearizes it. )(1920). Neural networks use a function with non-linearity as an activation function to maintain independence between layers. Additionally, to solve the vanishing gradient problem during back-propagation, which is essential in neural network learning, the ReLu (Rectified Linear Unit) function or a modified version of the ReLu function is used as an activation function. f1(1,2), f2(1,2,3)/g1, and g2 of the transmitter encoder/receiver decoder are one neural network unit (Conv1dCode) forming one hidden layer, and Cin/Cout has different parameters.

도 20 및 도 21은 본 명세서에서 제안하는 뉴럴 네트워크 구성 단위에 기초하여 구성되는 송신단 인코더 뉴럴 네트워크의 일 예를 나타낸 도이다.Figures 20 and 21 are diagrams showing an example of a transmitter encoder neural network constructed based on the neural network structural unit proposed in this specification.

먼저, 도 20는 도 16의 제 1 인코더 뉴럴 네트워크 및 제 2 인코더 뉴럴 네트워크를 구성하는 제 1 인코더 컴포넌트 뉴럴 네트워크의 일 예에 관한 도이다. 도 20에 도시된 것과 같이, 제 1 인코더 컴포넌트 뉴럴 네트워크는 2개의 계층으로 구성될 수 있고, 마지막단에서 선형 회귀(Linear regression)와 eLu(exponential linear unit) 함수가 활성화 함수로 사용된다. Co는 송신단 인코더에서 CNN의 컨볼루션을 위해 사용된 필터의 수를 나타낸다. 보다 구체적으로, 제 1 인코더 컴포넌트 뉴럴 네트워크에서, 2개의 계층 중 첫 번째 계층은 하나의 입력 데이터를 입력 받고, 출력 채널의 수가 Co개인 출력 데이터를 출력한다. 또한, 두 번째 계층은 첫 번째 계층으로부터 출력된 출력 채널의 수가 Co개인 출력 데이터를 입력 받고, 출력 채널의 수가 Co개인 출력 데이터를 출력한다. 이후, 두 번째 계층으로부터 출력된 출력 데이터에 선형 회귀가 적용되고, 상기 선형 회귀가 적용된 상기 두 번째 계층의 출력 데이터에 eLu함수가 적용되어 출력될 수 있다.First, FIG. 20 is a diagram of an example of a first encoder component neural network constituting the first encoder neural network and the second encoder neural network of FIG. 16. As shown in FIG. 20, the first encoder component neural network may be composed of two layers, and at the last stage, linear regression and eLu (exponential linear unit) functions are used as activation functions. Co represents the number of filters used for convolution of CNN in the transmitter encoder. More specifically, in the first encoder component neural network, the first layer of the two layers receives one input data and outputs output data with the number of output channels being Co. Additionally, the second layer receives output data with Co number of output channels output from the first layer, and outputs output data with Co number of output channels. Afterwards, linear regression may be applied to the output data output from the second layer, and the eLu function may be applied to the output data of the second layer to which the linear regression has been applied.

다음, 도 21은 도 16의 제 2 인코더 뉴럴 네트워크를 구성하는 제 2 인코더 컴포넌트 뉴럴 네트워크의 일 예에 관한 도이다. 도 21에 도시된 것과 같이, 제 2 인코더 컴포넌트 뉴럴 네트워크는 2개의 계층으로 구성될 수 있고, 마지막단에서 선형 회귀(Linear regression)와 eLu함수가 활성화 함수로 사용된다. Co는 송신단 인코더에서 CNN의 컨볼루션을 위해 사용된 필터의 수를 나타낸다. 보다 구체적으로, 제 2 인코더 컴포넌트 뉴럴 네트워크에서, 2개의 계층 중 첫 번째 계층은 입력 채널의 개수가 2개인 입력 데이터를 입력 받고, 출력 채널의 수가 Co개인 출력 데이터를 출력한다. 또한, 두 번째 계층은 첫 번째 계층으로부터 출력된 출력 채널의 수가 Co개인 출력 데이터를 입력 받고, 출력 채널의 수가 Co개인 출력 데이터를 출력한다. 이후, 두 번째 계층으로부터 출력된 출력 데이터에 선형 회귀가 적용되고, 상기 선형 회귀가 적용된 상기 두 번째 계층의 출력 데이터에 eLu 함수가 적용되어 출력될 수 있다.Next, FIG. 21 is a diagram of an example of a second encoder component neural network constituting the second encoder neural network of FIG. 16. As shown in FIG. 21, the second encoder component neural network may be composed of two layers, and linear regression and the eLu function are used as activation functions at the last stage. Co represents the number of filters used for convolution of CNN in the transmitter encoder. More specifically, in the second encoder component neural network, the first layer of the two layers receives input data with two input channels and outputs output data with Co number of output channels. Additionally, the second layer receives output data with Co number of output channels output from the first layer, and outputs output data with Co number of output channels. Thereafter, linear regression may be applied to the output data output from the second layer, and the eLu function may be applied to the output data of the second layer to which the linear regression has been applied and output.

도 20 및 도 21에서, Co의 값을 증가 시키면, 뉴럴 네트워크의 정확도는 증가하나, 학습시간과 복잡도가 함께 증가하게 되므로, 본 명세서에서 제안하는 방법은 Co=100인 경우에 바람직하게 적용될 수 있다.20 and 21, if the value of Co is increased, the accuracy of the neural network increases, but the learning time and complexity also increase, so the method proposed in this specification can be preferably applied when Co = 100. .

도 22는 본 명세서에서 제안하는 뉴럴 네트워크 구성 단위에 기초하여 구성되는 수신단 디코더 뉴럴 네트워크의 일 예를 나타낸 도이다.Figure 22 is a diagram showing an example of a receiving-end decoder neural network constructed based on the neural network structural unit proposed in this specification.

먼저, 도 22는 도 17의 제 1 디코더 뉴럴 네트워크(g1) 및 제 2 디코더 뉴럴 네트워크(g2)를 구성하는 일 예에 관한 도이다. 도 22에 도시된 것과 같이, 제 1 인코더 컴포넌트 뉴럴 네트워크는 5개의 계층으로 구성될 수 있고, 마지막단에서 선형 회귀(Linear regression)와 sigmoid 함수가 활성화 함수로 사용된다. Ci는 제 1 디코더 뉴럴 네트워크(g1) 및 제 2 디코더 뉴럴 네트워크(g2)에서의 입력 디멘젼을 나타내는데, 제 1 디코더 뉴럴 네트워크(g1) 의 경우 Ci=5이고 Co=100, FT=5이다. 제 2 디코더 뉴럴 네트워크(g2)의 경우 Ci=8이고 Co=100, FT=5이다. 여기서, g2의 Ci=8인 이유는 채널로부터 수신하는 입력(x0, x1, x2)와 해당 기본 수신단 디코더 뉴럴 네트워크의 바로 이전에 연결된 기본 수신단 디코더 뉴럴 네트워크로부터 입력 받은 A priori data가 (FT, dimension=5)이기 때문이다. g1이 경우, 채널로부터 입력 데이터를 입력 받지 않으므로, Ci=5 이다.First, FIG. 22 is a diagram of an example of configuring the first decoder neural network (g1) and the second decoder neural network (g2) of FIG. 17. As shown in FIG. 22, the first encoder component neural network may be composed of five layers, and linear regression and sigmoid functions are used as activation functions at the last stage. Ci represents the input dimension in the first decoder neural network (g1) and the second decoder neural network (g2). For the first decoder neural network (g1), Ci = 5, Co = 100, and FT = 5. For the second decoder neural network (g2), Ci=8, Co=100, and FT=5. Here, the reason why Ci = 8 in g2 is that the input (x0, x1, This is because =5). In the case of g1, since no input data is received from the channel, Ci = 5.

여기서, Co 와 FT는 수신단 디코더 뉴럴 네트워크의 학습 전에 설정되는 값으로, Co 와 FT는 값이 커질수록 뉴럴 네트워크의 정확도는 증가하나, 학습시간과 복잡도가 증가된다.Here, Co and FT are values set before learning of the decoder neural network at the receiving end. As Co and FT become larger, the accuracy of the neural network increases, but learning time and complexity also increase.

활성화 함수(Activation functions) 결정 방법 - (제안 2)How to determine activation functions - (Proposal 2)

본 제안은 본 명세서에서 제안하는 뉴럴 네트워크 구성 방법에 적용될 수 있는 활성화 함수 선정 방법에 관한 것이다.This proposal concerns a method of selecting an activation function that can be applied to the neural network construction method proposed in this specification.

뉴럴 네트워크에 사용되는 활성화 함수와 관련하여 아래와 같은 요구사항이 존재한다.The following requirements exist regarding the activation function used in neural networks.

1. 뉴럴 네트워크에서 계층(Layer)을 깊게 쌓기 위해서는 비선형함수를 필요로 한다.1. In order to build deep layers in a neural network, a non-linear function is required.

2. 역-전파(Back-propagation) 시 기울기 소멸(Vanishing Gradient) 문제가 없는 함수를 사용해야 한다.2. During back-propagation, a function that does not have a vanishing gradient problem must be used.

위의 요구 사항을 만족하는 활성화 함수로 ReLu(Rectified Linear Unit)함수가 있다. 상기 ReLu 함수는 연산이 빠르고, 수렴속도가 빠르다는 장점이 있으나, 입력이 음수일 때, 기울기(Gradient)가 '0'이 되어 학습이 되지 않는다는 단점이 있다. 위와 같은 ReLu 함수의 단점을 보완하기 위해 3가지의 수정된 ReLu 함수가 사용될 수 있다.An activation function that satisfies the above requirements is the ReLu (Rectified Linear Unit) function. The ReLu function has the advantage of fast calculation and fast convergence, but has the disadvantage that when the input is negative, the gradient becomes '0' and learning is not possible. To compensate for the shortcomings of the above ReLu function, three modified ReLu functions can be used.

도 23은 본 명세서에서 제안하는 뉴럴 네트워크 구성 방법에서 사용될 수 있는 다양한 활성화 함수들의 예시를 나타낸 도면이다.Figure 23 is a diagram showing examples of various activation functions that can be used in the neural network construction method proposed in this specification.

도 23을 참조하면, ReLu 함수의 단점을 보완하기 위한 3가지 함수, 즉 PReLu 함수(2320), LeakyRelu 함수(2330) 및 eRelu 함수(2340)가 도시되어 있다. 도 23에서 도시된 활성화 함수들(2320, 2330, 2340)은 입력 값이 음인 경우에도 기울기가 0아님을 알 수 있다.Referring to FIG. 23, three functions to compensate for the shortcomings of the ReLu function, namely the PReLu function 2320, the LeakyRelu function 2330, and the eRelu function 2340, are shown. It can be seen that the slopes of the activation functions 2320, 2330, and 2340 shown in FIG. 23 are not 0 even when the input value is negative.

본 명세서에서 제안하는 SCNN-AE는 ReLu기반 다양한 함수에 대한 실험 결과 및 성능과 복잡도에 기초하여 적절한 활성화 함수를 결정할 수 있도록 설계될 수 있다. 본 제안에서는 도 23에서 도시된 함수들 중 ReLu(2310), PReLu(2320), eReLu(2340)에 기초하여 실험 결과 및 성능과 복잡도에 기초하여 뉴럴 네트워크에서 사용될 활성화 함수를 선택하는 것을 제안한다.The SCNN-AE proposed in this specification can be designed to determine an appropriate activation function based on experimental results, performance, and complexity of various ReLu-based functions. In this proposal, we propose to select an activation function to be used in the neural network based on experimental results, performance, and complexity based on ReLu (2310), PReLu (2320), and eReLu (2340) among the functions shown in FIG. 23.

상기 표 2는 ReLu(2310), PReLu(2320), eReLu(2340) 함수들의 수학식, 각각의 장/단점을 정리한 표이다.Table 2 above is a table summarizing the mathematical equations of the ReLu(2310), PReLu(2320), and eReLu(2340) functions and their respective advantages/disadvantages.

Figure pct00011
Figure pct00011

eReLu 함수는 exponential 함수가 사용되어 함수의 복잡도는 증가하지만, 음수 값에 대해서 비선형성이 나머지 2개의 함수들에 비해 강하므로 음수 값에서 나머지 2개의 함수들에 비해서 더 좋은 성능을 낼 수 있다. PReLu는 성능과 복잡도 측면에서 모두 이득을 줄 수 있는 형태로, 나머지 2개의 함수들의 중간 성능을 가질 것을 기대할 수 있다. 특히, PReLu의 상수 'a'의 값은 뉴럴 네트워크의 학습(Training)을 통해 결정될 수 있다.The eReLu function uses an exponential function, which increases the complexity of the function, but its nonlinearity is stronger for negative values than the other two functions, so it can perform better than the other two functions for negative values. PReLu is a form that can provide benefits in terms of both performance and complexity, and can be expected to have performance intermediate to the remaining two functions. In particular, the value of the constant 'a' of PReLu can be determined through training of a neural network.

인터리버 디자인(Interleaver Design) 방법 - (제안 3)Interleaver Design Method - (Proposal 3)

본 제안은 송신단 인코더 뉴럴 네트워크 및 수신단 디코더 뉴럴 네트워크에서 사용되는 인터리버의 디자인에 관한 것인데, 인터리버의 사용을 통하여 아래와 같은 이득을 얻을 수 있다.This proposal concerns the design of an interleaver used in the transmitter encoder neural network and the receiver decoder neural network. The following benefits can be obtained through the use of the interleaver.

1) 인코딩에서 인터리버를 사용함으로써, 코딩의 성능에 가장 큰 영향을 미치는 Block length가 커지는 효과가 있다.1) Using an interleaver in encoding has the effect of increasing the block length, which has the greatest impact on coding performance.

2) 디코딩에서 인터리버/디-인터리버를 사용함으로써, 수신단 디코더 뉴럴 네트워크를 구성하는 제 1 디코더 뉴럴 네트워크(g1)과 제 2 디코더 뉴럴 네트워크(g2) 간의 반복 디코딩(iterative decoding)이 가능해 진다. 디코더 단에서는 2개의 디코더가 서로 상관되지 않은(uncorrelated) 정보를 사용해서 디코딩 한다. 일반적으로 인터리버의 크기가 커질수록, 임의성(randomness)이 증가해서 디코더 성능이 증가할 수 있다.2) By using an interleaver/de-interleaver in decoding, iterative decoding is possible between the first decoder neural network (g1) and the second decoder neural network (g2) that constitute the decoder neural network at the receiving end. At the decoder stage, two decoders decode using uncorrelated information. In general, as the size of the interleaver increases, randomness increases and decoder performance can increase.

본 제안에서는 아래의 2가지 요구 사항을 만족하도록 인터리버를 디자인 하도록 한다.In this proposal, the interleaver is designed to satisfy the following two requirements.

1. 임의성(Randomness)이 일정 수준 이상 보장될 것.1. Randomness must be guaranteed at a certain level.

2. 구현의 용이성을 고려하여, 인터리버 패턴(Interleaver pattern) 생성을 위해 테이블(Table)이 아닌 수식으로 표현 가능할 것. 이는 정보 크기(Information size)별로 테이블을 구성하는 경우 구현의 복잡도가 증가되기 때문이다.2. Considering ease of implementation, it can be expressed as a formula rather than a table to create an interleaver pattern. This is because the complexity of implementation increases when tables are organized by information size.

3. 하드웨어(H/W)가 지원될 경우, 병렬 프로세싱(Parallel processing)이 가능한 구조일 것.3. If hardware (H/W) is supported, the structure must be capable of parallel processing.

위의 요구사항을 만족하는 인터리버 생성 방법으로 QPP(Quadratic Polynomial Permutation) 인터리버가 있을 수 있다. 상기 QPP 인터리버는 아래와 같은 수학식에 기초하여 생성될 수 있다.A method of generating an interleaver that satisfies the above requirements may be a Quadratic Polynomial Permutation (QPP) interleaver. The QPP interleaver can be generated based on the equation below.

Figure pct00012
Figure pct00012

여기서, L은 인터리버의 크기이고, f0은 상수 오프셋(constant offset)인데, 특히, 본 제안에서는 상기 f0=0으로 정의한다. f1은 상기 L과 서로소 관계를 만족하는 소수(prime number)이다. f1이 상기 L의 값과 상관 없이 L과 서로소 관계에 있도록 하기 위해, 상기 f1의 값은 소수로 결정될 수 있다. f2는 L의 약수(fraction)들 중 2의 거듭 제곱 수(power of 2)에 해당하는 수이다. f2를 2의 거듭 제곱 수로 설정하는 것은 수식을 단순하게 구성하기 위함이다. 여기서, f2의 값에 기초하여 최대 병렬 연산 단위가 결정될 수 있다. 가능한 Parallel fact는 f2의 공약수들로 구성될 수 있다. 예를 들어, f2=16인 경우, 16의 약수는 (1,2,4,8,16)이고, 이 약수들이 가능한 parallel fact가 된다.Here, L is the size of the interleaver, and f0 is a constant offset. In particular, in this proposal, f0 is defined as f0=0. f1 is a prime number that satisfies the disjoint relationship with L. In order for f1 to be disjointly related to L regardless of the value of L, the value of f1 may be determined to be a prime number. f2 is a number corresponding to the power of 2 among the factors of L. Setting f2 to a power of 2 is to simplify the formula. Here, the maximum parallel operation unit may be determined based on the value of f2. Possible parallel facts can consist of common divisors of f2. For example, if f2=16, the divisors of 16 are (1,2,4,8,16), and these divisors are possible parallel facts.

이 때, 모든 인터리버 길이 L에 대해서 QPP 파라미터들을 정의하는 복잡하므로, 피벗(pivot)에 해당하는 인터리버 사이즈 L을 정의하고, 피벗 사이의 정보 크기(information size) K는 L >= K와 같은 관계로 정의한다. 즉, K보다 큰 수중 가장 작은 L이 인터리버의 크기로 결정된다. 아래의 표 3의 규칙에 따라서 인터리빙이 수행될 수 있다.At this time, because it is complicated to define QPP parameters for all interleaver lengths L, the interleaver size L corresponding to the pivot is defined, and the information size K between the pivots is in the relationship such that L >= K. define. In other words, the smallest L among those larger than K is determined as the size of the interleaver. Interleaving can be performed according to the rules in Table 3 below.

Figure pct00013
Figure pct00013

도 24 및 도 25는 본 명세서에서 제안하는 인터리버 디자인 방법의 일 예를 나타낸 도이다.Figures 24 and 25 are diagrams showing an example of the interleaver design method proposed in this specification.

보다 구체적으로, 도 24 및 도 25는 인터리버의 길이 L = 16이고, 상기 수학식 2의 f0=0, f1=3, f2=4이며, 정보 크기(information size) K=16인 경우에 관한 것이다. 상기 수학식 2에 L = 16, f0=0, f1=3, f2=4가 적용되어 아래와 같은 수식에 기초하여 인터리빙이 수행될 수 있다.More specifically, Figures 24 and 25 relate to the case where the length of the interleaver L = 16, f0 = 0, f1 = 3, f2 = 4 in Equation 2 above, and information size K = 16. . By applying L = 16, f0 = 0, f1 = 3, and f2 = 4 to Equation 2 above, interleaving can be performed based on the equation below.

Figure pct00014
Figure pct00014

보다 구체적으로, 도 24 및 도 25는 인터리버의 길이 L = 16이고, 상기 수학식 2의 f0=0, f1=3, f2=4이며, 정보 크기(information size) K=16인 경우에 관한 것이다. 상기 수학식 2에 L = 16, f0=0, f1=3, f2=4가 적용되어 아래와 같은 수식에 기초하여 인터리빙이 수행될 수 있다.More specifically, Figures 24 and 25 relate to the case where the length of the interleaver L = 16, f0 = 0, f1 = 3, f2 = 4 in Equation 2 above, and information size K = 16. . By applying L = 16, f0 = 0, f1 = 3, and f2 = 4 to Equation 2 above, interleaving can be performed based on the equation below.

도 24는 병렬 연산이 수행되지 않는, 즉 single bank memory의 경우를 나타낸 도이다.Figure 24 is a diagram showing a case where parallel computation is not performed, that is, a single bank memory.

도 25는 2개의 인터리빙 연산이 병렬적으로 수행되는, 즉 2-bank memory의 경우를 나타낸 도이다. 도 25를 참조하면, 2-bank memory인 경우, 1st bank(0~7)과 2nd bank(8~15)가 동시에 활성화 되는 경우(즉, memory conflict)가 생기기 않음을 알 수 있다. 즉, 1st bank에서 0~7 중 하나의 값이 활성화되는 경우, 2nd bank에서는 8~15 중 하나의 값만이 활성화된다. 반대로, 1st bank에서 8~15 중 하나의 값이 활성화되는 경우, 2nd bank에서는 0~7 중 하나의 값만이 활성화된다.Figure 25 is a diagram showing a case in which two interleaving operations are performed in parallel, that is, a 2-bank memory. Referring to Figure 25, it can be seen that in the case of 2-bank memory, when the 1st bank (0~7) and the 2nd bank (8~15) are activated at the same time (i.e., memory conflict) does not occur. That is, if one value from 0 to 7 is activated in the 1st bank, only one value from 8 to 15 is activated in the 2nd bank. Conversely, if one value from 8 to 15 is activated in the 1st bank, only one value from 0 to 7 is activated in the 2nd bank.

풀링 계층(Pooling layer) 구성 방법-(제안 4)Pooling layer configuration method - (Proposal 4)

CNN의 형태를 갖는 딥 러닝(Deep Learning) 구조에서 아래와 같은 2가지 이유로 풀링(Pooling) 기법이 사용된다.In a deep learning structure in the form of CNN, the pooling technique is used for the following two reasons.

1) 과적합(Over fitting)을 방지할 수 있음. 여기서, 과적합이란 뉴럴 네트워크가 학습 데이터에 대해 과하게 학습하게 되어, 실제 데이터에 대한 오차가 증가하는 현상을 의미한다.1) Overfitting can be prevented. Here, overfitting refers to a phenomenon in which the neural network overlearns the training data, thereby increasing errors in the actual data.

2) 입력 데이터로부터 추출된 특징(Feature)을 유지하면서도 추출된 특징의 디멘젼(dimension)을 줄일 수 있기 때문에 뉴럴 네트워크의 복잡도를 줄일 수 있음.2) The complexity of the neural network can be reduced because the dimensions of the extracted features can be reduced while maintaining the features extracted from the input data.

일반적으로, CNN 형태의 뉴럴 네트워크는 영상처리(인식, 분류 등)에서 많이 사용된다. 이 때, 영상처리의 CNN에서 풀링을 사용하는 것은, 한 장의 이미지(Image)(입력 데이터)에서 Cout(Number of out channels)는 변경하지 않고, 각각의 채널에서의 상기 한 장의 이미지로부터 추출된 특징(출력 데이터)의 디멘젼(Dimension)을 줄이는 것으로 이해될 수 있다.In general, CNN-type neural networks are widely used in image processing (recognition, classification, etc.). At this time, using pooling in CNN of image processing means that the Cout (Number of out channels) in one image (input data) is not changed, and the features extracted from the one image in each channel are used. It can be understood as reducing the dimension of (output data).

도 26은 본 명세서에서 제안하는 풀링 계층 구성 방법의 이해를 돕기 위한 도이다.Figure 26 is a diagram to help understand the pooling layer configuration method proposed in this specification.

보다 구체적으로, 도 26은 CNN에서 풀링을 적용하여 각 채널에서의 출력 데이터의 디멘젼을 줄이는 기존 방식의 일 예에 관한 것이다. CNN에서, 컨볼루션 계층은 입력 데이터에 필터링을 수행하여 특징 맵(Feature map)을 생성하고, 상기 특징 맵에 활성화 함수가 적용되어 활성화 맵(Activation Map)을 생성한다. 즉, 하나의 컨볼루션 계층의 최종 출력 결과로서 활성화 맵이 생성될 수 있다. 이 때, 특징 맵/활성화 맵의 채널 개수는 입력 데이터에 적용된 필터의 개수만큼의 값을 갖는다. 풀링은 상기 활성화 맵에 적용되는데, 풀링을 적용함으로써 상기 활성화 맵의 크기(디멘젼)가 감소될 수 있다.More specifically, Figure 26 relates to an example of an existing method for reducing the dimension of output data in each channel by applying pooling in CNN. In CNN, the convolution layer performs filtering on input data to generate a feature map, and an activation function is applied to the feature map to generate an activation map. That is, an activation map can be created as the final output result of one convolution layer. At this time, the number of channels in the feature map/activation map has a value equal to the number of filters applied to the input data. Pooling is applied to the activation map. By applying pooling, the size (dimension) of the activation map can be reduced.

도 26을 참조하면, 4*4 크기의 활성화 맵(2610)에 2*2 크기의 풀링이 적용되고, 그 결과로서 활성화 맵(2610)의 크기가 감소되어 2*2 크기의 출력 데이터가 생성될 수 있다. 도 26에서, 2620은 풀링 윈도우 내에서 가장 큰 값을 선택하는 방식으로 풀링 계층의 출력 데이터를 생성하는 최대 풀링(max pooling) 방식을 나타내고, 2630은 풀링 윈도우 내에 포함된 값들의 평균을 취하는 방식으로 풀링 계층의 출력 데이터를 생성하는 평균 풀링(average pooling) 방식을 나타낸다.Referring to FIG. 26, pooling of a size of 2*2 is applied to the activation map 2610 of a size of 4*4, and as a result, the size of the activation map 2610 is reduced to generate output data of a size of 2*2. You can. In Figure 26, 2620 represents a max pooling method that generates output data of the pooling layer by selecting the largest value within the pooling window, and 2630 represents a method that takes the average of the values included in the pooling window. Indicates the average pooling method that generates the output data of the pooling layer.

영상 이미지는 상하좌우 픽셀 간의 상관성(correlation)이 크기 때문에, 도 26에서 설명한 방식에 따라 풀링을 적용하여 컨볼루션 레이어의 출력 데이터의 디멘젼(dimension)을 줄이더라도 출력 데이터의 특징(feature)을 유지하는 것이 용이할 수 있다.Since the video image has a large correlation between the top, bottom, left, and right pixels, even if the dimension of the output data of the convolution layer is reduced by applying pooling according to the method described in Figure 26, the features of the output data are maintained. It can be easy.

반면, 영상 이미지 처리의 경우와 달리, 본 명세서에서 제안하는 방법들이 적용되는 코딩(coding)에서는 입력 데이터가 랜덤(random)하다. 따라서, 입력 데이터의 전후(또는 좌우)간에 상관성이 존재하지 않는다. 이와 같은 이유로, 본 명세서에서 제안하는 방법들이 적용되는 코딩에서는 풀링을 도 26에서 설명한 방식으로는 적용하기 어려울 수 있다.On the other hand, unlike the case of video image processing, input data is random in coding to which the methods proposed in this specification are applied. Therefore, there is no correlation between the front and back (or left and right sides) of the input data. For this reason, it may be difficult to apply pooling in the manner described in FIG. 26 in coding to which the methods proposed in this specification are applied.

도 27은 뉴럴 네트워크에 사용되는 필터 수의 증가에 따른 뉴럴 네트워크의 학습 능력의 변화를 나타낸 도이다. 보다 구체적으로, 도 27은 송신단 인코더 뉴럴 네트워크는 2 계층의 CNN으로 구성되고, 수신단 디코더 뉴럴 네트워크는 5 계층의 CNN으로 구성된 경우에 관한 것이다.Figure 27 is a diagram showing changes in the learning ability of a neural network as the number of filters used in the neural network increases. More specifically, Figure 27 relates to a case where the encoder neural network at the transmitting end is composed of a 2-layer CNN, and the decoder neural network at the receiving end is composed of a 5-layer CNN.

도 27에 도시된 것과 같이, 많은 수의 필터가 사용될수록 뉴럴 네트워크의 학습 능력이 증가될 수 있으나, 필터의 수는 CNN에서의 복잡도와 직결된다.As shown in Figure 27, the learning ability of the neural network can increase as a larger number of filters are used, but the number of filters is directly related to the complexity of the CNN.

본 제안은 출력 채널의 수를 줄이기 위해 풀링 기법을 적용하는 것인데, 이를 통해 성능의 감소(Loss)는 최소화 하면서 뉴럴 네트워크의 복잡도를 감소시킬 수 있다. 즉, 기존 CNN 풀링 기법은 컨볼루션 계층의 출력 채널 수는 유지하면서, 각 채널의 데이터의 크기를 줄이는 방식인 반면, 본 제안의 풀링 기법은 각 채널의 데이터의 크기는 유지하고, 컨볼루션 계층의 출력 채널 수를 줄이는 방식이다.This proposal applies a pooling technique to reduce the number of output channels, which can reduce the complexity of the neural network while minimizing performance loss. In other words, while the existing CNN pooling technique maintains the number of output channels of the convolution layer and reduces the size of the data in each channel, the pooling technique of this proposal maintains the size of the data in each channel and reduces the size of the data in the convolution layer. This method reduces the number of output channels.

또한, 본 제안은 풀링 계층의 위치를 기존의 CNN에서의 위치와 달리 구성하는 것을 추가적으로 제안한다.In addition, this proposal additionally proposes configuring the location of the pooling layer differently from the location in the existing CNN.

도 28은 본 명세서에서 제안하는 풀링 계층 구성 방법의 일 예를 나타낸 도이다.Figure 28 is a diagram showing an example of the pooling layer configuration method proposed in this specification.

도 28을 참조하면, 2810은 입력 데이터의 필터링을 위한 필터링 함수, 활성화 함수 및 풀링 계층이 순차적으로 위치하는 기존의 CNN 형태를 나타낸 것이다.Referring to FIG. 28, 2810 shows a conventional CNN form in which a filtering function, an activation function, and a pooling layer for filtering input data are located sequentially.

반면, 2820에서는, 활성화 함수 및 풀링 계층의 위치가 서로 바뀌게 되어, CNN은 입력 데이터의 필터링을 위한 필터링 함수, 풀링 계층 및 활성화 함수가 순차적으로 위치하는 형태를 갖는다. 2820에서, 풀링 계층은 필터링 함수의 출력 데이터의 채널 수를 감소시킬 수 있다. 풀링 계층에 의하여 필터링 함수의 출력 데이터에 풀링이 적용된 경우, 상기 필터링 함수의 출력 데이터는 출력 채널의 수가 감소되므로, 활성화 함수의 수도 감소된 출력 채널의 수만큼 감소하게 된다.On the other hand, in 2820, the locations of the activation function and the pooling layer are changed, so the CNN has a form in which the filtering function, the pooling layer, and the activation function for filtering input data are located sequentially. At 2820, the pooling layer may reduce the number of channels of output data of the filtering function. When pooling is applied to the output data of the filtering function by a pooling layer, the number of output channels of the output data of the filtering function is reduced, and thus the number of activation functions is also reduced by the reduced number of output channels.

본 제안에서의 풀링이 적용되면 뉴럴 네트워크의 복잡도가 감소되는 장점이 있으나, 풀링이 과도하게 적용되는 경우, 출력 데이터의 특징(Feature)이 사라지는 문제가 생길 수 있다. 따라서, 본 제안은 송신단 인코더 뉴럴 네트워크 및 수신단 디코더 뉴럴 네트워크를 구성하는 적어도 하나 이상의 컨볼루션 계층들 중 첫 번째 컨볼루션 계층에서만 풀링을 적용하는 경우에 바람직하게 적용될 수 있다.Applying pooling in this proposal has the advantage of reducing the complexity of the neural network, but if pooling is applied excessively, a problem may arise where features of the output data disappear. Therefore, this proposal can be preferably applied when pooling is applied only to the first convolutional layer among at least one convolutional layer constituting the encoder neural network at the transmitting end and the decoder neural network at the receiving end.

도 29는 풀링 계층이 적용된 뉴럴 네트워크 구성 단위(Conv1dCode) 구조의 일 예를 나타낸 도이다.Figure 29 is a diagram showing an example of a neural network unit (Conv1dCode) structure to which a pooling layer is applied.

보다 구체적으로, 도 29는 도 19에서 설명된 뉴럴 네트워크 구성 단위(Conv1dCode)에 본 제안의 풀링이 적용된 경우를 예시한다.More specifically, Figure 29 illustrates a case where the pooling of this proposal is applied to the neural network configuration unit (Conv1dCode) described in Figure 19.

도 29에서, 2910은 도 19에서 설명된 뉴럴 네트워크 구성 단위를 나타낸다. 2920은 본 제안의 출력 데이터의 채널 수를 감소시키는 방식을 사용하는 풀링 계층이 뉴럴 네트워크 구성 단위에 더 포함되되, 뉴럴 네트워크 구성 단위는 입력 데이터의 필터링을 위한 필터링 함수(Conv1d), 활성화 함수 및 풀링 계층이 순차적으로 위치하는 구조로 구성된다. 2930은 본 제안의 출력 데이터의 채널 수를 감소시키는 방식을 사용하는 풀링 계층이 뉴럴 네트워크 구성 단위에 더 포함되되, 뉴럴 네트워크 구성 단위는 입력 데이터의 필터링을 위한 필터링 함수, 풀링 계층 및 활성화 함수가 순차적으로 위치하는 구조로 구성된다. 풀링 계층을 활성화 함수 앞에 위치시킴으로써 필터링 함수 출력 데이터의 채널의 수가 감소되므로, CNN의 복잡도가 감소될 수 있다. 도 29에서, Cin은 입력 데이터의 입력 채널의 수, k는 커널 크기(kernel-size), Cout은 필터링 함수의 출력 데이터의 출력 채널 수이다. 앞서 설명된 최대 풀링과 평균 풀링 중에서 하나가 풀링 방법으로 선택될 수 있다. 잡음(Noise) 효과를 감소시키기 위해, 본 제안은 평균 풀링이 사용되는 경우에 대하여 바람직하게 적용될 수 있다.In FIG. 29, 2910 represents the neural network structural unit described in FIG. 19. 2920 further includes a pooling layer in the neural network unit that uses a method of reducing the number of channels of the output data of this proposal, and the neural network unit includes a filtering function (Conv1d), activation function, and pooling for filtering the input data. It consists of a structure in which the layers are located sequentially. 2930 further includes a pooling layer in the neural network unit that uses a method of reducing the number of channels of the output data of this proposal, and the neural network unit includes a filtering function for filtering the input data, a pooling layer, and an activation function sequentially. It consists of a structure located at . By placing the pooling layer in front of the activation function, the number of channels of the filtering function output data is reduced, so the complexity of the CNN can be reduced. In Figure 29, Cin is the number of input channels of input data, k is the kernel size (kernel-size), and Cout is the number of output channels of output data of the filtering function. One of the maximum pooling and average pooling described above may be selected as the pooling method. To reduce noise effects, this proposal can be preferably applied when average pooling is used.

도 30은 본 명세서에서 제안하는 풀링 계층 구성 방법의 수신단 디코더 뉴럴 네트워크에의 적용 여부에 기초한 복잡도의 비교 분석 결과를 나타낸 도이다. 보다 구체적으로, 도 30은 Block length=100, 디코더 특징 크기(Decoder feature size)=5, 커널 크기(kernel_size)=5, 필터의 개수(# of filter)=100로 설정된 경우에 관한 것며, 풀링이 적용되지 않은 수신단 디코더 뉴럴 네트워크(3010)와 첫 번째 계층에서만 풀링이 적용된 수신단 디코더 뉴럴 네트워크(3020)의 복잡도를 비교 분석한 결과에 관한 것이다.Figure 30 is a diagram showing the results of a comparative analysis of complexity based on whether or not the pooling layer configuration method proposed in this specification is applied to the decoder neural network at the receiving end. More specifically, Figure 30 relates to the case where Block length = 100, decoder feature size (Decoder feature size) = 5, kernel size (kernel_size) = 5, number of filters (# of filter) = 100, and pooling This relates to the results of a comparative analysis of the complexity of a receiving decoder neural network (3010) where pooling was not applied and a receiving decoder neural network (3020) to which pooling was applied only in the first layer.

첫 번째 계층에서만 풀링이 적용된 수신단 디코더 뉴럴 네트워크(3020)에서의 첫 번째 계층의 덧셈 연산을 참고하면, 수신단 디코더 뉴럴 네트워크(3020)에서 적용되는 풀링은 전체 100개의 출력 채널들에 대하여 2개의 출력 채널씩 더하여 평균을 취하는 방식의 평균 풀링을 사용하므로, 풀링이 적용되지 않은 수신단 디코더 뉴럴 네트워크(3010)의 경우와 비교하여 50회의 덧셈 연산이 추가적으로 수행된다. 반면, 첫 번째 계층에서만 풀링이 적용된 수신단 디코더 뉴럴 네트워크(3020)에서의 첫 번째 계층의 활성화 함수의 개수(ACT)를 참고하면, 풀링을 통해 출력 채널의 개수가 100개에서 50개로 감소되므로, 풀링이 적용되지 않은 수신단 디코더 뉴럴 네트워크(3010)의 경우와 비교하여, 활성화 함수의 개수가 50개 덜 사용된다.Referring to the addition operation of the first layer in the receiving end decoder neural network 3020 in which pooling is applied only in the first layer, the pooling applied in the receiving end decoder neural network 3020 is applied to 2 output channels for a total of 100 output channels. Since average pooling, which takes the average by adding each piece, is used, 50 addition operations are additionally performed compared to the case of the receiving decoder neural network 3010 in which pooling is not applied. On the other hand, referring to the number of activation functions (ACT) of the first layer in the receiving decoder neural network 3020 in which pooling is applied only to the first layer, the number of output channels is reduced from 100 to 50 through pooling, so pooling Compared to the case of the receiving end decoder neural network 3010 where this is not applied, 50 fewer activation functions are used.

도 30에서, 두 번째 계층부터 다섯 번째 계층 및 최종 결과에 대한 비교 분석 결과를 살펴보면, 곱셈(Mul), 덧셈(Add), 활성화 함수의 수(ACT)가 풀링을 적용하지 않은 경우에 비하여 전체적으로 약 50%정도 감소된다.In Figure 30, looking at the comparative analysis results for the second to fifth layers and the final result, the number of multiplication (Mul), addition (Add), and activation functions (ACT) is approximately lower overall than in the case where pooling was not applied. It is reduced by about 50%.

도 30에서는 첫 번째 계층에만 풀링이 적용된 경우를 설명하였으나, 두 번째 계층(Layer#2)이후의 계층에도 풀링이 적용 가능함은 물론이다. 두 번째 계층 이후의 계층에도 풀링을 적용하는 경우, 복잡도가 크게 감소할 수 있으나 성능저하가 야기될 수 있다. 따라서, 성능과 복잡도의 Trade-off를 고려하여 풀링을 적용할 계층이 결정될 수 있다.In Figure 30, the case where pooling is applied only to the first layer is explained, but of course, pooling can also be applied to layers after the second layer (Layer #2). If pooling is applied to layers after the second layer, complexity can be greatly reduced, but performance may be degraded. Therefore, the layer to which pooling is applied can be determined considering the trade-off between performance and complexity.

높은 코드 레이트 달성을 위한 레이트-매칭(Rate-Matching for higher code-rate) 방법 - (제안 5)Rate-Matching for higher code-rate method - (Proposal 5)

본 명세서에서 제안하는 SCNN-AE 구조에서, 송신단 인코더 뉴럴 네트워크(101)는 코드-레이트(Code-rate)가 1/3인 코드를 사용하는 경우에 대하여 앞서 설명하였다. 송신단 인코더 뉴럴 네트워크에서 1/3보다 큰 값의 코드-레이트가 사용되어야 하는 경우, 이 때 펀쳐링(Puncturing)을 통해서1/3보다 큰 값의 코드-레이트가 생성될 수 있다.In the SCNN-AE structure proposed in this specification, the case where the transmitter encoder neural network 101 uses a code with a code-rate of 1/3 has been previously described. If a code-rate greater than 1/3 must be used in the transmitter encoder neural network, a code-rate greater than 1/3 may be generated through punching.

도 31은 본 명세서에서 제안하는 높은 코드 레이트 달성을 위한 레이트-매칭 방법의 일 예를 나타낸 도이다. 도 31에서, 레이트-매칭(rate-matching)(3104) 블록에서 펀쳐링이 수행되고, 수신단 디코더(103)는 디-레이트 매칭(de-rate matching) 블록(3105)을 통해 1/3보다 큰 값의 코드-레이트로 인코딩된 송신 신호를 복원할 수 있다. 이 때, 송신단 인코더(101)의 레이트 매칭/수신단 디코더(103)의 디-레이트 매칭을 위해 펀쳐링 패턴(Puncturing patterns)이 송신단 인코더(101) 및 수신단 디코더(103)에 제공될 수 있다. 여기서, 상기 펀쳐링 패턴은 송신단/수신단 에게 사전에 정의된 신호를 통해 제공될 수 있다.Figure 31 is a diagram showing an example of a rate-matching method for achieving a high code rate proposed in this specification. In Figure 31, punching is performed in the rate-matching (rate-matching) block 3104, and the receiving end decoder 103 receives a rate greater than 1/3 through the de-rate matching block (3105). A transmitted signal encoded with the code-rate of the value can be restored. At this time, punching patterns may be provided to the transmitter encoder 101 and the receiver decoder 103 for rate matching of the transmitter encoder 101/de-rate matching of the receiver decoder 103. Here, the punching pattern may be provided to the transmitting end/receiving end through a predefined signal.

성능 분석(Performance Analysis)Performance Analysis

이하에서는, 앞서 설명된 방법들이 송신단/수신단에 적용된 경우의 채널 코딩 성능 분석 결과를 살펴보도록 한다.Below, we will look at the channel coding performance analysis results when the methods described above are applied to the transmitter/receiver.

풀링 계층 구성 방법(제안 4) 적용 시의 성능 분석Performance analysis when applying the pooling layer configuration method (Proposal 4)

도 32는 본 명세서에서 제안하는 풀링 계층 구성 방법 적용 시의 채널 코딩 성능을 나타낸 도이다.Figure 32 is a diagram showing channel coding performance when applying the pooling layer configuration method proposed in this specification.

보다 구체적으로, 도 32는 본 명세서에서 제안하는 풀링 계층 구성 방법이 적용된 경우의 채널 코딩 성능과 상기 풀링 계층 구성 방법이 적용되지 않은 경우의 채널 코딩 성능을 나타낸 도이다. 도 32에서의 y축은 BER을 나타내고, x는 SNR을 나타낸다. BER의 값이 작을수록 채널 코딩의 성능이 우수한 것으로 해석될 수 있으므로, 동일한 SNR값에서 더 아래에 위치하는 그래프가 채널 코딩의 성능이 우수한 것으로 볼 수 있다.More specifically, Figure 32 is a diagram showing channel coding performance when the pooling layer configuration method proposed in this specification is applied and channel coding performance when the pooling layer configuration method is not applied. The y-axis in Figure 32 represents BER, and x represents SNR. The smaller the BER value, the better the channel coding performance. Therefore, the graph located lower at the same SNR value can be seen as having superior channel coding performance.

도 32에서, 3210은 전통적인 LTE 터보 코드를 사용하는 경우의 채널 코딩 성능을 나타낸다. 3220은 PCCC-AE가 사용된 경우의 채널 코딩 성능을 나타내고, 3230은 SCCC-AE가 사용된 경우의 채널 코딩 성능을 나타낸다. 또한, 3240은 수신단 디코더에 풀링이 적용된 PCCC-AE가 사용되는 경우의 채널 코딩 성능을 나타내며, 3250은 수신단 디코더에 풀링이 적용된 SCCC-AE가 사용되는 경우의 채널 코딩 성능을 나타낸다. 마지막으로, 3260은 수신단 디코더에 풀링이 적용된 SCCC-AE가 사용되고, 활성화 함수 이전에 풀링 계층이 위치하는 경우(즉, 제안 4)의 채널 코딩 성능을 나타낸다. 상기 풀링은 출력 채널의 채널 수를 감소시키는 방식으로 수행되는 평균 풀링(Average pooing)을 의미한다.In Figure 32, 3210 represents channel coding performance when using traditional LTE Turbo codes. 3220 represents the channel coding performance when PCCC-AE is used, and 3230 represents the channel coding performance when SCCC-AE is used. In addition, 3240 represents the channel coding performance when PCCC-AE with pooling applied to the receiving end decoder is used, and 3250 represents the channel coding performance when SCCC-AE with pooling applied to the receiving end decoder is used. Lastly, 3260 shows the channel coding performance when SCCC-AE with pooling applied to the receiving end decoder is used and the pooling layer is located before the activation function (i.e., proposal 4). The pooling refers to average pooling performed by reducing the number of output channels.

3260가 나타내는 그래프의 위치를 참고하면, 출력 채널 및 활성화 함수의 개수를 줄임으로써 복잡도가 크게 감소하였음에도 불구하고, SNR의 값의 1 내지 2인 지점에서부터는 3220 내지 3250 경우의 채널 코딩 성능과 비교하여 성능의 열화(Loss)가 거의 없음을 알 수 있다.Referring to the position of the graph indicated by 3260, although the complexity has been greatly reduced by reducing the number of output channels and activation functions, from the point of 1 to 2 of the SNR value, compared to the channel coding performance in the case of 3220 to 3250, It can be seen that there is almost no loss of performance.

상기 도 32의 그래프에서, 동일한 형태로 그려진 legend가 상/하로 존재하는 것은, 뉴럴 네트워크에 사용된 필터의 개수에 따른 것으로 이해될 수 있다. 즉, 동일한 형태로 그려진 legend 간의 성능차이는 뉴럴 네트워크에 사용된 필터의 개수로 인한 것으로 이해될 수 있다.In the graph of FIG. 32, the presence of legends drawn in the same shape above and below can be understood as depending on the number of filters used in the neural network. In other words, the performance difference between legends drawn in the same shape can be understood to be due to the number of filters used in the neural network.

인터리버 디자인 방법(제안 3) 적용 시의 성능 분석Performance analysis when applying interleaver design method (Proposal 3)

도 33 및 도 34는 본 명세서에서 제안하는 인터리버 디자인 방법 적용 시의 채널 코딩 성능을 나타낸 도이다.Figures 33 and 34 are diagrams showing channel coding performance when applying the interleaver design method proposed in this specification.

먼저, 도 33은 송신단 인코더 뉴럴 네트워크/수신단 디코더 뉴럴 네트워크에서 인터리버가 사용되지 않는 경우의 채널 코딩 성능과 인터리버가 사용되는 경우의 채널 코딩 성능을 나타낸 도이다.First, Figure 33 is a diagram showing channel coding performance when an interleaver is not used and channel coding performance when an interleaver is used in a transmitter encoder neural network/receiver decoder neural network.

도 33에서의 y축은 BER을 나타내고, x는 SNR을 나타낸다. BER의 값이 작을수록 채널 코딩의 성능이 우수한 것으로 해석될 수 있으므로, 동일한 SNR값에서 더 아래에 위치하는 그래프가 채널 코딩의 성능이 우수한 것으로 볼 수 있다. 도 33에서, 3310은 전통적인 LTE 터보 코드를 사용하는 경우의 채널 코딩 성능을 나타낸다. 3320은 PCCC-AE가 사용된 경우의 채널 코딩 성능을 나타내고, 3330은 SCCC-AE가 사용된 경우의 채널 코딩 성능을 나타낸다. 또한, 3340은 수신단 디코더에 풀링이 적용된 SCCC-AE가 사용되고, 활성화 함수 이전에 풀링 계층이 위치하는 경우의 채널 코딩 성능을 나타낸다. 이 때, 3310 내지 3340에서는 모두 인터리버가 사용된다. 마지막으로, 3350은 3340과 동일하나 인터리버가 사용되지 않는 경우의 채널 코딩 성능을 나타낸다. 도 33의 결과를 참조하면, SNR의 값이 변화에 따라, 인터리버가 사용되지 않는 경우가 다른 경우들에 비해서 가장 낮은 채널 코딩 성능을 보여줌을 알 수 있다. 도 33의 결과에 비추어, 양호한 채널 코딩 성능의 보장을 위해 인터리버가 사용되어야 함을 알 수 있다.The y-axis in Figure 33 represents BER, and x represents SNR. The smaller the BER value, the better the channel coding performance. Therefore, the graph located lower at the same SNR value can be seen as having superior channel coding performance. In Figure 33, 3310 represents channel coding performance when using traditional LTE Turbo codes. 3320 represents the channel coding performance when PCCC-AE is used, and 3330 represents the channel coding performance when SCCC-AE is used. In addition, 3340 represents the channel coding performance when SCCC-AE with pooling applied to the receiving end decoder is used and the pooling layer is located before the activation function. At this time, an interleaver is used in all 3310 to 3340. Lastly, 3350 is the same as 3340, but represents the channel coding performance when the interleaver is not used. Referring to the results of FIG. 33, it can be seen that as the value of SNR changes, the case where the interleaver is not used shows the lowest channel coding performance compared to other cases. In light of the results in FIG. 33, it can be seen that an interleaver should be used to ensure good channel coding performance.

상기 도 33의 그래프에서, 3320 내지 3350에 각각 대응되는 legend를 각각 점선/실선으로 나타낸 것은 뉴럴 네트워크에 사용된 필터의 개수에 따른 것으로 이해될 수 있다. 즉, 동일한 legend를 점선/실선으로 구분하여 그려진 것은 뉴럴 네트워크에 사용된 필터의 개수의 차이가 반영된 것으로 이해될 수 있다.In the graph of FIG. 33, the legends corresponding to numbers 3320 to 3350 are indicated by dotted/solid lines, respectively, which can be understood as depending on the number of filters used in the neural network. In other words, the fact that the same legend is drawn with a dotted/solid line can be understood as reflecting the difference in the number of filters used in the neural network.

다음, 도 34는 도 33의 3350의 경우에 대하여 인터리버 패턴을 다양하게 설정하여 적용한 경우들에 따른 채널 코딩 성능을 나타낸 도이다.Next, FIG. 34 is a diagram showing channel coding performance according to cases in which various interleaver patterns are set and applied to the case of 3350 in FIG. 33.

도 34에서, 앞서 제안 3에서 설명한 인터리버 파라미터 f0, f1 및 f2들 중, f0 = 0이 사용된다. 성능 분석의 결과, 도 34에 나타난 p0 내지 p7의 경우에서 채널 코딩의 성능은 대체적으로 유사하였으나, 채널 코딩 (f1, f2) = (11,32)인 경우가 가장 우수한 채널 코딩 성능을 나타내는 것이 확인되었다. 또한, 도 33의 3350의 경우에 대하여 (f1, f2) = (11,32)로 설정된 인터리버가 사용되는 경우의 채널 코딩 성능은 풀링이 적용되지 않은 SCCC-AE가 사용되는 경우의 채널 코딩 성능을 능가하는 것이 확인되었다.In FIG. 34, among the interleaver parameters f0, f1, and f2 previously described in Proposal 3, f0 = 0 is used. As a result of the performance analysis, the channel coding performance was generally similar in the cases of p0 to p7 shown in Figure 34, but it was confirmed that the channel coding (f1, f2) = (11,32) case showed the best channel coding performance. It has been done. In addition, for the case of 3350 in FIG. 33, the channel coding performance when an interleaver set to (f1, f2) = (11,32) is used is compared to the channel coding performance when SCCC-AE without pooling is used. It has been confirmed that it surpasses

다양한 활성화 함수에 따른 성능 분석Performance analysis according to various activation functions

도 35는 본 명세서에서 제안하는 다양한 활성화 함수의 사용에 따른 채널 코딩 성능을 나타낸 도이다.Figure 35 is a diagram showing channel coding performance according to the use of various activation functions proposed in this specification.

도 35에서의 y축은 BER을 나타내고, x는 SNR을 나타낸다. BER의 값이 작을수록 채널 코딩의 성능이 우수한 것으로 해석될 수 있으므로, 동일한 SNR값에서 더 아래에 위치하는 그래프가 채널 코딩의 성능이 우수한 것으로 볼 수 있다.The y-axis in Figure 35 represents BER, and x represents SNR. The smaller the BER value, the better the channel coding performance. Therefore, the graph located lower at the same SNR value can be seen as having superior channel coding performance.

도 35에서, 3510은 전통적인 LTE 터보 코드를 사용하는 경우의 채널 코딩 성능을 나타낸다. 3520은 PCCC-AE가 사용된 경우의 채널 코딩 성능을 나타내고, 3530은 SCCC-AE가 사용된 경우의 채널 코딩 성능을 나타낸다. 이 때, 3310 내지 3340에서는 모두 eLu 함수가 활성화 함수로 사용된다. 또한, 3540은 수신단 디코더에 풀링이 적용되고, 활성화 함수 이전에 풀링 계층이 위치하는 SCCC-AE가 사용된 경우의 채널 코딩 성능을 나타낸다. 3540에서는 eRelu 함수가 활성화 함수로 사용된다. 또한, 3550은 수신단 디코더에 풀링이 적용되고, 활성화 함수 이전에 풀링 계층이 위치하는 SCCC-AE가 사용된 경우의 채널 코딩 성능을 나타낸다. 3550에서는 Relu 함수가 활성화 함수로 사용된다. 3560은 multiple PRelu가 활성화 함수로 사용되는 SCCC-AE가 사용된 경우의 채널 코딩 성능을 나타내고, 3570은 single PRelu가 활성화 함수로 사용되는 SCCC-AE가 사용된 경우의 채널 코딩 성능을 나타낸다.In Figure 35, 3510 represents channel coding performance when using traditional LTE Turbo codes. 3520 represents the channel coding performance when PCCC-AE is used, and 3530 represents the channel coding performance when SCCC-AE is used. At this time, the eLu function is used as an activation function in all 3310 to 3340. Additionally, 3540 represents the channel coding performance when pooling is applied to the decoder at the receiving end and SCCC-AE, in which the pooling layer is located before the activation function, is used. In 3540, the eRelu function is used as an activation function. Additionally, 3550 represents the channel coding performance when pooling is applied to the decoder at the receiving end and SCCC-AE, in which the pooling layer is located before the activation function, is used. In 3550, the Relu function is used as an activation function. 3560 represents the channel coding performance when SCCC-AE, which uses multiple PRelu as an activation function, is used, and 3570 represents the channel coding performance when SCCC-AE, which uses a single PRelu as an activation function, is used.

Evaluation된 ACT함수는 eLu, ReLu, Single-PReLu, Multiple-PReLu가 사용되었다.The ACT functions evaluated were eLu, ReLu, Single-PReLu, and Multiple-PReLu.

도 35의 결과를 참조하면, eRelu 함수가 활성화 함수로 사용된 경우(3540)가 채널 코딩 성능이 가장 우수한 것으로 확인되나, 이 경우 exponential 함수를 구현해야 함으로 가장 복잡도가 높을 수 있다. 반면, Single-PReLu 함수가 활성화 함수로 사용된 경우(3580), 3540 경우보다 보다 성능 감소(loss)가 있지만, 복잡도 면에서 유리할 수 있다.Referring to the results of FIG. 35, it is confirmed that the channel coding performance is the best when the eRelu function is used as the activation function (3540), but in this case, the exponential function must be implemented, so the complexity may be the highest. On the other hand, when the Single-PReLu function is used as an activation function (3580), there is a performance loss compared to the 3540 case, but it can be advantageous in terms of complexity.

도 36은 본 명세서에서 제안하는 오토 인코더를 이용하는 무선 통신 시스템에서 신호를 송수신하기 위한 방법의 일례를 나타낸 순서도이다.Figure 36 is a flowchart showing an example of a method for transmitting and receiving signals in a wireless communication system using an auto encoder proposed in this specification.

도 36을 참조하면, 송신단은 사전 학습된 송신단 인코더 뉴럴 네트워크(neural network)에 기초하여 입력 데이터를 인코딩(encoding)한다(S3610).Referring to FIG. 36, the transmitter encodes input data based on a pre-trained transmitter encoder neural network (S3610).

이후, 상기 송신단은 상기 인코딩된 입력 데이터에 기초하여 상기 신호를 수신단으로 전송한다(S3620).Thereafter, the transmitting end transmits the signal to the receiving end based on the encoded input data (S3620).

이 때, 상기 송신단 인코더 뉴럴 네트워크는 (i) 상기 입력 데이터를 입력 받아 제 1 코드워드(codeword)를 출력하는 제 1 인코더 뉴럴 네트워크, (ii) 상기 제 1 코드워드를 입력 받아 인터리빙(interleaving)하고, 상기 인터리빙된 제 1 코드워드를 출력하는 인터리버(interleaver) 및 (iii) 상기 인터리빙된 제 1 코드워드를 입력 받아 상기 인코딩된 입력 데이터를 구성하는 제 2 코드워드를 출력하는 제 2 인코더 뉴럴 네트워크를 직렬적으로(serially) 포함한다.At this time, the transmitter encoder neural network is (i) a first encoder neural network that receives the input data and outputs a first codeword, (ii) receives the first codeword and interleaves it. , an interleaver that outputs the interleaved first codeword, and (iii) a second encoder neural network that receives the interleaved first codeword and outputs a second codeword constituting the encoded input data. Included serially.

추가적으로, 상기 제 1 인코더 뉴럴 네트워크는 n1개의 제 1 인코더 컴포넌트 뉴럴 네트워크로 구성되고, 상기 제 2 인코더 뉴럴 네트워크는 n2개의 상기 제 1 인코더 컴포넌트 뉴럴 네트워크 및 n3개의 제 2 인코더 컴포넌트 뉴럴 네트워크로 구성되고, 상기 n1, n2 및 n3는 0이 아닌 양의 정수일 수 있다.Additionally, the first encoder neural network consists of n1 first encoder component neural networks, and the second encoder neural network consists of n2 first encoder component neural networks and n3 second encoder component neural networks, The n1, n2, and n3 may be positive integers other than 0.

또한, 상기 제 1 인코더 뉴럴 네트워트의 코드 레이트(code rate)는 1/n1이고, 상기 제 2 인코더 뉴럴 네트워크의 코드 레이트는 n1/(n2+n3)일 수 있다.Additionally, the code rate of the first encoder neural network may be 1/n1, and the code rate of the second encoder neural network may be n1/(n2+n3).

그리고, 상기 제 1 인코더 컴포넌트 뉴럴 네트워크 및 상기 제 2 인코더 컴포넌트 뉴럴 네트워크 각각은 적어도 하나 이상의 계층(layer)으로 구성되고, 상기 제 1 인코더 컴포넌트 뉴럴 네트워크 및 상기 제 2 인코더 컴포넌트 뉴럴 네트워크는 입력 값에 대한 필터링(filtering)을 위한 (i) 필터링 함수 및 (ii) 상기 필터링 함수의 출력을 입력 받는 활성화 함수(activation function)를 포함하는 뉴럴 네트워크 구성 단위에 기초하여 구성될 수 있다.In addition, the first encoder component neural network and the second encoder component neural network each consist of at least one layer, and the first encoder component neural network and the second encoder component neural network are configured for input values. It may be configured based on a neural network unit including (i) a filtering function for filtering and (ii) an activation function that receives the output of the filtering function.

여기서, 상기 제 1 인코더 컴포넌트 뉴럴 네트워크 및 상기 제 2 인코더 컴포넌트 뉴럴 네트워크 각각은 2개의 계층(layer)으로 구성될 수 있다.Here, each of the first encoder component neural network and the second encoder component neural network may be composed of two layers.

또한, 상기 n1 및 상기 n2의 값은 동일하고, 상기 n3는 1일 수 있다.Additionally, the values of n1 and n2 may be the same, and n3 may be 1.

추가적으로, 상기 제 1 인코더 컴포넌트 뉴럴 네트워크는 하나의 입력 값을 입력 받는 제 1 뉴럴 네트워크 구성 단위 및 상기 제 1 뉴럴 네트워크 구성 단위의 출력을 입력 받는 제 2 뉴럴 네트워크 구성 단위를 포함하고, 상기 제 2 뉴럴 네트워크 구성 단위의 출력에 선형 회귀(Linear regression)를 적용하고, 상기 선형 회귀가 적용된 상기 제 2 뉴럴 네트워크 구성 단위의 출력에 eLu(exponential linear unit) 함수를 적용할 수 있다.Additionally, the first encoder component neural network includes a first neural network unit that receives one input value and a second neural network unit that receives an output of the first neural network unit, and the second neural network unit Linear regression may be applied to the output of the network component, and an eLu (exponential linear unit) function may be applied to the output of the second neural network component to which the linear regression is applied.

그리고, 상기 제 2 인코더 컴포넌트 뉴럴 네트워크는 상기 n1개의 입력 값을 입력 받는 제 3 뉴럴 네트워크 구성 단위 및 상기 제 3 뉴럴 네트워크 구성 단위의 출력 값을 입력 받는 제 4 뉴럴 네트워크 구성 단위를 포함하고, 상기 제 4 뉴럴 네트워크 구성 단위의 출력 값에 상기 선형 회귀를 적용하고, 상기 선형 회귀가 적용된 상기 제 4 뉴럴 네트워크 구성 단위의 출력값에 상기 eLu 함수를 적용할 수 있다.And, the second encoder component neural network includes a third neural network unit that receives the n1 input values and a fourth neural network unit that receives the output values of the third neural network unit, and the first The linear regression may be applied to the output value of four neural network constituent units, and the eLu function may be applied to the output value of the fourth neural network constituent unit to which the linear regression has been applied.

또한, 상기 제 1 뉴럴 네트워크 구성 단위 및 상기 제 3 뉴럴 네트워크 구성 단위는 상기 2개의 계층 중 하나인 제 1 계층을 구성하고, 상기 제 2 뉴럴 네트워크 구성 단위 및 상기 제 4 뉴럴 네트워크 구성 단위는 상기 2개의 계층 중 나머지 하나인 제 2 계층을 구성할 수 있다.In addition, the first neural network structural unit and the third neural network structural unit constitute a first layer, which is one of the two layers, and the second neural network structural unit and the fourth neural network structural unit constitute the second layer. A second layer, which is the remaining one of the layers, can be configured.

그리고, 상기 제 1 뉴럴 네트워크 구성 단위 내지 상기 제 4 뉴럴 네트워크 구성 단위 각각의 출력 값이 출력되는 출력 채널의 개수는 100일 수 있다.Additionally, the number of output channels through which output values of each of the first to fourth neural network units are output may be 100.

그리고, 상기 인터리버에 입력되는 상기 제 1 코드워드 비트열(bit stream) 내의 i+1번째 비트(bit)는 아래의 수학식에 기초하여 인터리빙되고,And, the i+1th bit in the first codeword bit stream input to the interleaver is interleaved based on the equation below,

Figure pct00015
Figure pct00015

여기서, L은 인터리버의 크기이고, f0은 상수 오프셋(constant offset)이고, f1은 상기 L과 서로소 관계를 만족하는 소수(prime number)이고, f2는 L의 약수(fraction)들 중 2의 거듭 제곱 수(power of 2)에 해당하는 수일 수 있다.Here, L is the size of the interleaver, f0 is a constant offset, f1 is a prime number that satisfies the disjoint relationship with L, and f2 is the power of 2 among the divisors of L. It may be a number corresponding to the power of 2.

또한, 상기 f0 은 0이고, 상기 제 1 코드워드의 비트열에 대하여 상기 f2의 값만큼 병렬(parallel) 연산이 수행될 수 있다.Additionally, f0 is 0, and a parallel operation can be performed on the bit string of the first codeword equal to the value of f2.

또한, 상기 적어도 하나 이상의 계층 중 가장 먼저 위치하는 계층을 구성하는 특정 뉴럴 네트워크 구성 단위는 상기 필터링 함수의 출력 채널의 수를 감소시키기 위한 풀링 계층(pooling layer)을 더 포함하고, 상기 풀링 계층은 상기 필터링 함수 및 상기 활성화 함수 사이에 위치할 수 있다.In addition, the specific neural network unit constituting the first layer among the at least one layer further includes a pooling layer for reducing the number of output channels of the filtering function, and the pooling layer is configured to reduce the number of output channels of the filtering function. It may be located between the filtering function and the activation function.

추가적으로, 상기 가장 먼저 위치하는 계층 이후에 위치하는 계층들을 구성하는 각각의 뉴럴 네트워크 구성 단위들은 상기 풀링 계층(pooling layer)을 더 포함할 수 있다.Additionally, each neural network unit constituting the layers located after the first layer may further include the pooling layer.

무선 통신 시스템에 사용되는 장치Devices used in wireless communication systems

이로 제한되는 것은 아니지만, 상술한 본 발명의 다양한 제안들은 기기들간에 무선 통신/연결(예, 5G)을 필요로 하는 다양한 분야에 적용될 수 있다.Although not limited thereto, the various proposals of the present invention described above can be applied to various fields requiring wireless communication/connection (eg, 5G) between devices.

이하, 도면을 참조하여 보다 구체적으로 예시한다. 이하의 도면/설명에서 동일한 도면 부호는 다르게 기술하지 않는 한, 동일하거나 대응되는 하드웨어 블록, 소프트웨어 블록 또는 기능 블록을 예시할 수 있다.Hereinafter, a more detailed example will be provided with reference to the drawings. In the following drawings/descriptions, identical reference numerals may illustrate identical or corresponding hardware blocks, software blocks, or functional blocks, unless otherwise noted.

도 37은 본 발명에 적용되는 통신 시스템을 예시한다.Figure 37 illustrates a communication system applied to the present invention.

도 37을 참조하면, 본 발명에 적용되는 통신 시스템(1)은 무선 기기, 기지국 및 네트워크를 포함한다. 여기서, 무선 기기는 무선 접속 기술(예, 5G NR(New RAT), LTE(Long Term Evolution))을 이용하여 통신을 수행하는 기기를 의미하며, 통신/무선/5G 기기로 지칭될 수 있다. 이로 제한되는 것은 아니지만, 무선 기기는 로봇(100a), 차량(100b-1, 100b-2), XR(eXtended Reality) 기기(100c), 휴대 기기(Hand-held device)(100d), 가전(100e), IoT(Internet of Thing) 기기(100f), AI기기/서버(400)를 포함할 수 있다. 예를 들어, 차량은 무선 통신 기능이 구비된 차량, 자율 주행 차량, 차량간 통신을 수행할 수 있는 차량 등을 포함할 수 있다. 여기서, 차량은 UAV(Unmanned Aerial Vehicle)(예, 드론)를 포함할 수 있다. XR 기기는 AR(Augmented Reality)/VR(Virtual Reality)/MR(Mixed Reality) 기기를 포함하며, HMD(Head-Mounted Device), 차량에 구비된 HUD(Head-Up Display), 텔레비전, 스마트폰, 컴퓨터, 웨어러블 디바이스, 가전 기기, 디지털 사이니지(signage), 차량, 로봇 등의 형태로 구현될 수 있다. 휴대 기기는 스마트폰, 스마트패드, 웨어러블 기기(예, 스마트워치, 스마트글래스), 컴퓨터(예, 노트북 등) 등을 포함할 수 있다. 가전은 TV, 냉장고, 세탁기 등을 포함할 수 있다. IoT 기기는 센서, 스마트미터 등을 포함할 수 있다. 예를 들어, 기지국, 네트워크는 무선 기기로도 구현될 수 있으며, 특정 무선 기기(200a)는 다른 무선 기기에게 기지국/네트워크 노드로 동작할 수도 있다.Referring to FIG. 37, the communication system 1 applied to the present invention includes a wireless device, a base station, and a network. Here, a wireless device refers to a device that performs communication using wireless access technology (e.g., 5G NR (New RAT), LTE (Long Term Evolution)) and may be referred to as a communication/wireless/5G device. Although not limited thereto, wireless devices include robots (100a), vehicles (100b-1, 100b-2), XR (eXtended Reality) devices (100c), hand-held devices (100d), and home appliances (100e). ), IoT (Internet of Thing) device (100f), and AI device/server (400). For example, vehicles may include vehicles equipped with wireless communication functions, autonomous vehicles, vehicles capable of inter-vehicle communication, etc. Here, the vehicle may include an Unmanned Aerial Vehicle (UAV) (eg, a drone). XR devices include AR (Augmented Reality)/VR (Virtual Reality)/MR (Mixed Reality) devices, HMD (Head-Mounted Device), HUD (Head-Up Display) installed in vehicles, televisions, smartphones, It can be implemented in the form of computers, wearable devices, home appliances, digital signage, vehicles, robots, etc. Portable devices may include smartphones, smart pads, wearable devices (e.g., smartwatches, smart glasses), and computers (e.g., laptops, etc.). Home appliances may include TVs, refrigerators, washing machines, etc. IoT devices may include sensors, smart meters, etc. For example, a base station and network may also be implemented as wireless devices, and a specific wireless device 200a may operate as a base station/network node for other wireless devices.

무선 기기(100a~100f)는 기지국(200)을 통해 네트워크(300)와 연결될 수 있다. 무선 기기(100a~100f)에는 AI(Artificial Intelligence) 기술이 적용될 수 있으며, 무선 기기(100a~100f)는 네트워크(300)를 통해 AI 서버(400)와 연결될 수 있다. 네트워크(300)는 3G 네트워크, 4G(예, LTE) 네트워크 또는 5G(예, NR) 네트워크 등을 이용하여 구성될 수 있다. 무선 기기(100a~100f)는 기지국(200)/네트워크(300)를 통해 서로 통신할 수도 있지만, 기지국/네트워크를 통하지 않고 직접 통신(e.g. 사이드링크 통신(sidelink communication))할 수도 있다. 예를 들어, 차량들(100b-1, 100b-2)은 직접 통신(e.g. V2V(Vehicle to Vehicle)/V2X(Vehicle to everything) communication)을 할 수 있다. 또한, IoT 기기(예, 센서)는 다른 IoT 기기(예, 센서) 또는 다른 무선 기기(100a~100f)와 직접 통신을 할 수 있다.Wireless devices 100a to 100f may be connected to the network 300 through the base station 200. AI (Artificial Intelligence) technology may be applied to wireless devices (100a to 100f), and the wireless devices (100a to 100f) may be connected to the AI server 400 through the network 300. The network 300 may be configured using a 3G network, 4G (eg, LTE) network, or 5G (eg, NR) network. Wireless devices 100a to 100f may communicate with each other through the base station 200/network 300, but may also communicate directly (e.g. sidelink communication) without going through the base station/network. For example, vehicles 100b-1 and 100b-2 may communicate directly (e.g. V2V (Vehicle to Vehicle)/V2X (Vehicle to everything) communication). Additionally, an IoT device (eg, sensor) may communicate directly with another IoT device (eg, sensor) or another wireless device (100a to 100f).

무선 기기(100a~100f)/기지국(200)-기지국(200)/무선 기기(100a~100f) 간에는 무선 통신/연결(150a, 150b)이 이뤄질 수 있다. 여기서, 무선 통신/연결은 상향/하향링크 통신(150a)과 사이드링크 통신(150b)(또는, D2D 통신)은 다양한 무선 접속 기술(예, 5G NR)을 통해 이뤄질 수 있다. 무선 통신/연결(150a, 150b)을 통해 무선 기기와 기지국/무선 기기는 서로 무선 신호를 송신/수신할 수 있다. 예를 들어, 무선 통신/연결(150a, 150b)은 도 1의 전체/일부 과정에 기반하여 다양한 물리 채널을 통해 신호를 송신/수신할 수 있다. 이를 위해, 본 발명의 다양한 제안들에 기반하여, 무선 신호의 송신/수신을 위한 다양한 구성정보 설정 과정, 다양한 신호 처리 과정(예, 채널 인코딩/디코딩, 변조/복조, 자원 매핑/디매핑 등), 자원 할당 과정 등 중 적어도 일부가 수행될 수 있다.Wireless communication/connection (150a, 150b) may be established between the wireless devices (100a~100f)/base station (200) and the base station (200)/wireless devices (100a~100f). Here, wireless communication/connection, uplink/downlink communication 150a and sidelink communication 150b (or D2D communication) may be achieved through various wireless access technologies (e.g., 5G NR). Through wireless communication/connection (150a, 150b), a wireless device and a base station/wireless device can transmit/receive wireless signals to each other. For example, wireless communication/connection 150a, 150b may transmit/receive signals through various physical channels based on all/part of the process of FIG. 1. To this end, based on the various proposals of the present invention, various configuration information setting processes for transmitting/receiving wireless signals, various signal processing processes (e.g., channel encoding/decoding, modulation/demodulation, resource mapping/demapping, etc.) , at least some of the resource allocation process, etc. may be performed.

도 38은 본 발명에 적용될 수 있는 무선 기기를 예시한다.Figure 38 illustrates a wireless device to which the present invention can be applied.

도 38을 참조하면, 제1 무선 기기(100)와 제2 무선 기기(200)는 다양한 무선 접속 기술(예, LTE, NR)을 통해 무선 신호를 송수신할 수 있다. 여기서, {제1 무선 기기(100), 제2 무선 기기(200)}은 도 37의 {무선 기기(100x), 기지국(200)} 및/또는 {무선 기기(100x), 무선 기기(100x)}에 대응할 수 있다.Referring to FIG. 38, the first wireless device 100 and the second wireless device 200 can transmit and receive wireless signals through various wireless access technologies (eg, LTE, NR). Here, {first wireless device 100, second wireless device 200} refers to {wireless device 100x, base station 200} and/or {wireless device 100x, wireless device 100x) in FIG. 37. } can be responded to.

제1 무선 기기(100)는 하나 이상의 프로세서(102) 및 하나 이상의 메모리(104)를 포함하며, 추가적으로 하나 이상의 송수신기(106) 및/또는 하나 이상의 안테나(108)을 더 포함할 수 있다. 프로세서(102)는 메모리(104) 및/또는 송수신기(106)를 제어하며, 앞에서 설명/제안한 기능, 절차 및/또는 방법들을 구현하도록 구성될 수 있다. 예를 들어, 프로세서(102)는 메모리(104) 내의 정보를 처리하여 제1 정보/신호를 생성한 뒤, 송수신기(106)을 통해 제1 정보/신호를 포함하는 무선 신호를 전송할 수 있다. 또한, 프로세서(102)는 송수신기(106)를 통해 제2 정보/신호를 포함하는 무선 신호를 수신한 뒤, 제2 정보/신호의 신호 처리로부터 얻은 정보를 메모리(104)에 저장할 수 있다. 메모리(104)는 프로세서(102)와 연결될 수 있고, 프로세서(102)의 동작과 관련한 다양한 정보를 저장할 수 있다. 예를 들어, 메모리(104)는 프로세서(102)에 의해 제어되는 프로세스들 중 일부 또는 전부를 수행하거나, 앞에서 설명/제안한 절차 및/또는 방법들을 수행하기 위한 명령들을 포함하는 소프트웨어 코드를 저장할 수 있다. 여기서, 프로세서(102)와 메모리(104)는 무선 통신 기술(예, LTE, NR)을 구현하도록 설계된 통신 모뎀/회로/칩의 일부일 수 있다. 송수신기(106)는 프로세서(102)와 연결될 수 있고, 하나 이상의 안테나(108)를 통해 무선 신호를 송신 및/또는 수신할 수 있다. 송수신기(106)는 송신기 및/또는 수신기를 포함할 수 있다. 송수신기(106)는 RF(Radio Frequency) 유닛과 혼용될 수 있다. 본 발명에서 무선 기기는 통신 모뎀/회로/칩을 의미할 수도 있다.The first wireless device 100 includes one or more processors 102 and one or more memories 104, and may additionally include one or more transceivers 106 and/or one or more antennas 108. The processor 102 controls the memory 104 and/or the transceiver 106 and may be configured to implement the functions, procedures and/or methods described/suggested above. For example, the processor 102 may process information in the memory 104 to generate first information/signal and then transmit a wireless signal including the first information/signal through the transceiver 106. Additionally, the processor 102 may receive a wireless signal including the second information/signal through the transceiver 106 and then store information obtained from signal processing of the second information/signal in the memory 104. The memory 104 may be connected to the processor 102 and may store various information related to the operation of the processor 102. For example, memory 104 may perform some or all of the processes controlled by processor 102, or may store software code containing instructions for performing procedures and/or methods described/suggested above. . Here, the processor 102 and memory 104 may be part of a communication modem/circuit/chip designed to implement wireless communication technology (eg, LTE, NR). Transceiver 106 may be coupled to processor 102 and may transmit and/or receive wireless signals via one or more antennas 108. Transceiver 106 may include a transmitter and/or receiver. The transceiver 106 can be used interchangeably with an RF (Radio Frequency) unit. In the present invention, a wireless device may mean a communication modem/circuit/chip.

제2 무선 기기(200)는 하나 이상의 프로세서(202), 하나 이상의 메모리(204)를 포함하며, 추가적으로 하나 이상의 송수신기(206) 및/또는 하나 이상의 안테나(208)를 더 포함할 수 있다. 프로세서(202)는 메모리(204) 및/또는 송수신기(206)를 제어하며, 앞에서 설명/제안한 기능, 절차 및/또는 방법들을 구현하도록 구성될 수 있다. 예를 들어, 프로세서(202)는 메모리(204) 내의 정보를 처리하여 제3 정보/신호를 생성한 뒤, 송수신기(206)를 통해 제3 정보/신호를 포함하는 무선 신호를 전송할 수 있다. 또한, 프로세서(202)는 송수신기(206)를 통해 제4 정보/신호를 포함하는 무선 신호를 수신한 뒤, 제4 정보/신호의 신호 처리로부터 얻은 정보를 메모리(204)에 저장할 수 있다. 메모리(204)는 프로세서(202)와 연결될 수 있고, 프로세서(202)의 동작과 관련한 다양한 정보를 저장할 수 있다. 예를 들어, 메모리(204)는 프로세서(202)에 의해 제어되는 프로세스들 중 일부 또는 전부를 수행하거나, 앞에서 설명/제안한 절차 및/또는 방법들을 수행하기 위한 명령들을 포함하는 소프트웨어 코드를 저장할 수 있다. 여기서, 프로세서(202)와 메모리(204)는 무선 통신 기술(예, LTE, NR)을 구현하도록 설계된 통신 모뎀/회로/칩의 일부일 수 있다. 송수신기(206)는 프로세서(202)와 연결될 수 있고, 하나 이상의 안테나(208)를 통해 무선 신호를 송신 및/또는 수신할 수 있다. 송수신기(206)는 송신기 및/또는 수신기를 포함할 수 있다 송수신기(206)는 RF 유닛과 혼용될 수 있다. 본 발명에서 무선 기기는 통신 모뎀/회로/칩을 의미할 수도 있다.The second wireless device 200 includes one or more processors 202, one or more memories 204, and may further include one or more transceivers 206 and/or one or more antennas 208. The processor 202 controls the memory 204 and/or the transceiver 206 and may be configured to implement the functions, procedures and/or methods described/suggested above. For example, the processor 202 may process the information in the memory 204 to generate third information/signal and then transmit a wireless signal including the third information/signal through the transceiver 206. Additionally, the processor 202 may receive a wireless signal including the fourth information/signal through the transceiver 206 and then store information obtained from signal processing of the fourth information/signal in the memory 204. The memory 204 may be connected to the processor 202 and may store various information related to the operation of the processor 202. For example, memory 204 may perform some or all of the processes controlled by processor 202, or may store software code including instructions for performing procedures and/or methods described/suggested above. . Here, the processor 202 and memory 204 may be part of a communication modem/circuit/chip designed to implement wireless communication technology (eg, LTE, NR). Transceiver 206 may be coupled to processor 202 and may transmit and/or receive wireless signals via one or more antennas 208. Transceiver 206 may include a transmitter and/or receiver. Transceiver 206 may be used interchangeably with an RF unit. In the present invention, a wireless device may mean a communication modem/circuit/chip.

이하, 무선 기기(100, 200)의 하드웨어 요소에 대해 보다 구체적으로 설명한다. 이로 제한되는 것은 아니지만, 하나 이상의 프로토콜 계층이 하나 이상의 프로세서(102, 202)에 의해 구현될 수 있다. 예를 들어, 하나 이상의 프로세서(102, 202)는 하나 이상의 계층(예, PHY, MAC, RLC, PDCP, RRC, SDAP와 같은 기능적 계층)을 구현할 수 있다. 하나 이상의 프로세서(102, 202)는 본 문서에 개시된 기능, 절차, 제안 및/또는 방법에 따라 하나 이상의 PDU(Protocol Data Unit) 및/또는 하나 이상의 SDU(Service Data Unit)를 생성할 수 있다. 하나 이상의 프로세서(102, 202)는 본 문서에 개시된 기능, 절차, 제안 및/또는 방법에 따라 메시지, 제어정보, 데이터 또는 정보를 생성할 수 있다. 하나 이상의 프로세서(102, 202)는 본 문서에 개시된 기능, 절차, 제안 및/또는 방법에 따라 PDU, SDU, 메시지, 제어정보, 데이터 또는 정보를 포함하는 신호(예, 베이스밴드 신호)를 생성하여, 하나 이상의 송수신기(106, 206)에게 제공할 수 있다. 하나 이상의 프로세서(102, 202)는 하나 이상의 송수신기(106, 206)로부터 신호(예, 베이스밴드 신호)를 수신할 수 있고, 본 문서에 개시된 기능, 절차, 제안 및/또는 방법에 따라 PDU, SDU, 메시지, 제어정보, 데이터 또는 정보를 획득할 수 있다.Hereinafter, the hardware elements of the wireless devices 100 and 200 will be described in more detail. Although not limited thereto, one or more protocol layers may be implemented by one or more processors 102, 202. For example, one or more processors 102, 202 may implement one or more layers (e.g., functional layers such as PHY, MAC, RLC, PDCP, RRC, SDAP). One or more processors 102, 202 may generate one or more Protocol Data Units (PDUs) and/or one or more Service Data Units (SDUs) according to the functions, procedures, suggestions and/or methods disclosed herein. One or more processors 102, 202 may generate messages, control information, data or information according to the functions, procedures, suggestions and/or methods disclosed herein. One or more processors 102, 202 generate signals (e.g., baseband signals) containing PDUs, SDUs, messages, control information, data or information according to the functions, procedures, proposals and/or methods disclosed herein. , can be provided to one or more transceivers (106, 206). One or more processors (102, 202) may receive signals (e.g., baseband signals) from one or more transceivers (106, 206) and transmit a PDU, SDU, or PDU according to the functions, procedures, suggestions, and/or methods disclosed herein. , messages, control information, data or information can be obtained.

하나 이상의 프로세서(102, 202)는 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 또는 마이크로 컴퓨터로 지칭될 수 있다. 하나 이상의 프로세서(102, 202)는 하드웨어, 펌웨어, 소프트웨어, 또는 이들의 조합에 의해 구현될 수 있다. 일 예로, 하나 이상의 ASIC(Application Specific Integrated Circuit), 하나 이상의 DSP(Digital Signal Processor), 하나 이상의 DSPD(Digital Signal Processing Device), 하나 이상의 PLD(Programmable Logic Device) 또는 하나 이상의 FPGA(Field Programmable Gate Arrays)가 하나 이상의 프로세서(102, 202)에 포함될 수 있다. 본 문서에 개시된 기능, 절차, 제안 및/또는 방법들은 펌웨어 또는 소프트웨어를 사용하여 구현될 수 있고, 펌웨어 또는 소프트웨어는 모듈, 절차, 기능 등을 포함하도록 구현될 수 있다. 본 문서에 개시된 기능, 절차, 제안 및/또는 방법을 수행하도록 설정된 펌웨어 또는 소프트웨어는 하나 이상의 프로세서(102, 202)에 포함되거나, 하나 이상의 메모리(104, 204)에 저장되어 하나 이상의 프로세서(102, 202)에 의해 구동될 수 있다. 본 문서에 개시된 기능, 절차, 제안 및 또는 방법들은 코드, 명령어 및/또는 명령어의 집합 형태로 펌웨어 또는 소프트웨어를 사용하여 구현될 수 있다.One or more processors 102, 202 may be referred to as a controller, microcontroller, microprocessor, or microcomputer. One or more processors 102, 202 may be implemented by hardware, firmware, software, or a combination thereof. As an example, one or more Application Specific Integrated Circuits (ASICs), one or more Digital Signal Processors (DSPs), one or more Digital Signal Processing Devices (DSPDs), one or more Programmable Logic Devices (PLDs), or one or more Field Programmable Gate Arrays (FPGAs) May be included in one or more processors 102 and 202. The functions, procedures, suggestions and/or methods disclosed in this document may be implemented using firmware or software, and the firmware or software may be implemented to include modules, procedures, functions, etc. Firmware or software configured to perform the functions, procedures, suggestions and/or methods disclosed herein may be included in one or more processors (102, 202) or stored in one or more memories (104, 204) to enable one or more processors (102, 202). 202). The functions, procedures, suggestions and or methods disclosed in this document may be implemented using firmware or software in the form of codes, instructions and/or sets of instructions.

하나 이상의 메모리(104, 204)는 하나 이상의 프로세서(102, 202)와 연결될 수 있고, 다양한 형태의 데이터, 신호, 메시지, 정보, 프로그램, 코드, 지시 및/또는 명령을 저장할 수 있다. 하나 이상의 메모리(104, 204)는 ROM, RAM, EPROM, 플래시 메모리, 하드 드라이브, 레지스터, 캐쉬 메모리, 컴퓨터 판독 저장 매체 및/또는 이들의 조합으로 구성될 수 있다. 하나 이상의 메모리(104, 204)는 하나 이상의 프로세서(102, 202)의 내부 및/또는 외부에 위치할 수 있다. 또한, 하나 이상의 메모리(104, 204)는 유선 또는 무선 연결과 같은 다양한 기술을 통해 하나 이상의 프로세서(102, 202)와 연결될 수 있다.One or more memories 104, 204 may be connected to one or more processors 102, 202 and may store various types of data, signals, messages, information, programs, codes, instructions, and/or instructions. One or more memories 104, 204 may consist of ROM, RAM, EPROM, flash memory, hard drives, registers, cache memory, computer readable storage media, and/or combinations thereof. One or more memories 104, 204 may be located internal to and/or external to one or more processors 102, 202. Additionally, one or more memories 104, 204 may be connected to one or more processors 102, 202 through various technologies, such as wired or wireless connections.

하나 이상의 송수신기(106, 206)는 하나 이상의 다른 장치에게 본 문서의 방법들 및/또는 동작 순서도 등에서 언급되는 사용자 데이터, 제어 정보, 무선 신호/채널 등을 전송할 수 있다. 하나 이상의 송수신기(106, 206)는 하나 이상의 다른 장치로부터 본 문서에 개시된 기능, 절차, 제안, 방법 및/또는 동작 순서도 등에서 언급되는 사용자 데이터, 제어 정보, 무선 신호/채널 등을 수신할 수 있다. 예를 들어, 하나 이상의 송수신기(106, 206)는 하나 이상의 프로세서(102, 202)와 연결될 수 있고, 무선 신호를 송수신할 수 있다. 예를 들어, 하나 이상의 프로세서(102, 202)는 하나 이상의 송수신기(106, 206)가 하나 이상의 다른 장치에게 사용자 데이터, 제어 정보 또는 무선 신호를 전송하도록 제어할 수 있다. 또한, 하나 이상의 프로세서(102, 202)는 하나 이상의 송수신기(106, 206)가 하나 이상의 다른 장치로부터 사용자 데이터, 제어 정보 또는 무선 신호를 수신하도록 제어할 수 있다. 또한, 하나 이상의 송수신기(106, 206)는 하나 이상의 안테나(108, 208)와 연결될 수 있고, 하나 이상의 송수신기(106, 206)는 하나 이상의 안테나(108, 208)를 통해 본 문서에 개시된 기능, 절차, 제안, 방법 및/또는 동작 순서도 등에서 언급되는 사용자 데이터, 제어 정보, 무선 신호/채널 등을 송수신하도록 설정될 수 있다. 본 문서에서, 하나 이상의 안테나는 복수의 물리 안테나이거나, 복수의 논리 안테나(예, 안테나 포트)일 수 있다. 하나 이상의 송수신기(106, 206)는 수신된 사용자 데이터, 제어 정보, 무선 신호/채널 등을 하나 이상의 프로세서(102, 202)를 이용하여 처리하기 위해, 수신된 무선 신호/채널 등을 RF 밴드 신호에서 베이스밴드 신호로 변환(Convert)할 수 있다. 하나 이상의 송수신기(106, 206)는 하나 이상의 프로세서(102, 202)를 이용하여 처리된 사용자 데이터, 제어 정보, 무선 신호/채널 등을 베이스밴드 신호에서 RF 밴드 신호로 변환할 수 있다. 이를 위하여, 하나 이상의 송수신기(106, 206)는 (아날로그) 오실레이터 및/또는 필터를 포함할 수 있다.One or more transceivers 106, 206 may transmit user data, control information, wireless signals/channels, etc. mentioned in the methods and/or operation flowcharts of this document to one or more other devices. One or more transceivers 106, 206 may receive user data, control information, wireless signals/channels, etc. mentioned in the functions, procedures, proposals, methods and/or operational flowcharts disclosed herein, etc. from one or more other devices. For example, one or more transceivers 106 and 206 may be connected to one or more processors 102 and 202 and may transmit and receive wireless signals. For example, one or more processors 102, 202 may control one or more transceivers 106, 206 to transmit user data, control information, or wireless signals to one or more other devices. Additionally, one or more processors 102, 202 may control one or more transceivers 106, 206 to receive user data, control information, or wireless signals from one or more other devices. In addition, one or more transceivers (106, 206) may be connected to one or more antennas (108, 208), and one or more transceivers (106, 206) may perform the functions and procedures disclosed in this document through one or more antennas (108, 208). , may be set to transmit and receive user data, control information, wireless signals/channels, etc. mentioned in the proposal, method and/or operation flowchart, etc. In this document, one or more antennas may be multiple physical antennas or multiple logical antennas (eg, antenna ports). One or more transceivers (106, 206) process the received user data, control information, wireless signals/channels, etc. using one or more processors (102, 202), and convert the received wireless signals/channels, etc. from the RF band signal. It can be converted to a baseband signal. One or more transceivers (106, 206) may convert user data, control information, wireless signals/channels, etc. processed using one or more processors (102, 202) from baseband signals to RF band signals. For this purpose, one or more transceivers 106, 206 may comprise (analog) oscillators and/or filters.

도 39는 전송 신호를 위한 신호 처리 회로를 예시한다.Figure 39 illustrates a signal processing circuit for a transmission signal.

도 39를 참조하면, 신호 처리 회로(1000)는 스크램블러(1010), 변조기(1020), 레이어 매퍼(1030), 프리코더(1040), 자원 매퍼(1050), 신호 생성기(1060)를 포함할 수 있다. 이로 제한되는 것은 아니지만, 도 39의 동작/기능은 도 39의 프로세서(102, 202) 및/또는 송수신기(106, 206)에서 수행될 수 있다. 도 39의 하드웨어 요소는 도 38의 프로세서(102, 202) 및/또는 송수신기(106, 206)에서 구현될 수 있다. 예를 들어, 블록 1010~1060은 도 38의 프로세서(102, 202)에서 구현될 수 있다. 또한, 블록 1010~1050은 도 38의 프로세서(102, 202)에서 구현되고, 블록 1060은 도 38의 송수신기(106, 206)에서 구현될 수 있다.Referring to FIG. 39, the signal processing circuit 1000 may include a scrambler 1010, a modulator 1020, a layer mapper 1030, a precoder 1040, a resource mapper 1050, and a signal generator 1060. there is. Although not limited thereto, the operations/functions of Figure 39 may be performed in the processors 102, 202 and/or transceivers 106, 206 of Figure 39. The hardware elements of Figure 39 may be implemented in the processors 102, 202 and/or transceivers 106, 206 of Figure 38. For example, blocks 1010 to 1060 may be implemented in processors 102 and 202 of FIG. 38. Additionally, blocks 1010 to 1050 may be implemented in the processors 102 and 202 of FIG. 38, and block 1060 may be implemented in the transceivers 106 and 206 of FIG. 38.

코드워드는 도 39의 신호 처리 회로(1000)를 거쳐 무선 신호로 변환될 수 있다. 여기서, 코드워드는 정보블록의 부호화된 비트 시퀀스이다. 정보블록은 전송블록(예, UL-SCH 전송블록, DL-SCH 전송블록)을 포함할 수 있다. 무선 신호는 도 1의 다양한 물리 채널(예, PUSCH, PDSCH)을 통해 전송될 수 있다.The codeword can be converted into a wireless signal through the signal processing circuit 1000 of FIG. 39. Here, a codeword is an encoded bit sequence of an information block. The information block may include a transport block (eg, UL-SCH transport block, DL-SCH transport block). Wireless signals may be transmitted through various physical channels (eg, PUSCH, PDSCH) of FIG. 1.

구체적으로, 코드워드는 스크램블러(1010)에 의해 스크램블된 비트 시퀀스로 변환될 수 있다. 스크램블에 사용되는 스크램블 시퀀스는 초기화 값에 기반하여 생성되며, 초기화 값은 무선 기기의 ID 정보 등이 포함될 수 있다. 스크램블된 비트 시퀀스는 변조기(1020)에 의해 변조 심볼 시퀀스로 변조될 수 있다. 변조 방식은 pi/2-BPSK(pi/2-Binary Phase Shift Keying), m-PSK(m-Phase Shift Keying), m-QAM(m-Quadrature Amplitude Modulation) 등을 포함할 수 있다. 복소 변조 심볼 시퀀스는 레이어 매퍼(1030)에 의해 하나 이상의 전송 레이어로 매핑될 수 있다. 각 전송 레이어의 변조 심볼들은 프리코더(1040)에 의해 해당 안테나 포트(들)로 매핑될 수 있다(프리코딩). 프리코더(1040)의 출력 z는 레이어 매퍼(1030)의 출력 y를 N*M의 프리코딩 행렬 W와 곱해 얻을 수 있다. 여기서, N은 안테나 포트의 개수, M은 전송 레이어의 개수이다. 여기서, 프리코더(1040)는 복소 변조 심볼들에 대한 트랜스폼(transform) 프리코딩(예, DFT 변환)을 수행한 이후에 프리코딩을 수행할 수 있다. 또한, 프리코더(1040)는 트랜스폼 프리코딩을 수행하지 않고 프리코딩을 수행할 수 있다.Specifically, the codeword may be converted into a scrambled bit sequence by the scrambler 1010. The scramble sequence used for scrambling is generated based on an initialization value, and the initialization value may include ID information of the wireless device. The scrambled bit sequence may be modulated into a modulation symbol sequence by the modulator 1020. Modulation methods may include pi/2-BPSK (pi/2-Binary Phase Shift Keying), m-PSK (m-Phase Shift Keying), m-QAM (m-Quadrature Amplitude Modulation), etc. The complex modulation symbol sequence may be mapped to one or more transport layers by the layer mapper 1030. The modulation symbols of each transport layer may be mapped to the corresponding antenna port(s) by the precoder 1040 (precoding). The output z of the precoder 1040 can be obtained by multiplying the output y of the layer mapper 1030 with the precoding matrix W of N*M. Here, N is the number of antenna ports and M is the number of transport layers. Here, the precoder 1040 may perform precoding after performing transform precoding (eg, DFT transformation) on complex modulation symbols. Additionally, the precoder 1040 may perform precoding without performing transform precoding.

자원 매퍼(1050)는 각 안테나 포트의 변조 심볼들을 시간-주파수 자원에 매핑할 수 있다. 시간-주파수 자원은 시간 도메인에서 복수의 심볼(예, CP-OFDMA 심볼, DFT-s-OFDMA 심볼)을 포함하고, 주파수 도메인에서 복수의 부반송파를 포함할 수 있다. 신호 생성기(1060)는 매핑된 변조 심볼들로부터 무선 신호를 생성하며, 생성된 무선 신호는 각 안테나를 통해 다른 기기로 전송될 수 있다. 이를 위해, 신호 생성기(1060)는 IFFT(Inverse Fast Fourier Transform) 모듈 및 CP(Cyclic Prefix) 삽입기, DAC(Digital-to-Analog Converter), 주파수 상향 변환기(frequency uplink converter) 등을 포함할 수 있다.The resource mapper 1050 can map the modulation symbols of each antenna port to time-frequency resources. A time-frequency resource may include a plurality of symbols (eg, CP-OFDMA symbol, DFT-s-OFDMA symbol) in the time domain and a plurality of subcarriers in the frequency domain. The signal generator 1060 generates a wireless signal from the mapped modulation symbols, and the generated wireless signal can be transmitted to another device through each antenna. For this purpose, the signal generator 1060 may include an Inverse Fast Fourier Transform (IFFT) module, a Cyclic Prefix (CP) inserter, a Digital-to-Analog Converter (DAC), a frequency uplink converter, etc. .

무선 기기에서 수신 신호를 위한 신호 처리 과정은 도 39의 신호 처리 과정(1010~1060)의 역으로 구성될 수 있다. 예를 들어, 무선 기기(예, 도 38의 100, 200)는 안테나 포트/송수신기를 통해 외부로부터 무선 신호를 수신할 수 있다. 수신된 무선 신호는 신호 복원기를 통해 베이스밴드 신호로 변환될 수 있다. 이를 위해, 신호 복원기는 주파수 하향 변환기(frequency downlink converter), ADC(analog-to-digital converter), CP 제거기, FFT(Fast Fourier Transform) 모듈을 포함할 수 있다. 이후, 베이스밴드 신호는 자원 디-매퍼 과정, 포스트코딩(postcoding) 과정, 복조 과정 및 디-스크램블 과정을 거쳐 코드워드로 복원될 수 있다. 코드워드는 복호(decoding)를 거쳐 원래의 정보블록으로 복원될 수 있다. 따라서, 수신 신호를 위한 신호 처리 회로(미도시)는 신호 복원기, 자원 디-매퍼, 포스트코더, 복조기, 디-스크램블러 및 복호기를 포함할 수 있다.The signal processing process for the received signal in the wireless device may be configured as the reverse of the signal processing process (1010 to 1060) of FIG. 39. For example, a wireless device (eg, 100 and 200 in FIG. 38) may receive a wireless signal from the outside through an antenna port/transceiver. The received wireless signal can be converted into a baseband signal through a signal restorer. To this end, the signal restorer may include a frequency downlink converter, an analog-to-digital converter (ADC), a CP remover, and a Fast Fourier Transform (FFT) module. Afterwards, the baseband signal can be restored to a codeword through a resource de-mapper process, postcoding process, demodulation process, and de-scramble process. The codeword can be restored to the original information block through decoding. Accordingly, a signal processing circuit (not shown) for a received signal may include a signal restorer, resource de-mapper, postcoder, demodulator, de-scrambler, and decoder.

도 40은 본 발명에 적용되는 무선 기기의 다른 예를 나타낸다. 무선 기기는 사용-예/서비스에 따라 다양한 형태로 구현될 수 있다.Figure 40 shows another example of a wireless device applied to the present invention. Wireless devices can be implemented in various forms depending on usage-examples/services.

도 40을 참조하면, 무선 기기(100, 200)는 도 38의 무선 기기(100,200)에 대응하며, 다양한 요소(element), 성분(component), 유닛/부(unit), 및/또는 모듈(module)로 구성될 수 있다. 예를 들어, 무선 기기(100, 200)는 통신부(110), 제어부(120), 메모리부(130) 및 추가 요소(140)를 포함할 수 있다. 통신부는 통신 회로(112) 및 송수신기(들)(114)을 포함할 수 있다. 예를 들어, 통신 회로(112)는 도 38의 하나 이상의 프로세서(102,202) 및/또는 하나 이상의 메모리(104,204)를 포함할 수 있다. 예를 들어, 송수신기(들)(114)는 도 38의 하나 이상의 송수신기(106,206) 및/또는 하나 이상의 안테나(108,208)을 포함할 수 있다. 제어부(120)는 통신부(110), 메모리부(130) 및 추가 요소(140)와 전기적으로 연결되며 무선 기기의 제반 동작을 제어한다. 예를 들어, 제어부(120)는 메모리부(130)에 저장된 프로그램/코드/명령/정보에 기반하여 무선 기기의 전기적/기계적 동작을 제어할 수 있다. 또한, 제어부(120)는 메모리부(130)에 저장된 정보를 통신부(110)을 통해 외부(예, 다른 통신 기기)로 무선/유선 인터페이스를 통해 전송하거나, 통신부(110)를 통해 외부(예, 다른 통신 기기)로부터 무선/유선 인터페이스를 통해 수신된 정보를 메모리부(130)에 저장할 수 있다.Referring to FIG. 40, the wireless devices 100 and 200 correspond to the wireless devices 100 and 200 of FIG. 38 and include various elements, components, units/units, and/or modules. ) can be composed of. For example, the wireless devices 100 and 200 may include a communication unit 110, a control unit 120, a memory unit 130, and an additional element 140. The communication unit may include communication circuitry 112 and transceiver(s) 114. For example, communication circuitry 112 may include one or more processors 102,202 and/or one or more memories 104,204 of FIG. 38. For example, transceiver(s) 114 may include one or more transceivers 106, 206 and/or one or more antennas 108, 208 of FIG. 38. The control unit 120 is electrically connected to the communication unit 110, the memory unit 130, and the additional element 140 and controls overall operations of the wireless device. For example, the control unit 120 may control the electrical/mechanical operation of the wireless device based on the program/code/command/information stored in the memory unit 130. In addition, the control unit 120 transmits the information stored in the memory unit 130 to the outside (e.g., another communication device) through the communication unit 110 through a wireless/wired interface, or to the outside (e.g., to another communication device) through the communication unit 110. Information received through a wireless/wired interface from another communication device may be stored in the memory unit 130.

추가 요소(140)는 무선 기기의 종류에 따라 다양하게 구성될 수 있다. 예를 들어, 추가 요소(140)는 파워 유닛/배터리, 입출력부(I/O unit), 구동부 및 컴퓨팅부 중 적어도 하나를 포함할 수 있다. 이로 제한되는 것은 아니지만, 무선 기기는 로봇(도 37, 100a), 차량(도 37, 100b-1, 100b-2), XR 기기(도 37, 100c), 휴대 기기(도 37, 100d), 가전(도 37, 100e), IoT 기기(도 37, 100f), 디지털 방송용 단말, 홀로그램 장치, 공공 안전 장치, MTC 장치, 의료 장치, 핀테크 장치(또는 금융 장치), 보안 장치, 기후/환경 장치, AI 서버/기기(도 37, 400), 기지국(도 37, 200), 네트워크 노드 등의 형태로 구현될 수 있다. 무선 기기는 사용-예/서비스에 따라 이동 가능하거나 고정된 장소에서 사용될 수 있다.The additional element 140 may be configured in various ways depending on the type of wireless device. For example, the additional element 140 may include at least one of a power unit/battery, an input/output unit (I/O unit), a driving unit, and a computing unit. Although not limited thereto, wireless devices include robots (FIG. 37, 100a), vehicles (FIG. 37, 100b-1, 100b-2), XR devices (FIG. 37, 100c), portable devices (FIG. 37, 100d), and home appliances. (FIG. 37, 100e), IoT device (FIG. 37, 100f), digital broadcasting terminal, hologram device, public safety device, MTC device, medical device, fintech device (or financial device), security device, climate/environment device, It can be implemented in the form of an AI server/device (FIG. 37, 400), a base station (FIG. 37, 200), a network node, etc. Wireless devices can be mobile or used in fixed locations depending on the usage/service.

도 40에서 무선 기기(100, 200) 내의 다양한 요소, 성분, 유닛/부, 및/또는 모듈은 전체가 유선 인터페이스를 통해 상호 연결되거나, 적어도 일부가 통신부(110)를 통해 무선으로 연결될 수 있다. 예를 들어, 무선 기기(100, 200) 내에서 제어부(120)와 통신부(110)는 유선으로 연결되며, 제어부(120)와 제1 유닛(예, 130, 140)은 통신부(110)를 통해 무선으로 연결될 수 있다. 또한, 무선 기기(100, 200) 내의 각 요소, 성분, 유닛/부, 및/또는 모듈은 하나 이상의 요소를 더 포함할 수 있다. 예를 들어, 제어부(120)는 하나 이상의 프로세서 집합으로 구성될 수 있다. 예를 들어, 제어부(120)는 통신 제어 프로세서, 어플리케이션 프로세서(Application processor), ECU(Electronic Control Unit), 그래픽 처리 프로세서, 메모리 제어 프로세서 등의 집합으로 구성될 수 있다. 다른 예로, 메모리부(130)는 RAM(Random Access Memory), DRAM(Dynamic RAM), ROM(Read Only Memory), 플래시 메모리(flash memory), 휘발성 메모리(volatile memory), 비-휘발성 메모리(non-volatile memory) 및/또는 이들의 조합으로 구성될 수 있다.In FIG. 40 , various elements, components, units/parts, and/or modules within the wireless devices 100 and 200 may be entirely interconnected through a wired interface, or at least some may be wirelessly connected through the communication unit 110. For example, within the wireless devices 100 and 200, the control unit 120 and the communication unit 110 are connected by wire, and the control unit 120 and the first unit (e.g., 130 and 140) are connected through the communication unit 110. Can be connected wirelessly. Additionally, each element, component, unit/part, and/or module within the wireless devices 100 and 200 may further include one or more elements. For example, the control unit 120 may be comprised of one or more processor sets. For example, the control unit 120 may be comprised of a communication control processor, an application processor, an electronic control unit (ECU), a graphics processing processor, and a memory control processor. As another example, the memory unit 130 includes random access memory (RAM), dynamic RAM (DRAM), read only memory (ROM), flash memory, volatile memory, and non-volatile memory. volatile memory) and/or a combination thereof.

이하, 도 40의 구현 예에 대해 도면을 참조하여 보다 자세히 설명한다.Hereinafter, the implementation example of FIG. 40 will be described in more detail with reference to the drawings.

도 41은 본 발명에 적용되는 휴대 기기를 예시한다. 휴대 기기는 스마트폰, 스마트패드, 웨어러블 기기(예, 스마트워치, 스마트글래스), 휴대용 컴퓨터(예, 노트북 등)을 포함할 수 있다. 휴대 기기는 MS(Mobile Station), UT(user terminal), MSS(Mobile Subscriber Station), SS(Subscriber Station), AMS(Advanced Mobile Station) 또는 WT(Wireless terminal)로 지칭될 수 있다.Figure 41 illustrates a portable device to which the present invention is applied. Portable devices may include smartphones, smartpads, wearable devices (e.g., smartwatches, smartglasses), and portable computers (e.g., laptops, etc.). A mobile device may be referred to as a Mobile Station (MS), user terminal (UT), Mobile Subscriber Station (MSS), Subscriber Station (SS), Advanced Mobile Station (AMS), or Wireless terminal (WT).

도 41을 참조하면, 휴대 기기(100)는 안테나부(108), 통신부(110), 제어부(120), 메모리부(130), 전원공급부(140a), 인터페이스부(140b) 및 입출력부(140c)를 포함할 수 있다. 안테나부(108)는 통신부(110)의 일부로 구성될 수 있다. 블록 110~130/140a~140c는 각각 도 40의 블록 110~130/140에 대응한다.Referring to FIG. 41, the portable device 100 includes an antenna unit 108, a communication unit 110, a control unit 120, a memory unit 130, a power supply unit 140a, an interface unit 140b, and an input/output unit 140c. ) may include. The antenna unit 108 may be configured as part of the communication unit 110. Blocks 110 to 130/140a to 140c correspond to blocks 110 to 130/140 in FIG. 40, respectively.

통신부(110)는 다른 무선 기기, 기지국들과 신호(예, 데이터, 제어 신호 등)를 송수신할 수 있다. 제어부(120)는 휴대 기기(100)의 구성 요소들을 제어하여 다양한 동작을 수행할 수 있다. 제어부(120)는 AP(Application Processor)를 포함할 수 있다. 메모리부(130)는 휴대 기기(100)의 구동에 필요한 데이터/파라미터/프로그램/코드/명령을 저장할 수 있다. 또한, 메모리부(130)는 입/출력되는 데이터/정보 등을 저장할 수 있다. 전원공급부(140a)는 휴대 기기(100)에게 전원을 공급하며, 유/무선 충전 회로, 배터리 등을 포함할 수 있다. 인터페이스부(140b)는 휴대 기기(100)와 다른 외부 기기의 연결을 지원할 수 있다. 인터페이스부(140b)는 외부 기기와의 연결을 위한 다양한 포트(예, 오디오 입/출력 포트, 비디오 입/출력 포트)를 포함할 수 있다. 입출력부(140c)는 영상 정보/신호, 오디오 정보/신호, 데이터, 및/또는 사용자로부터 입력되는 정보를 입력 받거나 출력할 수 있다. 입출력부(140c)는 카메라, 마이크로폰, 사용자 입력부, 디스플레이부(140d), 스피커 및/또는 햅틱 모듈 등을 포함할 수 있다.The communication unit 110 can transmit and receive signals (eg, data, control signals, etc.) with other wireless devices and base stations. The control unit 120 can control the components of the portable device 100 to perform various operations. The control unit 120 may include an application processor (AP). The memory unit 130 may store data/parameters/programs/codes/commands necessary for driving the portable device 100. Additionally, the memory unit 130 can store input/output data/information, etc. The power supply unit 140a supplies power to the portable device 100 and may include a wired/wireless charging circuit, a battery, etc. The interface unit 140b may support connection between the mobile device 100 and other external devices. The interface unit 140b may include various ports (eg, audio input/output ports, video input/output ports) for connection to external devices. The input/output unit 140c may input or output video information/signals, audio information/signals, data, and/or information input from the user. The input/output unit 140c may include a camera, a microphone, a user input unit, a display unit 140d, a speaker, and/or a haptic module.

일 예로, 데이터 통신의 경우, 입출력부(140c)는 사용자로부터 입력된 정보/신호(예, 터치, 문자, 음성, 이미지, 비디오)를 획득하며, 획득된 정보/신호는 메모리부(130)에 저장될 수 있다. 통신부(110)는 메모리에 저장된 정보/신호를 무선 신호로 변환하고, 변환된 무선 신호를 다른 무선 기기에게 직접 전송하거나 기지국에게 전송할 수 있다. 또한, 통신부(110)는 다른 무선 기기 또는 기지국으로부터 무선 신호를 수신한 뒤, 수신된 무선 신호를 원래의 정보/신호로 복원할 수 있다. 복원된 정보/신호는 메모리부(130)에 저장된 뒤, 입출력부(140c)를 통해 다양한 형태(예, 문자, 음성, 이미지, 비디오, 헵틱)로 출력될 수 있다.For example, in the case of data communication, the input/output unit 140c acquires information/signals (e.g., touch, text, voice, image, video) input from the user, and the obtained information/signals are stored in the memory unit 130. It can be saved. The communication unit 110 may convert the information/signal stored in the memory into a wireless signal and transmit the converted wireless signal directly to another wireless device or to a base station. Additionally, the communication unit 110 may receive a wireless signal from another wireless device or a base station and then restore the received wireless signal to the original information/signal. The restored information/signal may be stored in the memory unit 130 and then output in various forms (eg, text, voice, image, video, haptics) through the input/output unit 140c.

도 42는 본 발명에 적용되는 차량 또는 자율 주행 차량을 예시한다. 차량 또는 자율 주행 차량은 이동형 로봇, 차량, 기차, 유/무인 비행체(Aerial Vehicle, AV), 선박 등으로 구현될 수 있다.Figure 42 illustrates a vehicle or autonomous vehicle to which the present invention is applied. A vehicle or autonomous vehicle can be implemented as a mobile robot, vehicle, train, manned/unmanned aerial vehicle (AV), ship, etc.

도 42를 참조하면, 차량 또는 자율 주행 차량(100)은 안테나부(108), 통신부(110), 제어부(120), 구동부(140a), 전원공급부(140b), 센서부(140c) 및 자율 주행부(140d)를 포함할 수 있다. 안테나부(108)는 통신부(110)의 일부로 구성될 수 있다. 블록 110/130/140a~140d는 각각 도 40의 블록 110/130/140에 대응한다.Referring to FIG. 42, the vehicle or autonomous vehicle 100 includes an antenna unit 108, a communication unit 110, a control unit 120, a drive unit 140a, a power supply unit 140b, a sensor unit 140c, and an autonomous driving unit. It may include a portion 140d. The antenna unit 108 may be configured as part of the communication unit 110. Blocks 110/130/140a to 140d respectively correspond to blocks 110/130/140 in FIG. 40.

통신부(110)는 다른 차량, 기지국(e.g. 기지국, 노변 기지국(Road Side unit) 등), 서버 등의 외부 기기들과 신호(예, 데이터, 제어 신호 등)를 송수신할 수 있다. 제어부(120)는 차량 또는 자율 주행 차량(100)의 요소들을 제어하여 다양한 동작을 수행할 수 있다. 제어부(120)는 ECU(Electronic Control Unit)를 포함할 수 있다. 구동부(140a)는 차량 또는 자율 주행 차량(100)을 지상에서 주행하게 할 수 있다. 구동부(140a)는 엔진, 모터, 파워 트레인, 바퀴, 브레이크, 조향 장치 등을 포함할 수 있다. 전원공급부(140b)는 차량 또는 자율 주행 차량(100)에게 전원을 공급하며, 유/무선 충전 회로, 배터리 등을 포함할 수 있다. 센서부(140c)는 차량 상태, 주변 환경 정보, 사용자 정보 등을 얻을 수 있다. 센서부(140c)는 IMU(inertial measurement unit) 센서, 충돌 센서, 휠 센서(wheel sensor), 속도 센서, 경사 센서, 중량 감지 센서, 헤딩 센서(heading sensor), 포지션 모듈(position module), 차량 전진/후진 센서, 배터리 센서, 연료 센서, 타이어 센서, 스티어링 센서, 온도 센서, 습도 센서, 초음파 센서, 조도 센서, 페달 포지션 센서 등을 포함할 수 있다. 자율 주행부(140d)는 주행중인 차선을 유지하는 기술, 어댑티브 크루즈 컨트롤과 같이 속도를 자동으로 조절하는 기술, 정해진 경로를 따라 자동으로 주행하는 기술, 목적지가 설정되면 자동으로 경로를 설정하여 주행하는 기술 등을 구현할 수 있다.The communication unit 110 can transmit and receive signals (e.g., data, control signals, etc.) with external devices such as other vehicles, base stations (e.g. base stations, road side units, etc.), and servers. The control unit 120 may control elements of the vehicle or autonomous vehicle 100 to perform various operations. The control unit 120 may include an Electronic Control Unit (ECU). The driving unit 140a can drive the vehicle or autonomous vehicle 100 on the ground. The driving unit 140a may include an engine, motor, power train, wheels, brakes, steering device, etc. The power supply unit 140b supplies power to the vehicle or autonomous vehicle 100 and may include a wired/wireless charging circuit, a battery, etc. The sensor unit 140c can obtain vehicle status, surrounding environment information, user information, etc. The sensor unit 140c includes an inertial measurement unit (IMU) sensor, a collision sensor, a wheel sensor, a speed sensor, an inclination sensor, a weight sensor, a heading sensor, a position module, and a vehicle forward sensor. /May include a reverse sensor, battery sensor, fuel sensor, tire sensor, steering sensor, temperature sensor, humidity sensor, ultrasonic sensor, illuminance sensor, pedal position sensor, etc. The autonomous driving unit 140d includes technology for maintaining the driving lane, technology for automatically adjusting speed such as adaptive cruise control, technology for automatically driving along a set route, and technology for automatically setting the route and driving when the destination is set. Technology, etc. can be implemented.

일 예로, 통신부(110)는 외부 서버로부터 지도 데이터, 교통 정보 데이터 등을 수신할 수 있다. 자율 주행부(140d)는 획득된 데이터를 기반으로 자율 주행 경로와 드라이빙 플랜을 생성할 수 있다. 제어부(120)는 드라이빙 플랜에 따라 차량 또는 자율 주행 차량(100)이 자율 주행 경로를 따라 이동하도록 구동부(140a)를 제어할 수 있다(예, 속도/방향 조절). 자율 주행 도중에 통신부(110)는 외부 서버로부터 최신 교통 정보 데이터를 비/주기적으로 획득하며, 주변 차량으로부터 주변 교통 정보 데이터를 획득할 수 있다. 또한, 자율 주행 도중에 센서부(140c)는 차량 상태, 주변 환경 정보를 획득할 수 있다. 자율 주행부(140d)는 새로 획득된 데이터/정보에 기반하여 자율 주행 경로와 드라이빙 플랜을 갱신할 수 있다. 통신부(110)는 차량 위치, 자율 주행 경로, 드라이빙 플랜 등에 관한 정보를 외부 서버로 전달할 수 있다. 외부 서버는 차량 또는 자율 주행 차량들로부터 수집된 정보에 기반하여, AI 기술 등을 이용하여 교통 정보 데이터를 미리 예측할 수 있고, 예측된 교통 정보 데이터를 차량 또는 자율 주행 차량들에게 제공할 수 있다.For example, the communication unit 110 may receive map data, traffic information data, etc. from an external server. The autonomous driving unit 140d can create an autonomous driving route and driving plan based on the acquired data. The control unit 120 may control the driving unit 140a so that the vehicle or autonomous vehicle 100 moves along the autonomous driving path according to the driving plan (e.g., speed/direction control). During autonomous driving, the communication unit 110 may acquire the latest traffic information data from an external server irregularly/periodically and obtain surrounding traffic information data from surrounding vehicles. Additionally, during autonomous driving, the sensor unit 140c can obtain vehicle status and surrounding environment information. The autonomous driving unit 140d may update the autonomous driving route and driving plan based on newly acquired data/information. The communication unit 110 may transmit information about vehicle location, autonomous driving route, driving plan, etc. to an external server. An external server can predict traffic information data in advance using AI technology, etc., based on information collected from vehicles or self-driving vehicles, and provide the predicted traffic information data to the vehicles or self-driving vehicles.

도 43은 본 발명에 적용되는 차량을 예시한다. 차량은 운송수단, 기차, 비행체, 선박 등으로도 구현될 수 있다.Figure 43 illustrates a vehicle to which the present invention is applied. Vehicles can also be implemented as transportation, trains, airplanes, ships, etc.

도 43을 참조하면, 차량(100)은 통신부(110), 제어부(120), 메모리부(130), 입출력부(140a) 및 위치 측정부(140b)를 포함할 수 있다. 여기서, 블록 110~130/140a~140b는 각각 도 40의 블록 110~130/140에 대응한다.Referring to FIG. 43, the vehicle 100 may include a communication unit 110, a control unit 120, a memory unit 130, an input/output unit 140a, and a position measurement unit 140b. Here, blocks 110 to 130/140a to 140b correspond to blocks 110 to 130/140 of FIG. 40, respectively.

통신부(110)는 다른 차량, 또는 기지국 등의 외부 기기들과 신호(예, 데이터, 제어 신호 등)를 송수신할 수 있다. 제어부(120)는 차량(100)의 구성 요소들을 제어하여 다양한 동작을 수행할 수 있다. 메모리부(130)는 차량(100)의 다양한 기능을 지원하는 데이터/파라미터/프로그램/코드/명령을 저장할 수 있다. 입출력부(140a)는 메모리부(130) 내의 정보에 기반하여 AR/VR 오브젝트를 출력할 수 있다. 입출력부(140a)는 HUD를 포함할 수 있다. 위치 측정부(140b)는 차량(100)의 위치 정보를 획득할 수 있다. 위치 정보는 차량(100)의 절대 위치 정보, 주행선 내에서의 위치 정보, 가속도 정보, 주변 차량과의 위치 정보 등을 포함할 수 있다. 위치 측정부(140b)는 GPS 및 다양한 센서들을 포함할 수 있다.The communication unit 110 may transmit and receive signals (eg, data, control signals, etc.) with other vehicles or external devices such as a base station. The control unit 120 can control components of the vehicle 100 to perform various operations. The memory unit 130 may store data/parameters/programs/codes/commands that support various functions of the vehicle 100. The input/output unit 140a may output an AR/VR object based on information in the memory unit 130. The input/output unit 140a may include a HUD. The location measuring unit 140b may obtain location information of the vehicle 100. The location information may include absolute location information of the vehicle 100, location information within the driving line, acceleration information, and location information with surrounding vehicles. The location measuring unit 140b may include GPS and various sensors.

일 예로, 차량(100)의 통신부(110)는 외부 서버로부터 지도 정보, 교통 정보 등을 수신하여 메모리부(130)에 저장할 수 있다. 위치 측정부(140b)는 GPS 및 다양한 센서를 통하여 차량 위치 정보를 획득하여 메모리부(130)에 저장할 수 있다. 제어부(120)는 지도 정보, 교통 정보 및 차량 위치 정보 등에 기반하여 가상 오브젝트를 생성하고, 입출력부(140a)는 생성된 가상 오브젝트를 차량 내 유리창에 표시할 수 있다(1410, 1420). 또한, 제어부(120)는 차량 위치 정보에 기반하여 차량(100)이 주행선 내에서 정상적으로 운행되고 있는지 판단할 수 있다. 차량(100)이 주행선을 비정상적으로 벗어나는 경우, 제어부(120)는 입출력부(140a)를 통해 차량 내 유리창에 경고를 표시할 수 있다. 또한, 제어부(120)는 통신부(110)를 통해 주변 차량들에게 주행 이상에 관한 경고 메세지를 방송할 수 있다. 상황에 따라, 제어부(120)는 통신부(110)를 통해 관계 기관에게 차량의 위치 정보와, 주행/차량 이상에 관한 정보를 전송할 수 있다.For example, the communication unit 110 of the vehicle 100 may receive map information, traffic information, etc. from an external server and store them in the memory unit 130. The location measurement unit 140b may acquire vehicle location information through GPS and various sensors and store it in the memory unit 130. The control unit 120 creates a virtual object based on map information, traffic information, and vehicle location information, and the input/output unit 140a can display the generated virtual object on the window of the vehicle (1410, 1420). Additionally, the control unit 120 may determine whether the vehicle 100 is operating normally within the travel line based on vehicle location information. If the vehicle 100 deviates from the driving line abnormally, the control unit 120 may display a warning on the window of the vehicle through the input/output unit 140a. Additionally, the control unit 120 may broadcast a warning message regarding driving abnormalities to surrounding vehicles through the communication unit 110. Depending on the situation, the control unit 120 may transmit location information of the vehicle and information about driving/vehicle abnormalities to the relevant organizations through the communication unit 110.

도 44는 본 발명에 적용되는 XR 기기를 예시한다. XR 기기는 HMD, 차량에 구비된 HUD(Head-Up Display), 텔레비전, 스마트폰, 컴퓨터, 웨어러블 디바이스, 가전 기기, 디지털 사이니지(signage), 차량, 로봇 등으로 구현될 수 있다.Figure 44 illustrates an XR device applied to the present invention. XR devices can be implemented as HMDs, HUDs (Head-Up Displays) installed in vehicles, televisions, smartphones, computers, wearable devices, home appliances, digital signage, vehicles, robots, etc.

도 44를 참조하면, XR 기기(100a)는 통신부(110), 제어부(120), 메모리부(130), 입출력부(140a), 센서부(140b) 및 전원공급부(140c)를 포함할 수 있다. 여기서, 블록 110~130/140a~140c은 각각 도 40의 블록 110~130/140에 대응한다.Referring to FIG. 44, the XR device 100a may include a communication unit 110, a control unit 120, a memory unit 130, an input/output unit 140a, a sensor unit 140b, and a power supply unit 140c. . Here, blocks 110 to 130/140a to 140c correspond to blocks 110 to 130/140 of FIG. 40, respectively.

통신부(110)는 다른 무선 기기, 휴대 기기, 또는 미디어 서버 등의 외부 기기들과 신호(예, 미디어 데이터, 제어 신호 등)를 송수신할 수 있다. 미디어 데이터는 영상, 이미지, 소리 등을 포함할 수 있다. 제어부(120)는 XR 기기(100a)의 구성 요소들을 제어하여 다양한 동작을 수행할 수 있다. 예를 들어, 제어부(120)는 비디오/이미지 획득, (비디오/이미지) 인코딩, 메타데이터 생성 및 처리 등의 절차를 제어 및/또는 수행하도록 구성될 수 있다. 메모리부(130)는 XR 기기(100a)의 구동/XR 오브젝트의 생성에 필요한 데이터/파라미터/프로그램/코드/명령을 저장할 수 있다. 입출력부(140a)는 외부로부터 제어 정보, 데이터 등을 획득하며, 생성된 XR 오브젝트를 출력할 수 있다. 입출력부(140a)는 카메라, 마이크로폰, 사용자 입력부, 디스플레이부, 스피커 및/또는 햅틱 모듈 등을 포함할 수 있다. 센서부(140b)는 XR 기기 상태, 주변 환경 정보, 사용자 정보 등을 얻을 수 있다. 센서부(140b)는 근접 센서, 조도 센서, 가속도 센서, 자기 센서, 자이로 센서, 관성 센서, RGB 센서, IR 센서, 지문 인식 센서, 초음파 센서, 광 센서, 마이크로폰 및/또는 레이더 등을 포함할 수 있다. 전원공급부(140c)는 XR 기기(100a)에게 전원을 공급하며, 유/무선 충전 회로, 배터리 등을 포함할 수 있다.The communication unit 110 may transmit and receive signals (eg, media data, control signals, etc.) with external devices such as other wireless devices, mobile devices, or media servers. Media data may include video, images, sound, etc. The control unit 120 may perform various operations by controlling the components of the XR device 100a. For example, the control unit 120 may be configured to control and/or perform procedures such as video/image acquisition, (video/image) encoding, and metadata generation and processing. The memory unit 130 may store data/parameters/programs/codes/commands necessary for driving the XR device 100a/creating an XR object. The input/output unit 140a may obtain control information, data, etc. from the outside and output the generated XR object. The input/output unit 140a may include a camera, microphone, user input unit, display unit, speaker, and/or haptic module. The sensor unit 140b can obtain XR device status, surrounding environment information, user information, etc. The sensor unit 140b may include a proximity sensor, an illumination sensor, an acceleration sensor, a magnetic sensor, a gyro sensor, an inertial sensor, an RGB sensor, an IR sensor, a fingerprint recognition sensor, an ultrasonic sensor, an optical sensor, a microphone, and/or a radar. there is. The power supply unit 140c supplies power to the XR device 100a and may include a wired/wireless charging circuit, a battery, etc.

일 예로, XR 기기(100a)의 메모리부(130)는 XR 오브젝트(예, AR/VR/MR 오브젝트)의 생성에 필요한 정보(예, 데이터 등)를 포함할 수 있다. 입출력부(140a)는 사용자로부터 XR 기기(100a)를 조작하는 명령을 회득할 수 있으며, 제어부(120)는 사용자의 구동 명령에 따라 XR 기기(100a)를 구동시킬 수 있다. 예를 들어, 사용자가 XR 기기(100a)를 통해 영화, 뉴스 등을 시청하려고 하는 경우, 제어부(120)는 통신부(130)를 통해 컨텐츠 요청 정보를 다른 기기(예, 휴대 기기(100b)) 또는 미디어 서버에 전송할 수 있다. 통신부(130)는 다른 기기(예, 휴대 기기(100b)) 또는 미디어 서버로부터 영화, 뉴스 등의 컨텐츠를 메모리부(130)로 다운로드/스트리밍 받을 수 있다. 제어부(120)는 컨텐츠에 대해 비디오/이미지 획득, (비디오/이미지) 인코딩, 메타데이터 생성/처리 등의 절차를 제어 및/또는 수행하며, 입출력부(140a)/센서부(140b)를 통해 획득한 주변 공간 또는 현실 오브젝트에 대한 정보에 기반하여 XR 오브젝트를 생성/출력할 수 있다.As an example, the memory unit 130 of the XR device 100a may include information (eg, data, etc.) necessary for creating an XR object (eg, AR/VR/MR object). The input/output unit 140a can obtain a command to operate the XR device 100a from the user, and the control unit 120 can drive the XR device 100a according to the user's driving command. For example, when a user tries to watch a movie, news, etc. through the XR device 100a, the control unit 120 sends content request information to another device (e.g., mobile device 100b) or It can be transmitted to a media server. The communication unit 130 may download/stream content such as movies and news from another device (eg, mobile device 100b) or a media server to the memory unit 130. The control unit 120 controls and/or performs procedures such as video/image acquisition, (video/image) encoding, and metadata creation/processing for the content, and acquires it through the input/output unit 140a/sensor unit 140b. XR objects can be created/output based on information about surrounding space or real objects.

또한, XR 기기(100a)는 통신부(110)를 통해 휴대 기기(100b)와 무선으로 연결되며, XR 기기(100a)의 동작은 휴대 기기(100b)에 의해 제어될 수 있다. 예를 들어, 휴대 기기(100b)는 XR 기기(100a)에 대한 콘트롤러로 동작할 수 있다. 이를 위해, XR 기기(100a)는 휴대 기기(100b)의 3차원 위치 정보를 획득한 뒤, 휴대 기기(100b)에 대응하는 XR 개체를 생성하여 출력할 수 있다.Additionally, the XR device 100a is wirelessly connected to the mobile device 100b through the communication unit 110, and the operation of the XR device 100a can be controlled by the mobile device 100b. For example, the mobile device 100b may operate as a controller for the XR device 100a. To this end, the XR device 100a may obtain 3D location information of the mobile device 100b and then generate and output an XR object corresponding to the mobile device 100b.

도 45는 본 발명에 적용되는 로봇을 예시한다. 로봇은 사용 목적이나 분야에 따라 산업용, 의료용, 가정용, 군사용 등으로 분류될 수 있다.Figure 45 illustrates a robot applied to the present invention. Robots can be classified into industrial, medical, household, military, etc. depending on the purpose or field of use.

도 45를 참조하면, 로봇(100)은 통신부(110), 제어부(120), 메모리부(130), 입출력부(140a), 센서부(140b) 및 구동부(140c)를 포함할 수 있다. 여기서, 블록 110~130/140a~140c은 각각 도 40의 블록 110~130/140에 대응한다.Referring to FIG. 45, the robot 100 may include a communication unit 110, a control unit 120, a memory unit 130, an input/output unit 140a, a sensor unit 140b, and a driver 140c. Here, blocks 110 to 130/140a to 140c correspond to blocks 110 to 130/140 of FIG. 40, respectively.

통신부(110)는 다른 무선 기기, 다른 로봇, 또는 제어 서버 등의 외부 기기들과 신호(예, 구동 정보, 제어 신호 등)를 송수신할 수 있다. 제어부(120)는 로봇(100)의 구성 요소들을 제어하여 다양한 동작을 수행할 수 있다. 메모리부(130)는 로봇(100)의 다양한 기능을 지원하는 데이터/파라미터/프로그램/코드/명령을 저장할 수 있다. 입출력부(140a)는 로봇(100)의 외부로부터 정보를 획득하며, 로봇(100)의 외부로 정보를 출력할 수 있다. 입출력부(140a)는 카메라, 마이크로폰, 사용자 입력부, 디스플레이부, 스피커 및/또는 햅틱 모듈 등을 포함할 수 있다. 센서부(140b)는 로봇(100)의 내부 정보, 주변 환경 정보, 사용자 정보 등을 얻을 수 있다. 센서부(140b)는 근접 센서, 조도 센서, 가속도 센서, 자기 센서, 자이로 센서, 관성 센서, IR 센서, 지문 인식 센서, 초음파 센서, 광 센서, 마이크로폰, 레이더 등을 포함할 수 있다. 구동부(140c)는 로봇 관절을 움직이는 등의 다양한 물리적 동작을 수행할 수 있다. 또한, 구동부(140c)는 로봇(100)을 지상에서 주행하거나 공중에서 비행하게 할 수 있다. 구동부(140c)는 액츄에이터, 모터, 바퀴, 브레이크, 프로펠러 등을 포함할 수 있다.The communication unit 110 may transmit and receive signals (e.g., driving information, control signals, etc.) with external devices such as other wireless devices, other robots, or control servers. The control unit 120 can control the components of the robot 100 to perform various operations. The memory unit 130 may store data/parameters/programs/codes/commands that support various functions of the robot 100. The input/output unit 140a may obtain information from the outside of the robot 100 and output the information to the outside of the robot 100. The input/output unit 140a may include a camera, microphone, user input unit, display unit, speaker, and/or haptic module. The sensor unit 140b can obtain internal information of the robot 100, surrounding environment information, user information, etc. The sensor unit 140b may include a proximity sensor, an illumination sensor, an acceleration sensor, a magnetic sensor, a gyro sensor, an inertial sensor, an IR sensor, a fingerprint recognition sensor, an ultrasonic sensor, an optical sensor, a microphone, a radar, etc. The driving unit 140c can perform various physical operations such as moving robot joints. Additionally, the driving unit 140c can cause the robot 100 to run on the ground or fly in the air. The driving unit 140c may include an actuator, motor, wheel, brake, propeller, etc.

도 46은 본 발명에 적용되는 AI 기기를 예시한다. AI 기기는 TV, 프로젝터, 스마트폰, PC, 노트북, 디지털방송용 단말기, 태블릿 PC, 웨어러블 장치, 셋톱박스(STB), 라디오, 세탁기, 냉장고, 디지털 사이니지, 로봇, 차량 등과 같은, 고정형 기기 또는 이동 가능한 기기 등으로 구현될 수 있다.Figure 46 illustrates an AI device applied to the present invention. AI devices are fixed or mobile devices such as TVs, projectors, smartphones, PCs, laptops, digital broadcasting terminals, tablet PCs, wearable devices, set-top boxes (STBs), radios, washing machines, refrigerators, digital signage, robots, vehicles, etc. It can be implemented with any available device.

도 46을 참조하면, AI 기기(100)는 통신부(110), 제어부(120), 메모리부(130), 입/출력부(140a/140b), 러닝 프로세서부(140c) 및 센서부(140d)를 포함할 수 있다. 블록 110~130/140a~140d는 각각 도 40의 블록 110~130/140에 대응한다.Referring to FIG. 46, the AI device 100 includes a communication unit 110, a control unit 120, a memory unit 130, an input/output unit (140a/140b), a learning processor unit 140c, and a sensor unit 140d. may include. Blocks 110 to 130/140a to 140d correspond to blocks 110 to 130/140 in FIG. 40, respectively.

통신부(110)는 유무선 통신 기술을 이용하여 다른 AI 기기(예, 도 37, 100x, 200, 400)나 AI 서버(200) 등의 외부 기기들과 유무선 신호(예, 센서 정보, 사용자 입력, 학습 모델, 제어 신호 등)를 송수신할 수 있다. 이를 위해, 통신부(110)는 메모리부(130) 내의 정보를 외부 기기로 전송하거나, 외부 기기로부터 수신된 신호를 메모리부(130)로 전달할 수 있다.The communication unit 110 uses wired and wireless communication technology to communicate with external devices such as other AI devices (e.g., 100x, 200, 400 in Figure 37) or the AI server 200 and wired and wireless signals (e.g., sensor information, user input, learning models, control signals, etc.) can be transmitted and received. To this end, the communication unit 110 may transmit information in the memory unit 130 to an external device or transmit a signal received from an external device to the memory unit 130.

제어부(120)는 데이터 분석 알고리즘 또는 머신 러닝 알고리즘을 사용하여 결정되거나 생성된 정보에 기초하여, AI 기기(100)의 적어도 하나의 실행 가능한 동작을 결정할 수 있다. 그리고, 제어부(120)는 AI 기기(100)의 구성 요소들을 제어하여 결정된 동작을 수행할 수 있다. 예를 들어, 제어부(120)는 러닝 프로세서부(140c) 또는 메모리부(130)의 데이터를 요청, 검색, 수신 또는 활용할 수 있고, 적어도 하나의 실행 가능한 동작 중 예측되는 동작이나, 바람직한 것으로 판단되는 동작을 실행하도록 AI 기기(100)의 구성 요소들을 제어할 수 있다. 또한, 제어부(120)는 AI 장치(100)의 동작 내용이나 동작에 대한 사용자의 피드백 등을 포함하는 이력 정보를 수집하여 메모리부(130) 또는 러닝 프로세서부(140c)에 저장하거나, AI 서버(도 37, 400) 등의 외부 장치에 전송할 수 있다. 수집된 이력 정보는 학습 모델을 갱신하는데 이용될 수 있다.The control unit 120 may determine at least one executable operation of the AI device 100 based on information determined or generated using a data analysis algorithm or a machine learning algorithm. And, the control unit 120 can control the components of the AI device 100 to perform the determined operation. For example, the control unit 120 may request, search, receive, or utilize data from the learning processor unit 140c or the memory unit 130, and may select at least one executable operation that is predicted or is determined to be desirable. Components of the AI device 100 can be controlled to execute operations. In addition, the control unit 120 collects history information including the user's feedback on the operation content or operation of the AI device 100 and stores it in the memory unit 130 or the learning processor unit 140c, or the AI server ( It can be transmitted to an external device such as Figure 37, 400). The collected historical information can be used to update the learning model.

메모리부(130)는 AI 기기(100)의 다양한 기능을 지원하는 데이터를 저장할 수 있다. 예를 들어, 메모리부(130)는 입력부(140a)로부터 얻은 데이터, 통신부(110)로부터 얻은 데이터, 러닝 프로세서부(140c)의 출력 데이터, 및 센싱부(140)로부터 얻은 데이터를 저장할 수 있다. 또한, 메모리부(130)는 제어부(120)의 동작/실행에 필요한 제어 정보 및/또는 소프트웨어 코드를 저장할 수 있다.The memory unit 130 can store data supporting various functions of the AI device 100. For example, the memory unit 130 may store data obtained from the input unit 140a, data obtained from the communication unit 110, output data from the learning processor unit 140c, and data obtained from the sensing unit 140. Additionally, the memory unit 130 may store control information and/or software codes necessary for operation/execution of the control unit 120.

입력부(140a)는 AI 기기(100)의 외부로부터 다양한 종류의 데이터를 획득할 수 있다. 예를 들어, 입력부(120)는 모델 학습을 위한 학습 데이터, 및 학습 모델이 적용될 입력 데이터 등을 획득할 수 있다. 입력부(140a)는 카메라, 마이크로폰 및/또는 사용자 입력부 등을 포함할 수 있다. 출력부(140b)는 시각, 청각 또는 촉각 등과 관련된 출력을 발생시킬 수 있다. 출력부(140b)는 디스플레이부, 스피커 및/또는 햅틱 모듈 등을 포함할 수 있다. 센싱부(140)는 다양한 센서들을 이용하여 AI 기기(100)의 내부 정보, AI 기기(100)의 주변 환경 정보 및 사용자 정보 중 적어도 하나를 얻을 수 있다. 센싱부(140)는 근접 센서, 조도 센서, 가속도 센서, 자기 센서, 자이로 센서, 관성 센서, RGB 센서, IR 센서, 지문 인식 센서, 초음파 센서, 광 센서, 마이크로폰 및/또는 레이더 등을 포함할 수 있다.The input unit 140a can obtain various types of data from outside the AI device 100. For example, the input unit 120 may acquire training data for model training and input data to which the learning model will be applied. The input unit 140a may include a camera, microphone, and/or a user input unit. The output unit 140b may generate output related to vision, hearing, or tactile sensation. The output unit 140b may include a display unit, a speaker, and/or a haptic module. The sensing unit 140 may obtain at least one of internal information of the AI device 100, surrounding environment information of the AI device 100, and user information using various sensors. The sensing unit 140 may include a proximity sensor, an illumination sensor, an acceleration sensor, a magnetic sensor, a gyro sensor, an inertial sensor, an RGB sensor, an IR sensor, a fingerprint recognition sensor, an ultrasonic sensor, an optical sensor, a microphone, and/or a radar. there is.

러닝 프로세서부(140c)는 학습 데이터를 이용하여 인공 신경망으로 구성된 모델을 학습시킬 수 있다. 러닝 프로세서부(140c)는 AI 서버(도 37, 400)의 러닝 프로세서부와 함께 AI 프로세싱을 수행할 수 있다. 러닝 프로세서부(140c)는 통신부(110)를 통해 외부 기기로부터 수신된 정보, 및/또는 메모리부(130)에 저장된 정보를 처리할 수 있다. 또한, 러닝 프로세서부(140c)의 출력 값은 통신부(110)를 통해 외부 기기로 전송되거나/되고, 메모리부(130)에 저장될 수 있다.The learning processor unit 140c can train a model composed of an artificial neural network using training data. The learning processor unit 140c may perform AI processing together with the learning processor unit of the AI server (FIG. 37, 400). The learning processor unit 140c may process information received from an external device through the communication unit 110 and/or information stored in the memory unit 130. Additionally, the output value of the learning processor unit 140c may be transmitted to an external device through the communication unit 110 and/or stored in the memory unit 130.

이상에서 설명된 실시 예들은 본 발명의 구성요소들과 특징들이 소정 형태로 결합된 것들이다. 각 구성요소 또는 특징은 별도의 명시적 언급이 없는 한 선택적인 것으로 고려되어야 한다. 각 구성요소 또는 특징은 다른 구성요소나 특징과 결합되지 않은 형태로 실시될 수 있다. 또한, 일부 구성요소들 및/또는 특징들을 결합하여 본 발명의 실시 예를 구성하는 것도 가능하다. 본 발명의 실시 예들에서 설명되는 동작들의 순서는 변경될 수 있다. 어느 실시예의 일부 구성이나 특징은 다른 실시 예에 포함될 수 있고, 또는 다른 실시예의 대응하는 구성 또는 특징과 교체될 수 있다. 특허청구범위에서 명시적인 인용 관계가 있지 않은 청구항들을 결합하여 실시 예를 구성하거나 출원 후의 보정에 의해 새로운 청구항으로 포함시킬 수 있음은 자명하다.The embodiments described above combine the components and features of the present invention in a predetermined form. Each component or feature should be considered optional unless explicitly stated otherwise. Each component or feature may be implemented in a form that is not combined with other components or features. Additionally, it is possible to configure an embodiment of the present invention by combining some components and/or features. The order of operations described in embodiments of the present invention may be changed. Some features or features of one embodiment may be included in other embodiments or may be replaced with corresponding features or features of other embodiments. It is obvious that claims that do not have an explicit reference relationship in the patent claims can be combined to form an embodiment or included as a new claim through amendment after filing.

본 발명에 따른 실시 예는 다양한 수단, 예를 들어, 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다. 하드웨어에 의한 구현의 경우, 본 발명의 일 실시 예는 하나 또는 그 이상의 ASICs(application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 프로세서, 콘트롤러, 마이크로 콘트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.Embodiments according to the present invention may be implemented by various means, for example, hardware, firmware, software, or a combination thereof. In the case of implementation by hardware, an embodiment of the present invention includes one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), and FPGAs ( It can be implemented by field programmable gate arrays, processors, controllers, microcontrollers, microprocessors, etc.

펌웨어나 소프트웨어에 의한 구현의 경우, 본 발명의 일 실시 예는 이상에서 설명된 기능 또는 동작들을 수행하는 모듈, 절차, 함수 등의 형태로 구현될 수 있다. 소프트웨어 코드는 메모리에 저장되어 프로세서에 의해 구동될 수 있다. 상기 메모리는 상기 프로세서 내부 또는 외부에 위치하여, 이미 공지된 다양한 수단에 의해 상기 프로세서와 데이터를 주고 받을 수 있다.In the case of implementation by firmware or software, an embodiment of the present invention may be implemented in the form of a module, procedure, function, etc. that performs the functions or operations described above. Software code can be stored in memory and run by a processor. The memory is located inside or outside the processor and can exchange data with the processor through various known means.

본 발명은 본 발명의 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있음은 통상의 기술자에게 자명하다. 따라서, 상술한 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니 되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.It is obvious to those skilled in the art that the present invention can be embodied in other specific forms without departing from the essential features of the present invention. Accordingly, the above detailed description should not be construed as restrictive in all respects and should be considered illustrative. The scope of the present invention should be determined by reasonable interpretation of the appended claims, and all changes within the equivalent scope of the present invention are included in the scope of the present invention.

본 발명은 3GPP LTE/LTE-A, 5G 시스템에 적용되는 예를 중심으로 설명하였으나, 3GPP LTE/LTE-A, 5G 시스템 이외에도 다양한 무선 통신 시스템에 적용하는 것이 가능하다.The present invention has been described focusing on examples of application to 3GPP LTE/LTE-A and 5G systems, but it can be applied to various wireless communication systems in addition to 3GPP LTE/LTE-A and 5G systems.

Claims (19)

오토 인코더(auto encoder)를 이용하는 무선 통신 시스템에서 송신단이 신호를 전송하기 위한 방법은,
사전 학습된 송신단 인코더 뉴럴 네트워크(neural network)에 기초하여 입력 데이터를 인코딩(encoding)하는 단계; 및
상기 인코딩된 입력 데이터에 기초하여 상기 신호를 수신단으로 전송하는 단계를 포함하되,
상기 송신단 인코더 뉴럴 네트워크는 (i) 상기 입력 데이터를 입력 받아 제 1 코드워드(codeword)를 출력하는 제 1 인코더 뉴럴 네트워크, (ii) 상기 제 1 코드워드를 입력 받아 인터리빙(interleaving)하고, 상기 인터리빙된 제 1 코드워드를 출력하는 인터리버(interleaver) 및 (iii) 상기 인터리빙된 제 1 코드워드를 입력 받아 상기 인코딩된 입력 데이터를 구성하는 제 2 코드워드를 출력하는 제 2 인코더 뉴럴 네트워크를 직렬적으로(serially) 포함하는 것을 특징으로 하는 방법.
The method for the transmitter to transmit a signal in a wireless communication system using an auto encoder is:
Encoding input data based on a pre-trained transmitter encoder neural network; and
Including transmitting the signal to a receiving end based on the encoded input data,
The transmitter encoder neural network is (i) a first encoder neural network that receives the input data and outputs a first codeword, (ii) receives the first codeword and interleaves it, and the interleaving an interleaver that outputs the first codeword, and (iii) a second encoder neural network that receives the interleaved first codeword and outputs a second codeword constituting the encoded input data in series. (serially) A method characterized by including.
제 1 항에 있어서,
상기 제 1 인코더 뉴럴 네트워크는 n1개의 제 1 인코더 컴포넌트 뉴럴 네트워크로 구성되고, 상기 제 2 인코더 뉴럴 네트워크는 n2개의 상기 제 1 인코더 컴포넌트 뉴럴 네트워크 및 n3개의 제 2 인코더 컴포넌트 뉴럴 네트워크로 구성되고,
상기 n1, n2 및 n3는 0이 아닌 양의 정수인 것을 특징으로 하는 방법.
According to claim 1,
The first encoder neural network is composed of n1 first encoder component neural networks, and the second encoder neural network is composed of n2 first encoder component neural networks and n3 second encoder component neural networks,
Wherein n1, n2 and n3 are positive integers other than 0.
제 2 항에 있어서,
상기 입력 데이터의 길이가 k인 것에 기초하여, 상기 제 1 인코더 뉴럴 네트워트의 코드 레이트(code rate)는 k/n1이고, 상기 제 2 인코더 뉴럴 네트워크의 코드 레이트는 n1/(n2+n3)이고, 상기 송신단 인코더 뉴럴 네트워크의 전체 코드 레이트는 k/(n2+n3)인 것을 특징으로 하는 방법.
According to claim 2,
Based on the length of the input data being k, the code rate of the first encoder neural network is k/n1, the code rate of the second encoder neural network is n1/(n2+n3), A method characterized in that the total code rate of the transmitter encoder neural network is k/(n2+n3).
제 2 항에 있어서,
상기 제 1 인코더 컴포넌트 뉴럴 네트워크 및 상기 제 2 인코더 컴포넌트 뉴럴 네트워크 각각은 적어도 하나 이상의 계층(layer)으로 구성되고,
상기 제 1 인코더 컴포넌트 뉴럴 네트워크 및 상기 제 2 인코더 컴포넌트 뉴럴 네트워크는 입력 값에 대한 필터링(filtering)을 위한 (i) 필터링 함수 및 (ii) 상기 필터링 함수의 출력을 입력 받는 활성화 함수(activation function)를 포함하는 뉴럴 네트워크 구성 단위에 기초하여 구성되는 것을 특징으로 하는 방법.
According to claim 2,
Each of the first encoder component neural network and the second encoder component neural network consists of at least one layer,
The first encoder component neural network and the second encoder component neural network include (i) a filtering function for filtering the input value and (ii) an activation function that receives the output of the filtering function. A method characterized in that it is constructed based on a neural network structural unit including.
제 4 항에 있어서,
상기 제 1 인코더 컴포넌트 뉴럴 네트워크 및 상기 제 2 인코더 컴포넌트 뉴럴 네트워크 각각은 2개의 계층(layer)으로 구성되는 것을 특징으로 하는 방법.
According to claim 4,
The method is characterized in that each of the first encoder component neural network and the second encoder component neural network consists of two layers.
제 5 항에 있어서,
상기 n1 및 상기 n2의 값은 동일하고, 상기 n3는 1인 것을 특징으로 하는 방법.
According to claim 5,
The method wherein the values of n1 and n2 are the same, and n3 is 1.
제 6 항에 있어서,
상기 제 1 인코더 컴포넌트 뉴럴 네트워크는 하나의 입력 값을 입력 받는 제 1 뉴럴 네트워크 구성 단위 및 상기 제 1 뉴럴 네트워크 구성 단위의 출력을 입력 받는 제 2 뉴럴 네트워크 구성 단위를 포함하고, 상기 제 2 뉴럴 네트워크 구성 단위의 출력에 선형 회귀(Linear regression)를 적용하고, 상기 선형 회귀가 적용된 상기 제 2 뉴럴 네트워크 구성 단위의 출력에 eLu(exponential linear unit) 함수를 적용하는 것을 특징으로 하는 방법.
According to claim 6,
The first encoder component neural network includes a first neural network unit that receives one input value and a second neural network unit that receives an output of the first neural network unit, and the second neural network unit consists of A method characterized by applying linear regression to the output of a unit and applying an eLu (exponential linear unit) function to the output of the second neural network constituent unit to which the linear regression is applied.
제 7 항에 있어서,
상기 제 2 인코더 컴포넌트 뉴럴 네트워크는 상기 n1개의 입력 값을 입력 받는 제 3 뉴럴 네트워크 구성 단위 및 상기 제 3 뉴럴 네트워크 구성 단위의 출력 값을 입력 받는 제 4 뉴럴 네트워크 구성 단위를 포함하고, 상기 제 4 뉴럴 네트워크 구성 단위의 출력 값에 상기 선형 회귀를 적용하고, 상기 선형 회귀가 적용된 상기 제 4 뉴럴 네트워크 구성 단위의 출력값에 상기 eLu 함수를 적용하는 것을 특징으로 하는 방법.
According to claim 7,
The second encoder component neural network includes a third neural network unit that receives the n1 input values and a fourth neural network unit that receives output values of the third neural network unit, and the fourth neural network unit receives the n1 input values. A method characterized by applying the linear regression to an output value of a network component and applying the eLu function to an output value of the fourth neural network component to which the linear regression is applied.
제 8 항에 있어서,
상기 제 1 뉴럴 네트워크 구성 단위 및 상기 제 3 뉴럴 네트워크 구성 단위는 상기 2개의 계층 중 하나인 제 1 계층을 구성하고,
상기 제 2 뉴럴 네트워크 구성 단위 및 상기 제 4 뉴럴 네트워크 구성 단위는 상기 2개의 계층 중 나머지 하나인 제 2 계층을 구성하는 것을 특징으로 하는 방법.
According to claim 8,
The first neural network structural unit and the third neural network structural unit constitute a first layer, one of the two layers,
The method characterized in that the second neural network structural unit and the fourth neural network structural unit constitute a second layer, which is the remaining one of the two layers.
제 8 항에 있어서,
상기 제 1 뉴럴 네트워크 구성 단위 내지 상기 제 4 뉴럴 네트워크 구성 단위 각각의 출력 값이 출력되는 출력 채널의 개수는 100인 것을 특징으로 하는 방법.
According to claim 8,
A method wherein the number of output channels through which output values of each of the first to fourth neural network units are output is 100.
제 1 항에 있어서,
상기 인터리버에 입력되는 상기 제 1 코드워드 비트열(bit stream) 내의 i+1번째 비트(bit)는 아래의 수학식에 기초하여 인터리빙되고,
[수학식]
Figure pct00016

여기서, L은 인터리버의 크기이고, f0은 상수 오프셋(constant offset)이고, f1은 상기 L과 서로소 관계를 만족하는 소수(prime number)이고, f2는 L의 약수(fraction)들 중 2의 거듭 제곱 수(power of 2)에 해당하는 수인 것을 특징으로 하는 방법.
According to claim 1,
The i+1th bit in the first codeword bit stream input to the interleaver is interleaved based on the equation below,
[Equation]
Figure pct00016

Here, L is the size of the interleaver, f0 is a constant offset, f1 is a prime number that satisfies the disjoint relationship with L, and f2 is the power of 2 among the divisors of L. A method characterized in that the number corresponds to the power of 2.
제 11 항에 있어서,
상기 f0 은 0이고, 상기 제 1 코드워드의 비트열에 대하여 상기 f2의 값만큼 병렬(parallel) 연산이 수행되는 것을 특징으로 하는 방법.
According to claim 11,
The method is characterized in that the f0 is 0, and a parallel operation is performed on the bit string of the first codeword as much as the value of f2.
제 4 항에 있어서,
상기 적어도 하나 이상의 계층 중 가장 먼저 위치하는 계층을 구성하는 특정 뉴럴 네트워크 구성 단위는 상기 필터링 함수의 출력 채널의 수를 감소시키기 위한 풀링 계층(pooling layer)을 더 포함하고,
상기 풀링 계층은 상기 필터링 함수 및 상기 활성화 함수 사이에 위치하는 것을 특징으로 하는 방법.
According to claim 4,
A specific neural network unit constituting the first layer among the at least one layer further includes a pooling layer for reducing the number of output channels of the filtering function,
The method characterized in that the pooling layer is located between the filtering function and the activation function.
제 13 항에 있어서,
상기 가장 먼저 위치하는 계층 이후에 위치하는 계층들을 구성하는 각각의 뉴럴 네트워크 구성 단위들은 상기 풀링 계층(pooling layer)을 더 포함하는 것을 특징으로 하는 방법.
According to claim 13,
Each neural network structural unit constituting layers located after the first layer further includes the pooling layer.
오토 인코더(auto encoder)를 이용하는 무선 통신 시스템에서 신호를 송수신하기 위한 송신단에 있어서,
무선 신호를 전송하기 위한 전송기(transmitter);
무선 신호를 수신하기 위한 수신기(receiver);
적어도 하나의 프로세서; 및
상기 적어도 하나의 프로세서에 동작 가능하게 접속 가능하고, 상기 적어도 하나의 프로세서에 의해 실행될 때, 동작들을 수행하는 지시(instruction)들을 저장하는 적어도 하나의 컴퓨터 메모리를 포함하며,
상기 동작들은,
사전 학습된 송신단 인코더 뉴럴 네트워크(neural network)에 기초하여 입력 데이터를 인코딩(encoding)하는 단계; 및
상기 인코딩된 입력 데이터에 기초하여 상기 신호를 수신단으로 전송하는 단계를 포함하되,
상기 송신단 인코더 뉴럴 네트워크는 (i) 상기 입력 데이터를 입력 받아 제 1 코드워드(codeword)를 출력하는 제 1 인코더 뉴럴 네트워크, (ii) 상기 제 1 코드워드를 입력 받아 인터리빙(interleaving)하고, 상기 인터리빙된 제 1 코드워드를 출력하는 인터리버(interleaver) 및 (iii) 상기 인터리빙된 제 1 코드워드를 입력 받아 상기 인코딩된 입력 데이터를 구성하는 제 2 코드워드를 출력하는 제 2 인코더 뉴럴 네트워크를 직렬적으로(serially) 포함하는 것을 특징으로 하는 송신단.
In a transmitting terminal for transmitting and receiving signals in a wireless communication system using an auto encoder,
A transmitter for transmitting wireless signals;
A receiver for receiving wireless signals;
at least one processor; and
at least one computer memory operably connectable to the at least one processor and storing instructions that, when executed by the at least one processor, perform operations;
The above operations are,
Encoding input data based on a pre-trained transmitter encoder neural network; and
Including transmitting the signal to a receiving end based on the encoded input data,
The transmitter encoder neural network is (i) a first encoder neural network that receives the input data and outputs a first codeword, (ii) receives the first codeword and interleaves it, and the interleaving an interleaver that outputs the first codeword, and (iii) a second encoder neural network that receives the interleaved first codeword and outputs a second codeword constituting the encoded input data in series. A transmitting terminal characterized in that it includes (serially).
오토 인코더(auto encoder)를 이용하는 무선 통신 시스템에서 수신단이 신호를 수신하기 위한 방법은,
사전 학습된 송신단 인코더 뉴럴 네트워크(neural network)에 기초하여 인코딩된 데이터를 포함하는 신호를 송신단으로부터 수신하는 단계;
사전 학습된 수신단 디코더 뉴럴 네트워크(neural network)에 기초하여 상기 신호에 포함된 상기 인코딩된 데이터를 디코딩(decoding)하는 단계를 포함하되,
상기 수신단 디코더 뉴럴 네트워크는 순차적으로 연결된 적어도 하나 이상의 기본 디코더 뉴럴 네트워크를 포함하고,
상기 적어도 하나 이상의 기본 디코더 뉴럴 네트워크 각각은 (i) 송신단 인코더 뉴럴 네트워크에 포함된 제 2 인코더 뉴럴 네트워크에서 출력된 제 2 코드워드에 대한 디코딩을 수행하고, 제 2 디코딩된 코드워드를 출력하는 제 2 디코더 뉴럴 네트워크, (ii) 상기 제 2 디코딩된 코드워드를 입력 받아 디-인터리빙(de-interleaving)하고, 상기 디-인터리빙된 제 2 디코딩된 코드워드를 출력하는 디-인터리버(de-interleaver) 및 (iii) 상기 디-인터리빙된 제 2 디코딩된 코드워드에 대한 디코딩을 수행하고, 상기 디-인터리빙된 제 2 디코딩된 코드워드에 대한 디코딩에 기초한 제 1 디코딩된 코드워드를 출력하는 제 1 디코더 뉴럴 네트워크를 직렬적으로(serially) 포함하는 것을 특징으로 하는 방법.
The method for the receiving end to receive a signal in a wireless communication system using an auto encoder is:
Receiving a signal including data encoded based on a pre-trained transmitter encoder neural network from a transmitter;
Including decoding the encoded data included in the signal based on a pre-trained receiving end decoder neural network,
The receiving end decoder neural network includes at least one basic decoder neural network connected sequentially,
Each of the at least one basic decoder neural network (i) performs decoding on a second codeword output from a second encoder neural network included in the transmitter encoder neural network and outputs a second decoded codeword. A decoder neural network, (ii) a de-interleaver that receives the second decoded codeword, de-interleaves it, and outputs the deinterleaved second decoded codeword, and (iii) a first decoder neural that performs decoding on the de-interleaved second decoded codeword and outputs a first decoded codeword based on the decoding on the de-interleaved second decoded codeword A method characterized in that it includes the network serially.
오토 인코더(auto encoder)를 이용하는 무선 통신 시스템에서 신호를 송수신하기 위한 송신단에 있어서,
무선 신호를 전송하기 위한 전송기(transmitter);
무선 신호를 수신하기 위한 수신기(receiver);
적어도 하나의 프로세서; 및
상기 적어도 하나의 프로세서에 동작 가능하게 접속 가능하고, 상기 적어도 하나의 프로세서에 의해 실행될 때, 동작들을 수행하는 지시(instruction)들을 저장하는 적어도 하나의 컴퓨터 메모리를 포함하며,
상기 동작들은,
사전 학습된 송신단 인코더 뉴럴 네트워크(neural network)에 기초하여 인코딩된 데이터를 포함하는 신호를 송신단으로부터 수신하는 단계;
사전 학습된 수신단 디코더 뉴럴 네트워크(neural network)에 기초하여 상기 신호에 포함된 상기 인코딩된 데이터를 디코딩(decoding)하는 단계를 포함하되,
상기 수신단 디코더 뉴럴 네트워크는 순차적으로 연결된 적어도 하나 이상의 기본 디코더 뉴럴 네트워크를 포함하고,
상기 적어도 하나 이상의 기본 디코더 뉴럴 네트워크 각각은 (i) 송신단 인코더 뉴럴 네트워크에 포함된 제 2 인코더 뉴럴 네트워크에서 출력된 제 2 코드워드에 대한 디코딩을 수행하고, 제 2 디코딩된 코드워드를 출력하는 제 2 디코더 뉴럴 네트워크, (ii) 상기 제 2 디코딩된 코드워드를 입력 받아 디-인터리빙(de-interleaving)하고, 상기 디-인터리빙된 제 2 디코딩된 코드워드를 출력하는 디-인터리버(de-interleaver) 및 (iii) 상기 디-인터리빙된 제 2 디코딩된 코드워드에 대한 디코딩을 수행하고, 상기 디-인터리빙된 제 2 디코딩된 코드워드에 대한 디코딩에 기초한 제 1 디코딩된 코드워드를 출력하는 제 1 디코더 뉴럴 네트워크를 직렬적으로(serially) 포함하는 것을 특징으로 하는 방법.
In a transmitting terminal for transmitting and receiving signals in a wireless communication system using an auto encoder,
A transmitter for transmitting wireless signals;
A receiver for receiving wireless signals;
at least one processor; and
at least one computer memory operably connectable to the at least one processor and storing instructions that, when executed by the at least one processor, perform operations;
The above operations are,
Receiving a signal including data encoded based on a pre-trained transmitter encoder neural network from a transmitter;
Including decoding the encoded data included in the signal based on a pre-trained receiving end decoder neural network,
The receiving end decoder neural network includes at least one basic decoder neural network connected sequentially,
Each of the at least one basic decoder neural network (i) performs decoding on a second codeword output from a second encoder neural network included in the transmitter encoder neural network and outputs a second decoded codeword. A decoder neural network, (ii) a de-interleaver that receives the second decoded codeword, de-interleaves it, and outputs the deinterleaved second decoded codeword, and (iii) a first decoder neural that performs decoding on the de-interleaved second decoded codeword and outputs a first decoded codeword based on the decoding on the de-interleaved second decoded codeword A method characterized in that it includes the network serially.
하나 이상의 명령어들을 저장하는 비일시적 컴퓨터 판독 가능 매체(computer readable medium, CRM)에 있어서,
하나 이상의 프로세서들에 의해 실행 가능한 하나 이상의 명령어들은 송신단이,
사전 학습된 송신단 인코더 뉴럴 네트워크(neural network)에 기초하여 입력 데이터를 인코딩(encoding)하도록 하고,
상기 인코딩된 입력 데이터에 기초하여 상기 신호를 수신단으로 전송하도록 하되,
상기 송신단 인코더 뉴럴 네트워크는 (i) 상기 입력 데이터를 입력 받아 제 1 코드워드(codeword)를 출력하는 제 1 인코더 뉴럴 네트워크, (ii) 상기 제 1 코드워드를 입력 받아 인터리빙(interleaving)하고, 상기 인터리빙된 제 1 코드워드를 출력하는 인터리버(interleaver) 및 (iii) 상기 인터리빙된 제 1 코드워드를 입력 받아 상기 인코딩된 입력 데이터를 구성하는 제 2 코드워드를 출력하는 제 2 인코더 뉴럴 네트워크를 직렬적으로(serially) 포함하는 것을 특징으로 하는 비일시적 컴퓨터 판독 가능 매체.
In a non-transitory computer readable medium (CRM) storing one or more instructions,
One or more instructions executable by one or more processors are provided by the transmitting end,
Encoding the input data based on a pre-trained transmitter encoder neural network,
The signal is transmitted to the receiving end based on the encoded input data,
The transmitter encoder neural network is (i) a first encoder neural network that receives the input data and outputs a first codeword, (ii) receives the first codeword and interleaves it, and the interleaving an interleaver that outputs the first codeword, and (iii) a second encoder neural network that receives the interleaved first codeword and outputs a second codeword constituting the encoded input data in series. A non-transitory computer-readable medium comprising (serially).
하나 이상의 메모리들 및 상기 하나 이상의 메모리들과 기능적으로 연결되어 있는 하나 이상의 프로세서들을 포함하는 장치에 있어서,
상기 하나 이상의 프로세서들은 상기 장치가,
상기 장치의 사전 학습된 송신단 인코더 뉴럴 네트워크(neural network)에 기초하여 입력 데이터를 인코딩(encoding)하도록 상기 장치를 제어하고,
상기 인코딩된 입력 데이터에 기초하여 상기 신호를 수신단으로 전송하도록 하되 상기 장치를 제어하되,
상기 송신단 인코더 뉴럴 네트워크는 (i) 상기 입력 데이터를 입력 받아 제 1 코드워드(codeword)를 출력하는 제 1 인코더 뉴럴 네트워크, (ii) 상기 제 1 코드워드를 입력 받아 인터리빙(interleaving)하고, 상기 인터리빙된 제 1 코드워드를 출력하는 인터리버(interleaver) 및 (iii) 상기 인터리빙된 제 1 코드워드를 입력 받아 상기 인코딩된 입력 데이터를 구성하는 제 2 코드워드를 출력하는 제 2 인코더 뉴럴 네트워크를 직렬적으로(serially) 포함하는 것을 특징으로 하는 장치.
A device comprising one or more memories and one or more processors functionally connected to the one or more memories,
The one or more processors allow the device to:
Control the device to encode input data based on a pre-trained transmitter encoder neural network of the device,
Control the device to transmit the signal to the receiving end based on the encoded input data,
The transmitter encoder neural network is (i) a first encoder neural network that receives the input data and outputs a first codeword, (ii) receives the first codeword and interleaves it, and the interleaving an interleaver that outputs the first codeword, and (iii) a second encoder neural network that receives the interleaved first codeword and outputs a second codeword constituting the encoded input data in series. (serially) A device characterized in that it includes.
KR1020237035662A 2021-04-28 2021-04-28 Method and device for transmitting and receiving signals in a wireless communication system using an auto encoder KR20240001134A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/KR2021/005384 WO2022231026A1 (en) 2021-04-28 2021-04-28 Method for transmitting/receiving signal in wireless communication system using auto encoder, and device therefor

Publications (1)

Publication Number Publication Date
KR20240001134A true KR20240001134A (en) 2024-01-03

Family

ID=83846970

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020237035662A KR20240001134A (en) 2021-04-28 2021-04-28 Method and device for transmitting and receiving signals in a wireless communication system using an auto encoder

Country Status (2)

Country Link
KR (1) KR20240001134A (en)
WO (1) WO2022231026A1 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8205132B2 (en) * 2007-05-07 2012-06-19 Lingna Holdings Pte., Llc Cooperative concatenated coding for wireless systems
US9240808B2 (en) * 2010-09-10 2016-01-19 Trellis Phase Communications, Lp Methods, apparatus, and systems for coding with constrained interleaving
KR102174659B1 (en) * 2017-06-19 2020-11-05 버지니아 테크 인터렉추얼 프라퍼티스, 인크. Encoding and Decoding Information for Wireless Transmission Using Multi-antenna Transceiver

Also Published As

Publication number Publication date
WO2022231026A1 (en) 2022-11-03

Similar Documents

Publication Publication Date Title
CN110892775B (en) Method for transmitting and receiving physical downlink shared channel in wireless communication system and apparatus therefor
CN112567677B (en) Method for transmitting and receiving HARQ information in wireless communication system and apparatus therefor
US20230231653A1 (en) Method for transmitting or receiving data in wireless communication system and apparatus therefor
US20210274537A1 (en) Method for transmitting or receiving downlink signal between terminal and base station in wireless communication system and apparatus for supporting same
US20230289564A1 (en) Neural network-based communication method and device
KR20230062821A (en) Method for performing associative learning in a wireless communication system and apparatus therefor
US11784663B2 (en) Method and apparatus for performing encoding on basis of parity check matrix of low density parity check code generated from protograph in wireless communication system
KR20230051203A (en) Method for pre-processing downlink in wireless communication system and apparatus therefor
KR20230042206A (en) Method and apparatus for transmitting and receiving signals using multiple antennas in a wireless communication system
KR20230045011A (en) Signal randomization method and apparatus of communication device
KR20230058400A (en) Federated learning method based on selective weight transmission and its terminal
US20210391954A1 (en) Method and apparatus for adjusting threshold for determining harq feedback in nr v2x
KR20240001134A (en) Method and device for transmitting and receiving signals in a wireless communication system using an auto encoder
US11855762B2 (en) Method and device for receiving feedback in group-based communication in NR V2X
KR20230049664A (en) Communication method based on similarity of channel space information between frequency bands in wireless communication system and apparatus therefor
KR20240021223A (en) Method for performing beam management in a wireless communication system and apparatus therefor
KR20230095936A (en) Method and apparatus for performing feedback of terminal and base station in wireless communication system
KR20230060505A (en) Communication method for federated learning and device performing the same
KR20230065236A (en) Neural network encoder structure and encoding method usable in a wireless communication system
KR20230036057A (en) Method and apparatus for performing channel coding of terminal and base station in wireless communication system
KR20230052909A (en) Method for controlling operation of deep neural network in wireless communication system and apparatus therefor
KR20230031848A (en) Method and apparatus for transmitting and receiving signals between a terminal and a base station in a wireless communication system
KR20230095909A (en) Method and apparatus for performing channel encoding and decoding in a wireless communication system
KR20230031892A (en) Method for transmitting and receiving signals in a wireless communication system using an auto-encoder and apparatus therefor
KR102661902B1 (en) Improved coverage

Legal Events

Date Code Title Description
A201 Request for examination