머신 러닝과 룰베이스 시스템

머신러닝에 반대되는 말이 룰 베이스 시스템이. 얼마전에(2017년 말 현재) 어떤 증권사에서 로보어드바이저라는 머신러닝기반 펀드가 나왔는데. 펀드운용을 사람이 아닌 기계가 한다는 것이었다. 그 개발을 총괄했던 분과 얘기를 나눌 기회가 있었는데, 아직은 머신러닝까지는 안 갔고 룰베이스를 처리한다고 한다. 여기 룰베이스라는 말이 나오는데, 이 말은 뭐냐면 사람이 룰을 정해서 기계한테 알려준다는 것이다. 반대로 머신러닝은 그 룰을 기계가 찾아간다는 것이다. 포인트는, 룰을 사람이 정해주느냐 기계가 직접 찾아가느냐인 것이다. 룰하면 떠오르는 것이 있는데, 아웃룩에서 수신 메일을 자동으로 특정 메일함으로 이동하기 위해서 룰을 정해주는 기능이 있다. 예를들어 특정발신인이나 특정 문구가 포함된 경우에 특정 메일함으로 이동하라는 룰이 그것이다. 그 룰을 누가 정하느냐가 머신러닝이냐 아니냐를 구분짓는 것이다. 머신러닝의 경우는 사용자가 특정 메일함으로 이동시키는 메일내용의 단어들과 발신인등의 정보에서 포인트가 되는 정보를 찾아내는 것이다. 예를들어 스팸처리기를 머신러닝과 룰베이스 시스템을 이용해서 만든다고 해보자. 룰베이스 시스템은 사람이 일일이 어떤 특정 단어를 지정해준다. ‘Viagra’라든가 ‘Sale’이라는 단어가 들어가면 스팸함으로 들어가도록 한다. 그럼, 머신러닝 시스템은 어떻게 할까? 스팸함으로 들어가는 메일에서 가장 많이 나오는 단어들을 보니 Viagra와 Sale이라는 단어가 많았다면 머신을 그것으로 룰로 정하는 것이다. 그러면서 진화할 수 있다. 스패머가 Sale이라고 안쓴고 $ale이라고 썼다라면 머신러닝 시스템은 사용자가 $ale이라고 문자가 포함된 메일을 스팸함에 들어가는 것을 파악해서 학습할 수 있게 된다.

머신러닝을 하기 위한 3가지 필요사항

  • Input data points—For instance, if the task is speech recognition, these data points could be sound files of people speaking. If the task is image tagging, they could be pictures.

  • Examples of the expected output—In a speech-recognition task, these could be human-generated transcripts of sound files. In an image task, expected outputs could be tags such as “dog,”“cat,” and so on.

  • A way to measure whether the algorithm is doing a good job—This is necessary in order to determine the distance between the algorithm’s current output and its expected output. The measurement is used as a feedback signal to adjust the way the algorithm works. This adjustment step is what we call learning.

results matching ""

    No results matching ""