Phát hiện các giao dịch gian lận bằng cách sử dụng máy học với Amazon SageMaker PlatoBlockchain Data Intelligence. Tìm kiếm dọc. Ái.

Phát hiện các giao dịch gian lận bằng cách sử dụng máy học với Amazon SageMaker

Các doanh nghiệp có thể mất hàng tỷ đô la mỗi năm do người dùng độc hại và các giao dịch gian lận. Khi ngày càng có nhiều hoạt động kinh doanh chuyển sang trực tuyến, gian lận và lạm dụng trong các hệ thống trực tuyến cũng đang gia tăng. Để chống lại gian lận trực tuyến, nhiều doanh nghiệp đã và đang sử dụng các hệ thống phát hiện gian lận dựa trên quy tắc.

Tuy nhiên, các hệ thống phát hiện gian lận truyền thống dựa trên một bộ quy tắc và bộ lọc do các chuyên gia của con người làm thủ công. Các bộ lọc thường có thể dễ vỡ và các quy tắc có thể không nắm bắt được toàn bộ các tín hiệu gian lận. Hơn nữa, trong khi các hành vi gian lận ngày càng phát triển, bản chất tĩnh của các quy tắc và bộ lọc được xác định trước gây khó khăn cho việc duy trì và cải thiện các hệ thống phát hiện gian lận truyền thống một cách hiệu quả.

Trong bài đăng này, chúng tôi chỉ cho bạn cách xây dựng một hệ thống phát hiện gian lận thẻ tín dụng năng động, tự cải thiện và có thể bảo trì bằng máy học (ML) bằng cách sử dụng Amazon SageMaker.

Ngoài ra, nếu bạn đang tìm kiếm một dịch vụ được quản lý đầy đủ để xây dựng các mô hình phát hiện gian lận được tùy chỉnh mà không cần viết mã, chúng tôi khuyên bạn nên kiểm tra Phát hiện gian lận Amazon. Amazon Fraud Detector cho phép khách hàng không có kinh nghiệm ML tự động hóa việc xây dựng các mô hình phát hiện gian lận được tùy chỉnh cho dữ liệu của họ, tận dụng hơn 20 năm kinh nghiệm phát hiện gian lận từ AWS và Amazon.com.

Tổng quan về giải pháp

Giải pháp này xây dựng cốt lõi của hệ thống phát hiện gian lận thẻ tín dụng sử dụng SageMaker. Chúng tôi bắt đầu bằng cách đào tạo một mô hình phát hiện bất thường không được giám sát bằng cách sử dụng thuật toán Rừng chặt ngẫu nhiên (RCF). Sau đó, chúng tôi đào tạo hai mô hình phân loại có giám sát bằng cách sử dụng thuật toán XGBoost, một làm mô hình cơ sở và một để đưa ra dự đoán, sử dụng các chiến lược khác nhau để giải quyết sự mất cân bằng về lớp cực độ trong dữ liệu. Cuối cùng, chúng tôi đào tạo một mô hình XGBoost tối ưu với tối ưu hóa siêu tham số (HPO) để cải thiện hơn nữa hiệu suất của mô hình.

Đối với tập dữ liệu mẫu, chúng tôi sử dụng các giao dịch thẻ tín dụng công khai, ẩn danh tập dữ liệu ban đầu được phát hành như một phần của nghiên cứu sự hợp tác của Worldline và Nhóm học máy của ULB (Đại học Libre de Bruxelles). Trong phần hướng dẫn, chúng tôi cũng thảo luận về cách bạn có thể tùy chỉnh giải pháp để sử dụng dữ liệu của riêng mình.

Kết quả đầu ra của giải pháp như sau:

  • Không được giám sát SageMaker RCF người mẫu. Mô hình đưa ra điểm bất thường cho mỗi giao dịch. Giá trị điểm thấp cho thấy rằng giao dịch được coi là bình thường (không gian lận). Giá trị cao cho thấy giao dịch đó là gian lận. Các định nghĩa về thấp và cao phụ thuộc vào ứng dụng, nhưng thực tế phổ biến cho thấy rằng điểm số vượt quá ba độ lệch chuẩn so với điểm trung bình được coi là bất thường.
  • Một người được giám sát SageMaker XGBoost được đào tạo bằng cách sử dụng lược đồ trọng số tích hợp của nó để giải quyết vấn đề dữ liệu không cân bằng cao.
  • Một mô hình SageMaker XGBoost được giám sát được đào tạo bằng cách sử dụng Kỹ thuật lấy mẫu quá mức của thiểu số đồng cảm (MỊN).
  • Một mô hình SageMaker XGBoost được đào tạo với HPO.
  • Dự đoán xác suất cho mỗi giao dịch là gian lận. Nếu xác suất ước tính của một giao dịch vượt quá một ngưỡng, giao dịch đó được phân loại là gian lận.

Để chứng minh cách bạn có thể sử dụng giải pháp này trong cơ sở hạ tầng kinh doanh hiện có của mình, chúng tôi cũng bao gồm một ví dụ về thực hiện lệnh gọi API REST tới điểm cuối mô hình đã triển khai, sử dụng AWS Lambda để kích hoạt cả mô hình RCF và XGBoost.

Sơ đồ sau minh họa kiến ​​trúc giải pháp.

Điều kiện tiên quyết

Để thử giải pháp trong tài khoản của riêng bạn, hãy đảm bảo rằng bạn có sẵn những thứ sau:

Khi phiên bản Studio đã sẵn sàng, bạn có thể khởi chạy Studio và truy cập JumpStart. Các giải pháp JumpStart không khả dụng trong các phiên bản máy tính xách tay SageMaker và bạn không thể truy cập chúng thông qua các API SageMaker hoặc Giao diện dòng lệnh AWS (AWS CLI).

Khởi chạy giải pháp

Để khởi chạy giải pháp, hãy hoàn thành các bước sau:

  1. Mở JumpStart bằng cách sử dụng trình khởi chạy JumpStart trong Bắt Đầu hoặc bằng cách chọn biểu tượng Khởi động ở thanh bên trái.
  2. Theo Giải pháp, chọn Phát hiện người dùng và giao dịch độc hại để mở giải pháp trong một tab Studio khác.
    Tìm giải pháp
  3. Trên tab giải pháp, hãy chọn Khởi động để khởi chạy giải pháp.
    Khởi chạy giải pháp
    Tài nguyên giải pháp được cung cấp và một tab khác sẽ mở ra hiển thị tiến trình triển khai. Khi quá trình triển khai kết thúc, Mở Notebook nút xuất hiện.
  4. Chọn Mở Notebook để mở sổ tay giải pháp trong Studio.
    Mở sổ tay

Điều tra và xử lý dữ liệu

Tập dữ liệu mặc định chỉ chứa các tính năng số, vì các tính năng ban đầu đã được chuyển đổi bằng cách sử dụng Phân tích thành phần chính (PCA) để bảo vệ quyền riêng tư của người dùng. Do đó, tập dữ liệu chứa 28 thành phần PCA, V1 – V28 và hai tính năng chưa được chuyển đổi, Số lượng và Thời gian. Số tiền đề cập đến số tiền giao dịch và Thời gian là giây trôi qua giữa bất kỳ giao dịch nào trong dữ liệu và giao dịch đầu tiên.

Cột Lớp tương ứng với việc một giao dịch có gian lận hay không.

Dữ liệu mẫu

Chúng ta có thể thấy rằng phần lớn là không gian lận, bởi vì trong tổng số 284,807 ví dụ, chỉ có 492 (0.173%) là gian lận. Đây là một trường hợp mất cân bằng giai cấp cực kỳ phổ biến trong các tình huống phát hiện gian lận.

Mất cân bằng lớp dữ liệu

Sau đó, chúng tôi chuẩn bị dữ liệu của mình để tải và đào tạo. Chúng tôi chia dữ liệu thành một tập huấn luyện và một tập thử nghiệm, sử dụng tập hợp trước để huấn luyện và tập hợp sau để đánh giá hiệu suất của mô hình của chúng tôi. Điều quan trọng là phải chia nhỏ dữ liệu trước khi áp dụng bất kỳ kỹ thuật nào để giảm bớt sự mất cân bằng của lớp. Nếu không, chúng tôi có thể làm rò rỉ thông tin từ bộ thử nghiệm vào bộ xe lửa và làm ảnh hưởng đến hiệu suất của mô hình.

Nếu bạn muốn cung cấp dữ liệu đào tạo của riêng mình, hãy đảm bảo rằng đó là dữ liệu dạng bảng ở định dạng CSV, tải dữ liệu lên Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3) nhóm và chỉnh sửa đường dẫn đối tượng S3 trong mã sổ ghi chép.

Đường dẫn dữ liệu trong S3

Nếu dữ liệu của bạn bao gồm các cột phân loại với các giá trị không phải số, bạn cần mã hóa một lần các giá trị này (ví dụ: Sklearn's OneHotEncoder) vì thuật toán XGBoost chỉ hỗ trợ dữ liệu số.

Đào tạo mô hình Rừng chặt ngẫu nhiên không có giám sát

Trong một tình huống phát hiện gian lận, chúng tôi thường có rất ít ví dụ được gắn nhãn và việc gắn nhãn gian lận có thể mất rất nhiều thời gian và công sức. Do đó, chúng tôi cũng muốn trích xuất thông tin từ dữ liệu chưa được gắn nhãn. Chúng tôi thực hiện việc này bằng cách sử dụng thuật toán phát hiện bất thường, tận dụng sự mất cân bằng dữ liệu cao thường gặp trong các bộ dữ liệu phát hiện gian lận.

Phát hiện bất thường là một hình thức học tập không giám sát, trong đó chúng tôi cố gắng xác định các ví dụ bất thường chỉ dựa trên các đặc điểm tính năng của chúng. Rừng Cắt Ngẫu nhiên là một thuật toán phát hiện bất thường hiện đại vừa chính xác vừa có thể mở rộng. Với mỗi ví dụ dữ liệu, RCF liên kết một điểm bất thường.

Chúng tôi sử dụng thuật toán RCF tích hợp sẵn của SageMaker để đào tạo mô hình phát hiện bất thường trên tập dữ liệu đào tạo của chúng tôi, sau đó đưa ra dự đoán trên tập dữ liệu thử nghiệm của chúng tôi.

Đầu tiên, chúng tôi kiểm tra và vẽ biểu đồ điểm bất thường được dự đoán cho các ví dụ tích cực (gian lận) và tiêu cực (không gian lận) riêng biệt, bởi vì số lượng các ví dụ tích cực và tiêu cực khác nhau đáng kể. Chúng tôi hy vọng các ví dụ tích cực (gian lận) có điểm bất thường tương đối cao và các ví dụ tiêu cực (không gian lận) có điểm bất thường thấp. Từ biểu đồ, chúng ta có thể thấy các mẫu sau:

  • Gần một nửa số ví dụ tích cực (biểu đồ bên trái) có điểm bất thường cao hơn 0.9, trong khi hầu hết các ví dụ tiêu cực (biểu đồ bên phải) có điểm bất thường thấp hơn 0.85.
  • Thuật toán học tập không giám sát RCF có những hạn chế để xác định chính xác các ví dụ gian lận và không gian lận. Điều này là do không có thông tin nhãn được sử dụng. Chúng tôi giải quyết vấn đề này bằng cách thu thập thông tin nhãn và sử dụng thuật toán học có giám sát trong các bước sau.

Tỷ số bất thường được dự đoán

Sau đó, chúng tôi giả định một tình huống thực tế hơn, trong đó chúng tôi phân loại từng ví dụ thử nghiệm là tích cực (gian lận) hoặc tiêu cực (không gian lận) dựa trên điểm bất thường của nó. Chúng tôi vẽ biểu đồ điểm cho tất cả các ví dụ kiểm tra như sau, chọn điểm giới hạn là 1.0 (dựa trên mẫu được hiển thị trong biểu đồ) để phân loại. Cụ thể, nếu điểm bất thường của một ví dụ nhỏ hơn hoặc bằng 1.0, nó được phân loại là tiêu cực (không gian lận). Nếu không, ví dụ này được phân loại là tích cực (gian lận).

Biểu đồ điểm cho các mẫu thử nghiệm

Cuối cùng, chúng tôi so sánh kết quả phân loại với các nhãn sự thật cơ bản và tính toán các chỉ số đánh giá. Bởi vì tập dữ liệu của chúng tôi không cân bằng, chúng tôi sử dụng các chỉ số đánh giá độ chính xác cân bằng, Điểm Kappa của Cohen, Điểm F1ROC AUC, bởi vì chúng tính đến tần suất của từng lớp trong dữ liệu. Đối với tất cả các chỉ số này, giá trị lớn hơn cho thấy hiệu suất dự đoán tốt hơn. Lưu ý rằng trong bước này, chúng tôi chưa thể tính ROC AUC, vì không có xác suất ước tính cho các lớp tích cực và tiêu cực từ mô hình RCF trên mỗi ví dụ. Chúng tôi tính toán số liệu này trong các bước sau bằng cách sử dụng các thuật toán học tập có giám sát.

. RCF
Độ chính xác cân bằng 0.560023
Cohen's Kappa 0.003917
F1 0.007082
ROC AUC

Từ bước này, chúng ta có thể thấy rằng mô hình không được giám sát đã có thể đạt được một số tách biệt giữa các lớp, với điểm số bất thường cao hơn tương quan với các ví dụ gian lận.

Đào tạo mô hình XGBoost với lược đồ trọng số được tích hợp sẵn

Sau khi đã thu thập đủ lượng dữ liệu đào tạo được gắn nhãn, chúng tôi có thể sử dụng thuật toán học tập có giám sát để khám phá mối quan hệ giữa các tính năng và các lớp. Chúng tôi chọn thuật toán XGBoost vì nó có hồ sơ theo dõi đã được chứng minh, có khả năng mở rộng cao và có thể xử lý các dữ liệu bị thiếu. Chúng ta cần phải xử lý sự mất cân bằng dữ liệu lần này, nếu không lớp đa số (những ví dụ không gian lận hoặc tiêu cực) sẽ chiếm ưu thế trong việc học.

Chúng tôi đào tạo và triển khai mô hình được giám sát đầu tiên của mình bằng cách sử dụng vùng chứa thuật toán XGBoost tích hợp sẵn của SageMaker. Đây là mô hình cơ sở của chúng tôi. Để xử lý sự mất cân bằng dữ liệu, chúng tôi sử dụng siêu tham số scale_pos_weight, cân bằng trọng số của các ví dụ về lớp tích cực so với các ví dụ về lớp tiêu cực. Bởi vì tập dữ liệu bị sai lệch nhiều, chúng tôi đặt siêu tham số này thành một giá trị bảo toàn: sqrt(num_nonfraud/num_fraud).

Chúng tôi đào tạo và triển khai mô hình như sau:

  1. Truy xuất URI vùng chứa SageMaker XGBoost.
  2. Đặt các siêu tham số mà chúng tôi muốn sử dụng cho đào tạo mô hình, bao gồm cả tham số mà chúng tôi đã đề cập để xử lý sự mất cân bằng dữ liệu, scale_pos_weight.
  3. Tạo công cụ ước tính XGBoost và đào tạo nó với tập dữ liệu huấn luyện của chúng tôi.
  4. Triển khai mô hình XGBoost đã được đào tạo tới một điểm cuối được quản lý bởi SageMaker.
  5. Đánh giá mô hình cơ sở này với bộ dữ liệu thử nghiệm của chúng tôi.

Sau đó, chúng tôi đánh giá mô hình của mình với bốn chỉ số tương tự như đã đề cập trong bước cuối cùng. Lần này, chúng tôi cũng có thể tính toán số liệu ROC AUC.

. RCF XGBoost
Độ chính xác cân bằng 0.560023 0.847685
Cohen's Kappa 0.003917 0.743801
F1 0.007082 0.744186
ROC AUC 0.983515

Chúng ta có thể thấy rằng một phương pháp học có giám sát XGBoost với giản đồ trọng số (sử dụng siêu tham số scale_pos_weight) đạt được hiệu suất tốt hơn đáng kể so với phương pháp học không giám sát RCF. Tuy nhiên, vẫn còn chỗ để cải thiện hiệu suất. Đặc biệt, việc nâng điểm Cohen's Kappa lên trên 0.8 nhìn chung sẽ rất thuận lợi.

Ngoài các chỉ số giá trị đơn lẻ, việc xem xét các chỉ số cho biết hiệu suất trên mỗi lớp cũng rất hữu ích. Ví dụ: ma trận nhầm lẫn, độ chính xác mỗi lớp, thu hồi và điểm F1 có thể cung cấp thêm thông tin về hiệu suất của mô hình của chúng tôi.

Ma trận nhầm lẫn của mô hình XGBoost

. chính xác nhớ lại điểm f1 hỗ trợ
không gian lận 1.00 1.00 1.00 28435
gian lận 0.80 0.70 0.74 46

Tiếp tục gửi lưu lượng thử nghiệm đến điểm cuối qua Lambda

Để chứng minh cách sử dụng các mô hình của chúng tôi trong hệ thống sản xuất, chúng tôi đã xây dựng một API REST với Cổng API Amazon và một hàm Lambda. Khi các ứng dụng khách gửi các yêu cầu suy luận HTTP đến API REST, hàm này sẽ kích hoạt hàm Lambda, hàm này sẽ gọi ra các điểm cuối của mô hình RCF và XGBoost và trả về các dự đoán từ các mô hình. Bạn có thể đọc mã hàm Lambda và theo dõi các lệnh gọi trên Lambda console.

Chúng tôi cũng đã tạo một tập lệnh Python thực hiện các yêu cầu suy luận HTTP tới API REST, với dữ liệu thử nghiệm của chúng tôi là dữ liệu đầu vào. Để xem việc này được thực hiện như thế nào, hãy kiểm tra generate_endpoint_traffic.py tệp trong mã nguồn của giải pháp. Kết quả dự đoán được ghi vào một nhóm S3 thông qua một Amazon Kinesis Dữ liệu Firehose luồng giao hàng. Bạn có thể tìm thấy tên nhóm S3 đích trên bảng điều khiển Kinesis Data Firehose và kiểm tra kết quả dự đoán trong nhóm S3.

Đào tạo mô hình XGBoost với kỹ thuật lấy mẫu quá mức SMOTE

Bây giờ chúng ta có một mô hình cơ sở sử dụng XGBoost, chúng ta có thể xem liệu các kỹ thuật lấy mẫu được thiết kế đặc biệt cho các vấn đề mất cân bằng có thể cải thiện hiệu suất của mô hình hay không. Chúng tôi sử dụng Lấy mẫu quá mức của thiểu số đồng cảm (SMOTE), làm gương cho lớp thiểu số bằng cách nội suy các điểm dữ liệu mới giữa các điểm hiện có.

Các bước thực hiện như sau:

  1. Sử dụng SMOTE để làm mẫu cho lớp thiểu số (lớp gian lận) trong tập dữ liệu đào tạo của chúng tôi. SMOTE làm gương cho tầng lớp thiểu số từ khoảng 0.17–50%. Lưu ý rằng đây là trường hợp lấy mẫu quá mức của tầng lớp thiểu số. Một giải pháp thay thế sẽ là sử dụng tỷ lệ lấy mẫu lại nhỏ hơn, chẳng hạn như có một mẫu lớp thiểu số cho mỗi sqrt(non_fraud/fraud) đa số mẫu hoặc sử dụng các kỹ thuật lấy mẫu lại nâng cao hơn. Để biết thêm các tùy chọn lấy mẫu quá mức, hãy tham khảo So sánh các bộ lấy mẫu quá mức.
  2. Xác định các siêu tham số để huấn luyện XGBoost thứ hai để scale_pos_weight bị loại bỏ và các siêu tham số khác vẫn giống như khi huấn luyện mô hình XGBoost cơ sở. Chúng tôi không cần phải xử lý sự mất cân bằng dữ liệu với siêu thông số này nữa, bởi vì chúng tôi đã làm điều đó với SMOTE.
  3. Huấn luyện mô hình XGBoost thứ hai với các siêu tham số mới trên tập dữ liệu huấn luyện đã xử lý SMOTE.
  4. Triển khai mô hình XGBoost mới tới điểm cuối được quản lý của SageMaker.
  5. Đánh giá mô hình mới với bộ dữ liệu thử nghiệm.

Khi đánh giá mô hình mới, chúng ta có thể thấy rằng với SMOTE, XGBoost đạt được hiệu suất tốt hơn về độ chính xác cân bằng, nhưng không về điểm số Kappa và F1 của Cohen. Lý do cho điều này là SMOTE đã lấy mẫu quá mức cho lớp gian lận đến mức làm tăng sự chồng chéo của nó trong không gian tính năng với các trường hợp không gian lận. Bởi vì Kappa của Cohen có trọng lượng sai hơn so với độ chính xác cân bằng, số liệu này giảm đáng kể, cũng như độ chính xác và điểm F1 cho các trường hợp gian lận.

. RCF XGBoost XGBoost NHẸ
Độ chính xác cân bằng 0.560023 0.847685 0.912657
Cohen's Kappa 0.003917 0.743801 0.716463
F1 0.007082 0.744186 0.716981
ROC AUC 0.983515 0.967497

Tuy nhiên, chúng tôi có thể khôi phục sự cân bằng giữa các chỉ số bằng cách điều chỉnh ngưỡng phân loại. Cho đến nay, chúng tôi đang sử dụng 0.5 làm ngưỡng để gắn nhãn liệu một điểm dữ liệu có gian lận hay không. Sau khi thử nghiệm các ngưỡng khác nhau từ 0.1–0.9, chúng ta có thể thấy rằng Kappa của Cohen tiếp tục tăng cùng với ngưỡng mà không bị giảm đáng kể độ chính xác cân bằng.

Thử nghiệm các ngưỡng khác nhau để khôi phục sự cân bằng giữa các chỉ số

Điều này bổ sung một hiệu chuẩn hữu ích cho mô hình của chúng tôi. Chúng tôi có thể sử dụng ngưỡng thấp nếu không bỏ sót bất kỳ trường hợp gian lận nào (âm tính giả) là ưu tiên của chúng tôi hoặc chúng tôi có thể tăng ngưỡng để giảm thiểu số lần dương tính giả.

Đào tạo mô hình XGBoost tối ưu với HPO

Trong bước này, chúng tôi trình bày cách cải thiện hiệu suất mô hình bằng cách đào tạo mô hình XGBoost thứ ba của chúng tôi với tối ưu hóa siêu tham số. Khi xây dựng các hệ thống ML phức tạp, việc khám phá thủ công tất cả các kết hợp có thể có của các giá trị siêu thông số là không thực tế. Tính năng HPO trong SageMaker có thể đẩy nhanh năng suất của bạn bằng cách thay mặt bạn thử nhiều biến thể của một kiểu máy. Nó tự động tìm kiếm mô hình tốt nhất bằng cách tập trung vào các kết hợp hứa hẹn nhất của các giá trị siêu thông số trong phạm vi mà bạn chỉ định.

Quy trình HPO cần một tập dữ liệu xác thực, vì vậy trước tiên, chúng tôi chia nhỏ hơn nữa dữ liệu đào tạo của mình thành tập dữ liệu đào tạo và xác thực bằng cách sử dụng lấy mẫu phân tầng. Để giải quyết vấn đề mất cân bằng dữ liệu, chúng tôi sử dụng lại giản đồ trọng số của XGBoost, thiết lập scale_pos_weight siêu tham số tới sqrt(num_nonfraud/num_fraud).

Chúng tôi tạo công cụ ước tính XGBoost bằng cách sử dụng vùng chứa thuật toán XGBoost tích hợp sẵn của SageMaker và chỉ định số liệu đánh giá khách quan và phạm vi siêu tham số mà chúng tôi muốn thử nghiệm. Với những thứ này, chúng tôi tạo ra một Siêu tham sốTuner và bắt đầu công việc điều chỉnh HPO, công việc đào tạo nhiều mô hình song song, tìm kiếm các kết hợp siêu tham số tối ưu.

Khi công việc điều chỉnh hoàn tất, chúng tôi có thể xem báo cáo phân tích của nó và kiểm tra các siêu tham số của mỗi mô hình, thông tin công việc đào tạo và hiệu suất của nó so với số liệu đánh giá khách quan.

Danh sách thông tin của từng mô hình từ công việc điều chỉnh

Sau đó, chúng tôi triển khai mô hình tốt nhất và đánh giá nó bằng tập dữ liệu thử nghiệm của chúng tôi.

Đánh giá và so sánh tất cả hiệu suất của mô hình trên cùng một dữ liệu thử nghiệm

Bây giờ chúng tôi có kết quả đánh giá từ tất cả bốn mô hình: RCF, đường cơ sở XGBoost, XGBoost với SMOTE và XGBoost với HPO. Hãy so sánh hiệu suất của họ.

. RCF XGBoost XGBoost với SMOTE XGBoost với HPO
Độ chính xác cân bằng 0.560023 0.847685 0.912657 0.902156
Cohen's Kappa 0.003917 0.743801 0.716463 0.880778
F1 0.007082 0.744186 0.716981 0.880952
ROC AUC 0.983515 0.967497 0.981564

Chúng ta có thể thấy rằng XGBoost với HPO đạt được hiệu suất thậm chí còn tốt hơn so với phương pháp SMOTE. Đặc biệt, điểm Kappa của Cohen và F1 trên 0.8, cho thấy hiệu suất mô hình tối ưu.

Làm sạch

Khi bạn hoàn thành giải pháp này, hãy đảm bảo rằng bạn xóa tất cả các tài nguyên AWS không mong muốn để tránh phát sinh các khoản phí ngoài ý muốn. bên trong Xóa giải pháp trên tab giải pháp của bạn, hãy chọn Xóa tất cả tài nguyên để xóa các tài nguyên được tạo tự động khi khởi chạy giải pháp này.

Dọn dẹp bằng cách xóa giải pháp

Ngoài ra, bạn có thể sử dụng Hình thành đám mây AWS để xóa tất cả các tài nguyên tiêu chuẩn được tạo tự động bởi giải pháp và sổ ghi chép. Để sử dụng phương pháp này, trên bảng điều khiển AWS CloudFormation, hãy tìm ngăn xếp CloudFormation có mô tả chứa phát hiện gian lận-sử dụng-học máy và xóa nó. Đây là ngăn xếp mẹ và việc chọn xóa ngăn xếp này sẽ tự động xóa các ngăn xếp lồng nhau.

Dọn dẹp thông qua CloudFormation

Với một trong hai cách tiếp cận, bạn vẫn cần xóa thủ công bất kỳ tài nguyên bổ sung nào mà bạn có thể đã tạo trong sổ ghi chép này. Một số ví dụ bao gồm các nhóm S3 bổ sung (ngoài nhóm mặc định của giải pháp), các điểm cuối SageMaker bổ sung (sử dụng tên tùy chỉnh) và thêm Đăng ký container đàn hồi Amazon (Amazon ECR) kho.

Kết luận

Trong bài đăng này, chúng tôi đã chỉ cho bạn cách xây dựng cốt lõi của một hệ thống phát hiện gian lận thẻ tín dụng năng động, tự cải thiện và có thể bảo trì bằng cách sử dụng ML với SageMaker. Chúng tôi đã xây dựng, đào tạo và triển khai mô hình phát hiện bất thường RCF không được giám sát, mô hình XGBoost được giám sát làm cơ sở, mô hình XGBoost được giám sát khác với SMOTE để giải quyết vấn đề mất cân bằng dữ liệu và mô hình XGBoost cuối cùng được tối ưu hóa với HPO. Chúng tôi đã thảo luận về cách xử lý tình trạng mất cân bằng dữ liệu và sử dụng dữ liệu của chính bạn trong giải pháp. Chúng tôi cũng đưa vào một ví dụ về triển khai API REST với API Gateway và Lambda để chứng minh cách sử dụng hệ thống trong cơ sở hạ tầng kinh doanh hiện có của bạn.

Để tự mình thử, hãy mở Studio SageMaker và khởi chạy giải pháp JumpStart. Để tìm hiểu thêm về giải pháp, hãy xem Kho GitHub.


Về các tác giả

Tiểu Lý ThầnTiểu Lý Thần là thành viên Kiến trúc giải pháp và Cộng đồng lĩnh vực kỹ thuật học máy (TFC) tại Amazon Web Services. Cô ấy tập trung vào việc giúp khách hàng lập kiến ​​trúc trên đám mây và tận dụng các dịch vụ AWS để thu được giá trị kinh doanh. Trước khi gia nhập AWS, cô ấy là trưởng nhóm công nghệ và là kỹ sư toàn ngăn cao cấp xây dựng các hệ thống phân tán chuyên sâu về dữ liệu trên đám mây.

Phát hiện các giao dịch gian lận bằng cách sử dụng máy học với Amazon SageMaker PlatoBlockchain Data Intelligence. Tìm kiếm dọc. Ái.Tiến sĩ Xin Huang là Nhà khoa học ứng dụng cho các thuật toán tích hợp sẵn của Amazon SageMaker JumpStart và Amazon SageMaker. Ông tập trung vào việc phát triển các thuật toán học máy có thể mở rộng. Mối quan tâm nghiên cứu của anh ấy là trong lĩnh vực xử lý ngôn ngữ tự nhiên, học sâu có thể giải thích được trên dữ liệu dạng bảng và phân tích mạnh mẽ phân nhóm không-thời gian phi tham số. Ông đã xuất bản nhiều bài báo trong các hội nghị ACL, ICDM, KDD và Hiệp hội Thống kê Hoàng gia: Tạp chí Series A.

Phát hiện các giao dịch gian lận bằng cách sử dụng máy học với Amazon SageMaker PlatoBlockchain Data Intelligence. Tìm kiếm dọc. Ái.Vedant Jain là Kiến trúc sư Giải pháp Chuyên gia về AI / ML của Sr., giúp khách hàng thu được giá trị từ hệ sinh thái Học máy tại AWS. Trước khi gia nhập AWS, Vedant đã đảm nhiệm các vị trí Chuyên môn ML / Khoa học Dữ liệu tại nhiều công ty khác nhau như Databricks, Hortonworks (nay là Cloudera) & JP Morgan Chase. Ngoài công việc của mình, Vedant còn đam mê sáng tác âm nhạc, sử dụng Khoa học để có một cuộc sống ý nghĩa và khám phá các món chay ngon từ khắp nơi trên thế giới.

Dấu thời gian:

Thêm từ Học máy AWS