728x90
1. Edge Detection이란?
Edge란 영상에서 픽셀의 밝기 값이 급격하게 변하는 부분입니다. 일반적으로 배경과 객체 또는 객체와 객체의 경계를 의미합니다. Edge detection은 영상을 $(x, y)$ 변수의 함수로 간주하였을 때, 함수의 1차 미분 값이 크게 나타나는 부분을 검출합니다.
2. ResNet과 Residual Learning이란?
ResNet은 딥러닝 모델의 깊이가 깊어질수록 발생하는 gradient vanishing문제를 해결하기 위해 개발된 모델입니다. residual learning은 입력을 출력에 직접 더함으로써 네트워크가 학습해야 하는 목표를 residual function으로 변경합니다. 이 방식은 깊은 네트워크에서도 안정적으로 학습을 가능케합니다.
3. Convolution 연산의 종류와 개념?
Deformable convolution: 표준 convolution에 유연성을 추가해 입력 특징 맵 내의 각 컨볼루션 핵의 위치를 학습 가능하게 함으로써, 더 복잡한 형태의 데이터를 효율적으로 처리할 수 있습니다. Depth-wise Separable Convolution은 표준 컨볼루션을 깊이 방향의 컨볼루션과 점별 컨볼루션으로 분리하여 파라미터 수와 연산량을 대폭 줄입니다. 이는 모바일 네트워크에서 널리 사용됩니다. Graph Convolution은 그래프 구조 데이터를 위한 컨볼루션으로, 노드 간의 연결 구조를 고려하여 특징을 추출합니다.
4. Vision Transformer(ViT)란?
Vision Transformer는 Transformer의 원리를 이미지처리에 적용한 논문(모델)입니다. ViT는 이미지를 패치로 나누고, 각 패치를 Transformer 구조의 입력으로 사용합니다. 이 모델은 패치 간의 관계를 학습하며, 주로 이미지 분류 작업에서 사용됩니다. ViT는 CNN과 비교했을 때 더 나은 성능과 더 강력한 전이학습 능력을 보였습니다.
5. Positional Encoding이란?
Positional encoding은 Transformer 모델에서 입력 시퀀스의 순서 정보를 제공하는 방법입니다. 각 위치에 고유한 인코딩을 추가함으로써 모델이 시퀀스의 순서를 인식할 수 있도록 합니다. 이는 주로 사인과 코사인 함수의 주기적 변화를 사용하여 구현됩니다.
6. Self Attention이란?
Self Attention은 Transformer 내에서 사용하는 기법으로, 입력 시퀀스의 각 요소가 시퀀스의 다른 모든 요소와 어떻게 관련되는지를 학습합니다. 이 기법의 핵심은 시퀀스 내의 각 위치가 다른 모든 위치의 정보를 활용하여 새로운 표현을 생성할 수 있습니다.
7. Multi-head Attention이란?
Multi-head Attention은 self-attention의 확장으로 동일한 어텐션 메커니즘을 여러번 병렬로 수행해 서로 다른 표현 공간에서 정보를 동시에 학습합니다. 각 head는 입력 시퀀스에 대해 독립적으로 attention 연산을 수행하며, 각각 다른 관점에서 정보를 집계합니다.
8. R-CNN, Fast R-CNN, Mask R-CNN의 차이점은?
R-CNN은 객체 탐지를 위한 딥러닝 모델입니다. 이미지에서 후보 영역(proposals)을 추출하고 각각의 영역에 대해 CNN을 적용해 특징을 추출한 다음, 추출된 특징을 사용하여 객체 분류와 bounding box 회귀를 수행합니다. R-CNN은 Selective search를 사용하여 이미지 내에서 객체 후보 영역을 찾습니다.
Fast R-CNN은 R-CNN의 단점을 개선한 모델로, 이미지 전체를 한 번에 CNN에 통과시켜 특징 맵을 추출하고, 각 객체 후보 영역에 대해 RoI(Region of interest) 풀링을 사용하여 해당 영역의 특징을 고정된 크기의 작은 특징 맵으로 변환하는 방법입니다. R-CNN보다 모든 영역에 대해 네트워크를 재사용하기 때문에 훨씬 빠릅니다.
Mask R-CNN은 Fast R-CNN을 더 발전시켜 객체의 정확한 픽셀 단위 마스크를 예측할 수 있도록 확장한 모델입니다. Mask R-CNN은 instance segmentation에 유용합니다.
R-CNN과 Fast R-CNN은 object detection에 초점을 맞췄지만, Mask R-CNN은 object detection, instance segmentation 모두 가능합니다.
9. DETR(Detection Transformer)란?
DETR은 객체 검출을 위해 설계된 Transformer 기반 아키텍처입니다. End to End 방식으로 복잡한 후보 영역 추출 단계를 제거하고, 이미지 전체를 입력으로 받아 직접 객체의 bounding box와 분류를 예측합니다. Transformer를 사용하여 encoder에서는 이미지로부터 특징을 추출하고, decoder는 encoder로부터 출력과 이전에 정의된 객체 쿼리들을 결합하여 객체의 존재와 위치, 클래스를 예측합니다.
10. CLIP이란?
CLIP(Contrastive Language–Image Pre-training)은 Image-Text의 관계성을 모델링한 연구입니다. 이미지와 해당 이미지에 대한 설명 Text를 pair로 두고 학습데이터셋으로 구성한 후, 각각을 인코더로 임베딩하여 같은 pair에 대해 거리를 가깝게하고 다른 pair에 대해 거리가 멀어지도록 텍스트/이미지 인코더를 학습시킵니다.
11. Contrastive Learning이란?
Contrastive learning은 Self-supervised representation learning중에서 주목 받은 방법중 하나입니다. Contrastive learning은 유사한 이미지가 저차원 공간에서는 서로 가깝게, 동시에 다른 이미지는 서로 멀리 떨어져있도록 저차원 공간에서 이미지를 인코딩하는 방법을 모델이 학습한 것입니다.
12. SimCLR란?
SimCLR는 Contrastive Learning 방식의 간단하면서도 효과적인 self supervised learning 학습 방법을 제안하였습니다. SimCLR는 self supervised learning을 통해 이미지에서 유용한 특성을 추출할 수 있습니다. 라벨이 없는 데이터에서도 효과적으로 학습이 가능합니다. 또한 SimCLR는 범용성과 확장성이 좋은 방법을 제안하였습니다. SimCLR는 다양한 아키텍처와 쉽게 통합될 수 있습니다. SimCLR는 이미지 특성을 추출하고, 라벨이 없는 데이터에서도 높은 성능을 달성할 수 있는 프레임워크입니다.
13. Dlib란?
이미지 처리, 선형 대수와 다양한 머신러닝 알고리즘을 활용할 수 있는 C++기반의 라이브러리로 파이썬에서도 활용 가능합니다. HOG(Histogram of Oriented Gradients) 특성을 활용하여 얼굴 검출하는 기능이 많이 활용됩니다. "dlib.get_frontal_face_detector()"를 사용하면 기본 얼굴 검출기를 사용할 수 있습니다.
14. Non-local operation이란?
Non-local operation은 컴퓨터 비전에서 고전적인 non-local mean operation을 일반화시킨 것입니다. non local operation은 입력 feature map의 모든 위치에서 feature의 가중치 합으로 각 위치의 반응을 계산합니다. non-local operation은 위치 거리에 관계없이 두 위치 간의 상호작용을 계산하여 직접 장거리 의존성을 포착하며, 다양한 입력 크기를 유지하고 다른 연산과 쉽게 결합될 수 있습니다.
15. Region of proposal Network(RPN)란?
RPN(Region Proposal Network)은 Object Detection에서 핵심역할을 하고 있는 부분입니다. RPN은 Faster R-CNN에서 활용되었는데, Faster R-CNN의 목표는 selective search 없이 RPN을 학습하는 구조로 모델을 만드는 것입니다. RPN은 feature map을 input으로, RP를 output으로 하는 네트워크라고 할 수 있고, selective search의 역할을 온전히 대체합니다. 다양한 사이즈의 이미지를 입력 값으로 object score과 obeject proposal을 출력합니다.
16. One-shot, Few-shot, Zero-shot learning이란?
One-shot learning은 각 클래스에 대해 단 하나의 예시만 제공될 때 모델이 그 클래스를 인식할 수 있도록 하는 학습 방법입니다. 이는 유사도 학습이나 메타 학습 등의 기법을 활용해 구현됩니다. 예로 고양이를 인식하는 모델에게 "스핑크스"라는 새로운 종류의 고양이를 인식하게 하려면, 모델은 이전에 본 적이 없는 스핑크스 고양이 사진 하나만으로도 인식을 수행할 수 있어야합니다.
Few-shot learning은 극소수의 데이터만을 사용해 새로운 작업이나 클래스를 빠르게 학습하도록 설계된 알고리즘을 말합니다. 메타 학습이나 학습 전략의 최적화 등을 통해 적은 데이터로도 효과적인 일반화 성능을 보이게 합니다. 예로, 연구자들이 드문 종류의 식물 사진을 몇 장 확보했을 때, 소수의 이미지만으로도 모델이 새로운 식물종을 인식하고 분류하는 방법을 학습할 수 있게 합니다.
Zero-shot learning은 모델이 학습 과정에서 본 적 없는 새로운 클래스를 인식할 수 있도록 학습합니다. zero-shot learning은 모델이 클래스 간의 관계나 속성을 통해 일반화하는 능력을 활용합니다. 예로, 새로운 클래스에 대한 설명 정보를 입력으로 제공합니다. 이미지 인식에서는 이미지의 특징을 설명하는 텍스트 정보를 사용해 이전에 본적 없는 이미지라도 해석이 가능케 합니다.
17. Knowledge Distillation이란?
Knowledge distillation은 잘 학습된 큰 네트워크(Teacher Network)의 지식을 작은 네트워크(Student Network)에 전달하는 것입니다. 미리 학습시킨 Teacher network 의 출력을 내가 실제로 사용하고자 하는 작은 모델인 Student network 가 모방하여 학습함으로써, 상대적으로 적은 Parameter 를 가지고 있더라도 모델의 성능을 높이는 방법론입니다.
728x90
반응형
'취업' 카테고리의 다른 글
[데이터분석 과제테스트] 데이터 분석 과제테스트 정리 (0) | 2024.11.08 |
---|---|
[면접준비] 컴퓨터비전 면접준비 - 컴퓨터비전 기본 (0) | 2024.05.13 |
[면접준비] 컴퓨터비전 면접 준비 - 딥러닝 (0) | 2024.05.11 |
[면접준비] 컴퓨터비전 면접 준비 - 머신러닝 (0) | 2024.05.11 |
[면접준비] 컴퓨터비전 면접 준비 - 선형 대수 & 확률 통계 (0) | 2024.05.10 |