首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
1.1 为何选择机器学习
1.1.1 机器学习能够解决的问题
1.1.2 熟悉任务和数据
1.2 为何选择Python
1.3 scikit-learn
1.4 必要的库和工具
1.4.1 Jupyter Notebook
1.4.2 NumPy
1.4.3 SciPy
1.4.4 matplotlib
1.4.5 pandas
1.4.6 mglearn
1.5 Python 2 与Python 3 的对比
1.7 第 一个应用:鸢尾花分类
1.7.1 初识数据
1.7.2 衡量模型是否成功:训练数据与测试数据
1.7.3 要事第 一:观察数据
1.7.4 构建第 一个模型:k 近邻算法
1.7.5 做出预测
1.7.6 评估模型
2.1 分类与回归
2.2 泛化、过拟合与欠拟合
2.3 监督学习算法
2.3.1 一些样本数据集
2.3.2 k 近邻
2.3.3 线性模型
2.3.4 朴素贝叶斯分类器
2.3.5 决策树
2.3.6 决策树集成
2.3.7 核支持向量机
2.3.8 神经网络(深度学习)
2.4 分类器的不确定度估计
2.4.1 决策函数
2.4.2 预测概率
2.4.3 多分类问题的不确定度
3.1 无监督学习的类型
3.2 无监督学习的挑战
3.3 预处理与缩放
3.3.1 不同类型的预处理
3.3.2 应用数据变换
3.3.3 对训练数据和测试数据进行相同的缩放
3.3.4 预处理对监督学习的作用
3.4 降维、特征提取与流形学习
3.4.1 主成分分析
3.4.2 非负矩阵分解
3.4.3 用t-SNE 进行流形学习
3.5 聚类
3.5.1 k 均值聚类
3.5.2 凝聚聚类
3.5.3 DBSCAN
3.5.4 聚类算法的对比与评估
3.5.5 聚类方法小结
当前位置:
首页>>
技术小册>>
Python机器学习基础教程(上)
小册名称:Python机器学习基础教程(上)
### 2.3.1 一些样本数据集 在Python机器学习的世界里,数据是驱动模型训练与评估的核心。选择合适的样本数据集对于初学者来说尤为重要,它不仅能帮助理解机器学习算法的工作原理,还能通过实践加深理论知识。本节将介绍几种经典且广泛使用的样本数据集,这些数据集覆盖了分类、回归、聚类等多种学习任务,是入门Python机器学习的宝贵资源。 #### 2.3.1.1 鸢尾花(Iris)数据集 **概述**: 鸢尾花(Iris)数据集是机器学习和统计学领域最著名的数据集之一,首次出现在Ronald Fisher的1936年论文中。该数据集包含了150个样本,每个样本都有4个特征(花萼长度、花萼宽度、花瓣长度、花瓣宽度,单位:厘米)和1个目标变量(花的种类),共三种不同的鸢尾花:Setosa、Versicolour和Virginica。 **用途**: 鸢尾花数据集常用于分类问题的演示,是初学者学习分类算法(如决策树、K近邻、逻辑回归、支持向量机等)的首选数据集。由于其特征简单且类别分明,非常适合用来理解模型训练与评估的基本流程。 **在Python中的加载**: 鸢尾花数据集可以通过scikit-learn库轻松加载,scikit-learn是Python中广泛使用的机器学习库。 ```python from sklearn.datasets import load_iris # 加载数据 iris = load_iris() X = iris.data # 特征数据 y = iris.target # 目标变量 # 查看数据形状 print(X.shape) # (150, 4) print(y.shape) # (150,) ``` #### 2.3.1.2 波士顿房价(Boston Housing)数据集 **概述**: 波士顿房价数据集是一个经典的回归数据集,用于预测波士顿地区房屋的中位数价格。数据集包含506个样本,每个样本有13个特征(如房间数、犯罪率、一氧化氮浓度等),以及一个目标变量(房屋的中位数价格,单位:千美元)。 **用途**: 该数据集是回归问题研究的理想选择,常用于评估回归模型的性能,如线性回归、决策树回归、随机森林回归等。通过学习如何预测房价,可以深入理解回归模型如何根据特征值预测连续型目标变量的值。 **在Python中的加载**: 波士顿房价数据集同样可以通过scikit-learn库加载。 ```python from sklearn.datasets import load_boston # 注意:在scikit-learn的新版本中,load_boston() 可能已被弃用或替换为其他函数 # 这里以旧版本为例,新版本中可能需要从sklearn.datasets.california_housing_fetch_california_housing()替代 # 假设使用旧版本或找到替代方法 boston = load_boston() X = boston.data y = boston.target # 查看数据形状 print(X.shape) # (506, 13) print(y.shape) # (506,) ``` #### 2.3.1.3 手写数字(MNIST)数据集 **概述**: MNIST数据集包含了大量的手写数字图片,通常用于训练和测试图像处理系统中的图像识别技术。它由0到9的数字组成,每个数字都被标准化为28x28像素的灰度图像,并存储在二维数组中。整个数据集分为训练集(60,000个样本)和测试集(10,000个样本)。 **用途**: MNIST数据集是深度学习入门的经典案例,特别是用于训练神经网络进行图像分类。通过构建并训练一个简单的神经网络来识别手写数字,可以深刻理解神经网络的前向传播、反向传播、参数更新等核心概念。 **在Python中的加载**: 虽然scikit-learn库本身不直接提供MNIST数据集,但可以通过Keras库(一个高层神经网络API,运行在TensorFlow之上)或其他库如`sklearn.datasets.fetch_openml`(需指定数据集名称)来加载。 ```python from keras.datasets import mnist # 加载数据 (train_images, train_labels), (test_images, test_labels) = mnist.load_data() # 查看数据形状 print(train_images.shape) # (60000, 28, 28) print(train_labels.shape) # (60000,) print(test_images.shape) # (10000, 28, 28) print(test_labels.shape) # (10000,) ``` #### 2.3.1.4 乳腺癌诊断(Breast Cancer Wisconsin)数据集 **概述**: 乳腺癌诊断数据集来源于威斯康星大学医院,用于预测乳腺癌是恶性还是良性。该数据集包含569个样本,每个样本有30个实数值特征,这些特征是通过图像分析从细针抽吸(FNA)的数字化图像中计算得出的,并有一个目标变量(诊断结果,0表示良性,1表示恶性)。 **用途**: 该数据集适用于二分类问题的研究,常用于评估分类算法的性能,如逻辑回归、随机森林、梯度提升树等。通过学习如何根据乳腺肿块的特征预测其良恶性,可以了解二分类问题的处理流程及模型评估方法。 **在Python中的加载**: 乳腺癌诊断数据集可以通过scikit-learn库加载。 ```python from sklearn.datasets import load_breast_cancer # 加载数据 cancer = load_breast_cancer() X = cancer.data y = cancer.target # 查看数据形状 print(X.shape) # (569, 30) print(y.shape) # (569,) ``` ### 结语 以上介绍的几个样本数据集是Python机器学习领域中的经典之作,它们覆盖了分类、回归、图像识别等多种学习任务,是初学者理解机器学习算法、掌握模型训练与评估流程的重要资源。通过动手实践这些数据集,你将能够更深入地理解机器学习的奥秘,为后续更复杂的学习任务打下坚实的基础。
上一篇:
2.3 监督学习算法
下一篇:
2.3.2 k 近邻
该分类下的相关小册推荐:
实战Python网络爬虫
Python3网络爬虫开发实战(下)
Python机器学习基础教程(下)
Python3网络爬虫开发实战(上)
Python编程轻松进阶(三)
Python自动化办公实战
Python合辑10-函数
剑指Python(磨刀不误砍柴工)
Python合辑5-格式化字符串
Python爬虫入门与实战开发(上)
Python编程轻松进阶(一)
Python编程轻松进阶(五)