딥러닝, 실시간 감정 인식하기

Intro 저번의 미소 인식을 좀 더 업데이트하여 표정에서 나타나는 감정 인식을 해보았다. 미소 인식에선 미소 짓는 표정과 아닌 표정 두가지 뿐이라 상대적으로 데이터가 간단해 학습이 간단했다. 또 미소는 표정만으로 미소이다 혹은 아니다 라고 구분이 가능해서 고려할 것이 많지 않았다. 실제로 인간이 느끼기에 슬픈거나 억지로 하는 미소는 신경쓰지 않기 때문이다. 반면 표정에서 나타나는 감정은 상당히 복잡하다. […]

딥러닝 학습과 GPU

Distributed computing in ML 기계학습, 특히 딥러닝에서 GPU는 필수적인 장치다. 잘나가던 SVM을 누르고 딥러닝의 시대를 연 것이 GPU 때문이라고 해도 과언이 아닐 정도. 그런데 왜 GPU가 중요할까? 비트코인 채굴에 GPU를 사용하는 이유와 비슷한 걸까? 비트코인 채굴이 어떤 방식인지는 모르지만 사용하는 이유는 같다. 분산 컴퓨팅, Distributed computing을 해야하기 때문이다. CPU는 아주 좋은 칩이 떡 있는 반면, […]

Variational Inference, 베이지안 딥러닝

네이버 커넥트 재단에서 최성준 박사님이 강의한 베이지안 딥러닝의 내용입니다. Variational Inference Variational inference 라는 단어를 들어 본 지는 사실 꽤 되었다. 이게 뭘까 하면서 한 번 본 적은 있지만, 난무하는 수식에 그냥 하던거나 하자는 생각으로 덮었다. 그래서 사실 variational inference가 뭔지도 모르고 이 variational이 variance와 관련 있는건가 하는 궁금증도 들고 그랬다. 어쨋든 이 둘은 다른 […]

집합에서 부터 정의하는 확률 , 네이버 커넥트 재단 Bayesian deep learning

네이버 커넥트 재단에서 진행한 베이지언 딥러닝의 최성준님 강의를 듣고 인상적인 부분에 관한 내용입니다. Probability 거의 모든 사람들은 초등학교, 중학교를 거치며, 혹은 그냥 살면서 확률에 대한 개념을 습득해간다. 동전과 주사위만 있으면 되는게 확률 아닌가. 고등학교에 진학하면 이제 확률을 좀 더 배우지만, 내 기억으론 확률을 설명하라면 설명하지 못했을 것이다. 단지 어떤 사건이 일어나는 것에 대한 믿음의 정도라고 […]

딥러닝으로 실시간 웃는 표정 인식하기

본 자료와 코드는 DL4CV – adrian 을 참고했습니다. 실시간 웃는 표정 인식하기 이번에 만들어 볼 것은 실시간으로 노트북의 웹캠을 이용해 자신의 미소를 인식하는 코드이다. 실시간 인식이라 영상을 처리해야하고 또 얼굴을 탐지해야 하는데 알고보니 모두 opencv 라이브러리를 이용하면 가능하더라. 전체적인 과정은 다음과 같다. Gray scale인 표정 데이터를 CNN 모델을 이용하여 학습. 여기서는 lenet을 이용하였다. 얼굴을실시간으로탐지 탐지된얼굴을위모델에맞춰변환후예측 […]

CNN으로 Captcha 뚫기

Sim Captcha captcha sms 사용자가 사람인지 컴퓨터인지 가려내기 위해 고안된 방법이다. 시간이 지나면서 위에 보이는 것과 같이 간단한 것부터 사람마저 풀기 힘든 captcha 까지 여러 종류가 생겼다. 하지만 이번에는 매우 간단한 simple captcha를 CNN을 사용해서 뚫어보자. mnist에 지쳤다면, 너무나 잘 제공된 데이터 때문에 허무하다면 직접 해보자. 내가 사용할 데이터는 위의 보이는 것처럼 간단한 captcha 로 […]

CNN- Imagenet에 쓰인 주요 모델

[catlitst categorypage=”yes”] ILSVRC 예전에 ILSVRC라는 유명했던 이미지 분류 대회가 유행했었다. 현재 이 대회는 공식적으로 종료되었고 캐글에서 대회를 이어가고 있다. 대회는 Imagenet이라는 데이터를 사용하는데 1000개의 카테고리와 수백만의 이미지 데이터로 이루어져있다. ILSVRC는 단지 이미지 분류만이 있는 게 아니고 object detection 등 몇가지가 더 있기도 하다. 대회가 종료된 이유는 2012년 딥러닝을 이용한 모델이 우승을 한 것이 시발점이 되었다. […]

CNN, Convolution 이란?

Deep Learning for Computer Vision – Dr. Adrian Rosebrock 을 보고 정리한 글입니다. Convolution in CNN 이미지 처리 분야는 CNN이라는 이미지를 다루는 딥러닝 기법이 나옴과 함께 엄청나게 빠른 속도로 발전 중이다. 요즘은 이미지가 아닌 다른 곳에도 CNN 쓰기는 하지만 말이다. 그럼 Convolutional Neural Net에서 Convolution이 뭘까? 영어 사전에서는 뒤틀린 것, 꼬인 것 이라고 한다. Convolutional […]

Affine, Convex set

Line, line segments Affine, convex set을 보기 전에 이 둘을 이루는 line, 선이 뭔지 보자. 중학교 때, 선은 두 점을 이용하여 만든다고 배웠다. 여기서도 그렇다. 서로 다른 두점이 존재할 때, $y = \theta x_ {1} + (1 – \theta) x _ {2}$ 은 x1, x2를 지나는 선이다. 그리고 $\theta$ 는 0~1사이의 값으로 line segment를 하는 […]

딥러닝으로 XOR 학습하기

Deep Learning – Ian goodfellow를 참조한 포스팅입니다. XOR XOR 문제는 오래전 인공신경망을 잠재워 버린 무시무시했던 문제이다. 당시의 인공신경망은 non-linearity를 극복하지 못해 XOR을 풀 수 없었다. 10~20년간의 인공신경망의 암흑기를 거치고 non-linear function과 Deep layer를 이용하여 딥러닝이란 이름으로 다시 유명세를 타는 인공신경망은 이제 XOR 문제를 푸는 것은 기본이고 여러가지 분야에 응용이 되고 있다. 딥러닝을 공부하기에 앞서 한때 […]