출처 : https://techblog.woowahan.com/2553/ 우린 Git-flow를 사용하고 있어요 | 우아한형제들 기술블로그 {{item.name}} 안녕하세요. 우아한형제들 배민프론트개발팀에서 안드로이드 앱 개발을 하고 있는 나동호입니다. 오늘은 저희 안드로이드 파트에서 사용하고 있는 Git 브랜치 전략을 소개하려고 합 techblog.woowahan.com 개발 프로세스 5명이서, 해야할 task 나열 우선순위에 따라 나눠 갖음 필수 작업과 필요할 것 같은 작업을 병렬로 진행 Git-flow 채택 Repositary 구성 각자 원격 Repository 구성 이후 Upstream 원격 저장소에 Pull Request 하는 방식 Ground Rule 커밋 그래프는 단순하게 공유하는 브랜치의..
전체 글
Here I am!GoogLeNet에서 나온 Inception 계통의 Network에서 등장. Chennel 수 조절 행과 열의 크기 변환 없이 Channel의 수를 자유자재로 조절 가능하게됨. 만약, (28 x 28 x 192) 의 인풋을 (28x28x32)로 줄인다면? => (1x1x192) 필터 32개 사용하여 convolution 연산 계산량 감소 Bottleneck 구조 비선형성 Activation을 사용함으로써 비선형성을 더해줄 수 있음. 행과 열, channel 수를 변화시키지 않고 단순히 weight 및 비선형성을 추가하는 역할로 사용할 수 있음. 출처 https://hwiyong.tistory.com/45 1x1 convolution이란, GoogLeNet 즉, 구글에서 발표한 Inception 계통의 N..
의의 Data 개수에 비해 model capacity가 큰 경우, 데이터 자체를 암기해 overfitting이 발생할 우려가 있습니다. 데이터 증강을 통해 데이터셋을 확장시킬 수 있고, 모델이 학습할 수 있는 패턴이 늘어나게 됩니다. 회전, 비틀림, 노이즈 등 현실에서 나타날 수 있는 변형에 대해서도 강인하게 대응할 수 있게 됩니다. 사진을 찍을 때, 같은 장소에서도 각기 다른 각도, 조명, 다른 배경 등으로 다양하게 찍을 수 있습니다. 이렇게 다양하게 찍은 사진을 보면서 사물을 인식하는 능력이 향상되는 것처럼, 데이터 증강은 모델이 데이터를 다양한 방법으로 보게 함으로써 모델의 학습 능력을 향상 시킵니다. 유의 Vision Task 수행에 따라서 유의해야할 점을 알아봐야 한다. 예를 들어, classi..
model.train() v.s. model.eval() model.train() model.eval() Batch Normalization Batch statistics 이용 학습 때 사용된 statistics를 통해 결정된 running statistics 이용 Dropout Layer 주어진 확률에 따라 활성화 비활성화 torch.no_grad() Pytorch의 Autograd Engine 비활성화 # 데코레이터로 사용할 경우 @torch.no_grad() def func without_grad_tracking(): pass # validation 과정에서 사용할 경우 with torch.no_grad() : # Code related to inference torch.Tensor.require_..