ML & DL

PCA는 Principal Component Analysis의 약자로 주성분 분석, 차원 축소를 진행하는 기법이다. PCA의 목적은 고차원의 정보들을 저차원의 정보로 변환하면서 최대한 손실 없이 변환하는 것이다. 이는 실제로 설명변수가 너무 많으면 머신러닝 알고리즘을 적용할 때 어려움(학습속도, 과적합 등)을 겪기 때문에 이 문제점을 해결하면서 정보손실은 없어야 한다. 우선 고차원의 데이터를 저차원으로 바꾸려면 정사영, Projection을 진행해야 하는데 중요한 점은 어느 벡터에 정사영을 시켜야 기존의 정보를 많이 잃지 않느냐는 것이다. 이를 이해하기 위해 공분산행렬에 대해 알아보자. - 공돌이의 수학 노트- 공분산행렬의 기하학적인 형태에 대해 간단하게 설명해 보면 왼쪽과 같이 원의 형태로 주어져있는 ..
1. Transformer in Computer Vision 이전에 Transformer 글에서 설명했듯이, Computer vision에서도 NLP에서 겪는 문제점과 유사하게 기존의 CNN구조의 모델들은 모두 Long-range dependency의 문제점을 겪고 있었고, attention의 중요성도 알게 되었다. 이러한 것은 기존 CNN구조에서 단순히 receptive field를 늘린다고 해결될 문제가 아니었다. 그래서 아주 단순하게 NLP에서 사용하던 Trasnformer이랑 똑같이, Image의 픽셀을 Token 처럼 사용하고자 했었는데, 기존 attention score을 만들 때 아래 이미지와 같이 토큰*토큰 사이즈의 attention score이 만들어지는데 이미지의 경우 256이라고 하면..
이전에 자연어처리 카테고리에서 Transformer 모델에 대하여 한번 설명했었는데, CV 강의를 들으면서 한번 더 나와서 다시 정리해보도록 하겠다. 0. 배경 Transformer:NLP에서 생기는 문제점을 해결하기 위해 고안된 모델로, 기존 모델들이 sequence data를 처리할 때 데이터를 순차적으로 처리하면서 발생하는 정보손실 즉 `Long-term dependency`를 해결하기 위함. 또한 Next token을 예측할 때 sequence 내의 다른 위치에 있는 정보들과의 상관관계도 매우 중요하고 이를 반영하는 것은 `attention`이다. 즉, Transformer은 Long-term dependency를 해결하고 attention을 도입한 모델이다. CNN의 한계점 Computer Vi..
1. Image Classification 1-1. Confusion Matrix 이전에 분류지표에서도 많이 설명했던 Confusion Matrix에 대하여 다시 짚고 넘어가자. `TP`: 실제 positive인 것을 positive라고 예측 =정답 `FP`: 실제 negative인 것을 positive로 예측= 오답 `FN`: 실제 positive인 것을 negative로 예측 = 오답 `TN`: 실제 negative인 것을 negative로 예측 = 정답 1-2. 평가지표 즉 앞에 T/F는 맞혔는지 틀렸는지를 의미, 뒤에 P/N은 무엇으로 예측하였는지를 의미 `Accuracy`: 전체 데이터에 대하여 올바르게 예측된 데이터의 비율 $$ \text{Accuracy} = \frac{TP + TN}{TP ..
1. FCN FCN은 Fully Convolutional Network로, 기존 CNN 구조의 모델들은 Spatial이 작아진 feature map들을 fully connected layer을 이용하여 결과를 출력했다. 그러나 fully connected layer을 통과시킨 것을 다시 원래대로 돌릴 수 없기 때문에 다른 형태의 convolutional 구조로 만들어 픽셀 단위의 예측을 할 수 있게 만들었다. 2. convolution FCN의 backbone(encoder)은 기존 구조와 동일하게 Convolution layers를 이용하여 Feature을 추출한다. 3. Deconvolution 이렇게 추출된 feature map을 확장하여 입력 이미지와 동일한 크기의 segmentation map을..
이번에는 여러 Image segmentation 중 semantic segmentation에 대하여 조금 더 자세하게 알아볼 것이다. 1. Sliding Window 이미지를 sliding window로 옮겨가면서 각 window를 CNN에 넣어 해당 window의 중심에 그 class를 할당하자! (원래는 각 픽셀별로 하는 것이 맞지만 각 픽셀은 너무 작아 특징을 포함할 수 없기 때문에 주변을 같이 인식하고 클래스만 각 픽셀에 부여) -> 매 픽셀마다 클래스를 예측할 때 sliding window의 크기만큼의 작은 정보만을 줄 수 있기 때문에 해당 window 밖의 정보를 반영할 수 없음 -> 매 픽셀마다 window 크기를 보는데, 모든 픽셀에 대하여 수행하므로 중복 연산 과정을 수행한다. 2. Si..
창빵맨
'ML & DL' 카테고리의 글 목록