人工智能之机器学习5-回归算法1【培训机构学习笔记】

devtools/2024/11/23 23:06:04/

培训内容:

模型评估

培训班上课的PPT里很多错误,即使讲了很多年也从没改正过来。

而且很多字母没有给出具体的解释,比如RSS和TSS,对初学者非常不友善。

个人学习:

分类和回归的区别

回归和分类机器学习和统计学中两种常见的监督学习任务,二者主要在以下几个方面存在区别:

目标

  • 回归:主要用于预测一个连续的数值型目标变量,例如预测房价、股票价格、气温等。其目标找到输入特征与连续输出之间的映射关系,使得预测值尽可能接近真实的数值
  • 分类:则是将输入数据划分到不同的类别中输出是离散的类别标签,比如判断一封邮件是垃圾邮件还是正常邮件,一张图片是猫还是狗等,旨在找到输入特征与类别之间的决策边界,以准确地对数据进行分类。

输出变量类型

  • 回归输出的是一个数值,这个数值可以是整数,也可以是实数,例如预测的房价可能是 50.5 万元,股票价格可能是 123.45 元等。
  • 分类输出的是有限个离散的类别,如二分类问题中的正类和负类,分别用 0 和 1 表示;或者多分类问题中的不同类别,如 A、B、C 等。

评估指标

  • 回归:常用的评估指标有均方误差(MSE)平均绝对误差(MAE)均方根误差(RMSE)等这些指标衡量的是预测值与真实值之间的差异程度,差异越小,说明回归模型的性能越好。
    • 均方误差的计算公式为:MSE = \frac{1}{n}\sum_{i=1}^{n}(y^{_{i}}-\hat{y}^{_{i}})^{2},其中y^{_{i}}  是真实值, \hat{y}^{_{i}}是预测值, n是样本数量。
    • 平均绝对误差的计算公式为:MAE = \frac{1}{n}\sum_{i=1}^{n}|y^{_{i}}-\hat{y}^{_{i}}|
    • 均方误差则是均方误差的平方根,即 RMSE = \sqrt{MSE}
  • 分类:常见的评估指标包括准确率(Accuracy)、精确率(Precision)、召回率(Recall)、F1 值等。

模型选择

回归
  • 常见的回归模型线性回归、多项式回归、岭回归、Lasso 回归等。
  • 线性回归假设输入特征与输出之间存在线性关系,通过最小二乘法等方法拟合出最佳的线性模型;
  • 多项式回归则可以处理非线性关系,通过增加特征的幂次来构建更复杂的模型;
  • 回归Lasso 回归则是在普通线性回归的基础上加入了正则化项,用于防止过拟合
分类
  • 常用的分类模型逻辑回归、决策树、支持向量机、朴素贝叶斯、神经网络等
  • 逻辑回归虽然名字中带有 “回归”,但实际上是一种用于二分类的广义线性模型,它通过 Sigmoid 函数将线性回归的结果映射到 0 到 1 之间,从而得到属于正类的概率
  • 决策树通过构建树状结构来进行分类决策每个内部节点是一个属性上的测试,分支是测试输出,叶节点是类别或类别分布;
  • 支持向量机则是寻找一个最优的超平面来将不同类别的数据分开
  • 朴素贝叶斯基于贝叶斯定理和特征条件独立假设来计算属于各个类别的概率,从而进行分类
  • 神经网络通过多个神经元组成的网络结构来学习复杂的分类边界,具有很强的非线性拟合能力

损失函数

  • 回归:通常使用均方误差损失函数,即模型预测值与真实值之间差的平方和的平均值。其目的是使预测值尽可能地接近真实值,通过最小化均方误差来调整模型的参数
  • 分类不同的分类模型使用的损失函数有所不同。例如,逻辑回归使用对数损失函数,也称为交叉熵损失函数,它衡量的是预测概率分布与真实概率分布之间的差异,通过最小化交叉熵损失来优化模型参数,使得预测的类别概率更加接近真实的类别分布;支持向量机使用合页损失函数,其目标是找到一个能够最大化间隔的超平面,使得分类错误的样本尽可能少,并且尽可能远离决策边界。

回归和分类目标、输出变量类型、评估指标、模型选择和损失函数等方面都存在明显的区别,在实际应用中,需要根据具体的问题和数据特点来选择合适的任务类型和相应的模型。


http://www.ppmy.cn/devtools/136402.html

相关文章

FPC柔性线路板与智能生活的融合

一、在智能家居中的应用 FPC柔性线路板因其可弯曲、可折叠的特性,被广泛应用于智能家居设备中,用于连接各种传感器和执行器,实现家居设备的智能化控制。例如,智能窗帘、智能照明系统等,都可以通过FPC实现灵活布线&…

ArcGIS计算水库库容量

一、数据获取 DEM数据来源于地理空间数据云,该网站是由中科院计算机网络信息中心于2008年创立的地学大数据平台。 二、填洼 将DEM数据中凹陷的区域填充至与倾斜点同样高度,这里的【Z限制】说的是设定一个特定的值,凹陷区域的最低点高程与倾斜…

uniapp rpx兼容平板

问题: 使用uniapp开发平板端时, rpx/upx 内容过小, 没有适应屏幕 原因: uniapp 默认支持最大设备宽度为960px 而平板宽度超出了960 uniapp官方文档https://uniapp.dcloud.io/collocation/pages?idglobalstyle 解决: // pages.json 文件: {//..."globalSt…

vue 目录结构

vue 目录结构 目录结构 my-vue-app/ │ ├── node_modules/ │ └── ... (项目依赖库) │ ├── public/ │ ├── favicon.ico (网站图标) │ └── index.html (主HTML文件) │ ├── src/ │ ├── assets/ (静态资源,如图片、样式文件等) │…

网页中调用系统的EXE文件,如打开QQ

遇到一个实际的问题,需要在网页中打开本地的某个工业软件。 通过点击exe文件就可以调用到程序。 比如双击qq的exe就可以启动qq的程序。 那么问题就变成了如何加载exe程序呢? 可以通过Java的 Process process Runtime.getRuntime().exec(command);通过…

数据结构-树状数组专题(1)

一、前言 树状数组可以解决部分区间修改和区间查询的问题&#xff0c;相比于线段树&#xff0c;代码更加简单易懂 二、我的模板 搬运jiangly鸽鸽的模板&#xff0c;特别注意这个模板中所有涉及区间的都是左闭右开区间&#xff0c;且vector的有效下标都从0开始 template <…

时间类的实现

在现实生活中&#xff0c;我们常常需要计算某一天的前/后xx天是哪一天&#xff0c;算起来十分麻烦&#xff0c;为此我们不妨写一个程序&#xff0c;来减少我们的思考时间。 1.基本实现过程 为了实现时间类&#xff0c;我们需要将代码写在3个文件中&#xff0c;以增强可读性&a…

微信小程序+Vant-自定义选择器组件(单选带筛选

实现效果 筛选是filter&#xff0c;搜索框如有显隐需要&#xff0c;需自行添加配置显隐参数弹出层高度样式需要手动修改&#xff0c;需自行添加配置高度参数.json文件配置"component": true, 实现代码 组件代码 <van-popup show"{{ show }}" posit…