CS 공부/AI
-
CNN Visualization (결과 분석 기법)CS 공부/AI 2023. 4. 3. 20:17
CNN Visualization이란? CNN은 블랙박스 방식이다 결과는 인간과 유사하게 또는 원하는대로 도출할 수 있지만 무엇을 근거로 그러한 결과가 나왔는지 알 수 없다 1. Feature analysis (모델의 특징 분석) Embedding Feature 분석 방법 (High Layer 해석) Nearest neighbors(NN) in feature space 단순한 픽셀 비교가 아니라 컨셉을 이해해서 물체의 위치변화에도 강함 query image와 비슷한 이미지를 DB에서 찾아서 나열하면 의미론적으로 유사한 이미지들끼리 모이게 됨 특징과 유사한 이미지들을 묶어서 return 전체적인 이미지 파악은 어려움 Dimensionality reduction 3차원 이상의 고차원의 분포를 저차원으로 차원축..
-
📌 Two-stage detector(R-CNN)과 Single-stage detector(YOLO,SSD)CS 공부/AI 2023. 3. 31. 21:17
Object detection Semantic segmentation: 객체 종류만 구분 Instance segmentation과 Panoptic segmentation: 각각의 객체도 서로 구분 가능 (P_class, x_min, y_min, x_max, y_max) : Classification + Box loacalization 자율주행, OCR 기술에 사용됨 Two-stage와 Single-stage로 구분됨 Two-stage detector 초기의 방법들 Gradient-based detector: 이미지/영상에서 각도에 따라 경계선 따서 객체 탐지 Selective search Over-segmentation: 영상을 비슷한 색끼리 작게 분할 작게 분할된 영역들을 비슷한 색/ gradient끼..
-
Semantic segmantation 모델: FCN, U-Net, DeepLabCS 공부/AI 2023. 3. 30. 04:24
Semantic segmantation란? 이미지의 픽셀 단위로 class 구분 의료 이미지, 자율주행, 컴퓨터 사진 기술에 활용 Fully Convolutional Networks (FCN) Semantic Segmentation 모델을 위해 기존 image classification에서 우수한 성능을 보인 CNN 기반 모델(AlexNet, VGG16, GoogLeNet)을 변형시킨 구조 호환성이 높음 Convolution Layer를 통해 Feature 추출 1x1 Convolution Layer를 이용해 피처맵의 채널 수를 데이터셋 class 개수와 같게함 (Class Presence Heat Map 추출) Up-sampling: 낮은 해상도의 Heat Map을 Upsampling한 뒤, 입력 이미..
-
GoogleNet, ResNetCS 공부/AI 2023. 3. 28. 22:14
네트워크를 깊게 쌓는 것이 항상 좋은 것은 아님! 기울기 소실, 계산 복잡도 상승, degradation 문제가 있음! GoogleNet (2015) 모든 fillter 출력을 수평으로 연결 (concatenate) 하지만 이렇게 되면 계산 복잡도와 용량이 커져서 1x1 convolution을 적용하여 압축 (채널 수 조절, 계산량 감소) architecture vanilla convolution networks(stem region) stacked inception modules auxiliary classifiers 기울기 손실을 막기위해 중간중간에 넣어줌 하위 layers에 gradient 주입 train할때만 사용하고 test시에는 사용 안함 classifire output (FC layer 한개..
-
Annotation data efficient learningCS 공부/AI 2023. 3. 28. 20:41
Data augmentation 카메라로 찍은 사진들(편향됨) ≠ 실제 데이터 편향된 데이터가 문제인 이유? 만약에 밝은 데이터로만 훈련을 시킨다면 테스트 이미지로 어두운 사진이 주어졌을 때 모델은 헷갈림,,~ 데이터셋이 실제 데이터 분포를 대표하지는 않는다 ∴ 따라서 train 데이터와 실제 데이터 분포와의 gap을 줄이기 위해 사용 하는 것이 data augmentation Data augmentation 종류 Brightness (밝기) 조절 def brightness_augmentation(img): img[:,:,0]=img[:,:,0] + 100 # R값에 +100 img[:,:,1]=img[:,:,1] + 100 # G값에 +100 img[:,:,2]=img[:,:,2] + 100 # B값에..
-
AlexNet과 VGGNet (feat. CNN)CS 공부/AI 2023. 3. 28. 18:27
Computer Vision이란? 전체 지식 중 75%는 눈을 통해 들어온다 카메라를 통해 어떤 물체를 포착하면 GPU에 올리고 알고리즘을 사용해 정보를 뽑아냄 Inverse Rendering 과정 Visual perception의 종류 color perception motion perception 3D perception semantic-level perception emotion perception visuomotor perception 등 Image Classification 1. 모든 분류 문제는 k-NN 알고리즘으로 해결할 수 있다 k Nearest Neighors 알고리즘: 주변의 가장 가까운 K개의 데이터를 보고 데이터가 속할 그룹을 판단하는 알고리즘 하지만 세상의 모든 데이터를 다 가지고 ..
-
Latent variable model (GAN, Diffusion model)CS 공부/AI 2023. 3. 24. 19:01
Maximum Likelihood Learning 훈련 세트가 주어지면, 우리는 generative model 학습 과정을 모델 계열에서 가장 근사적인 밀도 모델을 찾는 것으로 생각할 수 있다 그렇다면 approximation이 우수하다는 것을 어떻게 측정할까? KL-divergence (쿨백-라이블러 발산) 두 확률 분포 사이의 거리 (근사적으로,,엄밀히는 아님) 두 분포의 차이: p와 q의 cross entropy에서 p의 엔트로피를 뺀 값 거리의 개념은 아님- 두 확률분포 사이의 거리라면 p-q 사이의 거리나 q-p 사이의 거리나 같아야 함 KL-divergence를 최소화하는 것은 likelihood를 최대화하는 것과 같다 -> likelihood를 최대화하는 방향으로 학습하기! 경험적 log-l..
-
Auto-regressive modelCS 공부/AI 2023. 3. 23. 00:49
생성 모델이란? (Generative Models) 주어진 학습데이터를 학습하여 학습 데이터의 분포를 따르는 유사한 데이터를 생성하는 모델 ex. 강아지 사진이 주어졌다고 하자 확률분포 p(x) -> implicit model이라고도 부름 Generation: 새로운 강아지 사진이 주어졌을 때 강아지 같아야 한다 Density estimation: 개와 비슷하면 p(x) 값이 높고, 안 비슷하면 낮아야 한다 확률분포 p(x)를 표현하기 위해 알아야할 Discrete Distributions(이산분포) Bernoulli distribution (베르누이 분포): 동전 뒤집기와 같음, 경우의 수가 두가지 ex. RGB 이미지의 픽셀 하나를 modeling하려면 (0~255) 한개의 픽셀이 가질 수 있는 색의..