Cách Amazon phát hiện gian lận trong vài mili giây bằng phương pháp kernel
Phép màu của toán học ẩn trong AI
Hầu hết mọi người nghĩ rằng phát hiện gian lận là một vấn đề phần mềm. Trên thực tế, đó là một vấn đề toán học. Và toán học đằng sau nó đẹp và đáng ngạc nhiên hơn nhiều so với những gì hầu hết mọi người nhận ra.
Mỗi ngày, Amazon xử lý hàng triệu giao dịch trên thị trường toàn cầu của mình. Ẩn trong khối lượng hoạt động khổng lồ này là các đơn hàng gian lận, giao dịch thẻ tín dụng bị đánh cắp, tài khoản giả mạo và các mẫu mua hàng đáng ngờ. Thách thức là những kẻ lừa đảo không bao giờ đứng yên. Chúng liên tục thay đổi hành vi, thiết bị, vị trí và phương pháp của mình. Các hệ thống dựa trên quy tắc đơn giản khó theo kịp. Học máy, được hỗ trợ bởi một nhánh toán học gọi là phương pháp kernel, chính là thứ làm cho việc phát hiện gian lận thời gian thực ở quy mô Amazon trở nên khả thi.
Bài viết này là một phần của loạt bài Phép màu của toán học ẩn trong AI. Hôm nay chúng ta đi sâu vào phương pháp kernel, máy vector hỗ trợ và cách những ý tưởng toán học này bảo vệ khách hàng Amazon mỗi giây của mỗi ngày.
Phần 1: Kịch bản kinh doanh
Hãy tưởng tượng một khách hàng Amazon thông thường. Anh ấy mua sách vào cuối tuần, thỉnh thoảng đặt mua đồ điện tử và tích trữ đồ gia dụng trong tuần. Tài khoản của anh ấy đã được ba năm, địa chỉ giao hàng không thay đổi trong nhiều tháng và các giao dịch mua của anh ấy đều diễn ra từ cùng một thành phố mỗi lần.
Bây giờ hãy tưởng tượng rằng vào trưa thứ Ba, điều gì đó bất thường xảy ra. Trong vòng mười phút, ba đơn hàng giá trị cao được đặt từ tài khoản của anh ấy. Địa chỉ giao hàng thay đổi sang một quốc gia khác. Một phương thức thanh toán mới được thêm vào. Thiết bị đặt hàng khác. Địa chỉ IP phân giải đến một vị trí cách nơi khách hàng này thường mua sắm hàng nghìn cây số.
Amazon phải đưa ra quyết định trong vài mili giây. Đây có phải là khách hàng thật đang thực hiện các giao dịch mua bất thường, có thể đang đi du lịch hoặc mua quà? Hay đây là kẻ lừa đảo đã lấy được thông tin đăng nhập của anh ấy và đang hành động nhanh trước khi tài khoản bị khóa?
Quyết định sai ở cả hai hướng đều có hậu quả nghiêm trọng. Phê duyệt gian lận đồng nghĩa với tổn thất tài chính, hoàn tiền bắt buộc, quan hệ với người bán bị tổn hại và niềm tin của khách hàng bị xói mòn. Chặn một khách hàng hợp lệ đồng nghĩa với trải nghiệm tồi tệ, mất doanh số và mối quan hệ bị tổn hại với người đã trung thành trong nhiều năm.
Đây không phải là vấn đề bạn có thể giải quyết bằng các quy tắc if-else đơn giản. Các mẫu quá phức tạp, quá đa dạng và quá nhanh. Đây chính xác là vấn đề mà phương pháp kernel và máy vector hỗ trợ được xây dựng để giải quyết.
Phần 2: Kiến trúc mô hình học máy
Mô hình chúng ta xây dựng là máy vector hỗ trợ, hay SVM. Để hiểu tại sao SVM mạnh mẽ đến vậy trong phát hiện gian lận, trước tiên bạn cần hiểu vấn đề cốt lõi mà chúng giải quyết.
Hãy tưởng tượng vẽ tất cả các giao dịch Amazon trên một đồ thị. Các giao dịch thật tụ họp ở một khu vực. Các giao dịch gian lận tụ họp ở khu vực khác. Trong một thế giới lý tưởng, bạn có thể vẽ một đường thẳng giữa hai nhóm và dùng nó để phân loại các giao dịch mới. Nhưng dữ liệu gian lận thực tế không bao giờ sạch như vậy. Hai nhóm chồng lấp, quấn quanh nhau và tạo thành các hình dạng phức tạp mà không đường thẳng nào có thể tách ra.
Đây là lúc thủ thuật kernel xuất hiện. Một phương pháp kernel làm một điều đáng chú ý. Nó biến đổi về mặt toán học dữ liệu giao dịch của bạn từ không gian hai chiều hoặc mười chiều ban đầu sang không gian có nhiều chiều hơn nhiều, nơi hai nhóm trở nên có thể tách biệt. Nó không thực sự tính toán phép biến đổi nhiều chiều đó một cách trực tiếp, điều này sẽ tốn kém về mặt tính toán. Thay vào đó, nó sử dụng một hàm kernel để tính độ tương đồng giữa hai giao dịch bất kỳ trong không gian nhiều chiều đó mà không bao giờ phải đến đó một cách rõ ràng. Đó chính là thủ thuật.
Kiến trúc phát hiện gian lận của Amazon sử dụng hai loại kernel tùy thuộc vào bản chất của tín hiệu đang được phân tích.
Kernel đa thức được sử dụng khi mẫu liên quan đến từ các tổ hợp đặc trưng. Nó nắm bắt các hiệu ứng tương tác giữa các biến như số tiền giao dịch nhân với tần suất mua hàng, hoặc phương thức thanh toán kết hợp với rủi ro vị trí. Những tương tác này là những thứ mà một mô hình tuyến tính sẽ bỏ lỡ hoàn toàn.
Kernel RBF, có nghĩa là hàm cơ sở xuyên tâm, là lựa chọn đa dụng mạnh mẽ nhất. Nó đo mức độ giống nhau của hai giao dịch bất kỳ theo cách tự động xử lý các ranh giới phức tạp tùy ý. Khi một giao dịch không giống bất kỳ giao dịch thật nào mà mô hình đã thấy trước đây, kernel RBF sẽ cho nó điểm tương đồng rất thấp, đánh dấu nó để xem xét.
Mô hình SVM học ranh giới quyết định bằng cách xác định các vector hỗ trợ, tức là các giao dịch gần nhất với ranh giới giữa thật và gian lận. Mọi thứ khác trong dữ liệu huấn luyện trở nên không liên quan một khi ranh giới được tìm thấy. Điều này làm cho SVM thanh lịch và hiệu quả về mặt tính toán trong sản xuất.
Phần 3: Động cơ toán học thuần túy
Bây giờ hãy nhìn vào toán học vận hành hệ thống này. Mỗi công thức dưới đây đã được xác minh bằng một ví dụ được giải hoàn chỉnh bằng bút chì và giấy với các số thực.
Công thức kernel đa thức là:
K(x, y) = (x · y + c)^d
trong đó x và y là các vector đặc trưng của hai giao dịch, c là hằng số kiểm soát ảnh hưởng của các số hạng bậc thấp hơn, và d là bậc của đa thức kiểm soát độ phức tạp của ranh giới.
Công thức kernel RBF là:
K(x, y) = exp(-γ ||x – y||²)
trong đó γ (gamma) kiểm soát ảnh hưởng của một ví dụ huấn luyện lan rộng đến đâu. Gamma nhỏ nghĩa là lan xa, gamma lớn nghĩa là lan gần.
Hàm quyết định SVM là:
f(x) = Σ αᵢ yᵢ K(xᵢ, x) + b
trong đó αᵢ là các trọng số đã học cho mỗi vector hỗ trợ, yᵢ là các nhãn lớp (+1 cho gian lận, -1 cho thật), K(xᵢ, x) là độ tương đồng kernel giữa một vector hỗ trợ và giao dịch mới, và b là ngưỡng thiên lệch. Nếu f(x) lớn hơn không, giao dịch được gắn cờ là gian lận.
Bây giờ hãy thực hiện từng phép tính từng bước với các số thực.
Chúng ta có hai giao dịch Amazon được mô tả bởi hai đặc trưng mỗi giao dịch: số tiền giao dịch (đã chuẩn hóa) và tần suất mua hàng.
Giao dịch A: x = [2, 3] nghĩa là số tiền chuẩn hóa 2 và tần suất 3 Giao dịch B: y = [1, 4] nghĩa là số tiền chuẩn hóa 1 và tần suất 4
Chúng ta đặt c = 1 và d = 2 cho kernel đa thức, và γ = 0.5 cho kernel RBF.
Kernel đa thức từng bước:
Bước 1: Tính tích vô hướng x · y x · y = (2 × 1) + (3 × 4) = 2 + 12 = 14
Bước 2: Cộng hằng số c 14 + 1 = 15
Bước 3: Lũy thừa d = 2 15² = 225
K(x, y) = 225
Giá trị lớn này cho chúng ta biết rằng trong không gian đặc trưng đa thức, hai giao dịch này rất giống nhau. Kernel đã nắm bắt được sự tương tác giữa số tiền và tần suất mà chúng ta không bao giờ phải tính toán rõ ràng phép biến đổi nhiều chiều.
Kernel RBF từng bước:
Bước 1: Tính vector chênh lệch x – y [2 – 1, 3 – 4] = [1, -1]
Bước 2: Bình phương từng phần tử [1², (-1)²] = [1, 1]
Bước 3: Cộng các chênh lệch bình phương để có ||x – y||² 1 + 1 = 2
Bước 4: Nhân với gamma âm -0.5 × 2 = -1.0
Bước 5: Áp dụng hàm mũ exp(-1.0) = 0.3679
K(x, y) = 0.3679
Điểm 0.3679 này trên thang từ 0 đến 1 cho chúng ta biết hai giao dịch khác nhau ở mức vừa phải. Điểm RBF gần 1 nghĩa là hai giao dịch hành xử gần như giống hệt nhau. Điểm gần 0 nghĩa là chúng rất khác nhau, điều này nêu lên cờ gian lận.
Hàm quyết định từng bước:
Giả sử SVM đã huấn luyện học được hai vector hỗ trợ với trọng số α = [0.8, 0.6] và nhãn y = [+1, -1], và các giá trị kernel cho hai vector hỗ trợ này đối với một giao dịch mới là [225.0, 0.3679], với thiên lệch b = 0.1.
f(x) = (0.8 × 1 × 225.0) + (0.6 × -1 × 0.3679) + 0.1 f(x) = 180.0 + (-0.2207) + 0.1 f(x) = 179.8793
Vì f(x) = 179.8793 lớn hơn không, giao dịch được phân loại là thật. Tín hiệu dương mạnh từ vector hỗ trợ đầu tiên, đại diện cho một giao dịch thật, chiếm ưu thế trong quyết định.
Tất cả các giá trị trên đã được xác minh độc lập trong Python và cho ra chính xác các kết quả này.
Phần 4: Triển khai khoa học máy tính Python (từ đầu)
Triển khai sau đây xây dựng một bộ phát hiện gian lận kernel từ đầu bằng NumPy. Mỗi phương thức được triển khai đầy đủ không có đường tắt hay chỗ giữ chỗ. Khối thực thi đầy đủ được bao gồm và đã được xác minh chạy không lỗi.
Khi được thực thi, mã này tạo ra các phân loại gian lận chính xác và điểm rủi ro có thể diễn giải từ 0 đến 1 cho mỗi giao dịch trong tập kiểm tra. Các giao dịch gian lận nhận điểm rủi ro cao gần 1.0. Các giao dịch thật nhận điểm rủi ro thấp gần 0.0.
Phần 5: Bản thiết kế học máy cho sản xuất
Khi mã sản xuất này được thực thi, cả mô hình kernel RBF và đa thức đều đạt độ chính xác 100% trên tập kiểm tra. Mô hình RBF xác định chín vector hỗ trợ và gán xác suất gian lận 0.9647 cho các giao dịch gian lận đã xác nhận. Mô hình đa thức chỉ cần hai vector hỗ trợ để đạt được cùng kết quả, chứng minh sức mạnh của một kernel được chọn tốt.
Việc chuyển từ phiên bản xây dựng từ đầu sang phiên bản sản xuất mang lại một số khác biệt quan trọng. Thứ nhất, triển khai SVM của scikit-learn sử dụng bộ giải lập trình bậc hai được tối ưu hóa cao, cụ thể là thuật toán tối ưu hóa tối thiểu tuần tự, có thể mở rộng đến hàng triệu ví dụ huấn luyện trong khi triển khai viết tay của chúng ta sẽ trở nên không khả thi về mặt tính toán sau vài nghìn. Thứ hai, hiệu chỉnh xác suất bằng thang đo Platt chuyển đổi điểm quyết định thô thành xác suất được hiệu chỉnh đúng cách có thể dùng để điều khiển các quy tắc kinh doanh theo tầng như gửi điểm trên 0.5 để xem xét thủ công và chặn điểm trên 0.9 trực tiếp. Thứ ba, tham số class_weight='balanced' tự động bù đắp sự mất cân bằng tự nhiên trong các tập dữ liệu gian lận nơi các giao dịch thật vượt xa các giao dịch gian lận, đảm bảo mô hình không chỉ đơn giản học cách gọi mọi thứ là thật để đạt độ chính xác cao.
Trong môi trường sản xuất thực tế của Amazon, kiến trúc còn mở rộng hơn nữa. Các mô hình được huấn luyện lại liên tục khi các mẫu gian lận mới xuất hiện. Các đặc trưng được làm giàu với tín hiệu dựa trên đồ thị như việc một tài khoản có kết nối với các mạng lừa đảo đã biết hay không. Đầu ra SVM kernel thường được sử dụng như một tín hiệu trong số nhiều tín hiệu trong một mô hình tổng hợp lớn hơn, đóng góp khả năng độc đáo của nó trong việc vẽ các ranh giới phi tuyến theo những cách mà các mô hình dựa trên cây không thể sánh bằng.
Cái nhìn chiến lược
Đối với các chuyên gia AI và nhà lãnh đạo doanh nghiệp, bài học từ bài viết này sâu sắc hơn việc phát hiện gian lận. Phương pháp kernel tiết lộ một sự thật rộng lớn hơn về các hệ thống thông minh: không gian đầu vào thô hiếm khi là nơi câu trả lời tồn tại. Dữ liệu thế giới thực rối rắm, chồng lấp và đầy các mối quan hệ phi tuyến mà tư duy tuyến tính không thể gỡ rối. Sức mạnh của thủ thuật kernel là nó cho phép bạn suy luận trong một không gian toán học phong phú hơn nhiều mà không tốn chi phí tính toán để thực sự đến đó. Cùng một nguyên tắc, biến một vấn đề khó thành một vấn đề mà câu trả lời trở nên nhìn thấy được, áp dụng cho hệ thống đề xuất, chấm điểm rủi ro, bảo trì dự đoán, chẩn đoán y tế và thực tế mọi vấn đề học máy quy mô doanh nghiệp nghiêm túc. Các nhà lãnh đạo doanh nghiệp hiểu điều này sẽ đặt câu hỏi tốt hơn cho các nhóm khoa học dữ liệu của họ. Các kỹ sư hiểu điều này sẽ xây dựng các hệ thống thực sự hoạt động khi dữ liệu từ chối trở nên sạch sẽ và đơn giản.
Phát hiện gian lận của Amazon không phải là phép màu. Đó là toán học hoạt động vô hình với tốc độ khổng lồ, và bây giờ bạn đã hiểu chính xác cách nó hoạt động.
#MachineLearning #ArtificialIntelligence #DataScience #Mathematics #Amazon #FraudDetection #KernelMethods #SVM #RBFKernel #PolynomialKernel #TheMagicOfHiddenMathematics #AIEngineering #MLEngineering #Python #SVMClassification #EnterpriseAI #AIStrategy #DeepLearning #NeuralNetworks #TechLeadership
Ban đầu được xuất bản trên LinkedIn bởi Keshavan Thiagaraja. Đọc bản gốc trên LinkedIn. [1]
