Python数据挖掘算法与应用 课件 刘金岭 第6--10章 分类模型---深度学习简介.pptx

Python数据挖掘算法与应用 课件 刘金岭 第6--10章 分类模型---深度学习简介.pptx

Python数据挖掘算法与应用课件刘金岭

第6章

分类模型;;1;基本概念;训练集和测试集;1.留出法;例6.1留出法生成训练集和测试集示例。

importnumpyasnp

fromsklearn.model_selectionimporttrain_test_split

X,Y=np.arange(10).reshape(5,2),range(5)

print(X=\n,X)

print(Y=\n,Y)

X_train,X_test,Y_train,Y_test=train_test_split(X,Y,test_size=0.30,random_state=42)

print(X_train=\n,X_train)

print(X_test=\n,X_test)

print(Y_train=\n,Y_train)

print(Y_test=\n,Y_test);2.交叉验证法;例6.2交叉验证法生成训练集和测试集示例。

importnumpyasnp

fromsklearn.model_selectionimportKFold

X=np.arange(60).reshape(30,2)

print(X=\n,X)

kf=KFold(n_splits=10)

fortrain_index,test_indexinkf.split(X):

print(X_train:\n%s%X[train_index])

print(X_test:\n%s%X[test_index]);3.自助法;例6.3自助法生成训练集和测试集示例。

importnumpyasnp

X=[1,4,3,23,4,6,7,8,9,45,67,89,34,54,76,98,43,52]#设置一个数据集

bootstrapping=[]#通过产生的随机数获得采集样本的序号

foriinrange(len(X)):

bootstrapping.append(np.floor(np.random.random()*len(X)))

D_1=[]

foriinrange(len(X)):

D_1.append(X[int(bootstrapping[i])])

print(生成的训练集:\n,D_1)

D=[itemforiteminXifitemnotinset(D_1)]

print(生成的测试集:\n,D)

在前两种方法中都保留部分样本用于测试,因此实际评估模型使用的训练集总是比期望评估模型使用的训练集小,这样会引入一些因训练样本规模不同而导致的估计偏差。;分类流程;2;KNN算法概述;KNN算法描述;KNN算法描述;Python实现KNN分类算法;Python实现KNN分类算法;例6.6用KNN对鸢尾花数据集进行分类。

importmatplotlib.pyplotasplt

importnumpyasnp

frommatplotlib.colorsimportListedColormap

fromsklearnimportneighbors,datasets

n_neighbors=11#取k=11

iris=datasets.load_iris()#导入鸢尾花数据集

x=iris.data[:,:2]#取前两个feature,方便在二维平面上画图

y=iris.target

h=.02#网格中的步长

cmap_light=ListedColormap([#FFAAAA,#AAFFAA,#AAAAFF])#创建彩色的图

cmap_bold=ListedColormap([#FF0000,#00FF00,#0000FF])

forweightsin[uniform,distance]:#绘制两种weights参数的KNN效果图

clf=neighbors.KNeighborsClassifier(n_neighbors,weights=weights)#创建了一个KNN分类器的实例,并拟合数据

clf.fit(x,y)

#绘制决策边界。为此,将为每个数据对分配一个颜色来绘制网格中的点[x_min,x_max]、[y_min,y_max]

x_min,x_max=x[:,0].min()-1,x[:,0].max()+1

y_min,y_max=x[:,1].min()-1,x[:,1].max()+1

xx,yy=np.meshgrid(np.arange(x_min,x_max,

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档