机器学习之基本概念 - 数据集、训练集、特征向量、独立同分布的

news/2025/1/12 21:37:37/

机器学习是对能通过经验自动改进的计算机算法的研究.

——汤姆·米切尔(Tom Mitchell)[Mitchell, 1997]

思考一个问题:

如何让计算机能自动识别手写的数字?

————------------------———————分割线—————————————————-----------                   

我们再来弄清楚关于机器学习的其他基本概念:

一、数据集(Data Set)

分为训练集、验证集、测试集

训练集与验证集、测试集的区别

类型作用使用时间
训练集用于训练模型,调整模型参数(如权重和偏置)。模型训练时
验证集用于调节超参数(如学习率、正则化系数),避免模型过拟合或欠拟合。模型训练后
测试集用于最终评估模型的性能,确保模型对未见数据的泛化能力。模型训练后

二、训练集

1、训练集是什么?

机器学习中,训练集(Training Set) 是模型训练过程中使用的一部分数据集,用于让模型学习输入特征与输出目标之间的映射关系。训练集是机器学习模型构建的基础,通过训练集,模型能够调整自身参数,从而尽可能准确地预测新的数据。

2、训练集的定义

  • 训练集机器学习算法训练过程中使用的数据集合。
  • 每条数据(样本)由特征和目标值(标签,若是监督学习)组成。
  • 模型通过遍历训练集,学习特征与目标值之间的关系。
示例:
  • 房价预测问题

    • 训练集样本:多套房子的历史数据。
    • 特征:房子的面积、房间数、地段等。
    • 标签:房子的实际售价。
  • 图片分类问题

    • 训练集样本:若干图片。
    • 特征:图片像素值。
    • 标签:图片类别(如“猫”或“狗”)。

3. 训练集的特点

  1. 包含大量样本

    • 样本数量越多,模型可以学到更多的信息,训练效果越好。
  2. 数据应具有多样性

    • 训练集应该尽可能覆盖目标问题的不同情况,避免模型偏向某一特定模式。
  3. 质量高

    • 训练集的数据应尽量准确,包含的噪声或错误样本越少,模型性能越好。
  4. 分布与实际数据一致

    • 训练集的分布应与实际问题的数据分布一致,否则模型可能无法泛化到新数据。

4. 训练集的设计原则

(1) 训练集要具有代表性
  • 训练集应尽可能覆盖目标问题的所有可能情况。
  • 如果训练集过于单一,模型可能无法泛化到实际问题中。
(2) 训练集的大小
  • 样本量不足:模型可能欠拟合(无法学到足够的信息)。
  • 样本量过多:可能导致较高的计算成本,但一般不会对模型性能有害。
(3) 避免数据泄漏
  • 数据泄漏是指在训练时,模型无意中获得了验证集或测试集的信息,导致评估结果不准确。
  • 解决方法:
    • 严格划分训练集和测试集。
    • 避免使用测试集的统计信息来处理训练数据。

5. 训练集的挑战

(1) 样本不足
  • 样本量太少会导致模型难以捕捉数据规律,容易欠拟合。
  • 解决方法:
    • 增加数据量(通过数据采集或数据增强)。
    • 使用预训练模型(如深度学习中的迁移学习)。
(2) 样本不均衡
  • 某些类别的样本数量远少于其他类别,可能导致模型偏向于主要类别。
  • 解决方法:
    • 数据过采样或欠采样。
    • 使用加权损失函数。
(3) 噪声数据
  • 噪声或错误标记的样本会降低模型性能。
  • 解决方法:
    • 数据清洗。
    • 增强模型的鲁棒性。
(4) 过拟合
  • 如果训练集样本量较小或噪声较多,模型可能只记住训练数据,而无法泛化到新数据。
  • 解决方法:
    • 增加训练数据。
    • 使用正则化技术(如L2正则化、Dropout)。

6. 如何理解训练集?

  1. 训练集是模型学习的核心,提供了数据支持,让模型能够识别特征与目标之间的模式。
  2. 训练集的质量与数量直接影响模型性能,好的训练集能够显著提高模型的准确性和泛化能力。
  3. 训练集需要经过合理划分、清洗与预处理,避免数据泄漏和过拟合。

对于初学者,可以通过一个简单的项目(如房价预测)开始,构建训练集、训练模型,并观察训练集的质量如何影响模型效果,这样可以更直观地理解训练集的重要性。

三、特征向量(Feature Vector)

2、特征向量的示例:

3、特征向量的维度

(1) 高维特征向量
  • 当样本的特征很多时,特征向量的维度就很高。
  • 高维特征向量会增加模型的计算复杂度,也可能导致维度灾难(模型难以处理高维数据)。
(2) 低维特征向量
  • 当样本特征较少时,特征向量维度较低。
  • 维度太低可能导致信息不足,模型难以捕捉样本的规律。
(3) 维度选择的重要性
  • 特征工程和降维方法(如PCA)可以用来控制特征向量的维度,平衡模型的复杂度和性能。

4. 特征向量与其他概念的关系

(1) 特征向量与样本
  • 一个特征向量对应一个样本。
  • 数据集可以表示为特征向量的集合。
(2) 特征向量与目标值
  • 在监督学习中,每个特征向量对应一个目标值(标签)。
  • 特征向量是模型预测目标值的依据。
(3) 特征向量与维度
  • 特征向量的维度由样本的特征数量决定。

四、独立同分布的(Identi- cally and Independently Distributed,IID)

1. 独立同分布(IID)的定义

  • 独立性(Independence):样本之间是独立的,意味着一个样本的取值不受其他样本取值的影响。
    • 直观来说,若一个样本出现了,不会对其他样本的出现产生任何影响。
  • 同分布性(Identically Distributed):所有样本来自相同的概率分布。
    • 也就是说,所有样本的生成过程遵循相同的概率模型或分布。

因此,独立同分布的概念指的是:训练数据集中的每一个样本都是独立的,并且这些样本都来源于相同的概率分布。

2. 在机器学习中的应用和重要性

(1) 理论基础
  • 许多机器学习算法和理论是基于“独立同分布”假设的。这个假设使得理论分析变得简化和可行。
  • 例如,大数法则中心极限定理都假设数据是独立同分布的,帮助我们证明模型在足够多的数据下会有良好的性能。
(2) 训练与评估模型的条件
  • 模型训练:如果训练数据符合独立同分布的假设,机器学习模型可以通过观察数据中的模式和关系来学习合适的参数。
  • 模型评估:在评估模型性能时,假设测试数据与训练数据来自相同分布。这是为什么我们通常在相同的数据分布上评估模型准确度的原因。
(3) 模型泛化能力
  • 假设独立同分布可以简化模型的泛化理论,即模型在新数据上的表现。
  • 如果数据不满足独立同分布,模型的泛化能力可能会受到影响,导致性能下降。


http://www.ppmy.cn/news/1562606.html

相关文章

Excel如何分区设置密码,一个区域一个密码,数据收集时使用太方便了

大家好,我是小鱼。 很多小伙伴在使用Excel表格的时候,有可能需要为不同的区域设置不同的密码,比如搜集公司不同的部门,或者学校不同的班级的信息时,为了使收集的信息不被别人改动,这时就需要为他们各自设置…

apache age:22023,42883,等报错信息

apache age 各种类型不匹配 函数找不到 以下是对Apache AGE、PostgreSQL以及Cypher语法的详细介绍: 一、Apache AGE 定义:Apache AGE(A Graph Extension)是一个基于PostgreSQL的图数据库扩展插件。它结合了PostgreSQL的先进SQL查询功能和事务支持,以及图数据库的灵活性和…

HDFS编程 - 使用HDFS Java API进行文件操作

文章目录 前言一、创建hdfs-demo项目1. 在idea上创建maven项目2. 导入hadoop相关依赖 二、常用 HDFS Java API1. 简介2. 获取文件系统实例3. 创建目录4. 创建文件4.1 创建文件并写入数据4.2 创建新空白文件 5. 查看文件内容6. 查看目录下的文件或目录信息6.1 查看指定目录下的文…

YOLOv10-1.1部分代码阅读笔记-ops.py

ops.py ultralytics\utils\ops.py 目录 ops.py 1.所需的库和模块 2.class Profile(contextlib.ContextDecorator): 3.def segment2box(segment, width640, height640): 4.def scale_boxes(img1_shape, boxes, img0_shape, ratio_padNone, paddingTrue, xywhFalse): …

SpringBoot操作spark处理hdfs文件

SpringBoot操作spark处理hdfs文件 1、导入依赖 <!-- spark依赖--><dependency><groupId>org.apache.spark</groupId><artifactId>spark-core_2.12</artifactId><version>3.2.2</version></dependency><depend…

《PC 上的开源神经网络多模态模型:开启智能交互新时代》

《PC 上的开源神经网络多模态模型&#xff1a;开启智能交互新时代》 一、引言二、多模态模型基础剖析&#xff08;一&#xff09;核心概念解读&#xff08;二&#xff09;技术架构探秘 三、开源多模态模型的独特魅力&#xff08;一&#xff09;开源优势尽显&#xff08;二&…

【面试题】简单聊一下什么是云原生、什么是k8s、容器,容器与虚机相比优势

云原生&#xff08;Cloud Native&#xff09; 定义&#xff1a;云原生是一种构建和运行应用程序的方法&#xff0c;旨在充分利用云计算的优势。它涵盖了一系列技术和理念&#xff0c;包括容器化、微服务架构、自动化部署与管理等。特点&#xff1a;云原生应用程序被设计为可弹性…

C++:字符数组

一、字符数组介绍 数组的元素如果是字符类型&#xff0c;这种数组就是字符数组&#xff0c;字符数组可以是一维数组&#xff0c;可以是二维数组 &#xff08;多维数组&#xff09;。我们接下来主要讨论的是一维的字符数组。 char arr1[5]; //⼀维字符数组 char arr2[3][5];//⼆…