Deep learning-based automatic modulation classification

KR103020853B1Active Publication Date: 2026-09-15IND ACAD COOP GRP OF SEJONG UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
KR1020230008183
Authority / Receiving Office
KR · KR
Patent Type
Patents
Current Assignee / Owner
Filing Date
2023-01-19
Publication Date
2026-09-15
Estimated Expiration
2043-01-19

Smart Images

  • Figure R1020230008183_ABST
    Figure R1020230008183_ABST
Patent Text Reader

Abstract

A computer system comprising a hardware processor and a memory device is provided, wherein the memory device stores computer program instructions executable by the hardware processor for implementing a neural network model for DL-AMC, and the neural network model includes a threshold autoencoder denoiser (TAD) that calculates a threshold value for an input signal having an unknown modulation type and performs denoising of the input signal based on the threshold value to generate a denoised signal, and a convolutional neural network (CNN) based classifier that processes the denoised signal to classify the modulation type of the input signal into one of a plurality of predetermined modulation types.
Need to check novelty before this filing date? Find Prior Art

Description

Technology Field

[0001] The present disclosure relates to Deep Learning (DL)-based Automatic Modulation Classification (AMC), and more specifically, to robust AMC at low Signal-to-Noise Ratio (SNR). Background Technology

[0002] Automatic Modulation Classification (AMC) is a technique for analyzing signals in a non-cooperative communication environment and is used to classify various types of signal modulation before demodulation. Existing AMC methods are mainly classified into two categories: likelihood-based and feature-based; the former offers high accuracy but is computationally complex. Recently, much research has been conducted on Deep Learning (DL)-based AMC methods (which may be abbreviated as DL-AMC in this document) that efficiently achieve high classification performance by automatically extracting features from a large number of sample signals using Convolutional Neural Networks (CNNs), Recurrent Neural Networks (RNNs), other types of neural networks, or combinations thereof.

[0003] For example, J. Xu, C. Luo, G. Parr, and Y. Luo, "A spatiotemporal multi-channel learning framework for automatic modulation recognition," IEEE Wireless Communications Letters, vol. 9, no. 10, pp. 1629-1632, 2020 presents a structure with 2D convolution, 1D convolution, and Long Short-Term Memory (LSTM), which is referred to as a Multi-channel Convolutional Long short-term Deep Neural Network (MCLDNN). This model extracts and fuses spatiotemporal features from the signal's in-phase component, quadrature component, and both (these components correspond to the real and imaginary components of the signal's complex representation, respectively, and can be referred to as component I and Q, or I and Q signals, respectively), and achieves significant classification accuracy at high SNRs between 5 dB and 20 dB. Furthermore, based on MCLDNN, F. Zhang, C. Luo, J. Xu, and Y. Luo, "An efficient deep learning model for automatic modulation recognition based on parameter estimation and transformation," IEEE Communications Letters, vol. 25, no. 10, pp.3287-3290, 2021 introduces a low-complexity, lightweight architecture integrating Parameter Estimation and Transformation (PET), 2D convolutional layers, and Gated Recurrent Units (GRU), known as the PET-based CNN-GRU Deep Neural Network (PET-CGDNN). This model exhibits similar performance to MCLDNN with a smaller size and demonstrates good performance at high SNRs. However, both the MCLDNN and PET-CGDNN models achieve only about 9% accuracy at low SNRs, for example, such as -20dB. Furthermore, T. Huynh-The, C.-H. Hua, Q.-V. Pham, and D.-S. Kim, "MCNet: An efficient CNN architecture for robust automatic modulation classification," IEEE Communications Letters, vol. 24, no. 4, pp. MCNet, proposed in 811-815, 2020, is a robust architecture based on multiple convolutional blocks along with residual connections and asymmetric convolutional kernels, but it also shows prominent results only at high SNRs. Meanwhile, X. Fu, G. Gui, Y. Wang, T. Ohtsuki, B. Adebisi, H. Gacanin, and F. Adachi, "Lightweight automatic modulation classification based on decentralized learning," IEEE Transactions on Cognitive Communications and Networking, vol. 8, no. 1, pp.57-70, 2022 proposes a separable CNN (S-CNN) with reduced computational complexity, but the performance of this model does not match that of MCLDNN and PET-CGDNN. The problem to be solved

[0004] Deep Learning (DL)-based Automatic Modulation Classification (AMC) is disclosed in this document. means of solving the problem

[0005] In the example, the computer system includes a hardware processor and a memory device, wherein the memory device stores computer program instructions executable by the hardware processor to implement a neural network model for DL-AMC, and the neural network model includes a threshold autoencoder denoiser (TAD) that calculates a threshold value for an input signal having an unknown modulation type and performs denoising of the input signal based on the threshold value to generate a denoised signal, and a convolutional neural network (CNN) based classifier that processes the denoised signal to classify the modulation type of the input signal into one of a plurality of predetermined modulation types.

[0006] The foregoing overview is provided to introduce, in a simplified form, some aspects that will be further described later in the detailed description. This overview is not intended to identify important or essential features of the claimed subject matter, nor is it intended to be used to define the scope of the claimed subject matter. Furthermore, the claimed subject matter is not limited to any or all advantageous implementations discussed herein. Effects of the invention

[0007] According to the present disclosure, a DL-based AMC technology with improved generalization ability is provided, particularly at low SNRs, under varying noise conditions.

[0008] The DL-based AMC according to the present disclosure can be applied directly to actual communication systems more easily, for example, in real time with reduced computational complexity.

[0009] According to the present disclosure, a robust DL-based AMC model is provided that achieves high accuracy even at low SNR levels. Brief explanation of the drawing

[0010] Figure 1 shows an example of a receiver in which an exemplary neural network model for DL-AMC is implemented. Figure 2 shows an example of the neural network model of Figure 1. Figure 3 shows an example of the TAD of Figure 2. Figure 4a shows an example of the encoder part of the autoencoder component of Figure 3, and Figure 4b shows an example of the decoder part of the autoencoder component of Figure 3. Figure 5 shows an example of the automatic threshold learning sub-neural network of Figure 3. Figure 6 is a block diagram showing an exemplary configuration of the neural network model of Figure 1, including an example of the CNN-based classifier of Figure 2. Figure 7 shows an example of each Residual Network (ResNet) block of Figure 6. FIGS. 8 to 12 are drawings illustrating the results of an experiment on the exemplary neural network model of FIG. 6. FIG. 13 is a schematic diagram of an exemplary computer system in which the neural network model of FIG. 1 is implemented and operated. Figure 14 shows an example of a process for driving a neural network model for DL-AMC. Specific details for implementing the invention

[0011] The various terms used in this disclosure are selected from the conventions of common terminology in consideration of their function within this document, as they may be perceived differently depending on the intent, practices, or emergence of new technology of those skilled in the art. In specific instances, some terms may be given meanings as set forth in the detailed description. Accordingly, terms used in this document should be defined consistently with their meaning in the context of this disclosure, rather than merely by their names.

[0012] In this document, terms such as "include," "have," etc., are used to specify the presence of the elements listed below, e.g., certain features, numbers, steps, actions, components, information, or combinations thereof. Unless otherwise indicated, these terms and variations thereof are not intended to exclude the presence or addition of other elements.

[0013] As used in this document, terms “first,” “second,” etc. are intended to identify several similar elements. Unless otherwise stated, such terms are not intended to impose limitations, such as a specific order of use of these elements or their elements, but are used merely to refer to several elements separately. For example, while an element may be referred to as the term “first” in one example, the same element may be referred to by a different ordinal number, such as “second” or “third,” in another example. In such examples, these terms do not limit the scope of this disclosure. Furthermore, the use of the term “and / or” in a list of elements includes any one or more of the listed items, as well as all possible combinations of these items. Moreover, expressions in the singular form include the meaning of the plural form unless explicitly stated otherwise.

[0014] Certain examples of the present disclosure will now be described in detail with reference to the attached drawings. However, the present disclosure may be embodied in many different forms and should not be construed as being limited to the examples set forth in this document. Rather, these examples are provided to provide a better understanding of the scope of the present disclosure.

[0015] It is considered that some of the individual features depicted in the drawings may be implemented independently or in combination. Various examples of these features and other features will become apparent from the following detailed description in conjunction with the attached drawings.

[0016] Various examples of the present disclosure present a neural network model for DL-AMC that classifies the modulation type (which may be referred to as a modulation mode) of an unknown signal, particularly a signal with low SNR. The presented model enables modulation recognition by combining a Threshold Autoencoder Denoiser (TAD) with a Convolutional Neural Network (CNN), which may be referred to as the TADCNN model. That is, in this model, the TAD automatically removes noise from the raw I / Q signal, and the CNN receives the denoised signal as its input for modulation classification. To reduce noise power, the TAD can extract and remove noise and other insignificant features from the input signal. An automatically learned threshold may be used for such denoising. The TADCNN model not only offers excellent overall accuracy but also improves accuracy compared to existing AMC techniques, particularly at low SNR (e.g., approximately 70% higher accuracy). These improvements address the challenges posed to modulation classification at low SNR levels due to various background noises, such as frequency selective fading, local oscillator offset, Doppler offset, Additive White Gaussian Noise (AWGN), impulsive noise, co-channel interference, and adjacent channel interference.

[0017] Problem Description

[0018] In wireless communication systems, modulation is the process of changing the properties of a carrier signal (e.g., a high-frequency or radio frequency (RF) signal) according to the characteristics of a baseband signal. To provide accurate transmission of information between a transmitter and a receiver located apart within a wireless communication system, the characteristics of the signal during the modulation process are typically matched to the characteristics of the communication channel. The signal y(t) received by the receiver is given as follows.

[0019]

[0020] Here, h(t) is the impulse response of the channel, X(t) is the noise-free transmitted signal, and n has a mean of 0 and a variance of σ 2 It is AWGN.

[0021] The communication channel impulse response is described as follows.

[0022]

[0023] Here, a is the amplitude of the corresponding signal, δ is the impulse function, t is the time interval, and t d is the multi-path delay of the channel.

[0024] In general, AMC is a multi-class classification or M-class recognition task, where M classes represent various possible types of modulation of a transmitted signal X(t) based on information provided by a received signal y(t). Therefore, modulation classification can be described as identifying the characteristics of a received signal and determining the exact type of modulation. Various algorithms for modulation classification can be evaluated based on the accuracy of their classification models and computational speed.

[0025] System Model

[0026] For the purpose of discussion, an example is considered in which a digitally modulated signal is transmitted by a transmitter through a wireless channel with AWGN and interference in a communication environment (e.g., a non-cooperative communication environment including a multi-UAV-based network in which each of the multiple unmanned aerial vehicles (UAVs) (e.g., drones) serves a user within their respective serving cell, and a signal transmitted from the said UAV acts as an interference signal to a user within the serving cell of another UAV). An exemplary receiver (100) of FIG. 1 may be placed in such an environment. In this example, no prior information regarding the type of modulation as well as the symbol rate, etc., is provided to the receiver (100). When such a signal is detected by the receiver (100), the preprocessing unit (110) of the receiver (100) may perform preprocessing of the signal (e.g., down-conversion, bandpass filtering, and digitization) to generate a baseband signal. The generated baseband signal can be provided to a demodulator (120) and to an automatic modulation classification unit (150) in which a neural network model (170) is implemented. Then, the automatic modulation classification unit (150) can drive the neural network model (170) to identify the type of modulation of the signal. The demodulator (120) can process the baseband signal according to the identified modulation type to generate a demodulated sequence.

[0027] In this example, the neural network model (170) is a model for a DL-based AMC that enables accurate modulation type determination, and such a DL-AMC can be expressed as follows.

[0028]

[0029] Here is a predicted modulation type output by the neural network model (170) for DL-AMC, y is a true modulation type, and W is a weight of the neural network model (170). In particular, as discussed below, the neural network model (170) can achieve a lightweight structure with low complexity and high accuracy in both high SNR and low SNR.

[0030] FIG. 2 shows an example of a neural network model (170). In the illustrated example, the neural network model (170) includes a threshold autoencoder denoiser (TAD) (210) and a convolutional neural network (CNN) based classifier (220).

[0031] TAD (210) can calculate a threshold value for an input signal having an unknown modulation type and process the input signal into a denoised signal based on the calculated threshold value.

[0032] A CNN-based classifier (220) can process a noise-removed signal to classify the modulation type of an input signal into one of a plurality of predetermined modulation types. For example, as depicted in FIG. 2, the CNN-based classifier (220) may include a series of feature extraction layers (221) that extract features from a noise-removed signal (e.g., including one or more Residual Network (ResNet) blocks) and a series of classification layers (222) that classify the modulation type of an input signal based on the extracted features as described above (e.g., including one or more Fully Connected (FC) layers, which are also referred to as dense layers).

[0033] Exemplary configuration of TAD

[0034] FIG. 3 shows an example of a TAD (210). In the illustrated example, the TAD (210) includes a Batch Normalization (BN) layer (310), an autoencoder component (320) (which includes an encoder part (321) and a decoder part (326)), and a threshold noise reduction component (340).

[0035] The BN layer (310) can normalize the input signal and provide the normalized input signal to the encoder part (321) of the autoencoder component (320). Such BN can improve the generalization ability of the TAD (210). In the BN, the difference in data distribution between batch units is mitigated as mean and variance, so good non-linear representation of the model (170) can be ensured.

[0036] The encoder part (321) of the autoencoder component (320) can process the normalized input signal and output a feature representation (e.g., a feature map) of the input signal.

[0037] The threshold noise removal component (340) can convert a feature representation of an input signal into a noise-removed feature representation based on a threshold value. In some examples, the threshold noise removal component (340) can convert the feature of the input signal into a noise-removed feature according to a noise removal function, which may be defined as a function that sets a near-zero value, where the absolute value is smaller than the threshold value, to zero (i.e., 0), increases over a positive range greater than the threshold value, and decreases over a negative range where the absolute value is larger than the threshold value.

[0038] Additionally, as depicted in FIG. 3, the threshold noise removal component (340) includes an automatic threshold learning sub-neural network (342), which can calculate a scaling factor within a predetermined range, calculate a scaled average value of a feature representation of an input signal based on the scaling factor, and determine a threshold value based on the calculated scaled average value. An exemplary operation of the threshold noise removal component (340), along with an example of a noise removal function and an exemplary configuration of the automatic threshold learning sub-neural network (342), will be discussed in more detail below.

[0039] The decoder part (326) of the autoencoder component (320) can process the noise-removed feature representation to generate a noise-removed signal.

[0040] In some examples, the encoder portion (321) of the autoencoder component (320) may include a second convolutional layer (402) (which may be referred to as "Conv2" in this document) following a first convolutional layer (401) (which may be referred to as "Conv1" in this document), as illustrated in FIG. 4a, and the activation function of the first convolutional layer (401) may be a Rectified Linear Unit (ReLU) function. Additionally, in some examples, the decoder portion (326) of the autoencoder component (320) may include a third convolutional layer (403) (which may be denoted as "Conv3" in this document), followed by a fourth convolutional layer (404) (which may be denoted as "Conv4" in this document), followed by a fifth convolutional layer (405) (which may be denoted as "Conv5" in this document), as illustrated in FIG. 4b, and the activation function of the third convolutional layer (403) may be a ReLU function. Furthermore, as an example, hyperparameters related to the structure of the autoencoder component (320) may be given as shown in the following table.

[0041] floor Output shape input (2 x 128 x 1) BN (2 x 128 x 1) Conv1 (64 filters, size(2,3) + ReLU) (2 x 128 x 64) Conv2 (16 filters, size(2,3)) (2 x 128 x 16) Conv3 (16 filters, size(2,3) + ReLU) (2 x 128 x 16) Conv4 (64 filters, size(2,3)) (2 x 128 x 64) Conv5 (1 filter, size(2,3)) (2 x 128 x 1)

[0042] In this example, each of the first to fifth convolutional layers (401, 402, 403, 404, 405) may have one or more convolutional filters (i.e., kernels) of the same size as follows: the first convolutional layer (401) may each have 64 filters of size 2x3; the second convolutional layer (402) may each have 16 filters of size 2x3; the third convolutional layer (403) may each have 16 filters of size 2x3; the fourth convolutional layer (404) may each have 64 filters of size 2x3; and the fifth convolutional layer (405) may have one filter of size 2x3.

[0043] Example of noise reduction operation

[0044] As previously mentioned, the threshold noise removal component (340) can remove feature components associated with noise in the input signal (especially those having values ​​close to zero) using a noise removal function. In some examples, the noise removal function may be given as follows.

[0045]

[0046] Here, x is a characteristic of the input signal and y i is the output noise-removed feature, τ is the threshold value, and Sgn(x) is the sign function of the input signal (also referred to as the signum function). The sign function can be expressed as follows.

[0047]

[0048] As can be seen from Equations 4 and 5, converting the feature representation of the input signal into a denoised feature representation involves (i) setting the corresponding element of the denoised feature representation to zero (i.e., when |x|≤τ, y i =0), and (ii) if the absolute value of an element of the feature representation of the input signal is greater than the threshold value, setting the corresponding element of the denoised feature representation to the product of the difference between the absolute value of the element of the feature representation of the input signal and the threshold value and the sign of the element of the feature representation of the input signal (i.e., if |x|>τ, y i =Sgn(x)(|x|-τ)) can be involved.

[0049] Furthermore, the threshold value may be determined by an automatic threshold learning sub-neural network (342) (which learns the relationship between these sample signals and their appropriate threshold values ​​through training sample signals containing noise levels that may differ for various modulation types, for example). For example, as illustrated in FIG. 5, the automatic threshold learning sub-neural network (342) may include a threshold determination layer (505) following a Global Average Pooling (GAP) layer (501), a preceding FC layer (502) with a ReLU activation function, an intervening BN layer (503), a subsequent FC layer (504) with a sigmoid activation function. Specifically, the GAP layer (501) may process the absolute value of each element of the feature representation of the input signal as an averaged feature, and such averaged feature may be provided to the threshold determination layer (505) as well as to the preceding FC layer (502). The output of the preceding FC (502) layer can be normalized by the intervening BN layer (503) and subsequently input to the subsequent FC layer (504). The subsequent FC layer (504) can output a scaled factor within a predetermined range between 0 and 1 according to a sigmoid activation function. Then, as given by the following equation, the threshold determination layer (505) receives the scaled average value from the averaged feature provided by the GAP layer (501). It can be calculated to be equal to the scaling factor multiplied by it.

[0050]

[0051] Here is the scaled average value, and is a scaling factor, and is an averaged feature.

[0052] Furthermore, the threshold determination layer (505) can determine the threshold value based on the scaled average value. For example, the threshold value can be determined as follows.

[0053]

[0054] Here is an adjustment parameter empirically determined from the results of experiments on the neural network model (170). Considering that in an exemplary experiment, the classification accuracy of the neural network model (170) is measured as described below with respect to FIG. 9, is with a value of 1 (i.e., It can be set to a value of 2.

[0055] Exemplary configuration of a neural network model

[0056] FIG. 6 is a block diagram showing an exemplary configuration of a neural network model (170), including an example of a CNN-based classifier (220).

[0057] In the example of FIG. 6, the TAD (210) can be configured as depicted in FIG. 5.

[0058] Additionally, in the example illustrated in FIG. 6, a series of feature extraction layers (221) of a CNN-based classifier (220) may include a two-dimensional (2D) convolutional layer (which may be denoted as "Conv2D" in this document) (613), followed by a linear combination layer (614), followed by a first ResNet block (615) (which may be denoted as "ResNet1" in this document), followed by a second ResNet block (617) (which may be denoted as "ResNet2" in this document), followed by a third ResNet block (619) (which may be denoted as "ResNet3" in this document).

[0059] The noise-removed signal output from the TAD (210) can be input to the 2D convolutional layer (613) after being reshaped by the reshape layer and then zero-padded by the zero-padding layer. Then, the 2D convolutional layer (613) can produce multiple feature representations. For example, the 2D convolutional layer (613) can have 80 filters, each of which is 2x3 in size, and can have a ReLU activation function.

[0060] The linear combination layer (614) enables the computation of complex convolutions and can extract features on the real and imaginary components for each feature representation output from the 2D convolution layer (613). For example, the linear combination layer (614) can be configured in the same way as the corresponding linear combination within the CNN architecture for modulation recognition (which may be referred to as "Complex-CNN" in this document) presented in J. Krzyston, R. Bhattacharjea, and A. Stark, "Complex-valued convolutions for modulation recognition using deep learning," in 2020 IEEE International Conference on Communications Workshops (ICC Workshops), 2020, pp. 1-6.

[0061] The first ResNet block (615) can be combined with a subsequent first max pooling layer, the second ResNet block (617) can be combined with a subsequent second max pooling layer, and the third ResNet block (619) can be combined with a subsequent third max pooling layer. For example, each of the first, second, and third ResNet blocks (615, 617, 619) may include, as illustrated in FIG. 7, a first 2D convolutional layer (701), followed by a first BN layer (710), followed by a second 2D convolutional layer (702), followed by a third 2D convolutional layer (703), followed by a first add layer (715) with a ReLU activation function, followed by a fourth 2D convolutional layer (704), followed by a fifth 2D convolutional layer (705), followed by a second add layer (725) with a ReLU activation function. Each of the five two-dimensional convolutional layers (701, 702, 703, 704, 705) of the first ResNet block (615) may have 64 filters (each with a size of 3x2), each of the five two-dimensional convolutional layers (701, 702, 703, 704, 705) of the second ResNet block (617) may have 32 filters (each with a size of 3x2), and each of the five two-dimensional convolutional layers (701, 702, 703, 704, 705) of the third ResNet block (619) may have 16 filters (each with a size of 3x2).

[0062] Furthermore, in the example illustrated in FIG. 6, a series of classification layers (222) of a CNN-based classifier (220) may include a flatten layer (620) that converts features extracted by a series of feature extraction layers (221) into a one-dimensional representation, followed by a first FC layer (621) with a Scaled Exponential Linear Unit (SeLU) activation function, followed by a second FC layer (622) with a SeLU activation function (which is combined with a subsequent dropout layer), and a third FC layer (623) with a softmax activation function. The first FC layer (621) may have an output size of 128, the second FC layer (622) may have an output size of 128, the dropout rate of the dropout layer may be 0.3, and the third FC layer may have an output size of 11.

[0063] The following table describes the details regarding the configuration of the neural network model (170) exemplified in FIG. 6.

[0064] floor Input size Output size Details input 2 x 128 x 1 - - TAD 2 x 128 x 1 2 x 128 x 1 ρ=1, kernel: 2x3, stride=1 Reshaping 2 x 128 x 1 1 x 2 x 128 - Zero padding 1 x 2 x 128 1 x 4 x 132 Size: (1,2) Conv2D 1 x 4 x 132 80 x 3 x 132 Activation: ReLU, Kernel: 2x3, Filter: 80 linear combination 80 x 3 x 132 64 x 2 x 130 - ResNet1 32 x 2 x 130 32 x 2 x 130 Filter: 64 Max pooling 32 x 2 x 130 32 x 1 x 130 Pooling size: 1x1, stride: (2,1) ResNet2 32 x 1 x 130 32 x 1 x 130 Filter: 32 Max pooling 32 x 1 x 130 32 x 1 x 130 Pooling size: 1x1, stride: (2,1) ResNet3 32 x 1 x 130 32 x 1 x 130 Filter: 16 Max pooling 32 x 1 x 130 32 x 1 x 130 Pooling size: 1x1, stride: (2,1) flattening 32 x 1 x 130 4160 - congestion 4160 128 Activation = SeLU congestion 128 128 Activation = SeLU, Dropout Rate = 0.3 congestion 128 11 Activation = Softmax

[0065] Experiment setup for a neural network model

[0066] For the experiment, the neural network model (170) is configured as exemplified in FIG. 6. Additionally, the related hyperparameters are set as described in Table 2. For convenience, this implementation of the neural network model (170) is referred to as the target TADCNN model. The loss function is set as a Category Cross Entropy (CCE) function as given in the following equation.

[0067]

[0068]

[0069] Here, Y tis the one-hot encoding vector of the ground truth, and x i is the i-th output of the target TADCNN model, and Y p is the predicted vector, and S represents the output magnitude.

[0070] The RadioML 2016.10A dataset is used for experiments on the target TADCNN model. This dataset contains 220,000 sample signals generated across 20 SNR levels ranging from -20 dB to 18 dB for 8 digital modulation types and 3 analog modulation types, with 1,000 signals per modulation type for each SNR level.

[0071] In this experiment, the target TADCNN model is trained on the RadioML 2016.10A dataset, randomly selected so that 70% of the signals are used for training and 30% for testing. In addition to the aforementioned hyperparameters, the maximum number of epochs for the training process is set to 100, the learning rate to 0.001, and the batch size to 1024. Early stopping is applied during this training to prevent overfitting. The target TADCNN model is trained on the training dataset, and the weights of the target TADCNN model are updated using the Adam optimizer until the test loss does not improve.

[0072] Noise Reduction Performance Analysis

[0073] In the aforementioned experiment, the modulation type of the sample signal is classified by running the target TADCNN model, and the influence of the adjustment parameter ρ on the accuracy of the classified modulation type is depicted in Fig. 8. Furthermore, it is noted that the noise reduction of the target TADCNN model is intended, above all, to improve the classification accuracy achieved by the target TADCNN model at low SNR levels. In this regard, Fig. 9 shows the classification accuracy when AMC with such noise reduction is performed under conditions where SNR = -20 dB. As depicted in Fig. 9, when the adjustment parameter ρ increases from 0 to 1, the accuracy increases by approximately 4%. On the other hand, when the adjustment parameter ρ increases from 2 to 10, the accuracy decreases. In particular, when the adjustment parameter ρ is 9 and when the adjustment parameter ρ is 10, the target TADCNN model fails to perform good classification. This is attributed to the fact that if the value of ρ is large, the threshold also increases, causing the input signal to lose more information. Therefore, in some examples, the value of the adjustment parameter ρ can be set within the range of 1 to 2. For example, for better performance at low SNR, the value of ρ can be set to 1 rather than 2.

[0074] FIG. 10 shows that when the value of ρ is set to 1 to evaluate the effect of TAD (210) on the target TADCNN model, the classification accuracy achieved by the target TADCNN model (labeled "AMC with TAD" in FIG. 10) is higher than that of the AMC performed without TAD (labeled "AMC without TAD" in FIG. 10). In particular, when the SNR is between -20 dB and -15 dB, the AMC without TAD shows a classification accuracy of about 13%, whereas the AMC with TAD shows an improvement of about 70%, as depicted in FIG. 11. Additionally, as can be seen in FIG. 10, TAD (210) contributes to the improvement of accuracy even at high SNR levels. For example, when the SNR is 20 dB, the AMC without TAD achieves a classification accuracy of about 83%, while the AMC with TAD shows a classification accuracy of about 91%.

[0075] Figure 12 shows the results of comparing the classification accuracy of the target TADCNN model with existing AMC models, namely MCLDNN, PET-CGDNN, MCNet, Complex-CNN, and S-CNN. All of these models were trained using the RadioML 2016.10A dataset. In Figure 12, the average classification accuracy of each model is appended after the model name in the format "[**.**]". Additionally, the table below describes the classification accuracy achieved by these models for signals of -18dB, 10dB, 0dB, 10dB, and 18dB. The target TADCNN model exhibits better performance than other models at high SNR levels as well as at low SNR levels. In particular, at low SNR, the target TADCNN model achieves approximately twice the accuracy of other models.

[0076] Classification accuracy by SNR level model -18dB -10dB 0dB 10dB 18dB average(%) MCLDNN 0.09 0.25 0.86 0.90 0.90 60.49 PET-CGDNN 0.09 0.26 0.84 0.89 0.89 59.65 S-CNN 0.1 0.18 0.61 0.69 0.68 47.21 MCnet 0.1 0.26 0.78 0.83 0.82 58.1 Complex-CNN 0.1 0.22 0.79 0.82 0.82 57.21 Target TADCNN 0.21 0.41 0.86 0.91 0.91 66.64

[0077] Furthermore, the table below shows the results of comparing the complexity of the target TADCNN model with other models.

[0078] model Number of parameters Inference time per sample (ms) Average accuracy (%) MCLDNN 406,199 0.160 60.49 PET-CGDNN 71,871 0.063 59.65 S-CNN 104,395 0.009 47.21 MCnet 90,763 0.021 58.1 Complex-CNN 2,749,275 0.031 57.21 Target TADCNN 671,440 0.045 66.64

[0079] As can be seen in the table above, the target TADCNN achieves excellent average accuracy with a relatively small number of parameters and a considerably short inference time.

[0080] Exemplary computer system

[0081] FIG. 13 shows an example of a computer system (1300) in which a neural network model (170) is implemented and operated. An exemplary computer system (1300) includes a hardware processor (1310), a memory device (1320), and a communication interface (1330) coupled to communicate with each other via a bus. In some examples, the computer system (1300) may be implemented within or include a wireless communication device such as a receiver (100).

[0082] In the illustrated example, the hardware processor (1310) controls the overall operation of the computer system (1300). For example, the hardware processor (1310) may perform all or part of the operations described in this document in relation to DL-AMC.

[0083] In the illustrated example, the memory device (1320) stores various information. For example, the memory device (1320) may store information used and / or produced in implementing and / or driving a neural network model (170) for DL-AMC, such as data used during the operation of the computer system (1300) and / or a set of instructions executed by the computer system (1300) (e.g., a hardware processor (1310)) in a non-transitory form.

[0084] In the illustrated example, the communication interface (1330) enables the computer system (1300) to access a network (e.g., a UAV-based network) to transmit data to an external entity (e.g., an external wireless communication device, another computer system, or any device capable of communication) and to receive data from it.

[0085] Exemplary DL-AMC Process

[0086] Now, with reference to FIG. 14, an exemplary process (1400) for driving a neural network model for DL-AMC is described. This neural network model (e.g., neural network model (170)) includes a TAD and a CNN-based classifier. For example, the process (1400) may be performed by a computer system (e.g., computer system (1300)) on which the neural network model (170) is implemented. Other exemplary flows of the process (1400) are also considered. For example, the process (1400) may also include additional operations not illustrated and / or may include some but not all of the operations illustrated in relation to FIG. 14.

[0087] In operation (1410), a threshold value is calculated for an input signal having an unknown modulation type by using the TAD of the neural network model.

[0088] In operation (1420), noise removal of the input signal is performed based on a threshold value by using the TAD of the neural network model.

[0089] In operation (1430), by using a CNN-based classifier of a neural network model, the noise-removed input signal is processed to classify the modulation type of the input signal.

[0090] Additional example

[0091] The following are various examples related to DL-AMC.

[0092] In Example 1, a method for Deep Learning (DL) based Automatic Modulation Classification (AMC) includes the step of running a neural network model for the DL-based AMC, wherein the neural network model includes a Threshold Autoencoder Denoiser (TAD) and a Convolutional Neural Network (CNN) based classifier, and the step of running the neural network model includes the step of calculating a threshold value for an input signal having an unknown modulation type by using the TAD, the step of generating a denoised signal by performing denoising of the input signal based on the threshold value by using the TAD, and the step of processing the denoised signal by using the CNN-based classifier to classify the modulation type of the input signal into one of a plurality of predetermined modulation types.

[0093] Example 2 includes the subject of Example 1, where the noise reduction above involves converting the features of the above input signal into noise-removed features according to a noise reduction function that sets a near-zero value, where the absolute value is smaller than the above threshold value, to zero.

[0094] Example 3 includes the subject of Example 2, where the above noise reduction function increases over a range of positive numbers greater than the above threshold and decreases over a range of negative numbers with absolute values ​​greater than the above threshold.

[0095] Example 4 includes the subject of any of Examples 1 to 3, wherein the TAD includes an autoencoder component and a threshold noise reduction component, the encoder part of the autoencoder outputs a feature representation of the input signal, and the threshold noise reduction component includes an automatic threshold learning sub-neural network that calculates a scaling factor within a predetermined range, calculates a scaled average value of the feature representation based on the scaling factor, and determines the threshold value based on the scaled average value.

[0096] Example 5 includes the subject of Example 4, where the threshold noise reduction component converts the elements of the above feature representation into noise-removed features according to a noise reduction function that sets zero-near-zero values, where the absolute value is smaller than the above threshold value, to zero.

[0097] Example 6 includes the subject of Example 5, where the above noise reduction function increases over a range of positive numbers greater than the above threshold and decreases over a range of negative numbers with absolute values ​​greater than the above threshold.

[0098] Example 7 includes the subject of Example 4, where the threshold denoising component converts the above feature representation into a denoised feature representation based on the above threshold value.

[0099] Example 8 includes the subject of Example 7, and transforming the above feature representation includes setting the corresponding element of the above denoised feature representation to zero when the absolute value of the element of the above feature representation is less than or equal to the above threshold value, and setting the corresponding element of the above denoised feature representation to the product of the difference between the above absolute value and the above threshold value and the sign of the above element of the above feature representation when the absolute value is greater than the above threshold value.

[0100] Example 9 includes the subject of Example 7 or Example 8, where the decoder part of the above autoencoder component processes the above denoised feature representation to generate the above denoised signal.

[0101] Example 10 includes the subject of Example 9, wherein the encoder part above includes a first convolutional layer with a Rectified Linear Unit (ReLU) activation function followed by a second convolutional layer, wherein the first convolutional layer has 64 filters of size 2x3 each and the second convolutional layer has 16 filters of size 2x3 each, and the decoder part above includes a third convolutional layer with a ReLU activation function followed by a fourth convolutional layer followed by a fifth convolutional layer, wherein the third convolutional layer has 16 filters of size 2x3 each, the fourth convolutional layer has 64 filters of size 2x3 each, and the fifth convolutional layer has one filter of size 2x3.

[0102] Example 11 includes the subject of Example 10, but the above TAD further includes a Batch Normalization (BN) layer that normalizes the above input signal and provides the above normalized input signal to the above first convolutional layer.

[0103] Example 12 includes the subject of any of Examples 4 through 11, wherein the above automatic threshold learning sub-neural network comprises a Global Average Pooling (GAP) layer and a series of subsequent layers, wherein the above GAP layer processes the absolute value of each element of the above feature representation as an averaged feature, and the above averaged feature is passed to the above series of subsequent layers, and the above series of subsequent layers comprises a Fully Connected (FC) layer having an activation function to output the above scaled factor within the above predetermined range, and a threshold determination layer that calculates the above scaled average value such that it is equal to the above averaged feature multiplied by the above scaled factor and determines the above threshold value based on the above scaled average value.

[0104] Example 13 includes the subject of any of Examples 4 through 11, wherein the above automatic threshold learning sub-neural network comprises a Global Average Pooling (GAP) layer followed by a preceding Fully Connected (FC) layer with a ReLU activation function, followed by an intervening Batch Normalization (BN) layer, followed by a subsequent FC layer with a sigmoid activation function, and a threshold decision layer, wherein the above GAP layer processes the absolute value of each element of the above feature representation as an averaged feature, and the above averaged feature is provided to both the above preceding FC layer and the above threshold decision layer, and the above subsequent FC layer outputs the above scaled factor within the above predetermined range, wherein the above predetermined range is between 0 and 1, and the above threshold decision layer calculates the above scaled average value such that it is equal to the above averaged feature multiplied by the above scaling factor and determines the above threshold value based on the above scaled average value.

[0105] Example 14 includes the subject of any of Examples 4 through 13, where the threshold value is determined by multiplying the scaled average value by an empirically determined value.

[0106] Example 15 includes the subject of Example 14, wherein the empirically determined value is set based on the classification accuracy achieved by the neural network model in an experiment performed by running the neural network model on a set of sample signals to classify the modulation type of the sample signals within the set, wherein the sample signals within the set include a number of sample signals having a signal-to-noise ratio (SNR) lower than a specified level, and the classification accuracy is the measured accuracy of the classified modulation type of the sample signals within the set.

[0107] Example 16 includes the subject of any of Examples 1 to 15, wherein the above CNN-based classifier includes a series of feature extraction layers that extract features from the above noise-removed signal and a series of classification layers that perform the above classification of the above modulation type of the above input signal based on the above extracted features.

[0108] Example 17 includes the subject of Example 16, wherein the above series of feature extraction layers comprises a 2D convolutional layer with a ReLU activation function, followed by a linear combination layer, followed by a first Residual Network (ResNet) block combined with a subsequent first max pooling layer, followed by a second ResNet block combined with a subsequent second max pooling layer, followed by a second ResNet block combined with a subsequent third max pooling layer, the above 2D convolutional layer produces multiple feature representations, and the above linear combination layer enables the computation of complex convolution and extracts features on the real and imaginary components for each of the above multiple feature representations.

[0109] Example 18 includes the subject of Example 17, wherein the above 2D convolutional layers each have 80 filters of size 2x3, the above 1, above 2, and above 3 ResNet blocks each have 5 2D convolutional layers, each of the 5 2D convolutional layers of the above 1 ResNet block each have 64 filters of size 3x2, each of the 5 2D convolutional layers of the above 2 ResNet block each have 32 filters of size 3x2, and each of the 5 2D convolutional layers of the above 3 ResNet block each have 16 filters of size 3x2.

[0110] Example 19 includes the subject of any of Examples 16 through 18, the above series of classification layers includes a first fully connected (FC) layer with a scaled exponential linear unit (SeLU) activation function, followed by a second FC layer with a SeLU activation function, followed by a dropout layer, and then a third FC layer with a softmax activation function.

[0111] Example 20 includes the subject of Example 19, where the first FC layer has an output size of 128, the second FC layer has an output size of 128, the dropout layer has a dropout rate of 0.3, and the third FC layer has an output size of 11.

[0112] In Example 21, the computer system comprises a hardware processor and a memory device storing computer program instructions executable by the hardware processor for implementing a neural network model for Deep Learning (DL)-based Automatic Modulation Classification (AMC), wherein the neural network model comprises a Threshold Autoencoder Denoiser (TAD) that calculates a threshold value for an input signal having an unknown modulation type and performs denoising of the input signal based on the threshold value to generate a denoised signal, and a Convolutional Neural Network (CNN)-based classifier that processes the denoised signal to classify the modulation type of the input signal into one of a plurality of predetermined modulation types.

[0113] Example 22 includes the subject of Example 21, where the above noise reduction involves converting the features of the above input signal into noise-removed features according to a noise reduction function that sets a near-zero value, where the absolute value is smaller than the above threshold value, to zero.

[0114] Example 23 includes the subject of Example 22, where the above noise reduction function increases over a range of positive numbers greater than the above threshold and decreases over a range of negative numbers with absolute values ​​greater than the above threshold.

[0115] Example 24 includes the subject of any of Examples 21 through 23, wherein the TAD comprises an autoencoder component and a threshold noise reduction component, the encoder part of the autoencoder outputs a feature representation of the input signal, and the threshold noise reduction component comprises an auto-threshold learning sub-neural network that calculates a scaling factor within a predetermined range, calculates a scaled average value of the feature representation based on the scaling factor, and determines the threshold value based on the scaled average value.

[0116] Example 25 includes the subject of Example 24, where the threshold denoising component converts the elements of the above feature representation into denoised features according to a denoising function that sets zero proximity values, where the absolute value is smaller than the above threshold value, to zero.

[0117] Example 26 includes the subject of Example 25, where the above noise reduction function increases over a range of positive numbers greater than the above threshold and decreases over a range of negative numbers with absolute values ​​greater than the above threshold.

[0118] Example 27 includes the subject of Example 24, where the threshold denoising component converts the above feature representation into a denoised feature representation based on the above threshold value.

[0119] Example 28 includes the subject of Example 27, and transforming the above feature representation includes setting the corresponding element of the above denoised feature representation to zero when the absolute value of the element of the above feature representation is less than or equal to the above threshold value, and setting the corresponding element of the above denoised feature representation to the product of the difference between the above absolute value and the above threshold value and the sign of the element of the above feature representation when the absolute value is greater than the above threshold value.

[0120] Example 29 includes the subject of Example 27 or Example 28, where the decoder part of the above autoencoder component processes the above denoised feature representation to generate the above denoised signal.

[0121] Example 30 includes the subject of Example 29, wherein the encoder part above includes a first convolutional layer with a Rectified Linear Unit (ReLU) activation function followed by a second convolutional layer, wherein the first convolutional layer has 64 filters of size 2x3 each and the second convolutional layer has 16 filters of size 2x3 each, and the decoder part above includes a third convolutional layer with a ReLU activation function followed by a fourth convolutional layer followed by a fifth convolutional layer, wherein the third convolutional layer has 16 filters of size 2x3 each, the fourth convolutional layer has 64 filters of size 2x3 each, and the fifth convolutional layer has one filter of size 2x3.

[0122] Example 31 includes the subject of Example 30, but the above TAD further includes a Batch Normalization (BN) layer that normalizes the above input signal and provides the above normalized input signal to the above first convolutional layer.

[0123] Example 32 includes the subject of any of Examples 24 through 31, wherein the above automatic threshold learning sub-neural network comprises a Global Average Pooling (GAP) layer and a series of subsequent layers, wherein the above GAP layer processes the absolute value of each element of the above feature representation as an averaged feature, and the above averaged feature is passed to the above series of subsequent layers, and the above series of subsequent layers comprises a Fully Connected (FC) layer having an activation function to output the above scaled factor within the above predetermined range, and a threshold determination layer that calculates the above scaled average value such that it is equal to the above averaged feature multiplied by the above scaled factor and determines the above threshold value based on the above scaled average value.

[0124] Example 33 includes the subject of any of Examples 24 through 31, wherein the above automatic threshold learning sub-neural network comprises a Global Average Pooling (GAP) layer followed by a preceding Fully Connected (FC) layer with a ReLU activation function, followed by an intervening Batch Normalization (BN) layer, followed by a subsequent FC layer with a sigmoid activation function, and a threshold decision layer, wherein the above GAP layer processes the absolute value of each element of the above feature representation as an averaged feature, and the above averaged feature is provided to both the above preceding FC layer and the above threshold decision layer, and the above subsequent FC layer outputs the above scaled factor within the above predetermined range, wherein the above predetermined range is between 0 and 1, and the above threshold decision layer calculates the above scaled average value such that it is equal to the above averaged feature multiplied by the above scaling factor and determines the above threshold value based on the above scaled average value.

[0125] Example 34 includes the subject of any of Examples 24 through 33, where the threshold value is determined by multiplying the scaled average value by an empirically determined value.

[0126] Example 35 includes the subject of Example 34, wherein the empirically determined value is set based on the classification accuracy achieved by the neural network model in an experiment performed by running the neural network model on a set of sample signals to classify the modulation type of the sample signals within the set, wherein the sample signals within the set include a number of sample signals having a signal-to-noise ratio (SNR) lower than a specified level, and the classification accuracy is the measured accuracy of the classified modulation type of the sample signals within the set.

[0127] Example 36 includes the subject of any of Examples 21 to 35, wherein the CNN-based classifier includes a series of feature extraction layers that extract features from the noise-removed signal and a series of classification layers that perform classification of the modulation type of the input signal based on the extracted features.

[0128] Example 37 includes the subject of Example 36, wherein the above series of feature extraction layers comprises a 2D convolutional layer with a ReLU activation function, followed by a linear combination layer, followed by a first Residual Network (ResNet) block combined with a subsequent first max pooling layer, followed by a second ResNet block combined with a subsequent second max pooling layer, followed by a second ResNet block combined with a subsequent third max pooling layer, the above 2D convolutional layer produces multiple feature representations, and the above linear combination layer enables the computation of complex convolution and extracts features on the real and imaginary components for each of the above multiple feature representations.

[0129] Example 38 includes the subject of Example 37, wherein the above 2D convolutional layers each have 80 filters of size 2x3, the above 1, above 2 and above 3 ResNet blocks each have 5 2D convolutional layers, each of the 5 2D convolutional layers of the above 1 ResNet block each have 64 filters of size 3x2, each of the 5 2D convolutional layers of the above 2 ResNet block each have 32 filters of size 3x2, and each of the 5 2D convolutional layers of the above 3 ResNet block each have 16 filters of size 3x2.

[0130] Example 39 includes the subject of any of Examples 36 through 38, the above series of classification layers includes a first fully connected (FC) layer with a scaled exponential linear unit (SeLU) activation function, followed by a second FC layer with a SeLU activation function, followed by a dropout layer, and then a third FC layer with a softmax activation function.

[0131] Example 40 includes the subject of Example 39, where the first FC layer has an output size of 128, the second FC layer has an output size of 128, the dropout layer has a dropout rate of 0.3, and the third FC layer has an output size of 11.

[0132] In Example 41, a computer-readable storage medium is provided that stores computer-executable instructions that, when executed by a computer processor, cause the computer processor to perform the method described in any of Examples 1 through 20.

[0133] In Example 42, a wireless communication device comprising a computer system described in any of Examples 21 to 40 is provided.

[0134] In specific examples, any suitable type of device, device, system, machine, etc. mentioned in this document may be a computing device, include, or be implemented therein. A computing device may include a processor and a computer-readable storage medium readable by the processor. The processor may execute one or more instructions stored within the computer-readable storage medium. The processor may also read other information stored within the computer-readable storage medium. Additionally, the processor may store new information within the computer-readable storage medium and update any information stored within the computer-readable storage medium. The processor may include, for example, a Central Processing Unit (CPU), a Digital Signal Processor (DSP), a Graphics Processing Unit (GPU), a processor core, a microprocessor, a microcontroller, a Field-Programmable Gate Array (FPGA), an Application Specific Integrated Circuit (ASIC), other hardware and logic circuits, or any suitable combination thereof. A computer-readable storage medium is encoded with various information, such as a set of processor-executable instructions that can be executed by a processor and / or other information. For example, a computer-readable storage medium may store internal computer program instructions that, when executed by a processor, cause a computing device (e.g., a processor) to perform some of the operations disclosed in this document, and / or information, data, variables, constants, data structures, etc. used in such operations.Computer-readable storage media may include, for example, read-only memory (ROM), random-access memory (RAM), volatile memory, non-volatile memory, removable memory, non-removable memory, flash memory, solid-state memory, other types of memory devices, magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, other types of storage devices and storage media, or any suitable combination thereof.

[0135] In specific examples, the operations, techniques, processes, or any aspects or parts thereof described in this document may be embodied in a computer program product. Such a computer program may be implemented in any type of programming language (e.g., compiled or interpreted) that can be executed by a computer, such as assembly, machine language, procedural language, object-oriented language, etc., and may be combined with a hardware implementation. The computer program product may be distributed in the form of a computer-readable storage medium or distributed online. For online distribution, part or all of the computer program product may be temporarily stored or temporarily created on a server (e.g., a computer-readable storage medium on the server).

[0136] The foregoing description is provided to illustrate and describe several examples in detail. Those skilled in the art will understand that many modifications and variations are possible in light of the foregoing teachings without departing from the scope of this disclosure. In various examples, suitable results may be achieved even if the foregoing techniques are performed in a different order and / or some of the components of the foregoing systems, architectures, devices, circuits and similars are combined or assembled in a different way, or replaced or substituted by other components or equivalents thereof.

[0137] Therefore, the scope of the present disclosure should not be limited to the disclosed forms, but should be determined by the claims and equivalents set forth below. Explanation of the symbols

[0138] 100: Receiver 150: Automatic modulation classification unit 170: Neural network model 210: Critical Autoencoder Noise Canceller 220: Convolutional Neural Network-based Classifier

Claims

Claim 1 A method for Deep Learning (DL)-based Automatic Modulation Classification (AMC), comprising the step of driving a neural network model for said DL-based AMC, wherein the neural network model includes a Threshold Autoencoder Denoiser (TAD) and a Convolutional Neural Network (CNN)-based classifier, and the step of driving said neural network model comprises the step of calculating a threshold value for an input signal having an unknown modulation type received in a non-cooperative communication environment by using said TAD, the step of generating a denoised signal by performing denoising of said input signal based on said threshold value by using said TAD, and the step of processing said denoised signal by using said CNN-based classifier to classify said modulation type of said input signal into one of a plurality of predetermined modulation types, wherein said TAD includes an autoencoder component and a threshold denoiser component, and A method comprising: an encoder portion of an autoencoder component outputting a feature representation of the input signal; a threshold noise removal component converting the feature representation into a noise-removed feature representation based on the threshold value; a decoder portion of the autoencoder component processing the noise-removed feature representation to generate the noise-removed signal; and a CNN-based classifier including a feature extraction layer that extracts features from the noise-removed signal and a classification layer that performs the classification of the modulation type of the input signal based on the extracted features. Claim 2 A method according to claim 1, wherein the feature expression is converted into the noise-removed feature expression according to a noise removal function that sets a near-zero value, where the absolute value is smaller than the threshold value, to zero. Claim 3 A method according to claim 1, wherein the threshold noise removal component comprises an automatic threshold learning sub-neural network that calculates a scaling factor within a predetermined range, calculates a scaled average value of the feature representation based on the scaling factor, and determines the threshold value based on the scaled average value. Claim 4 delete Claim 5 A method according to claim 1, wherein converting the feature expression into the noise-removed feature expression comprises: setting the corresponding element of the noise-removed feature expression to zero when the absolute value of an element of the feature expression is less than or equal to the threshold value; and setting the corresponding element of the noise-removed feature expression to the product of the difference between the absolute value and the threshold value and the sign of the element of the feature expression when the absolute value is greater than the threshold value. Claim 6 delete Claim 7 In claim 3, the automatic threshold learning sub-neural network comprises a Global Average Pooling (GAP) layer and a series of subsequent layers, wherein the GAP layer processes the absolute value of each element of the feature representation as an averaged feature, and the averaged feature is passed to the series of subsequent layers, and the series of subsequent layers comprises a Fully Connected (FC) layer having an activation function to output the scaling factor within the predetermined range, and a threshold determination layer that calculates the scaled average value such that it is equal to the averaged feature multiplied by the scaling factor and determines the threshold value based on the scaled average value. Claim 8 A method in which, in paragraph 3, the threshold value is determined by multiplying the scaled average value by an empirically determined value. Claim 9 In claim 8, the empirically determined value is set based on the classification accuracy achieved by the neural network model in an experiment performed by running the neural network model on a set of sample signals to classify the modulation type of the sample signals within the set, wherein the sample signals within the set include a plurality of sample signals having a signal-to-noise ratio (SNR) lower than a specified level, and the classification accuracy is the measured accuracy of the classified modulation type of the sample signals within the set. Claim 10 A computer-readable storage medium storing computer-executable instructions that, when executed by a computer processor, cause the computer processor to perform the method described in any one of claims 1 through 3, 5, and 7 through 9. Claim 11 A computer system comprises a hardware processor and a memory device storing computer program instructions executable by the hardware processor for implementing a neural network model for Deep Learning (DL)-based Automatic Modulation Classification (AMC), wherein the neural network model comprises a Threshold Autoencoder Denoiser (TAD) that calculates a threshold value for an input signal having an unknown modulation type received in a non-cooperative communication environment and generates a denoised signal by performing denoising of the input signal based on the threshold value, and a Convolutional Neural Network (CNN)-based classifier that processes the denoised signal to classify the modulation type of the input signal into one of a plurality of predetermined modulation types, wherein the TAD includes an autoencoder component and a threshold denoiser component, the encoder portion of the autoencoder component outputs a feature representation of the input signal, and the threshold denoiser A computer system comprising a component that converts the feature representation into a noise-removed feature representation based on the threshold value, a decoder portion of the autoencoder component that processes the noise-removed feature representation to generate the noise-removed signal, and a CNN-based classifier that includes a feature extraction layer that extracts features from the noise-removed signal and a classification layer that performs the classification of the modulation type of the input signal based on the extracted features. Claim 12 A computer system in which, in paragraph 11, the above feature representation is converted into the above noise-removed feature representation according to a noise removal function that sets a near-zero value, where the absolute value is smaller than the threshold value, to zero. Claim 13 A computer system according to claim 11, wherein the threshold noise removal component comprises an automatic threshold learning sub-neural network that calculates a scaling factor within a predetermined range, calculates a scaled average value of the feature representation based on the scaling factor, and determines the threshold value based on the scaled average value. Claim 14 delete Claim 15 A computer system according to claim 11, wherein converting the above-mentioned feature expression into the above-mentioned noise-removed feature expression comprises, when the absolute value of an element of the above-mentioned feature expression is less than or equal to the threshold value, setting the corresponding element of the above-mentioned noise-removed feature expression to zero, and when the absolute value is greater than the threshold value, setting the corresponding element of the above-mentioned noise-removed feature expression to the product of the difference between the absolute value and the threshold value and the sign of the element of the above-mentioned feature expression. Claim 16 delete Claim 17 A computer system according to claim 13, wherein the automatic threshold learning sub-neural network comprises a Global Average Pooling (GAP) layer and a series of subsequent layers, wherein the GAP layer processes the absolute value of each element of the feature representation as an averaged feature, and the averaged feature is passed to the series of subsequent layers, and the series of subsequent layers comprises a Fully Connected (FC) layer having an activation function to output the scaling factor within the predetermined range, and a threshold determination layer that calculates the scaled average value such that it is equal to the averaged feature multiplied by the scaling factor and determines the threshold value based on the scaled average value. Claim 18 A computer system in which, in paragraph 13, the threshold value is determined by multiplying the scaled average value by an empirically determined value. Claim 19 A computer system according to claim 18, wherein the empirically determined value is set based on the classification accuracy achieved by the neural network model in an experiment performed by running the neural network model on a set of sample signals to classify the modulation type of the sample signals within the set, wherein the sample signals within the set include a plurality of sample signals having a signal-to-noise ratio (SNR) lower than a specified level, and the classification accuracy is the measured accuracy of the classified modulation type of the sample signals within the set. Claim 20 A wireless communication device comprising a computer system described in any one of paragraphs 11 through 13, 15, and 17 through 19.

Citation Information

Patent Citations

  • Biologically inspired methods and systems for automatically determining the modulation types of radio signals using stacked de-noising autoencoders

    US10003483B1

  • Denoising medical images by learning sparse image representations with a deep unfolding approach using scan specific metadata

    US20180268526A1