논문/REGULAR PAPERS

CNN-LSTM을 사용한 긴 주기 펄스 레이다 신호 속성 분류

서보석1https://orcid.org/0000-0002-1610-3667, 전중남*,https://orcid.org/0000-0003-0164-0109, 주영관*https://orcid.org/0000-0002-0447-5324, 심홍석**https://orcid.org/0000-0003-1145-1707, 강희석**https://orcid.org/0000-0002-3924-9407
Bo-Seok Seo1https://orcid.org/0000-0002-1610-3667, Joongnam Jeon*,https://orcid.org/0000-0003-0164-0109, Youngkwan Ju*https://orcid.org/0000-0002-0447-5324, Hong-Suk Shim**https://orcid.org/0000-0003-1145-1707, Hee-Seog Kang**https://orcid.org/0000-0002-3924-9407
Author Information & Copyright
1충북대학교 전자공학과
*충북대학교 소프트웨어학과
**한화시스템
1Department of Electronics Engineering, Chungbuk National University
*Department of Software Engineering, Chungbuk National University
**Hanwha Systems
Corresponding Author: Joongnam Jeon (e-mail: joongnam@cbnu.ac.kr)

© Copyright 2022 The Korean Institute of Electromagnetic Engineering and Science. This is an Open-Access article distributed under the terms of the Creative Commons Attribution Non-Commercial License (http://creativecommons.org/licenses/by-nc/4.0/) which permits unrestricted non-commercial use, distribution, and reproduction in any medium, provided the original work is properly cited.

Received: Nov 26, 2021; Revised: Dec 14, 2021; Accepted: Dec 18, 2021

Published Online: Jan 31, 2022

요약

이 논문에서는 펄스 레이다 신호의 특성을 나타내는 무선주파수와 펄스 반복 간격이 시간에 따라 긴 주기를 가지고 변하는 경우, CNN-LSTM(convolutional neural network-long short-term memory) 기계학습을 적용하여 속성을 분류하는 방법을 제시한다. CNN은 데이터의 특징(features)을 추출하는 기능이 있고, LSTM은 순서열 데이터의 상관관계가 클 때 좋은 분류 특성을 나타낸다. 그러나 LSTM은 입력 데이터의 길이가 길 때 오히려 성능이 저하하는 문제점을 가지고 있다. 제안 방법에서는 CNN을 적용하여 긴 주기 데이터로부터 압축된 특징을 추출함으로써 LSTM에 입력되는 데이터의 길이를 축소하였다. 모의실험 결과, 제안 방법은 전체적으로 182,516개의 레이다 신호 속성 조합에 대해 데이터 누락률이 10 %일 때 95 % 이상의 식별률을 나타내었다.

Abstract

In this paper, we propose a classification method of pulsed radar signal attributes by applying machine learning to a convolutional neural network and a long short-term memory(CNN-LSTM) network when the radio frequency and pulse repetition interval of the signal changes with a long period. CNN has a function to extract data features, and LSTM shows good classification performance when sequential data are highly correlated. However, LSTM has a problem that performance is degraded when the length of the input data is long. In the proposed method, CNN is applied to extract compressed features from long-period data to reduce the length of inputs to LSTM. In simulation results, the proposed method shows more than 95% correct classification rate when the data drop rate is 10% for 182,516 total radar signal attribute combinations.

Keywords: Radar Signal Classification; CNN; LSTM; Pulsed Radar Signal Attributes

Ⅰ. 서 론

전자전(electronic warfare) 환경에서는 전파 방해(jamming)나 기만(deception) 등을 위해 레이다(radar) 신호를 빠르고 정확하게 분석할 필요가 있다[1],[2]. 레이다는 신호의 주파수(radio frequency: RF), 펄스 반복 간격(pulse repetition interval: PRI), 펄스 폭(pulse width: PW) 등의 범위와 시간적인 변화 형태를 특성으로 가진다. 이러한 레이다 신호를 분석하기 위해 초기에는 사전에 구축된 신호 정보의 데이터베이스를 이용했지만[3], 최근에 심층학습을 적용한 방법들이 제시되고 있다. 심층학습은 CNN (convolutional neural network)[4]~[7] 또는 LSTM(long short-term memory) 모델[1],[8]을 주로 사용하며, 대부분 PRI, RF, PW 등의 범위와 변화 형태와 같은 펄스 레이다 신호의 특징별로 수~수십 가지로 신호를 분류한다. 한편, 참고문헌 [9]에서는 펄스 레이다 신호를 분석하기 위해 펄스 신호의 주요한 특성인 무선주파수와 펄스 반복 간격의 시간적인 변화 형태를 각각 7가지, 8가지로 구분하고, 변화 형태별로 속성을 정의한 후, LSTM을 사용하여 변화 형태와 속성을 식별하는 방법을 제시하였다. 속성으로는 각 변화 형태에 대해 한 주기 내에 체류하는 계단(dwell) 개수와 한 계단 내의 펄스 개수로 정의하였으며, 한 주기가 최대 32개의 펄스로 구성된다고 가정하였다. 그러나 일반적으로 체류변경(dwell and switch: D&S)의 변화 형태는 그 최대 주기가 수백에 이르며, 이것은 LSTM의 입력 데이터 길이를 확대시키는 것에 해당한다.

LSTM은 입력 데이터 길이의 제곱에 비례하여 내부 파라미터(즉 계수) 수가 증가하는 특성이 있다[9]. 이 경우,긴 데이터를 그대로 LSTM에 입력하는 방법은 학습 시간이 오래 걸릴 뿐만 아니라, 계수의 개수가 과도하게 많아져 분류 성능이 오히려 저하된다[4].

이 논문에서는 LSTM의 이러한 단점을 극복하고 긴 주기를 가지는 체류변경 형태까지 식별할 수 있도록 CNN과 LSTM이 결합된 분류기를 제시하고자 한다. CNN은 입력이 특정 패턴 또는 패턴의 변환을 포함하는 경우, 우수한 성능을 나타내는 것으로 알려져 있다[1]. 제시 방법에서는 CNN을 사용하여 긴 주기 데이터로부터 짧은 길이의 압축된 특징을 추출한다. 이 특징 데이터를 LSTM에 적용함으로써 최대 256개 펄스로 구성된 긴 주기 데이터를 분류할 수 있다.

Ⅱ. 펄스 레이다 신호의 속성 정의

이 논문에서 식별하고자 하는 펄스 레이다 신호는 참고문헌 [9]에서와 같이 각 펄스의 RF와 PRI가 각각 7가지와 8가지 형태 중의 하나로 변한다고 가정한다. 또, 변화 형태(type)와 변화 주기당 체류 계단 수(nSW), 한 계단 내의 펄스 수(nDW)를 레이다 펄스 신호의 속성으로 정의한다(표 1 참조). 그림 1은 nSW=4, nDW=3, 주기 12인 체류변경 형태의 예를 나타낸다. 주기가 없는 고정(STA/ Fix) 형태는 nSW, nDW 모두 1로 놓고, 고정 및 체류변경을 제외한 나머지 형태는 nDW를 1로 놓는다.

표 1. | Table 1. RF 및 PRI의 속성값 | Attribute values of RF and PRI.
Type Pattern (PRI/RF) Notation (PRI/RF) (nSW, nDW) Count
0 Stationary/Fix STA/Fix (1,1) 1
1 Jitter/Agile JIT/AGL (1,1) 1
2 Sine SIN/SIN (6,1)~(32,1) 27
3 Sawtooth+ ST+/ST+ (6,1)~(32,1) 27
4 Sawtooth− ST−/ST− (6,1)~(32,1) 27
5 Triangle TRI/TRI (6,1)~(32,1) 27
6 Dwell & Switch/Hopping D&S/HOP (2,6)~(2,20), …, (32,6)~(32,8) 302
7 Stagger/− STG/− (2,1)~(32,1) 31
Total (PRI/RF) 443/412
Download Excel Table
jkiees-33-1-76-g1
그림 1. | Fig. 1. 주기 12, 속성 nSW=4, nDW=3인 체류변경 형태의 예 | An example of dwell and switch change patterns with a period of 12 and attributes of nSW=4 and nDW=3.
Download Original Figure

체류변경 형태의 nSW, nDW 속성값은 비교적 큰 값을 가질 수 있으므로 다음 조건의 범위에 있다고 가정한다.

nSW × nDW 256
(1)
2 nSW 32
(2)
6 nDW 20
(3)

식 (1)은 RF와 PRI의 최대 주기가 256임을 의미하며, 이러한 가정은 실제 펄스 레이다 신호에서 나타나는 값을 기준으로 설정하였다. 체류변경을 제외한 나머지 변화 형태는 참고문헌 [9]와 동일하게 최대 주기를 32로 놓았으며, 스태거(stagger)는

2 nSW 32  and nDW = 1
(4)

나머지는 다음 조건을 만족한다.

6 nSW 32  and nDW = 1
(5)

RF와 PRI 데이터의 각 변화 형태에 대해 속성값 조합 (nSW, nDW)의 범위 및 조합 개수는 표 1과 같다. 주기가 길어짐에 따라 D&S 속성값 개수가 최대 주기가 32인 경우에 비해 25에서 302로 크게 증가한 것을 볼 수 있다.

Ⅲ. 분류기 구조

분류기는 PRI와 RF를 동시에 입력하여 각각 Type, nSW, nDW를 분류한다. 분류기는 그림 2와 같이 전처리부를 포함하여 3개의 1차원 가중합층(convolution layer)과 2개의 LSTM 층(CNN-LSTM), 2개의 완전연결층(fully connected layer: FCL)으로 구성된다. 그림에서 NA×NB 표기는 길이 NA 인 NB 차원 벡터를 나타낸다.

jkiees-33-1-76-g2
그림 2. | Fig. 2. 제안한 분류기의 구조 | Structure of the proposed classifier.
Download Original Figure

3-1 전처리부

심층학습을 적용하는 신경망에서는 많은 계수와 곱 및 합 연산이 수행되므로 입력값을 일정 범위 이내로 제한할 필요가 있다. 따라서 RF와 PRI의 변화 범위를 다음과 같이 정규화한다.

x [ n ] = x [ n ] m X Δ x max
(6)

여기서 x[n] 과 x′[n] 은 각각 전처리부의 입력과 출력이고, mX 는 입력의 평균, Δxmax 는 입력 변동치의 최대값을 나타낸다.

분류기의 입력 길이(노드 수)는 성능과 계산량을 절충했을 때 RF 또는 PRI 최대 변화 주기의 4배 정도가 적당하다[9]. 따라서 전처리부의 입력 노드 수는 N=1,024이고, 각 노드는 (PRI, RF) 값 벡터를 입력으로 받아들인다.

3-2 1차원 CNN

1개 가중합층은 필터와 풀링(pooling) 층으로 구성되어 있으며, 필터를 통해 입력 데이터의 특징(feature)을 추출하고 풀링을 통해 압축한다[1]. CNN 3개 층의 필터 개수와 필터 길이는 각각 (128, 7), (64, 5), (32, 3)이고, 모두 필터 출력 2개 중에서 최댓값을 선택하는 MaxPooling을 적용한다. 따라서 첫 가중합층은 1,024개의 벡터 입력을 필터링하여 1,024개의 128×1 벡터를 출력하고, 블록 크기 2인 MaxPooling을 통해 최종적으로 512개의 128×1 벡터를 출력한다. 마찬가지로 제2층은 256개의 64×1 벡터를, 제3층은 128개의 32×1 벡터를 출력한다. 결과적으로 CNN에서는 1,024개의 (PRI, RF) 벡터로부터 원소 수 32인 128개의 특징벡터(feature vector)를 생성한다. CNN의 필터 개수, 필터 길이 등의 내부 파라미터는 모의실험을 통해 결정하였다.

3-3 LSTM 망

LSTM 망은 2개의 LSTM 계층으로 구성되며, 제1층에서는 128개의 32×1 벡터를 입력으로 받아 상태수가 L 인 128개의 벡터를 출력한다. 제2층에서는 상태수 L 인 1개의 벡터를 출력한다. 두 층 모두 출력 노드에서 tanh 함수를 활성함수(activation function)로 사용한다. 학습 과정에서는 학습 데이터의 편중으로 인해 발생하는 과적합(overfitting)을 방지하기 위해 0.3 비율로 무작위로 계수를 제거한다[4]. 상태수 L 실험을 통해 256으로 결정하였다.

3-4 다중출력 완전연결망

완전연결망은 RF와 PRI 각 속성에 대해 2개의 완전연결층으로 구성되며, LSTM 망으로부터 입력을 받아 분류기 최종 결과인 속성값을 출력한다. 제1층은 L 개의 상태벡터 원소 개수만큼의 입력과 출력 노드 개수를 가진다. 각 출력 노드의 활성함수로는 모두 ReLU(rectified linear unit) 함수를 사용한다.

분류기의 최종 출력인 제2층의 출력은 6개 속성의 속성값을 분류한 것으로, 속성별 출력 노드 수는 표 2와 같다. 즉, PRI 경우 Type 개수는 8, nSW는 1부터 32까지 32개, nDW는 1과 6부터 20까지 16개가 된다. 마찬가지로 RF는 각각 7개, 32개, 16개가 된다. 전체적으로 분류기는 표 1로부터 PRI 443가지 속성값 조합에 대해 RF 412가지를 분류하므로, 443×412= 182,516가지의 속성값 조합을 분류할 수 있다.

표 2. | Table 2. PRI 및 RF 변화 형태에 따른 학습열 개수 | Number of learning data sequences for PRI and RF change types.
Type STA JIT SIN ST+ ST− TRI D&S STG SUM
Original 1 1 27 27 27 27 302 31 443
Adjustment 750 750 925 925 925 925 1517 1650 8,367
Ratio (%) 9.0 9.0 11.1 11.1 11.1 11.1 18.1 19.7 100
Download Excel Table

Ⅳ. 모의실험 결과

제안한 분류기의 성능은 학습에 의한 수렴 과정과 속성별 식별률을 통해 평가한다. 먼저 학습용 데이터를 생성하여 분류기를 학습시키고, 별도의 평가용 데이터를 통해 식별률을 구한다. 학습용 데이터는 표 3과 같이 발생 빈도가 작은 속성값인 경우, 더 많은 개수를 생성하여, 분류기가 각 속성 출력값에 대해 비교적 균일한 비율로 학습되도록 한다. 여기서 조정값은 각 변화 형태의 nSW와 nDW 발생 빈도를 고려하여 경험적으로 결정하였다. 전체 학습열(1개 학습열은 1,024개의 데이터) 개수는 전체 조정 개수의 합을 45배 한 8,367×45=376,515이다. 학습 데이터는 80 %를 학습용으로, 나머지 20 %를 평가용으로 사용하며, 학습용 80 % 중에서 15 %는 모델 검증용으로 사용한다. 학습 단위(batch size)는 400이다.

표 3. | Table 3. 각 속성에 대한 분류기 출력 수 | The number of outputs of the classifier for to the attributes.
Output PRI RF
Type nSW nDW Type nSW nDW
Number of output nodes 8 32 16 7 32 16
Download Excel Table

분류기 모델은 Python 3.5의 Tensorflow 2.3 라이브러리를 사용하여, 최적화 방법(optimizer)은 'adam' 기법을, 손실함수(loss)는 'sparse_categorical_crossentropy'를, 평가측도 (metircs)는 식별률에 해당하는 'accuracy'를 사용한다. 손실함수에 대한 가중치는 1로 동일하고, 학습 횟수(epoch) 은 400이다.

그림 3은 참고문헌 [9]에서 제시한 2-입력-6출력(i2o6) 분류기 구조(a~c)와 제안방법(d)에 대해, 입력 데이터 길이가 1,024일 때 학습횟수에 따른 PRI nSW 속성의 식별률을 나타낸다. 그림에서 청색 선은 학습 데이터에 대한 식별률을 의미하고, 황색 선은 검증 데이터에 대한 식별률을 의미한다. i2o6 분류기는 1,024개 데이터를 다루기 위해 다양한 형태의 입력을 고려하였다. 입력 형태 1,024×2는 1,024개의 PRI와 RF 데이터 쌍 (PRI, RF)를 2×1 벡터로 하여 1,024개 노드에 입력하는 것을 의미하고, Nnode×2 M은 시간 순서로 (PRI[n], …, PRI[n+M−1], RF[n], …, RF[n+M−1])의 2M×1 벡터를 Nnode개 노드에 입력한 것을 의미한다. 그림을 보면 i2o6 분류기 구조에서는 입력 형태를 변화시켜도 분류기가 안정적으로 수렴하지 않는 것을 알 수 있다. 이에 비해 제안 방법은 초기부터 비교적 안정적으로 수렴한다.

jkiees-33-1-76-g3
그림 3. | Fig. 3. 학습 횟수(x축)에 따른 PRI nSW 속성의 식별률(y축). | Correct classification rate (y-axis) of PRI nSW attribute according to epochs (x-axis).
Download Original Figure

그림 4는 펄스의 누락률과 다른 펄스의 유입률에 따른 제안 방식의 속성별 식별률을 나타낸다. 그림에서 x축은 펄스의 누락률을 나타내고, y축은 식별률을 나타낸다. 색깔별로 표시한 범례는 가짜 펄스의 유입률을 나타낸다. i2o6 분류기 결과와 유사하게 PRI nSW 속성의 식별률이 다른 속성에 비해 낮게 나타난다. 그러나 긴 주기 신호에 대해 i2o6 분류기는 거의 수렴하지 못하는 것에 비해 제시 방법은 최악조건에서도 90 % 이상의 식별률을 나타내는 것을 볼 수 있다.

그림을 보면 펄스의 누락이나 가짜 펄스의 유입에 따라 PRI 식별률이 RF에 비해 더 크게 영향을 받는다. 이것은 펄스의 누락 또는 가짜 펄스의 유입 시 RF는 그 값의 변화가 크지 않지만 PRI는 변화폭이 매우 크게 되기 때문으로 판단된다. 또 PRI, RF 모두 nSW가 Type이나 nDW 속성에 비해 식별률이 낮은 이유는 표 3과 같이 nSW가 분류해야 할 가짓수가 많기 때문이다.

jkiees-33-1-76-g4
그림 4. | Fig. 4. 가짜 펄스 유입률(범례) 및 펄스 누락률(x축)에 따른 제안 분류기의 각 속성 식별률(y축) | Correct classification rate (y-axis) of the proposed classifier for each attribute with fake pulse rates (regend) and pulse drop rates (x-axis).
Download Original Figure

Ⅴ. 결 론

이 논문에서는 CNN과 LSTM 모델을 결합하여 펄스 레이다 신호의 PRI와 RF가 긴 주기를 가질 때 파형을 식별하기 위한 기계학습 방법을 제시하였다. 제시 방법은 PRI와 RF 데이터에 대해 정의된 3개의 속성, 즉 변화 형태(Type), 한 주기 내에서 일정 값을 유지하는 체류 계단 개수(nSW), 한 계단 내에 존재하는 펄스 개수(nDW)를 식별한다. 모의실험 결과 데이터 변화의 특징을 추출하는 CNN을 사용하여 긴 데이터 입력을 압축함으로써 LSTM이 안정적이고 효과적으로 동작하는 것을 확인할 수 있었다.

제시한 벙법은 PRI와 RF의 최대 변화 주기가 256에 이르기까지 전체 182,516가지 속성 조합에 대해 90 % 이상의 식별률을 나타낸다. 일반적으로 실제 환경에서 펄스 누락률이 10 % 이하임을 감안하면 전체적으로 95 % 이상의 높은 식별률을 나타낸다. 한편, 심층학습 구조 분류기에서 학습 데이터의 분포는 식별률에 크게 영향을 미친다. 이 논문에서는 경험적으로 분류 속성별 학습열 개수를 정하였는데, 향후 이를 논리적으로 정량화하는 방법에 대해 연구하고자 한다.

Acknowledgements

이 연구는 2021년도 (주)한화시스템의 재원을 지원받아 수행되었음.

이 논문(연구실적물)은 2021학년도 충북대학교 연구년제 지원에 의하여 연구되었음.

References

[1].

G. H. Lee, J. I. Jo, and C. H. Park, "Jamming prediction for radar signals using machine learning methods," Security and Communication Networks, vol. 2020, p. 2151570, Jan. 2020.

[2].

J. S. Park, "Radar signal processing and applications," Journal of Institute of Electronics and Information Engineers, vol. 47, no. 8, pp. 40-48, Aug. 2020.

[3].

R. G. Wiley, ELINT: The Interception and Analysis of Radar Signals, Boston, MA, Artech House, 2006.

[4].

S. H. Kong, M. Kim, L. M. Koang, and E. Kim, "Automatic LPI radar waveform recognition using CNN," IEEE Access, vol. 6, pp. 4207-4219, 2018.

[5].

S. J. Hong, Y. G. Yi, J. I. Jo, S. G. Lee, and B. S. Seo, "Automatic classification of radar signals using CNN," Journal of Korean Institute of Electromagnetic Engineering and Science, vol. 30, no. 2, pp. 132-140, Feb. 2019.

[6].

H. P. K. Nguyen, H. Nguyen, and D. Ngo, "Deep learning for pulse repetition interval classification," in Proceedings of the 8th International Conference on Pattern Recognition Applications and Methods, Prague, Feb. 2019, pp. 313-319.
,

[7].

B. Wu, S. Yuan, P. Li, Z. Jing, S. Huang, and Y. Zhao, "Radar emitter signal recognition based on one-dimensional convolutional neural network with attention mechanism," Sensors, vol. 20, no. 21, p. 6350, Nov. 2020.
, ,

[8].

P. Notaro, M. Paschali, C. Hopke, D. Wittmann, and N. Navab, "Radar emitter classification with attribute-s pecific recurrent neural networks," Nov. 2020. Available: https://arxiv.org/abs/1911.07683

[9].

J. N. Jeon, B. S. Seo, Y. K. Ju, H. S. Shim, and H. S. Kang, "Attribute classification of pulsed radar signals using LSTM," Journal of Korean Institute of Electromagnetic Engineering and Science, vol. 32, no. 11, pp. 1002-1013, Nov. 2021.

Author Information

서 보 석 [충북대학교/교수]

jkiees-33-1-76-i1

  • https://orcid.org/0000-0002-1610-3667

  • 1987년 2월: 서울대학교 전자공학과 (공학사)

  • 1989년 2월: 서울대학교 전자공학과 (공학석사)

  • 1997년 2월: 서울대학교 전자공학과 (공학박사)

  • 2004년 9월~현재: 충북대학교 전자공학과 교수

  • [주 관심분야] 통신신호처리, 적응신호처리, 레이다 신호처리

전 중 남 [충북대학교/교수]

jkiees-33-1-76-i2

  • https://orcid.org/0000-0003-0164-0109

  • 1990년 2월: 연세대학교 전자공학과 (공학박사)

  • 1996년~1998년: 미국 Texas A&M 연구교수

  • 1990년 9월~현재: 충북대학교 전자정보대학 교수

  • [주 관심분야] 컴퓨터구조, 임베디드 시스템, 신호처리 등

주 영 관 [충북대학교/초빙교수]

jkiees-33-1-76-i3

  • https://orcid.org/0000-0002-0447-5324

  • 1999년 2월: 청주대학교 컴퓨터정보공학과 (공학사)

  • 2004년 2월: 충북대학교 전자계산학과 (이학 석사)

  • 2009년 2월: 충북대학교 전자계산학과 (공학박사)

  • 2020년 3월~현재: 충북대학교 전자정보대학 초빙교수

  • [주 관심분야] 임베디드 시스템, 컴퓨터 구조 등

심 홍 석 [한화시스템/전문연구원]

jkiees-33-1-76-i4

  • https://orcid.org/0000-0003-1145-1707

  • 2005년 2월: 충북대학교 컴퓨터공학과 (공학사)

  • 2008년 1월: 충남대학교 컴퓨터공학과 (공학석사)

  • 2007년 3월~현재: 한화시스템 전문연구원

  • [주 관심분야] ELINT/COMINT 신호분석, 신호처리

강 희 석 [한화시스템/수석연구원]

jkiees-33-1-76-i5

  • https://orcid.org/0000-0002-3924-9407

  • 1990년 2월: 충남대학교 컴퓨터공학과 (공학사)

  • 1992년 2월: 충남대학교 컴퓨터공학과 (공학석사)

  • 2007년 3월~현재: 한화시스템 수석연구원

  • [주 관심분야] 전자전 신호처리, 전자전 소프트웨어