郁磊
【摘 要】由于POS機刷卡量持續(xù)增長,尋找一種能減少銀行卡盜刷現(xiàn)象的有效手段迫在眉睫。提出一種基于改進的AGNES算法的POS機位置自學(xué)習(xí)方法,并利用運營商移動網(wǎng)絡(luò)現(xiàn)有位置服務(wù),可向銀行信用卡中心提供實時的持卡人手機位置和刷卡位置的一致性查詢服務(wù),模擬驗證實驗結(jié)果表明,該方法對于判斷POS刷卡是否正常具有一定參考作用。
【關(guān)鍵詞】AGNES 位置自學(xué)習(xí)方法 POS機
中圖分類號:TP391 文獻標(biāo)志碼:A 文章編號:1006-1010(2017)19-0051-04
POS Terminal Position Self-Learning Method Based on Improved AGNES Algorithm
YU Lei
[Abstract] Since the amount of swiping the card on POS (Point of Sale) terminal increases continually, to find an effective way to reduce the identity theft on credit card is extremely urgent. A POS terminal position self-learning method based on improved AGNES algorithm was proposed in this paper. According to existing location service of operators mobile network, the real-time consistent inquiry service of the mobile phone position of the card holder and position of swiping the card can be provided to the bank credit card center. Simulation and experiment results show that the proposed method can provide the useful reference to judge the normal or abnormal swiping card.
[Key words]Agglomeration Nesting position self-learning method POS terminal
1 引言
POS機刷卡模式打破了傳統(tǒng)的金融支付方式,更加的靈巧、便捷,支持用戶(消費者或商家)在3G、4G或Wi-Fi網(wǎng)絡(luò)狀態(tài)下,通過應(yīng)用程序匹配進行刷卡消費,并保存相應(yīng)消費信息,降低了刷卡支付的技術(shù)門檻和硬件需求[1]。因此,POS機刷卡量呈持續(xù)增長的趨勢,與此同時伴隨而來的POS機盜刷現(xiàn)象也日趨嚴(yán)重。
為了解決這一問題,本文提出一種基于改進AGNES算法的POS機位置自學(xué)習(xí)方法,可實現(xiàn)在運營商移動網(wǎng)絡(luò)現(xiàn)有位置服務(wù)基礎(chǔ)上,向銀行信用卡中心提供實時的持卡人手機位置和刷卡位置的一致性查詢服務(wù),減少銀行卡盜刷現(xiàn)象的發(fā)生。
2 基于改進AGNES算法的POS機位置自
學(xué)習(xí)方法
2.1 AGNES算法簡介
AGNES(Agglomeration Nesting,凝聚的層次聚類)算法[2],數(shù)據(jù)集的劃分采用“自底向上”的聚合策略。先將數(shù)據(jù)集中的每個樣本看作一個初始聚類簇,然后在算法運行的每一步中找出距離最近的兩個聚類簇進行合并,該過程不斷重復(fù),直到達到預(yù)設(shè)的聚類簇個數(shù)K。算法性能:
(1)簡單,但有時會遇到合并點選擇困難的情況;
(2)一旦一組對象被合并,不能撤銷;
(3)算法的復(fù)雜度為O(n2)。
2.2 提出一種改進的AGNES算法
傳統(tǒng)AGNES算法必須事先指定聚類簇個數(shù),即K值固定,而移動端POS機發(fā)生交易的位置一般會聚集在一片或幾片區(qū)域,具體的區(qū)域數(shù)量事先不確定,也就是簇的個數(shù)K不能確定[3]。本文采用改進的AGNES算法獲得聚集區(qū)域,給定約束條件使算法可以自行計算出最終所需的K值。
改進后的AGNES算法不斷將距離最近的兩個聚類簇進行合并,直至同一簇內(nèi)距離最遠的兩個點的距離d>ε(ε為自定義的距離門限)。
算法采用的距離度量為歐氏距離。兩個樣本a(xa1, xa2, …, xan)和b(xb1, xb2, …, xbn)間的歐式距離為:
顯然,最小距離由兩個簇的最近樣本決定,最大距離由兩個簇的最遠樣本決定,平均距離由兩個簇的所有樣本共同決定。
改進的AGNES算法描述:
輸入:包含m個樣本的數(shù)據(jù)庫,聚類簇距離度量函數(shù)d;
輸出:K個簇;
(1)將每個樣本當(dāng)成一個初始簇;
(2)根據(jù)相似度計算找出最接近的兩個簇;
(3)合并兩個簇,生成新的簇;
(4)重復(fù)上述(2)和(3)過程;
(5)直到簇的直徑超過指定閾值;
其中,簇的直徑指該簇中的任意兩個點的歐氏距離的最大值。
該方法相比于傳統(tǒng)的AGNES算法,不必事先指定K值,符合防盜刷場景的需求。由于移動POS機的位置可能存在多個也可能只存在一個,日常的POS機位置還可能隨著業(yè)務(wù)的變化改變,POS機的位置存在不確定性,不能依靠人工事先指定,因此需要事先指定K值的傳統(tǒng)AGNES算法不適合應(yīng)用在該場景中。為了解決K值不能確定的問題,將改進算法的終止條件設(shè)定為:簇的大小滿足一定程度則認(rèn)為形成一個POS機位置。這樣POS機的位置可以根據(jù)以往的正常交易數(shù)據(jù)進行不斷更新,K值不能設(shè)定的問題得到了解決,算法符合場景需求。endprint
2.3 POS機位置自學(xué)習(xí)方法
實時POS機的位置是由交易時刷卡人的手機位置得到[4]。初始時,將POS機一段時間內(nèi)的正常交易數(shù)據(jù)作為樣本集處理后輸入到算法內(nèi),得到POS的位置(可能有一個也可能有多個);之后將交易發(fā)生時持卡人手機實時位置和POS機位置進行一致性查詢服務(wù);若查詢一致則認(rèn)為交易正常,否則認(rèn)為交易不確定或交易異常,具體流程如圖1所示:
(1)一段時間內(nèi)正常刷卡行為發(fā)生時的地理位置被稱作歷史交易地點。將POS機一段時間內(nèi)的正常交易數(shù)據(jù)作為樣本集進行模型搭建。
(2)POS機位置自學(xué)習(xí)算法包括以下兩部分:
1)改進的AGNES算法
由于有時交易發(fā)生的位置不止聚集成一個區(qū)域,這就造成了一個質(zhì)心無法反映實際情況的問題,從而影響位置一致性判斷的準(zhǔn)確性。改進的AGNES算法將樣本集中的樣本劃分成若干個通常是不相交的子集(簇),得到某一POS機日常交易位置的大致范圍,以便之后用于新交易位置的判斷。
2)離散點的去除
當(dāng)少數(shù)交易的地點嚴(yán)重偏離大多數(shù)交易的聚集地時,計算出來的中心點可能會嚴(yán)重偏離大多數(shù)交易的實際聚集區(qū)域。為了排除這些離散點的干擾,設(shè)置閾值λ,如果一個簇中樣本個數(shù)NUM<λ,則判斷為離散點,予以去除。
(3)將同一個POS機的一組歷史交易地點的質(zhì)心位置稱作POS機的中心點位置,中心點位置可以基于歷史交易位置計算獲得。
給定包含m個樣本(歷史交易地點)的樣本集D={x1, x2, …, xm},改進的AGNES算法針對聚類所得簇劃分為K個簇C={C1, C2, …, CK}。其中每個簇的質(zhì)心為:
(4)如果新的交易位置不在形成的簇中,需要考慮此時交易位置與活點的距離?;铧c是指當(dāng)POS機的位置可能由于某種原因移動時,交易位置可能隨著移動軌跡而離開POS機經(jīng)常發(fā)生交易的位置區(qū)域。此時將上筆正常交易的刷卡手機位置設(shè)置為活點,比較此時當(dāng)前交易位置與該POS機上筆正常刷卡位置的距離是否在設(shè)定的閾值η內(nèi)。若d≤η,則認(rèn)為交易正常;否則,啟動告警環(huán)節(jié),進入手機驗證碼發(fā)送流程以保證交易安全。
(5)通過上述流程可以判斷移動POS機交易是否正常,除此之外,當(dāng)由于刷卡人手機故障、天氣環(huán)境等原因無法獲取刷卡人手機位置時,判斷交易安全性不確定,進入告警階段,此時可進入手機驗證碼發(fā)送流程以保證交易安全。
某些POS機的位置是固定的,例如臺式POS機,這類POS機的位置可以由銀行提供。而上述的POS機位置自學(xué)習(xí)方法的應(yīng)用領(lǐng)域主要針對的是如保險、快遞、送餐等需要上門刷卡或現(xiàn)場打印發(fā)票的行業(yè),這些行業(yè)使用較多的是移動POS機。對這些位置不固定的移動POS機,銀行也難以提供其精確位置。考慮在正常情況下,POS機與持卡人在交易發(fā)生時是在同一位置,通過分析歷史刷卡交易記錄可以推算出POS機在正常情況下應(yīng)處于什么位置,然后再與實時交易發(fā)生地點進行比較從而判斷交易是否正常。
2.4 POS機位置自學(xué)習(xí)方法的技術(shù)優(yōu)勢
本文采用的POS機位置自學(xué)習(xí)方法可應(yīng)用于銀行卡防盜刷系統(tǒng),相比于傳統(tǒng)的POS機位置獲取技術(shù),主要有以下優(yōu)勢:
(1)改進的AGNES算法可以有效獲取POS機的日常交易位置,在這個過程中不再需要人工經(jīng)驗設(shè)定K值,適用于日常移動POS機刷卡過程中位置經(jīng)常改變并且不能確定的情況。
(2)當(dāng)少數(shù)交易的位置嚴(yán)重偏離大多數(shù)交易的聚集地時,將這些離散點進行去除。這樣可以提高獲取位置的準(zhǔn)確率,減少干擾。
(3)設(shè)置了活點。解決當(dāng)POS機的位置由于某種原因移動時,交易位置可能隨著移動軌跡不在POS機經(jīng)常發(fā)生交易的位置區(qū)域這個問題,提高了位置一致性判斷的準(zhǔn)確率。
3 將基于改進AGNES算法的POS機位置
自學(xué)習(xí)方法應(yīng)用于銀行卡防盜刷系統(tǒng)
建議銀行卡防盜刷系統(tǒng)的業(yè)務(wù)流程如圖2所示。
銀行卡防盜刷系統(tǒng)工作機制如下:
(1)從銀行獲取POS機交易信息和銀行卡持卡用戶手機號碼,并向銀行發(fā)送位置一致性比對結(jié)果;
(2)通過人工智能算法建立POS機物理地理位置信息庫,并實時比對持卡用戶當(dāng)前手機位置和POS機交易地理位置;
(3)對平臺各種數(shù)據(jù)和參數(shù)進行配置、管理、查詢等。
對POS機與持卡人位置是否一致的判斷主要基于對新發(fā)生的交易位置與中心點位置之間的距離的對此,或者基于與上一次有效交易的距離是否在分別設(shè)定的閾值內(nèi)的判斷。如果一致則認(rèn)為交易合法,不一致則認(rèn)為交易不合法。當(dāng)交易判斷為不合法時,應(yīng)強制進入手機驗證碼流程以保證交易安全。
以下是如何利用基于改進AGNES算法進行POS機位置自學(xué)習(xí)的一個實例。
本文方法采用Java編程實現(xiàn),系統(tǒng)采用的服務(wù)器配置為:CPU 48 core,硬盤1 T,內(nèi)存256 G,操作系統(tǒng)為Centos6.5(64位)。測試數(shù)據(jù)來自編號為POS_HRGC的POS機相關(guān)的交易數(shù)據(jù)(程序模擬產(chǎn)生)。表1為編號為POS_HRGC的POS機30天內(nèi)的歷史交易記錄(程序模擬產(chǎn)生,表中為部分?jǐn)?shù)據(jù))。
將POS_HRGC的歷史交易記錄輸入到改進的AGNES算法中,可以得到該POS機的質(zhì)心位置:(113.456941, 23.100975)。根據(jù)算法得到的質(zhì)心位置可以與新的交易位置進行位置一致性判斷,以確認(rèn)是否為正常交易。設(shè)置的閾值ε=300 m,η=3 000 m。選取3 000條新的交易記錄進行判斷,得到位置一致性的判斷結(jié)果,如表2所示(部分?jǐn)?shù)據(jù))。
POS機自學(xué)習(xí)方法的效果是依據(jù)對交易結(jié)果判斷的準(zhǔn)確率來確定的,對準(zhǔn)確率的定義[6]如下:
3 000條交易記錄中,判斷正確的交易數(shù)為2 174條,準(zhǔn)確率為72.47%。說明利用改進的AGNES算法進行POS機位置自學(xué)習(xí)的方法在銀行卡防盜刷中的實際應(yīng)用效果良好,可以在一定程度上保證用戶財產(chǎn)安全,提升用戶對銀行的信任度,降低資金風(fēng)險。endprint
4 結(jié)束語
本文提出一種基于改進的AGNES算法的POS機位置自學(xué)習(xí)方法,在運營商移動網(wǎng)絡(luò)現(xiàn)有位置服務(wù)基礎(chǔ)上,可向銀行信用卡中心提供實時的持卡人手機位置和刷卡位置的一致性查詢服務(wù),旨在減少銀行卡盜刷現(xiàn)象的產(chǎn)生,模擬驗證實驗結(jié)果表明該方法的準(zhǔn)確性較好。
參考文獻:
[1] 郭亞文. 國外POS機發(fā)展動向[C]//首屆中國POS及商業(yè)自動化行業(yè)大會論文集. 2008: 28-34.
[2] 李娜,鐘誠. 基于劃分和凝聚層次聚類的無監(jiān)督異常檢測[J]. 計算機工程, 2008,34(2): 120-123.
[3] 沈潔,趙雷,楊季文,等. 一種基于劃分的層次聚類算法[J]. 計算機工程與應(yīng)用, 2007,43(31): 175-177.
[4] 顏曉鵬,鐘漢如. 基于霍爾位置傳感器的BLDCM控制系統(tǒng)的位置自學(xué)習(xí)[J]. 微特電機, 2015,43(2): 54-57.
[5] 曹偉. 移動收銀POS機系統(tǒng)前置機設(shè)計與實現(xiàn)[D]. 上海: 上海交通大學(xué), 2012.
[6] 孫吉貴,劉杰,趙連宇. 聚類算法研究[J]. 軟件學(xué)報, 2008,19(1): 48-61.
[7] 王勇,劉建平,蔡長霞. 一種改進的K-means聚類算法[J]. 工業(yè)控制計算機, 2010,23(8): 91-93.
[8] 王雪玉. 銀行卡防盜刷的幾點建議[J]. 金融科技時代, 2013(10): 30-31.
[9] 雷小鋒,謝昆青,林帆,等. 一種基于K-Means局部最優(yōu)性的高效聚類算法[J]. 軟件學(xué)報, 2008,19(7): 1683-1692.
[10] 周愛武,于亞飛. K-Means聚類算法的研究[J]. 計算機技術(shù)與發(fā)展, 2011,21(2): 62-65.
[11] 陸偉偉,劉解放,霍堯,等. 基于模糊聚類的用電客戶交費渠道偏好研究[J]. 計算機工程與應(yīng)用, 2016,52(19): 252-258.
[12] 邢長征,張園. 基于密度與網(wǎng)格的聚類算法的改進[J]. 計算機工程與應(yīng)用, 2016,52(22): 81-85.
[13] 歐慧,夏卓群,武志偉. 基于改進流形距離的粗糙集k-means聚類算法[J]. 計算機工程與應(yīng)用, 2016,52(14): 84-89.
[14] 萬靜,孫永倩,董懷國,等. 空間聚類與方向關(guān)系的融合技術(shù)研究[J]. 計算機工程與應(yīng)用, 2016,52(9): 56-61.endprint