23.06.15
DEVOTEE를 활성화 시키면
지금 작성한 커뮤니티 글에 대해 1개의 댓글을 달아줍니다.
버튼을 누르면 글 수정 시 ChatGPT가 작성한 댓글이 수정됩니다.
| 컨텐츠 유형 | 제목 | 저장일 | 삭제 |
|---|
본인인증 로그인에 실패하였습니다.
회원이 아니시거나 본인인증 등록이
완료되지 않은 사용자입니다.
안녕하세요~ 무선신호 패턴 분석을 통한 실내/실외 추정 과제를 맡은 9조 WAY 입니다.
저희의 1,2차 연구 목표는 다음과 같습니다.
직접 현장에서 데이터를 수집하고 분석하여 데이터를 이해하고, 수집된 데이터를 기반으로 실내외 위치 추정 모델 개발
성능 개선을 위한 고도화 연구 및 상용화 적용
이번 페이지에는 1차 연구 목표를 수행하기 위해 고군분투했던 내용울 소개드리겠습니다
저희에게 제일 먼저 주어진 목표는 “무선신호 데이터를 제대로 이해하자” 입니다.
그래서 단순히 상용데이터를 제공받고 분류 모델을 만드는 과정이 아닌 데이터를 직접 수집하고 분석해보면서 데이터를 깊게 이해하는 과정을 우선 수행하였습니다.
아래 사진은 제공받은 무선신호 단말기와 그 안에 있는 신호 측정 앱을 사용하는 모습입니다.
측정하고 싶은 위치에 가서 위 그림에 보이는 Start 버튼을 누른 뒤,
메모 정보(예: 안암동파리파게트안)와 실내외 레이블 정보(실내 또는 실외)를 입력하여 저장하면 현재 위치에 대한 무선신호 스냅샷 하나가 저장되게 됩니다.
데이터 수집 시 어떤 기준에 따라서 실내 또는 실외라고 레이블을 정의해야할까요?
단순히 건물 안에 있으면 실내, 밖에 있으면 실외라고 생각할 수도 있는데 정의 내리기 애매한 케이스도 있습니다.
예를 들어 건물의 입구 사이에 걸쳐 있는 경우는 실내라고 봐야할까요, 실외라고 봐야할까요? 또는 건물 옥상에 있으면 실외라고 봐야할까요?
멘토님들께서는 실내외에 대한 명확한 답이란 없으니 저희보고 직접 실내외 정의를 한 뒤 그에 따른 수집과 분석을 진행해보라고 조언해주셨습니다.
그래서 저희는 다음과 같은 2가지 기준으로 실내외를 정의하였습니다.
아래 그림과 같이 지붕만 있다던가, 지붕이 있어도 양 옆이 뚫려있는 경우 실외라고 정의하였습니다.
반대로 지하나 야외 공중 화장실과 같이 벽과 지붕이 모두 존재하는 경우는 실내라고 정의했습니다.
건물 입구 기준으로 바로 안쪽과 바깥쪽과 같이 실내외를 구분하기 애매한 상황이 있습니다.
기존 연구에서도 데이터 간의 차이가 크지 않고 분류도 잘 되지 않는다고 합니다.
저희는 이러한 애매한 케이스까지 고려하기보다 적어도 실내외가 명확히 구분되는 상황에서만큼은 제대로 분류하기 위해 입구를 기준으로 2m 이상 들어오면 실내, 멀어지면 실외라고 기준을 정했습니다.
같은 건물 내라도 수집 위치에 따라 무선신호의 정보가 다를 수 있습니다.
그러므로 백화점과 같이 여러 층이 있는 다층 건물은 지하부터 위까지 층마다 수집을 진행했습니다.
건물의 크기에 따라 소형 건물이면 1,2개 대형 건물이면 층마다 4,5개씩 수집하였습니다.
실외 데이터의 경우 실내 수집을 진행한 건물 밖 주변과 길거리를 걸어다니며 10m ~ 20m 마다 수집했습니다.
수집을 통해 저장된 무선신호 데이터를 열어보면 크게 LTE와 와이파이 정보로 구성되어 있습니다.
주요 피처들이 어떤 역할을 하는지 소개드리겠습니다.
Neighbor Cell은 현재 연결된 셀이 아닌, 주변에 있는 다른 셀을 의미합니다. 이 정보를 이용하여 Handover(셀 변경)를 결정할 수 있습니다.
주변 셀의 정보에는 셀 ID, RSRP, RSRQ, PCI 등이 포함됩니다.
무선 신호가 사용하는 주파수 대역을 의미합니다.
LTE는 여러 주파수 대역을 사용할 수 있으며, 주파수 대역에 따라 속도와 전파 범위가 달라집니다.
CA는 여러 개의 주파수 대역을 동시에 사용하여 더 높은 전송 속도를 제공하는 기술입니다.
CA 정보에는 사용하는 주파수 대역과 대역폭, 대역별로 측정한 RSRP, RSRQ, SINR 등이 포함됩니다.
CQI는 채널 품질을 나타내는 지표입니다.
단위는 0~15 사이의 정수이며, 값이 높을수록 좋은 채널 상태입니다.
PCI는 무선 셀의 식별자입니다.
ECI는 LTE 기지국 고유의 넘버 정보입니다.
RSRP는 기지국으로부터 수신한 참조 신호의 세기를 의미합니다.
RSRP가 높을수록 신호의 세기가 강하고 낮을 수록 약합니다
RSRQ는 기지국으로부터 수신한 참조 신호의 품질을 의미합니다.
RSRQ가 높을수록 신호의 품질이 좋고 낮을수록 나쁩니다.
RSSI는 수신한 신호의 세기를 나타내는 지표입니다.
SINR은 신호 대 잡음 및 간섭 비율을 의미합니다.
SINR이 높을수록 신호의 강도가 높아지고 잡음과 간섭이 적어지고 낮을수록 신호의 강도가 약해지고 잡음과 간섭이 많아집니다.
TA는 기지국과 단말 간의 시간 차이를 의미합니다.
이 값을 이용하여 단말의 거리를 계산할 수 있습니다.
Tx Power는 무선 신호를 전송하는 단말의 출력 전력을 나타냅니다.
단위는 dBm으로, 값이 높을수록 강한 신호를 전송합니다.
Tx Power 정보에는 사용하는 주파수 대역과 출력 전력 값 등이 포함됩니다.
측정 기기 주변에 연결 가능한 N개의 와이파이들의 정보가 수집됩니다.
공개된 와이파이 뿐만 아니라 비밀번호가 설정된 비공개 와이파이 모두 수집됩니다.
Frequency는 와이파이 무선 신호가 사용하는 주파수 대역을 의미합니다.
Wi-Fi는 주로 2.4GHz와 5GHz 주파수 대역을 사용합니다.
RSSI는 와이파이의 수신한 신호의 세기를 나타내는 지표입니다.
와이파이 데이터의 경우 RSSI의 세기가 강한 순에 따라 와이파이 리스트들이 정렬되어 있습니다.
그러므로 와이파이 피처는 RSSI의 세기가 강한 와이파이 순으로 N개의 와이파이의 RSSI 리스트 값과 Frequency 리스트 값이 존재합니다.
기본적으로 수집되는 피처 외 데이터 분석 및 전처리 과정을 통해 임의로 생성한 피처들은 다음과 같습니다.
Neighbor Cell의 개수 정보를 의미하는 정수 값의 피처입니다.
무선 신호마다 서로 다른 N개의 Neigh bor Cell 리스트 정보가 수집되기 때문에 주변 셀의 개수 정보를 포착할 수 있도록 하였습니다.
N개의 Neighbor Cell 리스트 내에서 RSRP, RSRQ, RSSI 값들의 각 평균값을 의미합니다.
이를 통해 주변 다른 셀들의 신호세기 정보들을 포착할 수 있도록 하였습니다.
측정 기기 주변에 연결 가능한 N개의 와이파이 개수 정보입니다.
우선 서울 내 실내외를 돌아다니면서 데이터를 수집해보고 간단한 인공지능 모델로 모의 테스트를 진행해 보았습니다.
안암, 왕십리, 동묘앞, 종로, 종각, 광화문 등을 돌아다니면서 490개의 서울 데이터(실내 60%, 실외 40%)를 수집해보았습니다.
Random Forest 모델을 이용하여 서울 데이터의 실내외 분류를 수행해보니 F1 Score 0.86으로 준수한 분류 성능이 나왔습니다.
분류 모델을 바탕으로 Feature importance를 적용하여 모델이 예측하는 과정에서 각 피처들이 얼마나 큰 영향을 미쳤는지 확인해 보았습니다.
주변 와이파이 개수를 의미하는 wifi_count 피처가 가장 큰 영향력을 끼친 것을 볼 수 있고, 나머지로 wifi_rssi나 wifi_frequency 등 와이파이 정보들이 분류에 영향력을 크게 끼친 것을 볼 수 있었습니다.
수집된 데이터의 실내외에 따른 wifi_count 수를 비교해 보았을 때, 아래에서 볼 수 있듯 실내보다 실외에서 와이파이가 많이 연결됨을 볼 수 있었습니다.
이를 통해 실내외에 따른 와이파이 개수 차이를 바탕으로 분류가 수행됨을 확인할 수 있었습니다.
그렇다면 LTE 피처들은 어떤 경향을 보이기에 분류에 영향을 크게 끼치지 못했을까요.
아래에는 실내외에 따른 LTE 피처들의 분포를 비교해보았습니다.
위 그림에서 볼 수 있듯이 실내외에 따른 피처 차이가 크게 존재하지 않는 것을 볼 수 있었습니다.
여기까지 분석을 진행해보았을 때, 서울 데이터에 한해서는 단순 와이파이 정보만으로도 분류가 비교적 잘 수행됨을 볼 수 있었지만
LTE 피처들은 실내외에 따른 차이가 명확하지 않아 분류에 큰 영향을 미치지 못하였습니다.
그렇다면 서울이 아닌 비교적 통신이 원활하지 않은 타 지역에 대해서는 어떤 경향을 보일지 궁금해졌습니다.
아무래도 서울에 비해 연결되는 와이파이 수도 적기 때문에 wifi_count 정보만으로는 분류가 어려울 것 같고, 지역마다의 무선 기지국 정보도 다르기 때문에 LTE 피처도 다른 경향을 보이지 않을까 생각이 들었습니다.
이러한 궁금증을 해결하기 위해 다양한 지역을 돌아다니면서 데이터를 수집하러 다니기 시작했습니다.
7월 말부터 8월 한달 동안 서울, 경기도(안양, 남양주), 가평, 부산, 인천, 전주를 돌아다니면서 무선신호를 수집했습니다.
또한 다양한 지역 뿐만 아니라 지역마다 특징을 더욱 포함하기 위해 번화가, 바닷가, 강 주변 산책로, 시장, 시골 마을, 달동네, 원룸촌, 관광지, 대형공원 등 다양한 장소에 대해서 수집하려고 노력했습니다.
*여담으로 수집하는 과정이 힘들기도 했지만 무안한 상황도 많았습니다. 다른 사람이 저희를 봤으면 굉장히 이상하게 봤을꺼예요.
주변 건물마다 들어가서 층마다 돌아다니다가 아무것도 안 하고 나오는 과정을 수없이 반복했으니까요. 건물 경비원 분이 봤다면 이상한 사람으로 의심하셨을꺼 같아요😭 *
백화점이나 대형 마트의 경우는 들어왔다 나오기 큰 부담이 없는데 옷 매장과 같이 갑자기 직원이 말을 거는 경우 당황해서 얼버무리기도 하고
편의점이나 작은 슈퍼마켓의 경우 찾는 물건이 없어서 아쉬워하는 척 연기하면서 나오기도 했습니다. 수줍은 내향인들이라 더욱 힘들었습니다😭
구글 지도의 타임라인을 보면 하루 동안 움직인 정보를 볼 수 있는데 한달동안 155km 이상 걸아다니면서 운동도 되는 좋은 과제였던거 같네요 🤣🤣.
이렇게 열심히 돌아다니면서 총 2,237개의 실내외 데이터를 수집했습니다!!
각 지역별 데이터 정보는 아래 표로 나타내었습니다.
아래 그림에서는 LTE 피처 중 하나인 TA에 대한 지역 별 실내외 분포를 확인해 보았습니다.
이전 서울 분석과 마찬가지로 실내외에 따른 차이가 크지 않음을 볼 수 있었습니다.
TA 피처뿐만 아니라 다른 대부분의 LTE 피처들도 비슷한 경향을 보였습니다.
(나머지 피처들에 대한 비교 자료는 첨부파일에 추가해두었으니 다른 피처 내용이 궁금하시면 참고해 주세요)
아래 그림에서는 LTE 피처 중 RSRP와 ECI에 대해 지역 간 분포를 확인해 보았습니다.
이전 분석에서 실내외에 따른 차이는 보이지 않았지만 적어도 지역마다 특유의 분포가 존재함을 확인할 수 있었습니다.
(마찬가지로 다른 피처들의 정보는 첨부파일에서 참고해 주세요)
모델의 성능을 높일 수 있는 최적의 피처를 선별하기 위해 Random Forest 모델에 대하여 3가지 방법에 대한 성능을 비교해보았습니다.
3가지 피처 선정 방법과 그에 따른 Random Forest의 분류 성능은 다음과 같습니다.
특정 피처를 제거하지 않고 모두 이용하는 방법입니다.
F1 Score 0.825
다중 공선성을 계산하여 불필요한 피처들을 제거하는 방법입니다. VIF(Variance Inflation Factor)을 구하여 10이 넘은 피처는 제거하였습니다.
F1 score 0.818
멘토님께서 피처에 대해 알려주신 내용과 저희가 분석한 것을 토대로 중요도가 낮을 것이라 예상되는 피처들을 직접 제거한 방법입니다.
F1 score 0.820
이렇게 세 가지 방법에 대한 성능을 비교해보았을 때 수집된 피처를 그대로 활용하는 첫 번째 방법의 성능이 가장 우수했습니다.
해당 피처 조합을 이용하여 이후 분석을 이어서 진행했습니다.
7개의 인공지능 모델 Decision Tree, Random Forest, K-neighbors, Gradient Boosting, XGboost, SVC, Neural Network에 대해서 성능을 비교해보았습니다.
데이터 사이즈가 크지 않아 모델 학습 시 K-fold 평가 방법을 이용하였습니다.
XGBOOST의 성능이 0.857로 가장 우수하여 XGBoost 기법을 활용하여 이후 지역별/지역간 모델 성능 평가와 Feature 영향도 분석을 진행했습니다.
지역별/지역간 모델 성능을 확인하기 위해 교차 데이터 셋 평가를 수행해보았습니다.
왼쪽 표 그림의 행은 학습 데이터 열은 테스트 데이터를 나타냅니다.
즉 행에 있는 어떤 지역의 데이터로 학습을 해서 열에 있는 각각의 지역에 대해 테스트를 진행했다 라고 볼 수 있습니다.
예를 들어 1행 1열에는 전체 혼합한 데이터로 학습을 해서 서울 지역에 대한 테스트를 진행한 결과 F1 Score 0.85가 나왔습니다.
서울 학습 - 서울 평가, 부산 학습- 부산 평가와 같이 지역별 모델 성능 평가를 진행했을 때 대체로 높은 성능을 보임을 확인할 수 있었습니다.
이를 통해 지역별 무선 신호 패턴이 존재함을 다시 한번 확인할 수 있었습니다.
위 그림의 오른쪽 표는 각 학습 데이터에 대한 테스트 지역들의 평균과 표준편차 값을 나타냅니다. 서울과 부산과 같이 큰 도시일수록 좋은 성능을 보임을 확인할 수 있었습니다.
이러한 분석 결과들을 바탕으로 추후 연구에서는 지역의 특성을 반영할 수 있는 모델(예: 지역별 모델 구성) 등을 고려하여 실내외 분류 성능을 높일 수 있는 방안들을 탐색하고 있습니다.
앞선 최적 피처 선정 방법에서 모든 피처를 이용하는 방법의 성능이 가장 우수했습니다.
다시 한번 최적의 피처를 선별하기 위해 Feature importance 기반 feature selection을 수행했습니다.
해당 방법은 XGBOOST의 feature importance를 뽑아본 뒤, 영향력이 낮은 피처들을 하나씩 제거하면서 몇 개의 피처를 사용했을 때 좋은 성능을 보이는지 확인하는 방법입니다.
위 그림을 보시면 x축이 feature 이용 개수이고 y 축이 f1 score 입니다.
피처를 80개에서 46번째 까지 줄여도 높은 성능이 유지되는 것을 확인할 수 있었습니다.
높은 성능을 유지했던 46개의 피처 리스트들을 나타내었습니다.
와이파이 정보들 뿐만 아니라 band, rsrp eci 등의 LTE 피처도 주요 피처들로 이용된 것을 확인할 수 있었습니다.
지금까지 1차 연구 목표인 직접 현장에서 데이터를 수집하고 분석하여 데이터를 이해하고, 수집된 데이터를 기반으로 실내외 위치 추정 모델 개발을 수행하였습니다.
이후 연구에서는 지금까지 직접 수집한 데이터와 회사 측으로부터 제공받을 상용 데이터를 테스트해 보며 분류 성능 향상을 위한 모델 고도화 작업이 수행될 예정입니다.
또한 과제 마지막 단계에서는 저희가 최종적으로 개발한 실내외 분류 모델을 상용화하여 실제로 잘 작동하는지 직접 보여드리겠습니다.
DEVOTEE를 활성화 시키면
지금 작성한 댓글에 AI가 댓글을 달아줍니다.