Korean Institute of Information Technology

Home

The Journal of Korean Institute of Information Technology - Vol. 22 , No. 5

[ Article ]
The Journal of Korean Institute of Information Technology - Vol. 22, No. 5, pp. 131-137
Abbreviation: Journal of KIIT
ISSN: 1598-8619 (Print) 2093-7571 (Online)
Print publication date 31 May 2024
Received 12 Mar 2024 Revised 24 Apr 2024 Accepted 27 Apr 2024
DOI: https://doi.org/10.14801/jkiit.2024.22.5.131

시계열 불확실성 분포를 활용한 실시간 화재 추론 연구
김종식* ; 강대성**
*동아대학교 전자공학과 박사수료
**동아대학교 전자공학과 교수(교신저자)

Real-time Fire Inference Research using Time Series Uncertainty Distribution
Jong-Sik Kim* ; Dae-Seong Kang**
Correspondence to : Dae-Seong Kang Dept. of Dong-A University,37 NaKdong-Daero 550, beon-gil saha-gu, Busan, Korea Tel.: +82-51-200-7710, Email: dskang@dau.ac.kr

Funding Information ▼

초록

현재의 BNN(Bayesian neural network) 방식은 전통적인 DNN(Deep neural network) 방식에 비해 실시간 추론에 바로 적용하기 어려운 이유는 데이터의 분포를 찾는 과정에서 시간이 많이 소요되기 때문이다. 이를 개선하기 위하여 본 논문에서는 BNN에 실시간 추론을 위한 시계열 분석 기법을 적용하여 화재 동영상에서 프레임 단위로 데이터의 분포를 실시간 추론하는 방식을 도입하였다. BNN-시계열 방식은 화재의 확산 특성인 시간적 일관성을 이용하여 동영상 프레임 단위로 시계열 불확실성 분포를 예측하고 불확실성이 높은 특정 BB(Bounding box)에 대해서만 BB를 보류하거나 변경하는 방식으로 추론의 정확도를 개선하였다. 그 결과 기존 DNN 추론 방식에 비해 BNN-시계열 추론 방식은 시간상으로는 동일하나 인식률에서는 기존 추론 검출 성능 대비 약 7% 개선된 결과를 얻었다.

Abstract

The reason why the current Bayesian Neural Network(BNN) method is difficult to apply directly to real-time reasoning compared to the traditional Deep Neural Network(DNN) method is that the process of finding the distribution of data takes a lot of time. To improve this, this paper introduces a method of real-time inference of the distribution of data in frame units from fire videos by applying a time series analysis technique for real-time inference to BNN. The BNN-time series method predicts the time series uncertainty distribution in units of video frames using temporal consistency, which is the diffusion characteristic of fire. The accuracy of inference was improved by withholding or changing BB only for specific Bounding Boxes(BB) with high uncertainty. As a result, compared to the existing DNN inference method, the BNN-time series inference method is the same in time, but the recognition rate improves by about 7% compared to the existing inference detection performance.


Keywords: bayesian neural network, deep neural network, time series, mc-dropout

Ⅰ. 서 론

현재 컴퓨터 비전 분야에서 BNN(Bayesian Neural Network)[1]이 예측 불확실성까지 추론할 수 있다는 장점은 모두 알고 있지만, 실시간 추론으로 활용하지 못하는 근본적인 이유는 소요 시간 때문이다. 추론 과정에서 몬테카를로 드롭아웃(Monte Carlo dropout)을 샘플 횟수만큼 추론을 반복해야 하므로 추론 속도가 상당히 느리다는 단점이 있기 때문이다. 특히 실시간으로 영상 분석이 이뤄져야 하는 화재의 경우에 이는 매우 큰 문제가 아닐 수 없다. 이렇게 느린 추론 속도를 개선하기 위하여 K. Brach는 자신의 논문[2]에서 순간 전파(Moment propagation)를 사용하여 몬테카를로 드롭아웃을 단일 샷 근사치로 시간에 따라 확률 분포의 모멘트를 전파하는 방법으로 이를 개선하려고 했다.

N. Park이 발표한 논문[3]에서는 사전에 기억된 예측 값을 사용해 추론 속도를 향상하는 벡터 양자화 베이지안 딥러닝을 제안하였다. 이 방식은 기억된 예측이 얼마만큼의 중요도로 결과에 반영될지는 관측된 데이터와 기억된 데이터 사이의 유사도를 기반으로 결정하는 방식이다. 두 방법 모두 과거를 기준으로 현재의 불확실성 예측에 초점을 맞추었다.

본 논문에서는 동영상에서 실시간 화재 추론 예측(확률) 결과 값을 기준으로 정확도가 80% 이하일 경우에는 생성된 라벨링 판단을 잠시 보류한다. 그리고 화재의 불확실성(분포)을 연속 근사형 방식으로 동일한 객체를 프레임 단위로 추적하면서 시계열적으로 5~10회 재판단하여 설정 값보다 불확실성이 높으면 화재 라벨링 판단을 보류하거나 재 라벨링 하는 방식으로 화재 오인식을 개선하기 위한 새로운 방법을 제안한다. 그림 1은 BNN-시계열을 활용한 실시간 추론 기본 개념도를 그림으로 표시하였다.


Fig. 1. 
Basic concept diagram of real-time inference using BNN-time series


Ⅱ. 관련 이론
2.1 시계열 데이터

시계열 데이터는 Time series data[4]라고 한다. 글자 그대로 시간의 순서대로 일정한 주기로 측정, 저장된 데이터들을 시계열 데이터라 한다. 시계열 데이터를 가장 많이 활용되는 분야는 데이터를 기반으로 하는 예측 분야이다. 시간의 순서에 따라 저장된 데이터는 과거의 데이터에 영향을 많이 받을 수밖에 없다. 이러한 데이터 변화 패턴을 분석하여 앞으로 어떻게 변할지를 예측하는 것이다. 입력되는 데이터 순서에 준해 약간씩 어긋나는 데이터를 찾을 수 있고 그 어긋난 데이터의 범위가 서서히 커지는 것을 이용하여 언제쯤이면 장애 기준 값에 도달하는지를 예측하여 장애를 검출할 수도 있다. 즉 시계열 데이터는 시간에 따른 변화를 보고 패턴을 분석하여 이후에 어떤 데이터를 얻을 것인지 예측하는 게 가장 중요한 목적이다[5]. 그래서 단순히 과거의 데이터를 이용한 패턴 분석만으로는 다양한 데이터에 대한 예측을 신뢰하기 어렵다. 또한 데이터에서 어떤 값과 어떤 변수를 중심으로 분석하는지가 많은 성능 변화를 보이기 때문이다.

2.2 몬테카를로 드롭아웃(Monte Carlo dropout)

전통적인 딥러닝 모델은 점 예측(Point estimate)을 제공하는 경우가 많지만, 이러한 예측과 관련된 불확실성을 측정하기는 매우 어렵다. 불확실성을 추정하는 가장 보편적 방법의 하나는 BNN으로 예측 분포를 추론하는 것이다. 몬테카를로 드롭아웃은 베이지 규칙의 한 방법이다. 불확실성(Uncertainty)을 구하는 여러 방법 중에서 가장 많이 사용되는 방법이 몬테카를로 방법이다. 몬테카를로 드롭아웃에서는 필요에 따라 각 드롭아웃 층을 활성화한 후 모델을 학습한다. 하지만 기존의 드롭아웃과 달리, 추론 시에도 드롭아웃을 활성화해, 뉴럴 네트워크의 가중치를 샘플링 하는 방식이다. 이를 통해 여러 번의 출력 값을 구한다. 이렇게 나온 출력 값들의 예측 분포를 사후확률에서 샘플링 된 분포의 결과를 보고, 불확실성의 분포를 계산할 수 있다[6].

2.3 VQ(Vector quantized) - BNN

BNN은 추론 속도가 느리다는 단점 때문에 실용적으로 쓰이기에 많은 제약이 있다. 이를 해결하기 위해 사전에 기억된 예측을 사용해 추론 속도를 향상하는 벡터 양자화 베이지안 딥러닝(VQ-BNN, Vector Quantized Bayesian Neural Network)을 제안하였다[2]. VQ-BNN은 BNN과 달리 관측 데이터에 대해 한 번만 예측을 추론하는 대신, 사전에 기억된 예측을 사용해 추론 속도가 느리다는 단점을 보완하는 방식이다. 이때, 기억된 예측이 얼마만큼의 중요도(Importance)로 결과에 반영될지는 관측(Observed)된 데이터와 기억된(Memorized) 데이터 사이의 유사도를 기반으로 결정된다.

VQ-BNN은 이 과정에서 뉴럴넷을 사용해 예측을 단 한 번만 추론하기 때문에, 효율적으로 결과를 계산할 수 있다. VQ-BNN 추론을 실제로 적용하기 위해서는 어떤 프로토타입을 기억할 것인지, 중요도를 어떻게 정할 것인지 결정해야 한다[7].


Ⅲ. 제안하는 방법
3.1 시계열 불확실성(uncertainty) 판단

실시간 동영상에서 BNN(몬테카를로 드롭아웃)을 활용하기 위해서는 앞서 VQ-BNN 논문처럼 활용해도 되나 비선형성이나 복잡한 종속성이 있는 동영상 모델에서는 사용하기 어려운 단점이 있다[8][9]. 특히 화재와 같이 초 단위로 모양과 형태가 변하는 경우에는 기존 방식을 적용하기에는 어려움이 있어 보인다. 실시간으로 화재 객체를 따라가지 못하거나 다른 객체를 추적하는 오류 가능성이 높아 보인다.

그래서 본 논문에서는 화재의 특징 중 불의 확산 속도와 바람에 따른 움직임 특성을 고려하여 CCTV 동영상에서 실시간 화재 추론이 가능한 방법을 제안한다. 그림 2에는 화재 발생 시 화재의 변화를 2프레임 단위로 잘라 그림으로 표시하였다. 1프레임은 화재의 변화가 적어 2~3프레임 단위로 화재 변화가 많은 부분만을 뽑아 예시 사진으로 활용하였다. 시계열에서 불확실성 분포를 추출하는 방법은 간단하다. 화재를 추론한 예측 결과 정확도가 81% 이상이면 바로 라벨링 처리하며, 화재 예측 결과 정확도가 81% 이하이면, 5프레임의 연속 화재의 불확실성을 추론하고 예측 결과 불확실성이 0.4 이상일 경우에는 생성된 라벨링 판단을 잠시 보류하고 다음 5프레임에서는 불확실성 분포를 추출하여 불확실성이 0.4 이하일 경우에만 라벨링 하는 방식이다.


Fig. 2. 
Real-time fire inference method using time series uncertainty distribution

불확실성 분포를 확인하는 중에도 추론 정확도가 2프레임의 연속 81% 이상이면 확률분포로 라벨링을 진행한다. 다만 계속 프레임별 81% 이하이면 불확실성 분포를 1차에서 먼저 확인하고 불확실성 분포가 0.4 이상이면 2차에 걸쳐 확인 후 최종 라벨링 유무를 결정한다. 표 1에는 시계열에서 불확실성 판단 조건을 표로 나타내었다.

Table 1. 
Uncertainty judgment condition in time series
CNN inference acc 1st
I1∼ I5 fps
2nd
I6∼ I10 fps
Labeling
81% ↑ - - BB
81% ↓ BNN-TS(0.4↓) - BB
BNN-TS(0.4↑) BNN-TS(0.6↓) BB
BNN-TS: BNN-time series, ACC: Accuracy

3.2 연속 근사형 IOU

시계열에서 화재 BB 표시는 현재 인식된 화재의 정확도에 따라 BB 표시를 즉시 할 수도 있고 몬테카를로 드롭아웃의 시계열 분포가 확인될 때까지 시간적 최대 0.33초까지 BB 표시를 보류하는 경우가 있을 수 있다. 그리고 이때 시계열에서 한 번에 여러 개의 화재 BB를 추적하여 표시할 경우에는 근접 BB에 대해 표시를 못 하거나 2개의 화재가 통합되어 하나로 표시될 수도 있기 때문이다[10].

본 논문에서는 연속 근사형 IOU 방식을 활용하여 몬테카를로 드롭아웃의 시계열 분포가 계산이 완료될 때까지 화재의 정확도와 IOU를 계산하면서 동일한 화재를 추적하는 방식이다.


Ⅳ. 실험 방법 및 결과

BNN에 시계열 불확실성 분포를 활용한 실시간 화재 추론 연구 실험은 CPU: AMD Ryzen 7 3700X 8-Core Processor 3.6 GHz, GPU: NVIDIA GeForce RTX 8000, RAM 32GB 컴퓨터 환경에서 실험하였다[10]. 이번 실험에 사용된 파일 정보는 사람이 손으로 라벨링 한 가중치(weight) 값에 BNN-시계열 추론 방식을 적용하여 비교 실험했다.

그리고 표 2에는 실험에 사용한 동영상을 소방본부에서 차량 화재 진압 목적으로 제작한 동영상을 다운받아 사용했다. 여러 동영상 중에서 이 동영상을 선택한 이유는 동영상이 5분으로 길고, 움직임이 빠르고, 화면이 다각도로 움직이고, 화재 오인식이 있어 시험 동영상으로 가장 적당하다 판단되어 채택하였다.

Table 2. 
Video information used in the experiment
File name Format Time Contents
Fire test1 mp4 5:27 Car fire suppression
image

4.1 실험 결과

추론을 위해 활용한 network는 CNN(Darknet-53)을 사용하였으며 화재 객체 검출은 Yolov4를 사용하였다. 표 3에는 fire test1.mp4 동영상을 사용하여 기존 CNN을 사용하였을 때 객체 검출 추론 속도와 BNN-시계열 방식을 사용하였을 때 객체 검출 추론 속도를 비교하였다.

Table 3. 
CNN and BNN-time series inference time comparison
Division CNN BNN-time series
Unit(min:sec) 5:27.00 5:28.00

표 4에는 전체 5분을 확인하기에는 검출 용량이 너무 커 1분대 시간만 측정하였다. 그리고 객체 분류(Classification) 시 사람 라벨링을 제외하고 BNN-시계열 불확실성을 분석하였다. 1차 1~5프레임에서 불확실성이 분포가 작을 경우(40% 이하)에는 참으로 판단하며, 그 이상이면 2차 6~10프레임의 불확실성을 한 번 더 판단하여 불확실성의 분포가 60% 이상이면 최종 거짓으로 판단하였다. 실험 결과에서 알 수 있듯이 BNN-시계열 방식의 불확실성이 높아 판단을 보류한 경우가 전체 7.1%. 정도이다. 그리고 객체 분류 중 spark는 시험 동영상에서 인지가 되지 않아 표시하지 않았다.

Table 4. 
Uncertainty confirmation results using BNN-time series
Division CNN
(Q’ty)
BNN-time series(Q’ty) Uncertainty
ratio(%)
true false
fire 906 868 38 4.19
smoke 566 499 67 11.84
Total 1,471 1,367 105 7.13
Q’ty: quantity

표 5에는 기존 CNN(Darknet-53) 방식에서 화재로 오인식한 부분을 BNN-시계열 방식을 사용할 경우 실시간 화재 동영상에서 최종 추론에 영향 미치는 정도를 실험하였다. 그 결과를 시간대별로 나누어 표시하였다. 대부분 화재 오인식은 BNN-시계열 방식으로 개선이 되나 한 부분은 여전히 개선되지 않고 있다. 추론 결과 값이 확률로 존재하는 CNN과는 달리 BNN-시계열은 확률이 분포로써 존재하므로 시계열 이미지마다 매번 결과가 다르게 나온다.

Table 5. 
Recognition rate confirmation results using BNN-time series
Time
(min:sec)
Label CNN
acc.
BNN-time series
(Uncertainty)
1st 2nd Result
1:27.52 fire 34% 0.45 0.75 None
1:31.01 fire 29% 0.45 0.80 None
1:31.10 fire 71% 0.55 0.66 None
1:31.42 fire 58% 0.45 0.75 None
1:31.51 fire 57% 0.66 0.67 None
1:31.81 fire 57% 0.55 0.66 None
1:31.83 fire 57% 0.47 0.80 None
2:23.02 fire 38% 0.55 0.66 None
2:23.83 fire 39% 0.45 0.75 None
2:25.41 fire 38% 0.47 0.65 None
2:26.35 fire 38% 0.53 0.69 None
2:26.81 fire 58% 0.47 0.81 None
2:27.68 fire 55% 0.55 0.66 None
2:28.06 fire 49% 0.49 0.75 None
2:49.72 fire 45% 0.39 - fire
3:06.30 fire 45% 0.58 0.66 None
3:09.88 fire 31% 0.60 0.86 None
3:18.38 fire 33% 0.48 0.81 None

그림 3에는 BNN-시계열 방식을 사용하여 시간대별로 기존 CNN 방식과 비교하여 화재 BB가 개선된 사항을 확대 이미지로 표시하였다. 1:27.52시간에서 기존 CNN 방식은 우측 노란색 방호시설을 화재로 오인식 하나 BNN-시계열 방식은 이 오인식이 개선되었음을 알 수 있다. 나머지 시간대에서도(1:31.01, 2:25.41) 역시 기존 CNN에서는 노란색 방호시설을 화재로 오인식 하나 BNN-시계열 방식은 이 오인식이 개선되었음을 알 수 있다. 하지만 2:49.72시간대에서는 여전히 오인식이 존재하며 개선이 되지 않았다.


Fig. 3. 
Improvements using BNN-time series compared to existing CNN


Ⅴ. 결 론

전통적인 DNN 방식은 엄청난 주목을 받고 있으며, 또한 좋은 결과를 보이고 있으나 모델의 불확실성을 포착하지 못한다는 단점이 있었다. 그래서 본 논문에서는 수평적 확률 분포 추론 방식 대신에 시계열 방식을 통한 시간적(수직적) 확률 분포를 추론하는 방식으로 이를 개선하였다. 그 결과 기존 DNN 추론 방식에 비해 BNN-시계열 추론 방식은 시간상으로는 동일하나 인식률에서는 기존 추론 검출 성능 대비 약 7% 개선된 결과를 얻었다.

그리고 실제 화재 동영상에서도 기존 추론 검출 성능 대비 전체 38개 화재 객체 검출 추론 BB 중 약 37개에서 불확실성이 높다고 판단하여 객체 검출을 보류하는 방식으로 화재 오인식을 개선하였다. 하지만 1개의 화재 객체 검출은 여전히 개선되지 못하였다. 향후 지속적인 연구가 요구된다.


Acknowledgments

이 논문은 정부(과학기술정보통신부)의 재원으로 한국연구재단의 지원을 받아 수행된 연구임(No. RS-2023-00247045)


References
1. V. Mullachery, A. Khera, and A. Husain, "Bayesian Neural Networks", Machine Learning (cs.LG), arXiv:1801.07710 [cs.LG], pp. 25-32, Oct. 2018.
2. K. Brach, B. Sick, and O. Dürr, "Single Shot MC Dropout Approximation", Machine Learning (cs.LG), arXiv:2007.03293 [cs.LG], Jul. 2020.
3. N. Park, T. Lee, and S. Kim, "Vector Quantized Bayesian Neural Network Inference for Data Streams", Proc. of the AAAI Conference on Artificial Intelligence, Vol. 35, No. 10, pp. 9322-9330, May 2021.
4. Z. Liu, Z. Zhu, J. Gao, and C. Xu, "Forecast Methods for Time Series Data: A Survey", IEEE Access, Vol. 9, pp. 91896-91912, Jun. 2021.
5. J. Shi, M. Jain, and G. Narasimhan, "Time Series Forecasting (TSF) Using Various Deep Learning Model", Machine Learning (cs.LG), arXiv:2204.11115 [cs.LG], Apr. 2022.
6. Y. Gal and Z. Ghahramani, "Dropout as a Bayesian Approximation: Representing Model Uncertainty in Deep Learning", The 33rd International Conference on Machine Learning, New York, USA, Vol. 48, pp. 1050-1059, Jun. 2016.
7. Nell, "Efficient uncertainty prediction using temporal smoothing", Jan. 2021. https://blog.xxxnell.com/ko/posts/temporal-smoothing [accessed: Jan. 10, 2024.]
8. J.-S. Kim and D.-S. Kang, "A Study on the Improvement of Fire Misunderstanding using Bayesian Neural Network", The Journal of Korean Institute of Information Technology, Vol. 22, No. 11, pp. 151-160, Jan. 2024.
9. Y. Gal, "What My Deep Model Doesn't Know", https://www.cs.ox.ac.uk/people/yarin.gal/website/blog_3d801aa532c1ce.html [accessed: Oct. 10, 2023]
10. J.-S. Kim and D.-S. Kang, "A Study on Fire Data Generation and Recognition Rate Improvement using F-guessed and Semi-supervised Learning", The Journal of Korean Institute of Information Technology, Vol. 20, No. 12, 123-134, Dec. 2022.

저자소개
김 종 식 (Jong-Sik Kim)

1991년 2월 : 부경대학교 전자공학과(공학사)

2020년 8월 : 동아대학교 전자공학과(공학석사)

2020년 9월 ~ 2023년 2월 : 동아대학교 전자공학과 박사수료

관심분야 : 영상처리, AI

강 대 성 (Dae-Seong Kang)

1994년 5월 : Texas A&M 대학교 전자공학과(공학박사)

1995년 ~ 현재 : 동아대학교 전자공학과 교수

관심분야 : 영상처리, AI, 패턴인식