본문 바로가기

ML

(16)
CNN프로젝트 2 - 3축 가속도/각속도 센서를 이용한 4가지 행동패턴 분류 사실 프로젝트가 끝난 직후 조금 더 분류에 최적화된 데이터셋으로 다시 프로젝트를 도전했었고, 이전에 공부한 이론을 적용하여, 95%가 넘는 결과를 얻어냈다. 원래는 구글 드라이브에 저장해뒀었는데... 곧 저장기한이 만료되어서 아까워서 여기에 보관하기로 결과를 논문으로 작성하고 발표한 자료 (?? 네트워크 에러로 나중에 올려야겠다_ 이번엔 저번 피드백을 토대로 정확도가 높게 나오는 구간에서 조금더 디테일을 주어가며 기록해서 실험했다.
[keras] CNN분류 모델 만들기 6 - 결과 정리&비교 사실 결과가 참고할 만한 결과는 아니다 ppt와 excel파일을 이용해서 결과를 기록하고 정리했는데 ( 엑셀로 정리하지 않으면 정말 헷갈리므로 꼭 이렇게 정리하는 것이 좋다 ) 티스토리에 글로 쓰는 것보다는 파일이 깔끔하고 비교하기에도(깔끔하게 만든 편은 아니지만..) 좋을 것 같아서 일단 결과물로 올린다. 사실 이 실험은 실패했다고 볼 수도 있는데 이것은 나의 첫 딥러닝 프로젝트였고, 잘 정돈된 데이터가 아니라 raw데이터로부터 시작했기 때문에 어느정도 예상했던 실패였다. 그래도 데이터의 중요성과 데이터를 어떤식으로 처리해야하는지 분석은 어떤식으로 해야하는지 딥러닝에서는 데이터별로 결과가 매우 다를 수 있다는 것 등등을 알게되었고 이를 블로그에 정리해보면서 내가 실험때 했던 실수들과 간과했던 부분들을 ..
[keras] CNN분류 모델 만들기 5 - 학습에 필요한 변인 이 실험은 딱히 성공했다고 보기 어렵고 아직 공부가 부족하고, 딥러닝은 데이터에 따라 차이가 크고 아직까지 딱 뭐가 좋다! 라고 정해진게 부족하기 때문에 참고용으로만 보시는 것이 좋을 것 같습니다. (약간 공개하기 부끄럽기도..) 저는 프로젝트 기록 + 복습 으로 작성한 게시글입니다. 우선 분류 모델만들기 4 게시글에서 분석한 것을 토대로 저의 데이터에 맞게 전처리 부분을 바꾸었습니다. import numpy as np import pandas as pd from sklearn.preprocessing import LabelEncoder from sklearn.preprocessing import StandardScaler from sklearn.model_selection import Stratifie..
[keras] CNN분류 모델 만들기 4 - 기본 구조 잡기 데이터의 마지막 전처리 밑 기본 구조는 아래의 사이트를 활용했다 www.kaggle.com/alexanderlazarev/simple-keras-1d-cnn-features-split/notebook Simple Keras 1D CNN + features split Explore and run machine learning code with Kaggle Notebooks | Using data from Leaf Classification www.kaggle.com 정확히는 잘 모르지만 분꽃 ? 붓꽃? 의 종류를 분류하는 모델이다. 예제 코드 분석 위의 사이트에서 가져온 코드는 다음과 같다. 하나하나 분석하면서 알아보도록 한다. import numpy as np import pandas as pd from..
[keras] CNN분류 모델 만들기 3 - Training/Validation/Test set나누기 지난 시간에 우리는 30초 단위로 X,Y,Z데이터를 잘라 한 행으로 만든 후 뒤에 라벨링을 붙였다 결과적으로 960행 , 9000열(+3 label 열)의 데이터를 가지게 되었습니다. 저의 ML 게시글을 보셨는지는 몰라도 데이터는 학습을 위한 학습데이터 과적합 방지를 위한 검증 데이터 최종 모델 테스트를 위한 테스트 데이터 이렇게 3가지가 필요합니다. 자세한 이유 등은 아래의 게시글 2.7 부분을 참고해주시면 됩니다. iagreebut.tistory.com/9?category=794421 [딥러닝의 정석]02. 전방향 신경망 학습 수학이 정말 많이 나온다... 근데... 교수님 피셜 수식을 하나하나 알아야 아는것보단 큰그림 빅 픽 쳐 를 그리는 게 더 중요하다고 하시고 그냥 수식을 하나하나 한번정도 봐두..
[keras] CNN분류 모델 만들기 2 - 데이터 전처리 지난 시간에 데이터를 분석하고 데이터에 대해서 알아보았는데 이번에는 그때 알아낸 것을 토대로 데이터를 적절한 단위로 나누어 보도록 한다. 근데 난.. 딱히 적절하지는 않은 30초를 골랐다 그 이유는 전에 말했듯 그게과제여서 1. 데이터를 30초 단위로 나누고 라벨링하기 데이터 30초 단위로 나누고 라벨링하기 54열의 raw 데이터를 필요한 열인 2열,5,6,7열을 남기고 자른다. 각각 XYZ별로 acitivity 24가지를 분리해서 각각 행동당 30초 단위로 자른 후 라벨링한다 라벨링이란 사용자가 원하는 정보를 붙여서 정리하는건데 activity id는 필수이며, 그 외로 subject number, time stamp 그외 추가 기록할만한 사항들을 기록하면된다. 이렇게 14개의 파일이 따로따로 존재하기..
[keras] CNN 분류 모델 만들기 Keras로 CNN 분류 모델 만들기! 멘땅에 헤딩! 완전 raw데이터를 가져다가 CNN 분류모델 학습까지 한번 해보도록 하자! 나는 이미 프로젝트를 끝냈고 .. 솔직히 말하면 정확도가 높은 모델 도출에 실패했다! 하지만 석/박사님들 말씀을 들어보니 정말 raw한 데이터이기 때문에 당연한 결과라고 하셨다 정말 거의 아무것도 모르는 상태로 매우 간단한 딥러닝책을 반권만 공부하고 프로젝트를 시작했다 pandas / numpy 등등을 하나도 모르고 python도 거의 까먹은 상태에다가 데이터를 만져보는것은 거의 처음이라 정말 막막했다 그래도 결국 어떻게든 결과물을 냈으니 한번 정리해보는 것도 나쁘지 않을 것 같아서 정리해본다 들어가기~ 데이터를 분류하기 위해서는 일단 raw데이터를 받아와 전처리를 해야한다. ..
[Colab]기본설정 + Tensorflow/Keras 버전 Colab은 기본적으로 텐서플로우 버전 2.x 을 사용하고 있습니다. 저는 버전 1.14를 사용해야하므로 버전을 낮춰보도록 하겠습니다. 텐서플로우 이 순서대로 입력하시면됩니다. !pip uninstall tensorflow // Proceed (y/n)? 나오면 y입력 !pip install tensorflow==1.14 //RESTART RUNTIME 클릭 //버전 확인 import tensorflow as tf print(tf.__version__) 현재 깔려있는 버전확인 현재 깔려있는 버전 삭제 1.14버전으로 재설치 런타임 재시작 깔린 버전 확인 케라스 tensorflow 1.14버전은 keras2.2.x 버전과 호환?된다고 하더라고요 지금 아마 코랩은 keras 2.4.x 를 쓰는 것 같은데 한..

728x90