傳遞信息,分享正能量
在這里找尋
每一個(gè)發(fā)展歷程的足跡
了解從這里開始
瀏覽【26615】 2021-09-14 17:51:52
引言
隨著信息技術(shù)的迅猛發(fā)展及企業(yè)數(shù)字化轉(zhuǎn)型,快速積累了大量的數(shù)據(jù),其中關(guān)系類數(shù)據(jù)如社交數(shù)據(jù)、電商數(shù)據(jù)等呈指數(shù)級(jí)增長(zhǎng)。圖結(jié)構(gòu)數(shù)據(jù)在各個(gè)場(chǎng)景中也得到越來(lái)越多的應(yīng)用,包括社交網(wǎng)絡(luò)、推薦搜索、知識(shí)圖譜、醫(yī)藥研發(fā)、量子物理等。在探索這些“關(guān)系數(shù)據(jù)”過程中,其相對(duì)基于傳統(tǒng)結(jié)構(gòu)化數(shù)據(jù)的方法顯現(xiàn)出了巨大優(yōu)勢(shì),圖數(shù)據(jù)存儲(chǔ)及圖算法等也得到了迅猛的發(fā)展。
圖結(jié)構(gòu)數(shù)據(jù)的火熱應(yīng)用快速擴(kuò)展到各個(gè)領(lǐng)域,其中金融領(lǐng)域?yàn)檫M(jìn)一步增強(qiáng)智能風(fēng)控管理能力,更好地支撐信貸等業(yè)務(wù)的發(fā)展,也陸續(xù)開展基于圖數(shù)據(jù)的模型建設(shè)研究。
目前,常規(guī)的基于結(jié)構(gòu)化數(shù)據(jù)的分析方法首先對(duì)數(shù)據(jù)進(jìn)行特征分析,構(gòu)建特征工程,然后選取指標(biāo)搭建相應(yīng)的分類模型。這種方法沒有考慮數(shù)據(jù)之間的關(guān)聯(lián)性,如“同地址”、“同電話”的客戶相互影響很大,而把這種“相互影響”考慮進(jìn)行建模過程,對(duì)模型性能提升會(huì)有較大影響。
同時(shí),銀行現(xiàn)有的圖譜數(shù)據(jù)通常是非常直接的關(guān)聯(lián)。如兩個(gè)人之間是夫妻關(guān)系,這對(duì)于基礎(chǔ)的連通圖、社區(qū)發(fā)現(xiàn)等依賴于構(gòu)圖的圖算法有較大影響。需要我們?nèi)ヘS富構(gòu)圖的方法,建立節(jié)點(diǎn)與節(jié)點(diǎn)之間的隱性關(guān)聯(lián)。
為了充分利用現(xiàn)有結(jié)構(gòu)化屬性數(shù)據(jù)及圖譜數(shù)據(jù),在構(gòu)建圖計(jì)算平臺(tái)時(shí),既加入了傳統(tǒng)的出入度、簇系數(shù)、介數(shù)等中心性指標(biāo),也做圖的表征學(xué)習(xí),考慮節(jié)點(diǎn)和邊關(guān)系的屬性信息,以進(jìn)行更好的信息融合。
一、整體架構(gòu)
圖計(jì)算平臺(tái)整體架構(gòu)最底層為執(zhí)行框架層,具體采用Spark框架來(lái)實(shí)現(xiàn),支撐算法層中各操作,并將獲取到的特征(包含節(jié)點(diǎn)屬性和邊關(guān)系屬性)輸入到Euler/TensorFlowOnSpark中構(gòu)建具體的分類模型。
算子層是圖計(jì)算常用的操作,包括鄰居采樣、隨機(jī)游走、消息傳播、最短路徑等。
算子之上是圖算法層。由于現(xiàn)有圖數(shù)據(jù)為很大的異構(gòu)圖,需要通過同構(gòu)圖抽取、louvain分割算法等進(jìn)行子圖構(gòu)建,且由于業(yè)務(wù)規(guī)則,抽取的圖為有向圖。這部分需要對(duì)現(xiàn)有的算法進(jìn)行改造,以支撐該場(chǎng)景。同時(shí)會(huì)對(duì)抽取的子圖提取節(jié)點(diǎn)度、簇系數(shù)、介數(shù)等統(tǒng)計(jì)指標(biāo)。嵌入表示方面,有基于拓?fù)浣Y(jié)構(gòu)的Node2Vec/Struct2vec及基于采樣的LINE/GraphSage等算法。
圖平臺(tái)應(yīng)用主要是風(fēng)控,常見的應(yīng)用場(chǎng)景有欺詐檢測(cè)、信用貸款、潛客發(fā)現(xiàn)等。
二、算法改造
由于業(yè)務(wù)的特殊性,圖數(shù)據(jù)間關(guān)系均為有向連接,且?guī)в袡?quán)重,就需要我們基于Spark實(shí)現(xiàn)對(duì)應(yīng)的算法,包括有向最短路徑、二度/三度同構(gòu)圖、有向連通圖、有向Louvain算法、有向LPA算法和有向Node2Vec算法。
以Louvain分割算法為例,簡(jiǎn)述算法的改造過程。
Louvain算法是基于模塊度的圖分割算法,能夠發(fā)現(xiàn)層次性的社區(qū)結(jié)構(gòu),其優(yōu)化目標(biāo)為最大化整個(gè)子圖的模塊度,其改造難點(diǎn)在于模塊度的改造及并行化實(shí)現(xiàn)。
模塊度是評(píng)估一個(gè)圖劃分好壞的度量方法,它的物理含義是子圖內(nèi)節(jié)點(diǎn)的連邊數(shù)與隨機(jī)情況下的邊數(shù)之差,其定義如下:
其中,Aij表示節(jié)點(diǎn)i和節(jié)點(diǎn)j之間的權(quán)重,當(dāng)網(wǎng)絡(luò)不帶權(quán)重時(shí),可看做為1;Ki=∑jAij表示所有與節(jié)點(diǎn)i相連的邊的權(quán)重之和(度數(shù));Ci表示節(jié)點(diǎn)i所屬的子圖;m=0.5*∑ijAij表示所有邊的權(quán)重之和(邊的數(shù)目)?!苅n表示子圖c內(nèi)的邊的權(quán)重之和,∑tot表示與子圖c內(nèi)的節(jié)點(diǎn)相連的邊的權(quán)重之和?;谀K度的社區(qū)發(fā)現(xiàn)算法,都是以最大化模塊度為Q目標(biāo)。
對(duì)于有向模塊度,具體參考《Directed Louvain : maximizing modularity in directed network》?;舅枷霝椋喝绻麅蓚€(gè)頂點(diǎn)u和v,u具有小的進(jìn)度、大的出度,v有小的出度、大的進(jìn)度,則存在從u到v的連接概率應(yīng)大于從v連向u的概率??啥x出有向圖的(Leich and Newman)模塊度為:
其中Aij表示存在i到j(luò)的邊,diin,djout分別表示入度和出度。進(jìn)而模塊度的變化量可寫為:
其中,∑totin(resp.∑totout)表示連接子圖C的入度(出度)。
由于原始算法是逐個(gè)選擇節(jié)點(diǎn),重新計(jì)算它的子圖,不斷進(jìn)行迭代。這種串行化的計(jì)算方式,對(duì)分布式計(jì)算框架非常不友好。因?yàn)樵谶x擇一個(gè)節(jié)點(diǎn)進(jìn)行計(jì)算時(shí),其它的節(jié)點(diǎn)是不能進(jìn)行變化的。
這種方式不能進(jìn)行并行化計(jì)算,也不能充分利用分布式框架的高并發(fā)、集群計(jì)算優(yōu)勢(shì)。
為了使算法能夠運(yùn)行在集群環(huán)境上,需要對(duì)算法進(jìn)行并行化改造。如在每輪迭代中同步更新多個(gè)節(jié)點(diǎn)的信息,即根據(jù)t-1輪中鄰居節(jié)點(diǎn)的信息來(lái)更新t輪中節(jié)點(diǎn)的信息。但這樣會(huì)造成“消息滯后”,造成“子圖互換”問題。因此,需要進(jìn)行后處理?;谒惴ńY(jié)果,求解連通區(qū)域,將同一個(gè)連通區(qū)域的點(diǎn)都?xì)w為一個(gè)子圖。
三、建模流程
基于圖計(jì)算平臺(tái)的數(shù)據(jù)建模流程大致可分為以下四個(gè)步驟:
1、圖構(gòu)建:結(jié)合圖計(jì)算平臺(tái)能力,實(shí)現(xiàn)同構(gòu)子圖的獲取。首先結(jié)合分布式切片策略將數(shù)據(jù)加載到Spark中,然后借助Spark實(shí)現(xiàn)屬性數(shù)據(jù)的清洗。如缺失值填充、孤立點(diǎn)處理等。然后結(jié)合消息傳播實(shí)現(xiàn)一度、二度、三度同構(gòu)圖的獲取,并采用Louvain分割算法、LPA算法、連通分析算法得到最終的同構(gòu)子圖。
2、圖特征:結(jié)合圖計(jì)算平臺(tái)能力,獲取各節(jié)點(diǎn)特征表示。特征包含基于節(jié)點(diǎn)度、中心性等的統(tǒng)計(jì)特征,還包括基于Node2Vec、LINE、GraphSage的嵌入表示特征,并將兩者進(jìn)行拼接,同時(shí)對(duì)于同一節(jié)點(diǎn)在不同子圖中的特征,也進(jìn)行拼接,進(jìn)而獲得節(jié)點(diǎn)的最終特征表示。
3、圖模型:結(jié)合具體的業(yè)務(wù)場(chǎng)景,構(gòu)建圖模型。具體可借助Euler建模平臺(tái),構(gòu)建GCN等圖分類模型,也可借助TensorFlowOnSpark框架,實(shí)現(xiàn)基于TensorFlow和Spark的分布式深度學(xué)習(xí)模型構(gòu)建。
4、新圖關(guān)聯(lián):對(duì)于新增客戶,所構(gòu)成的異構(gòu)子圖。根據(jù)其屬性相關(guān)性(相似或相同),和已有的異構(gòu)圖數(shù)據(jù)進(jìn)行關(guān)聯(lián),然后進(jìn)行后續(xù)處理,處理流程同1、2、3步。
四、場(chǎng)景示例
以“潛客發(fā)現(xiàn)”場(chǎng)景為例,通過對(duì)用戶的歷史數(shù)據(jù)進(jìn)行分析,提取不同維度的信息,對(duì)客戶意愿進(jìn)行預(yù)測(cè),以達(dá)到發(fā)掘潛在客戶的目的。其關(guān)鍵在于通過模型算法挖掘出數(shù)據(jù)中所隱含的用戶行為規(guī)律。傳統(tǒng)的方法不能對(duì)用戶各行為及用戶間各關(guān)系進(jìn)行建模,通常具有較低的召回率。
故結(jié)合上述建模流程,探索圖計(jì)算在“潛客發(fā)現(xiàn)”場(chǎng)景的效果。具體數(shù)據(jù)實(shí)體(節(jié)點(diǎn))有手機(jī)號(hào)、地址、郵箱等,關(guān)系有親屬關(guān)系、交易關(guān)系等,屬性有姓名、性別、年齡等,按照上述流程對(duì)有154萬(wàn)節(jié)點(diǎn)、917萬(wàn)條邊及34個(gè)屬性的圖數(shù)據(jù)進(jìn)行處理,構(gòu)建相關(guān)特征,各算子運(yùn)行效率如下:
最終,對(duì)于具有1億節(jié)點(diǎn)、15億條表的圖數(shù)據(jù),提取特征后構(gòu)建分類模型。其效果如下圖所示:
可以看出,基于圖數(shù)據(jù)的建模方式可以獲得更高的精度和召回率,對(duì)于金融機(jī)構(gòu)在發(fā)掘潛在價(jià)值客戶的精準(zhǔn)度有較明顯的提升,從而更好的支撐“潛客發(fā)現(xiàn)”的業(yè)務(wù)開展。
借助分布式計(jì)算和圖計(jì)算,可以對(duì)大規(guī)模的圖數(shù)據(jù)進(jìn)行處理,在結(jié)構(gòu)化數(shù)據(jù)的基礎(chǔ)上融合“關(guān)系數(shù)據(jù)”,建立出性能更好的模型。在金融系統(tǒng)的欺詐檢測(cè)、信用貸款、潛客發(fā)現(xiàn)等應(yīng)用場(chǎng)景都能得到廣泛的應(yīng)用,實(shí)現(xiàn)金融企業(yè)智能風(fēng)控管理能力的有效提升。
近年來(lái),隨著人工智能、大數(shù)據(jù)等新技術(shù)的深入應(yīng)用,為金融機(jī)構(gòu)的業(yè)務(wù)開展帶來(lái)了革命性的變革。美林?jǐn)?shù)據(jù)依托領(lǐng)先的數(shù)據(jù)價(jià)值挖掘技術(shù)與能力,為銀行、保險(xiǎn)、證券、基金等金融機(jī)構(gòu)提供專業(yè)的數(shù)據(jù)治理、數(shù)據(jù)分析與挖掘等數(shù)字化技術(shù)服務(wù),助力提升金融機(jī)構(gòu)的風(fēng)控管理、市場(chǎng)營(yíng)銷等業(yè)務(wù)能力,利用金融科技助推我國(guó)金融市場(chǎng)的繁榮發(fā)展。