6주차는 4, 5 주차 총 2주에 걸쳐 배운 머신러닝, 딥러닝을 이용하여 문제를 해결해보는 2차 미니프로젝트를 진행하는 주 이다. 2주간 배운 내용들이 ML, DL의 기본적인 내용이라고 할 지언정 AI개발이 처음인 나에겐 ML, DL이 머릿 속에서 정리되어 있지 않아서 걱정이 앞선다. 적어도 팀원에게 민폐를 끼치지 말고 일 인분만 하자가 목표이다. 1차 미니프로젝트 때 AI 개발을 해봤고 자신감이 넘치는 에이블러 분들이 보였다. 그 분들을 보면서 우수 에이블러로 수료한다거나 본사에 입사는 희박하다는 것을 진작에 느꼈다. 그렇지만 내 직무를 선택하기 위해 과정이라고 생각하며 최선을 다하여 에이블 스쿨에 임하고 있다. 설령 지금은 실력이 부족할지라도 내 속도대로, 내 페이스대로 꾸준히 준비한다면 충분히 가능성 있다고 생각한다.
2차 미니프로젝트 1일차
공공데이터를 가지고 미세먼지 농도를 예측 모델을 만들어 보았다. 오전에는 프로젝트 설명, 데이터셋 설명 등 강사님의 기본적인 설명이 있었고, 개인적으로 미세먼지 예측 모델을 위해 데이터 셋을 불러오고 전처리하고 다양한 모델을 사용하여 모델링도 하는 시간을 가졌다. 오후에는 각자 진행한 것들을 팀원들과 의견을 나누고 ppt제작, 그리고 조별 발표 순서로 이루어졌다.
사실상 모델링은 그렇게 오랜 시간을 투자하지 않았다. 결측치를 어떻게 처리할 것인지 등 데이터 전처리가 대부분의 시간을 차지하였다. 실제로 팀원분들도 데이터 전처리에 시간을 가장 오래썼다고 했다. 어떻게 결측치 처리를 했는지, 중요 변수를 어떻게 설정하여 모델링 했는지에 따라 성능도 팀원마다 다 달랐다. 실제로 몇 시간만에 데이터 전처리, 모델링을 하고 팀원들과 의견을 나누고 ppt 제작가지 해야해서 시간이 절대적으로 부족했고 발표도 선착순으로 신청하여 발표를 진행했기 때문에 ppt 제작도 못한 팀도 수두룩 했었던 것 같았다. 우리 팀도 거의 마감 시간에 다 되어서야 겨우겨우 ppt를 완성 시켰다. 우리 조는 아쉽게도 발표는 하지 못 했지만 다른 팀원들이 어떻게 데이터 전처리를 하고 예측 모델을 만들었는지 발표를 보면서 다시 한 번 동기부여가 되는 날이었다.
2차 미니프로젝트 2일차
악성사이트 탐지
Beautifulsoup으로 html 요소를 추출하는 실습을 진행하였다. html을 겉핥기 식으로 배운게 전부이고 Beautifulsoup도 처음 배운 내용이라 많이 헤맸다. 내 실력 부족이기 때문에 열심히 코드를 이해하고 따라가려고 노력했다.
오후에는 악성 사이트 탐지 머신러닝 모델 개발을 개인 프로젝트로 진행하였다. 데이터를 불러오고 데이터 전처리 후 단변량 분석, 다변랑 분석까지 진행하였다. 아마 내일 조별 프로젝트가 있으니 오늘 각자 해본 분석 데이터를 가지고 조원끼리 의견 나누고 모델링까지 해볼 것 같다.
2차 미니프로젝트 3일차
새로운 조원분들과 KT 분당 본사 교육장에서 대면으로 조별 프로젝트를 진행하였다. 어제 예측대로 각자 데이터 분석을 해온 것을 토대로 의견을 조율 한 뒤 모델링을 하는 것 이었다. 다만 kaggle에 제출해서 등수가 나온다는 것이었다. 첫 kaggle이라 같은 조원분께 kaggle 사용법을 배워 RandomForest GridSearchCV 모델링한 결과를 제출하였다. 90%의 정확도가 나왔다. 괜찮은 성능이라고 생각했지만 다른 조들도 제출을 하기 시작하더니 결국 뒤에서 2등했다.... 무슨 모델을 써도 90%를 넘기지를 못 하였다. 오후에는 조별 발표가 있었는데 상위 등수의 조의 발표를 듣고 문제점을 파악할 수 있었다. x_test 데이터 셋에 결측치가 많았는데 이 결측치를 채워줘야 했다. 나는 결측치를 평균 값으로 채워줬기 때문에 당연히 성능이 좋게 나올 수 가 없었던 것이다. 결측치 채우는 방법으로는 KNNImputer 라이브러리를 사용하면 됐다. 구글링 조금만 해봤으면 중간 등수는 되었을텐데 정말 많이 아쉬웠다. 하지만 많은 모델을 써보고 조원들끼리 다양한 시도를 많이 해봤다는 점에서 나름 뿌듯한(?) 미니프로젝트였다.