본문 바로가기

Deep Learning이란 무엇일까? Computer Science는 2010년부터 Deep Learning 열풍이다. DEEP LEARNING !! 나도 2013년에 IEEE International Symposium on Robot and Human Interactive Communication이라는 학회에 Deep Learning을 응용한 논문을 제출한 적이 있다. (링크: http://cpslab.snu.ac.kr/publications/papers/2013_RO-MAN_behaviorDL.pdf) 그 뒤로는 이쪽은 건드리지도 않고, Gaussian process를 이용한 연구를 주로 했었다. 이렇게 연구 방향을 접은덴 여러 이유가 있겠지만, 그 중 가장 큰 이유는 학문적 contribution을 낼 자신이 없어서였다. 그렇다 하더라.. 더보기
[윈도우 C++ 예제] 소켓 통신으로 구조체를 보내기 소켓 통신에 사용되는 기본 API는 char*를 보내고 받는다. 하지만 많은 경우에 구조체를 보내야 할 경우가 있다. 각설하고, 이를 하는 방법에 대해 알아보자. 1. 프로젝트를 만들자. (콘솔) 2. ws2_32.lib를 추가한다. 헤더파일 winsock2.h 를 추가한다. ws2_32.lib라이브러리를 링크시켜야 한다.ws2_32.lib 라이브러리를 링크시키는 방법 ( 현재 Visual Studio 2008을 쓰고 있음 )프로젝트 -> 속성 -> 구성 속성 -> 링커 -> 입력 -> 추가 종속성 ws2_32.lib3. 아래 코드를 이용해서 두 프로젝트를 만든다. - main.cpp를 아래 코드로 바꾸면 된다. 4. 실제 수행 화면 서버 코드#include "stdafx.h"#include #inclu.. 더보기
Sparse Kernel Methods 기존의 Kernel method는 기존의 데이터를 모두 가지고 있어야 한다. 다시 말해서, 새로운 데이터가 들어왔을 때 기존 데이터와 새로운 데이터를 다 비교를 해봐야한다. 이 때 두 가지의 문제가 있다. 하나는 데이터의 수에 따른 처리량이 늘어난다는 것이다. 예를 들어서 kernel matrix는 데이터 수*데이터 수의 크기를 갖는 행렬이다. 다른 하나는 이러한 데이터를 모두 저장하고 있어야 한다! 전자는 어쩔 수 없지만, 후자의 경우는 조금 해결이 가능할 것 같다. 위의 그림은 ImageNet에 사용되는 이미지들이다. 우리가 만약 이미지를 KPCA 등을 이용해서 처리한다고 하자. 이 때 10만장의 이미지가 있다면, 10만*이미지 픽셀 수에 대한 메모리가 필요한다. 문제가 있다. 결론만 말하자면, ke.. 더보기
Robot with deep learning 생각기계 학습은 매우 재밌는 방법론이다. 컴퓨터(기계)로 하여금 어떤 문제를 학습해서 풀게한다니!하지만 개인적인 경험으로는 조금만(난 아직 깊게 보지는 못함..) 들여다보면 크게 두 가지 원인때문에 실망을 하였다. 첫 번째 이유는 제약 조건이다. 굉장히 제약적인 상황에서밖에 돌아가지 못한다. 예를 들어서 고양이 얼굴을 열심히 학습시켜놨더니 조금만 다른 종이 들어가거나 조금만 회전이 있거나, 가려지만 잘 동작을 하지 않는다. 사실 이러한 문제를 해결하기 위해서 robust 어쩌구, sparseness, low-rank 등등이 제안되곤 했다. 두 번째는 연산량이다. 최근 컴퓨터 비젼쪽이나 기계 학습, 특히 심도 학습,에 관련된 연구는 개인 PC로는 못하는 경우가 많다. 학습에 필요한 시간과 저장해야하는 메모.. 더보기