
MCNN과 KDE를 활용한 연합학습 기반 실시간 군중 밀집도 모니터링 시스템
초록
본 논문은 연합학습 기반 다중열 합성곱 신경망(MCNN) 모델을 활용하여 군중 밀집도를 계산하는 시스템을 구현하였다. 제안된 시스템은 플라스크(Flask) 기반 웹 서버와 InfluxDB를 활용한 실시간 데이터 처리와 시각화를 지원하며, 대규모 환경에서도 안정적으로 동작할 수 있는 확장 가능한 아키텍처를 제공한다. 연합학습 구조를 통해 데이터 보안성을 유지하면서 분산된 데이터를 효율적으로 처리하고 공간적 커널밀도추정를 적용하여 공간적 밀집도를 효과적으로 계산하였다. 본 시스템은 MCNN 모델을 사용해 입력 이미지를 밀집도 맵으로 변환하고, 이를 기반으로 공간적 커널밀도추정을 적용해 군중의 밀집도를 분석한다. 실험 결과, 연합학습 기반 MCNN 모델은 기존 모델 대비 평균 절대 오차(MAE)를 3.52%, 평균 제곱근 오차(RMSE)를 4.99% 감소시키는 성능 향상을 보여준다.
Abstract
This paper proposed a system calculating crowd density using a Federated Learning-based Multi-column Convolutional Neural Network(MCNN) model. The proposed system supports real-time data processing and visualization through the Flask web server and the InfluxDB, ensuring reliable operation in large-scale environments. The architecture ensures data security while efficiently processing distributed data, and accurately calculates the spatial kernel density estimation in MCNN model. The kernel density estimation transforms input images into feature maps, for analyzing crowd density. Evaluation results demonstrate that the Federated Learning-based MCNN model improves performance by reducing Mean Absolute Error(MAE) by 3.52% and Root Mean Square Error(RMSE) by 4.99% compared to traditional models.
Keywords:
influxDB, federated learning, MCNN, KDEⅠ. 서 론
2022년 핼러윈 서울 이태원에서 발생한 군중 압사 사고로 인해 159명이 사망하고 196명이 부상당하는 비극적인 사건이 발생하였다. 이러한 군중 압사 사고는 전 세계적으로 빈번하게 발생하며, 그로 인해 많은 희생자가 발생하고 있다. 이러한 사고를 예방하기 위해 행정안전부는 ‘인파 관리지원 시스템’을 시범 운영한 바 있다. ‘인파 관리지원 시스템’은 군중 밀집도 계산 기법 기술을 활용하여 군중 밀도를 실시간으로 모니터링하고 관리하는 서비스이다. 또한 캐논은 AI 기반의 군중 밀집도 계산 기법을 개발하여, 이벤트 장소나 기차역 같은 대규모 군중이 모이는 장소에서 실시간으로 사람 수를 계산할 수 있는 시스템을 출시하였다. 군중 밀집도 계산은 특정 이미지나 비디오에서 사람의 수를 추정하는 기술이다[1]. 이 기술은 대규모 이벤트나 집회에서 군중 수를 파악하여 안전사고를 예방하는 데 중요한 역할을 할 수 있다. 이러한 군중 밀집도 계산을 위해 많은 알고리즘이 제안되어 왔으며, 그중 CNN(Convolutional Neural Network) 기반의 MCNN(Multi-column Convolutional Neural Network)는 다양한 스케일의 필터를 사용하여 복잡한 군중 밀도 분포를 효과적으로 학습할 수 있다[2]. 그러나 MCNN은 한계점이 있기 때문에 본 논문에서는 3가지 주안점으로 해결하고자 한다.
- • 연합학습을 활용한 데이터 처리: MCNN은 다양한 시점과 군중 밀도를 학습하기 위해 대규모의 주석이 달린 데이터를 필요로 하여 이러한 문제를 해결하기 위해서는 대규모 데이터를 효율적으로 처리해야 한다. 이러한 문제를 해결하고자 본 논문은 연합학습(Federated learning) 시스템을 활용하여 클라이언트가 서로 다른 데이터 세트를 학습하게 하여 해결하고자 한다.
- • 실시간 재난 시스템 구현: 재난 처리 시스템에서 유동적인 인구를 적절히 파악하기 위해서는 실시간 처리가 중요하다. 이런 문제를 해결하기 위해서는 사진 또는 동영상을 실시간으로 저장하는 데이터베이스가 요구됨에 따라 InfluxDB를 사용하여 사용자가 실시간으로 유동인구의 변동을 확인하기 쉽게 접근성을 높였다.
- • 밀집도 계산: MCNN은 특정 위치에 군중이 존재할 확률을 픽셀값으로 나타내는 2차원 밀집도 맵을 생성하므로 이를 수치로 정량화하는 과정이 요구된다. 이러한 문제를 해결하기 위해서 밀집도 맵에서 주변 대비 밝은 위치를 검출하여 군중 위치를 추정하고, 커널밀도추정(KDE, Kernel Density Estimation)을 적용하여 군중 밀집도를 계산하고자 한다. 본 논문은 KDE를 2차원 공간으로 확장하고 정규화 과정을 제거함으로써 공간적 밀집도를 왜곡 없이 효과적으로 표현하고자 한다.
본 논문에서는 위와 같은 MCNN의 한계점을 개선하여 실시간으로 군중 수와 밀집도를 계산하고 이 수치들을 명확하게 볼 수 있는 시스템을 구현 및 제안한다. 따라서 본 논문의 구성은 다음과 같다. 2장에서 본 논문과 관련된 연구인 InfluxDB, MCNN, 연합학습 그리고 KDE에 대하여 정의하며 3장에서 본 연구에서 제안하는 기술을 설명한다. 4장에서는 제안한 기술로 설계된 시스템을 구현하여 기존 MCNN 모델과 연합학습 기반 MCNN 모델의 성능을 비교 분석하고 5장에서 결론을 맺는다.
Ⅱ. 관련 연구
2.1 InfluxDB
유동인구가 많은 길거리에서 사람의 수는 실시간으로 변하며 데이터의 변동이 크다. 이처럼 시간의 흐름에 따라 변동되는 데이터를 시계열 데이터라고 한다. 시계열 데이터의 특성상 높은 쓰기 및 읽기 성능이 요구되는데, 시계열 데이터를 효율적으로 저장하고 처리하기 위해 설계된 데이터베이스는 시계열 데이터베이스(TSDB, Time Series Database)라 한다. InfluxDB는 DB-Engines Ranking에 따르면 TSDB를 사용하는 DBMS 중 가장 좋은 성능을 보여주고 있다. InfluxDB는 시간 기반 데이터를 효과적으로 처리하기 위해 설계된 데이터베이스[3]로 Time-Structured Merge Tree 기반의 스토리지 엔진을 사용하고 데이터의 시간 속성을 기준으로 데이터 압축을 효율적으로 수행해 디스크 사용을 최소화하여 데이터가 오래될수록 압축 효율이 증가하는 특징을 가지고 있다[4].
따라서 본 논문에서는 InfluxDB를 사용하여 실시간으로 변동되는 군중 밀집도 수치를 효과적으로 읽고 저장하도록 하였다.
2.2 Federated leaning
연합학습의 기본적인 프레임워크는 구글에서 처음 제안되었다[5]. 그림 1을 보면 연합학습은 주로 중앙 서버가 참여 장치(Client)들로부터 모델 업데이트를 수집하고 이를 평균화하여 새로운 Global Model을 생성하는 구조이다. 이 과정에서 데이터는 각 클라이언트가 수집한 것으로 학습하며 다른 클라이언트와는 데이터는 공유하지 않고 모델만 공유하게 된다[6]. 이는 모바일 장치나 IoT 기기와 같이 대규모 네트워크에서 데이터를 중앙 서버로 전송하지 않고 각 장치에서 로컬 데이터를 이용해 공동으로 모델을 학습하게 한다. 따라서 연합학습은 대규모 데이터 처리 효율성 측면에서도 강력한 장점을 가지며, 중앙 서버에서 대규모의 원천 데이터를 직접 처리하지 않고 분산된 장치에서 개별적으로 학습을 수행하며 중앙 서버는 모델 업데이트만 받아들여 통신 비용과 서버의 부하를 크게 줄일 수 있다. 이는 대규모 군중 밀집도가 발생하는 상황에서 많은 장치가 동시에 데이터를 수집하고 처리하는 환경에서 매우 유리하다. 각 장치가 독립적으로 모델을 업데이트하면서 전체적인 성능이 향상된다.
이처럼 연합학습은 여러 장치에서 다양한 데이터로 학습하고 대용량의 데이터를 처리하기에 용이하여 본 논문에서는 연합학습을 사용하여 카메라와 분산된 장치에서 데이터를 수집 및 통합하여 군중 밀집도와 같은 실시간 변수를 효율적으로 분석하는 시스템을 구축하고자 한다.
2.3 MCNN
군중 밀집도를 계산하기 위한 다양한 알고리즘이 제안되었으며 초기 연구들은 주로 탐지 기반 방법과 회귀 기반 방법으로 나뉜다. 탐지 기반 방법은 영상에서 개별 객체를 탐지하여 이를 기반으로 군중 수를 추정하는 방식으로 밀집된 환경에서는 객체 간의 가림 현상으로 인해 성능이 저하되는 한계가 있다. 회귀 기반 방법은 이미지의 특징을 추출하고 이를 회귀 모델을 통해 군중 수를 예측하는 방식을 가지고 있으며 전경 분할이나 특징 추출 과정에서 정보 손실이 발생할 수 있다[7]. 심층 학습 기술의 발전으로 CNN을 활용한 방법들이 등장하였다. Zhang의 논문에서는 CNN을 활용하여 다양한 환경에서 군중을 계수하는 방법을 제안하였고 사전 학습된 네트워크를 기반으로 새로운 데이터에 적응하는 방식을 사용하였다[8].
MCNN은 이러한 한계점을 극복하기 위해 제안되었다[2]. 그림 2를 보면 MCNN은 서로 다른 크기의 필터를 가진 세 개의 병렬 네트워크를 통해 밀도 맵을 추정한다. 이 구조는 다양한 크기의 머리 크기를 모델링 할 수 있게 한다. 또한 시점 왜곡이나 이미지 해상도 변화가 큰 경우에도 좋은 성능을 제공한다. 각 열에서 서로 다른 크기의 수용 영역을 가진 필터를 사용해 이미지의 본래의 픽셀에서 밀도 맵으로의 매핑을 학습하여 다양한 스케일의 특징을 효과적으로 학습할 수 있다. 또한 MCNN은 기하학적 적응형 커널을 도입하여 시점 왜곡 문제를 고려한 밀도 맵을 생성한다[2]. 이 방식은 기존의 고정 크기 커널을 사용하는 방법보다 정확한 밀도 추정이 가능하고 군중의 분포를 더 잘 반영한다.
본 연구에서는 이러한 MCNN 구조를 바탕으로 군중 밀집도 계산을 위한 시스템을 설계하였으며, 이를 통해 실시간으로 다양한 환경에서 군중 밀도를 그래프로 표현하여 효과적으로 확인할 수 있게 하였다.
2.4 KDE
KDE는 사전 가정 없이 데이터의 확률 밀도 함수를 추정하는 방법으로, 히스토그램이 가진 한계를 극복하기 위해 개발되었다. 히스토그램은 데이터를 고정된 구간으로 나누어 밀도를 추정하므로 데이터의 분포를 정확하게 반영하지 못하고 불연속적인 경계를 생성하는 문제가 있다. 반면, KDE는 각 데이터 포인트에 커널 함수를 적용하여 부드럽고 연속적인 확률 밀도 곡선을 생성한다.
그림 3은 KDE의 수행 과정을 보여준다. 먼저 주어진 데이터 포인트를 중심으로 커널 함수를 생성하고 모든 위치에서 커널 함수의 값을 합산한다. 마지막으로 합산된 값을 데이터 수로 정규화하여 최종적인 확률 밀도 함수를 도출한다.
KDE는 데이터의 확률 밀도를 추정하기 위해 개발되었으나, 최근 연구에서는 단순한 데이터 밀도 추정을 넘어서 공간적 패턴 분석[9][10]에 활용되고 있으며, 군집화 평가[11]나 딥러닝 모델의 성능 개선[12]-[14] 등의 다양한 분야로 확장되고 있다.
본 논문에서는 군중 밀집도와 같은 공간적 패턴을 분석하기 위해 KDE를 활용한다. 기존 방법은 정규화 과정으로 인해 그래프의 면적이 1로 고정되면서 실제 공간적 밀집도가 왜곡되는 문제가 있었으나, 본 논문에서는 정규화 과정을 제거하여 특정 영역의 밀도가 과소평가되거나 과대평가되는 문제를 해결한다.
Ⅲ. 설계 및 구현
본 논문에서는 실시간으로 군중 밀집도를 계산하고 그 수치의 변동되는 움직임을 쉽게 확인할 수 있는 시스템을 제안한다. 이 시스템에서 실시간 군중 밀집도 분석을 수행하기 위해서 웹 서버에 웹 소켓 통신과 시계열 데이터베이스인 InfluxDB를 적용하였다. 이 시스템에서 군중 밀집도를 계산하기 위해 사용하는 모델은 일반적인 MCNN 알고리즘 모델이 아닌 연합학습을 이용하여 학습한 MCNN 모델을 사용한다.
본 논문은 이러한 방법을 통해 기존 MCNN 모델의 문제점인 대규모 데이터의 문제를 해결하고자 하였다. 또한 MCNN 모델의 출력을 바탕으로 군중 밀집도를 구하기 위해 공간적 KDE를 활용하였다.
3.1 제안하는 시스템
그림 4를 보면, 서버(Server)는 파이썬 프레임워크인 Flask로 구현되었고, 내부에 데이터베이스 모듈(Database module) 그리고 인공지능 모듈(AI module)이 존재한다. 서버는 클라이언트(Client)와 REST API 규약을 사용한 HTTPS 통신 또는 Socket API 규약을 사용한 웹 소켓 통신을 통해 데이터를 주고받는다. 주로 HTTPS 통신을 이용하지만, 클라이언트가 영상을 전송하는 경우 웹 소켓을 사용해서 지연시간을 줄이고 실시간 처리 성능을 극대화하였다.
데이터베이스 모듈은 실시간으로 변동되는 군중 인원수와 밀집도를 저장하거나 읽어 웹 서버에 전달하는 역할을 한다. 지속적으로 쌓이고 생성되는 시계열 데이터에 대응하기 위해, 빠른 입출력과 데이터 압축 기능을 갖춘 시계열 데이터베이스(InfluxDB)를 사용하여 실시간 처리 성능을 높였다.
인공지능 모듈은 그림 5와 같이, 연합학습 기반 MCNN 모델(FL MCNN)과 공간적 KDE 알고리즘으로 구성되어 있으며, 실시간으로 입력된 영상을 밀집도 맵과 군중 인원수 및 밀집도로 변환하여 웹서버에 전송하는 역할을 수행한다. 구체적으로 그림 5를 보면, 입력 이미지(Input)는 연합학습 기반 MCNN을 통해 밀집도 맵(Density map)으로 변환하고 주변 대비 밝은 부분(Local maximum)을 검출하여 군중의 위치 좌표(Crowd point)를 얻어낸다. 얻어진 좌표의 수를 세어서 235명이라는 군중 인원수(Count) 를 얻고, 또한 개선된 KDE를 적용해서 0.74라는 군중 밀집도(Density)를 얻을 수 있다.
이와 같이 데이터베이스 모듈과 인공지능 모듈을 통해 실시간 처리 성능을 갖춘 군중 밀집도 모니터링 시스템을 설계한다.
3.2 연합학습을 이용한 MCNN 모델
본 논문에서 제안하는 시스템의 전체 구조는 연합학습 기반으로 MCNN을 활용하여 분산된 데이터를 처리하여 모델을 생성한다. 이렇게 생성된 모델을 이용하여 실시간으로 군중 밀집도를 계산하는 시스템을 구현하였다. 본 논문에서 설계한 연합학습 기반 MCNN 모델의 구조는 세 개의 클라이언트와 중앙 서버로 이루어져 있다. 기존 MCNN 모델을 학습하기 위해서는 많은 양의 데이터를 한꺼번에 학습하는 방식을 사용한다.
그러나 본 논문에서는 그림 6에서 나타난 것과 같이 많은 양의 데이터를 클라이언트의 개수만큼 나누어 학습 데이터를 분산시켰다. 이후 클라이언트는 수집한 데이터를 사용하여 독립적으로 학습을 진행한다. 이때 각 클라이언트는 학습한 데이터를 중앙 서버에 전송하지 않고, 로컬 모델만 서버로 전달한다. 중앙 서버는 여러 클라이언트에서 받은 모델 가중치를 통합하여 Global Model을 생성하고, 이를 각 클라이언트에 배포하여 추가 학습을 진행한다. 본 논문에서는 이 과정을 1000번 반복되어 모델 성능을 최적화하였다. 이렇게 분산 처리된 학습은 학습 속도를 개선하고, 여러 클라이언트 모델의 결과를 종합하여 성능을 향상시킨다.
3.3 공간적 KDE 알고리즘
본 논문에서는 군중 밀집도와 같은 공간적 밀집도 분석을 위한 공간적 KDE를 제안한다. 이를 통해 데이터의 밀도를 분석하던 기존 KDE의 단점을 보완하고, 공간적 특성을 고려한 밀집도를 계산하도록 하였다.
기존의 커널밀도추정은 확률 밀도 함수를 추정하기 위해 그래프 면적을 1로 정규화하는 과정을 수행한다. 그러나 군중 밀집도와 같은 공간적 밀집도를 분석할 때는 정규화 과정이 밀집도를 왜곡하는 원인으로 작용한다. 정규화를 적용하면 데이터 수와 관계없이 그래프 면적이 1로 고정되므로, 데이터 수가 많아질수록 밀집도 값이 실제보다 과소평가되는 문제가 발생한다. 따라서 본 논문에서는 정규화 과정을 제거하여 밀집도가 데이터 수에 비례하도록 함으로써, 데이터 수 증가에 따른 밀집도 왜곡 문제를 해결한다.
그림 7과 그림 8은 정규화 적용 여부에 따른 밀집도 왜곡 현상을 시각적으로 비교한 결과이다. 그림 7은 정규화가 적용된 경우를 나타내며, 왼쪽 그림은 데이터가 1개, 오른쪽 그림은 데이터가 5개일 때의 밀집도를 보여준다. 실제로 오른쪽 그림이 더 조밀한 상황이지만, 정규화 과정에서 밀집도가 왜곡되어 최대 밀집도가 더 낮게 나타난다. 반면 그림 8은 정규화 과정이 제거된 결과로, 밀집도가 데이터 수와 비례하여 표현되므로 실질적인 공간적 밀집도를 정확히 파악할 수 있다.
또한 기존 KDE는 1차원 데이터에 주로 적용되었으나, 본 논문에서 이를 2차원 공간으로 확장하여 군중 밀집도와 같은 공간적 패턴을 분석하였다. 다차원으로 확장은 계산량이 급격히 증가하는 문제가 있으므로, 이를 해결하기 위해서 계산 비용이 높은 가우시안 커널 대신 계산량이 적은 Epanechinkov 커널을 적용하고, 각 차원을 결합할 때 L1 Norm을 사용하여 계산 비용을 최소화하였다.
그림 9는 제안한 공간적 KDE를 적용하여 2차원 공간에서 군중 밀집도를 표현한 결과이다. (a)는 실제 군중의 이미지, (b)는 군중 위치를 추정한 좌표이며, (c)는 이 좌표에 KDE를 적용한 결과이다.
Ⅳ. 평 가
4.1 웹 시스템 구현
구현된 웹 시스템의 주요한 기능은 실시간으로 군중 영상을 전송받고 이를 처리하여 군중 인원수와 군중 밀집도를 계산하는 기능이다.
그림 10과 같이, 사용자가 스트리밍을 시작하면 서버로 영상이 전송된다. 전송된 영상은 인공지능 모듈 내부의 연합학습 기반 MCNN 모델과 공간적 KDE 알고리즘을 거쳐 처리되고, 처리결과인 밀집도 맵, 군중 위치 좌표, 군중 인원수 및 밀집도가 클라이언트에게 반환되고, 화면에 표시된다.
영상 스트림 과정에서, 군중 인원수와 밀집도는 타임스탬프 및 현재 위치를 나타내는 위도, 경도와 함께 1초 간격으로 InfluxDB에 기록되며, 그림 11처럼 실시간으로 집계되는 군중 인원수와 밀집도 데이터를 그래프 형태로 조회할 수 있다. 이를 통해 실시간으로 발생하는 군중 인원수와 밀집도의 변화를 직관적으로 파악할 수 있다.
4.2 연합학습 기반 MCNN 성능 평가
본 논문에서는 군중 밀도 계산을 위한 MCNN 모델에 연합학습을 도입한 효과를 평가하기 위해 기존 MCNN 모델과 연합학습 기반 MCNN 모델의 성능을 비교하는 실험을 진행하였다. ShanghaiTech 데이터셋을 이용하여 연합학습 기반 MCNN 모델을 학습하였고, 이 데이터셋은 총 330,165명의 머리 중심의 주석이 있는 1,198개의 이미지로 구성되어 있으며, PartA(300개 학습 이미지, 183개 테스트 이미지)를 사용하여 학습을 진행하였다.
두 모델의 성능 평가는 군중 밀도 계산에서 널리 사용되는 두 가지 지표인 평균 절대 오차(MAE)와 평균 제곱근 오차(RMSE, Root Mean Square Error)를 사용하였다. MAE와 RMSE는 군중 밀집도 계산에서 가장 일반적으로 사용되는 지표로, MAE는 측정된 사람 수와 예측된 사람 수와의 오차의 평균치로 해석할 수 있으며 반면 RMSE는 측정된 사람 수와 예측된 사람 수와의 오차의 제곱을 평균한 값으로 해석할 수 있다. MAE에 비해, RMSE는 사람이 많은 이미지에 대해 카운팅의 정확도를 더 정밀하게 진단할 수 있다[15]. 실험 결과, 연합학습 기반 MCNN 모델은 기존 MCNN 모델에 비해 MAE 수치를 3.52%, RMSE 수치를 4.99% 감소시키는 성과를 보였다. 이러한 평가는 각 모델의 에포크 별로 산출된 MAE와 RMSE 값들의 평균을 비교하여 계산되었다.
즉, 각 에포크에서 도출된 MAE와 RMSE 값들을 평균한 뒤, 이를 바탕으로 두 모델 간의 차이를 백분율로 나타낸 것이다. 그림 12은 비교 분석을 위해 10개의 에포크마다 평균화된 MAE와 RMSE의 결과를 보여준다.
초기에는 높은 오차율을 보였으나, 연합학습 기반 모델은 기존 모델보다 빠르게 수치를 감소시키는 경향을 보였다. 약 50라운드 이후, 연합학습 기반 MCNN 모델은 기존 모델보다 낮은 MAE와 RMSE 값을 기록하며 더 빠르게 수렴하는 모습을 확인할 수 있었다.
전체 학습 과정 동안 연합학습 기반 MCNN 모델은 일관되게 기존 MCNN보다 우수한 성능을 보였으며, 이는 연합학습이 클라이언트 간의 다양한 데이터 분포를 통합하여 더 효율적인 학습을 가능하게 한다는 것을 시사한다. 이러한 성능 분석을 통해 연합학습 방식이 모델이 다양한 데이터 분포에 대해 더 잘 일반화할 수 있도록 도와주며, 장기간 학습이 진행되더라도 다양한 클라이언트 데이터를 지속적으로 반영하여 점진적인 성능 향상이 가능함을 보여주었다.
4.3 공간적 KDE 성능평가
본 논문에서 제안한 공간적 KDE의 성능을 평가하기 위해 ShanghaiTech 데이터셋을 사용하였다. PartA는 평균 군중 수가 500.57명인 대규모 군중 이미지로 구성되어 있으며, PartB는 평균 군중 수가 123.28명인 상대적으로 적은 군중 이미지로 구성되어 있다. 각 데이터셋에 대해 기존 KDE와 제안한 공간적 KDE를 사용하여 군중 밀집도를 계산하고, z-score 정규화를 적용하여 두 방법을 비교하였다.
그림 13는 데이터셋의 실제 군중 수를 보여준다. PartA는 많은 수의 군중이 존재하고, PartB는 상대적으로 적은 수의 군중이 포함되어 있다. 그림 14를 보면, 기존 KDE는 정규화 과정으로 인해 군중 수가 많을수록 밀도 값이 왜곡되어 작게 나타나는 문제가 발생한다. PartA의 경우 실제로 군중 밀집도가 높지만, 정규화로 인해 밀집도가 과소평가되었고, 결과적으로 PartA의 밀집도가 군중 수가 적은 PartB 보다 낮게 나타나는 비정상적인 현상이 확인되었다.
반면, 그림 15은 공간적 KDE를 적용한 결과를 보여준다. 군중 밀집도가 군중 수에 비례하여 계산되었기 때문에 실제 군중 분포를 직관적으로 보여준다. PartA에서는 높은 군중 밀집도가 반영되었고, PartB에서는 군중 수가 적은 만큼 낮은 군중 밀집도가 나타났다.
또한 기존 커널밀도추정은 정규화 과정에서 전체 군중 밀도를 군중 수로 나누기 때문에 군중 수 변화에 민감하게 반응하며, 그래프가 불안정하고 이상치가 자주 발생하는 문제가 있다. 이러한 문제는 특히 군중 수가 적은 PartB와 같은 데이터셋에서 두드러진다. 반면, 제안된 공간적 KDE는 정규화를 제거함으로써 군중 수 변화에 강인하고 안정적인 결과를 보였으며, PartB와 같은 군중 수가 적은 데이터셋에서도 좋은 성능이 나타났다.
이러한 결과를 통해 공간적 KDE는 기존 KDE의 밀도 왜곡 문제를 해결하고, 군중 수에 비례한 정확하고 직관적인 군중 밀집도 추정이 가능함을 보여주었다.
Ⅴ. 결론 및 향후 과제
본 논문은 실시간 군중 밀집도 모니터링의 효율성과 정확도를 높이기 위해 연합학습 기반 MCNN 모델과 공간적 KDE 알고리즘을 제안하였다. 제안된 시스템은 실시간으로 군중 밀도를 계산하고 분석함으로써 안전사고를 예방할 수 있는 대응 방안을 마련하고자 한다. 연합학습 기반 MCNN 모델은 각 클라이언트가 독립적으로 학습한 후 Global Model을 중앙 서버에서 통합하는 형식으로 데이터 보안성과 학습 효율성을 확보하였다. 이를 통해 군중 밀집도 예측의 정확성과 성능이 기존 MCNN 모델보다 개선되었음을 확인하였다. 실험 결과, 연합학습 기반 MCNN 모델은 기존 모델 대비 MAE 수치를 3.52% 감소시키고, RMSE 수치를 4.99% 감소시키는 성능 향상을 보였다. 또한 제안한 공간적 KDE는 정규화 제거를 통해 군중 밀집도가 실제 군중 수와 비례하게 계산되었고, 2차원 확장을 통해 공간적 밀집도를 효율적으로 추정할 수 있었다.
향후 연구에서는 실시간으로 얻은 데이터를 활용하여 모델을 지속적으로 향상시킬 수 있는 시스템 개발이 필요하며, 군중 밀집도 분석을 넘어 교통 영상을 학습하고 공간적 KDE를 적용하여 교통량 및 혼잡도를 분석하는 시스템으로 확장될 수 있다. 이는 공간적 밀집도 분석이 요구되는 다양한 시스템에도 일반적으로 적용될 수 있을 것으로 기대된다.
Acknowledgments
이 논문은 2024학년도 한국성서대학교 대학혁신지원사업의 지원을 받아 수행된 연구임
References
-
M. A. Khan, H. Menouar, and R. Hamila, "Revisiting crowd counting: State-of-the-art, trends, and future perspectives", Image and Vision Computing, Vol. 129, pp. 104597, Jan. 2023.
[https://doi.org/10.1016/j.imavis.2022.104597]
-
Y. Zhang, D. Zhou, S. Chen, S. Gao, and Y. Ma, "Single-image crowd counting via multi-column convolutional neural network", IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Las Vegas, NV, USA, pp. 589-597, Jun. 2016.
[https://doi.org/10.1109/CVPR.2016.70]
-
C. Hadjichristofi, S. Sharma, and S. Agarwal, "Using time-series databases for energy data infrastructures", Energies, Vol. 17, No. 21, pp. 5478-5492, Oct. 2024.
[https://doi.org/10.3390/en17215478]
- S. N. Z. Naqvi, S. Yfantidou, and E. Zimányi, "Time series databases and influxdb", Studienarbeit, Université Libre de Bruxelles, Vol. 12, pp. 1-44, Dec. 2017.
- J. Konečný, H. B. McMahan, F. X. Yu, P. Richtárik, A. T. Suresh, and D. Bacon, "Federated learning: Strategies for improving communication efficiency", In: Proceedings of the 29th Conference on Neural Information Processing Systems (NIPS), Barcelona Spain, pp. 5-10, Oct. 2016.
-
B. Pfitzner, N. Steckhan, and B. Arnrich, "Federated learning in a medical context: A systematic literature review", ACM Transactions on Internet Technology (TOIT), Vol. 21, No. 2, pp. 1-31, May 2021.
[https://doi.org/10.1145/3412357]
-
Z.-Q. Cheng, J. Yang, W. Liu, J. Li, and X. Cao, "Improving the learning of multi-column convolutional neural network for crowd counting", Proceedings of the 27th ACM International Conference on Multimedia (ACM MM), Nice France, pp. 1823-1831, Oct. 2019.
[https://doi.org/10.1145/3343031.3350898]
- C. Zhang, H. Li, X. Wang, and X. Yang, "Cross-scene crowd counting via deep convolutional neural networks", Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Boston, MA, pp. 833-841, Jun. 2015.
-
J. Wang, Y. Liu, and J. Chang, "An improved model for kernel density estimation based on quadtree and quasi-interpolation", Mathematics, Vol. 10, No. 14, pp. 2402-2417, Jul. 2022.
[https://doi.org/10.3390/math10142402]
-
M. A. Shirzi and M. R. Kermani, "Real-time point recognition for seedlings using kernel density estimators and pyramid histogram of oriented gradients", Actuators, Vol. 13, No. 3, pp. 456-471, Mar. 2024.
[https://doi.org/10.3390/act13030081]
-
S. Modak, "A new measure for assessment of clustering based on kernel density estimation", Communications in Statistics - Theory and Methods, Vol. 52, No. 17, pp. 5942-5951, Sep. 2023.
[https://doi.org/10.1080/03610926.2022.2032168]
- X. Han, L. Zhang, T. Zhou, and Y. Jin, "Designing robust transformers using robust kernel density estimation", Advances in Neural Information Processing Systems (NeurIPS), Vol. 36, Dec. 2024.
- A. Zandieh, J. Jafarian, S. K. Mirzaei, and S. H. Maei, "Kdeformer: Accelerating transformers via kernel density estimation", Proceedings of the International Conference on Machine Learning (ICML), Honolulu Hawaii USA, pp. 12345-12354, Jul. 2023.
- S. Yoon, J. Kim, and H. Lee, "Variational weighting for kernel density ratios", Advances in Neural Information Processing Systems (NeurIPS), Vol. 36, Dec. 2024.
-
C.-H. Son and K.-T. Kim, "Pest Counting Model based on Spatially Variant Kernels and Adaptive Density Map Generation", The Journal of Korean Institute of Information Technology, Vol. 22, No. 9, pp. 43-50, Sep. 2024.
[https://doi.org/10.14801/jkiit.2024.22.9.43]
2025년 2월 : 한국성서대학교 컴퓨터소프트웨어학과(공학사)
2025년 3월 ~ 현재 : 숭실대학교 에너지정책기술융합학과 석사과정
관심분야 : 딥러닝, 데이터 처리, 데이터 보안
2025년 2월 : 한국성서대학교 컴퓨터소프트웨어학과(공학사)
2025년 3월 ~ 현재 : 연세대학교 의학과 석사과정
관심분야 : 최적화, 컴퓨터 비전, 머신러닝, 데이터 분석
2014년 8월 : 한국성서대학교 컴퓨터소프트웨어학과(공학사)
2023년 8월 : 이화여자대학교 컴퓨터공학(석.박통합)
2023년 ~ 현재 : 한국성서대학교 AI융합학부 인공지능학과 조교수
관심분야 : 블록체인, 머신러닝, 딥러닝, 네트워크 보안