일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- semi supervised learnin 가정
- CGAN
- shrinkmatch
- conjugate pseudo label paper
- WGAN
- UnderstandingDeepLearning
- adamatch paper
- dann paper
- cifar100-c
- 최린컴퓨터구조
- CoMatch
- Meta Pseudo Labels
- Pseudo Label
- shrinkmatch paper
- Entropy Minimization
- mme paper
- simclrv2
- BYOL
- 컴퓨터구조
- CycleGAN
- 딥러닝손실함수
- dcgan
- SSL
- ConMatch
- GAN
- Pix2Pix
- mocov3
- 백준 알고리즘
- tent paper
- remixmatch paper
- Today
- Total
목록머신러닝 (10)
Hello Computer Vision
2-1-1. What is probability? 코인 토스에 대한 확률을 말할 때 50%라고 말하기 쉽다. 그러나 확률은 2가지 관점으로 말할 수 있다. 하나는 frequentist 적인 해석이다. 이러한 관점으로 볼 때 확률은 사건에서의 long run frequencies를 나타낸다. 두번째 관점은 Bayesian 으로 보는 것이다. 이러한 관점에서 우리는 확률을 uncertainty 를 수량화할 수 있다. 그러므로 이것은 단순히 반복되는 시도들 보다는 정보들과 근본적으로 연결되어 있다(단순히 frequency 관점으로 보는 것보다 Bayesian 관점으로 보는 것이 더 유용하다는 것을 말하는 거 같다). 예를 들어 우리가 만약 남극의 얼음이 2030년에 다 녹는다는 것을 확률로 생각해보았을 때 이..
1-1. What is machine Learning? 컴퓨터 프로그램은 경험(E)을 통해 무언가의 태스크(T)를 학습하고 어느 정도의 성과(P)를 내게 되는데 T에 대한 성과 P를 E를 통해 향상시켜간다. 따라서 이 세상에는 T에 따른 많은 머신러닝 방법들이 있다. 여기서는 많은 종류의 ML을 커버하지만 probabilistic 관점(perspective)에서 다룬다. 이러한 관점으로 다루는 이유는 첫번째로 불확실성 속의 의사결정을 하는데 가장 최적의 접근이며 확률적 접근은 과학과 엔지니어링 분야에의 언어라고 할 수 있다. 1-2. Supervised learning ML에서의 가장 흔한 방법은 supervised learning이다. T는 x -> y로 가는 매핑을 배우는 f를 배우는 것이다. 이 x..
대학원 진학을 위해 교수님과의 컨택을 하는 도중 운이 좋게도 교수님과 스터디할 기회를 얻었고 Kevin Murphy의 Machine Learning 책을 토대로 진행합니다. 따라서 Introduction부터 차례차례 공부를 해보려고 합니다.
공부하는 도중 두 용어가 나오는데 정확하게 정의하지 못하고 혼동되는 내 자신을 보며 이번에 정리해야겠다고 생각했다. Batch size 모델이 학습할 때 이용할 데이터의 개수이다. 예를 들어 batch size가 64라고 한다면 한번 학습할 때마다 64개의 데이터를 사용해 학습한다. 따라서 배치사이즈가 클수록 한번에 많이 처리하는 만큼 총 학습속도는 빠를 수 있지만 메모리가(GPU) 부족할 수 있다. Mini batch size batch size가 모델이 1회 학습할 때마다 수행할 데이터의 개수라면 mini batch size는 그 데이터 개수를 한번에 처리하는 개수를 뜻한다. 예를 들어 batch size가 64고 mini batch size가 16이라면 16씩 4번에 걸쳐서 1회 학습한다는 의미이다..
참고 영상 : 유튜브영상 지난번 Gradient Boost 에 이은 이번에는 XGBoost이다. XGBoost는 다시 말하면 기본적으로 Gradient Boost이다. 그렇지만 기존 방법과 차별화된 점은 더 많은 데이터 수용 가능하며 이를 빠르게, 병렬처리하는 과정을 나타낸 것이 XGBoost라고 할 수 있다.(여기서 X는 Extreme을 뜻한다) 나온 배경 기존 의사결정나무같이 Exact greedy 알고리즘의 장점이라고 하면 모든 해를 다 탐구하기 때문에 항상 정확한 해를 찾을 수 있다. 단점이라고 한다면 분산처리를 할 수 없으며 모든 데이터가 메모리에 들어가지 않는다면 문제가 생긴다. 이러한 주된 문제점들을 해결하기 위해서 XGBoost는 어떠한 방법을 사용할까? 바로 bucket을 이용하는 것이다..
지난번에는 Boosting이 무엇인지에 대해서 알아보고 Adaptive Boosting 에 대해서도 공부해보았다. 그리고 이번에는 Gradient Boosting 에 대해서 공부해보려고 한다. Gradient Boosting이란? 일단 직관적으로 어떤 기법인지 생각해보았을 때 배경이 되는 것은 역시 Boosting일 것이고(Sequential) 모델들을 부스팅하는 과정에서 하는 업데이트 방식을 Gradient를(경사하강법)사용하는 것이 아닐까 생각이 된다. (Adatpive Boosting에서는 gradient를 사용하는 것이 오차에 대해서 추가적인 가중치를 부과함으로써 모델을 업데이트하였다.) 이를 잘 설명해주는 것이 위 이미지라고 생각한다. Regression모델을 한번 생각해보았을 때 첫번째 ite..
출처 : https://www.youtube.com/watch?v=GciPwN2cde4 이전 학교에서 데이터사이언스 과목을 들을 때 XGboost나 Gradient Boosting에 대해 가벼운 내용이 나왔던 걸로 기억한다. Boosting이란? 그리고 이 기법들은 공통으로 Boosting이란 단어가 들어가있다. boost라는 용어의 뜻은 격려, 증가 라는 뜻을 가지고 있다.(카트라이더에서의 부스터 생각하면 편하다) 여러 개의 모델을 순차적으로 구축하여 최종적으로 합친다는 것이 부스팅의 핵심 아이디어이다. 여러개의 모델을 합친다는 점에서 앙상블이고 큰 특징이라면 모델들을 여러개만들고 한번에 합치는 것이 아닌 순차적으로 구축한다는 것이 핵심이다. 순차적으로 구축하는만큼 그 전 단계에서의 모델의 단점을 보완..
딥러닝 모델을 훈련시킬 때는 한번도 사용해본적은 없지만 머신러닝에서 자주 쓰이는 교차검증 방법들을 한번 정리해보려고 한다. 잘 정리해놓으면 나중에 딥러닝 모델에서도 충분히 활용할 수 있겠지? KFold란? 데이터가 많으면 문제 없겠지만 데이터가 한정된 상황에서 Test 데이터셋을 어떻게 설정하냐에 따라 정확도가 달라질 수 있다. 이러한 문제와 불확실성을 해결하기 위해 데이터셋을 k개로 쪼개 모든 데이터가 검증 과정을 거치도록 분할하는 것이다. 이를 잘 나타내는 이미지는 다음과 같다. 이미지출처 장점은 알고리즘의 정량적인 성능을 평가할 수 있지만 k번 훈련,검증 과정을 거쳐야하므로 한번 훈련할 때보다 훈련시간이 증가한다. 파이썬 코드 from sklearn.datasets import load_iris f..