机器学习之学习范式
机器学习的四种主要范式分别是:监督学习、非监督学习、强化学习和半监督学习。以下是每种范式的详细介绍:
1. 监督学习(Supervised Learning)
定义: 通过已标注的数据训练模型,以预测或分类未知数据。
- 目标: 学习从输入到输出的映射关系。
- 输入: 特征数据(输入变量)和标注(目标变量)。
- 应用场景:
- 分类问题:垃圾邮件检测、图像分类。
- 回归问题:房价预测、销量预测。
- 常见算法:
- 分类:支持向量机(SVM)、决策树、随机森林、逻辑回归。
- 回归:线性回归、梯度提升决策树(GBDT)、神经网络。
2. 非监督学习(Unsupervised Learning)
定义: 数据没有标签,模型通过发现数据内在结构进行学习。
- 目标: 识别数据中的模式或结构。
- 输入: 未标注的特征数据。
- 应用场景:
- 聚类问题:客户分群、图像分割。
- 降维问题:主成分分析(PCA)、t-SNE用于数据可视化。
- 异常检测:信用卡欺诈检测、工业设备故障检测。
- 常见算法:
- 聚类:K均值(K-Means)、层次聚类、高斯混合模型(GMM)。
- 降维:PCA、因子分析、非负矩阵分解(NMF)。
3. 强化学习(Reinforcement Learning)
定义: 通过与环境交互,不断试探和学习以优化行为策略。
- 目标: 学习如何在环境中做出决策以最大化累积奖励。
- 输入: 状态(State)、动作(Action)和奖励(Reward)。
- 输出: 最优策略(Policy)。
- 应用场景:
- 游戏:AlphaGo、OpenAI Five(Dota 2)。
- 自动驾驶:路径规划、避障。
- 资源分配:网络流量优化、机器人控制。
- 常见算法:
- 基于值函数:Q-Learning、深度Q网络(DQN)。
- 基于策略:策略梯度、深度确定性策略梯度(DDPG)。
- 混合方法:Actor-Critic、A3C。
4. 半监督学习(Semi-Supervised Learning)
定义: 利用大量未标注数据和少量标注数据进行训练。
- 目标: 平衡标注数据的使用效率和未标注数据的信息价值。
- 输入: 少量标注数据+大量未标注数据。
- 应用场景:
- 医学影像分析:手动标注成本高。
- 自然语言处理:低资源语言的语料不足。
- 常见算法:
- 基于图的方法:图神经网络(GNN)、标签传播。
- 半监督生成模型:变分自编码器(VAE)、生成对抗网络(GAN)。
- 自训练(Self-training):伪标签生成。
以下是监督学习、非监督学习、强化学习和半监督学习的对比表格:
范式 | 定义 | 数据特点 | 目标 | 应用场景 | 常见算法 |
---|---|---|---|---|---|
监督学习 | 基于标注数据学习输入到输出的映射关系。 | 大量标注数据 | 预测或分类未知数据 | 图像分类、垃圾邮件检测、房价预测 | 线性回归、逻辑回归、SVM、决策树、随机森林 |
非监督学习 | 通过发现数据内在结构进行学习,无需标注。 | 无标签数据 | 找到数据模式或结构 | 客户分群、异常检测、数据可视化 | K均值、层次聚类、PCA、GMM |
强化学习 | 基于环境交互和奖励机制优化行为策略。 | 状态、动作、奖励 | 最大化长期累计奖励 | 游戏AI、机器人控制、自动驾驶 | Q-Learning、DQN、策略梯度、Actor-Critic |
半监督学习 | 利用少量标注数据和大量未标注数据训练模型。 | 少量标注+大量未标注 | 平衡标注数据效率和未标注数据价值 | 医学影像分析、低资源语言处理 | 自训练、标签传播、GAN、VAE |
特点对比总结:
- 监督学习依赖于大量标注数据,适合精确任务但标注成本高。
- 非监督学习适用于无标签数据,侧重挖掘数据潜在结构。
- 强化学习基于交互和反馈,适合动态决策问题。
- 半监督学习结合有标注和无标注数据,降低标注依赖,兼顾效率和效果。
根据任务特点可以灵活选择或结合这些范式。
其他补充范式
- 自监督学习(Self-Supervised Learning): 使用未标注数据构造标签,自行学习表示(如对比学习)。应用于预训练大模型(如BERT、GPT)。
- 无监督强化学习(Unsupervised Reinforcement Learning): 不提供明确奖励的情况下,通过设定自定义目标进行学习。
这四种范式形成了机器学习的主要框架,根据任务的性质和需求选择适用的范式,或结合使用多种范式。
相关文章:

机器学习之学习范式
机器学习的四种主要范式分别是:监督学习、非监督学习、强化学习和半监督学习。以下是每种范式的详细介绍: 1. 监督学习(Supervised Learning) 定义: 通过已标注的数据训练模型,以预测或分类未知数据。 目…...

PHPstudy中的数据库启动不了
法一 netstat -ano |findstr "3306" 查看占用该端口的进程号 taskkill /f /pid 6720 杀死进程 法二 sc delete mysql...

鸿蒙开发-ArkTS 创建自定义组件
在 ArkTS 中创建自定义组件是一个相对简单但功能强大的过程。以下是如何在 ArkTS 中创建和使用自定义组件的详细步骤: 一、定义自定义组件 使用Component注解:为了注册一个组件,使其能够在其他文件中被引用,你需要使用Component…...

记录学习《手动学习深度学习》这本书的笔记(五)
这一章是循环神经网络,太难了太难了,有很多卡壳的地方理解了好久,比如隐藏层和隐状态的区别、代码的含义(为此专门另写了一篇【笔记】记录对自主实现一个神经网络的步骤的理解)、梯度计算相关(【笔记】记录…...

【Qt】Qt+Visual Studio 2022环境开发
在使用Qt Creator的过程中,项目一大就会卡,所以我一般都是用VS开发Cmake开发, 在上一篇文章中,我已经安装了CMake,如果你没有安装就自己按一下。 记得配置Qt环境变量,不然CMake无法生成VS项目:…...

云计算HCIP-OpenStack04
书接上回: 云计算HCIP-OpenStack03-CSDN博客 12.Nova计算管理 Nova作为OpenStack的核心服务,最重要的功能就是提供对于计算资源的管理。 计算资源的管理就包含了已封装的资源和未封装的资源。已封装的资源就包含了虚拟机、容器。未封装的资源就是物理机提…...

HCIA-Access V2.5_3_2_VLAN数据转发
802.1Q的转发原则--Access-Link 首先看一下Access,对于Access端口来说, 它只属于一个VLAN,它的VLANID等于PVID。 首先看一下接收方向,前面说过交换机内部一定要带标签转发,所以当交换机接收到一个不带tag的数据帧时,会给它打上端…...

transformer学习笔记-导航
本系列专栏,主要是对transformer的基本原理做简要笔记,目前也是主要针对个人比较感兴趣的部分,包括:神经网络基本原理、词嵌入embedding、自注意力机制、多头注意力、位置编码、RoPE旋转位置编码等部分。transformer涉及的知识体系…...

功能篇:JAVA后端实现跨域配置
在Java后端实现跨域配置(CORS,Cross-Origin Resource Sharing)有多种方法,具体取决于你使用的框架。如果你使用的是Spring Boot或Spring MVC,可以通过以下几种方式来配置CORS。 ### 方法一:全局配置 对于所…...

防火墙内局域网特殊的Nginx基于stream模块进行四层协议转发模块的监听443 端口并将所有接收转发到目标服务器
在一些特殊场合下, 公司内部网络防火墙限制, 不能做端口映射, 此时可以使用nginx的做从四层协议转发, 只走tcp/ip协议, 而不走http方式, 可以做waf设置, 就可以做443, 或其它端口, 从而达到被直接转发到远程服务器效果 机房只映射了一个IP:22280, 而需求是这个SDK只能通过…...

【Hive】-- hive 3.1.3 伪分布式部署(单节点)
1、环境准备 1.1、版本选择 apache hive 3.1.3 apache hadoop 3.1.0 oracle jdk 1.8 mysql 8.0.15 操作系统:Mac os 10.151.2、软件下载 https://archive.apache.org/dist/hive/ https://archive.apache.org/dist/hadoop/ 1.3、解压 tar -zxvf apache-hive-4.0.0-bin.tar…...

C++ STL 队列queue详细使用教程
序言 我们平常写广搜什么,上来就是一句 queue<XXX> qu; 说明队列时很重要的。 STL库中的queue把队列的各种操作封装成一个类,非常方便,信奥中使用它也是很有优势的。 目录 一、队列的定义 二、创建队列对象 三、队列的初始化 四、常…...

【前端】JavaScript 中的 filter() 方法的理论与实践深度解析
博客主页: [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: 前端 文章目录 💯前言💯filter() 方法的概念与原理1. 什么是 filter()?2. 基本工作原理3. 方法特点4. 用法格式参数解析 💯代码案例详解示例:筛选有效数字并…...

【机器学习算法】——决策树之集成学习:Bagging、Adaboost、Xgboost、RandomForest、XGBoost
集成学习 **集成学习(Ensemble learning)**是机器学习中近年来的一大热门领域。其中的集成方法是用多种学习方法的组合来获取比原方法更优的结果。 使用于组合的算法是弱学习算法,即分类正确率仅比随机猜测略高的学习算法,但是组合之后的效果仍可能高于…...

JVM运行时数据区内部结构
VM内部结构 对于jvm来说他的内部结构主要分成三个部分,分别是类加载阶段,运行时数据区,以及垃圾回收区域,类加载我们放到之后来总结,今天先复习一下类运行区域 首先这个区域主要是分成如下几个部分 下面举个例子来解释…...

Navicat for MySQL 查主键、表字段类型、索引
针对Navicat 版本11 ,不同版本查询方式可能不同 1、主键查询 (重点找DDL!!!) 方法(1) :右键 - 对象信息 - 选择要查的表 - DDL - PRIMARY KEY 方法(2&…...

如何在谷歌浏览器中实现自定义主题
在数字化时代,个性化设置已成为提升用户体验的重要一环。对于广泛使用的谷歌浏览器而言,改变默认的浏览器主题不仅能够美化界面,还能在一定程度上提升使用效率和愉悦感。本文将详细介绍如何在谷歌浏览器中实现自定义主题,包括从官…...

visual studio 2022 c++使用教程
介绍 c开发windows一般都是visual studio,linux一般是vscode,但vscode调试c不方便,所以很多情况都是2套代码,在windows上用vs开发方便,在转到linux。 安装 1、官网下载vs2022企业版–选择桌面开发–安装位置–安装–…...

曝光三要素
一光圈 光圈越大,数值越小,画面越亮,背景越模糊 光圈越小,数值越大,画面越暗,背景越清晰 二 快门 快门最主要的作用是控制曝光时间的长短 快门速度的单位是秒,一般用 1秒,1/8秒&am…...

01-2 :PyCharm安装配置教程(图文结合-超详细)
一、PyCharm安装 PyCharm集成开发工具(IDE),是当下全球Python开发者,使用最频繁的工具软件。 绝大多数的Python程序,都是在PyCharm工具内完成的开发。 本篇文章基于PyCharm软件工具进行描述,教你如何安装…...

类OCSP靶场-Kioptrix系列-Kioptrix Level 1
一、前情提要 二、实战打靶 1. 信息收集 1.1. 主机发现 1.2. 端口扫描 1.3 目录爆破 1.4. 敏感信息 2.根据服务搜索漏洞 2.1. 搜索exp 2.2. 编译exp 2.3. 查看exp使用方法,并利用 3. 提权 二、第二种方法 一、前情提要 Kioptrix Level是免费靶场&#x…...

Maven插件打包发布远程Docker镜像
dockerfile-maven-plugin插件的介绍 dockerfile-maven-plugin目前这款插件非常成熟,它集成了Maven和Docker,该插件的官方文档地址如下: 地址:https://github.com/spotify/dockerfile-maven 其他说明: dockerfile是用…...

VisualStudio vsix插件自动加载
本文介绍如何在Visual Studio扩展中实现PackageRegistration,包括设置UseManagedResourcesOnly为true,允许背景加载,并针对C#、VB、F#项目提供自动装载,附官方文档链接。增加以下特性即可…… [PackageRegistration(UseManagedRe…...

Codesoft许可管理
在数字化时代,软件许可管理对于确保企业资产安全、优化成本和提高工作效率至关重要。Codesoft作为一款功能强大的标签设计软件,其许可管理功能同样出色。本文将为您介绍如何进行Codesoft的许可管理,确保您的软件投资得到最大回报。 一、了解…...

Unity3D 3D模型/动画数据压缩详解
前言 在Unity3D项目中,3D模型和动画数据通常占用大量内存和存储空间,有效的数据压缩技术对于提升游戏性能和加载速度至关重要。本文将详细介绍Unity3D中3D模型和动画数据的压缩技术,并提供相关的代码实现。 对惹,这里有一个游戏…...

ffmpeg和ffplay命令行实战手册
文章目录 视频拼接用concat视频分段拼接(ffplay 不可调用seek函数进行seek)给视频添加黑边,让视频填充并居中显示不同分辨率视频分段拼接,并且,设置单个视频的缩放比例和摆放位置视频画中画复杂嵌套用overlay(ffplay 可调用seek函数进行seek)…...

基于MobileNet v2模型的口罩实时检测系统实现
基于kaggle数据集训练的模型其实现结果如下: 代码结构如下: 实时口罩检测器: 从导航栏中的链接“实时的口罩检测器”功能,该系统包含一个实时检测用户是否佩戴口罩的功能。基于图片的口罩检测器: 从另一个导航链接“基…...

NEEP-EN2-2023-Section5PartB
题目 个人答案 The chart depicts the outcomes of a survey conducted in a specific university regarding the acquisition of practical activity in class. The chart illustrates that learning knowledges accounts for 91.3 percent, which is the highest percentage…...

PostgreSQL17.x数据库备份命令及语法说明
PostgreSQL17.x数据库备份命令及语法说明 文章目录 PostgreSQL17.x数据库备份命令及语法说明1. 备份命令1. pg_dump命令参数2. pg_dumpall命令参数 2. pg_dump 备份单库语法3. pg_dumpall 备份所有数据库语法4. 备份案例1. pg_dump单库备份2.pg_dumpall单库备份 4. 备份案例1. …...

Java实现一个带头节点的单链表
什么是单链表? 单链表是一种基础的数据结构,其中每个节点都包含两部分: 数据域:存储节点数据。指针域:存储指向下一个节点的引用。 为什么使用头节点? 头节点的存在简化了操作逻辑: 统一操作…...