Holik in everything!

Jihoon's Life story.

Real World

View Comments

인간이 느끼고 생각하는 것은 실제로는 몸을 구성하는 세포들 간의 전기를 통한 상호 작용이다. 외부로부터 자극이 발생하면 감각 세포가 이를 받아들여 전기 신호를 발생시키고, 이 신호가 신경 세포를 통해 뇌로 전달되면 비로소 사람이 자극을 인지할 수 있다. 인간이 유인원에서 벗어나 문화를 창조할 수 있었던 근원인 생각 또한 중추신경계와 대뇌 사이의 전기 신호를 주고 받음으로써 이루어진다.

꿈은 이러한 뇌의 활동 중 하나이다. 램 수면에 들어가면 뇌가 깨어있을 때와 거의 유사한 활동을 하며, 이 때 여러 두뇌 작용을 통해 꿈을 꾸게 된다고 한다.1 꿈꾸면서 실제처럼 여겨지고, 심지어는 꿈에서 깬 후에도 생생하게 느껴지는 것은 인간이 동일한 방법으로 실제 세상과 꿈의 세상을 인지하기 때문이다.

만약 인셉션이나 매트릭스와 같이 꿈 또는 두뇌 작용을 자유자재로 컨트롤할 수 있는 기술이 개발된다면, 사람들은 자신이 인지하는 세상이 꿈인지 현실인지 구분할 수 있을까?

만약 꿈의 세계에서 자신이 원하는대로 살 수 있다면, 사람들은 과연 어떤 삶을 택할까?

  1. Dream – Wikipedia []
  • Share/Bookmark

Written by Jihoon

July 28th, 2010 at 12:01 am

Posted in Talk

Tagged with , ,

시맨틱 웹

View Comments

웹은 태어난 이래로 지속적으로 발전하여 오늘날에는 이 세상에서 가장 일상과 떼어놓을 수 없는 존재가 되었다. 웹은 특히 웹 2.0의 등장으로 일반 사용자들이 웹 컨텐츠를 직접 제작함으로써 웹 상의 데이터는 폭발적으로 증가하였다. 그리고 현재 웹 어플리케이션의 등장은 기존의 하드디스크에 존재하던 데이터마저 웹으로 옮기고 있다. 즉, 웹은 점점 세계의 데이터 저장소가 되어가고 있다. 이러한 웹 데이터의 폭발적인 증가로 인해, 기존의 단순 텍스트 검색 결과만으로는 사용자들이 원하는 정보를 충분히 제공하기가 힘들게 되었다. 이런 변화로 인해 나온 것이 시맨틱 웹이다. (사실 시맨틱 웹은 팀 버너스리가 처음부터 계획했던 것이다. 하지만 그간의 시도들을 구현하기엔 웹 환경이 너무 열악했다.)

시맨틱 웹(Semantic Web)을 알기 위해선 먼저 시맨틱의 의미를 정확하게 알아야 한다. 컴퓨터 공학에서 시맨틱의 의미는 신택스(syntax)와 상반된 개념으로, 신택스가 어떤 문구 자체를 가리키는데 반해, 시맨틱은 문구 안에 포함된 개념을 의미한다. 예를 들어 “I like a Rooney.”라는 문장이 있으면, 이 문장은 신택스 적으로 ‘영어로 작성되었으며 틀린 문법을 사용하고 있다’고 말하고, 시맨틱 적으로 ‘나는 루니를 좋아한다’는 뜻을 가진다고 말한다.

시맨틱 웹은 웹에 시맨틱을 부여한 것이다. 즉, 웹을 단순히 링크로 연결된 페이지들의 집합으로 보는 것이 아니라, 각각의 페이지들과 페이지들 간의 링크에 의미를 부과하고 나아가서 웹 상의 데이터들을 연결하고 그것들에 의미를 부과하는 것이다. 예를 들어 “Korea University is in Seoul.” 이라는 데이터와 “I’m a student of Korea University.”라는 데이터가 웹에 존재할 때, 이런 데이터들을 연결하여 “I’m in Seoul.”이라는 새로운 데이터를 추론할 수 있다.

시맨틱 검색은 웹의 시맨틱을 검색하는 것이다. 시맨틱 검색을 위해서 여러 방법들이 제안되고 있다. 다음은 전형적인 시맨틱 데이터 관리 시스템의 구조를 보여준다.

Architecture of the Semantic Data Management System

위의 그림처럼 시맨틱 데이터 관리 시스템은 크게 4가지 부분으로 구성된다. 각 부분은 다음과 같은 역할을 한다.

  • Crawling: 웹 상에 퍼져있는 데이터를 크로울링을 통해 모은다. 데이터는 보통 RDF 형태로 배포되는데, 여기서 구조화되지 않은 데이터를 어떻게 구조화시킬 것이냐는 것에 대한 이슈가 있다. 일반적으로 사람이 직접 데이터를 구조화시켜 배포하고 크로울러가 지능적으로 데이터를 구조화시키는 방법에 대한 연구가 이루어지고 있지만, 데이터의 양과 종류가 워낙 크고 다양하기 때문에 거의 불가능한 것으로 본다.
  • Storing: 크로울링을 통해 모아진 데이터를 저장소에 저장한다. 모아진 데이터의 양은 상상을 뛰어넘을 정도로 엄청나게 많다. 이런 대용량의 데이터를 다루기 위해 Column Store와 같은 기법들이 연구되고 있다.
  • Reasoning: 저장소에 저장된 데이터에 기반하여 새로운 지식을 추론하고, 추론된 지식을 다시 데이터 저장소에 저장한다. 기존에 모아진 데이터의 양만 해도 엄청났지만, reasoning을 통해 새롭게 얻어지는 데이터의 양은 훨씬 크다. 따라서 효과적으로 reasoning하는 방법과 새롭게 얻어진 데이터를 효율적으로 저장하는 방법에 대해 연구가 이뤄지고 있다.
  • Accessing: 사용자가 접근하여 데이터를 다룰 수 있도록 인터페이스를 제공한다.

하지만 기존의 시스템은 한 시스템에 데이터를 저장한다는 단점을 지니고 있었다. 이것은 scalability 면에서 매우 취약하다. 반면에, 웹 상에 존재하는 데이터는 무한히 증가하고 있다. 이에 따라 출현한 것이 Linked Data 이다. 이 작업을 통해 시맨틱 데이터를 분산 관리하려는 노력이 이루어지고 있다.

Linked Data

Linked Data 시스템에선 한 대상에 대한 데이터가 여러 서버에 나누어 저장된다. 예를 들어, ‘광주 시’에 대한 지리 정보는 한국 지리 정보 시스템이나 광주 시 정보 시스템 등에 저장된다. 하지만 ‘화려한 휴가’라는 영화의 배경이 광주이기 때문에, 영화 데이터베이스 또한 ‘광주 시’에 대한 데이터를 갖는다. 물론 이 경우는 광주 시의 자세한 데이터가 아닌 identifier를 비롯한 메타데이터만 저장된다. 기존 시스템에서는 이렇게 나뉘어 저장된 데이터에 대해 사용자가 직접 따로 검색해야 했지만, Linked Data 시스템에서는 이들을 연결함으로써 ‘광주 시’에 대해 검색하면 시에 대한 지리, 역사, 문화 등의 정보 뿐만아니라 ‘화려한 휴가’의 배경지라는 정보도 쉽게 얻을 수 있다.

이런 작업들의 최종 목표는 바로 이 세계의 데이터화이다. 이 세계를 구성하는 사물 하나 하나까지 전부 데이터화해서 저장하고 검색할 수 있도록 만들겠다는 것이다. 이것이 바로 데이터베이스 학문의 궁극적인 목표이긴 하지만, 조금 무서운 생각도 든다.

  • Share/Bookmark

Written by Jihoon

June 6th, 2010 at 10:28 pm

Posted in Web

Tagged with ,

맥북 장착 완료

View Comments

요즘 하고 싶은 것이 너무 많아졌다. 뭐가 그렇게 하고 싶은게 많냐고 한다면, 논문도 얼른 쓰고 싶고 사업도 해보고 싶고 스마트폰 앱도 개발하고 싶고 악기 하나 배워서 밴드도 하고 싶다. 그러다보니 위에서 가장 많은 것을 충족시킬 수 있는(?) 아이템이 맥북.

기나긴 시간 동안 고민했지만 지르는 순간엔 한치의 망설임도 없었다.

성과 없는 일에 괜한 힘을 쏟기 보다는, 잘 할 수 있는 일에 전념해야지.

  • Share/Bookmark

Written by Jihoon

May 13th, 2010 at 12:27 am

Posted in Talk

Tagged with ,

Santorini

View Comments

이 사진의 저작권은 érato_79에게 있으며, 저작권의 침해의도가 전혀 없음을 밝힙니다.

너무나 아름다워서 유럽 여행 시 항상 코스의 마지막이 된다는 그 곳.

언젠가 포카리 스웨트 광고 배경으로도 나왔었다.

  • Share/Bookmark

Written by Jihoon

May 6th, 2010 at 12:43 am

Posted in Wish List

Tagged with

Antarctica

View Comments

Aurora Australis at the South Pole

Wish list 세 번째.

하늘에서 볼 수 있는 가장 신비한 현상 중 하나를 볼 수 있는 곳.

PS. 이 사진의 저작권은 Euclid vanderKroew에게 있으며, 저작권의 침해의도가 전혀 없음을 밝힙니다.

  • Share/Bookmark

Written by Jihoon

April 25th, 2010 at 12:08 pm

Posted in Wish List

Tagged with ,

무선 네트워크에서의 통념(Myth) 하나가 깨지다.

View Comments

무선 네트워크에서 무선 기기들은 공기를 매개체로 통신한다. 그런데 공기는 케이블에 비해서 에러가 발생할 확률이 엄청나게 높다. 전파가 전송되던 중 충돌이 일어나거나, Noise에 의해 전파 모양이 다르게 변하거나, 신호가 약해서 목적지까지 닿지 않는 등 다양한 이유로 인해 패킷 전송 실패가 일어난다. 따라서 무선 네트워크의 통신 프로토콜들은 에러를 다루기 위해 신경을 많이 쓴다. 가장 기본적인 에러 처리 방법은 에러가 발생한 패킷을 재전송하는 것이다. 하지만 충돌이 일어난 무선 기기들이 동시에 패킷을 재전송한다면 또 다른 패킷 충돌이 일어날 것이고 이것 만으로는 문제를 해결할 수 없다. 이를 해결하기 위해 충돌이 일어난 무선 기기들은 랜덤한 대기 시간(backoff time)동안 기다렸다가 패킷을 재전송한다.

대기 시간을 결정하는 방법은 다음과 같다. 모든 무선 기기들은 경합 시간 범위(contention window, cw)라는 값을 갖고 있는데, 충돌이 일어나면 무선 기기들은 0부터 cw 사이에서 랜덤하게 고른 하나의 수의 시간 만큼 대기한다.

두 무선 기기가 같은 랜덤 대기 시간을 결정할 확률은 매우 작으므로 둘 사이에 또 다시 패킷 충돌이 일어날 확률 또한 매우 작아지지만, 여전히 충돌이 일어날 가능성은 남아있다. 따라서 두 번째 충돌 부터는 cw의 값을 증가시켜 같은 대기 시간을 선택할 확률을 더욱 낮춘다. (일반적으로 충돌이 일어날 때마다 cw를 2배씩 증가시키는 Binary Exponential Backoff 알고리즘을 사용한다.)

이러한 접근에는 ‘무선 네트워크에서 둘 이상의 무선 기기가 동시에 패킷을 전송할 경우 반드시 충돌이 발생하여 두 패킷 모두 사용할 수 없다.‘ 라는 전제가 깔려있다. 하지만 이 전제는 실제와 다르다. 실제 네트워크에서는 전파 충돌이 발생하여도 세기가 강한 전파는 형태를 유지하여 전송될 확률이 높다. (Capture effect 라고 하며, 물리에서 파동의 간섭 현상을 생각하면 된다.) 뿐만아니라, 다중 패킷 수신(Multipacket Reception)이라는 한 무선 기기가 둘 이상의 전파를 동시에 수신할 수 있는 기술 또한 개발되어왔다. 이와 같이, 실질적인 기술은 무선 네트워크에서 일반적으로 받아들여지던 전제를 뒤짚음으로써 새로운 방향을 제시하였다.

그리고 마침내, 최근에 발표된 MAC for Networks with Multipacket Reception Capability and Spatially Distributed Nodes1 라는 논문에서 무선 네트워크에서 backoff 시간에 대한 통념이 깨어졌다.

저자들은 논문에서 다음과 같이 주장한다. 수신 노드로부터 멀리 위치한 노드들은 가까이 위치한 노드들보다 전송하는 신호의 세기가 약하므로, capture effect에 의해서 수신 노드로부터 멀리 위치한 노드일수록 전송 확률이 낮아진다. 예를 들어, 위의 그림과 같이 S1 ~ S5 5개의 노드들이 동시에 R1에게 데이터를 전송하고 있는 네트워크를 가정해보자. R1은 다중 패킷 수신이 가능하다. 하지만 S1이 다른 노드들에 비해 R1에 가까이 위치하므로 다른 노드들보다 전송 확률이 높다. 만약 다른 노드들이 패킷 전송에 실패한다면, 이들은 backoff 시간 동안 대기한 후 패킷을 재전송 할 것이다. 하지만 가까이 위치한 S1이 여전히 높은 확률로 패킷을 전송하고 있으므로 다른 노드들은 모두 패킷 전송에 실패할 확률이 높다. 이런 현상은 전반적으로 전혀 공평하지 못하다. 오히려 전송 실패가 일어났을 때 빠른 시간 안에 에러를 처리할 수 있도록, 실패가 일어날수록 cw의 값을 감소시켜 먼저 전송할 확률을 증가시켜야 한다는 것이다.

이러한 접근들은 최근에 DB 분야에도 있었다. 가장 효율적인 데이터 저장 방식이라고 알려졌던 row store는 대용량 데이터 처리가 필요함에 따라 column store보다 비효율적일 수 있다는 연구 결과가 나왔고, 심지어 가장 효율적인 데이터 구성 방식이라고 알려졌던 Relational DB 또한 용도에 맞게 다른 종류의 구성 방식을 사용해야 한다는 주장이 제기되고 있다.

시대를 넘어선 불변의 법칙은 존재하지 않는다. 시간이 흐르면서 기존에는 절대 받아들여질 수 없었던 통념들이 뛰어난 방법으로 받아들여질 수도 있다.

자신이 가장 굳게 믿고 있는 통념 하나를 반대로 생각해보자. 엄청난 결과를 얻을지도 모른다.

참고 문헌

1. Celik, G. D., Zussman, G., Khan, W. F., and Modiano, E. 2010. MAC for Networks with Multipacket Reception Capability and Spatially Distributed Nodes. IEEE Transactions on Mobile Computing 9, 2 (Feb. 2010), 226-240.

  • Share/Bookmark

Written by Jihoon

April 22nd, 2010 at 12:40 am

Posted in Research,Talk

Tagged with ,

Blue Cave

View Comments

Blue Cave

카프리 섬의 푸른 동굴.

나폴리도, 카프리 섬도 별로 흥미 없지만 이곳 만큼은 가보고 싶다.

PS. 이 사진의 저작권은 S J Pinkney에게 있으며, 저작권의 침해의도가 전혀 없음을 밝힙니다.

  • Share/Bookmark

Written by Jihoon

April 20th, 2010 at 5:31 pm

Salar De Uyuni

View Comments


우유니 모래 사막

불가리아에 있는 우유니 모래 사막.

죽기 전에 꼭 한 번 가보고 싶은 곳

  • Share/Bookmark

Written by Jihoon

April 20th, 2010 at 1:10 am

Posted in Wish List

Tagged with ,

난 대학원생이다

View Comments

그냥 잘못된 선택을 한 것 뿐이야…

  • Share/Bookmark

Written by Jihoon

February 28th, 2010 at 9:45 pm

Posted in Etc

Google Liquid Galaxy

View Comments

관련 링크

구글이 또 한번 대형 사고를 쳤다.

구글 리퀴드 갤럭시. AR(Augmented Reality, 증강 현실)을 이용한 3D Google Earth다. 이게 그래픽과 데이터 처리 속도가 워낙 엄청나서 난 처음에 볼 때 헬기타고 보여주는 모습인 줄 알았다. -_-; (데모할 땐 8개의 리눅스 머신으로 동시에 돌렸댄다. 그래도 저런 속도가 나오다니.. -_-) 더욱 놀라운 것은, 데모 영상엔 안나오지만 골목 구석구석이나 바다 속도 볼 수 있다고 한다. 기존의 구글 어스와 구글 맵이 갖던 한계를 극복한 것이다.

데모 영상이 끝나갈 무렵, 머리 속을 스치는 생각. “이제 구글이 지구 지도는 정복했으니, 조만간 우주 지도 만들겠다고 우주선 날리겠구만..”

PS. 이 프로젝트도 ’20% time’ 제도로 나온 것이라고 한다. 구글에서 대박낸 프로젝트 중엔 ’20% time’ 제도에 의한 것들이 굉장히 많다. 생각하면 생각할수록, 구글은 정말 대단하고 무서운 기업이다.

PS 2. 스크에서 구글을 따라한답시고 비슷한 제도를 도입했었지만, 걔네들은 아직도 도토리나 팔고 소비자들 돈 뜯어내는 것만 생각하고 있다. 너넨 대체 왜그러니?

  • Share/Bookmark

Written by Jihoon

February 15th, 2010 at 12:33 am