본문 바로가기

전체 글

(75)
CS231n 2017 Lecture 8 : Deep Learning Software GPU가 강점을 보이는 연산은 행렬 곱이다. 행렬 곱은 벡터 내적을 여러 번 하는 것이기 때문에 병렬로 처리하면 엄청나게 빠르다. NVIDIA GPU를 쓰자. GPU에 최적화된 프로그래밍을 위해 NVIDIA에서 cuda라는 언어를 제공, 하지만 고수준 API들을 쓰지 직접 cuda를 쓸 일은 없다. CPU와 GPU간의 엄청난 성능 차이를 확인할 수 있고, cuda를 직접 짠 것과 cuDNN을 사용한 것의 차이도 확인할 수 있다. 거의 3배 가량의 차이가 나므로 그냥 cuDNN을 쓰자. 사실은 우리는 tensorflow나 pytorch를 쓸 것이기 때문에 그 조차도 할 필요가 없을 것이다. Training 시에 bottleneck을 막는 방법으로 1. 데이터를 모두 RAM에 올리기 2. SSD 쓰기 3. ..
인공지능을 위한 선형대수(주재걸 교수님) Intro, 선형대수의 기초, 선형방정식과 선형시스템 Check - Inner product와 outer product란? - A,B가 행렬일 때, AB=BA인가? - 행렬 곱의 4가지 성질은? - Identity matrix는 무엇인가? - Inverse matrix는 무엇인가? - 역행렬이 존재하는 조건은? - 역행렬을 이용, Ax=b를 푸는 방법은? - 역행렬이 있다면 해가 유일한가? 이유는? - Determinant란? - 역행렬이 없을 때 해의 개수는? - A가 m x n 행렬일 때, mn일 때 해의 개수는 어떻게 되는가? - 머신러닝에서는 어떻게 해결하는가? 자주 쓰이는 표현들을 한번 정리해 주셨다. 행렬 곱의 다양한 성질들이다. 행렬을 이용한 linear equation의 표현이다. Linear system은 linear equation의 집합..
확률 및 통계(한양대 이상화교수님) lec1 : 조건부확률과 Bayes 정리 Check - Sample space란? - P(A)의 의미는? - 조건부 확률이란? - Total probability란? - Bayesian Theorem이란? 언제 유용한가? - Independent의 정의는? 언제 유용한가? - Combined experiment란? Sample space와 event의 정의는 위와 같다. P(A)를 A가 일어날 확률이라고 생각했었는데, 좀 더 엄밀한 정의는 위와 같다. 조건부 확률이란 새롭게 형성된 sample space 안에서의 확률이다. 전제 조건을 가정했을 때의 확률이라고 생각하면 편하다. P(A)는 P(A l S)에서 전체 sample space인 S를 생략한 것으로 볼 수 있다. Total probability는 조건부 확률에 관한 수식으로 위와 같이 ..
Deep Knowledge Tracing 리뷰 Knowledge Tracing Knowledge Tracing(KT)이란 학습자의 과거 performance를 바탕으로 학습자의 지식 수준을 모델링하여 future performance를 예측하는 domain이다. 학습자의 지식 수준을 모델링 할 수 있다는 것은 1:1 맞춤형 교육 서비스를 제공할 수 있다는 것을 의미한다. 이 논문에서 몇가지 사례도 보여준다. 한 학생이 50개의 Khan Academy 문제를 풀 때의 predicted response를 그림으로 나타낸 것이다. Timestep 4~10을 보면 학생이 y-intercept 문제를 계속 틀리니까 색이 파랗다가, 두 번 연달아 맞으면서 초록색으로 바뀌는 것을 볼 수 있다. 모델이 학생의 과거 interaction을 바탕으로 지식 수준을 모델..
StarGAN 리뷰 GAN을 이용한 image translation에 관한 논문이다. Contribution 1. Multi-domain image translation을 하나의 generator와 discriminator로 가능하게 했다. 2. 그 과정에서 서로 다른 데이터셋을 같이 사용할 수 있게 했다. 3. 성능 또한 기존 모델보다 좋다. Multi-Domain Image Translation StarGAN을 CelebA 데이터셋에 적용한 결과물이다. Input image에 여러 attribute를 합성하였는데, 놀랍게도 하나의 generator가 수행한 것이다. 또한, 오른쪽 3개의 열에서 Angry, Happy, Fearful과 같은 label은 심지어 CelebA에는 존재하지 않는 label이다. RaFD라는 f..
CycleGAN 리뷰 논문 제목은 Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks 이다. Contribution Image to image translation에서 unpaired data로도 좋은 결과를 냈다. 같은 연구실에서 발표한 pix2pix가 paired data를 가지고 좋은 성능을 냈지만, 실제로는 그런 data가 없는 경우가 많다. 모네의 을 pix2pix를 이용해 사진으로 바꿀 수 있을까? 그러려면 모네의 작품과 pair를 이루는 사진이 있어야 한다. 그 때는 카메라도 없었고, 저 배경과 인물들이 실제로 있었는지도 확실하지 않다. CycleGAN은 이런 상황에서 유용하다. 다시 말해 unpaired data로도 do..
Pix2pix 리뷰 논문 제목은 image-to-Image Translation with Conditional Adversarial Networks이다. Contribution 1. Image to image translation에서 general-purpose solution을 제시했다. 2. Conditional GAN을 image to image translation에 처음으로 적용해서 좋은 결과를 얻었다. 기존의 image to image translation에서는 application-specific하게 loss를 정의해야 했다. 이 논문에서는 GAN을 이용해서 사용자가 high-level의 요구사항(이 사진들과 비슷하게 만들어라)을 주면 discriminator와 generator가 동시에 학습하면서 그럴듯한 결..
Fast R-CNN 리뷰 Object detection에서 R-CNN, SPP-Net 다음으로 읽은 Fast R-CNN이다. 이름만 봐도 R-CNN의 속도를 개선한 모델이라는 것을 알 수 있다. Contribution 1. 빠르다. R-CNN은 물론이고 SPP-Net보다도 train은 3배, test시에 10배나 빠르다. 2. 그러면서 성능도 더 좋다. 3. Multi-task loss를 이용해 훈련 과정을 간소화했다. R-CNN, SPP-Net과의 비교 기존의 모델들은 multi-stage pipelines를 통해 train했다. 다시 말해, 1. 모델을 먼저 트레이닝 하고(이것도 여러 단계에 걸쳐서) 2. 그 뒤에 bounding box regression을 훈련했다. 이 논문에서는 위의 과정을 single-stage-tra..