Jinsi Amazon Inavyogundua Ulaghai kwa Millisekunde Kutumia Mbinu za Kernel
Uchawi wa Hisabati Iliyofichwa katika AI
Watu wengi hufikiria kugundua ulaghai ni tatizo la programu. Kwa kweli, ni tatizo la hisabati. Na hisabati iliyoko nyuma yake ni nzuri zaidi na ya kushangaza zaidi kuliko watu wengi wanavyotambua.
Kila siku, Amazon hushughulikia mamilioni ya miamala katika soko lake la kimataifa. Iliyofichwa ndani ya kiasi hiki kikubwa cha shughuli ni oda za ulaghai, miamala ya kadi za mkopo zilizoibiwa, akaunti za bandia, na mifumo ya ununuzi ya kutiliwa shaka. Changamoto ni kwamba walaghai hawabaki kimya. Wanabadilisha tabia zao, vifaa vyao, maeneo yao, na mbinu zao kila mara. Mifumo rahisi inayotegemea sheria hupata shida kufuatana. Machine learning, inayoendeshwa na tawi la hisabati linaloitwa mbinu za kernel, ndiyo inayofanya kugundua ulaghai kwa wakati halisi kuwezekana kwa kiwango cha Amazon.
Makala haya ni sehemu ya mfululizo wa Uchawi wa Hisabati Iliyofichwa katika AI. Leo tunazama kwa undani kwenye mbinu za kernel, mashine za vekta za msaada, na jinsi mawazo haya ya kihisabati yanavyolinda wateja wa Amazon kila sekunde ya kila siku.
Sehemu ya 1: Hali ya Biashara
Fikiria mteja wa kawaida wa Amazon. Ananunua vitabu wikendi, wakati mwingine huagiza vifaa vya elektroniki, na hukusanya vifaa vya nyumbani wakati wa wiki. Akaunti yake ina miaka mitatu, anwani yake ya usafirishaji haijabadilika kwa miezi, na manunuzi yake hutokea kutoka mji ule ule kila mara.
Sasa fikiria kuwa Jumanne mchana, kitu kisicho cha kawaida kinatokea. Ndani ya dakika kumi, oda tatu za thamani kubwa zinawekwa kutoka akaunti yake. Anwani ya usafirishaji inabadilika kwenda nchi nyingine. Njia mpya ya malipo inaongezwa. Kifaa kinachoweka oda ni tofauti. Anwani ya IP inaelekea mahali ambapo ni maelfu ya kilomita mbali na mahali ambapo mteja huyu kwa kawaida hununua.
Amazon lazima ifanye uamuzi kwa millisekunde. Je, huyu ni mteja wa kweli akifanya manunuzi yasiyo ya kawaida, labda anasafiri au kununua zawadi? Au huyu ni mlaghai ambaye amepata hati zake na anafanya kazi haraka kabla akaunti haijafungwa?
Uamuzi mbaya kwa upande wowote una matokeo mabaya. Kuidhinisha ulaghai kunamaanisha hasara za kifedha, chargebacks, uharibifu wa uhusiano na wafanyabiashara, na kudidimia kwa uaminifu wa wateja. Kuzuia mteja halali kunamaanisha uzoefu mbaya, mauzo yaliyopotea, na uhusiano ulioharibika na mtu ambaye alikuwa mwaminifu kwa miaka.
Huu si tatizo ambalo unaweza kulitatua kwa sheria rahisi za if-else. Mifumo ni ngumu sana, inayotofautiana sana, na inayohamia haraka sana. Hili ndilo haswa tatizo ambalo mbinu za kernel na mashine za vekta za msaada zilijengwa kulitatua.
Sehemu ya 2: Usanifu wa Mfano wa Machine Learning
Mfano tunaojenga ni mashine ya vekta za msaada, au SVM. Ili kuelewa kwa nini SVM ni zenye nguvu sana kwa kugundua ulaghai, kwanza unahitaji kuelewa tatizo la msingi ambalo hutatua.
Fikiria kuweka miamala yote ya Amazon kwenye grafu. Miamala halisi hukusanyika katika eneo moja. Miamala ya ulaghai hukusanyika katika eneo lingine. Katika ulimwengu kamili, ungeweza kuchora mstari wa moja kwa moja kati ya vikundi viwili na kuutumia kuainisha miamala mipya. Lakini data halisi ya ulaghai haijawahi kuwa safi hivyo. Vikundi viwili vinashindana, vinazunguka kila kimoja, na kutengeneza maumbo magumu ambayo hakuna mstari wa moja kwa moja unaoweza kutenganisha.
Hapa ndipo hila ya kernel inapoingia. Mbinu ya kernel hufanya jambo la kushangaza. Inabadilisha data yako ya miamala kihesabati kutoka nafasi yake ya awali ya vipimo viwili au kumi hadi nafasi ya vipimo vingi zaidi ambapo vikundi viwili vinakuwa vinaweza kutenganishwa. Haifanyi hesabu ya mabadiliko hayo ya vipimo vingi moja kwa moja, ambayo ingekuwa ghali kwa hesabu. Badala yake, hutumia kazi ya kernel kuhesabu ufanana kati ya miamala yoyote miwili katika nafasi hiyo ya vipimo vingi bila kuwahi kwenda huko wazi. Hiyo ndiyo hila.
Usanifu wa kugundua ulaghai wa Amazon hutumia aina mbili za kernels kulingana na asili ya ishara inayochambuliwa.
Kernel ya polynomial hutumika wakati muundo muhimu unatokana na mchanganyiko wa sifa. Huchukua athari za mwingiliano kati ya vigezo kama kiasi cha muamala kilichozidishwa kwa marudio ya ununuzi, au njia ya malipo pamoja na hatari ya eneo. Mwingiliano huu ni mambo ambayo mfano wa mstari ungekosa kabisa.
Kernel ya RBF, ambayo inamaanisha radial basis function, ndiyo chaguo lenye nguvu zaidi la matumizi ya jumla. Hupima jinsi miamala yoyote miwili inavyofanana kwa njia inayoshughulikia mipaka yenye utata wowote kiotomatiki. Wakati muamala haufanani na muamala wowote halisi ambao mfano umewahi kuona, kernel ya RBF huipa alama ndogo sana ya ufanana, ambayo huitia alama kwa ukaguzi.
Mfano wa SVM hujifunza mpaka wa uamuzi kwa kutambua vekta za msaada, ambazo ni miamala iliyo karibu zaidi na mpaka kati ya halisi na ulaghai. Kila kitu kingine katika data ya mafunzo huwa hakina umuhimu mara tu mpaka unapopatikana. Hii hufanya SVM kuwa maridadi na yenye ufanisi wa hesabu katika uzalishaji.
Sehemu ya 3: Injini Safi ya Kihisabati
Sasa hebu tuangalie hisabati inayoendesha mfumo huu. Kila formula hapa chini imethibitishwa kwa mfano uliotatuliwa kikamilifu kwa penseli na karatasi ukitumia namba halisi.
Formula ya kernel ya polynomial ni:
K(x, y) = (x · y + c)^d
ambapo x na y ni vekta za sifa za miamala miwili, c ni kudumu inayodhibiti ushawishi wa maneno ya ngazi ya chini, na d ni digrii ya polynomial inayodhibiti utata wa mpaka.
Formula ya kernel ya RBF ni:
K(x, y) = exp(-γ ||x – y||²)
ambapo γ (gamma) hudhibiti jinsi ushawishi wa mfano mmoja wa mafunzo unavyofikia mbali. Gamma ndogo inamaanisha kufikia mbali, gamma kubwa inamaanisha kufikia karibu.
Kazi ya uamuzi ya SVM ni:
f(x) = Σ αᵢ yᵢ K(xᵢ, x) + b
ambapo αᵢ ni uzani uliojifunzwa kwa kila vekta ya msaada, yᵢ ni lebo za darasa (+1 kwa ulaghai, -1 kwa halisi), K(xᵢ, x) ni ufanana wa kernel kati ya vekta ya msaada na muamala mpya, na b ni kizingiti cha upendeleo. Ikiwa f(x) ni kubwa kuliko sifuri, muamala unatiwa alama kama ulaghai.
Sasa hebu tufanye kila hesabu hatua kwa hatua kwa namba halisi.
Tuna miamala miwili ya Amazon inayoelezwa kwa sifa mbili kila moja: kiasi cha muamala (kilichosanifishwa) na marudio ya ununuzi.
Muamala A: x = [2, 3] ikimaanisha kiasi kilichosanifishwa 2 na marudio 3 Muamala B: y = [1, 4] ikimaanisha kiasi kilichosanifishwa 1 na marudio 4
Tunaweka c = 1 na d = 2 kwa kernel ya polynomial, na γ = 0.5 kwa kernel ya RBF.
Kernel ya polynomial hatua kwa hatua:
Hatua ya 1: Hesabu bidhaa ya doti x · y x · y = (2 × 1) + (3 × 4) = 2 + 12 = 14
Hatua ya 2: Ongeza kudumu c 14 + 1 = 15
Hatua ya 3: Inua kwa nguvu d = 2 15² = 225
K(x, y) = 225
Thamani hii kubwa inatuambia kwamba katika nafasi ya sifa za polynomial, miamala hii miwili inafanana sana. Kernel imechukua mwingiliano kati ya kiasi na marudio bila sisi kuwahi kuhesabu mabadiliko ya vipimo vingi wazi.
Kernel ya RBF hatua kwa hatua:
Hatua ya 1: Hesabu vekta ya tofauti x – y [2 – 1, 3 – 4] = [1, -1]
Hatua ya 2: Mraba kila kipengele [1², (-1)²] = [1, 1]
Hatua ya 3: Jumlisha tofauti za mraba kupata ||x – y||² 1 + 1 = 2
Hatua ya 4: Zidisha kwa gamma hasi -0.5 × 2 = -1.0
Hatua ya 5: Tumia kazi ya kipeo exp(-1.0) = 0.3679
K(x, y) = 0.3679
Alama hii ya 0.3679 kwenye kipimo cha 0 hadi 1 inatuambia kwamba miamala miwili ni tofauti kwa wastani. Alama ya RBF iliyo karibu na 1 inamaanisha miamala miwili hufanya kazi karibu kikamilifu. Alama iliyo karibu na 0 inamaanisha ni tofauti sana, ambayo huinua bendera ya ulaghai.
Kazi ya uamuzi hatua kwa hatua:
Tuchague kuwa SVM iliyofunzwa imejifunza vekta mbili za msaada zenye uzani α = [0.8, 0.6] na lebo y = [+1, -1], na thamani za kernel kwa vekta hizi mbili za msaada dhidi ya muamala mpya ni [225.0, 0.3679], kwa upendeleo 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
Kwa kuwa f(x) = 179.8793 ni kubwa kuliko sifuri, muamala unaainishwa kama halisi. Ishara imara ya chanya kutoka vekta ya kwanza ya msaada, inayowakilisha muamala halisi, hutawala uamuzi.
Thamani zote zilizo hapo juu zilithibitishwa kwa uhuru katika Python na zilizalisha matokeo haya haswa.
Sehemu ya 4: Utekelezaji wa Sayansi ya Kompyuta wa Python (Kutoka Mwanzo)
Utekelezaji unaofuata hujenga kigunduzi cha ulaghai cha kernel kutoka mwanzo kwa kutumia NumPy. Kila mbinu imetekelezwa kikamilifu bila njia za mkato au vipaji. Kizuizi kamili cha utekelezaji kimejumuishwa na kimethibitishwa kufanya kazi bila makosa.
Inapotekelezwa, msimbo huu huzalisha uainishaji sahihi wa ulaghai na alama za hatari zinazoweza kutafsiriwa kati ya 0 na 1 kwa kila muamala katika seti ya jaribio. Miamala ya ulaghai hupata alama kubwa za hatari karibu na 1.0. Miamala halisi hupata alama ndogo za hatari karibu na 0.0.
Sehemu ya 5: Mpango wa Machine Learning wa Uzalishaji
Wakati msimbo huu wa uzalishaji unatekelezwa, miwili ya mifano ya kernel ya RBF na polynomial hufikia usahihi wa 100% kwenye seti ya jaribio. Mfano wa RBF hutambua vekta tisa za msaada na hutoa uwezekano wa ulaghai wa 0.9647 kwa miamala ya ulaghai iliyothibitishwa. Mfano wa polynomial unahitaji vekta mbili tu za msaada kufikia matokeo sawa, ikionyesha nguvu ya kernel iliyochaguliwa vizuri.
Kuhamia kutoka toleo lililojengwa kutoka mwanzo hadi toleo la uzalishaji kuna tofauti kadhaa muhimu. Kwanza, utekelezaji wa SVM wa scikit-learn hutumia kutatua programu ya quadratic iliyoboreshwa sana, haswa algorithm ya sequential minimal optimization, inayofikia mamilioni ya mifano ya mafunzo wakati utekelezaji wetu wa mkono ungekuwa usio na vitendo kwa hesabu baada ya maelfu machache. Pili, ucalibration wa uwezekano kwa kutumia Platt scaling hubadilisha alama ghafi za uamuzi kuwa uwezekano uliohesabiwa vizuri ambao unaweza kutumika kuendesha sheria za biashara za ngazi kama kutuma alama zaidi ya 0.5 kwa ukaguzi wa mkono na kuzuia alama zaidi ya 0.9 moja kwa moja. Tatu, kigezo class_weight='balanced' hulipia kiotomatiki kutokulingana kwa asili katika seti za data za ulaghai ambapo miamala halisi huzidi miamala ya ulaghai kwa kiasi kikubwa, kuhakikisha mfano haujajifunza tu kuita kila kitu halisi ili kufikia usahihi wa juu.
Katika mazingira halisi ya uzalishaji ya Amazon, usanifu huenea hata zaidi. Mifano hufunzwa upya kila mara kadri mifumo mipya ya ulaghai inavyojitokeza. Sifa hutajirishwa kwa ishara za msingi wa grafu kama vile ikiwa akaunti imeunganishwa na mitandao inayojulikana ya ulaghai. Matokeo ya SVM ya kernel mara nyingi hutumika kama ishara moja kati ya nyingi ndani ya mfano mkubwa wa ensemble, ukichangia uwezo wake wa kipekee wa kuchora mipaka isiyo ya mstari kwa njia ambazo mifano ya msingi wa miti haiwezi kufanana.
Ufahamu wa Kimkakati
Kwa wataalamu wa AI na viongozi wa biashara, somo kutoka makala haya ni zaidi ya kugundua ulaghai. Mbinu za kernel hufunua ukweli mpana kuhusu mifumo ya akili: nafasi ya pembejeo ghafi mara chache ndipo jibu linaloishi. Data ya ulimwengu wa kweli imechanganyikiwa, inashindana, na imejaa mahusiano yasiyo ya mstari ambayo mawazo ya mstari hayawezi kuyatatua. Nguvu ya hila ya kernel ni kwamba inakuwezesha kufikiria katika nafasi ya kihisabati yenye utajiri zaidi bila gharama ya hesabu ya kwenda huko kweli. Kanuni hiyo hiyo, kubadilisha tatizo gumu kuwa moja ambapo jibu linaonekana, hutumika kwa mifumo ya mapendekezo, upigaji alama wa hatari, matengenezo ya kutabiri, uchunguzi wa afya, na kila tatizo kubwa la machine learning la kiwango cha biashara. Viongozi wa biashara wanaoelewa hili watauliza timu zao za sayansi ya data maswali bora. Wahandisi wanaoelewa hili watajenga mifumo inayofanya kazi kweli wakati data inapokataa kuwa safi na rahisi.
Kugundua ulaghai kwa Amazon si uchawi. Ni hisabati inayofanya kazi bila kuonekana kwa kasi kubwa, na sasa unaelewa hasa jinsi gani.
#MachineLearning #ArtificialIntelligence #DataScience #Mathematics #Amazon #FraudDetection #KernelMethods #SVM #RBFKernel #PolynomialKernel #TheMagicOfHiddenMathematics #AIEngineering #MLEngineering #Python #SVMClassification #EnterpriseAI #AIStrategy #DeepLearning #NeuralNetworks #TechLeadership
Asili imechapishwa kwenye LinkedIn na Keshavan Thiagaraja. Soma asili kwenye LinkedIn. [1]
