반응형
스파르타 코딩클럽 내일배움캠프 AI 웹개발자양성과정 3회차
2022.10.21. 36일차 - TIL
프로젝트 개요
- 프로젝트 제목 : U & Dog
- 팀원 구성 : 정태희(팀장), 정유준, 송창주, 이승연
- 프로젝트 목표 : 사용자가 강아지 사진을 업로드하면 품종과 설명을 보여주는 웹페이지
- 기본 기능
- 이미지 업로드 기능
- 업로드된 강아지 이미지 품종 구분(43종)
- 추가 기능
- 회원가입, 로그인, 로그아웃 기능
- 품종에 대한 설명 보여주기
- 사용자 게시글 업로드 기능
- 품종 별 사용자 업로드한 사진 보여주기
진행과정
- 첫번째, Kaggle에서 강아지 품종 dataset을 가지고 직접 모델링해 학습 시키기
- 💡 acc가 너무 떨어짐.. epoch을 많이 해주면 해결될 것 같은데 한 epoch 당 최소 25분 걸림… 다른 개발자들이 짜놓은 notebook을 보니 최소 100번은 하던데…;;; 그리고 너무 개 품종 종류가 많았음… 이 방법은 FAIL…
- 두번째, 다른 개발자가 만들어 놓은 model 가져와서 사용하기
- 💡 vscode에 적용하려니 tensorflow 버전을 맞추어 설치해야 하는데 kaggle에 올라와있는 건 대부분 tensorflow 버전을 안 적어 놓음… 그래서 pytorch에서 가져와 사용하려 했더니 모델이 없음… 이 방법도 FAIL
- 세번째, 주제를 간단히 해 사진에서 개와 고양이를 구분하는 프로그램 만들기
- 💡 튜터님 특강을 바탕으로 yolov5을 이용해 구현 완료.. 다시 내용을 복습할 수 있는 기회여서 좋았지만 그래도 기존 주제에 대한 미련이 남는 상황… 일단 KEEP
- 네번째, Teachable Machine을 사용해 모델 만들기
- 💡 구글이 만든 머신러닝 홈페이지인데 43종의 강아지 사진을 넣어 학습시켜서 기존 주제를 지킬 수 있었음… 이 방법이 기존의 주제를 할 수 있었기 때문에 이 방법으로 가기로 결정함… 하지만 그냥 머신러닝 기계에 사진 데이터셋을 넣어 학습시키는 것이라 작동 원리를 이해할 수 없었고, 그냥 가져다 사용한다는 느낌이었기 때문에 아쉬움이 남았음..
- 시연영상 : https://youtu.be/r1UTovfv-dA
Good & Weak
😀Good
- 문제 상황에 대비해 여러가지 방안들을 마련해 놓기
- 팀원 간 활발한 소통
- 오류 다같이 고민하기
- 기능 우선순위 정하기
- 장고 기능 다같이 구현하기
- 팀원들과 코드 리뷰하기
- .env를 통해 settings에서 secret key 처리를 통해 보안 유지
- 생동감 있는 프론트 엔드 구현
😧Weak
- 깃 헙 활용 부족
- 추가적인 장고 기능 부족
- 머신러닝에 대한 이해도 다소 부족
- 데이터를 백엔드로 처리하지 못해 프론트 코드가 복잡함
🤔How to
- 역할 분담 구체화
- 깃 헙 이슈 기능 활용 및 트러블 이슈 정리 등 깃 헙에 기록 열심히 남기기
- 처음 화면설계 시 대략적인 기능 순서 생각해보기
- 머신러닝 원격강의, 특강 복습하기
- 데이터를 백엔드 처리할 것
느낀점
- 정태희
- 💡 이번 프로젝트는 너무 어려웠다. 머신러닝 원격 강의를 보고 하나도 이해를 못한 상황에서 이상호 튜터님이 특강 해주신 yolov5를 더 알아보려고 해도 너무 어려웠었다. 그러던 중 그나마 유튜브로 Teachable Machine를 활용하는 방법을 알게 되어서 이번 프로젝트를 할 수 있게 되었다.. 정말 너무 어렵다 머신러닝은 모델을 vscode로 연동시키는 법을 도저히 모르겠다. 정신 부여잡느라 힘들었다. django 백엔드가 그나마 쉽고 재미있다는 것을 느꼈다.
- 정유준
- 💡 머신러닝 과정을 진행하면서 느낀 점은 세상에는 너무 많은 버그와 오류가 존재한다는 점 이였다. 다른 사람들이 다 만들어 놓은 모델을 가져다 쓰는 것조차 어려워하는 나를 보며 좌절감을 많이 느꼈고, 그래도 많은 시도와 실패들이 경험이 되어서 추후에 비슷한 문제가 발생했을 때, 도움이 될 거라고 생각한다. 머신러닝보다는 백엔드와 프론트엔드 부분이 더 재미있긴 하지만, 약 3일 이라는 시간 동안 팀원들과 함께 머리를 싸메고 여러가지 방법을 찾고 시도해보면서 협업다운 협업을 해본 것 같다 뿌듯했다.
- 송창주
- 💡 모든 조원들이 yolo, keras 등을 활용해 머신러닝과 django과 연동하는 법을 몰라 다들 어려움을 많이 겪었다. 계속 진행되는 프로젝트에 추가되는 코드들에 대한 이해가 안되니 소통에 참여할 수 없었는데 팀원들은 이해도가 부족해도 문제를 해결하려고 꾸준히 노력해서 결과를 만들어내는 의지가 대단하다고 느꼈다. 구글링을 해봐도 포스트에 적힌 내용이 이해가 되지 않는 경우가 많은데 하나하나 여유를 가지고 파고드는 모습이 필요할 거 같다. 현재 장고 실력이 걸음마 수준이라고 생각드는데 다음 장고 클론코딩전까지 복습하여 다음 프로젝트때 제 역할을 해내고 싶다. 또 여전히 머신러닝에 대해 이해가 부족한데 딥러닝 프로젝트때는 어떤 점이 더 심화될까하는 생각이 들었다.
- 이승연
- 💡 이번 프로젝트 정말 다사다난했다. 원래 목표로 했던 기능이 잘 되지 않아 직접 모델링을 했다가 좌절하고(acc이 너무 안 좋아 포기했다.. 지금 보면 epoch이 부족한 거였을 지도...), 다른 사람이 모델링 한 것을 가져다 vscode에서 적용하지 못해 다시 한번 더 좌절하고(tensorflow 버전... 그리고 pytorch에 모델이 올라와있지 않아서...), 난이도를 조절하기 위해 목표를 바꾸면서 또 좌절했다.(다행이 이 부분은 완성을 해 자신감이 조금 붙었다..) 그러다 한 팀원분이 원래 목표로 하셨던 기능을 완료하셔서 이번 프로젝트를 완성할 수 있었다. 하지만 일단 내가 직접 머신러닝 모델을 가져와 사용하지 못했다는 아쉬움이 많이 남아 향후 머신러닝 모델링과 모델 적용을 공부하기로 했다.
반응형
'개발일지 > AI 캠프' 카테고리의 다른 글
내일배움캠프 AI - 37일차 TIL, 2022.10.24 (0) | 2022.10.25 |
---|---|
내일배움캠프 AI - 8주차 WIL (0) | 2022.10.23 |
내일배움캠프 AI - 35일차 TIL, 2022.10.20 (0) | 2022.10.21 |
내일배움캠프 AI - 34일차 TIL, 2022.10.19 (0) | 2022.10.20 |
내일배움캠프 AI - 33일차 TIL, 2022.10.18 (0) | 2022.10.19 |