딥러닝이 뭔가요?


딥 러닝(영어: deep learning)은 여러 비선형 변환기법의 조합을 통해 높은 수준의 추상화(abstractions, 다량의 데이터나 복잡한 자료들 속에서 핵심적인 내용 또는 기능을 요약하는 작업)를 시도하는 기계학습(machine learning) 알고리즘의 집합[2] 으로 정의 되며, 큰틀에서 사람의 사고방식을 컴퓨터에게 가르치는 기계학습의 한 분야라고 이야기 할 수 있다. 어떠한 데이터가 있을 때 이를 컴퓨터가 알아 들을 수 있는 형태(예를 들어 이미지의 경우는 픽셀정보를 열벡터로 표현하는 등)로 표현(representation)하고 이를 학습에 적용하기 위해 많은 연구(어떻게 하면 더 좋은 표현기법을 만들고 또 어떻게 이것들을 학습할 모델을 만들지에 대한)가 진행되고 있으며, 이러한 노력의 결과로 deep neural networks, convolutional deep neural networks, deep belief networks와 같은 다양한 딥 러닝 기법들이 컴퓨터비젼, 음성인식, 자연어처리, 음성/신호처리 등의 분야에 적용되어 최첨단의 결과들을 보여주고 있다. 최근 이슈는 아무래도 스탠포드대학의 Andrew Ng과 Google이 함께한 딥 러닝 프로젝트인데, 2012년 16,000개의 컴퓨터 프로세스와 10억 개 이상의 neural networks 그리고 DNN(deep neural networks)을 이용하여 유튜브에 업로드 되어 있는 천만 개 넘는 비디오 중 고양이 인식에 성공한 내용[3] 으로 이 소프트웨어 프레임워크를 논문에서는 DistBelief로 언급하고 있다[4]. 이뿐만 아니라 Microsoft, Facebook[5] 등도 연구팀을 인수하거나 자체 개발팀을 운영하면서 인상적인 업적들을 만들어 내고 있다.

왜 지금 딥러닝을 이야기 하는 거죠?


deep learning은 여러 가지 분야가 있는데, 크게 Training set을 보유하고 학습시키면 되는 supervise와 그렇지 않은 unsupervise로 나눌 수 있겠다. 여기서 unsupervise를 살펴보면 E-Mail의 spam-filter를 예로 들 수 있는데, 아직은(현재 글을 쓰는 시점) 기계가 E-Mail을 분석해서 spam인지 아닌지 구분하기가 쉽지 않다.

하지만 이미지 인식의 정확도도 이미 기계가 인간을 뛰어넘었듯이, 그리고 불가능하다고 여겨졌던 바둑(알파고 vs 이세돌) 영역도 기계에 정복(?)당했듯이.. 가까운 미래에는 email 분야도 머신러닝이 뒤덮게 될 것이다.

아마도 그 시대가 도래하면 학생들에게 “과거에는 랜섬웨어라는 것이 존재 했었다” 그리고 “돈을 지불해야 crypto lock을 제거 할 수 있었다”처럼 우스갯소리의 역사론을 말하게 되지 않을까…

“왜 그것(email의 spam 여부)을 사람이 판단했었죠?” 같은 바보(?) 같은 질문이 존재할지도 (…)

시대가 정말 빠르게 급변하고 있다. 김성훈 교수님이 인용한 말처럼 머신러닝 기술을 잘 이해하고 다룰 수 있다면 슈퍼파워를 갖는 것과 같겠다. 시대에 낙오되지 않도록 기업도 많이 바뀌어야 한다. 불가능한 영역이라고 단정짓지 말고 끊임 없이 연구하고 분석해야 한다.

생각보다 빠른 시일 내에 엄청나게 많은 직업이 사라지게 될 것이다… 직업 잃지 않으려면 빠르게 대응해야 한다..
그래서 지금 슬슬 시작하련다. 그것(?)에게 email을 학습시키는 것을…

앞으로 무엇을 할 건가요?


  • 일단 구글에서 내놓은 오픈소스 tensorflow를 활용해서 머신러닝을 이해할 것이고
  • 관심분야에서 잠시 내려놓았던 docker와 친해질 것이다.
  • 최종 단계는 우선 training set을 제공해서 virus와 랜섬웨어의 패턴을 학습시킬 것이고
  • 나아가 spam메일을 정복 해야지. 기간은…………(?)