衛昆,李想
(1.西安郵電大學經濟與管理學院,西安 710121;2.武漢烽火國際技術有限責任公司,武漢 430000)
隨著互聯網的發展,C2C電子商務交易模式不斷成熟穩定,以其不受地域時間的限制、高效率、低成本等優勢而受到越來越多人的青睞。近年來我國電子商務消費者人數迅速增長,根據CNNIC第41次《中國互聯網絡發展狀況統計》,截至2017年12月底我國電子商務市場的交易總額高達29.16億元,較之2016年增幅約為11.7%。網絡購物市場總交易規模高達6.2億元,比2016年增長24%。2010年C2C市場的交易額約為4651億元,2015年C2C電子商務在中國整體網絡購物市場規模中增長率為19.5%,2017年天貓雙11全球狂歡節交易額高達1682億元,年增長39%,數據表明C2C電子商務模式發展空間很大。
分類器是利用分類技術構建的模型,主要是用來預測數據對象的離散類別,經過對訓練集(由類別已知的數據組成)的學習得到一個分類模型,可視作一個目標函數,待測集(所屬類別未知的數據)中的每個樣本通過該目標函數的映射,得出一個被預測的類別。
在分類器構建完成后,通常需要使用一系列的指標去衡量它的分類性能,首先是混淆矩陣。混淆矩陣,現在假設分類變量只有兩個類別,分別為正例(positive)和負例(negative),其中,True positives(TP):表示實際為正例且被分類器判斷為正例的樣本的數量;False positives(FP):表示實際為負例但被分類器判斷為正例的樣本的數量;False negatives(FN):表示實際為正例但被分類器判斷為負例的樣本的數量;True negatives(TN):表示實際為負例且被分類器判斷為負例的樣本的數量。
決策樹可以抽象理解為一個樹形結構,樹中的每個非葉子節點代表某個屬性,每個分支代表某個屬性值,每個葉子節點對應著從根節點到該葉子節點所經歷的路徑表示的樣本的類別,即葉子節點代表的屬性就是該樣本的分類結果。
隨機森林分類器是包含多個決策樹的一種組合分類器,最終的分類結果由這些決策樹共同決定。隨機森林的特點主要體現在它的兩個隨機性上,第一個隨機性是它在構建每一個決策樹時,采用自助法(bootstrap)重采樣技術,即有回放地從數據集中隨機抽取一定數量的樣本,第二個隨機性是在決策樹進行節點分裂時,隨機選擇若干屬性參與比較,以確定分裂節點。
本研究從淘寶網收集了真實交易數據,整理后共包含41個屬性,其中屬性“is_cheat”為目標屬性,用來表示樣本的類別(欺詐商家,非欺詐商家),由于隨機森林算法在構建決策樹節點時,從數據集所有變量(除目標屬性和用于標識的屬性)中隨機選取若干屬性進行比較,所以它能夠處理擁有屬性較多的數據,無需進行特征選擇[1]。如表1所示為各屬性名和它們的含義。
該數據集含樣本1456條,類別為“欺詐賣家”的樣本數為621,類別為“非欺詐賣家”的樣本數為835,訓練集和測試集的樣本數量。

表1 數據集各屬性名及含義

續表1:
3.2.1 分類器相關參數選擇
①mrty參數的選取
mrty參數表示隨機森林在分類節點處選擇參考的屬性的數量,對隨機森林分類的準確度有很大影響。為了確定mrty的最優取值,本文設計如下實驗:將mrty的值分別取為50、100、150,mrty取3至10之間的整數(若數據集的屬性個數為M,則mrty的值一般取為,由于本研究中,“count_id”和“is_cheat”屬性不計算在內,則的值介于6和7之間,所以取3至10之間的整數進行實驗),以訓練集為數據集,以F的值為評價指標,分類器的分類性能和F的值呈正相關。當mrty=6時,F的值比較穩定且普遍較高,所以選定mrty的值為6,即將要構建的隨機森林分類器在分類節點處選擇參考的屬性的數量為6。
②ntree參數的選取
ntree參數表示隨機森林中所要生產樹的數量,它的取值對最終的分類效果也起著至關重要的作用,所以本文也設計如下實驗來確定其最優取值:mtry取值為6,將ntree的取值分別設定為 10、40、70、100、130、160、190、220、250,同樣以訓練集為數據集,以F的值為評價指標。當mtry=6,ntree=70時,所得到的F值最大,此時分類器的分類效果也相對最好,所以我們將參數ntree的值確定為70。
3.2.2 隨機森林分類器的訓練
在確定分類器構建所需要的軟件及相關參數的取值后,分類器的運行流程
參數值確定后,進行分類器的構建,在R軟件中輸入如下程序:
library(randomForest);#加載隨機森林程序包
Data_train <-read.csv("F:/train.csv",header=TRUE);#讀入訓練集數據
Data_test<-read.csv("F:/test.csv",header=TRUE);# 讀入測試集數據
RF <-randomForest(is_cheat~ ,Data_train,importance=TRUE,ntree=70,mtry=6);#運行randomForest()函數
A=predict(RF,Data_test,type="response");#運用測試集對隨機森林分類器進行測試
table(A,Data_test$is_cheat)#將測試結果進行展示
本文在C2C電子商務交易欺詐日漸嚴重的情況下,提出以數據挖掘技術中的隨機森林算法構建分類器模型,介紹了決策樹與隨機森林的原理、構建過程,對二者的分類性能進行了對比,得出了隨機森林分類器分類效果好于決策樹分類器的結論。進而運用從淘寶網上收集的真實交易數據進行分類器模型的構建,通過使用R軟件、確定相關參數、測試集測試等步驟,構建了具有較高分類正確率的隨機森林分類器模型,可以對欺詐商家進行有效的識別。本文工作試圖從C2C電子商務交易賣家數據中有效地識別出欺詐賣家,以期望C2C電子商務交易欺詐問題能夠早日得到解決,人們能夠獲得更加良好更加放心的網上購物體驗,賣家可以在公平的環境下競爭,C2C電子商務持續健康發展。