Xây dựng cơ sở dử liệu

Một phần của tài liệu NGHIÊN CỨU HỆ THỐNG CẢNH BÁO CHÁY RỪNG SỬ DỤNG IOT KẾT HỢP MACHINE LEARNING (Trang 28 - 32)

Dữ liệu bao gồm nhiệt độ của 6 quận và 2 huyện ở Đà Nẵng vào các mùa mưa và mùa khô (từ t4/2019 cho đến t9/2020) Sau đó tiến hành gán nhãn dữ liệu tạo thành bộ dataset có 10.253 dữ liệu thời tiết về mức độ cảnh báo cháy rừng. Bộ dữ liệu sau khi được lọc các dữ liệu không cần thiết thì bao gồm 5 đặc trưng chủ yếu để đánh giá nguy cơ khả năng cháy rừng trong khu vực, file được download dùng để import vào trong quá trình traning dữ liệu. Các đặc trưng của dữ liệu đầu vào bao gồm Temperature, Relative_Humidity, Wind_Speed, Soil_Temperature và Soil_Moisture. Đặc trưng đầu

27

ra là Caution bao gồm 2 lớp dữ liệu là 0 và 1 {0 là không có nguy cơ khả năng cháy rừng và 1 là có nguy cơ khả ănng cháy rừng}.

Bảng 3-1 Đặc trưng dữ liệu đầu vào

Temp_air (℃) Humi_air (%) Temp_Soild (℃) Humi_ Soild (%) Rain (0/1) Wind (0/1) Bên cạnh đó chúng tôi còn nghiên cứu bổ sung thêm vào bộ dataset các dữ liệu bất thường, thường thấy trong các vụ hoản hoạn từ báo cáo nghiên cứu những yếu tố thời tiết ảnh hưởng đến nguy cơ cháy rừng như: Nhiệt độ trung bình thấp nhưng độ ẩm trung bình lại thấp bất thường nhiệt độ cách mặt đất 10cm cao, độ ẩm cánh đất 10cm thấp (cảnh báo khói có hoặc không), sẽ rơi vào trường hợp người dân đốt rừng làm rẫy, người dân đi rừng cắm trại,….

Các yếu tố bất lợi, model sẽ học bộ dữ liệu và đưa ra cảnh báo có nguy cơ cháy, dựa theo nghiên cứu nhữung yếu tố thời tiết ảnh hưởng đến nguy cơ cháy rừng. Mốt số dữ liệu bất thường dữ liệu thu thập được không theo nguyên tắt, con người khó mà nhận biết được, chúng ta xét qua bảng dữ liệu dưới đây:

Bảng 3-2 Bộ dữ liệu học máy Temperat ure (°C) Relative_Humi dity (%) Wind_Spe ed (km/h) Soil_Temperat ure (°C) Soil_Moist ure (m³/m³) Cauti on 26.65 92 5.23 27.03 0.26 0 26.32 93 5.75 26.87 0.26 0 25.95 43 6.01 26.68 0.26 0 25.50 94 6.33 26.49 0.26 0 25.41 94 6.66 26.30 0.26 0 25.14 94 6.66 26.12 0.26 0 25.59 93 6.66 25.96 0.26 0 28.05 85 6.01 26.04 0.26 0 29.83 76 6.33 26.38 0.26 1 31.19 70 5.49 26.87 0.26 1 31.87 68 4.39 27.41 0.26 1 31.36 40 2.94 27.74 0.27 1

28

Ta xét bảng trên ở cột Temperature là mức nhiệt độ cao nằm trong mức cảnh báo (dựa theo bảng thang đo mức độ hỏa hoạn) lúc này các hộp xốt, đồ nhựa bắt đầu bị nhiệt độ làm cho biết dạng, dựa vào dữ liệu thu thập được ta có thấy thấy nhiệt độ ở mức 31°C trở lên lúc này độ ẩm rất thấp từ (20-40%) rất nguy hiểm.

Xét hàng đầu tiên, lúc này nhiệt độ đang ở mức nguy cơ cao 32.42°C so với hàng 2 thì cột độ ẩm có sự khác biệt ,theo nguyên tắc dữ liệu thu thập được và thực tế thì nhiệt độ cao độ ẩm thấp nhưng ở cột 1 thì độ ẩm lại cao bất thường, độ ẩm cao thì khả năng bốc lửa sẽ thấp hơn, nhưung nhìn chung nhiêịt độ trung bình cao thì nguy cơ cháy rừng vẫn có nên mức cảnh báo ở đây vẫn là 1.

Ta xét hàng 8 và 9 nhiệt độ trung bình ở mức an toàn, nhưng độ ẩm và nhiệt độ mặt đất có sự chênh lệch, ở cột 8 độ ẩm rất thấp 28% lúc này khả năng bắt lửa là rất cao, nguy cơ cháy rừng rất cao, nên mức cảnh báo ở đây là 1.

Hình 3-14 Mô hình traning data

Sau khi đã training dữ liệu bộ dataset, chúng ta tiến hành sử dụng kỹ thuật Cross– validation để ước tính độ chính xác hay lỗi của thuật toán, mục đích của kỹ thuật nhằm chia tập dữ liệu ban đầu thành training Data được sử dụng để huấn luyện mô hình và một tập dữ liệu độc lập được sử dụng để đánh giá. Phương pháp phổ biến nhất là K- flod, trong đó bộ dữ liệu ban đầu được chia thành các tập con có kích thước bằng nhau,

29

được gọi là “fold”. Giá trị K là số tập dữ liệu được phân chia. Phương pháp này được lặp lại nhiều lần cho đến khi có K số mô hình khác nhau, một trong các tập k được sử dụng làm tập kiểm thử và các tập còn lại được ghép lại thành tập huấn luyện. Việc ước tính độ chính xác hay lỗi được tính trung bình trên các thử nghiệm k để đánh giá mức độ hiệu quả của mô hình .

Dựa vào các chỉ số của Confusion matrix để mô hình phân lại được đánh giá, điều chỉnh hiệu quả, trước tiên phải tang tỷ lệ các trường hợp TP, TN, và giảm FP, FN để tăng tỷ lệ Accuracy và giảm tỷ lệ Error

Acuracy = 𝑇𝑃 + 𝑇𝑁

𝑇𝑃 + 𝑇𝑁 + 𝐹𝑃 + 𝐹𝑁 Trong đó :

TP (True Positive): Số lượng dự đoán chính xác.

TN (True Negative): Số lương dự đoán chính xác một cách gián tiếp FP (False Positive - Type 1 Error): Số lượng các dự đoán sai lệch

FN (False Negative - Type 2 Error): Số lượng các dự đoán sai lệch một cách gián tiếp

Thuật toán ở đây chúng em sử dụng là Adam và Thuật Toán Tối Ưu Gradient Descent (sgd) đây là 2 bộ thuật toán xử lý dữ liệu số, tìm kiếm độ dốc học có giám sát mạnh nhất của thư viện tenserflow.

Adam là một thuật toán trong feedforward neural network(FFNN) thuộc lĩnh vực deep learning, là thuật toán phân lớp nhị phân, các hàm kích hoạt trong thuật toán (activation functions) đóng vai trò quan trọng trong việc điều chỉnh độ dốc của đạo hàm và có thể được sử dụng thay cho thủ tục giảm độ dốc ngẫu nhiên cổ điển để cập nhật lặp đi lặp lại trọng số mạng dựa trên dữ liệu huấn luyện.

Thuật toán Gradient Thích ứng (AdaGrad) duy trì tốc độ học tập trên mỗi tham số giúp cải thiện hiệu suất đối với các vấn đề có gradient thưa thớt (ví dụ: các vấn đề về ngôn ngữ tự nhiên và thị giác máy tính).

30

Root Mean Square Communication (RMSProp) cũng duy trì tốc độ học trên mỗi tham số được điều chỉnh dựa trên mức trung bình của các cường độ gần đây của các gradient đối với trọng số (ví dụ như tốc độ thay đổi của nó). Điều này có nghĩa là thuật toán giải quyết tốt các vấn đề trực tuyến và không cố định (ví dụ: nhiễu).

Sử dụng các mô hình và bộ dữ liệu lớn, chúng em chứng minh Adam có thể giải quyết các vấn đề học sâu thực tế một cách hiệu quả.

Thuật toán Gradient Thích ứng (AdaGrad) duy trì tốc độ học tập trên mỗi tham số giúp cải thiện hiệu suất đối với các vấn đề có gradient thưa thớt (ví dụ: các vấn đề về ngôn ngữ tự nhiên và thị giác máy tính).

Root Mean Square Communication (RMSProp) cũng duy trì tốc độ học trên mỗi tham số được điều chỉnh dựa trên mức trung bình của các cường độ gần đây của các gradient đối với trọng số (ví dụ như tốc độ thay đổi của nó). Điều này có nghĩa là thuật toán giải quyết tốt các vấn đề trực tuyến và không cố định (ví dụ: nhiễu).

Sử dụng các mô hình và bộ dữ liệu lớn, chúng em chứng minh Adam có thể giải quyết các vấn đề học sâu thực tế một cách hiệu quả.

Với các tham số xử lý traning: - Epoch:200

Số lần học, training lặp lại của bộ dữ liệu, số lần càng nhiều độ chính xác càng cao, sau khi test trên số lần học, chúng e thấy 200 là số lần học cho kết quả chính xác và tốt nhất

- Learning rate:0,005

Tốc độ học của thuật toán, tốc độ càng lớn, yêu cầu, cấu hình máy càng mạnh và tốc độ training nhanh hơn.

- Batch size:60

Chia bộ dữ liệu data thành 60 phần, để tránh epoch cao sẽ gây ra lỗi khi traning, batch size càng cao traning sẽ càng ổ định nhưng, tốc độ traning sẽ lâu hơn.

Một phần của tài liệu NGHIÊN CỨU HỆ THỐNG CẢNH BÁO CHÁY RỪNG SỬ DỤNG IOT KẾT HỢP MACHINE LEARNING (Trang 28 - 32)

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

(41 trang)