BoostCamp 26

2021.08.31 - [Week 5] Day 2. 8월의 마지막 날

1. 대회 진행 상황 1.1. albumentations 적용 - albumentations 함수 중 21개 augmentation 기법 선택 - HorizontalFlip, GaussianBlur, GaussNoise, CoarseDropout, RandomRain, MotionBlur, OpticalDistortion, RandomFog, RandomGridShuffle, RandomShadow, RandomSunFlare, Sharpen, Superpixels, CLAHE, Cutout, CoarseDropout, Downscale, Emboss, GridDistortion, GridDropout, ImageCompression - 지난 과정에서의 학습 방법을 똑같이 적용하여 생성한 21개 data..

BoostCamp 2021.09.01

2021.08.30 - [Week 5] Day 1. 대회 2주차 시작

1. 대회 진행 상황 1.1. 주말에 train 코드 구현해서 학습 성공 • train set과 validation set을 랜덤하게 8:2 비율로 나누어 학습 • augmentation은 resize만 적용 • F1 score : 0.675, Accuracy : 75.683 1.2. 랜덤 스플릿 적용 • data가 가장 적은 class의 데이터는 83개 • 모든 class에서 83개씩 뽑아 1494개의 data를 가진 train set만들어 학습 • 성능 하락 • F1 score : 0.671, Accuracy : 72.397 1.3. torchvision.transforms 적용 • train set의 data가 적어 여러 가지의 transform을 적용하면서 epoch 학습 • epoch 바깥에 t..

BoostCamp 2021.08.31

2021.08.27 - [Week 4] Day 5. 대회 1주차 마무리

공부한 내용 1. Ensemble 1.1. Ensemble : 앙상블 • 여러 model의 특성을 조합해서 더 좋은 성능의 model을 만드는 방법 • 각 model이 특성을 가지고 있을 때 효과가 있다. • model 사용 시간이 늘어나기 때문에 비효율적 • 정확도가 중요한 분야이거나 competition일 경우 많이 사용 • Deep learning은 일반적으로 overfitting이 발생하는 경향이 있다. • Ensemble 알고리즘 - Random forest : high variance에 적용하는 대표적인 알고리즘 - Begging : data sample 만들고 나누어서 각각 학습한 것을 취합 - Stacking 등 • Model Averaging (Voting) - 일반적인 방식 - 서로 다..

BoostCamp 2021.08.27

2021.08.26 - [Week 4] Day 4. 대회 진행 중 (3)

공부한 내용 1. Training 학습에 필요한 3가지 요소 Loss, Optimizer, Metric -> Training에 직접적인 영향 1.1. Loss • (Error) Backpropagation - loss(error)가 backward 방향으로 다른 노드의 parameter에 update - loss function, class에 따라 달라진다. - loss에 따라 backpropagation에서 parameter update 과정도 달라진다. - loss function == cost function == error function • Loss function도 nn.Module 상속 - loss도 module과 비슷하다. - loss도 forward 함수 존재 - 학습 과정에서 어떻게 연..

BoostCamp 2021.08.27

2021.08.25 - [Week 4] Day 3. 대회 진행 중 (2)

공부한 내용 1. Model 1.1. Model • 정의 : 시스템을 정보로써 표현하는 방식 • 딥러닝의 모델 : 어떤 변환 과정을 통해 원하는 형태의 output을 내는 시스템을 표현하는 방식 • 이미지 : 시각적인 표현의 인공물 • 이미지 분류 모델 : 이미지를 변환하여 원하는 category class로 차원을 바꾸는 시스템 1.2. PyTorch 1.2.1. PyTorch • pythonic하고, training 과정의 요소를 공부하기 좋다. • Low-level - Low-level, pythonic, flexibility, dynamic graph - 수정이 용이하고 실험할 수 있는 것이 많다. - logic 추가가 쉽다. - training process 코드를 통해 training 과정을 ..

BoostCamp 2021.08.27

2021.08.24 - [Week 4] Day 2. 대회 진행 중

벌써 많은 캠퍼분들이 리더보드에 제출하고 계신다. 우리 팀 분들도 다 잘하고 계신 것 같다. 나는 아직 프로그래밍 스킬이나 사용법에 익숙하지 않아 더 연습이 필요하다. 그래서 수업 진도에 맞춰 따라가고 있다. 조급해하지 않는게 집중에도 좋고 정신적으로 안정이 될 것 같다. 공부한 내용 1. Dataset 1.1. Dataset 1.1.1 Dataset • 데이터를 하나씩 내보낼 수 있도록 기능 구현 • Vanilla data는 문제 해결에 바로 사용 불가 • Overview에서 정의한 문제를 바탕으로 데이터를 일반화하는 작업 필요 • 모델은 Dataset을 바탕으로 학습 • EDA를 통해 데이터를 이해하는 것이 먼저 • Data Analysis를 바탕으로 Data Pocessing에서 적용할 수 있는 방..

BoostCamp 2021.08.25

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

첫 번째 프로젝트인 이미지 분류 대회를 시작했다. 생소한 개발 환경이 많아 많이 낯설어 한참을 헤맸다. 많이 연습해서 빨리 적응해야겠다. 공부한 내용 1. Competition with AI Stages 1.1. P Stage • 코드로 많이 연습할 수 있는 기회 • 파이프라인의 전체적인 프로세스 경험 • U Stage에서 배운 내용 재구성 1.2. Competition • 기업에서 데이터를 플랫폼에 제시하여 문제 해결 방법을 제공받을 수 있는 수단 • Kaggle, DACON 등의 competition platform • 다양한 데이터와 다양한 문제의 competition 통해 domain의 일부를 공부할 수 있다. 1.3. Overview • Competition의 목적, 이유, 의미, 대상 등 방향..

BoostCamp 2021.08.23

2021.08.20 - [Week 3] Day 4. -

굉장히 하루를 알차게 보낸 느낌이다. 허투루 보낸 시간이 거의 없었던 것 같다. 멘토님과 같이 논문 리뷰를 했는데 재미있었다. 안그래도 바쁘실텐데 늦은 시간까지 오랫동안 같이 봐주셔서 정말 감사하다. 공부한 내용 1. Multi-GPU 학습 1.1. 개념 • Single vs. Multi : GPU의 수 • Node : 시스템 혹은 컴퓨터 • Single Node Single GPU : 하나의 노드(컴퓨터)에 하나의 GPU • Single Node Multi GPU : 하나의 노드에 여러 개의 GPU • Multi Node Multi GPU : 여러 개의 노드마다 여러 개의 GPU 1.2. Model parallel • 학습 분산 방법 - 모델 병렬화 : 모델 나누기 (e.g. AlexNet) - 데이터..

BoostCamp 2021.08.21

2021.08.19 - [Week 3] Day 3. 긴 밤 지새우고

이번 주는 그래도 조금 재미있어지려고 하는 것 같다. 과제는 많지만 과제하면서 모델과 데이터에 대해 익히고 pytorch 사용법도 조금씩 알게 되면서 적응하려고 하는 단계인 것 같다. 과제하는데 오래 걸려서 밤새기는 했지만 재미있었다. 공부한 내용 1. 모델 불러오기 1.1. 모델 저장 • model.save() - 학습 결과 저장 - Parameter 저장 - 모델 저장시 ordered_dict 사용 - 모델 저장시 .pt 확장자 사용 권장 • load_state_dict - 같은 architecture의 모델에서 parameter만 불러올 때 사용 • torch.save(model) - 모델의 architecture도 함께 저장 - 보통 architecture는 코드로 공유 1.2. Checkpoin..

BoostCamp 2021.08.20

2021.08.18 - [Week 3] Day 2.

비교적 시간 여유가 있는 주가 될 줄 알았지만 전혀 아니다. 오히려 시간이 더 부족하다. 과제 양이 많은 것도 있지만 내용도 나에겐 쉽지 않다. 딥러닝 공부를 더 빨리 시작하지 못한 것이 정말 아쉽고 후회된다. 공부한 내용 1. AutoGrad & Optimizer 1.1. torch.nn.Module • Layer의 base model • Input, Output, Forward 정의 • Backward : AutoGrad 통해 자동으로 계산 • Parameter : 학습 대상 1.2. nn.Parameter • Tensor 객체 상속 • Weight값 저장 • required_grad = True : AutoGrad의 대상 1.3. Backward • Parameter들의 미분 수행 • Loss(y_..

BoostCamp 2021.08.19