You are on page 1of 18

XÂY DỰNG MÔ HÌNH HỌC MÁY PHÁT HIỆN TRỘM CẮP ĐIỆN

CÓ XEM XÉT KỸ THUẬT TRÍCH XUẤT ĐẶC TRƯNG VÀ XỬ LÝ DỮ LIỆU


KHÔNG CÂN BẰNG

Sinh viên: Nguyễn Tuấn Hoàng


Hoàng Thùy Linh
Đặng Ngọc Anh
Giáo viên hướng dẫn: TS. Nguyễn Thị Hoài Thu
Khoa Điện - Trường Điện – Điện tử

TÓM TẮT
Tổn thất điện năng trong lưới điện thường được chia làm 2 loại là tổn thất điện năng kỹ
thuật và phi kỹ thuật. Tổn thất điện năng phi kỹ thuật, còn gọi là tổn thất thương mại, chủ yếu
gây ra bởi tình trạng vi phạm trong sử dụng điện, đặc biệt là do hành vi trộm cắp điện. Trong
nghiên cứu này, chúng tôi đề xuất sử dụng phương pháp học máy (Machine Learning) đồng
thời nghiên cứu các kỹ thuật trích xuất đặc trưng và xử lý dữ liệu không cân bằng để cải thiện
khả năng phát hiện hành vi trộm cắp điện dựa trên dữ liệu về mức độ tiêu thụ điện. Năm mô
hình được sử dụng và so sánh tính hiệu quả trong việc phát hiện hành vi này gồm có: mô hình
cây ngẫu nhiên (RandomForest), KNeighbors, mô hình học máy vector hỗ trợ (SVM),
XGBoost và mô hình mạng neuron tích chập (CNN). Sử dụng kỹ thuật lấy mẫu quá mức để
xử lý dữ liệu không cân bằng và với kỹ thuật để trích xuất đặc trưng. Các mô hình được huấn
luyện và kiểm tra sử dụng tập dữ liệu thực về mức tiêu thụ điện của 42372 khách hàng thu
thập bởi tổng công ty lưới điện Trung Quốc. Việc đánh giá mô hình dựa trên độ chính xác, hệ
số recall và điểm số F1 (F1-score). Kết quả kiểm tra cho thấy khi sử dụng kỹ thuật trích xuất
đặc trưng, độ chính xác của mô hình RandomForest và Kneighbors, SVM đều được cải thiện.
Mô hình CNN với đầu vào là chuỗi thời gian nên không áp dụng được các đặc trưng điểm đã
trích xuất, khi đó độ chính xác của mô hình này là cao nhất với 96%. Trong khi đó, khi sử
dụng kỹ thuật lấy mẫu quá mức để xử lý dữ liệu không cân bằng, có thể nhận thấy sự cải thiện
về độ chính xác không nhiều nhưng điểm số F1 cải thiện đáng kể. Mô hình CNN vẫn cho ra
kết quả tốt nhất khi so sánh với các mô hình còn lại.

Từ khóa: trộm cắp điện, phương pháp học máy, dữ liệu không cân bằng, trích xuất đặc
trưng, CNN

I. GIỚI THIỆU
Ngày nay, điện năng đã trở thành một trong những loại năng lượng thiết yếu nhất trong
cuộc sống của chúng ta. Theo Ngân hàng thế giới, trong năm 2020 hơn 90% dân số thế giới
được tiếp cận và sử dụng năng lượng điện được cung cấp thông qua một hệ thống lưới điện
truyền tải từ nhà máy điện tới người tiêu dùng. Tuy nhiên, bên cạnh sự phát triển tích cực của
nó, vẫn còn tồn tại nhiều hạn chế khó khăn; đặc biệt là sự thiệt hại do tổn thất điện xảy ra
trong quá trình phát điện, truyền tải và phân phối điện năng. Tổn thất điện năng trong lưới
điện thường được chia làm 2 loại là tổn thất điện năng kỹ thuật và phi kỹ thuật. Tổn thất điện
năng kỹ thuật là tiêu hao điện năng tất yếu xảy ra trong quá trình truyền tải và phân phối điện,
chẳng hạn như dây dẫn, máy biến áp. Tổn thất điện năng phi kỹ thuật, còn gọi là tổn thất
thương mại, chủ yếu gây ra bởi tình trạng vi phạm trong sử dụng điện đặc biệt là do hành vi
trộm cắp điện.
Trong nghiên cứu này, chúng tôi tập chung nghiên cứu về tổn thất phi kỹ thuật do hành
vi trộm cắp điện gây nên. Thống kê trong những năm gần đây cho thấy thiệt hại hơn 95 tỷ
USD mỗi năm trên toàn cầu do hành vi trộm cắp điện. Các báo cáo ACM tương ước tính
khoảng 6 tỷ USD thiệt hại do trộm cắp hàng năm ở Hoa Kỳ hoặc khoảng 1% tổng lượng điện
được tạo ra [1]. Theo báo cáo [2] đầu năm 2023 đến nay, công ty điện lực Hà Tĩnh đã phát
hiện 15 vụ gian lận trong sử dụng điện, truy thu 28.324 kwh điện tương đương trên 91 triệu
đồng.
Do đó, trộm cắp điện là vấn đề chung trên toàn thế giới và đã có rất nhiều những nghiên
cứu trước đây nhằm đưa ra các phương pháp để giải quyết vấn đề này. Các phương pháp phát
hiện trộm cắp điện thông thường bao gồm: kiểm tra việc lắp đặt, sử dụng và tình trạng hoạt
động của đồng hồ, so sánh các chỉ số đo bất thường với những cái bình thường và kiểm tra
đường truyền... Tuy nhiên, các phương pháp này vô cùng tốn thời gian, cần một nguồn nhân
lực lớn, tốn kém về tài chính nhưng không mang lại nhiều hiệu quả. Cũng có một số phương
pháp tiên tiến hơn bộ đo đếm thông minh có các cảnh báo những điều bất thường khi sử dụng
điện, lắp đặt các bộ RF, ARM, AMISS quản lý đo đếm từ xa. Tuy nhiên, việc lắp đặt các bộ đo
đếm thông minh quản lý đo đếm từ xa còn nhiều hạn chế, do nguồn kinh tế của các nước đang
phát triển chưa đủ lớn để có thể thực hiện được.
Trong nghiên cứu này, chúng tôi đề xuất sử dụng phương pháp học máy (Machine
Learning) đồng thời nghiên cứu các kỹ thuật trích xuất đặc trưng và xử lý dữ liệu không cân
bằng để cải thiện khả năng phát hiện hành vi trộm cắp điện dựa trên dữ liệu về mức độ tiêu
thụ điện. Năm mô hình được sử dụng và so sánh tính hiệu quả trong việc phát hiện hành vi
này gồm có: mô hình cây ngẫu nhiên (RandomForest) [3], Kneighbors [4], mô hình học máy
vector hỗ trợ (SVM) [5], XGBoost [6] và mô hình mạng neuron tích chập (CNN) [7]. Kỹ
thuật lấy mẫu quá mức được dùng để xử lý dữ liệu không cân bằng và với kỹ thuật trích xuất
đặc trưng.
Việc đánh giá mô hình dựa trên các thông số Precision, Recall, điểm số F1 (F1-score)
và Accuracy. Kết quả kiểm tra cho thấy khi sử dụng kỹ thuật trích xuất đặc trưng, độ chính
xác của mô hình RandomForest và Kneighbors, SVM đều được cải thiện nhưng với mô hình
XGBoost cho kết quả với Accuracy 95%, F1-Score 74%. Mô hình CNN với đầu vào là chuỗi
thời gian nên không áp dụng được các đặc trưng điểm đã trích xuất, khi đó độ chính xác của
mô hình này là cao nhất với Accuracy 96%, F1-Score 96% khi sử dụng phương pháp lấy mẫu
quá mức để xử lý dữ liệu không cân bằng. Trong khi đó, khi kết hợp cả hai kỹ thuật có thể
nhận thấy sự cải thiện về độ chính xác không nhiều nhưng điểm số F1 cải thiện đáng kể với
mô hình XGBoost. Mô hình CNN vẫn cho ra kết quả tốt nhất khi so sánh với các mô hình còn
lại.

II. PHƯƠNG PHÁP


Quy trình được áp dụng phát hiện hành vi trộm cắp điện có về cơ bản bao gồm năm phần: tập
dữ liệu gốc, dữ liệu tiền xử lý, xử lý dữ liệu, mô hình học máy, đánh giá mô hình.

Theo Hình 1 quy trình phân loại được trình bày chi tiết như sau:
Hình 1. Cấu trúc mô hình phân loại

1. TẬP DỮ LIỆU GỐC


Bộ dữ liệu được thu thập và công bố bởi Tổng công ty lưới điện Trung Quốc (State Grid
Corporation of China). Bộ dữ liệu bao gồm mức tiêu thụ điện năng hàng ngày của 42372
khách hàng được thu thập thông qua các công tơ mét thông minh. Dữ liệu được thu thập từ
ngày 01/01/2014 tới ngày 31/10/2016, tương ứng với khoảng 147 tuần. Dữ liệu được gán
nhãn thành hai loại là người dùng điện thông thường và người dùng điện có hành vi trộm cắp,
dữ liệu không thể hiện ngày hành vi trộm cắp được thực hiện.

2. DỮ LIỆU TIỀN XỬ LÝ
Dữ liệu tiêu thụ điện ban đầu có thể chứa những điểm dữ liệu bị thiếu và các điểm bất
thường do lỗi hệ thống của các thiết bị đo, độ tin cậy trong việc truyền dữ liệu công tơ. Vì vậy
cần phải có những cách tiếp cận tốt để xử lý chuỗi dữ liệu. Các phương pháp truyền thống
như bỏ qua các giá trị đó hay thay thế các giá trị bị mất bằng 1 giá trị cụ thể có thể khiến
chuỗi thời gian tạm thời bị mất tính liên tục [8]. Nhằm mục đích khôi phục lại dữ liệu bị mất,
phương pháp nội suy gần nhất đã được sử dụng để thay các giá trị bị mất bằng giá trị gần nhất
với nó trên chuỗi thời gian.
Lọc nhiễu
Dữ liệu bị nhiễu làm phức tạp hóa việc phân tích và dự báo, gây nên sai số trong kết
quả. Các phương pháp phổ biến hay được sử dụng với dữ liệu một chiều bao gồm lọc thích
ứng, làm mịn tín hiệu và loại bỏ nhiễu trong vùng tần số [9].
Biến đổi Fourier được sử dụng rất nhiều trong xử lý tín hiệu và nén dữ liệu. ý tưởng của
phương pháp dựa trên lý thuyết các hàm của các thuộc tính phù hợp có thể được biểu diễn
như các tổ hợp tuyến tính của các hàm lượng giác.
Với chuỗi cách đều hữu hạn phần tử, biến đổi Fourier rời rạc (DFT) có công thức:
(1)
Trong đó:
fi: phần tử thứ i trong véc tơ biến đổi Fourier rời rạc
xk: phần tử thứ n trong chuỗi dữ liệu thời gian
n: số phần tử của chuỗi dữ liệu thời gian
Biến đổi Fourier rời rạc ngược (IDFT):

(2)

Việc tính toán DFT và IDFT có thể được tối ưu bằng cách ghép các hàm chẵn và
lẻ trong quá trình tính toán, được gọi là biến đổi Fourier nhanh (FFT) với biến đổi Fourier
nhah ngược (IFFT) tương ứng, làm giảm độ phức tạp của DFT từ O(n2) xuống O(n log(n))
[10].
Sau khi thay thế các giá trị NaN trong tập dữ liệu, dữ liệu thời gian sẽ được lọc nhiễu
bằng FFT. Phép biến đổi này giúp chuyển đổi dữ liệu từ miền thời gian sang miền tần số, sau
đó các giá trị có tần số cao hơn ngưỡng cho trước sẽ bị loại bỏ. Dữ liệu tần số mới sẽ được
đưa về dạng thời gian thông quá IFFT.
Có 4 giá trị của ngưỡng sẽ được khảo sát là 10; 50; 100; 500 trên tập dữ liệu mẫu Hình
2 a,b,c,d. Kết quả của quá trình khảo sát được cho ở Hình 2(b) cho thấy ngưỡng 50 có kết quả
lọc nhiễu tốt mà vẫn giữ được các đặc tính của dữ liệu.

Hình 2a. FFT lọc nhiễu với giá trị ngưỡng 10 Hình 2b. FFT lọc nhiễu với giá trị ngưỡng 50

Hình 2c. FFT lọc nhiễu với giá trị ngưỡng 100 Hình 2d. FFT lọc nhiễu với giá trị ngưỡng 500
3. XỬ LÝ DỮ LIỆU
3.1. Xử lý dữ liệu không cân bằng
Tỉ lệ giữa 2 lớp của dữ liệu được thể hiện ở hình cho ta thấy dữ liệu ta đang sử dụng
đang gặp vấn đề về mất cân bằng. Trong thực tế, vấn đề mất cân bằng dữ liệu sẽ làm giảm độ
chính xác của mô hình phân loại do nó dự báo thiếu xác dữ liệu của lớp thiểu số [11]. Hình 3
được thể hiện rõ số khách hàng không và có ăn trộm điện.

Hình 3. Số khách hàng không và có ăn trộm điện

Có hai phương pháp chính để xử lý dữ liệu không cân bằng, đó là theo hướng xử lý dữ
liệu và theo hướng xử lý thuật toán [12]. Hai phương pháp này có những ưu nhược điểm
riêng. Trong số đó, sinh mẫu (oversampling) bằng thuật toán SMOTE là một trong những
phương pháp xuất hiện sớm và phổ biến nhất hiện nay, bằng cách tạo ra các mẫu tổng hợp từ
các lớp thiểu số dựa trên k lân cận gần nhất (k-nearest neighbors)[13],[14]. Trước khi thực
hiện kỹ thuật SMOTE, dữ liệu gốc được chia ra thành dữ liệu huấn luyện và kiểm tra nhằm
mục đích đánh giá.

3.2. Trích xuất đặc trưng


Để có thể tính toàn các đặc trưng của dữ liệu thời gian, bao gồm tổng trị tuyệt đối hai
giá trị liền kề, hệ số tương quan Benford, hệ số binned entropy, tính tự tương quan (ACF), độ
nhọn, sai phân trung bình, giá trị trung bình trung tâm đạo hàm cấp hai, giá trị trung bình của
toàn dữ liệu và độ lệch, chúng tôi sử dụng thư viện tsfresh, một thư viện python chuyên dùng
để tính toán các đặc trưng của dữ liệu thời gian, phù hợp với các bài toán hồi quy hoặc phân
loại [15].
Tổng trị tuyệt đối hai giá trị liền kề trong chuỗi thời gian

(3)
Hệ số tương quan Benford: Được sử dụng trong phát hiện sự bất thường trong chuỗi dữ
liệu thời gian bằng cách thể hiện sự tương quan giữa phân phối của kí tự đầu tiên với phân
phối Benford [16].

(4)

Binned entropy: Hệ số đo độ ngẫu nhiên của chuỗi dữ liệu bằng cách chia dữ liệu thành
các “giỏ” rồi tính toán entropy trên các “giỏ” đó.

(5)

ACF: Tính độ tự tương quan của chuỗi dữ liệu thời gian [17]

(6)

Độ nhọn: Đo độ dốc và độ phân bố của phân phối xác suất của một biến ngẫu nhiên

(7)

Với n: số lượng mẫu;


Xi: giá trị của mẫu thứ i;
giá trị trung bình của mẫu;
s: độ lệch chuẩn của mẫu
Phân phối của dữ liệu có độ nhọn lớn tức là đồ thị phân phối của dữ liệu sẽ có đuôi dài
hơn. Ngược lại phân phối của dữ liệu có độ nhọn bé tức độ thị phân phối của dữ liệu sẽ có
dạng hình chuông nhiều hơn. Dữ liệu có phân phối chuẩn có độ nhọn bằng 3. Trong thực tế,
cần có một số lượng mẫu đủ lớn để có được một ước tính hợp lí với giá trị thực của k [18].
Sai phân trung bình: Trung bình sai phân cấp 1 của chuỗi thời gian

(8)

Giá trị trung bình của trung tâm đạo hàm cấp hai

(9)

Giá trị trung bình của dữ liệu thời gian

(10)
Độ lệch: Sự bất đối xứng trong trong một phân phối hình chuông hoặc phân phối chuẩn trong
một tập dữ liệu
4. MÔ HÌNH PHÂN LOẠI
Các mô hình Cây Học Kết hợp (Tree ensemble model) thường được khuyên dùng
trong các bài toán hồi quy và phân loại với dữ liệu dạng bảng [19]. Ý tưởng chung của mô
hình Cây Học Kết hợp là việc kết hợp các mô hình khác nhau, mỗi mô hình có những điểm
mạnh và điểm yếu riêng, nhưng khi kết hợp lại sẽ cho ra kết quả tốt hơn. Học Kết hợp có 3
biến thể gồm Đóng bao (Bagging) [20],[21], Tăng cường (Boosting) [22] và Xếp chồng
(Stacking) [23].
Đóng bao (Bagging)
Chúng ta xây dựng nhiều mô hình cây độc lập với nhau, mỗi mô hình sẽ học ở mẫu
được lấy ngẫu nhiên từ dữ liệu gốc, kết quả dự đoán của các mô hình sẽ được lấy trung bình
để đưa ra quyết định cuối cùng. Vì vậy, Đóng bao là một thuật toán không ổn định [24]. Một
mô hình điển hình của Học kết hợp dạng Đóng bao là Rừng ngẫu nhiên (Random Forest) [25].
Xếp chồng (Stacking)
Thay vì sử dụng các mô hình cây như thuật toán Đóng bao, Xếp chồng sử dụng nhiều
mô hình học máy khác nhau để huấn luyện trên cùng một tập dữ liệu, được gọi là các mô hình
cấp 1. Đầu ra của các mô hình cấp 1 sẽ là tập dữ liệu đầu vào của một mô hình học máy cấp 2,
từ đó đưa ra kết quả cuối cùng
Tăng cường (Boosting)
Khác với Đóng bao, Tăng cường kết hợp các mô hình cây với nhau bằng cách sắp xếp
các mô hình nối tiếp nhau. Các mô hình phía sau sẽ học dữ liệu đầu ra của các mô hình phía
trước dựa trên kết quả huấn luyện của dữ liệu đầu ra đó. Kết quả dự báo của mô hình là sự kết
hợp của những mô hình con [26],[27]. Các mô hình tiêu biểu của thuật toán tăng cường là
AdaBoost[28],[29], XGBoost.

Rừng ngẫu nhiên (RandomForest) là thuật toán có thể được dùng cho các bài toán hồi
quy và phân loại có giám sát, sử dụng thuật toán Đóng bao. Mô hình Rừng ngẫu nhiên bao
gồm nhiều cây quyết định huấn luyện trên các tập dữ liệu khác nhau, dựa trên ý tưởng trí tuệ
đám đông sẽ tốt hơn thiểu số [30]. Ở bước dự đoán, mỗi một nút trong cây quyết định đại diện
cho giá trị dự đoán của biến mục tiêu, với mỗi dữ liệu mới cây quyết định sẽ đi theo các nút từ
trên xuống dưới để đưa ra các dự đoán, sau đó kết quả cuối cùng được tổng hợp từ các cây
quyết định này.

Thuật toán K lân cận gần nhất (KNN) có thể là một trong những thuật toán học có
giám sát đơn giản nhất trong học máy, trong đó lớp của điểm dữ liệu mới sẽ được dự đoán
dựa trên K điểm dữ liệu gần nhất, khoảng cách giữa các điểm được sử dụng là khoảng cách
Minkowski. [31]

(11)

XGboost, một thuật toán dựa trên Gradient Boosting, nhưng vượt trội hơn về tốc độ xử
lý, giải quyết được vấn đề quá khớp, cho phép người dùng sử dụng hàm tối ưu và chỉ tiêu
đánh giá của riêng họ, tự động xử lý dữ liệu bị mất và tự động bỏ qua các nút không mang giá
trị tích cực cho toàn mô hình. Độ phức tạp của cây cũng có thể được giảm đi bằng các tham
số như độ sâu của cây,… từ đó mô hình sẽ huấn luyện nhanh và đỡ tốn bộ nhớ hơn [31].
Hàm mục tiêu của XGBoost có dạng:
(12)

Trong đó: T: số lá cây trong các cây quyết định


w: điểm số đầu ra của lá
: hệ số điều khiển mức độ tăng giảm sai số tối thiểu cần thiết để chia
một nút trong cây quyết định

Thuật toán SVM cho bài toán phân loại có mục đích tìm siêu phẳng tối ưu để phân chia
các lớp thông qua việc tính khoảng cách từ một điểm tới một siêu phẳng. Trong không gian 2
chiều, khoảng cách từ một điểm có tọa độ (x0, y0) tới một đường thằng có phương trình
là:

(13)

Tổng quát đối với không gian có số chiều là d, khoảng cách từ một điểm, hoặc một
vector có tọa độ xo tới siêu phẳng có phương trình là

(14)

Đối với bài toán mà các điểm dữ liệu không thể phân chia được bằng siêu phẳng tuyến
tính, thay vì làm việc với d số chiều dữ liệu gốc, ta sẽ thêm một chiều dữ liệu nữa để tạo thành
(d+1) chiều dữ liệu nhằm giúp các dữ liệu có sự tách biệt tuyến tính [32].

Mạng nơ ron bao gồm 2 mạng tích chập thành phần (CNN1 và CNN2). Như đã phân
tích, dữ liệu ăn cắp tiêu thụ điện dao động nhiều hơn so với dữ liệu sử dụng điện bình thường,
và ít tính chất định kì, vì thế được xử lý dưới dạng chuỗi thời gian bởi lớp CNN1. Còn đối với
dữ liệu sử dụng điện thông thường, sẽ được xử lý bởi thành phần CNN2. Thành phần CNN2
bao gồm nhiều bộ lọc khác nhau, một số nơ ron và các lớp tổng hợp (multiple pooling) được
kết nối với nhau. Cấu trúc của mạng được xác định bởi phương pháp thử -sai (trial-and-error)
và phương pháp tìm kiếm dạng lưới (grid search) để tìm được kết quả tốt nhất.
Phương trình tính điểm xác suất của mỗi nơ ron:
(15)

Trong đó: : các đầu vào


: các trọng số tương ứng với các đầu vào
: độ lệch (bias)
n : độ dài dữ liệu.
Hàm ReLu (Rectified Linear Unit) được sử dụng làm hàm kích hoạt (activation
function) với phương trình:
(16)
Trong đó: uj: đầu ra sau khi xác suất dự đoán (predited probability) chuyển qua
hàm kích hoạt.
Việc sử dụng hàm ReLu giúp tăng tốc quá trình training, không gây ra hiện tượng
vanishing gradient.

5. THÔNG SỐ HIỆU SUẤT


Confusion Matrix
Ma trận NxN được sử dụng để đánh giá hiệu suất của những bài toán phân loại với việc
xem xét cả những chỉ số về độ chính xác và độ bao quát của các dự đoán cho từng lớp. Trong
đó: N là số lớp mục tiêu. Trong bài viết này N=2 được sử dụng để đánh giá. Các tham số của
ma trận được xác định bên dưới Hình 4

Hình 4. Confusion matrix

Các chỉ số đánh giá hiệu suất và dùng làm tiêu chuẩn để tinh chỉnh các tham số mô
hình:

(17)

(18)

(19)

(20)

Trong đó: TP là số lượng mô hình dự đoán khách hàng ăn trộm điện là đúng

TN là số lượng mô hình dự đoán khác hàng bình thường là đúng

FP là số lượng mô hình dự đoán khách hàng ăn trộm điện là sai

FN là số dự đoán của mô hình cho ra kết quả khách hàng bình thường là sai
III. KẾT QUẢ

Bộ dữ liệu điện thô bao gồm hơn 40.000 khách hàng được tổng công ty lưới điện Trung
Quốc thập. Bảng 1 mô tả chi tiết của bộ dữ liệu điện.

Bảng 1: Mô tả bộ dữ liệu của Tổng công ty lưới điện Trung Quốc

Mô tả Giá trị
Thời gian thu nhập dữ liệu 01/01/2014 – 31/10/2016
Tổng số khách hàng 42 372
Khách hàng bình thường 38 557 (91,5%)
Khách hàng trộm điện 3 615 (8,55%)

A, Thuật toán SVM


Các tham số được chọn là “gamma”:0,5 và “C”:100, đạt độ chính xác 94% khi sử dụng
kỹ thuật trích xuất đặc trưng và đạt 60% khi kết hợp hai kỹ thuật xử lý dữ liệu không cân bằng
và trích xuất đặc trưng. Hình 5 và Bảng 2 thể hiện kết quả đánh giá phân loại và confusion
matrix như sau

a, Trích xuất đặc trưng b, Xử lý dữ liệu + Trích xuất đặc trưng

Hình 5. Confusion Matrix của mô hình phân loại dựa trên SVM

Trích xuất đặc trưng Xử lý dữ liệu+Trích xuất đặc trưng


Pre Recall F1 Support Pre Recall F1 Support
0 0.94 1.00 0.97 3872 0 0.61 0.54 0.57 3098
1 0.00 0.00 0.00 269 1 0.59 0.65 0.61 3098
Accuracy 0.94 4141 Accuracy 0.60 6196
Macro avg 0.47 0.50 0.48 4141 Macro avg 0.60 0.60 0.59 6196
Weighted avg 0.87 0.94 0.90 4141 Weighted avg 0.60 0.60 0.59 6196

Bảng 2. Kết quả phân loại thuật toán SVM


B, Thuật toán KNN
Sử dụng số liệu Manhattan, đạt độ chính xác 94% khi sử dụng kỹ thuật trích xuất đặc
trưng, 86% khi sử dụng kỹ thuật xử lý dữ liệu không cân bằng và 65% khi kết hợp cả hai kỹ
thuật. Các kết quả đánh giá phân loại và confusion matrix của thuật toán được thể hiện ở
Hình 6 và Bảng 3 như sau:

a, Trích xuất đặc trưng b, Xử lý dữ liệu không cân bằng

c, Xử lý dữ liệu+Trích xuất đặc trưng

Hình 6. Confusion Matrix của mô hình phân loại dựa trên KNN

Trích xuất đặc trưng Xử lý dữ liệu không cân bằng


Pre Recall F1 Support Pre Recall F1 Support
0 0.96 0.98 0.97 3903 0 0.99 0.72 0.83 3080
1 0.52 0.34 0.41 238 1 0.78 1.00 0.87 3116
Accuracy 0.94 4141 Accuracy 0.86 6196
Macro avg 0.74 0.66 0.69 4141 Macro avg 0.89 0.86 0.85 6196
Weighted avg 0.94 0.94 0.94 4141 Weighted avg 0.89 0.86 0.85 6196
Xử lý dữ liệu+Trích xuất đặc trưng
Pre Recall F1 Support
0 0.68 0.60 0.63 3141
Bảng 3. Kết quả phân loại thuật toán
1 0.63 0.71 0.67 3055
KNN
Accuracy 0.65 6196
Macro avg 0.65 0.65 0.65 6196
Weighted avg 0.65 0.65 0.65 6196

C. Thuật toán RandomForest


Các tham số được chọn là ‘max_depth’:20, ‘n_estimators’;100, ‘max_igures’: ‘auto’,
‘criterion’=’entropy’, đạt độ chính xác 95% khi sử dụng kỹ thuật trích xuất đặc trưng, 93%
khi sử dụng kỹ thuật xử lý dữ liệu không cân bằng và 74% khi kết hợp cả hai kỹ thuật. Kết
quả đánh giá phân loại confusion matrix của thuật toán được thể hiện ở Hình 7 và Bảng 4
như sau:

a, Trích xuất đặc trưng b, Xử lý dữ liệu không cân bằng

c, Xử lý dữ liệu+Trích xuất đặc trưng

Hình 7. Confusion Matrix của mô hình phân loại dựa trên RandomForest
Trích xuất đặc trưng Xử lý dữ liệu không cân bằng
Pre Recall F1 Support Pre Recall F1 Support
0 0.96 0.99 0.98 3903 0 0.94 0.93 0.93 3097
1 0.69 0.34 0.46 238 1 0.93 0.94 0.93 3098
Accuracy 0.95 4141 Accuracy 0.93 6195
Macro avg 0.83 0.67 0.72 4141 Macro avg 0.93 0.93 0.93 6195
Weighted avg 0.95 0.95 0.95 4141 Weighted avg 0.93 0.93 0.93 6195

Xử lý dữ liệu+Trích xuất đặc trưng


Pre Recall F1 Support
0 0.75 0.73 0.74 3142
1 0.73 0.75 0.74 3054
Accuracy 0.74 6196
Macro avg 0.74 0.74 0.74 6196
Weighted avg 0.74 0.74 0.74 6196

Bảng 4. Kết quả phân loại thuật toán RandomForest


D. Thuật toán XGBoost
Độ chính xác thuật toán là 95% khi sử dụng kỹ thuật trích xuất đặc trưng và 74% khi
kết hợp cả hai kỹ thuật. Kết quả đánh giá phân loại confusion matrix của thuật toán được thể
hiện ở Hình 8 và Bảng 5 như sau:

a, Trích xuất đặc trưng b, Xử lý dữ liệu + Trích xuất đặc trưng

Hình 8. Confusion Matrix của mô hình phân loại dựa trên XGBoost
Trích xuất đặc trưng Xử lý dữ liệu+Trích xuất đặc trưng
Pre Recall F1 Support Pre Recall F1 Support
0 0.97 0.99 0.98 3903 0 0.76 0.72 0.74 3141
1 0.66 0.42 0.52 238 1 0.73 0.77 0.75 3055
Accuracy 0.95 4141 Accuracy 0.74 6196
Macro avg 0.81 0.71 0.75 4141 Macro avg 0.74 0.74 0.74 6196
Weighted avg 0.95 0.95 0.95 4141 Weighted avg 0.74 0.74 0.74 6196

Bảng 5. Kết quả phân loại thuật toán XGBoost


E. Thuật toán CNN
Thuật toán CNN với đầu vào là chuỗi thời gian nên không áp dụng được các đặc trưng
điểm đã trích xuất, khi đó độ chính xác của mô hình này cao nhất với 96% khi áp dụng kỹ
thuật xử lý dữ liệu không cân bằng. Kết quả đánh giá phân loại confusion matrix của thuật
toán được thể hiện ở Hình 9 và Bảng 6 như sau

Hình 9. Confusion Matrix của mô hình phân loại dựa trên CNN
Xử lý dữ liệu không cân bằng
Pre Recall F1 Support
0 0.97 0.96 0.96 7781
1 0.96 0.97 0.96 7722
Accuracy 0.96 15503
Macro avg 0.96 0.96 0.96 15503
Weighted avg 0.96 0.96 0.95 15503

Bảng 6. Kết quả phân loại thuật toán XGBoost


Bảng 7. Bảng so sánh độ chính xác của các thuật toán
Trích xuất đặc trưng Xử lý dữ liệu không Xử lý dữ liệu+Trích
cân bằng xuất đặc trưng
Precision:0.94 Precision:0.61
SVM Recall:1.00 Recall:0.54
F1-score:0.97 F1-score:0.57
Accuracy:0.94 Accuracy:0.60
Precision:0.96 Precision:0.99 Precision:0.68
KNN Recall:0.98 Recall:0.72 Recall:0.60
F1-score:0.97 F1-score:0.83 F1-score:0.63
Accuracy:0.94 Accuracy:0.86 Accuracy:0.65
Precision:0.96 Precision:0.94 Precision:0.75
RandomForest Recall:0.99 Recall:0.93 Recall:0.73
F1-score:0.98 F1-score:0.93 F1-score:0.74
Accuracy:0.95 Accuracy:0.93 Accuracy:0.74
Precision:0.97 Precision:0.76
XGBoost Recall:0.99 Recall:0.72
F1-score:0.98 F1-score:0.74
Accuracy:0.95 Accuracy:0.74
Precision:0.97
CNN Recall:0.96
F1-score:0.96
Accuracy:0.96

IV. BÀN LUẬN

Theo mục 5, chúng ta sẽ đánh giá và so sánh các mô hình thông qua confusion matrix
với 3 trường hợp áp dụng kỹ thuật xử lý dữ liệu không cân bằng, trích xuất đặc trưng và khi
kết hợp hai kỹ thuật. Bảng 7 tổng hợp lại tất cả các thông số so sánh giữa các mô hình trong
việc phát hiện trộm điện bao gồm Precision, Recall, F1-Score, Accuracy. Kết quả cho thấy
các mô hình SVM, KNN và RandomForest cho kết quả khi kết hợp hai kỹ thuật tương đối
thấp, mất khá nhiều thời gian để huấn luyện và đưa ra kết quả. Trong khi đó, với tỷ lệ đào tạo
80% mô hình XGBoost với thời gian huấn luyện nhanh với kết quả Accuracy 95%, F1-Score
98% với kỹ thuật trích xuất đặc trưng và Accuracy 74 %, F1-Score 74% khi kết hợp hai kỹ
thuật. Mô hình CNN cho độ chính xác cao hơn so với các mô hình học máy khác Accuracy
96% khi áp dụng kỹ thuật xử lý dữ liệu không cân bằng (dữ liệu đầu vào là chuỗi thời gian
không áp dụng được kỹ thuật trích xuất đặc trưng). Ưu điểm chính của việc sử dụng CNN là
các mạng thần kinh này trích xuất tất cả tính năng quan trọng của dữ liệu mà không cần bất kỳ
giám sát nào từ con người
Nhìn chung, các mô hình đề xuất đã cho thấy những ưu điểm của nó so với các mô hình
khác. Mô hình XGBoost với thời gian huấn luyện nhanh cho ra kết quả tốt. Với mô hình CNN
cho kết quả độ chính xác khá cao nhưng nhược điểm chính của mô hình này là thời gian xử
lý, mất khoảng 2-3 giờ để huấn luyện và đưa ra kết quả.

V. KẾT LUẬN

Nghiên cứu này đề xuất một cách tiếp cận để phát hiện tự động các hành vi trộm cắp
điện dựa trên mô hình học máy, có xem xét kỹ thuật trích xuất đặc trưng và xử lý dữ liệu
không cân bằng. Từ kết quả nghiên cứu đã chỉ ra rằng, với kỹ thuật trích xuất đặc trưng và khi
kết hợp hai kỹ thuật lại mô hình XGBoost cho kết quả khả quan với độ chính xác là 95% và
74% vượt trội so với các thuật toán học máy. Kỹ thuật xử lý dữ liệu không cân bằng cho kết
quả độ chính xác tương đối cao vói 96%. Trong tương lai, nhóm sẽ tiếp tục nghiên cứu cải
thiện mô hình học sâu để nâng cao độ chính xác của thuật toán.

VI. KINH NGHIỆM, HƯỚNG PHÁT TRIỂN

Trích xuất các dữ liệu khác nhau có liên hệ mật thiết hơn với mục tiêu, ví dụ như tính chất
mùa, xu hướng, phân tích phổ.
Thay đổi các thông số trong các model để tối ưu hóa việc training. Một trong các phương
pháp là GridSearchCV.
Thay đổi hướng tiếp cận với các dữ liệu bị mất cân bằng cách dùng các thuật toán Machine
Learning và Deep Learning, tiêu biểu là SAITS hay GRU-D
Các chỉ số đánh giá khác để phát hiện trộm cắp điện, chẳng hạn như MAP@100 và
MAP@200 sẽ được sử dụng.

TÀI LIỆU THAM KHẢO

[1] ACM, “ Financial costs to utilities onl ” . Online. Available: https://seals.com/security-


seals-blog/electricity-theft-costs .
[2] PC Ha Tinh, “ Detect 15 electricity theft from custormers with 91 millions VND fine ”,
2023. Online. Available: https://baohatinh.vn/phap-luat-doi-song/phat-hien-15-vu-trom-
dien-tren-dia-ban-ha-tinh/247411.htm. 04.2023.
[3] A. Cutler, D. R. Cutler, and J. R. Stevens, “Random Forests,” in Ensemble Machine
Learning, C. Zhang and Y. Ma, Eds., New York, NY: Springer New York, 2012, pp.
157–175. doi: 10.1007/978-1-4419-9326-7_5.
[4] P. Cunningham and S. J. Delany, “k-Nearest Neighbour Classifiers - A Tutorial,” ACM
Comput. Surv., vol. 54, no. 6, pp. 1–25, Jul. 2022, doi: 10.1145/3459665.
[5] U. Haq, J. Huang, H. Xu, K. Li, and F. Ahmad, “A hybrid approach based on deep
learning and support vector machine for the detection of electricity theft in power
grids,” Energy Reports, vol. 7, pp. 349–356, Nov. 2021, doi:
10.1016/J.EGYR.2021.08.038.
[6] T. Chen and C. Guestrin, “XGBoost: A Scalable Tree Boosting System,” in Proceedings
of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and
Data Mining, Aug. 2016, pp. 785–794. doi: 10.1145/2939672.2939785.
[7] Asif Nawaz, Tariq Ali, Ghulam Mustafa, Saif Ur Rehman, Muhammad Rizwan Rashid,
“ A novel technique for detecting electricity theft in secure smart grids using CNN and
XG boost ”, Feb. 2023, doi: 10.1016/j.iswa.2022.200168.
[8] S.-F. Wu, C.-Y. Chang, and S.-J. Lee, “Time Series Forecasting with Missing Values,”
in Proceedings of the 1st International Conference on Industrial Networks and
Intelligent Systems, Tokyo, Japan: ICST, 2015. doi: 10.4108/icst.iniscom.2015.258269.
[9] M. Sathya and S. Victor, “Noise Reduction Techniques and Algorithms For Speech
Signal Processing,” 2015.
[10] Pauli Anttonen, “Fourier transform techniques for noise reduction,” p. 32, 2022.
[11] V. S. Spelmen and R. Porkodi, “A Review on Handling Imbalanced Data,” in 2018
International Conference on Current Trends towards Converging Technologies
(ICCTCT), Coimbatore: IEEE, Mar. 2018, pp. 1–11. doi:
10.1109/ICCTCT.2018.8551020.
[12] Sotiris Kotsiantis, Dimitris Kanellopoulos, and Panayiotis Pintelas, “Handling
imbalanced datasets: A review,” 2006.
[13] N. V. Chawla, K. W. Bowyer, L. O. Hall, and W. P. Kegelmeyer, “SMOTE: Synthetic
Minority Over-sampling Technique,” J. Artif. Intell. Res., vol. 16, pp. 321–357, Jun.
2002, doi: 10.1613/jair.953.
[14] Jakob Brandt and Emil Lanzén, “A Comparative Review of SMOTE and ADASYN in
Imbalanced Data Classification,” 2020.
[15] M. Christ, N. Braun, J. Neuffer, and A. W. Kempa-Liehr, “Time Series FeatuRe
Extraction on basis of Scalable Hypothesis tests (tsfresh – A Python package),”
Neurocomputing, vol. 307, pp. 72–77, Sep. 2018, doi: 10.1016/j.neucom.2018.03.067.
[16] R. M. Fewster, “A Simple Explanation of Benford’s Law,” Am. Stat., vol. 63, no. 1, pp.
26–32, Feb. 2009, doi: 10.1198/tast.2009.0005.
[17] Josep Vives Santa-Eul`alia and Javier Mart´ınez de Alb´eniz, Introduction to Time
Series and Forecasting. 2022.
[18] “Bai, Jushan, and Serena Ng. ‘Tests for Skewness, Kurtosis, and Normality for Time
Series Data.’ Journal of Business & Economic Statistics, vol. 23, no. 1, 2005, pp. 49–
60. JSTOR, http://www.jstor.org/stable/27638793. Accessed 21 June 2023.”.
[19] R. Shwartz-Ziv and A. Armon, “Tabular Data: Deep Learning is Not All You Need,”
2021, doi: 10.48550/ARXIV.2106.03253.
[20] L. Breiman, “Bagging predictors,” Mach. Learn., vol. 24, no. 2, pp. 123–140, Aug.
1996, doi: 10.1007/BF00058655.
[21] P. Bühlmann and B. Yu, “Analyzing bagging,” Ann. Stat., vol. 30, no. 4, Aug. 2002,
doi: 10.1214/aos/1031689014.
[22] Y. Freund and R. E. Schapire, “A Decision-Theoretic Generalization of On-Line
Learning and an Application to Boosting,” J. Comput. Syst. Sci., vol. 55, no. 1, pp. 119–
139, Aug. 1997, doi: 10.1006/jcss.1997.1504.
[23] L. Breiman, “Stacked regressions,” Mach. Learn., vol. 24, no. 1, pp. 49–64, Jul. 1996,
doi: 10.1007/BF00117832.
[24] M. Graczyk, T. Lasota, B. Trawiński, and K. Trawiński, “Comparison of Bagging,
Boosting and Stacking Ensembles Applied to Real Estate Appraisal,” in Intelligent
Information and Database Systems, N. T. Nguyen, M. T. Le, and J. Świątek, Eds., in
Lecture Notes in Computer Science, vol. 5991. Berlin, Heidelberg: Springer Berlin
Heidelberg, 2010, pp. 340–350. doi: 10.1007/978-3-642-12101-2_35.
[25] A. Cutler, D. R. Cutler, and J. R. Stevens, “Random Forests,” in Ensemble Machine
Learning, C. Zhang and Y. Ma, Eds., New York, NY: Springer New York, 2012, pp.
157–175. doi: 10.1007/978-1-4419-9326-7_5.
[26] T. Chengsheng, L. Huacheng, and X. Bing, “AdaBoost typical Algorithm and its
application research,” MATEC Web Conf., vol. 139, p. 00222, 2017, doi:
10.1051/matecconf/201713900222.
[28] R. Wang, “AdaBoost for Feature Selection, Classification and Its Relation with SVM, A
Review,” Phys. Procedia, vol. 25, pp. 800–807, 2012, doi:
10.1016/j.phpro.2012.03.160.
[29] J. Surowiecki, The wisdom of crowds: why the many are smarter than the few and how
collective wisdom shapes business, economies, societies, and nations, 1st ed. New
York: Doubleday, 2004.
[30] P. Cunningham and S. J. Delany, “k-Nearest Neighbour Classifiers - A Tutorial,” ACM
Comput. Surv., vol. 54, no. 6, pp. 1–25, Jul. 2022, doi: 10.1145/3459665.
[31] C. Bentéjac, A. Csörgő, and G. Martínez-Muñoz, “A Comparative Analysis of
XGBoost,” 2019, doi: 10.48550/ARXIV.1911.01914.
[32] Y. Zhang, “Support Vector Machine Classification Algorithm and Its Application,” in
Information Computing and Applications, C. Liu, L. Wang, and A. Yang, Eds., in
Communications in Computer and Information Science, vol. 308. Berlin, Heidelberg:
Springer Berlin Heidelberg, 2012, pp. 179–186. doi: 10.1007/978-3-642-34041-3_27.

You might also like