第6章 構(gòu)建模型_第1頁
第6章 構(gòu)建模型_第2頁
第6章 構(gòu)建模型_第3頁
第6章 構(gòu)建模型_第4頁
第6章 構(gòu)建模型_第5頁
已閱讀5頁,還剩92頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

構(gòu)建模型1聚類分析目錄分類與回歸2經(jīng)過數(shù)據(jù)探索與數(shù)據(jù)預(yù)處理部分,得到了可以直接建模的數(shù)據(jù)。根據(jù)挖掘目標(biāo)和數(shù)據(jù)形式可以建立分類與預(yù)測、聚類分析、關(guān)聯(lián)規(guī)則、時序模式、偏差檢測、智能推薦等模型,幫助企業(yè)提取數(shù)據(jù)中蘊(yùn)含的商業(yè)價值,提高企業(yè)的競爭力。挖掘建模就餐飲企業(yè)而言,經(jīng)常會碰到這樣的問題:1)如何基于菜品歷史銷售情況,以及節(jié)假日、氣候和競爭對手等影響因素,對菜品銷量進(jìn)行趨勢預(yù)測?2)如何預(yù)測在未來一段時間哪些顧客會流失,哪些顧客最有可能會成為VIP客戶?3)如何預(yù)測一種新產(chǎn)品的銷售量,以及該產(chǎn)品在哪種類型的客戶中會較受歡迎?除此之外,餐廳經(jīng)理需要通過數(shù)據(jù)分析了解具有某些特征的顧客的消費(fèi)習(xí)慣;餐飲企業(yè)老板希望知道下個月的銷售收入,原材料采購需要投入多少,這些都是分類與預(yù)測的例子。分類與回歸分類和預(yù)測是預(yù)測問題的兩種主要類型。分類主要是預(yù)測分類標(biāo)號(離散、無序的),而預(yù)測主要是建立連續(xù)值函數(shù)模型,預(yù)測給定自變量的條件下因變量的值分類:是構(gòu)造一個分類模型,輸入樣本的屬性值,輸出對應(yīng)的類別,將每個樣本映射到預(yù)先定義好的類別。分類模型建立在已有類標(biāo)記的數(shù)據(jù)集上,模型在已有樣本上的準(zhǔn)確率可以方便地計(jì)算,所以分類屬于有監(jiān)督的學(xué)習(xí)。實(shí)現(xiàn)過程下圖將銷售量分為“高”“中”“低”三類,其中空心圓圈代表“高”,加號代表“中”,實(shí)心點(diǎn)代表“低”。預(yù)測:確定兩種或兩種以上變量間相互依賴的函數(shù)模型,然后進(jìn)行預(yù)測或控制。實(shí)現(xiàn)過程分類和預(yù)測的實(shí)現(xiàn)過程類似,以分類模型為例,其實(shí)現(xiàn)過程如圖:實(shí)現(xiàn)過程分類算法有兩步過程:第一步是學(xué)習(xí)步,通過歸納分析訓(xùn)練樣本集來建立分類模型得到分類規(guī)則;第二步是分類步,先用已知的檢驗(yàn)樣本集評估分類規(guī)則的準(zhǔn)確率,如果準(zhǔn)確率是可以接受的,則使用該模型對未知類標(biāo)號的待測樣本集進(jìn)行預(yù)測。預(yù)測模型的實(shí)現(xiàn)也有兩步,類似于分類模型,第一步是通過訓(xùn)練集建立預(yù)測屬性(數(shù)值型的)的函數(shù)模型,第二步是預(yù)測,模型通過檢驗(yàn)后再進(jìn)行預(yù)測或控制。實(shí)現(xiàn)過程實(shí)現(xiàn)過程主要分類與回歸算法簡介:常用的分類與回歸算法算法名稱算法描述回歸分析回歸分析是確定預(yù)測屬性(數(shù)值型)與其他變量間相互依賴的定量。關(guān)系的最常用的統(tǒng)計(jì)學(xué)方法。包括線性回歸、非線性回歸、Logistic回歸、嶺回歸、主成分回歸、偏最小二乘回歸等模型。決策樹它采用自頂向下的遞歸方式,在決策樹的內(nèi)部結(jié)點(diǎn)進(jìn)行屬性值的比較,并根據(jù)不同的屬性值從該結(jié)點(diǎn)向下分支,葉結(jié)點(diǎn)是要學(xué)習(xí)劃分的類。人工神經(jīng)網(wǎng)絡(luò)一種模仿大腦神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)和功能而建立的信息處理系統(tǒng),表示神經(jīng)網(wǎng)絡(luò)的輸入與輸出變量之間關(guān)系的模型。貝葉斯網(wǎng)絡(luò)貝葉斯網(wǎng)絡(luò)又稱信度網(wǎng)絡(luò),是Bayes方法的擴(kuò)展,是目前不確定知識表達(dá)和推理領(lǐng)域最有效的理論模型之一。支持向量機(jī)SVM支持向量機(jī)根據(jù)有限的樣本信息在模型的復(fù)雜性和學(xué)習(xí)能力之間尋求最佳折衷,以獲得最好的推廣能力?;貧w分析是通過建立模型來研究變量之間的密切程度、結(jié)構(gòu)狀態(tài)及進(jìn)行模型預(yù)測的一種有效工具,在工商管理、經(jīng)濟(jì)、社會、醫(yī)學(xué)和生物學(xué)等領(lǐng)域應(yīng)用十分廣泛。從19世紀(jì)初高斯提出最小二乘估計(jì)算起,回歸分析的歷史已有200多年。從經(jīng)典的回歸分析方法到近代的回歸分析方法,按照研究方法劃分,回歸分析研究的范圍大致如下:回歸分析回歸分析研究的范圍大致如下:回歸分析在數(shù)據(jù)挖掘環(huán)境下,自變量與因變量具有相關(guān)關(guān)系,自變量的值是已知的,因變量是要預(yù)測的。常用的回歸模型如下:回歸分析回歸模型適用條件算法描述線性回歸因變量與自變量是線性關(guān)系對一個或多個自變量和因變量之間的線性關(guān)系進(jìn)行建模,可用最小二乘法求解模型系數(shù)。非線性回歸因變量與自變量之間不都是線性關(guān)系對一個或多個自變量和因變量之間的非線性關(guān)系進(jìn)行建模。如果非線性關(guān)系可以通過簡單的函數(shù)變換轉(zhuǎn)化成線性關(guān)系,用線性回歸的思想求解;如果不能轉(zhuǎn)化,用非線性最小二乘方法求解。Logistic回歸因變量的一般有1-0(是否)兩種取值是廣義線性回歸模型的特例,利用Logistic函數(shù)將因變量的取值范圍控制在0和1之間,表示取值為1的概率。嶺回歸參與建模的自變量之間具有多重共線性是一種改進(jìn)最小二乘估計(jì)的方法。主成分回歸參與建模的自變量之間具有多重共線性主成分回歸是根據(jù)主成分分析的思想提出來的,是對最小二乘法的一種改進(jìn),它是參數(shù)估計(jì)的一種有偏估計(jì)??梢韵宰兞恐g的多重共線性。線性回歸模型是相對簡單的回歸模型,但是通常因變量和自變量之間呈現(xiàn)某種曲線關(guān)系,就要建立非線性回歸模型。Logistic回歸屬于概率型非線性回歸,分為二分類和多分類的回歸模型。對于二分類的Logistic回歸,因變量y只有“是”“否”兩個取值,記為1和0。假設(shè)在自變量作用下,y取“是”的概率是p,則取“否”的概率是1-p,研究的是當(dāng)y取“是”發(fā)生的概率p與自變量的關(guān)系。當(dāng)自變量之間出現(xiàn)多重共線性時,用最小二乘估計(jì)估計(jì)的回歸系數(shù)將會不準(zhǔn)確,消除多重共線性的參數(shù)改進(jìn)的估計(jì)方法主要有嶺回歸和主成分回歸。下面就較常用的二分類的Logistic回歸模型的原理展開介紹?;貧w分析Logistic函數(shù)二分類的Logistic回歸模型中的因變量的只有1-0(如是和否、發(fā)生和不發(fā)生)兩種取值。假設(shè)在個獨(dú)立自變量作用下,記取1的概率是,取0概率是,取1和取0的概率之比為,稱為事件的優(yōu)勢比(odds),對odds取自然對數(shù)即得Logistic變換:令,則,即為Logistic函數(shù)?;貧w分析Logistic函數(shù)如下圖:當(dāng)p在(0,1)之間變化時,odds的取值范圍是,的取值范圍是?;貧w分析Logistic回歸模型Logistic回歸模型是建立與自變量的線性回歸模型。Logistic回歸模型為:因?yàn)榈娜≈捣秶?,這樣,自變量可在任意范圍內(nèi)取值。記,得到:回歸分析Logistic回歸模型解釋

:在沒有自變量,即

全部取0,與發(fā)生概率之比的自然對數(shù);:某自變量變化時,即與相比,優(yōu)勢比的對數(shù)值?;貧w分析Logistic回歸建模步驟Logistic回歸模型的建模步驟如圖所示回歸分析根據(jù)分析目的設(shè)置指標(biāo)變量(因變量和自變量),然后收集數(shù)據(jù),根據(jù)收集到的數(shù)據(jù),對特征再次進(jìn)行篩選取1的概率是,取0概率是1-p。用和自變量列出線性回歸方程,估計(jì)出模型中的回歸系數(shù)。進(jìn)行模型檢驗(yàn)。模型有效性的檢驗(yàn)指標(biāo)有很多,最基本的有正確率,其次有混淆矩陣、ROC曲線、KS值等。模型應(yīng)用。輸入自變量的取值,就可以得到預(yù)測變量的值,或者根據(jù)預(yù)測變量的值去控制自變量的取值?;貧w分析決策樹方法在分類、預(yù)測、規(guī)則提取等領(lǐng)域有著廣泛應(yīng)用。在20世紀(jì)70年代后期和80年代初期,機(jī)器學(xué)習(xí)研究者羅斯·昆蘭(J.RossQuinilan)提出了ID3算法以后,決策樹在機(jī)器學(xué)習(xí)、數(shù)據(jù)挖掘鄰域得到極大的發(fā)展。昆蘭后來又提出了C4.5,成為新的監(jiān)督學(xué)習(xí)算法的性能比較基準(zhǔn)。1984年幾位統(tǒng)計(jì)學(xué)家提出了CART分類算法。ID3和ART算法大約同時被提出,但都是采用類似的方法從訓(xùn)練元組中學(xué)習(xí)決策樹。決策樹是樹狀結(jié)構(gòu),它的每一個樹結(jié)點(diǎn)可以是葉節(jié)點(diǎn),對應(yīng)著某一類,也可以對應(yīng)著一個劃分,將該節(jié)點(diǎn)對應(yīng)的樣本集劃分成若干個子集,每個子集對應(yīng)一個節(jié)點(diǎn)。對一個分類問題,從已知類標(biāo)記的訓(xùn)練元組學(xué)習(xí)并構(gòu)造出決策樹是一個從上至下,分而治之的過程。決策樹常用的決策樹算法如下表所示,本節(jié)將詳細(xì)介紹ID3算法,也是最經(jīng)典的決策樹分類算法。決策樹決策樹算法算法描述ID3算法其核心是在決策樹的各級節(jié)點(diǎn)上,使用信息增益方法作為屬性的選擇標(biāo)準(zhǔn),來幫助確定生成每個節(jié)點(diǎn)時所應(yīng)采用的合適屬性。C4.5算法C4.5決策樹生成算法相對于ID3算法的重要改進(jìn)是使用信息增益率來選擇節(jié)點(diǎn)屬性。C4.5算法可以克服ID3算法存在的不足:ID3算法只適用于離散的描述屬性,而C4.5算法既能夠處理離散的描述屬性,也可以處理連續(xù)的描述屬性。CART算法CART決策樹是一種十分有效的非參數(shù)分類和回歸方法,通過構(gòu)建樹、修剪樹、評估樹來構(gòu)建一個二叉樹。當(dāng)終結(jié)點(diǎn)是連續(xù)變量時,該樹為回歸樹;當(dāng)終結(jié)點(diǎn)是分類變量,該樹為分類樹。ID3算法基于信息熵來選擇最佳測試屬性。它選擇當(dāng)前樣本集中具有最大信息增益值的屬性作為測試屬性。樣本集的劃分則依據(jù)測試屬性的取值進(jìn)行,測試屬性有多少不同取值就將樣本集劃分為多少子樣本集,同時,決策樹上相應(yīng)于該樣本集的節(jié)點(diǎn)長出新的葉子節(jié)點(diǎn)。ID3算法根據(jù)信息理論,采用劃分后樣本集的不確定性作為衡量劃分好壞的標(biāo)準(zhǔn),用信息增益值度量:信息增益值越大,不確定性越小。因此,ID3算法在每個非葉節(jié)點(diǎn)選擇信息增益最大的屬性作為測試屬性。該屬性得到當(dāng)前情況下最優(yōu)的拆分,從而得到較小的決策樹。決策樹1.ID3算法簡介及基本原理設(shè)S是s個數(shù)據(jù)樣本的集合。假定類別屬性具有m個不同的值:。設(shè)是類中的樣本數(shù)。對一個給定的樣本,它總的信息熵為式。其中,是任意樣本屬于的概率,一般可以用估計(jì)。決策樹設(shè)一個屬性A具有k個不同的值,利用屬性A將集合S劃分為k個子集,其中包含了集合S中屬性A取值的樣本。若選擇屬性A為測試屬性,則這些子集就是從集合S的節(jié)點(diǎn)生長出來的新的葉節(jié)點(diǎn)。設(shè)是子集中類別為的樣本數(shù),則根據(jù)屬性A劃分樣本的信息熵值如式所示。其中,,是子集中類別為的樣本的概率。決策樹最后,用屬性A劃分樣本集S后所得的信息增益(Gain)如式所示。顯然E(A)越小,Gain(A)的值越大,說明選擇測試屬性A對于分類提供的信息越大,選擇A之后對分類的不確定程度越小。屬性A的k個不同的值對應(yīng)的樣本集S的k個子集或分支,通過遞歸調(diào)用上述過程(不包括己經(jīng)選擇的屬性),生成其他屬性作為節(jié)點(diǎn)的子節(jié)點(diǎn)和分支來生成整個決策樹。ID3決策樹算法作為一個典型的決策樹學(xué)習(xí)算法,其核心是在決策樹的各級節(jié)點(diǎn)上都用信息增益作為判斷標(biāo)準(zhǔn)來進(jìn)行屬性的選擇,使得在每個非葉節(jié)點(diǎn)上進(jìn)行測試時,都能獲得最大的類別分類增益,使分類后的數(shù)據(jù)集的熵最小。這樣的處理方法使得樹的平均深度較小,從而有效地提高了分類效率。決策樹ID3算法的具體詳細(xì)實(shí)現(xiàn)步驟如下。對當(dāng)前樣本集合,計(jì)算所有屬性的信息增益。選擇信息增益最大的屬性作為測試屬性,把測試屬性取值相同的樣本劃為同一個子樣本集。若子樣本集的類別屬性只含有單個屬性,則分支為葉子節(jié)點(diǎn),判斷其屬性值并標(biāo)上相應(yīng)的符號,然后返回調(diào)用處;否則對子樣本集遞歸調(diào)用本算法。決策樹2.ID3算法具體流程下面將結(jié)合餐飲案例實(shí)現(xiàn)ID3的具體實(shí)施步驟。T餐飲企業(yè)作為大型連鎖企業(yè),生產(chǎn)的產(chǎn)品種類比較多,另外涉及的分店所處的位置也不同,數(shù)目比較多。對于企業(yè)的高層來講,了解周末和非周末銷量是否有大的區(qū)別,以及天氣、促銷活動這些因素是否能夠影響門店的銷量這些信息至關(guān)重要。因此,為了讓決策者準(zhǔn)確了解和銷量有關(guān)的一系列影響因素,需要構(gòu)建模型來分析天氣、是否周末和是否有促銷活動對銷量的影響,下面以單個門店來進(jìn)行分析。決策樹對于天氣屬性,數(shù)據(jù)源中存在多種不同的值,這里將那些屬性值相近的值進(jìn)行類別整合。如天氣為“多云”“多云轉(zhuǎn)晴”“晴”這些屬性值相近,均是適宜外出的天氣,不會對產(chǎn)品銷量有太大的影響,因此將它們?yōu)橐活?,天氣屬性值設(shè)置為“好”,同理“雨”“小到中雨”等天氣,均是不適宜外出的天氣,因此將它們?yōu)橐活?,天氣屬對于是否周末屬性,周末則設(shè)置為“是”,非周末則設(shè)置為“否”。對于是否有促銷活動屬性,有促銷則設(shè)置為“是”,無促銷則設(shè)置為“否”。產(chǎn)品的銷售數(shù)量為數(shù)值型,需要對屬性進(jìn)行離散化,將銷售數(shù)據(jù)劃分為“高”和“低”兩類。將其平均值作為分界點(diǎn),大于平均值的劃分到類別“高”,小于平均值的劃分為“低”類別。決策樹對餐飲案例數(shù)據(jù)進(jìn)行以上的處理,得到處理后數(shù)據(jù)集如表所示。決策樹序號天氣是否周末是否有促銷銷量1壞是是高2壞是是高3壞是是高4壞否是高…………………………32好否是低33好否否低34好否否低采用ID3算法構(gòu)建決策樹模型的具體步驟如下。(1)計(jì)算總的信息熵,其中數(shù)據(jù)中總記錄數(shù)為34,而銷售數(shù)量為“高”的數(shù)據(jù)有18,“低”的有16。(2)計(jì)算每個測試屬性的信息熵。決策樹對于天氣屬性,其屬性值有“好”和“壞”兩種。其中天氣為“好”的條件下,銷售數(shù)量為“高”的記錄為11,銷售數(shù)量為“低”的記錄為6,可表示為(11,6);天氣為“壞”的條件下,銷售數(shù)量為“高”的記錄為7,銷售數(shù)量為“低”的記錄為10,可表示為(7,10)。則天氣屬性的信息熵計(jì)算過程如下。決策樹對于是否周末屬性,其屬性值有“是”和“否”兩種。其中是否周末屬性為“是”的條件下,銷售數(shù)量為“高”的記錄為11,銷售數(shù)量為“低”的記錄為3,可表示為(11,3);是否周末屬性為“否”的條件下,銷售數(shù)量為“高”的記錄為7,銷售數(shù)量為“低”的記錄為13,可表示為(7,13)。則節(jié)假日屬性的信息熵計(jì)算過程如下。決策樹對于是否有促銷屬性,其屬性值有“是”和“否”兩種。其中是否有促銷屬性為“是”的條件下,銷售數(shù)量為“高”的記錄為15,銷售數(shù)量為“低”的記錄為7,可表示為(15,7);其中是否有促銷屬性為“否”的條件下,銷售數(shù)量為“高”的記錄為3,銷售數(shù)量為“低”的記錄為9,可表示為(3,9)。則是否有促銷屬性的信息熵計(jì)算過程如下。決策樹(3)計(jì)算天氣、是否周末和是否有促銷屬性的信息增益值。決策樹(4)由步驟(3)的計(jì)算結(jié)果可以知道是否周末屬性的信息增益值最大,它的兩個屬性值“是”和“否”作為該根結(jié)點(diǎn)的兩個分支。然后按照步驟(1)到步驟(3)所示步驟繼續(xù)對該根結(jié)點(diǎn)的3個分支進(jìn)行結(jié)點(diǎn)的劃分,針對每一個分支結(jié)點(diǎn)繼續(xù)進(jìn)行信息增益的計(jì)算,如此循環(huán)反復(fù),直到?jīng)]有新的結(jié)點(diǎn)分支,最終構(gòu)成一棵決策樹。生成的決策樹模型如圖所示。決策樹從圖的決策樹模型可以看出,門店的銷售高低和各個屬性之間的關(guān)系,并可以提取出以下決策規(guī)則:若周末屬性為“是”,天氣為“好”,則銷售數(shù)量為“高”。若周末屬性為“是”,天氣為“壞”,促銷屬性為“是”,則銷售數(shù)量為“高”。若周末屬性為“是”,天氣為“壞”,促銷屬性為“否”,則銷售數(shù)量為“低”。若周末屬性為“否”,促銷屬性為“否”,則銷售數(shù)量為“低”。若周末屬性為“否”,促銷屬性為“是”,天氣為“好”,則銷售數(shù)量為“高”。若周末屬性為“否”,促銷屬性為“是”,天氣為“壞”,則銷售數(shù)量為“低”。決策樹由于ID3決策樹算法采用了信息增益作為選擇測試屬性的標(biāo)準(zhǔn),會偏向于選擇取值較多的即所謂高度分支屬性,而這類屬性并不一定是最優(yōu)的屬性。同時ID3決策樹算法只能處理離散屬性,對于連續(xù)型的屬性,在分類前需要對其進(jìn)行離散化。為了解決傾向于選擇高度分支屬性的問題,人們采用信息增益率作為選擇測試屬性的標(biāo)準(zhǔn),這樣便得到C4.5決策樹算法。此外常用的決策樹算法還有CART算法、SLIQ算法、SPRINT算法和PUBLIC算法等等。決策樹針對處理后的數(shù)據(jù)集建立基于信息熵的決策樹模型,預(yù)測銷量的高低,得到一個tree.dot的文本文件,文本具體內(nèi)容如表所示。決策樹文本文件名文本內(nèi)容tree.dotdigraphTree{edge[fontname="SimHei"];/*添加這兩行,指定中文字體(這里是黑體)*/node[fontname="SimHei"];/*添加這兩行,指定中文字體(這里是黑體)*/0[label="是否周末<=0.0000\nentropy=0.997502546369\nsamples=34",shape="box"];1[label="是否有促銷<=0.0000\nentropy=0.934068055375\nsamples=20",shape="box"];…}將tree.dot文件保存為UTF-8格式。為了進(jìn)一步將它轉(zhuǎn)換為可視化格式,需要安裝Graphviz(跨平臺的、基于命令行的繪圖工具),然后在命令行中以如下方式編譯。得到?jīng)Q策樹的可視化圖如圖所示。決策樹人工神經(jīng)網(wǎng)絡(luò)(ArtificialNeuralNetworks,ANNs),是模擬生物神經(jīng)網(wǎng)絡(luò)進(jìn)行信息處理的一種數(shù)學(xué)模型。它以對大腦的生理研究成果為基礎(chǔ),其目的在于模擬大腦的某些機(jī)理與機(jī)制,實(shí)現(xiàn)一些特定的功能。1943年,美國心理學(xué)家麥卡洛克(McCulloch)和數(shù)學(xué)家皮茨(Pitts)聯(lián)合提出了形式神經(jīng)元的數(shù)學(xué)模型MP模型,證明了單個神經(jīng)元能執(zhí)行邏輯功能,開創(chuàng)了人工神經(jīng)網(wǎng)絡(luò)研究的時代。1957年,計(jì)算機(jī)科學(xué)家羅森布拉特(Rosenblatt)用硬件完成了最早的神經(jīng)網(wǎng)絡(luò)模型,即感知器,并用來模擬生物的感知和學(xué)習(xí)能力。1969年明斯基(M.Minsky)等仔細(xì)分析了以感知器為代表的神經(jīng)網(wǎng)絡(luò)系統(tǒng)的功能及局限后,出版了Perceptron(《感知器》)一書,指出感知器不能解決高階謂詞問題,人工神經(jīng)網(wǎng)絡(luò)的研究進(jìn)入一個低谷期。20世紀(jì)80年代以后,超大規(guī)模集成電路、腦科學(xué)、生物學(xué)、光學(xué)的迅速發(fā)展為人工神經(jīng)網(wǎng)絡(luò)的發(fā)展打下了基礎(chǔ),人工神經(jīng)網(wǎng)絡(luò)的發(fā)展進(jìn)入興盛期。人工神經(jīng)網(wǎng)絡(luò)人工神經(jīng)元是人工神經(jīng)網(wǎng)絡(luò)操作的基本信息處理單位。人工神經(jīng)元的模型如圖所示,它是人工神經(jīng)網(wǎng)絡(luò)的設(shè)計(jì)基礎(chǔ)。一個人工神經(jīng)元對輸入信號的輸出y為,其中。人工神經(jīng)網(wǎng)絡(luò)激活函數(shù)表達(dá)形式圖形解釋說明域值函數(shù)(階梯函數(shù))當(dāng)函數(shù)的自變量小于0時,函數(shù)的輸出為0;當(dāng)函數(shù)的自變量大于或等于0時,函數(shù)的輸出為1,用該函數(shù)可以把輸入分成兩類。分段線性函數(shù)該函數(shù)在(-1,+1)線性區(qū)內(nèi)的放大系數(shù)是一致的,這種形式的激活函數(shù)可以看作是非線性放大器的近似。非線性轉(zhuǎn)移函數(shù)單極性S型函數(shù)為實(shí)數(shù)域R到[0,1]閉集的連續(xù)函數(shù),代表了連續(xù)狀態(tài)型神經(jīng)元模型。其特點(diǎn)是函數(shù)本身及其導(dǎo)數(shù)都是連續(xù)的,能夠體現(xiàn)數(shù)學(xué)計(jì)算上的優(yōu)越性。Relu函數(shù)這是近年來提出的激活函數(shù),它具有計(jì)算簡單、效果更佳的特點(diǎn),目前已經(jīng)有取代其他激活函數(shù)的趨勢。本書的神經(jīng)網(wǎng)絡(luò)模型大量使用了該激活函數(shù)。人工神經(jīng)網(wǎng)絡(luò)常見的激活函數(shù)及其說明,如表所示。人工神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)也稱為訓(xùn)練,指的是神經(jīng)網(wǎng)絡(luò)在受到外部環(huán)境的刺激下調(diào)整神經(jīng)網(wǎng)絡(luò)的參數(shù),使神經(jīng)網(wǎng)絡(luò)以一種新的方式對外部環(huán)境作出反應(yīng)的一個過程。在分類與預(yù)測中,人工神將網(wǎng)絡(luò)主要使用有指導(dǎo)的學(xué)習(xí)方式,即根據(jù)給定的訓(xùn)練樣本,調(diào)整人工神網(wǎng)絡(luò)的參數(shù)以使網(wǎng)絡(luò)輸出接近于已知的樣本類標(biāo)記或其他形式的因變量。人工神經(jīng)網(wǎng)絡(luò)在人工神經(jīng)網(wǎng)絡(luò)的發(fā)展過程中,提出了多種不同的學(xué)習(xí)規(guī)則,沒有一種特定的學(xué)習(xí)算法適用于所有的網(wǎng)絡(luò)結(jié)構(gòu)和具體問題。在分類與預(yù)測中,學(xué)習(xí)規(guī)則(誤差校正學(xué)習(xí)算法)是使用最廣泛的一種。誤差校正學(xué)習(xí)算法根據(jù)神經(jīng)網(wǎng)絡(luò)的輸出誤差對神經(jīng)元的連接強(qiáng)度進(jìn)行修正,屬于有指導(dǎo)學(xué)習(xí)。設(shè)神經(jīng)網(wǎng)絡(luò)中神經(jīng)元為輸入,神經(jīng)元為輸出神經(jīng)元,它們的連接權(quán)值為,則對權(quán)值的修正為,其中為學(xué)習(xí)率,為的偏差,即輸出神經(jīng)元的實(shí)際輸出和教師信號之差,示意圖如圖所示。人工神經(jīng)網(wǎng)絡(luò)神經(jīng)網(wǎng)絡(luò)訓(xùn)練是否完成常用誤差函數(shù)(也稱目標(biāo)函數(shù))E來衡量。當(dāng)誤差函數(shù)小于某一個設(shè)定的值時即停止神經(jīng)網(wǎng)絡(luò)的訓(xùn)練。誤差函數(shù)為衡量實(shí)際輸出向量與期望值向量誤差大小的函數(shù),常采用二乘誤差函數(shù)來定義為(或)為訓(xùn)練樣本個數(shù)。使用人工神經(jīng)網(wǎng)絡(luò)模型需要確定網(wǎng)絡(luò)連接的拓?fù)浣Y(jié)構(gòu)、神經(jīng)元的特征和學(xué)習(xí)規(guī)則等。目前,已有近40種人工神經(jīng)網(wǎng)絡(luò)模型,常用的分類和預(yù)測的人工神經(jīng)網(wǎng)絡(luò)算法如表所示。人工神經(jīng)網(wǎng)絡(luò)算法名稱算法描述BP神經(jīng)網(wǎng)絡(luò)是一種按誤差逆?zhèn)鞑ニ惴ㄓ?xùn)練的多層前饋網(wǎng)絡(luò),學(xué)習(xí)算法是δ學(xué)習(xí)規(guī)則,是目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)模型之一。LM神經(jīng)網(wǎng)絡(luò)是基于梯度下降法和牛頓法結(jié)合的多層前饋網(wǎng)絡(luò),特點(diǎn):迭代次數(shù)少,收斂速度快,精確度高。RBF徑向基神經(jīng)網(wǎng)絡(luò)RBF網(wǎng)絡(luò)能夠以任意精度逼近任意連續(xù)函數(shù),從輸人層到隱含層的變換是非線性的,而從隱含層到輸出層的變換是線性的,特別適合于解決分類問題。FNN模糊神經(jīng)網(wǎng)絡(luò)FNN模糊神經(jīng)網(wǎng)絡(luò)是具有模糊權(quán)系數(shù)或者輸入信號是模糊量的神經(jīng)網(wǎng)絡(luò),是模糊系統(tǒng)與神經(jīng)網(wǎng)絡(luò)相結(jié)合的產(chǎn)物,它匯聚了神經(jīng)網(wǎng)絡(luò)與模糊系統(tǒng)的優(yōu)點(diǎn),集聯(lián)想、識別、自適應(yīng)及模糊信息處理于一體。GMDH神經(jīng)網(wǎng)絡(luò)GMDH網(wǎng)絡(luò)也稱為多項(xiàng)式網(wǎng)絡(luò),它是前饋神經(jīng)網(wǎng)絡(luò)中常用的一種用于預(yù)測的神經(jīng)網(wǎng)絡(luò)。它的特點(diǎn)是網(wǎng)絡(luò)結(jié)構(gòu)不固定,而且在訓(xùn)練過程中不斷改變。ANFIS自適應(yīng)神經(jīng)網(wǎng)絡(luò)神經(jīng)網(wǎng)絡(luò)鑲嵌在一個全部模糊的結(jié)構(gòu)之中,在不知不覺中向訓(xùn)練數(shù)據(jù)學(xué)習(xí),自動產(chǎn)生、修正并高度概括出最佳的輸入與輸出變量的隸屬函數(shù)以及模糊規(guī)則;另外神經(jīng)網(wǎng)絡(luò)的各層結(jié)構(gòu)與參數(shù)也都具有了明確的、易于理解的物理意義。人工神經(jīng)網(wǎng)絡(luò)常用的分類和預(yù)測的人工神經(jīng)網(wǎng)絡(luò)算法BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)算法是學(xué)習(xí)規(guī)則,目標(biāo)函數(shù)采用,下面詳細(xì)介紹BP神經(jīng)網(wǎng)絡(luò)算法。反向傳播(BackPropagation,BP)算法的特征是利用輸出后的誤差來估計(jì)輸出層的直接前導(dǎo)層的誤差,再用這個誤差估計(jì)更前一層的誤差,如此一層一層地反向傳播下去,最終獲得了所有隱層(除了輸入與輸出的中間層)的誤差估計(jì)。這樣就形成了將輸出層表現(xiàn)出的誤差沿著與輸入傳送相反的方向逐級向網(wǎng)絡(luò)的輸入層傳遞的過程。這里以典型的三層BP網(wǎng)絡(luò)為例,描述標(biāo)準(zhǔn)的BP算法。圖展示的是一個有3個輸入節(jié)點(diǎn)、4個隱層節(jié)點(diǎn)、1個輸出節(jié)點(diǎn)的一個三層BP神經(jīng)網(wǎng)絡(luò)。人工神經(jīng)網(wǎng)絡(luò)BP算法的學(xué)習(xí)過程由信號的正向傳播與誤差的逆向傳播兩個過程組成。正向傳播時,輸入信號經(jīng)過隱層的處理后,傳向輸出層。若輸出層節(jié)點(diǎn)未能得到期望的輸出,則轉(zhuǎn)入誤差的逆向傳播階段,將輸出誤差按某種子形式,通過隱層向輸入層返回,并“分?jǐn)偂苯o隱層4個節(jié)點(diǎn)與輸入層三個輸入節(jié)點(diǎn),從而獲得各層單元的參考誤差或稱誤差信號,作為修改各單元權(quán)值的依據(jù)。這種信號正向傳播與誤差逆向傳播的各層權(quán)矩陣的修改過程,是周而復(fù)始進(jìn)行的。權(quán)值不斷修改的過程,也就是網(wǎng)絡(luò)的學(xué)習(xí)(或稱訓(xùn)練)過程。此過程一直進(jìn)行到網(wǎng)絡(luò)輸出的誤差逐漸減少到可接受的程度或達(dá)到設(shè)定的學(xué)習(xí)次數(shù)為止,學(xué)習(xí)過程的流程圖如圖所示。人工神經(jīng)網(wǎng)絡(luò)人工神經(jīng)網(wǎng)絡(luò)人工神經(jīng)網(wǎng)絡(luò)算法開始后,給定學(xué)習(xí)次數(shù)上限,初始化學(xué)習(xí)次數(shù)為0,對權(quán)值和閾值賦予小的隨機(jī)數(shù),一般在[-1,1]之間。輸入樣本數(shù)據(jù),網(wǎng)絡(luò)正向傳播,得到中間層與輸出層的值。比較輸出層的值與樣本目標(biāo)值之間的誤差,用誤差函數(shù)E來判斷誤差是否小于誤差上限,如不小于誤差上限,則對中間層和輸出層權(quán)值和閾值進(jìn)行更新,更新的算法為δ學(xué)習(xí)規(guī)則。更新權(quán)值和閾值后,再次將樣本數(shù)據(jù)作為輸入,得到中間層與輸出層的值,計(jì)算誤差E是否小于上限,學(xué)習(xí)次數(shù)是否到達(dá)指定值,如果達(dá)到,則學(xué)習(xí)結(jié)束。BP算法只用到均方誤差函數(shù)對權(quán)值和閾值的一階導(dǎo)數(shù)(梯度)的信息,使得算法存在收斂速度緩慢、易陷入局部極小等缺陷。為了解決這一問題,辛頓(Hinton)等人于2006年提出了非監(jiān)督貪心逐層訓(xùn)練算法,為解決深層結(jié)構(gòu)相關(guān)的優(yōu)化難題帶來希望,并以此為基礎(chǔ)發(fā)展成了如今膾炙人口的“深度學(xué)習(xí)”算法。本書中所建立的神經(jīng)網(wǎng)絡(luò),結(jié)構(gòu)跟傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)是類似的,但是求解算法已經(jīng)用了新的逐層訓(xùn)練算法。限于篇幅,本文不可能對深度學(xué)習(xí)做進(jìn)一步的講解。有興趣的讀者,請自行搜索并閱讀相關(guān)資料。人工神經(jīng)網(wǎng)絡(luò)以處理后的銷售數(shù)據(jù)集為例,對數(shù)據(jù)應(yīng)用神經(jīng)網(wǎng)絡(luò)算法預(yù)測銷量高低,建立的神經(jīng)網(wǎng)絡(luò)有3個輸入節(jié)點(diǎn)、10個隱藏節(jié)點(diǎn)和1個輸出節(jié)點(diǎn)。需要指出的是,這里的案例比較簡單,并沒有考慮過擬合的問題,即沒考慮模型的泛化能力。事實(shí)上,神經(jīng)網(wǎng)絡(luò)的擬合能力是很強(qiáng)的,容易出現(xiàn)過擬合現(xiàn)象,導(dǎo)致訓(xùn)練出來的模型泛化能力較低。跟傳統(tǒng)的添加“懲罰項(xiàng)”的做法不同,目前神經(jīng)網(wǎng)絡(luò)(尤其是深度神經(jīng)網(wǎng)絡(luò))中流行的防止過擬合的方法是隨機(jī)地讓部分神經(jīng)網(wǎng)絡(luò)節(jié)點(diǎn)休眠。分類與回歸算法評價分類與預(yù)測模型對訓(xùn)練集進(jìn)行預(yù)測而得出的準(zhǔn)確率并不能很好地反映預(yù)測模型未來的性能;為了有效判斷一個預(yù)測模型的性能表現(xiàn),需要一組沒有參與預(yù)測模型建立的數(shù)據(jù)集,并在該數(shù)據(jù)集上評價預(yù)測模型的準(zhǔn)確率,這組獨(dú)立的數(shù)據(jù)集叫測試集。模型預(yù)測效果評價,通常用相對絕對誤差、平均絕對誤差、根均方差、相對平方根誤差等指標(biāo)來衡量。分類與回歸算法評價絕對誤差與相對誤差設(shè)表示實(shí)際值,表示預(yù)測值,則稱E為絕對誤差(AbsoluteError)。

為相對誤差(RelativeError)。

有時相對誤差也用百分?jǐn)?shù)表示,這是一種直觀的誤差表示方法。

分類與回歸算法評價平均絕對誤差平均絕對誤差(MeanAbsoluteError,MAE)定義如式所示。式中,表示第個實(shí)際值與預(yù)測值的絕對誤差,表示第個實(shí)際值,表示第個預(yù)測值。由于預(yù)測誤差有正有負(fù),為了避免正負(fù)相抵消,故將誤差的絕對值進(jìn)行求和后取平均數(shù),這是誤差分析的綜合指標(biāo)法之一。分類與回歸算法評價均方誤差均方誤差(MeanSquaredError,MSE)定義如式所示均方誤差適用于還原平方失真程度。均方誤差是預(yù)測誤差平方之和的平均數(shù),它避免了正負(fù)誤差不能相加的問題。由于均方誤差對誤差E進(jìn)行了平方,加強(qiáng)了數(shù)值大的誤差在指標(biāo)中的作用,從而提高了這個指標(biāo)的靈敏性,這是均方誤差的一大優(yōu)點(diǎn)。與平均絕對誤差類似,均方誤差也是誤差分析的綜合指標(biāo)法之一。分類與回歸算法評價均方根誤差均方根誤差(RootMeanSquaredError,RMSE)定義如式所示。均方根誤差是均方誤差的平方根,代表了預(yù)測值的離散程度,也叫標(biāo)準(zhǔn)誤差,最佳擬合情況為,均方根誤差也是誤差分析的綜合指標(biāo)之一。分類與回歸算法評價平均絕對百分誤差平均絕對百分誤差(MeanAbsolutePercentageError,MAPE)定義如式所示一般認(rèn)為MAPE小于10時,預(yù)測精度較高。Kappa統(tǒng)計(jì)是比較兩個或多個觀測者對同一事物,或觀測者對同一事物的兩次或多次觀測結(jié)果是否一致,以由于機(jī)遇造成的一致性和實(shí)際觀測的一致性之間的差別大小作為評價基礎(chǔ)的統(tǒng)計(jì)指標(biāo)。Kappa統(tǒng)計(jì)量和加權(quán)Kappa統(tǒng)計(jì)量不僅可以用于無序和有序分類變量資料的一致性、重現(xiàn)性檢驗(yàn),而且能給出一個反映一致性大小的“量”值。分類與回歸算法評價Kappa取值在[-1,+1]之間,其值的大小均有不同意義:Kappa=+1說明兩次判斷的結(jié)果完全一致Kappa=-1說明兩次判斷的結(jié)果完全不一致Kappa=0說明兩次判斷的結(jié)果是機(jī)遇造成Kappa<0說明一致程度比機(jī)遇造成的還差,兩次檢查結(jié)果很不一致,在實(shí)際應(yīng)用中無意義Kappa>0此時說明有意義,Kappa愈大,說明一致性愈好Kappa≥0.75說明已經(jīng)取得相當(dāng)滿意的一致程度Kappa<0.4說明一致程度不夠分類與回歸算法評價分類與回歸算法評價識別準(zhǔn)確率識別準(zhǔn)確率(Accuracy)定義如式所示。具體說明如下。TP(TruePositives):正確地將正例預(yù)測為正例的分類數(shù)。TN(TrueNegatives):正確地將反例預(yù)測為反例的分類數(shù)。FP(FalsePositives):錯誤地將正例預(yù)測為反例的分類數(shù)。FN(FalseNegatives):錯誤地將反例預(yù)測為正例的分類數(shù)。分類與回歸算法評價識別精確率識別精確率(Precision)定義如式所示。召回率召回率(Recall)定義如式所示。F1值F1值是一種綜合平等的考量精確率(P)和召回率(R),然后從整體衡量模型分類效果的指標(biāo),如式所示。顯然只有模型的P和R都較大時,才會得到較大的F1值。ROC曲線受試者工作特性(ReceiverOperatingCharacteristic,ROC)曲線是一種非常有效的模型評價方法,可為選定臨界值給出定量提示。將靈敏度(Sensitivity)設(shè)在縱軸,1-特異性(1-Specificity)設(shè)在橫軸,就可得出ROC曲線圖。該曲線下的積分面積(Area)大小與每種方法優(yōu)劣密切相關(guān),反映分類器正確分類的統(tǒng)計(jì)概率,其值越接近1說明該算法效果越好。分類與回歸算法評價混淆矩陣混淆矩陣(ConfusionMatrix)是模式識別領(lǐng)域中一種常用的表達(dá)形式。它描繪樣本數(shù)據(jù)的真實(shí)屬性與識別結(jié)果類型之間的關(guān)系,是評價分類器性能的一種常用方法。假設(shè)對于N類模式的分類任務(wù),識別數(shù)據(jù)集D包括T0個樣本,每類模式分別含有T1個數(shù)據(jù)()。采用某種識別算法構(gòu)造分類器C,表示第i類模式被分類器C判斷成第j類模式的數(shù)據(jù)占第i類模式樣本總數(shù)的百分率,則可得到N*N維混淆矩陣,如式所示。分類與回歸算法評價混淆矩陣中元素的行下標(biāo)對應(yīng)目標(biāo)的真實(shí)屬性,列下標(biāo)對應(yīng)分類器產(chǎn)生的識別屬性。對角線元素表示各模式能夠被分類器正確識別的百分率,而非對角線元素則表示發(fā)生錯誤判斷的百分率。通過混淆矩陣,可以獲得分類器的正確識別率和錯誤識別率。各模式正確識別率如式所示。平均正確識別率如式所示。各模式錯誤識別率如式所示。平均錯誤識別率如式所示。分類與回歸算法評價對于一個二分類預(yù)測模型,分類結(jié)束后的混淆矩陣如表所示。如有150個樣本數(shù)據(jù),這些數(shù)據(jù)分成3類,每類50個。分類結(jié)束后得到的混淆矩陣如表所示?;煜仃嚤眍A(yù)測類類=1類=0實(shí)際類類=1AB類=0CD分類與回歸算法評價435224530149常用Python分類與回歸算法模型模型特點(diǎn)位于邏輯回歸比較基礎(chǔ)的線性分類模型,很多時候是簡單有效的選擇。sklearn.linear_modelSVM強(qiáng)大的模型,可以用來回歸、預(yù)測、分類等,而根據(jù)選取不同的核函數(shù)。模型可以是線性的/非線性的。sklearn.svm決策樹基于“分類討論、逐步細(xì)化”思想的分類模型,模型直觀,易解釋,如前面5.1.4節(jié)中可以直接給出決策圖。sklearn.tree隨機(jī)森林思想跟決策樹類似,精度通常比決策樹要高,缺點(diǎn)是由于其隨機(jī)性,喪失了決策樹的可解釋性。sklearn.ensemble樸素貝葉斯基于概率思想的簡單有效的分類模型,能夠給出容易理解的概率解釋。sklearn.naive_bayes神經(jīng)網(wǎng)絡(luò)具有強(qiáng)大的擬合能力,可以用于擬合、分類等,它有很多個增強(qiáng)版本,如遞歸神經(jīng)網(wǎng)絡(luò)、卷積神經(jīng)網(wǎng)絡(luò)、自編碼器等,這些是深度學(xué)習(xí)的模型基礎(chǔ)KerasPython中常用的分類與回歸算法,如表所示。常用Python分類與回歸算法經(jīng)過前面的分類與預(yù)測的學(xué)習(xí),應(yīng)該基本認(rèn)識到了Python建模的特點(diǎn)。首先,需要認(rèn)識到:Python本身是一門面向?qū)ο蟮木幊陶Z言,這就意味著很多Python的程序是面向?qū)ο蠖鴮懙?。放到建模之中,就會發(fā)現(xiàn),不管是在scikit-learn庫還是Keras庫,建模的第一個步驟是建立一個對象,這個對象是空白的,需要進(jìn)一步訓(xùn)練的,然后要設(shè)置模型的參數(shù),接著通過fit()方法對模型進(jìn)行訓(xùn)練,最后通過predict()方法預(yù)測結(jié)果。當(dāng)然,還有一些方法有助于完成對模型的評估,如score()等。1聚類分析目錄分類與回歸2就餐飲企業(yè)而言,經(jīng)常會碰到這樣的問題:如何通過餐飲客戶消費(fèi)行為的測量,進(jìn)一步評判餐飲客戶的價值和對餐飲客戶進(jìn)行細(xì)分,找到有價值的客戶群和需關(guān)注的客戶群?如何合理對菜品進(jìn)行分析,以便區(qū)分哪些菜品暢銷毛利又高,哪些菜品滯銷毛利又低?餐飲企業(yè)遇到的這些問題,可以通過聚類分析解決。聚類分析與分類不同,聚類分析是在沒有給定劃分類別的情況下,根據(jù)數(shù)據(jù)相似度進(jìn)行樣本分組的一種方法。與分類模型需要使用有類標(biāo)記樣本構(gòu)成的訓(xùn)練數(shù)據(jù)不同,聚類模型可以建立在無類標(biāo)記的數(shù)據(jù)上,是一種非監(jiān)督的學(xué)習(xí)算法。聚類的輸入是一組未被標(biāo)記的樣本,聚類根據(jù)數(shù)據(jù)自身的距離或相似度將他們劃分為若干組,劃分的原則是組內(nèi)樣本最小化而組間(外部)距離最大化:常用聚類分析算法常用聚類方法如下表:常用聚類分析算法類別包括的主要算法劃分(分裂)方法K-Means算法(K-平均)、K-MEDOIDS算法(K-中心點(diǎn))、CLARANS算法(基于選擇的算法)層次分析方法BIRCH算法(平衡迭代規(guī)約和聚類)、CURE算法(代表點(diǎn)聚類)、CHAMELEON算法(動態(tài)模型)基于密度的方法DBSCAN算法(基于高密度連接區(qū)域)、DENCLUE算法(密度分布函數(shù))、OPTICS算法(對象排序識別)基于網(wǎng)格的方法STING算法(統(tǒng)計(jì)信息網(wǎng)絡(luò))、CLIOUE算法(聚類高維空間)、WAVE-CLUSTER算法(小波變換)基于模型的方法統(tǒng)計(jì)學(xué)方法、神經(jīng)網(wǎng)絡(luò)方法常用聚類算法如下表:常用聚類分析算法算法名稱算法描述K-MeansK-均值聚類也叫快速聚類法,在最小化誤差函數(shù)的基礎(chǔ)上將數(shù)據(jù)劃分為預(yù)定的類數(shù)K。該算法原理簡單并便于處理大量數(shù)據(jù)。K-中心點(diǎn)K-均值算法對孤立點(diǎn)的敏感性,K-中心點(diǎn)算法不采用簇中對象的平均值作為簇中心,而選用簇中離平均值最近的對象作為簇中心。系統(tǒng)聚類系統(tǒng)聚類也叫多層次聚類,分類的單位由高到低呈樹形結(jié)構(gòu),且所處的位置越低,其所包含的對象就越少,但這些對象間的共同特征越多。該聚類方法只適合在小數(shù)據(jù)量的時候使用,數(shù)據(jù)量大的時候速度會非常慢。K-Means算法是典型的基于距離的非層次聚類算法,在最小化誤差函數(shù)的基礎(chǔ)上將數(shù)據(jù)劃分為預(yù)定的類數(shù)K,采用距離作為相似性的評價指標(biāo),即認(rèn)為兩個對象的距離越近,其相似度就越大。K-Means聚類算法中,一般需要度量樣本之間的距離、樣本與簇之間的距離以及簇與簇之間的距離。度量樣本之間的相似性最常用的是歐幾里得距離、曼哈頓距離和閔可夫斯距離;樣本與簇之間的距離可以用樣本到簇中心的距離;簇與簇之間的距離可以用簇中心的距離。K-Means聚類算法本節(jié)主要從四個方面介紹K-Means聚類算法算法過程數(shù)據(jù)類型與相似性的度量目標(biāo)函數(shù)案例實(shí)現(xiàn)K-Means聚類算法1.算法過程從N個樣本數(shù)據(jù)中隨機(jī)選取K個對象作為初始的聚類中心;分別計(jì)算每個樣本到各個聚類中心的距離,將對象分配到距離最近的聚類中;所有對象分配完成后,重新計(jì)算K個聚類的中心;與前一次計(jì)算得到的K個聚類中心比較,如果聚類中心發(fā)生變化,轉(zhuǎn)2),否則轉(zhuǎn)5);當(dāng)質(zhì)心不發(fā)生變化時停止并輸出聚類結(jié)果。聚類的結(jié)果可能依賴于初始聚類中心的隨機(jī)選擇,可能使得結(jié)果嚴(yán)重偏離全局最優(yōu)分類。實(shí)踐中,為了得到較好的結(jié)果,通常選擇不同的初始聚類中心,多次運(yùn)行K-Means算法。在所有對象分配完成后,重新計(jì)算K個聚類的中心時,對于連續(xù)數(shù)據(jù),聚類中心取該簇的均值,但是當(dāng)樣本的某些屬性是分類變量時,均值可能無定義,可以使用K-眾數(shù)方法。K-Means聚類算法數(shù)據(jù)類型與相似性的度量:(1)連續(xù)屬性對于連續(xù)屬性,要先對各屬性值進(jìn)行零-均值規(guī)范,再進(jìn)行距離的計(jì)算。用個屬性來表示n個樣本的數(shù)據(jù)矩陣如下:

歐幾里得距離:K-Means聚類算法2.數(shù)據(jù)類型與相似性的度量曼哈頓距離:閔可夫斯基距離:為正整數(shù),時即為曼哈頓距離;時即為歐幾里得距離。

K-Means聚類算法(2)文檔數(shù)據(jù)對于文檔數(shù)據(jù)使用余弦相似性度量,先將文檔數(shù)據(jù)整理成文檔—詞矩陣格式:

兩個文檔之間的相似度的計(jì)算公式為:K-Means聚類算法LostWinteamscoremusichappysad…coach文檔一142808710…6文檔二113341164…7文檔三96773148…53.目標(biāo)函數(shù)使用誤差平方和SSE作為度量聚類質(zhì)量的目標(biāo)函數(shù),對于兩種不同的聚類結(jié)果,選擇誤差平方和較小的分類結(jié)果。連續(xù)屬性的SSE計(jì)算公式為:文檔數(shù)據(jù)的SSE計(jì)算公式為:K-Means聚類算法其中,簇的聚類中心計(jì)算公式為:K-Means聚類算法符號含義K聚類簇的個數(shù)第個簇對象(樣本)簇的聚類中心數(shù)據(jù)集中樣本的個數(shù)第個簇中樣本的個數(shù)案例實(shí)現(xiàn)部分餐飲客戶的消費(fèi)行為特征數(shù)據(jù)如下表,根據(jù)這些數(shù)據(jù)將客戶分類成不同客戶群,并評價這些客戶群的價值。K-Means聚類算法IDRFM1374579235361632510394452211153675216415225756311883757939542111105181086采用K-Means聚類算法,設(shè)定聚類個數(shù)K為3,最大迭代次數(shù)為500次,距離函數(shù)取歐氏距離。輸出結(jié)果如下表K-Means聚類算法分群類別分群1分群2分群3樣本個數(shù)34056040樣本個數(shù)占比12.77%65.53%21.70%聚類中心R-0.16295092-0.147855153.45505486F1.11672177-0.65689153-0.29565357M0.39557542-0.272251030.44912342以下是用Pandas和Matplotlib繪制的不同客戶分群的概率密度函數(shù)圖,通過這些圖能直觀地比較不同客戶群的價值。分群1的概率密度函數(shù)圖:K-Means聚類算法分群2的概率密度函數(shù)圖:K-Means聚類算法分群3的概率密度函數(shù)圖:K-Means聚類算法客戶價值分析分群1特點(diǎn):R間隔相對較大,間隔分布在30~80天之間;消費(fèi)次數(shù)集中在0~15次;消費(fèi)金額在0~2000。分群2特點(diǎn):R間隔相對較小,主要集中在0~30天之間;消費(fèi)次數(shù)集中在10~25次;消費(fèi)金額在500~2000。分群3特點(diǎn):R間隔分布在0~30天之間;消費(fèi)次數(shù)集中在0~12次;消費(fèi)金額在0~1800。對比分析:分群1時間間隔較短,消費(fèi)次數(shù)多,而且消費(fèi)金額較大,是高消費(fèi)高價值人群。分群2的時間間隔、消費(fèi)次數(shù)和消費(fèi)金額處于中等水平,代表著一般客戶。分群3的時間間隔較長,消費(fèi)次數(shù)較少,消費(fèi)金額也不是特別高,是價值較低的客戶群體。K-Means聚類算法聚類分析僅根據(jù)樣本數(shù)據(jù)本身將樣本分組。其目標(biāo)是,組內(nèi)的對象相互之間是相似的(相關(guān)的),而不同組中的對象是不同的(不相關(guān)的)。組內(nèi)的相似性越大,組間差別越大,聚類效果就越好。1.purity評價法purity方法是極為簡單的一種聚類評價方法,只需計(jì)算正確聚類數(shù)占總數(shù)的比例,如式所示。

在式中,是聚類的集合。表示第k個聚類的集合。表示需要被聚類的集合,表示第個聚類對象。n表示被聚類集合對象的總數(shù)。聚類分析算法評價2.RI評價法RI評價法又稱為蘭德系數(shù)。實(shí)際上這是一種用排列組合原理來對聚類進(jìn)行評價的手段,RI評價公式如式所示。

在式中,R是指被聚在

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論