About
home
About
home

EDA 과정을 통한 AutoML 학습과 최적 모델 탐색

프로젝트 개요

프로젝트 특징 및 목적
본 프로젝트는 EDA(Exploratory Data Analysis) 과정을 통해 AutoML을 학습하고 최적의 모델을 찾는 것을 목표로 함.
이 과정에서는 PyCaret 라이브러리를 주로 사용함.
프로세스
데이터 탐색 (데이터배경, 구조 및 모델 접근 방안정의)
모델링
모델 성능 평가 (train data vs test data)
시각화
라이브러리 및 알고리즘
데이터 처리: pandas, numpy
특성 추출 & 모델링: sklearn, pycaret, lightgbm
라이브러리: PyCaret
PyCaret은 AutoML을 위한 Python 라이브러리로, 여러 알고리즘을 쉽고 빠르게 비교해주는 기능을 가짐. 이 라이브러리를 사용하여 모델 선정 과정을 더욱 효율적으로 수행함.
성능 평가: sklearn
시각화: matplotlib, seaborn

프로젝트 상세

데이터 정보 및 특징
데이터
열(컬럼)
결측치
비고
train
3609
563
0
라벨 있음(activity)
test
1541
562
0
라벨 없음
train 데이터는 3609행, 563열로 구성되어 있으며, 'activity' 라벨이 포함됨.
test 데이터는 1541행, 562열로 구성되어 있으며, 라벨이 없음.
활동 유형은 6가지('STANDING', 'SITTING', 'LAYING', 'WALKING', 'WALKING_DOWNSTAIRS', 'WALKING_UPSTAIRS')로 구성됨.
접근 방안
컬럼 수를 줄인다→ 주요한 특성을 추출
모델은 무엇을 쓸 것인가? → 데이터에 맞는 모델을 찾아주는 라이브러리 검색
모델 성능평가는 어떻게 할 것인가?
→ train을 분리해서 정확도, 예측률, 재현율 평가
→ test는 라벨 예측으로 평가
특성 추출과 AutoML
초기에는 100개 이상의 특성을 추출했으나, stric 함수를 적용하여 8개의 주요 특성으로 축소함. 이 과정에서 불필요한 특성을 제거하는 방법을 배움.
최적 모델 탐색
AutoML을 사용하여 여러 모델을 자동으로 비교하고 평가함. 최종적으로 LightGBM이 가장 높은 성능을 보임.
정확도(Accuracy): 97.9%는 모델이 매우 정확하게 예측한다는 것을 의미
AUC: 0.9995는 모델이 양성과 음성 클래스를 잘 구분한다는 것을 의미
Recall, Precision, F1 Score: 이 값들이 모두 높으므로 모델은 양성 클래스와 음성 클래스를 모두 잘 예측
Kappa, MCC: 이 값들은 모델이 높은 수준의 신뢰성을 가지고 있다는 것을 나타냄
TT (Sec): 8.75초는 모델 학습에 걸린 시간으로, 매우 빠르다고 볼 수 있음
튜닝
튜닝 후의 결과를 보면, 모델의 평균 정확도는 약 97.55%로 나타났음.
AUC, Recall, Precision, F1 Score 등의 성능 지표도 매우 높게 나타남. 그러나 원래 모델이 튜닝된 모델보다 성능이 좋았기 때문에 원래 모델이 반환됨.
에필로그
본 프로젝트를 통해 특성 추출과 AutoML의 중요성을 깨달았음. 앞으로는 H2O, TPOT, Auto-Sklearn 등 다른 AutoML 라이브러리도 학습해보는 것이 좋겠음.
비즈니스 인사이트 도출: 모델의 결과를 실제 비즈니스 문제나 연구 주제와 연결시켜 어떤 가치를 창출할 수 있는지 고민.
건강 모니터링 앱: 이 데이터를 사용하여 스마트폰이나 웨어러블 디바이스에 통합할 수 있는 건강 모니터링 앱을 개발. 이 앱은 사용자의 일상 활동을 분석하여 건강 상태를 점검하고, 필요한 경우 운동이나 휴식을 권장할 수 있을 것임.
보험 프리미엄 할인: 이 모델을 사용하여 고객의 생활 패턴을 분석하고, 그에 따라 건강 보험의 프리미엄을 조정할 수 있음. 예를 들어, 'WALKING'이 높은 비율을 차지하는 사용자에게는 보험 프리미엄 할인을 제공하는 등의 전략을 취할 수 있음.
재활 프로그램: 'SITTING'과 'STANDING' 같은 활동의 데이터를 분석하여, 특정 질환을 가진 사람들에게 맞춤형 재활 프로그램을 제안할 수 있음.
안전 모니터링: 'WALKING_UPSTAIRS', 'WALKING_DOWNSTAIRS' 등의 데이터를 활용하여 노인이나 장애인의 안전을 모니터링할 수 있는 서비스를 개발할 수 있음.
활동 기반 추천 시스템: 사용자의 일상 활동 데이터를 분석하여, 그에 맞는 음식, 운동, 여가 활동 등을 추천할 수 있는 앱을 개발할 수 있음.