TỔNG QUAN
Đặt vấn đề
Trong thời đại công nghệ 4.0, sự phát triển nhanh chóng của khoa học kỹ thuật đã mang lại tiện ích cho cuộc sống hàng ngày Sự bùng nổ công nghệ thông tin và quá trình toàn cầu hóa yêu cầu một hệ thống bảo mật thông tin cá nhân hiệu quả, nhằm nhận diện con người trong hàng tỉ người trên thế giới Do đó, công nghệ sinh trắc đã ra đời để đáp ứng những yêu cầu này.
Trong lĩnh vực bảo mật và tìm kiếm, tính phân biệt và ổn định của các đặc trưng sinh trắc là rất quan trọng Vân tay nổi bật với khả năng phân biệt cao và sự ổn định theo thời gian, khiến nó trở thành đặc trưng sinh trắc được ưa chuộng nhất Nhận dạng sinh trắc là quá trình sử dụng các đặc tính hành vi và thể chất, như vân tay, gương mặt và chữ ký, để tự động nhận diện một cá nhân.
Nhận dạng vân tay được coi là một trong những kỹ thuật nhận diện đáng tin cậy nhất, đáp ứng nhu cầu kiểm tra danh tính trong các tổ chức như an ninh, quân sự và hành chính Các câu hỏi thường gặp bao gồm: “Người này có phải là đối tượng cần kiểm tra không?” hay “Người này có quyền truy cập vào thiết bị và thông tin đó không?” Mặc dù các phương pháp truyền thống như sử dụng chìa khóa hay mật khẩu đã được áp dụng rộng rãi, nhưng chúng thường không đảm bảo an toàn và khó nhớ, dẫn đến nhu cầu ngày càng cao cho các giải pháp nhận dạng an toàn hơn như vân tay.
Các đặc trưng sinh trắc như vân tay không thể dễ dàng bị thay thế, chia sẻ hay giả mạo, khiến chúng trở thành phương pháp đáng tin cậy hơn trong việc nhận dạng cá nhân Vân tay là một đặc điểm độc đáo của mỗi người, với tính đa dạng cao, và rất hiếm khi xảy ra trường hợp trùng lặp Nhờ vào việc sử dụng vân tay kết hợp với mật mã, quá trình xác nhận danh tính có thể được thực hiện một cách an toàn và nhanh chóng thông qua hệ thống nhận dạng vân tay.
Tổng quan về hệ thống nhận dạng mẫu
1.2.1 Phân lớp bài toán nhận dạng
Nhận dạng mẫu được chia thành ba lớp bài toán, trong đó Học có giám sát (Supervised Learning) là một kỹ thuật trong lĩnh vực học máy, nhằm xây dựng hàm từ dữ liệu huấn luyện Dữ liệu huấn luyện bao gồm các cặp đối tượng đầu vào và đầu ra mong muốn, với đầu ra có thể là giá trị liên tục hoặc dự đoán nhãn phân loại cho đối tượng đầu vào.
Chương trình học có giám sát nhằm dự đoán giá trị của hàm cho một đối tượng đầu vào hợp lệ, dựa trên các mẫu huấn luyện đã có Để đạt được mục tiêu này, chương trình cần tổng quát hóa từ dữ liệu sẵn có, giúp dự đoán các tình huống chưa gặp theo cách hợp lý.
Học có giám sát bao gồm hai loại mô hình: mô hình toàn cục ánh xạ đầu vào đến đầu ra mong muốn và tập hợp các mô hình cục bộ Ngược lại, học không có giám sát là phương pháp trong học máy nhằm tìm ra mô hình phù hợp với các quan sát mà không biết trước đầu ra tương ứng Trong học không có giám sát, dữ liệu đầu vào được thu thập và xử lý như một tập hợp các biến ngẫu nhiên, từ đó xây dựng mô hình mật độ kết hợp cho tập dữ liệu đó.
Học không giám sát kết hợp với suy diễn Bayes cho phép xác định xác suất có điều kiện cho bất kỳ biến ngẫu nhiên nào, dựa trên thông tin từ các biến khác đã biết.
Học không giám sát đóng vai trò quan trọng trong việc nén dữ liệu, vì hầu hết các thuật toán nén đều dựa vào một phân bố xác suất trên tập đầu vào, cho dù là theo cách tường minh hay không tường minh.
Gom nhóm dữ liệu không mang tính xác suất là một dạng của học không có giám sát Học tăng cường (reinforcement learning) là một lĩnh vực con của học máy, nghiên cứu cách mà một tác nhân trong môi trường lựa chọn hành động để tối đa hóa phần thưởng lâu dài Các thuật toán học tăng cường tìm kiếm chiến lược để ánh xạ các trạng thái của thế giới tới những hành động mà tác nhân nên thực hiện trong những trạng thái đó.
Môi trường trong học tăng cường thường được mô hình hóa bằng quá trình quyết định Markov (MDP), liên quan đến các kỹ thuật quy hoạch động Trong MDP, xác suất chuyển trạng thái và thu lợi thường ngẫu nhiên nhưng tĩnh, khác với học có giám sát, nơi không có cặp dữ liệu vào/kết quả đúng Học tăng cường tập trung vào hoạt động trực tuyến, tìm kiếm sự cân bằng giữa khám phá và khai thác tri thức hiện có Phương pháp này rất phù hợp cho các bài toán có sự đánh đổi giữa thưởng ngắn hạn và dài hạn Học tăng cường đã chứng minh hiệu quả trong nhiều lĩnh vực, bao gồm điều khiển robot, vận hành thang máy, viễn thông, và các trò chơi như backgammon và cờ vua.
1.2.2 Chu trình thiết kế hệ thống nhận dạng mẫu
Hình 1.1 Chu trình hệ thống nhận dạng mẫu
Trích chọn đặc trưng (Feature selection)
Lựa chọn mô hình (Model selection)
Học (Learning) Đánh giá mô hình (Evaluation)
Trong chu trình xử lý dữ liệu, bước đầu tiên là làm sạch và tiền xử lý dữ liệu, bao gồm giảm nhiễu và loại bỏ dữ liệu dư thừa Tiền xử lý có thể bao gồm việc đổi tên các giá trị, chuẩn hóa chúng về các khoảng nhất định, rời rạc hóa các giá trị liên tục và trừu tượng hóa bằng cách kết hợp các dạng giá trị khác nhau Tiếp theo, trích chọn đặc trưng giúp giảm kích thước mẫu bằng cách xác định các đặc trưng nổi bật để phân biệt với các mẫu khác Lựa chọn mô hình dựa trên kiến thức và phân tích sự tương quan giữa các mẫu để đưa ra dự đoán Quá trình học là tìm kiếm tập tham số tối ưu cho mô hình nhằm giảm thiểu hàm lỗi, và cuối cùng, đánh giá mô hình thông qua tỷ lệ lỗi nhận dạng để xác định hiệu quả của nó.
1.2.3 Thiết kế hệ thống nhận dạng vân tay
Hệ thống nhận dạng vân tay tự động xử lý thông tin từ hình ảnh để xác định sự tương đồng giữa các vân tay, từ đó đưa ra quyết định về tính đồng nhất của chúng Cấu trúc của hệ thống này bao gồm nhiều bước, trong đó tiền xử lý (pre-processing) là giai đoạn quan trọng đầu tiên.
Quá trình tiền xử lý vân tay đóng vai trò quan trọng trong việc nâng cao chất lượng hình ảnh và kích thước ảnh, đồng thời chuẩn hóa dữ liệu, từ đó cải thiện hiệu quả của quá trình nhận dạng.
Trong nghiên cứu này, chúng tôi không cần sử dụng các thuật toán nâng cao để cải thiện chất lượng ảnh do các ảnh đã có sẵn tương đối tốt Các công việc tiền xử lý bao gồm hiệu chỉnh độ sáng và tối của ảnh, lọc nhiễu, chuẩn hóa vị trí và tư thế của ảnh vân tay, cũng như chuẩn hóa kích cỡ giữa ảnh trong cơ sở dữ liệu và ảnh cần tìm Việc chuẩn hóa ảnh một cách hiệu quả giúp giảm độ lệch giữa hai điểm ảnh, từ đó nâng cao độ chính xác trong việc trích rút đặc trưng.
Hình1.2 Hệ thống nhận dạng vân tay cơ bản b Tách vân tay
Chức năng này xác định kích cỡ và vị trí của một hoặc nhiều vân tay trên ảnh chụp, từ đó tách ra phần vân tay Phần ảnh vân tay sau khi tách thường nhỏ hơn so với ảnh chụp ban đầu và sẽ là các vân tay cần tìm Chức năng trích chọn đặc trưng sử dụng các ảnh đã được tách ra này.
Chức năng này sử dụng các thuật toán để trích xuất thông tin đặc trưng của từng cá nhân Sau khi tách vân tay, các đặc điểm chính của ảnh vân tay sẽ được xác định từ những đặc trưng này.
Nhận dạng vân tay tạo ra các vector đặc trưng, những vector này được sử dụng để so sánh độ tương đồng giữa ảnh vân tay cần tìm và ảnh vân tay trong cơ sở dữ liệu Quá trình đối sánh này là một phần quan trọng trong việc xác định danh tính qua vân tay.
Sau khi trích xuất, các đặc trưng sẽ được đưa vào khối nhận dạng để phân lớp đối tượng Quá trình này bao gồm việc so sánh các vector đặc trưng nhằm xác định độ tương tự giữa ảnh cần tìm và ảnh trong cơ sở dữ liệu Ảnh vân tay cho giấy tờ chứng minh nhân dân và đi đường phải đáp ứng các tiêu chuẩn quy định.
Tình hình nghiên cứu bài toán nhận dạng vân tay
1.3.1 Tình hình nghiên cứu trong nước Đối với nghiên cứu nhận dạng ảnh vân tay, hiện nay trong nước các doanh nghiệp sử dụng để chấm công Tuy nhiên việc sử dụng phương pháp phân tích thành phần chính và mạng neural vẫn chưa có công trình nào đạt kết quả cao được công bố
1.3.2 Tình hình nghiên cứu ngoài nước
Trên thế giới đã có rất nhiều công trình nghiên cứu sử dụng nhận dạng vân tay ngày càng phát triển [12]
Joannes Evangelista Purkinji (1823) đã phát hiện ra các mô hình và hình dạng của ngón tay, trong khi Henry Faulds và W.J Herschel (1880) đề xuất sử dụng vân tay như một phương thức độc đáo để xác định bản chất con người, gọi là Nature Năm 1902, Harris Hawthorne Wilder nghiên cứu về lòng bàn tay và vân tay, thiết lập hệ thống cơ bản của môn hình thái học và di truyền học Đến năm 1926, Harold Cummins đã phát triển thuật ngữ “Dermatoglyphics” (Sinh trắc học dấu vân tay), chính thức trở thành một ngành nghiên cứu riêng biệt tại Hiệp hội hình thái học của Mỹ.
PHƯƠNG PHÁP PHÂN TÍCH THÀNH PHẦN CHÍNH
Phương pháp phân tích thành phần chính
Phương pháp phân tích thành phần chính (PCA) trong nhận dạng vân tay sử dụng toàn bộ hình ảnh vân tay để tạo ra một không gian mới có chiều nhỏ hơn, giúp bảo tồn các đặc điểm chính của vân tay Các hình ảnh vân tay của cùng một người sẽ được nhóm gần nhau, trong khi các nhóm khác sẽ cách xa, tạo ra sự phân biệt rõ ràng trong không gian đặc điểm PCA được coi là một kỹ thuật thống kê quan trọng trong các ứng dụng nhận dạng vân tay, nén ảnh và tìm kiếm mẫu trong không gian dữ liệu có số chiều lớn.
Phương pháp PCA sử dụng thuật toán để tạo ra một bức ảnh mới từ bức ảnh gốc, bức ảnh này vẫn giữ lại những đặc trưng cơ bản nhất nhưng có kích thước nhỏ hơn nhiều so với ảnh đầu vào.
Việc trích chọn đặc trưng của ảnh nhằm hai mục tiêu chính: đầu tiên, giảm số chiều của dữ liệu ảnh mà vẫn giữ lại thông tin quan trọng, và thứ hai, cải thiện khả năng phân biệt giữa các mẫu dữ liệu.
Phân tích thành phần chính (PCA) là phương pháp nhằm xác định một không gian mới, nơi việc phân loại có thể đạt hiệu quả tốt hơn so với ban đầu Phương pháp này tìm ra không gian theo hướng biến thiên mạnh nhất của một tập hợp vector trong không gian đã cho PCA mang lại nhiều lợi ích, bao gồm giảm chiều dữ liệu và cải thiện độ chính xác trong phân tích.
Thuật toán PCA giúp giảm kích thước ảnh lớn thành ảnh nhỏ hơn, đặc biệt hiệu quả với ảnh có độ phân giải cao Phương pháp này xác định các đặc trưng tiêu biểu của đối tượng cần nhận dạng và có thể kết hợp với các kỹ thuật khác như mạng Neural và Support Vector Machine để nâng cao hiệu quả nhận dạng.
Phương pháp này có độ nhiễu cao và gặp khó khăn trong việc phân loại theo chiều lớn nhất của tập vector Do đó, chiều phân bố lớn nhất không phải lúc nào cũng mang lại hiệu quả tốt nhất cho bài toán nhận dạng.
2.1.2 Thuật toán PCA cho nhận dạng vân tay
Phương pháp PCA (Phân tích thành phần chính) giúp giảm số chiều của tập vector mà vẫn giữ lại thông tin quan trọng nhất Cụ thể, PCA sẽ giữ lại K thuộc tính mới từ M thuộc tính ban đầu, với điều kiện K nhỏ hơn M×N Khi áp dụng thuật toán PCA để trích chọn vector đặc trưng cho bài toán nhận dạng vân tay, một ảnh vân tay kích thước M×N được biểu diễn dưới dạng vector cột có kích thước (M×N) x 1.
Hình 2.1 Biểu diễn vector của ảnh vân tay người
Việc tạo ra các vector từ hình ảnh được thực hiện bằng cách ghép nối các hàng của ảnh lại với nhau Đối với bức ảnh vân tay, nếu kích thước của ảnh là MN pixels, thì vector tương ứng sẽ có số chiều là (MN) 1.
Thuật toán huấn luyện bộ dữ liệu tìm tập vector riêng:
Bước 1: Nhận các vân tay từ cơ sở dữ liệu
Ký hiệu I 1 , I 2 ,…, I n là các ảnh vân tay huấn luyện Các ảnh này phải cùng kích thước Biểu diễn mỗi ảnh I i ta biểu thành vector i
Bước 2: Tính ảnh trung bình
Giá trị vector vân tay trung bình theo công thức:
, (2.1) trong đó Ψ là vector trung bình của tập tất cả các i Ψ còn được gọi là vector trung bình vân tay của tập luyện
Bước 3: Trừ đi giá trị trung bình
Với giá trị vector vân tay trung bình công thức được tính toán như sau:
i i (2.2) trong đó: Ψ là vector trung bình vân tay, Φi là vector sai số ứng với mỗi ảnh,
i là vector 1 chiều của các ảnh
Bước 4: Tính ma trận hiệp phương sai (covariance) C
(2.3) trong đó C sẽ có kích thước (MN) (MN)
- i : giá trị sai số được tính ở công thức (2.2)
- A: ma trận có kích thước (MN) ×M
Để tính các giá trị riêng và vector đặc trưng của ma trận hiệp phương sai, ta cần làm việc với ma trận C hoặc ma trận AA T Tuy nhiên, việc này không hiệu quả do ma trận C có kích thước (MN) (MN), dẫn đến số chiều quá lớn và khối lượng tính toán rất nặng nề, đặc biệt khi kích thước ảnh luyện lớn, khiến N cũng lớn theo.
Ma trận AA T và A T A có chung trị riêng và vector đặc trưng, liên hệ với nhau qua biểu thức ui = Avi Tuy nhiên, ma trận A T A có số chiều ít hơn (ma trận M×M), do đó, chúng ta sẽ thực hiện chuyển đổi về ma trận A T A.
Với M vector đặc trưng của AA T (ui= Avi) tương ứng với M giá trị riêng
Khi đó, Chuẩn hóa các vector đặc trưng ui về vector đơn vị là:
Bước 6: Trích chọn K vector đặc trưng là phương pháp hiệu quả để giảm số chiều và độ phức tạp tính toán Bằng cách giữ lại K vector đặc trưng tương ứng với K giá trị riêng lớn nhất, mỗi vân tay sẽ được đại diện sau khi trừ đi giá trị trung bình.
Mỗi vân tay huấn luyện i sẽ được biểu diễn bởi một vector
trong đó i là vector đại diện cho vân tay i trong tập huấn luyện, i w j
Các trọng số (j=1…K) tương ứng với K vector đặc trưng trong quá trình phân loại Có nhiều phương pháp phân loại như khoảng cách Euclide, mạng nơron, và SVM Trong trường hợp các đối tượng đã được nhóm cách xa nhau, phương pháp khoảng cách Euclide mang lại kết quả hiệu quả nhất Vector đặc tính của đối tượng cần nhận dạng sẽ được so sánh với vector đặc tính của từng ảnh mẫu trong tập học Khoảng cách ngắn nhất sẽ được lưu lại dưới dạng e r = min l ||Ω - Ω l||, trong đó e r là vector của vân tay thứ k trong cơ sở dữ liệu Khi e k nhỏ hơn ngưỡng đã xác định, bức ảnh sẽ được nhận dạng là vân tay thứ k trong cơ sở dữ liệu.
Thuật toán nhận dạng ảnh vân tay:
Cho 1 ảnh vân tay chưa biết (tất nhiên cũng phải giống tập mẫu-chính diện và cùng kích thước) Ta thực hiện lần lượt các bước sau:
Lưu ý: Giai đoạn nhận dạng này giống hệt giai đoạn biểu diễn ảnh vân tay trong tập mẫu
Bước 2: Biểu diễn thành như sau:
Bước 3: Tìm khoảng cách nhỏ nhất: l l e r min (2.8)
Tức ta tìm vân tay thứ l trong tập mẫu có khoảng cách gần nhất với vân tay cần nhận dạng
Bước 4: So sánh khoảng cách ngưỡng và rút ra kết luận Để xác định khi e r < Γ r (Γ r là ngưỡng chấp nhận), ảnh vân tay cần phải "đủ gần" với ảnh của người thứ nhất trong tập mẫu.
Lưu ý: Người ta chứng mình được rằng, nếu dùng khoảng cách
“Mahalanobis” sẽ cho kết quả tốt hơn so với sử dụng khoảng cách Euclide để tính er
2.1.3 Ví dụ các bước của thuật toán
Các ma trận số liệu được trình bày qua các bước thực hiện thuật toán, trong đó toàn bộ dữ liệu được xử lý bằng Matlab Bước đầu tiên là tìm tập đặc trưng của bộ dữ liệu huấn luyện.
Giả sử rằng có 6 ảnh được biểu diễn bởi 6 ma trận số liệu 4x6 như sau:
Bảng 2.1: Biểu diễn của 6 ảnh bởi 6 ma trận số liệu 4x6
Sáu ma trận này được biểu diển thành các vector cột I1, I2, I3, I4, I5, I6:
Bảng 2.2: Biểu diễn vector cột của vân tay ảnh và giá trị trung bình
Bước 1: Tính ảnh vân tay trung bình như cột "Itb" ở bảng 2.2
Bước 2: Trừ ảnh vân tay trung bình
Bảng 2.3: Biểu diễn vector cột của vân tay ảnh và giá trị trung bình
I1-Itb I2-Itb I3-Itb I4-Itb I5-Itb I6-Itb Itb 2.1667
Bảng 2.4: Ma trận hiệp phương sai C
Bước 4: Tính giá trị riêng của C
Bảng 2.5: Ma trận vector riêng C
Bảng 2.6: Ma trận giá trị riêng C
Bước 5: Sắp xếp các vector riêng giảm dần theo giá trị riêng
Bảng 2.7: Ma trận vector riêng của C theo thứ tự giảm dần
Bảng 2.8: Ma trận giá trị riêng theo thứ tự giảm dần
Bước 6: Tính vector riêng của AAT: ui = Avi
Bảng 2.9: Ma trận vector riêng ui
Các cột là các vector đặc trưng (fingerprint) của các ảnh
Bảng 2.10: Các vector đặc trưng của 6 ảnh
Ví dụ: Lấy K = 4 vector đặc trưng
Bảng 2.11: Lấy vector đặc trưng của 4 ảnh
Bài viết này mô tả quy trình trích chọn đặc trưng từ 6 bức ảnh để nhận dạng, trong đó K=4 cho phép lấy 4 vector đặc trưng từ 6 vector đã được trích chọn Phương pháp nhận dạng ảnh vân tay được thực hiện dựa trên đặc trưng PCA và các độ đo khoảng cách.
Giả sử ma trận ảnh I cần được nhận dạng với số liệu sau:
Bảng 2.12: Biểu diễn ma trận ảnh I7
I7 nhận dạng (là ảnh I5 nhưng sửa một số vị trí ), tức là để cho ảnh gần với ảnh I5
Bước 1: Biểu diễn thành vector cột - như cột I7 của bảng 2.13
Bước 2: Trừ ảnh trung bình - như cột I7-Itb
Bảng 2.13: Biểu diễn vector I7 thành cột và trừ ảnh trung bình
Bước 3: Chiếu lên vector riêng
Bảng 2.14: Biểu diễn vetor riêng I7
W Trích chọn đặc trưng với k = 4
Bước 4: Tìm khoảng cách min giữa tập huấn luyện với đặc trưng của I7
K = 4 của tập huấn luyện Đặc trưng của I7 -9.0443 -48.7427 -98.6791 -174.0061 118.1374 212.3347
Bảng 2.15: Khoảng cách giữa I7 với 6 ảnh trong tập huấn luyện
244.7242 Ảnh I7 được nhận ra là ảnh I5
Mạng neural
Mạng neural nhân tạo, được nghiên cứu và phát triển đến nay có thể chia thành bốn giai đoạn như sau [3,7,8]:
Giai đoạn đầu tiên của mạng neural nhân tạo bắt nguồn từ nghiên cứu của William vào năm 1890 về tâm lý học, liên quan đến các liên kết thần kinh Đến năm 1940, McCulloch và Pitts đã chỉ ra rằng các neuron có thể được mô hình hóa như những thiết bị ngưỡng để thực hiện các phép toán logic Mô hình mạng neural của McCulloch-Pitts cùng với thuật toán huấn luyện mạng của Hebb được phát triển vào năm 1943, đánh dấu bước tiến quan trọng trong lĩnh vực này.
Giai đoạn thứ hai trong phát triển mạng neural diễn ra vào năm 1958 khi Rosenblatt hoàn thiện mô hình Perceptron, tuy nhiên, mô hình này không hiệu quả với các hàm logic phức tạp, như đã chỉ ra bởi Marvin Minsky và Seymour Papert từ MIT vào năm 1969 Theo Widrow (1962), mô hình Adaline, một mô hình tuyến tính tự chỉnh, đã được sử dụng rộng rãi trong điều khiển thích nghi và tách nhiễu, và vẫn còn ứng dụng phổ biến cho đến ngày nay.
- Giai đoạn thứ ba: Vào khoảng đầu thập niên 80 các nhà khoa học
Grossberg, Kohonen, Rumelhart và Hopfield đã có những nghiên cứu quan trọng về mạng neural Năm 1982, Hopfield thực hiện nghiên cứu thực nghiệm về mạng rời rạc, và đến năm 1984, ông chuyển sang nghiên cứu mạng liên tục Hinton và Williams sau đó phát triển thuật toán sai số truyền ngược để huấn luyện mạng neural nhiều lớp, giúp giải quyết những bài toán mà các mạng khác không thể thực hiện Kết quả là sự ra đời của nhiều ứng dụng mạnh mẽ của mạng neural, bao gồm các mô hình như máy Boltzmann và mạng Neocognition của Fukushima.
Giai đoạn thứ tư của mạng neural đã chứng minh vai trò quan trọng trong nhiều lĩnh vực như nghiên cứu kỹ thuật tính, tối ưu hóa, sinh học, y học, thống kê và giao thông.
… Tính từ năm 1987 đến nay, hội nghị toàn cầu chuyên ngành neural IJCNN
Hội nghị Quốc tế về Mạng Nơ-ron (International Joint Conference on Neural Networks) diễn ra hàng năm, quy tụ nhiều công trình nghiên cứu và các nhà khoa học từ khắp nơi trên thế giới.
2.2.2 Các ứng dụng của mạng neural Đặc trưng của mạng neural nhân tạo là khả năng học và xử lý song song
Mạng neural nhân tạo có khả năng gần đúng mối quan hệ phức tạp giữa các yếu tố đầu vào và đầu ra trong các quá trình nghiên cứu Khi đã được huấn luyện, mạng có thể kiểm tra độc lập với kết quả đáng tin cậy Ngoài ra, nó còn có thể tính toán kết quả đầu ra cho các bộ dữ liệu đầu vào mới.
Mạng neural nhân tạo đã chứng tỏ tính hiệu quả trong việc giải quyết nhiều bài toán phức tạp và phi tuyến trong các lĩnh vực khác nhau Đây được xem là một phương pháp tiềm năng, đặc biệt khi mối quan hệ vật lý của quá trình nghiên cứu khó được thiết lập một cách rõ ràng Các nhóm ứng dụng của mạng neural nhân tạo đã được áp dụng rộng rãi, mang lại kết quả tích cực trong việc xử lý và giải quyết các vấn đề cụ thể.
Bài toán phân lớp và nhận dạng là một trong những vấn đề cơ bản trong nhiều lĩnh vực thực tiễn như nhận dạng chữ viết, tiếng nói, vân tay, phân loại gen và chất lượng sản phẩm Loại bài toán này yêu cầu phân loại các đối tượng quan sát thành các nhóm dựa trên các đặc điểm của chúng.
Bài toán dự báo là một thách thức quan trọng trong nhiều lĩnh vực như khoa học, kinh doanh, y học và thiên văn học Mạng neural nhân tạo đã chứng minh hiệu quả trong việc xây dựng các mô hình dự báo, sử dụng dữ liệu quá khứ để dự đoán các số liệu trong tương lai.
Mạng neural nhân tạo đã được áp dụng rộng rãi trong các hệ thống điều khiển tự động và đóng vai trò quan trọng trong việc giải quyết các bài toán tối ưu thực tiễn nhờ vào khả năng học hỏi và xấp xỉ hàm hiệu quả.
2.2.3 Kiến trúc mạng neural a Mô hình neural
Theo Howerd (2002), bộ não và hệ thống thần kinh của con người bao gồm khoảng 100 tỷ tế bào thần kinh, hay còn gọi là các neural Mỗi tế bào neural có cấu trúc gồm thân neural với nhân bên trong (soma), nơi tiếp nhận và phát ra các xung động thần kinh Hệ thống dendrite dạng cây nhận tín hiệu từ các dây thần kinh vào, tạo thành một lưới dày đặc xung quanh thân neural, chiếm diện tích khoảng 0,25mm² Cuối cùng, sợi trục axon phân nhánh có thể dài từ một cm đến hàng mét, kết nối với các dây thần kinh vào hoặc với nhân tế bào của các neural khác qua các khớp nối (synapse) Mỗi neural có thể có từ vài chục đến hàng trăm ngàn khớp nối, bao gồm khớp nối kích thích (excitatory) cho phép tín hiệu qua và khớp nối ức chế (inhibitory) làm cản tín hiệu Ước tính mỗi neural trong bộ não con người có khoảng 10^4 khớp nối.
Tế bào neural có chức năng cơ bản là kết nối với nhau để hình thành hệ thống thần kinh, điều khiển hoạt động của cơ thể sống Chúng truyền tín hiệu qua các dây thần kinh dưới dạng xung điện, được tạo ra từ các phản ứng hóa học phức tạp Khi điện thế tín hiệu vào đạt ngưỡng nhất định, một xung điện sẽ được phát sinh và truyền theo trục dây thần kinh đến các nhánh rẽ, tiếp tục truyền tới các tế bào neural khác.
Hình 2.2 Cấu tạo của tế bào neural sinh học
Để phát triển một mô hình neural nhân tạo mô phỏng hoạt động của neuron trong não người, McCulloch và Pitts (1943) đã đề xuất một mô hình toán học cho neuron.
Trong mô hình này, một mạng nơ-ron thứ i sẽ tiếp nhận các tín hiệu đầu vào x j, mỗi tín hiệu được gán một trọng số tương ứng w ij Tổng hợp tất cả các thông tin đầu vào với trọng số sẽ tạo ra một giá trị tổng thể.
Hình 2.3 Mô hình neural nhân tạo
Thông tin đầu ra ở thời điểm t+1 được tính từ các thông tin đầu vào như sau:
Hàm kích hoạt g, còn được gọi là hàm chuyển, có dạng hàm bước nhảy, đóng vai trò quan trọng trong việc chuyển đổi thông tin đầu vào thành tín hiệu đầu ra.
THIẾT KẾ HỆ THỐNG NHẬN DẠNG ẢNH VÂN TAY
Cơ sở dữ liệu cho thử nghiệm
Trong nghiên cứu này, chúng tôi đã áp dụng ba bộ dữ liệu chứa hình ảnh vân tay để thử nghiệm các thuật toán PCA và PCA kết hợp với mạng Neural Chi tiết về bộ dữ liệu hình ảnh vân tay được trình bày trong phụ lục.
Bộ dữ liệu 1, được công bố tại [13], bao gồm 80 ảnh vân tay của 10 người, mỗi người có 8 ảnh với kích thước khác nhau Hình 3.1 minh họa 3 ảnh vân tay của một người trong bộ dữ liệu này.
Hình 3.1 Ba ảnh vân tay của một người trong bộ dữ liệu 1
Bộ dữ liệu 2 và bộ dữ liệu 3 được công bố trong tài liệu [14], mỗi bộ chứa 80 ảnh vân tay của 10 người, với mỗi người có 8 ảnh Kích thước ảnh vân tay trong các bộ dữ liệu này là khác nhau; bộ dữ liệu 2 có ảnh kích thước 300×300 điểm ảnh, trong khi bộ dữ liệu 3 có ảnh kích thước 256×364 điểm ảnh Hình 3.2 minh họa sự khác biệt này.
3 ảnh vân tay của 1 người trong bộ dữ liệu 2
Hình 3.2 Ba ảnh vân tay của một người trong bộ dữ liệu 2
Tiền xử lý
Phương pháp PCA yêu cầu tất cả các ảnh nhận dạng có kích thước đồng nhất, vì vậy bộ dữ liệu 1 cần được điều chỉnh kích thước ảnh Để thực hiện việc này, chúng tôi áp dụng một thuật toán cụ thể nhằm chuyển đổi tất cả các ảnh về cùng một kích thước.
Để chuyển đổi ảnh đa mức xám thành ảnh nhị phân, cần thực hiện quá trình biến đổi mà trong đó mỗi điểm đen được biểu thị bằng giá trị 1 và mỗi điểm trắng bằng giá trị 0, tạo thành một ma trận nhị phân.
Bước 2 là tính tổng giá trị của ma trận ảnh theo từng dòng Các dòng có tổng giá trị bằng 0 được xác định là dòng trắng, trong khi những dòng có giá trị lớn hơn 0 chứa các điểm ảnh của ảnh vân tay.
Bước 3: Xác định điểm bắt đầu và điểm kết thúc cho từng dòng ảnh vân tay dựa trên tổng giá trị của ma trận ảnh theo từng dòng Để loại bỏ các vùng đen nhỏ ở ngoài viền ảnh, tổng giá trị của dòng ảnh cần lớn hơn 20.
Bước 4: Tính tổng giá trị của ma trận ảnh theo từng cột Các cột có tổng giá trị bằng 0 sẽ được xác định là cột trắng, trong khi những cột có tổng giá trị lớn hơn 0 sẽ được phân loại khác.
0 là những cột chứa các điểm ảnh của ký tự
Bước 5: Để xác định điểm bắt đầu và điểm kết thúc cho từng cột chứa ảnh vân tay, cần dựa vào tổng giá trị của ma trận ảnh theo từng cột Để loại bỏ các vùng đen nhỏ ở viền ảnh, tổng giá trị của cột ảnh cần lớn hơn 20.
Bước 6: Tách ảnh vân tay dựa trên điểm bắt đầu và điểm kết thúc của các dòng và các cột ảnh
Bươc 7: Chuyển ảnh vân tay về kích thước 150×90 điểm ảnh
Hình 3.3 mô tả đồ thị của tổng giá trị của ma trận ảnh theo từng dòng và từng cột được dùng để tách ảnh vân tay a) b)
Hình 3.3 Đồ thị của tổng giá trị của ma trận ảnh theo a) từng dòng và b) từng cột
Hình 3.4 mô tả ảnh kết quả sau khi chuẩn hóa về cùng kích thước của 3 ảnh vân tay của 1 người ở hình 3.1
Hình 3.4 Ba ảnh vân tay của một người trong bộ dữ liệu 1 sau khi chuẩn hóa
Với bộ dữ liệu 2 và 3, tất cả các ảnh đều có kích thước đồng nhất, vì vậy không cần thực hiện bước chuẩn hóa kích thước.
Các bộ dữ liệu thử nghiệm thường không đạt chất lượng cao Chúng tôi quyết định giữ nguyên ảnh gốc mà không thực hiện các phép toán để giảm nhiễu hoặc nâng cao chất lượng ảnh.
Các thử nghiệm với thuật toán PCA
Trong thử nghiệm này, chúng tôi đã sử dụng bộ dữ liệu huấn luyện để kiểm tra độ chính xác của các thuật toán nhận dạng Chúng tôi thay đổi số chiều của véc tơ đặc trưng, tức là giá trị K, để đánh giá ảnh hưởng của nó đến kết quả nhận dạng Kết quả thử nghiệm được trình bày trong bảng 3.1, cho thấy rằng ngay cả khi K = 1, thuật toán PCA vẫn đạt độ chính xác 100% khi bộ dữ liệu huấn luyện và bộ dữ liệu nhận dạng là giống nhau Điều này xảy ra vì các giá trị đặc trưng của một ảnh I trong quá trình huấn luyện và nhận dạng là giống nhau khi áp dụng phương pháp PCA.
Bảng 3.1: Kết quả của các thử nghiệm bằng phương pháp PCA cho các bộ dữ liệu
Bộ dữ liệu 1 Bộ dữ liệu 2 Bộ dữ liệu 3
Trong thử nghiệm này, chúng tôi sử dụng ba bộ dữ liệu huấn luyện với 70 ảnh vân tay của 10 người, mỗi người có 7 ảnh Bộ nhận dạng gồm 10 ảnh, mỗi người 1 ảnh Chúng tôi thay đổi giá trị K để đánh giá ảnh hưởng đến độ chính xác của nhận dạng Kết quả cho thấy, với bộ dữ liệu 1, độ chính xác luôn là 20% khi K = 5 Bộ dữ liệu 2 cũng cho kết quả 40%, trong khi bộ dữ liệu 3 đạt độ chính xác cao nhất là 50% khi K = 15 Thời gian thực hiện thuật toán không thay đổi đáng kể khi giá trị K tăng.
Bảng 3.2: Kết quả của các thử nghiệm bằng phương pháp PCA cho các bộ dữ liệu
Bộ dữ liệu 1 Bộ dữ liệu 2 Bộ dữ liệu 3
Trong thử nghiệm này, chúng tôi đã sử dụng các bộ dữ liệu huấn luyện gồm 60 ảnh vân tay của 10 người, mỗi người có 6 ảnh Bộ nhận dạng bao gồm 20 ảnh vân tay, với 2 ảnh cho mỗi người Tương tự như thử nghiệm 3, chúng tôi đã thay đổi số chiều của vector đặc, tức là giá trị K, để đánh giá ảnh hưởng đến kết quả nhận dạng Kết quả thử nghiệm được trình bày trong bảng 3.3 Đối với bộ dữ liệu 1, thuật toán PCA đạt tỷ lệ nhận dạng cao nhất là 35% khi K được điều chỉnh.
So sánh với thử nghiệm 2, tỷ lệ nhận dạng chính xác đã tăng từ 20% lên 35% với K = 5, và từ 20% lên 30% với các giá trị K khác Đối với bộ dữ liệu 2, thuật toán PCA đạt tỷ lệ nhận dạng chính xác cao nhất là 50%.
Khi K = 5 hoặc K = 10, tỷ lệ nhận dạng chính xác chỉ tăng ở các giá trị K = 5, K = 10 và K = 50 so với thử nghiệm 2 Đối với bộ dữ liệu 3, thuật toán PCA đạt tỷ lệ nhận dạng chính xác cao nhất khi K = 10 hoặc 15 Tuy nhiên, so với thử nghiệm 2, tỷ lệ này đã giảm đáng kể.
Bảng 3.3: Kết quả của các thử nghiệm bằng phương pháp PCA cho các bộ dữ liệu
Bộ dữ liệu 1 Bộ dữ liệu 2 Bộ dữ liệu 3
Trong thử nghiệm này, chúng tôi đã giảm tập dữ liệu huấn luyện xuống còn 40 ảnh vân tay của 10 người, mỗi người có 4 ảnh, tức là chỉ sử dụng 50% dữ liệu huấn luyện Tập dữ liệu còn lại được dùng để nhận dạng Kết quả thử nghiệm khi thay đổi giá trị K được trình bày trong bảng 3.4, với giá trị K cao nhất là 40 Tuy nhiên, chúng tôi vẫn chọn K = 35 như trong các thử nghiệm trước Kết quả cho thấy tỷ lệ nhận dạng chính xác đã giảm ở tất cả các bộ dữ liệu thử nghiệm.
Bảng 3.4: Kết quả của các thử nghiệm bằng phương pháp PCA cho các bộ dữ liệu
Bộ dữ liệu 1 Bộ dữ liệu 2 Bộ dữ liệu 3
Các thử nghiệm với mạng Neural
Trong thử nghiệm này, chúng tôi sử dụng các bộ dữ liệu huấn luyện và bộ dữ liệu nhận dạng tương tự như thử nghiệm 2 trong mục 3.3.2 Do mạng neural cho kết quả nhận dạng khác nhau ở mỗi lần thử nghiệm, chúng tôi đã thực hiện 10 lần cho mỗi giá trị K và chọn kết quả nhận dạng cao nhất Chúng tôi đã chọn mạng MLP với 2 tầng, trong đó tầng 1 và tầng 2 đều có 10 neural Kết quả thử nghiệm được trình bày trong bảng.
3.5 Một số nhận xét khi kết hợp đặc trưng PCA với mạng neural so với thử nghiệm 2 mục 3.3.2 như sau:
- Với bộ dữ liệu 1, tỷ lệ nhận dạng chính xác đã tăng từ 20% lên 40%
- Với bộ dữ liệu 2, tỷ lệ nhận dạng chính xác đã tăng từ 40% lên 80%
- Với bộ dữ liệu 3, tỷ lệ nhận dạng chính xác đã tăng từ 50% lên 60%
Việc áp dụng đặc trưng PCA trong mạng neural đã mang lại sự cải thiện đáng kể về tỷ lệ nhận dạng chính xác, đặc biệt là ở bộ dữ liệu 1 và bộ dữ liệu 2, với mức tăng lên tới 20%.
Bảng 3.5: Kết quả của các thử nghiệm sử dụng đặc trưng PCA kết hợp với mạng
MLP 2 tầng cho các bộ dữ liệu
Bộ dữ liệu 1 Bộ dữ liệu 2 Bộ dữ liệu 3
Chúng tôi đã chọn mạng MLP với cấu trúc 3 tầng: tầng 1 có 10 neuron, tầng 2 có 5 neuron và tầng 3 có 10 neuron Kết quả thử nghiệm được trình bày trong bảng 3.6 cho thấy tỷ lệ nhận dạng chính xác đã tăng so với thử nghiệm 2 trong mục 3.3.2, tuy nhiên, vẫn giảm so với khi sử dụng mạng MLP.
Bảng 3.6: Kết quả của các thử nghiệm sử dụng đặc trưng PCA kết hợp với mạng
MLP 3 tầng cho các bộ dữ liệu
Bộ dữ liệu 1 Bộ dữ liệu 2 Bộ dữ liệu 3
Bài viết so sánh tỷ lệ nhận dạng chính xác giữa thuật toán PCA và PCA kết hợp với mạng neuron trên ba bộ dữ liệu khác nhau Kết quả cho thấy thuật toán PCA đạt tỷ lệ nhận dạng thấp nhất, trong khi mạng neuron 2 tầng mang lại tỷ lệ nhận dạng cao nhất cho cả ba bộ dữ liệu Cụ thể, tỷ lệ nhận dạng chính xác cho bộ dữ liệu 1, bộ dữ liệu 2 và bộ dữ liệu 3 đều cho thấy sự vượt trội của mạng neuron 2 tầng so với PCA.
Hình 3.5 So sánh tỷ lệ nhận dạng chính xác sử dụng thuật toán PCA và đặc trưng
PCA kết hợp với mạng neuron cho a) bộ dữ liệu 1, b) bộ dữ liệu 2 và c) bộ dữ liệu
Trong thử nghiệm này, chúng tôi sử dụng các bộ dữ liệu huấn luyện và bộ dữ liệu nhận dạng tương tự như thử nghiệm 3 trong mục 3.3.3 Đối với mỗi giá trị K, chúng tôi thực hiện 10 lần chạy và chọn kết quả nhận dạng cao nhất Mạng MLP được chọn là mạng 2 tầng, với tầng 1 bao gồm
Kết quả thử nghiệm với 10 neuron ở tầng đầu tiên và 10 neuron ở tầng thứ hai, như đã trình bày trong bảng 3.7, cho thấy sự kết hợp giữa đặc trưng PCA và mạng neural mang lại những nhận xét đáng chú ý so với thử nghiệm 3 trong mục 3.3.3.
- Với bộ dữ liệu 1, tỷ lệ nhận dạng chính xác hầu như không thay đổi đáng kể
- Với bộ dữ liệu 2, tỷ lệ nhận dạng chính xác đã tăng lên nhiều, từ 50% lên 80%
- Với bộ dữ liệu 3, tỷ lệ nhận dạng chính xác tăng lên không đáng kể
Bảng 3.7: Kết quả của các thử nghiệm sử dụng đặc trưng PCA kết hợp với mạng
MLP 2 tầng cho các bộ dữ liệu
Bộ dữ liệu 1 Bộ dữ liệu 2 Bộ dữ liệu 3
Bảng 3.8: Kết quả của các thử nghiệm sử dụng đặc trưng PCA kết hợp với mạng
MLP 3 tầng cho các bộ dữ liệu
Bộ dữ liệu 1 Bộ dữ liệu 2 Bộ dữ liệu 3
Tỷ lệ nhận dạng chính xác cho bộ dữ liệu 1 là 50%, cho bộ dữ liệu 2 là 20%, và cho bộ dữ liệu 3 là 1.118% Tỷ lệ này cho thấy hiệu quả của các mô hình trong việc nhận diện dữ liệu khác nhau.
Hình 3.6 So sánh tỷ lệ nhận dạng chính xác sử dụng thuật toán PCA và đặc trưng
PCA kết hợp với mạng neuron cho a) bộ dữ liệu 1, b) bộ dữ liệu 2 và c) bộ dữ liệu
Chúng tôi đã chọn mạng MLP với cấu trúc 3 tầng: tầng 1 có 10 neuron, tầng 2 có 5 neuron và tầng 3 có 10 neuron, như đã trình bày trong thử nghiệm 5 Kết quả thử nghiệm được thể hiện trong bảng 3.8 Đối với bộ dữ liệu 1 và 2, tỷ lệ nhận dạng chính xác đã giảm, trong khi với bộ dữ liệu 3, tỷ lệ này đã tăng lên so với mạng 2 tầng Hình 3.6 minh họa kết quả so sánh tỷ lệ nhận dạng chính xác khi sử dụng thuật toán PCA và đặc trưng PCA kết hợp với mạng neuron cho các bộ dữ liệu a) 1, b) 2 và c) 3.
Trong thử nghiệm này, chúng tôi áp dụng các bộ dữ liệu huấn luyện và bộ dữ liệu nhận dạng tương tự như thử nghiệm 4 trong mục 3.3.3 Các phương pháp thực hiện thử nghiệm được duy trì giống như trong các thử nghiệm trước đó.
Bảng 3.9 trình bày kết quả thử nghiệm cho mạng MLP 2 tầng, với tầng 1 và tầng 2 đều có 10 neuron Mặc dù tỷ lệ nhận dạng chính xác của mô hình kết hợp PCA với mạng neural không đạt mức cao, nhưng vẫn vượt trội hơn so với phương pháp PCA truyền thống.
Bảng 3.9: Kết quả của các thử nghiệm sử dụng đặc trưng PCA kết hợp với mạng
MLP 2 tầng cho các bộ dữ liệu
Bộ dữ liệu 1 Bộ dữ liệu 2 Bộ dữ liệu 3
Bảng 3.10 mô tả kết quả thử nghiệm cho mạng MLP 3 tầng trong đó tầng
Mạng MLP 3 tầng bao gồm 10 neuron ở tầng 1, 5 neuron ở tầng 2 và 10 neuron ở tầng 3 Mặc dù tỷ lệ nhận dạng chính xác của mạng MLP 3 tầng thấp hơn so với mạng MLP 2 tầng khi sử dụng bộ dữ liệu 1 và bộ dữ liệu 2, nhưng lại cao hơn ở bộ dữ liệu 3 Đặc biệt, mạng MLP 3 tầng cũng cho tỷ lệ nhận dạng chính xác vượt trội hơn so với phương pháp PCA.
Hình 3.7 trình bày sự so sánh tỷ lệ nhận dạng chính xác giữa thuật toán PCA và đặc trưng PCA kết hợp với mạng neuron cho ba bộ dữ liệu khác nhau Đối với bộ dữ liệu 1, mạng MLP 3 tầng đạt tỷ lệ nhận dạng chính xác cao nhất Trong khi đó, bộ dữ liệu 2 cho thấy mạng MLP 2 tầng có hiệu suất tốt nhất Đối với bộ dữ liệu 3, tỷ lệ nhận dạng chính xác cao nhất phụ thuộc vào số chiều của véc tơ đặc trưng được chọn, với cả hai mạng MLP 2 và 3 tầng đều có khả năng đạt được kết quả cao.
Bảng 3.10: Kết quả của các thử nghiệm sử dụng đặc trưng PCA kết hợp với mạng MLP 3 tầng cho các bộ dữ liệu
Bộ dữ liệu 1 Bộ dữ liệu 2 Bộ dữ liệu 3
Kết quả tỷ lệ nhận dạng chính xác cho ba bộ dữ liệu lần lượt là: 1) Bộ dữ liệu 1 đạt tỷ lệ 35%, 2) Bộ dữ liệu 2 đạt tỷ lệ 20%, và 3) Bộ dữ liệu 3 đạt tỷ lệ 1.453% Các tỷ lệ này cho thấy sự khác biệt rõ rệt trong hiệu suất nhận dạng giữa các bộ dữ liệu.
Hình 3.7 So sánh tỷ lệ nhận dạng chính xác sử dụng thuật toán PCA và đặc trưng
PCA kết hợp với mạng neuron cho a) bộ dữ liệu 1, b) bộ dữ liệu 2 và c) bộ dữ liệu 3
Một số nhận xét và đề xuất
Các thử nghiệm với các bộ dữ liệu đã chỉ ra rằng việc thay đổi số chiều của véc tơ đặc trưng và số tầng của mạng MLP ảnh hưởng đến hiệu suất của mô hình Những nhận xét từ các thí nghiệm này cung cấp cái nhìn sâu sắc về cách tối ưu hóa cấu trúc mạng để cải thiện kết quả.
- Phương pháp nhận dạng PCA luôn cho tỷ lệ nhận dạng chính xác là 100% nếu bộ dữ liệu huấn luyện và bộ dữ liệu nhận dạng giống nhau
- Phương pháp nhận dạng PCA cho tỷ lệ nhận dạng chính xác cao khi số mẫu huấn luyện nhiều, số mẫu nhận dạng ít
Phương pháp PCA cho thấy tỷ lệ nhận dạng chính xác không bị ảnh hưởng nhiều khi thay đổi số chiều của vector đặc trưng Điều này có nghĩa là người dùng có thể chọn số chiều thấp cho vector đặc trưng mà vẫn đạt được tỷ lệ nhận dạng cao, so với việc chọn số chiều cao.
Phương pháp PCA cho tỷ lệ nhận dạng chính xác thấp đối với các bộ dữ liệu có chất lượng ảnh vân tay kém, như bộ dữ liệu 1 và bộ dữ liệu 3.
Khi kết hợp đặc trưng PCA với mạng MLP, tỷ lệ nhận dạng chính xác tăng cao đáng kể Phương pháp PCA sử dụng độ đo khoảng cách Euclide để xác định sự tương đồng giữa các mẫu, trong khi mạng MLP với 2 hoặc 3 tầng có khả năng phân lớp các bộ dữ liệu phi tuyến hiệu quả.
- Mạng MLP cho kết quả nhận dạng tốt hơn khi số chiều của véc tơ đặc trưng cao hơn so với phương pháp nhận dạng PCA
Tùy thuộc vào đặc trưng của từng bộ dữ liệu vân tay, mạng MLP 2 tầng hoặc 3 tầng sẽ cho kết quả nhận dạng khác nhau Cụ thể, với bộ dữ liệu vân tay thứ 2, mạng MLP 2 tầng đạt hiệu suất nhận dạng tốt hơn so với mạng MLP 3 tầng Ngược lại, đối với bộ dữ liệu thứ 3, mạng MLP 3 tầng lại cho kết quả nhận dạng vượt trội hơn so với mạng MLP 2 tầng.
Do tính ngẫu nhiên trong việc khởi tạo tập trọng số và độ lệch của các tầng mạng, tỷ lệ nhận dạng chính xác của mạng MLP thường khác nhau trong mỗi lần thử nghiệm.
Phương pháp nhận dạng PCA cho kết quả không khả quan, nhưng khi kết hợp đặc trưng PCA với mạng MLP, tỷ lệ nhận dạng đã cải thiện đáng kể Để đạt được hiệu suất cao trong ứng dụng thực tế, cần nghiên cứu kỹ lưỡng các tham số của mạng như số tầng, số neuron mỗi tầng, hàm truyền và phương pháp huấn luyện trong Matlab Bên cạnh đó, việc kết hợp các đặc trưng khác của vân tay như đường biên và các đặc trưng chính cũng là yếu tố quan trọng để nâng cao độ chính xác nhận dạng Đây sẽ là những hướng nghiên cứu tiềm năng trong tương lai nhằm cải thiện tỷ lệ chính xác trong nhận dạng vân tay.
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
Sau quá trình thực hiện luận văn, nhờ vào nỗ lực cá nhân và sự hỗ trợ tận tình từ thầy giáo hướng dẫn, tôi đã hoàn thành luận văn theo đúng đề cương đã được phê duyệt Tôi tự đánh giá đã đạt được một số kết quả quan trọng về mặt lý thuyết.
- Hiểu tổng quan về hệ thống nhận dạng ảnh vân tay, các phương pháp tiếp cận để giải quyết bài toán nhận dạng ảnh vân tay
- Hiểu được thuật toán PCA cho bài toán nhận dạng nói chung và nhận dạng ảnh vân tay nói riêng
- Hiểu được mô hình, kiến trúc và phương nhận dạng nói chung của mạng neural Hiểu được mạng Perceptron đa tầng
- Áp dụng được ngôn ngữ Matlab với mạng neural cho bài toán nhận dạng b) Về thực nghiệm
- Cài đặt được thuật toán PCA và sử dụng đặc trưng PCA kết hợp với mạng neural cho bài toán nhận dạng ảnh vân tay với ngôn ngữ Matlab
Thực hiện các thử nghiệm trên bộ dữ liệu ảnh vân tay cho phép đánh giá hiệu quả của các thuật toán khác nhau Các kết quả thu được từ các bộ dữ liệu thực nghiệm sẽ cung cấp cái nhìn sâu sắc về hiệu suất của từng thuật toán.
2 Kiến nghị và hướng phát triển
Dựa trên kết quả nghiên cứu lý thuyết và thực nghiệm, chúng tôi đã thu thập được kiến thức quý giá về xây dựng hệ thống nhận dạng Tuy nhiên, vẫn còn nhiều vấn đề cần được nghiên cứu thêm, bao gồm việc tìm hiểu các đặc trưng chính của ảnh vân tay nhằm nâng cao tỷ lệ nhận dạng Ngoài ra, việc đánh giá và nghiên cứu ảnh hưởng của các tham số trong mạng neural đối với bài toán nhận dạng cũng rất quan trọng Chúng tôi cũng đề xuất nghiên cứu cài đặt thêm các mạng neural khác để đánh giá hiệu quả nhận dạng của phương pháp này.
Trong quá trình thực hiện luận văn, tôi đã nỗ lực hết mình và nhận được sự hỗ trợ tận tình từ thầy giáo hướng dẫn, hoàn thành đúng nhiệm vụ và thời hạn yêu cầu Tuy nhiên, đề tài này là mới và khó đối với tôi, vì vậy không thể tránh khỏi những thiếu sót Tôi rất mong nhận được ý kiến đóng góp từ Quý Thầy, Cô giáo và các đồng nghiệp để hoàn thiện hướng nghiên cứu trong tương lai.
Tôi xin chân thành cảm ơn các Thầy, Cô giáo ngành Công nghệ Thông tin - Trường Đại học Vinh đã truyền đạt kiến thức và kinh nghiệm quý báu trong quá trình học tập của tôi Đặc biệt, tôi rất biết ơn TS Hoàng Hữu Việt đã tận tình hướng dẫn và các Thầy, Cô giáo phản biện đã đóng góp những ý kiến quý giá giúp luận văn này hoàn thành.
PHỤ LỤC: CÁC BỘ DỮ LIỆU ẢNH VÂN TAY DÙNG CHO THỬ