RSS

Category Archives: Terms

[term] ad hoc

2014.06.18

 ad hoc…. 한 때 이해했다고 생각했는데 아니었나 보다.  오랜만에 봤는데 잘 와 닿지가 않는다.  네이버 사전을 보니 “즉석(에서 마련된)” 이라고 정의 되어 있다.  “미리 계획되지 않은” 이라는 뉘앙스가 강하고……  그렇게 긍정적이지도, 부정적이지도 않은 느낌이 든다.  ad hoc network 라는 말을 많이 들어봤는데, [1]에 의하면 wireless ad hoc network은 아래와 같이 정의 된다고 한다.

A wireless ad hoc network is a decentralized type of wireless network.  The network is ad hoc because it does not rely on a pre existing infrastructure, such as routers in wired networks or access points in managed (infrastructure) wireless networks. Instead, each node participates in routing by forwarding data for other nodes, so the determination of which nodes forward data is made dynamically on the basis of network connectivity

여기서도 “미리 준비된 구조를 같지 않은”, “즉석에서 생성하여 미리 예측할 수 없는” 이라는 뉘앙스가 풍긴다.

[1] http://en.wikipedia.org/wiki/Wireless_ad_hoc_network

 
Leave a comment

Posted by on June 18, 2014 in Misc, Terms

 

[term] latent

2014.06.05

현재까지는 latent를 hidden이란 말과 비슷한 의미로 이해하고 있음.  특히 HMM에서의 hidden이 가진 의미.  또한 latent variable은 model parameter와 비슷한 느낌으로 받아들이고 있음.

 
Leave a comment

Posted by on June 5, 2014 in Machine Learning, Terms

 

[term] dictionary

2014.05.29

과학적 용어로서의 dictionary는 compact signature할 때 처음 들어본거 같다.  느낌 상으로는 NLP 쪽에서 건너온 용어 같다.

 
Leave a comment

Posted by on May 29, 2014 in Machine Learning, Terms

 

[term] representation

2014.05.29

Representation 이란 말은 최근에 deep learning 진영에서 ICLR(International Conference on Learning Representation) 이란 학회를 만들면서 처음 듣게 되었다.  물론 영어 단어 자체로서의 “representation”이란 말은 어느 정도 들어봤지만, scientific term으로서는 생소하다.

위키피디아[1]를 보니까 representation learning이 feature learning과 비슷한 개념인거 같이 들린다.  아니 솔찍히 말하면 목적이 같아 보인다.  그렇다고 해서 representation이 feature와 비슷한 개념인지는 확실히 모르겠다.

2014.06.12

최근 Civera의 “Inverse Depth Parametrization for Monocular SLAM”을 보고 있는데, 3차원 좌표를 표현하는데 있어서 representation 이란 말을 쓰고 있다.  즉, 우리가 일반적으로 쓰는 Euclidean coordinate 상의 좌표 표현법([10, 14, 33]^T 같은 3차원 vector)을 XYZ representation이라고 부르고 있고, inverse depth representation이라고 해서 6차원의 vector로 다르게 표현하는 것을 얘기하고 있다.  두 representation에서는 서로 1대 1 호환이 가능하다.  즉, XYZ representation을 가지고도 모든 3차원 좌표를 표현할 수 있고, inverse depth representation을 가지고도 모든 3차원 좌표를 표현할 수 있다.  해당 논문에서는 inverse depth representation이 XYZ representation보다 Kalman filter를 쓰는 SLAM에서 더 유리하기 때문에 쓴다고 했다. 따라서 representation은 말 그대로 어떤 현상이나 공간을 표현하는 방식인거 같다.  실체는 하난데, 어떤 목적을 위해서는 이 representation을 쓰고, 다른 목적을 위해서는 저 representation을 쓰는 것이 아닐까 한다.

주목할만한 것은 이 논문에서는 representation과 parametrization이란 말을 거의 동일한 의미로 쓰고 있다.  Hough transform을 설명하는 [2]에서도 line을 표현하는데 있어서, rho와 theta로 표현하는 polar coordinate representation이 slope와 intersection으로 표현하는 방식보다 Hough transform에 더 적합하기 때문에 쓴다고 하고 있다.  또한 rho, theta, slope, intersection을 parameter들이라고 말하고 있으며, representation과 parametrization을 동일한 의미로 취급하고 있다.

그렇다면 rotation을 표현하기 위한 방법들인 Euler angle, angle-axis, 3 by 3 matrix, quaternion 들도 representations for rotation이 아닌가[3]?  결국 learning representation은 여러 가능한 representation 중에서, 어떤 목적(예를 들어 classification)에 제일 맞는 representation을 사람이 지정해 주는게 아니라 자동으로 학습하게 하는 것인거 같다.  이건 어디까지나 내 생각인데, Deep neural net에서의 representation learning이라는 것이 결국, 쉽게 생각하거나 구할 수 있는 (raw) representation으로서의 data가 vector 형태로 input layer로 들어가서 상위 layer들을 한단계 한단계 거치면서 해당 목적(classification)에 적합한  representation으로서의 vector로 변환되어서 마지막엔 결국 간단한 perceptron 만으로도 선형 분류가 가능한 형태가 되어지는게 아닐까? (누군가 태클 좀 걸어줘~~)

[1] http://en.wikipedia.org/wiki/Feature_learning#cite_note-pami-1

[2] http://en.wikipedia.org/wiki/Hough_transform

[3] http://en.wikipedia.org/wiki/Euler_angles#Relationship_to_other_representations

 
Leave a comment

Posted by on May 29, 2014 in Deep Learning, Terms

 

[term] conjugate

2014.05.27

‘conjugate’ is a such a word that has been hovering around me for long time since I heard the word “conjugate acid-base” as a freshman of college.

 
Leave a comment

Posted by on May 27, 2014 in Terms

 

[term] bundle adjustment

2014.05.23

항상 궁금했었다.  왜 bundle adjustment라고 부를까?  왜 bundle일까?

번들이라고 하면 우리 말로 “다발”, “묶음” 그런거 아닌가.  옛날에 용산에서 공CD 살 때 낱개는 개당 얼마이고 번들로는 얼마이고 그러지 않았던가.  컴퓨터 살 때도 번들 소프트웨어라고 해서 기본적으로 딸려오는 것도 있고.  생각해 보니까 패키지랑 같은 의미 같기도.  안그래도, 위키피디아에서도[1] 번들과 패키지에 대해서 아래와 같이 말하고 있다.

 A bundle of products may be called a package deal or a compilation or an anthology.

암튼 번들이라는 것은 여기서 “개별”, “개개인” 이런 개념과 반대되는 거 같다.  내가 아는 단어에서는 “batch”랑 비슷한 느낌?

Computer vison쪽에서 보통 BA로 줄여서 부르는 이 말은 photogrammetry 쪽에서 왔다.  photogrammetry?  우리 말로는 사진측량학이라고 하는 거 같다.  photogrammetry라고 구글에서 치면 알 수 있듯이, 학문적으로는 보통 항공 또는 위성 사진을 다루는 쪽인거 같다.  항공/위성 사진은 한시절을 풍미했던 오래된 컴퓨터비젼의 한 분야가 아니던가?

BA에 관한 자료 중에서 컴퓨터비젼 쪽에서 가장 유명하고 자주 refer되는 논문이 Bill Triggs가 쓴 [2]이다. (개인적으로 Bill Triggs 글 참 잘 쓴다고 생각함).  여기에 보면 BA에 대해 다음과 같이  설명하고 있음.

The name refers to the ‘bundles’ of light rays leaving each 3D feature and converging on each camera centre, which are ‘adjusted’ optimally with respect to both feature and camera positions. Equivalently — unlike independent model methods, which merge partial reconstructions without updating their internal structure — all structures and camera parameters are adjusted together ‘in one bundle’.

여기서 보면 반대되는 개념으로 independent model methods 가 나온다.  그렇다.  BA는 photogrammetry에서 independent model methods 의 단점을 보완한 대체 방법으로 나온 것이다.  따라서 bundle은 independent와 상대되는 개념이다.  independent model methods 은 무엇인가?  [2]에서는 이에 대한 설명도 하고 있다.

Independent model methods: These approximate bundle adjustment by calculating a number of partial reconstructions independently and merging them by pairwise 3D alignment. Even when the individual models and alignments are separately optimal, the result is suboptimal because the stresses produced by alignment are not propagated back into the individual models. (Doing so would amount to completing one full iteration of an optimal recursive decomposition style bundle method — see x8.2). Independent model methods were at one time the standard in aerial photogrammetry [95, 2, 100, 73], where they were used to merge individual stereo pair reconstructions within aerial strips into a global reconstruction of the whole block. They are always less accurate than bundle methods, although in some cases the accuracy can be comparable.

[3]에서는 independent model methods 에 대해 더 자세히 설명하고 있다.

Reconstruction from multiple views began with independent model methods [73]. These methods, originated in work from photogrammetry [74, 75]. Independent model methods combine pairs of images and merge them into larger reconstructions as shown in Fig. 3.3. These methods have optimal pairwise reconstructions, but merging does not update the previously computed pairs reconstructions. Thus, the final reconstruction of a set of N images is not optimal [76]. To be optimal as reconstructions are added and the full reconstruction is built up, all previous reconstruction parameters must be updated. This is the core idea in bundle adjustment.

Clipboard02

그러니까 항공사진으로 3D 지형 복원을 할 때, 새로운 이미지 들어오면 현재 복원한 거에다 triangulation해서 그냥 조금씩 계속 붙여 나가는 거구만.   BA가 batch reconstruction이면, Independent model method는 일종의 online reconstruction?  SLAM 할 때, loop closing 안 해 주면 계속 drift 생겨서 나중에는 map 오차가 커지는 느낌?  위 그림에서 “Level 2 Merge”에서 그림이 엿가락 처럼 약각 휘는 느낌?  뭐 BA는 정확하고 대신 시간이랑 메모리를 많이 잡아먹는 대신 independent model method는 정확도는 딸리지만 빨리 할 수 있다는 맨날 나오는 trade-off 얘기로 귀결되지 않을까?

[1] http://en.wikipedia.org/wiki/Product_bundling

[2] Bill Triggs, Philip McLauchlan, Richard Hartley and Andrew Fitzgibbon, “Bundle Adjustment — A Modern Synthesis”, Vision Algorithms: Theory & Practice, Springer-Verlag 2000.

[3] Daniel Fleck, “Efficient Affine Image Matching for Building and Maintaining 3D Models”, PhD dissertation. 2010.

 

[term] signature

2014.05.21

Point matching을 위해서 local feature descriptor 쓸 때 자주 나오는 말인데, 그냥 그래 저래 넘어 갔었는데 좀 확실히 짚고 넘어가는게 좋겠다.

[1]에 의하면, signature는 histogram과 약간 대조되는 개념으로 얘기하고 있다.

In broad terms, signatures are potentially highly descriptive thanks to the use of spatially well localized information, whereas histograms trade-off descriptive power for robustness by compressing geometric structure into bins.

즉, histogram은 개별 (2D 또는 3D 위치)정보를 잃어버리는 대신 statistics를 생성함으로서 robustness와 invariance를 얻는 개념으로, signature는 histogram처럼 vector 형태를 띄지만 그것이 ordered된 vector로서 위치에 대한 topology를 어느 정도 보유하는 정보로 보고 있다.  근데 저자들이 ltaly 애들이라서 좀 신빙성이 안간다.  걔네나 나나 mother tongue이 영어가 아닌건 마찬가지 아닌가?  그냥 독자들 신경안쓰고, 지 꼴리는 데로 정의해버리고 들어 갈 수 있으므로, 영어를 모국어로 하는 애들이 쓴 논문을 보고 결정하겠다.  위 정의의 의하면, 그럼 SIFT나 SURF는 signature of histogram인가?  SIFT는 한 point를 기준으로 neighborhood에다가 (예를 들어) 3 by 3의 세부 지역으로 나누고, 각 지역마다 histogram(HOG)을 뽑아서 쭉(1행1열 – 1행2열 —– 3행3열) 늘어 놓는것이 아닌가?

[2]에 의하면, signature는 우리가 흔히 말하는 싸인, 즉 서명이다.  서명은 서명자의 신원을 알 수 있는 고유의 표식인 것이다.  즉 signature는 그것으로 부터 바로 무언가를 identify할 수 있다는 것이고, 동일한 signature는 존재하지 않는다는 것을 알 수 있다.

[3]에 의하면, signature를 “(누군지 알 수 있는) 특징”이라고 하고 있다.  그러니까 [2]와 종합해 보건데, signature는 우리가 흔히 얘기하는 feature(vector)인데, feature는 좋은 feature도 있을 수 있고, (변별력이 약해서 classification이나 recognition에 있어서 별로 기여를 못하는) 나쁜 feature도 있을 수 있는데, signature라고 얘기한다는 것은 이미 그것이 좋은 feature라고 가정하고 들어가는 느낌이다.  그리고 지금까지의 정의에 입각해서 얘기하자면, (예를들어) 서로 다른 물체 또는 대상에서 같은 feature가 나올 수는 있어도, 같은 signature는 나올 수 없어야 할 것이다.  그래야 “(누군지 알 수 있는) 특징”이 될 테니까.

Computer vision에서 signature가 꼭 지역적인 정보를 보존해야 하는지, 아니면 어떤 descriptor이건 간에 “(누군지 알 수 있는) 고유한 특징”만 되기만 하면 signature로 불러 줄 수 있는 것인지는 아직 확실치 않다.  지역적인 정보를 보존하지 않는데도 signature라고 불러 주는 반례를 발견하면 확실해 질 테지.

Signature가 geometric property를 보존하고 있어야 한다는 것을 말해주는 (아래의) 또 하나의 증거를 [4]에서 찾았음.  (얘네는 미국 애들이네. ㅋㅋ)

A surface signature at a given point on the surface of an object is a descriptor that encodes the geometric properties measured in a neighborhood of the point.

[5]는 2D local feature descriptor를 얘기하고 있는데, 여기서는 전혀 geometric property를 얘기하고 있지 않다.  여기서 signature는 그냥 기본 이미지 패치(vocabulary 에 해당)들로 학습된 random forest들에 임의의 이미지 패치를 넣었을 때 나오는 일종의 discrete probability distribution (각 vocabulary에 속할 확률)로 나타내고 있다.  음… signature가 geometric property를 보존해야 한다는 것은 3D 일 때만 한정된 것인가, 아니면 내가 무언가를 catch하지 못하고 있는 것인가… 그것도 아니면 Pascal Fua 애들이 꼴리는 데로 단어를 오용하고 있는 것인가 (얘네들도 mother tongue이 영어는 아니지 않은가)?

[6]에서는 signature를 완전히 다른 개념으로 얘기하고 있다.  그냥 sparse histogram을 간단하게 나타내기 위한 lossless representation으로(돗수가 0인 bin들은 그냥 언급 안하는) 나타내고 있다. 그렇다면 결국 histogram이 signature란 말이 아닌가?  얘네들도 스페인 애들이네.  지 꼴리는데로 정의하고 들어가는 느낌.

[6]과 [5]를 동시에 보면서 드는 지금 생각은 [5]에서 Fua 애들이 signature라고 말하고 있는 근원은, 이게 어느 정도의 discrete 확률분포를 나타내고 있고, discrete 확률분포라는 게 사실 normalized histogram 아니던가…  아 더 헤깔려졌다.  나도 그냥 막 내 꼴리는데로 정의하고 쓸까?  갑자기 signature랑 descriptor랑도 헤깔리네.

[1] Federico Tombari, Samuele Salti, and Luigi Di Stefano, “Unique Signatures of Histograms for Local Surface Description”, ECCV 2010

[2] http://en.wikipedia.org/wiki/Signature

[3] http://www.wordreference.com/enko/signature

[4] Salvador Ruiz-Correay, Linda G. Shapiroy and Marina Meil˘az, “A New Signature-Based Method for Efficient 3-D Object Recognition”, CVPR 2010

[5] Michael Calonder, Vincent Lepetit, Pascal Fua et.al “Compact Signatures for High-speed Interest Point Description and Matching”, ICCV 2009.

[6] Francesc Serratosa and Alberto Sanfeliu, “Signatures versus histograms: Definitions, distances and algorithms”, Pattern Recognition 2006.

 

 
Leave a comment

Posted by on May 21, 2014 in Augmented Reality, Terms