Week13 Day63

오늘은 강의가 없다. Done EDA Dataset 구현 DeconvNet 구현 2021-04-27 강의 정리 모델에 입력하기 위한 Dataset class와 DeconvNet을 구현했다. 사실 Dataset은 주어진 데이터의 형식이 이전에는 경험하지 못한, 복잡한 형태라서 baseline 코드를 거의 사용했다. DeconvNet은 daily mission이기도 한데, backbone model로 VGG16을 사용했다. 구조는 세 부분으로 나눌 수 있는데, encoder, FCN, decoder 이다. encoder는 주어진 이미지의 feature map을 추출하며 사이즈를 줄이면서 전반적인 ...

더보기

Week13 Day62

Done backbone model로 VGG16을 이용하여 DeconvNet을 구현했다. dummy data로 224x224x3을 입력으로 넣어 출력 차원이 동일함을 확인했다. 그러나 아직 학습은 못했다. 구현하다 보니 다른 backbone model에 적용할 수 있도록 만들고 싶었는데 backbone에 따라 DeconvNet의 구현이 바뀌어야 할 것 같다. backbone model을 입력으로 하면 DeconvNet을 만들고 싶은데 쉽지 않을 것 같다. 일단 VGG16만 적용가능하도록 구현했다. coco format을 따르며 주어진 데이터가 어떻게 생겼는지, 어떤 정보를 가지는지 파악했다. 처음 봤을 때 상당히...

더보기

Week13 Day61

semantic segmentation 이전 글에서 많은 내용을 배웠다. 여기서는 이전에 다루지 못한 내용을 적을 것이다. upsampling 이미지에서 downsampling은 입력의 사이즈를 줄이는 것을 말한다. 예를 들어 14x14 이미지를 2x2 pooling layer로 7x7로 줄일 수 있다. convolutional layer에 stride를 2로 해도 역시 사이즈를 줄일 수 있다. 반대로 upsampling은 입력 사이즈를 늘리는 것을 말한다. 1 위 이미지는 upsampling을 설명하고 있다. 여기서는 4x4 행렬이 입력이고 6x6 행렬이 출력이며 3x3 kernel을 사용하고 있다. 입력 행...

더보기

Week12 Weekend

정말 오랜만에 주말 후기를 적는다. P stage 진행하는 동안 학습정리를 꾸준히 못했다. 그럴 수 밖에(?) 없는 것이, U stage는 강의 듣고 내용정리하면 되지만 P stage는 강의 듣고 대회 참여하고 학습 정리까지 해야 된다. 대회를 진행하면서 U stage에서 못했던 코딩을 여기서 다하는 것 같다. 하루에 이걸 하면서 많은 시간을 소비하니까 그날 강의 정리를 거의 못한다. 밤 새면서 코딩해도 모자르다(밤 낮이 바뀌었다)… 이제 프로젝트 2개를 수행했는데 조금씩 적응하기 시작했다. U stage와 다른 생활 패턴이라 첫 프로젝트는 적응하기 힘들었다. 앞으로 어떻게 남은 프로젝트를 보낼지 대략 파악했다....

더보기

Week11 Day51

turing test 1950년 앨런 튜링에 의해 개발된 튜링 테스트는 인간의 것과 동등하거나 구별할 수 없는 지능적인 행동을 보여주는 기계의 능력에 대한 테스트다. 튜링은 인간 평가자가 인간과 같은 반응을 일으키도록 설계된 기계 사이의 자연 언어 대화를 판단할 것을 제안했다. 평가자는 대화의 두 파트너 중 한 명이 기계라는 것을 알고 모든 참가자는 서로 분리될 것이다. 대화는 컴퓨터 키보드와 화면과 같은 텍스트 전용 채널로 제한되어, 그 결과는 단어를 연설로 렌더링하는 기계의 능력에 좌우되지 않을 것이다. 평가자가 기계와 인간을 확실하게 구분할 수 없는 경우, 그 기계는 시험에 합격했다고 볼수있다. 시험 결...

더보기

Week10 Day47

여태까지 주어진 이미지로 18개의 class로 분류하는 모델을 만들었다. 학습이 잘 안되서 모든 과정을 처음부터 다시 하기로 생각했다. assumption 학습 데이터로 2700명의 사진이 있고 각 사람마다 7개의 사진, 마스크 착용 5장, 미착용 1장, 오착용 1장,이 주어졌다. 분류할 것은 사진을 보고 성별, 나이대(~30세 미만, 30세 이상 60세 미만, 60세 이상), 착용, 미착용, 오착용이다. 미착용 사진은 마스크를 착용하지 않은 사진을 말하며 마스크 착용에 따라 정상적으로 착용, 오착용이 된다. 여기서 내가 세운 가정은 우리는 어떤 인물의 사진을 볼 때 성별과 나이대를 구분하기 쉬울 것이다. 이다...

더보기

Week10 Day46

retrospective 지난 주 회고해보면 모델의 성능이 너무 낮았다. 먼저, 다른 사람들은 efficientNet을 사용했다. 나는 torchvision에서 제공하는 모델 중 ResNet, ShuffleNetV2, MNASNet을 사용해보며 어떤 모델이 좋은지 확인했다. 하지만 평가를 할 수 없을 정도로 성능이 모두 낮았다. 심지어 학습 데이터에 대해 accuracy와 f1 score가 1을 달성하지 못했다. 즉, 모델이 학습 데이터를 완전히 학습하지도 못했다. 그래서 머리가 복잡해져서 금, 토요일 키보드에서 손을 놨다. 여태까지 내가 한 것을 정리하면 다음과 같다. model ...

더보기

Week09 Day44

daily mission accuray와 f1 score를 계산하고 log에 기록하도록 구현했다. accuracy만으로 모델을 평가하기 어렵다. daily mission이 더 있는데 하지 못해서 to do로 남겨 두겠다. Done resnet, shufflenet, MNASNet 학습 epoch: 50 kfold: 5, age를 3개의 class로 나누고 이에 따라 나누었다. inception_v3는 (299, 299) 이상 크기를 입력으로 받아서 사용하지 못했다. transform 사용하기 centercrop, randomcro...

더보기