BoostCamp

2021.08.23 - [Week 4] Day 1. 대회 시작

배기니어 2021. 8. 23. 23:53

첫 번째 프로젝트인 이미지 분류 대회를 시작했다.

생소한 개발 환경이 많아 많이 낯설어 한참을 헤맸다.

많이 연습해서 빨리 적응해야겠다.

 


공부한 내용

1. Competition with AI Stages

 1.1. P Stage

  • 코드로 많이 연습할 수 있는 기회

  • 파이프라인의 전체적인 프로세스 경험

  • U Stage에서 배운 내용 재구성

 

 1.2. Competition

  • 기업에서 데이터를 플랫폼에 제시하여 문제 해결 방법을 제공받을 수 있는 수단

  • Kaggle, DACON 등의 competition platform

  • 다양한 데이터와 다양한 문제의 competition 통해 domain의 일부를 공부할 수 있다.

 

 1.3. Overview

  • Competition의 목적, 이유, 의미, 대상 등 방향성을 찾기 위한 정보

  • Overview에서 먼저 문제를 정의하는 것이 가장 중요

  • Data Description : data type, columns, field 등 설명

  • 명확한 문제 정의가 다음 단계에서의 의사결정에 도움

  • Overview page에서 충분히 domain understanding 후 다음 단계 진행

 

 1.4. AI Stages 사용법

  • Notebook : Jupyter notebook

  • Leaderboard

  • Discussion : 자료 공유, 의견 공유, 질문, 토의하는 문화를 통해 스스로 성장

 

2. EDA : Exploratory Data Analysis

 2.1. EDA

  • 데이터의 의미, 특징을 이해하고 검증하기 위한 과정

  • 데이터 이해가 이후 여러 과정에 영향

  • 수단을 가리지 않고 데이터를 이해하는 방법

  • 데이터에 대해 궁금한 점을 알아보는 것이 EDA의 목적

  • ML pipeline을 거치면서 막히는 부분에서 EDA 수행 후 아이디어 적용과정 반복

  • 원하는 주제, 명제를 확장해서 데이터 전체에 대해 서술할 수 있도록 연습

 

 2.2. Image Classification

  • 컴퓨터가 이미지(데이터)를 이해하는 방식을 알아야 한다.

  • Input + Model = Output

   - input을 이해해야 모델이 input을 처리하는 전체 과정을 이해할 수 있다.

   - input + model + output = task

  • Image + Classification Model = Class

   - 이미지를 어떻게 효율적으로 모델에 넣을지 고민

  • Baseline

 

3. 타운홀 미팅

 • P Stage 소개

 • 대회 안내

  - 첫째 주 개인 제출, 둘째 주 팀 제출

  - Mask Dataset

  - 평가지표 : F1 score

 • 베이스 캠프

 • Wrap up 리포트

  - 꾸준히 학습 정리 해서 리포트 쉽게 작성할 수 있도록

  - 공통 팀 리포트, 공통 팀 최종 코드, 개인별 회고글

 • AI Stages 사용법

  - 서버 생성

  - ssh 접속

  - 제출 방법

  - 데이터 다운 방법

  - 리더보드 사용법

  - 팀 관리 방법

 

4. 피어세션

 • 모델 구조 논의

  - 나이, 성별, 마스크 착용 여부를 각각 판단하는 3개의 모델 학습 후 통합

  - 나이, 성별, 마스크 착용 여부 3개를 feature로 사용하고, 0~17 class로 분류하는 한 개의 모델

 • 이미지 폴더에서 파일 이름 앞에 '._'로 시작하는 파일명

  - 무슨 파일인지 잘 모르겠다.

 • vscode로 ssh 접속 시 패스워드 입력창 문제 해결

  - key 파일을 './Users/user_name/.ssh'에 복사

  - key 파일 경로 수정

  - key 파일 경로 구분자를 '/', '\', '\\' 중 하나로 수정

  - 권한 설정

 

5. 대회 환경에 익숙해지기

 • 서버 생성 후 key 값을 제대로 확인하지 않아 vscode 연동에서 한참 헤맸다.

 • Jupyter notebook으로 작업하는데 GPU를 사용하는지 확인하려고 시도했지만 방법을 잘 모르겠다.

 • Train data labeling 작업을 위한 클래스 작성 중

  - Class : Labeling

   ‣ attribute : train data의 directory path, dataframe, columns, features, file path, 라벨링된 dataframe

   ‣ _get_public_file_list : '._'로 시작하지 않는 파일의 리스트 반환

   ‣ _check_mask : 마스크 착용 여부 확인

   ‣ _labeling : pass

   ‣ labeling : pass

   ‣ mask_csv_file : pass