[보안뉴스= 나가모리 후지에 NTT컴웨어] 인간의 뇌는 수백억개의 신경세포로 이뤄진 네트워크로 학습하고 인식한다. 요즘 많이 회자되는 ‘딥 러닝(Deep Learning)’은 인간의 신경 세포를 모방한 뉴런 모델을 컴퓨터상에 실현하는 것으로 여러 개를 연결한 뉴럴 네트워크를 통해 이뤄진다. 뉴럴 네트워크를 계층구조로 다층화해 고도의 학습을 하면 인식 정밀도도 비약적으로 향상시킬 수 있다. 딥 러닝을 통해 디지털 이미지나 영상, 음성 등의 다양한 입력에 대한 인식도 고도화할 수 있다. 이에 NTT컴웨어는 딥 러닝을 이용한 화상인식 시스템의 연구개발에 주력했다.
.jpg)
딥 러닝은 크게 2가지 장점이 있다. 그 중 하나는 추상적인 개념을 학습하고 판정할 수 있다는 것이다. 도쿄 타워와 같은 랜드마크를 인식할 때 기존의 화상인식에서는 사전에 인간이 정한 규칙에 근거해 판정한다. 따라서 카메라의 각도, 날씨나 조명의 변화, 차폐물의 유무, 배경 노이즈 등 규칙에 기재되어 있지 않은 차이나 규칙에 기재돼도 그 허용 범위를 넘는 변화가 있으면 판정을 잘못하게 된다. 그러나 딥 러닝을 이용한 화상인식에서는 다양한 시각의 화상을 모두 대량 학습시켜 그 개념을 배우게 할 수 있다. 어린아이가 자연스럽게 물건을 분별할 수 있게 되는 것과 유사하다. 이를 통해 기존의 화상인식에서는 어려웠던 것도 정밀하게 판정하거나 사용자의 독자적인 화상인식 기능을 단순화할 수도 있다.
기존 화상인식에서는 사용자의 독자적인 인식 엔진을 만들 경우에 모든 시각의 가능성을 판정 규칙으로 미리 설정할 필요가 있었고, 인식을 정확하게 하기 위해서는 빠지는 것이 없도록 해야 하며 각각의 판정 규칙 간에 영향을 주지 않도록 규칙을 세심하게 정의할 필요가 있었다. 허나 이런 규칙 설정은 전문성이 요구되는 작업으로, 사용자가 직접 하기는 어렵다. 이때 딥 러닝을 채용하면 판정하고 싶은 대상의 다양한 이미지를 준비만 하면 기계가 자동으로 규칙(개념)을 학습해 사용자의 독자적인 화상인식 시스템을 비교적 쉽게 실현할 수 있다.
.jpg)
딥 러닝 화상인식 서비스 도입의 과제
딥 러닝은 기존의 화상인식 기술로는 실현할 수 없었던 정밀하고 자유도가 높은 화상인식 엔진을 만들 수 있는 기술이지만 서비스를 도입하는 데는 걸림돌이 있다. 사전에 어느 정도의 정밀도를 달성할 수 있는가를 알 수 없는 상황에서 GPU를 구입해야 하는 등 고액의 투자가 이뤄져야 하는 점은 사용자에게 큰 위험 요소다. 딥 러닝 학습은 이미지를 픽셀 단위로 읽어 들이므로 하나를 학습하는데 고가의 GPU(Graphics Processing Units)가 탑재된 서버가 필요하다. 비교적 작은 256×256 사이즈의 이미지 1장을 읽더라도 그 픽셀 수가 6만개 이상에 달하며 이것이 다층의 뉴럴 네트워크 상에서 대량 파라미터로 학습되고, 학습에는 대량의 이미지가 필요하므로 CPU는 수십일에서 1개월이 넘게 걸리는 방대한 계산을 하게 된다. 딥 러닝을 이용한 화상인식의 정밀도는 인식 대상이나 학습 데이터의 양이나 질에 따라 크게 달라지기 때문이다. 이런 수 시간에서 수 일간의 학습에는 GPGPU(General Purpose Computing on GPU) 기능은 필수다.
또 다른 문제는 딥 러닝을 실현하는 소프트웨어의 학습에 필요한 시간이다. 딥 러닝 소프트웨어는 오픈 소스로 여러가지가 공개돼 있지만 실제로 작동하기까지는 다양한 장애 요소가 있다. 일반적으로 서버가 되는 하드웨어를 선택하고 오픈 소스의 동작에 필요한 몇 가지 패키지 소프트를 준비한 뒤 설치해야 하고, 준비한 GPU의 차이나 패키지 소프트웨어의 버전, OS 등에 따라 어떤 조합에서는 문제가 없지만 다른 조합에서는 작동하지 않기도 한다. 이런 문제를 해소해 작동 환경을 구축했다 해도 딥 러닝 소프트웨어의 사용법을 이해하는 시간이 필요하고 하이퍼 파라미터가 미세한 변화로 학습이 잘 안 되거나 생각만큼 학습 성과가 잘 나오지 않는 경우도 많다. 각각의 상황에 따라 적절한 파라미터 튜닝을 하기 위해서는 충분한 검증과 이를 바탕으로 한 노하우가 축적돼야 한다.
클라우드형 딥 러닝 화상인식 시스템
이런 문제를 해결하기 위해 NTT컴웨어는 딥 러닝을 이용한 화상인식 서비스의 검토와 도입을 누구나 쉽게 할 수 있도록 클라우드를 활용한 딥 러닝 화상인식 시스템을 개발했다<그림1>. 이 시스템은 클라우드형으로 제공돼 사용자가 직접 고가의 서버를 구입하지 않고 비교적 저렴하게 이용할 수 있다. 딥 러닝 소프트웨어 이용에 필요했던 환경을 서버에 구축해 제공하므로 사용자는 환경 구축을 생략할 수 있다. 또한, 회사의 독자적인 노하우로 하이퍼 파라미터를 최적 값으로 지정하는 등 학습 제어를 자동하므로 사용자는 간편하게 웹 인터페이스만 조작해 학습 기간을 대폭 줄일 수 있다. 사용부터 실제 서비스 적용까지 시간을 크게 단축하는 것이다.

딥 러닝 화상인식 시스템 기능들
NTT컴웨어의 딥 러닝 화상인식 시스템을 이용하면 관련 지식이 전혀 없어도 인터넷에서 이미지를 검색하듯 이미지 수집부터 화상인식 엔진 작성까지 쉽게 할 수 있다. 이 시스템의 주요 기능은 크게 세 가지다<그림2>.
첫째, 이미지 수집 관리 기능이다. 딥 러닝의 학습을 위해서는 작성하고 싶은 인식 엔진에 맞춰 대량의 이미지와 각 이미지의 정답 값(태그)을 부여해야 한다. 태그가 부여된 이미지 집합을 ‘데이터 세트’라고 한다. 데이터 세트의 작성은 비교적 단순하지만, 이미지를 확인하면서 태그를 붙이기 때문에 의외로 손이 많이 간다. 예를 들어 숙련된 사람이 아니면 구별이 안 되는 이미지의 판별 엔진을 작성할 때는 숙련자의 시점에서 태그를 붙여야 하므로 작업자를 위한 편리한 인터페이스가 필요하다. 이 기능은 사용자가 인식하고 싶은 대상을 키워드 검색으로 수집하거나 로컬 폴더에 축적해 둔 이미지를 일람 표시한 뒤 그중에서 학습하고 싶은 이미지를 마우스 클릭만으로 간편하게 태그를 부여할 수 있다. 일람으로 이미지를 확인하고 태그를 붙일 수 있어 신속하고 쉬운 것이 장점이다.
두 번째는 학습 시행 기능이다. 이미지 수집 관리 기능으로 관리하고자 하는 데이터 세트를 선택하여 사용자가 독자적인 엔진을 만들 수 있다. 엔진은 데이터 세트별로 만들 수 있고, 데이터 세트를 학습할 때마다 각각 별도의 엔진으로 복수 관리할 수 있다. 엔진을 만들 때의 하이퍼 파라미터 설정 등 딥 러닝만의 튜닝에 대해서는 시스템이 적절한 값으로 자동 설정하기 때문에 사용자는 학습 버튼을 클릭하고 학습이 완료되기를 기다리기만 하면 된다.
세 번째는 인식 기능인데, 이를 활용하면 학습 시행 기능으로 만들어진 사용자의 엔진에서 이미지를 선택 입력해 엔진이 판정한 실제 인식 결과를 확인하는 것이 가능하다. 엔진의 정밀도도 바로 확인할 수 있다. 정밀도가 충분하지 않으면 기존의 데이터 세트에 학습 이미지를 추가할 수도 있다. 데이터 세트와 엔진의 작성, 엔진의 정밀도 확인, 데이터 세트의 수정을 반복하면서 어떤 분류 방법이 좋은지 또 어떤 데이터 세트가 좋을지를 사용자가 시도하고 수정할 수 있어 가장 최적화된 엔진을 실제 서비스에 적용할 수 있다.

딥 러닝 화상인식 시스템의 활용
이 시스템에는 사용자가 실현하고 싶은 이상적인 화상인식 엔진을 만들기 위한 기능으로 ‘정도 판정 엔진’ 작성 기능을 제공한다. 딥 러닝을 이용한 판정에서는 통상적으로 이미지에 대해 고양이인지 개인지를 분류하는 분류 판정 엔진이 일반적이다. 그러나 이 화상인식 시스템은 인간의 감성을 수치화해 학습시키고 감성의 정도를 판정 결과로 출력해준다<그림3>. 출력된 수치에 대해서는 사용자가 임의의 임계값을 설정하면 자유롭게 필터링을 할 수도 있다.
NTT컴웨어에서 제공하고 있는 부적절 이미지 필터링 기술도 이 엔진을 활용한다.
실제로 인간의 감성에 근거한 판정 태스크에서는 정도 판정 엔진이 더 정밀하게 판정할 수 있고, 필터링 효과도 높은 것이 확인됐다. 이 시스템에서는 인식 대상이나 목적에 맞춰 분류나 정도 판정 엔진을 선택해 시도할 수도 있으므로 각 엔진의 효과를 단기간에 측정해 더욱 더 정밀한 판정 엔진을 선택 도입할 수 있다.
앞으로의 전개방향은?
여기에서는 NTT컴웨어의 연구 성과인 딥 러닝을 이용한 클라우드형 화상인식 시스템을 소개했다. 이 시스템은 초기 투자를 대폭 줄일 수 있고, 단기간에 사용자 전용 딥 러닝 화상인식 엔진을 작성하고 검증할 수 있는 편리성 높은 시스템이다. 딥 러닝을 이용한 화상처리 기술은 나날이 진화하고 있다. 이미지 분류뿐만 아니라 물체 검출, 이미지와 이미지의 캡션 생성 등 새로운 수법도 소개되고 있다. 이밖에도 음성이나 문장, 센서 데이터 등 이미지가 아닌 데이터와 조합해 더욱 정밀하고 새로운 서비스도 적용할 수 있을 것으로 기대된다.
새로운 기술을 사용하고 싶을 때 바로 시도할 수 있는 환경을 제공한다면 화상처리 기술의 발전이나 보급에도 기여할 수 있다. 향후 화상인식 기술을 중심으로 여러 가지 분야의 딥 러닝 최신기술을 검증·도입해 더욱 많은 업종과 업무에 적용할 수 있는 시스템을 전개해 감으로써 서비스의 품질 향상과 비용 절감에 공헌할 수 있을 것으로 기대된다.
[글_ 나가모리 후지에 NTT컴웨어 비즈니스 인큐베이션부 기술개발 부문]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>