CHƯƠNG 2: MÔ HÌNH MẠNG NEURON VÀ MÔ HÌNH HỌC SÂU
2.1. Tổng quan về mô hình mạng neuron
2.1.3. Mô hình và huấn luyện trong bài toán nhận dạng
2.1.3.1. Mạng neuron và bài toán phân loại mẫu
Một cách tổng quát, có thể nói nhiệm vụ của các hệ nhận dạng trong các bài toán nhận dạng chính là phân loại mẫu. Có nghĩa là từ một mẫu vào ban đầu, hệ nhận dạng cần chỉ ra nó thuộc về lớp phân loại nào. Ví dụ, trong nhận dạng chữ viết tay, tất cả các kiểu viết khác nhau của chữ “A” đều được quy về một lớp, lớp chữ “A” và hệ nhận dạng cần được huấn luyện sao cho khi gặp một mẫu bất kỳ của chữ “A” nó phải chỉ ra được đầu vào này thuộc về lớp chữ“A”. Trong hệ nhận dạng chữ cái, số lớp phân loại là 26 lớp, tương ứng với 26 chữ cái từ “A” đến “Z”.
Bên cạnh bài toán nhận dạng chữ viết, nhiều bài toán nhạn dạng khác cũng có thể coi là bài toán phân loại mẫu như nhận dạng dấu vân tay dùng làm mã khóa trong các hệ an ninh, nhận dạng khuôn mặt hay tiếng nói…
Câu hỏi đặt ra đối với chúng ta là sử dụng mô hình nào cho các hệ nhận dạng này để nó không chỉ phân loại được những mẫu đã học mà còn có thể tổng quát hóa để phân loại những mẫu chưa được học? Mang neuron là một mô hình có thể áp dụng cho mọi bài toán nhận dạng mà bài toán đó có thể quy
về bài toán phân loại mẫu. Chính khả năng học và tổng quát hóa rất linh hoạt của mạng neuron đã giúp nó thực hiện tốt nhiệm vụ này.
2.1.3.2. Khả năng học và tổng quát hóa
Có thể nói đặc trưng cơ bản nhất của mạng neuron là khả năng học và tổng quát hóa.
Học: là khả năng mà mạng neuron có thể phân loại chính xác những mẫu đã được huấn luyện.
Tổng quát hóa: là khả năng mạng có thể nhận biết được những mẫu chưa từng huấn luyện. Ví dụ, chúng ta huấn luyện mạng neuron nhận dạng chữ viết tay trên tập mẫu do 50 người viết, và khi người khác viết mạng vẫn nhận dạng được, đây là khả năng tổng quát hóa của mạng neuron. Chính khả năng này tạo nên sức mạnh của mạng.
Các khả năng này có được là do việc hiệu chỉnh và cập nhật bộ tham số mạng trong suốt quá trình huấn luyện.
2.1.3.3. Các phương pháp huấn luyện mạng
Huấn luyện mạng: là quá trình đào tạo mạng sao cho khả năng học và tổng quát hóa mà nó đạt được là cao nhất. Bản chất của việc làm này là hiệu chỉnh trong số liên kết giữa các neuron và ngưỡng tại các neuron trong mạng để từ các tín hiệu vào ban đầu, sau quá trình tính toán mạng đưa ra kết quả là giá trị mà chúng ta mong muốn. Hai kiểu huấn luyện phổ biến là học có giám sát (supervised learning) và học không có giám sát (unsupervised learning) với mô tả chi tiết hơn như sau:
Học có giám sát: là phương pháp học để thực hiện một công việc nào đó dưới sự giám sát của một “thầy giáo”. Để dễ hình dung, có thể mô tả phương pháp này như sau: chúng ta sẽ cho mạng xem một số mẫu đầu vào và đầu ra tương ứng. Dưới sự chỉ đạo của một thuật toán huấn luyện, mạng có
nhiệm vụ tính toán, thay đổi các tham số sao cho đầu ra thực tế của mạng gần với đầu ra mong muốn nhất.
Với phương pháp này, thuật toán huấn luyện mạng được thực hiện với tập mẫu học có dạng D { , } x ti i trong đó xi(vector p chiều trong R) là vector đầu vào của mạng và ti(vector q chiều trong R) là vector đầu ra mong muốn tương ứng với xi. Nhiệm vụ của thuật toán là phải thiết lập được một cách tính toán nào đó để cập nhật tham số của mạng sao cho với một đầu vào cho trước thì sai số giữa đầu ra thực tế của mạng và đầu ra mong muốn là nhỏ nhất.
Một thuật toán điển hình trong phương pháp học có giám sát là: thuật toán LMS (Least Mean Square error), thuật toán lan truyền ngược sai số (Back Propagation),….
Với bài toán nhận dạng, bản chất của phương pháp học có giám sát là học để phân lớp đầu vào trên tập mẫu huấn luyện, trong đó số lớp cần phân loại là biết trước. Nhiệm vụ của việc học là xác định (thay đổi và cập nhật) các tham số mạng để mỗi đầu vào sẽ được phân vào đúng lớp chứa nó.
Học không có giám sát: là phương pháp học để thực hiện một công việc nào đó mà không cần bất kỳ sự giám sát nào.
Với cách tiếp cận này, thuật toán huấn luyện mạng được thực hiện với tạo mẫu học có dạng D { } xi với xi(vector p chiều trong R) là vector đầu vào của mạng. Nhiệm vụ của thuật toán là phải phân chia tập dữ liệu D thành các nhóm con, mỗi nhóm chứa một tập vector đầu vào có các đặc trưng giống nhau. Việc phân nhóm này cho phép tạo ra các lớp phân loại một cách tự động và số lớp là không biết trước.
Trong thực tế, phương pháp học có giám sát được ứng dụng nhiều hơn phương pháp học không có giám sát. Kiểu huấn luyện không có giám sát
thường không thích hợp với bài toán phân loại mẫu vì rất khó đảm bảo chắc chắn rằng có sự tương ứng giữa các lớp được tạo ra mộ cách tự động với các lớp dữ liệu thực sự. Phương pháp này tỏ ra thích hợp hơn với các bài toán mô hình hóa dữ liệu.