




摘" 要:如何聚合多維度海量數據,充分挖掘數據的內在價值,是商業銀行數字化轉型的重要目標之一。文章以銀行個人客戶支付交易數據為例,探索Textgrocery與FastText兩類自然語言處理算法對交易所屬場景的分類效果。實驗表明,Textgrocery效果在分場景和整體方面均優于FastText,故文章最終選擇Textgrocery算法對交易數據所屬場景開展自動化、智能化、高效化分類。模型場景分類結果可以幫助銀行為個人客戶建立消費行為維度的客戶標簽,從而使數據資源變得可使用、有價值。
關鍵詞:自然語言處理;海量數據智能化分類;非結構化數據處理;Textgrocery;FastText
中圖分類號:TP181 文獻標識碼:A DOI:10.19881/j.cnki.1006-3676.2023.04.10
一、引言
金融行業在運營過程中生成海量金融數據,這些數據中蘊含了交易場景等重要的客戶消費行為信息,但大部分涉及交易場景的高價值信息以文字形式存在于訂單詳情等字段中,屬于非結構化數據或半結構化數據,無法通過簡單的正則方法加工處理,信息挖掘難度大。而采用人工打標方式逐一對上億量級的交易數據進行場景分類,則存在分類標準不一、成本高、效率低等問題。如何利用人工智能賦能銀行業海量數據挖掘,提高分析效率,增加分類準確性,降低處理成本,是銀行數字化轉型中亟待解決的問題。
基于此,筆者將以脫敏后支付交易數據為對象,探索人工智能等新方法賦能海量數據挖掘和分析的方案,幫助銀行更好地洞察客戶行為,完善個人客戶畫像。[1]筆者針對海量支付交易數據場景分類問題,提出一種基于人工智能的支付交易場景分類模型,引入自然語言處理算法,對支付交易數據中訂單詳情等字段進行文本分析,并實現交易場景的自動化、智能化分類,利用人工智能算法為海量數據處理賦能。[2]相比于傳統的交易流向分析方法,研究中模型的創新點包括如下3個方面:其一,針對交易數據特點,探索非結構化及半結構化數據處理及應用方式,擴充數據挖掘覆蓋數據類型,豐富分析數據來源。其二,結合人工智能技術與銀行業現實需求,通過分析用戶交易數據,實現海量交易智能化自動分類。其三,探索自然語言處理方法與常用工具,對比基于傳統機器學習的文本分類代表算法Textgrocery和基于深度學習的文本分類代表算法FastText,從而更好地挖掘交易數據中文本信息存儲的高價值信息,豐富客戶畫像維度。
二、自然語言處理方法
人工智能是使用計算機來模擬人的各種思維或行為,再利用計算機的儲存、計算等優勢對人的智能進行擴展延伸的過程。1自然語言處理則是人工智能的一個重要分支,融合了計算機科學、語言學、邏輯學等領域知識。自然語言處理使用計算機來模擬人類對自然語言的理解與生成方式,目的是使人類可以用自然語言形式與計算機進行有效通信。[3]
常見的自然語言處理任務包括文本分類、情感分析、信息檢索、詞性標注、機器翻譯等。其中文本分類是指計算機通過算法對輸入的文本按照一定的分類標準進行自動化歸類的過程。筆者將使用交易詳情等字段分析交易場景,該字段內容長短不一,用語不規范,且文本字符數量大多小于60個字符,待解決的問題可歸類于短文本分類問題。相較于長文本,短文本詞匯個數少、描述信息弱,具有稀疏性和不規范性等特點,因此如何準確提取并表示短文本的特征,及如何選擇文本分類算法是實現短文本分類的關鍵。短文本分類主要包括兩類方法:傳統文本分類(即基于傳統機器學習的文本分類)和基于深度學習的文本分類。
(一)基于傳統機器學習的文本分類
基于傳統機器學習的文本分類通常需人工對特征進行提取,再應用各類傳統機器學習算法對文本進行分類,其過程主要包括文本預處理、文本表示、特征提取、模型構建等步驟(見圖1)。[4-5]
文本預處理的目的是把文本轉化為適合機器處理的形式,并保留對分類有意義的特征,主要包括分詞、降噪、去除停用詞、劃分訓練集與驗證集等流程。文本表示的目的主要是把預處理后的文本數據轉換為機器能識別的結構化數據(即詞向量),通常可使用詞袋(BOW)、向量空間模型等方法。特征提取的目的是借助特征選擇方法實現關鍵特征提取,降低向量空間的維度,提高分類效率,因此特征提取的質量對文本分類效果有較大影響,向量空間模型的特征提取對應特征選擇和特征權重兩部分,通??墒褂肨F-IDF方法。模型構建主要是基于線性回歸、邏輯回歸、支持向量機、樸素貝葉斯、決策樹等分類模型進行訓練。[6-7]
筆者計劃采用Textgrocery作為傳統機器學習文本分類算法的代表。Textgrocery是一個基于LibLinear中SVM(支持向量機)算法和結巴分詞的短文本分類工具,其特點是高效易用,同時支持中文和英文語料,在小樣本集上表現良好。原生的SVM只支持二分類,無法解決多分類問題。而Textgrocery的底層雖然也是SVM,但經過包裝后已支持多分類,且訓練及預測速度較快。
(二)基于深度學習的文本分類
基于深度學習的文本分類是通過深度學習模型對數據進行訓練,無需人工提取特征,數據量和迭代次數是影響文本分類效果的重要因素。基于深度學習的文本分類可根據算法類型分為兩類:第一類是使用詞向量對文本進行表示后,運用端到端的神經網絡算法對文本進行分類,依靠算法而非人工手段進行特征提取。第二類則無需手動進行詞向量表示,使用預訓練語言模型,通過大數據預訓練加小數據微調,減少對于人工調參的依賴。第二類的出現是由于各類任務對于上下文語義理解的需求不斷加深,同時希望解決同義詞所帶來的問題,從而促使技術不斷發展。
在研究中,由于交易詳情等特征為短文本,具有稀疏性和不規范性,其內容對句法和語義理解的需求較低,因此只需使用淺層網絡即可滿足本文需求。因此筆者選擇了FastText模型作為基于深度學習的文本分類算法代表。FastText是Facebook于2016年開源的一個輕量級詞向量表示與文本分類工具,典型應用場景是“帶監督的文本分類問題”。與基于神經網絡的分類算法相比,FastText的優點一是在保持高精度的情況下加快了訓練及測試速度,二是FastText不需要預訓練詞向量,因為在運算過程中FastText會自己訓練詞向量。FastText結合了自然語言處理和機器學習中最成功的理念,在傳統算法Word2vec的基礎上進行了兩類重要優化,分別是子詞特征(N-gram)和層次(SoftMax)。N-gram子詞特征通過隱藏表征在類別間共享信息,層次SoftMax則利用類別不均衡分布的優勢來加速運算過程。[8-9]
FastText模型輸入文本,即詞的序列,輸出這個詞序列屬于不同類別的概率。序列中的詞和詞組組成特征向量,特征向量通過線性變換映射到中間層,中間層再映射到標簽。FastText在預測標簽時使用了非線性激活函數,但在中間層不使用非線性激活函數。
N-gram是基于語言模型的算法,基本思想是將文本內容按照字節順序進行大小為N的窗口滑動操作,最終形成窗口為N的字節片段序列。N-gram包括字粒度的N-gram和詞粒度的N-gram,在英文中也可以以字符粒度工作。N-gram除了獲取上下文信息,還可以讓模型學習到局部單詞順序的部分信息,將語言的局部順序保持住。例如“羊吃草”,如果不考慮順序,可能會出現“草吃羊”的語義不正確問題。因此在使用N-gram時,會將N個字向量取平均后得到大小為N的詞的向量,通過這種方式關聯相鄰的幾個詞,讓模型在訓練的時候保持詞序信息。然后在隱藏層將得到的所有N-gram的詞向量求平均,得到最終的一個向量。
SoftMax函數常在神經網絡輸出層充當激活函數,目的就是將神經元輸出構造成概率分布,主要就是起到將神經元輸出值歸一化到[0,1]的作用。在標準的SoftMax中,計算一個類別的SoftMax概率時,需要對所有類別概率做歸一化處理。這種做法在類別數量很大情況下非常耗時,因此提出了層次SoftMax。其思想是利用了類別不均衡,即一些類別出現次數比其他類別更多的事實,通過使用Huffman算法建立用于表征類別的樹形結構來代替標準SoftMax,令頻繁出現類別的樹形結構的深度比不頻繁出現類別的樹形結構的深度更小,進一步使得計算效率更高,通過層次SoftMax可以將復雜度從N降低到log(N)。
三、模型實驗流程及結果
筆者主要構建基于傳統機器學習的文本分類算法(Textgrocery)和基于深度學習的文本分類算法(FastText)模型,并在同一數據集上進行測試和效果對比。
(一)數據來源
2020年7月1日—2020年12月31日樣本客戶脫敏后的支付交易數據。
(二)數據預處理
由于模型文本信息輸入來自多個字段,需將各字段合并為單一字段文本信息,并進行語料清洗,去除符號、數字等無意義字符,僅保留中英文內容。處理后對交易記錄進行再次篩選,僅保留文本信息不為空交易記錄作為有效數據。
(三)分類打標
分類打標主要是用于模型訓練,確定分類規則。研究希望通過對交易數據進行細分,了解各交易場景分布情況。分類打標的另一個作用是將驗證樣本自動分類后的類別與預先打標好的類別進行對比,借助評價指標評估模型分類效果的好壞。研究根據業務經驗把支付交易場景分為45類,包括商超便利、理財投資等。樣本數據方面,隨機選取4.2萬余條數據用于模型訓練及驗證,并逐條對交易數據場景分類進行人工標注。
(四)模型訓練步驟
1.切分訓練集和驗證集
模型的X變量為交易詳情中的文本信息,Y變量為人工標注的45類交易場景。建模數據樣本按照訓練集80%,驗證集20%的比例隨機拆分整體數據,并進行人工核查確保訓練集和驗證集均涵蓋45類交易場景數據。
2.基于Textgrocery的短文本分類流程
(1)入模數據標準化
訓練集數據:將每一條訓練集數據輸入轉化為Textgrocery的標準輸入格式,('分類標簽','輸入文本')。
示例:[('商超便利','便利店')]
驗證集數據:與訓練集數據格式保持一致。
(2)模型訓練
將訓練集數據輸入Textgrocery模型中,訓練并保存模型結果。再將驗證集數據送入訓練好的模型中,分析模型評價指標以確定模型表現。
3.基于FastText的短文本分類流程
(1)結巴分詞切割文本
使用結巴分詞的精確模式對每一條數據中的文本信息進行切分,詞與詞之間以空格間隔。
(2)入模數據標準化
訓練集數據:將每一條訓練集數據輸入轉化為FastText的標準輸入格式,'__label__分類標簽\t輸入文本'。
示例:['__label__基金\t諾安','__label__基金\t基金']
驗證集數據:將以空格間隔的切割后文本信息作為輸入。
(3)模型訓練
將訓練集數據輸入Fasttext模型中,訓練并保存模型結果。再將驗證集數據送入訓練好的模型中,分析模型評價指標以確定模型表現。
(4)參數調優
對模型參數進行獨立或聯合調優,將在驗證集上表現最好的一組參數作為模型的最終參數,訓練所得模型作為最終應用模型。
最終確定模型參數為:WordNgrams=1,Epoch=40,Lr=0.3,Dim=100,Loss=softmax(WordNgrams:單詞n-gram的最大長度,wordNgrams=1表示只有一個單詞;Epoch:迭代次數;Lr:學習率;Dim:向量維度;Loss:損失函數類型)。
(四)模型評價
對于文本分類效果的評價,通常使用準確率(Accuracy)、精確率(Precision)、召回率(Recall)、F1值來評價,具體計算公式如下:
Accuracy=" " " " " " " " "(1)
其中,TP為正樣本預測正確的個數,FN為正樣本預測錯誤的個數,TN為負樣本預測正確的個數,FP為負樣本預測錯誤的個數。準確率(Accuracy)為預測正確的樣本與總樣本的比值。通常來說,準確率越高,模型效果越好。
Precision=" " " " " " " " " " " " "(2)
其中,精確率(Precision)為預測正確的正樣本數與預測為正樣本數的比值。
Recall=" " " " " " " " " " " " " " (3)
其中,召回率(Recall)為所有的正樣本中,模型預測正確的比例,衡量的是所有正例能被發現多少。
F1==(4)
其中,F1值是精確率和召回率的調和平均值,F1值認為精確率和召回率一樣重要。
(五)訓練結果對比
為了驗證不同算法的性能,分別使用Textgrocery和FastText在同一數據集上進行訓練,對比結果類別為商超便利、理財投資等45類,具體見圖2-圖4。
由圖2可知,Textgrocery在大部分場景分類中的精確率均高于FastText,僅有公共交通、理財投資等5個場景(詳見圖2中標記點)的精確率低于FastText。
由圖3可知,Textgrocery在大部分場景分類中的召回率均高于FastText,但在數碼電器、共享生活、理財投資等10個場景(詳見圖3中標記點)的召回率低于FastText。
由圖4可知,Textgrocery在大部分場景分類中的F1值均高于FastText,僅有數碼電器、共享生活、理財投資等7個場景(詳見圖4中標記點)的F1值低于FastText。
由表1可知,整體情況方面,Textgrocery算法在準確率、精確率、召回率、F1值方面效果均優于FastText算法0.011左右。綜上所述,不論是分交易場景還是整體方面,Textgrocery效果均優于FastText,故筆者選擇Textgrocery算法對全部交易數據進行短文本分類,得到對應的交易類別。
四、重點交易場景關鍵詞分析
根據Textgrocery算法開展場景自動化、智能化分類的結果,筆者選取理財投資場景進一步開展訂單詳情關鍵詞分析。篩選支付交易數據中被分入理財投資場景的對應文本信息數據,使用結巴分詞工具將這些文本數據進行詞語切分。按照場景類別分別對每個場景下所有分詞結果進行詞頻統計,選取該場景下出現次數最多的前300個關鍵詞,并刪除其中空格、單個字母、亂碼字符等無意義詞語。同時,使用永洪BI工具將關鍵詞表按照詞頻繪制詞云圖,詞云中以較大形式呈現的詞語表示出現頻率較高,反之則出現頻率相對較低(見圖5)。
在理財投資場景中(見圖5),出現頻率較高的為基金及支付渠道相關名詞:基金、管理、支付寶。次之是一些常見的基金公司及產品名稱,如天弘、華安、景順、廣發基金等。一些基金的屬性名詞也會被分出來,如醫療、白酒、定期、成長等。
此外,借助自然語言處理技術對交易數據開展自動化、智能化分類,還可以幫助銀行為個人客戶建立消費行為方面的客戶標簽,從而使得數據資源變得易理解、可使用、有價值。例如,基金公司購買基金、在全家便利店買零食等交易,則可為其打上理財投資、商超便利的標簽,并分析不同標簽下消費情況。
五、結語
筆者通過運用人工智能技術賦能數據分析的一次探索和嘗試,借助自然語言處理技術實現了對海量交易數據的場景自動化、智能化分類,解決了支付交易數據中文字信息無法直接用于數據建模的問題,幫助銀行將描繪客戶的維度從資產、收入、征信、還款行為等靜態、低頻數據擴展至個人客戶衣、食、住、行、娛等動態、高頻消費行為數據,可以為銀行個人客戶標簽提供有力補充,形成更加完善的客戶畫像。基于場景分類結果,運用RFMP方法,可從消費行為維度完善客戶畫像,后續結合機器學習、深度學習等算法開展數據建模分析,可為銀行精準營銷、風險管理等業務領域提供有力支持。精準營銷方面,可運用大數據分析客戶多維度信息,描繪千人千面的客戶畫像,將分析顆粒度從客戶群體精細化到每個客戶,更好地洞察客戶需求,滿足客戶潛在金融和非金融服務需求,并提供個性化的產品推薦,幫助銀行挖掘優質客戶,實現精準營銷。風險管理方面,可整合銀行內部客戶信息、資產信息,及司法、稅務、社保等外部機構數據,構建個人客戶信用評價體系,用于貸前、貸中、貸后的風控管理,不斷提升信用評價工作的效率和準確性。
在大力發展數字經濟的背景下,商業銀行也需加快數字賦能的腳步,積極推進數字化轉型。首先,銀行可不斷提升數據治理和應用能力,充分挖掘自身經營中積累的海量數據,真正將原始數據資源轉化為數據資產,充分發揮數據資產的價值潛力。其次,銀行應加強與政府部門、公共資源機構、運營商等外部機構的跨界合作,通過與外部機構數據的“合縱連橫”,打破數據孤島,擴展數據維度,豐富數據應用場景。最后,銀行還需及時跟進隱私計算、區塊鏈、人工智能等前沿技術發展,探索和研究新技術與金融服務的有機融合,建設企業級隱私計算平臺,形成數據安全聯合共享能力,發揮數據要素價值潛力。[10]
注釋:
1. 該定義引自百度詞條“人工智能(計算機科學的一個分支)”,該詞條由“科普中國”科學百科詞條編寫與應用工作項目組審核。
參考文獻:
[1] 楊唯實.人工智能發展前景及金融行業應用[J].金融電子化,2017(06):52-54.
[2] 馬千,趙洪丹,陳麗爽.金融科技的創新發展及趨勢研判[J].科技智囊,2022(07):23-29.
[3] 李睿晶,房超,陳凱.新時代我國人工智能發展回顧與發展[J].科技智囊,2023(01):14-21.
[4] 馮園園.短文本分類技術及其場景應用研究—基于某某寶交易數據[D].杭州:浙江工商大學,2017.
[5] 李銳.面向新聞分類的文本表示方法研究[D].南京:南京信息工程大學,2020.
[6] 張彥超,王杰,陳生,王彥博.NLP在銀行網絡金融業務中的應用[J].銀行家,2020(11)22-24.
[7] 呂俊鋒,陳宏曉,張誠,秦雷.NLP技術在農行信用卡風險管理領域的應用[J].中國金融電腦,2019(11)29-34.
[8] 王光慈,汪洋.基于FastText的短文本分類[J].電子設計工程,2020(03):98-101.
[9] 林國祥,詹先銀,薛醒思,等.基于fastText的股票咨詢案例中文短文本分類技術[J].寶雞文理學院學報(自然科學版),2020(03):48-52.
[10] 葛紅玲,方盈贏,李韞珅.北京數字經濟發展特點及提升方向[J].科技智囊,2023(02):11-19.
Intelligent Classification of Bank Customer Transaction Scene
HUANG" Li" " HU" Danni" " LI" Pu
(Bank of China Limited,Head Office,Beijing,100818)
Abstract:How to aggregate multi-dimensional massive data and fully tap the intrinsic value of data is one of the important objectives in commercial bank digital transformation. Taking the payment transaction data of individual customers as an example,the article explores the classification effect of two kinds of natural language processing algorithms,Textgrocery and FastText,on the classification of transaction data scenes. The experimental results show that the effect of Textgrocery is superior to FastText in both scene segmentation and overall performance,so the article finally applies Textgrocery algorithm on automatically,intelligently and efficiently classification of the scenes of transaction data. The results of scene classification model can help banks to establish labels for individual customers in the dimension of consumption behavior,thus making data resources usable and valuable.
Key words:Natural language processing;Intelligent classification of massive data;Unstructured data processing;Textgrocery;FastText
作者簡介:黃麗,女,1987年生,碩士,經理,研究方向:數據分析、機器學習等。胡丹妮,女,1995年生,碩士,助理經理,研究方向:數據分析、機器學習等。李普,男,1987年生,本科,經理,研究方向:數據分析、機器學習等