2013년 5월 27일 월요일

빅데이타 관련 글들을 읽고


요즘  빅데이터 관련 글을 읽을 기회가 많았습니다. 최근 구글IO 의 주요 내용도 머신 러닝이었다고 하더군요. 또 주변에 프로그래밍 하시던 분들이 많이 하는 이야기가 전에 적은 것처럼 유저 움직임에 대해 가설을 세우니까 자꾸 틀려서 그냥 데이타만 본다고 합니다.

최근까지도 많이 했던 과학적 연구 방식은, 일단 가설을 세우고, 실험이나 자료 조사를 통해서 가설을 검증하는 방식이 아니었을까 싶습니다. 따라서 가설을 잘못 세우거나, 실험이나 조사시에 잘못된 질문 의도된 질문을 할 경우에 잘못된 결론을 얻는 경우도 있었다고 들었습니다.

요즘은 가끔 제 자신 또는 제 몸에 대해서도 가설을 세우고 검증하려고 해서 틀리는 게 아닐까 하는 생각이 듭니다. 제가 배탈이 나기 전에 먹었던 음식들을 죽 나열하고 모든 상관관계를 검증하면 어떤 걸 먹었을 때 문제가 생길지 알 수 있을까요? 아니면 의외로 그 당시의 몸 상태(열이 나거나 하는 등)에 좀 더 영향을 받았을 수도 있으니, 이 데이타 까지 있어야 할까요?

또 프로그래밍 하다보면 성능을 최적화 해야 될 일이 생기는데, 많은 경우 실제 병목은 예상하지 못했던 곳에 있습니다. 따라서 최적화의 제일 좋은 방법은 사실 프로파일러를 돌려서 실제로 어디가 병목인지를 확인하는 일입니다.

이게 가설가 빅데이타의 차이가 아닐까 싶습니다. 모든 데이타를 나열하고, 상관관계를 무작위로 가설없이 나열해 볼 수 있다면, 내가 미쳐 가설을 세우지 못했던 결과를 얻고, 한 걸음 더 나아갈 수 있지 않을까요? 상식을 깨는 천재가  나오지 않아도 멋진 결과를 얻을 수 있는 그런 시대를 기대해봅니다.