뛰어난 고객 경험 제공 위한 셔터스톡 ‘디지털 트랜스포메이션’ (2)
상태바
뛰어난 고객 경험 제공 위한 셔터스톡 ‘디지털 트랜스포메이션’ (2)
  • 데이터넷
  • 승인 2020.03.14 10:00
  • 댓글 0
이 기사를 공유합니다

딥러닝·컴퓨터 비전 통해 이미지 인식 훈련…개념 이해 기반 정확한 결과물 검출

[데이터넷] 2014년부터 디지털 트랜스포메이션을 추진한 셔터스톡은 현재 클라우드, 쿠버네티스 및 컨테이너 기술 등을 활용해 새로운 서비스들을 선보이고 뛰어난 고객 경험을 제공하고 있다. 그 외에도 독보적인 이미지 검색 기능, 컴퓨터 비전, API 등을 통해 전 세계 고객이 언제 어디서나 필요한 콘텐츠를 얻을 수 있도록 지원하고 있다. 본지에서는 6회에 걸쳐 셔터스톡의 IT 개발자들이 셔터스톡의 기술과 개발 과정을 추진한 과정을 연재한다. <편집자>

<연재 순서>

1. 셔터스톡의 디지털 트랜스포메이션 추진 이유 및 과정
2. 컴퓨터 비전과 딥러닝 기술 활용
3. 기술을 통해 인기 콘텐츠와 신규 콘텐츠 사이에 적절한 밸런스를 찾아 고객에게 제안하는 법
4. 어느 기업이나 API를 통해 셔터스톡과 콘텐츠 연계 가능
5. 프런트엔드 애플리케이션 통합 테스팅
6. 자체 이미지 편집 도구인 셔터스톡 에디터의 다중언어 지원 및 이미지 필터링 기능 개발 과정

머신러닝과 컴퓨터 비전을 상업적으로 어떻게 활용할 수 있을까? 셔터스톡을 창업한 후부터 자리해온 과제 중 하나는 바로 강력하고 확장 가능한 검색 메커니즘을 개발하는 것이었다. 고객이 수십만 장의 이미지 가운데서 빠르고 정확하게 필요한 이미지를 찾을 수 있도록 지원하는 시스템이 필요했다.

언어적 문제

셔터스톡은 3억1000장 이상의 이미지를 보유하고 있다. 각 이미지는 기고자가 올린 약 20개 정도의 키워드를 포함하며, 이는 21개의 언어로 번역된다. 셔터스톡 사용자가 특정한 이미지를 찾고자 할 때는 약 1~2개의 키워드가 활용된다.

셔터스톡 예시 이미지
셔터스톡 예시 이미지

‘백문이 불여일견’이라는 말이 있다. 여기에 적용하자면, 100개의 단어보다는 하나의 이미지가 더 낫다는 뜻이다. 셔터스톡에 이미지를 올릴 때 기고자는 이미지당 약 50개 정도의 키워드를 제시하는데, 위의 예시 이미지의 키워드로는 ‘로봇 팔’, ‘자동차’, ‘조립 공장’ 등이 나올 수 있다.

그러면 셔터스톡은 이 키워드들을 21개의 언어로 번역한다. 만약 이미지와 연관된 키워드를 셔터스톡 사용자가 검색에 사용하지 않는다면, 키워드만 활용해 이미지를 찾는 것은 어려울 수 있다.

자전거 키워드 검색 결과
자전거 키워드 검색 결과

그리고 키워드는 불완전하다. 많은 이유가 있는데, 첫째로는 번역의 문제일 수가 있다. 전 세계 기고자들은 영어로 키워드를 넣어야 하기에 언어적 장벽에 부딪힌다. 위 자전거 이미지의 키워드들인 ‘beach(해변)’, ‘scooter(스쿠터)’, ‘motorbike(오토바이)’는 모두 이미지와 어울리지 않는데 이는 번역의 문제일 수 있다. 또는, 이미지를 검색에 많이 노출해 판매율을 높이고 싶은 기고자가 이러한 키워드들을 넣었을 수도 있다.

그 다음 이유는 한 단어에는 여러 가지 뜻이 있다는 점이다. 예를 들어, 만약 ‘재규어’를 검색하면 동물 재규어와 자동차 브랜드 재규어로 구성된 2가지 결과를 얻게 된다.

세 번째 이유로는 복잡한 연결성이 있다. 만약 사용자가 빨간 자전거와 검정 자동차가 있는 이미지를 찾길 원하면 ‘검정 자동차 빨간 자전거’로 검색할 것이다. 그러나 키워드뿐만 아니라 검색이 쿼리를 이해하는 방식 때문에 원하지 않는 결과를 얻을 수 있다. 이 요청은 문맥상 단어의 의미를 심도 있게 이해해야 하는 어려운 문제다. 자전거는 프레임이 빨간색일 때 빨간 자전거이지만, 자동차는 전체 색상이 검은색일 때 검정 자동차이기 때문이다. 이와 같은 예시들은 언어가 완벽하지 않다는 것을 보여준다.

‘검정 자동차 빨간 자전거’ 검색 결과
‘검정 자동차 빨간 자전거’ 검색 결과

컴퓨터가 ‘볼 수 있도록’ 훈련하는 방법

셔터스톡 컴퓨터 비전 엔진
셔터스톡 컴퓨터 비전 엔진

이미지 검색 문제들은 딥러닝과 컴퓨터 비전을 통해 컴퓨터가 볼 수 있도록 훈련해 개선할 수 있다. 이미지와 해당 라벨을 신경망에 제공하면, 신경망은 이미지 라벨을 예측하는 작업을 수행한다. 그런 다음 셔터스톡은 예측된 라벨과 실제 라벨을 비교한다.

만약 예측이 맞았다면, 그 결정을 이끈 뉴런 연결을 강화하고, 틀렸다면 해당 연결을 약화한다. 이는 모델이 더 이상 개선될 수 없을 때까지 반복된다.

컴퓨터 비전 훈련 예시 이미지
컴퓨터 비전 훈련 예시 이미지

셔터스톡은 훈련된 모델을 활용해 이미지를 고정된 차원의 특징 벡터(feature vector)로 변환한다. 수학적 의미의 벡터로서 실제 숫자 값들의 집합이다. 생성된 벡터를 이미지 컬렉션의 벡터 데이터베이스와 비교하고 가장 유사한 벡터를 찾는다.

컴퓨터 비전 초기 모델
컴퓨터 비전 초기 모델

초기 모델은 이미지 테마를 활용해 유사한 이미지를 찾는 것을 볼 수 있다. 위에서는 컴퓨터 비전 모델이 파란색을 주 컬러로 인지해, 파란색이 많이 포함된 이미지들을 찾았다.

컴퓨터 비전 중기 모델
컴퓨터 비전 중기 모델

점차 발전할수록, 모델은 용접하는 사람에 대한 개념을 이해하기 시작한다. 아직 완벽하지 않기에 주요 컬러를 활용하지 않고 손으로 무엇인가를 하는 사람들에 대한 이미지 결과를 보여준다.

컴퓨터 비전 후기 모델
컴퓨터 비전 후기 모델

마지막으로 융합된 컨버지드(converged) 모델은 용접하는 사람의 이미지에 대한 높은 이해도를 보여준다.

비즈니스 활용 방안

셔터스톡의 딥러닝 활용 방안
셔터스톡의 딥러닝 활용 방안

셔터스톡은 매주 2만 장이 넘는 이미지를 기고자들로부터 받고 있다. 현재 사용자 인터랙션 없이 이미지에 키워드를 넣을 수 있는 수준이다. 셔터스톡의 이미지들은 모두 사람이 직접 검토하는데, 이러한 리뷰 프로세스를 자동화해 많은 부분을 개선할 수 있었다. 지금은 모델 동의서, 키워드, 설명, 이미지 특성 등의 개선 영역을 살펴보고 있다. 검색 영역에서는 사용자에게 원하는 이미지를 보다 빠르게 제공하고자 노력하고 있다. 사람을 식별해 특정 인물의 이미지를 쉽게 검색할 수 있다. 셔터스톡은 매초 6장의 이미지를 판매하고 있으며, 여기서 얻는 데이터도 유용하게 활용된다.

컴퓨터 비전 모델을 활용한 셔터스톡의 혁신 기능

존 오린저(Jon Oringer) 셔터스톡 CEO
존 오린저(Jon Oringer) 셔터스톡 CEO

셔터스톡은 컴퓨터 비전 모델을 활용해 혁신적인 기능들을 출시함으로써 사용자 편의성을 증대하고 고객 경험을 향상했다. 그동안 셔터스톡이 선보인 주요 기능들은 다음과 같다.

1) 자동 키워드 제안 도구
셔터스톡의 컴퓨터 비전 모델이 기고자가 올린 이미지를 인식하고 분석해 자동으로 키워드를 제안한다. 초반에 컴퓨터 비전 모델을 구축하기 시작했을 때 동종업계의 다른 기업들은 단순 키워드 기능에 주력했다. 셔터스톡은 ‘유사 이미지’라는 보다 어려운 길을 택했다. 그러나 유사 지수를 만든 후에는 키워드 작업이 무척 쉬워졌다. 이 기능은 셔터스톡의 100만 명 이상의 기고자들을 지원한다.

2) 유사 이미지
한 이미지를 선택하면 컴퓨터 비전 모델이 그와 유사한 이미지들을 찾아서 이미지 페이지 하단에 제시한다.

3) 리버스 이미지 검색
이미지 검색 기능을 사용해 사용자가 찾고 싶어 하는 분위기의 이미지를 업로드 하면 검색 기능에서 비슷한 이미지를 찾아 보여준다. 키워드로만 검색한다면 찾기 어려운, 비슷한 톤과 분위기의 이미지들을 컴퓨터 비전 모델을 통해 찾을 수 있게 되었다.

4) 상세 검색(Refine)
검색 결과 페이지에서 사용자들이 찾는 이미지와 가장 비슷한 여러 장의 이미지를 클릭해 선택하면 셔터스톡의 기술이 선택된 이미지들과 공통점을 가진 이미지를 찾아준다.

5) 카피 스페이스(Copy Space)
사용자들이 텍스트를 추가할 수 있는 공간이 있는 이미지를 검색할 수 있다. 이미지 내 카피 스페이스 위치 및 크기도 지정해 검색 가능하다.

6) 리빌(Reveal)
리버스 이미지 검색 기능을 가진 구글 크롬 확장 프로그램으로, 사용자들이 온라인상에서 선택한 특정 이미지를 가지고 셔터스톡의 3억1000만이 넘는 컬렉션 중에서 비슷한 사진, 벡터, 일러스트레이션을 찾을 수 있도록 지원한다.

7) 공간 구도 검색(Composition Search)
사용자가 원하는 이상적인 이미지를 찾는 것은 어려울 수 있다. 이 도구는 사용자들이 찾고자 하는 것을 일련의 앵커(anchor)로 분류하고, 각 앵커는 위치뿐만 아니라 쿼리를 지정한다. 셔터스톡의 검색 엔진은 컴퓨터 비전, 자연어 처리 그리고 최첨단 정보 검색 기술을 조합해 가장 알맞은 결과를 제시한다. 여기서 핵심은 셔터스톡이 이미지에 무엇이 어디에 있는지 특정하는 데이터를 사용하지 않았다는 것이다. 컴퓨터 비전 모델이 스스로 이를 학습했다.



댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.