Bối cảnh và vấn đề nghiên cứu
Trong đời sống kinh tế - xã hội hiện đại, công tác dự báo đóng vai trò trợ giúp thiết lập kế hoạch và định hướng hành động trong nhiều lĩnh vực như tài chính (giá cổ phiếu), khí tượng (thời tiết), phòng chống thiên tai (động đất) hay giáo dục (tỷ lệ tuyển sinh). Bản chất của dự báo là phân tích các quy luật vận động của dữ liệu lịch sử để ước tính xu hướng biến động trong tương lai của đối tượng nghiên cứu. Trước sự phát triển của các mô hình học máy và trí tuệ nhân tạo, nhóm tác giả đã thực hiện khóa luận tốt nghiệp kỹ sư ngành Hệ thống thông tin với đề tài: "Tìm hiểu mô hình ANN và ứng dụng trong bài toán dự báo chuỗi thời gian".
Mục tiêu chung của đề tài là tập trung nghiên cứu cơ sở lý thuyết của mạng nơ-ron nhân tạo (Artificial Neural Network - ANN) và mô hình học sâu (Deep Learning), tiến hành cài đặt chương trình và đánh giá hiệu quả dự báo của hai mô hình này trên các tập dữ liệu chuỗi thời gian cụ thể.
Theo văn bản đề cương khóa luận, nhiệm vụ nghiên cứu được phân chia thành 4 nội dung cụ thể:
- Tìm hiểu về mô hình ANN.
- Tìm hiểu về mô hình Deep learning.
- Cài đặt hai mô hình trên.
- So sánh bằng thực nghiệm hai mô hình trên nhiều tập dữ liệu.
Đối tượng và phạm vi nghiên cứu của đề tài bao gồm:
- Đối tượng nghiên cứu: Các mô hình mạng nơ-ron nhân tạo (trọng tâm là Perceptron đa lớp - MLP) và mô hình học sâu (DNN); các thuật toán lan truyền (lan truyền tiến và lan truyền ngược - Backpropagation); các đặc tính cấu trúc của chuỗi thời gian đơn biến.
- Phạm vi dữ liệu: 4 tập dữ liệu chuỗi thời gian thực tế gồm: Giá cổ phiếu Google (Google stock), Giá vàng (Gold prices), Nhiệt độ tại Los Angeles (Temperature LA), và Giá dầu thô Brent (Brent oil prices). Trong đó, tập dữ liệu giá cổ phiếu Google được thu thập từ ngày 03/01/2005 đến ngày 10/06/2020 gồm 3.886 bản ghi giao dịch hàng ngày.
- Phạm vi thời gian thực hiện: Đề tài được triển khai từ ngày 30/03/2020 đến ngày 28/07/2020 tại Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh.
Cơ sở lý thuyết và phương pháp
Khóa luận thiết lập nền tảng nghiên cứu dựa trên sự kết hợp giữa lý thuyết chuỗi thời gian, toán học mô hình nơ-ron và phương pháp thực nghiệm kiểm chứng trên máy tính.
Khung lý thuyết và mô hình sử dụng
- Lý thuyết chuỗi thời gian: Tác giả định nghĩa chuỗi thời gian là chuỗi các quan sát được thu thập tuần tự theo thời gian. Cấu trúc dữ liệu chuỗi thời gian được phân rã thành ba thành phần cơ bản:
- Xu hướng (Trend): Sự tăng hoặc giảm dài hạn trong dữ liệu nhưng không nhất thiết mang tính tuyến tính.
- Thời vụ (Seasonal): Biến động bị ảnh hưởng bởi các yếu tố định kỳ với tần số cố định đã biết trước (ví dụ: ngày trong tuần, tháng trong năm, chu kỳ tiêu thụ thuốc trị tiểu đường hàng tháng tại Úc).
- Chu kỳ (Cyclical): Dao động tăng giảm không có tần số cố định, thường gắn liền với chu kỳ kinh doanh kinh tế với độ dài mỗi chu kỳ kéo dài ít nhất 2 năm.
- Mô hình dự báo: Xem xét ba dạng mô hình gồm mô hình giải thích nguyên nhân (sử dụng các biến tác động bên ngoài), mô hình chuỗi thời gian tự quy hồi (chỉ dựa trên các giá trị trễ của chính biến cần dự báo), và mô hình hỗn hợp. Đề tài tập trung vào mô hình chuỗi thời gian thuần túy vì cấu trúc hệ thống phức tạp khó đo lường biến giải thích trong tương lai.
- Mô hình Mạng nơ-ron nhân tạo (ANN):
- Khái niệm xuất phát từ mô hình tính toán nơ-ron sinh học (gồm thân nơ-ron soma, sợi nhánh dendrite nhận tín hiệu và sợi trục axon truyền xung điện).
- Đơn vị ngưỡng tuyến tính (Linear Threshold Unit - LTU) và Perceptron của Frank Rosenblatt (1957) sử dụng hàm bước (Heaviside hoặc Sign).
- Perceptron đa lớp (Multi-Layer Perceptron - MLP) giải quyết bài toán phi tuyến (bài toán XOR) mà mô hình Perceptron đơn lớp bị giới hạn theo công bố của Minsky và Papert (1969). Mạng gồm lớp đầu vào (input layer), một hoặc nhiều lớp ẩn (hidden layers) có nơ-ron độ lệch (bias), và lớp đầu ra (output layer).
- Mạng nơ-ron sâu (Deep Neural Network - DNN): Mạng nơ-ron có từ hai lớp ẩn trở lên.
- Hàm kích hoạt (Activation Functions):
- Hàm Sigmoid: $\sigma(x) = \frac{1}{1 + e^{-x}}$, dải giá trị $(0, 1)$, thường dùng cho bài toán xác suất hoặc lớp ẩn/đầu ra chuẩn hóa.
- Hàm Hyperbolic Tangent (Tanh): $\tanh(x) = \frac{e^x - e^{-x}}{e^x + e^{-x}} = 2\sigma(2x) - 1$, dải giá trị $(-1, 1)$, đối xứng qua trục gốc tọa độ.
- Hàm ReLU (Rectified Linear Unit): $f(x) = \max(0, x)$, giúp tăng tốc độ huấn luyện và giảm thiểu vấn đề triệt tiêu đạo hàm (vanishing gradient).
- Thuật toán huấn luyện:
- Thuật toán lan truyền tiến (Forward propagation) để tính toán giá trị đầu ra theo tổng trọng số $y(x) = f(\sum_{i=1}^n w_i x_i)$.
- Thuật toán lan truyền ngược (Backpropagation) do Rumelhart đề xuất năm 1986, áp dụng quy tắc chuỗi đạo hàm (Chain rule) để truyền ngược sai số từ lớp đầu ra về các lớp ẩn và cập nhật trọng số liên kết thông qua thuật toán hạ độ dốc (Gradient Descent).
- Kỹ thuật kiểm soát mô hình: Xử lý hiện tượng quá khớp (Overfitting) và chưa khớp (Underfitting) bằng các phương pháp phân chia dữ liệu kiểm chứng (Validation) và kiểm chứng chéo (Cross-validation, K-fold cross validation, Leave-one-out), kết hợp kỹ thuật ngắt nơ-ron ngẫu nhiên (Dropout).
Phương pháp nghiên cứu thực tế
- Thu thập và tiền xử lý dữ liệu: Dữ liệu chuỗi thời gian được chuẩn hóa (normalization) về khoảng $[0, 1]$ hoặc $[-1, 1]$ nhằm phù hợp với miền giá trị của hàm kích hoạt tại lớp đầu ra và tạo điều kiện tối ưu hóa thuật toán.
- Kỹ thuật trễ chuỗi thời gian (Lagged observations): Xác định số lượng nơ-ron lớp đầu vào tương ứng với số bước trễ thời gian trong quá khứ để dự báo giá trị tại bước tiếp theo ($t+1$).
- Thực nghiệm đối chứng tham số: Thiết lập các kịch bản thực nghiệm thay đổi lần lượt: số nơ-ron lớp ẩn, số nơ-ron lớp đầu vào, số chu kỳ huấn luyện (epoch), và số lượng lớp ẩn (so sánh mạng ANN nông 1 lớp ẩn với mạng Deep Learning nhiều lớp ẩn).
- Tiêu chuẩn đánh giá sai số: Sử dụng 6 thước đo định lượng:
- Sai số tuyệt đối trung bình (MAE): $\text{MAE} = \frac{\sum |e_t|}{N}$
- Sai số bình phương (SE): $\text{SE} = (e_t)^2$
- Tổng sai số bình phương (SSE): $\text{SSE} = \sum (e_t)^2$
- Sai số bình phương trung bình (MSE): $\text{MSE} = \frac{\sum (e_t)^2}{N}$
- Căn bậc hai của sai số bình phương trung bình (RMSE): $\text{RMSE} = \sqrt{\text{MSE}}$
- Trung bình sai số phần trăm tuyệt đối (MAPE): $\text{MAPE} = \frac{1}{N} \sum |\frac{e_t}{y_t}| \times 100$
- Thước đo thời gian thực thi (giây).
Thiết kế và triển khai hệ thống thử nghiệm
Để phục vụ quá trình đánh giá thực nghiệm và trực quan hóa kết quả dự báo, nhóm tác giả đã thiết kế và triển khai một hệ thống ứng dụng thử nghiệm với các thông số kỹ thuật được xác định rõ:
- Môi trường phần cứng: Máy tính xách tay cá nhân nhãn hiệu HP, bộ vi xử lý Intel Core i7-8565U CPU @ 1.80GHz, bộ nhớ RAM 16.00 GB, hệ điều hành 64-bit (x64-based processor).
- Môi trường phần mềm và công cụ lập trình: Môi trường phát triển tích hợp JetBrains WebStorm phiên bản 2019; hệ thống ngôn ngữ lập trình Python và JavaScript.
- Thư viện chuyên dụng: TensorFlow (xây dựng và huấn luyện mô hình mạng nơ-ron), Flask (xây dựng máy chủ web backend), Bokeh (vẽ biểu đồ tương tác), Materialize (thiết kế giao diện người dùng), Scikit-learn (tiền xử lý dữ liệu), NumPy, Pandas, OS, RE, Math, Time.
- Cấu trúc chức năng ứng dụng:
- Cho phép người dùng tùy chọn mô hình dự báo: Mạng nơ-ron nhân tạo thông thường (ANN) hoặc Mạng nơ-ron sâu (Deep learning).
- Tùy chỉnh tham số cấu trúc: Thiết lập số lượng nơ-ron lớp input, số lượng nơ-ron lớp ẩn, số lượng nơ-ron lớp output, và số epoch huấn luyện.
- Giao diện trực quan hóa kết quả gồm 3 biểu đồ: Biểu diễn toàn bộ chuỗi dữ liệu gốc; Biểu diễn chuỗi giá trị thực tế dùng cho tập kiểm tra (test set); Biểu diễn chuỗi giá trị dự báo được tạo ra từ mô hình.
- Bộ đo tự động: Tự động tính toán các chỉ số sai số định lượng (MSE, RMSE, MAE, MAPE) và thời gian thực thi của từng mô hình tương ứng.
Nội dung chính theo từng chương
Chương 1: Bài toán dự báo chuỗi thời gian
Chương này tập trung trình bày các khái niệm bản chất về chuỗi thời gian và quy trình chuẩn mực của một bài toán dự báo:
- Phân tích định nghĩa chuỗi thời gian là tập hợp các quan sát tuần tự theo mốc thời gian và làm rõ ba thành phần dao động: xu hướng dài hạn, biến động mùa vụ có tần số cố định (minh họa qua chuỗi doanh số bán thuốc tiểu đường tại Úc), và chu kỳ kinh tế kéo dài từ 2 năm trở lên.
- Phân loại dự báo theo khoảng thời gian dự tính: dự báo ngắn hạn, trung hạn và dài hạn; làm rõ vai trò của dự báo trong việc xây dựng kế hoạch hành động.
- So sánh các phương pháp tiếp cận mô hình: phân biệt mô hình giải thích nguyên nhân (sử dụng các biến như nhiệt độ, tình trạng kinh tế, dân số để giải thích nhu cầu điện $ED$) với mô hình chuỗi thời gian tự quy hồi sử dụng giá trị quá khứ ($ED_t, ED_{t-1}, ...$). Tác giả chỉ ra rằng mô hình chuỗi thời gian thuần túy có ưu thế vượt trội khi quan hệ tương tác giữa các biến quá phức tạp hoặc khi không thể có sẵn giá trị tương lai của các biến giải thích.
- Hệ thống hóa 5 bước cốt lõi trong quy trình dự báo: (1) Xác định vấn đề nghiên cứu; (2) Thu thập thông tin thống kê và tri thức nghiệp vụ; (3) Phân tích sơ bộ bằng đồ thị để phát hiện ngoại lệ, xu hướng, mùa vụ; (4) Chọn lựa và ước lượng tham số mô hình; (5) Vận hành dự báo và đánh giá sai số trên dữ liệu kiểm tra độc lập.
Chương 2: Tổng quan về Artificial Neural Network
Chương 2 cung cấp toàn bộ cơ sở lý thuyết toán học và kỹ thuật cấu trúc của mạng nơ-ron nhân tạo:
- Lịch sử phát triển: Khởi đầu từ bài báo năm 1943 của Warren McCulloch và Walter Pitts về mô hình nơ-ron logic sinh học; mô hình Perceptron của Rosenblatt (1957) sử dụng đơn vị ngưỡng tuyến tính LTU và quy tắc học Hebb; sự bế tắc trong giai đoạn Mùa đông AI đầu tiên sau nghiên cứu của Minsky & Papert (1969); sự phục hồi vào thập niên 1980 với kiến trúc Perceptron đa lớp (MLP) và giải thuật lan truyền ngược Backpropagation của Rumelhart (1986).
- Cấu trúc sinh học đối sánh: Nơ-ron sinh học truyền tín hiệu điện từ sợi nhánh qua thân đến sợi trục khi vượt qua một ngưỡng kích hoạt nhất định; mạng nhân tạo mô phỏng cơ chế này qua các hàm toán học.
- Chi tiết quy trình 7 bước áp dụng ANN cho chuỗi thời gian:
- Thu thập dữ liệu liên quan.
- Chuẩn hóa dữ liệu về đoạn $[0, 1]$ hoặc $[-1, 1]$ tương thích với hàm kích hoạt lớp xuất.
- Xác định cấu trúc mạng: Số nơ-ron input tương ứng với số bước trễ (là tham số cốt lõi nắm bắt tương quan chuỗi); Số lớp ẩn và nơ-ron ẩn (tác giả khuyến nghị nên bắt đầu từ 1 đến 2 lớp ẩn với số nơ-ron vừa phải để tránh quá khớp); Số nơ-ron output (1 nơ-ron cho dự báo một bước hoặc lặp lại theo kiểu Box-Jenkins; nhiều nơ-ron cho dự báo trực tiếp nhiều bước).
- Lựa chọn hàm kích hoạt: Sigmoid, Tanh và ReLU.
- Thiết lập tập dữ liệu: Phân chia tập huấn luyện (train), tập kiểm tra (test) và tập xác thực (validation) theo các tỷ lệ 90/10, 80/20, 70/30 hoặc kỹ thuật lấy mẫu bootstrap 10 phần của Gorr (1994).
- Xử lý hiện tượng Underfitting và Overfitting thông qua việc quan sát biến thiên sai số trên tập validation và kỹ thuật K-fold cross-validation.
- Huấn luyện mạng: Trình bày chi tiết công thức toán học của lan truyền tiến và lan truyền ngược, kèm ví dụ số học hoàn chỉnh trên một mạng 3 lớp (4 nơ-ron input, 2 nơ-ron hidden, 1 nơ-ron output, hàm kích hoạt Sigmoid, tốc độ học $\eta = 0.5$, dữ liệu mẫu gồm 4 giá trị liên tiếp dự báo giá trị thứ 5). Chương minh họa từng bước tính đạo hàm riêng $\frac{\partial SE}{\partial w}$ theo quy tắc chuỗi và cập nhật giá trị số cụ thể cho các trọng số liên kết.
- Các công thức đo lường sai số phục vụ đánh giá mô hình: MAE, SE, SSE, MSE, RMSE, MAPE. Trong đó, MSE được nhấn mạnh là thước đo phổ biến nhất.
Chương 3: Tổng quan về Deep Learning
Chương này mở rộng phạm vi nghiên cứu từ mạng nơ-ron nông sang học sâu:
- Phân định mối quan hệ phân tầng: Trí tuệ nhân tạo (AI) $\supset$ Học máy (Machine Learning) $\supset$ Học sâu (Deep Learning). Trình bày khái niệm Deep Learning như một bước tiến hóa của ANN khi mở rộng chiều sâu kiến trúc bằng cách gia tăng số lượng lớp ẩn và nơ-ron để trích xuất đặc trưng phức tạp từ lượng dữ liệu lớn.
- Phân tích tiến trình lịch sử và các giai đoạn thoái trào:
- Thập niên 1960: Perceptron và giai đoạn đóng băng thứ nhất do chỉ giải quyết được các bài toán phân tách tuyến tính.
- Thập niên 1980: Đột phá với MLP, Backpropagation và mạng tích chập (Convolutional Neural Network - CNN) cho nhận dạng chữ số viết tay.
- Thập niên 1990 - đầu 2000: Mùa đông AI thứ hai do năng lực tính toán của CPU còn yếu, thiếu dữ liệu số hóa gán nhãn, hàm mất mát phi lồi gây khó khăn cho việc tối ưu toàn cục, và vấn đề triệt tiêu đạo hàm khi mạng có nhiều tầng. Thời kỳ này, Máy véc-tơ hỗ trợ (Support Vector Machines - SVM) chiếm lĩnh nhờ bài toán tối ưu lồi rõ ràng.
- Giai đoạn phục hưng: Sự ra đời của Mạng niềm tin sâu (Deep Belief Networks - DBN) với kỹ thuật tiền huấn luyện không giám sát (unsupervised pre-training) từng lớp bằng Autoencoder, giúp khởi tạo trọng số tốt để vượt qua triệt tiêu đạo hàm trước khi tinh chỉnh (fine-tuning).
- Giai đoạn 2010 đến nay: Bước phát triển vượt bậc nhờ sự kết hợp của hàm kích hoạt ReLU, kỹ thuật điều hòa Dropout (ngắt ngẫu nhiên nơ-ron trong quá trình huấn luyện nhằm chống quá khớp tương tự mô hình kết hợp ensemble), năng lực xử lý song song tốc độ cao của bộ xử lý đồ họa (GPU), các tập dữ liệu quy mô lớn, các kiến trúc mạng hiện đại (GoogLeNet, VGG, ResNet) cùng các thuật toán tối ưu tiên tiến (Adagrad, RMSProp, Adam).
Chương 4: Đánh giá bằng thực nghiệm
Chương 4 là phần trọng tâm thực nghiệm của đồ án, tiến hành đối chứng mô hình trên các tập dữ liệu:
- Trình bày thông số môi trường phần cứng máy tính laptop HP (Core i7-8565U, RAM 16GB) và các công cụ thư viện lập trình (Python, Flask, Bokeh, TensorFlow).
- Thống kê các tập dữ liệu được đưa vào thử nghiệm:
- Google stock: Dữ liệu giá đóng cửa cổ phiếu Google từ 03/01/2005 đến 10/06/2020 (3.886 bản ghi).
- Gold price: Dữ liệu biến động giá vàng.
- Temperature LA: Dữ liệu chuỗi nhiệt độ khí tượng tại Los Angeles.
- Brent oil prices: Dữ liệu biến động giá dầu thô Brent.
- Thiết kế các kịch bản thực nghiệm độc lập trên từng tập dữ liệu:
- Kịch bản 1: Cố định các tham số khác, khảo sát sai số và thời gian khi thay đổi số lượng nơ-ron lớp ẩn.
- Kịch bản 2: Khảo sát tác động khi thay đổi số nơ-ron lớp đầu vào (số bước trễ thời gian - lag).
- Kịch bản 3: Khảo sát sự thay đổi của sai số huấn luyện và kiểm tra khi tăng giảm số lượng chu kỳ huấn luyện (epoch).
- Kịch bản 4: Khảo sát và so sánh hiệu quả giữa mạng ANN 1 lớp ẩn và mạng Deep Learning nhiều lớp ẩn (thay đổi số lớp ẩn).
- Phân tích định lượng dựa trên các bảng tổng hợp số liệu thực nghiệm (từ Bảng 4.2 đến Bảng 4.17 trong văn bản) phản ánh sự đánh đổi giữa độ chính xác dự báo (MSE, RMSE, MAE, MAPE) và thời gian thực thi thuật toán.
Kết quả và đóng góp
Khóa luận đã hoàn thành các mục tiêu nghiên cứu và nhiệm vụ đề ra với các kết quả thực nghiệm và đóng góp cụ thể:
Tổng hợp kết quả thực nghiệm
Khóa luận đã kiểm chứng chi tiết các kịch bản thực nghiệm trên 4 tập dữ liệu chuỗi thời gian, tổng hợp các quy luật vận hành của mô hình mạng nơ-ron:
| Kịch bản thực nghiệm |
Tham số khảo sát |
Chỉ số đo lường đánh giá |
Quy luật rút ra từ số liệu thực nghiệm |
| Khảo sát số nơ-ron lớp ẩn |
Biến thiên số nơ-ron trong lớp ẩn |
MSE, RMSE, MAE, MAPE, Thời gian thực thi |
Tăng số nơ-ron lớp ẩn giúp nâng cao năng lực học mẫu nhưng khi vượt quá ngưỡng tối ưu sẽ gây quá khớp và làm tăng đáng kể thời gian tính toán. |
| Khảo sát số nơ-ron lớp đầu vào |
Biến thiên số quan sát trễ (lagged inputs) |
MSE, RMSE, MAE, MAPE |
Số bước trễ quyết định cấu trúc tự tương quan đưa vào mô hình; số nơ-ron input quá ít làm mất thông tin chuỗi, quá nhiều làm tăng độ nhiễu. |
| Khảo sát số chu kỳ (Epoch) |
Biến thiên số vòng lặp huấn luyện |
Sai số tập Train, Sai số tập Test |
Tăng epoch giúp giảm sai số trên tập huấn luyện nhưng đến một giới hạn nhất định, sai số trên tập kiểm tra có xu hướng tăng trở lại (dấu hiệu quá khớp). |
| So sánh ANN và Deep Learning |
Số lượng lớp ẩn (1 lớp vs. nhiều lớp ẩn) |
Độ chính xác dự báo, Thời gian thực thi |
Mạng Deep Learning với nhiều lớp ẩn có khả năng biểu diễn quan hệ phi tuyến phức tạp hơn, tuy nhiên trên một số chuỗi thời gian đơn biến, mạng ANN 1 lớp ẩn tối ưu mang lại sai số xấp xỉ nhưng tiết kiệm tài nguyên thời gian hơn. |
Đóng góp của đề tài
- Hệ thống hóa cơ sở lý thuyết: Trình bày mạch lạc, đầy đủ từ nguồn gốc sinh học của nơ-ron đến mô hình toán học Perceptron, MLP và các kỹ thuật tiên tiến trong Deep Learning. Đặc biệt, luận văn cung cấp một ví dụ giải tích số học chi tiết từng bước cho giải thuật lan truyền ngược (Forward - Backpropagation), làm rõ phương thức hoạt động bên trong của mạng nơ-ron.
- Xây dựng ứng dụng thử nghiệm hoàn chỉnh: Hiện thực hóa thành công phần mềm demo trên nền tảng web (Flask, WebStorm, Bokeh, TensorFlow) cho phép người dùng tùy biến cấu trúc mạng (input, hidden, output, epoch), lựa chọn giữa ANN và Deep Learning, và quan sát kết quả trực quan trên hệ thống 3 biểu đồ dữ liệu.
- Thực nghiệm đối chứng đa chiều: Cung cấp hệ thống 16 bảng dữ liệu thực nghiệm chi tiết (từ Bảng 4.2 đến Bảng 4.17) đánh giá định lượng trên 4 tập dữ liệu chuỗi thời gian thuộc nhiều lĩnh vực khác nhau (chứng khoán, kim loại quý, khí tượng, năng lượng), tạo cơ sở dữ liệu đối sánh rõ ràng về mặt tham số cho bài toán dự báo chuỗi thời gian.
Hạn chế và hướng nghiên cứu tiếp
Căn cứ vào nội dung và phạm vi nghiên cứu được trình bày trong văn bản, các hạn chế và hướng mở của đề tài được ghi nhận:
Hạn chế
- Kiến trúc mô hình: Đề tài chủ yếu tập trung vào kiến trúc mạng truyền thẳng nhiều lớp (MLP/DNN feed-forward), chưa tích hợp thử nghiệm các kiến trúc mạng nơ-ron chuyên biệt cao cho dữ liệu chuỗi thời gian như mạng nơ-ron tái hồi (Recurrent Neural Network - RNN), mạng bộ nhớ dài - ngắn hạn (Long Short-Term Memory - LSTM) hay Gated Recurrent Unit (GRU).
- Phạm vi dữ liệu: Các thực nghiệm chủ yếu áp dụng trên bài toán chuỗi thời gian đơn biến (dự báo giá trị tương lai dựa trên giá trị trễ của chính chuỗi đó), chưa kết hợp mô hình hóa chuỗi thời gian đa biến có các biến ngoại sinh tác động.
- Giới hạn phần cứng: Quá trình huấn luyện và đánh giá thực nghiệm được thực hiện trên cấu hình máy tính cá nhân (CPU Intel Core i7-8565U), chưa tận dụng hệ thống tính toán phân tán hoặc tăng tốc phần cứng chuyên dụng qua GPU/TPU cho các cấu trúc học sâu có số lớp ẩn lớn.
Hướng nghiên cứu tiếp
- Mở rộng ứng dụng và cài đặt đối chứng với các kiến trúc học sâu chuyên sâu về chuỗi thời gian như LSTM, GRU hoặc mô hình Transformer trong bài toán xử lý chuỗi.
- Phát triển mô hình dự báo chuỗi thời gian đa biến, kết hợp nhiều nguồn dữ liệu giải thích bên ngoài cùng lúc để nâng cao tính chuẩn xác cho các bài toán kinh tế phức tạp.
- Tích hợp các thuật toán tìm kiếm siêu tham số tự động (Hyperparameter tuning như Grid Search, Random Search, hoặc Bayesian Optimization) để xác định cấu trúc nơ-ron tối ưu thay cho việc thử nghiệm thủ công từng trường hợp.
Giá trị tham khảo
Báo cáo khóa luận là tài liệu học thuật có giá trị tham khảo thiết thực cho nhiều nhóm đối tượng:
- Sinh viên và học viên chuyên ngành Công nghệ thông tin, Hệ thống thông tin, Khoa học dữ liệu: Tài liệu cung cấp cơ sở lý thuyết chuẩn xác, dễ tiếp cận về mạng nơ-ron nhân tạo và Deep Learning. Đặc biệt, phần giải thích cơ chế lan truyền ngược (Backpropagation) kèm ví dụ số học chi tiết trong Chương 2 là tài liệu học tập trực quan giúp nắm vững bản chất toán học của quá trình học máy.
- Người làm nghiên cứu về dự báo kinh tế - tài chính, kỹ thuật: Đề tài cung cấp khung quy trình 5 bước trong dự báo chuỗi thời gian, kỹ thuật phân chia trễ dữ liệu làm đầu vào cho mạng nơ-ron và các thước đo sai số chuẩn mực (MAE, MSE, RMSE, MAPE).
- Lập trình viên và kỹ sư phát triển phần mềm ứng dụng: Tham khảo được cách thức tích hợp mô hình máy học (Python, TensorFlow) với ứng dụng web hiển thị biểu đồ tương tác thời gian thực (Flask, Bokeh, Materialize).
- Nội dung nổi bật đáng tham khảo nhất: Tiểu mục 2.3.8 và 2.3.9 của Chương 2 (Quy trình tính toán số học chi tiết của thuật toán Forward Propagation và Backpropagation) và Chương 4 (Phương pháp thiết kế các kịch bản kiểm thử biến thiên tham số mạng nơ-ron).
Câu hỏi thường gặp
1. Đề tài sử dụng những tập dữ liệu chuỗi thời gian cụ thể nào để thực nghiệm?
Đề tài sử dụng 4 tập dữ liệu chuỗi thời gian thực tế: Giá cổ phiếu Google (Google stock) gồm 3.886 bản ghi thu thập từ Yahoo Finance trong giai đoạn từ ngày 03/01/2005 đến ngày 10/06/2020; Giá vàng (Gold prices); Nhiệt độ tại Los Angeles (Temperature LA); và Giá dầu thô Brent (Brent oil prices).
2. Thuật toán lan truyền ngược (Backpropagation) được tác giả giải thích và minh họa như thế nào?
Tác giả trình bày thuật toán gồm hai giai đoạn: lan truyền tiến để tính toán đầu ra của từng nơ-ron qua các lớp và lan truyền ngược để truyền sai số từ lớp đầu ra về các lớp trước đó dựa trên quy tắc chuỗi đạo hàm (Chain rule) nhằm cập nhật trọng số liên kết qua Gradient Descent. Trong văn bản, tác giả đưa ra một ví dụ minh họa trực quan có số liệu đầy đủ trên mạng nơ-ron 3 lớp gồm 4 nơ-ron đầu vào, 2 nơ-ron ẩn và 1 nơ-ron đầu ra, sử dụng hàm kích hoạt Sigmoid và tốc độ học $\eta = 0.5$.
3. Những hàm kích hoạt nào được nghiên cứu và sử dụng trong khóa luận?
Khóa luận nghiên cứu và phân tích ba hàm kích hoạt chính: hàm Sigmoid ($\sigma(x) = \frac{1}{1 + e^{-x}}$, dải giá trị $[0, 1]$), hàm Hyperbolic Tangent ($\tanh(x)$, dải giá trị $[-1, 1]$), và hàm đơn vị chỉnh lưu ReLU ($f(x) = \max(0, x)$).
4. Ứng dụng demo do nhóm tác giả xây dựng có những chức năng và công nghệ gì?
Ứng dụng được lập trình bằng Python và JavaScript trên nền tảng JetBrains WebStorm 2019, sử dụng backend Flask, thư viện học máy TensorFlow và giao diện Materialize, Bokeh. Ứng dụng cho phép người dùng tùy chọn mô hình dự báo (ANN hoặc Deep Learning), cấu hình số nơ-ron các lớp (input, hidden, output) và epoch, đồng thời hiển thị kết quả trên 3 biểu đồ trực quan (chuỗi toàn bộ, chuỗi thực tế kiểm tra, chuỗi dự báo) kèm bảng tính sai số và thời gian thực thi.
5. Sự khác biệt cơ bản giữa mô hình ANN và Deep Learning được định nghĩa như thế nào trong khóa luận?
Trong văn bản, Perceptron đa lớp (MLP) bao gồm lớp đầu vào, một hoặc nhiều lớp ẩn và lớp đầu ra. Khi mạng nơ-ron nhân tạo có từ hai lớp ẩn trở lên, nó được gọi là mạng nơ-ron sâu (Deep Neural Network - DNN) hay Deep Learning. Deep Learning mở rộng số lượng lớp và nơ-ron để trích xuất các mẫu dữ liệu phức tạp hơn từ các tập dữ liệu có quy mô lớn.
Kết luận
Khóa luận tốt nghiệp "Tìm hiểu mô hình ANN và ứng dụng trong bài toán dự báo chuỗi thời gian" của sinh viên Lê Thị Hồng Nga và Nguyễn Ngọc Trúc Linh đã hệ thống hóa toàn diện cơ sở lý thuyết về mạng nơ-ron nhân tạo và học sâu, từ các nguyên lý toán học nền tảng đến các giải thuật tối ưu hóa hiện đại. Nhóm tác giả đã xây dựng thành công ứng dụng thử nghiệm tương tác và triển khai các kịch bản đánh giá thực nghiệm đa biến trên 4 tập dữ liệu chuỗi thời gian thực tế thuộc các lĩnh vực tài chính, khí tượng và năng lượng. Kết quả nghiên cứu cung cấp cái nhìn định lượng rõ ràng về mối quan hệ giữa cấu trúc tham số mạng (số nơ-ron ẩn, bước trễ đầu vào, số chu kỳ huấn luyện và độ sâu mạng) với độ chính xác dự báo và chi phí tính toán.