当前位置: 首页 > news >正文

机器学习——期末复习 重点题归纳

第一题

问题描述

现有如下数据样本:

编号色泽敲声甜度好瓜
1乌黑浊响
2浅白沉闷
3青绿清脆
4浅白浊响

(1)根据上表,给出属于对应假设空间的3个不同假设。若某种算法的归纳偏好为“适应情形尽可能少”,则该算法喜欢选择哪些“判断为好瓜”的假设?

(2)若该数据包含噪声,则假设空间中有可能不存在与所有训练样本都一致的假设。在此情形下设计一种合理的归纳偏好用于假设选择。

回答

(1)假设空间中的三个不同假设
  • 假设1:色泽 = 乌黑 ∧ 敲声 = 浊响 ∧ 甜度 = 高 → 好瓜
  • 假设2:色泽 = 青绿 ∧ 敲声 = 清脆 ∧ 甜度 = 中 → 好瓜
  • 假设3:色泽 ≠ 浅白 ∧ 敲声 ≠ 沉闷 ∧ 甜度 ≠ 低 → 好瓜

如果算法的归纳偏好是“适应情形尽可能少”,那么它会选择那些能够覆盖最少正例的假设。在这种情况下,算法可能会选择以下两个假设:

  • 假设1:色泽 = 乌黑 ∧ 敲声 = 浊响 ∧ 甜度 = 高 → 好瓜
  • 假设2:色泽 = 青绿 ∧ 敲声 = 清脆 ∧ 甜度 = 中 → 好瓜

这两个假设分别只覆盖了一个正例,因此它们满足“适应情形尽可能少”的要求。

(2)合理的设计归纳偏好

在存在噪声的情况下,假设空间中可能没有一个假设能完全匹配所有的训练样本。此时可以采用以下几种归纳偏好来选择合适的假设:

  • 最小化错误率:选择使得预测错误率最低的假设。
  • 最大化置信度:选择对正例和负例分类最准确的假设。
  • 简化原则:选择最简单的假设,即参数最少或规则最简洁的假设。

这些归纳偏好可以帮助在有噪声的数据集中找到相对较好的假设。

第二题

问题描述

假设由同一数据分布采样得到两个样本集合 S1 和 S2:

  • S1 包含 6000 个数据样本;
  • S2 包含 120000 个数据样本。

每个样本集均按照 9:1 的比例随机划分为训练集和测试集。请按以下要求,在同一坐标系下清晰地绘制四条曲线,并标记每一条曲线:

  1. 对于每个样本集合,试画出该集合的训练误差曲线和测试误差曲线;纵轴为误差,横轴为模型复杂度。(5 分)
  2. 解释曲线为何这样画的原因,即解释不同曲线的变化趋势以及曲线间的高低位置关系。(5 分)

回答问题

1. 绘制曲线

在这里插入图片描述

2. 曲线变化原因及位置关系
  • 训练误差曲线:随着模型复杂度的增加,模型拟合能力增强,导致训练误差逐渐减小。当模型过拟合时,训练误差会趋于平稳。

  • 测试误差曲线:随着模型复杂度的增加,测试误差先下降是因为模型泛化能力提高。然而,当模型过于复杂时,会出现过拟合现象,导致测试误差再次升高。

  • S1 和 S2 曲线比较:由于 S2 样本量更大,其训练误差和测试误差都会比 S1 更低。同时,S2 的最佳模型复杂度也会更高,因为更多的数据有助于避免过拟合。

通过以上分析,我们可以在同一坐标系下绘制出四条曲线,并解释它们的变化趋势及其相互之间的位置关系。

第三题

问题描述

试简述离群点的基本概念并列出三种应对策略

离群点的基本概念

离群点是远离大部分数据点的点。

应对策略

以下是三种应对离群点的常见策略:

A1:只需忽略这些异常值即可。
A2:转换/归一化:应用平方根或取log,以使x/y的值更小,然后离
群值将更靠近大多数数据点。
A3:引入非线性项:y = b + w1x +w2x2。

第四题

问题描述

给定一个含有缺失值的西瓜数据集,其中前10个样本作为训练集,后5个样本作为验证集。数据集包括编号、色泽、敲击声音、根蒂和是否为好瓜五个属性。任务是在决策树的根节点处基于信息增益原则选择最优划分属性,并讨论预剪枝策略下的决策。

数据集

编号色泽敲击声音根蒂是否为好瓜
1乌黑浊响蜷缩
2-沉闷蜷缩
3青绿-稍蜷
4乌黑浊响蜷缩
5青绿清脆稍蜷
6浅白清脆硬挺
7-沉闷-
8浅白清脆硬挺
9-清脆硬挺
10青绿--
11青绿浊响稍蜷
12浅白清脆稍蜷
13乌黑沉闷蜷缩
14浅白沉闷硬挺
15青绿清脆稍蜷

回答

(1) 决策树的根节点处的选择
计算过程略
信息增益计算
  • 色泽:考虑色泽为乌黑、青绿、浅白的样本。
  • 敲击声音:考虑敲击声音为浊响、清脆、沉闷的样本。
  • 根蒂:考虑根蒂为蜷缩、稍蜷、硬挺的样本。

对于每一个属性,我们需要计算在该属性不同取值下的条件熵,然后计算信息增益。

最终,选择信息增益最大的属性作为根节点的划分属性。

(2) 预剪枝策略下的决策

第五题

题目要求设计一种高效、合理的方案,利用m台机器实现分布式聚类算法。具体来说,需要考虑如何将数据样本划分到每台机器上,并且如何汇总处理每台机器的计算结果。

设计方案

假设我们有m台机器,数据样本为D,特征维度为p,簇类别数为k。

  1. 初始化

    • 随机选择k个初始簇中心。
    • 将数据样本随机划分为m份,分别存储在m台机器上。
  2. 本地聚类

    • 每台机器执行以下操作:
      • 使用当前的簇中心对本地数据进行聚类。
      • 更新本地的簇中心。
  3. 同步与更新

    • 各台机器将自己的簇中心信息发送给主控机。
    • 主控机收集所有簇中心信息,计算新的全局簇中心。
    • 将新的全局簇中心广播给所有机器。
  4. 迭代优化

    • 重复步骤2和步骤3,直到簇中心收敛或达到最大迭代次数。
  5. 结果汇总

    • 根据最终的簇中心,对整个数据集进行重新分配,确定每个样本所属的簇。
    • 返回聚类结果。

通过这种方式,可以在多台机器上并行地执行聚类任务,有效地处理大数据场景下的聚类问题。

第六题

问题

六、Boosting 算法是一种常用的集成算法,试回答以下问题。(20 分)

(1)试描述 Boosting 算法的基本概念。(4 分)

(2)AdaBoost 是 Boosting 中最具代表性的算法,试描述 AdaBoost 算法是如何实现的。(10 分)

(3)AdaBoost 算法通常有如下 2 个局限性:
- 当基学习器的精度小于 50%时,AdaBoost 算法将不能正常运行,试其分析原因。(3 分)
- AdaBoost 算法易受离群点的干扰,试简要描述一种可以减少该干扰的方法。(3 分)

回答

(1)Boosting 算法的基本概念

(1)从初始训练集训练出一个基学习器;
(2)根据学习器的表现对训练样本分布进行调整,使得先前基学习
器做错的样本再后续受到更多关注;
(3)基于调整后的样本分布来训练一个基学习器;
(4)重复2-3,直到基学习器数量达到预设的T值;
(5)将T个基学习器进行加权结合。

(2)AdaBoost 算法如何实现

在这里插入图片描述

(3)AdaBoost 的局限性及解决方法
  • 当基学习器的精度小于 50%时,AdaBoost 算法将不能正常运行

    原因:如果基学习器的精度低于 50%,意味着它比随机猜测还要差,此时 AdaBoost 算法会不断放大这些错误分类样本的权值,导致整体性能下降甚至发散。

  • AdaBoost 算法易受离群点的干扰

    解决方法:使用剪枝技术或对异常值进行预处理。例如,可以通过设置阈值来识别和移除离群点,或者采用其他鲁棒性更强的学习算法作为基学习器。另一种方法是在训练过程中动态调整离群点的权值,使其影响最小化。

第七题

设计一个基于机器学习的高效、科学、合理的算法来检测视频内容是否违规,可以分为以下几个关键步骤:

1. 数据收集与标注

首先需要大量的视频数据作为训练集,包括合规和违规的内容。这一步骤可能需要人工参与,以确保数据的质量和准确性。

2. 特征提取

从视频中提取有助于判断内容是否违规的关键特征。常见的特征类型包括但不限于:

  • 视觉特征:如颜色直方图、纹理特征、人脸检测结果等。
  • 音频特征:如语音情感分析、背景噪音水平等。
  • 文本特征:若视频包含字幕或弹幕信息,则可从中抽取文本特征。

3. 模型选择与训练

根据任务需求和数据特性选择合适的机器学习模型。对于视频内容审核这类复杂场景,深度学习模型(如卷积神经网络CNN、循环神经网络RNN及其变种LSTM/GRU)往往能取得较好的效果。具体步骤如下:

  • 划分数据集为训练集、验证集和测试集。
  • 设计模型结构,定义损失函数和优化器。
  • 使用训练集数据训练模型,利用验证集调优超参数。
  • 在测试集上评估模型性能,确保泛化能力。

4. 异常检测与规则引擎

除了直接使用机器学习模型外,还可以结合一些规则引擎和技术手段来提高系统的准确性和效率:

  • 异常检测:针对某些特定类型的违规行为,如暴力、色情等,可以预先设定一些规则,一旦触发即视为违规。
  • 多模态融合:综合考虑视觉、音频和文本等多种信息源,提升检测的全面性和准确性。

5. 实时监控与反馈机制

为了应对实时上传的海量视频数据,系统应具备高效的批处理能力和实时响应机制:

  • 批量处理:对批量上传的视频进行快速初筛,过滤掉明显合规的内容,集中资源审查可疑视频。
  • 反馈机制:建立用户举报和专家复审通道,及时修正误判情况,持续优化模型表现。

简略版:

  1. 数据收集:从已知违规和非违规视频中收集大量标注数据。
  2. 特征提取:利用深度学习模型如卷积神经网络(CNN)提取视频帧特征。
  3. 模型训练:根据任务需求和数据特性选择合适的机器学习模型。对于视频内容审核这类复杂场景,深度学习模型(如卷积神经网络CNN、循环神经网络RNN及其变种LSTM/GRU)。
  4. 集成学习:结合多个不同类型的分类器以提高准确性和稳定性。
  5. 在线测试:实时监控上传的新视频并应用训练好的模型进行自动审核。
  6. 反馈机制:定期更新模型参数以适应新的违规模式变化。

相关文章:

机器学习——期末复习 重点题归纳

第一题 问题描述 现有如下数据样本: 编号色泽敲声甜度好瓜1乌黑浊响高是2浅白沉闷低否3青绿清脆中是4浅白浊响低否 (1)根据上表,给出属于对应假设空间的3个不同假设。若某种算法的归纳偏好为“适应情形尽可能少”,…...

MYSQL——数据更新

一、插入数据 1.插入完整的数据记录 在MYSQL中,使用SQL语句INSERT插入一条完整的记录,语法如下: INSERT INTO 表名 [(字段名1[,...字段名n])] VALUES (值1[...,值n]); 表名——用于指定要插入的数据的表名 字段名——用于指定需要插入数据…...

Vite 基础理解及应用

文章目录 概要Vite基础知识点1. 快速启动和热更新热更新原理 2. 基于ES模块的构建3. 对不同前端框架的支持 vite.config.js配置实例1. 基本结构2. 服务器相关配置3. 输入输出路径配置4. 打包优化配置 项目构建一、项目初始化二、项目结构理解三、CSS处理四、静态资源处理五、构…...

[JAVA]用MyBatis框架实现一个简单的数据查询操作

基于在前面几章我们已经学习了对MyBatis进行环境配置,并利用SqlSessionFactory核心接口生成了sqlSession对象对数据库进行交互,执行增删改查操作。这里我们就先来学习如何对数据进行查询的操作,具体查询操作有以下几个步骤 创建实体类创建Ma…...

CSS 样式的优先级?

在CSS中,样式的优先级决定了当多个样式规则应用于同一个元素时,哪个样式会被最终使用。以下是一些决定CSS样式优先级的规则: 就近原则: 最后应用在元素上的样式具有最高优先级。这意味着如果两个选择器都应用了相同的样式&#xf…...

Linux驱动开发快速入门——字符设备驱动(直接操作寄存器设备树版)

Linux驱动开发快速入门——字符设备驱动 前言 笔者使用开发板型号:正点原子的IMX6ULL-alpha开发板。ubuntu版本为:20.04。写此文也是以备忘为目的。 字符设备驱动 本小结将以直接操作寄存器的方式控制一个LED灯,可以通过read系统调用可以…...

数据结构《栈和队列》

文章目录 一、什么是栈?1.1 栈的模拟实现1.2 关于栈的例题 二、什么是队列?2.2 队列的模拟实现2.2 关于队列的例题 总结 提示:关于栈和队列的实现其实很简单,基本上是对之前的顺序表和链表的一种应用,代码部分也不难。…...

C# 超链接控件LinkLabel无法触发Alt快捷键

在C#中,为控件添加快捷键的方式有两种,其中一种就是Windows中较为常见的Alt快捷键,比如运行对话框,记事本菜单等。只需要按下 Alt 框号中带下划线的字母即可触发该控件的点击操作。如图所示 在C#开发中,实现类似的操作…...

JVM类加载过程-Loading

一、Class对象的生命周期 .class文件是如何加载到内存中:.class文件是ClassLoader通过IO将文件读到内存,再通过双亲委派的模式进行Loading,再Linking、以及Initializing,代码调用等一系列操作后,进行GC,组成完整的生命周期; 二、双亲委派模式(Loading的过程): 1、类…...

2024年11月19日Github流行趋势

项目名称:build-your-own-x 项目维护者:danistefanovic, rohitpaulk, sarupbanskota 等项目介绍:通过从零开始重新创建你最喜欢的技术来掌握编程。项目star数:312,081项目fork数:29,004 项目名称:freqtrad…...

详细描述一下Elasticsearch索引文档的过程?

大家好,我是锋哥。今天分享关于【详细描述一下Elasticsearch索引文档的过程?】面试题。希望对大家有帮助; 详细描述一下Elasticsearch索引文档的过程? Elasticsearch的索引文档过程是其核心功能之一,涉及将数据存储到…...

基于css的Grid布局和vue实现点击左移右移轮播过渡动画效果

直接上代码&#xff0c;以下代码基于vue2,需要Vue3或者react可以使用国内直连GPT/Claude来帮你转换下 代码如下&#xff1a; // ScrollCardsGrid.vue <template><div class"scroll-cards-container"><!-- 左箭头 --><div v-show"showLef…...

HarmonyOS NEXT应用元服务开发Intents Kit(意图框架服务)习惯推荐方案概述

一、习惯推荐是HarmonyOS学习用户的行为习惯后做出的主动预测推荐。 1.开发者将用户在应用/元服务内的使用行为向HarmonyOS共享&#xff0c;使得HarmonyOS可以基于共享的数据学习用户的行为习惯。 2.在HarmonyOS学习到用户的行为习惯后&#xff0c;会给用户推荐相应功能&#x…...

【AtCoder】Beginner Contest 380-F.Exchange Game

题目链接 Problem Statement Takahashi and Aoki will play a game using cards with numbers written on them. Initially, Takahashi has N N N cards with numbers A 1 , … , A N A_1, \ldots, A_N A1​,…,AN​ in his hand, Aoki has M M M cards with numbers B …...

30. 并发编程

一、什么是多任务 如果一个操作系统上同时运行了多个程序&#xff0c;那么称这个操作系统就是 多任务的操作系统&#xff0c;例如&#xff1a;Windows、Mac、Android、IOS、Harmony 等。如果是一个程序&#xff0c;它可以同时执行多个事情&#xff0c;那么就称为 多任务的程序。…...

【包教包会】CocosCreator3.x框架——带翻页特效的场景切换

一、效果演示 二、如何获取 1、https://gitee.com/szrpf/TurnPage 2、解压&#xff0c;导入cocos creator&#xff08;版本3.8.2&#xff09;&#xff0c;可以直接运行Demo演示 三、算法思路 1、单场景 页面预制体 通过loadScene来切换页面&#xff0c;无法实现页面特效。…...

k8s上面的Redis集群链接不上master的解决办法

问题描述 之前在k8s上面部署了一台node&#xff0c;然后创建了6个redis的pod&#xff0c;构建了一个redis的集群&#xff0c;正常运行。 最近添加了一台slave node&#xff0c;然后把其中的几个redis的pod调度到了slave node上面&#xff0c;结果集群就起不来了&#xff0c;…...

<项目代码>YOLOv8 瞳孔识别<目标检测>

YOLOv8是一种单阶段&#xff08;one-stage&#xff09;检测算法&#xff0c;它将目标检测问题转化为一个回归问题&#xff0c;能够在一次前向传播过程中同时完成目标的分类和定位任务。相较于两阶段检测算法&#xff08;如Faster R-CNN&#xff09;&#xff0c;YOLOv8具有更高的…...

网络编程-002-UDP通信

1.UDP通信的简单介绍 1.1不需要通信握手,无需维持连接,网络带宽需求较小,而实时性要求高 1.2 包大小有限制,不发大于路径MTU的数据包 1.3容易丢包 1.4 可以实现一对多,多对多 2.客户端与服务端=发送端与接收端 代码框架 收数据方一般都是客户端/接收端 3.头文件 #i…...

MySQL更换瀚高语法更换

MySQL更换瀚高语法更换 一、前言二、语句 一、前言 水一篇,mysql更换瀚高之后&#xff0c;一些需要更换的语法介绍 > 二、语句 MySQL瀚高MySQL用法瀚高用法说明ifnull(x,y)coalesce(x,y)相同相同用于检查两个表达式并返回第一个非空表达式。如果第一个表达式不是 NULL&…...

应用升级/灾备测试时使用guarantee 闪回点迅速回退

1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间&#xff0c; 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点&#xff0c;不需要开启数据库闪回。…...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)

概述 在 Swift 开发语言中&#xff0c;各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过&#xff0c;在涉及到多个子类派生于基类进行多态模拟的场景下&#xff0c;…...

大数据零基础学习day1之环境准备和大数据初步理解

学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 &#xff08;1&#xff09;设置网关 打开VMware虚拟机&#xff0c;点击编辑…...

在四层代理中还原真实客户端ngx_stream_realip_module

一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡&#xff08;如 HAProxy、AWS NLB、阿里 SLB&#xff09;发起上游连接时&#xff0c;将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后&#xff0c;ngx_stream_realip_module 从中提取原始信息…...

苍穹外卖--缓存菜品

1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得&#xff0c;如果用户端访问量比较大&#xff0c;数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据&#xff0c;减少数据库查询操作。 缓存逻辑分析&#xff1a; ①每个分类下的菜品保持一份缓存数据…...

基于matlab策略迭代和值迭代法的动态规划

经典的基于策略迭代和值迭代法的动态规划matlab代码&#xff0c;实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...

深度学习水论文:mamba+图像增强

&#x1f9c0;当前视觉领域对高效长序列建模需求激增&#xff0c;对Mamba图像增强这方向的研究自然也逐渐火热。原因在于其高效长程建模&#xff0c;以及动态计算优势&#xff0c;在图像质量提升和细节恢复方面有难以替代的作用。 &#x1f9c0;因此短时间内&#xff0c;就有不…...

Rust 开发环境搭建

环境搭建 1、开发工具RustRover 或者vs code 2、Cygwin64 安装 https://cygwin.com/install.html 在工具终端执行&#xff1a; rustup toolchain install stable-x86_64-pc-windows-gnu rustup default stable-x86_64-pc-windows-gnu ​ 2、Hello World fn main() { println…...

关于easyexcel动态下拉选问题处理

前些日子突然碰到一个问题&#xff0c;说是客户的导入文件模版想支持部分导入内容的下拉选&#xff0c;于是我就找了easyexcel官网寻找解决方案&#xff0c;并没有找到合适的方案&#xff0c;没办法只能自己动手并分享出来&#xff0c;针对Java生成Excel下拉菜单时因选项过多导…...

人工智能 - 在Dify、Coze、n8n、FastGPT和RAGFlow之间做出技术选型

在Dify、Coze、n8n、FastGPT和RAGFlow之间做出技术选型。这些平台各有侧重&#xff0c;适用场景差异显著。下面我将从核心功能定位、典型应用场景、真实体验痛点、选型决策关键点进行拆解&#xff0c;并提供具体场景下的推荐方案。 一、核心功能定位速览 平台核心定位技术栈亮…...