인공지능 AI의 분류
이번에는 인공지능(AI)을 어떤 형태로 분류할 수 있는지를 한번 알아보고자 한다.
퍼셉션, 전문가 시스템, 그리고 머신러닝, 딥러닝이 무엇인지를 차근차근히 살펴보도록 하겠다. 차수별로 인공지능의 분류를 아래와 같이 나누는 경우들을 볼 수 있다. 앞서 정리했던 인공지능의 역사와도 연결해서 볼 수도 있지만, 여기서는 1차~3차로 나누어 설명을 해보도록 하자.
1차 인공지능 (탐색과 추론)
2차 인공지능 (전문가 시스템)
3차 인공지능 (인공지능, 머신러닝, 딥러닝)
1차 인공지능
탐색과 추론
1. 퍼셉트론(Perceptron)
뇌 구조를 모방한 AI로 뉴럴네트워크 모델로 불린다. 근래의 딥러닝으로 연결되는 분야라고 할 수 있다.
하지만 뉴런의 수가 매우 적고 전기 신호 대신 0이나 1과 같은 숫자를 교환하는 구조였기 때문에 선형분리가 가능한 문제밖에는 풀지를 못했다.
2. 탐색과 추론 알고리즘
시간상으로는 1950년대 AI의 황금기 시대의 알고리즘이다. 컴퓨터로 추론과 탐색을 할 수 있는 특정한 문제를 해결하는 연구가 진행되었다고 한다. 여기서 이야기하는 탐색은 ‘경우의 수를 계산하여 최적의 수를 찾아내는 것’ (예: 미로찾기)이며, 추론은 ‘인간의 사고과정을 기호로 표현해 실행하는 것’을 이야기한다. 하지만 정말 간단한 문제(toy problem)를 해결할 수는 있었지만, 복잡한 문제는 해결할 수 없었다. .
약 인공지능이라고 할 수 있으며 체스나 장기대전과 같은 경우 탐색&추론에 머신러닝을 더한 경우라고 한다.
Perception과는 다르게 인간의 뇌를 모방하는 구조는 아니었다.
2차 인공지능
전문가 시스템
전문가 시스템은 3대 AI군 중 하나로, 사람의 ‘사고방법’을 모델로 한 AI라고 할 수 있다. ‘만약 XXX이면 OOO하시오. 그렇지 않으면 ㅁㅁㅁ하시오.’와 같은 규칙들을 지식으로 구성하고 있는 인공지능이다.
예측할 수 있는 문제에 대해 다양한 대응책을 미리 만들어 두는 것으로 전문분야의 지식을 많이 사용하여 전문가 시스템이라고 부르게 되었다.
다른 AI와 달리 전문가 시스템은 스스로 학습할 수 있는 능력이 존재하지 않았다. 발생할 수 있는 모든 상황에 대해 미리 설정해 두었기 때문에 사전에 정의된 판단이나 예측을 하는 것이 전부였다.
예를 들어 지식 DB에 따른 규칙에 따라 약을 처방한다거나, 전문가 DB를 활용한 퀴즈 프로그램에서 활용될 수 있었다. (예: IBM Watson)
2차 인공지능 1차 인공지능에 비하면 현실 사회문제를 좀 더 풀어가는데 가까워지기는 했으나, 여전히 한정된 분야에서 활용되어졌다. 하지만 세상의 많은 현상을 개념적으로 설명하기 위한 시도인 온톨로지(ontology)에 대한 고민을 시작하게 되면서 보다 진지하고 다양한 방면에서 인공지능을 고민하기 시작하게 된 시기이기도 하다.
* 온톨로지: 개념의 체계.
예) 차에는 자동차, 오토바이가 존재, 엔진으로는 움직이는 것, 사람이 힘으로 움직이는 것 존재, 이는 차의 하위 개념일 수 있음. 이러한 개념을 이해하는 것은 인공지능에게 매우 중요한 요소이며 인공지능을 보다 사람과 가깝게 만드는 데 있어서 필수로 정립해야 하는 개념이기도 하다.
3차 인공지능
인공지능, 머신러닝, 그리고 딥러닝
인공지능이 사물을 이해하고 판단하기 위해 알고리즘이 활용되는 시기.
AI라고 불리는 인공지능이 보다 구체적으로 분류되면서 다양한 알고리즘의 꽃이 피는 시기로 보여진다.
우선 머신러닝(Machine Learning)은 (대부분이 아시는 것 처럼..) 알고리즘을 인공지능이 스스로 학습하고 습득하는 방법을 이야기한다.
하지만 질문과 답변이 어느 정도는 정의되어 있으며 정도에 따라 지도학습과 비지도 학습으로 분류될 수 있다.
그리고 보상에 따라 얼마나 잘 성장해나갈 수 있는지에 대한 분류로 강화 학습이라는 분류 또한 가능하다.
먼저 비지도학습과 지도 학습을 잘 나타내주는 이미지 한 장.
위 이미지 외에도 각 분류를 잘 설명해 주는 이미지는 많이 있다. 지금 생각나는 대로 구분해보면 아래와 같이 정리해 볼 수 있겠다.
그리고 개인적으로 머신러닝에 대한 분류는 각각의 사례로 분류해 보면 아래와 같다.
각 분류가 어떻게 사용되는지 조금만 더 자세히 사례를 들어보자.
지도학습(Supervised Learning): 분류(Categorize)와 회귀(Regression)
예) 인구예측, 수수료 예측, MNIST를 통한 숫자 예측, 라벨링된 이미지 분류 등
비지도학습(Unsupervised Learning): 군집화(Clustering), 연관규칙(Association Rule)
예) 이상탐지 시스템(FDS), 동물 구분하기, 학습을 통한 추천(넷플릭스 추천 등)
강화학습(Reinforcement Learning): 보상을 통한 레벨업 (Reward)
예) 목표를 달성하면 보상, 실패하면 재시도 – 아타리의 벽돌게임
즉 인공지능을 활용하면 분류, 군집화, 예측, 추천 등을 할 수 있다.
딥러닝?
머신러닝은 위 이미지로 쉽게 정리를 해본다고 할지라도. 딥러닝이라는 것은 무엇일까?
음. 딥러닝은 인간의 뇌구조를 모방한 뉴럴 네트워크 라고 할 수 있는데 기존에는 하나의 레이어를 활용, 여러 번의 학습을 통해 최적화된 답을 내었다면, 여러개의 신경망, 히든 레이어들을 활용하여 심층신경망을 활용하는 방식을 말한다.
아마도 딥러닝이 AI의 혁명이라고까지 이야기되는 이유는 예측하고자 하는 수치를 얻기위해 Feature들을 히든레이어를 활용함으로써 보다 명확한 분류를 할 수 있기 때문이며, 그 정확도가 기존에 비해 괄목할만한 성장을 이룰 수 있었기 때문이 아닌가 한다.
물론 히든레이어를 활용하는 딥러닝은 블랙박스 모형이 대부분이라 설명가능이 가능한가는 또 다른 문제이기는 하다.
마지막으로 머신러닝과 딥러닝의 차이를 굳이 이야기해보자면.
머신러닝은 학습하는 기준에 대한 차이로
1) 지도학습
2) 비지도학습
3) 강화학습
으로 나누어볼 수 있으며, 딥러닝은 학습하는 알고리즘 방식(히든 레이어를 사용하였는지 아닌지)에 따라 구별이 된다.
즉, 지도, 비지도, 강화학습 모두 알고리즘에 히든레이어를 사용한다면 딥러닝이라고 부를 수 있으며, 그렇기 때문에 앞서 그림에서 보았던 것처럼 딥러닝은 머신러닝 안에 속하게 된다.
여기서 이야기하는 히든레이어란, 인풋 레이어와 아웃풋 레이어 사이에 위치한 레이어로 입력값을 넘겨받아 설정해둔 가중치에 따라 계산하여 아웃풋 값을 내게 되는 중간에 숨겨져있는(Hidden) 레이어를 이야기한다.
이러한 히든레이어는 몇 개의 멀티 레이어를 사용하는지에 따라 정확도(Accuracy)가 달라지므로, 인공지능 알고리즘이 블랙박스 모델이라고 이야기하는 이유이기도 하다.
몇 가지 머신러닝 알고리즘을 사용해보면서 느낀 점은 히든 레이어를 몇 개를 사용할지, 또 가중치를 어떻게 주는지(Regulation)에 따라 또 다양한 파라미터 값들을 조정함으로써 정확도가 달라짐을 확인할 수 있었는데, 이러한 미세한 수치들의 조정(Hyper Parameter Tuning)은 정확하게 알고리즘 모델을 이해하고 조정을 하진 않았던 것 같다.
그런 의미에서 설명 가능한 AI = XAI(eXplanable AI)에 대한 요구 사항이 점차 더 생기는 것이 아닐까 싶다.
그나저나 파면 팔 수록 점점 더 어려워진다.
해당 글은 글쓰는몽글C님과 모비인사이드의 파트너쉽으로 제공되는 기사입니다.