1. 이미지 데이터 인식 실습
이번 시간에는 이미지 데이터에 대해 학습하였다.
"teachable machine" 사이트를 통해 이미지, 음성, 행동 인식을 간단하게 실습할 수 있으며, 이를 코드로 변환할 수도 있다.
각자 인식하고 싶은 이미지들을 수집해 모델에 학습시킨 후 결과를 보기로 하였다.
나는 "반려견 목줄 인식이 가능한가"에 대해 목줄을 착용한 강아지와 미착용한 강아지의 사진을 수집하여 모델에 학습시켰다. 그리고 그 결과 생각보다 인식이 잘 되는 것을 알 수 있었다. (주제에 대한 내용은 학교 컴퓨터 비전 수업에서 개인 프로젝트로 진행하기로 한 주제라 자세한 이야기는 나중에 풀어보겠다.)
그리고 모델을 코드로 변환시켜 colab에서도 실시해보았다.
수업 시간에 이미지 데이터를 수집한 것이기 때문에 데이터의 수는 30장밖에 되지 않았다. 이와 같이 데이터의 수가 현저히 적을 때에는 (1) 크기 변형 (2) 밀기 (3) 뒤집기 (4) 블러 (5) 감마 계수 등의 방법으로 복제하여 데이터셋으로 사용할 수 있다.
수업 관련 실습 코드들은 페이지 하단에 있는 깃허브 페이지에 있다.
2. 따릉이 데이터 예측
저번 시간에 "날씨, 시간 별 따릉이 대여 수 분석 및 시각화"를 주제로 1 week 프로젝트(2인 1조)를 진행하였다.
2020년 7월 ~ 2021년 5월 따릉이 대여 이력(시간별), 날씨 데이터를 약 8000개 수집하여 전처리를 진행하였다.
그리고 오늘은 데이터 시각화와 예측 모델 만드는 것을 도전해보았다.
(1) 데이터 시각화
여의도를 중심으로 따릉이 관련 데이터 시각화와 이를 통해 알 수 있는 정보를 정리하였다.
시각화는 역할을 나눠 나는 1년치 따릉이에 대한 정보를 시각화하였고, 팀원분은 시간별 따릉이와 따릉이 관련 정보(지역별 대여량 순위, 나이대별 대여량 순위, 대여소 별 대여량)를 시각화하였다.
(1) 시간별 대여량: 출근 시간인 8시와 퇴근 시간인 16시~18시 이용수가 급격히 증가하였음을 알 수 있다.

(2) 요일별 대여량: 일주일 중 토요일과 일요일에 대여수가 다른 날들에 비해 적은 것을 알 수 있다.

(3) 주중, 주말 시간에 따른 대여량: 주중의 경우, 출근시간과 퇴근시간에 대여수의 급격한 상향선을 볼 수 있었고, 주말의 경우, 점심시간이 지난 4시에 급격한 상향선을 볼 수 있다.

(4) 1년치 일별 따릉이 대여수: 봄과 가을의 따릉이 대여수가 많은 것을 알 수 있다.

(5) 시간별 온도와 대여수의 관계: 온도의 기울기에 따라 대여수도 비례하는 것을 알 수 있다. 그러므로 겨울의 대여수가 가장 적은 것을 볼 수 있다.

(6) 시간별 강수와 대여수의 관계: 강수의 기울기와 대여수가 반비례하는 것을 알 수 있다.

(7) 시간별 풍속과 대여수의 관계: 풍속이 강한 날의 대여수가 적은 것을 알 수 있다.

(8) 시간별 습도와 대여수의 관계: 습도가 높은 날의 대여수가 적은 것을 알 수 있다.

(9) 시간별 적설량과 대여수의 관계: 적설량이 많은 날의 대여수가 현저히 적어진 것을 알 수 있다.

위와 같은 시각화를 통해 시간과 대여수, 날씨와 대여수 간 연관성을 찾을 수 있었다.
그리고 이를 이용해 시간, 날씨에 따른 따릉이 대여수 예측 모델을 만들어보기로 하였다.
(2) 따릉이 예측 모델
데이터마다 적합한 모델의 종류가 다르기 때문에 여러 모델을 이용해 보고 정확도가 가장 높은 모델을 주로 사용하기로 결정하였다.
그래서 나는 kNN, SVM 모델을 학습시켰고, 팀원분은 Linear Logistic 모델을 학습시켰다.
이때 x는 날씨 또는 시간 데이터이며, y는 대여수이다.
예측 관련 코드들은 깃허브에 업로드 해놨다.(오늘 너무 고단했다...)
- 결과
: 3가지의 모델을 학습시킨 결과 놀랍게도 정확도가 4%밖에 나오지 않았다,,, 주어진 시간 안에 이것저것 수정해보았지만 정확도가 오르지 않아 아쉬웠다.
그래서 원인을 알아보고자 하였다.
- 고찰
결과가 나온 것에 대한 원인을 2가지 측면에서 생각해보았다.
- 데이터 측면
1) 데이터의 수가 부족하여 학습이 잘 안 되었다.
2) 이상치로 인해 데이터 학습이 안되었다.
3) 피처들의 변화 정도가 크지 않아 학습 시 머신러닝이 뚜렷한 차이를 발견하지 못했다.
4) 시간, 날씨와 대여수의 연관성보다 더 중요한 연관성을 가진 피처가 있을 수 있다.
- 그 외
1) 2020년 전동킥보드의 폭발적인 증가로 따릉이 대여수를 예측할 수 있는 추세가 무너졌을 수 있다.
2) 코로나19의 발생으로 인해 따릉이 대여수를 예측할 수 있는 추세가 무너졌을 수 있다.
3) 따릉이 이용자가 반납을 잘못한 경우 3시간을 이용했음에도 반납이 되지 않고 시간이 계속 카운트되어 12시간을 이용했다고 기록될 수 있다. 이것이 반영된 데이터의 경우 이상치가 발생할 수 있다.
3. 데이터 분석의 활용
(기업 입장)
- 사람들의 이용수가 많은 출근, 퇴근 시간에 거치된 따릉이 수를 늘려 많은 사람들이 따릉이를 이용할 수 있도록 한다.
- 비가 오거나, 기온이 낮거나, 바람이 많이 부는 날에는 이용 수가 적기 때문에 따릉이의 보수를 실시한다.(따릉이 점검 날을 비 오는 날, 추운 날, 바람이 많이 부는 날로 정한다.)
(사용자 입장)
- 사람들이 따릉이를 많이 이용하는 시간을 파악하고 미리 이용할 수 있다.
- Github
https://github.com/jini11/Data_Analysis/tree/main/11.13
'Data Analysis' 카테고리의 다른 글
| [데이터분석 6차] 네이버 챗봇 실습1, 따릉이 예측 모델 (0) | 2021.11.24 |
|---|---|
| [데이터분석 5차] 네이버 AI API 실습, 따릉이 예측 모델 (0) | 2021.11.21 |
| [데이터분석 4차] 네이버 AI API 활용, 프로젝트 주제 선정 (0) | 2021.11.17 |
| [데이터분석 2차] 데이터 전처리, 따릉이 데이터 분석 (0) | 2021.11.10 |
| [데이터 분석 1차] 회고 (0) | 2021.11.07 |