【实验名称】 实验:分类算法
【实验目的】
1.了解分类算法理论基础
2.平台实现算法
- 编程实现分类算法
【实验原理】
分类(Categorization or Classification)就是按照某种标准给对象贴标签(label),再根据标签来区分归类。
【实验环境】
OS:Ubuntu16.04
PyCharm: 2017.3
Mining
【实验步骤】
复习分类算法的简单实现:
一起通过一个小案例回顾如何构建一个最简单的分类器:
1)导入数据
from sklearn import datasets
iris = datasets.load_iris()
2)创建分类器
from sklearn.naive_bayes import GaussianNB
gnb = GaussianNB()
3)训练
y_pred = gnb.fit(iris.data, iris.target).predict(iris.data)
4)分类器的效果
print("Number of mislabeled points out of a total %d points : %d" % (iris.data.shape[0],(iris.target != y_pred).sum()))
题目:人群的收入预测
现在我们获得了一个数据集adult.data.txt,该数据集由多组个人信息构成,其中信息包含年龄、工作、婚姻等属性,以及类别收入,我们希望根据这些已有数据推出未知收入群体的收入情况。
STEP1:加载数据并查看数据,我们希望依据不同的类别收入加载相同数量的数据,因为如果不同的类别的数据体量相差很大会造成分类器向大数据体量一方倾斜,问题一:补充代码,实现上述效果。
STEP2:转换数据的属性编码,因为原数据中的属性是包含英文字符,无法进行数学运算,请将其转换为数值型数据,问题二:补充代码,实现上述功能。
STEP3:创建一个分类器,将STEP1、STEP2处理好的数据进行训练,并使用交叉验证评测分类器的效果,问题三:补充代码,实现上述功能。
STEP4:对新个体采用同样的编码处理,预测其收入类别,问题四:补充代码,实现上述功能。