Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

스마트폰 센서 기반 모션 분류 프로젝트

Outline

스마트폰의 가속도 및 자이로 센서 데이터를 활용하여
사용자의 동작(걷기, 서기, 눕기 등)을 분류하는 모델을 개발한 프로젝트입니다.
본 프로젝트는 KT Aivle School 교육 과정 중 수행된 팀 프로젝트입니다.


Project configuration

  1. 탐색적 데이터 분석 (EDA)

    • 전체 데이터 구조 및 라벨 분포 확인
    • 주요 피처들의 분포와 상관관계 분석
  2. 기본 모델링

    • 전통 ML 모델(RandomForest) 적용
    • 모델별 성능 비교 및 피처 중요도 분석
  3. 파이프라인 기반 고도화 모델링

    • ColumnTransformer + Pipeline을 활용한 전처리 통합 자동화
    • GridSearchCV를 통한 하이퍼파라미터 최적화
  4. 딥러닝 모델링

    • TensorFlow 기반 MLP 구성
    • 정적 동작 / 동적 동작 데이터를 분리하여 각각 학습
    • 분리된 모델을 통합하는 최종 Pipeline 설계

Framework

  • 언어 및 프레임워크: Python, TensorFlow, scikit-learn
  • 시각화 도구: matplotlib, seaborn
  • 모델: RandomForest, MLP
  • 개발 환경: Jupyter Notebook, Google Colab

Framework

파일명 설명
data01_train.csv 학습용 센서 데이터
data01_test.csv 테스트용 센서 데이터

Performance Summary

본 프로젝트에서는 단순 모델 적용을 넘어서,
데이터의 특성과 문제 구조를 고려한 전략적 모델 설계를 시도했습니다.

  • RandomForest를 활용하여 피처 중요도를 분석하고 피처 엔지니어링 수행
    → 전체 561개 피처 중, 중요도 기반으로 210개 피처를 선별하여 최종 학습에 사용
  • 전통 ML 모델을 기반으로 파이프라인 구성 및 효율성 점검
  • 정적 동작 / 동적 동작을 분리하여 각각 딥러닝 모델(DNN)로 학습
  • 두 모델을 하나의 통합 Pipeline으로 병합하여 최종 예측 수행
  • 최종 DNN 모델은 다양한 상태를 고려한 구조로 설계되었으며,
    Macro-F1 기준 성능은 0.93을 달성

팀원

최진호, 이원준, 장우진, 이정훈, 최태환, 황지윤, 조하민
(KT Aivle School 7기)


주요 학습 내용

  • 전통 ML과 딥러닝 모델의 역할과 한계를 실험적으로 비교
  • Pipeline, GridSearchCV를 활용한 자동화된 모델 설계
  • 정적/동적 상태별 행동 데이터의 특성을 고려한 모델 분리 및 통합 설계
  • 협업을 통한 실전 데이터 처리 및 분석 경험 축적

참고 문서 (Notion)

프로젝트 진행 과정, 분석 내용, 팀 협업 기록 등은 아래 Notion 페이지에서 자세히 확인하실 수 있습니다.

👉 프로젝트 Notion 문서 바로가기

About

스마트폰의 가속도/자이로 데이터를 활용하여 사용자의 행동을 분류하는 프로젝트

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages