Tổng quan luận án
Luận án tiến sĩ kỹ thuật chuyên ngành Kỹ thuật điện tử của nghiên cứu sinh Nguyễn Thị Thanh Nga, thực hiện tại Viện Nghiên cứu Điện tử, Tin học, Tự động hóa dưới sự hướng dẫn khoa học của PGS. Nguyễn Hữu Công (khóa đào tạo 2008–2012, bảo vệ năm 2013–2014), tập trung giải quyết bài toán tối ưu hóa quá trình học của mạng nơron nhân tạo khi xấp xỉ các đối tượng phi tuyến có bề mặt hàm mục tiêu dạng đặc biệt.
-
Tính cấp thiết và khoảng trống nghiên cứu: Trong các lĩnh vực điều khiển, tự động hóa và công nghệ thông tin, nhận dạng đối tượng là khâu then chốt quyết định chất lượng điều khiển hệ thống. Hầu hết các đối tượng thực tế đều có tính chất phi tuyến phức tạp. Mạng nơron truyền thẳng nhiều lớp (Multilayer Perceptron - MLP) được chứng minh là công cụ xấp xỉ vạn năng cho các hàm số liên tục dựa trên định lý Stone – Weierstrass và định lý Kolmogorov. Tuy nhiên, khi sử dụng mạng nơron với hàm kích hoạt phi tuyến (đặc biệt là hàm sigmoid) để xấp xỉ các đối tượng có độ phi tuyến cao hoặc các đối tượng kỹ thuật đặc thù (như các đối tượng truyền nhiệt), bề mặt sai số sinh ra thường có dạng lòng khe hẹp (ravine/cleft).
Trên mặt lỗi dạng lòng khe, độ dốc biến đổi rất mạnh: hai bên sườn khe có độ dốc rất lớn trong khi đáy khe lại thoai thoải kéo dài. Các thuật toán tối ưu hóa dựa trên gradient truyền thống (như thuật toán lan truyền ngược chuẩn - SDBP, hay các phương pháp tích hợp trong Neural Network Toolbox của Matlab gồm
traingd,traingdm,traingdx,traingda) gặp phải hiện tượng dao động qua lại giữa hai vách khe, tốc độ hội tụ suy giảm nghiêm trọng hoặc bị kẹt lại tại các cực tiểu cục bộ/vùng đáy phẳng mà không thể đạt tới điểm tối ưu toàn cục. Khoảng trống nghiên cứu được tác giả xác định là: chưa có công trình nào trong và ngoài nước giải quyết triệt để bài toán tìm nghiệm tối ưu toàn cục và tăng tốc độ hội tụ khi luyện mạng nơron có bề mặt sai số dạng lòng khe hẹp thông qua việc kết hợp cơ chế vượt khe với việc tối ưu hóa bộ trọng số khởi tạo ban đầu. -
Mục tiêu nghiên cứu (đánh số theo văn bản):
- Đề xuất mô hình kết hợp thuật toán vượt khe và giải thuật di truyền (Genetic Algorithms - GA) để huấn luyện mạng nơron truyền thẳng nhiều lớp (MLP) có mặt lỗi đặc biệt dạng lòng khe.
- Xây dựng bộ công cụ phần mềm để luyện mạng nơron cho một số bài toán có mặt lỗi đặc biệt, làm cơ sở bổ sung vào Neural Network Toolbox của Matlab.
-
Đối tượng và phạm vi nghiên cứu:
- Đối tượng nghiên cứu: Cấu trúc mạng nơron truyền thẳng nhiều lớp (MLP), thuật toán học lan truyền ngược (BackPropagation - BP), thuật toán tối ưu hóa vượt khe (cleft-overstep algorithm), giải thuật di truyền (GA) và bài toán nhận dạng hệ thống phi tuyến.
- Phạm vi không gian và học thuật: Nghiên cứu lý thuyết tối ưu hóa hàm mục tiêu phi tuyến không ràng buộc, thuật toán học cho mạng MLP; xây dựng mô hình thuật toán và cài đặt thực nghiệm mô phỏng trên máy tính bằng ngôn ngữ C++ và môi trường Matlab.
- Phạm vi thời gian: Công trình được thực hiện trong giai đoạn đào tạo nghiên cứu sinh 2008–2012, hoàn thành và nghiệm thu trong giai đoạn 2013–2014.
Tổng quan tài liệu và vị trí của luận án
Tác giả đã hệ thống hóa lịch sử phát triển của mạng nơron nhân tạo và các công trình nghiên cứu liên quan đến thuật toán học, khởi tạo trọng số và tối ưu hóa hàm khe:
-
Các hướng nghiên cứu nền tảng và phát triển mạng nơron:
- Nền tảng sơ khai: McCulloch và Pitts (1943) đặt nền móng với mô hình nơron nhị phân; Donald Hebb (1949) với quy tắc học Hebbian; Frank Rosenblatt (thập niên 1950) đề xuất mô hình Perceptron một tầng; Marvin Minsky và Seymour Papert (1969) chỉ ra hạn chế của Perceptron đối với các bài toán không phân ly tuyến tính; Bernard Widrow và Marcian Hoff (1959) phát triển mô hình ADALINE, MADALINE và thuật toán Least Mean Square (LMS).
- Sự phát triển của thuật toán lan truyền ngược (BP): Paul Werbos (1974) đề xuất khái niệm BP; David Rumelhart, Geoffrey Hinton, Ronald Williams, David Parker và Yann LeCun (thập niên 1980) độc lập nghiên cứu và hoàn thiện thuật toán; David Rumelhart và James McClelland phổ biến qua tác phẩm Parallel Distributed Processing (1986); John Hopfield (1982) phục hồi sự quan tâm học thuật với mô hình mạng Hopfield. Các dạng mạng động như LDDN được huấn luyện qua BPTT và RTRL.
- Công trình tại Việt Nam: Sách chuyên khảo của Nguyễn Đình Thúc (2000), Bùi Công Cường và Nguyễn Doãn Phước (2001), Nguyễn Như Hiển và Lại Khắc Lãi; các nghiên cứu ứng dụng của Nguyễn Kỳ Phùng và Nguyễn Khoa Việt Trường (mô hình hóa xử lý nước thải bằng ANN), Đỗ Trung Hải (2008, luận án tiến sĩ về hệ mờ - nơron điều khiển hệ chuyển động sử dụng đại số Lie).
-
Các công trình nghiên cứu cải tiến thuật toán học của mạng nơron:
- Điều chỉnh tốc độ học và hướng tìm kiếm: Hagan và cộng sự (1996) với giáo trình Neural Network Design; N. Kandil (Canadian Conference on Electrical and Computer Engineering) nghiên cứu tốc độ học tối ưu; Dimitri P. Bertsekas (2004) với Nonlinear Programming; Mohammed A. Salamed (2005) đề xuất thuật toán Optical BackPropagation (OBP) dùng hàm mũ thay đổi sai số đầu ra; Chi-Chung Cheung và Sin-Chun Ng (IJCNN 2009) đề xuất phương pháp 2P-MGFPROP chia quá trình học thành nhiều pha; M. Islam (ICETECT 2011) đề xuất tốc độ học hỗn loạn (chaotic learning rate); PGS. Nguyễn Quang Hoan (VICA6, 2004) kết hợp mạng nơron động và GA nhận dạng âm tiết tiếng Việt; Nguyễn Sĩ Dũng và Lê Hoài Quốc ứng dụng thuật toán Conjugate Gradient trên Matlab 7.1.
- Tối ưu hóa bộ trọng số khởi tạo ban đầu: Shepanski (1988) dùng phương pháp bình phương nhỏ nhất kết hợp GA; Nguyen và Widrow (1990) thiết lập trọng số lớp ẩn qua xấp xỉ tuyến tính từng đoạn; Osowski (1993) mở rộng phương pháp Nguyen - Widrow; Yam và Chow (1995) đề xuất hai phương pháp khởi tạo dựa trên đại số tuyến tính; Hisashi Shimodaira đề xuất phương pháp OIVS; Drago và Ridella đề xuất thuật toán SCAWI; Jatinder N. Sexton (1999) chứng minh GA tìm vector trọng số vượt trội hơn BP thuần túy; Gleb Beliakov và Ajith Abraham (2002) dùng phương pháp cutting angle; P. Prieto (2004) so sánh các phép lai tối ưu mạng MLP; D. Saravanan (2009) dùng GA tối ưu trọng số dự đoán đột quỵ; Yu-Tzu Chang, Jinn Lin, Jiann-Shing Shieh, Maysam F. Abbod (2012) dùng GA tối ưu trọng số ban đầu dự báo gãy xương hông.
- Phương pháp tối ưu hóa hàm khe: Naum Z. Shor đề xuất "r-Algorithm" sử dụng toán tử kéo giãn không gian trong không gian Euclide. GS. Nguyễn Văn Mạnh (MEI - Matxcova, giai đoạn 1989–1995) cùng Bùi Minh Trí phát triển thuật toán vượt khe (cleft-overstep method) ứng dụng giải quyết các bài toán tối ưu hóa phi tuyến phức tạp trong ngành nhiệt và nhận dạng hàm truyền đối tượng nhiệt.
-
Khoảng trống luận án lựa chọn giải quyết: Các phương pháp cải tiến bước học hiện có (như mô-men quán tính, tốc độ học thích nghi VLBP) phụ thuộc vào quá nhiều tham số thực nghiệm (từ 5 đến 6 tham số) và dễ mất ổn định trên mặt lỗi lòng khe. Trong khi đó, thuật toán vượt khe của GS. Nguyễn Văn Mạnh đã chứng minh hiệu quả trên các bài toán tối ưu hóa nhiệt nhưng chưa từng được áp dụng vào quá trình cập nhật bước học của mạng nơron. Luận án lựa chọn giải quyết khoảng trống này bằng cách tích hợp thuật toán vượt khe vào khâu điều chỉnh bước học lan truyền ngược, đồng thời kết hợp giải thuật di truyền GA để tìm kiếm vùng trọng số ban đầu tối ưu, tạo thành một quy trình học hai giai đoạn hoàn chỉnh cho mạng MLP có mặt lỗi đặc biệt.
Cơ sở lý thuyết và phương pháp nghiên cứu
-
Cơ sở lý thuyết và các khái niệm toán học sử dụng:
- Định lý xấp xỉ vạn năng: Khẳng định mạng nơron truyền thẳng một lớp ẩn có khả năng xấp xỉ bất kỳ hàm số liên tục nào với độ chính xác tùy ý dựa trên định lý Stone – Weierstrass (Hornik, Funahashi, Cotter, Blum - 1989) và định lý Kolmogorov (Hecht-Nielsen, Lorentz).
- Điều kiện tối ưu trong không gian Euclide $E^n$:
- Khai triển Taylor cho hàm mục tiêu sai số $J(u)$ quanh điểm $u^$: $$J(u) \approx J(u^) + \nabla J(u^)^T \Delta u + \frac{1}{2} \Delta u^T \nabla^2 J(u^) \Delta u$$
- Điều kiện cần cấp 1: Gradient tại điểm cực tiểu bằng 0 ($\nabla J(u^*) = 0$ - điểm tĩnh).
- Điều kiện cấp 2: Ma trận Hessian $H(u^) = \nabla^2 J(u^)$ xác định dương cho cực tiểu mạnh (cực tiểu cục bộ) và bán xác định dương cho cực tiểu yếu.
- Đặc trưng toán học của hàm khe:
- Xét hàm bậc hai $J(x) = 0.5 x^T A x + b^T x + c$ với $A$ xác định dương. Độ khe $\delta(A)$ được định nghĩa qua tỷ số giữa giá trị riêng cực đại và cực tiểu: $$\delta(A) = \frac{\lambda_{max}(A)}{\lambda_{min}(A)} \ge 1$$
- Đối với hàm phi bậc hai, độ ước định cục bộ $\delta(x^)$ đặc trưng cho sự kéo dài của các mặt đồng mức tại lân cận $x^$. Giá trị $\delta$ càng lớn thì hàm càng thể hiện rõ tính chất khe, mặt mức càng bị kéo dài thành khe hẹp.
- Nguyên lý vượt khe: Xét bước lặp $u^{k+1} = u^k + \gamma_k s_k$. Bước vượt khe $\gamma_k$ được xác định sao cho hình chiếu gradient của hàm mục tiêu tại điểm đầu $X = u^k$ và điểm cuối $Y = u^{k+1}$ lên hướng tìm kiếm $S_k$ thỏa mãn điều kiện đổi dấu: $$\langle J'{s}(X), J'{s}(Y) \rangle \le 0 \quad \Leftrightarrow \quad h'_k(0) \cdot h'_k(\gamma_k) \le 0$$ đồng thời đảm bảo tính đơn điệu giảm của hàm mục tiêu: $J(u^k + \gamma_k S_k) < J(u^k)$.
- Giải thuật di truyền (GA): Sử dụng cơ chế chọn lọc tự nhiên, lai ghép và đột biến trên một quần thể gồm nhiều cá thể (mỗi cá thể mã hóa một vector trọng số mạng nơron) để thực hiện tìm kiếm toàn cục, tránh bẫy cực tiểu địa phương.
-
Phương pháp nghiên cứu thực tế:
- Phương pháp nghiên cứu lý thuyết: Thiết lập mô hình toán học cho quá trình lan truyền ngược với bước học thích nghi theo nguyên lý vượt khe; xây dựng thuật toán kết hợp GA và vượt khe.
- Phương pháp thực nghiệm mô phỏng: Cài đặt thuật toán số trên ngôn ngữ C++ và phần mềm Matlab. So sánh đối chứng với các thuật toán chuẩn trong Neural Network Toolbox của Matlab.
-
Nguồn tư liệu và dữ liệu nghiên cứu:
- Mô hình nhận dạng phi tuyến tĩnh: Hàm $f(u) = 0.1 \sin(5\pi u)$ với tín hiệu đầu vào $u(k) = \sin(2\pi k / 250)$, $k = 0, 1, \dots, 500$.
- Tập dữ liệu nhận dạng ký tự/chữ số: Tập 10 chữ số ${0, 1, 2, 3, 4, 5, 6, 7, 8, 9}$ và tập 10 ký tự đặc biệt ${!, @, #, $, %, \hat{}, &, *, (, )}$, mỗi ký tự được mã hóa dưới dạng ma trận điểm nhị phân $5 \times 7$ (vector đầu vào 35 chiều).
- Các mô hình động học phi tuyến và hệ thống hàm mục tiêu dạng lòng khe.
Nội dung chính theo từng chương
Chương 1: Mạng nơron và quá trình học của mạng nơron
Chương 1 trình bày tổng quan về mạng nơron nhân tạo, các phương pháp học (có giám sát, không giám sát, tăng cường) và phân tích sâu các nhân tố ảnh hưởng đến độ hội tụ của thuật toán lan truyền ngược:
- Khởi tạo trọng số: Nếu khởi tạo ngẫu nhiên trong khoảng $[-1/n, 1/n]$ với $n$ là số liên kết nối tới lớp, giá trị khởi tạo quyết định điểm hội tụ cuối cùng. Trọng số ban đầu quá lớn khiến hàm sigmoid rơi vào vùng bão hòa (chỉ nhận giá trị 0 hoặc 1), làm hệ thống bị tắc nghẽn tại cực tiểu cục bộ ngay từ đầu.
- Bước học $\alpha$: Bước học lớn giúp tăng tốc độ nhưng dễ gây mất ổn định hoặc vượt qua cực tiểu mong muốn; bước học nhỏ khiến mạng học rất chậm hoặc không thể thoát khỏi lòng khe.
- Hằng số quán tính (momentum): Giúp duy trì hướng dịch chuyển và giảm dao động nhưng làm tăng gấp đôi bộ nhớ máy tính để lưu trữ các giá trị chu kỳ trước.
Tác giả phân tích bài toán nhận dạng hệ thống (nhận dạng mô hình và nhận dạng tham số) thông qua mô hình cơ bản với tín hiệu sai số $e = y - \hat{y}$. Khái niệm mặt lỗi đặc biệt dạng lòng khe được làm rõ: do sử dụng hàm kích hoạt sigmoid $f(x) = 1/(1+e^{-x})$ có vùng biên rất phẳng và vùng giữa dốc đứng, mặt lỗi $J = 0.5 \sum (z - t)^2$ xuất hiện các khe hẹp kéo dài với độ ước định $\delta(A) = \lambda_{max}/\lambda_{min}$ rất lớn.
Để minh chứng hạn chế của các công cụ hiện có, tác giả thực hiện hai mô phỏng trên Matlab Toolbox:
- Bài toán mặt lỗi bình thường: Nhận dạng hệ phi tuyến $f(u) = 0.1 \sin(5\pi u)$ bằng mạng truyền thẳng 3 lớp cấu trúc $[8\text{ }8\text{ }1]$ với hàm
tansigvàpurelin. Mạng đạt sai số mục tiêu sau 65 chu kỳ (epoch). - Bài toán mặt lỗi đặc biệt: Nhận dạng 10 chữ số $(0\text{–}9)$ qua ma trận $5 \times 7$ (cấu trúc mạng 35–5–10, dùng hàm kích hoạt sigmoid). Khi thử nghiệm với các phương pháp lan truyền ngược chuẩn trên Matlab (
traingd,traingdm,traingda,traingdx), quá trình học diễn ra rất chậm, sai số thay đổi không đáng kể qua nhiều chu kỳ do mạng bị tắc nghẽn trong lòng khe.
| Phương pháp luyện mạng (Matlab Toolbox) | Đặc điểm cập nhật bước học | Hiện tượng khi gặp mặt lỗi dạng khe |
|---|---|---|
traingd (Basic gradient descent) |
Bước học cố định | Dao động mạnh giữa hai vách khe, hội tụ rất chậm |
traingdm (Gradient descent with momentum) |
Bổ sung thành phần quán tính | Có thể đẩy quỹ đạo dao động vòng quanh đáy khe |
traingda / traingdx (Variable learning rate) |
Tự điều chỉnh tốc độ học thích nghi | Nhạy cảm với 5–6 tham số cài đặt, dễ kẹt ở đáy phẳng |
Chương 2: Thuật toán vượt khe trong quá trình luyện mạng nơron
Chương 2 tập trung giải quyết bài toán tính toán bước học thích nghi khi bề mặt sai số có dạng lòng khe:
- Phân tích hạn chế của r-Algorithm (Shor): Phương pháp dùng toán tử kéo giãn không gian $R_k = I + (\frac{1}{\rho} - 1)\frac{r_k r_k^T}{r_k^T r_k}$ để tăng tốc gradient phụ thuộc vào việc chọn tham số $\rho$ ($0 < \rho < 1$) và công thức bước nhảy $\gamma_k$, gây khó khăn khi áp dụng tổng quát cho mạng nơron.
- Thiết lập nguyên lý vượt khe: Thay vì di chuyển từng bước nhỏ bám theo sườn dốc (dẫn đến dao động zigzag vô tận), nguyên lý vượt khe xác định độ dài bước $\gamma_k$ đủ lớn để điểm tìm kiếm nhảy vượt qua đáy khe sang bờ đối diện, thỏa mãn điều kiện đạo hàm đổi dấu $h'_k(0) \cdot h'_k(\gamma_k) \le 0$ nhưng vẫn đảm bảo giá trị hàm mục tiêu tại điểm mới nhỏ hơn điểm cũ ($J(u^{k+1}) < J(u^k)$).
- Xây dựng quy trình thuật toán:
- Điều chỉnh ma trận trọng số lớp ra $W_{2,1}$ (kích thước $5 \times 10$) và lớp ẩn $W_{1,1}$ (kích thước $35 \times 5$).
- Thiết lập hàm khởi tạo trọng số, lưu đồ và thủ tục tính bước học vượt khe $\gamma_v$.
- Xây dựng thủ tục huấn luyện hoàn chỉnh
HUANLUYENVUOTKHE()trên C++ và Matlab.
- Kết quả thực nghiệm: Áp dụng thuật toán vượt khe cho bài toán nhận dạng ký tự ma trận $5 \times 7$. Thuật toán vượt khe giúp quỹ đạo tìm kiếm thoát khỏi trạng thái dao động zigzag ở hai vách khe, rút ngắn đáng kể thời gian và số chu kỳ tính toán so với các hàm
traingd,traingdm,traingdxcủa Matlab.
Chương 3: Đề xuất mô hình kết hợp thuật di truyền và thuật toán vượt khe để cải tiến quá trình học của mạng nơron MLP có mặt lỗi đặc biệt
Chương 3 giải quyết trọn vẹn hai nguyên nhân gây chậm hội tụ của mạng MLP: sự nhạy cảm với trọng số khởi tạo ban đầu và bề mặt lỗi dạng lòng khe.
- Khảo sát thực nghiệm: Tác giả tiến hành khảo sát độ hội tụ của kỹ thuật lan truyền ngược nguyên thủy và kỹ thuật lan truyền ngược kết hợp thuật toán vượt khe với nhiều bộ trọng số khởi tạo ngẫu nhiên khác nhau. Kết quả cho thấy: nếu bộ trọng số khởi tạo rơi vào vùng bất lợi (quá xa cực tiểu toàn cục hoặc nằm trong vùng bão hòa phẳng của hàm sigmoid), thuật toán dù có bước vượt khe vẫn mất nhiều thời gian để hội tụ hoặc chỉ đạt cực tiểu địa phương.
- Đề xuất mô hình lai hai giai đoạn (GA – Vượt khe):
- Giai đoạn 1 (Toàn cục): Sử dụng giải thuật di truyền (GA) để tìm kiếm trong toàn bộ không gian tham số, xác định và khoanh vùng bộ trọng số khởi tạo ban đầu tối ưu chứa cực trị toàn cục.
- Giai đoạn 2 (Cục bộ): Sử dụng kỹ thuật lan truyền ngược với bước học vượt khe (
HUANLUYENVUOTKHE) xuất phát từ bộ trọng số tối ưu do GA cung cấp để nhanh chóng hội tụ chính xác về điểm cực tiểu toàn cục.
- Kết quả thử nghiệm nhận dạng hệ thống: Mô hình kết hợp được kiểm chứng qua 3 bài toán nhận dạng với các bảng số liệu so sánh:
| Bài toán nhận dạng kiểm chứng | Đối tượng thử nghiệm | Kết quả đạt được của mô hình GA + Vượt khe |
|---|---|---|
| Nhận dạng hệ phi tuyến tĩnh (Bảng 3.1) | Hàm phi tuyến toán học | Hội tụ nhanh, sai số bám sát giá trị đích |
| Nhận dạng hệ động học phi tuyến (Bảng 3.2) | Mô hình động học có trễ | Khắc phục hoàn toàn dao động sai số |
| Nhận dạng hệ có mặt lỗi dạng lòng khe (Bảng 3.3) | Bài toán chữ số và ký tự $5 \times 7$ | Vượt qua đáy khe hẹp, không bị kẹt ở cực tiểu cục bộ |
Các bảng so sánh đối chứng (Bảng 3.4, 3.5, 3.6 trong luận án) giữa thuật toán lan truyền ngược chuẩn (BP), giải thuật di truyền độc lập (GA) và mô hình kết hợp (GA + BP vượt khe) ở các mức sai số yêu cầu khác nhau ($0.5$, $0.6$...) chứng minh rằng mô hình đề xuất có số thế hệ huấn luyện ít nhất, độ chính xác cao nhất và loại bỏ hoàn toàn sự phụ thuộc vào yếu tố may rủi khi khởi tạo trọng số.
Kết quả và những đóng góp mới
-
Những đóng góp mới về mặt lý luận và khoa học:
- Đã nghiên cứu và phân tích bản chất toán học của bề mặt sai số dạng lòng khe trong quá trình huấn luyện mạng nơron MLP khi sử dụng hàm kích hoạt sigmoid và nhận dạng các đối tượng phi tuyến phức tạp.
- Đã ứng dụng thành công nguyên lý vượt khe của GS. Nguyễn Văn Mạnh vào mạng nơron nhân tạo, xây dựng công thức và thủ tục xác định bước học vượt khe tự thích nghi, giải quyết triệt để hiện tượng dao động zigzag và mất ổn định của phương pháp giảm dốc gradient truyền thống trên mặt lỗi dạng khe.
- Đề xuất mô hình kết hợp giải thuật di truyền (GA) và thuật toán vượt khe: GA đóng vai trò khoanh vùng không gian chứa cực trị toàn cục để tìm bộ trọng số ban đầu tối ưu, còn thuật toán vượt khe đảm nhiệm quá trình hội tụ nhanh về điểm cực tiểu toàn cục.
-
Những đóng góp mới về mặt thực tiễn và ứng dụng:
- Xây dựng hoàn chỉnh thuật toán và mã nguồn chương trình huấn luyện mạng nơron
HUANLUYENVUOTKHE()cài đặt trên C++ và Matlab. - Cung cấp một bộ công cụ tính toán có độ tin cậy cao, có khả năng tích hợp và bổ sung trực tiếp vào thư viện Neural Network Toolbox của phần mềm Matlab phục vụ công tác nghiên cứu và đào tạo.
- Áp dụng thành công mô hình đề xuất vào việc nhận dạng các hệ thống phi tuyến tĩnh, hệ thống động học phi tuyến và bài toán nhận dạng ký tự/chữ số ma trận điểm $5 \times 7$.
- Xây dựng hoàn chỉnh thuật toán và mã nguồn chương trình huấn luyện mạng nơron
Hạn chế và hướng nghiên cứu tiếp
-
Hạn chế của luận án:
- Các thử nghiệm và đánh giá thuật toán trong luận án chủ yếu thực hiện thông qua mô phỏng số trên máy tính (nhận dạng ký tự chữ số $5 \times 7$, nhận dạng các mô hình toán phi tuyến giả lập).
- Chưa tiến hành thử nghiệm và triển khai trực tiếp trên các đối tượng vật lý thực tế trong công nghiệp (như hệ thống điều khiển nhiệt độ lò nhiệt thực tế, tay máy robot công nghiệp thời gian thực).
- Cấu trúc mạng nơron (số lớp ẩn, số nơron lớp ẩn) vẫn được lựa chọn dựa trên kinh nghiệm và thử nghiệm từng bài toán cụ thể, chưa tích hợp thuật toán tự động tối ưu hóa đồng thời cả cấu trúc mạng và trọng số.
-
Hướng nghiên cứu tiếp:
- Mở rộng ứng dụng thuật toán vượt khe và mô hình lai GA – Vượt khe cho các cấu trúc mạng nơron động phức tạp như LDDN, BPTT và RTRL.
- Nghiên cứu cơ chế tự động tối ưu hóa đồng thời cấu trúc mạng (số nút, số lớp) cùng với vector trọng số.
- Ứng dụng mô hình vào các bài toán thực tế quy mô lớn: điều khiển thích nghi hệ thống nhiệt công nghiệp, nhận dạng tiếng nói và nhận dạng chữ viết tay tiếng Việt trực tuyến.
Giá trị tham khảo
-
Đối tượng thụ hưởng:
- Nghiên cứu sinh, học viên cao học và giảng viên: Thuộc các chuyên ngành Kỹ thuật điện tử, Tự động hóa, Tin học công nghiệp, Khoa học máy tính và Toán ứng dụng có thể sử dụng luận án làm tài liệu tham khảo chuyên sâu về lý thuyết tối ưu hóa phi tuyến ứng dụng trong mạng nơron.
- Kỹ sư nghiên cứu và phát triển: Các kỹ sư làm việc trong lĩnh vực nhận dạng hệ thống, điều khiển thông minh và xử lý ảnh/tín hiệu có thể khai thác thuật toán để giải quyết các bài toán nhận dạng đối tượng có độ phi tuyến cao.
-
Các nội dung có giá trị tham khảo cao:
- Chương 2: Cơ sở toán học của nguyên lý vượt khe, cách thiết lập điều kiện ngược dấu gradient $h'_k(0) \cdot h'_k(\gamma_k) \le 0$ và lưu đồ thuật toán tính bước học vượt khe.
- Chương 3: Cấu trúc thuật toán lai ghép giữa GA và mạng nơron, phương pháp mã hóa vector trọng số và quy trình chuyển giao giữa giai đoạn tìm kiếm toàn cục (GA) sang hội tụ cục bộ (vượt khe).
- Chương 1: Hệ thống tổng quan tài liệu lịch sử phát triển của mạng nơron và các công trình nghiên cứu tối ưu hóa hàm khe của các tác giả Việt Nam và quốc tế.
Câu hỏi thường gặp
1. Mặt lỗi dạng lòng khe (ravine/cleft) là gì và tại sao hàm sigmoid lại dễ tạo ra mặt lỗi này?
Mặt lỗi dạng lòng khe là bề mặt hàm mục tiêu có độ dốc biến đổi rất mạnh theo các hướng khác nhau: hai bên sườn khe dốc đứng trong khi đáy khe lại rất thoai thoải và kéo dài theo một hướng nhất định (độ ước định $\delta(A) = \lambda_{max}/\lambda_{min} \gg 1$). Hàm sigmoid $f(x) = 1/(1+e^{-x})$ có đặc điểm bị chặn và rất phẳng đối với các giá trị đầu vào có trị tuyệt đối lớn; khi kết hợp nhiều tầng nơron phi tuyến, các vùng bão hòa này tạo nên các mặt phẳng kéo dài nối tiếp với các vùng dốc đứng, hình thành nên bề mặt sai số dạng lòng khe hẹp.
2. Nguyên lý vượt khe xác định bước học $\gamma_k$ khác với phương pháp giảm dốc truyền thống như thế nào?
Phương pháp giảm dốc truyền thống (Gradient Descent) chọn bước học nhỏ đi dọc theo chiều ngược vector gradient, khiến điểm tìm kiếm bị dao động zigzag liên tục giữa hai sườn khe dốc mà không tiến được dọc theo đáy khe. Ngược lại, nguyên lý vượt khe xác định độ dài bước $\gamma_k$ đủ lớn sao cho điểm đầu và điểm cuối của bước lặp nằm về hai phía bờ của đáy khe (hình chiếu gradient đổi dấu: $h'_k(0) \cdot h'_k(\gamma_k) \le 0$), giúp quỹ đạo tìm kiếm nhảy qua lòng khe và tiến nhanh về điểm cực tiểu toàn cục.
3. Tại sao việc khởi tạo trọng số ngẫu nhiên trong khoảng $[-1/n, 1/n]$ có thể khiến quá trình luyện mạng thất bại?
Bản chất của thuật toán lan truyền ngược là tối ưu hóa cục bộ. Việc khởi tạo ngẫu nhiên khiến vị trí xuất phát rơi ngẫu nhiên vào không gian tìm kiếm. Nếu điểm xuất phát nằm trong vùng bão hòa của hàm sigmoid (tổng tín hiệu vào lớn làm đầu ra chỉ đạt 0 hoặc 1) hoặc nằm gần một cực tiểu địa phương yếu, gradient sẽ triệt tiêu hoặc dẫn mạng hội tụ sớm vào cực tiểu địa phương đó mà không thể đạt được sai số mục tiêu toàn cục.
4. Trong mô hình đề xuất ở Chương 3, Giải thuật di truyền (GA) và Thuật toán vượt khe phối hợp với nhau theo cơ chế nào?
Mô hình hoạt động theo quy trình hai giai đoạn nối tiếp: Giai đoạn 1 sử dụng GA thực hiện tìm kiếm ngẫu nhiên có định hướng trên một quần thể các vector trọng số để quét toàn bộ không gian tham số, từ đó tìm ra và khoanh vùng bộ trọng số khởi tạo ban đầu tối ưu (nằm trong vùng chứa cực tiểu toàn cục). Giai đoạn 2 sử dụng bộ trọng số này làm điểm xuất phát cho thuật toán lan truyền ngược kết hợp bước học vượt khe (HUANLUYENVUOTKHE) để nhanh chóng tinh chỉnh và đạt độ chính xác hội tụ tuyệt đối.
5. Kết quả thực nghiệm ở Chương 1 khi sử dụng Matlab Toolbox cho thấy sự khác biệt gì giữa bài toán mặt lỗi bình thường và bài toán nhận dạng chữ số?
Ở bài toán mặt lỗi bình thường (nhận dạng hàm $f(u) = 0.1\sin(5\pi u)$ bằng mạng $[8\text{ }8\text{ }1]$), mạng hội tụ rất nhanh và đạt sai số mục tiêu chỉ sau 65 chu kỳ (epoch). Ngược lại, ở bài toán nhận dạng 10 chữ số qua ma trận $5 \times 7$ (mạng 35–5–10 dùng hàm sigmoid tạo mặt lỗi dạng khe), các phương pháp chuẩn trên Toolbox (traingd, traingdm, traingda, traingdx) đều học rất chậm, tín hiệu sai số thay đổi không đáng kể qua hàng nghìn chu kỳ do bị kẹt trong lòng khe.
Kết luận
Luận án tiến sĩ của tác giả Nguyễn Thị Thanh Nga đã giải quyết thành công bài toán nâng cao tốc độ và chất lượng hội tụ của mạng nơron truyền thẳng nhiều lớp khi làm việc với các bề mặt sai số phức tạp dạng lòng khe hẹp trong nhận dạng hệ thống. Bằng việc kết hợp nguyên lý vượt khe vào khâu điều chỉnh bước học và giải thuật di truyền GA vào khâu khởi tạo trọng số, công trình đã xây dựng được mô hình huấn luyện hai giai đoạn có tính ổn định cao và khắc phục được bẫy cực tiểu địa phương. Bộ chương trình HUANLUYENVUOTKHE() được cài đặt trên C++ và Matlab là đóng góp thiết thực, có giá trị học thuật và khả năng ứng dụng cao trong việc mở rộng công cụ tính toán mềm cho các bài toán kỹ thuật điều khiển và nhận dạng phi tuyến.