TỔNG QUAN VỀ ĐỀ TÀI
Đặt vấn đề
Hiện nay, do sự phát triển kinh tế và quy mô dân số, môi trường nước ngày càng bị ô nhiễm nghiêm trọng Ngành nuôi trồng thủy sản, với đặc điểm là nhạy cảm với sự thay đổi của môi trường nước, chịu ảnh hưởng nặng nề khi các đặc tính vật lý và hóa học của nguồn nước chuyển biến xấu, hoặc thay đổi thất thường với biên độ lớn Khi đó, người nuôi hiểu rằng chất lượng nước trong ao nuôi trở thành yếu tố chính quyết định sự thành bại của vụ nuôi Hiện nay, hầu hết người nuôi đều sử dụng các công cụ quan trắc nguồn nước để theo dõi chất lượng nước trong ao nuôi Các công cụ này thường chỉ đo một hoặc một vài tham số nguồn nước, các giá trị này là tức thời tại thời điểm đo, nghĩa là giá trị của tham số ngay tại thời điểm đó, không có nhiều ý nghĩa trong việc dự báo, nhằm giúp người nuôi có thể hạn chế tối đa rủi ro cho ao nuôi của mình Người nuôi thường bị động khi môi trường nước thay đổi theo chiều hướng bất lợi cho thủy sản, gây thiệt hại cho ao nuôi Việc luôn nắm bắt và dự đoán được những thay đổi của chất lượng nước trong ao nuôi là chìa khóa để người nuôi có cách ứng phó chủ động, từ đó ngăn ngừa những thiệt hại có thể xảy ra Do đó cần có một giải pháp giúp cho người nuôi có thể chủ động theo dõi, giám sát các tham số nguồn nước trong ao nuôi, đồng thời cho người nuôi biết được diễn biến của các tham số nguồn nước trong tương lai gần để có phương án xử lý kịp thời.
Chất lượng nước trong ao nuôi luôn thay đổi thất thường phụ thuộc môi trường và thường diễn biến phức tạp Đây chính là điều khiến cho các mô hình dự báo truyền thống có kết quả dự báo với độ chính xác không cao, kèm theo đó chi phí tính toán cũng không hề nhỏ Trong những năm gần đây, với sự phát triển vượt bậc của khoa học máy tính, sự ra đời của trí tuệ nhân tạo với các thuật toán thông minh dần trở thành một trong những hướng đi quan trọng trong việc xây dựng các mô hình dự báo chất lượng nước Trong luận văn này, một mô hình mạng neural nhân tạo dựa trên phương pháp học sâu LSTM (Long Short TermMemory) được áp dụng để đưa ra các dự báo chính xác hơn Đề tài này nằm trong đề tài khoa học công nghệ cấp quốc gia “Nghiên cứu phát triển và ứng dụng hệ thống quan trắc tự động và cảnh báo môi trường nuôi tôm hùm tại vịnhXuân Đài và đầm Cù Mông tỉnh Phú Yên”.
Mục tiêu của đề tài
Mục tiêu của đề tài là đưa ra được một mô hình AI dự báo tham số môi trường trong hệ thống quan trắc môi trường nuôi trồng thủy sản thông minh, mô hình ứng dụng dự báo các tham số môi trường chủ yếu, với độ chính xác cao, có
1 thể ứng dụng trong thực tiễn, góp phần thúc đẩy thông minh hóa ngành nuôi trồng thủy sản trong nước.
Phạm vi nghiên cứu
Luận văn này quan tâm chủ yếu đến môi trường nước mặn ở khu vực Vịnh Xuân Đài và đầm Cù Mông, tỉnh Phú Yên Luận văn cũng tập trung vào các mô hình Deep Learning để xây dựng hệ thống dự báo cho các tham số môi trường nuôi tôm hùm ở địa phương này.
Công cụ thực hiện và phương pháp nghiên cứu
-Phương pháp nghiên cứu: Tổng hợp dữ liệu, phân tích thống kê dữ liệu, xu hướng thay đổi các thông số môi trường theo thời gian, hình thành mô hình dựa trên dữ liệu phân tích dựa trên thống kê và học sâu.
-Công cụ thực hiện: ngôn ngữ: python; thư viện: tensorflow để xây dựng mạng neural deep learning, sklearn, numpy, pandas để phân tích và xử lý dữ liệu.
Bố cục luận văn
Luận văn này chia làm bảy chương:
Chương 1 trình bày tổng quan về đề tài bao gồm tính cấp thiết của đề tài, mục tiêu đề tài, công cụ và phương pháp nghiên cứu của đề tài.
Chương 2 trình bày bước khảo sát các vấn đề liên quan đến đề tài, bao gồm tìm hiểu các tham số môi trường nuôi tôm hùm, thực trạng quan trắc môi trường thủy sản ở Việt Nam và trên thế giới, cũng như tìm hiểu một số hệ thống quan trắc, bài báo khoa học liên quan đến đề tài.
Chương 3 trình bày tổng quan hệ thống quan trắc tự động và cảnh báo môi trường nuôi tôm hùm tại tỉnh Phú Yên, đồng thời trình bày chi tiết khối dự báo và phạm vi nghiên cứu của luận văn trong hệ thống.
Chương 4 trình bày cơ sở lý thuyết về dữ liệu chuỗi thời gian, lý thuyết về deep learning cũng như các mô hình deep learning phổ biến với dữ liệu chuỗi thời gian.
Chương 5 trình bày quá trình xây dựng và triển khai mô hình AI cho khối dự báo, phương pháp cải tiến mô hình và cập nhật mô hình khi có dữ liệu quan trắc mới.
Chương 6 trình bày kết quả và đánh giá các mô hình Chương 7 đưa ra kết luận của luận văn.
Tổng kết
Chương này đã giới thiệu và trình bày được tính cấp thiết của đề tài, xác định mục tiêu đề tài và nêu ra phương pháp nghiên cứu sử dụng cho đề tài cũng như bố cục tổng quan của luận văn Chương tiếp theo sẽ đi vào tìm hiểu các vấn đề liên quan đến đề tài, cũng như khảo sát các nghiên cứu liên quan đã có trước đó.
KHẢO SÁT THỰC TRẠNG VÀ CÁC CÔNG TRÌNH LIÊN QUAN
Thực trạng quan trắc môi trường thủy sản
2.1.1 Quan trắc môi trường thủy sản trên thế giới
2.1.1.1 Đặc tính sinh trưởng và phát triển của tôm hùm
Tôm hùm là tên gọi chung của nhóm giáp xác mười chân thuộc 4 họ là Palinuridae, Scyllaridae, Nephropidae và Synaxidae, giữa chúng có những điểm đặc trưng về tập tính và môi trường sống Ở Việt Nam, có 5 loại tôm hùm được nuôi trồng phổ biến: tôm hùm bông (Palinuridae ornatus) là đối tượng nuôi chủ lực, tôm hùm xanh (Palinuridae Homarus), tôm hùm sỏi (Palinuridae stimpsoni), tôm hùm tre (Palinuridae polyphagus), tôm hùm đỏ (Palinuridae longipes) có cỡ tôm nhỏ hơn (dưới 0,5 kg/con) giá thấp hơn nên trong mấy năm gần đây chúng được nuôi bổ sung, nuôi kèm theo trong điều kiện con giống tôm hùm bông khan hiếm.
Sinh trưởng của tôm hùm đặc trưng bởi quá trình lột xác, qua đó có sự tăng lên về kích thước và trọng lượng Chu kỳ lột xác của mỗi loài tôm hùm phụ thuộc vào các yếu tố ngoại cảnh như: nhiệt độ nước, ánh sáng, độ mặn, thức ăn,
… và các yếu tố nội tại của cơ thể như sự điều tiết của các hormon lột xác hay hormon ức chế lột xác, … Các yếu tố này luôn có mối quan hệ mật thiết và ảnh hưởng lẫn nhau Chu kỳ lột xác của các loài hay giữa các giai đoạn khác nhau của từng loài không giống nhau Ở giai đoạn tôm con (chiều dài giáp đầu ngực -
CL khoảng 8 - 13 mm), thời gian giữa hai lần lột xác của tôm hùm bông và tôm hùm xanh khoảng 8 - 10 ngày Còn ở giai đoạn tôm lớn (63 - 68 mm CL) thời gian giữa 2 lần lột xác tương ứng là khoảng 40 ngày và 50 ngày Các yếu tố môi trường có ảnh hưởng đến sự sinh trưởng của tôm hùm, đặc biệt ở giai đoạn tôm con, những thay đổi đột ngột của môi trường thường dẫn đến tôm chết Chẳng hạn như khi nhiệt độ tăng lên 3 - 5°C, hoặc nồng độ muối tăng lên 8 - 10 ‰ hầu như tôm con đều bị chết Độ muối thấp 20 - 25 ‰ kéo dài 3 - 5 ngày cũng gây nên tình trạng chết từ từ ở tôm con Giai đoạn trưởng thành khi độ mặn giảm xuống 20 ‰ tôm hùm rất yếu và không bắt mồi [1].
2.1.1.2 Hiện trạng quan trắc môi trường nuôi tôm hùm trên thế giới
Do giá trị kinh tế, đặc điểm sinh trưởng của tôm hùm như phân tích ở trên, vấn đề môi trường hiện nay nói chung và môi trường nuôi trồng thủy sản (NTTS), đặc biệt trên tôm hùm được hầu hết các quốc gia quan tâm Đối với NTTS, hoạt động quan trắc môi trường có những nét đặc thù và mỗi nước có cách tiến hành khác nhau Bản Quy tắc ứng xử nghề cá có trách nhiệm của FAO cũng đề cập đến việc bắt buộc phải có hoạt động quan trắc môi trường đối với các vực nước trong phạm vi một quốc gia hay các hệ sinh thái liên quốc gia Cơ sở dữ liệu quan trắc phải được chia sẻ [2]. Ở Nauy, trong khi đệ trình dự án, chủ trại phải chỉ ra rằng mình có khả năng thực hiện việc quan trắc và xử lý môi trường theo yêu cầu của các nhà quản lý môi trường Ở Scottland, Cục Bảo vệ Môi trường (SEPA) yêu cầu chủ trại phải thực hiện việc quan trắc và kinh phí quan trắc tự chi trả Việc giám sát công tác quan trắc môi trường (gồm cả việc sử dụng thuốc và hoá chất) do nhiều cơ quan khác nhau phối hợp và các cơ quan địa phương đóng vai trò quan trọng. Cục nghề cá Ireland yêu cầu chủ trại có sản lượng hàng năm trên 100 tấn phải có báo cáo đánh giá hoạt động và giám sát môi trường [3] Một số bang ở Mỹ có những chương trình quan trắc chi tiết cho các khu vực NTTS trong đó các thông số chất lượng nước, cấu trúc và chức năng của quần xã sinh vật đáy, tảo, dịch bệnh được giám sát kỹ lưỡng Ở Thái Lan, hoạt động quan trắc trong NTTS do Cục nghề cá đảm nhận và có sự phân cấp hoạt động cho các tỉnh với toàn hệ thống quan trắc gồm 218 trạm quan trắc chất lượng nước kể cả thủy sinh Hoạt động quan trắc chất lượng nước trong NTTS biển là việc bắt buộc phải thực hiện theo Luật thuỷ sản (National Offshore Aquaculture Act of 2000) do một uỷ ban liên ngành gồm các cơ quan của chính phủ (Gerstenfeld và Biederman, 2002) kiểm soát Cộng đồng châu Âu (EU) yêu cầu các vùng nguyên liệu thân mềm hai mảnh vỏ nhập khẩu vào thị trường của khối liên minh này phải được quan trắc thường xuyên Trong đó, hàm lượng độc tố PSP (gây liệt cơ) không được vượt quá 0,08 mg/1kg thịt và độc tố DSP (gây tiêu chảy) không được quá 0,020 mg/1kg thịt [4].
Tại Đan Mạch hệ thống giám sát thủy hải sản có từ rất sớm, riêng vùng đánh bắt vẹm xanh được chia thành hệ thống gồm nhiều mạng lưới và việc đánh bắt hải sản sẽ bị cấm trừ khi các mẫu hải sản và nước được kiểm tra từ tuần trước đó về độc tố và tảo độc nằm trong ngưỡng cho phép Năm 2003, với sự ủng hộ và Cục Bảo tồn thiên nhiên (FIMA) thực hiện đề án “Nuôi trồng thủy sản bền vững: Các vấn đề được lựa chọn và hướng dẫn” tập trung vào 5 nội dung trong đó có quan trắc và đánh giá ảnh hưởng môi trường nuôi trồng thủy sản của 35 nước ở 4 khu vực: Châu Phi, châu Á - Thái Bình Dương, châu Mỹ La Tinh và Bắc Mỹ (FAO, 2009) [5].
Việc giám sát môi trường trong NTTS ở Canada cũng có nhiều chồng chéo và phức tạp Canada có hệ thống giám sát thủy hải sản từ năm 1943, hệ thống giám sát của nước này đã chia vùng nuôi trồng và đánh bắt hải sản thành các mạng lưới hoặc các trạm, thường xuyên kiểm tra định kỳ các mẫu hải sản đánh bắt và các mẫu thực vật phù du gây độc [6] Chương trình quan trắc môi trường NTTS ở vùng Nova Scotia của Canada đã được bắt đầu thực hiện từ năm
2002 với tất cả các đối tượng NTTS trên biển, đặc biệt là tập trung quan trắc động vật thân mềm và cá Họ cũng cho rằng quan trắc môi trường là một phần quan trọng để phát triển NTTS [7] Tại Úc, Cục Thủy sản của Úc đã ban hành Hướng dẫn Kế hoạch quản lý nuôi trồng thủy sản và quan trắc môi trường [8] để hướng dẫn kế hoạch quan trắc và quản lý môi trường nuôi trồng thủy sản, trong đó chỉ rõ những thông số cần quan trắc để đảm bảo chất lượng nước, có kế hoạch để giảm thiểu hoạt động NTTS lên môi trường xung quanh [8].
Australia và New Zealand cũng là những nước đầu tiên ban hành quy trình hướng dẫn quan trắc chất lượng nước nuôi trồng thủy sản (ANZECC/ARMCANZ, 2000a) Hướng dẫn này tập trung vào các yếu tố vật lý, hóa học và vi sinh có thể gây ảnh hưởng tới sản lượng hoặc chất lượng nguồn thức ăn cho tiêu dùng Các thông số dùng để quan trắc bao gồm: Các yếu tố vi sinh (vi khuẩn lam, mầm bệnh, ký sinh trùng); các yếu tố lý hóa (DO, pH, độ muối, và nhiệt độ); các độc chất vô cơ và hữu cơ (kim loại nặng, thuốc trừ sâu) [5].
2.1.1.3 Nhu cầu quan trắc tự động môi trường NTTS
Có thể thấy, xu hướng hoạt động quan trắc môi trường nước trong NTTS nhìn chung phát triển theo hướng mở rộng quy mô, đa dạng về hình thức, phân cấp mạnh và ngày càng có nhiều bên tham gia Việc quan trắc cần gắn trực tiếp với sản xuất, vừa là nghĩa vụ, vừa là nhu cầu đối với sản xuất NTTS Tuy nhiên, việc quan trắc theo phương pháp truyền thống là lấy mẫu, bảo quản và chuyển về phòng thí nghiệm tuy có độ chính xác cao nhưng còn hạn chế là thời gian phân tích cho kết quả chậm không đáp ứng được yêu cầu kiểm tra chất lượng nước kịp thời đặc biệt đối với hoạt động NTTS khi chất lượng nước có thể thay đổi rất nhanh ảnh hưởng tới các loài thủy sản đặc biệt một số loài rất “nhạy cảm” với
5 điều kiện nhiệt độ, pH, hàm lượng oxy hòa tan trong nước Do đó, kèm với sự phát triển nhanh của khoa học kỹ thuật, hoạt động quan trắc môi trường bằng phương pháp tự động trên thế giới đã triển khai từ rất sớm đáp ứng được nhu cầu thực tiễn trong quan trắc chất lượng nước cần kết quả nhanh, đáng tin cậy, cập nhật liên tục và cảnh báo sớm các nguy cơ ô nhiễm tiềm ẩn.
Chính vì vậy, mạng lưới quan trắc tự động (đặc biệt là mạng lưới quan trắc tài nguyên nước) đã phát triển dày đặc kèm theo xây dựng các hệ thống tiêu chuẩn chất lượng môi trường phù hợp với điều kiện từng nước và đặt vấn đề sức khỏe con người lên hàng đầu Tùy theo mục tiêu của từng chương trình quan trắc, các hệ thống quan trắc tự động môi trường nước lưu vực sông, hệ thống quan trắc chất lượng nước cấp, hệ thống quan trắc nước thải công nghiệp đối với các khu công nghiệp, hệ thống quan trắc nước tưới tiêu thủy lợi, chăn nuôi cho hoạt động nông nghiệp và NTTS được xây dựng với các bộ chỉ tiêu kiểm soát chất lượng nước đặc thù phục vụ công tác quản lý và bảo vệ môi trường Tại các nước phát triển, nguồn kinh phí cho các hoạt động quan trắc tương đối lớn, đặc biệt đối với quan trắc theo phương pháp tự động được đầu tư với các trang thiết bị hiện đại, duy tu bảo dưỡng thường xuyên, nguồn nhân lực vận hành hệ thống cũng được đào tạo bài bản Đi kèm là các hệ thống đảm bảo chất lượng và kiểm soát chất lượng được văn bản hóa và thực hiện nghiêm ngặt, các phần mềm ứng dụng, dự báo và đánh giá chất lượng môi trường được phát triển mạnh.
Về hành lang pháp lý cho hoạt động quan trắc môi trường tự động, hệ thống cơ sở khoa học và pháp lý được từng bước xây dựng với các văn bản hướng dẫn, các quy định sử dụng số liệu, các chính sách nhân sự Công tác quan trắc tự động, liên tục được lồng ghép, kết hợp với các hoạt động nghiên cứu khoa học công nghệ Số liệu quan trắc được chia sẻ rộng rãi tới cộng đồng thông qua nhiều hình thức: chỉ số chất lượng, báo cáo khoa học, hội thảo, trang web, diễn đàn, thống kê Nhiều chương trình quan trắc xuyên biên giới, toàn cầu được xây dựng nhằm đánh giá mức độ ô nhiễm môi trường trên khu vực rộng, quy mô lớn.
Hình 2.1 Một số hệ thống quan trắc môi trường NTTS trên thế giới
Năm 2003, với sự ủng hộ kinh phí của chính phủ Nhật Bản, bộ phận Quản lý nuôi trồng thủy sản của FAO và Cục Bảo tồn thiên nhiên (FIMA) thực hiện đề án “Nuôi trồng thủy sản bền vững: Các vấn đề được lựa chọn và hướng dẫn” tập trung vào 5 nội dung trong đó có quan trắc và đánh giá ảnh hưởng môi trường nuôi trồng thủy sản của 35 nước ở 4 khu vực: Châu Phi, châu Á - Thái Bình Dương, châu Mỹ La Tinh và Bắc Mỹ Australia và New Zealand cũng là những nước đầu tiên ban hành quy trình hướng dẫn quan trắc chất lượng nước nuôi trồng thủy sản Hướng dẫn này tập trung vào các yếu tố vật lý, hóa học và vi sinh có thể gây ảnh hưởng tới sản lượng hoặc chất lượng nguồn thức ăn cho tiêu dùng. Các thông số dùng để quan trắc bao gồm: Các yếu tố vi sinh (vi khuẩn lam, mầm bệnh, ký sinh trùng); các yếu tố lý hóa (DO, pH, độ muối, và nhiệt độ); các độc chất vô cơ và hữu cơ (kim loại nặng, thuốc trừ sâu) [5].
2.1.1.4 Một số hệ thống quan trắc tự động môi trường NTTS trên thế giới
Như đã nhận định ở trên, việc tiến hành quan trắc chất lượng nước đối với NTTS là cần thiết đặc biệt là phương pháp quan trắc tự động nhằm có kết quả tức thời, liên tục chất lượng nước phục vụ nuôi trồng thủy sản và cảnh báo sớm các nguy cơ gây hại đối với con giống Do đó, bộ thông số hóa lý gồm các chỉ tiêu cơ
Các hệ thống quan trắc liên quan
Cùng với sự phát triển của công nghệ 4.0, nhiều mô hình mạng cảm biến không dây đang được triển khai rộng khắp trong nông nghiệp, thủy sản trên cả nước Tại Quảng Ngãi, Mạng cảm biến không dây giám sát môi trường đất cung cấp cho người sử dụng các thông số quan trọng trong sản xuất nông nghiệp như nhiệt độ, độ ẩm không khí, ánh sáng, độ ẩm đất, độ pH Tại Long An, trường Đại học Kinh tế Công nghiệp Long An đã thiết kế, xây dựng và triển khai mạng cảm biến không dây phục vụ nông nghiệp chính xác Hệ thống này cho phép thu thập được các thông số nhiệt độ không khí, độ ẩm không khí, ánh sáng, độ ẩm đất, độ pH ; dữ liệu được truyền không dây đến trạm quản lý để phân tích và xử lý, qua đó người sử dụng có thể điều khiển và đưa ra các quyết định phù hợp nhằm tăng cường sản xuất và nâng cao chất lượng cây trồng Tại Đà Nẵng, mạng cảm biến không dây bước đầu đã được nghiên cứu trong việc giám sát môi trường cũng như giám sát tình trạng của thiết bị Tại Đại học Bách Khoa Hà Nội, mạng cảm biến không dây cũng đã được các nhóm nghiên cứu triển khai trong các dự án thu thập nồng độ khói, địa điểm xảy ra cháy rừng, độ ẩm, nhiệt độ, tiếng ồn, mức độ ô nhiễm không khí Đặc biệt nhiều nhóm nghiên cứu đang tập trung nghiên cứu ứng dụng công nghệ cao đặc biệt là mạng cảm biến không dây cho nông nghiệp, như ứng dụng trong thủy canh trồng rau sạch, trồng hoa của dự án VLIR cho năng suất chất lượng cao.
Hình 2.4 Mô hình hệ thống thủy canh sử dụng mạng cảm biến không dây (VLIR)
15 Ứng dụng mạng cảm biến không dây trong quan trắc môi trường NTTS đang được một số trường đại học và các viện nghiên cứu trong nước thực hiện như:
2.2.1 Hệ thống giám sát môi trường nông ngư nghiệp của công ty FarmTech
Hệ thống này (Hình 2.5) cho phép người sử dụng kiểm soát chất lượng môi trường nuôi trồng thủy sản qua mạng Internet, cùng với việc triển khai phần mềm phân tích giá trị số liệu môi trường Chẳng hạn, thiết bị công nghệ tích hợp phần mềm của Farmtech sẽ giúp giám sát độ chua -pH, khả năng khử các chất oxy hóa -ORP, nhiệt độ, độ dẫn trong môi trường nước ao nuôi có đảm bảo cho cá tôm sống tốt hay chưa Với công nghệ mới “Internet of things” (IoT), bất kỳ ai sử dụng hệ thống mạng cũng có thể trực tuyến theo dõi tức thời các số liệu về môi trường tại các ao, trại nuôi trồng thủy sản Nên việc trao đổi thông tin, các ý kiến tư vấn của các kỹ sư, chuyên gia khoa học trong lĩnh vực nông nghiệp đến với nhà nông trong quá trình nuôi trồng rất nhanh chóng, kịp thời Từ đó, giúp nhà nông kịp phòng tránh rủi ro, có giải pháp ứng phó với các tác động từ môi trường đến chất lượng đầu ra, tiết kiệm chi phí và nâng cao năng suất nuôi trồng thủy sản Tuy nhiên hệ thống có giá cao với giá 150 triệu/1 bộ do chưa làm chủ hoàn toàn công nghệ Ngoài ra, phương pháp đo bằng cách lấy mẫu không cho phép quan trắc liên tục và không phù hợp với việc quan trắc một số thông số biến đổi nhanh như DO, NH4 +
Hình 2.5 Hệ thống mạng cảm biến môi trường không dây (AE Visor) của
2.2.2 Hệ thống mạng cảm biến không dây trong nông nghiệp chính xác của ĐH Kinh tế công nghiệp Long An
Nông nghiệp chính xác hoặc canh tác chính xác là kỹ thuật áp dụng đúng số lượng đầu vào (nước, phân bón, thuốc trừ sâu,…) vào đúng vị trí và vào đúng thời điểm để tăng cường sản xuất và nâng cao chất lượng Mạng cảm biến không dây được xây dựng nhằm phục vụ yêu cầu của nông nghiệp chính xác Thông qua mạng cảm biến không dây, người nông dân có thể thu thập được các thông số đến quy trình sản xuất nông nghiệp như nhiệt độ không khí, độ ẩm không khí, ánh sáng, độ ẩm đất, độ pH, Các thông tin này được thu thập, lưu trữ và truyền tải không dây đến trạm quản lý để phân tích và xử lý, qua đó người sử dụng có thể điều khiển và đưa ra các quyết định phù hợp nhằm tăng cường sản xuất và nâng cao chất lượng cây trồng Hệ thống được thiết kế và xây dụng cả phần cứng và phần mềm Về phần cứng, hệ thống gồm 3 phần chính: các nút cảm biến DHLA- WSN tại khu vực giám sát, các nút quản lý vùng DHLA-WMN, và trung tâm điều hành (server) Tại mỗi nút các phần mềm được xây dựng để lập trình hệ thống hoạt động theo yêu cầu Hệ thống đã chạy thử nghiệm tại hiện trường bước đầu hoạt động tốt và hứa hẹn đem lại nhiều lợi ích đáng kể trong hệ thống sản xuất nông nghiệp Tuy nhiên hệ thống mới chỉ ở dạng thử nghiệm chưa có khả năng áp dụng vào thực tế.
Mô hình này sử dụng ba đầu cảm biến (sensor) chức năng: nhiệt độ nước, đo độ pH và nồng độ ôxy trong nước Những thay đổi của ba giá trị trên sẽ được các sensor ghi nhận và truyền về các trạm thông tin; sau đó, bằng kết nối không dây, dữ liệu chuyển về các server để các chuyên gia tư vấn Thông qua các thiết bị di động hoặc máy tính được cài đặt phần mềm, nông dân có thể điều chỉnh hệ thống sục khí hoạt động hay ngưng, hoặc trực tiếp đến các vuông tôm để theo dõi Hệ thống hoạt động tốt nhưng vấn đề khó khăn hiện nay là Việt Nam vẫn chưa sản xuất được cảm biến trong môi trường nước nên phải đặt mua ở nước ngoài Do đó để cảm biến có thể hoạt động tốt (ở dưới nước) trong thời gian lâu dài với độ chính xác cao vẫn là một vấn đề thách thức.
2.2.3 Hệ thống giám sát chất lượng nước nuôi trồng thủy sản e-AQUA Đây là hệ thống giám sát và điều khiển chất lượng nước tự động cho ngành thuỷ sản do các nhà nghiên cứu thuộc Trường Đại học Bách khoa TP HCM thiết kế (Hình 2.6) Giá bán 150 triệu đồng/ 1 hệ thống gồm 8 điểm đo với
4 tham số: nhiệt độ, pH, DO, và muối Hệ thống sử dụng bơm để lấy mẫu nước và sử dụng hóa chất làm xúc tác.
Hình 2.6 Hệ thống giám sát và điều khiển chất lượng nước e-Aqua.
2.2.4 Hệ thống mạng cảm biến không dây giám sát môi trường nước phục vụ nuôi trồng thủy hải sản, triển khai tại Quảng Ninh (BKRES)
Hệ thống BKRES (Hình 2.7) do Viện Điện tử - Viễn thông, Trường ĐH Bách Khoa Hà Nội phối hợp cùng Trung tâm Khoa học Kỹ thuật và Sản xuất Giống Thủy sản Quảng Ninh thực hiện thành công trong khuôn khổ đề tài cấp tỉnh, mã số 16/2015/HĐ-KHCN về “Nghiên cứu mô hình mạng cảm biến không dây giám sát môi trường nước phục vụ phát triển nuôi tôm chân trắng tại Quảng Ninh”.
Các kết quả chính đạt được:
+ Hệ thống cảm biến đo trực tiếp 4 tham số: nhiệt độ, pH, DO, và muối và đo gián tiếp 4 tham số: NH4 +, S 2- , NO2 -, Sulfide.
+ Hiển thị giám sát và cảnh báo (qua LED, còi và nhắn tin tới máy điện thoại di động).
+ Phần mềm thu thập dữ liệu giám sát và hiển thị thông tin định kỳ, liên tục hoặc theo truy vấn các tham số môi trường nước.
+ Website hiển thị các tham số môi trường và cho phép cấu hình hệ thống từ xa.
Các kết quả đã được ứng dụng tại công ty cổ phần thủy sản Cát Phú Hải, Móng Cái, Quảng Ninh từ tháng 12/2016. Đầm nuôi 1 Đầm nuôi 2
HỆ THỐNG GIÁM SÁT NGUỒN NƯỚC PHỤC VỤ NUÔI TRỒNG THỦY SẢN
Chủ đầm nuôi 1 Chủ đầm nuôi 2
Hình 2.7 Hệ thống mạng cảm biến không dây giám sát môi trường nuôi tôm
2.2.5 Hệ thống quan trắc mực nước sông tự động Đây là kết qủa đề tài khoa học cấp thành phố Hà Nội do PGS.TS Nguyễn Văn Đức làm chủ nhiệm Hệ thống được thiết kế dựa trên công nghệ cảm biến siêu âm, công nghệ đo mức nước bằng cảm biến áp suất, công nghệ bản đồ số dựa trên nền tảng bản đồ số của Google map, và công nghệ truyền thông mạng 2G và 3G Kết quả đề tài đã được kiểm nghiệm thực tế (03 trạm đo mức nước tự động tại các trạm đo An Cảnh Thường Tín, Yên Duyệt, Sông Bùi và Trạm đo Sơn Đà - Ba Vì) và đưa vào ứng dụng trên một số địa điểm quan trắc mức nước sông trong phạm vi địa bàn thành phố Hà Nội.
Hình 2.8 Hệ thống quan trắc và cảnh báo mức nước sông tự động.
2.2.6 Hệ thống quản lý và giám sát nguồn phóng xạ di dộng (BKRAD)
Viện Điện tử - Viễn thông, Trường ĐH Bách khoa Hà Nội phối hợp với Trung tâm Chiếu xạ Hà Nội, Viện Năng lượng Nguyên tử Việt Nam đã thực hiện thành công đề tài cấp Nhà nước, mã số ĐTĐLCN.01/14 về “Nghiên cứu và phát triển hệ thống giám sát từ xa các nguồn phóng xạ theo thời gian thực” do TS. Trần Quang Vinh làm chủ nhiệm Kết quả đã thiết kế, chế tạo thành công hệ thống quản lý và thiết bị giám sát nguồn phóng xạ sử dụng di động BKRAD (Hình 2.9) Hệ thống này đang được Cục ATBXHN cho thử nghiệm ở một số cơ sở NDT trên cả nước.
Back-end Servers Operation and
DGNSS receiver (Rover) Data request Smartphone
Radio MODEM Service Server Comm Server
Radio MODEM Data request User
UHF/VHF/HF Radio (external)
Hình 2.9 Lắp đặt hệ thống quản lý và giám sát nguồn phóng xạ di động tại khu công nghiệp Formosa Hà Tĩnh tháng 3/2016
Các tham số thiết yếu trong môi trường nuôi trủy sản
2.3.1 Nhiệt độ Định nghĩa: Nhiệt độ là tính chất vật lý của vật chất hiểu nôm na là thang đo độ "nóng" và "lạnh" Nó là biểu hiện của nhiệt năng, có trong mọi vật chất, là nguồn gốc của sự xuất hiện nhiệt, một dòng năng lượng, khi một vật thể tiếp xúc với vật khác lạnh hơn [20]. Đơn vị: Phổ biến nhất theo thang đo Celsius, đo bằng °C
Dụng cụ đo: Nhiệt kế
Khoảng giá trị: Từ không độ tuyệt đối đến vô cùng Khoảng giá trị nhiệt độ phổ biến tốt cho nuôi trồng thủy hải sản là từ 25 đến 30 °C
2.3.2 pH Định nghĩa: Là chỉ số đo hoạt độ của ion H+ trong dung dịch và vì vậy là độ axit hay bazơ của nó.
Sự điện ly là quá trình phân li của các chất trong nước ra ion Chất tan trong nước phân li ra ion được gọi là chất điện li Axit, bazo, muối là các chất điện li Nước là chất điện li yếu, tích số ion của nước là hằng số [H+].[OH-] 1 10 −14 Do đó PH chính là thước đo nồng độ ion H+ trong dung dịch [21] Công thức tính: pH = -log[H+]
Môi trường trung tính có PH là 7
Môi trường axit có PH < 7
Môi trường bazơ có PH > 7 Đơn vị: PH không có đơn vị đo
Dụng cụ đo: Quỳ tím, Máy đo PH
Khoảng giá trị: 0 đến 14 Trong nuôi trồng thủy hải sản, khoảng PH tối ưu nằm trong 6.0 - 8.5
Phụ thuộc: Thời tiết mưa hay không, nguồn vào ao hồ có chứa các chất điện li hay không.
2.3.3 Nồng độ Oxy hòa tan (DO) hay Dissolved Oxygen Định nghĩa: Là lượng dưỡng khí Oxy hòa tan trong nước rất cần thiết cho sự hô hấp của sinh vật dưới nước như cá, tôm, động vật lưỡng cư, côn trùng v.v Oxy trong nước tạo ra do sự hòa tan của không khí, sự quang hợp của tảo. Lượng DO cũng thể hiện phần nào mức độ ô nhiễm gây ra bởi các chất hữu cơ của nước.
Công thức tính: Đơn vị: mg/l, ppm 1 mg/L bằng 1 ppm
Dụng cụ đo: máy đo oxy hòa tan DO
Phụ thuộc: Thời tiết mưa hay ko, nhiệt độ, mật độ tảo trong nước …
Thay đổi theo độ sâu Độ hòa tan của oxy giảm khi nhiệt độ tăng
Oxy hòa tan sẽ tăng khi áp suất tăng, mà áp suất thay đổi theo độ cao Độ bão hòa không khí giảm 10% mỗi mét tăng độ sâu do áp suất thủy tĩnh Điều này
22 có nghĩa là nếu nồng độ oxy hòa tan ở mức bão hòa không khí 100% ở bề mặt, thì nó sẽ chỉ ở độ bão hòa không khí 70% ba mét dưới bề mặt.
Ngoài ra oxy hòa tan còn phụ thuộc vào độ mặn.
Như vậy trong các dự báo nồng độ oxy hòa tan có thể đưa vào các tham số về nhiệt độ, độ mặn, áp suất để căn chỉnh kết quả dự báo.
2.3.4 Độ muối hay độ mặn (salt) Định nghĩa: Xem xét về môi trường, Độ mặn hay độ muối được ký hiệu S
‰ (S viết tắt từ chữ salinity - độ mặn) là tổng lượng (tính theo gram) các chất hòa tan chứa trong 1 kg nước Ngắn gọn độ mặn đo hàm lượng muối hòa tan trong nước.
1,000 ướ ể Đơn vị: phần ngàn (ppt) hoặc tỷ lệ phần trăm (%)
Dụng cụ đo: Khúc xạ kế kỹ thuật số, Bút đo độ mặn cầm tay
Khoảng giá trị: 30 - 36 thích hợp nuôi tôm hùm
Phụ thuộc: Nguồn nước sông chảy vào ít hay nhiều, độ bốc hơi Như vậy độ mặn là tham số khá ổn định nếu nguồn cung cấp nước cho ao nuôi là ổn định.
2.3.5 Nồng độ H2S Định nghĩa: Là nồng độ khí H2S tồn tại trong nước H2S hình thành từ phân và xác động vật, thức ăn thừa và sinh khối thối rữa, có mùi trứng thối, là khí độc ảnh hưởng đến sinh vật trong nước.
Công thức tính: Đơn vị: àg/L, mg/L
Dụng cụ đo: Test kit H2S
Khoảng giá trị: không được vượt quá 0,05 mg/L khi nồng độ H2S 4 mg/L sẽ làm tôm chết.
Phụ thuộc: Nếu pH thấp, thì dạng H2S (khí) nhiều, ngoài ra còn phụ thuộc nhiệt độ
2.3.6 Nồng độ NH4+ Định nghĩa: Amonia là chất độc được tích lũy trong ao nuôi, phát sinh từ các chất thải của tôm cá trong ao nuôi thủy sản Chúng tồn tại trong hai dạng đó là amoniac NH3 và ion amoni NH4+ Tổng nitơ trong nước gọi là TAN bao gồm NH4+/ NH3 còn có tên gọi khác là Nitrit, Nitrat hay nitơ hữu cơ Tùy vào độ pH của nước mà các chất này có thể chuyển thành chất khác có lợi hoặc có hại cho sự phát triển của tôm cá
Công thức tính: Ảnh hưởng: Ức chế sự sinh trưởng, sinh sản của tôm nuôi, giảm sức đề kháng, khiến tôm dễ mắc một số bệnh thường gặp, gây stress trên tôm và cá Tôm chậm ăn, tăng trưởng kém Đơn vị: mg/L
Dụng cụ đo: Máy đo Amonia, kit test
Khoảng giá trị: 0,05 đến 0,15 mg/L đối với nước ấm, cá biển và tôm biển Phụ thuộc: Phụ thuộc độ PH, nhiệt độ
Lượng thức ăn dư thừa trong ao nuôi, chất thải hữu cơ Nguồn nước vào ao nuôi
2.3.7 Độ đục (TUR) Turbidity Định nghĩa: Độ đục của nước là một trong những tính chất phổ biến và trực quan nhất của nước, nó thể hiện sự vẩn đục của nước mà bạn có thể dễ dàng nhận biết thông qua việc quan sát bằng mắt thường Chúng ta có thể dễ dàng nhận thấy nước đục hoặc trong nhưng không thể đánh giá được độ đục bằng con số cụ thể.
Công thức tính: Đơn vị: NTU, FNU, mg/L
Dụng cụ đo: Máy đo độ đục
Khoảng giá trị: 0 FNU đến 40 FNU
Phụ thuộc: Độ đục phụ thuộc vào nhiều yếu tố bên ngoài như sự phát triển của tảo, thực vật thủy sinh, các chất lắng đọng từ đáy bể bơi, sông ngòi, bể nước,nước thải từ khu công nghiệp, khu dân cư, lá cây, bụi bẩn bị gió cuốn vào bể,trầm tích gây ra xói mòn, thực vật phù du.
Tổng kết
Chương này đã khảo sát và tìm hiểu về các tham số môi trường nuôi thủy sản, thực trạng quan trắc môi trường thủy sản ở Việt Nam và trên thế giới, các công trình liên quan đến nội dung đề tài.
HỆ THỐNG QUAN TRẮC MÔI TRƯỜNG
Tổng quan hệ thống quan trắc tự động và cảnh báo môi trường nuôi tôm hùm tại vịnh Xuân Đài và đầm Cù Mông tỉnh Phú Yên
3.1.1 Kiến trúc tổng thể Để đáp ứng các yêu cầu đặt ra, nhóm nghiên cứu đề xuất kiến trúc tổng thể hệ thống quan trắc tự động môi trường nuôi tôm hùm tại vịnh Xuân Đài và đầm
Cù Mông, tỉnh Phú Yên như thể hiện trên Hình 3.1 Hệ thống được thiết kế dựa trên các công nghệ mới nhất về cảm biến, truyền thông, tự động hóa, xử lý dữ liệu và phần mềm cảnh báo theo hướng một hệ thống IoT tích hợp.
Hình 3.1 Kiến trúc tổng thể hệ thống quan trắc tự động môi trường nuôi tôm hùm.
Kiến trúc hệ thống được chia thành các phân hệ với các chức năng chính như sau:
-Phân hệ cảm biến: Gồm các trạm quan trắc tự động, hoạt động như những nút cảm biến, được tích hợp các module cảm biến và các cơ cấu tự động hóa cao cho phép ghi đo các thông số môi trường trực tiếp và liên tục Mỗi trạm quan trắc đều được tích hợp các module định vị (GPS) và truyền thông vô tuyến(GSM/3G và LORA) cho phép các trạm trao đổi thông tin với nhau và với trạm tập trung bằng công nghệ LORA.
-Phân hệ trạm gốc: Đây là thiết bị tập trung hay trạm thu thập dữ liệu từ các trạm quan trắc tự động Trạm thu thập dữ liệu cũng được tích hợp các module định vị GPS, truyền thông GSM/3G, LORA tương tự trạm quan trắc tự động. Tuy nhiên, trạm thu thập dữ liệu có khả năng xử lý và tính toán mạnh hơn; cho phép chạy các thuật toán phức tạp như đa truy nhập (multi-access), tập hợp dữ liệu (data aggregation) trước khi truyền về máy chủ trung tâm.
-Phân hệ xử lý dữ liệu và cung cấp dịch vụ: Máy chủ cổng ứng dụng có nhiệm vụ giao tiếp với trạm tập trung để nhận dữ liệu quan trắc, chuyển thông tin điều khiển từ hệ thống (phân hệ vận hành và điều khiển) đến trạm trạm tập trung, và/ hoặc các trạm quan trắc tự động Máy chủ cổng ứng dụng còn là cổng cung cấp các dịch vụ cho người dùng (phân hệ người dùng) Máy chủ cơ sở dữ liệu (CSDL) có nhiệm vụ lưu trữ dữ liệu quan trắc, cung cấp các dịch vụ truy vấn CSDL cho các dịch vụ biểu diễn dữ liệu quan trắc theo thời gian thực, cung cấp dữ liệu cho các mô hình cảnh báo Máy chủ dịch vụ có nhiệm vụ cung cấp các dịch vụ, các chức năng của hệ thống phần mềm bao gồm các chức năng quản trị hệ thống, quản trị người dùng, quản trị CSDL, phân tích xử lý dữ liệu, chạy các mô hình cảnh báo, và cung cấp các quy trình nghiệp vụ phục vụ công tác quản lý chỉ đạo, điều hành trực tuyến trong nuôi tôm hùm.
-Phân hệ vận hành, bảo dưỡng và điều khiển: Cung cấp các chức năng giám sát, cảnh báo, xử lý sự cố Cung cấp các quy trình vận hành, khai thác, và bảo dưỡng hệ thống.
-Phân hệ người dùng: Cung cấp các phần mềm quản lý, giám sát, cảnh báo trên giao diện Web và trên điện thoại thông minh (hệ điều hành Android và iOS) Các dạng biểu diễn kết quả bộ thông số quan trắc sẽ được cung cấp, cho phép hiển thị thông tin trực quan trên nền bản đồ GIS (hệ thống thông tin địa lý) hoặc dưới dạng các bảng biểu phù hợp.
Các nội dung tiếp theo trong mục 3.1 sẽ mô tả chi tiết hơn về các phân hệ thành phần này, trong đó các phân hệ liên quan đến phần cứng là phân hệ cảm biến và phân hệ trạm gốc được trình bày chung ở mục 3.1.2, phân hệ xử lý dữ liệu và cung cấp dịch vụ liên quan đến máy chủ được trình bày ở mục 3.1.3, cuối cùng là phân hệ vận hành và phân hệ cho người dùng cuối được trình bày ở mục 3.1.4.
3.1.2 Phân hệ cảm biến và phân hệ trạm gốc
Phân hệ cảm biến gồm các trạm quan trắc tự động đặt tại các vùng nước cần quan trắc, cụ thể ở đây là các đầm, bè nuôi tôm hùm của người dân, các trạm này hoạt động như những nút cảm biến, được tích hợp các module cảm biến và các cơ cấu tự động hóa cao cho phép ghi đo các thông số môi trường trực tiếp và liên tục Mỗi trạm quan trắc đều được tích hợp các module định vị (GPS) và truyền thông vô tuyến (GSM/3G và LORA) cho phép các trạm trao đổi thông tin với nhau và với trạm tập trung bằng công nghệ LORA Mỗi trạm có khả năng tự cấu hình và hoạt động độc lập hoặc có thể hoạt động theo cấu hình được thiết lập từ xa bằng TCP/IP qua module GSM/3G Module định vị GPS được sử dụng để đồng bộ dữ liệu, cung cấp thông tin về không - thời gian cho mô hình cảnh báo. Các trạm quan trắc tự động cũng được tích hợp module cấp nguồn và dự trữ năng lượng từ năng lượng mặt trời để đảm bảo khả năng hoạt động liên tục trong khoảng thời gian dài.
Các trạm quan trắc tự động được lắp đặt trên trạm phao chuyên dụng và có kết cấu cơ khí gá lắp phù hợp, đảm bảo hạn chế đến tối đa các ảnh hưởng của môi trường (sóng, gió, nước mặn) đến hoạt động ổn định và tin cậy của các thiết bị quan trắc Kiến trúc và các thành phần chính của trạm quan trắc tự động được thể hiện trên Hình 3.2.
Hình 3.2 Kiến trúc trạm quan trắc tự động (nút mạng cảm biến).
Dưới đây là các bộ phận chính của trạm phao và hình ảnh thực tế của trạm phao đặt tại vùng nước quan trắc:
Hình 3.3 Các thành phần chính của trạm phao
Hình 3.4 Trạm phao ngoài thực địa 3.1.2.2 Phân hệ trạm gốc Đây là thiết bị tập trung hay trạm thu thập dữ liệu từ các trạm quan trắc tự động Trạm thu thập dữ liệu cũng được tích hợp các module định vị GPS, truyền thông GSM/3G, LORA tương tự trạm quan trắc tự động Tuy nhiên, trạm thu thập dữ liệu có khả năng xử lý và tính toán mạnh hơn; cho phép chạy các thuật
28 toán phức tạp như đa truy nhập (multi-access), tập hợp dữ liệu (data aggregation) trước khi truyền về máy chủ trung tâm.
Trạm thu thập dữ liệu được lắp đặt ở vị trí phù hợp để có thể giao tiếp với tất cả các trạm quan trắc tự động bằng truyền thông vô tuyến LORA và giao tiếp với phân hệ xử lý và cung cấp dịch vụ (máy chủ cổng ứng dụng) qua hạ tầng hệ thống thông tin di động (module GSM/3G) hoặc kết nối trực tiếp với Internet. Trạm thu thập tự động có thể được cấp nguồn bằng điện lưới hoặc năng lượng mặt trời Kiến trúc trạm thu thập dữ liệu quan trắc được thể hiện trên Hình 3.5.
Hình 3.5 Kiến trúc trạm thu thập dữ liệu quan trắc (trạm gốc).
3.1.3 Phân hệ xử lý dữ liệu và cung cấp dịch vụ (máy chủ)
3.1.3.3 Máy chủ hệ thống mạng (Network Server)
Hệ thống máy chủ mạng là máy chủ cài đặt các dịch vụ có chức năng truyền thông với các chức năng tuân theo mô hình tham chiếu OSI.
3.1.3.4 Máy chủ cơ sở dữ liệu (Database Server)
Database server hay máy chủ dữ liệu là một kho dữ liệu dùng để lưu trữ website, các dữ liệu và thông tin Một database server là một máy tính mạng LAN dành riêng cho lưu trữ, duy trì và khôi phục cơ sở dữ liệu Database server bao gồm hệ thống quản trị cơ sở dữ liệu Database Management System (DBMS) và cơ sở dữ liệu Dựa trên yêu cầu từ các máy khách, Database server sẽ tìm kiếm database cho các bản ghi được chỉ định và chuyển lại chúng qua mạng.
Một database server có thể được xác định như một máy chủ chuyên dụng cung cấp các dịch vụ database và cũng có thể như một máy chủ chạy phần mềm dữ liệu Chúng ta thường sẽ thấy database server trong môi trường client-server,đây là nơi cung cấp thông tin mà các hệ thống khách tìm kiếm.
Máy chủ server được khai thác lưu trữ dữ liệu thu thập được các thiết bị từ phân hệ cảm biến gửi lên Từ đó, cơ sở dữ liệu này cung cấp các tính năng cho server ứng dụng truy vấn vào để lấy dữ liệu ra, xử lý và thực hiện ứng dụng.
Trong phạm vi của hệ thống này, sử dụng cơ sở dữ liệu NoSQL là
MongoDB, do MongoDB có nhiều ưu điểm như :
- Schema linh hoạt: Do MongoDB sử dụng lưu trữ dữ liệu dưới dạng Document JSON nên mỗi một collection sẽ các các kích cỡ và các document khác nhau.
- Cấu trúc đối tượng rõ ràng: Tuy rằng cấu trúc của dữ liệu là linh hoạt nhưng đối tượng của nó được xác định rất rõ ràng.
- Tốc độ truy vấn nhanh.
- MongoDB rất dễ mở rộng.
- Không có join: Điều này cũng góp phần tạo nên tốc độ truy vấn cực nhanh trên mongoDB.
- MongoDB phù hợp cho các ứng dụng realtime.
Dưới đây là MongoDB được cài đặt trên database server phục vụ cho hệ thống quan trắc.
Hình 3.6 MongoDB của hệ thống quan trắc 3.1.3.5 Máy chủ ứng dụng (Application Server)
Phạm vi luận văn trong hệ thống
Trong luận văn này tập trung vào việc xây dựng và cải thiện mô hình AI nhằm cung cấp API dự báo có độ chính xác cao sử dụng trong ứng dụng (web/app), giúp người dân sớm có cái nhìn về diễn biến nguồn nước tại ao hay đầm nuôi Có phương án xử lý kịp thời khi môi trường diễn biến xấu Mô hình AI và API dự báo nằm trong AI Module trong mục 3.1.3.5 và Hình 3.7
Hình 3.19 Mô hình dự báo trong AI module
Module dự báo là toàn bộ các ứng dụng, công cụ, phần mềm, cơ sở dữ liệu vv nằm trong phân hệ xử lý dữ liệu và cung cấp dịch vụ phục vụ cho việc dự báo tham số nguồn nước.
Mô hình dự báo là mô hình AI nằm trong module dự báo Nó là trái tim của module dự báo.
Tổng kết
Như vậy chương này đã mô tả được hệ thống quan trắc tự động và cảnh báo môi trường nuôi tôm hùm tại vịnh Xuân Đài và đầm Cù Mông tỉnh Phú Yên Bao gồm các phân hệ trong hệ thống bao gồm cả các phân hệ phần cứng lẫn phần mềm và tương tác giữa chúng Chương cũng chỉ ra phạm vi của luận này trong hệ thống quan trắc.
DỰ BÁO CHUỖI THỜI GIAN VÀ DEEP LEARNING
Dự báo chuỗi thời gian (Time Series Forecasting)
4.1.1 Dữ liệu chuỗi thời gian
Một tập dữ liệu trong Machine Learning là một tập hợp các quan sát. Giá trị quan sát #1
Các dự đoán được đưa ra cho dữ liệu mới khi kết quả thực tế có thể chưa được biết tới cho đến một thời điểm nào đó trong tương lai Các kết quả trong tương lai được dự đoán, nhưng tất cả các quan sát trước đó hầu như luôn được sử dụng với vai trò như nhau.
Một tập dữ liệu chuỗi thời gian thì khác, chuỗi thời gian bổ sung sự ràng buộc, phụ thuộc thứ tự rõ ràng giữa các quan sát bằng cách bổ sung thời gian hay chiều thời gian vào tập dữ liệu Thời gian trong tập dữ liệu vừa là một ràng buộc, vừa là một cấu trúc cung cấp thông tin bổ sung.
Thời điểm #1 Giá trị quan sát
Thời điểm #2 Giá trị quan sát
Thời điểm #3 Giá trị quan sát
Từ đó có thể định nghĩa:
Dữ liệu chuỗi thời gian là một chuỗi các quan sát được thực hiện tuần tự theo thời gian [22]
4.1.2 Phân tích chuỗi thời gian (Time series analysis) và dự báo chuỗi thời gian (Time series forecasting)
Các tập dữ liệu (dataset) có thể được sử dụng trong những mục tiêu khác nhau, tùy thuộc vào mối quan tâm hiện tại là hiểu tập dữ liệu hay dùng nó để đưa ra dự đoán.
Việc hiểu tập dữ liệu còn được gọi là phân tích chuỗi thời gian (Time series analysis).
Việc dùng tập dữ liệu để đưa ra các dự đoán trong tương lai được gọi là dự báo chuỗi thời gian (Time series forecastring).
Trong Time series analysis dữ liệu chuỗi thời gian được mô hình hóa để phân rã thành các thành phần con độc lập Mục tiêu chính của Time series analysis là phát triển các mô hình toán học cung cấp các mô tả hợp lý từ dữ liệu mẫu Các dữ liệu mẫu có thể phân tích thành bốn thành phần con cơ bản đó là:
- Level: Giá trị cơ sở cho chuỗi nếu nó là một đường thẳng.
- Trend: Thành phần chỉ ra xu hướng tổng quan của dữ liệu theo thời gian, lên hoặc xuống, tăng hoặc giảm.
- Seasonality: Các chu kỳ lặp đi lặp lại theo thời gian của dữ liệu.
-Noise: Thành phần nhiễu còn lại sau khi trích xuất hết các thành phần ở trên, nó chỉ ra sự bất thường của các điểm dữ liệu.
Dữ liệu mẫu = level + trend + seasonality + noise
Hình 4.1 Phân tích các thành phần của dữ liệu chuỗi thời gian.
Các đặc điểm chính của nhiều chuỗi thời gian là trend và seasonality, một đặc điểm quan trọng khác của hầu hết các chuỗi thời gian là các quan sát gần nhau về thời gian có xu hướng tương quan (phụ thuộc theo thứ tự) Việc phân tích dữ liệu mẫu ra các thành phần cơ bản cho phép chúng được mô hình hóa bằng các phương pháp thống kê truyền thống Những thành phần này cũng có thể là cách hiệu quả nhất để đưa ra dự đoán về các giá trị trong tương lai, nhưng không phải lúc nào cũng vậy Trong trường hợp các phương pháp cổ điển này không mang lại hiệu suất hiệu quả, các thành phần này vẫn có thể là các khái niệm hữu ích và thậm chí là đầu vào cho các phương pháp thay thế. Đưa ra dự đoán về tương lai được gọi là phép ngoại suy trong xử lý thống kê cổ điển đối với dữ liệu chuỗi thời gian Các phương pháp hiện đại hơn tập trung vào chủ đề này và gọi nó là Time series forecasting, nghĩa là bao gồm việc trích xuất các mô hình phù hợp từ dữ liệu lịch sử và sử dụng chúng để dự đoán các quan sát trong tương lai Các mô hình tìm các mô tả dữ liệu một cách chính xác nhất, ở đó các kết quả tương lai hoàn toàn chưa được xác định, chỉ được ước tính từ những gì đã xảy ra trong quá khứ Một mô hình dự báo tốt là một mô hình có hiệu suất cao và khoảng tin cậy cao Trong Time series forecasting, một điều quan trọng là hiểu được mục tiêu của dự báo Điều này có thể được làm rõ bằng một số câu hỏi:
-Có bao nhiêu dữ liệu và có thể tập hợp chúng lại cùng nhau hay không? Nhiều dữ liệu hơn thường hữu ích hơn, mang lại cơ hội lớn hơn cho việc phân tích, khám phá, kiểm tra và điều chỉnh mô hình cũng như độ trung thực của mô hình.
-Dự đoán bao xa trong tương lai? Ngắn hạn, trung hay dài hạn? Thời gian ngắn hơn thường dễ dự đoán hơn với độ tin cậy cao hơn.
-Các dự báo có thể được cập nhật thường xuyên theo thời gian hay phải được thực hiện một lần và giữ nguyên? Cập nhật dự báo khi có thông tin mới thường dẫn đến các dự đoán chính xác hơn.
-Dự báo được yêu cầu với tần suất hiện tại nào? Thông thường, các dự báo có thể được thay đổi ở tần suất thấp hơn hoặc cao hơn, cho phép lấy ít mẫu hoặc nhiều mẫu hơn, do đó có thể mang lại lợi ích trong khi lập mô hình.
Time series forecasting thường xuyên yêu cầu dữ liệu phải được làm sạch, chuẩn hóa hoặc thậm chí là biến đổi chúng Ví dụ:
-Frequency: Có thể dữ liệu được cung cấp với tần suất quá cao để tạo mô hình hoặc có khoảng cách không đồng đều theo thời gian nên yêu cầu lấy mẫu lại để sử dụng trong một số mô hình.
-Outliers: Có thể có những giá trị bị hỏng hoặc quá xa hoặc vô lý cần được xác định và xử lý.
-Missing: Có thể có những khoảng không có hoặc thiếu dữ liệu cần được nội suy hoặc đặt lại.
4.1.3 Các phương pháp dự báo chuỗi thời gian
Các phương pháp dự báo chuỗi thời gian được chia làm hai phân loại chính:
-Các phương pháp tuyến tính cổ điển có đặc điểm là tập trung vào các mối quan hệ tuyến tính, tuy nhiên chúng phức tạp và hoạt động tốt trên một khoảng rộng các vấn đề, với giả định rằng dữ liệu được chuẩn bị phù hợp và phương pháp lựa chọn được các tham số và cấu hình hợp lý Nhược điểm của các phương pháp này là các đặc trưng bị thiếu có thể ảnh hưởng đến hiệu suất của các mô hình, không thể nhận ra các mẫu phức tạp trong dữ liệu cũng như không có hiệu quả tốt trong các dự báo dài hạn Một số phương pháp thuộc dạng này có thể kể đến như Autoregression (AR), Moving Average (MA), Autoregressive Moving Average (ARMA), Autoregressive Integrated Moving Average (ARIMA), Seasonal Autoregressive Integrated Moving-Average (SARIMA), Seasonal Autoregressive Integrated Moving-Average with Exogenous Regressors (SARIMAX), Vector Autoregression (VAR), Vector Autoregression Moving- Average (VARMA), Vector Autoregression Moving-Average with Exogenous Regressors (VARMAX), Simple Exponential Smoothing (SES), Holt Winter’s Exponential Smoothing (HWES).
-Các phương pháp dự báo hiện đại (sử dụng Deep Learning) có đặc điểm là tập trung vào các đặc điểm, vấn đề, sự phụ thuộc phức tạp phi tuyến của tập dữ liệu Việc sử dụng học sâu đã khắc phục được những hạn chế của các mô hình truyền thống Các phương pháp phổ biến dùng để dự báo dữ liệu chuỗi thời gian dạng này có thể kể đến như MLPs, CNNs, RNNs, LSTMs.
Phần tiếp theo đi vào mô tả các mô hình Deep Learning sử dụng trong việc dự báo dữ liệu chuỗi thời gian.
Deep Learning
4.2.1 Đôi nét về Deep Learning
Deep learning hay học sâu là một lĩnh vực con của học máy (Machine learning) liên quan đến các thuật toán lấy cảm hứng từ cấu trúc và chức năng của não được gọi là mạng thần kinh nhân tạo (Artificial Neural Networks) [23].
Hình 4.2 Quan hệ giữa AI, Machine Learning và Deep Learning Ýtưởng của học sâu là thông qua việc mô phỏng lại cách thức não bộ hoạt động sẽ làm cho:
- Các thuật toán học tập tốt hơn và dễ sử dụng hơn.
- Tạo ra những tiến bộ mang tính cách mạng trong học máy và AI.
Với sự phát triển vượt bậc của khoa học kỹ thuật trong một thời đại bùng nổ thông tin Các phần cứng máy tính đã đủ nhanh, mạnh đồng thời có đủ lượng dữ liệu cần thiết để thực sự huấn luyện được những mạng neural thực sự lớn Khi các mạng neural ngày càng lớn hơn và tiếp tục đào tạo chúng với càng nhiều dữ liệu, hiệu suất của mạng sẽ tiếp tục tăng lên.
Hình 4.3 Quan hệ giữa lượng dữ liệu và hiệu năng của Deep Learning [23]
Hầu như tất cả giá trị ngày nay của học sâu là thông qua học có giám sát hoặc học từ dữ liệu được gắn nhãn Ngoài khả năng mở rộng, một lợi ích khác thường được trích dẫn của các mô hình học sâu là khả năng thực hiện trích xuất đặc trưng tự động từ dữ liệu thô, còn được gọi là feature learning Các thuật toán học sâu tìm cách khai thác cấu trúc chưa biết trong dữ liệu đầu vào để tìm ra các mô hình tốt, thường ở nhiều cấp, với các đặc trưng đã học ở cấp cao hơn được xác định theo các đặc trưng cấp thấp hơn [23].
Như vậy deep learning thực chất chỉ là các mạng neural rất lớn với nhiều dữ liệu hơn, đòi hỏi các máy tính lớn hơn.
4.2.2 Các mô hình Deep Learning phổ biến
Các mô hình học sâu hiện đại tập trung vào đào tạo các mô hình mạng neural sâu với nhiều lớp bằng các sử dụng thuật toán lan truyền ngược (backpropagation algorithm) Các kỹ thuật phổ biến nhất là:
- Long Short-Term Memory Recurrent Neural Networks (LSTMs)
4.2.3 Deep Learning với dữ liệu chuỗi thời gian
Với sự nở rộ của dữ liệu cùng sức mạnh tính toán trong những năm gần đây, học sâu (Deep Learning) đã trở thành lựa chọn hàng đầu để xây dựng các mô hình dự báo chuỗi thời gian Việc sử dụng học sâu để dự báo chuỗi thời gian đã khắc phục được những hạn chế của học máy truyền thống với nhiều cách tiếp cận khác nhau Các ưu điểm lớn nhất của học sâu khiến cho nó được sử dụng trong các bài toán dự báo chuỗi thời gian là:
- Thiết kế để làm việc với dữ liệu phi tuyến tính
- Dễ dàng trích xuất các đặc trưng
- Dễ dàng dự báo từ tập dữ liệu huấn luyện
- Hỗ trợ nhiều đầu vào và đầu ra
Convolutional Neural Networks với dữ liệu chuỗi thời gian
Mạng neural tích chập (Convolutional Neural Networks), hay gọi tắt làCNNs, là một loại mô hình mạng neural chuyên dụng được thiết kế để làm việc với dữ liệu hình ảnh hai chiều, mặc dù chúng có thể được sử dụng với dữ liệu một chiều và ba chiều Các lớp tích chập là các khối xây dựng chính tạo nên mạng neural tích chập Lớp này thực hiện một phép tính gọi là tích chập Trong ngữ cảnh của một mạng neural tích chập, một phép tích chập là một phép toán tuyến tính liên quan đến việc nhân một tập hợp các trọng số với đầu vào, giống như một mạng neural truyền thống Giả định rằng kỹ thuật được thiết kế cho đầu vào hai chiều, phép nhân được thực hiện giữa một mảng dữ liệu đầu vào và một mảng trọng số hai chiều, được gọi là bộ lọc (filter) hoặc kernel Filter được sử dụng có kích thước nhỏ hơn dữ liệu đầu vào và dạng phép nhân được áp dụng giữa một mảng con có cùng kích thước với filter của dữ liệu đầu vào và chính filter là một tích vô hướng Một tích vô hướng là phép nhân tương ứng từng phần tử (element-wise) của hai ma trận cùng kích thước giữa dữ liệu đầu vào và filter, sau đó được tính tổng, kết quả một giá trị duy nhất Bởi vì kết quả là một giá trị duy nhất, phép tính này thường được gọi là "tích vô hướng" [24]
Hình 4.4 Bộ lọc được áp dụng cho đầu vào hai chiều để tạo feature map [24]
Việc sử dụng một filter kích thước nhỏ hơn đầu vào là có chủ đích vì nó cho phép cùng một filter (tập hợp các trọng số) được nhân với mảng đầu vào nhiều lần tại các điểm khác nhau trên đầu vào Cụ thể, bộ lọc được áp dụng một cách có hệ thống cho từng phần chồng chéo hoặc một mảng con bằng với kích thước bộ lọc của dữ liệu đầu vào, từ trái sang phải, từ trên xuống dưới Việc sử dụng có hệ thống cùng một bộ lọc trên một hình ảnh là một ý tưởng mạnh mẽ. Nếu bộ lọc được thiết kế để phát hiện một loại đặc điểm cụ thể trong đầu vào, thì việc áp dụng bộ lọc đó một cách có hệ thống trên toàn bộ hình ảnh đầu vào cho phép bộ lọc có cơ hội khám phá đặc điểm đó ở bất kỳ đâu trong hình ảnh Khả năng này thường được gọi là translation invariance, ví dụ như việc xem xét đối tượng địa lý có hiện diện hay không thay vì vị trí của đối tượng địa lý trong ảnh. Đầu ra từ việc nhân bộ lọc với mảng đầu vào mỗi lần là một giá trị duy nhất Khi
48 bộ lọc được áp dụng nhiều lần cho mảng đầu vào, kết quả là một mảng hai chiều các giá trị đầu ra đại diện cho việc lọc đầu vào Do đó, mảng đầu ra hai chiều từ hoạt động này được gọi là "feature map", là các đặc trưng trích ra từ đối tượng.
Khi một feature map đã được tạo, chúng ta có thể chuyển từng giá trị trong feature map qua một hàm phi tuyến tính, chẳng hạn như ReLU, giống như chúng ta làm đối với các đầu ra của một fully connected layer trong các mạng neural cơ bản.
Như vậy, khi ta có một đầu vào, chẳng hạn như hình ảnh bao gồm các giá trị pixel và chúng ta có một bộ lọc, là một tập hợp các trọng số và bộ lọc được áp dụng một cách có hệ thống vào dữ liệu đầu vào để tạo ra một feature map là các đặc trưng mà CNN nhìn thấy từ đối tượng.
CNN nói một cách ngắn gọn cũng có thể áp đụng được trong các bài toán dự báo chuỗi thời gian Có nhiều loại mô hình CNN có thể được sử dụng cho từng loại bài toán dự báo chuỗi thời gian cụ thể:
CNN có thể được sử dụng để lập mô hình các vấn đề dự báo chuỗi thời gian đơn biến Chuỗi thời gian đơn biến là tập dữ liệu bao gồm một chuỗi quan sát đơn lẻ với thứ tự thời gian và một mô hình được yêu cầu để học hỏi từ chuỗi quan sát trong quá khứ để dự đoán giá trị tiếp theo trong chuỗi.
Dữ liệu chuỗi thời gian đa biến có nghĩa là dữ liệu có nhiều hơn một quan sát cho mỗi bước thời gian.
- Multi-step CNN Models Đưa ra kết quả dự báo ở nhiều bước thời gian khác nhau trong tương lai
- Multivariate Multi-step CNN Models
Kết hợp giữa hai mô hình Multivariate và Multi-step CNN Models
Recurrent Neural Networks với dữ liệu chuỗi thời gian
Recurrent Neural Networks (RNNs) là một loại mạng neural nhân tạo (Artificial Neural Networks) sử dụng dữ liệu tuần tự hoặc dữ liệu chuỗi thời gian. Các thuật toán học sâu này thường được sử dụng cho các vấn đề thứ tự hoặc thời gian, chẳng hạn như dịch ngôn ngữ, xử lý ngôn ngữ tự nhiên (NLP), nhận dạng giọng nói và chú thích hình ảnh Chúng được tích hợp vào các ứng dụng phổ biến như Siri, tìm kiếm bằng giọng nói và Google Dịch Giống như feedforward và convolutional neural networks (CNNs), RNNs sử dụng dữ liệu đào tạo để học. Chúng được cung cấp thêm “bộ nhớ” khi chúng sử dụng thông tin từ các đầu vào trước đó để tác động đến đầu vào và đầu ra hiện tại Trong khi mạng neural sâu truyền thống giả định rằng đầu vào và đầu ra là độc lập với nhau, đầu ra của RNNs phụ thuộc vào các phần tử trước đó trong chuỗi Mặc dù các sự kiện trong tương lai cũng sẽ hữu ích trong việc xác định đầu ra của một chuỗi tuần tự, nhưng RNN một chiều không thể tính đến những sự kiện này trong dự đoán của nó Khi so sánh với mạng neural truyền thống với ba layer là input layer, hidden layer và output layer như Hình 4.6
RNNs được tạo ra để khắc phục một số nhược điểm của mạng neural truyền thống như [26]:
-Không thể xử lý dữ liệu tuần tự
-Chỉ xem xét đầu vào hiện tại
-Không thể ghi nhớ các đầu vào trước đó
Hình 4.6 Feed Forward Neural Network [27]
RNNs hoạt động dựa trên nguyên tắc lưu lại đầu ra của một lớp cụ thể và đưa phần này trở lại đầu vào để dự đoán đầu ra tiếp theo của lớp Nó có thể xử lý dữ liệu tuần tự, chấp nhận dữ liệu đầu vào hiện tại và các đầu vào đã nhận trước đó. RNNs có thể ghi nhớ các đầu vào trước đó do bộ nhớ trong của nó.
Có bốn loại RNNs phổ biến là [26]:
Hình 4.8 One to One RNNs [26]
Loại mạng neural này được gọi là Vanilla Neural Network Nó được sử dụng cho các vấn đề chung về máy học, có một đầu vào và một đầu ra duy nhất.
Hình 4.9 One to Many RNNs [26]
Loại mạng neural này có một đầu vào duy nhất và nhiều đầu ra Một ví dụ về điều này là bài toán chú thích hình ảnh.
Hình 4.10 Many to One RNNs [26]
RNNs này nhận một chuỗi các đầu vào và tạo ra một đầu ra duy nhất
Phân tích cảm xúc là một ví dụ điển hình của loại mạng này, trong đó một câu nhất định có thể được phân loại là thể hiện tình cảm tích cực hoặc tiêu cực.
Hình 4.11 Many to Many RNNs [26]
RNNs này nhận một chuỗi các đầu vào và tạo ra một chuỗi các đầu ra. Tuy nhiên RNNs có hai vấn đề cơ bản đó là:
RNNs khó đào tạo vì vấn đề gradient, RNNs gặp phải vấn đề về suy giảm gradient Trong quá trình lan truyền ngược, các mạng neural lặp lại gặp phải vấn đề về suy giảm gradient Gradient là các giá trị được sử dụng để cập nhật trọng số mạng neural Vấn đề về gradient suy giảm là khi gradient ngày càng nhỏ khi nó lan truyền trở lại theo thời gian Nếu một giá trị gradient trở nên cực kỳ nhỏ, nó không đóng góp quá nhiều vào việc học (bộ nhớ ngắn hạn).
Trong khi đào tạo một mạng neural, nếu độ dốc có xu hướng phát triển theo cấp số nhân thay vì giảm dần, thì đây được gọi là Gradient Exploding Vấn đề này phát sinh khi các gradient lỗi lớn tích tụ, dẫn đến các cập nhật rất lớn đối với trọng số mô hình mạng nơ-ron trong quá trình đào tạo.
Long Short-term Memory Networks với dữ liệu chuỗi thời gian
Mô hình RNNs có nhược điểm bởi bộ nhớ ngắn hạn Nếu một chuỗi đủ dài, chúng sẽ gặp khó khăn trong việc chuyển tải thông tin từ các bước thời gian trước đó đến các bước sau Điều này là do vấn đề Vanishing Gradient của RNNs đã được trình bày trong mục 4.4 Do đó RNNs có thể bỏ sót các thông tin quan trọng khi đưa ra các dự báo.
Mô hình LSTMs được tạo ra như một giải pháp cho vấn đề bộ nhớ ngắn hạn Chúng có các cơ chế bên trong được gọi là các cổng có thể điều chỉnh luồng thông tin Các cổng này có thể nhận biết dữ liệu nào trong chuỗi là quan trọng để giữ lại nó hoặc loại bỏ Bằng cách làm điều đó, LSTMs có thể lưu giữ thông tin
Một LSTMs có một luồng điều khiển tương tự như một RNNs Nó xử lý dữ liệu và truyền thông tin khi nó truyền đi Sự khác biệt giữa RNNs và LSTMs nằm ở cấu trúc của các LSTMs cell.
Hình 4.12 Cấu trúc một cell LSTM
Khái niệm cốt lõi của LSTMs là Cell State (Ct), nó có thể được hiểu như bộ nhớ của mạng Về lý thuyết, Ct có thể mang thông tin liên quan trong suốt quá trình xử lý tuần tự Vì vậy, ngay cả thông tin từ các bước thời gian trước đó cũng có thể được sử dụng ở các bước thời gian muộn hơn, giảm tác động của bộ nhớ ngắn hạn Khi Ct tiếp tục hành trình, thông tin sẽ được thêm hoặc xóa vào Ct thông qua các cổng Các cổng là các mạng neural khác nhau quyết định thông tin nào được phép trên Ct Các cổng có thể tìm hiểu thông tin nào quan trọng để giữ lại hoặc bỏ đi trong quá trình đào tạo.
Có ba loại cổng khác nhau điều chỉnh luồng thông tin trong một LSTM Cell đó là forget gate, input gate, và output gate Tổng kết lại, forget gate quyết định những gì liên quan cần giữ lại từ các bước trước Input gate quyết định thông tin nào có liên quan để thêm từ bước hiện tại Output gate xác định trạng thái ẩn tiếp theo sẽ là gì [28].
Dưới đây mô tả các bước xảy ra trong một LSTM Cell khi thông tin đi vào [26]: Bước đầu tiên trong LSTM là quyết định thông tin nào nên được bỏ qua khỏi cell trong bước thời gian cụ thể đó Hàm sigmoid được sử dụng để xác định điều này.
Nó kết hợp trạng thái ẩn ℎ −1 với đầu vào hiện tạivà tính toán hàm
PT 4.1 là forget gate, quyết định thông tin nào cần được loại bỏ từ trạng thái trước đó.
Bước tiếp theo, có hai phần Một là hàm sigmoid, và một là hàm tanh. Trong hàm sigmoid, nó quyết định giá trị nào sẽ cho qua (0 hoặc 1) Hàm tanh đưa ra trọng số cho các giá trị được truyền, quyết định mức độ quan trọng của chúng (-1 đến 1).
4.3 là cổng đầu vào, xác định thông tin nào sẽ đi qua dựa trên tầm quan trọng của nó trong bước thời gian hiện tại.
Bước thứ ba là quyết định đầu ra sẽ là gì Đầu tiên, thông tin chạy qua một hàm sigmoid, hàm này quyết định phần nào của cell state được đưa đến đầu ra Sau đó, chúng tôi đặt cell state thông qua hàm tanh để đẩy các giá trị từ -1 đến 1 và nhân nó với đầu ra của cổng sigmoid.
4.5 là cổng đầu ra cho phép thông tin được chuyển vào để tác động đến đầu ra trong bước thời gian hiện tại.
Bảng 4.1 Mã giả mô tả hoạt động một cell LSTM Python pseudo: LSTM cell def LSTMCELL (prev_ct, prev_ht, input): combine = prev_ht + input ft = forget_layer(combine) candidate = candidate_layer(combine) it = input_layer(combine) ct = prev_ct * ft + candidate * it ot = output_layer(combine) ht = ot * tanh(Ct) return ht, ct
Là một phiên bản cải tiến tốt hơn RNNs, khắc phục các nhược điểm về bộ nhớ ngắn hạn nên LSTMs có thể được sử dụng cho các bài toán dự báo chuỗi thời gian tương tự như RNNs Với các dạng LSTMs model cho các bài toán cụ thể:
-Multivariate Multi-step CNN Models
Tổng kết
Chương này tác giả đã trình bày tổng quan cơ sở lý thuyết về dự báo chuỗi thời gian, deep learning cũng như các mô hình CNN, RNN, LSTM với dữ liệu chuỗi thời gian Chương tiếp theo tác giả sẽ trình bày về xây dựng và triển khai mô hình dự báo.
XÂY DỰNG VÀ TRIỂN KHAI MÔ HÌNH DỰ BÁO
Kiến trúc module dự báo
Các thành phần chính của module dự báo được mô tả trong Hình 5.1
Hình 5.1 Các thành phần chính của module dự báo
Chức năng chính của module dự báo được mô tả qua 4 thành phần đánh số trong Hình 5.1
Số 1: Các dữ liệu đo đạc nhận được từ phân hệ cảm biến và phân hệ trạm gốc được lưu trữ vào database, sau đó được lấy ra và chuẩn hóa làm dữ liệu đầu vào huấn luyện mô hình
Số 2: Huấn luyện mô hình dựa theo các dữ liệu đã chuẩn hóa
Số 3: Triển khai API dự báo dựa trên mô hình huấn luyện được
Số 4: Client (web/app) gọi API dự báo để lấy kết quả dự báo
Lưu đồ xây dựng mô hình
Hình 5.2 Lưu đồ xây dựng mô hình dự báo cho hệ thống quan trắc môi trường nước
Hình 5.2 thể hiện lưu đồ xây dựng mô hình dự báo Các bước xây dựng và lựa chọn mô hình như sau: Đầu tiên dữ liệu thô sẽ được tiền xử lý để loại bỏ các dữ liệu bị sai, thiếu… Tiếp đó tập dữ liệu sau khi tiền xử lý được chia ra làm 2 tập, tập huấn luyện (training set) và tập kiểm thử (test set).
Tập huấn luyện đem đi xây dựng 3 mô hình (RNN, LSTM và GRU) sau đó so sánh kết quả cũng như độ chính xác của 3 mô hình từ đó lựa chọn ra mô hình phù hợp nhất.
Cuối cùng mô hình phù hợp nhất được lựa chọn làm mô hình dự báo.
Xây dựng bộ dữ liệu huấn luyện mạng
Để chuẩn bị cho quá trình nguyên cứu, thử nghiệm và triển khai ứng dụng cần phải có một bộ dữ liệu sử dụng cho quá trình huấn luyện mạng, và kiểm tra mạng Đề tài này sử dụng thông số dữ liệu môi trường nước ở vịnh Xuân Đài đã đo đạc được từ ngày 03/07/2020 cho đến ngày 21/07/2020 Ngoài ra, dữ liệu các thông số môi trường được lấy từ dữ liệu quan trắc tổng hợp ở Phú Yên trong những 2019, 2020, 2016, 2017, 2018, 2015 với tổng cộng 1887 điểm.
5.3.1 Tiền xử lý dữ liệu
Các bước tiền xử lý dữ liệu thực hiện các công việc sau đây:
-Chuyển đổi dạng dữ liệu thời gian trong cột TimePackage về theo chuẩn
-Loại bỏ các thông số không hề đo đạc trong thời gian dự tính, nguyên nhân xuất hiện các mốc thời gian trên có thể là do sai sót trong bộ đếm thời gian của các cảm biến
-Loại bỏ cột index “ID”, cột “DeviceID” do khoảng cách địa lý giữa các sensor là không đáng kể nên không cần phân biệt là dữ liệu được lấy từ sensor nào
-Thay các giá trị NaN bằng phương pháp nội suy tuyến tính, tức là giá trị NaN sẽ được thay bằng một giá trị nên trên đường nối từ giá trị cũ gần nhất và giá trị mới gần nhất đã được đo
-Phác thảo lại toàn bộ tập dữ liệu.
Các thư viện cần thiết cho bước tiền xử lý:
Numpy(): được sử dụng để thực hiện các phép toán cơ bản với mảng và ma trận
Pyplot() từ matplotlib được sử dụng để mô phỏng kết quả Pandas() được sử dụng để đọc dữ liệu
MinMaxScaler() từ sklearn được sử dụng để điều chỉnh dữ liệu
5.3.2.1 Chuẩn hóa dữ liệu từ các node cảm biến
Dữ liệu gửi về từ phân hệ cảm biến (các node) đến server được lưu trữ trên mongodb, cấu trúc mongodb để lưu trữ dữ liệu như sau:
Hình 5.3 Cấu trúc dữ liệu trong database
59 Để sử dụng nó làm dữ liệu đào tạo cần chuẩn hóa dữ liệu, loại bỏ các dữ liệu bị sai, bị khuyết thiếu không đạt yêu cầu.
Các node được cấu hình để đẩy các tham số đo lên server sau mỗi khoảng thời gian định trước, do đó tần suất gửi dữ liệu mới lên server không cố định Các dữ liệu không được chuẩn hóa về mặt thời gian này không thể sử dụng để cập nhật model dùng cho việc dự báo được Để khắc phục vấn đề này nhóm nghiên cứu xây dựng ứng dụng để chuẩn hóa dữ liệu (PYDataPrepare) Ứng dụng này cho phép lấy ra các bản ghi trong một khoảng thời gian t (t có thể thay đổi được, mặc định là 3h trước) trong quá khứ, lấy giá trị trung bình và lưu lại vào một collection khác (train_data), dữ liệu trong collection này được dùng để cập nhật model cũ sau mỗi khoảng thời gian định trước.
Hình 5.4 Chuẩn hóa dữ liệu 5.3.2.2 Chuẩn hóa dữ liệu để huấn luyện mô hình Để đảm bảo độ ổn định trong quá trình đào tạo và kiểm tra, cần chuẩn hóa dữ liệu về các giá trị trong phạm vi từ 0 đến 1 Lý do cần thực hiện bước chuẩn hóa dữ liệu này là: Đầu ra của các cổng xóa và cổng cập nhật (trong GRU), hay các cổng quên và cổng đầu vào (trong LSTM) đều nằm trong phạm vi (0,1) Vì vậy, việc điều chỉnh này về mặt định tính sẽ làm cho mô hình ổn định hơn trong các lần đào tạo.
Ta sử dụng chung một mô hình dự báo cho 7 tham số nên cần chuẩn hóa dữ liệu để đảm bảo tính đúng đắn và tương thích của các tham số.
Lựa chọn phương pháp chuẩn hóa min-max:
X_std = (X - X.min(axis=0)) / (X.max(axis=0) - X.min(axis=0)) X_scaled X_std * (max - min) + min
Trong sklearn, có sẵn hàm MinMaxScaler() Ví dụ với nồng độ pH, việc chuẩn hoán dữ liệu như sau: from sklearn.preprocessing import MinMaxScaler PH_scaler = MinMaxScaler() PH_training = PH_scaler.fit_transform(PH_training) PH_test PH_scaler.fit_transform(PH_test)
Dữ liệu sau khi được điều chỉnh có thể được đưa lại trở về dạng ban đầu bằng cách gọi hàm inverse_transform:
PH_y_test = PH_scaler.inverse_transform(PH_y_test)
Trong mô hình này, ta sử dụng 60 điểm dữ liệu để làm đầu vào cho kết quả để dự báo cho 1 điểm đầu ra Vì vậy, ngoài việc chia dữ liệu thành train với test, ta chia dữ liệu thành các điểm X (đầu vào) và y (đầu ra) để phụ vụ cho việc đào tạo và kiểm thử kết quả: def get_x_y(data): X_train = [] y_train = [] for i in range(60, data.shape[0]): X_train.append(data[i-60:i]) y_train.append(data[i, 0])
X_train, y_train = np.array(X_train), np.array(y_train) return X_train, y_train Sau khi được chia thì kết quả trả về X_train là một ma trận 2 chiều với chiều dài tường đương với chiều dài của y trai, còn chiều rộng của X_train là 60.
Mô hình sử dụng LSTM
5.4.1 Khởi tạo Ởbước xây dựng mô hình, ta lựa chọn 60 tham số làm điểm đầu vào để dự báo (tương đương với 10 ngày) ReLUs() là hàm kích hoạt hiện tại phổ biến nhất, nên thay vì sử dụng tanh để tính toán giá trị đầu ra như ở phần cơ sở lý thuyết, ta thay thế hàm tác động ở đây là ReLUs() Khởi tạo mô hình dự báo sử dụng các cổng LSTM:
LSTM_model.add(LSTM(units = 60, activation = ’relu’, return_sequences True, input_shape = (X_train.shape[1], 1))) LSTM_model.add(Dropout(0.2)) LSTM_model.add(LSTM(units = 60, activation = ’relu’, return_sequences True)) LSTM_model.add(Dropout(0.2))
LSTM_model.add(LSTM(units = 80, activation = ’relu’, return_sequences True)) LSTM_model.add(Dropout(0.2))
LSTM_model.add(LSTM(units = 120, activation = ’relu’))
LSTM_model.add(Dense(units = 1))
Lớp đầu tiên là LSTM layer với 60 node Các lớp sau lần lượt là 60-80-
120 và 1 lớp cuối cùng là lớp kết nối đầy đủ Sử dụng hàm relu() làm hàm kích hoạt Dropout được sử dụng tránh bị overfitting Mô hình được đào tạo với phương pháp tối ưu Adam và hàm lỗi là sai số bình phương trung bình.
Tuy không có quy tắc hay công thức nào trong việc lựa chọn dropout Do vậy ta chọn dropout bằng cách chạy thử kết quả của mô hình trên với dropout lần lượt là [0.1, 0.2, 0.3, 0.4, 0.5] để tìm dropout phù hợp nhất.
Bảng 5.1 Bảng thống kê các sai số của các dropout khác nhau
Thời Sai số Sai số Sai số Phạm vi Phương Độ lệch gian Trung lớn nhỏ sai số sai chuẩn đào tạo bình nhất nhất (phút)
Từ kết quả Bảng 5.1, ta lựa chọn dropout = 0.1 là giá trị cho kết quả dự báo tốt nhất Kết quả kiểm tra được thể hiện trong Bảng 5.2 và Hình 5.5.
Bảng 5.2 Kết quả kiểm tra mô hình LSTM với tham số Nhiệt độ
Sai số Sai số lớn Sai số nhỏ Phạm vi Độ lệch
Trung Phương sai nhất nhất sai số chuẩn bình Nhiệt độ 0.4237 3.7284 0.0002 3.7282 0.1605 0.4007
Hình 5.5 Đối chiếu kết quả dự báo nhiệt độ của mô hình LSTM với thực tế
Ta chỉnh sửa mô hình sử dụng bằng cách thay các lớp LSTM ở trên vớiSimpleRNN và GRU (các mô hình có kiến trúc gần giống với mô hình LSTM ở trên), giữ nguyên phương pháp đào tạo và hàm lỗi.
Mô hình RNN cơ bản (SimpleRNN)
Với mô hình SimpleRNN sử dụng kiến trúc 4 lớp hồi tiếp như LSTM, kết quả chênh lệch khá nhiều so với LSTM Khởi tạo mô hình như sau:
RNN_model.add(tf.keras.layers.SimpleRNN(units = 60, activation = ’relu’, return_sequences = True, input_shape = (X_train.shape[1], 1)))
RNN_model.add(tf.keras.layers.SimpleRNN(units = 60, activation = ’relu’, return_sequences = True)) RNN_model.add(Dropout(0.1))
RNN_model.add(tf.keras.layers.SimpleRNN(units = 80, activation = ’relu’, return_sequences = True)) RNN_model.add(Dropout(0.1))
RNN_model.add(tf.keras.layers.SimpleRNN(units = 120, activation = ’relu’)) RNN_model.add(Dropout(0.1))
RNN_model.add(Dense(units = 1))
Kết quả của mô hình này được thể hiện trong Bảng 5.3 và Hình 5.6.
Bảng 5.3 Kết quả kiểm tra mô hình SimpleRNN với tham số Nhiệt độ
Sai số Sai số lớn Sai số nhỏ Phạm vi Phương sai Độ lệch
Trung nhất nhất sai số chuẩn bình Nhiệt độ 1.1232 4.9605 0.0002 4.9602 0.6779 0.8233
Hình 5.6 Đối chiếu kết quả dự báo nhiệt độ của mô hình SimpleRNN với thực tế.
Với mô hình SimpleRNN 2 lớp hồi tiếp, ta bỏ đi 2 lớp hồi tiếp cuối Lớp đầu tiên và thứ 2 đều có 60 nút Khởi tạo và chạy mô hình:
RNN_model.add(tf.keras.layers.SimpleRNN(units = 60, activation = ’relu’, return_sequences = True, input_shape = (X_train.shape[1], 1)))
RNN_model.add(tf.keras.layers.SimpleRNN(units = 60, activation = ’relu’))
RNN_model.add(Dropout(0.1)) RNN_model.add(Dense(units = 1))
Kết quả của mô hình dự báo SimpleRNN sử dụng 2 lớp hồi tiếp được cải thiện tốt hơn so với SimpleRNN khi sử dụng 4 lớp hồi tiếp.
Bảng 5.4 Kết quả kiểm tra mô hình SimpleRNN 2 lớp với tham số Nhiệt độ
Sai số Sai số lớn Sai số nhỏ Phạm vi Phương Độ lệch
Trung nhất nhất sai số sai chuẩn bình
Mô hình GRU
Phương pháp đào tạo của mô hình GRU được thực hiện giống với LSTM. Kết quả kiểm thử của mô hình là:
GRU_model.add(tf.keras.layers.GRU(units = 60, activation = ’relu’, return_sequences = True, input_shape = (X_train.shape[1], 1)))
GRU_model.add(tf.keras.layers.GRU(units = 60, activation = ’relu’, return_sequences = True)) GRU_model.add(Dropout(0.1))
GRU_model.add(tf.keras.layers.GRU(units = 80, activation = ’relu’, return_sequences = True)) GRU_model.add(Dropout(0.1))
GRU_model.add(tf.keras.layers.GRU(units = 120, activation = ’relu’))
GRU_model.add(Dense(units = 1))
Bảng 5.5 Kết quả kiểm tra mô hình GRU với tham số Nhiệt độ
Sai số Sai số lớn Sai số nhỏ Phạm vi Phương Độ lệch
Trung bình nhất nhất sai số sai chuẩn
Hình 5.7 Đối chiếu kết quả dự báo nhiệt độ của mô hình GRU với thực tế.
Lựa chọn mô hình phù hợp
Các phân tích trên cho thấy mô hình GRU và LSTM cho kết quả khá tương đồng LSTM đạt kết quả tốt nhất kể cả ở phương sai, phạm vi sai số, sai số lớn nhất cũng như sai số trung bình Mô hình sử dụng GRU cho kết quả sai số nhỏ nhất tốt nhất, nhưng ở các thuộc tính khác (phương sai, phạm vi sai số, sai số lớn nhất) đều cho kết quả kém hơn so với mô hình LSTM Do vậy, tác giả lựa
65 chọn mô hình LSTM là mô hình chính để đánh giá kết quả đào tạo cho các tham số môi trường khác.
Sự phụ thuộc lẫn nhau của các tham số quan trắc
Chi tiết về các đặc tính hóa-lý của các tham số nguồn nước đã được trình bày trong CHƯƠNG 2 mục 2.3, tại đây các tham số được trình bày một cách riêng rẽ với nhau nhưng thực chất ta biết rằng các tham số nguồn nước không tồn tại độc lập Trái lại một số tham số có sự phụ thuộc qua lại vào nhau, một số tham số phụ thuộc vào một hoặc một vài tham số khác Ví dụ như có một mối liên hệ giữa độ pH và nhiệt độ, nhiệt độ thay đổi có thể kéo theo sự thay đổi của pH do nhiệt độ tăng làm tăng quá trình điện ly Trong nghiên cứu của Hunter Keith [29] chỉ ra cách ước lượng pH khi nhiệt độ thay đổi từ giá trị pH trong môi trường đó ở nhiệt độ 25°C.
Một sự liên hệ có thể nhìn thấy nữa là mối liên hệ giữa nồng độ oxy trong nước (DO) và nhiệt độ nước Nếu nhiệt độ của nguồn nước có xu hướng tăng, thì nồng độ oxy trong nước hay nồng độ DO có xu hướng giảm, do mối quan hệ nghịch đảo giữa hai đại lượng này [30] Như vậy có một mối liên hệ mật thiết giữa các tham số nguồn nước được quan trắc, và điều này hữu ích cho việc cải tiến mô hình dự báo tham số nguồn nước.
Cải tiến mô hình LSTM với nhiều tham số đầu vào (LSTM đa biến)
Trong mô hình LSTM ở trên, khi tiến hành xây dựng mô hình cũng như dự báo giá trị của một tham số nguồn nước trong tương lai, mới chỉ xét đến các giá trị của chính tham số đó trong quá khứ (LSTM đơn biến) mà chưa xét đến tính tương quan, phụ thuộc lẫn nhau của các tham số Điều này có thể làm giảm tính chính xác cũng như độ tin cậy của dự báo Để khắc phục vấn đề này ta có thể thử nghiệm ý tưởng xây dựng mô hình dự báo tham số nguồn nước có xét đến sự tương quan này, nhằm cải tiến độ chính xác của mô hình đối với các tham số dự báo có độ chính xác chưa cao khi sử dụng mô hình cũ.
Thử nghiệm sử dụng ba tham số đầu vào là nồng độ H2S, độ pH và nhiệt độ trong quá khứ kết hợp với kết quả nhiệt độ ở thời điểm hiện tại làm dữ liệu huấn luyện Tương tự với dữ liệu kiểm thử như Hình 5.8
Hình 5.8 Tập huấn luyện và tập kiểm thử với đa biến đầu vào.
Sau khi chuẩn bị và chuẩn hóa dữ liệu, tiến hành xây dựng LSTM model với các lớp như sau:
Hình 5.9 Mô tả các lớp và cấu trúc đầu ra mô hình LSTM
Mô hình được đào tạo với thuật toán tối ưu là Adam và hàm lỗi là sai số tuyệt đối trung bình Input layer có 70 neural, ouput layer có 1 neural Ta lựa chọn epochs = 200 và batch_size = 72 Chi tiết mã nguồn được đưa vào trong phần phụ lục A2.
Retrain model khi có dữ liệu mới
Trong các bài toán về dữ liệu chuỗi thời gian, thông thường các model được huấn luyện bằng các dữ liệu cố định, có sẵn được thu thập theo format định sẵn Các dữ liệu này thường có dạng file csv hoặc txt Model sau khi train xong được lưu trữ dưới dạng file (pkl hoặc h5 ) sau đó được load lại và dùng nó để dự báo cho các giá trị trong tương lai Nhược điểm của phương pháp này là model ít khi được cập nhật thường xuyên, trong khi với đặc trưng của dữ liệu chuỗi thời gian, đặc biệt là dữ liệu liên quan đến nguồn nước có thể thay đổi rất nhanh các đặc trưng, đặc tính, hoặc theo mùa vụ Do đó một bộ dữ liệu có thể là tốt ở thời điểm này nhưng lại không phù hợp trong một thời điểm khác trong tương lai Nhìn chung các hệ thống dự báo với dữ liệu chuỗi thời gian mô hình hoạt động như sau:
Hình 5.10 Huấn luyện với dữ liệu cứng
Bước đầu tiên dữ liệu được chuẩn bị dưới dạng bảng biểu dưới dạng các file, dữ liệu được thu thập từ các thời điểm trong quá khứ, dữ liệu này được sử dụng trong việc huấn luyện model Bước tiếp theo, dữ liệu được load và tiền xử lý, sau đó tiến hành train model, model sau khi train xong được lưu lại dưới dạng file Bước cuối cùng là deploy model đã được train, nghĩa là sử dụng model sản phẩm cho việc dự báo Phổ biến nhất là tạo ra các API dự báo, với việc load các file model đã được huấn luyện trước đó, sau đó sử dụng nó để lấy ra các giá trị dự báo và trả về kết quả cho client Do đặc trưng các file model hiếm khi được cập nhật mới nên kết quả dự báo có xu hướng thiếu chính xác dần theo thời gian. Giải pháp cho vấn đề trên là các hệ thống cần cập nhật model với tần suất thường xuyên hơn, nhằm tăng hoặc ít nhất không làm suy giảm độ chính xác của dự báo.
Hệ thống mới sẽ thường xuyên cập nhật các quan sát hay bản ghi mới và thực hiện cập nhật model.
Hình 5.11 Huấn luyện mô hình khi có dữ liệu mới
Khi đã có dữ liệu mới, để cập nhật model có thể có 2 phương pháp sau đây:
-Sử dụng model cũ và tiến hành retrain nó với dữ liệu mới.
-Dữ liệu mới sẽ được train thành model mới, sau đó kết hợp với kết quả dự báo của model cũ để cho ra kết quả dự báo cuối cùng.
Trong phạm vi của luận văn này, chúng tôi sử dụng phương pháp đầu tiên, do các dữ liệu thời gian thực về tham số nguồn nước được cập nhật rất thường xuyên, nên việc tạo ra các model mới với tần suất lớn có thể ảnh hưởng tới khả năng xử lý khi số lượng model mới tăng cao.
Khi sử dụng model cũ và tiến hành retrain model cũ với dữ liệu mới có hai cách thực hiện việc cập nhật model Một là tiếp tục huấn luyện model chỉ với dữ liệu mới, hai là tiếp tục huấn luyện model trên tổng hợp của hai tập dữ liệu cũ và mới.
Hình 5.12 Các phương pháp cập nhật model
Pseudo code mô tả huấn luyện model cũ chỉ với dữ liệu mới:
Bảng 5.6 Cập nhật mô hình với chỉ dữ liệu mới
Update model on new data only
FIT the model on old data model.fit(X_old, y_old, epochs=, batch_size=)
FIT the model on new data model.fit(X_new, y_new, epochs=, batch_size=)
Trong cách thực hiện này, model sau khi được huấn luyện lần đầu tiên(với dữ liệu X_old, y_old) được lưu trữ lại dưới dạng file Khi có dữ liệu mới, để tiến hành cập nhật model ta thực hiện việc load lại model cũ, sau đó thực hiện retrain model cũ nhưng với chỉ dữ liệu mới (X_new, y_new) mà thôi.
Pseudo code mô tả huấn luyện model cũ với cả
Bảng 5.7 Cập nhật mô hình với dữ liệu cũ và dữ liệu mới: dữ liệu cũ và mới
Update model on old and new data
FIT the model on old data model.fit(X_old, y_old, epochs=, batch_size=)
CREATE a composite dataset of old and new data
X_both, y_both = vstack((X_old, X_new)), hstack((y_old, y_new))
FIT the model on new data model.fit(X_both, y_both, epochs=, batch_size=)
Trong cách thực hiện này, model sau khi được huấn luyện lần đầu tiên (với dữ liệu X_old, y_old) được lưu trữ lại dưới dạng file Khi có dữ liệu mới, để tiến hành cập nhật model ta thực hiện việc load lại model cũ, sau đó tổng hợp cả hai dữ liệu cũ và mới (X_both, y_both) và tiến hành retrain lại model dưới dữ liệu tổng hợp này.
Tổng kết
Các nội dung trong chương này đã trình bày được quá trình xây dựng và cải tiến nâng cao hiệu quả của mô hình dự báo, cũng như phương pháp cập nhật lại mô hình dự báo khi có thêm các dữ liệu quan trắc thực tế mới.
KẾT QUẢ VÀ ĐÁNH GIÁ
Đánh giá kết quả dự báo (LSTM đơn biến)
Thời gian kiểm thử đối với các thông số nhiệt độ, độ mặn, PH, NH3, TSS,
DO, COD: 6h ngày 9/10/2020 đến 12h00 ngày 16/12/2020 với 472 điểm để kiểm thử. Ởphần này ta xây dựng biểu đồ để so sánh kết quả dự báo và kết quả thực tế Đồng thời hiển thị biểu đồ hàm phân phối tích lũy (CDF Cumulative Distribution Function) Hàm này tính toán xác suất tích lũy cho một giá trị x nhất định Sử dụng CDF để xác định xác suất mà một quan sát ngẫu nhiên được lấy từ tổng thể sẽ nhỏ hơn hoặc bằng một giá trị nhất định.
6.1.1 Đánh giá kết quả dự báo tham số nhiệt độ
Kết quả đánh giá tổng kết mô hình dự báo đối với tham số nhiệt độ:
- Sai số trung bình là 0.4237
- Sai số nhỏ nhất là 0.0002
- Sai số lớn nhất là 3.7284
Biều đồ so sánh kết quả dự báo với kết quả trong tập kiểm thử được biểu diễn trên Hình 6.1 Biểu đồ phân phối tích lũy sai số đối với tham số nhiệt độ được biểu diễn trên Hình 6.2.
Hình 6.1 So sánh kết quả dự báo nhiệt độ với giá trị đo thực tế
Nhìn vào đồ thị Hình 6.1 cho thấy kết quả dự báo cho độ chính xác chưa cao, các đường dự báo chỉ cho thấy được xu hướng chung của sự biến đổi nhiệt độ.
Hình 6.2 Phân phối tích lũy sai số giữa giá trị dự báo nhiệt độ và giá trị đo thực tế Trong khi phân phối tích lũy sai số CDF (Cumulative Distribution
Function) trên Hình 6.2 cho thấy độ chính xác lớn hơn 90% khi sai số nhiệt độ ở khoảng 1.6℃.
6.1.2 Đánh giá kết quả dự báo tham số độ mặn
Kết quả đánh giá tổng kết mô hình dự báo đối với tham số độ mặn:
- Sai số trung bình là 0.6108
- Sai số nhỏ nhất là 0.004
- Sai số lớn nhất là 4.1177
Biều đồ so sánh kết quả dự báo với kết quả trong tập kiểm thử được biểu diễn trên Hình 6.3 Biểu đồ phân phối tích lũy sai số đối với tham số độ mặn được biểu diễn trên Hình 6.4.
Hình 6.3 So sánh kết quả dự báo độ mặn với giá trị đo thực tế.
Hình 6.4 Phân phối tích lũy sai số giữa giá trị dự báo độ mặn và giá trị đo thực tế.
Nhìn vào đồ thị hàm phân phối xác suất, giá trị dự báo lớn hơn 90% khi độ chênh lệnh dự báo lớn hơn 2 mg/l Ngoài ra sai số lớn nhất khi dự báo là 4.1177 là một sai số khá lớn.
6.1.3 Đánh giá kết quả dự báo tham số pH
Kết quả đánh giá tổng kết mô hình dự báo đối với tham số pH:
- Sai số trung bình là 0.13533
- Sai số nhỏ nhất là 3.8337 ∗ 10 −5
- Sai số lớn nhất là 0.79313
Biều đồ so sánh kết quả dự báo với kết quả trong tập kiểm thử được biểu diễn trên Hình 6.5 Biểu đồ phân phối tích lũy sai số đối với tham số pH được biểu diễn trên Hình 6.6.
Hình 6.5 So sánh kết quả dự báo pH với giá trị đo thực tế.
Giá trị pH thực tế rất thấp nên kết quả dự báo chỉ dự báo được xu hướng thay đổi.
Hình 6.6 Phân phối tích lũy sai số giữa giá trị dự báo pH và giá trị đo thực tế Đồ thị phân bố xác suất tích lũy trong Hình 6.6 cho thấy, độ chính xác lớn hơn 90% khi độ chênh lệch dự báo lớn hơn 0.5.Sai số lớn nhất của dự báo chỉ là 0.79313, kết quả này là chấp nhận được Phương sai và độ lệnh chuẩn cho thấy kết quả dự báo biến động không nhiều.
6.1.4 Đánh giá kết quả dự báo tham số NH 3
Kết quả đánh giá tổng kết mô hình dự báo đối với tham số NH3:
- Sai số trung bình của NH3 là 0.01670
- Sai số nhỏ nhất chỉ là 1.283 ∗ 10 −5
Biều đồ so sánh kết quả dự báo với kết quả trong tập kiểm thử được biểu diễn trên Hình 6.7 Biểu đồ phân phối tích lũy sai số đối với tham số NH3 được biểu diễn trên Hình 6.8.
Hình 6.7 So sánh kết quả dự báo NH 3 với giá trị đo thực tế.
Hình 6.8 Phân phối tích lũy sai số giữa giá trị dự báo NH 3 và giá trị đo thực tế
Hàm phân phối xác suất tích lũy của NH3 có kết quả dự báo chính xác lớn hơn 90% khi độ chênh lệch dự báo lớn hơn 0.05 mg/l Sai số lớn nhất của tham số NH 3 rất thấp chỉ ≈ 0.12 mg/l Phương sai và độ lệch chuẩn cũng rất tốt.
6.1.5 Đánh giá kết quả dự báo tham số H 2 S
Kết quả đánh giá tổng kết mô hình dự báo đối với tham số H2S:
- Sai số trung bình là 0.00176
- Sai số nhỏ nhất là 9.609 ∗ 10 −7
- Sai số lớn nhất là 0.025
Biều đồ so sánh kết quả dự báo với kết quả trong tập kiểm thử được biểu diễn trên Hình 6.9 Biểu đồ phân phối tích lũy sai số đối với tham số H2S được biểu diễn trên Hình 6.10.
Hình 6.9 So sánh kết quả dự báo H 2 S với giá trị đo thực tế.
Hình 6.10 Phân phối tích lũy sai số giữa giá trị dự báo H 2 S và giá trị đo thực tế.
Hàm phân phối xác suất có độ chính xác lớn hơn 90% khi độ chênh lệch dự báo lơn hớn 0.005 mg/l Giá trị thực tế của H2S đo được là rất thấp nên sai số dự báo cũng rất thấp Sai số lớn nhất ≈ 0.025 mg/l Phương sai và độ lệch chuẩn đều rất tốt.
6.1.6 Đánh giá kết quả dự báo tham số DO
Kết quả đánh giá tổng kết mô hình dự báo đối với tham số DO:
- Sai số trung bình là 0.2147
- Sai số nhỏ nhất là 0.00097
- Sai số lớn nhất là 1.215
Biều đồ so sánh kết quả dự báo với kết quả trong tập kiểm thử được biểu diễn trên Hình 6.11 Biểu đồ phân phối tích lũy sai số đối với tham số DO được biểu diễn trên Hình 6.12.
Hình 6.11 So sánh kết quả dự báo DO với giá trị đo thực tế.
Hình 6.12 Phân phối tích lũy sai số giữa giá trị dự báo DO và giá trị đo thực tế. Đồ thị phân bố xác suất tích lũy trong Hình 6.12 cho thấy kết quả dự báo lớn hơn
90% khi độ chênh lệch dự báo lớn hơn 0.6 ‰ Đánh giá sai số cho thấy sai số lớn nhất ≈ 1.2 ‰, sai số trung bình ≈ 0.2 ‰ Phương sai và độ lệch chuẩn tương đối tốt, lần lượt ≈ 0.03 và ≈ 0.17.
6.1.7 Đánh giá kết quả dự báo tham số COD
Kết quả đánh giá tổng kết mô hình dự báo đối với tham số COD:
- Sai số trung bình là 0.3935
- Sai số nhỏ nhất là 0.000416
- Sai số lớn nhất là 2.9412
Đánh giá mô hình LSTM đa biến
Hình 6.17 So sánh giá trị nhiệt độ dự báo và thực tế Đường dự báo và đường thực tế khá khớp nhau cho thấy mô hình hoạt động khá chính xác Giá trị dự báo có xu hướng cao hơn một chút so với đường thực tế.
Bảng 6.4 So sánh mô hình LSTM đơn và đa biến đầu vào.
LSTM đơn biến LSTM đa biến
Phương sai 0.1605 0.07603625 Độ lệch chuẩn 0.4007 0.2757467
Thể hiện trực quan trên đồ thị ta có:
So sánh LSTM đơn và đa tham số đầu vào
Sai Số trung Sai số nhỏ nhất Sai số lớn nhất Phạm vi sai số Phương sai Độ lệch chuẩn bình
LSTM đơn biến LSTM đa biến
Hình 6.18 Biểu đồ so sánh các sai số giữa hai mô hình
Nhận xét: Sai số lớn nhất và phạm vi sai số của LSTM đa biến chỉ bằng khoảng 40% của mô hình LSTM đơn biến Ngoài ra cả sai số trung bình, phương sai và độ lệch chuẩn của mô hình cải tiến đều nhỏ hơn đáng kể so với mô hìnhLSTM đơn biến Điều này cho thấy mô hình LSTM đa biến cho độ chính xác cao hơn.
Tổng kết
Chương này đã đưa ra đánh giá về kết quả dự báo đối với mô hình LSTM đơn biến và mô hình đa biến sau khi xem xét tương quan giữa các tham số quan trắc Đồng thời cũng so sánh về độ chính xác của hai mô hình Kết quả cho thấy mô hình đa biến có độ chính xác cao hơn.