2015년 12월 4일 금요일

아두이노 vs 라즈베리파이 vs 비글본 : 무엇으로 시작할까?


DIY 프로젝트를 위해 많이 사용되는 마이크로컨트롤러 또는 싱글보드컴퓨터엔 아두이노, 라즈베리파이, 그리고 비글본이 있죠. 그런데 어떤 것을 선택해야할지 참 고민될 때가 많습니다. 그래서 이 글에선 가장 많이 사용되는 세가지를 비교했습니다!

2015년 12월 1일 화요일

PCA(주성분분석)의 의미와 한계점

데이터가 고차원일 때 차원축소(dimensionality reduction) 방법은 데이터를 분석하고 시각화(visualize) 하는데 매우 편리한 수단을 제공합니다. 사실 우리가 관측한 데이터는 관측된 차원과는 상관없이 그 데이터 자체만의 고유한 차원이 있다고 여겨지는데요, 무슨 말인고 하니 데이터가 내부적으로 갖고있는 특성은 우리가 센서 10개로 측정하든, 100개로 측정하든 변하지 않는다는 이야기지요. (관측 상의 차원은 10차원과 100차원으로 다르지만요.)

예를 들어 우리가 4개의 회전관절로 이루어진 로봇을 관측하기 위해 각각의 관절 위치 (x,y,z)를 기록했다고 하면 우리는 아마도 매 순간마다 12차원 공간 상의 데이터를 얻게 될 것입니다. 하지만 이것을 한번 12차원 상에서 그려보면 사실 데이터를 표현하는데는 12차원이 모두 필요하지는 않음을 알게될 것입니다. 사실 데이터는 아마 12차원 공간에서 4차원의 다면체(manifold)를 형성하고 있을테지요. (원래의 데이터가 4자유도 움직임에서 비롯되었기 때문에요.)

3차원 공간 상에 존재하는 2차원 manifold (사진출처)