【正文】
80K Ref un d M ari tal S tatu s Tax abl e I nco m e Chea t No M arri ed 80K ? 10 Test Data Apply Model to Test Data Refund MarSt TaxInc YES NO NO NO Yes No Married Single, Divorced 80K 80K Ref un d M ari tal S tatu s Tax abl e I nco m e Chea t No M arri ed 80K ? 10 Test Data Apply Model to Test Data Refund MarSt TaxInc YES NO NO NO Yes No Married Single, Divorced 80K 80K Ref un d M ari tal S tatu s Tax abl e I nco m e Chea t No M arri ed 80K ? 10 Test Data Assign Cheat to “No” 決策樹原理 ? 基本算法(貪心算法) ? 自上而下分而治之的方法 ? 開始時(shí),所有的數(shù)據(jù)都在根節(jié)點(diǎn) ? 屬性都是離散值字段 (如果是連續(xù)的,將其離散化 ) ? 所有記錄用所選屬性遞歸的進(jìn)行分割 ? 屬性的選擇是基于一個(gè)啟發(fā)式規(guī)則或者一個(gè)統(tǒng)計(jì)的度量 (如 , information gain) ? 停止分割的條件 ? 一個(gè)節(jié)點(diǎn)上的數(shù)據(jù)都是屬于同一個(gè)類別 ? 沒有屬性可以再用于對(duì)數(shù)據(jù)進(jìn)行分割 算法: Generate_decision_tree由給定的訓(xùn)練數(shù)據(jù)產(chǎn)生一棵決策樹 輸入:訓(xùn)練數(shù)據(jù)集 samples, 用離散值屬性表示;候選屬性的集合 attribute_list。 ? 平均信息量 若一個(gè)系統(tǒng)中存在多個(gè)事件 E1,E2,… En 每個(gè)事件出現(xiàn)的概率是 p1,p2,… pn 則這個(gè)系統(tǒng)的平均信息量是 ? 指的是系統(tǒng)的混亂的程度 ! (bits) ? 系統(tǒng)越無(wú)序、越混亂,熵就越大。 ? 根據(jù)天氣的樹導(dǎo)致的信息增益為 :基于類比例原來信息需求 基于天氣屬性劃分之后得到的信息需求 gain(outlook)=info([9,5])info([2,3],[4,0],[3,2]) == ? ( 4)依次,計(jì)算每棵樹導(dǎo)致的信息增益 ? 為每個(gè)屬性計(jì)算信息增益 ? gain(outlook)= ? gain(temperature)= ? gain(humidity)= ? gain(windy)= ? ( 5)選擇獲得最大信息增益的屬性進(jìn)行劃分 ? 最大信息增益: gain(outlook)=位 ? 選擇天氣作為樹的根節(jié)點(diǎn)的劃分屬性,其中一個(gè)子女節(jié)點(diǎn)是最純的,并且這使它明顯優(yōu)于其他屬性。 首先將連續(xù)型屬性離散化 , 把連續(xù)型屬性的值分成不同的區(qū)間 , 依據(jù)是比較各個(gè) 分裂點(diǎn) Gian值的大小 。 (2) 準(zhǔn)確性高:挖掘出的分類規(guī)則準(zhǔn)確性高,便于理解,決策樹可以清晰的顯示哪些字段比較重要。 (2) 為了處理大數(shù)據(jù)集或連續(xù)量的種種改進(jìn)算法(離散化、取樣)不僅增加了分類算法的額外開銷,而且降低了分類的準(zhǔn)確性,對(duì)連續(xù)性的字段比較難預(yù)測(cè),當(dāng)類別太多時(shí),錯(cuò)誤可能就會(huì)增加的比較快,對(duì)有時(shí)間順序的數(shù)據(jù),需要很多預(yù)處理的工作。 屬性 1的增益計(jì)算考慮 13個(gè)數(shù)據(jù),丟失的樣本僅用來作修正,屬性 1中有 8個(gè)屬于類 1, 5個(gè)屬于類 2,因此分區(qū)前的熵為: Info (T)= 8/13 log2(8/13) 5/13 log2(5/13) = 用屬性 1把 T分區(qū)成 3個(gè)子集( A、 B、 C)后,得到的信息是: Info x1(T)= 5/13( 2/5 log2(2/5) 3/5 log2(3/5) ) + 3/13( 3/3 log2(3/3) 0/3 log2(0/3) ) + 5/13( 3/5 log2(3/5) 2/5 log2(2/5) ) = 用系數(shù) F進(jìn)行修正得: Gain(X1) = 13/14( – ) = 考慮未知值的影響: Split_Info (X1)= 5/13 log2(5/13) 3/13 log2(3/13) 5/13log2(5/13) 1/13 log2(1/13) = 由 Gain_ratio(X) = Gain(X)/ Split_Info (X)計(jì)算,則: Gain_ratio(X) = 作為單獨(dú)一組 優(yōu)點(diǎn) : (1) 速度快:計(jì)算量相對(duì)較小,且容易轉(zhuǎn)化成分類規(guī)則。對(duì)product_ID的分裂結(jié)果? Infoproduct_ID(D)=0 Gain(product_ID)最大 有無(wú)實(shí)際意義? 標(biāo)識(shí)屬性被選為分裂屬性,但標(biāo)識(shí)屬性的分支對(duì)預(yù)測(cè)未知實(shí)例的類別并無(wú)任何幫助