사람이 손으로 쓰거나 기계로 인쇄한 문서 이미지를 스캐닝하면 이미지가 문자로 표현된 문서파일로 바뀌는 기술이 광학문자인식(OCR) 기술이다. OCR은 인공지능이나 시각기계의 초기형태라 본다. 기계가 선의 패턴을 보고 같은 꼴을 한 글자로 변환시켜주는 기술이다. 이때 기계는 활자가 가진 의미를 알지 못한다. 다만, 지정된 언어의 활자 중에서 모양이 가장 일치하는 글자로 변환해 주는 역할만을 한다. 문장 중에서 인접한 단어가 오는 것이 어색한지를 분석하는 기술은 맞춤법을 기초로 한 문장해석기술이다. 예전엔 OCR 소프트웨어를 스캐너를 구매하면 함께 제공받았는데 최근엔 인터넷에서 공짜로 OCR 서비스를 받을 수 있다.

OCR은 간단한 기술로 인식되지만 신경망(Neural Network) 지능기술이 적용된다. 새로운 알고리즘의 인공지능을 평가하는 벤치마크 대상으로 삼는 표준 필기체 숫자가 있다. 미국표준과학기술연구소는 인공지능의 학습기법과 인식기술을 개발하는 사람들이 활용할 수 있도록 필기체 숫자 데이터베이스(MNIST)를 제공하고 있다. MNIST는 훈련용과 시험용이 있다. 훈련용으로 제공되는 약 6만개의 패턴 세트는 250여명의 작가, 고등학생, 인구조사국 직원 등 500여명 이상의 필기체가 포함되어 있어서 다양한 글자꼴을 인식하는 효과가 높다. 타 제품과 비교하기 위한 시험용은 1만개의 세트가 있다. 필기체 숫자인식의 오류 발생률이 최신기술에 의하면 0.23% 이하라고 한다.

시각지능은 물체를 인식하는 능력이다

물체를 인식하는 인공지능을 위한 데이터 세트로는 연구용으로 무상 제공되는 NORB가 있다. 이 데이터엔 네발 달린 동물, 사람의 모습, 비행기, 트럭, 승용차 등 5종류에 속하는 50가지의 장난감 이미지가 제공된다. 이미지는 조명, 보는 각도를 다르게 하여 4만8600개로 구성되어 있다. 최신 기술의 인식 오류 발생률이 2.7% 정도다.

또 다른 이미지 데이터베이스로는 CIFAR-10과 CIFAR-100이 있다. CIFAR-10은 컬러이미지 6만개가 10종류로 구성되어 있다. 5만개는 인식훈련용이고 1만개는 시험용이다. 비행기, 자동차, 새, 고양이, 사슴, 개, 개구리, 말, 배, 트럭 등을 무작위 이미지로 학습하도록 되어 있다. CIFAR-100은 600개 이미지씩 100종의 이미지로 구성되어 있다. 해상 동물, 물고기, 꽃, 식품 용기, 과일과 채소, 가전기기, 가구, 벌레, 야생동물, 자연풍경, 사람, 파충류, 나무, 자동차 등 다양한 소재를 다룬다. 훈련용이 종별로 500개씩, 시험용은 100개씩 편성하고 있다. 최신 기술의 오류 발생률이 11.2% 정도다. 이렇게 훈련된 소프트웨어가 가려낼 수 있는 물체의 종류는 100가지로 한정된다. 즉, 이 세상에 존재하는 모든 물체를 인식시키는 데는 많은 훈련과 시간이 필요하다. 새로운 물체를 볼 때마다 새로운 정의가 필요하다.

물체를 인식하는 소프트웨어는 물체의 형태가 뒤틀리고 배경이 흐려도 물체의 이름을 맞춰낸다. 따라서 여러 종류의 물체가 함께 있어도 각 물체의 모양을 구분해낼 수 있다. 휴머노이드 로봇이 장기를 둔다고 가정해 보자. 로봇에 미리 장기 알의 종류와 기능 그리고 게임의 법칙을 알려주면 로봇은 장기 알의 종류를 인식하면서 장기를 둘 수 있게 된다. 판을 읽고 어떤 장기 알을 옮겨야 상대를 제압할 수 있는지 작전을 세울 수도 있다. 휴머노이드 로봇이 움직이면서 상대를 인식하기 시작한 것도 ‘물체인식기술’의 발달 덕분이다. 물체뿐만 아니라 주변 환경도 인식하면서 동작의 범위나 동작 방향을 결정할 수 있다. 자율운전 차량이 스스로 운전을 할 수 있는 배경도 고속으로 변하는 주변 환경이나 물체를 인식하는 기술이 완벽해졌기 때문이다. 다만, 아직은 미리 입력된 물체만 인식할 뿐 새로운 물체를 스스로 판단하고 대응하지 못한다.

컴퓨터 시각인식기술의 목표는 시각장면을 이해하는 데 있다. ‘장면을 이해한다’는 의미는 ‘어떤 물체가 어떤 위치에서 어떤 상황을 연출하는지를 서술한다’는 의미다. 즉, 2차원은 물론 3차원 공간에서 물체들과 배경의 상호 관계를 의미 있게 해석해내야 한다. 사람이라면 주변의 복잡한 장면을 정확히 알아차리고 현재 무슨 일이 벌어지고 있는지 말로 설명해낼 수 있다. 로봇도 카메라에 포착된 장면 속의 여러 가지 물체들이 서로 어떻게 연관되고 있는지를 자연어로 표현해낼 수 있어야 사람과 진정한 대화가 가능해진다. 지금의 로봇들은 상황포착을 못 하니까 상대방의 말을 되받아치는 수준에 머물고 있다.

스탠포드대학교 연구팀이 개발한 소프트웨어가 식탁 사진을 보고 묘사한 표현들
사진 : http://cs.stanford.edu/people/karpathy/deepimagesent/devisagen.pdf

컴퓨터가 사진을 문장으로 설명한다

사람들은 복잡한 장면을 보아도 간단히 중요한 핵심을 끄집어내 설명하지만, 컴퓨터로선 무엇이 핵심인지 구분해내기가 쉽지 않다. 그런데 최근 주목할 만한 인공지능 기술이 개발됐다. 구글이 개발한 기계학습기능은 사진에 나온 장면을 문장으로 설명하는 지능 기술이다. 물체의 경계들을 감지하여 분류하고 이름을 붙여 배치를 설명해내는 수준에 이르렀다. 이 설명은 사진이 갖는 핵심 의미를 찾아서 서술해준다. 구글이 이미지를 해석하는 데 적용한 기술은 심화공진화신경망(深化共進化神經網, Deep Covolutional Neural Network, CNN)이다. 이미 알고 있는 물체들이 이미지 속에 있을 확률을 계산해서 물체를 확인해 주는 기술이다. 이때 확인된 물체들의 상관관계를 문장으로 설명하는 기술은 자동번역기술에서 활용해온 재귀열 신경망(RNN) 기술이다. 예를 들면, 한국어 문장을 언어 벡터공간에서 같은 빈도로 사용되는 단어들을 모아 연결한 벡터로 표현한 다음에 통째로 프랑스 문장으로 바꾸는 방식이다. 서로 다른 언어라 할지라도 주어진 환경에서 나누는 말이 같기 때문이다. 예를 들어 식탁에 둘러앉아 있는데 상석에 앉은 사람이 “자, 듭시다”고 말하며 식사를 시작했다고 하면, 프랑스 문화권에선 같은 상황에서 어떤 말이 사용되는지를 찾아서 “Bon appetite”라고 통째로 바꿔주는 방법이다. 이미지 속의 물체들을 확인해내는 CNN법과 이들의 관계를 서술해 주는 RNN법을 결합해서 어떤 사진을 보더라도 바로 문장으로 설명해줄 수 있는 기술을 완성했다.

스탠퍼드대학교 연구진도 비슷한 시각지능기술을 개발했다. 이 기술은 사진뿐만 아니라 비디오 영상 속 장면도 문장으로 설명해 준다. 이는 구글과 마찬가지로 CNN법과 RNN법을 결합한 접근방식이다. 스탠퍼드에서 CNN 학습에 사용한 데이터 세트는 마이크로소프트가 제공하는 COCO다. 이 데이터 세트는 70종 이상의 이미지 영역을 구분하고 30만개의 이미지를 200만개의 상황으로 구성한 데이터다. 그리고 각 이미지는 5개의 설명문이 붙어 있다. COCO의 장점은 사진 속의 핵심을 구분해 주는 방식에 있다. 물체의 이미지를 따로 분리하지 않고 자연스러운 사진 배경 속에서 구분해줌으로써 학습력을 높였다고 할 수 있다.

로봇도 사물을 인식하고 기억하게 된다

인공지능이라지만 완전히 새로운 이미지를 만나면 소프트웨어가 정확히 알아채지 못한다. 다만, 새로운 이미지를 학습하는 기능이 있으므로 조금만 훈련을 하면 바로 적응해낸다고 한다. 구글은 이 기술을 이용해서 인터넷에 떠도는 모든 이미지와 영사물을 분석해서 계층화시키고 있다. 지금은 이미지나 영상을 사람들이 분류하고 있지만 머지않아 컴퓨터가 실시간 자동으로 이미지와 영상물을 분류해낸다고 한다. 기술적으로 유해한 영상물이라면 인터넷에 올리기 전에 미리 유튜브에서 걸러낼 수도 있게 된다. 구글은 이미 많은 국가의 정찰당국으로부터 유해 자료나 영상을 삭제해 달라는 부탁을 듣고 있다고 한다.

그림은 천 마디 말보다 더 깊은 정보를 담고 있다. 동물의 두뇌가 사물을 인식하고 기억하는 원리가 바로 이미지 처리 기억방식에 기초한다는 사실을 보면 쉽게 알 수 있다. 이미지를 말로 자동으로 정확하게 바꿔주는 기술은 인공지능 기술의 핵심이다. 인공지능 소프트웨어들이 학습할 수 있는 데이터베이스가 충실해질수록 이미지를 자연어로 표현하는 정확도는 높아진다. 날마다 웹 공간에 새롭게 등장하는 이미지와 영상물들은 이 인공지능 소프트웨어의 학습 자료다.

이 분야의 기술은 아직 태동기라고 연구자들은 말하고 있다. 로봇의 시각인식능력이 동물이나 사람 수준에 이르고 시야의 변화를 말로 표현해내기 위해서는 아직도 발전시켜야 할 영역이 너무도 많다. 하지만 기술의 진전속도로 보아서는 2020년경이면 로봇이 주변 상황의 변화를 스스로 설명할 수 있는 단계에 이를 수 있다고 본다.