블로그
2014년 12월 11일 04시 56분 KST | 업데이트됨 2015년 02월 10일 14시 12분 KST

사진 캡션도 달아주는 번역기

구글이 최근 합격점 수준의 사진 자동설명(캡션) 기술을 현실화하는 데 성공했다. 이 기술은 컴퓨터가 사진을 보고난 뒤, 스스로 사진 캡션을 만들어준다. 이 시스템은 장래 어떻게 활용될 수 있을까? 구글은 우선 시각장애인들이 그림을 이해하는 데 큰 도움이 될 것으로 기대한다. 또 인터넷 연결이 잘 되지 않는 곳에서는 사진 캡션으로 이미지를 대신할 수도 있다. 이 시스템을 활용하면 웹에서 이미지 검색을 하는 일도 훨씬 효율적이고 간편해질 것이다.

위의 사진을 보고 구글의 사진캡션 자동 시스템은 "오븐 위에 올려져 있는 피자 두 판."("Two pizzas sitting on top of a stove top oven")이라는 내용의 사진설명을 완성했다. 구글 제공.

"오븐 위에 올려져 있는 피자 두 판."("Two pizzas sitting on top of a stove top oven")

사람에게는 눈앞에 벌어지는 복잡한 풍경을 즉석에서 이렇게 몇마디 말로 요약해 묘사할 수 있는 능력이 있다. 컴퓨터도 그렇게 할 수 있을까? 컴퓨터 번역 시스템을 응용하면 어느 정도 가능하지 않을까? 구글이 이런 발상 아래 새 알고리즘 개발에 나선 끝에, 최근 합격점 수준의 사진 자동설명(캡션) 기술을 현실화하는 데 성공했다. 구글이 'NIC'(신경화상캡션, Neural Image Caption)이라고 이름붙인 이 기술은 컴퓨터가 사진을 보고난 뒤, 스스로 사진 캡션을 만들어준다.

이번에 개발한 사진캡션 알고리즘 역시 기존의 구글 텍스트 번역 시스템을 기반으로 했다. 구글 이전의 전통적인 번역 방식은 각각의 단어를 번역한 뒤 단어와 구문을 재배열하는 방식이었다. 몇년 전 구글이 자사의 방대한 데이터베이스를 토대로 고안해낸 방식은 이와는 다른 방식이다. 이 방식은 앞뒤로, 또는 인접해서 함께 쓰이는 단어들의 빈도를 계산하고, 그것들을 관련 집단으로 묶어 수학적 공간(벡터공간)에 묶어둔다. 이렇게 하면 각각의 단어는 이 벡터공간 속에서 하나의 벡터로 표현할 수 있고, 문장은 이 벡터들의 조합으로 표현할 수 있게 된다.

이 구글 번역 시스템은 중요한 가정을 전제로 한다. 특정 단어들은, 그 단어가 어떤 언어이냐에 상관없이 서로 같은 관계를 갖고 있다는 가정이다. 예컨대 구글에서는 벡터 '왕-남자+여자=여왕'은 모든 언어에서 '참'이라고 가정하는 식이다. 이는 언어 번역 문제를 벡터공간의 수학 문제로 변신시킨다. 구글 번역기는 이런 식으로 하나의 문장을 하나의 벡터로 바꾸고, 그런 다음 그 벡터를 이용해 다른 언어로 된 똑같은 문장을 생성한다.

서로 다른 언어간 번역에는 'RNN'(Recurrent Neural Network)이라 불리는 구글의 독자적인 컴퓨터 신경망이 동원된다. 예컨대 하나의 RNN이 프랑스어 문장을 벡터 표시로 바꾸면 두번째 RNN이 그 벡터 표시를 독일어 문장으로 바꿔준다. 구글의 연구팀 오리올 비냘스(Oriol Vinyals)와 동료들은 사진을 단어로 번역하는 데도 비슷한 접근 방식을 썼다. 이들은 우선 공개돼 있는 10만개의 이미지 데이터와 캡션을 연구 대상으로 삼았다. 그리고 컴퓨터에 또다른 컴퓨터 신경망 'CNN'(Convolutional Neural Network)으로 이 이미지들의 분류법을 학습시켰다. 이 알고리즘은 이미지를 묘사하는 단어들을 생성하는 대신, 단어들 사이의 관계를 나타내주는 벡터를 생성한다. 이 가운데 첫번째 'RNN'을, 이미지 속 물체 분류법을 학습한 'CNN'으로 대체하면, 이미지가 문자언어로 변환되는 것이다. 이번 실험은 영어로 했지만, 다른 언어로의 변환도 가능하다.

구글 시스템이 내놓은 사진캡션 사례들. 왼쪽 열부터, 정확히 묘사한 캡션, 일부 오류가 있는 캡션, 이미지와 어느 정도 관련이 있는 캡션, 이미지와 관련없는 캡션들이다. 구글 제공

이렇게 해서 개발된 자동 사진캡션 작성 시스템은 얼마나 정확할까? 이들은 세계 최대 온라인몰 아마존닷컴의 '미캐니컬 터크'(Mechanical Turk) 서비스를 통해 선발한 평가단을 통해 유효성을 시험했다. 아마존의 이 서비스는 소비자가 어떤 일을 웹에 의뢰하면 컴퓨터가 아닌 불특정 다수의 사람들이 달려들어 순식간에 일을 해치우는 시스템이다. 원래 18세기 후반에 나왔던 '미캐니컬 터크'는 체스를 두는 컴퓨터를 일컫는 말인데 사실은 컴퓨터 안에 사람이 들어가 컴퓨터 행세를 했었다고 한다. 아마존의 서비스도 이 방식과 비슷하다고 해서 이런 이름을 붙인 것으로 보인다. 어쨌든 아마존에서 선발된 평가단은 구글 방식으로 자동 생성된 캡션과, 다른 자동화 시스템이 생성한 캡션, 그리고 사람이 직접 작성한 캡션을 비교했다.

비교 결과 구글의 새로운 시스템은 '잘 작동한다'는 평가를 받았다. 파스칼(PASCAL)이라 불리는 이미지 데이터를 이용한 결과에서는, 구글 시스템이 다른 자동화 시스템보다 월등히 나은 성적을 냈다. 기계번역의 정확성을 판단하는 'BLEU' 점수에서 구글 시스템은 59점, 다른 시스템은 25점, 사람은 69점을 각각 받은 것이다. 구글 시스템은 또 다른 공개 사진 데이터베이스인 'Flickr30k'의 데이터를 이용한 실험에서는 55~66점을 받았다. 물론 사진에서 보는 것처럼 도로표지판을 냉장고로 엉뚱하게 인식하거나, 밴을 스쿨버스로 오해하는 등 실수도 많았다. 연구팀은 "활용할 수 있는 데이터의 크기가 증가하면 사진 캡션의 정확성도 높아질 것이라는 점이 이번 실험에서 명확해졌다"라고 말했다.

이 시스템은 장래 어떻게 활용될 수 있을까? 구글은 우선 시각장애인들이 그림을 이해하는 데 큰 도움이 될 것으로 기대한다. 또 인터넷 연결이 잘 되지 않는 곳에서는 사진 캡션으로 이미지를 대신할 수도 있다. 이 시스템을 활용하면 웹에서 이미지 검색을 하는 일도 훨씬 효율적이고 간편해질 것이다. 최근 해외 언론에서는 컴퓨터에 기사 작성을 맡기는 사례가 잇따르고 있다. 주식 시황, 날씨 예보 등 주로 정보를 전달하는 기사가 컴퓨터에 맡겨지는 것들이다. 구글의 사진캡션 기술도 머지 않아 이 영역에 도전할 수 있을까?

앞서 나가는 구글 기술력은 곳곳에서 영입해온 뛰어난 인재들의 노력이 빚어낸 성과다. 하지만 그 기술이 현실에서 발현될 수 있는 원천은 구글의 방대한 데이터베이스이다. 이는 세계 인터넷검색 시장에 대한 강력한 장악력에서 나온다. IT 공룡이기에 발상을 현실로 구현하는 다양한 실험을 손쉽게 할 수 있다는 얘기다. 그 이면에는 그 과정에서 스러져간 숱한 IT 기업들의 한숨이 있다. 거대 기업들이 주도해가는 빛나는 미래 기술에 숨어 있는 동전의 양면이다.

PRESENTED BY 호가든