딥 러닝 군집화를 이용한 QPSK 신호 비트 오류율 성능 평가
초록
딥 러닝 분야에서 활용되고 있는 군집화에 기반한 자율학습(CUL, Clustering-based Unsupervised Learning) 기법을 QPSK 검파에 적용하였다. 기존 QPSK 검파는 전송 심볼의 참조 성상점을 기준으로 최대공산(ML, Maximum Likelihood)에 의해서 수행되었던 반면, CUL을 사용하면 군집이 네 개라는 정보만으로 검파를 수행하게 된다. CUL에서는 자율학습에 입력으로 제공되는 심볼 집합의 크기와 중심점 결정을 위한 반복 회수 및 신호 대 잡음비가 검파 성능을 결정하며, 검파 성능은 추정된 중심점과 참조 성상점 사이의 평균 자승 오차와 비트 오류율을 통하여 평가하였다. CUL으로 검파할 때, 임의로 선택된 초기 중심점을 사용하는 경우 신호 대잡음비가 개선되어도 비트 오류율이 개선되지 않는다는 사실을 발견하였다. 이 문제를 해결하기 위하여 QPSK 검파에 적합한 초기 중심점 선택 기법을 제안하였으며, 이를 통하여 딥 러닝 기법을 이용한 검파에서 기존의 ML 검파와 동일한 수준의 비트오류율 성능을 달성하였다.
Abstract
We apply the clustering-based unsupervised learning (CUL) in deep learning field to QPSK detection. The conventional QPSK detection has been performed by maximum likelihood (ML) based on the reference symbols. On the other hand, if the CUL is used, the detection is performed with only information of the number of clusters. In the CUL, the detection performance is determined by the size of the symbol set, the number of repetitions and the signal-to-noise ratio (SNR). The detection performance is evaluated through the mean square error between the estimated center and reference symbols and bit error rate (BER). We found that the BER is not improved even if the SNR is improved when using arbitrarily selected initial center points. To solve this problem, we propose an initial center-point selection technique suitable for the QPSK detection, and achieve BER performance equal to that of conventional ML detection.
Keywords:
clustering-based unsupervised learning, detection, deep learningⅠ. 서 론
딥 러닝(Deep Learning)은 현대의 컴퓨터 하드웨어가 제공하는 막강한 계산 능력과 방대한 메모리 용량과 결합하면서 인공지능 분야에서 각광받는 연구 분야가 되었다[1]. 특히 바둑과 같은 특정 응용분야에 대하여는 인간을 능가하는 문제 해결 능력을 보여주면서 딥 러닝을 적용할 수 있는 분야에 대한 연구가 활발히 이루어지고 있다[2]. 특히 딥러닝 분야를 선도하고 있는 구글(Google)사는 딥 러닝 연산 플랫폼으로 텐서플로(Tensor Flow) 라이브러리를 다양한 프로그래밍 언어로 배포하고 있다. 텐서플로를 활용하면 딥 러닝 알고리즘을 새로운 응용분야에 빠르게 적용하여 볼 수 있는 장점이 있다. 본 논문에서는 텐서플로를 대표적인 디지털 무선 통신 신호 변조 방식인 QPSK를 검파하는 것에 적용하여 비트오류율 성능을 평가한다.
무선 통신에서는 채널을 통하여 신호가 수신될 때 수신기 열잡음에 의해서 수신된 심볼은 송신 시점과는 다른 값을 나타낸다. 잡음과 섞여 있는 수신신호가 어떤 송신 심볼과 가장 유사한가를 최대 공산(ML, Maximum Likelihood Detection)으로 판단하여야 한다[3]. ML을 구현하기 위하여 심볼들의 참조 위치가 송수신기에 알려져 있어야 한다. 셀룰러 시스템에서 전송 용량을 극대화하기 위하여 송수신기 간 수신 신호 강도를 측정하여 대응되는 변조방식과 채널 코딩 방식(Modulation and Coding Scheme)을 결합하여 사용하고 있으며 이 경우에서도 심볼들의 참조위치는 검파에 있어 매우 중요한 정보이다[4].
한편, 딥 러닝을 동작시키기 위해서는 입력 값들에 대응되는 출력 값에 대한 방대한 정보가 필요하다. 이 때 입력 값들과 출력 값들에 대한 집합의 원소와 크기가 명확하게 정해지지 않은 경우 군집화(Clustering)에 의한 자율학습이 적용되어야 한다[5][6]. 본 논문에서는 딥 러닝에서 사용하는 군집화 기법이 송신 신호를 전혀 알 수 없는 상황에서 잡음이 섞인 수신 신호를 검파하는 상황에 응용될 수 있다고 판단하였다. 본 논문에서는 수신 신호를 군집화에 의한 자율학습 기법으로 검파하였을 때 QPSK 신호의 비트 오류율 성능을 평가하고, 비트오류율 성능을 개선하기 위한 기법을 제안하였다.
기존의 QPSK 신호 검파에서 ML은 수신 신호의 동위상(In-phase) 성분과 직교위상(Quadrature-phase) 성분을 양의 값과 음의 값으로 구분하여 특정 송신심볼에 대응시킨 후 비트 정보를 추출하는 방법으로 디코딩을 수행하였다. 반면 군집화에 따른 자율학습 방법을 사용하게 되면 수신신호에서 임의의 중심점 신호 네 개를 선택하고, K-평균(K-means) 알고리즘을 통하여 중심 신호 값을 갱신하는 과정을 거쳐서 참조 심볼들을 찾아내게 된다. 이후 각각의 참조 심볼과 유클리드(Euclidean) 거리가 가장 작은 심볼들을 군집화하여 디코딩 과정을 완료하게 된다. 이러한 과정을 통해서 수신 신호의 편향에 영향을 받지 않고 디코딩을 수행할 수 있다. 또한 연구를 진행하면서 군집화에 따른 자율 학습 기법이 오히려 수신 신호 대 잡음비가 높은 상황에서 비트오류율을 열화시킨다는 특징을 발견하였으며, 이것을 개선할 수 있는 기법을 제안하였다.
Ⅱ. 시스템 모델
군집화에 의한 자율학습 기법을 적용하기 위하여 수신된 심볼을 하나하나 검파하지 않고, N 개의 심볼을 수신하여 그룹화를 진행한다. 수신 신호는 다음과 같이 나타낼 수 있다.
(1) |
식 (1)에서 i는 군집화를 실행할 대상이 될 수신 심볼을 의미하며 군집화에 N 개의 수신 심볼이 사용된다. j는 최초 송신 시 전송한 심볼을 의미하며 M 은 심볼의 종류이다. QPSK의 경우 네 개의 심볼 중 하나를 전송하게 되므로 M 의 값은 4가 된다.
수신된 심볼 중에서 군집화를 위한 중심점으로 사용할 M 개의 심볼 yS(j), j = 1,2,...,M 을 수신된 N 개의 yi 중 임의로 선택한다.
다음으로 각 수신 심볼 yi에 대하여 다음과 같이 군집을 분류한다. arg(k)는 색인 k 에 대한 일련의 계산을 만족하는 색인 값을 선택하는 연산기호이다.
(2) |
식 (2)에서 min[]는 최소값을 찾아내는 연산이다. 심볼 yi 를 모든 k값에 대하여 현재의 중심점과 거리를 비교하여 yi 와 가장 가까운 중심점에 대한 색인 값 j를 찾아낸다. 식 (2)를 통하여 심볼 yi 의 색인 i는 집합 Sj 에 포함된다. Sj 는 yS(j)를 가장 가까운 중심점으로 갖는 심볼들의 색인 값에 대한 집합이다. 최종적으로 Sj 에 속하는 심볼들에 대해서 다음과 같이 평균값 연산을 수행하여 새로운 중심점을 계산한다.
(3) |
새로 계산된 값으로 중심점을 갱신하고 동일한 과정을 L 번 반복한다. L 번 반복한 후에 Sj 에 속한 심볼들을 xj로 가정하고 다음 식 (4)와 같이 디코딩을 수행하여 비트 정보를 추출한다.
(4) |
Ⅲ. QPSK 검파 성능 평가 기준 및 성능 검증
그림 2에는 N =1000개의 QPSK 심볼을 대상으로 군집화한 결과가 도시되어 있다. 신호 대 잡음비(SNR, Signal-to-Noise Ratio)는 2dB 이었으며, L =50회 반복하여 그림 1에 도시된 추정 절차를 수행하였다.
그림에서는 최초 중심점 설정과 16번째 알고리즘이 반복되었을 때 추정된 중심점이 도시되어 있다. 그림 2 에서 보는 바와 같이 최초 중심점은 임의로 선택되므로 네 개의 점이 임의로 분포해 있는 것을 확인할 수 있다. 그러나 알고리즘을 16회 반복한 후 도출된 결과에서는 QPSK 참조 심볼과 매우 유사한 위치에 중심점들이 존재한다는 사실을 관찰할 수 있다.
그림 2의 결과에서 주목해야 하는 것은 본 문제를 해결함에 있어서 알고리즘 입력 정보에 QPSK라는 정보가 없다는 사실이다. 단지 4개의 중심점이 존재한다는 사실만을 입력해 준 것 뿐인데, 알고리즘은 QPSK 참조 심볼과 매우 유사한 중심점을 추정해 내었다. 알고리즘의 추정 정확도를 평가하기 위하여, 추정된 중심점의 위치와 QPSK 참조 심볼의 위치의 차이를 정량적으로 평가해 볼 필요가 있다. QPSK 송신 심볼 xj의 구체적인 값 들을 아래 식 (5)와 같이 제시한다.
(5) |
xj에 대응되는 추정된 중심점을 동일 사분면에 존재하는 yS(j)라고 할 때 다음과 같은 평균 제곱 오차(MSE, Mean Square Error) 식에 의하여 추정 성능을 정량적으로 측정해 볼 수 있다.
(6) |
그림 3에 K-평균 알고리즘[6]을 QPSK 검파에 사용하였을 때 추정된 중심점과 QPSK 참조 심볼 위치 차이에 대한 MSE가 도시되어 있다. 일반적으로 SNR이 증가하면 추정된 중심점의 MSE 값은 작아진다. 또한 추정에 활용할 수 있는 심볼 집단의 크기 N이 클 수록 중심점 추정 성능은 개선된다. 추정된 중심점에 대한 MSE 결과는 검파 기준점에 대한 정확도를 평가한 것이다. 식 (4)와 같이 최종 추정된 중심점을 기준으로한 검파 성능을 평가하기 위하여 비트 오류율(BER, Bit Error Rate)을 측정하였다.
BER 성능은 그림 4에 도시되어 있다. 비트 당 SNR이 증가함에 따라 5dB 부근까지는 BER이 감소하지만, 더 높은 SNR에 대하여 SNR이 증가할 때 BER도 같이 증가하는 현상을 보이고 있다.
높은 SNR에서 BER 성능이 열화되는 정도는 N 이 클수록 그 정도가 더 심각하다. 특히 기존 ML에 의한 검파 기법 대비 매우 낮은 BER 성능을 보여준다. 일반적으로 심볼 집단의 크기 N이 커지는 경우 식 (3)의 평균화 과정에서 잡음 제거 효과가 크기 때문에 중심점 추정 성능이 개선된다. 그러나 중심점 추정 성능이 개선되었음에도 BER 성능이 열화되는 것은 평균적인 MSE 값에는 큰 영향을 주지 않지만 비트 오류율 측면에서 특정 참조 심볼로 분류된
수신 심볼 집단에 대량 비트 오류가 발생했을 상황임을 추론해 볼 수 있다. 심볼 집단의 크기 N이 10밖에 안 될 때는, 정확한 중심점 추정은 어렵겠지만 중심점 추정이 크게 잘못되더라도 오류의 개수는 10개 이내로 제한된다. 따라서 BER 열화가 크지 않을 수 있다. 그러나 심볼 집단의 크기가 1000개인 경우 한 번의 중심점 추정 실패만으로도 매우 많은 비트 오류가 발생할 수 있어 BER이 크게 열화될 수 있다. 높은 SNR에서 BER 성능이 열화되는 정도는 N이 클수록 그 정도가 더 심각하다. 특히 기존 ML에 의한 검파 기법 대비 매우 낮은 BER 성능을 보여준다.
일반적으로 심볼 집단의 크기 N이 커지는 경우 식 (3)의 평균화 과정에서 잡음 제거 효과가 크기 때문에 중심점 추정 성능이 개선된다. 그러나 중심점 추정 성능이 개선되었음에도 BER 성능이 열화되는 것은 평균적인 MSE 값에는 큰 영향을 주지 않지만 비트 오류율 측면에서 특정 참조 심볼로 분류된 수신 심볼 집단에 대량 비트 오류가 발생했을 상황임을 추론해 볼 수 있다.
심볼 집단의 크기 N이 10밖에 안 될 때는, 정확한 중심점 추정은 어렵겠지만 중심점 추정이 크게 잘못되더라도 오류의 개수는 10개 이내로 제한된다. 따라서 BER 열화가 크지 않을 수 있다. 그러나 심볼 집단의 크기가 1000개인 경우 한 번의 중심점 추정 실패만으로도 매우 많은 비트 오류가 발생할 수 있어 BER이 크게 열화될 수 있다.
Ⅳ. 초기 중심점 선택 및 성능 개선
추정된 중심점의 MSE 감소에도 불구하고 BER이 높은 SNR에서 오히려 증가하는 현상에 대한 원인을 규명하기위하여 높은 SNR에서 최초 중심점의 선택과 최종 중심점 추정 과정에 대하여 면밀히 관찰하였으며, 그림 5와 같은 현상을 관찰하게 되었다.
높은 SNR에서는 특정 참조 심볼 주변에 성상점이 밀집해 있기 때문에 하나의 성상점 군집에서 두 개의 초기 중심점이 임의로 선택될 수 있다. 이 경우 알고리즘이 동작하면서 최종적으로 중심점 추정에 실패하는 상황이 발생한다. 그림 5 왼쪽 성상도에서, 제2사분면에 위치한 최초 선택 중심점은 오른쪽 성상도에서 (0, 0.7) 부근으로 이동하여 위쪽 두 개의 군집에 대한 중심점 되었다. 반면, 하나의 군집에서 두 개의 최초 중심점이 선택되는 경우, 알고리즘 동작이 종료되어도 하나의 군집에 중심점이 두 개 존재하는 문제가 발생한다. N 값이 1000인 경우이므로 중심점 추정 상황으로 볼 때 절반 이상의 심볼에 검파 오류가 발생할 것으로 추론된다.
SNR이 높은 경우 초기 중심점 선택이 BER 성능에 매우 큰 영향을 주므로 초기 중심점 선택에 있어 개선된 방법을 제안하고자 한다. 본 연구는 딥러닝 기술 영역에서 자율학습 기법에 대한 것이므로, 초기 중심점을 선택하는데 있어 추가적인 제한조건을 가하는 것은 연구 취지에 맞지 않다. 따라서 수신 심볼 중 임의로 하나의 심볼 yS를 선택한 후 다음과 같이 4개의 초기 중심점으로 확장한다. 식 (7)에서 *표시는 켤레 복소수(Complex Conjugate)를 의미한다.
(7) |
최초 임의로 선택된 yS로부터 위상을 각각 90, 180, 270도 회전시킨 초기 중심점으로부터 그림 1의 알고리즘을 수행한다. yS의 최초 위치와 상관없이 확장된 초기 중심점들은 각기 다른 사분면에 위치하게 될 것이므로, 중심점들이 특정 군집에 복수 개집중되는 현상을 방지할 수 있다. 식 (7)에서 제안한 초기 중심점 확장에 의한 BER 성능은 그림 6에 도시되어 있다. 그림 4에서 BER 성능이 열화되기 시작한 비트 당 SNR이 5dB인 부분을 확대하여 도시하였다. 결과로 확인할 수 있듯이, 기존의 ML 검파 기법과 거의 동일한 성능을 보여주고 있음이 확인되었다. N 값이 10으로 매우 작거나, N 값이 1000으로 매우 큰 것과 상관없이 최상의 검파기법으로 알려져 있는 ML 기법과 동일한 성능을 보이는 것을 확인할 수 있다. 본 결과에서는 실험 조건 별 결과를 구분하기 위하여 마커색을 제거하였으나 확대한 상태에서도 BER 성능의 차이를 관찰하기 어렵다. 이 결과로부터 최초 중심점 선택 방법에 대한 개선만으로 ML 검파 성능에 도달할 수 있는 딥 러닝검파 기법이 존재할 수 있음을 알 수 있다.
추가적으로 본 논문에서 다루고 있는 군집화 기법에 대하여 고찰해 보면, 잡음이 섞인 신호에 대한 동기 추정이나 채널 추정 기법에 적용되어 활용될 수 있다[7]. K-평균 알고리즘은 절대 참조 위치를 지정해 주지 않을 뿐, 반복에 의하여 참조 위치를 학습해 나아가기 때문에 특히 채널 추정에서 위상을 추정하는데 유용하게 활용될 것으로 예상된다. 또한, [8]과 같은 V2X 환경에서 노드의 밀도를 추정하여 접속시킬 기지국을 선택하는 용도로도 활용가능하다.
V. 결 론
본 연구는 군집화에 기반한 자율학습기법을 QPSK 검파에 적용한 것으로 무선 통신 신호를 검파할 수 있는 새로운 접근 방향을 제공하고 기초 연구임과 동시에 추가적으로 해결해야할 과제를 제시하고 있다. 군집화 과정에서 연산량의 복잡도가 기존 검파 기법 대비 증가한다. 이러한 문제에 대하여는 64QAM이나 256QAM과 같이 ML 기법 적용이 필요한 고차변조 검파 기법과의 복잡도 비교 연구가 필요하다고 판단된다. 최근 텐서플로에 최적화된 별도의 계산 프로세서가 개발됨에 따라 계산량 증가에 대한 부담은 줄어들 것으로 생각된다. 추후 고차 변조에 대한 복잡도 연구와 참조 심볼 추정 성능을 이용한 채널 추정 기법에 대하여 연구 범위를 확장할 수 있다.
Acknowledgments
본 연구는 2016학년도 상명대학교 교내연구비를 지원받아 수행하였음.
References
- H. Ye, G. Y. Li, and B. H Juang, "Power of Deep Learning for Channel Estimation and Signal Detection in OFDM Systems", IEEE Wireless Communications Letters, PP(99), (Early Access) p1-5, Oct), (2017.
- L. Fang, and L. Wu, "Deep learning detection method for signal demodulation in short range multipath channel", International Conference on Opto-Electronic Information Processing (ICOIP) 2017, p16-20, Jul), (2017. [https://doi.org/10.1109/optip.2017.8030690]
- B. Sklar, "Digital Communications: Fundamentals and Applications 2nd Ed.", PrenticeHall, (2001).
- E. Dahlman, and S. Parkvall, "4G, LTE-Advanced Pro and The Road to 5G 3rd Ed.", Academix Press, (2016).
- Coates, A., Ng, A.Y, "Learning Feature Representations with K-Means", Lecture Notes in Computer Science, 7700, p561-580, (2012).
- S. Raschka, and V. Mirjalili, "Python Machine Learning: Machine Learning and Deep Learning with Python, scikit-learn, and TensorFlow, 2nd Ed.", Packt Publishing, (2017).
- H. Choi, G. Seo, and K. Ko, "Performance Analysis of Timing Synchronization and Channel Estimation for IEEE 802.11p", Proceedings of KIIT Summer Conference, p143-144, Jun), (2015.
- S. Lim, and K. Ko, "Performance Evaluation of MAC Layer Due to Vehicle Intensities in V2V Communications Based on IEEE 802.11p", Journal of Korean Institute of Information Technology, 14(8), p41-46, Aug), (2016. [https://doi.org/10.14801/jkiit.2016.14.8.41]
2014년 7월 : 서안공정대학교 전자정보공학과
2015년 9월 ~ 현재 : 상명대학교 전자정보시스템공학과 석사과정
관심분야 : 딥 러닝
2004년 2월 : 연세대학교 전기전자공학과(공학사)
2010년 8월 : 연세대학교 전기전자공학과(공학박사)
2012년 3월 ~ 현재 : 상명대학교 정보통신공학과 조교수
관심분야 : 이중편파안테나