Phạm vị ứng dụng của mang nơron nhân tạo

Một phần của tài liệu Nhận dạng chữ viết tay tiếng Việt sử dụng mạng nơron (Trang 30 - 86)

1.2.1. Những bài toán thích hợp

Mạng nơron đƣợc coi nhƣ là hộp đen biến đổi véc-tơ đầu vào m biến thành véctơ đầu ra n biến. Tín hiệu ra có thể là các tham số thực, (tốt nhất nằm

trong khoảng [0, 1], hoặc [-1, 1]), số nhị phân 0, 1, hay số lƣỡng cực -1;+1. Số biến của véc-tơ vào ra không bị hạn chế xong sẽ ảnh hƣởng tới thời gian tính và tải dữ liệu của máy tính. Nói chung, các lớp bài toán áp dụng cho nơ-ron có thể đƣợc phân chia thành bốn loại:

1. Phân lớp (classification). 2. Mô hình hoá (modeling).

3. Biến đổi, thực hiện ánh xạ từ một không gian đa biến vào không gian đa biến khác tƣơng ứng (transformation and mapping).

4. Liên kết và kỹ thuật dịch chuyển cửa sổ (association and moving window).

1.2.1.1. Phân loại

Một trong các công việc đơn giản và thƣờng đƣợc sử dụng nhiều trong việc quản lý các đối tƣợng đa biến là phân loại (phân lớp một đối tƣợng vào các nhóm, nhóm con, hay chủng loại). Ví dụ: Bài toán phân lớp ảnh, nhận dạng mẫu, . . .

Khi phải phân loại một quyết định phức tạp, chúng ta phải bắt đầu với việc nghiên cứu thống kê các mối liên quan giữa nhiều đối tƣợng và thuộc tính của lớp các đối tƣợng. Có thể nói việc xây dựng một cây phân lớp các quyết định phải đƣợc thực hiện trƣớc khi thủ tục học đƣợc tiến hành. Nếu kết quả cuối cùng không thoả mãn, chúng ta cần phải xem xét lại cách biểu diễn các đối tƣợng hoặc cây phân lớp hoặc thay đổi cả hai.

1.2.1.2. Mô hình hoá

Các hệ thống phân loại đƣa ra các câu trả lời rời rạc nhƣ có, không hoặc một số nguyên định danh các đối tƣợng đầu vào thuộc lớp nào. Mô hình hoá yêu

cầu hệ thống phải sản sinh ra các câu trả lời mang tính liên tục. Trong quá trình mô hình hoá, cần một số lƣợng nhỏ các số liệu để xây dựng mô hình.

Mô hình này có thể đƣa ra các dự báo cho tất cả các đối tƣợng đầu vào. Việc tìm ra đƣờng cong phù hợp với các số liệu thực nghiệm là một trong những ứng dụng thuộc dạng này. Trong bất kỳ loại mô hình nào cũng phải tuân theo một giả định là: các thay đổi nhỏ của tín hiệu vào chỉ gây ra những biến đổi nhỏ của tín hiệu ra.

Trong các vấn đề đa biến, mạng nơ-ron có nhiều lợi thế hơn so với các phƣơng pháp mô hình hoá cổ điển sử dụng các hàm giải tích. Bởi vì trong phƣơng pháp mô hình hoá cổ điển đối với mỗi đầu ra, ta phải định nghĩa một hàm cụ thể cùng một bộ các tham số, trong khi đó đối với mạng nơ-ron thì không phải quan tâm tới các hàm đó. Tuy nhiên, trong các phƣơng pháp mô hình hoá cổ điển, các hệ số có thể có một số ý nghĩa nào đó đối với vấn đề cần giải quyết, trái lại các trọng số của mạng không mang một ý nghĩa nào cả.

Trong nhiều ứng dụng khá đặc biệt, khi sai số thực hiện khá lớn chúng ta có thể mô hình hoá bằng cách cân xứng hoá giữa tín hiệu vào tín hiệu ra. Trong các trƣờng hợp này, sử dụng mạng nhƣ một bảng tra là đủ, mặc dù các bảng này sẽ cho lời giải giống nhau trong một khoảng nào đó của tín hiệu vào.

Đối với việc chọn chiến lƣợc học, chúng ta cần quan tâm đến sự phân bố của các đối tƣợng dùng để học. Nếu số lƣợng đối tƣợng dùng cho việc học là ít và đƣợc phân bố tƣơng đối đều trong toàn không gian, khi đó số liệu có thể đƣợc dùng ngay cho việc mô hình hoá. Trái lại, nếu các đối tƣợng là nhiều, sẵn có nhƣng phân bố ngẫu nhiên trong không gian biến, đầu tiên phải giảm thiểu chúng

sao cho vẫn bao trùm toàn không gian, sau đó mới dùng làm số liệu cho việc mô hình hoá.

1.2.1.3. Biến đổi

Việc biến đổi nhằm mục đích nén các đối tƣợng từ không gian m chiều vào không gian có số chiều nhỏ hơn rất nhiều. Qua việc nén, các đối tƣợng này sẽ bộc lộ các đặc điểm mà chúng ta không thể nhận thấy khi chúng thuộc không gian nhiều chiều. Theo một chừng mực nào đó, biến đổi tƣơng tự nhƣ việc nhóm các đối tƣợng hay phân loại thể hiện ở chỗ biểu diễn các kết quả ra. Trong phân loại, chúng ta muốn định danh các nhóm hoặc lớp mà đối tƣợng thuộc vào, còn trong biến đổi, chúng ta quan tâm đến toàn bộ các đối tƣợng và từ đó chúng ta thu nhận đƣợc các nhóm từ các đối tƣợng học. Điểm quan trọng trong biến đổi là các đối tƣợng đƣợc biểu diễn bởi toạ độ của nơ-ron trung tâm chứ không phải là giá trị của tín hiệu ra.

Một trong những ứng dụng của việc biến đổi là tiền xử lý (thƣờng đƣợc gọi là kế hoạch hoá thực nghiệm). Thông qua quá trình tiền xử lý, chúng ta có thể chọn ra các đối tƣợng điển hình từ tập vô số các đối tƣợng ngẫu nhiên, loại trừ các đối tƣợng dƣ thừa hay trùng lặp. Điều này là cực kỳ quan trọng khi lựa chọn các đối tƣợng làm mẫu học cho mạng lan truyền ngƣợc sai số.

1.2.1.4. Liên kết

Liên kết là tìm ra đối tƣợng đích có mối quan hệ với một đối tƣợng vào, thậm chí cả khi đối tƣợng vào bị hỏng hoặc hoàn toàn không biết. Theo một nghĩa nào đó, liên kết có thể đƣợc coi là phân loại. Thủ tục học cho vấn đề này là học có tín hiệu chỉ đạo.

Lĩnh vực nghiên cứu các quá trình phụ thuộc thời gian là một trong những lĩnh vực chính trong nghiên cứu quá trình điều khiển. Ở đây ngƣời sử dụng dự báo đƣợc các hành vi của hệ thống đa biến dựa trên một chuỗi số liệu đƣợc ghi nhận theo thời gian. Trong mô hình hoá phụ thuộc thời gian, các biến của tín hiệu vào bao gồm các giá trị hiện tại và quá khứ của các biến quá trình, trong đó tín hiệu ra dự báo giá trị trong tƣơng lai của những biến quá trình đó. Về nguyên tắc các hiểu biết này có thể có các độ dài tuỳ ý, nhƣng trong quá trình kiểm soát hiểu biết tƣơng lai chỉ bao gồm một bƣớc thời gian. Việc học dịch chuyển tới bƣớc tiếp theo tạo ra các cửa sổ bao gồm số bƣớc thời gian của véc-tơ ra. Để tạo ra mô hình hoàn chỉnh của một quá trình, tất cả các biến quá trình phải đƣợc huấn luyện tại đầu ra của mạng, nhƣng không phải tất cả các biến trong quá trình đều ảnh hƣởng nhƣ nhau đối với kết quả cuối cùng, chỉ có một số biến là đáng quan tâm. Do đó chúng ta chỉ phải chọn các biến đó cho quá trình học. Kỹ thuật dịch chuyển cửa sổ có thể đƣợc sử dụng để giải quyết các vấn đề chuỗi các sự kiện và đối tƣợng nhƣ trong các lĩnh vực về môi trƣờng theo thời gian, kiểm soát hỏng hóc.

1.2.2. Các lĩnh vực ứng dụng mạng nơron

Trong quá trình phát triển, mạng nơron đã đƣợc ứng dụng thành công trong rất nhiều lĩnh vực. Một số ứng dụng chính của mạng nơ-ron có thể liệt kê là:

- Xử lý ảnh: Gồm trùng khớp ảnh, tiền xử lý ảnh, phân đoạn và phân tích ảnh, nén ảnh, ...

- Nhận dạng mẫu: Gồm việc tách các nét đặc biệt của mẫu, phân loại và phân tích tín hiệu của ra đa, nhận dạng và hiểu tiếng nói, nhận dạng vân tay, ký tự, chữ viết, ..

- Y học: phân tích và hiểu tín hiệu điện tâm đồ, chuẩn đoán bệnh, xử lý ảnh y học.

- Các hệ thống quân sự: phát hiện thủy lôi, phân loại luồng ra đa, nhận dạng ngƣời nói.

- Giải trí: Hoạt hình, các hiệu ứng đặc biệt, dự báo thị trƣờng.

- Các hệ tài chính: Gồm phân tích thị trƣờng chứng khoán, định giá bất động sản, cho vay, kiểm tra tài sản cầm cố, đánh giá mức độ hợp tác, phân tích đƣờng tín dụng, cấp phát thẻ tín dụng, dự báo tỷ giá tiền tệ và thƣơng mại an toàn.

- Trí tuệ nhân tạo: Gồm các hệ chuyên gia, .. - Các hệ thống năng lƣợng.

- Dự đoán: Dự đoán các trạng thái của hệ thống,..

- Vấn đề lập kế hoạch, điều khiển và tìm kiếm: Gồm cài đặt song song các bài toán thỏa mãn ràng buộc, bài toán lập thời khóa biểu cho trƣờng đại học, bài toán ngƣời đi du lịch, ..

- Giải các bài toán tối ƣu: Vấn đề chính là tìm những thuật toán huấn luyện mạng để góp phần tìm nghiệm cho nhiều lớp bài toán tối ƣu toàn cục. Tóm lại, mạng nơ-ron nhân tạo đƣợc xem là một cách tiếp cận đầy tiềm năng để giải quyết các bài toán có tính phi tuyến, phức tạp và đặc biệt trong tình hình các dữ liệu đầu vào không tƣờng minh.

1.3. Mạng KOHONEN

1.3.1. Giới thiệu về mạng Nơron Kohonen

Trong phần trƣớc chúng ta đã nghiên cứu một số loại mạng nơron. Trong khi mạng nơron truyền thẳng rất phổ biến thì một cấu trúc mạng khác cũng rất phổ biến là mạng Kohonen.

Mạng Nơron Kohonen (hay còn gọi là SOM (Self-Organizing Maps) - Bản đồ tự tổ chức) là một trong nhiều loại mạng thông minh nhân tạo (AI) do cố giáo sƣ, tiến sĩ Teuvo Kohonen đề xƣớng vào những năm 70 của thế kỷ trƣớc. Ông là một trong những nhà nghiên cứu nổi tiếng và có nhiều công trình trong lĩnh vực tính toán nơron.

Thông thƣờng, mạng nơron Kohonen gồm một lớp đầu vào và lớp đầu ra. Mạng này đƣợc đặt tên bởi tên ngƣời lập ra nó, cố giáo sƣ, tiến sĩ T. Kohonen. Mạng Kohonen khác biệt so với mạng nơron lan truyền ngƣợc dẫn tiến ở cách huấn luyện và cách nó nhớ lại một mô hình. Mạng Kohonen không sử dụng một loại hàm kích hoạt nào. Xa hơn là nó không sử dụng loại trọng số bias nào.

Đầu ra của mạng Kohonen không bao gồm đầu ra của một số nơron. Khi có một mẫu đƣợc đƣa vào mạng thì chỉ có một nơron đầu ra đƣợc lựa chọn gọi là nơron chiến thắng. Nơron chiến thắng này chính là đầu ra của mạng Kohonen. Thông thƣờng thì các nơron chiến thắng này đại diện cho các nhóm dữ liệu đƣa vào mạng Kohonen.

Điểm khác biệt quan trọng nhất giữa mạng Kohonen va mạng nơron truyền thẳng lan truyền ngƣợc là mạng nơron Kohonen học theo phƣơng pháp học không giám sát, có nghĩa là mạng nơron Kohonen thao tác với dữ liệu nhƣng đầu ra chính xác tƣơng ứng vói dữ liệu vào không đƣợc chỉ định trƣớc. Sử dụng mạng nơron Kohonen, dữ liệu có thể đƣợc phân thành các nhóm.

Mạng nơron Kohonen đƣợc sử dụng bởi vì nó là một mạng tƣơng đối đơn giản về cấu trúc, và có thể huấn luyện rất nhanh.

1.3.2. Cấu trúc của mạng nơron Kohonen [9]

Thông thƣờng, mạng nơron Kohonen gồm một lớp đầu vào và một lớp đầu ra. Đầu tiên chúng ta xét về đầu vào và đầu ra của mạng.

Các nơron đầu vào chỉ đơn giản cung cấp dữ liệu vào cho mạng chứ không có chức năng xử lý gì trên đấy. Đối với mạng nơron Kohonen yêu cầu đầu vào đƣợc chuẩn hóa có giá trị trong phạm vi từ -1 đến +1.

Đầu ra của mạng Kohonen không bao gồm đầu ra của một số nơron. Đối với mạng nơron truyền thẳng, nếu có năm nơron đầu vào thì một đầu ra bao gồm năm giá trị. Còn mạng nơron Kohonen khi có một mẫu đƣợc đƣa vào mạng thì chỉ có một nơron đầu ra đƣợc lựa chọn gọi là nơron chiến thắng. Nơron chiến thắng này chính là đầu ra của mạng nơron Kohonen. Đầu ra của mạng nơron Kohonen thƣờng là chỉ số của nơron chiến thắng, ví dụ Nơron #5. Thông thƣờng thì các nơron chiến thắng này đại diện cho các nhóm dữ liệu đƣa vào mạng Kohonen. Cấu trúc của một mạng nơron Kohonen đƣợc cho nhƣ hình 1.7:

Hình 1.8 dƣới đây là một mạng Kohonen điển hình.

Hình 1.8: Mạng nơron Kohonen điển hình 1.3.3. Thực hiện mạng nơron Kohonen [9]

1.3.3.1 Chuẩn hóa đầu vào

Mạng Kohonen yêu cầu đầu vào đƣợc chuẩn hóa. Dữ liệu đầu vào nên có giá trị nằm trong khoảng -1 đến 1. Nếu một hoặc nhiều hơn nơron đầu vào sử dụng các giá trị chỉ nằm trong khoảng từ 0 đến 1 thì mạng nơron hoạt động không đảm bảo chất lƣợng, Để chuẩn hóa đầu vào, việc đầu tiên chúng ta phải tính chiều dài véctơ của dữ liệu đầu vào:

length(x) =   N i 1 x2 i (1.14)

Sử dụng chiều dài véctơ, chúng ta có thể quyết định hệ số chuẩn hóa:

   N i i x 1 2 1  (1.15)

1.3.3.2 Tính toán đầu ra cho mỗi nơron

Để tính toán đầu ra cho mỗi véctơ đầu vào thì phải cùng xem xét véctơ đầu vào và trọng số. Đầu tiên phải tính tích vô hƣớng của các nơron đầu vào và các trọng số kết nối. Tích vô hƣớng đƣợc tính bằng cách nhân mỗi phần tử trong hai véctơ với nhau. Ta tính tổng của tích các phần tử của véctơ trọng số và véctơ đầu vào. Giả sử đầu vào là: X= {x1, x2, ... ,xN}, trọng số là W={wjl, wj2, ... , wjN} thì tích vô hƣớng của X và W là: t = ji N i iw x  1 (1.16)

Xét đầu ra của nơron thứ j bây giờ đƣợc chuẩn hóa bằng cách nhân giá trị vừa tính đƣợc với hệ số chuẩn hóa đƣợc xác định ở trên.

output(j) = ( ji N i iw x  1 )   N i i x 1 2 1 (1.17)

Giá trị vừa đƣợc tính toán phải đƣợc ánh xạ thành số lƣỡng cực. Để ánh xạ, chúng ta thêm 1 va chia cho 2, ta đƣợc:

output(j) = [output(j) + 1] * 0.5 (1.18)

1.3.3.3 Chọn nơron chiến thắng

Khi tính toán đƣợc đầu ra với từng nơron, tiến hành so sánh chúng để tìm xem nơron nào có đầu ra lớn nhất (khoảng cách nhỏ nhất) thì nơron đó đƣợc quyết định là nơron chiến thắng. Nhƣ vậy ta đã tìm ra đầu ra của mạng nơron Kohonen. Ta thấy giá trị này đƣợc quyết định bởi giá trị trọng số giữa đầu vào và

đầu ra. Nhƣ vậy ta điều chỉnh trọng số này để điều chỉnh giá trị đầu ra theo nhƣ nhiệm vụ yêu cầu.

1.3.3.4 Quá trình học của mạng nơron Kohonen

Quá trình học là quá trình hiệu chỉnh trọng số. Toàn bộ quá trình huấn luyện cho mạng nơron Kohonen bao gồm các chu kỳ lặp lại cho đến khi mức 1ỗi của mạng dƣới một mức chấp nhận đƣợc. Quá trình huấn luyện cho mạng là cạnh tranh. Với mỗi tập đầu vào sẽ tìm đƣợc một nơron chiến thắng. Trọng số của nơron chiến thắng sẽ đƣợc hiệu chỉnh, nó sẽ tác động trở lại mạnh mẽ hơn đối với đầu vào ở lần tiếp theo. Các nơron chiến thắng là khác nhau đối với các mẫu khác nhau. Khả năng nhận dạng các mẫu riêng biệt của chúng sẽ đƣợc tăng lên. Đầu tiên chúng ta xét tổng quan quá trình huấn luyện cho mạng nơron Kohonen.

Đầu tiên, ma trận trọng số đƣợc khởi tạo với các giá trị ngẫu nhiên, đƣa tập mẫu vào và tính toán tỷ lệ lỗi, hiệu chỉnh trọng số của nơron chiến thắng:

- Nếu tỷ lệ lỗi đƣợc cải thiện đáng kể thì quay trở lại tiếp tục đƣa mẫu huấn luyện vào và điều chỉnh trọng số của nơron chiến thắng rồi tính toán lại tỷ lệ lỗi xem mức cải thiện của nó nhƣ thế nào.

- Nếu tỷ lệ lỗi chỉ cải thiện rất nhỏ thì chu kỳ này sẽ đƣợc bỏ qua. Nếu điều này xảy ra thì xét xem ma trận trọng số này có tốt hơn ma trận trọng số tốt nhất từ trƣớc đến giờ không?

+ Nếu tốt hơn thì lƣu lại ma trận trọng số tốt nhất.

+ Nếu không, ma trận trọng số tốt nhất đƣợc giữ nguyên từ chu kỳ trƣớc. - Sau đó ma trận trọng số đƣợc khởi tạo lại với giá trị ngẫu nhiên và chu kỳ huấn luyện mới đƣợc bắt đầu. Chu kỳ huấn luyện mới này lại tiếp tục giống nhƣ chu kỳ trƣớc và sẽ phân tích các thời kỳ để quyết định bỏ qua hay tạo ra tập

Một phần của tài liệu Nhận dạng chữ viết tay tiếng Việt sử dụng mạng nơron (Trang 30 - 86)

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

(86 trang)