TỔNG QUAN
Đặt vấn đề
Dự báo sản lượng điện mặt trời là một mắt xích quan trọng trong việc phát triển nguồn năng lượng tái tạo
Tại Việt Nam, theo thống kê gần đây đến cuối năm 2020, đã có 8.736 MW điện mặt trời quy mô tập trung bao gồm cả điện mặt trời nổi trên mặt nước và 7.755 MW điện mặt trời mái nhà được đấu nối vào lưới điện, sản xuất gần 13 tỷ kWh điện năm đó Quy mô công suất điện mặt trời ở Việt Nam tăng vọt chỉ sau 2 năm đã trở thành kỷ lục trong các quốc gia Đông Nam Á Theo Quyết định số 500/QĐ-TTg phê duyệt Quy hoạch điện VIII vừa được Thủ tướng Chính phủ ký, ban hành ngày 15/5/2023, dự kiến quy mô điện mặt trời ở Việt Nam sẽ khoảng 12.800 MW (không bao gồm điện mặt trời mái nhà hiện có) vào năm 2030, tăng thêm khoảng 2.600 MW điện mặt trời loại hình tự tiêu thụ không phát lên lưới Vào năm 2050, điện mặt trời sẽ có quy mô định hướng lên tới 168.600 - 189.300 GW, chiếm 33,0 - 34,4% tổng công suất nguồn điện và sản xuất điện chiếm từ 20,6 - 21,2% tổng sản xuất điện toàn hệ thống.[1]
Bên cạnh các lợi ích như bù đắp năng lượng thiếu hụt, tận dụng năng lượng tại chỗ, giảm thiểu khí nhà kính, việc các nguồn điện tái tạo như điện mặt trời tham gia vào lưới điện cũng gây ra nhiều ảnh hưởng cho việc vận hành lưới điện, trong đó có hai thách thức chính như sau: Công suất đầu ra nguồn điện mặt trời không ổn định, thay đổi thường xuyên phụ thuộc vào sự thay đổi của thời tiết, dẫn đến hệ thống điện luôn phải có dự phòng công suất lớn để bảo đảm cung cấp đủ công suất cho hệ thống phụ tải Các nguồn điện này hay thay đổi đột ngột, không có dự trữ động năng như các máy phát điện quay, dẫn đến giảm độ dự trữ ổn định của hệ thống điện và tăng nguy cơ mất ổn định lưới điện Để giải quyết hai thách thức trên mà vẫn sử dụng được nguồn năng lượng tái tạo nhiều nhất có thể, cần phải thực thi các giải pháp trên lưới điện như lắp đặt, bổ sung hệ thống lưu trữ năng lượng, phối hợp điều khiển tải và hệ thống lưu trữ năng lượng để tăng quán tính quay tổng hợp của hệ thống, thiết kế các bộ điều khiển tại chỗ cũng như diện rộng để ổn định lưới điện Việc dự báo chính xác công suất của các nguồn điện tái tạo có một vai trò rất quan trọng để bảo đảm tính hiệu quả và tối ưu của các giải pháp trên Ngay cả khi mức độ nguy hiểm của các thách thức này chưa cao, việc dự báo công suất của các nguồn điện tái tạo cũng rất cần thiết để công tác lập kế hoạch, quản lý và vận hành hệ thống điện.[2]
Hướng tiếp cận nghiên cứu
Thu thập số liệu về sản lượng điện mặt trời từ nhà máy Sơn Mỹ 3-1 với cơ sở lý thuyết và công cụ mô phỏng sẵn có (MATLAB) để xây dựng mô hình, tính toán, đánh giá Việc phân tích được ảnh hưởng của các yếu tố đầu vào như bức xạ nhiệt mặt trời, nhiệt độ tấm pin, nhiệt độ không khí, độ ẩm, tốc độ gió, hướng gió cũng như các tham số được cài đặt, các trọng số được tính toán và cập nhật trong mô hình nhằm hiểu rõ hơn về sự ảnh hưởng của nó trên từng mô hình mạng neural đơn lẻ và có sự điều chỉnh hợp lý Sau đó xây dựng một mô hình kết hợp, có mức độ tối ưu cao để tăng hiệu suất mô hình.
Phương pháp nghiên cứu
1.3.1 Phương pháp nghiên cứu, phân tích, tổng hợp tài liệu
Phương pháp nghiên cứu, phân tích và tổng hợp tài liệu là các phương pháp được sử dụng trong quá trình thực hiện nghiên cứu để thu thập, xử lý và phân tích các tài liệu, thông tin, dữ liệu, kế thừa kết quả của các công trình nghiên cứu trong nước và ngoài nước liên quan đến nội dụng đề tài nghiên cứu
1.3.2 Phương pháp mô phỏng và mô hình hóa
Trong nghiên cứu dự báo sản lượng, phương pháp mô phỏng và mô hình hóa được sử dụng để xây dựng các mô hình ước lượng, dự báo sản lượng điện mặt trời dựa trên các thông tin và dữ liệu có sẵn Mô phỏng giúp quá trình tạo ra một hệ thống mô hình hoạt động tương tự với thực tế để tìm hiểu, dự đoán hoặc đánh giá các kịch bản, tình huống hoặc hành vi của hệ thống Mô hình hóa là quá trình xây dựng các mô hình toán học, thống kê từ máy tính dựa trên dữ liệu và thông tin có sẵn để mô tả và dự báo.
Tính cấp thiết của đề tài
Trong thời đại hiện nay, dự báo sản lượng điện Mặt trời sử dụng mạng neural nhân tạo là cấp thiết khi mà nguồn năng lượng Mặt trời đã trở thành xu hướng và phát triển mạnh mẽ Việc dự báo sản lượng điện Mặt trời giúp các đơn vị điều hành có thể dự báo được lượng điện Mặt trời sẽ sản xuất ra trong tương lai để có thể điều chỉnh sao cho hiệu quả Đồng thời, việc sử dụng mạng neural nhân tạo – Artificial Neural Network (ANN) trong dự báo sản lượng điện Mặt trời cũng đem lại nhiều lợi ích ANN có khả năng học tập và cải thiện độ chính xác theo thời gian, có thể xử lý được dữ liệu phi tuyến tính và phức tạp, đồng thời có thể tối ưu hóa mô hình để cải thiện độ chính xác
Vì vậy, đề tài này đem lại ý nghĩa và giá trị rất lớn trong việc phát triển năng lượng tái tạo và quản lý nguồn phát một cách hiệu quả hơn, đóng góp vào việc nghiên cứu và phát triển các phương pháp ứng dụng mạng neural nhân tạo trong dự báo.
Phạm vi nghiên cứu
Thu thập và xử lý dữ liệu: Thu thập dữ liệu sản lượng điện từ Nhà máy điện Mặt trời Sơn Mỹ 3-1 và thông số thời tiết từ ngày 01/07/2019 đến 01/07/2021 Sau đó tiến hành xử lý dữ liệu để chuẩn bị cho quá trình huấn luyện
Thiết kế và xây dựng mô hình mạng neural nhân tạo: xác định kiến trúc mô hình mạng neural, bao gồm số lượng mạng neural trong mỗi lớp, các hàm kích hoạt, tham số,… Sau đó tiến hành huấn luyện và đánh giá mô hình
Kiểm tra và so sánh độ chính xác của mô hình: Áp dụng mô hình đã xây dựng để dự báo sản lượng điện Mặt trời đối chiếu với số liệu thực tế, đánh giá sai số MSE, MAPE.
Mục tiêu nghiên cứu
Luận văn này tập trung xây dựng một mô hình ANN để dự báo sản lượng điện Mặt trời ngắn hạn và tối ưu hóa mô hình để đạt được kết quả dự báo tốt Kết quả dự báo trên MATLAB sẽ được so sánh với số liệu thực tế để đưa ra sự đánh giá khách quan nhất Nghiên cứu các yếu tố ảnh hưởng đến sản lượng điện năng lượng Mặt trời bao gồm cường độ ánh sáng, nhiệt độ, độ ẩm, kỹ thuật lắp đặt,… Tìm hiểu về cách xử lý dữ liệu đầu vào để chuẩn bị cho việc huấn luyện mạng ANN (gồm các kỹ thuật tiền xử lý) Bên cạnh đó cũng phải đánh giá được tác động của các yếu tố khác nhau ảnh hưởng đến độ chính xác của mô hình dự báo (kích thước dữ liệu, số lớp ẩn, số vòng lặp,…) Cuối cùng, xây dựng một mô hình dự báo hoàn chỉnh, tối ưu hóa mô hình để đạt được kết quả tốt nhất Ứng dụng mô hình ANN vào thực tiễn để dự báo sản lượng điện Mặt trời trong những điều kiện thời tiết, nhà máy khác.
Đối tượng nghiên cứu
Các tài liệu, bài báo, tạp chí khoa học, mô hình về dự báo
Phần mềm Matlab và các thư viện để áp dụng mô hình
Dữ liệu khí tượng, sản lượng thực của nhà máy điện Mặt trời
Tổng hợp một số nghiên cứu về bài toán dự báo sản lượng điện năng lượng mặt trời
[3] Moharari (1993) Dự báo tải ngắn hạn dựa trên mạng thần kinh nhân tạo với điều chỉnh đặc biệt cho các ngày cuối tuần và thay đổi theo mùa Cho thấy việc sử dụng mạng neural truyền thẳng nhiều lớp MLFFN, thuật toán lan truyền ngược để dự báo tải trong ngắn hạn cần phải xem xét các ngày đặc biệt Đầu vào của mô hình dự báo trong nghiên cứu bao gồm các đặc điểm về ngày dự báo, chẳng hạn như cuối tuần, ngày lễ cũng như các đặc điểm về thời tiết như nhiệt độ dự báo tối thiểu và tối đa, đặc điểm của tải, sản lượng trong 15 ngày gần nhất với tổng số 23 dữ liệu đầu vào Kết quả thực hiện được dự báo với sai số MPE là 1.43%
[4] Tzafestas (2001) đã trình bày đánh giá các mô hình toán cho bài toán dự báo như : mạng neural truyền thẳng nhiều lớp (MLFFN), logic mờ (FL), giải thuật di truyền (GA) Tiếp theo, họ cũng điểm qua các phương pháp lai như : GA-FL, FL-NN, GA-NN- FL,… Kết quả phần trăm sai số trung bình (MAPE) là 1.7% khi họ đề xuất dùng phương pháp MLFFN áp dụng cho bài toán dự báo sản lượng 1 giờ tới Họ đã dùng dữ liệu trong một năm (đầu năm 1988 đến đầu năm 1989) từ Light Company và Puget Sound Power với dữ liệu đầu vào bao gồm : dữ liệu sản lượng và nhiệt độ của 1 giờ và 2 giờ trước thời điểm dự báo, giờ và nhiệt độ ở thời điểm dự báo
[5] Zhang (2008) đề xuất mô hình MLFFN để dự báo sản lượng điện ngắn hạn cho thành phố NangChang, Trung Quốc Với dữ liệu đầu vào gồm : thứ trong tuần, ngày, dữ liệu thời tiết, giá trị nhiệt độ lớn nhất và nhỏ nhất, giá trị sản lượng lớn nhất, sản lượng nhỏ nhất, sản lượng của 2 ngày trước dự báo và dữ liệu thời tiết, ngày thứ của thời điểm dự báo, dữ liệu huấn luyện trong 2 năm (2002-2003) và được kiểm tra với dữ liệu trong một năm (2004) Kết quả dự báo cho MAPE trong khoảng 1.87% - 3.051% và thể hiện được ảnh hưởng của dữ liệu thời tiết và độ lớn dữ liệu quá khứ lên kết quả huấn luyện
[6] Hao-Tian Zhang (2010) đã sử dụng mô hình MLFFN để dự báo sản lượng 24 giờ tới ở Ontario, Canada dựa trên dữ liệu quá khứ về sản lượng, nhiệt độ, độ ẩm, tốc độ gió, hướng gió, ngày trong tuần hay ngày cuối tuần, được huấn luyện và kiểm tra trong 2 năm và kết quả thể hiện sử dụng thuật toán levenberg – marquardt (LM) cho kết quả tốt hơn so với thuật toán bayesian regularization (BR)
[7] Raza (2015) trình bày một mô hình sử dụng MLFFN được huấn luyện với thuật toán giảm độ dốc Các đầu vào cho mạng bao gồm ngày trong tuần, ngày làm việc, giờ trong ngày, điểm sương, nhiệt độ và sản lượng của ngày dự báo, ngày hôm trước và tuần trước 20 neural đã được sử dụng trong lớp ẩn Độ chính xác của dự báo đạt được tách biệt theo mùa và nó thay đổi từ 3.81% vào mùa xuân đến 4.59% trong mùa hè Phân tích bao gồm cái nhìn rõ nét về thống kê kết quả MAPE với các khoảng mức độ tin cậy khác nhau cho thông số này
[8] Shady Mahmoud Elgarhy (2017) đã trình bày đánh giá và tổng hợp các mô hình toán truyền thống được áp dụng cho các bài dự báo : hồi quy tuyến tính, trung bình di động, hệ số ngẫu nhiên (Stochastic), làm trơn hàm mũ, logic mờ (Fuzzy logic) Sau đó, họ đề xuất mô hình mạng neural truyền thẳng nhiều lớp (MLFFN) cho bài toán dự báo sản lượng 24 giờ tới ở New England Dữ liệu đầu vào là ngày, giờ trong tuần và sản lượng từ 2005 tới 2015 thì kết quả tốt hơn so với các phương pháp truyền thống
[9] Đặc biệt, nhóm tác giả Jaime Buitrago và Shihab Asfour (2017) đã đề xuất một hướng tiếp cận mới để giải quyết bài toán dự báo sản lượng 24 giờ tới Họ đã đề xuất một mô hình mạng neural nhân tạo tự hồi quy phi tuyến tính với đa biến ngoại sinh (NARX) được đào tạo theo vòng mở bằng cách sử dụng dữ liệu thời tiết và tải thực tế Sau đó, mạng được đặt trong vòng kín để tạo dự báo bằng cách sử dụng tải dự báo làm đầu vào phản hồi Không giống như các phương pháp dự báo sản lượng ngắn hạn hiện có sử dụng ANN, phương pháp này sử dụng đầu ra của chính nó làm đầu vào để cải thiện độ chính xác, do đó thực hiện hiệu quả vòng phản hồi cho tải, làm cho nó ít phụ thuộc vào dữ liệu bên ngoài hơn Bằng cách sử dụng mô hình này, dự báo đã đạt được sai số phần trăm tuyệt đối MAPE là 1% tốt hơn mô hình MLFFN, ARIMA
Gần đây, theo Trung tâm Điều độ Hệ thống điện Quốc gia EVNNLDC (2023) đã đề xuất các mô hình dự báo cho Solar Farm đã được xây dựng tập trung tại Ninh Thuận, tỉnh Bình Thuận Rooftop được xây dựng tập trung tại Đăk Lăk, Đăk Nông, Gia Lai (miền Trung) và Đồng Nai, Bình Dương (miền Nam) [10] Nghiên cứu cho thấy:
Phân bố địa lý ở Solar Farm được xây dựng tập trung tại Ninh Thuận, tỉnh Bình Thuận Rooftop được xây dựng tập trung tại Đăk Lăk, Đăk Nông, Gia Lai (miền Trung) và Đồng Nai, Bình Dương (miền Nam) cùng với bản đồ tiềm năng bức xạ mặt trời Việt Nam (Hình 1.1):
Hình 1.1: Phân bố công suất lắp đặt theo địa lý của Solar Farm và Rooftop [10] Tình hình phát triển điện mặt trời được thể hiện qua công suất lắp đặt, cho thấy được tiềm năng của điện mặt trời tại Việt Nam:
Hình 1.2: Công suất lắp đặt điện mặt trời [10]
Dựa vào (Hình 1.2) thấy được sự tăng trưởng đáng kể trong việc lắp đặt điện năng lượng mặt trời, từ đó có thể nhìn nhận được tiềm năng phát triển năng lượng mặt trời của Việt Nam trong tương lai là rất đáng kỳ vọng
Một số tỉnh thành có tỷ lệ cao giữa công suất lắp đặt của hệ thống PV trên mái nhà và công suất tải cao điểm Ví dụ (Hình 1.3):
Miền Trung: Gia Lai 274%, Đắk Nông 196%, Đắk Lắk 173%
Miền Nam: Ninh Thuận 257%, Bình Phước 105%, Lâm Đồng 96%
Hình 1.3: Công suất lắp đặt, dung lượng so với công suất tải cao điểm của một số tỉnh thành [10]
Mô hình xác định tải ngược để lập kế hoạch vận hành:
Hình 1.4: Mô hình xác định tải để lập kế hoạch vận hành [10]
Mô hình xác định tải ngược để lập kế hoạch vận hành được biểu diễn ở (Hình 1.4) dựa trên nguyên tắc xác định tải ngược từ các tác nhân tạo ra tải trong hệ thống Các tác nhân này có thể bao gồm các nhà máy điện mặt trời, điện gió, hệ thống lưu trữ năng lượng, và các nguồn năng lượng tái tạo khác Bằng cách xác định tải ngược của các tác nhân này, chúng ta có thể ước tính tải ngược của toàn bộ hệ thống điện
Mô hình xác định tải ngược thông thường sử dụng dữ liệu về sản lượng và tiêu thụ năng lượng của các tác nhân tạo ra tải, cùng với các thông số kỹ thuật và thông tin về mạng lưới điện Dựa trên các thông tin này, mô hình sẽ tính toán và dự báo tải ngược tại các điểm khác nhau trong hệ thống
Các nguyên tắc, phương pháp xác định các điểm mẫu và công suất của hệ thống điện Mặt trời trên mái nhà, được thể hiện ở (Bảng 1.1):
Bảng 1.1: Nguyên tắc và phương pháp xác định điểm mẫu [10]
Nguyên tắc lựa chọn điểm mẫu
Phương pháp xác định công suất trung bình của hệ thống điện mặt trời trên mái nhà
Lựa chọn các điểm mẫu chỉ bán điện vào lưới điện hoặc các điểm mẫu chia sẻ dữ liệu từ các thiết bị nghịch lưu Đối với mỗi trạm biến áp 110kV, tùy thuộc vào kích thước, diện tích và đặc điểm địa lý, lựa chọn ít nhất 03 điểm mẫu cho mỗi khu vực được cung cấp điện bởi trạm biến áp 110kV
Trong trường hợp giới hạn sản lượng tại các điểm mẫu, cần thu thập dữ liệu về công suất cài đặt bị giới hạn tương ứng
Tính toán công suất trung bình từ dữ liệu đã thu thập:
Chuyển đổi từ công suất ghi nhận bởi đồng hồ đo:
Hình 1.5: Mô hình xác định điểm mẫu [10]
Phân loại các hộ gia đình sử dụng điện mặt trời trên mái nhà cho dự báo được biểu diễn tại (Hình 1.6):
Hình 1.6: Ảnh phân loại các hộ gia đình sử dụng điện mặt trời mái nhà.[10]
Sử dụng nguyên tắc sau để phân loại các hộ gia đình có hệ thống điện mặt trời trên mái nhà (RTS) cho dự báo Các hộ gia đình có RTS chỉ bán hoặc bán phần lớn lượng điện mà họ tạo ra sẽ có những đặc điểm sau:
Ý nghĩa khoa học của đề tài
Nâng cao độ chính xác dự báo: Sử dụng mạng neural nhân tạo trong dự báo sản lượng điện mặt trời có thể cải thiện độ chính xác của dự báo Mạng neural nhân tạo có khả năng học và tự điều chỉnh từ dữ liệu, giúp nắm bắt được các mẫu phức tạp và không tuyến tính trong dữ liệu sản lượng điện mặt trời
Giảm độ phức tạp và thời gian xử lý: Sử dụng mạng neural nhân tạo có thể giảm độ phức tạp của quá trình dự báo và thời gian xử lý thông tin Mạng neural nhân tạo có khả năng xử lý thông tin song song và nhanh chóng, giúp tăng hiệu suất và tiết kiệm thời gian cho quá trình dự báo
Tối ưu hóa quản lý và vận hành hệ thống điện: Dự báo chính xác sản lượng điện mặt trời là một yếu tố quan trọng trong quản lý và vận hành hệ thống điện Việc sử dụng mạng neural nhân tạo trong dự báo sản lượng điện mặt trời có thể giúp các đơn vị quản lý và điều hành liên quan đến năng lượng nắm bắt được thông tin chính xác về sản lượng điện mặt trời, giảm thiểu sự chênh lệch giữa dự báo và thực tế, từ đó tối ưu hóa quyết định về quản lý và vận hành hệ thống điện Đóng góp cho phát triển năng lượng tái tạo: Nghiên cứu về dự báo sản lượng điện mặt trời sử dụng mạng neural nhân tạo đóng góp vào việc phát triển năng lượng tái tạo và sử dụng nguồn năng lượng mặt trời hiệu quả hơn Bằng cách cung cấp dự báo chính xác về sản lượng điện mặt trời, đề tài này hỗ trợ việc tích hợp năng lượng mặt trời vào hệ thống điện và giúp tăng cường ổn định và tin cậy của nguồn điện tái tạo.
Ý nghĩa thực tiễn của đề tài
Đảm bảo ổn định nguồn cung điện: Dự báo chính xác sản lượng điện mặt trời giúp các nhà điều hành hệ thống điện lập kế hoạch và quản lý nguồn cung điện một cách hiệu quả Việc sử dụng mạng neural nhân tạo trong dự báo giúp cung cấp thông tin chính xác về sản lượng điện mặt trời, từ đó giúp ổn định và cân nhắc việc sử dụng nguồn điện tái tạo
Tối ưu hóa tài nguyên năng lượng: Dự báo chính xác sản lượng điện mặt trời giúp tối ưu hóa sử dụng tài nguyên năng lượng Các đơn vị quản lý và điều hành có thể lên kế hoạch phân phối và sử dụng nguồn năng lượng mặt trời một cách hiệu quả, đảm bảo sự cân đối giữa nguồn cung và nhu cầu tiêu thụ Đảm bảo tính tin cậy và ổn định của hệ thống điện: Dự báo chính xác giúp giảm thiểu sai số giữa dự báo và sản lượng thực tế, từ đó đảm bảo tính tin cậy và ổn định của hệ thống điện Việc sử dụng mạng neural nhân tạo trong dự báo giúp nắm bắt được các mẫu phức tạp và không tuyến tính trong dữ liệu, đồng thời giảm độ phức tạp của quá trình dự báo
Hỗ trợ quyết định đầu tư và phát triển năng lượng mặt trời: Dự báo chính xác sản lượng điện mặt trời là một yếu tố quan trọng trong quyết định đầu tư và phát triển các dự án năng lượng mặt trời Việc sử dụng mạng neural nhân tạo trong dự báo giúp cung cấp thông tin đáng tin cậy và đánh giá hiệu suất của các dự án, từ đó hỗ trợ quyết định đầu tư và phát triển bền vững của ngành năng lượng mặt trời.
Nội dung của luận văn
Nội dung của luận văn gồm có 4 chương:
Chương 2 : Cơ sở lý thuyết
Chương 3 : Ứng dụng mô hình mạng neural nhân tạo trong dự báo
CƠ SỞ LÝ THUYẾT
Sơ lược về mạng neural nhân tạo
Mạng neural nhân tạo, còn được gọi là Neural Network (NN) là một mô hình lập trình được lấy cảm hứng từ cấu trúc mạng neural trong não bộ con người Mạng neural nhân tạo được sử dụng để tìm kiếm các mối quan hệ cơ bản trong tập hợp các dữ liệu
Nó được cấu thành từ nhiều neural nhân tạo được kết nối với nhau, mỗi neural nhân tạo đóng vai trò như một bộ phân loại dữ liệu
Mạng neural nhân tạo có nhiều lợi ích so với các mô hình dự báo truyền thống Đầu tiên, nó có khả năng xử lý và phân tích các tập dữ liệu lớn với độ chính xác cao Ngoài ra, mạng neural nhân tạo có khả năng tự học và điều chỉnh tham số của chính nó để cải thiện độ chính xác của mô hình Điều này làm cho mạng neural nhân tạo trở thành công cụ hiệu quả trong nhiều lĩnh vực như nhận dạng hình ảnh, xử lý ngôn ngữ tự nhiên, dự báo thị trường và dự báo sản lượng điện mặt trời.
Các phương pháp học máy
Hình 2.1: Sơ đồ các phương pháp học máy
Sơ đồ các phương pháp học máy (Hình 2.1), gồm có:
Supervised Learning (học có giám sát) Một phương pháp huấn luyện mạng neural nhân tạo bằng cách cung cấp cho nó các ví dụ đầu vào và đầu ra tương ứng Mạng sau
Dự báo kết quả đầu ra
Xác định hành vi đó học cách dự báo đầu ra từ đầu vào bằng cách điều chỉnh trọng số của các liên kết giữa các neural Đây là nhóm phổ biến trong thuật toán học máy này
Unsupervised Learning (học không giám sát) : Đây là một phương pháp huấn luyện mạng neural nhân tạo mà không cần cung cấp đầu ra mong muốn Thay vào đó, mạng được huấn luyện để tìm ra cấu trúc ẩn trong dữ liệu đầu vào Tức là thuật toán này sẽ không biết trước dữ liệu đầu ra hay nhãn của tập dữ liệu đầu vào mà chỉ dựa vào cấu trúc của dữ liệu để thực hiện các công việc như : phân nhóm (clustering) hoặc giảm số chiều của dữ liệu (Dimension reduction) để thuận tiện trong việc lưu trữ và tính toán
Reinforcement learning (học củng cố) : Là phương pháp học bằng cách cho mạng neural tương tác với một môi trường và học từ các phản hồi được nhận từ môi trường Mục tiêu của phương pháp này là để mạng neural học cách tối đa hoá một phần thưởng trong một môi trường cho trước Phương pháp này giúp cho hệ thống tự xác định được hành vi cũng như đưa ra quyết định để đạt được lợi ích, hiệu quả cao nhất (maximising the performance).
Cấu tạo của một mạng neural nhân tạo
Mạng neural nhân tạo thường được cấu tạo từ từng những lớp neural và mỗi lớp sẽ thực hiện một công việc cụ thể Cấu tạo của một mạng neural nhân tạo bao gồm các thành phần cơ bản (Hình 2.2) sau:
Hình 2.2: Cấu tạo của một mạng neural cơ bản
Lớp đầu vào (input layer): Lớp này nhận dữ liệu đầu vào từ bên ngoài, cung cấp cho mạng các số liệu cần thiết Số lượng neural trong lớp nhập tương ứng với số lượng thông số đầu vào được cung cấp cho mạng và các thông số đầu vào này được giả thuyết ở dạng vector Sau đó chuyển tiếp đến các lớp ẩn
Các lớp ẩn (hidden layers): Là các lớp neural nằm giữa lớp đầu vào và lớp đầu ra Chứa các neural ẩn giúp kết nối giá trị đầu vào đến giá trị đầu ra Một mạng neural có thể có một hoặc nhiều lớp ẩn chịu trách nhiệm chính cho việc xử lý các neural của lớp nhập và đưa các thông tin đến neural của lớp xuất Các neural này thích ứng với việc phân loại và nhận diện mối liên hệ giữa thông số đầu vào và thông số đầu ra Các lớp ẩn thực hiện các tính toán và trích xuất đặc trưng từ dữ liệu đầu vào để tạo ra các giá trị đầu ra phù hợp với mục tiêu của mô hình
Lớp đầu ra (output layer): Chứa các neural đầu ra nhằm chuyển thông tin đầu ra của các tính toán từ mạng neural nhân tạo đến người dùng Một ANN có thể được xây dựng để có nhiều thông số đầu ra Đối với mỗi neural các thành phần cơ bản sẽ bao gồm :
Hình 2.3: Các thành phần cơ bản của mỗi neural
Bảng 2.1: Các tham số huấn luyện mạng Các tham số của mạng Chức năng Công thức tính toán weights
Là các tham số trong mô hình được điều chỉnh trong quá trình huấn luyện để tối ưu hóa hiệu suất của mô hình
Wk = wquá khứ + lr * gradient (2.1) Trong đó :
W: trọng số mới lr: tốc độ học gradient: đạo hàm của hàm mất mát (loss function) theo trọng số tương ứng bias
Là một tham số được thêm vào để điều chỉnh giá trị đầu ra của mỗi neural bk = lr * gradient (2.2)
Hàm kích hoạt được áp dụng lên đầu ra của mỗi nút trong mạng nhằm định rõ đầu ra của nút đó dựa trên tổng trọng số đầu vào
- Hàm softmax (thường được sử dụng cho đầu ra của lớp phân loại):
Softmax: 𝑓(𝑥 ) ∑ (2.5) với n là số lớp.
Các cấu trúc mạng trong mạng neural nhân tạo
Trong mạng neural nhân tạo, có nhiều cấu trúc mạng khác nhau, tùy thuộc vào mục đích sử dụng và kiến trúc mạng phù hợp với dữ liệu và bài toán cần giải quyết Sau đây là một số cấu trúc mạng phổ biến:
Mạng neural hồi quy (Recurrent neural network - RNN) : Là mạng đơn giản nhất trong các kiến trúc mạng neural Tất cả các nút được kết nối với nhau và mọi nút vừa là đầu vào vừa là đầu ra Thông thường một tập hợp các mẫu được khởi tạo trên tất cả các nút cùng lúc và khi mỗi mẫu được khởi tạo, trọng số được sửa đổi
Mạng là một cấu trúc mạng phổ biến trong xử lý dữ liệu chuỗi, có khả năng xử lý đầu vào với bất kỳ độ dài nào, kích cỡ mô hình không tăng theo kích cỡ đầu vào, quá trình tính toán sử dụng các thông tin cũ, trọng số được chia sẻ trong suốt thời gian thực hiện Tuy nhiên, mạng tính toán chậm và khó để truy cập các thông tin từ một khoảng thời gian dài trước đây Chúng ta có thể hình dung một mô hình neural hồi quy cơ bản có cấu trúc như (Hình 2.4)
Hình 2.4: Mô hình mạng neural hồi quy cơ bản
Mạng neural truyền thẳng (feedforward neural network) là một cấu trúc mạng neural nhân tạo, trong đó các neural được kết nối theo các lớp (layers) liên tiếp nhau, các tín hiệu chỉ được truyền từ đầu vào (input) sang đầu ra (output) mà không có sự tương tác giữa các neural trong cùng một lớp hoặc giữa các lớp Đây là mô hình đơn giản nhất của mạng neural nhân tạo, được sử dụng rộng rãi trong các ứng dụng như nhận dạng hình ảnh, nhận dạng giọng nói, dự báo giá cổ phiếu, và nhiều ứng dụng khác Các lớp trong mạng neural truyền thẳng được chia thành 3 loại chính: lớp đầu vào (input layer), lớp ẩn
(hidden layer), và lớp đầu ra (output layer) Tương tự, chúng ta hình dung được một mô hình neural truyền thẳng cơ bản có cấu trúc như (Hình 2.5)
Hình 2.5: Mô hình mạng neural truyền thẳng cơ bản 2.4.3 Mạng neural cạnh tranh
Neural cạnh tranh (competitive neural network) tương tự như mạng truyền thẳng một lớp ngoại trừ việc có các kết nối giữa các nút đầu ra Do các kết nối này các nút đầu ra có xu hướng cạnh tranh với nhau Đôi khi lớp đầu ra được kết nối hoàn toàn và cũng có khi các kết nối bị hạn chế đối với các nút ở gần nhau (trong một số vùng lân cận)
Trong cấu trúc liên kết, các neural gần nhau đại diện cho các mẫu đầu vào tương tự Các kiểu này đã được sử dụng để giải thích sự hình thành các bản đồ cấu trúc liên kết xảy ra trong nhiều hệ thống giác quan của động vật bao gồm thị giác, thính giác, xúc giác và khứu giác Hình dung mô hình mạng neural cạnh tranh cơ bản qua (Hình 2.6)
Hình 2.6 : Mô hình mạng neural cạnh tranh cơ bản
Sai số của dự báo
Sai số dự báo là chênh lệch giữa giá trị thực và giá trị dự báo nhằm đánh giá chất lượng hay sự phù hợp của mô hình dự báo tại cùng một thời điểm Sai số dự báo cũng nhằm giúp điều chỉnh các thông số của mô hình dự báo
Một mô hình dự báo được đánh giá tốt khi sai số dự báo nhỏ Ngoài ra tính ngẫu nhiên của sai số cũng là một tham số quan trọng để đánh giá độ chính xác của dự báo
Khi tiến hành dự báo người ta thường giả định dữ liệu ban đầu ngẫu nhiên, các tính toán, đánh giá, kiểm định cũng đều dựa trên giả định này (ngẫu nhiên, phân phối chuẩn)
2.5.1 Sai số toàn phương trung bình MSE (Mean Squared Error)
Sai số toàn phương trung bình (MSE - Mean Squared Error) là một phương pháp đo lường sai số trong dự báo sản lượng điện MSE tính độ lệch giữa giá trị thực tế và giá trị dự báo, bằng cách lấy giá trị bình phương của hiệu giữa giá trị thực tế và giá trị dự báo Công thức tính MSE như sau : MSE = ∑ ( ) (2.6)
Y là sản lượng thực tế ;
Y là sản lượng dự báo ;
n là số lượng mẫu tính toán
MSE cho ta biết mức độ chính xác của mô hình dự báo Nếu giá trị MSE càng nhỏ, thì mô hình dự báo càng chính xác
Tuy nhiên, MSE có một số hạn chế, chẳng hạn như nó rất nhạy cảm với các giá trị ngoại lai, nghĩa là các giá trị thực tế bất thường có thể làm tăng đáng kể giá trị MSE Do đó, MSE cần được sử dụng cẩn thận và kết hợp với các phương pháp đo lường sai số khác để đánh giá độ chính xác của mô hình dự báo
2.5.2 Phần trăm sai số tuyệt đối trung bình MAPE (Mean Absolute Percent Error) Phần trăm sai số tuyệt đối trung bình (MAPE - Mean Absolute Percentage Error) là một phương pháp đo lường sai số trong dự báo sản lượng điện MAPE tính độ lệch phần trăm giữa giá trị thực tế và giá trị dự báo
Công thức tính MAPE như sau : MAPE = ∑ × 100 (2.7)
MAPE cho ta biết tỉ lệ lỗi trung bình giữa giá trị thực tế và giá trị dự báo Nếu giá trị MAPE càng nhỏ, thì mô hình dự báo càng chính xác
Tuy nhiên, MAPE cũng có một số hạn chế Đối với các giá trị thực tế gần bằng 0, MAPE sẽ không thể tính toán được vì sẽ có phép chia cho 0 Do đó, cần sử dụng MAPE cẩn thận và kết hợp với các phương pháp đo lường sai số khác để đánh giá độ chính xác của mô hình dự báo.
Hiện tượng Overfitting và Underfitting
Hiện tượng overfitting trong học máy là một vấn đề quan trọng cần phải giải quyết trong quá trình xây dựng mô hình Overfitting xảy ra khi mô hình học quá nhiều từ dữ liệu huấn luyện, đưa đến việc mô hình có khả năng dự báo rất tốt trên tập huấn luyện nhưng lại cho kết quả kém trên dữ liệu mới
Hiện tượng underfitting xảy ra khi mô hình học máy không đủ phức tạp để đưa ra dự báo chính xác trên tập dữ liệu huấn luyện và cũng không thể tổng quát hóa được trên tập dữ liệu mới Trong trường hợp này, mô hình quá đơn giản hoặc quá hạn chế để tìm ra mối quan hệ giữa các đặc trưng và kết quả dự báo Khi mô hình underfitting, ta có thể quan sát được rằng mô hình không thể khớp tốt với dữ liệu huấn luyện và dẫn đến kết quả dự báo kém trên dữ liệu kiểm tra hoặc dữ liệu mới
Hình 2.7a: Mô hình Underfitting; Hình 2.7b: Mô hình phù hợp; Hình 2.7c: Mô hình
Các mô hình và phương pháp sử dụng trong đề tài
2.7.1 Mô hình Multi-Layer Feedforward Neural Network – MLFFN
Hình 2.8 :Mô hình Multi-Layer Feedforward Neural Network (MLFFN)
Mô hình Multi-Layer Feedforward Neural Network (MLFFN) là một loại mạng neural nhân tạo có cấu trúc truyền thẳng, trong đó các nơ-ron được kết nối theo chiều truyền thẳng từ lớp đầu vào tới lớp đầu ra Đây là một mô hình rất phổ biến và được sử dụng rộng rãi trong lĩnh vực học máy và nhận dạng mẫu Một số thành phần quan trọng của mô hình MLFFN:
Bảng 2.2: Các thành phần cơ bản trong mô hình MLFFN Các thành phần Chức năng Đầu vào
Tập hợp các giá trị đầu vào được cung cấp cho mạng để thực hiện quá trình dự báo hoặc phân loại Đầu vào của mạng nơ-ron thường được biểu diễn dưới dạng một vector hoặc ma trận
Các lớp ẩn chứa các nút (neural) và là nơi xử lý và biểu diễn thông tin giữa các lớp khác nhau của mạng
Một mạng nơ-ron ANN có thể có một hoặc nhiều lớp
Số neural trong lớp ẩn
Mỗi neural trong lớp ẩn nhận đầu vào từ các neural trong lớp trước đó và tạo ra đầu ra tương ứng Các neural trong lớp ẩn thực hiện hai công việc chính: tính tổng trọng số đầu vào và áp dụng hàm kích hoạt Đầu ra đầu ra là kết quả cuối cùng được dự báo hoặc phân loại bởi mô hình Mỗi nơ-ron trong mô hình MLFFN thực hiện hai bước tính toán: Đầu tiên, tổng các đầu vào nhân với trọng số và cộng dồn
Sau đó, giá trị đó được truyền qua một hàm kích hoạt phi tuyến để tạo ra đầu ra của nơ-ron Công thức toán học của một nơ-ron trong mạng MLFFN có thể được biểu diễn như sau:
Trong đó: o Z là tổng các đầu vào nhân với trọng số và cộng dồn o A là đầu ra của nơ-ron sau khi đi qua hàm kích hoạt f() o wi là trọng số của đầu vào xi o b là ngưỡng (bias) của nơ-ron o f(Z) là hàm kích hoạt phi tuyến
2.7.2 Mô hình Long Short-Term Memory – LSTM
Mô hình LSTM giải quyết vấn đề mất đi thông tin xa trong quá trình lan truyền ngược thông qua việc sử dụng các cơ chế cập nhật và lọc thông tin Điều này giúp LSTM có khả năng nhớ và sử dụng thông tin từ quá khứ trong tương lai một cách hiệu quả Một số thành phần cơ bản của mô hình LSTM bao gồm:
Bảng 2.3: Các thành phần cơ bản trong mô hình LSTM
Các thành phần Chức năng Phương trình
Quyết định thông tin nào trong trạng thái trước đó nên được
𝑓(𝑡) = 𝜎(𝑊 [ℎ , 𝑥 ] + 𝑏 ) (2.9) xt: Đầu vào tại thời điểm t ht−1: Trạng thái ẩn tại thời điểm t-1 ft: Cổng quên (forget gate) tại thời điểm t bf: là vector bias cho cổng quên
Xác định thông tin mới nào sẽ được thêm vào trạng thái mới
𝐶 = 𝑡𝑎𝑛ℎ(𝑊 [ℎ , 𝑥 ] + 𝑏 (2.11) it: Cổng đầu vào (input gate) tại thời điểm t
𝐶: Giá trị ước lượng tại thời điểm t
Xác định phần nào của trạng thái mới sẽ được truyền ra ngoài
𝑜 = 𝜎(𝑊 [ℎ , 𝑥 ] + 𝑏 (2.12) ot: Cổng đầu ra (output gate) tại thời điểm t
Lưu trữ thông tin trạng thái dài hạn và truyền nó qua thời gian
𝐶: trạng thái mới tại thời điểm t
Là trạng thái đầu ra của mô hình LSTM
ℎ = 𝑜 tanh (𝐶 ) (2.14) ht: Trạng thái ẩn mới tại thời điểm t
2.7.3 Mô hình Gated Recurrent Unit – GRU
Mô hình GRU (Gated Recurrent Unit) là một loại mạng nơ-ron hồi quy (RNN) được sử dụng trong lĩnh vực xử lý dữ liệu chuỗi và dự báo chuỗi thời gian Nó là một phiên bản cải tiến của mạng LSTM (Long Short-Term Memory) với cấu trúc đơn giản hơn và ít tham số hơn Cấu trúc của mô hình GRU gồm các thành phần chính sau:
Bảng 2.4: Các thành phần cơ bản trong mô hình GRU
Các thành phần Chức năng Phương trình
Quyết định xem liệu thông tin mới nên được cập nhật vào trạng thái ẩn hay không
𝑟 = 𝜎 (𝑊 ( ) 𝑥 + 𝑈 ( ) ℎ + 𝑏 )(2.15) r(t) là reset tại thời điểm t σ là hàm sigmoid
W (r) là ma trận trọng số liên kết giữa đầu vào xt và cổng reset rt
U (r) là ma trận trọng số liên kết giữa trạng thái ẩn trước đó h(t-1) và reset rt x(t) là đầu vào tại thời điểm t h(t-1) là trạng thái ẩn trước đó tại thời điểm (t-1)
Quyết định xem liệu thông tin cũ nên được lưu giữ hay không
𝑧 = 𝜎 (𝑊 ( ) 𝑥 + 𝑈 ( ) ℎ ) (2.16) zt là cổng cập nhật tại thời điểm t
Là đại diện cho thông tin trạng thái hiện tại của mạng GRU
ℎ(t) là trạng thái ẩn tạm tại thời điểm t tanh là hàm tanh
Cập nhật trạng thái ẩn h(t) = (1 - z(t)) * h(t) + z(t) * h(t-1) (2.18) h(t) là trạng thái ẩn mới tại thời điểm t
2.7.4 Phương pháp chuẩn hóa Standardization (z-score)
Standardization (chuẩn hóa z-score) là một phương pháp chuẩn hóa dữ liệu trong đó các giá trị dữ liệu được chuyển đổi sao cho có trung bình bằng 𝜇 và độ lệch chuẩn bằng
𝜎 Quá trình chuẩn hóa này giúp đưa dữ liệu về một phân phối chuẩn (normal distribution) và làm cho dữ liệu dễ dàng so sánh và xử lý
Công thức chuẩn hóa z-score được tính như sau:
𝑧 = (𝑥 − 𝜇)/𝜎 (2.19) Trong đó: o x là giá trị dữ liệu ban đầu o μ là trung bình của dữ liệu o σ là độ lệch chuẩn của dữ liệu
Quá trình chuẩn hóa z-score giúp đưa mỗi giá trị dữ liệu về một số z, biểu thị khoảng cách của giá trị đó so với trung bình trong đơn vị độ lệch chuẩn Giá trị z âm cho biết giá trị dữ liệu thấp hơn trung bình và giá trị z dương cho biết giá trị dữ liệu cao hơn trung bình
Phương pháp chuẩn hóa z-score thường được sử dụng trong quá trình tiền xử lý dữ liệu, đặc biệt trong các mô hình máy học và thống kê, để đảm bảo rằng các biến có cùng tỷ lệ và đặc trưng có trọng số tương đương trong quá trình huấn luyện và dự báo
Kỹ thuật ensemble trong Machine Learning là phương pháp kết hợp nhiều mô hình dự báo để tạo ra một dự báo tổng hợp Ý tưởng chính của ensemble là sử dụng sự đa dạng và sự đồng thuận của các mô hình con để cải thiện độ chính xác và khả năng dự báo
Ensemble Stacking: Phương pháp này kết hợp đầu ra của nhiều mô hình dự báo khác nhau và sử dụng một mô hình meta để học cách kết hợp các dự báo này để tạo ra dự báo cuối cùng.
ỨNG DỤNG MÔ HÌNH MẠNG NEURAL TRONG DỰ BÁO
Đối tượng và phạm vi nghiên cứu
Mô tả dữ liệu : Dữ liệu được lấy từ dự án Nhà máy Điện mặt trời Sơn Mỹ 3.1 Nhà máy điện mặt trời Sơn Mỹ 3.1 là một trong những Nhà máy điện mặt trời kết nối với Trung tâm điều khiển từ xa PECC2-OCC để nâng cao hiệu quả và tối ưu hóa chi phí trong công tác vận hành nhà máy
Nhà máy Điện mặt trời (ĐMT) Sơn Mỹ 3.1 thuộc thôn 1, xã Sơn Mỹ, huyện Hàm Tân, tỉnh Bình Thuận, nằm cách Ủy ban nhân dân xã Sơn Mỹ khoảng 2,5km tính từ biên khu vực dự án về phía Bắc Dự án được đầu tư xấp xỉ 1300 tỷ VNĐ bởi Công ty Cổ phần Năng lượng tái tạo Sơn Mỹ (SSC) có công suất lên đến 50MWp, được khởi công vào năm 2018 và chính thức vận hành vào T6/2019 (Nguồn: PECC2)
Dữ liệu em sử dụng để chạy mô hình trong luận văn này là của trạm thời tiết B, từ ngày 01/07/2019 tới 01/07/2020, với các thông số thời tiết và công suất đo được từ 5 giờ 30 phút đến 18 giờ 00 phút, cách nhau 30 phút cho mỗi lần đo
Bảng 3.1: Bảng mô tả dữ liệu thu thập để thực hiện dự báo GHI (Global Horizontal
Irradiance – Bức xạ mặt trời từ mọi hướng)
POA (Plance Of Array Irradiance
– Bức xạ mặt trời trên một đơn vị diện tích)
PV_temp (nhiệt độ tấm pin)
Air_temp (nhiệt độ môi trường)
Wind_Speed (tốc độ gió)
01/07/2020 01/07/2021 Độ cao quan trắc từ 2 – 5m
Quy trình thực hiện dự báo trong đề tài
Hình 3.1 : Lưu đồ giải thuật của mô hình sử dụng trong đề tài Đọc và thực hiện tiền xử lý dữ liệu
Xây dựng mô hình GRU và đào tạo trên tập huấn luyện
Sử dụng mô hình đã huấn luyện dự báo trên tập kiểm tra và tập xác nhận
Tổng hợp kết quả mô hình
Xây dựng mô hình LSTM và đào tạo trên tập huấn luyện
Tổng hợp kết quả mô hình LSTM
Xây dựng mô hình MLFFN và đào tạo trên tập huấn luyện
Tổng hợp kết quả mô hình MLFFN
Xuất kết quả (3) Xây dựng mô hình tổng hợp Ensemble
Sử dụng mô hình đã huấn luyện dự báo trên tập kiểm tra và tập xác nhận
Tổng hợp kết quả mô hình Ensemble
Thời gian lấy mẫu từ ngày 01/07/2019 đến 01/07/2020 Số liệu bao gồm 9516 mẫu tương ứng với 7 đặc trưng là CS (Công suất), GHI (Global Horizontal Irradiance), POA (Plance Of Array Irradiance), PV_temp (nhiệt độ tấm pin), Air_temp (nhiệt độ môi trường), Huminity (độ ẩm), Win_Spd (tốc độ gió), Win_Dir (hướng gió) như được trình bày tóm tắt như bảng dưới đây :
Bảng 3.2: Bảng tóm tắt số liệu thu thập được của nhà máy Đặc trưng
CS GHI POA PV temp
Hình 3.2: Cấu trúc mạng neural đề xuất trong nghiên cứu 3.2.2 Chuẩn hóa dữ liệu sử dụng hàm z-score
Chuẩn hóa dữ liệu bằng cách sử dụng hàm z-score() giúp đưa dữ liệu về một phân phối chuẩn (normal distribution) và làm cho dữ liệu dễ dàng so sánh và xử lý
Hình 3.3: Các bước chuẩn hóa dữ liệu
Ta sử dụng công thức (2.19):
Trong đó: o x là giá trị dữ liệu ban đầu o μ là trung bình của dữ liệu o σ là độ lệch chuẩn của dữ liệu
Bước 1: Đọc dữ liệuBước 2: Sử dụng Z-scoreBước 3: Lưu kết quả vào data
Bảng 3.3: Bảng giá trị tính toán trong hàm z-score
Sau khi thực hiện việc tính toán chuẩn hóa ta được giá trị như bảng:
Bảng 3.4: Bảng tóm tắt dữ liệu sau khi chuẩn hóa
Sau khi ghi nhận số liệu vào bảng, chúng ta có những đánh giá như sau:
- Độ lệch chuẩn đạt giá trị mong đợi (không quá lớn) khi chúng ta có giá trị gần nằm trong khoảng (từ -2 đến 2)
- Chuẩn hóa Z-score tạo ra các giá trị có ý nghĩa trực quan hơn Giúp giảm bớt sự phức tạp trong việc đọc và hiểu dữ liệu Đặc trưng CS GHI POA PV temp
Air temp Hum W_Spd W_Dir σ 13802.078 344.42 352.76 9.704 3.245 13.01 0.898 80.67 μ 18066.33 429.11 434.53 37.15 29.66 75.25 1.372 208.43
CS GHI POA PV_tem p
Air_tem p Hum W_Spd W_Dir
3.2.3 Chia dữ liệu thành các tập huấn luyện, tập kiểm tra và tập xác nhận và tách các đặc trưng của dữ liệu
Chia dữ liệu thành 3 tập (Hình 3.4) : tập huấn luyện, tập kiểm tra và tập xác nhận, sử dụng các chỉ số để lựa chọn vị trí chia dữ liệu và lưu vào các biến train_data, test_data, và val_data
Hình 3.4: Thực hiện chia dữ liệu để chuẩn bị cho việc huấn luyện Đánh giá việc chia tỷ lệ có ảnh hưởng đến hiệu suất của quá trình huấn luyện Sau khi thay đổi tỉ lệ nhiều lần thì chúng ta có một tỷ lệ phù hợp :
Bảng 3.5: Bảng chia dữ liệu và tách nhãn cho quá trình huấn luyện
Tập dữ liệu Nhãn dữ liệu Số lượng đặc trưng Số lượng mẫu
D at a train_data (tập huấn luyện)
X_train Y_train test_data (tập kiểm tra)
X_test Y_test val_data (tập xác nhận)
Quá trình chia dữ liệu ở (Bảng 3.5) giúp chia dữ liệu thành các tập khác nhau để sử dụng trong quá trình huấn luyện, kiểm tra và đánh giá hiệu suất của mô hình neural network Tập huấn luyện được sử dụng để đào tạo mô hình, tập kiểm tra được sử dụng để kiểm tra hiệu suất của mô hình trên dữ liệu không được sử dụng trong quá trình huấn luyện, và tập xác nhận được sử dụng để đánh giá tổng quan hiệu suất của mô hình sau quá trình huấn luyện
3.2.4 Xây dựng mô hình Gated Recurrent Unit (GRU)
Với một cấu trúc đơn giản, giảm thiểu được độ phức tạp của mô hình và số lượng tham số cần huấn luyện nên GRU thường cần ít thời gian và dữ liệu hơn để học các quy tắc và mô hình hóa mối quan hệ trong dữ liệu Mô hình GRU có khả năng kiểm soát quá trình huấn luyện tốt hơn trong việc xử lý độ dài chuỗi dữ liệu GRU sử dụng cơ chế cổng thông minh để điều chỉnh thông tin được truyền từ quá khứ sang tương lai, giúp ngăn chặn hiện tượng mất mát thông tin trong quá trình huấn luyện
Hình 3.5: Lưu đồ giải thuật mô hình GRU
Khởi tạo trạng thái ẩn trước đó (h t-1 )
Khởi tạo mô hình GRU
Tính giá trị cổng Reset
Quên Không có trạng thái mới nào được cập nhật
Tính giá trị cổng Update
Khởi tạo ma trận trọng số (W) và bias (b), số lớp GRU, tốc độ học, số lượng epoch,…
Tính trạng thái ẩn tạm thời
Sử dụng giá trị huấn luyện để tiến hành huấn luyện
Tính trạng thái ẩn mới để tính toán đầu ra
Cập nhật trọng số Xuất kết quả đầu ra
Lặp lại cho đến khi đủ số lượng epoch đã chọn, hội tụ và đạt được kết quả tốt
So sánh kết quả đầu ra với thực tế
Với lưu đồ trên (Hình 3.5) ta thực hiện tính toán như sau:
Hình 3.6: Các bước tính toán mô hình GRU
Bước 1 • Khởi tạo trạng thái ẩn ban đầu (hidden state) h₀ và trạng thái đầu vào x₀
• Đầu vào: Nhận đầu vào x t tại thời điểm t
• r (t) là cổng đặc trưng tại thời điểm t
• W (r) là ma trận trọng số liên kết giữa đầu vào x t và cổng reset r t
• U (r) là ma trận trọng số liên kết giữa trạng thái ẩn trước đó h (t-1) và cổng đặc trưng r t
• x (t) là đầu vào tại thời điểm t.
• h (t-1) là trạng thái ẩn trước đó tại thời điểm (t-1).
• z t là cổng cập nhật tại thời điểm t
Bước 5 • Tính toán giá trị trạng thái tạm thời ℎ (t) = tanh (Wx (t) + r (t) * Uh (t-1) )
Bước 6 • Tính toán trạng thái mới ℎ (t) = (1 - z (t) ) * ℎ (t) + z (t) * ℎ (t-1)
Bước 7 • Trả về giá trị đầu ra y t
Bước 8 • Lặp lại bước 2 đến 5 cho mỗi bước thời gian t trong chuỗi dữ liệu đầu vào
Hình 3.7: Một đơn vị GRU của mô hình GRU
Bảng 3.6: Bảng thông số sử dụng cho mô hình GRU Đặc trưng Chi tiết
Dữ liệu đầu vào (7) GHI, POA, PV_temp, Air_temp,
Mục tiêu dự báo (1) CS
Cấu trúc mô hình 1 Lớp GRU với 10 đơn vị GRU Công thức đánh giá sai số MSE:
Bảng 3.7: Bảng thống kê kết quả và sai số mô hình GRU
Số liệu thực trên tập kiểm tra
Kết quả dự báo trên tập kiểm tra (258 mẫu)
Số liệu thực trên tập xác nhận (258 mẫu)
Kết quả dự báo trên tập xác nhận (258 mẫu)
Hình 3.8: Đồ thị so sánh sản lượng trên tập kiểm tra mô hình GRU
Sản lượng thực tế Sản lượng dự báo
Hình 3.9: Đồ thị so sánh sản lượng trên tập xác nhận mô hình GRU
Bảng 3.8: Ưu, nhược điểm của mô hình GRU Ưu điểm Nhược điểm
GRU có cấu trúc đơn giản chỉ sử dụng hai cổng (reset gate và update gate) Điều này làm cho việc triển khai và huấn luyện mô hình GRU dễ dàng hơn và tốn ít tài nguyên tính toán
Hạn chế trong việc biểu diễn và mô hình hóa thông tin phức tạp trong các chuỗi dữ liệu Điều này có thể gây khó khăn khi đối mặt với các bài toán yêu cầu mô hình học các mẫu tương quan phức tạp Hiệu suất chưa được tốt
GRU có cơ chế ghi nhớ thông tin từ quá khứ, tuy nhiên, trong một số trường hợp, nó có thể bị mất một phần thông tin quan trọng Điều này có thể xảy ra nếu cổng update gate không thích ứng tốt với mô hình dữ liệu hoặc dữ liệu có mức độ phức tạp cao
Sản lượng thực tế Sản lượng dự báo
Bảng 3.9: Đánh giá sai số trong quá trình huấn luyện của mô hình GRU Đánh giá sai số
Trên tập xác nhận Nhận xét
Các giá trị MSE này còn khá cao, cho thấy mô hình có khả năng dự báo chưa chính xác
Ngoài ra, việc sai số trên tập xác nhận thấp hơn trên tập kiểm tra có thể thấy mô hình hiện tại tránh được hiện tượng Overfitting
Cho thấy mô hình có khả năng dự báo chưa tốt trên dữ liệu kiểm tra và trên tập xác nhận
Bảng 3.10: Đánh giá sự tác động đến sai số qua lần huấn luyện
Yếu tố ảnh hưởng Mức độ ảnh hưởng
Số neural trong mỗi lớp Không nhiều
Epochs Không nhiều tỷ lệ học (learning rate) Không nhiều
Dựa trên những nhận xét trên, có thể kết luận và đưa ra đề xuất một số cải tiến để cải thiện mô hình dự báo GRU, bao gồm:
Kiểm tra và điều chỉnh tham số: Cần kiểm tra và điều chỉnh các siêu tham số của mô hình GRU như số lượng neural, số lớp GRU, tốc độ học (learning rate) để tìm hiệu quả tốt nhất Kết luận: Mô hình dường như không phù hợp với cấu trúc dữ liệu phức tạp, mặc dù vậy vẫn cải thiện mức độ sai số tốt để sử dụng cho việc làm đầu vào của mô hình kết hợp Ensemble
3.2.5 Xây dựng mô hình Long Short-Term Memory(LSTM)
Hình 3.10: Lưu đồ giải thuật mô hình LSTM
Khởi tạo trạng thái ẩn trước đó (h t-1 )
Khởi tạo mô hình LSTM
Cổng quên Cổng đầu ra
Tính giá trị cổng quên
Tính giá trị cổng đầu ra
Khởi tạo ma trận trọng số (W) và bias (b)
Tính trạng thái tế bào mới
Nhận giá trị đầu vào x t tại thời điểm t
Tính trạng thái ẩn mới Tính toán đầu ra
Khởi tạo trạng thái tế bào trước đó
Tính giá trị cổng đầu vào
So sánh kết quả đầu ra với thực tế
Lặp lại cho đến khi đủ số lượng epoch đã chọn, hội tụ và đạt được kết quả tốt
Dựa vào lưu đồ giải thuật ta thực hiện tính toán như sau như sau:
Hình 3.11: Các bước thực hiện tính toán trong mô hình LSTM
• Khởi tạo trạng thái ẩn ban đầu h₀ và trạng thái tế bào C₀.
• Khởi tạo các trọng số và bias của các cổng (input gate, forget gate, output gate) và các kết nối tương tác (cell state).
• Đầu vào: Nhận đầu vào x t tại thời điểm t
• Tính toán giá trị cổng quên 𝑓 𝑡 = 𝜎(𝑊 ℎ , 𝑥 + 𝑏 )
• x t : Đầu vào tại thời điểm t
• h t−1 : Trạng thái ẩn tại thời điểm t-1.
• f t : Cổng quên (forget gate) tại thời điểm t
• b f : là vector bias cho cổng quên.
• Tính giá trị cổng đầu vào: i 𝑡 = 𝜎(𝑊 ℎ , 𝑥 + 𝑏 )
• Tính toán giá trị trạng thái tế bào ước lượng (cell state candidate):
• Tính toán giá trị cell state: C t = f t C t-1 + i t 𝐶
• Tính giá trị cổng đầu ra: o 𝑡 = 𝜎(𝑊 ℎ , 𝑥 + 𝑏 )
• Tính trạng thái ẩn đầu ra: h t = o t tanh(C t )
Bước 7 • Trả về giá trị đầu ra y t
Bước 8 • Lặp lại bước 2 cho mỗi bước thời gian t trong chuỗi dữ liệu đầu vào
Hình 3.12: Một đơn vị LSTM của mô hình LSTM
Bảng 3.11: Các thông số sử dụng cho mô hình LSTM Đặc trưng Chi tiết
Dữ liệu đầu vào (7) GHI, POA, PV_temp, Air_temp,
Mục tiêu dự báo (1) CS
1 Lớp LSTM với 3 đơn vị LSTM Lớp hàm kích hoạt ReLU Lớp kết nối đầy đủ với 1 đơn vị đầu ra Lớp regression để dự báo giá trị liên tục
Thông số hiệu chỉnh mô hình
Thuật toán sử dụng : Adam MaxEpochs: 100 InitialLearnRate: 0.01
Công thức đánh giá sai số MSE :
Bảng 3.12: Bảng thống kê kết quả mô hình LSTM
Số liệu thực trên tập kiểm tra
Kết quả dự báo trên tập kiểm tra (258 mẫu)
Số liệu thực trên tập xác nhận (258 mẫu)
Kết quả dự báo trên tập xác nhận (258 mẫu)
Hình 3.13: Đồ thị so sánh sản lượng trên tập kiểm tra mô hình LSTM
Sản lượng thực tế Sản lượng dự báo
Hình 3.14: Đồ thị so sánh sản lượng trên tập xác nhận mô hình LSTM
Bảng 3.13: Ưu, nhược điểm của mô hình LSTM Ưu điểm Nhược điểm
LSTM cho phép điều chỉnh độ quên và ghi nhớ thông tin thông qua các cổng
(forget gate, input gate, output gate), cung cấp khả năng linh hoạt trong việc điều chỉnh cách mô hình xử lý dữ liệu chuỗi
Mô hình LSTM sử dụng cơ chế cổng quên và trạng thái tế bào để duy trì thông tin quan trọng từ quá khứ, giúp tránh hiện tượng mất thông tin dài hạn
Mô hình LSTM có cấu trúc phức tạp và yêu cầu tính toán khá lớn, đòi hỏi tài nguyên tính toán cao hơn so với một số mô hình khác
Mô hình LSTM có nhiều tham số và cơ chế cổng khác nhau, điều này làm cho việc hiểu và điều chỉnh mô hình trở nên phức tạp hơn so với các mô hình khác Hiệu suất chưa được tốt
Sản lượng thực tế Sản lượng dự báo
Bảng 3.14: Đánh giá sai số trong quá trình huấn luyện của mô hình LSTM Đánh giá sai số
Trên tập xác nhận Nhận xét
Các giá trị LSTM này còn cao hơn mô hình GRU, cho thấy mô hình có khả năng dự báo chưa chính xác
Ngoài ra, việc sai số trên tập xác nhận thấp hơn trên tập kiểm tra cũng có thể thấy mô hình hiện tại tránh được hiện tượng Overfitting
Cho thấy mô hình có khả năng dự báo chưa tốt trên dữ liệu kiểm tra và trên tập xác nhận
Bảng 3.15: Đánh giá sự tác động đến sai số qua lần huấn luyện
Yếu tố ảnh hưởng Mức độ ảnh hưởng
Số neural trong mỗi lớp Không nhiều
Epochs Không nhiều tỷ lệ học (learning rate) Không nhiều