1.서론
저의 첫 공모전이자 그 어느때 보다 열심히 했다고 자부할 수 있는 행정안전부 주최 빅데이터 분석 공모전 리뷰를 시작 하겠습니다~
2. 참여 계기
저는 이 공모전에 참여하기 전에 국비교육으로 PBL기반 빅데이터 전문가 과정을 진행 중이었습니다.
이 과정의 막바지 최종 프로젝트를 진행하는 도중 이 공모전 공고를 보게 되었습니다.
이 공모전을 처음 보고 받은 느낌은 재밌겠다! 였습니다.
진행 중이던 최종프로젝트와도 비슷한 성격의 공모전이라 자신도 있었고 규모도 전국 단위다 보니 열정이 막 피어올라 팀원들과 상의 후 참가하기로 결정하였습니다.
3. 주제 선정
저희 팀이 선정한 주제는 머신러닝 기반 전국 싱크홀 발생 예측 입니다.
우리나라의 싱크홀은 주로 도심 속에서 발생하는데 이는 자연적인 요인이 아닌 인재에 해당합니다.
사람으로 인해 생긴 재난이니 관련된 데이터들을 분석하면 각 지역의 싱크홀에 취약한 요인들을 찾아낼 수 있고
미리 예방 할 수 있을 것이라 생각하여 주제를 선정하게 되었습니다.
4. 데이터 수집
4-1. Feature 수집
싱크홀을 예측함에 있어서 지질, 수질 등의 많은 원인이 되는 요인들이 있습니다. 이러한 요인들을 여러 논문을 통해 인용 및 요약하였고, 그러한 데이터들을 수집하여 분석에 사용하였습니다.
※ 참고문헌
박인준, 박승희, 2014, “싱크홀 원인분석 및 대처방안”
이기영, 강상준, 2014, “도시를 삼키는 싱크홀, 원인과 대책”
이경수, 김태형, 2016, “델파이기법을 이용한 싱크홀 발생 위험요인 도출”
최창호, 2015, “국내 싱크홀 발생 원인과 대응방향”
이재환, 신창건, 고민호, 2017, “지반침하(함몰) 예방을 위한 지하안전관리에 관한 특별법 소개
2019.06 노승환(공주대학교), 남 부 호아이(PTIT), 최복길(공주대학교), 뉴옌 만 둥(공주대학교)
“딥 러닝과 데이터 결합에 의한 싱크홀 트래킹”
천병식외, 2012, “지반공학 이론과 실제”
김주용, 홍세선, 신진수 외 3명 2015 “국토지질의 기초 및 응용 연구 성과와 전망“
정지승, 이선길, 이규영, 정해욱, 김홍주, 2015,
“지반응력 및 비하수위 변화가 지하철구조물 안정성에 미치는 영향 사례연구”
이슬민, 강두선, 2018, “ANN-Clustering 기법을 이용한 상수관로 노후도 평가 및 분류”
송진영, 2015, “도시개발과 지하수위 저하에 대한 상관관계 분석”
김숙자, 정관수, 2018, “지하수위 변화에 따른 지반함몰 영향연구”
4-2. 데이터 수집
데이터 수집단계에 앞서 분석에 필요한 데이터와 출처 및 방식은 다음과 같습니다.
‘싱크홀 발생현황 데이터‘는 공공데이터포털 및 open.go.kr을 이용하여 각 시청에 정보공개청구를 통해,
’지역별 인구 데이터‘는 data.go.kr 및 KOSIS를 통해,
기상 데이터는 기상자료개방포털에서 데이터를 수집하였습니다..
그리고 ‘수질 데이터’, ‘전국 지질 데이터’, ‘상하수관 데이터’는 각각 K-water, 지질정보서비스시스템, 국가상수도정보시스템에서 Python을 이용한 Web Crawling으로 데이터를 수집하였습니다.
4-3 데이터 전처리
전국적인 데이터를 수집함에 따라 대부분 가공되지 않은 상태로, 분석에 사용키 위해서는 데이터 전처리를 해야 합니다. 본 분석에서의 데이터 전처리 과정은 다음과 같습니다.
첫째, 모든 지역을 기반으로 한 데이터들이기 때문에 각 지역의 위도와 경도를 추가하였습니다. //구글맵스 api 사용
둘째, 상수도관 데이터와 인구밀도, 랑게리아지수 데이터를 분석에 용이하게 가공하였습니다.
셋째, 지층과 같은 범주형 데이터들은 분석에 사용하기 위해서 Python의 Pandas get_dummy 함수를 이용하여 One-Hot-Encoding하였습니다..
넷째, 지층 데이터들을 기존 900가지에서 상위단계 11가지로 재분류하였습니다.
다섯째, 가공된 데이터들을 위도와 경도 기준으로 하나의 데이터로 결합하였습니다.
여섯째, 수집한 컬럼으로 예측 불가능한 싱크홀의 경우 모두 제거하였습니다. //공사 중 흙 매몰 등
5.데이터 분석
싱크홀 발생지역과 전국에서 임의로 뽑은 지역을 1:1 비율로 데이터를 결합하여 학습용 데이터를 만들어서 모델에 학습시킨 뒤, 훈련 데이터와 테스트 데이터의 SCORE 조정을 통해 데이터를 일반화하였습니다.
먼저 분류모델을 통해 싱크홀 발생지역과 미 발생지역을 충분히 분류할 수 있는지 확인한 후 회귀모델을 사용하여 발생 확률을 도출하고 분석하였습니다.
분류모델의 경우 교차검증·정확도·재현율·정밀도·F1 SCORE를 통해 최적의 모델을 선정하며, 회귀모델의 경우 RMSE를 이용하여 가장 적절한 모델을 선정하였고 최적의 하이퍼 파라미터 값을 구합니다.
6. 데이터 분석 결과
위는 싱크홀의 발생에 영향을 주는 각 칼럼별 영향력의 정도를 보여주는 그래프로, 인구밀도, 강수량, 노후파이프의 비중, 랑게리아 지수 등의 순서로 싱크홀의 발생에 큰 영향을 주고 있는 것을 확인하였습니다.
우측 그림은 국내 약 400지역을 랜덤하게 뽑아 싱크홀 위험지역을 분석한 것이고
좌측 그림은 그 중 한 지역을 뽑아 위험요인을 분석한 그림입니다.
빨간색 부분은 싱크홀과 양의상관관계를 나타내고 파란색은 음의상관관계를 나타냅니다.
빨간색 요인들이 많을 수록 싱크홀에 취약한 지역인 것이고 길이가 길수록 해당요인이 취약하다는 것을 보여줍니다.
7. 결론
싱크홀은 사람에 의해 일어나는 인재로 위 결과를 통해 데이터로 어느정도 예측이 가능함이 나타납니다.
이런 데이터를 활용한 예측으로 사고를 사전에 예방하는 노력이 필요하겠습니다.
8. 마무리
정말 열심히 했던만큼 수상했을때도 굉장히 기뻤습니다.
(솔직히 현장 관객 점수가 압도적 1등으로 나와서 대상 받을 줄 알고 기대 중이었는데 ㅜ)
아쉽긴 하지만 정말 최선을 다했기 때문에 후회는 없습니다.
이상으로 2019 공공데이터활용 빅데이터 분석공모전 정리 끝~
'개발 이모저모 > 프로젝트' 카테고리의 다른 글
[게임 이벤트 풀이] 중복 2개가 가능한 3자리 숫자야구 풀이 (0) | 2023.01.05 |
---|---|
[공모전 수상] 2019 빛가람 에너지밸리 소프트웨어 작품 경진대회 (3) | 2020.09.06 |