Data Science & AI hoạt động

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

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

Đã chạy được. Mục này có công cụ tính toán thật trên nền tảng, không phải mô tả lộ trình.

Ngân sách cảnh báo Điểm vận hành → số cảnh báo và nhân lực cần

Chọn ngưỡng theo năng lực đội ngũ chứ không theo F1 tối ưu. Công cụ này quy điểm vận hành ra số giờ người mỗi ngày.

Cảnh báo mỗi ngày 2,711
Trong đó đúng 212 (7.8%)
Bỏ sót mỗi ngày 37.5
Nhân lực cần 180.8 giờ/ngày ≈ 22.6 người
Kết luận Phần lớn cảnh báo là giả
① Tham số

8%

Cảnh báo đúngCảnh báo giả
8%Cảnh báo đúng: 212 (7.8%)Cảnh báo giả: 2,499 (92.2%)8%

Hàng đợi một ngày: 212 đúng trên tổng 2,711. Số ở giữa là PPV — tỷ lệ một cảnh báo bất kỳ là thật, và nó là thứ quyết định đội ngũ còn tin vào hệ thống hay không.

Diễn giải nhanh

PPV 7.8% — cứ 12.8 cảnh báo mới có 1 cảnh báo thật

Tỷ lệ nền 0.0500% là nguyên nhân, không phải mô hình kém: 499,750 bản ghi bình thường nhân với 0.500% sai sót đã đủ tạo ra 2,499 báo động giả mỗi ngày.

180.8 giờ người mỗi ngày ≈ 22.6 người toàn thời gian

Mỗi cảnh báo 4 phút. Đây là con số phải đối chiếu với biên chế thật trước khi chốt ngưỡng — đội quá tải sẽ tự bỏ qua hàng đợi, và khi đó độ nhạy trên giấy không còn ý nghĩa.

Muốn một nửa số cảnh báo là thật cần độ đặc hiệu 99.9575%

Đang là 99.5000%, tức phải giảm dương tính giả khoảng 12 lần. Nghịch lý tỷ lệ nền: sự kiện càng hiếm thì yêu cầu về độ đặc hiệu càng khắc nghiệt, và đây là lý do các bộ phát hiện gian lận thường ngập trong báo động giả.

Bỏ sót 37.5 ca mỗi ngày ≈ 13,688 ca mỗi năm

Phần này không xuất hiện trong hàng đợi nên không ai đếm được nếu chỉ nhìn báo cáo vận hành. Nó là hệ quả trực tiếp của độ nhạy 85.0% và chỉ giảm được bằng cách nhận thêm cảnh báo giả.

Khi nào con số này sai: Ngưỡng phát hiện phải chọn theo NĂNG LỰC XỬ LÝ, không theo F1 tối ưu. Một đội quá tải vì cảnh báo giả bỏ sót nhiều hơn một đội nhận ít cảnh báo nhưng xử lý hết.

Chi tiết

Dương tính giả mỗi ngày 2,499
Tỷ lệ cảnh báo trên tổng 0.54%
Nếu tăng độ đặc hiệu thêm 1 điểm % còn 212 cảnh báo
Nguyên tắc Chọn ngưỡng từ ngân sách nhân lực, rồi mới đo hiệu quả

8%

Cảnh báo đúngCảnh báo giả
8%Cảnh báo đúng: 212 (7.8%)Cảnh báo giả: 2,499 (92.2%)8%

Hàng đợi một ngày: 212 đúng trên tổng 2,711. Số ở giữa là PPV — tỷ lệ một cảnh báo bất kỳ là thật, và nó là thứ quyết định đội ngũ còn tin vào hệ thống hay không.

Số cảnh báo mỗi ngày theo độ đặc hiệu

Cảnh báo mỗi ngàySố bất thường thật mỗi ngày
Số cảnh báo mỗi ngày theo độ đặc hiệu8,6085,5102,411-687.198.50%98.77%99.05%99.32%99.59%99.86%

Giữ nguyên độ nhạy 85.0% và tỷ lệ nền 0.0500%. Đường dưới là trần: dù lọc sạch mọi dương tính giả thì vẫn còn đúng số ca thật. Toàn bộ phần chênh lệch là công vô ích.

PPV theo độ đặc hiệu

PPVMốc 50%
PPV theo độ đặc hiệu1.1170.71480.3128-0.0891398.50%98.77%99.05%99.32%99.59%99.86%

Với tỷ lệ nền 0.0500%, PPV chỉ khá lên ở những phần nghìn cuối cùng của độ đặc hiệu. Đây là nghịch lý tỷ lệ nền, và không mô hình nào thoát được nó.

Điểm vận hành theo độ đặc hiệu

Độ đặc hiệuCảnh báo/ngàyDương tính giảPPVGiờ người/ngàySố người
98.500%7,7097,4962.8%513.964.2
98.636%7,0276,8153.0%468.558.6
98.773%6,3466,1333.3%423.152.9
98.909%5,6645,4523.8%377.647.2
99.045%4,9834,7704.3%332.241.5
99.182%4,3014,0894.9%286.835.8
99.318%3,6203,4075.9%241.330.2
99.455%2,9382,7267.2%195.924.5
99.591%2,2572,0449.4%150.518.8
99.727%1,5751,36313.5%105.013.1
99.864%89468123.8%59.67.4
100.000%2120100.0%14.21.8

Toàn bộ chỉ số

Dương tính giả mỗi ngày 2,499
Tỷ lệ cảnh báo trên tổng 0.54%
Nếu tăng độ đặc hiệu thêm 1 điểm % còn 212 cảnh báo
Nguyên tắc Chọn ngưỡng từ ngân sách nhân lực, rồi mới đo hiệu quả

Công thức đang dùng

cảnh báo = N·base·sens + N·(1−base)·(1−spec)

Đây là công thức thật mà mã nguồn chạy, không phải mô tả gần đúng. API tại /api/v1/tools/alert-budget gọi đúng hàm này, nên kết quả trên trang và qua API không thể lệch nhau.

Cách dùng

  1. Điền tham số ở cột trái. Mọi ô đã có sẵn giá trị ví dụ chạy được, nên bạn có thể bấm Tính ngay trước rồi sửa sau.
  2. Đọc thẻ số ở trên cùng, rồi mục Diễn giải nhanh để biết con số đó nói gì.
  3. Đọc dòng “Khi nào con số này sai” trước khi dùng kết quả để quyết định — đó là giả định vỡ đầu tiên.
Giới hạn chung. Công cụ này tính đúng công thức của nó trên dữ liệu bạn đưa vào. Nó không kiểm tra dữ liệu của bạn có phù hợp với giả định của phương pháp hay không — phần đó vẫn là việc của người dùng, và mục “sai ở đâu” bên dưới trang liệt kê các chỗ hỏng thường gặp.

Phát hiện bất thường là gì

Phát hiện bất thường tìm quan sát khác biệt so với phần lớn dữ liệu. Đặc điểm định hình bài toán: gần như không có nhãn, và 'bất thường' không đồng nghĩa với 'có vấn đề'.

Làm thế nào

  1. Định nghĩa bình thường dựa trên giai đoạn dữ liệu đã biết là ổn định.
  2. Chọn phương pháp theo dạng dữ liệu: thống kê cho một biến, isolation forest cho nhiều biến, autoencoder cho dữ liệu phức tạp.
  3. Đặt ngưỡng theo số cảnh báo mà đội ngũ xử lý được mỗi ngày.
  4. Thu thập phản hồi từ người xử lý để cải thiện dần.

Đo bằng chỉ số nào

Precision@k trong k cảnh báo hàng đầu có bao nhiêu đúng
Số cảnh báo mỗi ngày ràng buộc vận hành thực tế

Sai ở đâu

Phần quan trọng nhất của trang này. Một phương pháp được mô tả mà không nói chỗ nó hỏng là phiên bản quảng cáo của phương pháp đó.

! Không có nhãn nên không đo được recall thật; mọi tuyên bố về 'phát hiện 95% bất thường' cần đặt dấu hỏi.
! Ngưỡng cố định trở nên sai khi hệ thống thay đổi bình thường mới.

Mô hình định lượng dùng trong Data Science

Chưa có mô hình nào gắn riêng cho chủ đề này. Đây là những mô hình của cả ngành — liên quan ở cấp ngành, không phải cấp chủ đề.

Tất cả mô hình →
Transformersắp có

Cơ chế attention, nắm quan hệ xa.

Temporal Convolutional Networksắp có

Tích chập nhân quả với receptive field kiểm soát được.

Deflated Sharpe Ratiohoạt động

Sharpe sau khi phạt vì số lần thử và độ lệch/nhọn của đuôi.

Probability of Backtest Overfittinghoạt động

Tỉ lệ cấu hình thắng in-sample lại xếp dưới trung vị ngoài mẫu.

Câu hỏi thường gặp

Phát hiện bất thường là gì?

Phát hiện bất thường tìm quan sát khác biệt so với phần lớn dữ liệu. Đặc điểm định hình bài toán: gần như không có nhãn, và 'bất thường' không đồng nghĩa với 'có vấn đề'.

Phát hiện bất thường được làm như thế nào?

1. Định nghĩa bình thường dựa trên giai đoạn dữ liệu đã biết là ổn định. 2. Chọn phương pháp theo dạng dữ liệu: thống kê cho một biến, isolation forest cho nhiều biến, autoencoder cho dữ liệu phức tạp. 3. Đặt ngưỡng theo số cảnh báo mà đội ngũ xử lý được mỗi ngày. 4. Thu thập phản hồi từ người xử lý để cải thiện dần.

Phát hiện bất thường hay sai ở đâu?

Không có nhãn nên không đo được recall thật; mọi tuyên bố về 'phát hiện 95% bất thường' cần đặt dấu hỏi. Ngưỡng cố định trở nên sai khi hệ thống thay đổi bình thường mới.

Đo phát hiện bất thường bằng chỉ số nào?

Precision@k — trong k cảnh báo hàng đầu có bao nhiêu đúng; Số cảnh báo mỗi ngày — ràng buộc vận hành thực tế.

Phát hiện bất thường trên QuantHub đã dùng được chưa?

Chưa xây dựng. Mục này hiện là điều hướng và tài liệu tham chiếu; chúng tôi không gắn nhãn 'live' cho thứ chưa chạy.

Chủ đề khác trong Data Science

Toàn bộ Data Science
Time Series Machine Learning Deep Learning NLP Computer Vision AutoML Feature Engineering Optimization