Các toán tử chung cho giải thuật di truyền

Một phần của tài liệu 27849 (Trang 39 - 46)

Thêm vào các toán tử tái kết hợp - tạo ra cá thể con bằng cách kết hợp các phần của hai cá thể cha, một loại toán tử thứ hai tạo ra cá thể con từ một cá thể chạ Cụ thể là toán tử đột biến tạo ra những thay đổi ngẫu nhiên nhỏ cho chuỗi bit bằng cách chọn một bit ở vị trí ngẫu nhiên, rồi thay đổi giá trị của nó. Đột biến thƣờng đƣợc thực hiện sau khi lai ghép đƣợc áp dụng nhƣ trong giải thuật mẫụ

Một vài hệ thống GAs mƣợn thêm một vài toán tử, các toán tử đặc biệt đƣợc chuyên biệt hóa cho biểu diễn giả thuyết cụ thể đƣợc sử dụng bởi hệ thống.Ví dụ, Grefenstette et al. (1991) mô tả hệ thống học tập luật điều khiển robot. Nó sử dụng đột biến và lai ghép cùng với một toán tử để chuyên biệt hóa các luật.

2.2.6. Hàm thích nghi và sự chọn lọc

Hàm thích nghi định nghĩa tiêu chuẩn để xếp hạng các giả thuyết tiềm ẩn và để chọn lọc chúng theo xác suất để đƣa vào quần thể thế hệ kế tiếp. Nếu tác vụ là học các luật phân loại, thì hàm thích nghi thông thƣờng có một thành phần cho điểm độ

11101001000 00001010101 11101010101 00001001000 11111000000 11101001000 00001010101 11001011000 00101000101 00111110000 11101001000 00001010101 10001000100 01101011001 00111110000 11101001000 11101011000

Các chuỗiban đầu Mặt nạ laighép Các cá thể con

Lai ghép điểm đơn:

Lai ghép điểm kép:

Lai ghép đồng nhất:

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnụedụvn 38

chính xác phân loại của luật trên tập mẫu huấn luyện đƣợc chọ Thƣờng các tiêu chuẩn khác có thể đƣợc bao hàm, chẳng hạn nhƣ độ phức tạp và mức độ tổng quát của luật. Một cách tổng quát hơn, khi giả thuyết chuỗi bit đƣợc hiểu nhƣ là một thủ tục phức tạp (ví dụ, khi chuỗi bit thể hiện tập chọn lọc, các luật if-then sẽ đƣợc móc xích với nhau, để điều khiển thiết bị robot ), hàm thích nghi có thể đo hiệu suất tổng của thủ tục kết quả hơn là hiệu suất của các luật riêng biệt.

Trong thuật giải GA mẫu của tôi đƣợc chỉ trong bảng 2.1, xác suất để một giả thuyết đƣợc chọn đƣợc cho bởi tỉ số của độ thích nghi của nó với độ thích nghi của các thành viên khác của quần thể hiện tại, nhƣ đã thấy trong phƣơng trình (2.1). Phƣơng pháp này thỉnh thoảng thƣờng đƣợc gọi là sự chọn lọc tỉ lệ độ thích nghi, hoặc sự chọn lọc vòng roulettẹ Các phƣơng pháp khác dùng độ thích nghi để chọn lọc các giả thuyết cũng sẽ đƣợc đề xuất. Ví dụ, sự chọn lọc kiểu vòng thi đấu, hai giả thuyết đầu tiên đƣợc chọn ngẫu nhiên từ quần thể hiện tạị Với một vài xác suất

p đƣợc định nghĩa trƣớc hai cá thể này cáng phù hợp càng đƣợc chọn và với xác suất (1 – p) giả thuyết càng ít phù hợp càng đƣợc chọn. Sự chọn lọc theo vòng thi đấu thƣờng tạo ra quần thể khác nhau nhiều hơn so với sự chọn lọc tỉ lệ với độ thích nghi (Goldberg và Deb 1991). Trong phƣơng pháp sự chọn lọc theo hạng, các giả thuyết trong quần thể hiện tại đầu tiên sẽ đƣợc sắp xếp theo độ thích nghị Xác suất để giả thuyết sẽ đƣợc chọn tỉ lệ với hạng của nó trong danh sách đã sắp xếp hơn là độ thích nghi của nó.

2.3. CƠ SỞ LÝ THUYẾT VECTOR ĐẶC TRƢNG THÀNH PHẦN PCA 2.3.1 Khái niệm và định nghĩa 2.3.1 Khái niệm và định nghĩa

PCA (viết tắt của Principle Component Analysis) tức là “phân tích các thành phần chính”, là 1 giải thuật rất mạnh dùng để phân tích và nén dữ liệu, phân biệt các mẫu dữ liệu bằng cách làm nổi bật các điểm giống nhau và khác nhau giữa chúng. PCA khử đƣợc các phụ thuộc thống kê bậc thấp của dữ liệu (bậc 1 là trung bình thống kê, bậc 2 là phƣơng sai thống kê), làm giảm tƣơng quan và tăng tính độc lập thống kê giữa các thành phần. Các thông tin dƣ thừa sẽ bị loại bỏ, chỉ giữ lại các thành phần đặc trƣng nhất.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnụedụvn 39

Trích chọn đặc tính của dữ liệu bằng giải thuật PCA:

* Bƣớc 1: Tổ chức dữ liệụ Tập hợp dữ liệu trong cùng 1 ma trận với mỗi cột là 1 thành phần của tập dữ liệụ

* Bƣớc 2: Loại bỏ đặc tính thống kê cấp 1. Trừ dữ liệu cho trung bình của nó: Adjusteđata = Origindata – Datamean

* Bƣớc 3: Tính ma trận covariance của tập dữ liệu

* Bƣớc 4: Tính eigenvector và eigenvalue của ma trận covariance * Bƣớc 5: Thiết lập vector cơ sở trực giao của không gian dữ liệu

Đây là bƣớc nén dữ liệu và giảm số chiềụ Ta sắp xếp các vector riêng theo thứ tự giảm dần giá trị riêng, các vector riêng có giá trị riêng lớn nhất sẽ đặc trƣng cho các “thành phần chính” của dữ liệu và đƣợc giữ lại tạo thành tập vector cơ sở trực giao của không gian dữ liệu, các vector riêng ít quan trọng hơn sẽ đƣợc bỏ đi, và do đó ta sẽ giảm đƣợc số chiều của dữ liệu (nén dữ liệu).

* Bƣớc 6: Tính đặc trƣng PCA của dữ liệu

Là bƣớc cuối cùng của tiến trình trích chọn đặc tính. Đặc trƣng PCA đƣợc tính bằng cách nhân ma trận dữ liệu (đã hiệu chỉnh trung bình) với tập hàm cơ sở trực giao của nó. Phép toán này có ý nghĩa tƣơng đƣơng với phép chiếu 1 vector trong không gian tín hiệụ

PCAfeature = Basisvectoset x Adjusteđata

với Adjusteđata là ma trận dữ liệu đã đƣợc trừ đi trung bình, với mỗi cột là 1 ảnh.

Giả sử có 400 ảnh, mỗi ảnh là 1 vectơ cột có n pixels, nhƣ vậy ma trận Adjusteđata có kích thƣớc là n*400 pixels. Thƣờng thì ảnh sau khi qua lọc Gabor sẽ có giá trị n rất lớn. Nhƣ trên, giả sử ta chỉ chọn M eigenvector tƣơng ứng với M eigenvalue lớn nhất, nhƣ vậy ma trận Basisvectorset sẽ có kích thƣớc là M*n pixels. Nhƣ vậy, ma trận PCAfeature sẽ có kích thƣớc theo tính chất nhân ma trận là M*400 pixels (M*n)*(n*400). Ta thấy là đặc trƣng PCA sẽ cho ra tập ảnh đặc trƣng có kích thƣớc nhỏ hơn nhiều so với kích thƣớc ảnh ban đầu mà vẫn không làm mất đi nét đặc trƣng nhất của ảnh.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnụedụvn 40

2.3.2. Ứng dụng PCA trích đặc trƣng ảnh

Để trích chọn đặc trƣng của khuôn mặt giải thuật PCA đòi hỏi phải có 1 tập ảnh mặt cơ sở (giống nhƣ 1 tập ảnh mẩu ban đầu) để tạo ra không gian ảnh mặt. Ảnh cần trích chọn đặc trƣng sẽ nhƣ 1 vector trong không gian ảnh mặt, lấy hình chiếu của nó lên từng vector cơ sở trực giao của không gian, ta sẽ thu đƣợc tất cả các hệ số theo các hƣớng, đây chính là đặc trƣng PCA của nó. Nếu tập ảnh mặt cơ sở của nó càng lớn và đa dạng tức là số chiều của không gian mặt càng nhiều thì đặc trƣng PCA trích đƣợc càng đầy đủ và chính xác.

* Bƣớc 1: Thiết lập không gian ảnh mặt

Ta chuẩn bị tập ảnh mặt cơ sở để tạo không gian mặt. Giả sử các ảnh này là ảnh thang xám kích cỡ m*n pixels và tập ảnh có M ảnh.

Chuyển ảnh ngõ vào 2 chiều thành vector 1 chiều

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnụedụvn 41

Imagesmatrix = [imagevector1 imagevector2 … imagevectorM]T

Tính tập vector cơ sở trực giao của không gian mặt

Tìm các vector riêng (eigenvector) của không gian ảnh mặt. Do tập ảnh cơ sở có M ảnh nên ta cũng sẽ tìm đƣợc M eigenvector. Tới đây ta có thể giữ lại toàn bộ (nếu ta muốn có đặc trƣng PCA đầy đủ để có thể khôi phục lại nguyên vẹn ảnh gốc ban đầu) hoặc chỉ giữ lại 1 số vector có trị riêng lớn nhất (nếu muốn nén ảnh có mất mát thông tin). Tập các vector này sẽ đóng vai trò là tập hàm cơ sở trực giao đại diện cho không gian ảnh. Do dữ liệu là ảnh mặt nên ta sẽ gọi tập eigenvector là eigenfaces.

* Bƣớc 2: Tính đặc trƣng PCA của ảnh ngõ vào

Chiếu ảnh lên không gian mặt. Phép chiếu chính lá phép nhân ma trận giữa ảnh ngõ vào với tập vector cơ sở trực giao của không gian mặt. Kết quả là ta sẽ có 1 vector đặc trƣng PCA gồm M thành phần (tƣơng ứng với M eigenvector của không gian mặt).

Giải thuật thực hiện phương pháp PCA:

. Giải thuật cơ bản:

Cho tập ảnh Γ1, Γ2, Γ3 , … ΓM ảnh trung bình đƣợc tính:

Ảnh hiệu chỉnh:

Ma trận ảnh CSDL:

với A = [ φ1 φ2 … φM ]

Ma trận C này chính là ma trận covariance của tập ảnh mà từ đó ta mới tính ra đƣợc các eigenvector và eigenvaluẹ Do ma trận C là ma trận vuông m*n (bằng kích thƣớc ảnh) nên sẽ có tất cả m x n eigenvector. Nhƣng nếu M < m x n (M là số ảnh trong CSDL) thì chỉ có M eigenvector có ý nghĩa (sẽ đƣợc kiểm chứng ở phần sau), vì tổng giá trị riêng mà chúng chiếm có thể lên đến hơn 99%, các eigenvector còn lại sẽ có eigenvalue xấp xỉ = 0. Do đí ta sẽ giữ lại M eigenvector có giá trị riêng lớn nhất.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnụedụvn 42

M eignevector của tập CSDL un, n = 1 … M đƣợc tính (theo định nghĩa): Giá trị riêng (eigenvector):

Uk đƣợc chọn sao cho λk max.

Uk và λk là eigenvector và eigenvalue của ma trận C

Trong thực tế, M eigenfaces là đủ cho quá trình khôi phục ảnh, còn trong nhận dạng ta chỉ cần giữ lại M‟ <M eigenfaces có eigenvalue lớn nhất là cũng đủ. Nhƣ vậy, quá trình thiết lập CSDL chỉ đƣợc thực hiện 1 lần và đƣợc lƣu lạị Điều này làm tối ƣu hoá quá trình nhận dạng vì tập CSDL là rất lớn, thời gian tính toán rất lâụ

Cải tiến giải thuật PCA:

Trong toàn bộ giải thuật, việc tính eigenfaces tập vector cơ sở của không gian mặt) là vấn đề phức tạp nhất. Quá trình này chiếm rất nhiều thời gian và bộ nhớ vì ma trận ảnh CSDL C có kích thƣớc rất lớn. Cụ thể nhƣ sau:

Ta có tập ảnh CSDL gồm các kích thƣớc 54*46 pixels (khá nhỏ), ảnh này sau khi qua hàm lọc Gabor sẽ cho ra ảnh chập là vecto cột có 61824 hàng, nếu dùng ảnh này làm ngõ vào của PCA thì ma trận C sẽ có kích thƣớc là 61824*61824 (rất lớn). Chỉ riêng C đã chiếm rất nhiều bộ nhớ máy tính nên việc lƣu trữ và load lên là hầu nhƣ không thể, chƣa kể đến việc phải xử lý nó (bao gồm các phép nhân, nghịch đảo các ma trận rất phức tạp).

Vì thế ta phải tìm cách tính nhanh eigenfaces bằng cách giảm số chiều của ma trận C.

- Tính nhanh eigenfaces:

Thay vì tính eigenfaces cho ma trận C = AAT

ta sẽ thực hiện trên ma trận L = ATA với kích thƣớc giảm chỉ còn M*M (M là số ảnh ngõ vào).

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnụedụvn 43

Chƣơng 3

PHƢƠNG PHÁP NHẬN DẠNG MẶT NGƢỜI MLP-PCA-GA

3.1. GIỚI THIỆU

Mặc dù các nghiên cứu nhận dạng ảnh mặt ngƣời dùng mạng NN cho tới hiện nay về cơ bản đã cho các kết quả rất tốt cả về độ chính xác và thời gian, chi phí huấn luyện, các nghiên cứu này vẫn cần đƣợc cải tiến phát triển để tăng tỷ lệ nhận dạng, đặc biệt là giảm khối lƣợng tính toán và giảm thời gian, chi phí huấn luyện. Ngoài giải pháp kết hợp dùng PCA và NN, một giải pháp khác đƣợc một số nhà nghiên cứu gần đây quan tâm là áp dụng giải thuật di truyền GA kết hợp với hệ thống nhận dạng dùng mạng NN đã có để tối ƣu hệ thống. Luận văn này đi theo hƣớng tiếp cận nàỵ Thuật toán và phƣơng pháp kết hợp MLP-PCA-GA trong hệ thống nhận dạng sẽ đƣợc trình bày chi tiết trong các mục tiếp theọ

3.2 HỆ THỐNG NHẬN DẠNG DÙNG MẠNG MLP DÙNG ĐẶC TRƢNG PCA 3.2.1 Trích đặc trƣng PCA

Dựa theo lý thuyết phân tích các thành phần đặc trƣng PCA nhƣ đã trình bày ở chƣơng 2 ta sẽ thực hiện các bƣớc nhƣ sau :

Chọn lấy một tập ảnh ban đầu: gồm 100 ảnh của 20 ngƣời, mỗi ngƣời có 6 ảnh luyện [x1,x2,x3 ,…,xM] (M=100)

Tính ảnh mặt trung bình của tập ảnh trên: X=(x1+x2+x3+…+xM) /M

Trừ mỗi ảnh cho ảnh mặt trung bình: Xi’=Xi-X i=1,2,...M

Ta đƣợc tập ảnh mới là: [x1’,x2’,x3’ ,…,xM’]

Tính các vector đặc trƣng cho tập ảnh mới này ta đƣợc tập có M vector đặc trƣng trực giao là:[Y1,Y2,Y3 ,…,YM]. Các vector này khi xem dƣới dạng ảnh sẽ có dạng mặt ngƣời nên ngƣời ta còn gọi là mặt đặc trƣng (Eigenface). Sắp xếp các

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnụedụvn 44

vector nay theo sự tăng dần của giá trị đặc trƣng, ta có ví dụ về các vector đặc trƣng nhƣ sau :

Một phần của tài liệu 27849 (Trang 39 - 46)

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

(72 trang)