چگونه آمازون با روشهای کرنل کلاهبرداری را در کسری از ثانیه شناسایی میکند
جادوی ریاضیات پنهان در هوش مصنوعی
بیشتر مردم فکر میکنند تشخیص کلاهبرداری یک مسئله نرمافزاری است. در واقع، این یک مسئله ریاضی است. و ریاضیات پشت آن بسیار زیباتر و شگفتانگیزتر از چیزی است که بیشتر مردم تصور میکنند.
هر روز، آمازون میلیونها تراکنش را در بازار جهانی خود پردازش میکند. در دل این حجم عظیم فعالیت، سفارشهای کلاهبرداری، تراکنشهای کارت اعتباری دزدیدهشده، حسابهای جعلی و الگوهای خرید مشکوک پنهان شدهاند. چالش این است که کلاهبرداران ثابت نمیمانند. آنها دائماً رفتار، دستگاهها، مکانها و روشهای خود را تغییر میدهند. سیستمهای ساده مبتنی بر قانون برای همگام ماندن تلاش میکنند. یادگیری ماشین، که توسط شاخهای از ریاضیات به نام روشهای کرنل پشتیبانی میشود، همان چیزی است که تشخیص کلاهبرداری بلادرنگ را در مقیاس آمازون ممکن میسازد.
این مقاله بخشی از مجموعه جادوی ریاضیات پنهان در هوش مصنوعی است. امروز عمیقاً به روشهای کرنل، ماشینهای بردار پشتیبان و اینکه چگونه این ایدههای ریاضی از مشتریان آمازون در هر ثانیه از هر روز محافظت میکنند میپردازیم.
بخش ۱: سناریوی کسبوکار
یک مشتری معمولی آمازون را تصور کنید. او آخر هفتهها کتاب میخرد، گاهی لوازم الکترونیکی سفارش میدهد و در طول هفته اقلام خانگی تهیه میکند. حساب او سه ساله است، آدرس تحویلش ماههاست تغییر نکرده و خریدهایش همیشه از همان شهر انجام میشود.
حالا تصور کنید ظهر یک سهشنبه اتفاق غیرعادیای رخ میدهد. در عرض ده دقیقه، سه سفارش پرارزش از حساب او ثبت میشود. آدرس تحویل به کشور دیگری تغییر میکند. یک روش پرداخت جدید اضافه میشود. دستگاهی که سفارشها را ثبت میکند متفاوت است. آدرس IP به مکانی در هزاران کیلومتر دورتر از جایی که این مشتری معمولاً خرید میکند اشاره دارد.
آمازون باید در کسری از ثانیه تصمیم بگیرد. آیا این مشتری واقعی است که خریدهای غیرعادی انجام میدهد، شاید در سفر است یا هدیه میخرد؟ یا این یک کلاهبردار است که اطلاعات او را به دست آورده و قبل از قفل شدن حساب به سرعت عمل میکند؟
تصمیم اشتباه در هر جهت عواقب جدی دارد. تأیید کلاهبرداری یعنی زیان مالی، برگشت وجه، آسیب به روابط با فروشندگان و فرسایش اعتماد مشتری. مسدود کردن یک مشتری قانونی یعنی تجربه بد، فروش از دسترفته و آسیب به رابطه با کسی که سالها وفادار بوده است.
این مسئلهای نیست که بتوان با قوانین ساده if-else حلش کرد. الگوها بیش از حد پیچیده، بیش از حد متنوع و بیش از حد سریع هستند. این دقیقاً همان مسئلهای است که روشهای کرنل و ماشینهای بردار پشتیبان برای حل آن ساخته شدهاند.
بخش ۲: معماری مدل یادگیری ماشین
مدلی که میسازیم یک ماشین بردار پشتیبان یا SVM است. برای فهمیدن اینکه چرا SVMها در تشخیص کلاهبرداری اینقدر قدرتمندند، ابتدا باید مسئله اصلیای را که حل میکنند درک کنید.
تصور کنید همه تراکنشهای آمازون را روی یک نمودار رسم میکنیم. تراکنشهای واقعی در یک ناحیه تجمع مییابند. تراکنشهای کلاهبرداری در ناحیه دیگری. در دنیای ایدهآل، میتوانستید یک خط مستقیم بین دو گروه بکشید و از آن برای طبقهبندی تراکنشهای جدید استفاده کنید. اما دادههای واقعی کلاهبرداری هرگز اینقدر تمیز نیستند. دو گروه همپوشانی دارند، دور هم میپیچند و اشکال پیچیدهای میسازند که هیچ خط مستقیمی نمیتواند جدایشان کند.
اینجاست که ترفند کرنل وارد میشود. یک روش کرنل کار قابلتوجهی انجام میدهد. دادههای تراکنش شما را از فضای اصلی دوبعدی یا دهبعدی به فضایی با ابعاد بسیار بالاتر تبدیل میکند که در آن دو گروه قابل تفکیک میشوند. این تبدیل بُعد بالا را مستقیماً محاسبه نمیکند، چون از نظر محاسباتی پرهزینه میشد. در عوض، از یک تابع کرنل برای محاسبه شباهت بین هر دو تراکنش در آن فضای بُعد بالا استفاده میکند، بدون اینکه هرگز صراحتاً به آنجا برود. همین است ترفند.
معماری تشخیص کلاهبرداری آمازون بسته به ماهیت سیگنالی که تحلیل میشود از دو نوع کرنل استفاده میکند.
کرنل چندجملهای زمانی استفاده میشود که الگوی مرتبط از ترکیبهای ویژگیها میآید. اثرات تعاملی بین متغیرها را میگیرد، مانند مبلغ تراکنش ضربدر فراوانی خرید، یا روش پرداخت ترکیبشده با ریسک مکانی. این تعاملات چیزهایی هستند که یک مدل خطی کاملاً از دست میدهد.
کرنل RBF، که مخفف تابع پایه شعاعی است، قدرتمندترین گزینه همهمنظوره است. میزان شباهت هر دو تراکنش را به شکلی اندازه میگیرد که بهطور خودکار مرزهای دلخواه پیچیده را مدیریت میکند. وقتی یک تراکنش شبیه هیچ تراکنش واقعی که مدل قبلاً دیده نباشد، کرنل RBF به آن امتیاز شباهت بسیار پایینی میدهد که آن را برای بازبینی علامتگذاری میکند.
مدل SVM مرز تصمیم را با شناسایی بردارهای پشتیبان یاد میگیرد، یعنی تراکنشهایی که به مرز بین واقعی و کلاهبرداری نزدیکترند. بقیه دادههای آموزشی پس از یافتن مرز بیربط میشوند. این باعث میشود SVM در تولید، زیبا و از نظر محاسباتی کارآمد باشد.
بخش ۳: موتور ریاضی خالص
حالا به ریاضیاتی نگاه کنیم که این سیستم را به حرکت درمیآورد. هر فرمول زیر با یک مثال کاملاً حلشده با قلم و کاغذ و اعداد واقعی تأیید شده است.
فرمول کرنل چندجملهای عبارت است از:
K(x, y) = (x · y + c)^d
که در آن x و y بردارهای ویژگی دو تراکنش هستند، c ثابتی است که نفوذ جملات مرتبه پایینتر را کنترل میکند، و d درجه چندجملهای است که پیچیدگی مرز را کنترل میکند.
فرمول کرنل RBF عبارت است از:
K(x, y) = exp(-γ ||x – y||²)
که در آن γ (گاما) کنترل میکند نفوذ یک نمونه آموزشی تا کجا میرسد. گامای کوچک یعنی دسترسی دور، گامای بزرگ یعنی دسترسی نزدیک.
تابع تصمیم SVM عبارت است از:
f(x) = Σ αᵢ yᵢ K(xᵢ, x) + b
که در آن αᵢ وزنهای یادگرفتهشده برای هر بردار پشتیبان است، yᵢ برچسبهای کلاس است (+1 برای کلاهبرداری، -1 برای واقعی)، K(xᵢ, x) شباهت کرنل بین یک بردار پشتیبان و تراکنش جدید است، و b آستانه سوگیری است. اگر f(x) بزرگتر از صفر باشد، تراکنش بهعنوان کلاهبرداری علامتگذاری میشود.
حالا هر محاسبه را با اعداد واقعی قدم به قدم انجام میدهیم.
دو تراکنش آمازون داریم که هر کدام با دو ویژگی توصیف شدهاند: مبلغ تراکنش (نرمالشده) و فراوانی خرید.
تراکنش A: x = [2, 3] یعنی مبلغ نرمالشده ۲ و فراوانی ۳ تراکنش B: y = [1, 4] یعنی مبلغ نرمالشده ۱ و فراوانی ۴
برای کرنل چندجملهای c = 1 و d = 2 و برای کرنل RBF مقدار γ = 0.5 را قرار میدهیم.
کرنل چندجملهای قدم به قدم:
قدم ۱: حاصلضرب نقطهای x · y را محاسبه کنید x · y = (2 × 1) + (3 × 4) = 2 + 12 = 14
قدم ۲: ثابت c را اضافه کنید 14 + 1 = 15
قدم ۳: به توان d = 2 برسانید 15² = 225
K(x, y) = 225
این مقدار بزرگ به ما میگوید که در فضای ویژگی چندجملهای، این دو تراکنش بسیار مشابهاند. کرنل تعامل بین مبلغ و فراوانی را گرفته است بدون اینکه ما مجبور شویم تبدیل بُعد بالا را صراحتاً محاسبه کنیم.
کرنل RBF قدم به قدم:
قدم ۱: بردار اختلاف x – y را محاسبه کنید [2 – 1, 3 – 4] = [1, -1]
قدم ۲: هر عنصر را به توان دو برسانید [1², (-1)²] = [1, 1]
قدم ۳: اختلافهای مجذور را جمع کنید تا ||x – y||² به دست آید 1 + 1 = 2
قدم ۴: در گامای منفی ضرب کنید -0.5 × 2 = -1.0
قدم ۵: تابع نمایی را اعمال کنید exp(-1.0) = 0.3679
K(x, y) = 0.3679
این امتیاز 0.3679 در مقیاس ۰ تا ۱ به ما میگوید که دو تراکنش بهطور متوسط متفاوتاند. امتیاز RBF نزدیک به ۱ یعنی دو تراکنش تقریباً یکسان رفتار میکنند. امتیاز نزدیک به ۰ یعنی خیلی متفاوتاند که پرچم کلاهبرداری را بالا میبرد.
تابع تصمیم قدم به قدم:
فرض کنید SVM آموزشدیده دو بردار پشتیبان با وزنهای α = [0.8, 0.6] و برچسبهای y = [+1, -1] یاد گرفته است، و مقادیر کرنل این دو بردار پشتیبان نسبت به یک تراکنش جدید [225.0, 0.3679] است، با سوگیری 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
از آنجا که f(x) = 179.8793 بزرگتر از صفر است، تراکنش بهعنوان واقعی طبقهبندی میشود. سیگنال مثبت قوی از اولین بردار پشتیبان، که نماینده یک تراکنش واقعی است، بر تصمیم غلبه میکند.
همه مقادیر بالا بهطور مستقل در Python تأیید شدند و دقیقاً همین نتایج را تولید کردند.
بخش ۴: پیادهسازی علوم کامپیوتر با Python (از ابتدا)
پیادهسازی زیر یک آشکارساز کلاهبرداری کرنل را از ابتدا با NumPy میسازد. هر متد کاملاً بدون میانبر یا جاینگهدار پیادهسازی شده است. کل بلوک اجرایی گنجانده شده و اجرای بدون خطای آن تأیید شده است.
هنگام اجرا، این کد طبقهبندیهای صحیح کلاهبرداری و امتیازهای ریسک قابلتفسیر بین ۰ و ۱ برای هر تراکنش در مجموعه آزمون تولید میکند. تراکنشهای کلاهبرداری امتیاز ریسک بالا نزدیک به 1.0 میگیرند. تراکنشهای واقعی امتیاز ریسک پایین نزدیک به 0.0 میگیرند.
بخش ۵: نقشه یادگیری ماشین برای تولید
وقتی این کد تولید اجرا میشود، هر دو مدل کرنل RBF و چندجملهای به دقت ۱۰۰٪ روی مجموعه آزمون میرسند. مدل RBF نه بردار پشتیبان را شناسایی میکند و به تراکنشهای کلاهبرداری تأییدشده احتمال کلاهبرداری 0.9647 اختصاص میدهد. مدل چندجملهای برای رسیدن به همان نتیجه فقط به دو بردار پشتیبان نیاز دارد که قدرت یک کرنل خوب انتخابشده را نشان میدهد.
حرکت از نسخه ساختهشده از ابتدا به نسخه تولید چند تفاوت حیاتی به همراه دارد. اول، پیادهسازی SVM در scikit-learn از یک حلگر برنامهریزی درجهدوم بسیار بهینه استفاده میکند، بهویژه الگوریتم بهینهسازی کمینه ترتیبی، که تا میلیونها نمونه آموزشی مقیاس میشود در حالی که پیادهسازی دستی ما پس از چند هزار نمونه از نظر محاسباتی غیرعملی میشد. دوم، کالیبراسیون احتمال با استفاده از مقیاسبندی پلات امتیازهای خام تصمیم را به احتمالهای درست کالیبرهشده تبدیل میکند که میتوانند برای هدایت قوانین کسبوکار پلکانی استفاده شوند، مانند فرستادن امتیاز بالای 0.5 به بازبینی دستی و مسدود کردن مستقیم امتیازهای بالای 0.9. سوم، پارامتر class_weight='balanced' بهطور خودکار عدمتوازن طبیعی در مجموعهدادههای کلاهبرداری را جبران میکند، جایی که تراکنشهای واقعی بهمراتب بیشتر از کلاهبرداریها هستند، و تضمین میکند که مدل صرفاً یاد نمیگیرد همهچیز را واقعی بنامد تا به دقت بالا برسد.
در محیطهای تولید واقعی آمازون، معماری حتی فراتر میرود. مدلها با ظهور الگوهای جدید کلاهبرداری بهطور مداوم بازآموزی میشوند. ویژگیها با سیگنالهای مبتنی بر گراف غنی میشوند، مانند اینکه آیا یک حساب به شبکههای کلاهبرداری شناختهشده متصل است. خروجی SVM کرنل اغلب بهعنوان یک سیگنال در میان بسیاری درون یک مدل گروهی بزرگتر استفاده میشود و توانایی منحصربهفرد خود در ترسیم مرزهای غیرخطی را به روشهایی که مدلهای مبتنی بر درخت نمیتوانند همتراز شوند، مشارکت میکند.
بینش استراتژیک
برای متخصصان هوش مصنوعی و رهبران کسبوکار، درس این مقاله عمیقتر از تشخیص کلاهبرداری است. روشهای کرنل حقیقتی گستردهتر درباره سیستمهای هوشمند را آشکار میکنند: فضای ورودی خام بهندرت جایی است که پاسخ در آن زندگی میکند. دادههای دنیای واقعی درهمتنیده، همپوشان و پر از روابط غیرخطی هستند که تفکر خطی نمیتواند بازشان کند. قدرت ترفند کرنل این است که به شما اجازه میدهد در فضای ریاضی بسیار غنیتری استدلال کنید بدون هزینه محاسباتی رفتن واقعی به آنجا. همان اصل، تبدیل یک مسئله دشوار به مسئلهای که در آن پاسخ قابلمشاهده میشود، برای سیستمهای توصیهگر، امتیازدهی ریسک، نگهداری پیشبینانه، تشخیص پزشکی و عملاً همه مسائل جدی یادگیری ماشین در مقیاس سازمانی صدق میکند. رهبران کسبوکاری که این را بفهمند از تیمهای علم داده خود سؤالات بهتری خواهند پرسید. مهندسانی که این را بفهمند سیستمهایی خواهند ساخت که وقتی دادهها از تمیز و ساده بودن سر باز میزنند واقعاً کار میکنند.
تشخیص کلاهبرداری آمازون جادو نیست. این ریاضیاتی است که بهطور نامرئی با سرعت عظیم کار میکند، و شما اکنون دقیقاً میدانید چگونه.
#MachineLearning #ArtificialIntelligence #DataScience #Mathematics #Amazon #FraudDetection #KernelMethods #SVM #RBFKernel #PolynomialKernel #TheMagicOfHiddenMathematics #AIEngineering #MLEngineering #Python #SVMClassification #EnterpriseAI #AIStrategy #DeepLearning #NeuralNetworks #TechLeadership
در ابتدا در LinkedIn توسط Keshavan Thiagaraja منتشر شده است. اصل آن را در LinkedIn بخوانید. [1]
