1. 서론
인공지능 기술의 발전은 다양한 산업 분야에 혁명적인 변화를 가져오고 있으며[1] 인간의 노동을 대체하고 있다. 자재 품질 검사[2] 또는 드론을 이용한 송전 선로 검사[3] 등 딥러닝을 통해 자동화가 이루어지고 있다. 이는 철도 산업도 예외는 아니며 기존에는 인간의 노동력이 주로 지배적이던 철도 관련 작업에도 인공지능의 도입이 기대되고 있다. 그 예로 선로의 점검을 위한 딥러닝 기반의 자동 레일 탐지 시스템[4]과 같은 연구를 발견할 수 있다. 이러한 영향은 업무량의 절감과 그에 따른 비용 절감으로 이어진다. 그러나 선로 점검은 레일만이 아닌 선로 체결 장치와 침목 같은 다른 선로 구조물의 점검을 포함하고 있다. 특히 선로 체결 장치는 철도 시스템의 중요한 부분[5] 중 하나로, 결함이 발생할 경우 심각한 안전 문제를 야기할 수 있기에 결함 검출을 위한 인공지능이 필요하다. 이를 학습시키기 위해서는 지도 학습 방식은 데이터에 대한 레이블을 부여해야 하는데 이 과정은 많은 비용과 시간이 소요되는 작업이다.
이를 해결하기 위해 준지도 학습(semi-supervised learning)을 이용하여 일련의 문제를 해결하고자 한다. 준지도 학습은 데이터에 레이블을 부여하기 위한 인간의 개입을 최소화하고 기존의 레이블된 적은 데이터를 활용함으로써 레이블링에 사용 되는 인적 비용을 절감할 수 있는 방법 중 하나다. 일반적으로 적은 데이터로 학습을 한 모델의 신뢰도는 낮을 수 있으나, 선로 데이터 특성상 수집된 데이터에 결함이 있을 경우 뚜렷한 특징을 가지고 있어 적은 데이터로도 학습이 가능하다.
본 논문에서는 준지도 학습과 전이 학습을 이용하여 체결 장치의 결함 확인 작업을 자동화 및 분류 작업에 대한 시간 및 비용을 절감하는 방안을 제안하였다. 또한, 적절한 수준의 성능을 내기 위해서는 어느 정도의 초기 레이블이 필요한지에 대해서도 확인 및 비교하였다.
- 5%의 레이블을 이용하여 92%의 정확도를 가진다.
- 레이블링 비용과 하드웨어 요구 성능이 낮다.
2. 관련 연구
2.1 합성곱 신경망
합성곱 신경망(convolution neural network)은 동물이 사물을 인지할 때 시각 피질의 모든 뉴런이 한 물체를 인식하는 것이 아닌 여러 수용 영역으로 나누어 인식 하는 과정에서 영감을 얻어 만든 알고리즘[6]으로 다른 신경망들 보다 이미지의 특성을 파악하고 학습하는데 우수한 성능을 보인다.
합성곱 신경망의 구조는 그림 1에서 볼 수 있듯이 컨벌루션 계층(convolution layer), 풀링 계층(pooling layer), 완전 연결 계층(fully-connected layer)으로 구성되어 있다.[7]
(그림 1) CNN의 구조[8]
(Figure 1) Structure of CNN[8]
컨벌루션 계층에 이미지 데이터를 입력하면 커널 혹은 필터라 불리는 작은 행렬로 입력 데이터 합성곱 연산을 수행하여 이미지의 특징 혹은 경계 등에 대한 특성맵을 얻을 수 있다.
풀링 계층은 이렇게 얻은 특성맵을 압축하여 과적합을 방지함과 동시에 가장 필요한 특징 정보만을 남겨두는 식으로 정확도를 올리는데 도움[8]이 된다. 하나 혹은 하나 이상의 컨벌루션&풀링 블록이 지나고 나면 얻은 최종 특성맵을 1차원으로 나열한 이후 이를 완전 연결 계층과 내적하여 최종적인 출력을 얻는다.
2.2 ResNet
(그림 2) 잔차를 이용한 학습
(Figure 2) Training Using Residual[9]
본 논문에서 채택한 신경망 구조는 ResNet으로 2015년 ILSVRC(이미지인식 경진 대회)에서 우승한 네트워크 모델[9]로 Kaiming He와 그의 팀에 의해 개발되었다. 해당 모델은 층의 개수를 늘리면 늘릴수록 발생하는 기울기 소실 혹은 폭주로 인해서 성능이 떨어지는 것과 층이 깊어질수록 생기는 성능의 하락을 잔차(Residual)이라는 개념을 도입하여 해결하려고 시도한 모델이다.
컨벌루션 블록에 들어오는 입력값을 복사해둔 후 컨벌루션 및 배치 정규화를 거친 후 비선형 활성 함수에 입력하기 전에 블록 연산을 거치지 않은 입력값을 더해주며 블록 연산으로 인해 차원의 크기가 맞지 않는 경우 downsample을 통해 블록 연산 후의 차원에 맞춘다.
이러한 잔차 학습을 이용하면 역전파를 수행하게 되어도 기울기가 최소한 1이 남기 때문에 기울기가 소실되지 않으며 입력값을 그대로 활용하는 방식을 통해 학습할 파라미터의 양 자체도 줄어 신경망의 깊이가 깊어져도 우수한 성능을 보인다.[10]
2.3 전이 학습
신경망을 이용하기 위해서는 충분한 양의 데이터가 필요하다. 그러나 현실적인 문제나 비용적인 측면의 문제로 충분히 학습이 이루어질 정도로 데이터를 확보하기란 어렵다[11]. 그리고 데이터를 많이 확보했다 하여도 데이터의 편향적인 특징으로 인해 새로운 데이터에 대한 성능이 떨어지거나 메모리가 부족하여 학습 자체를 못할 수도 있다.
이러한 문제들을 극복하고자 사전에 충분한 데이터로 학습을 마친 모델의 가중치를 그대로 이용하되 사용자의 문제에 맞게 출력층만을 변경하여 사용하는 전이 학습이라는 개념이 도입되었다.[12]
본 논문에서는 위에 언급한 ResNet50을 이용할 것이며 해당 모델의 합성곱 계층을 그대로 사용하여 학습에 사용되는 시간을 단축할 예정이다.
(그림 3) 전이 학습의 진행 구조
(Figure 3) Progress Structure of Transfer Learning
2.4 지도 학습 기반 선로 체결 장치 결함 탐지
대부분의 선로 체결 장치를 위한 분류기를 학습할 때 지도 학습 방식을 채택한다[13,14]. 해당 방식은 데이터에 지정되어 있는 레이블을 통해 각 레이블 별로 갖는 특징과 패턴을 학습한다. 학습한 내용을 토대로 입력한 데이터가 갖는 패턴이 어느 특정한 레이블의 패턴과 유사하다면 이를 기반으로 해당 데이터의 레이블을 예측한다. 데이터의 양에 따라 성능 변동의 폭이 크며, 주로 수집한 데이터의 70% 이상을 훈련용 데이터로 사용한다.
수집한 데이터의 레이블 간의 비율이 불균형할 경우 상대적으로 적게 학습한 데이터에 대해서는 부정확한 예측을 할 확률이 높다. 결함/비결함을 탐지하는 이진 분류 문제의 경우 주로 비결함 데이터가 많으며, 이러한 불균형은 데이터 증강[13,14,15]과 같은 가상의 데이터를 만들어 해결할 수 있다.
또한 객체 감지 기술[14,15,16]을 함께 사용하여 데이터의 ROI(Region of Interest)에 중점을 두어 학습하여 성능을 올릴 수 있다. 이 기술을 위해서는 입력 데이터가 비슷한 조건 하에 수집되어야 하며 선로 체결 장치 데이터의 경우 일정한 기준 하에 전처리를 하여 이 조건을 만족시킨다.
3. 데이터 분류 및 모델 구조
철도 공사에서 제공받은 데이터 중 비결함 데이터는 2종류의 체결 장치가 존재 하였으며, 이와 달리 결함 데이터는 한 종류의 체결 장치만 사용 되었고 이는 그림 4에서 확인 가능하다.
(그림 4) 선로 체결 장치의 종류
(Figure 4) Type of Rail Fastener
선로 체결 장치에서 결함의 비율은 약 3600개의 데이터 중에서 약 30% 정도로 불균형한 데이터의 비율을 가지게 된다. 현실에서도 결함보다는 비결함의 경우가 더 많기에 훈련에 사용할 데이터 역시 이 비율을 유지하기로 하였다.
또한 클래스와 관계없이 나뭇잎, 페인트 혹은 체결 장치가 일부분만 존재하는 데이터가 있기에 결함 데이터를 예측할 때 양 쪽 체결 장치를 모두 파악하기 어렵다. 그렇기에 체결 장치가 하나라도 없을 경우 결함으로 분류하는 이진 분류 문제로 설정하였다.
(그림 5) 이상값 데이터
(Figure 5) Abnormal Data
데이터를 분류하기 전 이미지의 크기가 다른 경우가 존재하며 대부분 이미지의 크기가 (250,600)이었기에 학습에 많은 시간이 소요되었다. 그렇기에 성능을 크게 낮추지 않는 수준으로 가로의 픽셀을 255로 downsampling하였으며, 전이 학습을 이용하기 위해서 원본은 흑백이지만 채널의 크기가 3차원인 이미지로 확장하였다.
(그림 6) 전체 데이터 기본 분류
(Figure 6) Default Classification of Total Data
학습에 사용할 데이터 600개를 전체 데이터에서 무작위로 추출하되 데이터의 결함 비율을 유지한 상태로 추출하며 앞으로 이 데이터를 TD라 한다. 훈련 중 조기 종료 및 학습률의 조정 기준에 사용될 데이터를 무작위로 300개를 전체 데이터에서 설정한다. 해당 데이터를 VD라 하며 이 역시 결함 비율은 전체 데이터와 같다. 600개의 τD를 이용하여 준지도 학습을 진행하기 전 초기 지도 학습에 사용될 데이터 크기의 영향을 파악하기 위하여 초기 데이터 크기를 기준으로 비교 분석할 예정이다.
즉, 분할된 모든 데이터의 결함 비율은 원본 데이터와 동일한 30% 유지한 상태이며, 초기 데이터의 크기가 다르더라도 결과적으로 준지도 학습에 사용되는 전체 데이터의 크기는 600개로 고정된다.
실험에 사용될 네트워크의 구조는 ResNet50을 사용하며 ImageNet으로 가중치를 선행 학습한 모델을 이용한다. 출력층을 제외한 나머지 층은 학습이 되지 않도록 하며, 실험에 사용될 데이터에 맞추어 이진 분류로 출력층을 변형하였다.
준지도 학습을 할 때 레이블이 없는 데이터를 훈련 데이터에 추가해야 하기에 일정한 알고리즘에 맞춰 데이터에 레이블을 부여하는 과정을 Pseudo Labeling[17]이라 한다. 레이블이 없는 데이터에 클래스 별 소속 확률을 기반으로 레이블을 부여할 예정이므로 출력층의 활성 함수는 Softmax로 설정해둔다. Softmax의 경우 클래스 별 확률을 나타내는 함수로 이를 이용하면 모델의 결과값은 결함 혹은 비결함일 확률 두 개의 값으로 구성되어 있고 두 확률의 합은 1이다. 그렇기에 둘 중 더 큰 확률을 기반으로 데이터에 예측한 레이블을 부여하였다.
최적화 알고리즘은 Adam을 이용하였으며 학습률은 오버 슈팅을 방지하기 위하여 0.001로 설정하였으며 손실 함수는 sparse_categorical_crossentropy를 채택하여 그림 7와 같은 모델을 구성하였다. 초기의 학습을 포함한 모든 학습마다 모델의 구조는 같으나 출력층의 가중치는 각 실험마다 무작위로 초기화 되도록 하였다.
(그림 7) 모델 구조
(Figure 7) Structure of Model
4. 실험 및 결과
상술하였듯이 초기 지도 학습에서 쓰이는 데이터와 크기를 각각 60, 90, 120, 150, 180개로 설정하였다. 각각 다른 크기의 초기 데이터를 LD라고 부르며 이는 τD의 데이터를 복사하여 동일한 데이터 내에서 설정된 크기에 맞게 무작위로 추출한다. 이를 통해 레이블의 양적인 측면에서의 모델의 성능에 끼치는 영향력을 파악할 것이다. LD를 빼고 남은 데이터는 레이블이 없다고 가정할 데이터인 UD라 하며 이는 Pseudo Labeling 과정을 통해 레이블을 부여한 후 정해진 크기만큼 매 사이클마다 LD에 추가할 것이다.
(그림 8) 2차 데이터 분류
(Figure 8) Second Data Classification
준지도 학습을 진행할 때 성능의 변화를 파악하기 위해 동일한 횟수의 준지도 학습 사이클을 진행하며, 매 사이클 마다 LD로 학습을 마친 모델을 이용하여 Test_Data에 대한 성능을 저장한다. Pseudo Labeling 하여 추가되는 데이터의 크기는 UD를 사이클의 횟수로 나눈 값을 저장한 step_size라고 하겠다.
사이클마다 모델은 동일한 구조를 가지지만 가중치는 무작위로 초기화 하여 재학습이 되지 않도록 하였다.
과적합을 예방하기 위하여 Tensorflow에서 제공하는 2개의 콜백 함수를 사용하였다. ReduceLROPlateau를 이용하여 학습 도중 validation_loss가 3번의 epoch동안 떨어지지 않을 경우 학습률에 1/10을 곱하도록 하였다. EarlyStopping 콜백 함수 역시 validation_loss를 기반으로 손실값이 5번의 epoch 동안 0.02 이상 작아지지 않는다면 학습을 종료하고 가장 좋은 성능을 기록한 epoch의 가중치를 저장하도록 설정하였다.
(그림 9) 사이클 별 수행 과정
(Figure 9) Process of Cycle
준지도 학습에서 Pseudo Labeling의 경우 다음과 같이 진행하였다. LD로 학습한 모델을 이용하여 UD를 예측한다. 이 예측값에서 결함일 확률이 가장 큰 데이터를 step_size의 30%만큼 그리고 비결함일 확률이 가장 큰 데이터를 step_size의 70%만큼 확률에 의거하여 레이블을 부여한 후 LD에 추가하며 해당 데이터를 UD에서 삭제한다. 위의 표 1에서 데이터의 크기는 사이클이 끝난 후의 크기이다. 초기 LD의 크기에 상관없이 준지도 학습 사이클이 끝난 이후에는 동일한 600개의 데이터를 기반으로 학습 및 Test_Data에 대한 예측을 하게 된다.
(표 1) 사이클 종료 후 데이터의 크기
(Table 1) Data size after end of cycle
초기 학습 데이터의 크기의 영향력을 파악하고 이에 대한 일반성을 얻기 위하여 동일한 조건 및 실험 방법을 이용하여 5번의 실험을 하였다. 실험의 평균과 표준편차에 대한 그래프를 그림 10에서 확인 가능하다.
(그림 10) 초기 데이터 크기의 따른 모델 별 정확도
(Figure 10) Performance of The Model According to The Size of Initial Labeled Data
초기 데이터의 크기가 가장 작은 모델의 결괏값인 파란 선은 모든 사이클에서 Test_Data에 대한 정확도 면에서 가장 큰 편차와 가장 낮은 평균을 가진다.
초기 데이터가 많으면 많을수록 편차가 작아지는 경향을 보이며 이는 실험적인 경험에 의해서도 비슷한 결과를 얻을 수 있다.
데이터의 크기가 90인 모델의 경우 준지도 학습이 3회 진행 됐을 때 편차가 상대적으로 큰 모습을 보인다. 이는 5개의 결과 중 하나의 결과가 준지도 학습 과정 중 훈련이 원활히 진행되지 않아 정확도가 갑작스럽게 하락한 것을 확인하였다. 그러나 이 데이터를 포함하여도 준지도 학습이 진행될수록 안정적으로 성능이 향상 하였다.
초기 데이터의 크기는 모델의 성능에 영향을 끼치고 있으며 가장 큰 차이를 보이는 두 경우 6%에 가까운 성능 차이를 가지기도 했다.
또한, 그림 10에서 관찰 할 수 있듯 초기 데이터의 크기가 다르더라도 일정 구간 내에서는 비슷한 초기 성능과 최종 성능을 얻게 된다.
전체 데이터 대비 5% 이하의 데이터에 레이블을 부여하여 최고 성능으로 92%를 기록하였으며, 전체 데이터에서 80%만큼의 레이블을 가지고 학습을 진행하였을 때의 성능은 97%를 기록하였다. 이 결과를 통해 매우 적은 크기의 데이터만을 가지고 일정 수준의 성능을 이끌어 낼 수 있으며, 초기 데이터의 크기에 따라 최종 성능에서 유의미한 차이를 관찰할 수 있었다.
5. 결론
본 논문에서는 선로 체결 장치의 결함을 준지도 학습과 전이 학습을 통해 학습한 모델을 이용하여 검출하였다. 준지도 학습 과정에서 매 사이클마다 학습을 마친 모델이 일정한 양의 데이터를 예측한 확률에 의거하여 Pseudo Labeling 후 이를 다시 학습 데이터에 추가하는 과정을 통해 점진적인 성능의 향상을 얻을 수 있었다.
지도 학습 훈련 데이터 크기의 10%보다 적은 훈련 데이터를 초기에 이용하여 최고 성능이 5%가량 차이나는 수준까지 학습이 되었음을 확인할 수 있었다.
이번 실험에서는 초기 데이터 크기의 영향력을 파악하였으나 데이터를 수집할 때 비용 절감 혹은 모델의 학습 속도 향상을 위해 어느 지점에서 초기 데이터의 크기에 따라 성능에 큰 차이를 보이는지 파악해야 할 필요가 있다. 또한, 초기 데이터의 크기가 다르더라도 해당 실험 환경에서는 초기 성능 대비 3~4% 정도의 성능 향상을 보이는 것을 관찰할 수 있었다. 이는 Contrastive Learning[11,18] 혹은 Active Learning[19]과 같은 기술을 추가적인 성능 향상을 위해 사용할 수 있는지 연구할 필요가 있다. 만약 개선을 통해 모델의 예측 성능이 올라간다면 선로 데이터만이 아닌 다양한 데이터를 이용한 학습을 통해 준지도 학습을 한 모델이 여타 전이 학습에 쓰이는 모델과 같이 확장성을 가지는지 확인이 필요하다.
Acknowledgement
이 논문은 2023년도 정부(미래창조과학부)의 재원으로 한국연구재단의 지원을 받아 수행된 기초연구사업임(NRF-2021R1F1A1049467).
References
- Hyung-Woo Kim, Min-Ho Kim and Yang-Won Lee, "Research Trend of the Remote Sensing Image Analysis Using Deep Learning," Korean Journal of Remote Sensing, Vol. 38, No. 5, pp. 819-834, 2022. https://doi.org/10.7780/kjrs.2022.38.5.3.2
- Seong-Kyu Kim. Woo-Bin Choe, Jong-Se Lee, Won-Gok Lee, Geun-Oh Choi and You-Suk Bae, "Examination of Aggregate Quality Using Image Processing Based on Deep-Learning," KIPS Transactions on Software and Data Engineering, Vol. 11, No. 6, pp. 255-266, 2022. https://doi.org/10.3745/KTSDE.2022.11.6.255
- Seo-Hyeon Ryu, Joon-Young Park, Seok-Tae Kim, Tae-Won Kim, Byung-Sung Ko and Jung-Wook Woo, "Development of Deep Learning-based Automatic Camera Gimbal System for Drone Inspection of Transmission Lines," The Transactions of the Korean Institute of Electrical Engineers, Vol. 70, No. 1, pp. 121-129, 2021. https://doi.org/10.5370/KIEE.2021.70.1.121
- Jung-Hwan Kim, "Deeplearning based Railway Detection System: DERAS," Master's Dissertation, Korea University, 2021. http://dcollection.korea.ac.kr/common/orgView/000000251753
- Won-kyu Chae, Young Park, Sam-young Kwan and Jae-hyeong Lee, "Thermal Analysis for Improvement of Heat Dissipation Performance of the Rail Anchoring Failure Detection Module," Journal of the Korean Institute of Electrical and Electronic Material Engineers, Vol. 29, No. 2, pp. 125-130, 2016. https://doi.org/10.4313/jkem.2016.29.2.125
- A. Ghosh, A. Sufian, F. Sultana, A. Chakrabarti, and D. De, "Fundamental Concepts of Convolutional Neural Network," Recent Trends and Advances in Artificial Intelligence and Internet of Things, pp. 519-567, 2019. https://doi.org/10.1007/978-3-030-32644-9_36
- S. Bibalaev and Kang-Chul Kim, "Helmet and Mask Classification for Personnel Safety Using A Deep Learning," The Journal of The Korea Institute of Electronic Communication Sciences, Vol. 17, No. 3, pp. 473-482, 2022. https://doi.org/10.13067/JKIECS.2022.17.3.473
- F. Sultana, A. Sufian, and P. Dutta, "Advancements in Image Classification using Convolutional Neural Network," 2018 Fourth International Conference on Research in Computational Intelligence and Communication Networks (ICRCICN), pp.122-129, 2018. https://doi.org/10.1109/icrcicn.2018.8718718
- K. He, X. Zhang, S. Ren and J. Sun, "Deep Residual Learning for Image Recognition," 2016 IEEE Conference on Computer Vision and Pattern Recognition pp. 770-778, 2016. https://doi.org/10.1109/cvpr.2016.90
- R. Singh, N. Sharma, and R. Gupta, "Classification and Detection of Corn Leaf Disease using ResNet 18 Transfer Learning Model," 2023 8th International Conference on Communication and Electronics Systems (ICCES), pp. 1655-1661, 2023. https://doi.org/10.1109/icces57224.2023.10192642
- T. Chen, K. Simon, N. Mohammad and G. Hinton, "A Simple Framework for Contrastive Learning of Visual Representations," In International conference on machine learning, pp. 1597-1607, 2020. https://arxiv.org/abs/2002.05709
- Dong-Su Lee and Goo-Man Park, "Analysis of Transfer Learning Effect for Automatic Dog Breed Classification," Journal of Broadcast Engineering, Vol. 27, No. 1, pp. 133-145, 2022. https://doi.org/10.5909/JBE.2022.27.1.133
- P. Chandran, J. Asber, F. Thiery, J. Odelius and M. Rantatalo, "An investigation of railway fastener detection using image processing and augmented deep learning," Sustainability, Vol. 13, No. 21, 2021. https://doi.org/10.3390/su132112051
- D. Zheng, L. Li, S. Zheng, X. Chai, S. Zhao, Q. Tong, J. Wang, L. Guo, "A Defect Detection Method for Rail Surface and Fasteners Based on Deep Convolutional Neural Network," Computational Intelligence and Neuroscience, Vol. 2021, pp. 1-15, 2021. https://doi.org/10.1155/2021/2565500
- T. Xiao and T. Xu, "Track Fastener Detection Based on Improved YOLOv4-Tiny Network," IEEE 5th International Conference on Electronics Technology (ICET), pp. 1112-1116, 2022. https://doi.org/10.1109/ICET55676.2022.9824503.
- C. C. Hsieh, T. Y. Hsu and W. H. Huang, "An Online Rail Track Fastener Classification System Based on YOLO Models," Sensors, Vol. 22, No. 24, pp. 9970, 2022. https://doi.org/10.3390/s22249970
- F. Zhuang, Z. Qi, K. Duan, D. Xi, Y. Zhu, H. Zhu, H. Xiong and Q. He, "A Comprehensive Survey on Transfer Learning," Proceedings of the IEEE 109, Vol. 109, pp. 43-76, 2019. https://arxiv.org/abs/1911.02685 https://doi.org/10.1109/JPROC.2020.3004555
- J. B. Grill, F. Strub, F. Altche, C. Tallec, P. Richemond, E. Buchatskaya, M. Valko, "Bootstrap your own latent-a new approach to self-supervised learning," Advances in neural information processing systems, Vol. 33, pp. 21271-21284, 2020. https://arxiv.org/abs/2006.07733
- Dong-Geun Yoo and In-So Kweon, "Learning Loss for Active Learning," 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition, pp. 93-102, 2019. https://doi.org/10.1109/cvpr.2019.00018