摩根大通首席軟體工程師Karthik Devarapalli秀出即時詐欺偵測平臺元件圖,他指出,正因為他們將偵測任務拆分成多個元件,才可能按需求快速擴展,而且能在幾毫秒內處理高吞吐量。

圖片來源: 

螢幕截圖

百年金融集團摩根大通(JPMorgen Chase)是全球最大金融機構之一,每秒處理數萬筆交易、每日交易金額超過10兆美元。這麼龐大的交易量,他們如何知道每一筆交易是不是詐欺?Karthik Devarapalli是摩根大通首席軟體工程師,他和同事Jimit Raithatha在去年12月一場會議中,揭露摩根大通支付服務團隊如何設計雲端金融詐欺即時偵測平臺,來快速判斷每筆交易的詐欺風險。

金融詐欺越趨嚴峻,摩根大通用6大原則自建AI/ML詐欺偵測平臺

Devarapalli首先指出,隨著科技發展,金融詐欺越來越嚴重。美國財務專業人士協會(AFP)調查顯示,光是2023年一年,就有80%的金融機構遭遇支付詐欺,比起2022年增加非常多。

摩根大通這個老牌大型金融企業,應對金融詐欺也有不少經驗。他們將自己的因應策略和技術,包裝成服務,在摩根大通支付服務團隊旗下提供「信任與安全」解決方案,裡面有用來驗證帳戶、業務和文件的驗證服務,還有帳戶風險評估服務、支付控制中心服務,以及AI/ML驅動的即時詐欺偵測平臺。

這個即時詐欺偵測平臺,正是Devarapalli討論的重點。該平臺靠內部規則、機器學習模型評分、異常偵測和例外清單來判斷每筆支付的詐欺風險,但光有這些還不夠,要能在摩根大通全球據點即時偵測,還要滿足6大需求:

  1. 將各種支付交易即時傳送到平臺,才能驗證詐欺風險
  2. 分析支付資料,透過機器學習分數、異常偵測和例外確認等,來判斷潛在詐欺行為
  3. 自動擴展來處理大量支付數據,尤其是節日、周末連假或月底等大量消費期間
  4. 具備低延遲、高可用和韌性
  5. 要能離線分析
  6. 即時上線新功能;系統要有個介面,來即時導入新規則或更新功能,才能快速應對主動詐欺行為

其中第5點的離線分析很重要,因為這樣才能主動發現新詐欺趨勢。Devarapalli點出,就算是已知的詐欺行為,從業人員也能透過離線分析來調查、找出預防對策。

接著,摩根大通根據這6大需求,建立詐欺偵測平臺。他們先畫了張平臺元件圖(如下圖),按照需求列出不同元件,比如將支付資料送進平臺的請求擷取元件、請求優先排序元件(圖左),來進行資料驗證或清理。

接著納入嵌入向量和訊號(Embeddings & signals)元件、廠商資料擴充元件(Vendor enrichment)。這個廠商資料擴充元件也很重要,因為要偵測詐欺交易,不只仰賴規則,還需要其他補充資料來補強。而摩根大通的廠商資料擴充元件,就包含豐富的合作廠商資料,以及摩根大通自己的銀行參考資料,來強化偵測能力。

其他元件還有特徵儲存(Feature Store),專門用來轉換資料、計算聚合資料。Devarapalli解釋,這裡的特徵分為兩種,一是歷史特徵,比如使用者的長期交易概況(如上個月的交易總量、金額、時間、地點等),另一種是即時特徵,也就是直到前幾分鐘、甚至幾秒鐘的使用行為。

再來是決策服務(Decision service),也就是以規則來偵測詐欺,另外還有推論服務(Inference service),以機器學習模型來計算詐欺風險分數。此外還有個介面層,系統可以API來呼叫模型或管理模組。

最後則是執行程式(Action handler),能根據前述的分析結果和規則,執行相對應的處置。

Devarapalli說,正因為摩根大通將任務拆分成多個元件,所以可依需求快速擴展。「最重要的是能處理高吞吐量,而且在幾毫秒內處理。」這是摩根大通即時處理每秒上萬筆交易的先決條件。

即時詐欺偵測平臺如何運作

有了元件組成,接下來就是平臺架構(如下圖)。首先,當摩根大通支付處理系統(圖左上)接收支付交易時,會發送請求給詐欺偵測平臺,來判斷這筆交易是不是詐欺。

接著,請求送到偵測引擎。這個引擎包含一系列偵測詐欺的微服務,也有專門處理請求的閘道微服務,能用來接受請求、驗證資料,必要時還會清理資料,是請求必經的第一個微服務。

在偵測引擎根據規則處理請求前,還有個檢索資料的步驟,也就是呼叫API來搜尋資料集,像是廠商擴充資料、特徵,或是判斷詐欺的規則等等。之後,平臺會再呼叫API來進行規則式判斷和模型評分,綜合評估這筆支付是不是詐欺,最後由執行程序進行相對應的處置。通常,這個詐欺偵測平臺可以終止任何高風險交易。

這個偵測引擎所使用的資料,都儲存在不同資料庫,比如他們將規則的Metadata儲存在Amazon Aurora,將擴充資料、特徵資料和例外清單等放在DynamoDB,至於交易資料則都儲存在Amazon S3中。

Devarapalli還點出一個很重要的規則驗證UI(圖左下),有了它,摩根大通可以即時更新或新增規則,不必等待幾個小時甚至好幾天。

即時詐欺偵測平臺如何又快又省錢

「詐欺偵測平臺每秒接收3、400個請求,每天要處理上千萬個請求!」Raithatha指出,要處理的請求如此大量,每往平臺加一層(如網路層),就會讓處理時間多個幾毫秒。為避免這個狀況,摩根大通用了些優化方法,來減少平臺的IT層數和延遲時間。

首先是使用AWS負載平衡控制器。Raithatha說明,他們用Amazon EKS來管理詐欺偵測平臺,通常,在EKS實作中,會有應用程式負載平衡器和在EKS叢集執行的服務,這兩者間還有個反向代理層,來將負載平衡器的流量分配到EKS Pod。不過,摩根大通選用開源的AWS負載平衡控制器,可直接跳過反向代理層,直接將EKS Pod連到特定的負載平衡器,省下幾毫秒。

再來,摩根大通也用VPC端點服務來存取雲端資源。在一次跨區域測試中,他們用VPC端點來存取DynamoDB資料庫資源,發現跨區域查詢效能提高了86%。另一個優化方法則是使用DynamoDB資料表,來作為大量資料尋找(lookup)使用。

不只這3種加速方法,摩根大通還有套成本優化方法,來確保詐欺偵測平臺又快又省錢(如下圖)。在切入主題前,Raithatha先強調:「成本優化是打造平臺第一天就要做的事,你不能建好一個平臺,再回頭去降低成本。」尤其,當平臺處理高流量業務,要再降低成本是一件很困難的事。也因此,摩根大通在進行每個設計決策前,都會預留頻寬給成本分析。

第一個省錢方法是隨需使用,也就是說,開發者可根據需求架設環境,但這個環境不會24小時運作。所以,摩根大通每晚固定時間將LAMBDA函式和工作流程送入AWS帳號,然後關閉所有EKS環境,包含所有使用EC2執行個體的工作。隔天,這些環境不會自動啟用,而是由需要的開發者手動開啟。

Raithatha以效能環境為例,團隊需要在這個環境中進行負載測試,但這個測試只會執行幾天,之後幾周便閒置了。所以,每天晚上關閉所有環境可以減少資源浪費。

第二個省錢方法是將成本視為非功能性需求(NFR),摩根大通在每次的系統設計討論中,都會納入成本優化的討論。

第三個方法是降低使用率不高的資源。Raithatha指出,摩根大通設置了可觀察性指標和警示功能,來檢視伺服器和資料庫的CPU、記憶體使用率趨勢。如果有執行個體未充分使用,團隊就會減少規模或資料庫的容量。

最後一個方法是設置省錢冠軍,這是摩根大通從先前科技年會中學習到的方法,也就是鼓勵不斷提出新方法來降低成本的個人或團隊,來打造更透明的可觀察性指標,更好地監測資源使用。

熱門新聞

Advertisement