Ⅰ. 서 론
최근 전파기술의 발달로 전파의 범위가 GHz 대역을 넘어 THz를 지나 가시광선 대역으로 확장되고 있다. 이에 근적외선 및 가시광선을 통신 및 센싱에 활용하려는 연구가 다양하게 진행되고 있다. 통신에 활용한 예로는 LED의 빠른 스위칭을 이용한 가시광통신, 레이저의 직진성을 이용한 레이저 통신 등이 있으며, 센싱에 활용한 예로는 펄스 레이저의 정밀한 거리 센싱 능력을 활용한 Light Detection and Ranging(LIDAR) 등이 있다. 본 연구에서는 근적외선 및 가시광선 대역을 미래전파 응용 분야 중 하나인 전파센싱 분야에 적용하고자 한다. 특히, 최근 이슈가 되고 있는 의약품 분류에 적용하고자 한다[1].
의약품은 생명과 밀접한 관계가 있어 잘못 복용할 경우, 부작용이 생길 수 있고, 심지어 사망에까지 이를 수 있으므로, 이러한 의료 사고를 막기 위해서는 증상에 맞는 의약품을 처방받아 섭취하는 것이 중요하다. 특히 위조 의약품은 현재 세계 의약품 시장의 약 10 %에 이르고 있으며, 그 수는 매년 증가하는 추세로서 심각한 문제가 되고 있다[2]. 위조 의약품이란 진짜 의약품과 같은 모양으로 만들거나 포장하여 고의적으로 속이기 위해 진짜 의약품처럼 보이게 하는 약품을 말한다[3].
위조 의약품은 일반적으로 진짜 의약품과 형태나 색상이 매우 유사하므로 구별이 쉽지 않다. 따라서 이를 정확하게 식별하기 위해서는 전문적인 판별 능력이 필요하다. 하지만 의사, 약사 또는 간호사처럼 숙련된 전문 인력은 제한적이라는 문제가 있다. 따라서 전문 인력을 대신하여 자동적으로 의약품의 종류를 구분하고, 위조 의약품을 판별하는 방법이 필요하다. 기존의 방법으로는 색층 분석법, 질량 분석법, 진동 분광학적 방법[4]~[6] 등이 있으며, 위조 약품을 구분하기 위해 QR 코드를 약품에 섞어 넣는 방법, 의약품을 자동 포장하는 시스템에서 약통을 실시간으로 분류하여 오분류를 방지하는 연구, 근적외선(Near Infra-Red: NIR) 분광법을 이용하여 위조 약품을 분류하는 연구 등이 수행된 바 있다[7]~[9]. 특히, 의약품을 구성하는 약재에 NIR 파장을 비출 경우, 이를 반사 또는 흡수하는 정도가 다르기 때문에, 물질마다 서로 다른 스펙트럼 데이터를 얻을 수 있다[10].
본 연구에서는 근적외선뿐만 아니라 가시광선을 포함하는 광대역 스펙트럼(0.4~1.0 μm)을 갖는 휴대용분광기를 사용한다. 현재까지 관련 연구를 살펴보면, 근적외선만을 이용하여 식품의 성분과 원산지를 판단하는 연구[11],[12]가 이루어지고 있다. 의약품의 경우는 말라리아 예방약, 발기부전 치료제, 기타 의약품에 대한 위조 약품을 분류하는 연구들이 있었다[13],[14]. 하지만 기존 연구에서 사용된 분광기는 고가의 장비이며, 파장 분석을 위해서는 분광기를 고정시키고 사용하여야 했기 때문에, 실험실과 같이 제한적인 장소에서만 측정이 가능하여 일반인이 사용하기에는 무리가 있었다. 따라서 본 논문에서는 보다 편리하고 간편한 의약품 분류를 위해 휴대가 가능한 근적외선/가시광선 분광기를 사용한다. 최근 일부 근적외선을 사용하는 휴대용 장비를 이용한 의약품 분류 연구가 최근 발표된 바 있지만, 근적외선과 가시광선을 동시에 사용한 연구는 아직까지 없었다[15].
또한, 본 연구에서는 추출된 의약품의 근적외선 및 가시광선 스펙트럼은 전처리 과정을 거친 후, 기계학습의 일종인 Support Vector Machine(SVM)을 이용하여 학습시키고 분류하는 방법을 제안한다.
Ⅱ. 관련 장비 및 이론
분광기는 입사되는 광선을 다양한 파장으로 분광시켜 물질에 비추고, 이로부터 반사되는 스펙트럼을 파장별로 구분하여 표시하는 장치로서 물질마다 광선 흡수 및 반사에 대해 가지고 있는 고유의 광학적 특징을 이용한다[16]. 본 논문에서는 Stratio사에서 제작한 휴대형 분광기인 Link Square를 사용하였는데, 이의 물리적인 구조를 그림 1에서 나타내었다.

LinkSquare 분광기는 입사하는 빛을 발생하는 광원과 빛을 분광시키고, 경로를 조정하는 광학계, 그리고 영상센서로 구성된다. 광원으로는 가시광선과 근적외선용으로 두 개를 사용하며, 광학계는 파장별에 따라 굴절률이 달라지는 빛의 특성을 이용하여, 렌즈, 거울, 프리즘 등을 결합하여 구성된다. 그리고 영상 센서에서는 물질로부터 반사된 고유의 스펙트럼을 화소 형태로 나타낸다.
LinkSquare는 저가의 소형 센서로 기존의 다른 분광 장치들과 달리 휴대가 용이하며, 스마트폰 어플리케이션과 함께 사용하면 별도로 네트워크에 연결하지 않고 측정한 데이터를 스마트폰을 통하여 확인할 수 있다는 특징을 갖고 있다. 이 장치의 파장 측정 범위는 400~1,000 nm이며, 가시광선부터 근적외선까지의 파장을 2초 내에 측정할 수 있다. 그리고 주요 제원은 표 1과 같다[17]. 본 논문에서는 이를 이용하여 측정한 스펙트럼 데이터의 분류 학습을 통하여 의약품 분류에 활용한다.
Company | Stration |
---|---|
Instrument name | LinkSquare |
Illumination(nm) | 400 to 1,000 |
Sensor | NIR spectroscopy |
Measuring time(seconds) | < 2 |
Size(mm) | 135.8×23.9×23.9 |
Weight(g) | 57 |
본 논문에서는 6종의 의약품을 대상으로 위에서 소개한 LinkSquare를 이용하여 스펙트럼 데이터를 추출하였다. 실험에서 사용한 의약품을 표 2에서 정리하였다.
E1(01)부터 J1(04)까지의 의약품들은 시중에 판매 중인 서로 다른 종류의 의약품으로 다양한 형태와 색상을 갖고 있는 샘플들이다. 그리고 VGR1(05)과 VGR2(06) 의약품은 각각 정품 및 위조 의약품으로서 본 논문에서 제안한 분류 기법이 정품과 위조품을 구분할 수 있음을 보이기 위해 선택하였다.
LinkSquare 분광기를 사용하여 각 샘플마다 가시광선 및 근적외선의 스펙트럼을 측정하였다. 그림 2에서는 각 샘플에 대한 스펙트럼 데이터의 예시를 나타내었다. 전반적으로 E1(01)부터 J1(04)까지의 스펙트럼 형태에 상당한 차이를 보이며, 반면에 VGR1(05)과 VGR2(06)는 매우 유사함을 볼 수 있다. 실제 상황에서는 주위 환경에 따라 잡음이 더해지므로 측정 데이터는 적지 않은 편차를 보이게 된다.

SVM은 대표적인 기계 학습 분류 방법 중 하나로서, 다차원 공간상에서 서로 다른 종류의 클래스를 구분하는 분류 기준 즉 초평면(hyper plane)을 결정하는 과정에 해당한다. SVM의 기본 개념을 그림 3에서 나타내었다. 그림에서와 같이 검은 동그라미와 흰 동그라미로 표시된 두 개의 클래스가 존재할 때, SVM은 두 개의 동그라미로 표시된 각 클래스의 대표 벡터(support vector)를 구하고, 그 벡터들 간의 거리(margin)를 최대로 만드는 초평면을 구하는 방법이다[18]. 이를 수식으로 표현하면, W·x+b= 0을 만족하는 점 x를 구하는 과정에 해당한다. 이 때, W는 초평면의 법선이고, |W|는 W의 유클리디안 거리, −b/|W|는 원본으로부터의 수직 거리를 나타낸다.
SVM을 학습시킨다는 의미는 미리 어느 클래스에 속하는 지 정보를 알고 있는 샘플을 입력하여 최적의 분류 초평면을 구한다는 것이다. 일단 초평면이 결정되면, 임의의 샘플에 대해 어느 클래스에 속하는 지 구분하는 작업이 가능하다.
SVM에서는 분류하고자 하는 데이터의 차원이나 복잡성에 따라서 선형적인 방법만으로는 한계가 있는 경우가 있다. 이러한 경우를 보완하기 위해 쌍곡선 탄젠트 커널(hyperbolic tangent kernel), 세제곱 다항 커널(cubic polynomial kernel), 방사 기저 함수 커널(RBF: Radial Basis Functions Kernel) 등 다양한 커널을 이용하여 비선형적 방법으로 분류 초평면을 구하기도 한다[19].
Ⅲ. 실험 결과
본 논문에서는 Mathwork Matlab 2016을 통해 제안한 방법을 구현하였으며, Intel Core i5 3.40 GHz CPU, 8 GB RAM의 PC 환경에서 실험하였다.
의약품 분류를 위하여 샘플들을 훈련시키고, 알고리즘을 검증하기 위해서 앞에서 설명한 총 6종의 의약품을 대상으로 학습 및 성능 집합을 구성하였다. 표 3에서 보인 바와 같이 각 종류 별로 2,400개의 스펙트럼 데이터를 측정하여 이 가운데 2,000개를 훈련 과정에 사용하였고, 나머지 400개를 성능 검증의 목적으로 사용하였다.
Symbol | E1 | H1 | H2 | J1 | VGR1 | VGR2 | Total |
---|---|---|---|---|---|---|---|
Training data | 2,000 | 2,000 | 2,000 | 2,000 | 2,000 | 2,000 | 12,000 |
Test data | 400 | 400 | 400 | 400 | 400 | 400 | 2,400 |
측정된 스펙트럼 데이터들은 측정 환경에 따라 조금씩 오차가 발생하거나, 잡음이 더해지게 된다. 이에 대한 영향을 줄이기 위해 본 논문에서는 전처리 과정으로서 스무딩(smoothing) 필터의 한 종류인 Savitzky-Golay 필터를 이용하였다[20]. 이 필터는 데이터를 부드럽게 하거나, 다른 데이터와 차별화를 주기 위해 사용하며, 신호 형태의 왜곡을 피하면서도 신호 대 잡음비를 상승시킬 수 있다는 장점이 있다.
그림 4에서는 실험에서 사용한 실험 샘플 가운데 E1(01)에 대해 전처리를 위해 Savitzky-Golay 필터를 적용한 결과를 예로 들어 나타내었다. 파장에 따라 다소 차이가 있지만 가시광선 및 근적외선 스펙트럼 데이터 모두 전처리를 거치고 나면 잡음의 영향이 감소되는 현상을 확인할 수 있으며, 이를 통해 안정적인 성능을 기대할 수 있다.

전처리 필터를 적용하면 파장에 따른 측정 편차를 줄임으로써 각 샘플의 스펙트럼 데이터를 정규화시키는 효과가 있다. 표 4에서는 전처리 필터를 통과하고 나면 파장에 따라 평균을 취한 표준 편차가 어떻게 변화하는 지를 나타내었다. 이로부터 의약품의 종류에 상관없이 표준편차가 줄어드는 것을 확인할 수 있다.
본 논문에서는 SVM 학습 과정을 위해 선형 커널을 사용하였으며, 분류 방법으로써 ‘One vs Rest’ 방법을 이용하였다. 분류 성능을 평가하기 위한 수치적 방법으로써 식 (1)과 같이 정확도를 계산하였다. 이 때 TP(True Positive) 는 의약품의 종류를 정확하게 판별한 경우를 의미한다.
근적외선과 가시광선 사용에 따른 성능 분석을 위하여 근적외선만 이용하여 얻은 데이터와 근적외선과 가시광선을 함께 사용하여 얻은 데이터로 각각 실험해 보았다. 분류를 위한 학습 및 검증 방법에는 6종의 의약품을 한 번에 분류하는 방법을 이용하였다.
표 5는 근적외선 스펙트럼만을 이용하여 얻은 데이터로 의약품을 분류하는 경우의 혼동행렬(confusion matrix) 결과로써 6종의 의약품에 대하여 평균적으로 98.5 %의 높은 정확도를 보여주는 것을 확인하였다. 하지만 정품과 위조 의약품인 VGR1(05)과 VGR2(06) 샘플에서 약간의 오검출이 발생한 것을 확인할 수 있다. 이 두 샘플에 대한 정확도를 따로 계산하면 95.5 %이다.
Symbol | E1 | H1 | H2 | J1 | VGR1 | VGR2 | Accuracy(%) |
---|---|---|---|---|---|---|---|
E1 | 400 | 0 | 0 | 0 | 0 | 0 | 100 |
H1 | 0 | 400 | 0 | 0 | 0 | 0 | 100 |
H2 | 0 | 0 | 400 | 0 | 0 | 0 | 100 |
J1 | 0 | 0 | 0 | 400 | 0 | 0 | 100 |
VGR1 | 0 | 0 | 0 | 0 | 377 | 23 | 94.3 |
VGR2 | 0 | 0 | 0 | 0 | 13 | 387 | 96.8 |
두 번째로, 표 6은 가시광선과 근적외선 스펙트럼을 모두 이용하여 얻은 데이터로 의약품을 분류하는 실험 결 과이다. 색상에서 차이를 보이는 E1(01)부터 J1(04)까지의 의약품에 대한 분류 성능은 근적외선만을 이용하는 경우와 마찬가지로 100 %의 정확도를 나타냈으며, VGR1 (05)과 VGR2(06)에 대한 분류 성능도 99.6 %로 약 4 % 가량 향상되었다.
Symbol | E1 | H1 | H2 | J1 | VGR1 | VGR2 | Accuracy(%) |
---|---|---|---|---|---|---|---|
E1 | 400 | 0 | 0 | 0 | 0 | 0 | 100 |
H1 | 0 | 400 | 0 | 0 | 0 | 0 | 100 |
H2 | 0 | 0 | 400 | 0 | 0 | 0 | 100 |
J1 | 0 | 0 | 0 | 400 | 0 | 0 | 100 |
VGR1 | 0 | 0 | 0 | 0 | 397 | 3 | 99.3 |
VGR2 | 0 | 0 | 0 | 0 | 0 | 400 | 100 |
앞서 보인 그림 2와 그림 3에서 확인할 수 있듯이, VGR1 (05)과 VGR2(06) 샘플은 각각 정품과 위조 의약품이기 때문에 나머지 4종의 의약품과는 달리 가시광선과 근적외선 스펙트럼 모두 비슷한 경향을 보인다. 본 논문에서는 정품과 위조 의약품 분류의 정확성을 높이기 위하여 2단계 SVM 분류 방법을 제안하였다.
1단계에서는 의약품 종류에 따라 5가지의 클래스로 분류한다. 즉, 그림 5와 같이 스펙트럼 데이터의 특성일 유사한 정품과 위조 의약품을 하나의 클래스(VGR(05): VGR1+ VGR2)로 간주하여 학습 및 분류과정을 수행한다. 임의의 의약품이 E1(01)에서 J1(04)까지 사이의 클래스로 분류되었다면 더 이상 진행하지 않고, 5번째 VGR 클래스로 분류되는 경우에만 두 번째 분류를 수행한다. 2단계에서는 정품 및 위조 의약품만을 분류 대상으로 하기 때문에 SVM 분류기의 성능 향상을 기대할 수 있다.
본 논문에서 제안한 2단계 분류 방법의 성능을 살펴보기 위해 가시광선을 제외하고 근적외선 스펙트럼 데이터만을 사용하여 실험을 수행하였다. 표 7에서 실험 결과로서 얻은 단계별 성능을 나타내었다. 실험에서는 가시광선 데이터를 사용하지 않으면서도 VGR1과 VGR2에 대해 99.0 %의 정확도를 나타내었다. 따라서 제안하는 2단계 분류 방법이 1단계 분류 방법보다 정품 및 위조 의약품을 더 정확하게 분류할 수 있음을 확인할 수 있다. 제안하는 2단계 분류 방법은 계산 효율 측면에서도 다소 유리하다. 직접적으로는 가시광선 데이터를 사용하지 않으므로 인 해 얻는 효과가 있다. 뿐만 아니라 SVM에서는 클래스 및 대표 벡터의 개수 그리고 사용 커널 등에 따라 분류기의 복잡도가 달라지는데, 일반적으로 클래스의 숫자가 줄어들면 대표 벡터의 수도 줄어들어 분류기가 더 단순해진다. 본 논문에서와 같이 ‘One vs Rest’ 비교 방법을 채택하는 경우에는 각 클래스에 대하여 개별적인 분류기를 사용하므로, 클래스의 수를 N개라고 할 때 총 분류 횟수도 마찬가지로 N이 된다. 따라서 단계를 구분하지 않고 6개의 클래스를 한 번에 분류하는 방법의 경우에는 총 6회의 비교 및 분류 과정을 필요로 한다. 반면에 제안하는 2단계 분류 방법의 경우에는 일단 5개의 클래스를 먼저 분류한 다음에, 특정 경우에만 추가로 2개 클래스로 분류하기 때문에, 1단계에서는 총 5회 그리고 특정 경우에만 수행하는 2단계에서 1회의 분류만이 필요하다. 따라서 본 논문에서 세안하는 바와 같은 단계별 접근방법이 분류 성능 뿐만 아니라, 처리 속도 측면에서도 장점을 가지고 있다.
Symbol | E1 | H1 | H2 | J1 | VGR1 | Accuracy(%) |
---|---|---|---|---|---|---|
E1 | 400 | 0 | 0 | 0 | 0 | 100 |
H1 | 0 | 400 | 0 | 0 | 0 | 100 |
H2 | 0 | 0 | 400 | 0 | 0 | 100 |
J1 | 0 | 0 | 0 | 400 | 0 | 100 |
VGR | 0 | 0 | 0 | 0 | 800 | 100 |
Symbol | VGR1 | VGR2 | Accuracy(%) |
---|---|---|---|
VGR1 | 399 | 1 | 99.8 |
VGR2 | 7 | 393 | 98.3 |
또한 제안하는 2단계 분류 방법은 정품 및 위조 의약품의 분류 목적 이외에도 활용 가능하다. 예를 들어 분류 대상 의약품의 종류가 늘어나고, 이에 따라 유사한 색상의 의약품도 늘어나는 경우에, 1단계로서 가시광선 데이터를 이용하여 색상을 기준으로 분류하고, 2단계로 근적외선 데이터를 이용하여 성분을 기준으로 분류하는 접근 방법을 고려할 수 있다.
Ⅳ. 결 론
위조 의약품의 종류와 개수는 해마다 증가하고, 유사한 색상과 형태의 의약품이 다수 존재하는 상황에서, 정확한 의약품을 올바르게 복용하기 위해서는 자동적으로 의약품의 종류를 분류하고, 진위 여부를 판별하는 기술이 필요하다. 이에 본 논문에서는 근적외선/가시광선을 활용한 휴대형 분광기를 이용하여 의약품을 분류하는 방법을 제안하였다. 근적외선/가시광선 분광기를 이용하여 가시광선과 근적외선의 스펙트럼 데이터를 추출하고, 추출한 데이터를 SVM 기법을 이용하여 학습한 뒤 최종적으로 의약품을 분류하였다. 6종 의약품에 대한 모의실험 결과를 통해, 근적외선만을 이용하면 98.5 %, 가시광선까지 함께 이용하면 99.9 %의 정확도를 얻었다. 또한 근적외선만을 이용하는 경우를 대상으로 2단계 분류 방법을 제안하여 정품과 위조 의약품에 대한 분류 정확도와 처리속도를 개선하였다.
향후 연구과제로 실험에 사용한 6종의 의약품 외에 더 많은 종류의 의약품을 분류할 수 있는 방법을 개발하고, 다양한 기계학습 기법으로 실험을 하여 정확도와 처리 속도를 개선할 수 있도록 연구할 예정이다.