19. 개요
• 멀티미디어 인식? 검색?
• 멀티미디어 vs. 텍스트
• 패턴인식?
• 패턴인식 알고리즘 @ 멀티미디어 서비스
• 데모
• 가능한 응용 서비스들
• 마무리
20. 멀티미디어 인식? 검색?
• 텍스트로 하는 멀티미디어 검색
(2)
검색어
(1)
(3) 새로운 검색어 리스트
[사용자가 해야 하는 작업]
(1) 멀티미디어에서 적절한 검색어 찾기
(2) 찾은 검색어로 텍스트 검색
(3) 검색 결과에서 새로운 검색어 선택
(4) 원하는 결과 얻을 때까지 (2)~(3) 과정 반복
21. 멀티미디어 인식? 검색?
• 멀티미디어로 하는 멀티미디어 검색
(2)
검색어
(1)
(3) 새로운 검색어 리스트
[사용자가 해야 하는 작업]
(1) 멀티미디어에서 적절한 검색어 찾기
(2) 찾은 검색어로 텍스트 검색
(3) 검색 결과에서 새로운 검색어 선택
(4) 원하는 결과 얻을 때까지 (2)~(3) 과정 반복
22. 멀티미디어 인식? 검색?
• 멀티미디어로 하는 멀티미디어 검색
[사용자가 해야 하는 작업]
멀티미디어를 입력으로 정보 검색
23. 멀티미디어 vs. 텍스트
패턴의 다양성
GMC
[문구, 오류] [폰트] [크기] [정렬]
Global Media Center GMC
GMC GMC
글로벌 미디어 센터 GMC GMC
제주 다음, 제즈 다음 GMC
GMC
24. 멀티미디어 vs. 텍스트
패턴의 다양성
GMC
[문구, 오류] [폰트] [크기] [정렬]
Global Media Center GMC
GMC GMC
글로벌 미디어 센터 GMC GMC
제주 다음, 제즈 다음 GMC
낮은 톤
GMC
글로벌 미디어 센터 작은 크기 즉시 시작
쥐엠씨
글로발 메디어 쎄널~ 중간 톤 중간 크기 1초 후 시작
제주 다음 높은 톤 높은 크기 시작 위치 잘림
26. 멀티미디어 vs. 텍스트
데이터 연속성 특징 추출 난이도
GMC = G + M + C ASCII: 47 4D 43
1차원 1차원 1차원
= +
= + +
특징 벡터
= - 복잡한 수학 연산
- 고차원 (수십-수천 차원)
27. 멀티미디어 vs. 텍스트
항목 텍스트 영상 음성
입력 쿼리 단어 키워드 이미지 소리
데이터 다양성 문구 변화 영상 내용 변화 높낮이
문구 에러 크기 변화 크기
정렬 상태 시작 위치
노이즈 노이즈
데이터 연속성 음소 또는 글자 단위 픽셀단위 샘플링 횟수 단위
- 의미 있는 단위 - 의미 없는 단위 - 의미 없는 단위
특징 추출 ASCII 픽셀값으로 부터 계산 소리 파형으로부터 계
(precision 100 %) 되는 고차원 벡터 산되는 고차원 벡터
필요한 쿼리의 양 몇 개의 단어 충분한 크기의 이미지 충분한 길이의 소리
검색 속도 빠름 느림 (높은 연산량) 느림 (높은 연산량)
28. 패턴인식?
연결 방법
입력 (x) 출력 (y)
위치 리스트
출력 종류 정체 (what?) 위치 (where?)
(document list)
응용의 명칭 인식 (recognition) 검출 (detection) 검색 (search)
연결 방법 샘플과의 거리 입력으로 도출된 값
매칭 (matching) 학습 (learning)
방법의 명칭
해싱 (hashing)
29. 패턴인식? (텍스트 검색)
쿼리 (x) 인식 결과 (y)
y = F(x)
검색: 해싱
인식: 매칭, 추론
아쿠아리움 url = …
적은 양의 샘플 많은 양의 샘플 샘플의 규칙
아쿠아리움: url = …
도서관: url = …
제주도: url = … 검색: DB 해싱
인식: 모델 학습
30. 패턴인식? (멀티미디어 검색)
쿼리 (x) 인식 결과 (y)
y = F(x)
검색: 해싱
인식: 매칭, 추론
특징 벡터 x url = …
무엇?
관련 정보?
적은 양의 샘플 많은 양의 샘플 샘플의 규칙
x1: 정보 …
x2: 정보 …
x3: 정보 … 검색: DB 해싱
인식: 모델 학습
31. 멀티미디어 패턴인식? 개발 과정?
학습용 DB 생성
1. 관련 멀티미디어 자료 수집
2. 유의미한 정보 마킹 (ground truth)
(수 만, 수 십 만 번의 수작업)
32. 멀티미디어 패턴인식? 개발 과정?
학습용 DB 생성
학습 or 모델 생성
1. 특징 벡터 추출 x = {1.25, 3.5, … }
2. 입력출력 함수 만들기
쿼리 (x) 인식 결과 (y)
y = F(x)
34. 멀티미디어 패턴인식? 개발 과정?
학습용 DB 생성
학습 or 모델 생성
테스트용 DB 생성
성능 테스트
실제 데이터
유입 테스트 및 검수
최종 성능 확정
35. 멀티미디어 패턴인식?
• 어려운 문제들
– 방대한 양의 학습 데이터 획득
• 수 십, 수 천만 장의 의미 있는 영상 모음
• 손수 하는 ground truth 마킹
– 최적 특징벡터, 학습 방법 선택을 위한 방대한 양의 실험
• 기존의 특징벡터 + 새로운 특징벡터 벤치마킹
• 학습 방법 및 매칭 방법 벤치마킹
– 성능 테스트를 위한 DB 구축
• 성능 테스트를 위한 ground truth 마킹
• 다양한 변화를 포괄하는 멀티미디어 DB 구축
– 이러한 작업을 위한 리소스 필수 !!!
36. 멀티미디어 인식 서비스 @ 멀티미디어기술팀
• 매칭 or 해싱 이미지 중복 검출
음악 검색
이미지 ranking
음성 검색
사물 검색
• 학습
유입 데이터 필터링
- 성인 필터
- 방송사 로고 필터
- 얼굴 검출
Auto-Privacy - …
Detection System
37. 사물 검색 - 매칭
• 사진으로 찍은 그림, 로고, 마크, 책 표지
등을 인식하여 정보를 제공해 준다.
사물 검색
60. Auto-Privacy Detection System
Task 2. F(x) 만들기 1. 확률 모델
- 특징벡터가 주어졌을 때, face 일 확률
P( Face | x ) 을 계산한다.
- Gaussian Model
y = F(x) - Hidden Markov Model
- Bayesian Network
N(mf, sigmaf2)
- 장점
작은 수의 샘플로 일반적인 모델을
만들 수 있다.
- 단점
N(mn, sigman2) 기본적인 확률 분포 모양을 가정하
기 때문에 정확한 분포는 아니다.
확률 분포를 정확하게 모사할 수록
연산시간이 늘어난다.
61. Auto-Privacy Detection System
Task 2. F(x) 만들기 2. Fitting 모델
- 샘플과 타겟을 매핑하는 함수를 에러
최소화 기법으로 구하는 방법
- 신경망 (Neural Network): 선형 또는
약한 비선형 경계의 조합으로 강한 비
선형 경계를 만든다.
y = F(x) - 장점
y = +1
학습 샘플과 타겟이 주어지면 쉽게
y = +1 학습 할 수 있다.
선형 또는 약한 선형 경계의 조합이
므로 계산이 빠르다.
- 단점
학습 데이터가 충분하지 않을 경우
초과 학습 (over-fitting) 되어서, 학습에
y = -1 사용되지 않은 입력에 대해 엉뚱한 출
력이 나올 수 있다.
62. Auto-Privacy Detection System
Task 2. F(x) 만들기 3. 마진 최대화 모델
- 두 상반되는 class 에 속한 가장 가까
운 샘플과의 거리가 최대가 되도록 하
는 경계의 함수를 구한다.
y = F(x) - Support Vector Machine
- 장점
가장 적은 샘플로 일반화 성능이 좋
은 학습이 가능하다.
- 단점
학습 데이터를 잘 못 선정할 경우, 잘
못된 경계를 찾게 된다.
2-class 학습 방법이므로 여러 class
를 출력하려면 class 개수 만큼의 모델
이 필요하다.
최적 학습 샘플 (support vector) 이
많을 수록 느려진다.
63. Auto-Privacy Detection System
계층적 패턴 인식 빠른 결과 도출 가능
고차원 벡터 공간
Fastest, loosest Fast, looser slow, tight
특징벡터 Model 1 Model 2 Model 3 +1: 얼굴
-1: reject -1: reject -1: reject
저차원 벡터 공간
65. 가능한 서비스
• 얼굴 검출 및 인식 (Picasa)
– 주요 인물 사진 검색
– 인물 별 사진 정리
• 글자 인식 (OCR) (HP)
• 자연스런 음성 인식 (Siri)
• 동영상 검색 (엔써즈)
66. 마무리
• 멀티미디어 인식 및 검색 서비스
– 목적: Query 을 멀티미디어로
넓은 다양성의 폭
고차원의 특징벡터
학습을 위한 방대한 자료 및 처리량
• 멀티미디어 인식 및 검색 서비스
– 방대한 DB 작업 모든 다양성을 포함하는 DB 구축.
– 특징 벡터 선택 문제 다양성 포괄하면서 구분 성능 높게.
– 학습 방법 (또는 DB 구조) 선택 문제 빠르고 정확하게.