반응형
250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
Tags
- product
- 컴퓨터비전
- 그로스해킹
- 자연어처리
- DACON
- pmf
- 언어지능딥러닝
- 파인튜닝
- nlp
- OKR
- Computer Vision
- 데이터분석
- omtm
- 데이콘
- 모델링
- 머신러닝
- ERD
- tableau
- 데이터모델링
- 시각화
- 인공지능
- productmarketfit
- fit
- 데이터시각화
- Market
- 태블로
- 딥러닝
- dl
Archives
- Today
- Total
블로그
[모델링] 스마트폰 센서 데이터 기반 행동 인식 분류 # 1 EDA, 모델링 본문
반응형
프로젝트 개요
- 주제 : 스마트폰 센서 데이터를 활용한 행동 인식
- 데이터 출처 : UCI Machine Learning Repository (https://archive.ics.uci.edu/dataset/240/human+activity+recognition+using+smartphones)
- Tabular (csv)
- 중점 사항
- 561개 Feature 값에 대한 데이터 탐색
- 6개 Class(Laying, Sitting, Standing, Walking, Walking-Up, Walking-Down) 관계를 고려한 모델링
도메인 이해
- 인간 행동 인식(Human Activity Recognition)
- 다양한 센서를 활용하여 사람의 모션에 관련된 정보 수집 및 해석하여 행동 인식
- 센서 신호 → 특징 추출 → 모델 학습 → 행동 추론
데이터 소개
- Subject 컬럼 : 피험자 실벽자 → 삭제
- 데이터 수집 방식
- 가속도 센서 : 일직선으로 움직이는 물체의 선형가속도 측정 (방향 X)
- 자이로스코프 센서 : 회전하는 물체의 각속도 측정 (방향 O)
- 수집 방법 : 2.56초 범위(window), 1.28초 간격으로 이동하며 데이터 샘플링 (sliding window 방식 사용)
- 하나의 센서에서 수집된 신호를 가공방법을 달리하여 집계
- 피처가 561개로 굉장히 많다 ! → 트리 모델을 사용해서 importance features로 변수 중요도 확인한 후 상위 몇 개의 feature만 골라 분석해보기
- 단계별 모델링 → 정적, 동적 동작들 분류해서 단계별 모델링 해보기
- random forest로 중요 피처 뽑아서 분석
- 정적, 동적으로 나눠 비교
- 각 행동여부로 나눠 비교
탐색적 데이터 분석 (EDA)
- 피처 개수가 561개로 매우 많음
- Random Forest로 중요한 피처 몇 개만 뽑아 확인하기
- 6개 클래스를 구분할 때 중요하게 생각되는 상위 5개, 하위 5개 피처 확인
- 그래프 그려서 확인해봤을 때, LAYING만 따로 떨어져있는 경우가 많았음
- 하위 5개 피처를 확인해봤을 때, 정적인 동작과 동적인 동작이 구분되는 경우가 있었음
- 어떤 기준으로 데이터를 확인하느냐에 따라 변수 중요도가 달라질 수 있다!
- 변수 중요도 데이터와 센서 계층 정보 데이터를 결합하여 merged_df 생성
- sensor별, sensor와 agg별 변수 중요도를 확인해봄
- 동적 / 정적 여부, 각 클래스 여부에 따라 위 분석을 똑같이 진행해주었다!
모델링
1) Random Forest
- 피처 중요도를 확인한 후, 상위 100개의 피처만 사용해서 분류했더니 정확도가 더 상승함
- 피처 개수를 조절하면서 어느 정도가 가장 적당한지 확인해보기
- 반복문으로 피처 개수를 조절하며 모델링하고 accuracy를 리스트에 저장
- 지정한 반복횟수가 끝나고 그래프를 그려봤더니 약 20개 이후부터는 정확도가 크게 바뀌지 않음
- 피처 개수를 적당히 30개 정도로 지정하고 다시 모델링을 수행했더니 정확도가 조금 더 상승한 것을 확인할 수 있었음
2) Deep Learning
- 다중 레이어 모델을 하나 생성하고 학습 수행
- 다중 클래스이므로 activation은 softmax로 지정
- 학습 결과 그래프를 그려보았는데 .. 구리다
- 학습한 모든 모델을 비교해보았는데 SVM이 가장 좋은 성능을 보여주었음
- 딥러닝은 성능이 너무 낮게 나옴. 내일 다중 입력 모델 설계하고 성능을 비교해봐야 할 듯
728x90
반응형
'공부' 카테고리의 다른 글
[모델링] 사용자 행동 인식 데이터 멀티 라벨 분류 (0) | 2024.03.30 |
---|---|
[모델링] 스마트폰 센서 데이터 기반 행동 인식 분류 # 2 단계별 모델링 (0) | 2024.03.29 |
[Github] 깃허브 프로필 꾸며보기 (0) | 2024.03.25 |
[빅데이터 분석 환경 구축 #1] AWS EC2 인스턴스 배포 (0) | 2024.03.13 |
[Streamlit] 스트림릿 멀티 페이지 구현하기 (4) | 2023.11.07 |