본문 바로가기

Programmer Jinyo/Machine Learning

(25)
딥러닝 Normalization 관련 배경 지식들 모음 covariate (공변량) 공변량이라는 변수는 독립변수라기 보다는 하나의 개념으로서 여러 변수들이 공통적으로 함께 공유하고 있는 변량을 뜻한다. 예를 들어서, 우리가 뉴럴 네트워크에 평균 0 분산 1로 규격화 된 분산을 넣어주는 것 같은 행위는 연구자가 통제하고자 하는 변수로써 이를 공변량이라 한다. 그렇다면 공변량 변화는 무엇일까? 입출력 규칙은 훈련시와 테스트시에 다르지 않지만 입력 (공변량) 의 분포가 훈련시와 test시에 다른 상황을 공변량 변화라고 부른다. (변량은 분산이랑 같은 말이고 variance임을 헷갈리지 말자. 다만 covariance 와 covarate는 다른거니까 영문 표기... 화이팅..) internal covariate shift (ICS) Back-propagation에 ..
머신러닝 관련 기본 통계 지식들 정리 머신러닝 관련 기본적인 지식들이 먼가 개념을 제대로 정리할 필요성이 있어서 한번 싹 요약해볼라고 한다. 용어들을 듣고있자면 순간 아;; 긴가민가 이게 뭐더라 싶어서 정리한다. + ) 사족을 달자면 고1때 한번 쓰러지고 나서부터 계속 이렇게 빡 빡 정리해놓지 않으면 디테일한 부분에서의 기억력이 다 날아가버리기 때문에 더 신경쓰고 살아야겠다고 생각해서 ^_^.... (ratsgo 님 블로그 참고 많이..했고 포스트 너무 잘 보고있씁니다 감사합니다..) 1. Maximum Likelihood Estimation (최대 우도 추정) 최대 우도 추정이란 모수(parameter)가 미지의 θ확률분포에서 뽑은 표본 (관측한 결과) x를 바탕으로 를 추정하는 기법이다. 여기서 우도(likelihood)란 이미 주어진 ..
머신러닝 하면서 데이터 갖고놀기 연습하기 좋은 링크 https://dandyrilla.github.io/2017-08-12/pandas-10min/#ch12 Pandas 기본 사용법 익히기 Pandas 의 기본 사용법을 소개해 놓은 ‘10 Minutes to pandas’ 문서를 따라서 실습해 보고 한글로 번역해 놓은 글입니다. dandyrilla.github.io http://pythonstudy.xyz/python/article/407-Matplotlib-%EC%B0%A8%ED%8A%B8-%ED%94%8C%EB%A1%AF-%EA%B7%B8%EB%A6%AC%EA%B8%B0 예제로 배우는 파이썬 프로그래밍 - Matplotlib 차트/플롯 그리기 1. Matplotlib 개요 Matplotlib는 파이썬에서 데이타를 차트나 플롯(Plot)으로 그려주는 라..
추천 알고리즘 공부에 있어서 알아둬야 할 것들 정리. Terms http://hoondongkim.blogspot.com/2019/03/recommendation-trend.html (https://ratsgo.github.io/machine%20learning/2017/04/08/apriori/ 참고함) 임의의 규칙을 만들어 낸다고 하자. 어떤 아이템 A를 산 사람이 B를 살 확률 같은 것을 만들어 낸다고 할 때, 그 규칙이 어떤 것이든지 다음의 지도(support), 신뢰도(confidence), 향상도(lift) 라는 세 가지 지표가 중요하다. 지지도 : A가 일어났을 때 B가 일어났다면 (A->B) 위의 가정을 얼마만큼 중요한 지표로(?) 생각해야 하는가? 에 대한 지표. support(A) = P(A) 라고 한다. 신뢰도 : A와 B의 연관성에 대..
Yolo V3 + Pytorch로 자동차 번호판 라벨링 & object detection 해보기 COCO 데이터 셋 등이 아닌 직접 모은 데이터셋으로 object detection을 진행해보자! 자동차 번호판의 숫자들을 한번 맞춰보도록 하자. yolo / pytorch 환경으로 진행한다. (이 글에서는 Yolo의 내용은 다루고 있지 않다. 궁금하다면2019/01/31 - [Programmer Jinyo/Machine Learning] - Yolo 논문 정리 및 Pytorch 코드 구현, 분석 01 ( You Only Look Once: Unified, Real-Time Object Detection )포스트를 참고하자. 코드 구현은 완성하지 못했지만 이론적 설명은 마친 글이다) 이미지 데이터셋 만들기 https://github.com/tzutalin/labelImg 이미지 라벨링을 도와주는 툴이다...
Yolo 논문 정리 및 Pytorch 코드 구현, 분석 02 ( You Only Look Once: Unified, Real-Time Object Detection ) 2019/01/31 - [Programmer Jinyo/Machine Learning] - Yolo 논문 정리 및 Pytorch 코드 구현, 분석 01 ( You Only Look Once: Unified, Real-Time Object Detection ) 이 포스트는 위 포스트에서 이어지는 글이다. 이제 본격적으로 darknet 의 class를 정의 해 보자. 이전 글에서 언급했듯, 우리는 nn.Module class를 이용하여 PyTorch에서 custom architectures를 만든다. darknet.py에 아래의 class를 추가하자. class Darknet(nn.Module): def __init__(self, cfgfile): super(Darknet, self).__init__() s..
Yolo 논문 정리 및 Pytorch 코드 구현, 분석 01 ( You Only Look Once: Unified, Real-Time Object Detection ) Yolo 논문을 공부해야 할 일이 생겨서, 공부 하는 김에 내용과 코드 정리까지 하자는 성실한 마음으로 이 글을 쓰기 시작하기로 했다. * 유감스럽게도 이 글은 아직 완성되지 못했습니다... 배경 Object Detection이란 머신러닝에서 한 사진 안에 어떤 물체들이 등장하는지에 대한 것을 판별해주는 Task를 말한다. 그리고 Yolo는 Object Detection을 보다 효율적으로 수행하는 방법을 소개한다. 이 글은 전반적인 YOLO 논문에서 다루는 내용을 그대로 번역(....) 수준으로 적어낼 것이므로 다른 정리된 글들보다는 다 읽은 후 명확한 이해를 할 수 있게 되길 기대한다. Yolo는 기존의 방법들과 달리 Object detection을 이미지 픽셀 좌표에 대응되는 bounding box을..
쉽게 쓴 GAN ( Generative Adversarial Nets ) 내용 및 수식 정리 + 여러 GAN 들 GAN은 새로운 데이터(사진이라던가, 그림이라던가 하는)를 만들어내는 것을 목적으로 설계된 머신러닝 모델이다. 기본적인 구조는 두개의 적대적인 (서로 싸우는) 네트워크를 훈련시켜서 이것을 구현하도록 되어있는데, D : discriminative model (식별하는 모델) 과 G : generative model (생성하는 모델) 이 그 두 모델이다. (앞으로 D와 G라고 부르겠다) 일단 학습에 필요한 데이터는, 생성하려는 것들의 샘플인데, 이를테면 사진 같은 것들이다. 이 때 , G 는 데이터의 분포를 보고 그럴듯한 새로운 데이터를 만들어내고, D는 실제 데이터인지 아니면 만들어진 데이터인지 알아맞춘다. 이렇게 G : 속이는 모델 , D : 속지 않기 위한 모델 이 한 쌍이 되어서 서로 minmax t..