Hàm truyền: Bằng kỹ thuật cố định các thông số khác, thay đổi hàm truyền để đánh giá các hàm truyền phù hợp với bộ dữ liệu học. kết quả xác định hàm truyền đƣợc sử dựng trong mạng có dạng. 𝑦= 2 1 + 𝑒−2𝑥 −1 Đồ thị của hàm truyền đƣợc vẽ nhƣ hình 4.3. Hình 4.3: Đồ thị của hàm truyền 4.3. Huấn luyện mạng
Nhƣ chúng ta đã biết giá trên các sàn giao dịch thƣờng biến đổi liên tục và không lặp lại theo một chiều hƣớng hay phạm vi. Điều này gây khó khăn khi tìm một
55 nơ ron đầu vào 3 lớp ẩn, mỗi lớp có 14 noron 1 nơ ron đầu ra 5 1 n ơ ro n 12 nơ ro n 1 2 n ơ ro n 1 2 n ơ ro n
bộ dữ liệu đủ mạnh để bao phủ hết các biến thiên của thị trƣờng để mạng học. Vậy giải pháp thu thập một bộ dữ liệu tốt là khó có thể thực hiện. Giải pháp đƣa ra trong trƣờng hợp này là mạng cần phải học liên tục để học đƣợc các biến đổi, đánh giá ƣớc lƣợng đƣợc biến thiên của thị trƣờng để đƣa ra kết quả dự đoán tốt nhất.
Sử dụng thuật toán lan truyền ngƣợc mạng nơ ron thực hiện học trên bộ dữ liệu học. Mạng sẽ dừng học khi thỏa mãn một trong hai điều kiện, một là đạt đƣợc lỗi mong muốn, và số lần lặp tối đa trên bộ dữ liệu. Quan sát mạng học trong nhiều lần huấn luyện tác giả nhận ra rằng. Sai số lỗi tối đa theo công thức (2.11) của mạng nhanh đạt tới ngƣỡng lỗi 0.0004 và chậm dần tiến tới các ngƣỡng sau đó. Giá trị lỗi càng nhỏ thì mạng càng mất nhiều thời gian để huấn luyện. Giá trị dự đoán của mạng trên tập đánh giá càng kém dần khi vƣợt qua ngƣỡng cần thiết. Đây là hiện tƣợng overfitting của mạng. Qua nhiều thực nghiệm liên tiếp chúng ta xác định đƣợc ngƣỡng lỗi ở mức 0.000299. Và để đạt tới giá trị lỗi trên mạng cần thực hiện số lần lặp tối đa cho phép là 8000 lần.
Hình 4.4: Đồ thị lỗi trong qua trình huấn luyện
4.4. Đánh giá mô hình mạng
4.4.1 So sánh kết quả của mạng với mô hình tƣơng đƣơng
Để đánh giá đƣợc mô hình mạng lựa chọn chúng ta sử dụng mô hình mạng dùng các tham số của ngày hôm trƣớc để dự báo giá của ngày hôm sau (sau đây đƣợc gọi là mô hình 1 point). So sánh kế quả với mô hình mạng dự trên quy tắc 5 điểm trên (sau đây đƣợc gọi là mô hình 5 point). So sánh đƣợc thực hiện trên mã giao dich KCZ, sử dụng tập dữ liệu đánh giá năm 2013.
Mô hình mạng 1 point đƣợc sử dụng có các thông số kỹ thuật mạc định của mã nguồn mở. Hệ số bias =1, mạng có mô hình nhƣ Hình 4.2. Mạng sẽ dừng học khi đạt một trong hai tiêu chuẩn đánh giá là lỗi MSE = 0.000299 và số lần học là 8000 lần.
Chúng ta cùng quan sát biểu đồ dự đoán của mạng 1 point và mạng 5 point trong Hình 4.5 và 4.6.
Hình 4.5: Kết quả dự báo và giá trị thực mạng 1 point
Hình 4.6: Kết quả dự báo và giá trị thực mạng 5 point
Quan sát đồ thị Hình 4.5 ta thấy giá trị dự đoán của mạng đƣờng màu xanh biến động lên xuống xung quanh đƣờng giá trị thực đƣờng màu đỏ. Xét trên toàn đƣờng đi, giá trị giữa hai điểm có khoảng cách rõ. Trên đồ thị Hình 4.6 đƣờng giá trị thực màu đỏ, đƣờng dự báo màu xanh. Ta thấy đƣờng màu xanh biến thiên xung quanh đƣờng màu đỏ. Các giá trị dự đoán và gia trị thực có khoảng cách nhỏ ít nhận thấy trên đồ thị. Bằng quan sát biểu đồ đƣờng thẳng ta thấy mạng 5 point có giá trị dự báo chính xác hơn mạng 1 point. Cụ thể hai đƣờng giá trị thực và dự đoán trên đồ thị sát nhau hơn.
Quan sát biểu đồ tƣơng quan giữa hai mạng Hình 4.7 và Hình 4.8 ta thấy rằng. Trên đồ thị tƣơng quan của mạng 1 point các điểm nằm sát trên đƣờng trung bình. Tuy nhiên vẫn còn điểm ngoại lại nằm xa đƣờng trung bình. Khảng cách giữa đƣờng biên lớn nhất tới đƣờng trung bình là lớn. Trong biểu đồ tƣơng quan mạng 5 point ta thấy các điểm nằm sát đƣờng trung bình hơn mạng 1 point, khảng cách từ đƣờng biên lớn
về tới đƣờng trung bình là nhỏ hơn. Quan quan sát biểu đồ tƣơng quan ta thấy độ ổn định của mạng 5 point trên các điểm có khoảng cách cách đều đƣờng trung bình hơn, và khoảng cách tới đƣờng trung bình nhỏ hơn. Bảng sẽ mô tả so sánh trên các thông số cụ thể.
Hình 4.7: Biểu đồ tương quan KCZ 13- 1 point
100 105 110 115 120 125 130 135 100 105 110 115 120 125 130 135 100 105 110 115 120 125 130 135 100 105 110 115 120 125 130 135
Mạng 1 point Mạng 5 point Sai số quân phƣơng (MSE) 9.759472912 3.191979148 Sai số tuyệt đối (MAE) 2.428571459 1.464473169 Hệ số tƣơng quan (r) 0.91400 0.96785
Bảng 4.7: So sánh mạng 1 point và 5 point
So sánh về giá trị lỗi bình quân ta thấy mạng 1 point lớn hơn mạng 5 point gấp 3 lần giá trị. So sánh trên sai số tuyệt đối thì mạng 5 point gấp 1.66 lần mạng 1 point. Thực hiện so sánh với một số mã giao dịch khác ta thu đƣợc giá trị trong Bảng 4.8:
Mã giao dịch
Mạng 1 point Mạng 5 point
Lỗi MSE Hệ số tƣơng quan
Lỗi MSE Hệ số tƣơng quan KCN 91.10655933 0.95912 4.923479839 0.98060 CTN 41.97306720 0.58605 2.695210526 0.85310 SBN 1.289069908 0.55724 0.067341959 0.94320 CCN 7990.879611 0.75407 562.3320663 0.96312
Bảng 4.8: Bảng so sánh mạng 1 point và 5 point trên các mã giao dịch
Từ kết quả trên cho thấy mạng 5 point hoạt động hiệu quả hơn so với mạng 1 point. Đồng thời kết quả đánh giá trên các hệ số lỗi và hệ số tƣơng quan chính xác hơn mạng 1 point.
4.4.2. Đánh giá kết quả dự đoán.
Quan sát đồ thị tƣơng quan của mã giao dịch KCZ13 trên hình 4.8 ta thấy. Đƣờng trung bình cắt ngang qua một số điểm trên đồ thị, các điểm hội tụ xung quanh đƣờng trung bình. Theo kết quả dự báo mạng trong Bảng 4.9 ta thấy trong ngày 02/07/2013 mạng dự báo chính xác giá đóng của. Sai số tuyệt đối trên tập dữ liệu kiểm tra (theo công thức 2.9) MAE = 1.46.
Ngày Giá trị Thực
Giá trị dự
đoán Ngày Giá trị Thực
Giá trị dự
đoán Ngày Giá trị Thực
Giá trị dự đoán 7/1/2013 123.35 124.64 8/16/2013 124.7 124.82 10/3/2013 114.45 113.29 7/2/2013 124.65 124.65 8/19/2013 123.65 121.29 10/4/2013 115.35 114.36 7/3/2013 127.3 125.31 8/20/2013 122.75 121.69 10/7/2013 114.4 114.99 7/5/2013 124.4 126.93 8/21/2013 118.8 120.75 10/8/2013 114.5 114.81 7/8/2013 124.25 126.12 8/22/2013 117.15 116.80 10/9/2013 115.05 113.44 7/9/2013 126.3 125.96 8/23/2013 117.05 119.49 10/10/2013 115.25 115.87 7/10/2013 125.1 125.99 8/26/2013 117.05 117.60 10/11/2013 114.4 116.90 7/11/2013 124.5 125.47 8/27/2013 117.75 116.99 10/14/2013 116.7 115.75 7/12/2013 126.15 125.86 8/28/2013 116.75 117.23 10/15/2013 117 117.19 7/15/2013 122.2 124.02 8/29/2013 118.45 118.40 10/16/2013 116.45 116.86 7/16/2013 125.85 124.50 8/30/2013 117.65 118.66 10/17/2013 115.85 116.14 7/17/2013 128.25 126.07 9/3/2013 116.3 118.70 10/18/2013 114.7 116.03 7/18/2013 130.05 126.64 9/4/2013 117.2 117.63 10/21/2013 114.65 116.09 7/19/2013 129.8 129.13 9/5/2013 116.85 117.43 10/22/2013 112.7 114.83 7/22/2013 125.15 129.90 9/6/2013 116.85 116.93 10/23/2013 111.95 113.74 7/23/2013 127.85 124.33 9/9/2013 117.85 117.50 10/24/2013 110.55 112.94 7/24/2013 128.75 130.66 9/10/2013 118.05 118.12 10/25/2013 110.3 109.38 7/25/2013 123.95 127.45 9/11/2013 116.65 115.39 10/28/2013 109.1 110.85 7/26/2013 127.3 123.79 9/12/2013 120.8 115.99 10/29/2013 107.55 108.37 7/29/2013 124.25 125.88 9/13/2013 120.6 120.22 10/30/2013 106.95 106.91 7/30/2013 123.45 122.63 9/16/2013 120 118.58 10/31/2013 106.85 106.26 7/31/2013 122.95 124.77 9/17/2013 119.25 117.41 11/1/2013 105.4 107.73 8/1/2013 121.3 122.37 9/18/2013 114.95 116.89 11/4/2013 105.55 104.91 8/2/2013 118.35 121.78 9/19/2013 114.9 117.96 11/5/2013 103.7 104.34 8/5/2013 121.05 119.57 9/20/2013 115.8 114.57 11/6/2013 103.45 104.09 8/6/2013 122.5 121.85 9/23/2013 114.65 115.78 11/7/2013 101.5 102.69 8/7/2013 120.7 123.07 9/24/2013 117.05 114.69 11/8/2013 103.95 102.07 8/8/2013 123.8 121.19 9/25/2013 117.85 118.85 11/11/2013 104.05 104.31 8/9/2013 124.8 123.31 9/26/2013 117.25 115.12 11/12/2013 103.25 104.10 8/12/2013 125.6 122.91 9/27/2013 115.65 117.01 11/13/2013 105.8 103.79 8/13/2013 126.1 123.84 9/30/2013 113.7 115.74 11/14/2013 103.05 105.95 8/14/2013 123 125.16 10/1/2013 113.7 113.14 11/15/2013 102.6 104.68 8/15/2013 125.3 123.74 10/2/2013 114.1 115.04
Bảng 4.9: Kết quả dự đoán mã giao dịch KCZ13
Thực hiện dự đoán trên mã giao dịch KCN13 ta thu đƣợc biểu đồ Hình 4.9. Lỗi MSE = 4.923479839, Lỗi MAE = 1.808710826.
Hình 4.9: Dự đoán giá close của giao dịch KCN13
Hình 4.10: Biểu đồ tương quan dự đoán mã giao dịch KCN13
Trên biểu đồ đƣờng dự đoán và đƣờng giá trị thực của mã giao dịch trên Hình 4.9 ta thấy đƣờng màu xanh dự đoán tín về sát đƣờng màu đỏ kết quả thực. Các khoảng cách giữa 2 đƣờng là không đáng kể. Trên đồ thị tƣơng quan ta thấy các điểm của đồ thị nằm sát với đƣờng trung bình. Đƣờng biên ngoài xa của đồ thị cũng tiến sát về đƣờng trung bình. Có nhiều điểm trên đồ thị có đƣờng trung bình đi qua. Các đồ thị trên Hình 4.9, 4.10 cho thấy kết quả dự đoán trên mã giao dịch KCZ có độ chính xác cao.
4.5. Giới thiệu ứng dụng dự đoán giá
Ứng dụng đƣợc xây dựng với đầu vào là dữ liệu thô và đầu ra là giá trị dự đoán của mạng trong ngày kế tiếp. Giao diện của ứng dụng nhƣ Hình 4.11. Ứng dụng tách biệt với ba phần chính. Huấn luyện mạng, dự đoán, đồ thị so sánh giá trị thực và giá trị dự báo. 115 120 125 130 135 140 145 150 155 160 165 115 120 125 130 135 140 145 150 155 160 165
Hình 4.11: Giao diện ứng dụng dụ đoán.
4.5.1. Huấn luyện mạng
Thực hiện thiết lập địa chỉ lƣu trữ các file csv chứa dữ liệu thô các tham số đầu vào. Trên giao diện Hình 4.11 ta thấy, các địa chỉ lƣu trữ file tham số đầu vào đƣợc chọn và hiển thị trên các ô nhập. Các thông số của mạng đƣợc cấu hình ở bên phải ứng dụng. Trên Hình 4.11 là mạng 3 lớp ẩn, mỗi lớp ẩn chứa 14 nơ ron.
Thực hiện nhập thời gian huấn luyện mạng. Thời gian bắt đầu và kết thúc huấn luyện trên bộ dữ liệu huấn luyện. Thời gian thiết lập là ngày giao dịch của các mã trên sàn giao dịch. Sau khi thiết lập các thông số trên chúng ta chọn nút “start” để thực hiện huấn luyện mạng. Các thông số, số lần lặp trên tập dữ liệu và lỗi tối đa đạt đƣợc của huấn luyện không đƣợc tham số bên ngoài ứng dụng. Các thông tin này đƣợc chỉ định trong ứng dụng. Trong quá trình huấn luyện muốn dừng huấn luyện thì chọn nút “stop”, khi đó mạng sẽ dừng huấn luyện và ghi nhận giá trị trọng số tại thời điểm dừng. Kết thúc quá trình huấn luyện có thể lƣu thông tin mạng xuống ổ cứng khi nhấn nút “save”. File lƣu trữ dạng binary có đuôi mở rộng “.ntwrk”. Mạng sẽ tự động dừng khi đạt số lỗi tối đa hoặc số lần lặp trên bộ dữ liệu. Kết thúc quá trình huấn luyện ta có biểu đồ lỗi trong quá trình huấn luyện.
Hình 4.12: Giao diện hiển thị biểu đồ lỗi trong quá trình huấn luyện
4.5.2. Dự đoán giá
Sau khi kết thúc huấn luyện, chúng ta kiểm tra khả năng của mạng trên bộ dữ liệu kiểm tra. Thực hiện nhập từ ngày kiểm tra tới ngày kết thúc kiểm tra trên “tab Predic”, sau đó nhấn nút “Predic” để ứng dụng thực hiện dự báo trên dữ liệu kiểm tra.
Hình 4.13: Giao diện ứng dụng kiểm tra dự đoán
Kết quả dự đoán đƣợc hiển thị trong grid với các cột ngày, giá trị thực tế, giá trị dự đoán và sai số tuyệt đối tƣơng ứng. Úng dụng cung cấp chức năng dự đoán từ một mạng đã học bằng cách đọc file mạng đã kết xuất trong tab Predic. Ngoài ra ứng dụng hỗ trợ kết xuất giá trị dự đoán của mạng ra file định dạnh csv. Để thực hiện kế xuất giá trị dự đoán, thực hiện nhấn nút “Export results” trên “tab Predic”. Khi nhấn nút “Predic” ứng dụng cũng hiển thị biểu đồ so sánh kết quả thực và kết quả dự đoán bên “tab Graph”. Biểu đồ thể hiện hai đƣờng màu đỏ là giá trị thực tế, đƣờng màu xanh là giá trị tính toán của mạng.
Hình 4.14: Giao diện tab Graph
Kết luận
Trong chƣơng này tác giả đã giới thiệu khái quát về thƣ viện "encog-dotnet- core" giúp hỗ trợ cài đặt mạng nơ ron. Tác giả nêu chi tiết các biến số sử dụng cho bài toán dự báo. Tiến hành thu thập dữ liệu từ nguồn, trình bày dữ liệu mẫu đƣợc sử dụng trong bài toán. Tác giả đã tiến hành thực nghiệm, tìm ra mô hình mạng đúng đắn. Tiến hành thực nghiệm, kiểm tra, đánh giá để tìm ra các thông số cần thiết cho mạng, tiến hành xây dựng ứng dụng mạng dự đoán giá trên sàn giao dịch, ứng dụng thể hiện rõ nét các bƣớc, thu thập dữ liệu, huân luyện, kiểm tra, hỗ trợ kết xuất dữ liệu, vẽ biểu đồ, phân tích lỗi trong quá trình học. Tác giả đã tiến hành đánh giá mô hình mạng thông qua mô hình mạng thông thƣờng. đánh giá kết quả dự báo trên mã giao dịch tiêu biểu. thông qua đó kết minh chứng cho khả năng của mạng trong dự báo giá một mặt hàng trên sàn giao dịch
KẾT LUẬN
Luận văn đã tập trung vào bài toán dự báo giá một mặt hàng trên sàn giao dịch hàng hóa tƣơng lai. Ứng dụng mạng nơ ron nhân tạo vào bài toán khai phá dữ liệu lịch sử. Ứng dụng dự đoán giá đóng cửa của một hàng hóa tƣơng lai trên sàn giao dịch. Bài toán dự báo giá trên sàn giao dịch có những đặc điểm riêng trên bộ dữ liệu lịch sử. Thông qua phân tích dữ liệu lịch sử tác giả đã đề xuất giải pháp, xây dựng mô hình mạng nơ ron phù hợp cho bài toán dự báo giá trên sàn giao dịch. Qua đó đƣa ra dự báo giá đóng cửa của hàng hóa trong ngày giao dịch tiếp theo.
Luận văn đã có những đóng góp sau:
1. Hệ thống lại nội dung về mạng nơ ron ảo, khái quát về giao dịch hàng hóa tƣơng lai, phân tích kỹ thuật trên giá lịch sử của hàng hóa.
2. Phân tích dữ liệu giá từ đó đề xuất mô hình nơ ron phù hợp cho bài toán dự đoán giá trên sàn giao dịch hàng hóa tƣơng lai.
3. Xây dựng ứng dụng dự báo giá hàng hóa trên sàn giao dịch.
4. Kết quả đự đoán đã cung cấp cho các nhà đầu tƣ trên sàn giao dịch một hƣớng nhìn mới, cách phân tích mới về thị trƣờng, phản ánh đúng đắn các tác động của thị trƣờng lên giá của một mặt hàng.
5. Kết quả của luận văn là bƣớc đầu trong việc xây dựng hệ thống áp dụng kỹ thuật học “deep learning” trong mạng nơ ron.
Hƣớng phát triển tiếp theo:
Kết quả dự báo của mô hình mạng nơ ron đã khẳng định mô hình và hƣớng tiếp cận dự báo là đúng đắn, tuy nhiên kết quả dự báo vẫn chƣa đƣợc chính xác cao nhất. Vì vậy, cần đƣợc nâng cao độ chính xác của bài toán để tiến gần tới kết quả thực nhất. Hai là dự báo giá mới dừng lại ở bƣớc dự báo giá close của ngày hôm sau. Mở rộng