컴퓨팅 사고적으로 생각하는 탐색 문제는 문제를 분해하여 처음부터 끝까지 하나하나 다 경로를 탐색하는 방법을 사용합니다.
반면 인공지능의 탐색 방법은 인간이 탐색하는 방법을 모방하여 필요 없는 탐색 공간을 줄이면서 효율적으로 탐색할 수 있는 방법을 모색합니다.
컴퓨터과학에서 잘 알려진 탐색 방법은 깊이 우선 탐색 방법과 너비 우선 탐색 방법이 있는데, 인공지능에서는 휴리스틱 탐색 방법을 더하여 모든 공간을 탐색하지 않고 답을 찾는 최적의 경로를 탐색해 나갑니다.
정리증명
(출처: 픽사베이)
정리증명이란 사람이 해결하기에는 시간이 많이 걸리고 복잡한, 또는 여러 차원에 걸쳐 계산해야 하는 수학적인 정리를 컴퓨터 프로그램으로 증명해내거나, 해결하기 위한 방법을 연구합니다.
정리증명을 위해서 인간의 지식이나 논리적인 기호를 컴퓨터에 입력해 줄 필요가 있습니다.
정리증명은 모든 부분을 할 수도 있지만 필요한 부분만을 보조하여 정리할 수도 있습니다. 정리증명의 단점은 컴퓨터가 오류가 없는지 검증하는 것은 거의 불가능하다는 것입니다.
지식표현과 추론: 전문가시스템
전문가시스템은 인공지능에서 기호주의를 대표하는 연구분야 중 하나입니다. 컴퓨터가 처리할 수 있는 형태로 지식을 표현할 수 있는 유형에는 논리, 규칙, 의미망 등이 있습니다.
논리학에서 비롯된 방법과 마찬가지로 컴퓨터로도 참이나 거짓 중 하나를 값으로 갖는 명제를 가지고 논리적인 추론을 합니다. 프로그래밍 언어에서 많이 쓰이는 구문으로 IF-THEN 규칙은 IF 구문의 조건이 참일 때 THEN이 실행됩니다.
조건이 둘 이상이면 AND 나 OR로 결합합니다. 이같이 규칙의 집합으로 정보를 처리하는 것을 규칙 기반 시스템이라고 부릅니다.
불확실성 처리
우리는 정보의 홍수에서 살고 있습니다. 매일 새로운 정보들이 쏟아지지만 애매하거나 잘못된 정보가 많습니다. 또한 명제와 같이 참과 거짓이 확실한 정보가 아닌 이해하기에 애매한 지식들은 기계가 이해하기에는 너무 어렵습니다.
예를 들자면 음식에 간을 할 때 소금을 ‘적당히’ 뿌린다는 말이나 운동할 때 다리에 ‘약간’ 힘을 주는 것은 대체 얼만큼 인지 가늠하기가 어렵습니다. 인공지능은 이러한 불확실성을 표현하고 처리하는 방법이 필요합니다.
해결 방안으로 주로 확률을 이용하여 기계의 성능을 조절하거나, 예측 가능한 범위를 정하고 그에 맞는 세기나 방향으로 작동하도록 하는 방법을 사용합니다.
대표적인 것으로 퍼지이론은 일상생활에서 모호한 상태를 정량적으로 표현하거나, 반대로 정량적인 값을 애매모호한 값으로 바꾸기 위한 개념입니다. 예를 들어 ‘춥다’, ‘따뜻하다’와 같은 단어들이 숫자로 나타나는 온도에서 어느 범위에 속하는지를 정해 사용하는 것입니다.
기계학습
기계학습은 입력된 데이터를 기억하거나 저장하는 것을 넘어 학습을 시켜 새로운 문제를 해결하거나 예측할 수 있도록 하는 것을 말합니다.
기계학습을 위해서는 데이터가 필요하며, 그 데이터로부터 학습을 할 수 있을 만한 ‘특징’을 추출해내어 학습을 수행하고 모델을 만들어내는 것, 그리고 모델을 평가하는 과정을 수반합니다.
기계학습의 종류는 크게 지도학습, 비지도학습과 강화학습이 있습니다.
지도학습은 훈련 데이터와 테스트 데이터를 나누고 훈련 데이터로 먼저 프로그램을 학습하도록 한 뒤 테스트 데이터로 학습이 잘 되었는지 검증하는 방법입니다. 지도학습은 정답인 것과 정답이 아닌 것을 직접 레이블링 해주어야 합니다. 반면, 비지도학습은 레이블링을 하지 않은 데이터를 군집화하거나, 데이터의 무리에서 패턴을 찾아내기도 합니다.
강화학습은 잘 하면 상을 주고 못 하면 벌을 주는 식으로 학습을 시킨다고 비유하면 이해하기 쉽습니다. 수많은 경험을 통해 원하는 방향으로 학습을 강화시키며 인간과 달리 쉬는 시간 없이, 대용량의 지식을 한꺼번에 받아들여 학습할 수 있습니다.
신경망과 딥러닝
(출처 : 위키백과)
신경망은 인공지능의 초반부에 인간의 뇌에 있는 뉴런을 모델링하여 만들어낸 퍼셉트론에서 시작됩니다.
1과 0으로 학습이 이루어지거나, 이루어지지 않는 단순한 논리로 시작하였지만 후에 여러 개의 층을 나누어 학습을 할 수 있는 형태로 만들어졌습니다.
이미지를 인식하는 코그니트론, 네오코그니트론과 같은 신경망 모델을 거쳐 딥러닝으로 발전하였습니다.
딥러닝은 기계 학습의 하위 분야로 보는 관점도 있습니다. 심층 신경망은 입력층과 출력층 사이에 숨겨진 층이 2개 이상인 신경망입니다.
자연어 처리
<음성 인식 에이전트의 자연어 처리 과정>
자연어는 기계어와 반대되는 용어로서 인간이 사용하는 언어를 일컫는 단어입니다.
기계가 인간의 언어를 처리하기 위한 과정을 자연어 처리라고 하며, 이 또한 계산적으로 이루어집니다.
자연어 처리를 위해 언어학과 언어 현상을 연구하는 학문과 연관이 깊으며 구현을 위해 통계적 기법과 딥러닝을 많이 사용합니다.
컴퓨터는 자연어를 문법적 단위로 쪼개어 사전에 등록하는 방식으로 자연어를 이해하며, 확률을 기반으로 질문에 대한 답변이나 뒤에 올 단어를 예측합니다.
자연어 처리는 음성 인식, 번역, 감성 분석, 신문 기사의 카테고리 분류, 챗봇 시스템 등에서 사용합니다.
로보틱스
(출처: Freepik)
로보틱스는 로봇공학이라고도 부르며 로봇에 관한 기술 또는 과학을 말합니다. 기계공학과 센서 공학, 인공지능 기술 등을 종합적으로 포함합니다. 로봇을 설계하고 만들고, 구조에 대해 분석·제어하는 것, 그리고 로봇의 지능적인 측면과 운용 등에 대한 기술을 연구합니다. 그중 인공지능 기술을 활용하는 로봇을 지능형 로봇이라고 합니다.
산업용 로봇은 주로 고정되거나 일정한 장소에 설치되어 한정된 작업만을 수행하는 반면, 지능형 로봇은 주변 환경을 인식하고 판단하여 동작할 수 있도록 만듭니다.
일상생활에서 쉽게 볼 수 있는 지능형 로봇의 예로 로봇청소기가 있습니다. 로봇은 상업용으로 작업하기 위한 용도일 수도 있지만 사람이 직접 하기 어려운 극한환경의 업무를 대체하기 위해 사용할 수도 있습니다. 이족보행 로봇은 사람처럼 자연스럽게 걷는 행동을 보여주기도 하며 얼굴표정을 나타내는 로봇이나, 감정을 교류할 수 있는 애완로봇까지 생기는 등 로봇은 인간의 생활과 아주 밀접한 영역까지 파고들어 삶의 동반자가 될 가능성을 지닙니다.