机器学习之学习范式
机器学习的四种主要范式分别是:监督学习、非监督学习、强化学习和半监督学习。以下是每种范式的详细介绍:
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) 定义: 通过已标注的数据训练模型,以预测或分类未知数据。 目…...
计算机网络技术基础:5.数据通信系统
一、数据通信的基本概念 1.信息 信息是对客观事物的运动状态和存在形式的反映,可以是客观事实的形态、大小、结构、性能等描述,也可以是客观事物与外部之间的联系。信息的载体可以是数字、文字、语音、图形和图像等。计算机及其外围设备产生和交换的信息…...
ubuntu下anconda装pytorch
1、禁用nouveau sudo vim /etc/modprobe.d/blacklist.conf 在文件最后部分插入以下两行内容 blacklist nouveau options nouveau modeset0 更新系统 sudo update-initramfs -u 重启系统 2、装nvidia驱动 卸载原来驱动 sudo apt-get remove nvidia-* (若安装…...
【深入理解MySQL索引】
深入理解MySQL索引 MySQL索引是一种数据结构,用于帮助快速查找和检索数据库表中的数据。以下是对MySQL索引的详细解释,并附有相应的代码示例以加深理解。 一、索引的原理及作用 原理:索引是以数据库表中的“列”为维度建立的,通…...
Linux 中批量添加cron定时任务的方法
目录 方法一:通过 crontab 命令批量添加方法二:通过直接修改 crontab 文件 方法一:通过 crontab 命令批量添加 1、先将需要添加 cron 执行的多条定时任务写入一个文本文件 例如: 0 3 * * * /bin/bash /root/work/job/MySQLBack.…...
【OSS】php使用oss存储
阿里云oss官方文档:文档 1、前期工作 创建阿里云账号,登录创建bucket,注意修改权限,要不然可能读取不到 申请accessKeyId和accessKeySecret accessKey 2、项目中安装OSS扩展 composer require aliyuncs/oss-sdk-php3、基础使…...
个人ffmpeg笔记(一)
环境安装 QT环境安装 运行qt…run安装 下载地址:https://download.qt.io/archive/qt/ 下载地址:https://download.qt.io/archive/qt/5.12/5.12.10/ sudo apt install --reinstall libxcb-xinerama0 解决xcb问题 Ubuntu16.04打开Qt显示/home/user/.co…...
Python的3D可视化库【vedo】2-3 (plotter模块) 增删物体、控制相机
文章目录 4 Plotter类的方法4.3 渲染器内的物体操作4.3.1 添加物体4.3.2 移除物体4.3.3 渲染器的内容列表 4.4 相机控制4.4.1 访问相机对象4.4.2 重置相机状态4.4.3 移动相机位置4.4.4 改变相机焦点4.4.5 改变相机朝向的平面4.4.5 旋转相机4.4.6 对齐相机的上朝向4.4.7 缩放 ve…...
关于QMessageBox的一些使用总结和避坑指南
参考学习 Qt中QMessageBox的用法—看这一篇就够了 Qt:使用QMessageBox弹出标准对话框 QMessageBox模态与非模态及QT中的exec() 如何调整QMessageBox的大小 QSS 自定义QMessageBox python QMessageBox设置标签和按钮居中、中文按钮 使用建议 经过查看多方的资料&…...
LearnOpenGL学习(高级OpenGL -> 高级GLSL,几何着色器,实例化)
高级GLSL 内建变量 顶点着色器 gl_PointSoze : float 输出变量,用于控制渲染 GL_POINTS 型图元时,点的大小。可用于粒子系统。将其设置为 gl_Position.z 时,可以使点的距离越远,大小越大。创建出类似近视眼看远处灯光的效果 gl…...
for X_batch, y_batch in dataloader ,其中y_batch想转成list
for X_batch, y_batch in dataloader ,其中y_batch想转成list for X_batch, y_batch in dataloader:# y_batch数据类型的是 tensor组成的list# 初始化一个空列表来存储展平后的数据y_batch_flat []# 遍历y_batch 这个list中的每个张量for tensor in y_batch:# 展平…...
Kruskal最小生成树算法正确性证明
Kruskal: 每次考虑最短一条边, 如果会形成回路则不选择该边, 如果不会形成回路则选择该边, 直到选出了n-1条边 要点: 每次都选择不会形成回路的最短边 数学归纳法 ① n<2时, 显然成立 ② 设n k时成立, 则当n k1时: 将图划分为 子图A(k) 和 B(1) ∵ n k时成立 ∴ A(k)可…...
操作系统(12)内存分配
前言 操作系统内存分配是操作系统内存管理的重要组成部分,涉及将物理内存分配给各个程序以使用的过程。 一、内存分配的基本概念 内存分配指的是操作系统将物理内存分配给程序以使用。操作系统通过内存分配,确保每个程序都能获得足够的内存资源来执行其任…...
oracle client linux服务器安装教程
p13390677_112040_Linux-x86-64_4of7.zip 安装前,确认/etc/hosts文件已配置正确 cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 10.2…...
生信技能65 - SRA数据库公共数据自动化下载及SRA批量自动化拆分
根据NCBI Metadata数据表,实现SRA数据库公共数据自动化下载及SRA批量自动化拆分。 1. 程序逻辑 根据SraRunTable.csv自动从公共数据库下载SRA文件 ;模式0(默认)为下载模式,模式1为拆分模式,拆分支持进度显示;提取Metadata关键信息数据,重新写入新的文本文件。2. 运行示…...
ubuntu+ros新手笔记(五):初探anaconda+cuda+pytorch
深度学习三件套:初探anacondacudapytorch 系统ubuntu22.04 ros2 humble 1.初探anaconda 1.1 安装 安装过程参照【详细】Ubuntu 下安装 Anaconda 1.2 创建和删除环境 创建新环境 conda create -n your_env_name pythonx.x比如我创建了一个名为“py312“的环境…...
下载红米Note 9 Pro5G对应的LineageOS代码下载及编译
构建 LineageOS 进入网站:Info about gauguin | LineageOS Wiki,点击:Build for yourself,里面有详细的教程,我这里就按照Note 9 Pro 5G来。 机器环境 Ubuntu环境为:20.04.6LinagesOS版本:21-…...
数据链路层(Java)(MAC与IP的区别)
以太网协议: "以太⽹" 不是⼀种具体的⽹络, ⽽是⼀种技术标准; 既包含了数据链路层的内容, 也包含了⼀些物理 层的内容. 例如: 规定了⽹络拓扑结构, 访问控制⽅式, 传输速率等; 例如以太⽹中的⽹线必须使⽤双绞线; 传输速率有10M, 100M, 1000M等; 以太…...
Unity中Mesh重叠顶点合并参考及其应用
在Unity中,如果将一个模型文件(比如从max里面导出一个fbx文件)导入到编辑器中之后,Unity会把所有在原来在面列表中公用的顶点复制一份,保证每个三角形使用的顶点都是单独的,不与其它三角形共用顶点…...
Day3——墨刀原型设计
墨刀介绍 墨刀(Mockplus)是一款流行的在线原型设计和协作工具,适用于网页和移动应用的设计。以下是墨刀的一些主要特点和功能: 主要特点: 快速原型设计:墨刀提供了一系列的设计工具和组件,可…...
【JAVA】Java项目实战—移动端项目:天气查询APP
在移动互联网时代,天气查询应用程序(APP)是日常生活中不可或缺的一部分。无论是出门旅行、上班通勤,还是安排户外活动,获取实时天气信息都至关重要。Java作为一种强大且广泛使用的编程语言,特别适合用于开发…...
P1208 [USACO1.3] 混合牛奶 Mixing Milk(py)
题目描述 由于乳制品产业利润很低,所以降低原材料(牛奶)价格就变得十分重要。帮助 Marry 乳业找到最优的牛奶采购方案。 Marry 乳业从一些奶农手中采购牛奶,并且每一位奶农为乳制品加工企业提供的价格可能相同。此外,…...
day13 python(1)——python基础
【没有所谓的运气🍬,只有绝对的努力✊】 1、python简介 1.1 为什么学习python 1.2 python发展历史 python2.x和python3.x 版本里面有些是不兼容的。(我自己本地版本 3.11) 2、语言的分类 (1)编译型 …...
Tomcat原理(5)——tomcat最终实现
目录 一、什么是Servlet容器 二、ServletConfigMapping构建实现容器 ServletConfigMapping MyTomcat 三、优化server Server MyTomcat 四、匹配 代码如下: 测试如下: 上一篇博客已经为介绍了servelet的实现 ,这篇对上一篇博客进行补…...
善战者与细
《孙子兵法》说:善战者无赫赫战功。 《道德经》说:天下大事必做于细。 这两句话,可以结合来思考。如果,我们把事业,拆解为多个小项目,小项目拆解为小行动,也就是天下大事作于细。这种情况下&am…...
sqli-labs靶场第26-30关
第26关 这关将逻辑运算符,注释符以及空格给过滤了 我们先使用单引号进行闭合 这时我们查看源代码可以看到这一关过滤了很多字符 可以看到这里将or and / -- # 空格等字符都被注释了 空格被过滤了我们可以使用()来代替,and和or可以使用双写来绕过 因为…...
ffmpeg和ffplay命令行实战手册
文章目录 视频拼接用concat视频分段拼接(ffplay 不可调用seek函数进行seek)给视频添加黑边,让视频填充并居中显示不同分辨率视频分段拼接,并且,设置单个视频的缩放比例和摆放位置视频画中画复杂嵌套用overlay(ffplay 可调用seek函数进行seek)…...
240004】基于maven的java+ssm+mysql的房屋租赁系统的设计与实现
基于ssmmavenmysql的房屋租赁系统的设计与实现 1.项目描述2.运行环境3.项目截图4.源码获取 1.项目描述 该项目在原有的基础上进行了优化,包括新增了注册功能,房屋模糊查询功能,管理员和用户信息管理等功能,以及对网站界面进行了优…...
2.metagpt中的软件公司智能体 (ProductManager 角色)
1. 代码 ProductManager 类 from metagpt.actions import UserRequirement, WritePRD from metagpt.actions.prepare_documents import PrepareDocuments from metagpt.roles.role import Role, RoleReactMode from metagpt.utils.common import any_to_nameclass ProductMan…...
MOS管振铃现象
1,什么是振铃 用MOS管作为电子开关电路如下 单片机输出的PWM波形应该是规整的方波信号。但实际上确出现了下图的不稳定波形。这种上升沿和下降沿出现的不同程度的一小段震荡就叫做MOS管的振铃。如果振铃的峰值超过G端耐压,GS之间就会被击穿,…...
docker简单命令
docker images 查看镜像文件 docker ps -a 查看容器文件 docker rm 0b2 删除容器文件,id取前三位即可 docker rmi e64 删除镜像文件(先删容器才能删镜像),id取前三位即可 在包含Dockerfile文件的目录…...
XML基础学习
参考文章链接: XML基础学习 在w3school看到了XML的教程,想到以前工作学习中也接触到了XML,但只是简单搜索了解了下,没有认真去学习XML的基础,所以现在认真看下其基础部分,并写篇博客作为笔记记录下。 XML 简介 XML 被设计用来传输和存储数据。 什么是 XML? XML 指可…...
ARMS 用户体验监控正式发布原生鸿蒙应用 SDK
作者:杨兰馨(楠瑆) 背景 2024 年 10 月 22 日,华为正式发布了原生鸿蒙操作系统(HarmonyOS NEXT)。原生鸿蒙实现了系统底座全部自研,系统的流畅度、性能、安全特性等方面显著提升,也…...
如何使用微调后的Lora适配器?
Lora(Low-Rank Adaptation) 是一种高效的模型微调方法,尤其在自然语言处理和生成任务中得到了广泛应用。与传统的微调方法相比,Lora方法通过低秩适配器的方式,使得模型微调更为高效,且资源消耗更少。本文将…...
HAL 库:创建hal首要配置内容
第一步配置SYS(system系统) Debug(调试): Serial Wire 串行线(要用stick) Timebase Source:时基源 第二步配置RCC(reset and clodk controler)复位和时钟控…...
YOLOv9-0.1部分代码阅读笔记-experimental.py
experimental.py models\experimental.py 目录 experimental.py 1.所需的库和模块 2.class Sum(nn.Module): 3.class MixConv2d(nn.Module): 4.class Ensemble(nn.ModuleList): 5.def attempt_load(weights, deviceNone, inplaceTrue, fuseTrue): 1.所需的库和模块…...
如何高效获取Twitter数据:Apify平台上的推特数据采集解决方案
引言 在数据分析和市场研究领域,Twitter(现在的X)数据一直是重要的信息来源。但是,自从Twitter更改API定价策略后,获取数据的成本大幅提升。本文将介绍一个经济实惠的替代方案。 为什么需要Twitter数据? …...
【蓝凌表单】JSP组件常用语法整理
JSP组件常用语法整理 必填非必填写法//必填 $("[name=extendDataFormInfo.value(fd_344677482769e2)]").attr("validate","requiredvalue"); //非必填 $(...
设定“例外规则”:不完美也是完美
完美主义是一种追求极致的心态,它驱使我们不断追求更高的标准和更好的结果。然而,生活并不总是按照我们的计划进行,有时候我们需要灵活应对,设定一些“例外规则”来适应那些不完美的时刻。以下是一些实际的例子,展示如…...
01《Python数据分析》数据分析初探章节总结
目录 1 概述1.1 数据分析定义1.2 数据分析目标1.3 数据分析分类 2 数据分析方法3 数据分析流程4 寻找问题原因5 典型问题参考学习 1 概述 1.1 数据分析定义 数据分析1就是:用适当的统计分析方法对收集来的大量数据进行分析,提取有用信息和形成结论&…...
java web 实验五 Servlet控制层设计(设计性)
实验五 Servlet控制层设计(设计性) //代码放在资源包里了 实验目的 熟悉Servlet的基本语法。掌握采用HTML、JS、JDBC、JSP、Servlet和四层结构的综合应用。实验要求 本实验要求每个同学单独完成;调试程序要记录调试过程中出现的问题及解决…...
Timestamp Unix时间戳在线转换 - 加菲工具
Timestamp Unix时间戳在线转换 打开网站 加菲工具 选择“时间戳转换” 或者直接打开: https://www.orcc.online/tools/timestamp 在前半部分输入框输入时间/时间戳,点击“转换>>”按钮,即可转换完成 得到转换结果...
ABAP 订单多次开票,显示多张开票凭证
一、业务背景 在实际业务上,同一笔销售订单可能分多次发货,多次开票,因此再销售订单状态报表上就要体现该过程:对于同一张销售订单,分多次开票时,按照发票和订单行项目,显示开票数量与为开票数…...
源码安装编译gcc-12
下载gcc12 https://link.zhihu.com/?targethttps%3A//github.com/gcc-mirror/gcc/archive/refs/tags/releases/gcc-12.2.0.tar.gz 解压并执行相关依赖下载 ./contrib/download_prerequisites make && make install 默认装在/usr/local下, 如果要自己指定…...
VGGNet:深度学习中的卷积神经网络经典之作
目录 编辑 引言 VGGNet的历史背景 VGGNet的特点 1. 深度网络结构 2. 小卷积核的使用 3. 多尺度训练 4. 参数量的优化 5. 去除局部响应归一化 6. 优秀的特征提取能力 VGGNet的应用案例 VGGNet的代码复现 代码解析 结论 引言 在深度学习的浪潮中,卷积…...
opencv所有常见函数
一、opencv图像操作 二、opencv图像的数值运算 三、opencv图像的放射变换 四、opencv空间域图像滤波 五、图像灰度化与直方图 六、形态学图像处理 七、阈值处理与边缘检测 八、轮廓和模式匹配...
Shell语言基础语法(3)
目录 简介 一、流程控制 1、if 语句 2、case 选择 3、while 循环 4、for 循环 5、扩展使用select 二、函数 1、函数的定义 2、函数的调用 3、函数的传参 4、函数的返回值 5、局部变量 6、全局变量 总结 简介 Shell 脚本是一种强大的工具,广泛用于 Lin…...
Linux CentOS 9搭建Hadoop3集群
1. 引言 本教程旨在介绍在Linux上安装Hadoop 2. 前提条件 2.1 安装JDK 安装Hadoop,必须首先安装JDK,并配置环境变量(此处不做详细描述) Jdk官网(https://www.oracle.com/java/technologies/javase/javase8u211-later-archive…...
加速科技精彩亮相ICCAD 2024
12月11日—12日 ,中国集成电路设计业的年度盛会——ICCAD 2024在上海世博馆隆重举行。本次活动以“智慧上海,芯动世界”为主旨,汇聚了众多业界精英,共同探讨集成电路产业的未来。作为半导体测试行业领军企业,加速科技携…...
canvas(填充描边,绘制矩形、路径、文本、图像,变换,阴影,渐变等)
一、 基本的画布功能 创建 <canvas> 元素时至少要设置其 width 和 height 属性,这样才能告诉浏览器在多大面积上绘 图。出现在开始和结束标签之间的内容是后备数据,会在浏览器不支持 <canvas> 元素时显示。比如: <canv…...