歡迎光臨
每天分享高質量文章

以女大學生相親為例,給你講明白資料挖掘演演算法

導讀:本文以女大學生相親為例,對預測性資料挖掘演演算法的實際應用做簡要介紹。

 

 

作者:常國珍,趙仁乾,張秋劍

如需轉載請聯絡大資料(ID:hzdashuju)

 

 

 

01 決策樹

 

如圖1-11所示的樹狀圖展現了當代女大學生相親的決策行為。其考慮的首要因素的是長相,其他考慮因素依次為專業、年齡差和星座,同意與否都根據相應變數的取值而定。

決策樹演演算法模擬了上述的決策行為,按照這些要求,可以對候選相親男性的資料進行分類預測,然後根據預測結果找出女大學生心儀的男性。

 

▲圖1-11 當代女大學生相親的決策樹演演算法示意

 

 

02 KNN演演算法

 

決策樹以女性相親為例,那麼對於一個在婚戀交友網站註冊的男性,如何預測該男性的相親成功率呢?這裡使用KNN演演算法(K-NearestNeighor,最鄰近演演算法)進行預測。

 

▲圖1-12 婚戀網站KNN演演算法示意(黑色點代表成功約會的人)

 

這裡採用三個變數或屬性來描述一個男性,即收入、背景和長相。

在已有的資料中,深灰色點代表相親成功的人,白點代表相親不成功的人,中間連線線條的黑點代表一個新來的男性,KNN演演算法在預測這個新人相親是否成功時,會找到他和附近的K個點,並根據這些點是否相親成功來設定新人約會成功的機率。

比如圖1-12中黑點與兩個深灰色點、一個白點最近,因此該點相親成功的可能性佔2/3。

 

KNN演演算法屬於惰性演演算法,其特點是不事先建立全域性的判別公式或規則。當新資料需要分類時,根據每個樣本和原有樣本之間的距離,取最近K個樣本點的眾數(Y為分類變數)或均值(Y為連續變數)作為新樣本的預測值。該預測方法體現了一句中國的老話“近朱者赤,近墨者黑”。

 

 

03 Logistic回歸

 

若每個新註冊的男性都要和過去每個男性的相親經歷比較才能預測相親成功率就太麻煩了,那麼有沒有一種評分方法,可以根據之前男性相親成敗的資料,建立一種為新人打分的評分機制,再根據分值預測新人是否會約會成功呢?有的,這種評分機制的演演算法模型是Logistic回歸。

 

▲圖1-13 邏輯回歸演演算法示意

 

 

將以往男性相親是否成功的情況作為標準(打分),分值越高,相親成功的可能性就越高,這個打分自然和廣大女性考慮的重要因素相關,比如收入、長相等。

 

本案例將男性的收入與長相作為自變數,將相親是否成功作為預測變數,構建Logistic回歸模型。圖1-13中白點代表相親成功,可以看出隨著長相與收入的提升,相親成功的機率越來越高。

 

這裡Logistic回歸擬合了P(y=1)的等高線。該值越高,說明相親成功的機率越高。

 

 

04 神經網路

 

Logistic回歸做出的等高線有可能是不精確的。大家都知道,在相親決策中,長相和收入不是等比換算的。比如收入很高的男性,只要長相不太差,那麼約會成功的可能性非常高;而長相很出色的男性即使收入不高,也會被青睞。

為了得到這種精確的預測結果,神經網路被髮明和運用。以神經網路為例,該方法不是沿著機率的變化方向做標尺,而是與機率變化方向垂直的方向做劃分。

如果資料是空間線性可分的,則如圖1-14a所示,隨機地以一條直線作為模型判斷依據。如果資料是空間非線性可分的,則會得到解釋因素和結果之間複雜的關係。從圖1-14b中可以看出,神經網路並不像Logistic回歸那樣對資料進行線性劃分,而是對資料進行非線性劃分,這也是神經網路的一大特點。

 

▲圖1-14 神經網路演演算法示意

 

 

05 支援向量機

 

支援向量機和神經網路很相似。但是神經網路的劃分依據是隨機產生的,不是預測風險最小的分割方式。支援向量機本質上是形成一個超平面對資料點進行分割,但並不是所有的點對形成超平面的作用都很重要。

比如對於長相和收入得分都很高的男性來說,相親成功的可能性很高,而長相和收入得分都很低的男性相親成功的可能性則很低。我們不需要太關註這類男性,而是把重點放在超平面附近的那些男性上,這就是支援向量機的基本思想,這些超平面附近的點即是“支援點”。

 

支援向量機旨在尋找一個高維超平面,從而能夠劃分開低維度下相親成功與不成功的點,達到分類預測的目的。另外,一些資料在低維空間中會有線性不可分的問題,此時支援向量機可以將資料在形式上進行升維處理,從而能夠在高維空間中輕鬆劃分資料,如圖1-15所示。

 

▲圖1-15 支援向量機示意

 

 

06 整合學習

 

大家考慮一下,通常女性決定和誰約會是自己決定的嗎?一意孤行的決定往往不會幸福,透過七大姑八大姨集體討論定出的人選往往是不會錯的。這個思想在統計學中被證明是有效的。

如圖1-16a所示,左上圖是某隨機變數的原始的分佈,左下圖是反覆抽樣後,樣本均值的分佈。後者的離散情況明顯低於前者,科學家證明樣本均值方差等於樣本的方差除以樣本量的開平方。

複雜的模型偏差小而方差大。如圖1-16b的右圖所示,每個基模型的預測方差較大,可以透過做多個複雜的模型同時作預測,取預測的均值作為最終模型的預測值,可以在保持模型偏差不增加的情況下,有效地降低整體模型預測方差。

 

▲圖1-16 組合演演算法的原理

 

這就是整合學習(也被稱為組合方法) 的思想,該類方法被認為是預測能力最強、最穩健的模型,其原理體現了“兼聽則明”的傳統觀點。

該方法不求做出一個大而準的模型,而是透過反覆的自抽樣,構造不同的分類模型,每個小模型都可以是決策樹或神經網路等,每個小模型使用的方法也都可以不一樣。每個預測樣本的打分為所有模型預測的均值或眾數,作為整合學習的最終結果。其操作如圖1-17 所示。

 

▲圖1-17 組合演演算法示意

 

 

07 預測類模型講解

 

預測類模型根據被解釋變數的度量型別,分為對連續變數建模的回歸,對分類變數建模的分類器,其中以二分類器為主。這裡的回歸不是僅有線性回歸,還有回歸決策樹、回歸神經網路,甚至最近鄰域(KNN)和支援向量機(SVM)也可以做回歸,不過由於商業中後兩者並不常用。

而大家常聽到的邏輯回歸屬於分類模型,不屬於回歸,這個名稱的問題是統計學和機器學習的學科差異造成的。

 

分類器演演算法也很多,其中最主要的是二分類器。至於多分類器,由於其統計學中的功(power)比較低(指犯第二類統計錯誤的機率較高,用白話說就是模型不靠譜),因此多用作示意講解,很少直接用於做預測。實際工作中把多分類問題轉化為多個二分類模型來實現。

 

人類在日常生活中會遇到形形色色的分類問題。比如小孩在識物時,父母與老師都會耐心地拿著圖片告訴小孩這是蘋果,那是梨子,可以透過形狀、顏色對它們加以區分。

人類在進行分類識別時,是根據已知的經驗,加上歸納,形成一套事物的分類規則,這樣就能夠比較容易辨識與推斷陌生的事物了。分類器的工作機制與人類對事物進行分類的過程非常類似,它根據已知類別的樣本形成規則,然後對未知類別樣本進行分類。

常見的分類器包括Logistic回歸、分類決策樹、神經網路、支援向量機、樸素貝葉斯等。

 

以下我們重點講解二分類器。基於訓練樣本的規則,分類器可以對未知分類的資料進行分類預測,根據業務場景以及模型原理的不同,可以將二分類器分為兩類:

 

1. 排序類分類器(業內稱為評分卡模型)

 

這種分類器在進行預測時,輸出的結果是類別的機率。對應到實際業務場景中,即難以以一個普適的標準定義研究標的的類別,換言之,標的的類別不能被穩定地辨識。

例如,在汽車違約貸款模型中,客戶逾期多長時間不還款能被定義為違約?在客戶營銷響應模型中,營銷多長時間後客戶產生購買行為被定義為響應?在客戶流失預測模型中,客戶多久不產生業務往來算是流失?

這種問題使用排序類分類器較合理,因為這種分類器可以表示事物發生的可能或傾向性。排序類分類器的常見方法包括Logistic回歸、決策樹、神經網路等。

 

排序模型一個重要的特徵是對行為結果建模。行為是內心決策的外部表現,理性的人在做一項決定時需要考慮效用(心理上的滿足感或實際的收益)與成本。

比如客戶營銷響應模型中,客戶付出的成本是產品的價格,一般而言所有客戶面臨的價格是統一的,而客戶的效用各有不同,只有客戶認為其購買的產品帶來的效用高於成本,才會購買。

由於需要待建模的事件有這個明顯特點,因此排序模型建模的全流程都體現出被研究物件(排序模型只研究有思維能力的人或動物,不研究事物的反應)對成本與效用這對矛盾的權衡。

比如信用模型中由於客戶貸款後的效用是給定的(客戶拿到貸款一萬元,則其收益就是一萬),而每個人的違約成本不一樣,其中收入穩定性、社會關係豐富程度都是直接反映客戶違約成本的變數,比如客戶通訊錄中經常通訊的聯絡人越多,代表其社會關係越豐富,越不會因為一萬元不還而藏匿起來,失去其社會關係。

 

排序類模型往往會融入到商業決策中,是對客戶傾向性高低的一個度量工具。這類問題的商業需求不是為了精確預測被研究個體實際上是否一定購買或違約的真實結果,因為這裡就不存在這個真實結果的統一定義,而需要的是一個準確的排序能力。

這類模型對變數要求很高,而對演演算法要求不高,Logistic回歸和決策樹由於可解釋性強,便於商業理解並形成策略,因此被廣泛使用。神經網路模型一般用於評估資料的可用性。

這裡需要強調一下,不是可以出預測機率的演演算法都適用於排序模型,比如SVM模型也可以出機率,但是該演演算法的強項是做分類,在預測機率方面並不擅長。

 

2. 決策類分類器

 

這種分類器進行分類預測時將會輸出準確的類別而非類別的機率。對應到實際的業務場景中,即研究標的的類別是有普遍標準的,能夠被清晰辨識。

例如,在客戶交易欺詐類模型中,交易欺詐是一種被法律定義的違法行為,一旦滿足既定標準,客戶的行為就會被定義為欺詐;在影象識別中,識別結果也是一個可以被明確定義的類別。決策類分類器的常見方法有貝葉斯網路、最近領域(KNN演演算法)、SVM、深度學習等。

 

排序類演演算法適用於被解釋變數是人為定義的情況,比如信用評分、流失預測、營銷響應。決策類演演算法適用於被解釋變數是客觀存在的、非人為定義的,比如交易欺詐(欺詐屬於犯罪行為,只要花時間追查,總是有最終定論的)、人臉識別、聲音識別等。分類器如圖1-18所示。

 

▲圖1-18對二分類模型的進一步劃分

 

 

08 預測類模型評估概述

 

根據以上講解的回歸、二分類器,不同的演演算法選擇不同的評估指標。主要指標見表1-4。

 

▲表1-4 分類模型型別與評估統計指標的選擇

其中決策類模型主要關註於二分類的準確性等指標,排序類模型關心對傾向性排序的一致性。回歸模型關心的是預測值與實際值之間的差異。以上是預測類模型評估的簡介。

 

關於作者:常國珍,資料科學專家和金融技術專家。北京大學會計學博士,中國大資料產業生態聯盟專家委員會委員。趙仁乾,資料科學家,在電信大資料和機器學習領域有豐富的實踐經驗。張秋劍,大資料專家和金融行業技術專家,上海師範大學電腦科學技術碩士。 

本文摘編自《Python資料科學:技術詳解與商業實踐》,經出版方授權釋出。

延伸閱讀《Python資料科學

點選上圖瞭解及購買

轉載請聯絡微信:DoctorData

推薦語:本書從3個維度展開,技術維度:全面講解資料分析、資料挖掘和機器學習的核心技術;業務維度,圍繞具體的業務生命週期展開技術知識點的講解;實踐維度,列舉的全部是商業案例,透過案例為資料科學從業者提供工作模板。

贊(0)

分享創造快樂