본문 바로가기

딥러닝(Deep Learning)/컴퓨터 비전

padding,stride,pooling의 개념(Feat. Same Padding, Valid Padding) 패딩(Padding) : 입력 배열의 주위를 가상의 원소로 채우는 작업. 패딩(Padding)의 목적 : 입력 맵과 출력 맵의 크기를 동일하게 해주기 위함 패딩(Padding)의 종류 : 1] Same Padding, 2] Valid Padding Same Padding : 입력 맵과 출력 맵의 크기를 동일하게 만들기 위해 입력 맵 주위에 0으로 패딩하는 것 Valid Padding : 패딩 없이 순수한 입력 맵 크기에서만 합성곱을 하여 특성 맵을 만드는 경우 Pooling의 Stride 값 : default 값은 Pooling 커널의 크기이다. 예를 들어 2x2 크기의 커널로 Pooling 작업을 한다면, stride 값은 2로 default 세팅이 된다. (위 설명은 매우 간략하다. 아래의 사이트에서.. 더보기
딥러닝(비전) 관련 survey 논문 목록 딥러닝 기반 영상 분할을 전체적으로 다룬 survey 논문 : Minaee2021a딥러닝 기반 의미 분할 survey 논문 : Garcia-Garcia2017,딥러닝 기반 사례 분할 survey 논문 : Gu2022딥러닝 기반 총괄 분할 survey 논문 : Li2022b얼굴 검출 && 인식(Face Verification, Face Identification) survey 논문 : Ranjan2018얼굴 검출(Face Detection) survey 논문 : Minaee2021b얼굴 인식(Face Verification,.. 더보기
정규화의 두 개의 얼굴(Feat Normalization, Regularization) 딥러닝을 공부하다 보면 [정규화]라는 말을 정~~~~~~~~~말 많이 듣는다. 그러나 이 정규화는 사실 2가지의 전혀 다른 개념을 가지고 있다. 그 2가지란 바로 Normalization과 Regularization이다. Normalization, Regularization, 이 2가지 모두 한국어로 [정규화]라고 똑같이 번역이 된 탓에 [정규화]라는 말을 들으면 도대체 어떤 정규화를 말하는 지 매우 헷갈린다. 이번 기회에 정규화의 2가지 개념에 대한 차이점을 분명히 하고자 블로그에 정리를 하였다. Normalization(정규화) 결론부터 말하자면, Normalization은 어떠한 종류 Value들의 분산의 정도를 조절하여 입력 데이터나 중간 레이어의 활성화 값을 조정하여 학습을 안정화시키거나 속도를.. 더보기
정밀도(Precision)과 재현율(Recall)(Feat. mAP, AP, 검출 성능 척도) [컴퓨터 비전과 딥러닝] P 376 中 검출(Detection) 분야에서는 mAP라는 성능 척도를 사용하는데, 이 성능 척도를 계산하기 위해서는 정밀도(Precision)과 재현율(Recall) 계산이 필요하다. 그러나 정밀도(Precision)과 재현율(Recall)에 대한 개념이 헷갈려 이와 같이 블로그에 정리를 해두려고 한다. 결론부터 말을 하면, 정밀도(Precision)은 모델[이] "Positive"라고 예측한 것이 얼마나 정확한 것인지를 계산한 것. (정밀도 = TP/TP+FP) 재현율(Recall)은 실제로 "Positive"인 것들을 얼마나 모델이 잘 맞췄는 지를 계산한 것. 다시 말해, 모델이 얼마나 많은 "예"를 놓치지 않고 찾아냈는지를 나타냅니다. (재현율 = TP/TP+FN) 정밀.. 더보기
미세 분류(Fine-Grained Classification)(Feat. 부류 내 변화[=Intra-Class Variation], 부류 간 변화[=Between-Class Variation]) [컴퓨터 비전과 딥러닝] p 373 中 컴퓨터 비전 분야에서 사례 분류(Instance Classification)은 딥러닝의 컨보루션 신경망이 탄생을 하면서, 정확도 99%를 달 성하며 이제는 완전히 해결되었다. 범주 분류(Categorical Classification)에 대해서는 미세 분류(Fine-Grained Classification) 문제가 어려운 난제로 남아 있 다. 부류 내 변화가 크고, 부류 간 변화가 적은 데이터 셋을 분류하는 문제가 미세 분류(Fine-Grained Classification) 문제이다. 이러한 경우 상대적으로 낮은 정확도를 이루게 된다. ( p 373의 그림 9 -11에 부류 내 변화(Intra-Class Variation)과 부류 간 변화(Between-Class.. 더보기
사례 분류(Instance Classification) VS 범주 분류(Categorical Classification)(Feat. [컴퓨터 비전과 딥러닝] P 363 컴퓨터 비전의 인식(Recognition)의 한 분야인 분류는 사례 분류(Instance Classification)와 범주 분류(Categorical Classification)으로 크게 나뉜다. 사례 분류(Instance Classification)과 범주 분류(Categorical Classification)의 개념이 너무 헷갈려 다음과 같이 블로그에 정 리를한다. 결론부터 말을 하면, 사례 분류(Instance Classification)과 범주 분류(Categorical Classification)의 결정적 차이는 해당 Object의 분류 범위의 크기에 있다. 사례 분류(Instance Classification)은 특정한 물체를 알아내는 것. 범주 분류(Categorical Classifica.. 더보기
주요 데이터 셋 사이트(Feat. data sets, 클라우드 소싱, Mechanical Turk ) - 유명한 데이터 셋 -(컴퓨터 비전과 딥러닝 p 366) 1. Papers with Code 사이트 -> 딥러닝 관련 논문과 소스 코드, 데이터 셋을 제공. 강점으로는 데이터 셋별로 SOTA 성능의 역사적 추세를 그래프고 제시하여 현재 기술 수준을 가늠할 수가 있다. 2. 위키피디아(list of datasets for machine learning research) -> 여섯 그룹으로 구분돼 있고 그룹마다 수십 개의 데이터 셋을 소개한다. 3. tensorflow(http://www.tensorflow.org/datasets.org/datasets/catalog/overview) -> Image, Image classification, Object detection 데이터 셋으로 구분돼 있다. 4. .. 더보기
Class imbalance(클래스 불균형) 상황에서의 Cross-Entropy(GE)의 문제점(Feat. Focal Loss Function, 부류 불균형,focusing parameter, Easy Native, Hard Positive) (아래의 글을 읽기 전에 Object [Detection]에 대한 정확한 의미를 짚어 가자. 1.Object Detction : 여러 Object들을 Bounding Box를 통해 Localization(위치를 찾고)하고, Classification(어떤 물체인지 분류)하는 작업 2. 배경 BBox(Easy - Negative) : 배경에 대한 BBox의 갯수가 압도적으로 많으므로, Detector에 의해 검출되기는 Easy하지만, 출력의 결과는 [오류](=Negative)이다. 3. 객체 BBox(Hard - Negative) : 객체에 대한 BBox는 개수가 매우 적으므로 Dectector에 의해 검출되기 어렵렵고, 출력의 결과는 [정상](=Positive)이다. -> BBox와 같은 Example들.. 더보기