Vào thẳng nội dung

[UL] Phát hiện bất thường

UL viết tắt của Học Không Giám Sát.

Trong ứng dụng này, chúng ta sử dụng thuật toán PatchCore để học từ bộ dữ liệu chỉ chứa các mẫu good. Sau đó, chúng ta sử dụng thuật toán K-Nearest Neighbors (KNN) để phân biệt dữ liệu goodng mới được nhìn thấy.

Abnormaly detection

Phát hiện bất thường

1. Chuẩn bị bộ dữ liệu của bạn

# Cấu trúc bộ dữ liệu của bạn nên như sau
data/
    -train/
        -good/
            -*.jpg
    -test/
        -good/
            -*.jpg
        -ng/
            -*.jpg

Ghi

Số lượng dữ liệu huấn luyện phải > 10 mục. Nếu < 10 mục, vui lòng xoay các ảnh để tạo thêm.

2. Cách sử dụng

Huấn luyện

Đi tới /projects/indad-holes

Thực hiện lệnh này:

python train.py --model_type spade --data_dir "<ĐƯỜNG_DẪN_ĐẾN_THƯ_MỤC_HUẤN_LUYỆN>"

Ghi

ĐƯỜNG_DẪN_ĐẾN_THƯ_MỤC_HUẤN_LUYỆN nên nằm ở một cấp trên các tệp ảnh, tức là ../data/train, không phải ../data/train/good

Mô hình sẽ được lưu trong thư mục results.

Kiểm tra

Đi tới /projects/indad-holes

Thực hiện lệnh này:

python predict.py --model_type spade --data_dir "<ĐƯỜNG_DẪN_ĐẾN_THƯ_MỤC_KIỂM_TRA>" --threshold 1

Ghi

ĐƯỜNG_DẪN_ĐẾN_THƯ_MỤC_KIỂM_TRA nên là nơi chứa các tệp ảnh, tức là ../data/train/good

Các hình ảnh kết quả sẽ được lưu trong thư mục results.

3. Cải thiện hiệu suất

Nếu kết quả dự đoán không tốt, hãy cân nhắc điều chỉnh ngưỡng hoặc thêm dữ liệu