.7 Ảnh sau khi biến đổitheo PCA

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu phương pháp nhận dạng mặt người dựa trên PCA LDA và mạng neural luận văn ths truyền dữ liệu và mạng máy tính (chuyên ngành đào tạo thí điểm) (Trang 56)

2.2 Phương phỏp LDA

Phương phỏp PCA ở trờn cũn cú nhượcđiểm là chỉ làm nổi bật lờn cỏc đặc trưng của từng ảnh mà chưa quan tõm đến cỏc ảnhđú là của cựng một người hay củanhững ngườikhỏc nhau. Phương phỏp phõn tỏch tuyến tớnh [4] (LDA– Linear Discriminant Analysis) cú thể khắc phục được những nhượcđiểmđú.Nhiệm vụ chớnh của phương phỏp là tớnh sự biến thiờn giữa cỏc ảnh của những người khỏc nhau và tớnh sự biến thiờn giữa cỏc ảnh của cựng một người, sau đú tỡm một phộp biến đổi để làm cựcđại tỉ số của hai sự biến thiờn trờn. Nghĩa là, tậpảnh huấn luyện sẽ được biến đổi sang một khụng gian mới sao cho sự khỏc nhau giữa cỏc ảnh của những người khỏc nhau được tăng lờn tốiđa, cũn sự giống nhau giữa cỏc ảnh của cựng một người được làm cực tiểu.Hỡnh 2.8 là một vớ dụ minh họa trực quan ý nghĩa của phộp biến đổi này.Hỡnh2.8(a) là một cỏch biến đổikhụng tốt khi cỏc hỡnh chiếu của cỏc điểm thuộc hai lớp vẫn lẫn lộn với nhau; hỡnh2.8(b) là một cỏch biến đổi khỏ tốt khi hỡnh chiếu của cỏc điểm thuộc cựng một lớp gần nhau, cũn hỡnh chiếu của cỏc điểm khỏc lớp xa nhau.

Hỡnh 2.8. Vớ dụ minh họa LDA

Thụng thường trong phương phỏp LDA, sự phõn bố ngoại và sự phõn bố nội được dựng làm tiờu chớđể phõn lớp. Ma trận phõn bố nội được tớnh như sau:

= 1 − − (2.28)

Trong đú:

là ảnh thứ i của lớp j.

 j là giỏ trị trung bỡnh của lớp j.

C là số lượng lớp.

Nj là số lượng ảnh trong lớp j.

N là tổng số ảnh trong tập huấn luyện.

Ma trận phõn bố ngoại:

= 1 − − (2.29)

trong đú là giỏ trị trung bỡnh của tất cả cỏc lớp.

Khụng gian mới của LDA được hỡnh thành từ tập vector W = [W1,..,Wd], thỏa món

= arg max = (2.30)

Ma trận phõn bố nội Sw biểu diễn sự phõn bố gần nhau của cỏc ảnhtrong cỏc lớp

cỏc vector của W, cỏc ảnh sẽ được phõn bố gần nhau trong mỗi lớp và sẽ được tỏch

biệt giữa cỏc lớp, càng nhiều càng tốt.Núi cỏch khỏc, cỏc vector này cực tiểu húa mẫu

số và cực đại húa tử số của cụng thức (2.30).Nếu ma trậnSw là khảnghịch,tỉ sốởcụng

thức (2.30) sẽđạt cực đạikhi cỏc vector củaWlà cỏc vector riờng của .Đối với bài

toỏn nhận dạng mặt người, ma trậnSw thường khụng khảnghịch, vỡ số lượngảnh nhỏ hơn rất nhiều so với số chiều biểu diễnảnh.Cú nhiều phương phỏp khỏc nhau để giải quyết vấn đề của LDA như phương phỏp giả nghịchđảo, phương phỏp khụng gian con hoặc phương phỏp khụng gian null.

Trong luận văn này, phương phỏp giả nghịch đảo được dựng để giải quyết vấn đề trờn. Vỡ ảnh gốc cú kớch thước 112ì92, mỗiảnh cú thể coi là một điểm trong khụng gian 10304 chiều, số chiều này quỏ lớn để cú thể thực hiện LDA nờn trước hết cần sử dụng phương phỏp PCA để giảm bớt số chiều của khụng gian này. Sau đú, ỏp

dụngphương phỏp giả nghịch đảo với tập dữ liệu mới để tỡm ma trận biến đổiW.

Để tớnh ma trận giả nghịch đảo , Swđược phõn tớchnhư sau:

=  (2.31)

Trong đú:

 = diag(1, .., k) chứa cỏc giỏ trị riờng dương của Sw, nghĩa là cỏc phần tử trờn đường chộo chớnh của là cỏc giỏ trị riờng củaSw, cũn cỏc phần tử khỏc đều bằng 0.

k là hạng của Sw.

Q1 chứa cỏc vector riờng của Sw tương ứng với kgiỏ trị riờng dương. Khi đú ma trận giả nghịch đảo của Sw là:

=  (2.32)

Cuối cựng, cỏc vector riờng của ứng với cỏc giỏ trị riờng dương chớnh là cỏc

Hỡnh2.8 là một sốảnh sau khi biến đổi theo phương phỏpphõn lớp tuyến tớnh.

Hỡnh 2.9. Ảnh sau khi biến đổi theo LDA

2.3 Phương phỏp mạng neural

Phần trước đó giới thiệu phương phỏp trớch chọn đặc trưng của ảnh. Nhiệm vụ tiếp theo của hệ thống nhận dạng là dựa trờn những đặc trưng đó được trớch chọn đú, học được cỏch phõn loại ảnh tương ứng với từng người. Trong cỏc phương phỏp phõn loại hiện nay, nổi trội lờn và được quan tõm nhiều đú là mạng nơron nhõn tạo. Cỏc mạng nơron nhõn tạo cú thể được coi như những “mụ hỡnh tớnh toỏn” với những đặc tớnh như khả năng thớch nghi hay khả năng học, tổng quỏt húa, phõn cụm hay tổ chức dữ liệu.Thao tỏc đú cú thể được xử lý song song. Trong luận văn này, mạng nơron với thuật toỏn học lan truyền ngược được sử dụng vỡ mạng này đó tỏ ra khỏ hiệu quả đối với bài toỏn nhận dạng mặt người.

2.3.1 Giới thiệu mạng nơron

Nơron – đơn vịxử lý cơ bản

Một mạng nơron nhõn tạo [3] bao gồm một tập cỏc đơn vị xử lý cơ bản, gọi là nơron, chỳng truyền thụng tin bằng cỏch gửi cỏc tớn hiệu cho nhau qua cỏc kờnh kết nối cú trọng số.Mỗi nơron thực hiện một cụng việc tương đối đơn giản: nhận tớn hiệutừ cỏc nơron lõn cận hoặc từ nguồn bờn ngoài, tớnh toỏn tớn hiệu ra rồi truyền sang cho cỏc nơron khỏc. Ngoài việc xử lý này, nhiệm vụ thứ hai của nơron là điều chỉnh lại cỏc

trọng số.Hệ thống sẽ được thực hiện song song vỡ nhiều nơron cú thể thực hiện tớnh toỏn ở cựng thời điểm.Hỡnh 2.9 minh họa cỏc thành phần cơ bản của một mạng nơron nhõn tạo.

Trong cỏc hệ thống nơron, cầnphõn biệt ba loại chớnh: cỏc nơron vào(ký hiệu là i) nhận dữ liệu từ bờn ngoài mạng nơron, cỏc nơron ra(ký hiệu là o) gửi dữ liệu ra ngoài mạng nơron, và cỏc nơron ẩn (ký hiệu là h) vớitớn hiệu vàovà ra của chỳng chỉ

được duy trỡ trong mạng.

Hỡnh 2.10. Cỏc thành phần cơ bản của mạng nơron nhõn tạo

Trong quỏ trỡnh tớnh toỏn, cỏc nơron cú thể được cập nhật một cỏch đồng bộ hoặc khụng đồng bộ.So với việc cập nhật đồng bộ, đụi khi việc cập nhật khụng đồng bộ lại cú một số ưu điểm.

Liờn kết giữa cỏc nơron

Trong hầu hết cỏc trường hợp, ta giả sử rằng mỗi nơron sẽ đúng gúp (theo tớnh

chất cộng) vào tớn hiệu vào của nơron được nối đến.Tớn hiệu vàotổng tới nơron k là

tổng cú trọng số của cỏc tớn hiệu ra riờng lẻ từ cỏc nơron nối tới nú cộng với biask(t):

( ) = ( ) ( )+ ( ) (2.33)

Giỏ trị trọng sốwjk nếu dương thỡ được gọi là sự kớch thớch cũn nếu õm gọi là sựức chế.Cỏc quy tắc kết hợp tớn hiệu vàophức tạp hơn sẽ được sử dụng trong một số trường hợp khỏc.Khi đú sẽ cú sự phõn biệt giữa tớn hiệukớch thớch và ứcchế. Nơron với quy tắc lan truyền như cụng thức (2.33) được gọi là nơron sigma.

2.3.2. Hàmkớch hoạt và cỏc quy t

Cần xỏc lậpmột quy tắc để xỏc ngưỡngkớch hoạt của nơron. M

giỏ trị kớch hoạt yk(t) hiện tại, tớnh giỏ trị kớch hoạt mới của n

(

Thụng thường, hàm kớch ho của nơron:

( + 1) =

Cỏc hàm kớch hoạt khụng nhất thiếtphải khụng giảm. Một số h thườngđược sử dụng (hỡnh

tớnh hoặc bỏn tuyến tớnh,hàmngư

sigmoid (hàm dạng chữ S) đư

Hỡnh 2.1

Trong một số trường hợp, tớn hiệu ra của một n xỏc định trước theo tớn hiệu v

được xỏc định một cỏch chớnh xỏc bởi tớn hiệu v nơron sẽ xỏc định một xỏc suất

Trong đú T là một tham số xỏc định độ dốc của h à cỏc quy tắc xỏc định tớn hiệu ra

ần xỏc lậpmột quy tắc để xỏc địnhảnh hưởng của tớn hiệu v

ơron. Một hàm Fkđược sử dụngđể lấy tớn hiệu v

ện tại, tớnh giỏ trị kớch hoạt mới của nơronk:

( + 1) = ( ), ( ) (2.34)

àm kớch hoạt là một hàm khụng giảm của tớn hiệu v

( ) = ( ) ( )+ ( ) (2

ạt khụng nhất thiếtphải khụng giảm. Một số h ỡnh 2.10): hàm ngưỡng giới hạn mạnh (hàm d

àmngưỡng giới hạn trơn. Hàm giới hạn trơnc ) được xỏcđịnh như sau:

= ( ) = 1

1 + (2.36)

11 Một số dạng hàm kớch hoạt của nơron

ờng hợp, tớn hiệu ra của một nơron cú thể là m

ớc theo tớn hiệu vàotổng của nơron. Khi đú, giỏ trị kớch hoạt sẽ khụng ợc xỏc định một cỏch chớnh xỏc bởi tớn hiệu vào của nơron, mà tớn hi

ột xỏc suất p để một nơron nhận giỏ trị kớch hoạt cao:

( ← 1) = 1

1 + / (2.37)

ột tham số xỏc định độ dốc của hàm xỏc suất.

ởng của tớn hiệu vàotổng so với

ợc sử dụngđể lấy tớn hiệu vàotổng sk(t) và

ảm của tớn hiệu vàotổng

(2.35)

ạt khụng nhất thiếtphải khụng giảm. Một số hàm ngưỡng àm dấu), hàm tuyến ơncũn gọilà hàm

à một hàm khụng ị kớch hoạt sẽ khụng ơron, mà tớn hiệu vào của ận giỏ trị kớch hoạt cao:

Quy tắc delta

Xột mạng một lớp cú một nơron ra với hàm kớch hoạt tuyến tớnh, tớn hiệu ra được cho đơn giản như sau:

= + (2.38)

Mạng đơn giản như vậy cú thể biểu diễn một quan hệ tuyến tớnh giữa giỏ trị của nơron ra và giỏ trị của cỏc nơron vào. Ởđõy mạng được sử dụngđể xấp xỉ hàm.

Giả sử cần huấn luyện mạng để xỏc lập một siờu phẳng càng khớp càng tốt với

tập cỏc mẫu huấn luyện bao gồm cỏc giỏ trị vàoxp và cỏc giỏ trị ra mong muốn (đớch)

dp. Với mỗi mẫu vào, đầu ra của mạng sai khỏc với giỏ trị đớch dp một lượng (dp-yp),

trong đú yp là đầu ra thực sự của mẫu. Quy tắc delta sử dụng hàm giỏ hay hàm lỗi dựa trờn những sai khỏc này để điều chỉnh cỏc trọng số.

Hàm lỗi được xỏcđịnh như sau:

= =1

2 ( − ) (2.39)

Trong đú chỉ số pchạytrong tập mẫu vàovàEp biểu diễn lỗi trờn mẫu p. Phương

phỏp bỡnh phương trung bỡnhtối thiểu (LMS – Least Mean Square)xỏc địnhcỏc giỏ trị của tất cả cỏc trọng số rồi cực tiểu húa hàm lỗi bằng một phương phỏp gọi là độ dốc (gradient)giảm dần:

∆ = − (2.40)

Trong đú  là một hằng số thớchứng. Giỏ trịđạo hàmlà:

= (2.41

Vỡ cỏc nơronlàtuyến tớnh (cụng thức (3.6))

= (2.42)

nờn

trong đú p = (dpyp) là s

2.3.3 Thuật toỏn học lan truyền ng

Một mạng nơron truy nhận tớn hiệu vàotừ cỏc nơron

một lớp trực tiếp phớa trờn.Khụng cú k

Cỏc nơron vàoNi truyền tớn hiệuđến lớp đầu ti nào được thực hiện ở cỏc nơron vào. Hàm kớch ho cỏc tớn hiệu vàocú trọng số cộng với một bias nh nơron ẩn này được phõn bổtr

lớp cuối cựng của cỏc nơron

lớp cỏc nơron ra No (hỡnh 3.3).

Do cỏc nơron ởđõy đ quỏt húa quy tắc delta đó trỡnh bày cỏc hàm phi tuyến.Hàm kớch ho bởi:

Trong đú

∆ = (2.44

yp) là sự sai khỏc giữa đầu ra đớch và đầu ra thực sựcủa mẫu p.

ật toỏn học lan truyền ngược

ơron truyềnthẳngcú cấu trỳc gồm nhiềulớp.Mỗi lớp chứa cỏc n ơron ở lớp trực tiếp phớa dưới và gửi tớnhiệu ra của chỳng cho ờn.Khụng cú kết nối nào giữa cỏc nơron trong cựng m

ền tớn hiệuđến lớp đầu tiờn của cỏc nơron ẩn Nh,1

ơron vào. Hàm kớch hoạt tạimột nơron ẩn là m

ọng số cộng với một bias như cụng thức (3.3). Tớn hiệu ra của cỏc

ợc phõn bổtrờn lớp tiếp theo của cỏc nơron ẩn Nh,2, cứ thế tiếp tục đến ơron ẩn, ở đú cỏc tớn hiệu ra của chỳng sẽ được truyền đến một (hỡnh 3.3).

Hỡnh 2.12. Mạng nơron l lớp

ởđõy được sử dụngvới hàm kớch hoạt phi tuyến, n

ó trỡnh bày ở trờn cho cỏc hàm tuyến tớnh để cú thể sử dụng với àm kớch hoạt là một hàm khả vi củatớn hiệu vàot

= (2.45)

= + (2.46)

ầu ra thực sựcủa mẫu p.

ềnthẳngcú cấu trỳc gồm nhiềulớp.Mỗi lớp chứa cỏc nơron ửi tớnhiệu ra của chỳng cho ơron trong cựng một lớp. ,1. Khụng xử lý à một hàm Fi của ức (3.3). Tớn hiệu ra của cỏc ứ thế tiếp tục đến ợc truyền đến một ạt phi tuyến, nờn cú thểtổng ến tớnh để cú thể sử dụng với àotổng, được cho

Để tổng quỏt húa chớnh xỏc quy tắc delta ta đặt

∆ = − (2.47)

Hàm lỗiEpđượcđịnh nghĩa là tổng lỗi bỡnh phương của mẫup tại cỏc nơron ra:

=1

2 ( − ) (2.48)

Trong đú là tớn hiệu ra mong muốn với đơn vị o khi mẫu p đưa vào. Đặt

= ∑ là tổng lỗi bỡnh phương. Ta cú thể viết:

= (2.49)

Theo cụng thức (3.14), nhõn tử thứ hai là:

= (2.50)

Khi đú cú định nghĩa:

= − (2.51)

Quy tắc mới nhận được nàytương đương với quy tắc delta ở trờn, trả về kết quảđộ dốc giảm dần trờn mặt phẳng lỗi nếu trọng sốđược thay đổitheo cụng thức:

∆ = − (2.52)

Cỏch làm ở đõy là nhằmxỏc định vai trũ của đối với mỗi đơn vị k trong mạng.

Kết quảlà cú sự tớnh toỏn hồi quy đơn giản của cỏc  này và cú thể cài đặt bằng cỏch lan truyền ngược cỏc tớn hiệu lỗi trong mạng.

Để tớnh ,theo quy tắc chuỗi, đạo hàm riờng phần này được viết lại thànhtớch của hai nhõn tử, một nhõn tử phản ỏnh sự biến đổi của lỗi như một hàm của tớn hiệu ra của nơron, cũn một nhõn tử phản ỏnh sự biến đổi của tớn hiệu ra như một hàm của sự biến đổi tớn hiệu vào:

= − = − (2.53)

chớnh là đạo hàm của hàm F với nơron thứ k, được tớnh tại nơron vào đến nơron đú. Để tớnh nhõn tử thứ nhất trong cụng thức (2.54), ta xột hai trường hợp. Thứ

nhất, giả sử nơron k là nơron ra k = o của mạng, khi đú theo định nghĩa của Ep

= −( − ) (2.55)

Kết quả này giống như khi sử dụng quy tắc delta chuẩn. Thay thế kết quả này và kết quả ở cụng thức (3.22) vào cụng thức (3.21):

= ( − ) ( ) (2.56)

với nơron ra o bất kỳ. Trường hợp thứ hai, nếu k khụng phải là nơron ra mà là nơron ẩnk = h, khi đú khụng xỏc định được sự đúng gúp của nơron này vào lỗi ra của

mạng. Tuy nhiờn, cụng thức tớnh lỗi cú thể được viết như là một hàm của cỏc tớn hiệu vàotừ lớp ẩn đến lớp ra; = ( , . . , , . . ) và ta sử dụng quy tắc chuỗi để viết:

= = = = − (2.57)

Thay thế kết quả này vào cụng thức (3.21):

= − = − (2.58)

Cụng thức (2.58) và (2.55) xỏc định một thủ tục đệ quy để tớnh  của tất cả cỏc nơron trong mạng, và sau đú sử dụng để tớnh sự thay đổi trọng số theo cụng thức (2.54). Thủ tục này chớnh là quy tắc delta tổng quỏt dựng cho mạng truyền thẳng phi tuyến.

Thực tế, toàn bộ quỏ trỡnh lan truyền ngược là rất trực quan. Khi một mẫu học đượcđưa vào, cỏc giỏ trị kớch hoạt sẽ được lan truyền đến cỏc nơron ra và tớn hiệu ra thực sự của mạng được so sỏnh với tớn hiệu ra mong muốn, thụng thường làkết thỳc

với một lỗi nào đú trong cỏc nơron ra. Gọi lỗi này là eo với mỗi nơron ra o. Mụcđớch là phải làm cho eo bằng 0.

Cỏch đơn giản nhất để thực hiện việc này là làm theo thuật toỏn tham lam: thay

đổi cỏc kết nối trong mạng để dần dần eo bằng 0 với mẫu học này. Theo quy tắc delta, để giảm lỗi, cỏc trọng số đượcchỉnh sửa theo

∆ = ( − ) (2.59)

Nhưng chỉ vậy thỡ chưa đủ: khi chỉ ỏp dụng quy tắc này, cỏc trọng số từ nơron vàođến cỏc nơron ẩn sẽ khụng được thay đổi và sẽ khụng cú được khả năng biểu diễn đẩy đủ của mạng truyền thẳng. Để cú thể chỉnh sửa được trọng số từ nơron vàođến cỏc nơron ẩn, cần tiếp tục ỏp dụng quy tắc delta.Tuy nhiờn, trường hợp này lại khụng cú giỏ trị  cho cỏc nơron ẩn. Điều đú cú thể giải quyết bằng quy tắc chuỗi như sau: phõn tỏn lỗi của một nơron ra o cho tất cả cỏc nơron ẩn nối tới nú, theo trọng số bằng kết nối này. Mỗinơron ẩn h nhận một  từ mỗi nơron ra o bằng  của nơron ra đú với trọng số là trọng số của kết nối giữa những nơron đú: = ∑ . Cần cú hàm kớch hoạt của nơron ẩn; F’ phải được sử dụng cho delta, trước khi việc lan truyền ngược được tiếp tục.

Trờn đõy là toàn bộ lý thuyết liờn quan đến phương phỏp nhận dạng mặt người dựa trờn biến đổi PCA-LDA và mạng neural.Trong chương sau, chỳng ta sẽ tiến hành xõy dựng hệ thống nhận dạng dựa trờn phương phỏp này.

CHƯƠNG 3 THỰC NGHIỆM

3.1 Thiết kế hệ thống 3.1.1 Cơ sở dữ liệu ảnh 3.1.1 Cơ sở dữ liệu ảnh

Trong luận văn này, bộảnh dữ liệu đượclấy từ cơ sở dữ liệuORL (Olivetti Research Laboratory, Surrey University).Cỏcảnhởđõy tương đốiđa dạng, thớch hợp cho việc kiểm thử hệ thống. Bộảnh chụp 40 người khỏc nhau, mỗi người cú 10 ảnh riờng, cỏc ảnh này cú thể được chụpở những thờiđiểm khỏc nhau, vớinhững gúc nghiờng khỏc nhau, những trạng thỏi khỏc nhau như cười hoặc khụng cười, đeo kớnh hoặc khụng, miệng mở hoặcđúng.

3.1.2 Sơ đồ hệ thống

Hỡnh 3.

Trước khi thực hiện PCA hoặc LDA, cỏc ảnh gốc l thước 112ì92 được chuyển sang biểu diễn d

gồm 10 ảnh cho mỗi người, ở đõy ch mạng và kiểm thử là khỏc nhau

gương của nú để tăng thờm sự đa dạng cho tập ảnh huấn luyện (h Vec tơ đặc trưng

Output PCA

Hỡnh 3.2.Sơ đồ khối của quỏ trỡnh huấn luyện

ớc khi thực hiện PCA hoặc LDA, cỏc ảnh gốc là cỏc ma trận hai chiều kớch ợc chuyển sang biểu diễn dưới dạng cỏc vector 10304 chiều. Bộ ảnh ORL ời, ở đõy chương trỡnh lần lượt sử dụng ảnh cho việc huấn luyện là khỏc nhau. Mỗi ảnh huấn luyện sẽ được bổ sung một ảnh ở dạngảnh

ự đa dạng cho tập ảnh huấn luyện (hỡnh 3.2). Cơ sở dữ liệu

ảnh Tập huấn

luyện

PCA

Vec tơ đặc trưng

Mạng nơron Output PCA-NN LDA Vectơ đặc trưng Mạng nơ ron Output LDA-NN ận hai chiều kớch ới dạng cỏc vector 10304 chiều. Bộ ảnh ORL ảnh cho việc huấn luyện

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu phương pháp nhận dạng mặt người dựa trên PCA LDA và mạng neural luận văn ths truyền dữ liệu và mạng máy tính (chuyên ngành đào tạo thí điểm) (Trang 56)

Tải bản đầy đủ (PDF)

(86 trang)