딥러닝 4

[개발팁] Multi-label Classification에 쓸만한 전처리 모듈 'MultiLabelBinarizer'

Multi-label Classification problem 캐글에서 진행하고 있는 'Plant Pathology 2021 - FGVC8' competition을 진행하다가 찾게 된 유용한 모듈. Plant Pathology 2021 - FGVC8 Identify the category of foliar diseases in apple trees www.kaggle.com 해당 대회는 Multi-label Image Classification 문제로 사과나무 잎에 어떤 병에 걸렸는지 판별해야 한다. 제공되는 데이터셋의 label을 보면 문자열로 병명을 제공하고 있으며 건강할 경우 'healthy', 병에 걸려있는 경우 병 이름들을 공백으로 구분하여 보여주고 있다. 즉, 두 개 이상의 병에 걸려있는 경우..

[#00] OCR? 딥러닝을 이용해 문자 인식하기 - 개념 정리

OCR - Optical Character Recognition OCR은 사람이 직접 입력하지 않고 스캐너를 통해 이미지 형태로 읽어들여 데이터의 내용을 분석하고 그림 영역과 글자 영역으로 구분한 후 글자 영역의 문자들을 일반 문서 편집기에 수정, 편집이 가능한 텍스트의 형태로 변환하여 주는 자동 입력 시스템이다. 기존에 거울이나 렌즈 등의 광학 기술을 이용한 광학 문자 인식과 스캐너 및 알고리즘에 의한 디지털 문자 인식은 별개의 영역이엇으나 최근 들어서 광학 문자 인식이라는 말이 디지털 문자 인식을 포함하는 것으로 간주되었다. (위키백과) OCR 과정 (Text Detection - Text Recognition) 전처리(pre-processing) - 글자들이 잘 보여질 수 있게 밝기나 색과 같은 영..

Deep Learning/OCR 2021.03.23

[개발팁] torch.nn 과 torch.nn.functional 어느 것을 써야 하나?

파이토치를 쓰다보니 같은 기능에 대해 두 방식(torch.nn, torch.nn.functional)으로 구현 된 것들이 있다. 관련된 글들을 찾아보니 결론은 두 방식 다 같은 결과를 제공해주며 편한 것으로 선택해서 개발하면 된다고 한다. What is the difference between torch.nn and torch.nn.functional? What is the difference between torch.nn and torch.nn.functional? They look like a little same… so, is there any difference between them? discuss.pytorch.org torch.nn.CrossEntropyLoss / torch.nn.funct..

[Label Smoothing] 요약 정리

Label Smoothing논문 1. Label Smoothing? 모델이 Ground Truth(GT)를 정확하게 예측하지 않아도 되게 만들어 주는 것. 모델이 정확하지 않은 학습 데이터셋에 치중되는 경향(overconfident)을 막아 calibration 및 regularization 효과를 가질 수 있다. 2. Why? 보통 학습에 사용되는 데이터셋은 사람이 직접 annotation 하기 때문에 실수의 가능성이 존재하며 100% 정확한 GT 데이터로 생각하면 안된다. 즉, GT데이터가 잘 정제되어 있지 않다면 오분류된 데이터(mislabeled data)가 있을 수 있어 모델이 이를 유하게 학습시키도록 하면 더 효과적이기 때문이다. 3. 정말 좋아? Label smoothing은 mislabel..