CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1. Tổng quan về dữ liệu trên chuỗi thời gian 1. Định nghĩa Chuỗi thời gian là một chuỗi các điểm dữ liệu xuất hiện theo thứ tự tuần tự trong một khoảng thời gian. Chuỗi thời gian theo dõi chuyển động của các điểm dữ liệu đã chọn, chẳng hạn như giá của chứng khoán, trong một khoảng thời gian xác định, nhiệt độ qua các năm, thời tiết, lượng mưa của một số quốc gia.
[1] Dữ liệu chuỗi thời gian được định nghĩa là tập hợp các quan sát 𝑥1 , 𝑥2 ,. , 𝑥𝑛 , trong đó mỗi quan sát 𝑥𝑖 là một giá trị thực được thu thập tại thời điểm 𝑡𝑖. Các đặc điểm Dữ liệu chuỗi thời gian có một số đặc điểm sau: [1] • Xu hướng (trend): Thường có sự thay đổi theo thời gian, có thể là tăng, giảm hoặc không đổi. Xu hướng có thể làm sáng tỏ hướng diễn biến dài hạn của dữ liệu.
Ví dụ, thời tiết thường có xu hướng thay đổi theo mùa. • Mùa vụ (seasonality): Có sự biến đổi lặp lại theo các chu kỳ cố định, thường là hàng năm hoặc theo quý, do yếu tố như mùa và thời tiết. Ví dụ, sản lượng bán bia mùa hè sẽ cao hơn vào mùa đông. • Chu kỳ (cycle): Một biến động dài hạn hoặc có chu kỳ, thường kéo dài hơn mùa vụ và có thể không lặp lại cố định.
Ví dụ, chu kỳ kinh tế thường có chu kỳ khoảng 5-10 năm. • Bất thường (irregular remainder): Là các biến động không thường xuyên và không thể dự đoán trong dữ liệu chuỗi thời gian, thường do các sự kiện đặc biệt hoặc ngẫu nhiên. Ví dụ, một cửa hàng trải qua thời kỳ đại dịch Covid dẫn tới việc đóng của tạm thời và giảm doanh số bán hàng trong một khoảng thời gian nhất định. Các ứng dụng • Tài chính và Chứng khoán: Dự báo giúp nhà đầu tư đưa ra quyết định đầu tư thông minh dựa trên giá cổ phiếu, tỷ giá hối đoái và lãi suất.
• Sản xuất và Logistics: Dự báo giúp quản lý tồn kho, kế hoạch sản xuất và vận chuyển hàng hóa hiệu quả. • Thương mại điện tử: Dự báo hỗ trợ kế hoạch tiếp thị, quảng cáo và quản lý hàng tồn kho dựa trên hành vi mua sắm của khách hàng. • Y tế: Dự báo giúp dự đoán số ca nhiễm bệnh và quản lý tình trạng sức khỏe cộng đồng. • Dự báo thời tiết: Dự báo giúp chuẩn bị cho điều kiện thời tiết bất lợi và quản lý rủi ro.
Giới thiệu về dự báo dữ liệu chuỗi thời gian 1. Định nghĩa dự báo dữ liệu chuỗi thời gian Dự báo chuỗi thời gian là một kỹ thuật sử dụng để dự đoán các sự kiện trong tương lai dựa trên việc phân tích các mẫu trong quá khứ của một chuỗi thời gian. Quá trình này giả định rằng các xu hướng trong tương lai sẽ có xu hướng tương tự như những gì đã được quan sát trong quá khứ. [2] Các ví dụ về dữ liệu chuỗi thời gian bao gồm: • Giá vàng hàng ngày.
• Nhiệt độ trung bình hàng năm. • Lượng mua từng khu vực theo mùa. • Nhu cầu tải điện hàng tuần. Các yếu tố ảnh hưởng đến dự báo dữ liệu chuỗi thời gian Có nhiều yếu tố có thể ảnh hưởng đến độ chính xác của dự báo dữ liệu chuỗi thời gian: • Đặc điểm của chuỗi thời gian: Các chuỗi thời gian có thể có các đặc điểm khác nhau như xu hướng tăng hoặc giảm, biến động ngẫu nhiên.
Những điều này sẽ ảnh hưởng đến lựa chọn mô hình dự báo phù hợp nhất. 4 • Số lượng dữ liệu: Số lượng dữ liệu lịch sử càng nhiều thì độ chính xác của dự báo càng cao. Tuy nhiên, quá nhiều dữ liệu có thể dẫn đến hiện tượng overfitting, khi mô hình dự báo trở nên quá phức tạp và không phản ánh đúng xu hướng chung của dữ liệu. • Các biến nhiễu: Các biến nhiễu là những yếu tố không thể dự đoán trước và gây ra sự biến động trong chuỗi thời gian.
Sự hiện diện của các biến nhiễu có thể ảnh hưởng đến độ chính xác của dự báo bằng cách làm nhiễm bẩn dữ liệu hoặc làm mất đi tính đồng nhất của chuỗi thời gian.3 Các nghiên cứu liên quan Trong lĩnh vực dự đoán giá trị chuỗi thời gian, đã có nhiều nghiên cứu được thực hiện nhằm tìm ra các mô hình dự đoán hiệu quả nhất. Nghiên cứu đầu tiên của A. Ayo với tựa đề "Stock Price Prediction Using the ARIMA Model" [3] (Dự đoán giá cổ phiếu sử dụng mô hình ARIMA), được trình bày tại Hội nghị Quốc tế lần thứ 16 về Mô hình hóa và Mô phỏng Máy tính UKSim- AMSS năm 2014, đã nghiên cứu việc sử dụng mô hình ARIMA (Auto Regressive Integrated Moving Average) trong việc dự đoán giá cổ phiếu. Nghiên cứu này cho thấy mô hình ARIMA có khả năng xử lý dữ liệu chuỗi thời gian và có thể dự đoán giá cổ phiếu với độ chính xác tương đối cao.
Các tác giả đã chứng minh rằng mô hình ARIMA là một công cụ hữu ích trong việc phân tích và dự đoán biến động của thị trường chứng khoán. El-Baz và S. Al-Salkhadi đã thực hiện một nghiên cứu khác với tiêu đề "Predicting Stock Prices Using Polynomial Classifiers: The Case of Dubai Financial Market" [4] (Dự đoán giá cổ phiếu sử dụng bộ phân loại đa thức: Trường hợp của thị trường tài chính Dubai), được công bố trên tạp chí Journal of Intelligent Learning Systems and Applications năm 2011. Nghiên cứu này áp dụng các bộ phân loại đa thức để dự đoán giá cổ phiếu trên thị trường tài chính Dubai.
Kết quả của nghiên cứu chỉ ra rằng các bộ phân loại đa thức có thể mang lại kết quả dự đoán tốt, đặc biệt khi xử lý dữ liệu có tính phi tuyến cao. Đây là một phương pháp tiếp cận khác so với mô hình ARIMA và thể hiện sự đa dạng trong việc sử dụng các mô hình dự đoán trong lĩnh vực tài chính. Cuối cùng, nghiên cứu của L. Chaudhry với tựa đề "An ARIMA-ANN Hybrid Model for Time Series Forecasting" [5] (Mô hình lai ARIMA-ANN cho dự báo chuỗi thời gian), được xuất bản trên tạp chí Systems Research and Behavioral Science năm 2013, đã kết hợp mô hình ARIMA với mạng nơ-ron nhân tạo (ANN) để tạo ra một mô hình lai nhằm cải thiện độ chính xác của dự đoán chuỗi thời gian.
Nghiên cứu này cho thấy mô hình lai ARIMA-ANN có thể khắc phục những hạn chế của từng mô hình riêng lẻ và cung cấp dự đoán chính xác hơn so 5 với việc sử dụng mô hình ARIMA hoặc ANN đơn lẻ. Đây là một minh chứng cho sự tiến bộ trong việc kết hợp các kỹ thuật truyền thống và hiện đại để nâng cao hiệu quả dự đoán. Những nghiên cứu trên không chỉ cung cấp cái nhìn tổng quan về các phương pháp dự đoán giá cổ phiếu mà còn mở ra hướng đi mới trong việc kết hợp các mô hình khác nhau nhằm nâng cao độ chính xác và hiệu quả của các dự đoán trong lĩnh vực tài chính. 6 CHƯƠNG 2: MÔ HÌNH POLYNOMIAL CLASSIFIER 2.
Tổng quan về đa thức Trong toán học, “Đa thức” là biểu thức bao gồm các biến và các hệ số, và chỉ dùng các phép cộng, phép trừ, phép nhân, và lũy thừa với số mũ tự nhiên của các biến. - 𝒙: là biến số. - 𝒂𝟎 , 𝒂𝟏 , …: là các hệ số, có thể là các số nguyên, số thập phân, hoặc biểu thức khác. Ví dụ: ● 𝑃(𝑥) = 6𝑥 2 + 14𝑥 − 6 là một đa thức bậc 2 ● 𝑃(𝑥) = 𝑥 − 3 là một đa thức bậc 1.
Đa thức thường được phân loại dựa trên một số thuộc tính chính như bậc, số biến, hệ số, và tính chất đặc biệt của chúng. Các đa thức thường được sử dụng để mô hình hóa các mối quan hệ và phân tích dữ liệu trong nhiều lĩnh vực toán học và khoa học khác nhau, chẳng hạn như đại số, hình học, và thống kê. Tổng quan về Polynomial Classifier Bộ phân lớp đa thức là một công cụ hữu ích để mô hình hóa các mối quan hệ đầu vào/đầu ra bằng cách định rõ một tập hợp các tham số, được gọi là trọng số, đảm bảo rằng việc ánh xạ các vectơ đặc trưng đa chiều, đại diện cho chuỗi đầu vào, đến chuỗi đầu ra tương ứng diễn ra một cách hiệu quả. Trong trường hợp cụ thể của dự đoán thời tiết, chúng ta sử dụng giá trị của những ngày trước đó của thời tiết cụ thể 7 để tạo ra một chuỗi các vectơ đặc trưng đầu vào.
Sau đó, bằng cách sử dụng bộ phân lớp đa thức, chúng ta có thể dự đoán giá trị thời tiết trong tương lai dựa trên mỗi vectơ đặc trưng đầu vào. [4] Ví dụ: Giả sử chúng ta có dữ liệu đầu vào, tức là giá cổ phiếu của 5 ngày gần đây, $50, $52, $55, $53 và $51. Từ chuỗi giá trị cổ phiếu ban đầu, bộ phân lớp đa thức có khả năng dự đoán giá cổ phiếu của ngày thứ 6, có thể $52. Ứng dụng Polynomial Classifier trong dự báo dữ liệu chuỗi thời gian Các bước tiến hành: Bước 1: Xây dựng ma trận đầu vào 𝑋 từ tập dữ liệu thời tiết và ma trận nhiệt độ thực tế cho các dự đoán 𝑇.
Ma trận 𝑋 được hình thành từ tập dữ liệu đầu vào có 𝑛 dòng và 𝑑 cột (𝑋𝑛∗𝑑 ) có 𝑛 ∗ 𝑑 phần tử. Ma trận 𝑇 được hình thành từ tập dữ liệu đầu vào có 𝑛 dòng và 𝑡 cột (𝑇𝑛∗𝑡 ) có 𝑛 ∗ 𝑡 phần tử. Giá trị của 𝑑 và 𝑡 do người dùng quyết định. Mỗi dòng tiếp theo của ma trận 𝑋 và 𝑇 sẽ là nhiệt độ của ngày tiếp theo của dòng trước.
Hình 1: Ma trận 𝑿 và ma trận 𝑻 8 Trong đó: ● 𝒅: là số ngày dùng để dự đoán cho giá trị nhiệt độ tiếp theo, do người dùng quy định. ● 𝒏: số dòng của ma trận 𝑋 và ma trận 𝑇 (𝑛 = số dòng dữ liệu của tập train − 𝑑 – 𝑡 + 1). ● 𝒕: số ngày mà ta muốn dự đoán giá giá trị nhiệt độ từ d ngày trước đó. ● 𝒙𝟏 , 𝒙𝟐 , 𝒙𝒏 : Các vector chứa giá trị nhiệt độ của 𝑑 ngày mà ta muốn dùng để dự đoán.
● 𝒕𝟏 , 𝒕𝟐 , 𝒕𝒏 : Các vector chứa giá trị nhiệt độ của 𝑡 ngày mà ta muốn dự đoán. ● 𝒂𝟏 , 𝒂𝟐 , 𝒂𝒏 : Giá trị nhiệt độ mỗi ngày. Bước 2: Xây dựng hàm 𝒑(𝒙𝒊 ) dưới dạng đa thức. Trong đó: ● 𝑥𝑖 là vector chứa các giá trị tương ứng với dòng thứ 𝑖 của ma trận 𝑋.