Devon 2011-b-4 패턴인식을 이용한 멀티미디어 검색

Preview:

Citation preview

패턴인식을 이용한 멀티미디어 검색 및 응용 기술 소개

최현철 멀티미디어기술팀, Daum

2011.11.25

Daum DevOn 2011

멀티미디어 인식? 검색?

개선문

멀티미디어 인식? 검색?

멀티미디어 인식? 검색?

멀티미디어 인식? 검색?

파리

멀티미디어 인식? 검색?

멀티미디어 인식? 검색?

프랑스 파리

멀티미디어 인식? 검색?

멀티미디어 인식? 검색?

루브르 박물관 문

멀티미디어 인식? 검색?

카르젤 개선문

멀티미디어 인식? 검색?

카르젤 개선문

멀티미디어 인식? 검색?

개선문

파리

프랑스 파리

루브르 박물관 문

카르젤 개선문

멀티미디어 인식? 검색?

멀티미디어 인식? 검색?

멀티미디어 인식? 검색?

멀티미디어 인식? 검색?

멀티미디어 인식? 검색?

멀티미디어 인식? 검색?

개요

• 멀티미디어 인식? 검색? • 멀티미디어 vs. 텍스트 • 패턴인식? • 패턴인식 알고리즘 @ 멀티미디어 서비스 • 데모 • 가능한 응용 서비스들 • 마무리

멀티미디어 인식? 검색?

• 텍스트로 하는 멀티미디어 검색

검색어

새로운 검색어 리스트

(1)

(2)

[사용자가 해야 하는 작업]

(1) 멀티미디어에서 적절한 검색어 찾기

(2) 찾은 검색어로 텍스트 검색

(3) 검색 결과에서 새로운 검색어 선택

(3)

(4) 원하는 결과 얻을 때까지 (2)~(3) 과정 반복

멀티미디어 인식? 검색?

• 멀티미디어로 하는 멀티미디어 검색

검색어

새로운 검색어 리스트

(1)

(2)

[사용자가 해야 하는 작업]

(1) 멀티미디어에서 적절한 검색어 찾기

(2) 찾은 검색어로 텍스트 검색

(3) 검색 결과에서 새로운 검색어 선택

(3)

(4) 원하는 결과 얻을 때까지 (2)~(3) 과정 반복

멀티미디어를 입력으로 정보 검색

멀티미디어 인식? 검색?

• 멀티미디어로 하는 멀티미디어 검색

[사용자가 해야 하는 작업]

멀티미디어 vs. 텍스트

GMC

GMC

GMC

Global Media Center

글로벌 미디어 센터

제주 다음, 제즈 다음

패턴의 다양성

GMC GMC

GMC

GMC

[문구, 오류] [폰트] [크기] [정렬]

GMC

멀티미디어 vs. 텍스트

GMC

GMC

GMC

Global Media Center

글로벌 미디어 센터

제주 다음, 제즈 다음

패턴의 다양성

GMC GMC

GMC

GMC

[문구, 오류] [폰트] [크기] [정렬]

GMC

쥐엠씨

글로벌 미디어 센터

글로발 메디어 쎄널~

제주 다음

중간 톤

높은 톤

낮은 톤

중간 크기

높은 크기

작은 크기 즉시 시작

1초 후 시작

시작 위치 잘림

멀티미디어 vs. 텍스트

패턴의 다양성

GMC GMC

ASCII 47 4D 43

높은 톤 중간 크기

작은 크기

규약

멀티미디어 vs. 텍스트

데이터 연속성

GMC = G + M + C

= +

+ + =

=

특징 추출 난이도

ASCII: 47 4D 43

특징 벡터 - 복잡한 수학 연산 - 고차원 (수십-수천 차원)

1차원 1차원 1차원

멀티미디어 vs. 텍스트 항목 텍스트 영상 음성

입력 쿼리 단어 키워드 이미지 소리

데이터 다양성 문구 변화 문구 에러

영상 내용 변화 크기 변화 정렬 상태 노이즈

높낮이 크기 시작 위치 노이즈

데이터 연속성 음소 또는 글자 단위 - 의미 있는 단위

픽셀단위 - 의미 없는 단위

샘플링 횟수 단위 - 의미 없는 단위

특징 추출 ASCII (precision 100 %)

픽셀값으로 부터 계산되는 고차원 벡터

소리 파형으로부터 계산되는 고차원 벡터

필요한 쿼리의 양 몇 개의 단어 충분한 크기의 이미지 충분한 길이의 소리

검색 속도 빠름 느림 (높은 연산량) 느림 (높은 연산량)

패턴인식?

입력 (x) 출력 (y)

출력 종류 정체 (what?) 위치 (where?) 위치 리스트

(document list)

응용의 명칭 인식 (recognition) 검출 (detection) 검색 (search)

연결 방법

연결 방법 샘플과의 거리 입력으로 도출된 값

방법의 명칭 매칭 (matching) 학습 (learning)

해싱 (hashing)

패턴인식? (텍스트 검색)

쿼리 (x) 인식 결과 (y) y = F(x)

적은 양의 샘플

아쿠아리움: url = … 도서관: url = … 제주도: url = …

아쿠아리움 url = …

많은 양의 샘플 샘플의 규칙

검색: 해싱 인식: 매칭, 추론

검색: DB 해싱 인식: 모델 학습

패턴인식? (멀티미디어 검색)

쿼리 (x) 인식 결과 (y) y = F(x)

적은 양의 샘플

x1: 정보 … x2: 정보 … x3: 정보 …

url = … 무엇? 관련 정보?

많은 양의 샘플 샘플의 규칙

검색: 해싱 인식: 매칭, 추론

검색: DB 해싱 인식: 모델 학습

특징 벡터 x

멀티미디어 패턴인식? 개발 과정?

학습용 DB 생성

1. 관련 멀티미디어 자료 수집

2. 유의미한 정보 마킹 (ground truth) (수 만, 수 십 만 번의 수작업)

멀티미디어 패턴인식? 개발 과정?

학습용 DB 생성

학습 or 모델 생성

쿼리 (x) 인식 결과 (y) y = F(x)

1. 특징 벡터 추출

2. 입력출력 함수 만들기

x = {1.25, 3.5, … }

멀티미디어 패턴인식? 개발 과정?

학습용 DB 생성

학습 or 모델 생성

테스트용 DB 생성

멀티미디어 패턴인식? 개발 과정?

학습용 DB 생성

학습 or 모델 생성

테스트용 DB 생성

성능 테스트

실제 데이터 유입 테스트 및 검수

최종 성능 확정

멀티미디어 패턴인식? • 어려운 문제들

– 방대한 양의 학습 데이터 획득 • 수 십, 수 천만 장의 의미 있는 영상 모음 • 손수 하는 ground truth 마킹

– 최적 특징벡터, 학습 방법 선택을 위한 방대한 양의 실험

• 기존의 특징벡터 + 새로운 특징벡터 벤치마킹 • 학습 방법 및 매칭 방법 벤치마킹

– 성능 테스트를 위한 DB 구축

• 성능 테스트를 위한 ground truth 마킹 • 다양한 변화를 포괄하는 멀티미디어 DB 구축

– 이러한 작업을 위한 리소스 필수 !!!

• 매칭 or 해싱

• 학습

사물 검색

Auto-Privacy Detection System

유입 데이터 필터링 - 성인 필터 - 방송사 로고 필터 - 얼굴 검출 - …

음악 검색

음성 검색

멀티미디어 인식 서비스 @ 멀티미디어기술팀

이미지 ranking

이미지 중복 검출

사물 검색 - 매칭

• 사진으로 찍은 그림, 로고, 마크, 책 표지 등을 인식하여 정보를 제공해 준다.

사물 검색

Visual Words

Visual Words

Visual Words

Visual Words

음악 검색 – 해싱, 매칭

• 짧은 구간의 음악 소리를 입력 받아 해당 곡을 찾아준다.

음악의 특징 추출 (1)

음악 소리

음악의 특징 추출 (2)

음악 소리

Sampling (A/D 변환)

… 32 353 636 321 -3 -382 -493 -273 13 24 23 -24 -46 …

음악의 특징 추출 (3)

음악 소리

Sampling (A/D 변환)

… 32 353 636 321 -3 -382 -493 -273 13 24 …

주파수 분석 (FFT)

... 283 392 482 272 284 393 283 927 ...

... 372 382 573 967 54 237 406 238 ...

... 476 573 29 272 953 734 384 684 ...

... 284 262 7 284 33 574 584 39 ...

... 98 2 39 83 382 74 9 48 ...

높은 주파수 대역 중간 주파수 대역 낮은 주파수 대역

“각 주파수 대역의 강도”

음악 검색과 텍스트 검색

<음악 검색> <텍스트 검색>

입력시간: 3 초 이상 서비스 곡 수: 수십만 곡 인식 시간: 평균 0.4 초

Auto-Privacy Detection System - 학습

• 공공장소에서 촬영된 영상 내의 개인 정보 노출 위험이 있는 내용을 검출하여 블라인드 처리한다.

Auto-Privacy Detection System

Auto-Privacy Detection System

전국 로드뷰 영상 수 천만 장 느린 검수 시간 많은 리소스 필요 업데이트 느려짐

자동으로, 빠르게, 적은 리소스로, 얼굴, 번호판을 찾자.

Auto-Privacy Detection System

쿼리 (x) 인식 결과 (y)

F(x) = y -: 얼굴 아님

+: 얼굴

특징벡터

특징벡터 Task 0. 샘플 추출 Task 1. 특징벡터 선택 Task 2. F(x) 만들기

Auto-Privacy Detection System

Task 0. 샘플 추출

수 만, 수 십 만 샘플 추출, 100 % 수작업

Auto-Privacy Detection System

Task 1. 특징벡터 선택

Pixel value Gradient …

Pixel value Gradient …

두 class 사이가 잘 분리 될 수 있는 공간으로 투영

Auto-Privacy Detection System

Task 2. F(x) 만들기

y = F(x)

-: 얼굴 아님

+: 얼굴

Auto-Privacy Detection System

Task 2. F(x) 만들기

y = F(x)

1. 확률 모델 - 특징벡터가 주어졌을 때, face 일 확률 P( Face | x ) 을 계산한다. - Gaussian Model - Hidden Markov Model - Bayesian Network

N(mf, sigmaf2)

N(mn, sigman2)

- 장점 작은 수의 샘플로 일반적인 모델을 만들 수 있다. - 단점 기본적인 확률 분포 모양을 가정하기 때문에 정확한 분포는 아니다. 확률 분포를 정확하게 모사할 수록 연산시간이 늘어난다.

Auto-Privacy Detection System

Task 2. F(x) 만들기

y = F(x)

2. Fitting 모델 - 샘플과 타겟을 매핑하는 함수를 에러 최소화 기법으로 구하는 방법 - 신경망 (Neural Network): 선형 또는 약한 비선형 경계의 조합으로 강한 비선형 경계를 만든다.

y = -1

y = +1

y = +1 - 장점 학습 샘플과 타겟이 주어지면 쉽게 학습 할 수 있다. 선형 또는 약한 선형 경계의 조합이므로 계산이 빠르다. - 단점 학습 데이터가 충분하지 않을 경우 초과 학습 (over-fitting) 되어서, 학습에 사용되지 않은 입력에 대해 엉뚱한 출력이 나올 수 있다.

Auto-Privacy Detection System

Task 2. F(x) 만들기

y = F(x)

3. 마진 최대화 모델 - 두 상반되는 class 에 속한 가장 가까운 샘플과의 거리가 최대가 되도록 하는 경계의 함수를 구한다. - Support Vector Machine

- 장점 가장 적은 샘플로 일반화 성능이 좋은 학습이 가능하다. - 단점 학습 데이터를 잘 못 선정할 경우, 잘못된 경계를 찾게 된다. 2-class 학습 방법이므로 여러 class 를 출력하려면 class 개수 만큼의 모델이 필요하다. 최적 학습 샘플 (support vector) 이 많을 수록 느려진다.

Auto-Privacy Detection System

Model 1 Model 2 Model 3 +1: 얼굴 특징벡터

-1: reject -1: reject -1: reject

Fastest, loosest Fast, looser slow, tight

계층적 패턴 인식 빠른 결과 도출 가능 고차원 벡터 공간

저차원 벡터 공간

Auto-Privacy Detection System

특징 벡터 추출

Model

+1: 얼굴 -1: 얼굴 아님

가능한 서비스

• 얼굴 검출 및 인식 (Picasa) – 주요 인물 사진 검색 – 인물 별 사진 정리

• 글자 인식 (OCR) (HP)

• 자연스런 음성 인식 (Siri)

• 동영상 검색 (엔써즈)

• 멀티미디어 인식 및 검색 서비스 – 목적: Query 을 멀티미디어로 넓은 다양성의 폭 고차원의 특징벡터 학습을 위한 방대한 자료 및 처리량

• 멀티미디어 인식 및 검색 서비스

– 방대한 DB 작업 모든 다양성을 포함하는 DB 구축. – 특징 벡터 선택 문제 다양성 포괄하면서 구분 성능 높게. – 학습 방법 (또는 DB 구조) 선택 문제 빠르고 정확하게.

마무리

멀티미디어를 누리는 자유로움으로부터 !!

감사합니다.

Recommended