王芳+申貴成
摘要:機(jī)器學(xué)習(xí)是人工智能相關(guān)領(lǐng)域中與算法相關(guān)的一個(gè)子域,是解決人工智能問題的一個(gè)途徑,它允許計(jì)算機(jī)不停的模擬人的思考方式進(jìn)行學(xué)習(xí),來發(fā)掘出隱藏在數(shù)據(jù)背后的模型,并能對不完全信息進(jìn)行推理,來構(gòu)造新事物。目前機(jī)器學(xué)習(xí)的應(yīng)用主要集中在數(shù)據(jù)挖掘,計(jì)算機(jī)視覺,自然語言處理,模式識(shí)別,搜索引擎等。文中將機(jī)器學(xué)習(xí)中的算法決策樹C4.5,隨機(jī)森林,貝葉斯網(wǎng)絡(luò)應(yīng)用到電商用戶行為數(shù)據(jù)的挖掘中,解決用戶行為屬性與用戶收入水平的分類情況問題;通過三種算法對用戶行為的研究,得出決策樹C4.5算法在用戶收入分類上要優(yōu)于后兩種。
關(guān)鍵詞:機(jī)器學(xué)習(xí); 用戶行為; C4.5算法; 隨機(jī)森林;貝葉斯網(wǎng)絡(luò)
中圖分類號(hào):TP181 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2017)26-0180-03
Abstract:Machine learning is in the related fields of artificial intelligence related to the algorithm a child domain, is a way to solve the problem of artificial intelligence, it allows computer simulation human way of thinking in learning, to dig the hidden data model, and reasoning with incomplete information, and to construct the new things.The mainly concentrated in machine learning application are the data mining, computer vision, natural language processing, pattern recognition, search engines, etc. This paper, will be use the machine learning algorithm of decision tree C4.5, random forests and bayesian networks in electricity user's behavior data mining, solving the user behavior properties and classification of user levels of income;The study of user behavior through three algorithms, it is concluded that the decision tree C4.5 algorithm on user revenue classification is better than two.
Key words:Machine learning; user behavior; C4.5 algorithm;random forests;bayesian networks
1 概述
近年來,機(jī)器學(xué)習(xí)的研究得到了快速的發(fā)展;無論是從算法上還是應(yīng)用上都是現(xiàn)在研究的熱點(diǎn)。機(jī)器學(xué)習(xí)是隨著人工智能的發(fā)展應(yīng)運(yùn)而生的,是人工智能的一部分,人工智能的概念源于20世紀(jì)50年代,由一批在當(dāng)時(shí)享有盛譽(yù)的科學(xué)家提出(包括美國達(dá)特茅斯大學(xué)助教約翰.麥卡錫、哈佛大學(xué)馬文.明斯基、IBM信息研究中心內(nèi)森.羅切斯特和美國數(shù)學(xué)家,信息論創(chuàng)始人香農(nóng)等),從二十世紀(jì)七十年代以來,和空間技術(shù)、能源技術(shù)并稱為稱為世界三大尖端技術(shù);從1997年深藍(lán)在人機(jī)挑戰(zhàn)賽中首次戰(zhàn)勝職業(yè)棋手到2016年AlphaGo戰(zhàn)勝世界圍棋冠軍可謂是人工智能飛速發(fā)展的階段,充分證明了人工智能的未來不可限量。人工智能的研究是從以“推理”為重點(diǎn)到以“知識(shí)”為重點(diǎn),再到以“學(xué)習(xí)”為重點(diǎn),一條自然、清晰的脈絡(luò)。機(jī)器學(xué)習(xí)是實(shí)現(xiàn)人工智能的一個(gè)途徑,即以機(jī)器學(xué)習(xí)為手段解決人工智能中的問題。在人工智能早期機(jī)器學(xué)習(xí)的技術(shù)幾乎全部是符號(hào)學(xué)習(xí),到了二十世紀(jì)九十年代統(tǒng)計(jì)機(jī)器學(xué)習(xí)已經(jīng)取代了符號(hào)學(xué)習(xí)的地位,從最初的理論模型研究發(fā)展到了以解決現(xiàn)實(shí)生活中的實(shí)際問題為目的的應(yīng)用研究中,這是科學(xué)研究的一大進(jìn)步。機(jī)器學(xué)習(xí)在近30多年已發(fā)展為一門多領(lǐng)域交叉學(xué)科,涉及概率論、統(tǒng)計(jì)學(xué)、逼近論、凸分析、計(jì)算復(fù)雜性理論等多門學(xué)科。機(jī)器學(xué)習(xí)所研究的是如何通過計(jì)算機(jī)的手段,利用經(jīng)驗(yàn)來改善系統(tǒng)的自身性能,由經(jīng)驗(yàn)來產(chǎn)生相應(yīng)的算法模型,而產(chǎn)生算法模型的過程即為機(jī)器自動(dòng)學(xué)習(xí)的過程。機(jī)器學(xué)習(xí)所要研究的也正是這些“學(xué)習(xí)算法”。學(xué)習(xí)算法的產(chǎn)生包括模擬人類思維學(xué)習(xí)的過程,對不完全信息進(jìn)行推理的過程,構(gòu)造發(fā)現(xiàn)新事物的過程以及針對目前比較潮流的大數(shù)據(jù)的處理的過程等等。目前機(jī)器學(xué)習(xí)所學(xué)習(xí)出的算法主要分為幾類:有監(jiān)督的學(xué)習(xí)算法,無監(jiān)督的學(xué)習(xí)算法,以及半監(jiān)督的學(xué)習(xí)算法。其中,監(jiān)督學(xué)習(xí)分為‘回歸和‘分類,回歸是試圖把輸入變量和輸出變量用一個(gè)連續(xù)函數(shù)來對應(yīng)起來;分類是將輸入變量與離散的類別對應(yīng)起來。無監(jiān)督學(xué)習(xí)是事先并不知道會(huì)出現(xiàn)什么結(jié)果,我們可以用聚類等的方式從數(shù)據(jù)中提取一個(gè)特殊結(jié)構(gòu),無監(jiān)督學(xué)習(xí)中沒有任何標(biāo)簽或者是只有同一種標(biāo)簽。半監(jiān)督學(xué)習(xí)是監(jiān)督學(xué)習(xí)和無監(jiān)督學(xué)習(xí)相結(jié)合的學(xué)習(xí)方法,同時(shí)使用標(biāo)記數(shù)據(jù)和未標(biāo)記的數(shù)據(jù)來進(jìn)行機(jī)器的學(xué)習(xí)工作,使用半監(jiān)督學(xué)習(xí)可提高效率和學(xué)習(xí)的準(zhǔn)確性,現(xiàn)在正受到越來越多機(jī)器學(xué)習(xí)研究者的關(guān)注。文中把電商用戶的數(shù)據(jù)用到監(jiān)督學(xué)習(xí)中的決策樹算法,隨機(jī)森林和貝葉斯網(wǎng)絡(luò)算法上并用實(shí)驗(yàn)來驗(yàn)證算法的分類效果。
2 決策樹C4.5和隨機(jī)森林
決策樹(decision tree)是機(jī)器學(xué)習(xí)中一種常見的學(xué)習(xí)方法,在分類、預(yù)測,規(guī)則提取方面取得了不錯(cuò)的效果,樹形結(jié)構(gòu)包括根節(jié)點(diǎn),分枝和葉節(jié)點(diǎn)三個(gè)部分,其中根節(jié)點(diǎn)也是決策節(jié)點(diǎn),通常代表的是數(shù)據(jù)集中待分類樣本的某個(gè)屬性,分枝是根節(jié)點(diǎn)的不同取值,葉節(jié)點(diǎn)是一種可能的分類結(jié)果。決策樹算法通過將訓(xùn)練集劃分為較純的子集,再以遞歸的方式建立決策樹。決策樹算法有多種使用最廣泛的是C4.5算法,能夠處理連續(xù)性和離散型的屬性數(shù)據(jù),也能夠處理具有缺失值的數(shù)據(jù)集。隨機(jī)森林算法是決策樹算法的擴(kuò)展,是一種集成學(xué)習(xí)算法其原理是以決策樹算法為基礎(chǔ),加入隨機(jī)屬性選擇。文中以C4.5算法原理來詳述決策樹生成過程。endprint
對于連續(xù)型的屬性數(shù)據(jù),C4.5算法的處理是按屬性取值遞增的順序,將每對相鄰值的中點(diǎn)看作可能的分裂點(diǎn),根據(jù)分裂點(diǎn)劃分的左右兩部分子集的信息熵求屬性劃分?jǐn)?shù)據(jù)集信息熵最小的值作為屬性的最佳分裂點(diǎn),并把最小的信息熵值作為屬性劃分?jǐn)?shù)據(jù)集的信息熵,進(jìn)行后面信息增益等的計(jì)算。目前,C4.5算法在保險(xiǎn)客戶流失分析[2],高校教學(xué)決策支持以及網(wǎng)絡(luò)入侵檢測,流量分類[3]等中取得了不錯(cuò)的效果。
隨機(jī)森林(Random Forest,RF)是集成學(xué)習(xí)中Bagging的一個(gè)擴(kuò)展變體,以決策樹為基學(xué)習(xí)器構(gòu)建Bagging集成,并在決策樹的訓(xùn)練過程中引入了隨機(jī)屬性選擇[4],分類的結(jié)果由個(gè)別樹分類結(jié)果來定。因其在數(shù)據(jù)集上的表現(xiàn)較好,能夠處理高維數(shù)據(jù)集,訓(xùn)練速度快,實(shí)現(xiàn)簡單,在訓(xùn)練過程中能夠檢測到特征間的影響關(guān)系等而受到眾多機(jī)器學(xué)習(xí)研究者的重視。
3 貝葉斯網(wǎng)絡(luò)
貝葉斯網(wǎng)絡(luò)起源于20世紀(jì)80年代中后期對人工智能不確定性的研究,自20世紀(jì)80 年代開始貝葉斯網(wǎng)絡(luò)已經(jīng)應(yīng)用于專家系統(tǒng),用于表示不確定知識(shí)和推理問題。如由貝葉斯理論發(fā)展出的PATHFINDER網(wǎng)絡(luò)的四個(gè)醫(yī)療診斷的版本[5],通過計(jì)算疾病變量的后驗(yàn)概率,推斷診斷結(jié)果,表明貝葉斯網(wǎng)要優(yōu)于樸素貝葉斯模型;同樣陸金寶[6]等對老年人腎虛的研究結(jié)果也是一樣;早在1986年Adams ID[7]等人就通過多通道的貝葉斯網(wǎng)來確定了計(jì)算機(jī)系統(tǒng)的故障出處;文獻(xiàn)[8]則從水資源管理等方面表明了貝葉斯網(wǎng)絡(luò)的良好應(yīng)用。隨著數(shù)據(jù)庫規(guī)模的不斷擴(kuò)大,貝葉斯網(wǎng)絡(luò)逐漸開始應(yīng)用于大規(guī)模數(shù)據(jù)庫的數(shù)據(jù)挖掘和知識(shí)發(fā)現(xiàn)[9],從而為決策支持提供了更強(qiáng)有力的手段,貝葉斯網(wǎng)絡(luò)已經(jīng)成為數(shù)據(jù)庫知識(shí)發(fā)現(xiàn)和決策支持系統(tǒng)的有效方法之一。
貝葉斯網(wǎng)絡(luò)提供了一種用圖形模型來捕捉特定領(lǐng)域的先驗(yàn)知識(shí)的方法,可以對變量間的依賴關(guān)系進(jìn)行編碼;一旦網(wǎng)絡(luò)結(jié)構(gòu)確定下來,添加新變量比較容易;可以處理不完整的數(shù)據(jù),對有屬性遺漏的實(shí)例可以通過對該屬性所有可能取值的概率進(jìn)行求和或求積分來加以處理;因?yàn)閿?shù)據(jù)和先驗(yàn)知識(shí)以概率的方式結(jié)合起來,所以對模型的過度擬合問題是非常魯棒的。
文中采用的測試策略是使用訓(xùn)練集和十折交叉驗(yàn)證的方法,使用訓(xùn)練集的方法把訓(xùn)練集直接用于測試;十折交叉驗(yàn)證將數(shù)據(jù)集分為十等份,將其中一份進(jìn)行測試,來輸出結(jié)果。
對數(shù)據(jù)集的輸出收入分類,從結(jié)果看出當(dāng)選用訓(xùn)練集時(shí)得出隨機(jī)森林算法分類效果較好,準(zhǔn)確率達(dá)到100%,用貝葉斯網(wǎng)絡(luò)的分類效果并不好,且貝葉斯網(wǎng)絡(luò)的結(jié)構(gòu)只用兩層;用十字驗(yàn)證的方法進(jìn)行數(shù)據(jù)的測試得出決策樹C4.5算法的分類效果較好,正確分類達(dá)到54.33%,其中樹的size是74,葉子的數(shù)量是53;綜上,當(dāng)用訓(xùn)練集測試時(shí)隨機(jī)森林的分類效果較好,當(dāng)用十折驗(yàn)證時(shí)C4.5算法的分類效果較好。根據(jù)各個(gè)算法的分類結(jié)果顯示,婚姻狀況屬性對用戶月收入水平影響較大,其次是購買的品類的影響。
5 結(jié)論與展望
文中用機(jī)器學(xué)習(xí)中的決策樹C4.5算法、隨機(jī)森林和貝葉斯網(wǎng)絡(luò)算法對獲得的電商購買商品的用戶的數(shù)據(jù)在軟件weka上進(jìn)行了數(shù)據(jù)實(shí)驗(yàn),文中樣本分類學(xué)習(xí)算法是監(jiān)督學(xué)習(xí)算法,且以收入為標(biāo)簽,實(shí)驗(yàn)結(jié)果表明,在用訓(xùn)練集進(jìn)行測試時(shí),隨機(jī)森林的分類準(zhǔn)確率較高,但是由于測試本身是訓(xùn)練集的緣故,過擬合現(xiàn)象會(huì)比較嚴(yán)重,且用交叉驗(yàn)證時(shí)效果要劣于C4.5算法,所以得出C4.5算法在此樣本的分類效果相對較好,得出的樹形結(jié)構(gòu)顯示婚姻狀況對收入的分類影響是最大的。
由于文中所用數(shù)據(jù)集屬性雖然較多,但是樣本的數(shù)量相對較少,不能充分證明結(jié)果的準(zhǔn)確性和各屬性對輸出的影響關(guān)系,后期嘗試用機(jī)器學(xué)習(xí)的boost算法等對較大規(guī)模的數(shù)據(jù)進(jìn)行分類驗(yàn)證,以期取得較好的效果。
參考文獻(xiàn):
[1] 袁梅宇.數(shù)據(jù)挖掘與機(jī)器學(xué)習(xí)WEKA應(yīng)用技術(shù)與實(shí)踐[M].北京:清華大學(xué)出版社,2016.
[2] 王振武,徐慧.數(shù)據(jù)挖掘算法原理與實(shí)現(xiàn)[M].北京:清華大學(xué)出版社,2015.
[3] 徐鵬,林森.基于C4.5的流量分類方法[J].軟件學(xué)報(bào),2009(10):2692-2703.
[4] 張連文,郭海鵬.貝葉斯網(wǎng)引論[M].北京:科學(xué)出版社,2006.
[5] 周志華.機(jī)器學(xué)習(xí)[M].北京:清華大學(xué)出版社,2016.
[6] 陸金寶,周如倩,劉仁人.老年人腎虛及其證例的調(diào)查研究[J].上海中醫(yī)藥大學(xué)學(xué)報(bào),2002.
[7] Adams I D,Chan M ,Clifford P C,et al. Computer aided diagnosis of acute abdominal pain: a multicenter study[J].British Medical Journal,1986,293(6550):800-804.
[8] Batchelor C,Cain J.Application of belief networks to water management studies [J]. Agricultural water management,1999,40(1):51-57.
[9] 高磊,劉樂平,盧志義.大數(shù)據(jù)背景下貝葉斯模型平均的理論突破與應(yīng)用前景[J].統(tǒng)計(jì)理論與信息論壇,2016,6(30):14-22.
[10] 胡春玲.貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)學(xué)習(xí)及其應(yīng)用研究[D].安徽:合肥工業(yè)大學(xué), 2001.endprint