본문 바로가기

ML, DL51

[Classification] Cross entropy의 이해, 사용 방법(Categorical, Binary, Focal loss) 이 글에서는 여러 가지 클래스를 분류하는 Classification 문제에서, Cross entropy를 사용하는 방법와 원리를 알아봅니다. 1. Tasks 우선, 두가지 문제를 봅시다. 1-1) Multi-Class Classfication 각 샘플(이미지)은 클래스 C 중 하나로 분류될 수 있습니다. 해는 0번, 즉 [1 0 0] (원핫인코딩), 달은 1번, [0 1 0], 구름은 2번, [0 0 1] 으로 분류될 수 있다는 말입니다. CNN은 s(scores) 벡터를 출력하고, one hot 벡터인 타겟(ground truth) 벡터 t와 매칭이 되어 loss값을 계산할 것입니다. 즉, Multi-Class Classification은 여러 샘플(이미지)에서 C개의 클래스 중 하나의 클래스로 분류하.. 2019. 8. 1.
[MMDetection] 논문 정리 및 모델 구현 Abstract MMDetection은, object detection과 instance segmentation을 다루는 유명하고 다양한 모델을 하나의 toolbox로 구현한 일종의 플랫폼이다. 많은 사람들이 사용하여, 기존 디텍션 모델을 다양한 분야에 응용하고, 새로운 모델을 만드는데 도움이 되었으면 한다고 한다. 소스 코드, pytorch로 작성되어 있다 https://github.com/open-mmlab/mmdetection 1. Introduction 주요 특징은 크게 네가지이다. 1) Modular design 모델이 모듈화 되어있어 사용자 제작이 간편하다. 2) Supported Framwork 독창적으로 여러 프레임워크를 지원한다. 2번 본문 참고 3) High efficiency 모든 b.. 2019. 7. 28.
[Instance Segmentation] Train code def train_model train_set = Dataset(train_dataset, ...) train_generator = torch.utils.data.DataLoader(train_set, batch_size=1, shuffle=True, num_workers=4) # val_set = # val_generator = # Train optimizer = optim.SGD(params_dict, lr, momentum) for epoch in range(self.epoch+1, epochs+1): record log # Training loss, loss_rpn_class, loss_rpn_bbox, loss_mrcnn_class, los_mrcnn_bbox, loss_mrcnn_mask = .. 2019. 7. 25.
[jupyter notebook] 테마설정 깔끔하고 밝은 화면을 가진 주피터 노트북의 테마는, 장시간 사용하다보면, 눈이 아파지는 경우가 옵니다. 또는 사용자에 따라 검은 화면이나, 다른 사용자 맞춤 화면을 원할 수 있는데요, 주피터 노트북 테마 라이브러리는 이 수요를 충족해줍니다. 1. jupyterthemes 설치 $ pip install jupyterthemes 2. 여러 테마 확인하기 및 테마 바꾸기 (리스트 확인) $ jt -l Available Themes: chesterish grade3 gruvboxd gruvboxl monokai oceans16 onedork solarizedd solarizedl (테마 변경) $ jt -t chesterish 위와 같이 하시면 다음 이미지와 같은 테마로 바뀝니다. 3. 사용자 정의 테마 [ht.. 2019. 7. 25.
COCO dataset Microsoft COCO: Common Objects in Context, ECCV 2014 논문 참고, https://arxiv.org/pdf/1405.0312.pdf COCO dataset COCO dataset은 여러 일상 이미지들의 집합이고, 2017년 공개된 데이터 셋 기준으로, train2017 (19G) val2017 (788M) test2017 (6.3G) annotations (808M) 의 데이터를 제공하고 있습니다. 또한 328,000 장의 이미지와, 250만개의 label이 있습니다. COCO dataset은 여기에서 다운로드 가능합니다. coco dataset download Annotations 용도에 맞는 annotation을 가지고 있습니다. 그 종류로는 Object det.. 2019. 7. 23.
[Ubuntu] - [Conda] 가상환경을 이용하는 방식은 여러가지가 있지만, 이번에는 conda를 설명하겠습니다. 사실 다른 깃헙의 모델을 이용하려다가, 환경설정이 안 맞아서 거기 있는 그대로 하려다가 찾아보게 되었습니다.. 1. 아나콘다 최신버전을 받는다. 이 글에서 제시되는 최신버전은 이 글이 게시되는 19.07.22 기준입니다. https://www.anaconda.com/distribution/ linux버전으로 받아주세요. 이것을 다운받으셔서 myfolder (사용자가 원하는 폴더)에 이동시켜주세요. 또는 아예 처음부터 CLI로 해봅시다. $ cd /myfolder $ curl -O https://repo.anaconda.com/archive/Anaconda3-2019.03-Linux-x86_64.sh 2. 아나콘다 Scri.. 2019. 7. 22.
[Ubuntu] - [python] - [virtualenv] 환경설정 목표 - ubuntu에서 python버전별로 (2.7, 3,6) virtualenv(가상환경) 설정하기 Linux (ubuntu) 환경 ubuntu 16.04 LTS 이후 버전은 운영체제에 기본적으로 python 2.7과 python 3.5(ubuntu 18.04는 python3.6)이 깔려있다. 아래와 같이 터미널에 명령어를 입력하여 직접 눈으로 확인해보자. 참고로 필자는 리눅스 ubuntu 18.04 LTS 버전에서 작업하였다. $ python -V Python 2.7.15+ $ python3 -V Python 3.6.8 -V 대신 --version을 입력해도 된다. python 환경에 맞추어서 pip도 두 가지 버전으로 나뉘어져 있다. pip은 여러 python 라이브러리를 다운 받을 때 사용한다... 2019. 7. 19.
The Open Images Dataset V4, Kuznetsova, Google AI, 2018 Abstract 9.2M 개의 이미지 19.8k개의 concept에 대한 3천10만개의 이미지-레벨 레이블 600개의 object class에 대한 1천5백4십만개의 bounding box 57개의 class에 대한 visual relationship 표기가 3십만7500개 이다. 이 데이터들은 image classification, object detection, visual relationship detection 영역의 발전에 사용되기를 바라고 있다. 1. Introduction 이미지 소개 2. Dataset Acquisition and Annotation 2.1 Image Acquisition 2.2 Classes 2.3 Image-Level Lables 이미지를 분류하는 것은 시간도 많이 걸리.. 2019. 7. 18.
GAN Generative Adversial Network Generator 생성자는 랜덤 벡터 'z'를 입력으로 받아 가짜 이미지를 출력하는 함수다. z는 균등분포(Uniform Distribution)나 정규분포(Normal Distribution)에서 무작위로 추출된 값이다. 생성자는 이렇게 단순한 분포를 사람 얼굴 이미지와 같은 복잡한 분포로 매핑(mapping)하는 함수이다. 생성자 모델에 충분한 수의 매개 변수가 있다면 어떤 복잡한 분포도 근사할 수 있다고 알려져 있다. z 벡터(latent vector)가 존재하는 공간을 잠재 공간(latent space)라 한다. **Discriminator** 구분자는 생성자가 만들어낸 fake image를 입력으로 받아 이미지가 진짜인지 가짜인지 출력한다. D.. 2019. 7. 16.
Mask-RCNN Facebok AI Research (FAIR), Kaiming He, 24 Jan 2018 Marr Prize at ICCV 2017 Abstract object instance segmentation 을 위한 프레임워크. 학습이 쉽고 Faster R-CNN에 조금의 overhead만 추가해서 5 fps의 빠르기 정도로 실행된다. COCO 셋에서 instance segmentation, bbox object detection, person keypoint detection 에서 가장 높은 결과를 보였다. 1. Introduction instance segmentation은 두 가지 과제를 합친 것이다. object detection : bbox를 이용하여 object를 분류하고, 위치를 찾는 것. se.. 2019. 7. 16.
728x90