Machine Learning/Machine Learning

[Machine Learning] Pattern Recognition (패턴인식)

데이터 세상 2022. 10. 11. 19:52

Pattern Recognition (패턴 인식)

컴퓨터가 어떤 대상을 인식하는 문제를 다루는 인지과학과 인공지능의 한 분야

모든 대상의 특징들을 가지고 어떤 대상임을 파악하는 것

 

인지과학(Cognitive Science)

  • 지능과 인식문제를 다루는 포괄적인 과학 분야

 

인공지능(Artificial Intelligence)

  • 인간의 학습능력과 추론능력을 인공적으로 모델링하여 외부 대상을 지각하는 능력을 컴퓨터로 구현하는 기술

 

 

패턴 인식 분야

문자 인식

일반적으로 스캐터로 받아들인 텍스트 이미지를 컴퓨터에서 편집 가능한 코드화된 문자로 변환

자동 우편물 분류기, 필기체 문자 인식, 수표 및 지폐 인식, 차량 번호판 인식

 

생체 인식과 인간 행동 패턴 분석 

음성인식, 지문, 홍채, 얼굴 인식, DNA 매핑, 보행 패턴 분석 및 분류, 발화 습관 분석 및 분류 등

 

진단 시스템

의사를 대체하는 것이 아니라 도움을 주기 위한 시스템

자동차 오동작 진단, 의료 진단, EEG(뇌전도) & ECG(심전도) 신호 분석 및 분류 시스템, X-ray 판독 시스템

 

예측 시스템

인공 위성 데이터에 기반한 날씨 예측, 지진 패턴 분석과 예측 시스템, 주가 예측 시스템

 

보안과 군사

네트워크 트래픽 패턴 분석을 통해 컴퓨터 공격 확인, 물품 자동 검색 시스템, 인공위성 영상 분석을 통한 테러리스트 캠프 혹은 지형 목표물 추적 공격, 데이터 신호 분류, 적과 아군 식별

 


패턴 인식 시스템의 처리 과정

패턴인식

(1) 측정

일반적인 실세계 속 대상을 제일 먼저 측정

 

(2) 전처리

잡음을 제거하거나 정말 원하는 특징 부분을 추출해 내기 위한 과정

측정할 때마다 값이 달라지면 안되기 때문에 정규화(Normalization) 과정도 필요

 

(3) 차원 축소

방대한 데이터 중 쓸모 있는 데이터 몇개를 뽑아내기 위해 적용

 

(4) 인식, 예측

인식 알고리즘, 예측 알고리즘 문제의 종류에 따라 분류 알고리즘, 회귀 알고리즘, 서술형 알고리즘 등 다양한 알고리즘을 사용

 

(5) 모델 선택

교차 검증 또는 부트스트랩과 같은 모델 선택 과정을 통해 확인, 그 확인된 것을 결과로 도출

 


특징(Feature) vs Pattern

특징(Feature)

어떤 객체가 가지고 있는 객체 고유의 분별 가능한 측면(aspect), 질(quality), 혹은 특성(characteristic)

예) 색깔과 같은 상징기호 또는 높이/넓이/무게와 같은 수치적인 값

 

Feature Vector

특징이 하나 이상의 수치 값을 경우, d-차원의 열 벡터로 표현

특징들의 그 숫자들을 모아 뭉쳐놓은 것이 바로 벡터

패턴인식 알고리즘의 결정과 더불어 인식률에 결정적인 영향을 미친다

 

Feature Space

특징 벡터가 정의되는 d-차원 공간

예를 들어 특징의 개수가 3개면 3차원 특징 벡터가 되고, 그것은 3차원 공간에서 하나의 점이 된다

이러한 특징들을 벡터화 시키고 그것이 표현되는 d-차원의 공간

 

Scatter Plot

인식 대상이 되는 객체들을 특징 공간에서 특징 벡터가 형성하는 점으로 표현된 그림

특징 공간안에 대상이 여러 개 있으면 점들은 대상만큼 많아지는데, 그걸 점으로 표현한 것


Pattern

개별 객체의 특색(traits)이나 특징(features)들의 집합으로, 특징 벡터로 표현될 수 있는 것들의 집합체

분별이 가능한 어떤 측정치들과 특징들이 여러 개 모여서 덩어리져 있는 것

 

분류 작업에서의 패턴은 변수 쌍{x, w}로 주어지며, 여기에서 x는 특징벡터를 w는 라벨을 말한다.

변수 쌍이 x와 오메가(라벨 혹은 클래스)가 하나의 쌍으로 주어진다

즉, x가 어떤 클래스에 속한다고 라벨까지 붙인, 그런 변수쌍으로 패턴이 주어진다

 

패턴인식에 있어서 특징 벡터를 선택하는 것이 매우 중요!!

특징벡터를 잘 선택해야 패턴인식 알고리즘의 인식률에 큰 결정적 영향을 미친다.

인식이 잘 되냐 안되냐는 특징벡터 선택이 좌우한다.

  • 같은 클래스로부터의 표본은 동일하거나 유사한 특징 값을 가져야 한다
  • 다른 클래스로부터 취해진 표본은 다른 클래스와 서로 다른 특징 값을 가져야 한다

 


패턴인식 시스템 설계 사이클

1. 데이터 수집

안정된 패턴인식 성능을 얻기 위해서 얼마나 많은 표본 데이터가 필요한가를 결정하고 수집

 

2. 특징 선택

대상 패턴에 대한 충분한 사전지식을 통하여 최상의 분류를 위한 특징을 선택

 

3. 모델 선택

패턴인식을 위한 여러 접근법 중에서 (통계적/신경망적/구조적 방법들) 어느 모델(분류모델, 인식모델)을 어떠한 알고리즘을 이용하여 어떻게 구성할 것인가를 결정

 

4. 학습 

수집된 데이터로부터 선택된 모델을 학습을 통하여 자료를 표현하는 완전한 모델을 만드는 단계

컴퓨터를 학습시키는 것(=알고리즘의 parameter들을 구하는 것)

 

5. 인식평가

훈련된 모델이 얼마나 잘 맞는지를 평가

overfitting 또는 일반화(generalization) 여부에 대한 평가 (너무 세밀하게 하거나, 대충하는 것)

 

반응형