선형적 특징추출 방법의 특성 비교
Comparisons of Linear Feature Extraction Methods
오상훈 목원대학교 정보통신공학과 Sang-Hoon Oh(shoh@mokwon.ac.kr)
	요약
	이 논문은 고차원의 데이터를 저차원으로 줄이는 방법 중 하나인 특징추출에 대한 방법들의 특성을 비교한다. 비교대상 방법은 전통적인 PCA(Principal Component Analysis)방법과 시각피질의 특성을 보인다고 알려진 ICA(Independent Component Analysis), 국소기반인식을 구현한 NMF(Non-negative Matrix Factorization), 그리고 이의 성능을 개선한 sNMF(Sparse NMF)로 정하였다. 추출된 특징들의 특성을 시각적으로 확인하기 위하여 필기체 숫자 영상을 대상으로 특징추출을 수행하였으며, 인식기에 적용한 효과의 확인을 위하여 추출된 특징을 다층퍼셉트론에 학습시켜보았다. 각 방법의 특성을 비교한 결과는 응용하고자 하는 문제에서 어떤 특징을 추출하기 원하느냐에 따라 특징추출 방법을 선정할 때 유용할 것이다. ■ 중심어 :∣특징추출∣주요소성분분석∣독립성분분석∣NMF∣sNMF∣
	Abstract
	In this paper, feature extraction methods, which is one field of reducing dimensions of high-dimensional data, are empirically investigated. We selected the traditional PCA(Principal Component Analysis), ICA(Independent Component Analysis), NMF(Non-negative Matrix Factorization), and sNMF(Sparse NMF) for comparisons. ICA has a similar feature with the simple cell of V1. NMF implemented a "parts-based representation in the brain" and sNMF is a improved version of NMF. In order to visually investigate the extracted features, handwritten digits are handled. Also, the extracted features are used to train multi-layer perceptrons for recognition test. The characteristic of each feature extraction method will be useful when applying feature extraction methods to many real-world problems. ■ keyword :∣Feature Extraction∣PCA∣ICA∣NMF∣sNMF∣

I. 서 론

한국콘텐츠학회논문지 '09 Vol. 9 No. 4

선형적 특징추출 방법의 특성 비교

접수번호 : #090130-001 접수일자 : 2009년 01월 30일	심사완료일 : 2009년 03월 23일 교신저자 : 오상훈, e-mail : shoh@mokwon.ac.kr

고차원의 데이터를 저차원으로 줄이는 문제는 많은 응용 분야에 사용되기 때문에 중요한 연구 분야로 다루어져 왔다. 이러한 차원 축소에는 크게 두 가지(특징추출(feature extraction)과 특징 선택(feature selection))의 접근 방식이 있다[1]. 특징추출은 고차원의 데이터를 저차원의 데이터로 변환시키는 것이고, 특징선택은 변환 없이 고차원 데이터의 부분집합을 선택하는 것이다. 이 논문에서는 데이터의 변환에 관심을 두고서 특징추출에 대하여 고찰하고자 한다.

특징추출 방법들 중 선형적 방법의 대표적인 것들을 살펴보면, 전통적으로 PCA (Principal Component Analysis)를 특징추출에 많이 사용하였는데, PCA는 주어진 데이터의 상관행렬(correlation matrix)에서 데이터의 변동이 심한 방향들을 찾아낸다[2]. LDA(Linear Discriminant Analysis)는 교사학습에서 클래스 간의 거리와 클래스 내부에서의 거리의 비율이 최대가 되도록 하는 특징을 찾아내는 방법이다[3]. 또한, ICA(Independent Component Analysis)는 입력으로부터 독립적인 성분의 특징을 추출해내는 기능이 있으며, 두뇌의 V1 시각피질에서 추출하는 특징과 유사한 특징을 추출한다는 연구 결과는 주목을 받았었다[5][8]. 사람과 유사하게 입력 영상의 부분적인 특징을 찾아낸다는 NMF(Non-negative Matrix Factorization) 역시 많은 주목을 끌었다[4]. 특히, 입력 데이터가 양의 값만을 가지는 영상을 대상으로 하는 경우에는 NMF가 유용하다고 알려져 있다.  NMF는 고차원의 데이터 행렬을 저차원의 베이시스 행렬(basis matrix)과 계수 행렬(coefficient matrix)의 곱으로 표시한다. NMF의 특징 중 하나는 sparse 베이시스 벡터(basis vectors)를 얻을 수 있다는 것이고, 이 sparse 특성 때문에 parts-based 베이시스 벡터를 얻을 수 있다. 베이시스 행렬과 계수 행렬의 sparseness를 조절한다면 NMF의 더 유용한 결과를 얻을 수 있을 것이라는 기대로 많은 연구가 진행되었으며, 특히 Sparse NMF[1]가 주목할 만하다.

이 외에 고차원의 데이터를 저차원으로 축소시키는 방법으로 LLE(Locally Linearly Embedding)와 Isomap(Isometric feature mapping)도 있다. Isomap은 고차원 상의 데이터들을 상호간의 거리가 유지되도록 저차원의 데이터로 변형시키는 방법이며[9], LLE는 고차원 상의 이웃(neighborhood) 관계가 저차원에서 유지되도록 하는 방법이다[10]. 이 두 방법은 특징추출 방법이라기보다는 차원축소 방법으로 보아야 한다.

이 논문은 위에서 열거한 방법들 중 데이터로부터 선형적으로 특징을 추출하는 방법들의 특징을 비교하여, 향후 고차원의 데이터에서 특징을 추출하고자 할 경우에 어떤 방법을 사용할 지에 대한 기본 지식을 제공하고자 한다. 비교대상으로 삼은 선형적 특징추출 방법은 전통적으로 많이 사용되는 PCA[2], 두뇌의 V1 시각피질과 특성이 유사하여 주목받은 ICA[5], 양의 값만을 지니는 영상에서 추출해낸 특징이 두뇌의 “국소에 기반한 특징추출”과 유사하다고 알려진 NMF[4]와 이의 특징을 개선한 Sparse NMF[1]이다.  이 방법들을 필기체 숫자 영상을 대상으로 시뮬레이션 하여 추출되는 특징들의 특성을 조사해보고자 한다. 필기체 숫자 영상을 대상으로 선정한 이유는 특징추출 효과를 시각적으로 쉽게 확인할 수 있기 때문이다.

이 논문의 구성은 다음과 같다. Section II에서 대표적인 선형적 특징추출 방법들인 PCA, ICA, NMF, 그리고 sNMF를 간략히 소개한다. Section III에서 필기체 숫자 영상을 대상으로 각 방법을 사용하여 특징을 추출하고, 어떠한 특성을 지녔는지 실험적으로 분석한다. 그리고, 각 특징추출을 이용한 인식실험도 실시한다. 마지막으로 Section IV에서 결론을 맺는다.

II. 선형적 특징추출 방법들

1. PCA(Principal Component Analysis)

PCA는 주어진 데이터 [eqn: bold{x} =[x _{1} ,x _{2} ,...,x _{N} ] ^{T}]로부터 상관행렬 [eqn: bold{R} =E[ bold{x} bold{x} ^{T} ]]를 구한 후, 이 행렬을 대상으로 eigenvector와 eigenvalue를 찾아내는 방법이다[2]. 여기서,[eqn: E[ BULLET ]]는 기대치 오퍼레이터이다. 이때, eigenvalue가 가장 큰 값에 해당하는 eigenvector는 데이터에서 가장 변동성이 심한 방향을 나타낸다. 즉, 각 eigenvector에 연관된 eigenvalue는 데이터의 변동성이 특정 방향으로 얼마나 되는 지에 대한 정보를 지녔으며, eigenvector는 그 방향을 뜻한다. 이 PCA방법은 주어진 데이터를 오차가 최소화하도록 차원을 축소해주는 특징이 있다. 또한, 각 eigenvector 성분들은 데이터 요소 간의 상관관계(correlation)가 제거되는 방향이다.

2. ICA(Independent Component Analysis)

ICA는 선형적 변환을 통하여 독립적인 신호를 찾아내는 방법이다. 먼저 신호원 벡터(source signal vector)는

[eqn: bold{s} =[s _{1} ,s _{2} ,...,s _{N} ] ^{T}]               (1)

와 같이 주어진다고 하자. 여기서[eqn: s _{i} (i=1,2,...,N)]는 서로 독립이라고 하며, 그 분포는 비가우시안(non-Gaussian) 이거나 아니면 오직 한 성분만 가우시안(Gaussian)이라고 한다. 그리고 우리가 측정하는 신호는

[eqn: bold{x} = bold{A} bold{s}]                    (2)

와 같이 주어진다고 하자. 이때 A는 N⨯N 혼합행렬(mixing matrix)이라고 한다. 즉, 여러 신호원들이 합쳐져서 [eqn: bold{x}]로 측정이 되는 데, 그 합쳐지는 특성이 혼합행렬 A에 나타난 형태이다.

위와 같은 가정 하에, 신호원 s에 관한 정보가[eqn: s _{i}]는 서로 독립이라는 것 이외에는 전혀 없는 상황에서, 측정된 신호 x로부터 다시 신호원 벡터 s를 복원해 내고자 한다. 이러한 목적으로

[eqn: bold{u} = bold{W} bold{x}]                  (3)

와 같이 변환 한 후, [eqn: y _{i} =g(u _{i} )]형태로 비선형 변환을 거친다. 이때, [eqn: bold{W}]는 신호원을 분리해내므로 N×N 분리 행렬(unmixing matrix)이라고 하며, [eqn: g(.)]는 신호원(source signal)의 cumulative density function이 되도록 한다. 이제, [eqn: y_i]들이 지닌 결합엔트로피(joint entropy)가 최대로 되도록 학습을 한다면 [eqn: y_i]들은 서로 독립이 될 것이다. 이는[eqn: {bold u}]의 요소들이 서로 독립인 것을 뜻하며,[eqn: {bold u}]의 확률밀도함수는 신호원[eqn: {bold s}]와 같게 된다. 결국,[eqn: {bold u}]가 신호원[eqn: {bold s}]를 찾아낸 것이다. 학습방법은 엔트로피를 증가시키는 방향으로

[eqn: {Partial H( bold{y} )} over {Partial bold{W}} =[( bold{W ^{T}} ) ^{-1} - phi ( bold{u} ) bold{x ^{T}} ]]     (4)

에 의해 [eqn: bold{W}]를 변경시키는 것이다[5]. 이를 더 효율적으로 하기 위해 제안된 "natural gradient[7]"를 적용하면

[eqn: △ bold{W} PROPTO {Partial H( bold{y} )} over {Partial bold{W}} bold{W} ^{T} bold{W} =[ bold{I} - phi ( bold{u} ) bold{u} ^{T} ] bold{W}]   (5)

와 같이 된다. “Natural gradient"는 [eqn: bold{W}]가 바뀌는 방향을 수정해주어 학습이 더 잘되도록 해준다. 여기서,

[eqn: phi ( bold{u} )=- {{Partial p( bold{u} )} over {Partial bold{u}}} over {p( bold{u} )}]             (6)

는 "score function"이라고 하며, [eqn: p(.)]는 신호원의 확률밀도함수(p.d.f.: probability density function)이다.

위와 같이 유도된 ICA 알고리즘은 출력의 엔트로피(entropy)를 최대로 한다는 뜻에서 "InfoMax (Information Maximation)" 방법이라고 부른다. 이와 달리, 출력들 간의 상호정보량(mutual information)을 최소화 시키도록 학습하는 "MMI(Minimizing Mutual Information)" 알고리즘도 있다. 이 두 방법은 한 목적을 다른 관점에서 접근한 것으로 그 결과는 식 (5)와 같은 형태로 나타난다[5].

3. NMF(Non-negative Matrix Factorization)

두뇌가 입력영상의 부분적 특징을 근거로 인식을 한다는 것에 착안하여, 이를 알고리즘으로 구현한 것이 NMF이다[4]. 특히, 영상 픽셀(pixel)들은 음이 아닌 영 혹은 양의 값만 지닌다는 것을 중시한 것이다. [eqn: n TIMES m]영상 행렬 V가 주어졌다고 하자. 각 행은 [eqn: n]개의 양의 값을 지닌 픽셀을 나타내며, [eqn: m]은 영상의 개수이다. NMF는 V를

[eqn: bold{V} APPROX bold{W} bold{H}]                 (7)

와 같이 변환시킨다. 즉,

[eqn: minf( bold{W} , bold{H} ) == {1} over {2} LEFT ∥ bold{V} - bold{WH} RIGHT ∥ _{F} ^{2}]    (8)

인 [eqn: {bold W}]와 [eqn: {bold H}]를 구한다. 여기서,[eqn: {bold W}]는 [eqn: n TIMES r]베이시스 행렬이고 [eqn: {bold H}]는 [eqn: r TIMES m]계수 행렬이며, [eqn: DLINE BULLET DLINE _{F}]는 Frobenius norm이다. 이때, rank [eqn: r]은 일반적으로 [eqn: (n+m)r<nm]이다. 즉, [eqn: n]차원의 영상들이 [eqn: {bold W}]가 지닌 [eqn: r]개의 베이시스 벡터의 합으로 표시되는 형태이며, [eqn: {bold H}]는 이 베이시스 벡터 합의 계수에 해당한다. 식 (7)은 V를 일종의 축약된 형태의 데이터로 표현한 것이라고 볼 수 있다. 이 축약된 형태의 [eqn: {bold W}]와 [eqn: {bold H}]는

[eqn: W _{ia} larrow W _{ia} sum _{mu } ^{} {V _{i mu }} over {(WH) _{i mu }} H _{a mu }]          (9) [eqn: H _{a mu } larrow H _{a mu } sum _{i} ^{} W _{ia} {V _{i mu }} over {(WH) _{i mu }}]         (10)

에 따라 반복적으로 변경시켜 구해진다[4].

4. sNMF(Sparse NMF)

NMF의 특징 중 하나는 sparseness를 부여하여  부분에 근거한 베이시스 벡터(parts-based basis vectors)를 얻게 해주는 것이다. 이를 위하여 NMF 알고리즘에 sparseness를 부가하기 위하여 여러 가지 알고리즘이 제안되었다. 그 중 하나인 [eqn: {bold H}]에 sparseness를 부여한 sNMF 알고리즘을 이 논문에서 사용하고자 한다. 이를 위한 알고리즘은

[eqn: minf( bold{W} , bold{H} ) == {1} over {2} rm LEFT ∥ bold{V} - bold{WH} RIGHT ∥ _{F} ^{2} + eta LEFT ∥ bold{W} RIGHT ∥ _{F} ^{2}]

[eqn: + beta sum _{j=1} ^{m} LEFT ∥ bold{H} (:,j) RIGHT ∥ _{1} ^{2} rm }]           (11)

인 [eqn: {bold W}]와 [eqn: {bold H}]를 구하는 것이다[1]. 여기서, [eqn: bold{H} (:,j)]는  [eqn: {bold H}]의 j번째 행벡터(column-vector)이다. 이 알고리즘에서 [eqn: eta]는 [eqn: {bold W}]의 크기를 억제시키는 파라미터이며, [eqn: beta]는 [eqn: {bold H}]에 sparseness를 부여하는 것과 V를 [eqn: {bold W}{bold H}]로 표현할 경우 발생하는 오차 사이의 조절 항이다.

III. 시뮬레이션

그림 1. 필기체 숫자 영상

앞에서 설명한  PCA, ICA, NMF, 및 sNMF를 “필기체 숫자영상”을 대상으로 실행하여 추출된 특징들을 비교하고자 한다. 필기체 숫자 영상을 대상으로 특징추출을 하는 이유는, 추출된 특징들이 어떠한 특성을 지녔는지 시각적으로 쉽게 확인하기 위해서이다. 여기서, 특징추출 및 그 결과의 그림그리기는 PC에서 Matlab을 이용하여 구현하였다.

필기체 숫자 영상은 CEDAR 데이터 베이스[11]에 있는 18,468개를 사용하였으며, 각각의 숫자 영상은 12⨯12 크기의 16 그레이 레벨 값을 지녔다. [그림 1]은 필기체 숫자 영상의 예를 보여준다. 이 숫자영상들 각각을 144차원의 벡터로 변환시킨 후 144⨯144 크기의 상관행렬을 만들어 PCA를 수행하였다. 그런 다음 얻어진 eigenvector들을 각각 다시 12⨯12 크기로 변환하여 [그림 2]에 그렸다. 여기서, 각 벡터 영상의 순서는 각 eigenevector들에 관련된 eigenvalue가 큰 것부터 작은 순서이다. [그림 3]은 이와 관련된 eigenvalue들을 보여주는데, 가로축은 eigenvector의 인덱스(1부터 144까지)이고 세로축은 eigenvalue이다. 추출된 특징들이 저주파 성분부터 고주파 성분으로 다양하게 나타나며, 끝 부분으로 갈수록 특정 pixel에만 작용하는 특징이 추출되었음을 알 수 있다. [그림 3]으로 부터는 인덱스가 100이상에서는 eigenvalue들이 거의 무시될 만큼 작은 것을 알 수 있다. 만약에 PCA에 의해 입력 데이터의 차원을 축소시킨다면, 이런 eigenvalue가 아주 작은 성분들은 무시하여도 된다.

그림 2. PCA에 의한 eigenvector 들

그림 3. PCA의 eigenvalue 들

그 다음으로, 필기체 숫자 영상들을 각각 144차원 벡터로 변환시킨 후 ICA를 직접 적용하여 식 (3)의 [eqn: {bold W}]행렬을 구하였다. 그 후, [eqn: {bold W}]의 열벡터(row vector)에 해당하는 144차원의 특징성분들을 각각 다시 12⨯12 크기로 변환하여 [그림 4]에 그렸다. 숫자 모양이 12⨯12 크기 영상의 가운데 부분에 위치하고 귀퉁이 부분에는 없는 형태이므로, 추출된 특징들도 귀퉁이 부분에는 한 pixel 형태가 많이 보이며, 영상의 가운데 부분에 여러 가지 방향 성분들이 보인다. 이 방향성분들은 자연영상에 ICA를 적용하면 얻어지는 특징들인 여러 방향의 선 성분들과 유사하다[8]. 특히, 두뇌의 V1 영역에서 세포들이 여러 가지 방향의 선 성분들에 반응하는 내용과 자연 영상을 대상으로 ICA에 의해 찾아낸 성분들이 유사하다 하여 주목을 받았었다. 이 방법은 보통의 ICA에서 적용하는 가정인 “입력 데이터와 출력 데이터의 차원이 같다는 것(식 (2)에서 [eqn: {bold A}]는 N⨯N mixing matrix)”을 적용하여 얻어진 결과이다.

이와 달리 ICA에 의해 고차원의 데이터를 저차원으로 축소하면서 추출되는 특징을 보기 위하여, PCA를 먼저 적용한 후 그 결과에 대하여 ICA를 적용하여 보았다.  여기서, ICA의 전단계에 PCA 처리를 하는 것은 “사람의 망막에 주어진 영상이 LGN(Lateral Geniculate Nucleus)에서 상관관계가 제거된다[6]"고 알려진 작용을 적용한 것이다. 즉, 망막세포에 입력된 영상 신호가 두뇌로 전달되는 과정 중에 LGN을 통과하게 되는 데, 망막에 입력된 영상의 각 pixel 간에 상관관계가 이 LGN을 통과하면서 제거되는 것을 PCA로 구현한 것이다. 일종의 화이트닝(whitening) 효과가 이 단계에서 일어난다. 따라서, [그림 2]와 같이 얻어진 eigenvector들을 사용하여 입력 데이터를 상관관계가 제거되면서 차원이 축소되도록 변환시킨 후, 그 변환된 데이터에 ICA알고리즘을 적용하여 얻어진 특징을 [그림 5]에 그렸다.

그림 4. ICA에 의해 추출된 특징

(a)

(b)

(c)

그림 5. PCA후 ICA에 의해 추출된 특징 ( (a) ICA츨력 70개, (b) ICA 출력 40개, (c) ICA출력 20개 )

[그림 5](a)는 PCA로 얻은 eigenvector들을 이용하여 입력 데이터를 70차원으로 변환시킨 후에 ICA를 적용하여 얻어진 행렬 [eqn: bold{W}]를 다시 eigenvector들과 곱한 후, 각 특징에 해당하는 벡터를 12⨯12 크기로 그린 것이다. (b)와 (c) 역시 PCA에 의해 차원을 40과 20으로 축소한 후 ICA를 적용한 경우에 얻어진 결과이다. 먼저 [그림 5](a)를 보면 곡선, 복선 등 복잡한 모양들이 보인다. 이것들은 ICA를 영상에 직접 적용한 경우에 나타나는 성분[그림 4]보다 더 복잡한 모양이다. (b)와 (c)에서 차원이 더 많이 축소될수록 여러 숫자 모양이 겹쳐진 특징들이 추출되었음을 볼 수 있다.

(a) rank=70

(b) rank=40

(c) rank=20

그림 6. NMF에 의해 추출된 특징

필기체 숫자영상에 NMF 알고리즘을 적용하여 rank를 70, 40, 그리고 20으로 적용한 결과 얻어진 베이시스 행렬 [eqn: {bold W}]에서 각 행 벡터(column vector)를 12⨯12 크기의 영상으로 변환하여 [그림 6]에 그렸다. 그림 6의 특징들을 PCA 특징([그림 2]), ICA 특징([그림 4]), 및  PCA후 ICA 특징([그림 5])과 비교해보면 이들 특징들은 영상의 전 영역에 걸쳐 특징을 추출하는 반면에, NMF에 의해 얻어진 특징들은 12⨯12 크기 입력영상의 아주 국소지역에 국한된 특징들을 추출하고 있음을 알 수 있다. 비록 rank를 줄일수록 추출된 특징의 영역이 조금씩 증가하였지만 국소적인 특성을 그대로 지니고 있다. 즉, PCA와 ICA는 전체적인 모양의 특징들을 추출하는 성질이 있는 반면에 NMF는 아주 국소적인 특징을 추출해낸다. 그리고, 추출된 특징들이 숫자 영상의 어느 부분에 해당하는 지 쉽게 유추할 수 있는 모양을 지녔다.

(a) rank=70([eqn: eta=1, beta=5])

(b) rank=40([eqn: eta=1, beta=20])

(c) rank=20([eqn: eta=1, beta=10])

(d) rank=20([eqn: eta=1, beta=100])

그림 7. sNMF에 의해 추출된 특징

마지막으로 sNMF를 적용하여 얻어진 특징들을 [그림 7]에 그렸다. sNMF는 식 (4)에서 [eqn: eta]와 [eqn: beta]를 잘 조정하여야 sparseness 특징을 지닌 결과를 얻을 수 있는데, 이를 위하여 rank가 70, 40, 20인 경우에 각각 여러 가지 값의 [eqn: eta]와 [eqn: beta]를 조정해 본 후에 좋은 결과를 그림 7에 그렸다. [그림 7](a)를 [그림 6](a)와 비교해보면 sNMF가 NMF보다 더 넓은 영역에서 특징을 추출해내는 것을 볼 수 있다. 즉, [eqn: {bold H}]에 sparseness가 부여됨으로써 [eqn: {bold W}]는 더 넓은 영역에 걸치게 된 것이다. [그림 7](b)를 보면 rank가 줄어들면서 각 특징이 담당하는 영역이 좀 더 확장되어 숫자 영상의 특징에 해당되는 부분이 잘 추출되었다고 볼 수 있다. rank를 20까지 감소시킨 [그림 7](d)를 보면 숫자 영역 전체에 걸쳐서 보다 더 뚜렷한 모양이 보인다. 전반적으로 NMF보다 sNMF에 의한 특징들이 넓은 영역에서 숫자 영상의 특성을 잘 반영하였다고 볼 수 있다. 또한 sNMF는 [eqn: beta]를 조정하여 추출되는 특징이 담당하는 영역을 조절할 수 있음을 [그림 7](c)와 (d)를 비교해보면 알 수 있다.

(a) 학습패턴 오인식률

(b) 시험패턴 오인식률

그림 8. 특징추출 후 MLP 학습

앞에서는 PCA, ICA, NMF, 및 sNMF를 이용하여  추출된 특징들이 서로 다른 특성을 지녔음을 필기체 숫자 영상을 통하여 시각적으로 확인하였다. 이들 특성을 기반으로 특징 추출이 필요한 경우에 응용문제를 해결하는데 적합하다고 여겨지는 특징추출 방법을 선정할 수 있을 것이다. 한편으로, 필기체 숫자 인식의 경우 각각의 특징 추출 방법을 활용한 인식결과를 확인해보기 위하여, 위와 같이 추출된 특징들을 인식하는 시뮬레이션을 수행하였다. 인식기는 다층퍼셉트론(MLP: multilayer perceptron)[12]을 사용하였으며 PC에서 c프로그램으로 구현하였다.

CEDAR 데이터베이스의 18,468개의 학습패턴을 사용하여 특징 추출 후 MLP를 학습시켰으며, 2,213개의 시험패턴으로 일반화 성능을 측정하였다. MLP의 중간층 노드는 30개이고, 출력층 노드는 10개이다. 초기 가중치는 [eqn: [-1 TIMES 10 ^{-4} ,1 TIMES 10 ^{4} ]]에서 균일분포를 지니도록 임의로 발생시켰으며, nCE(nth-order extension of Cross-Entropy) 오차함수의 차수는 4로 정하여 학습률 0.05를 적용하였다. 각 특징추출 방법에 대하여 MLP의 초기 가중치를 9번 발생시켜 학습을 시킨 후, 그 결과의 평균치를 그림으로 그렸다. [그림 8]에서 가로축은 학습 횟수인 epoch을 나타내며, 세로축은 오인식률을 나타낸다. 인식법칙은 Max. rule을 사용하였다[12]. 여기서, epoch은 전체 학습패턴에 대하여 가중치 변경이 한번 씩 이루어진 단위이다.

[그림 8]은 PCA, NMF, sNMF를 이용하여 144 차원인 입력 숫자 영상을 70차원으로 축소하는 특징추출 과정을 거친 후에 MLP를 학습시켰으며, ICA는 144차원의 특징을 모두 사용하여 MLP 학습에 사용한 경우이다. [그림 8](a)는 학습패턴에 대한 오인식률이며, [그림 8](b)는 시험패턴에 대한 오인식률을 보여준다. PCA와 NMF 특징추출의 경우는 학습이 아주 빠르게 잘 진행되었으며 성능도 비슷하게 좋음을 볼 수 있다. 500 epoch의 학습 종료 후 시험패턴에 대한 오인식률은 PCA는 5.06%, NMF는 5.18%이다. 그렇지만, sNMF는 학습 속도가 아주 느리며, 학습이 정체되고 더 이상 진행되지 못하는 양상을 보이고 있다. 그 이유는 sNMF에 의해 얻어진 특징들의 계수가 sparse하게 되기 때문이다. 즉, 특징의 계수가 일관된 통계적 특성을 보여주기 보다는 sparse하게 되어서 인식기가 학습하기 어려운 형태로 변환되었기 때문이다. 이러한 양상은 ICA의 경우에도 나타난다. 여기서, ICA에 의해 얻어진 144차원의 특징을 모두 다 사용한 경우에도 학습이 아주 느리게 진행됨을 [그림 8]에서 볼 수 있다. [그림 5](a)에서 얻어진 70차원의 PCA+ICA 특징을 사용하여 MLP를 학습시켜 본 결과는 전혀 학습이 진행되지 못하였다. ICA는 추출된 신호가 sparse하고 독립이 되도록 하는데 바로 이러한 특성이 sNMF와 마찬가지로 인식기의 학습을 방해하는 것이다.

따라서, 필기체 숫자인식처럼 단순히 특징 추출 후 인식을 목적으로 한다면, PCA 혹은 NMF가 더 좋은 방법이다. 그렇지만, 사람의 두뇌가 시각피질의 V1영역 세포에 의해 단순 특징을 추출 후 이를 기반으로 V4영역의 세포에 의해 복잡한 특징(complex feature)이  추출되는 것처럼[13], 단순한 특징을 기반으로 단계적인 과정에 의해 복잡한 특징을 추출하고 이를 기반으로 인식기를 구현하고자 한다면 ICA에 의한 특징추출을 기반으로 복합특징추출을 구현할 수 있을 것이다. 또한, 전체적인 모양의 특징 추출(PCA 혹은 ICA)과 아주 국소적인 특징추출(NMF)의 중간 단계에서 다양한 특징 추출을 원한다면 sNMF가 적합하다고 여겨진다. [표 1]은 이러한 내용들을 요약한 것이다.

표 1. 선형적인 특징추출 방법 비교표 (PCA: Principal Component Analysis, ICA: Independent Component Analysis, NMF: Non-negative Matrix Factorization, sNMF: Sparse NMF)

특징추출방법	특 성
PCA	- 오차 최소화 축소 및 상관관계 제거 - 공간주파수적 특징 추출 (전체적인 모양) - 인식기에 바로 적용 가능 - LGN 기능과 유사
ICA	- 차원 유지, 독립성분 추출 - 단순한 선 모양 특징 추출 (영상의 경우 두뇌의 V1 영역 특성, 전체적인 모양) - 독립적인 특성으로 인식기에 바로 적용 시 학습이 어려움
PCA+ICA	- 복합적인 특징 추출(전체적인 모양) - 두뇌 특정 영역과 연관성 미흡
NMF	- 아주 국소적인 특징 추출 (두뇌의 국소기반 인식 기능과 유사) - 인식기에 바로 적용 가능
sNMF	- 특징추출 영역의 조절 기능 - 입력의 모양 특성 잘 반영 - 계수의 sparseness로 인하여 인식기에 바로 적용 시 학습이 어려움

VI. 결 론

이 논문에서는 선형적 특징추출 방법인 PCA, ICA, NMF, 그리고 sNMF의 특성을 비교하였다. 추출되는 특징들의 특성을 시각적으로 확인하기 위하여 필기체 숫자영상을 대상으로 특징추출 시뮬레이션을 하였다. PCA는 저주파 성분부터 고주파 성분에 설쳐 다양한 전체적 모양의 특징과 특정 픽셀에 반응하는 특징을 추출하였다. ICA는 두뇌의 V1영역에 해당하는 단순한 선 모양의 특징을 추출하였으며, PCA후에 ICA를 적용한 경우에 추출된 특징은 여러 가지 곡선이나 복선의 복잡한 모양의 특징들이 추출되었다. 물론, 두뇌의 V4 영역이 복합특징을 추출하지만 여기서 추출된 것과는 연관성이 부족하다. NMF에 의해 추출된 특징은 입력영상의 아주 국소적인 부분에 대한 특징들이 추출되어 두뇌의 국소기반 인식 기능과 유사하였으며, PCA 및 ICA가 전체적인 모양의 특징을 추출하는 것과는 아주 다름을 확인하였다. 마지막으로 sNMF를 적용하여 얻어진 특징들은 PCA 혹은 ICA 처럼 전체적인 모양은 아니지만 NMF에서 얻어지는 국소적인 특징 보다는 더 넓은 영역에서 특징이 추출되었다. 또한 파라미터 조정을 통하여 추출되는 특징이 담당하는 영역을 조절할 수 있는 기능도 있음을 확인하였다.

그리고, 추출된 특징들을 인식기에 직접 적용한 경우의 특성을 파악해보기 위하여, 각 방법에서 추출된 특징들로 MLP를 학습시켜 보았다. PCA와 NMF는 MLP의 학습이 잘 이루어졌다. 한편, sNMF와 ICA에 의한 특징 추출의 경우, 추출된 특징의 sparseness 혹은 독립적 특성 때문에 학습이 잘 진행되지 않거나 아주 느리게 학습이 되었다. 마지막으로, PCA후 ICA를 적용한 특징추출 방법은 MLP에서 학습이 전혀 진행되지 않았다. 즉, 추출된 특징을 바로 인식기에 입력할 경우는 ICA나 sNMF 처럼 추출된 값이 독립적이거나 sparse 하게 하는 방법은 적합하지 않고 PCA나 NMF 같은 방법이 적합하다. 그렇지만, 단순특징을 기반으로 복합특징을 추출하고자 하는 경우에는 ICA 기반 특징추출을 활용할 수 있으며, 특징추출 영역의 조절을 원할 경우는 sNMF의 정보가 유용할 것이다.

이 논문에서 얻어진 결과는 향후 고차원의 데이터를 선형적인 방법의 특징추출을 통하여 저차원으로 변환시킬 경우 어떠한 성질의 특성이 추출되기를 원하는 지에 따라 적합한 특징추출 방법을 선정할 때 기초적인 자료로 활용할 수 있을 것이다.

참 고 문 헌

[1] H. Kim and H. Park, "Sparse non-negative matrix factorizations via alternating non-negativity -constrained least squares for microarray data analysis," Bioinformatics, pp.1495-1502, 2007.

[2] Keinosuke Fukunaga, Introduction to Statistical Pattern Recognition, Elsevier, 1990.

[3] J. Ye, R. Janardan, Q. Li, and H. park, "Feature reduction via generalizaed uncrrelated linear discriment analysis," IEEE Trans. Knowledge and Data Engineering, Vol.18, pp.1312-1322, 2006.

[4] D. D. Lee and H. S. Seung, "Learning the parts of objects by non-negative matrix factorization," Natute, Vol.401, pp.788-791, 1999.

[5] T.-W. Lee, M. Girolami, A. J. Bell, and T. J. Sejnowski, "A unfying information -theoretic framework for independent component analysis," Computers & Mathematics with Applications, Vol.31. pp.1-21, 2000.

[6] E. Doi, T. Inui, T-W. Lee, T. Wachtler, and T. J. Sejnowski, "Spatiochromatic receptive field properties derived from information-theoretic analyses of cone mosaic responses to natural scenes," Neural Computation, Vol.15, pp.397-417, 2003.

[7] S. Amari, "Natural gradient works efficiently in learning," Neural Computation, Vol.10, pp.251-276, 1998.

[8] A. J. Bell and T. J. Sejnowski, "The independent components of natural scenes are edge filters," Vision Res., Vol.37, pp.3327-3338, 1997.

[9] J. B. Tenenbaum, V. de Silva, and J. C. Langford, "A global geometric framework for nonlinear dimensionality reduction," Science, Vol.290, No.22, pp.2319-2323, 2000.

[10] S. T. Roweis and L. K. Saul, "Nonlinear dimensionality reduction by locally linear embedding," Science, Vol.290, No.22, pp.2323-2326, 2000.

[11] J. J. Hull, "A database for handwritten text recognition research," IEEE Trans. Pat. Ana. Mach. Int., Vol.16, pp.550-554, 1994.

[12] S.-H. Oh, "Improving the error back- propagation algorithm with a modified error function," IEEE Trans. Neural Networks, Vol.8, pp.799-803, 1997.

[13] J.-M. Alonso and L. M. Martinez, "Functioanl connectivity between simple cells and complex cells in cat striate cortex," Nature Neuroscience, Vol.1, No.5, pp.395-403, 1998.

저 자 소 개

오 상 훈(Sang-Hoon Oh)                   종신회원

▪1986년 2월 : 부산대학교 전자공학과(공학사)

▪1988년 2월 : 부산대학교 대학원 전자공학과(공학석사)

▪1999년 8월 : 한국과학기술원 전기 및 전자공학과(공학박사)

▪1988년 1월 ～ 1989년 12월 : LG 반도체(주) 사원

▪1990년 1월 ～ 1998년 6월 : 한국전자통신연구원 기초기술연구부 및 이동통신기술연구소 선임연구원

▪1999년 8월 ～ 2000년 3월 : KAIST 뇌과학연구센터 연구원

▪2000년 4월 ～ 2000년 10월 : 일본 RIKEN, Brain Science Institute, Research Scientist

▪2000년 10월 ～ 20001년 10월 : (주)엑스텔테크놀리지 연구소장

▪2001년 11월 ～ 2002년 2월 : KAIST 초빙교수

▪2002년 3월～현재 : 목원대학교 정보통신공학과 부교수

▪2008년 8월 ～ 현재 : 조지아공대 College of Computing, 방문교수

<관심분야> : 지능정보처리 알고리즘, 독립성분분석, NMF, 패턴인식, 음성신호 처리