資料探勘導論 第四章
分類:基本概念、決策樹與模型評估
分類的定義:分類任務就是通過學習得到乙個目標函式f,把每個屬性集x對映到乙個預先定義的類標號y。
目標函式也稱為分類模型,有兩個主要目的:1、描述性建模 2、**性建模
分類適用於**兩元或標稱型別的資料集,即離散的資料集。
決策樹分類法
選擇最佳劃分的度量通常都是根據劃分後子女結點不純性的程度。不純的程度越低,類分布就越傾斜。
不純性度量的例子包括:1、熵 2、基尼係數 3、分類差錯率
模型的過分擬合
分類模型的誤差大致分為兩種:訓練誤差和泛化誤差。訓練誤差又叫再代入誤差或表現誤差,是在訓練記錄上誤分類樣本樣本比例,
而泛化誤差是模型在未知記錄上的期望誤差。
乙個好的分類模型要具備低訓練誤差和低泛化誤差。
對訓練資料擬合太好的模型,其泛化誤差可能比具有較高訓練誤差的模型高,這就造成模型過分擬合。
導致模型過分擬合的原因有:1、雜訊記錄導致的過分擬合 2、缺乏代表性樣本導致的過分擬合
例題:現在有一些資料,有三個屬性值,分別是權重,體重,身高,要根據這些資料,用決策樹的演算法訓練。
1.5 50 thin1.5 60 fat
1.6 40 thin
1.6 60 fat
1.7 60 thin
1.7 80 fat
1.8 60 thin
1.8 90 fat
1.9 70 thin
1.9 80 fat
實現**
#coding:utf-8
import
numpy as np
import
scipy as sp
from sklearn import
tree
from sklearn.metrics import
precision_recall_curve
from sklearn.metrics import
classification_report
from sklearn.cross_validation import
train_test_split
''''' 資料讀入
'''data =
labels =
with open(
"1.txt
") as ifile:
for line in
ifile:
tokens = line.strip().split('')
for tk in tokens[:-1]])
#print ([float(tk) for tk in tokens[:-1]])
#print (tokens[-1])
x =np.array(data)
#print x
labels =np.array(labels)
#print labels
y =np.zeros(labels.shape)
#print y
''''' 標籤轉換為0/1
'''y[labels == '
fat'] = 1
''''' 拆分訓練資料與測試資料
'''x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.2)
''''' 使用資訊熵作為劃分標準,對決策樹進行訓練
'''clf = tree.decisiontreeclassifier(criterion='
entropy')
"*****===clf*****====
(clf)
clf.fit(x_train, y_train)
''''' 把決策樹結構寫入檔案
'''with open(
"tree.dot
", 'w'
) as f:
f = tree.export_graphviz(clf, out_file=f)
''''' 係數反映每個特徵的影響力。越大表示該特徵在分類中起到的作用越大
"*****clf.feature_importances_*****=
(clf.feature_importances_)
'''''測試結果的列印
'''answer =clf.predict(x_train)
(x_train)
(answer)
(y_train)
print(np.mean(answer ==y_train))
'''''準確率與召回率
'''precision, recall, thresholds =precision_recall_curve(y_train, clf.predict(x_train))
answer = clf.predict_proba(x)[:, 1]
"***************==
"print(classification_report(y, answer, target_names=['
thin
', '
fat']))
資料探勘導論學習筆記(二)
第三章 探索資料 匯 計 量化的 如均值和標準差 用單個數或數的小集合捕獲可能很大的值集的各種特徵。頻率 具有屬性值vi的物件數 總數 分類屬性的眾數就是具有最高頻率的值。百分位數 給定乙個有序的或連續的屬性x和0到100之間的數p,第p個百分位數xp是乙個x值,似的x的p 的觀測值小於xp。值集位...
《資料探勘導論》學習筆記(二)
資料探勘導論 第四章 分類 基本概念 決策樹與模型評估 分類的定義 分類任務就是通過學習得到乙個目標函式f,把每個屬性集x對映到乙個預先定義的類標號y。目標函式也稱為分類模型,有兩個主要目的 1 描述性建模 2 性建模 分類適用於 兩元或標稱型別的資料集,即離散的資料集。決策樹分類法 選擇最佳劃分的...
《資料探勘導論》學習筆記
寫在前面 粗體字為書中定義,紅色字型為筆者認為的重點詞。第一章 緒論 1.資料探勘 在大型資料儲存庫中,自動地發現有用資訊的過程。3.資料探勘要解決的問題 可伸縮,高維性,異種資料和複雜資料,資料的所有權和分布,非傳統的分析。4.資料探勘任務 任務,描述任務。四種主要資料探勘任務 1 建模,有兩類 ...