机器学习部分相关概念
数据集(Data Set)即数据的集合,每一条单独的数据被称为样本(Sample)。
对于每个样本,它通常具有一些属性(Attribute)或者特征(Feature),
特征所具体取得值被称为特征值(Feature Value)。
| 色泽 | 根蒂 | 纹理 |
|---|---|---|
| 青绿 | 稍蜷 | 模糊 |
| 乌黑 | 蜷缩 | 清晰 |
如上表所示的西瓜数据集中,色泽、根蒂、纹理就是西瓜的特征,乌黑、青绿为特征“色泽”的特征值。
训练集(Training Set)和测试集(Testing Set):在建立机器学习模型过程中,通常将数据集分为训练集和测试集。其中,训练集用于对模型参数进行训练,测试集用于对训练好的模型进行测试,验证模型的性能好坏,包括准确率、泛化能力。
验证集(Validation Set):用于在训练过程中检验模型的性能,以调整参数和超参数。
验证集是为了使最终模型在测试集上测试之前对模型有一个初步的评价,根据评价结果以调整参数,当模型在验证集上表现不错时,最后在测试集上验证模型的最终性能。若没有验证集,我们只能在最终的测试集上查看测试结果,而此时我们是不能再修改模型参数的,在测试集上验证只是查看模型的最终效果。而模型在训练出来后,根据训练集去调整参数,即使得到效果再好,模型也不一定会在测试集上表现最优。这种情况下,才需要划分出验证集。
评估(Assessment):在训练出算法模型后,为了验证算法模型的好坏,需要对该算法在数据集上根据评价指标进行测试,这个测试过程就是算法的评估。在不同领域,有不一样的评估指标。例如,在信息检索和推荐系统领域,通常使用准确率、召回率作为衡量算法好坏的指标。
模型(Model):模型是一种算法的表达,模型用于在海量数据中查找模式或进行预测。从数据中使用算法得到模型的过程称为学习(Learning)或训练(Training)。
过拟合(Overfitting):过拟合和欠拟合是模型在训练过程中的两种不同状态。过拟合是指模型在训练集上表现很好,但在测试集上却表现很差。模型对训练集“死记硬背”,没有理解数据背后的规律,泛化能力差。过拟合的原因主要是数据噪声太大、特征太多、模型太复杂等造成的,可通过清洗数据、减少模型参数,降低模型复杂度、增加惩罚因子(正则化)等方法加以解决。
欠拟合(Underfitting):模型在训练集上就表现很差,不能获得足够低的误差,无法学到数据背后的规律。欠拟合的原因主要是由于训练样本数量少、模型复杂度过低、参数还未收敛就停止循环等造成的,可通过增加样本数量、增加模型参数、提高模型复杂度、增加循环次数或改变学习率等方法加以解决。

正则化(Regularization):正则化就是在原始模型中引入正则项或惩罚项,以防止过拟合和提高模型泛化性能的一类方法的统称。
交叉验证(Cross Validation):就是通过各种组合切分方式,将数据集划分为不同的训练集和测试集,用训练集对模型进行训练,用测试集测试模型的好坏,由此得到的多个不同的训练集和测试集组合以验证模型的方式称为交叉验证。一般交叉验证用于数据不是很充分的情况下,或为了说明模型效果的稳定。有时,交叉验证也可用于模型选择。
特征选择(Feature Selection):在构建机器学习模型时,选择最具代表性和影响力的特征是非常重要的。特征选择可以帮助提高模型的性能、减少过拟合的风险,并且可以加速模型训练的过程。
特征提取(Feature Extraction):有时候原始数据的特征维度非常高或者包含了大量冗余信息,这时可以利用特征提取的方法将原始特征转换成更加简洁、有效表示的特征,例如主成分分析(PCA)等技术。
多样性(Diversity):在构建集成学习(Ensemble Learning)模型时,多样性是指集成中各个基学习器之间的差异性。通过增加多样性,可以提高集成模型的泛化能力和稳定性。
偏差-方差权衡(Bias-Variance Tradeoff):在机器学习中,模型的误差通常可以分解为偏差和方差两部分。偏差描述了模型预测值与真实值之间的差距,而方差描述了模型对训练数据的敏感程度。偏差-方差权衡是指在模型设计中需要平衡偏差和方差,以获得最优的泛化能力。
超参数调优(Hyperparameter Tuning):在机器学习模型中,除了模型参数外,还存在一些超参数需要事先确定。超参数调优是指通过交叉验证等技术寻找最佳的超参数组合,以提高模型性能。
相关文章:
机器学习部分相关概念
数据集(Data Set)即数据的集合,每一条单独的数据被称为样本(Sample)。 对于每个样本,它通常具有一些属性(Attribute)或者特征(Feature), 特征所具体取得值被称为特征值(Feature Value)。 西瓜数据集 色泽根蒂纹理青绿稍蜷模糊乌黑蜷缩清晰 …...
Apache DolphinScheduler 3.1.9 版本发布:提升系统的稳定性和性能
🚀我们很高兴宣布,Apache DolphinScheduler 的最新版本 3.1.9 已正式发布!此版本在 3.1.8 的基础上进行了关键的 bug 修复和文档更新,共计修复了 14 个 bug 和改进了 3 个文档。 主要更新亮点 本次更新重点解决了以下几个关键问题…...
go-carbon v2.3.1 发布,轻量级、语义化、对开发者友好的 Golang 时间处理库
carbon 是一个轻量级、语义化、对开发者友好的 golang 时间处理库,支持链式调用。 目前已被 awesome-go 收录,如果您觉得不错,请给个 star 吧 github.com/golang-module/carbon gitee.com/golang-module/carbon 安装使用 Golang 版本大于…...
R_handbook_作图专题
ggplot基本作图 1 条形图 library(ggplot2) ggplot(biopics) geom_histogram(aes(x year_release),binwidth1,fill"gray") 2 堆砌柱状图 ggplot(biopics, aes(xyear_release)) geom_bar(aes(fillsubject_sex)) 3 堆砌比例柱状图 ggplot(biopics, aes(xyear_rele…...
关于Python里xlwings库对Excel表格的操作(二十五)
这篇小笔记主要记录如何【如何使用xlwings库的“Chart”类创建一个新图表】。 前面的小笔记已整理成目录,可点链接去目录寻找所需更方便。 【目录部分内容如下】【点击此处可进入目录】 (1)如何安装导入xlwings库; (2…...
2024 年软件工程将如何发展
软件开发目前正在经历一场深刻的变革,其特点是先进自动化的悄然但显着的激增。这一即将发生的转变有望以前所未有的规模简化高质量应用程序的创建和部署。 它不是单一技术引领这一演变,而是创新的融合。从人工智能(AI) 和数字孪生技术,到植根…...
【Git】git基础
Git 命令 git config --globle user.name ""git config --globle user.email ""git config -lgit config --globle --unset []git add []git commit -m ""]git log//当行且美观 git log --prettyoneline//以图形化和简短的方式 git log --grap…...
Linux中账号和权限管理
目录 一.用户账号和组账号: 1.用户账号类型: 2.组账号类型: 3.系统区别用户的方法 : 4.用户账号文件: 二.Linux中账户相关命令: 1.useradd: 2.passwd: 3.usermod:…...
Resnet BatchNormalization 迁移学习
时间:2015 网络中的亮点: 超深的网络结构(突破1000层)提出residual模块使用Batch Normalization加速训练(丢弃dropout) 层数越深效果越好? 是什么样的原因导致更深的网络导致的训练效果更差呢…...
Unity检测地面坡度丨人物上坡检测
Unity检测地面坡度 前言使用 代码 前言 此功能为,人物在爬坡等功能时可以检测地面坡度从而完成向某个方向给力或者完成其他操作 使用 其中我们创建了脚本GradeCalculation,把脚本挂载到人物上即可,或者有其他的使用方式,可自行…...
SASS循环
<template><div><button class"btn type-1">默认按钮</button><button class"type-2">主要按钮</button><button class"type-3">成功按钮</button><button class"type-4">信息…...
Java超高精度无线定位技术--UWB (超宽带)人员定位系统源码
UWB室内定位技术是一种全新的、与传统通信技术有极大差异的通信新技术。它不需要使用传统通信体制中的载波,而是通过发送和接收具有纳秒或纳秒级以下的极窄脉冲来传输数据,从而具有GHz量级的带宽。 UWB(超宽带)高精度定位系统是一…...
系列十一、解压文件到指定目录
一、解压文件到指定目录 1.1、需求 Linux的/opt目录有一个文件zookeeper-3.4.11.tar.gz,我现在想把该文件解压至/usr/local/目录,那么应该怎么做呢? 语法:tar -zxvf xxx -C /usr/local/ tar -zxvf zookeeper-3.4.11.tar.gz -C /u…...
PHP Swoole Client
PHP常用socket创建TCP连接,使用CURL创建HTTP连接,为了简化操作,Swoole提供了Client类用于实现客户端功能,并增加了异步非阻塞模式,让用户在客户端也能使用事件循环。 作为客户端使用,Swoole Client可以在F…...
《QDebug 2023年12月》
一、Qt Widgets 问题交流 1. 二、Qt Quick 问题交流 1.Q_REVISION 标记的信号槽或者 REVISION 标记的属性,在子类中访问 Q_REVISION 是 Qt 用来做版本控制的一个宏。以 QQuickWindow 为例,继承后去访问 REVISION 标记的 opacity 属性或者 Q_REVISION…...
sklearn 中matplotlib编制图表
代码 # 导入pandas库,并为其设置别名pd import pandas as pd import matplotlib.pyplot as plt# 使用pandas的read_csv函数读取名为iris.csv的文件,将数据存储在iris_data变量中 iris_data pd.read_csv(data/iris.txt,sep\t)# 使用groupby方法按照&quo…...
【Docker-Dev】Mac M2 搭建docker的redis环境
Redis的dev环境docker搭建 1、前言2、官方文档重点信息提取2.1、创建redis实例2.2、使用自己的redis.conf文件。 3、单机版redis搭建4、redis集群版4.1、一些验证4.2、一些问题 结语 1、前言 本文主要针对M2下,相应进行开发环境搭建,然后做一个文档记录…...
docker +gitee+ jenkins +maven项目 (一)
jenkins环境和插件配置 文章目录 jenkins环境和插件配置前言一、环境版本二、jenkins插件三、环境安装总结 前言 现在基本都是走自动化运维,想到用docker 来部署jenkins ,然后jenkins来部署java代码,做到了开箱即用,自动发布代码…...
IDEA 开发中常用的快捷键
目录 Ctrl 的快捷键 Alt 的快捷键 Shift 的快捷键 Ctrl Alt 的快捷键 Ctrl Shift 的快捷键 其他的快捷键 Ctrl 的快捷键 Ctrl F 在当前文件进行文本查找 (必备) Ctrl R 在当前文件进行文本替换 (必备) Ctrl Z 撤…...
Ubuntu Desktop 死机处理
Ubuntu Desktop 死机处理 当 Ubuntu Desktop 死机时,除了长按电源键重启,还可以使用如下两种方式处理。 方式1:ctrlaltFn 使用 ctrl alt F3~F6: 切换到其他 tty 命令行。 执行 top 命令查看资源占用最多的进程,然后使用 kill…...
Linux应用开发之网络套接字编程(实例篇)
服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...
Zustand 状态管理库:极简而强大的解决方案
Zustand 是一个轻量级、快速和可扩展的状态管理库,特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...
【Java学习笔记】Arrays类
Arrays 类 1. 导入包:import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序(自然排序和定制排序)Arrays.binarySearch()通过二分搜索法进行查找(前提:数组是…...
Qt Widget类解析与代码注释
#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码,写上注释 当然可以!这段代码是 Qt …...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...
高防服务器能够抵御哪些网络攻击呢?
高防服务器作为一种有着高度防御能力的服务器,可以帮助网站应对分布式拒绝服务攻击,有效识别和清理一些恶意的网络流量,为用户提供安全且稳定的网络环境,那么,高防服务器一般都可以抵御哪些网络攻击呢?下面…...
智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...
Java多线程实现之Thread类深度解析
Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...
C++使用 new 来创建动态数组
问题: 不能使用变量定义数组大小 原因: 这是因为数组在内存中是连续存储的,编译器需要在编译阶段就确定数组的大小,以便正确地分配内存空间。如果允许使用变量来定义数组的大小,那么编译器就无法在编译时确定数组的大…...
PAN/FPN
import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...
