机器学习的复习笔记3-回归的细谈

一、回归的细分

机器学习中的回归问题是一种用于预测连续型输出变量的任务。回归问题的类型和特点如下:

  1. 线性回归(Linear Regression):线性回归是回归问题中最简单的一种方法。它假设自变量与因变量之间存在线性关系,并通过最小化预测值与真实值之间的差距来拟合最优直线。线性回归易于解释和实现,但对于非线性关系的建模能力有限。
  2. 多项式回归(Polynomial Regression):多项式回归是在线性回归的基础上引入多项式特征的一种方法。通过添加高次项来拟合更复杂的数据模式,可以更好地适应非线性关系。然而,多项式回归容易出现过拟合问题。

  3. 岭回归(Ridge Regression):岭回归是一种正则化线性回归方法,通过引入L2正则化项来控制模型的复杂度,防止过拟合。岭回归在特征之间存在共线性(即高度相关)时表现较好。【其核心思想是在最小化残差平方和的同时,加上一个惩罚项,该惩罚项与模型的参数大小有关。这个惩罚项可以将参数的估计值向零进行偏移,从而减少参数估计的方差。具体而言,岭回归使用L2范数作为惩罚项,即将参数的平方和添加到残差平方和中。】

  4. Lasso回归(Lasso Regression):Lasso回归是另一种正则化线性回归方法,通过引入L1正则化项来促使模型具有稀疏性,即自动选择对预测目标更重要的特征。Lasso回归可以用于特征选择和降维。

  5. 弹性网回归(Elastic Net Regression):弹性网回归是岭回归和Lasso回归的结合,既具有L1正则化项的稀疏性特征选择能力,又具有L2正则化项的共线性处理能力。

  6. 支持向量回归(Support Vector Regression,SVR):支持向量回归是一种非常灵活的回归方法,通过引入核函数将输入空间映射到高维特征空间,从而实现非线性回归。SVR通过定义一个边界带,尽量使观测值落在该带内,同时最小化预测误差。【它基于支持向量机(Support Vector Machine,SVM)的思想,将分类问题扩展到回归问题上。

    与传统的回归方法不同,SVR的目标是找到一个边界,使得样本点尽可能地落在该边界内,并且最大化落在边界上的样本之间的间隔。SVR通过引入一个容忍度范围(ε-tube)来容忍落在边界附近的样本点,即允许一部分样本点的预测误差落在容忍度范围内。因此,SVR旨在构建一个能够良好拟合数据并具有较小预测误差的超平面。

    SVR的核心思想是通过寻找支持向量来建立回归模型。支持向量是指那些离边界最近的样本点,它们对于构建回归模型具有重要的作用。SVR的目标是找到一个最小化经验风险和模型复杂度的平衡点,从而获得一个效果良好且具有较好泛化能力的回归模型。

    SVR可以使用不同的核函数来处理线性和非线性回归问题。常用的核函数包括线性核函数、多项式核函数和高斯径向基核函数等。这些核函数可以将原始样本映射到高维空间,从而使得原本线性不可分的问题在高维空间中变得线性可分。

    SVR具有以下特点:SVR可以处理非线性回归问题,并具有较好的泛化能力。SVR通过引入容忍度范围(ε-tube)来允许一定的预测误差,增强了模型对噪声的鲁棒性。

 总之,支持向量回归是一种用于解决回归问题的机器学习方法,通过寻找支持向量和引入容忍度范围来建立回归模型,能够处理非线性问题并具有较好的泛化能力。SVR的模型复杂度受支持向量数量的影响,通过选择合适的核函数和正则化参数,可以控制模型的复杂度,避免过拟合。SVR适用于小样本和高维数据的回归问题,具有较好的稳定性和性能。】

【当你无法在平面解决问题,你就要试图提升到空间维度解决问题】

7.决策树回归(Decision Tree Regression):决策树回归使用树结构来建模数据,每个节点代表一个特征变量,每个分叉代表一个判断条件,每个叶节点代表一个输出值。决策树回归具有很好的解释性和非线性建模能力,但容易过拟合。

8.随机森林回归(Random Forest Regression):随机森林回归是基于决策树的集成学习方法,通过构建多个决策树并取其平均或投票来进行回归预测。随机森林回归具有较好的鲁棒性和泛化能力,能够处理高维数据和特征选择。【随机森林选取】

随机森林回归是一种集成学习算法,用于解决回归问题。它结合了决策树和随机性的特点,能够应对高维数据和复杂关系的建模。

随机森林回归的主要步骤如下:

①数据准备:将数据集划分为训练集和测试集,确保数据的质量和完整性。

②随机抽取自助采样集:从训练集中随机有放回地抽取一部分样本,形成一个新的子训练集,样本数与原训练集相同。

③随机选择特征子集:从所有特征中随机选择一部分特征,形成一个新的子特征集。

④构建决策树:使用子训练集和子特征集构建决策树模型。在构建过程中,采用递归的方式选择最佳的划分特征和划分点,直到满足终止条件(如节点中样本数小于某个阈值或达到最大深度)。

④构建多棵决策树:重复步骤2和步骤3,构建多棵决策树形成随机森林。

⑤预测:使用测试集数据,在每棵决策树上进行预测,并取平均值或投票得到最终的预测结果。

随机森林回归具有以下优点:

随机性能够降低过拟合的风险,提高模型的泛化能力。

能够处理高维数据和复杂关系,对异常值和缺失值具有较好的鲁棒性。

能够评估特征的重要性,用于特征选择和特征工程。

相对于单个决策树,随机森林可以更准确地进行预测。

需要注意的是,随机森林回归也有一些限制:

对于具有大量特征和少量样本的问题,可能存在过拟合的情况。

随机森林构建过程中需要消耗较多的计算资源和时间。

随机森林的模型可解释性相对较弱。

9.梯度提升回归(Gradient Boosting Regression):梯度提升回归是一种迭代的集成方法,通过逐步改善残差来拟合模型,并组合多个弱回归器的预测结果。梯度提升回归在回归问题上表现出色,但对于大规模数据集和异常值敏感。

10.神经网络回归(Neural Network Regression):神经网络回归使用多层神经网络来进行回归预测,可以灵活地建模复杂的非线性关系。神经网络回归通常需要大量的数据和计算资源来训练,但可以获得较好的预测性能。

二、回归可以实现分类吗?

机器学习中的回归模型本质上是用于预测连续型输出变量的,而分类则是将样本划分到不同的离散类别中。虽然回归和分类是两个不同的任务,但有一些方法可以通过对回归结果进行适当处理来实现分类。

一种常见的方法是使用阈值(Threshold)来将回归输出转化为二元分类。例如,设定一个阈值,当回归输出大于该阈值时,将样本分类为一类;当回归输出小于等于该阈值时,将样本分类为另一类。这种方法简单直观,但需要合理选择阈值,且不能处理多类分类问题。

另一种方法是使用回归模型的输出概率来进行分类。例如,对于线性回归模型,可以使用逻辑函数(如sigmoid函数)将回归输出映射到[0,1]区间,表示概率。根据概率大小,将样本分配给具有最高概率的类别。这种方法通常被称为逻辑回归,虽然名字中带有"回归",但实际上是一种二元分类算法。

还有一些其他方法,如支持向量回归(SVR)可以通过设置不同的阈值来实现多类分类。随机森林回归和梯度提升回归等集成模型也可以在回归结果的基础上进行分类。这些方法在实践中往往能够拟合非线性的决策边界。

需要注意的是,尽管可以通过适当的处理实现分类,但这样的方法可能无法完全满足分类问题的要求。为了更好地解决分类问题,通常会使用专门设计的分类算法,如逻辑回归、支持向量机、决策树、随机森林和神经网络等。这些算法在设计上更加关注离散类别的划分,具有更好的分类性能。因此,在实际应用中,建议根据具体问题的特点选择适合的分类算法。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/188386.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot+Redis获取电脑信息

获取电脑信息 测试 System.getProperties(); System: 是Java中的一个内置类,用于提供与系统相关的功能和信息。这个类中包含了一些静态方法和常量,可以让您方便地访问和操作系统级别的资源。 getProperties(): 是一个静态方法,它返回一个表示…

【Azure 架构师学习笔记】- Azure Databricks (1) - 环境搭建

本文属于【Azure 架构师学习笔记】系列。 本文属于【Azure Databricks】系列。 前言 Databricks 已经成为了数据科学的必备工具,今时今日你已经很难抛开它来谈大数据,它常用于做复杂的ETL中的T, 数据分析,数据挖掘等,…

TA-Lib学习研究笔记(二)——Overlap Studies下

TA-Lib学习研究笔记(二)——Overlap Studies下 (11)SAR - Parabolic SAR 抛物线指标 函数名:SAR 名称: 抛物线指标 简介:抛物线转向也称停损点转向,是利用抛物线方式,随…

在Android上搭建一个NDK项目

首先New Project,选择Native C,点击Next。 填入项目名称和包名,点击Next。 这里我们选择Cmake默认的C版本。 创建好的项目目录,里面比我们正常的Android项目多了一个cpp目录 打开MainActivity。里面定义了一个jni方法stringFromJN…

ubantu配置网卡ip

1.ifconfig查看网卡 2. vi /etc/network/interfaces auto ens33 # 网卡名 iface ens33 inet static # 注意网卡名 address 192.168.43.10 # 配置ip地址 netmask 255.255.255.0 # 掩码 gateway 192.168.43.1 # 网关 3.重启网卡 ifconfig ens33 down ifco…

如何判断数据库慢 SQL 查询?

慢 SQL 查询通常指执行时间较长或者消耗大量系统资源的查询。要判断一个 SQL 查询是否慢,可以考虑以下几个方面: 执行时间: 观察查询执行所需的时间。如果一个查询花费了相对较长的时间才能返回结果,可能就是慢查询的一个指标。通…

visual Studio MFC 平台实现图像增强中Gray-level slicing,Bit-plane slicing,对比度拉伸三种方法

MFC 实现图像增强–分段式变换 本文使用visual Studio MFC 平台实现图像增强中的第三大类分段式变换中的三种方法,包括Gray-level slicing,Bit-plane slicing,对比度拉伸. 关于其他MFC单文档工程可参考 01-Visual Studio 使用MFC …

【性能测试】性能分析和调优——步骤及案例

文章目录 性能测试瓶颈分析常见的性能瓶颈分析性能调优性能调优步骤 性能调优案例案例一——CPU案例二——网络案例三——SQL查询案例四——JVM内存溢出 阅读前建议先了解前一篇文章:【性能测试】性能测试监控关键指标 性能测试瓶颈分析 常见的性能瓶颈分析 1、服…

Excel导入操作

<template><el-dialogwidth"500px"title"员工导入":visible"showExcelDialog"close"$emit(update:showExcelDialog, false)"><el-row type"flex" justify"center"><div class"upload-e…

css 三栏布局的实现

三栏布局在前端页面设计中是一个常见的布局方式&#xff0c;通常包含左侧、中间和右侧三个部分。这种布局方式在多种场景中都很受欢迎&#xff0c;例如博客、新闻网站和企业官网。本文将详细介绍三栏布局的实现方法&#xff0c;包括用法、代码、深入理解&#xff0c;以及配合高…

目标检测——Mask R-CNN算法解读

论文&#xff1a;Mask R-CNN 作者&#xff1a;Kaiming He Georgia Gkioxari Piotr Dollar Ross Girshick 链接&#xff1a;https://arxiv.org/abs/1703.06870 代码&#xff1a;https://github.com/facebookresearch/Detectron R-CNN系列其他文章&#xff1a; R-CNN算法解读SPP…

List集合,遍历,数据结构

一.List常见的方法&#xff1a; 二. List集合的遍历方式 除了 迭代器遍历 增强for遍历 Lambda表达式遍历&#xff0c;还有自己独有的普通for遍历&#xff0c;列表迭代器遍历 1.迭代器遍历 2.增强for遍历 3.Lambda表达式遍历 4.普通for遍历 5.列表迭代器遍历 列表迭代器相对于…

CCFCSP试题编号:202009-2试题名称:风险人群筛查

#include <iostream> using namespace std;//判断是否在区域 bool isIn(int xl, int yd, int xr, int yu, int x, int y) {if ((x > xl && x < xr) && (y > yd && y < yu)){return true;}return false; }struct position {int a, b;…

HashMap底层实现原理详解

一、HashMap重要知识点 HashMap是无序且不安全的数据结构。HashMap 是以key–value对的形式存储的&#xff0c;key值是唯一的&#xff08;可以为null&#xff09;&#xff0c;一个key只能对应着一个value&#xff0c;但是value是可以重复的。HashMap 如果再次添加相同的key值&…

管理Windows资产新方式:SSH协议

配置默认shell&#xff0c;需要管理员权限运行powershell执行下面命令&#xff1a; New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -PropertyType String -F…

安卓小程序与编译抓包

APK小程序渗透测试 查找bp的证书 在浏览器中打开bp代理&#xff0c;然后在网页中搜索hppps://burp 点击高级——接受风险并继续 拿到证书 将浏览器信任证书 打开设置 搜索证书——查看证书 点击导入——导入证书 证书验证成功后&#xff0c;访问网页&#xff08;吾爱破解&a…

iOS 开发高效率工具包:10 大必备工具

​ 作为 iOS 开发人员&#xff0c;拥有合适的工具可以极大地提高您的工作效率和工作质量。无论您是刚刚起步还是已经开发 iOS 应用程序多年&#xff0c;以下是每个 iOS 开发人员都应该了解的 10 大必备工具。 让我们开始 Xcode Xcode 是用于 iOS 开发的官方 IDE&#xff08;…

【Windows】内网穿透实现hMailServer远程发送邮件

目录 前言1. 安装hMailServer2. 设置hMailServer3. 客户端安装添加账号4. 测试发送邮件5. 安装cpolar6. 创建公网地址7. 测试远程发送邮件8. 固定连接公网地址9. 测试固定远程地址发送邮件 前言 hMailServer 是一个邮件服务器,通过它我们可以搭建自己的邮件服务,通过cpolar内网…

Python 进阶(十二):随机数(random 模块)

《Python入门核心技术》专栏总目录・点这里 文章目录 1. 导入random库2. 常用随机数函数2.1 生成随机浮点数2.2 生成随机整数2.3 从序列中随机选择2.4 随机打乱序列3. 设置随机数种子4. 应用实例4.1 游戏开发4.2 数据分析4.3 加密与安全4.4 模拟实验

【方案】智慧林业:如何基于EasyCVR视频能力搭建智能林业监控系统

随着人类进程的发展。城市化范围的扩大&#xff0c;森林覆盖率越来越低&#xff0c;为保障地球环境&#xff0c;保护人类生存的净土&#xff0c;森林的保护与监管迫在眉睫。TSINGSEE青犀智慧林业智能视频监控系统方案的设计&#xff0c;旨在利用现代科技手段提高林业管理的效率…