sklearn实践之分类+聚类

使用scikit-learn构建模型实训(wine数据集、wine_quality数据)

  • 任务:
  • 实训1 使用 sklearn处理wine和wine_quality数据集
  • 实训2 构建基于wine数据集的k- Means聚类模型
  • 实训3 构建基于wine数据集的分类模型
  • 实训4 构建基于wine_quality数据集的回归模型
  • 说明

  • wine数据集包含来自3种不同起源的葡萄酒的共178条记录。13个属性是葡萄酒的13种化学成分。通过化学分析可以来推断葡萄酒的起源。所有属性变量都是连续变量。

  • wine_quality数据集共有4898个观测值,11个输入特征和一个标签。其中,不同类的观测值数量不等,所有特征为连续型数据。通过酒的各种化学成分,预测该葡萄酒的评分。

实训1 使用 sklearn处理wine和wine_quality数据集

1.训练要点

  • 掌握 sklearn转换器的用法。
  • 掌握训练集、测试集划分的方法。
  • 掌握使用sklearn进行PCA降维的方法。

2.实现思路及步骤

  • 使用pandas库 winquality数据集,sklearn库读取wine数据集
  • 将wine数据集和winequality数据集的数据和标签拆分开(提取)。
  • 将winequality数据集划分为训练集和测试集。
  • 标准化wine数据集和 wine quality数据集
  • 对wine数据集和 winequality数据集进行PCA降维。

提示:

  • winequality数据集是csv格式文档,在文件中是以”;”为间隔的,所以要利用pandas.read_csv()读取,间隔读入的方式‘sep = ';' 获取其数据。读取后数据都以DataFrame的类型保留,使用iloc等切片操作提取所需数据。
  • wine是库内置数据,已经区分数据与标签。
  • from sklearn.model_selection import train_test_split,该train_test_split()函数将数据集划分为训练集和测试集两部分,参数test_size=0.2代表着测试集在总数中的占比,通过计算wine_data总共178条记录,wine_data_test有36条,占0.20224171(20%),参数random_state=100,表示随机种子编号,方便测试时得到相同随机结果。
  • from sklearn.preprocessing import StandardScaler并生成标准化规则(先实例化一个对象);对训练集标准化;用训练集建立的模型对测试集标准化。transform函数紧接着将定义好的规则应用对传入的特征进行对应转换。
  • from sklearn.decomposition import PCA,并设置PCA(n_components=5)的参数n_components表示将原始数据降低到n个维度。

实训2 构建基于wine数据集的k- Means聚类模型

1.训练要点

  • 了解sklearn估计器的用法。
  • 掌握聚类模型的构建方法。
  • 掌握聚类模型的评价方法。

2.需求说明

wine数据集的葡萄酒总共分为3种,通过将wine数据集的数据进行聚类,聚集为3 个簇,能够实现葡萄酒的类别划分。

3.实现思路及步骤

  • 根据实训1的wine数据集处理的结果,构建聚类数目为3的KMeans模型。
  • 在聚类数目为2~10类时,确定最优聚类数目。
  • 求取 Calinski-Harabaz-score指数,确定最优聚类数目。

实训3 构建基于wine数据集的SVM分类模型

1.训练要点

掌握sklearn估计器的用法。
掌握分类模型的构建方法。
掌握分类模型的评价方法。

2.需求说明

wine数据集中的葡萄酒类别为3种,将wie数据集划分为训练集和测试集,使用训练集训练SVM分类模型,并使用训练完成的模型预测测试集的葡萄酒类别归属。

3.实现思路及步骤

  • 读取wine数据集,区分标签和数据。
  • 将wine数据集划分为训练集和测试集
  • 使用离差标准化方法标准化wine数据集。
  • 构建SVM模型,并预测测试集结果。
  • 打印出分类报告,评价分类模型性能。

提示:

  • from sklearn.preprocessing import MinMaxScaler 离差标准化方法
  • from sklearn.svm import SVC 支持向量机方法分类
  • from sklearn.metrics import classification_report 查看分类得分

实训4 构建基于wine_quality数据集的回归模型

1.训练要点

掌握sklearn估计器的用法。
掌握回归模型的构建方法。
掌握回归模型的评价方法。

2.需求说明

wine_quality数据集中的葡萄酒评分在1-10之间,将wine_quality数据集划分为训练集和测试集,构建线性回归模型,
并使用训练完成的模型预测测试集的葡萄酒评分。

3.实现思路及步骤

  • 读取wine_quality数据集。
  • 将wine数据集划分为训练集和测试集
  • 使用标准化方法标准化wine数据集。
  • 构建线性回归模型,并预测测试集结果。
  • 比较其他线性模型

提示:

|模块名称| 函数名称| 算法名称|
|:----:|:----:|:----:|
|linear_model| LinearRegession| 线性回归|
|svm| SVR|支撑向量回归|
|neighbors| KNeighborRegressor| 最近邻回归|
|tree| DecisionTreeRegressor| 决策树回归|
|ensemble| RandomForestRegressor| 随机森林回归|
|ensemble| GradientBoostingRegressor|梯度提升回归|

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容