Mạng nơ ron để huấn luyện dữ liệu

Một phần của tài liệu Dự đoán dòng tiền dựa vào thu nhập của cơ sở kinh doanh (Trang 76 - 79)

4.3.1.Tiền xử lí dữ liệu

Dữ liệu được mang vào nghiên cứu được lấy từ giá vàng, các báo cáo tài chính và các chỉ số chứng khoán thuộc cùng một công ty. Cụ thể, ta sẽ sử dụng báo cáo tài chính của công ty Google cho việc phân tích dữ liệu. Báo cáo tài chính được sử dụng gồm 3 loại: báo cáo tiền tệ, báo cáo dòng tiền, báo cáo bảng cân đối kế toán từ năm 2003 đến năm 2020. Sau khi nội sinh dữ liệu, lấy giao các điểm có giá trị thuộc cùng một ngày của tập dữ liệu trên, ta thu được lượng dữ liệu là 5800 điểm dữ liệu.

Sau khi xử lí, các trường dữ liệu được chọn đưa vào mô hình gồm 42 trường là các chuỗi dữ liệu đã được nội suy từ mục 4.2

Vì dữ liệu hiện có có những chuỗi có quy luật tăng trưởng không đồng đồng nhất. Để tăng hiệu quả huấn luyện và sử dụng tối đa giá trị dữ liệu, tôi sử dụng phương pháp K-Fold cross validation để huấn luyện mô hình.

Dữ liệu trước khi được đưa vào mô hình sẽ được scale in trong khoảng [-1,1] nhằm mục đích gia tăng tính nhanh hội tụ của mô hình.

4.3.2. Mô hình huấn luyện

Chúng ta sẽ lần lượt thử nghiệm độ đúng đắn của từng mô hình nơ ron để chọn ra mô hình phù hợp với bài toán được nêu. Hai mô hình được đem ra so sánh là mô hình mạng nơ ron đơn giản với lớp ẩn là Dense layer và mô hình LSTM với cùng số lượng units, batch_size như nhau, số lớp như nhau. Hai mô hình này đều sử dụng hàm loss là “Mean Square Error”, metric là “Mean Absolute Error”. Với lần thử nghiệm này, chúng ta sẽ thử với số epochs = 200.

67

Mô hình sử dụng các lớp ẩn là LSTM cũng tương tự, chỉ việc thay thế các lớp ẩn bằng các lớp LSTM có cùng số units.

Dưới đây là kết quả ghi nhận hàm loss của hai mô hình qua phương pháp training có sử dụng cross validation

Hình 4.28 Trực quan độ lỗi quá trình training và test mô hình mạng nơ ron đơn giản qua 3 lần thực nghiệm

Hình 4.29 Trực quan độ lỗi quá trình training và test mô hình mạng nơ ron sử dụng các lớp ẩn là LSTM qua 3 lần thực nghiệm

68 Kết quả huấn luyện:

- Đối với mô hình mạng nơ ron thông thường, việc huấn luyện mất 28 phút 9 giây, với kết quả test có giá trị trung bình lần lượt loss mse = 0.000071, mae = 0.006578

- Đối với mô hình mạng nơ ron có sử dụng các lớp ẩn là LSTM, việc huấn luyện mất đến 7 giờ 12 phút 35 giây, với kết quả test có giá trị trung bình lần lượt loss mse = 0.001450, mae = 0.011612.

Nhận xét: Nhìn vào hình ảnh hàm loss thu được qua việc training hai mô hình, ta thấy việc sử dụng lớp LSTM vào mạng nơ ron không những khiến mô hình trở nên cồng kềnh hơn, khiến việc huấn luyện mất khá nhiều thời gian, mà kết quả sai số thu được trong quá trình test cũng không tốt bằng mạng nơ ron đơn giản. Trong quá trình huấn luyện, mô hình mạng nơ ron đơn giản cũng cho thấy việc học được tốt hơn, bằng chứng là hàm lỗi ở Hình 4.28 có sự biến động liên tục qua 3 lần huấn luyện.

Để trực quan rõ hơn khả năng dự đoán của mô hình mạng nơ ron đơn giản, ta sẽ quan sát hình ảnh dưới với các giá trị đầu vào là các giá trị thực.

Việc dự đoán ban đầu cho kết quả khá tốt, tuy nhiên có những khoảng thời gian, độ chính xác bị sai lệch. Mặc dù có xảy ra sự sai lệch trong quá trình dự đoán, nhưng kết quả dự đoán vẫn giữ được nét đặc trưng của dữ liệu (chiều lên xuống của dữ liệu gốc và dữ liệu dự đoán là đồng điệu). Sự sai lệch này có thể được giải thích do việc nội suy có sai số ở một vài chuỗi như đã trình bày ở mục 4.2.

Hình 4.30 Trực quan kết quả dựđoán của mạng nơ ron đơn giản với các giá trịđầu vào là giá trị thực tế

69

Một phần của tài liệu Dự đoán dòng tiền dựa vào thu nhập của cơ sở kinh doanh (Trang 76 - 79)

Tải bản đầy đủ (PDF)

(93 trang)