段然, 胡華俊, 黃龍, 李培
(廣東電網有限責任公司江門供電局, 廣東,江門 529000)
當前,電力企業中每月都會有大量的用戶出現欠費的情況。這部分客戶欠費的原因多樣,當歸納起來包括主觀因素欠費和客觀因素欠費,如故意欠費、房子出租欠費等。而用戶繳費行為來講,也呈現出多樣化的趨勢,如拖欠用戶幾天后繳費,也存在部分拖欠的用戶在1~2月或半年繳費的情況。在復雜拖欠費和繳費中,如何保障電力企業順利對電費進行回收,進而提高電力部門的回收效率,提升自我的經濟效益等,是當前思考和研究的重點。對此,有必要從欠費用戶識別出某用戶或某類用戶是否屬于惡意欠費,以便于供電部門能夠進一步采取措施,以減少電力部門的損失。因此,構建一套可對惡意用戶進行識別的系統,很有必要。但傳統的欠費挖掘大部分是采用K均值聚類,或模糊均值聚類,并且以客戶畫像標簽作為基礎,然后對客戶進行分類,進而得到不同欠費客戶的特征[1-4]。但是,這些方法也存在一些問題,如模糊均值聚類模型不具備伸縮性,一旦確立,聚類的標準也就確定了,這不利于供電部門彈性的開展收費工作,因為對那些惡意拖欠的電力用戶,需要投入大量的人力、物力和財力。同時,對惡意欠費的識別問題,屬于對離群點的檢測,往往需要建立用戶標簽,然后才能進行有效識別。由此,針對以上的問題,提出了一種基于機器算法識別的電費催繳系統,并對該系統進行詳細的設計。
結合當前主流的系統框架,采用B/S+JDK1.7+Apache+Oracle對系統進行搭建,將系統分為數據層、業務層和展示層。具體架構如圖1所示。

圖1 系統整體架構
在圖1的整體框架中,數據庫服務器的管理系統采用Oracle,Web服務器采用Apache HTTP Server進行搭建。
結合電力營銷部門在電費催收方面的業務,將該系統的整體功能模塊分為自動催費、電費查詢、催費及通知時間設定、催費記錄查詢、數據接口、惡意欠費識別、登錄與注銷等模塊。具體如圖2所示。

圖2 催收系統功能模塊設計
在上述的整體功能架構中,登錄注冊主要用于保障系統應用的安全性,進而通過注冊登錄的方式對用戶進行信息核實,對通過審核的客戶,或者與后臺存儲信息一致的客戶方可登錄;電費查詢模塊負責對某用戶電費的查詢,以方便工作人員及時獲取相關的客戶電費信息;數據接口主要負責與SG186營銷系統、農電營銷系統等電力營銷系統服務器進行連接,以方便及時獲取用戶的繳費信息記錄等;惡意欠費識別模塊主要是根據繳費記錄信息,對欠費群體中的惡意欠費用戶進行識別。在識別中,包含指標體系、識別模型和識別結果。其中在識別模型中主要引入非監督算法對惡意欠費用戶進行識別;自動催費模塊主要包括催費及通知時間設定、催費次數設定、催費語音三個模塊。如針對識別出的惡意欠費用戶,可根據其惡意程度進行不同的語音催費方式和次數;催費記錄查詢主要提供惡意欠費用戶的催費信息。
為更好的識別出用戶是否為惡意欠費,引入用戶欠費風險值V。研究認為,用戶欠費風險值V是由兩個因素決定:一是惡意程度P,該值主要用于衡量用戶欠費的概率,或者是用戶欠費所帶來的嚴重程度;二是用戶欠費經濟損失L[5-7]。
在上述的兩個決定指標P和L中,P又由四個二級指標來決定,主要包括用戶欠費次數(QFCS)、欠費密度(QFMD)、欠費總時長(QFZSC)、最近欠費日離當前日時長(ZJQFSC);經濟損失L又由用戶欠費總額(QFZE)、應收違約金總額(WYJZE)決定。其中,QFZSC指標是按照天來進行統計,ZJQFSC指標則是按照月來進行統計。QFMD的定義為:當QFCS=1時,QFMD=0;當QFCS≥2,QFMD=QFCS/QFZSC;0≤QFMD≤1,且QFMD≥0.5時,此時某用戶必然存在連續欠費的情況。同時,QFCS、QFMD、QFZSC越大,說明惡意欠費的程度越大;而最近欠費日如果離當前的欠費日的間隔越長,那么說明用戶惡意欠費的程度就越小。
欠費風險值計算主要是結合用戶歷史的繳費數據作為依據,考慮在最近N月內繳費的惡意欠費長度。具體計算為[8-10]
P=p1×1-1QFCS+1+p2×qfind+
p3×1-1SQFCS+1+p4×1-qfzjsc36
(1)
而用戶造成的經濟損失L計算公式為
L=L1×log2000(syswyj+1)+L2×log2000(sqf+1)
(2)
用戶欠費的危害性V則為
V=f(P,L)
(3)
結合上述的指標計算方法,在計算用戶相關指標的同時,從大量的數據中篩選出惡意欠費的用戶,以便于電力企業進一步采取措施,如電話催收、郵件催收等。具體流程則是結合用戶的繳費記錄,計算出惡意欠費程度P和經濟損失L,然后設定欠費危害性的閾值V0,一旦閾值超過V0,并結合當前欠費用戶情況,那么則判定其為惡意欠費用戶。具體如圖3所示。

圖3 惡意欠費識別模型
通過圖3的惡意欠費識別流程看出,該流程為一個動態的模型,即用戶是否為惡意欠費,其關鍵的是由N來決定。即隨著N的變化,可實時的對用戶在連續N個月內的繳費情況進行統計和分析。當用戶的繳費發生變化,其欠費風險值也在不斷的變化。如某用戶在當前月的欠費風險值高,當在今后的N個月中不欠費,那么其風險值自然會減為零。
在登錄模塊中,主要設計兩級權限用戶,以滿足系統登錄的安全要求。對一般用戶而言,可實現電費查詢、催費信息查詢、自動催費、惡意欠費識別等功能;對系統管理員而言,除以上的功能以外,還可以對用戶的權限進行劃分,并新增、刪減和修改用戶信息。具體流程如圖4所示。

圖4 登錄模塊設計
惡意欠費用戶的識別實現中,首先是設置惡意欠費計算的周期N;然后對用戶欠繳費信息進行讀取;根據式(1)—式(3)計算風險值,并根據設定的閾值,判斷該用戶是否為惡意欠費用戶,并羅列出惡意欠費用戶的清單。具體可以用圖5來表示。

圖5 惡意欠費用戶識別實現流程設計
在完成惡意欠費用戶的識別后,還需要對惡意欠費用戶進行催收,以提高電力企業自動催收的效率。本文結合當前的信息,提出采用語音自助催收的方式對這部分惡意欠費用戶進行催收。具體則是管理員登錄催收客戶端,然后查詢欠費者名單,然后選擇催收方式,并呼叫用戶,最后播放催收語音。具體流程如圖6所示。
系統實現部署采用Apache服務器。Apache服務器為Apache軟件基金會提供的一個開源網頁服務器,可在大部分計算機操作平臺中運行。由于該服務器開源,所以被廣泛應用。該服務器可快速、可靠,并通過簡單的API擴展,將Perl/Python等解釋器編譯到服務器當中。具體部署流程

圖6 語音自動催收流程
為:首先創建Python3.6的虛擬環境,主要安裝Python庫和連接Oracle所用的dll文件,然后將這些虛擬環境的文件夾放在對應的項目文件夾目錄下;其次是安裝Apache服務器,并設置相關的參數。
為驗證上述設計方案的可行性,特別是惡意欠費用戶識別方面,結合上述的系統,對惡意識別欠費進行驗證。
4.2.1 概率函數選取
取N=36,即取該用戶在過去36月內的用電歷史繳費記錄進行建模。在惡意程度p的計算中,選擇如下的概率化函數。
通過圖7的概率函數看出,f1、f3的特點在于初期快速上升,后期則呈現出緩慢上升的狀態;f4函數的特點在于鉛板部分緩慢上升,但是后半部分快速的下降。而上述函數則表示為:當ZJQFSC值越大,表明用戶在快速的減弱其惡意程度,也就是用戶在最近的連續周期內沒有或很少出現欠費的記錄。由此,這符合對惡意欠費的經驗判斷。比如,以用戶在3個月前欠費,和一個客戶在2年之前欠費,其惡意程度要明顯小很多。同時,高斯型模型g不滿足要求,主要原因是前半部分下降太快,后半部分則接近為0。同時在本文的實驗中,指標的權重取均等,即都為0.25。

圖7 概率化函數的選擇影響識別效果
同時,在對經濟損失值L進行計算的過程中,選擇如下的概率化函數[11]。
g1(x)=logW(x+1)
g2(x)=logQ(x+1)
(4)
式中,W,Q為常數,并滿足W≥maxWYJZE+1,Q≥maxQFZE+1。而結合相關的文獻研究,本文中的W,Q分別取值為1 000、10 000。指標的權重取均等,即都為0.5。
在欠費風險值計算中,函數f取乘積算子。即風險值計算公式為
V=P×L
(5)
4.2.2 惡意識別結果
以上述模型作為分類器,以廣東韶山供電局營銷系統中的欠費用戶繳費記錄作為依據,設定風險值的閾值在0.9 表1 電力用戶A欠費記錄 表2 A用戶各指標值 設定風險值的閾值V<0.1,根據計算可以得到用戶B的欠費風險值為0.06,具體的欠費記錄和指標見表3、表4。 表3 B用戶欠費記錄 表4 B用戶各指標值 4.2.3 惡意識別閾值設定界面 閾值設置的作用是在一定程度上控制惡意欠費用戶的數量。閾值越大,能夠識別出的惡意欠費的用戶數量越少,反之越多。同時,閾值的設置沒有明確的規定和標準,一般是根據各個電力企業的實際情況來判定,并結合經驗來設置。如果閾值設置為0,那么得到的數據就是當月欠費的所有用戶。本文通過開發,得到的閾值設置界面如圖8所示。 4.2.4 語音催收界面 語音催收主要實現催收及通知時間設定、催收次數設置等功能。圖9為語音催收的設置界面。通過該界面,各供電站可根據自身的情況,設置不同的催收次數等。 圖8 惡意欠費閾值設定界面 圖9 語音催收界面 本文通過借助B/S+Oracle+MVC等技術手段實現了電力系統的電力催收,進而通過網絡即可實現對用戶欠費的催收。而本文的特色在于,結合海量的歷史欠費記錄,提出一種非監督算法,即引入風險值實現對不同惡意欠費用戶風險值的計算,并根據經驗設置風險值的經驗值,以達到判斷惡意欠費用戶的目的。結果表明,通過上述的惡意欠費識別模型,可有效提取部分惡意欠費用戶,并且通過該系統可實現對惡意欠費用戶的自助電費催收。





5 總結