Học có giám sát là quá trình trong đó dữ liệu được đưa tới ngả vào và ngả ra của mạng. Mạng sẽ xử lý dữ liệu vào để tạo ngả ra tương ứng rồi so sánh ngả ra này với dữ liệu ra mẫu. Sai số sẽ được truyền ngược qua hệ thống làm cho nó điều chỉnh trọng số để điều khiển mạng. Quá trình này lặp lại vì các trọng số
thay đổi
liên tục. Tập hợp các dữ liệu dùng để huấn luyện gọi là ‘tập huấn luyện’, hay ‘tập học’. Trong quá trình huấn luyện mạng, tập học được xử lý nhiều lần để
Nếu mạng không giải quyết được bài toán thì người thiết kế phải xem lại ngả vào và ngả ra, số lớp, số phần tử của lớp, sự kết nối các lớp, hàm tổng, hàm truyền, hàm huấn luyện, và cả các trọng số ban đầu, có thể thay đổi các thành phần trên để tạo ra mạng hoàn chỉnh.
Huấn luyện không phải là một kỹ thuật mà là sự nhận biết và phân tích có ý thức nhằm đảm bảo mạng không bị quá tải. Ban đầu mạng tự định hình bằng khuynh hướng thống kê dữ liệu. Sau đó nó tiếp tục học các dữ liệu khác.
Khi hệ thống được huấn luyện thích hợp thì các trọng số sẽ được ổn định. Một số hệ thống có thể chuyển mạng sau cùng sang phần cứng để hoạt động nhanh hơn.
4.2.2. Học không giám sát / Học không thầy:
Ơû dạng này mạng sẽ được cung cấp dữ liệu vào nhưng không biết dữ liệu ra. Tự nó phải quyết định dùng những đặc trưng nào để tập hợp dữ liệu vào, được gọi là sự thích nghi hay tự sắp xếp. Mạng này được giới hạn ở mạng tự sắp xếp, chưa được sử dụng rộng rãi.
Học không giám sát còn được gọi là học tự giám sát. Mạng không điều chỉnh trọng số theo các ảnh hưởng bên ngoài mà chúng sẽ giám sát bên trong hoạt động của chúng. Mạng sẽ tìm kiếm sự cân đối hoặc hướng đến các ngả vào để tạo ra các thích nghi theo hàm của mạng. Thậm chí không cần được dạy là đúng hay sai, mạng vẫn phải có thông tin về cách tự sắp xếp. Thông tin này được gắn vào các cấu trúc mạng và các luật học.
Thuật toán học không giám sát nhấn mạnh đến sự hợp tác giữa các nhóm phần tử xử lý. Các nhóm này sẽ làm việc với nhau, nếu tín hiệu vào kích hoạt một nút bất kỳ trong nhóm thì hoạt động của nhóm sẽ tăng lên, và ngược lại.
Sự cạnh tranh giữa các phần tử cũng tạo ra cơ sở cho việc học. Việc huấn luyện các nhóm cạnh tranh sẽ làm tăng đáp ứng của các nhóm đối với các kích hoạt.
4.2.3. Tốc độ học:
Tốc độ học của mạng nơron tùy thuộc vào nhiều hệ số có thể điều khiển được. Tốc độ thấp sẽ tốn nhiều thời gian học để tạo ra một hệ thống được huấn luyện thỏa đáng. Tuy nhiên, với tốc độ học nhanh hơn thì có thể mạng sẽ không thể phân biệt tốt như mạng học với tốc độ thấp.
4.2.4. Các luật học:
Có nhiều luật học được sử dụng trong quá trình huấn luyện mạng nơron, sau đây là nội dung một số luật quan trọng:
- Luật Hebb:
‚ Nếu một nơron nhận tín hiệu vào từ một nơron khác, và nếu cả hai đều kích
hoạt thì trọng số giữa các nơron này sẽ được tăng lên ‛.
- Luật Hopffield:
Tương tự như luật Hepp ngoại trừ việc nó chỉ rỏ biên độ của sự gia tăng hay suy giảm: ‚ Nếu ngả ra mẫu và ngả vào cùng kích hoạt hoặc cùng cấm thì tốc độ
- Luật Delta:
Luật này là sự biến đổi của luật Hebb. Đây là một trong những luật được sử dụng nhiều nhất. Luật Delta dựa trên ý tưởng làm thay đổi liên tục cường độ kết nối của ngả vào để giảm sự khác biệt giữa ngả ra thực và ngả ra mẫu của một phần tử xử lý. Nó thay đổi trọng số theo cách cực tiểu sai số trung bình bình phương
Luật Delta còn gọi là luật Widrow-Hoff và luật học trung bình bình phương nhỏ nhất (LMS – Least Mean Square Learning Rule).
- Luật giảm Gradient:
Luật này tương tự luật Delta trong việc dùng đạo hàm của hàm truyền để điều chỉnh sai số trước khi đưa tới các trọng số. Tuy nhiên một hằng số tỉ lệ trong tốc độ học được thêm vào hệ số điều chỉnh sau cùng để tác động lên trọng số. Luật này cũng thường được sử dụng dù tốc độ hội tụ tới điểm ổn định của nó chậm. - Luật Kohonen:
Trong luật này, các phần tử xử lý sẽ cạnh tranh tìm cơ hội để học, hoặc cập nhật trọng số của chúng. Phần tử có ngả ra lớn nhất được cho là chiến thắng và có khả năng cấm các đối thủ của nó và kích hoạt các phần tử lân cận. Chỉ có phần tử chiến thắng mới được phép tạo ngả ra và chỉ có nó cùng với các phần tử lân cận có thể điều chỉnh các trọng số của chúng.
Vì phần tử chiến thắng được xác định là phần tử phù hợp nhất với mẫu vào nên mạng Kohonen tạo ra mô hình cho phân bố các ngả vào. Mạng này phù hợp với việc tạo ra mô hình theo cấu trúc hoặc theo thống kê cho dữ liệu. Mạng còn được gọi là mạng tự sắp xếp.
4.3. GIỚI THIỆU CÁC LOẠI MẠNG NƠRON:
4.3.1. Mạng lan truyền ngược:
Mạng lan truyền ngược có cấu tạo như hình 4.5.
Hình 4.5: Mạng lan truyền ngược
Cấu trúc truyền thẳng, lan truyền ngược là dạng hiệu quả và thông dụng nhất để thực hiện các mạng nhiều lớp, phức tạp. Nó được sử dụng cho nhiều ứng dụng khác nhau. Cấu trúc này đã tạo ra một số lượng lớn các loại mạng với
nhiều cấu trúc và phương pháp huấn luyện khác nhau. Mặt mạnh của nó là các nghiệm phi tuyến đối với các bài toán không rỏ ràng. Mạng có lớp vào, lớp ra và ít nhất một lớp ẩn. Số lớp ẩn là không giới hạn nhưng thường chỉ có một hoặc hai lớp. Mỗi một lớp trong mạng sẽ kết nối hoàn toàn với lớp kế tiếp. Có 3 luật quan trọng cần dùng để giải các bài toán với mạng lan truyền ngược: - Luật 1: khi tính phức tạp trong quan hệ giữa dữ liệu vào và ngả ra mẫu tăng
thì số phần tử trong lớp ẩn cũng tăng.
- Luật 2: nếu mô hình xử lý là riêng biệt thành nhiều tầng thì có thể cần thêm các lớp ẩn.
- Luật 3: số lượng dữ liệu huấn luyện có sẵn sẽ đặt biên trên cho các phần tử trong lớp ẩn. Để tính giá trị biên này ta dùng số đôi mẫu vào ra trong tập huấn luyện rồi chia cho tổng số phần tử vào và ra trong mạng. Sau cùng chia kết quả cho một hệ số tỉ lệ giữa 5 và 10.
Quá trình huấn luyện mạng thường dùng các biến của luật Delta, bắt đầu bằng sự khác biệt giữa ngả ra thực và ngả ra mẫu. Ưùng dụng sai số này, các trọng số được tăng tỉ lệ với sai số theo một hệ số tỉ lệ đối với độ chính xác toàn cục. Thực hiện điều này đối với một nút có nghĩa là các ngả vào, ngả ra và ngả ra mẫu đều phải được đưa tới cùng một phần tử xử lý.
Có nhiều thay đổi tới luật học đối với mạng lan truyền ngược. Các hàm truyền, hàm lỗi khác nhau và thậm chí việc thay đổi phương pháp lấy đạo hàm của hàm truyền cũng có thể được sử dụng.
Có những giới hạn đối với mạng truyền thẳng, lan truyền ngược. Mạng lan truyền ngược cần huấn luyện nhiều lần với nhiều mẫu vào–ra. Thêm vào đó, kết cấu bên trong không hiểu rỏ nên không đảm bảo hệ thống sẽ hội tụ ở nghiệm chấp nhận được. Đôi khi việc học bị hạn chế ở cực tiểu nội bộ nên làm hạn chế nghiệm tốt nhất. Điều này xảy ra khi hệ thống gặp một sai số thấp hơn các khả năng xung quanh nhưng cuối cùng không có được sai số nhỏ nhất có thể.
4.3.2. Mạng Vectơ lượng tử LVQ – Learning Vector Quantity:
Cấu trúc mạng này được Tuevo Kohonen đưa ra, sau mạng tự sắp xếp. Các mạng này dựa vào luật học Kohonen, cho phép sắp xếp thông tin thành những nhóm thích hợp bao gồm các phần tử tương tự nhau. Mô hình mạng LVQ được dùng cho cả hai dạng bài toán: phân loại và phân đoạn ảnh.
Hình 4.6: Mạng LVQ
Lớp ra có số phần tử bằng với số nhóm riêng biệt. Số phần tử trong lớp Kohonen được tập hợp theo các nhóm riêng biệt này. Số phần tử trong lớp tùy thuộc vào độ phức tạp của quan hệ vào–ra. Thường mỗi nhóm sẽ có cùng số phần tử trong một lớp. Lớp Kohonen sẽ học và thực hiện sự phân loại với sự trợ giúp của một tập huấn luyện. Mạng này sử dụng các luật học có giám sát. Tuy nhiên, chúng có thay đổi đáng kể so với luật lan truyền ngược. Để tối ưu hàm học và hàm gọi lại, lớp vào sẽ chứa chỉ một phần tử cho mỗi thông số.
Ơû chế độ học, mạng sử dụng lớp Kohonen để tính khoảng cách từ một vectơ huấn luyện tới mỗi phần tử, và phần tử gần nhất được cho là chiến thắng. Trong một lớp chỉ có một phần tử chiến thắng, và phần tử này chỉ cho phép một phần tử ra kích hoạt, thông báo loại của vectơ vào. Nếu phần tử chiến thắng ở trong nhóm mong muốn của vectơ huấn luyện thì nó sẽ được tăng cường tới vectơ huấn luyện. Ngược lại, các trọng số đưa vào phần tử xử lý sẽ được lấy ra khỏi vectơ huấn luyện.
Ơû chế độ gọi lại, mạng sẽ tính khoảng cách giữa vectơ vào và từng phần tử. Phần tử gần nhất được cho là chiến thắng và tạo một ngả ra, biểu diễn cho một nhóm tìm được.
Mạng LVQ có một số hạn chế. Đối với bài toán phân loại phức tạp thì mạng cần có lớp Kohonen lớn với nhiều phần tử cho mỗi nhóm.
4.3.3. Mạng xác suất:
Mạng xác suất (PNN – Probabilistic Neural Networks) được Donald Specht đưa ra. Mạng này đề xuất giải pháp cho bài toán phân loại mẫu dựa vào phương pháp thống kê, gọi là bộ phân loại Bayes. Lý thuyết Bayes tính đến khả năng xảy ra của các sự kiện và sử dụng thông tin ưu tiên để cải thiện dự đoán. Mô hình mạng còn sử dụng các bộ ước lượng Pazen để tạo ra các hàm mật độ xác suất cho lý thuyết Bayes.
Hình 4.7: Mạng Xác Suất
Mạng PNN sử dụng tập huấn luyện có giám sát để tạo ra các hàm phân bố trong một lớp mẫu. Những hàm này, ở chế độ gọi lại, dùng để ước lượng khả năng xảy ra của một vectơ vào đang là một bộ phận của một nhóm được học. Các mẫu học được lấy trọng số theo một xác suất ưu tiên, gọi là tần số liên quan, của mỗi nhóm để xác định nhóm giống nhất với vectơ vào. Nếu tần số liên quan của các nhóm này được biết thì tất cả các nhóm được xem là như nhau và sự xác định nhóm sẽ dựa vào sự giống nhau của vectơ đặc trưng đối với hàm phân bố của một nhóm.
Mạng có 3 lớp: lớp vào, lớp mẫu và lớp ra. Lớp vào có số phần tử bằng với số lượng các thông số cần thiết để mô tả vật được phân loại. Lớp mẫu dùng để sắp xếp tập huấn luyện sau cho mỗi phần tử xử lý sẽ biểu diễn cho một vectơ vào. Lớp ra, còn gọi là lớp tổng, có số phần tử bằng với số nhóm cần phân loại. Mỗi phần tử trong lớp ra sẽ kết hợp với các phần tử trong lớp mẫu có cùng nhóm và phân loại cho ngả ra.
Lớp mẫu biểu diễn sự thực hiện một phiên bản của bộ phân loại Bayes, với hàm mật độ xác suất phụ thuộc được xấp xỉ bằng bộ ước lượng Parzen. Phương pháp này tạo ra một bộ phân loại mẫu tối ưu về mặt cực tiểu sự rủi ro của việc phân biệt sai một vật. Với bộ ước lượng này, phương pháp thực hiện sẽ gần hơn với hàm mật độ nhóm thật vì số mẫu huấn luyện tăng lên, miễn là tập huấn luyện biểu diễn đầy đủ sự phân biệt nhóm. Trong lớp mẫu có một phần tử xử lý cho mỗi vectơ vào của tập huấn luyện. Thông thường, số phần tử trong mỗi nhóm ra sẽ bằng nhau. Mặt khác, một hoặc nhiều nhóm có thể bị lệch và mạng sẽ tạo ra những kết quả sai.
Mỗi phần tử trong lớp mẫu được huấn luyện một lần. Một phần tử được huấn luyện sẽ tạo một giá trị ra cao khi vectơ vào phù hợp với vectơ huấn luyện. Hàm huấn luyện có một hệ số san bằng toàn cục để tổng quát hóa tốt hơn kết quả phân loại. Trong trường hợp bất kỳ, vectơ huấn luyện không buộc phải ở
trong một thứ tự đặc biệt nào của tập huấn luyện, vì loại của một vectơ được chỉ định bởi ngả ra mẫu ứng với một ngả vào.
Lớp mẫu hoạt động mang tính cạnh tranh, vectơ vào phù hợp nhất sẽ chiến thắng và tạo một ngả ra. Theo cách này, chỉ có một loại được tạo ra đối với một vectơ cho trước bất kỳ. Nếu ngả vào không phù hợp với bất kỳ mẫu nào có trong lớp mẫu thì sẽ không có ngả ra.
Huấn luyện mạng xác suất đơn giản hơn mạng lan truyền ngược. Tuy nhiên, lớp mẫu có thể rất lớn nếu sự khác biệt giữa các nhóm bị thay đổi và ở cùng thời điểm sự tương tự thật sự là các vùng riêng biệt.
4.3.4. Mạng Hopffield:
Mạng Hopffield có dạng như hình vẽ 4.8.
Mỗi phần tử trong mạng hoạt động ở dạng nhị phân. Đó là do các phần tử tính tổng có trọng số của các ngả vào và lượng tử hóa ngả ra bằng 0 hoặc 1. Hạn chế này sẽ được giảm bớt bằng cách dùng hàm truyền Sigmoid trong mô hình để phân biệt nhóm tốt hơn.
Hình 4.8: Mạng Hopffield
Mạng Hopfield có 3 lớp: lớp đệm ngả vào, lớp Hopfield và lớp ra. Các lớp có cùng số phần tử. Ngả vào của lớp Hopfield được nối với ngả ra của phần tử tương ứng trong lớp đệm qua các biến trọng số. Ngả ra của lớp Hopfield lại nối ngược lại ngả vào của mỗi phần tử khác chấp nhận nó. Chúng cũng được nối với các phần tử tương ứng trong lớp ra.
Trong hoạt động gọi lại, mạng sẽ áp các dữ liệu từ lớp vào, qua các trọng số học, tới lớp Hopfield. Lớp Hopfield sẽ dao động cho đến khi hoàn tất một số chu kỳ cố định, và trạng thái hiện tại của lớp này sẽ được đưa tới ngả ra. Trạng thái này thích hợp với một mẫu đã được lập trình trong mạng.
Việc học của mạng Hopfield có yêu cầu là một mẫu huấn luyện được đưa tới lớp vào và lớp ra cùng lúc. Tính chất đệ qui của lớp Hopfield cung cấp một phương tiện điều chỉnh tất cả các trọng số. Luật học này là luật Hopfield.
Mạng Hopfield có 2 giới hạn chính khi sử dụng như bộ nhớ định địa chỉ được. Thứ nhất, số lượng mẫu và độ chính xác bị giới hạn. Nếu chứa quá nhiều mẫu thì mạng sẽ hội tụ tại một mẫu mới không chính xác với mẫu đã được lập trình.
Thứ hai, mạng có thể không ổn định nếu số mẫu dùng chung quá giống nhau. Vấn đề này có thể khắc phục bằng cách điều chỉnh tập mẫu trực giao với nhau.
4.3.5. Mạng tự sắp xếp:
Mạng này do Tuevo Kohonen đưa ra. Dữ liệu được đưa tới một lớp 2 chiều. Sự khác biệt giữa mạng này và các mạng khác là nó học không giám sát. Tuy nhiên, khi cấu trúc này được phối hợp với các lớp nơron khác để dự đoán hoặc phân loại thì mạng sẽ học không giám sát trước, sau đó chuyển sang học có giám sát đối với những phần thêm vào.
Mạng có hai lớp: lớp vào kết nối hoàn toàn với lớp 2 chiều Kohonen, lớp ra dùng cho bài toán phân loại và biểu diễn nhóm của vectơ vào. Lớp ra sử dụng