지능형 에플리케이션에서 간과할 수 있는 7가지

기계학습이나 머신러닝을 가미한 프로젝트 그러니까 지능형 에플리케이션을 구축할 때 간과하기 쉬운 몇 가지 사실을 이야기 하고자 한다.

물론 아래 사실은 학술적인 머신러닝책에 나오지 않은 경험적인 내용이다.

1. 데이터는 믿을만 하다?
아마 이 부분이 가장 많은 사람들이 간과하기 쉬운 부분일 듯 하다. 지능형 에플리케이션은 데이터에서부터 시작해서 데이터로 끝난다. 그리하여 믿을만한 데이터셋을 구축하는게 무엇보다 중요한 부분이 된다.
애초 에플리케이션의 아이디어 원천이 되는 부분이 데이터인데, 그 초반 데이터가 당신이 의도하는 에플리케이션의 모습을 반영하지 못할 가능성이 있다는 문제가 있다. 만일 처음부터 완전 무결하고 목적에 맞는 데이터가 무엇인지 알고 그걸 얻었다면 문제가 해결되지만 처음부터 그러기는 쉽지 않다. 그리고 데이터에 누락정보가 있을 경우가 있고 그보다 더 찾기 어려운 부분은 오류 데이터가 있을 경우이다. 요런 것들을 찾아내기 위해서는 몇몇 알고리즘이 있으나 결국 더블체킹이 유일한 방법으로 남게 된다. ^^;
그리고 데이터가 계속 변화하는 경우도 문제가 될 수 있는데, 만일 클릭 로그를 기반으로 뭔가를 구현한다면 로그의 변화에 기민하게 변화되는 프레임웍을 설계 하는 자세가 필요하다.
이 밖에 데이터 유닛의 통일, 알고리즘에 맞는 데이터셋 구축 등등이 필요하다.
이들 모두 데이터에 관련이 되는 것들이고 아무리 중요하다고 강조해도 모자람이 없을 부분이다.

2. 결과가 바로 나올까?
모든 학습 기반의 지능형 에플리케이션의 결과값 리턴 시간은 그리 길지 않다. 왜냐면 가장 많은 시간이 걸리는 모델 빌드가 미리 이루어 지기 때문이다. 그렇지만 만일 실시간 데이터가 중요하게 쓰이는 어떤 금융관련 결과를 뽑기를 원한다면 그 리턴 타임에 대한 고민을 해야 한다. 반드시 원하는 리턴 타임을 도출하기 쉽지 않을 것이다.

3. . 데이터 양은 별 상관이 없을 것이다?
100명의 데이터를 기반으로 모델 빌드한 결과가 100000명의 데이터를 기반으로 빌드한 결과와 결코 같지 않을 것이다.  상황에 따라서는 이 문제는 모델의 차원이 달라지는 문제이기 때문에 퍼포먼스가 많이 달라질 상황이 올 수도 있을 것이다. 따라서 이 문제에 대해서 더 많은 고민이 필요하다.

4. 대용량 이슈에 자유롭다?
단순한 추천엔진을 만드는 것도 대용량 이슈에 자유롭지 못하다. 학문적 레벨로 알고리즘을 적용하다가는 대용량 이슈에 무릎을 꿇게 될 수 도 있다. 따라서 실무에서는 이런 부분에 대해서 여러 최적화 트릭을 이용하기도 한다.(물론 몇몇 알고리즘들은 분산처리 알고리즘 디자인이 이미 되어 있는 경우도 있다)

5. 만능 알고리즘이 있다?
없다.
“망치를 들고 있으면 모듯 것이 못으로 보인다.”는 속담처럼 특정 알고리즘만을 매달려 사용하는 과오를 저지르지 않아야 한다. 모든 알고리즘은 장점과 한계 모두 가지고 있다. 따라서 각 알고리즘의 특징에 대해서 잘 이해하는게 필요한 것이다.

6. 복잡한 모델이 좋은 것이다?
이 부분에 대해서는 오캄의 칼날이 좋은 설명이 될 것이다.
대부분의 경우 간단한 모델에서 시작해 결과 모델을 보완해 나갈 모델로 진화를 하는 방향으로 잡는다.

7. 바이어스 없는 모델이 있다?
한정된 데이터를 기반으로 학습 모델을 만들기 때문에 바이어스 없는 모델은 존재하지 않는다. 요 바이어스는 일반화라는 단어와 반대의 의미로 쓰이는데 일반화가 우리에게 다른 정보를 주는 반면에 바이어스는 이미 우리가 알게 모르게 인지하고 있는 부분이다.
대부분의 경우 바이어스가 없는 일반화된 모델을 원하지만, 그러기 쉽지 않은게 사실이다.

 
그냥 생각나는 것들만 정리해 봤다.
학교에서 배운것과 이를 기반으로 서비스에 적용하는것은 많은 차이가 있다는 것을 알았다. 그래서 경험이 중요한가 보다.
그래서 더 재미 있는 분야일 수도 있고 말이다.

 

CC BY-NC 4.0 지능형 에플리케이션에서 간과할 수 있는 7가지 by from __future__ import dream is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.