본문 바로가기
카테고리 없음

KT aivle AI 트랙 7주차 후기

by 하랑별 2024. 4. 30.
  • 미니프로젝트 3차
  • CV: 시각지능 딥러닝
 

 


미니프로젝트 3차

미니프로젝트 3차는 스마트폰 센서 데이터 기반 모션 분류 모델로 정적 및 동적 활동을 분류 머신러닝, 딥러닝을 활용하여 프로젝트를 진행하는 과정이었습니다. 

 


EDA

 

1. 환경 설정

  • 라이브러리: 데이터 조작을 위한 Pandas, 수치 연산을 위한 Numpy, 시각화를 위한 Matplotlib 및 Seaborn과 같은 필요한  라이브러리

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns

2 . 데이터 로딩

  • 데이터 로드: 여러 축을 통한 가속도 및 자이로스코픽 데이터를 포함하는 데이터 프레임으로 센서 데이터를 로드

data = pd.read_csv('')
features = pd.read_csv('')

3. 데이터 개요

  • 초기 검사: 데이터 세트의 형태, 유형 및 요약 통계를 확인하 센서 데이터의 분포, 규모 이해

print(data.describe())
print(data.info()) ..

4. 피처 중요도 분석

  • 랜덤 포레스트 모델: 활동 유형을 예측하는 데 각 피처가 얼마나 기여하는지를 평가하기 위해 랜덤 포레스트 분류기를 사용
  • 시각화: 피처 중요도를 플롯 하여 모델의 예측력에 가장 크게 기여하는 피처를 식별

목표 변수 확인하기

 


 

모델링

  1. 데이터 전처리:
    • 가변수화, 데이터 분할
    • NaN 값 확인 및 처리
    • 데이터 스케일링 
  2. 모델 생성:
    • 다양한 알고리즘을 적용하여 최소 4개 이상의 모델을 생성
    • 생성된 모델의 성능 비교
    • 변수 중요도를 기반으로 상위 N개의 변수를 선정하여 모델링 수행
  1. 데이터 전처리:
    • 가변수화, 데이터 분할
    • NaN 값 확인 및 처리
    • 데이터 스케일링 (필요시)
  2. 모델 생성:
    • 다양한 알고리즘을 적용하여 최소 4개 이상의 모델을 생성
    • 생성된 모델의 성능 비교
    • 변수 중요도를 기반으로 상위 N개의 변수를 선정하여 모델링 수행

알고리즘별 피처 중요도를 계산하고 정리

 

모델 별 성능

 

 


 

cv

 

다양한 텍스트의 모양의 글자 이미지를 갖고 있는 notMNIST 데이터셋을 활용한 이미지 분류 진행을 학습을 시작으로 CV에 대해 학습을 진행했습니다. 


notMNIST 데이터셋을 활용한 이미지 분류

  • 데이터셋 소개: notMNIST는 다양한 글꼴에서 추출한 알파벳 이미지를 포함하는 데이터셋으로, 각 이미지는 A부터 J까지의 10개 클래스 중 하나에 속합니다. 이 데이터셋은 전통적인 MNIST 데이터셋의 대안으로 알려져 있다고 합니다

데이터 전처리

  • 이미지 및 레이블 처리: 로드된 데이터에서 이미지와 레이블을 추출, 각 이미지는 28x28 픽셀 크기이며, 이미지 데이터는 학습에 적합하도록 전처리 과정을 진행했습니다.
  • 데이터 분할: 이미지와 레이블 데이터를 학습 세트와 검증 세트로 분할합니다. 일반적으로 데이터의 80%를 학습에 사용하고 20%는 모델의 성능을 검증하는 데 사용합니다.

모델 구축 및 훈련

  • 신경망 구성: Keras 라이브러리를 사용하여 신경망을 구성합니다. 이 네트워크는 여러 층을 포함하여 이미지에서 패턴을 학습하도록 설계됩니다. 모델은 컴파일 후, 학습 데이터를 사용하여 훈련되며, 조기 종료 기법을 사용하여 과적합을 방지합니다.

평가 및 시각화

  • 모델 평가: 검증 데이터셋을 사용하여 학습된 모델을 평가합니다. 모델의 정확도와 손실을 측정하여 성능을 평가하고, 잘못 분류된 이미지를 시각적으로 검토하여 모델의 예측을 확인합니다.