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

大连理工大学选修课——机器学习笔记(2):机器学习的一般原理

机器学习的一般原理

基于实例的学习及其术语

家用汽车

属性为:价格和发动机的马力

描述方法: x = [ x 1 x 2 ] x = \begin{bmatrix} x_1\\ x_2\\ \end{bmatrix} x=[x1x2]

r = { 1 正例 0 负例 r=\left\{ \begin{matrix} 1 \ 正例\\ 0 \ 负例\\ \end{matrix} \right. r={1 正例0 负例

X = { x t , r t } t = 1 N X={\{x^t,r^t\}}^N_{t=1} X={xt,rt}t=1N

假设类

( p 1 < = p r i c c e < = p 2 ) A N D ( e 1 < = e n g i n e p o w e r < = e 2 ) (p_1<=pricce<=p_2)AND(e_1<=engine \ power<=e_2) (p1<=pricce<=p2)AND(e1<=engine power<=e2)

确定类别的边界

  • 矩形的集合H

  • 特定的矩形 h ∈ H , h\in H, hH,最接近于理想的边界-矩形C.

    在这里插入图片描述

  • 机器学习的目标:将h分为1和0,判断是正例负例

  • 经验误差:

    • E ( h ∣ X ) = ∑ 1 ( h ( x t ) ! = r t ) E(h|X)=\sum1(h(x^t)!=r^t) E(hX)=1(h(xt)!=rt)
    • l ( a ≠ b ) = { 1 a ≠ b 0 a = b l(a\neq b)=\left\{ \begin{matrix} 1\ a\neq b\\ 0\ a=b \end{matrix} \right. l(a=b)={1 a=b0 a=b

对假设类的评价

  • 泛化效果好
    • 找到了最好的矩形
    • 最特殊的假设:泛化能力差,过拟合。
    • 最一般的假设:欠拟合的假设,过于宽泛。

训练集相容

  • 假设 h ∈ H h\in H hH在训练集S上零误差,则称h与训练集相容

(即 h h h能够完美拟合训练数据,但不一定能泛化到新数据)

  • S:最特殊的假设

    • 严格你和训练数据,可能过拟合。
  • G:最一般的假设

    • 覆盖更广的范围,可能欠拟合。
  • 在假设空间H中,S和G定义了泛化能力的边界(即假设的“最紧”和”最松“限制)

    在这里插入图片描述

  • 当训练集 X X X最够大时,可能收敛到唯一的S和G。

  • 在许多实际问题中,S和G之间的实例(即假设的泛化程度)是不确定的,可以通过验证集调整。

VC维

定义:VC维是机器学习理论中用于衡量一个假设类容量的表示该假设类能够打散(shatter)的最大样本数量,反映了模型拟合复杂数据的能力。

  • 打散(shatter)
    • 给定一个假设类 H H H和一个包含n个样本的数据集D,如果H能对D的所有组合进行完美分类,则称H打散了D。
  • VC维是假设类H能打散的最大样本数d。若H能打散任意大的数据集,称VC维为无穷大。

举例:二维空间四个点的情况

在二维平面中,用轴平行矩形最多能打散4个点。

线性分类器的VC维为3

  • 较小维度的VC维也有其应用价值,可以应用于简单任务,泛化性好。

  • VC维越高,模型越复杂,需要避免过拟合。

    在这里插入图片描述

多值分类

  • 假设需要学习K个假设

    h i ( x t ) = { 1 i f x t ∈ C i 0 i f x t ∈ C j , j ≠ i h_i(x^t)= \begin{cases} 1\quad if \ x^t\in C_i\\ 0\quad if \ x^t\in C_j, j\neq i \end{cases} hi(xt)={1if xtCi0if xtCj,j=i

  • 计算多类的经验误差

    E = ∑ t ∑ i 1 ( h i ( x t ) ≠ r i t ) E=\sum_t\sum_i1(h_i(x^t)\neq r_i^t) E=ti1(hi(xt)=rit)

    其中,h为预测值,r为真实值。内层求和为遍历所有类别,外层求和遍历所有样本。

回归

  • 布尔值→连续变化的数值

  • r t = f ( x t ) r^t=f(x^t) rt=f(xt)

  • 寻找最小经验误差的学习模型 g ( x ) g(x) g(x)

    E ( g ∣ X ) = 1 N ∑ [ r t − g ( x t ) ] 2 E(g|X)=\frac{1}{N}\sum[r^t-g(x^t)]^2 E(gX)=N1[rtg(xt)]2

    当前学习模型的损失函数

以开头的二手车为例:

y = w 1 x + w 0 y=w_1x+w_0 y=w1x+w0

通过最小二乘法可以计算拐点(极值点):

w 1 = w_1=\frac{}{} w1= ∑ t x t r t − x r ‾ N ∑ t ( x t ) 2 − N x ‾ 2 \frac{\sum_tx^tr^t-\overline{xr}N}{\sum_t(x^t)^2-N\overline{x}^2} t(xt)2Nx2txtrtxrN

w 0 = r ‾ − w 1 x ‾ w_0=\overline{r}-w_1\overline{x} w0=rw1x

噪声的影响

噪声的定义:错误样本

  • 应对策略:
    1. 增加假设类复杂性
    2. 增大样本规模
  • 简单模型的泛化能力强
  • 奥卡姆剃刀:简单更可信。

在这里插入图片描述

学习模型的选择

  • 布尔函数的输入
    • 每个输入特征为二元值

    • d个样本的输入,有 2 d 2^d 2d种情况,对应 2 2 d 2^{2^d} 22d个函数。

    • 举例:假设有两个特征 x 1 , x 2 x_1,x_2 x1,x2

      在这里插入图片描述

    • 随着每个样本的输入,都会排除掉一半假设,为了得到单个假设,需要有 2 d 2^d 2d个样本,但指数级很难得到,因此实际情况,只能拿到的样本只是一个 2d 个样本的小子集。

不适定问题

  • N个样本输入,存在 2 2 d 2^{2^d} 22d个可能的布尔函数无法确定,得不到唯一解。
  • 因此大部分情况都是近似解。

归纳偏倚

现有数据量不足以找到唯一解,因此需要猜测或者假设。

为了使学习成为可能,所做的假设集合称为 归纳偏倚。

模型选择

  • 在众多可能的假设类中选择正确的,通过泛化性判断性能。

欠拟合

训练集表现差,验证集表现差。

  • 提高模型复杂度

过拟合

训练集表现好,验证集表现差。

  • 降低模型复杂度。
  • 增加样本

模型规模与模型复杂性的关系

  • 一般情况下,增大训练规模,预测误差会降低
  • 随着模型复杂性的增加,预测误差先降低后增加

训练方法

  1. 将训练集的一部分抽取作为验证集。
  2. 交叉验证:最好的假设→于验证集上的精确。
  3. 模型的测试:设置测试集(也成为发布集)
  4. 测试集和它们不同:不参与训练。

常用术语

数据:计算机处理和存储的信息。
样本:从数据集抽取出来的一部分。
噪声:错误样本。

建模:解决问题而建立的学习模型。
估计:确定机器学习模型参数的值。

学习和训练:在机器学习领域,这两个概念等价。

分类和回归分析

  • 分类的预测结果是离散的,状态数量有限。
  • 回归分析的预测结果是连续的,状态数量无限。

有监督的学习:训练样本带有类别信息。
无监督的学习:数据样本没有类别信息,也没有先验的类别知识。
归纳学习:从大量的经验数据中归纳抽取出一般的判定规则和模式,是从特殊情况推导出一般规则的学习方法。

基于实例的学习:从训练样本中找寻主导预测的内在规律。
拟合:形象的说,拟合就是把平面上一系列的点,用一条光滑的曲线连接起来,后来这个概念被推广到分类模型的设计上。
欠拟合 underfitting:复杂性比潜在函数复杂性低的假设。

过拟合 overfitting:对于复杂性比潜在函数复杂性高的假设。
样本特征:被观测的样本实例(instances)具有多个属性(d >=1),这些属性被称为特征。
多维空间:在此是指样本的属性
泛化:对未知数据做出准确预测,说它能够从训练集泛化(generalize)到测试集。
交叉检验和测试:

在这里插入图片描述

模型评价的指标:

  • 精确率(Precision)、召回率(Recall)和 F1(F-Measure)值常被放在一起作比较
  • TP(True Positive):本来是正样本,被模型预测为正样本。
  • TN(True Negative):本来是负样本,被模型预测为负样本。
  • FP(False Positive):本来是负样本,被模型预测为正样本。
  • FN(False Negative):本来是正样本,被模型预测为负样本。

**偏差:**bias是指预测值对真值的偏离,欠拟合也称为高偏差(high bias)。

**方差:**统计中的方差是每个样本值与全体样本值的平均数之差的平方值的平均数。
**预测风险:对事件发生所造成的损失作出定量估计
损失函数:**取值映射为非负实数以表示该随机事件的“风险”或“损失”的函数数据。

机器学习关键环节

  • 学习的样本集**:**
    • 样本遵循独立同分布
  • **目标:**找到一个拟合函数。
  • 三个环节:
    1. 选定学习模型。
    2. 确定损失函数。
    3. 最优化过程。
  • 机器学习的条件
    • 假设类的容量足够大
    • 足够多的训练数据
    • 好的优化方法
  • 不同机器学习方法的区别
    • 模型不同
    • 损失函数不同
    • 最优化过程不同

模型选择

  1. 考虑机器学习算法的目的
    1. 如果要预测目标变量的值,优先有监督学习法
    2. 否则可以选择无监督学习法
  2. 确定目标变量类型
    1. 离散型:分类算法
    2. 连续性:回归算法
  3. 如果不想预测目标变量的值,采用非监督学习算法
    1. 需要将数据划分为离散的组, 则使用聚类算法
    2. 需要估计数据与每个分组的相似程度, 则需要使用密度估计算法

机器学习应用开发经典步骤

  1. 数据采集和标记
  2. 数据清洗
  3. 特征选择
  4. 模型选择
  5. 模型训练和测试
  6. 模型性能评估和优化
  7. 模型使用
http://www.xdnf.cn/news/227251.html

相关文章:

  • 智能检索革命全景透视——基于《搜索引擎信息检索困境破解体系》深度拆解
  • 数据结构篇:线性表的另一表达—链表之单链表(下篇)
  • 宇树科技开启“人形机器人格斗盛宴”
  • LeetCode 2302.统计得分小于 K 的子数组数目:滑动窗口(不需要前缀和)
  • Java架构师深度技术面试:从核心基础到分布式架构全解析
  • Milvus(11):动态字段、可归零和默认值
  • 基于开源AI智能名片链动2+1模式S2B2C商城小程序的私域电商与微商融合创新研究
  • 基于Docker的Elasticsearch ARM64架构镜像构建实践
  • vue 和 html 的区别
  • 20250430在ubuntu14.04.6系统上查看系统实时网速
  • 运营岗位选择
  • 多用户远程 Debugger 服务隔离方案技术实践
  • Java使用 MyBatis-Plus 实现前端组装查询语句、后端动态执行查询的功能,
  • 使用vue开发electron
  • Git从入门到精通-第二章-工具配置
  • 软考中级-软件设计师 数据结构(手写笔记)
  • 文献分享:CovEpiAb-冠状病毒免疫表位及抗体数据库
  • HCIP-数据通信datacom认证
  • 【RustDesk 】中继1:压力测试 Python 版 RustDesk 中继服务器
  • 【安全扫描器原理】基于协议的服务扫描器
  • 欧洲分子生物学实验室EMBL介绍
  • 详解具身智能机器人开源数据集:RoboMIND
  • 数字孪生技术十大创新应用场景与工程实践
  • Vue3 Echarts 3D立方体柱状图实现教程
  • 碰一碰发视频源码||客户端开发实战:NFC+低延迟传输技术实现引言
  • 【每日八股】复习 Redis Day3:Redis 的应用
  • 电脑干货:开源免费的QQ空间说说下载工具GetQzonehistory
  • 海外社交软件开发进阶:AI驱动与高可用架构的深度实践
  • Unity3D仿星露谷物语开发40之割草动画
  • 32单片机——独立看门狗