1. Seeing the world in 3D perspective 1-1 Why is 3D important? - 우리가 3D세상에 살고있기 때문이다. - AR/VR, 3D printing, mediacl application, 단백질, 뉴런, 우리의 몸속 세포 등 1-2 The way we observe 3D - 3D물체를 2D로 잘 그리려고 노력해왔음 - 사진은 3D를 2D로 projection한다. Triangulation: 2D이미지가 2개있으면 3D로 복원이 가능하다. 이때 3D 지점을 3D pioint라고한다. 1-3 3D data representation 3d 데이터가 어떻게 저장되는지 1. multi-view image: 여러각도에서 2D사진을 촬영하여 저장 2. volumetric(v..
Image captioning은 이미지를 입력하여, 이미지를 가장 잘 설명하는 문장을 출력하는 task입니다. Encoder 부분 - pretrained된 모델을 불러와서 poolling과 linear를 제거하여 사용 Decoder 부분 - 스타트토큰이 디코더에 들어가고 - 이전에 출력된 정보와 attention정보(어디를 봐야하는지)를 input으로 넣어서 사용 - RNN은 굉장히 많은 word class를 가진 classification이다 이런 classification을 사용하면 'a'라는 값보다 더 나은 값이여도 이미 앞단계에서 버렸기때문에 아쉬운 상황이 발생한다 그럴 때 사용하는게 Beam search 기술이다 Bean Search는 top 1이아닌 top k개를 골라서 사용한다. 처음 3개의..
한타입의 데이터가 아니라 다른 특성을 가진 데이터 타입들을 같이 활용하는 학습법 ex) 텍스트, 사운드같은 데이터를 함께 사용 서로 다른 데이터타입, 자료구조를 사용 1. Overview of multi-modal learning - unimodal: 단일 도메인을 사용 - multimodal: 두개이상의 도메인을 사용 1) Challenge - Different representations between modalities - 오디오는 waveform - image는 3d array - text는 word의 임베딩벡터 2) Challenge - 서로다른 modality에서 오는 정보의 양의 unbalance하고 feature space도 unbalance하다 3) Challenge - training이..
기존의 Generative Model은 랜덤하게 샘플링해서 생성 할수는 있었지만, 조작할 수는 없었다. 생성이 더 유용하게 쓰이려면 유저의 의도를 반영할 수 있어야 하는데 이런 방식을 Conditional Gan이라한다. 1. Conditional Generative Model 1-1 CGAN의 응용 사례 - vision task외에도 low quality의 audio를 high quality의 audio로 변환해주는 GAN - 중국어를 영어로 번역해주는 GAN - Title과 Subtitle만 주고 Article을 만들어내는 GAN GAN 1-2 CGAN - GAN과 거의 유사하지만 c라는 input이 추가됨 (입력이 달라짐) - Image-to-Image translation을 통해 Style tra..
Semantic Segmentation과 ObjectDetection보다 더 유용한 Instance Segmentation, Panoptic Segmentation이 더 유용함 1.Instance segmentation 1-1 Mask R-CNN RoIAlign을 사용 Faster R-CNN + Mask branch 기존 Fast R-CNN과 유사한 class+box부분에서 class가 무엇인지를 나타내는 값을 바운딩 박스마다 mask branch의 14*14*80에게 전달해서 어떤클래스인지를 확인한다 1-2 YOLACT(You Only Look At CoefficienTs) One-stage detect protonet은적당한 수로 생성하고, 합성될 수 있는 재료를 제공한다 prediction head..
AutoGrad(Automatic Gradient) automatic differentiation을 활용한 딥러닝 라이브러리 backward를 쉽게 구현하기 위한 Computational graph를 통해 어떻게 연산되었는지 history를 다 가지고있다. requires_grad 해당 변수에 gradient를 저장할 수 있게끔 만든다. 그래서 x.grad를 호출할 수 있다. x = torch.randn(2, requires_grad=False) y = x * 3 gradients = torch.tensor(\[100, 0.1\], dtype=torch.float) y.backward(gradients) print(x.grad) ->> 에러 이유: requires\_grad = False로 지정하면 ba..
CNN은 blackbox이기 때문에 왜 학습이 잘 안되는지 보기가 힘들다. CNN내부를 보고 시각화 한다는 것은 debugging tools를 갖는것과 같은의미다 Visualizing CNN 1-1. ZFNet ZFNet은 2013년 imagenet 대회에서 우승함으로 cnn을 시각화하는것이 눈을 호강하기 위함이 아닌 실질적으로 유의미한 작업이라고 판별받음 1-2. Filter weight visualization - Low level feature 2차원부터는 필터수가 많아져서 사람이 보기 힘들다 visualization을 하는것은 사람의 눈으로 보는거기때문에 뒷쪽 레이어는더 추상적합성이된다. 1-3. visualization type 크게 왼쪽으로 이동하는건 모델에대하여 분석, 오른쪽으로 이동하는건 ..
Object Detection은 Classification과 bounding box를 더한것이다. Object Detection 종류 panoptic, instance segmentation은 instance또한 분류한다 Object Detector Single(One) Stage와 Two Stage Detector로 나누어져있다. 1.Two-Stage Detector Selective Search 다양한 물체 후보군에 대해서 영역을 특정해서 제안해준다. (바운딩박스를 제안) 영상을 비슷한 색끼리 잘게 분할한다. 분할한 영역을 비슷한(색 혹은 그레디언트의 특징,분포등)영역끼리 묶고 합쳐주는것을 반복한다. 이 영역을 포함한 바운딩박스를 추출하여 사용한다. 1) R-CNN 영상으로 selective sear..