tiến (feedforward) đa mức 2.1 Lý thuyết học và vấn đề nhận dạng mẫu
2.2.6 Một vài −u điểm và nh−ợc điểm của thuật toán Back-propagation
của thuật toán Back-propagation
Thuật toán back-propagation luôn đ−ợc coi nh− là thuật toán phổ biến nhất cho mô hình học có giám sát của mạng neuron tiến đa mức. Về cơ bản mà nói, nó là một kỹ thuật gradient (đạo hàm), chứ không phải là một kỹ thuật tối −u hoá. Thuật toán này có hai thuộc tính riêng biệt:
• Nó rất đơn giản trong các tính toán cục bộ.
• Nó thực hiện sự dịch chuyển theo các gradient ngẫu nhiên trong không gian trọng số (với việc cập các trọng số trên cơ sở từng mẫu một).
Hai tính chất này của thuật toán back-propagation đủ để trả lời cho tất cả các −u và nh−ợc điểm của nó.
Vấn đề tính toán cục bộ
Thuật toán back-propagation là một mô hình kết nối mà dựa trên các tính toán cục bộ để khám phá ra những khả năng xử lý thông tin của mạng neuron.
Dạng giới hạn tính toán này đ−ợc xem nh− một ràng buộc về tính cục bộ, với ý nghĩa là các tính toán của một neuron chỉ chịu ảnh h−ởng của các neuron kết nối với nó. Việc sử dụng các tính toán cục bộ nh− vậy trong việc thiết kế mạng neuron nhân tạo th−ờng đ−ợc ủng hộ bởi ba lý do cơ bản:
1. Các mạng neuron nhân tạo thực hiện các tín toán cục bộ th−ờng đ−ợc duy trì nh− là một hình ảnh cuả các mạng l−ới thần kinh sinh học.
2. Việc sử dụng các tính toán cục bộ cho phép một sự thoái hoá nhẹ nhàng về tính năng khi có lỗi cứng, và nh− vậy cung cấp cho chúng ta một nền tảng về một thiết kế mạng chấp nhận lỗi.
3. Các tính toán cục bộ thuận lợi cho việc sử dụng các kiến trúc song song nh− là một ph−ơng pháp hiệu quả để cài đặt các mạng neuron nhân tạo. Về lý do thứ nhất kể trên, liên quan đến sự hợp lý về mặt sinh học của thuật toán back-propagation, vẫn còn nhiều câu hỏi nghiêm túc đ−ợc đặt ra mà ch−a có lời giải đáp thoả đáng. Tuy nhiên những sự thiếu hụt về thần kinh sinh học không làm giảm đi giá trị về mặt kỹ thuật của thuật tián back-propagation với t− cách là một công cụ xử lý thông tin, và đ−ợc chứng minh bằng những ứng dụng thành công của nó trong nhiều lĩnh vực khác nhau.
Vấn đề hiệu quả tính toán
Độ phức tạp về tính toán của một thuật toán th−ờng đ−ợc xác định bằng số l−ợng các phép cộng, phép nhân, và sự l−u trữ liên quan tới việc cài đặt nó. Một thuật toán học đ−ợc gọi là hiệu quả trong tính toán khi độ phức tạp tính toán của nó là hàm đa thức của số l−ợng các tham số có thể điều chỉnh đ−ợc. Trên cơ sở đó, chúng ta có thể nói rằng thuật toán back-propagation là hiệu quả trong tính toán. Đặc biệt, với việc sử dụng nó để tích luỹ một mạng tiến đa mức bao gồm W trọng số synapse (kể cả các hệ số hiệu chỉnh), độ phức tạp của nó là một hàm tuyến tính của W. Điều này có thể dễ dàng đ−ợc chứng minh bằng cách xem xét các tính toán liên quan đến việc thực hiện các giai đoạn tiến và lùi của thuật toán.
Vấn đề hội tụ
Thuật toán back-propagation sử dụng một “đánh giá tức thời” cho gradient của bề mặt lỗi trong không gian trọng số. Nh− vậy thuật toán là ngẫu nhiên về bản chất; nghĩa là nó có xu h−ớng đi theo những đ−ờng zigzag xung quanh h−ớng đi thực tới cực tiểu của bề mặt lỗi. Nh− vậy là nó có xu h−ớng hội tụ chậm; chúng ta có thể nêu ra hai nguyên nhân cơ bản sau:
1. Xét tr−ờng hợp bề mặt lỗi là khá bằng phẳng dọc theo một chiều trọng số nào đó. Điều này có nghĩa là đạo hàm của bề mặt lỗi theo trọng số này có trị tuyệt đối nhỏ. Trong tr−ờng hợp này, sự điều chỉnh áp dụng cho trọng số cũng nhỏ, và có thể cần nhiều vòng lặp kế tiếp nhau để có thể làm giảm đáng kể giá trị lỗi. Mặt khác nếu bề mặt lỗi có độ cong lớn dọc theo một chiều trọng số thì đạo hàm của bề mặt lỗi theo trọng số đang xét có trị số lớn, và nh− vậy các điều chỉnh áp dụng cho trọng số này cũng lớn. Điều này làm cho thuật toán có khả năng v−ợt quá điểm cực tiểu cần đi tới.
2. Chiều của vector gradient âm có thể chỉ theo h−ớng đi xa khỏi cực tiểu của mặt phẳng lỗi, và nh− vậy thì các điều chỉnh trọng số có xu h−ớng làm cho thuật toán đi sai h−ớng.
Theo một số nghiên cứu thực nghiệm, tốc độ hội tụ cục bộ của thuật toán back-propagation có tính chất tuyến tính, và có thể chính đó là nguồn gốc của các nguyên nhân gây ra sự chậm trễ của thuật toán. Gợi ý này đ−a chúng ta đến một quan điểm nh− sau: Có thể các ph−ơng pháp tính toán với tốc độ hội tụ bậc cao
hơn (có tính phi tuyến cao) sẽ cho phép hội tụ nhanh hơn nh−ng yêu cầu nhiều nỗ lực tính toán hơn.