自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(182)
  • 资源 (3)
  • 收藏
  • 关注

原创 Stable Baselines3中调度函数转换器get_schedule_fn 函数

get_schedule_fn 函数它的主要作用是将不同的输入格式统一转换为可调用的调度函数。

2025-12-06 21:23:31 418

原创 AttributeError: ‘SubprocVecEnv‘ object has no attribute ‘envs‘错误的原因

• SimpleEnv是一个简单的自定义环境类,继承自gym.Env。• 在__init__方法中,定义了观察空间和动作空间,并初始化了状态state。

2025-12-06 16:55:53 165

原创 Gym 环境包装器嵌套使用指南(含多包装器叠加、并行环境兼容)

若内置包装器不满足需求,可自定义包装器(继承 ObservationWrapper/ActionWrapper/RewardWrapper 或 Wrapper),再与内置包装器叠加。示例:自定义奖励缩放包装器"""自定义奖励包装器:将奖励缩放指定倍数""""""重写 reward 方法,修改奖励值"""# 嵌套自定义包装器(插入到“奖励处理”环节)RewardScaleWrapper( # 新增:奖励缩放(预处理环节)),scale=0.1 # 奖励缩小 10 倍),force=True。

2025-12-06 16:49:27 713

原创 SubprocVecEnv 原理、详细使用方法

SubprocVecEnv 是 OpenAI Gym 生态中用于的核心工具,主要解决 Python GIL(全局解释器锁)导致的单线程环境模拟效率低下问题,通过多进程并行加速强化学习中的样本收集过程.

2025-12-06 16:26:13 693

原创 Stable-baseline3中CheckpointCallback与EvalCallback的原理和执行时机会详细介绍

在Stable Baselines3中,EvalCallback是一个非常实用的回调函数,用于定期评估强化学习模型的性能。它支持多种默认的评估指标,并允许用户添加自定义的评估指标。EvalCallback提供了灵活的接口,允许用户添加自定义的评估指标。(1)使用callback_after_eval参数callback_after_eval参数允许用户指定一个回调函数,该函数在每次评估后被调用。在这个回调函数中,可以添加自定义的评估逻辑。# 自定义评估回调函数# 获取评估环境和模型# 自定义评估逻辑。

2025-11-18 17:38:39 868

原创 CoLLiE与MindSpore大模型训练框架介绍

• 定义:CoLLiE(Collaborative Tuning of Large Language Models in an Efficient Way)是一个开源的大语言模型训练框架,旨在帮助用户从零开始高效地训练大型语言模型。• 功能特点:• 集成多种并行策略:整合了数据并行(DP)、流水线并行(PP)、张量并行(TP)以及零冗余优化器(ZeRO)等多种并行策略,能够充分利用多GPU资源,加速大规模模型的训练过程。

2025-11-18 17:04:31 766

原创 在强化学习模型训练时创建并行环境的作用

在强化学习(RL)模型训练中,创建并行环境(parallel environments)是一种常见的技术,它可以帮助提高训练效率和性能。并行环境是指同时运行多个独立的环境实例,代理(agent)可以在这些环境中同时采取动作并收集数据。

2025-11-18 11:18:17 766

原创 强化学习模型训练时中rollout与step的理解

• 在强化学习中,step是指代理(agent)在环境中采取一个动作后,环境根据这个动作给出新的状态和奖励的过程。它是强化学习交互过程的最基本单元。例如,想象一个机器人在一个迷宫环境中,它在当前位置(状态)向前走一步(动作),然后它到达一个新的位置(新的状态),并且根据它是否靠近目标或者是否碰到障碍物等情况获得相应的奖励,这个过程就是一个step。

2025-11-18 10:54:58 502

原创 Python中的高阶函数、闭包以及函数式编程的理解

• 封装和延迟初始化:通过嵌套函数,可以封装环境的创建逻辑,并延迟初始化,直到_init函数被调用。• 参数传递和作用域:内部函数_init可以访问外部函数的参数,提供了一种灵活的方式来传递和使用参数。• 并行环境的创建:这种结构特别适合在并行环境中使用,可以确保每个环境实例都是独立创建的,并且使用不同的随机种子。• 高阶函数:可以接受函数作为参数或返回函数的函数。• 闭包:是一个函数对象,它记住了其定义时的上下文环境中的变量。• 作用:• 延迟初始化:允许你在需要时才执行某些操作。

2025-11-18 10:28:14 598

原创 强化学习中DummyVecEnv,Monitor,SubprocVecEnv的作用及用法以及关系

• DummyVecEnv:简单的并行环境包装器,适合在单个进程中运行多个环境实例。• Monitor:环境包装器,用于监控和记录环境的运行情况。• SubprocVecEnv:并行环境包装器,适合在多个子进程中运行环境实例,利用多核CPU的计算能力。

2025-11-18 09:07:16 401

原创 彻底搞清楚强化学习模型中的policy_kwargs参数,实现自定义策略网络和价值网络

在PPO(Proximal Policy Optimization)模型中,policy_kwargs参数用于自定义策略网络(policy network)和价值网络(value network)的结构。这个参数非常灵活,允许用户根据具体任务的需求来调整网络的架构,包括层数、每层的神经元数量、激活函数等。1.参数定义• policy_kwargs是一个字典,用于传递额外的参数来定义策略网络和价值网络的结构。• 通过这个参数,用户可以指定网络的层数、每层的神经元数量、激活函数、初始化方法等。

2025-11-17 23:14:06 282

原创 强化学习在线策略on-policy模型参数理解

• `n_steps`是指在每次更新策略之前,代理在环境中采取的步数。换句话说,代理会连续地在环境中采取`n_steps`步,收集这些步的数据(包括状态、动作、奖励等),然后使用这些数据来更新策略。• 在代码中,`n_steps=1024`,这意味着在每次更新策略之前,代理会在环境中连续采取1024步。• `n_epochs`是指在每次更新策略时,使用收集到的数据进行优化的次数。每次优化过程会遍历一次数据集,并对策略进行更新。

2025-11-17 11:02:55 769

原创 机器学习训练过程中回调函数常用的一些属性

在`stable-baselines3`中,回调函数(Callbacks)提供了许多有用的属性,这些属性可以帮助你在训练过程中访问和操作模型、环境以及训练状态。• 用途:可以访问和操作训练过程中的各种变量,例如奖励、损失等。• 用途:可以用来保存模型的参数,或者在训练过程中动态调整参数。• 用途:可以调用模型的方法,例如保存模型、获取模型参数等。• 用途:可以在训练过程中动态调整训练参数,例如学习率。• 用途:可以在训练过程中动态加载预训练的参数。• 用途:可以访问和操作训练过程中的全局变量。

2025-11-06 22:15:07 369

原创 机器学习训练过程中的回调函数BaseCallback

在Python编程中,特别是在深度学习和强化学习领域,`BaseCallback`通常是一个基类,用于定义回调函数的接口。回调函数是一种在训练过程中被调用的函数,用于执行一些特定的任务,比如记录日志、保存模型、调整学习率等。

2025-11-06 22:03:01 317

原创 python中dataclass装饰器的使用方法

@dataclass`是 Python 3.7 版本引入的一个装饰器,用于自动生成类的一些方法,如`__init__()`、`__repr__()`、`__eq__()`等,从而简化数据封装类的编写。使用`@dataclass`可以减少样板代码,使代码更加简洁和易于维护。以下是`@dataclass`的基本用法:1.导入`dataclass`装饰器2.使用`@dataclass`装饰器定义类使用`@dataclass`装饰器来定义一个类。

2025-11-02 11:19:29 917

原创 gymnasium中space用法

gymnasium` 是一个用于开发和比较强化学习算法的开源库,它是 `gym` 的一个分支和改进版本。`spaces` 是 `gymnasium` 中用于定义环境状态和动作空间的模块。`Box` 类用于表示连续空间,即空间中的元素是连续的。`MultiDiscrete` 类用于表示多维的离散空间,每个维度可以有不同的取值范围。`MultiBinary` 类用于表示多维的二进制空间,每个维度的值只能是 0 或 1。`Discrete` 类用于表示离散空间,即空间中的元素是有限的、可数的。

2025-10-31 21:15:41 192

原创 关闭 Windows 的 兼容性遥测(Compatibility Telemetry)

任务计划程序库 → Microsoft → Windows → Application Experience。1、Win + R 输入 taskschd.msc 打开 任务计划程序。3. 找到 Microsoft Compatibility Appraiser。4. 右键 → 禁用(或删除)。

2025-08-17 16:31:10 1298

原创 反汇编中的寄存器

在 x86 架构中,有许多寄存器用于不同的目的。• 用途:数据寄存器,用于数据传输、除法操作(如`div`和`idiv`)。• 段寄存器:`CS`、`DS`、`SS`、`ES`、`FS`、`GS`。• 通用寄存器:`EAX`、`EBX`、`ECX`、`EDX`。• `AX`:16 位子寄存器,包含`EAX`的低 16 位。• `BX`:16 位子寄存器,包含`EBX`的低 16 位。• `CX`:16 位子寄存器,包含`ECX`的低 16 位。• `DX`:16 位子寄存器,包含`EDX`的低 16 位。

2025-08-12 09:38:01 972

原创 安装CUDA版本的pytorch

3、在指定的Python环境中运行上图的安装命令即可。2、在pytorch官网查看安装的对应版本。nvcc --version 或者。1、确认电脑的cuda版本。

2025-07-19 01:30:26 612

原创 制作MikTex本地包可用于离线安装包

MikTex安装包版本是basic-miktex-24.1-x64.exe。注:basic版本表示只安装MikTex基本包,不安装全部包。在能够联网的电脑上安装MikTex软件后,可以按以下步骤制作本地包库。

2025-07-09 23:28:01 728

原创 键盘输出希腊字符方法

在不同操作系统中,输出希腊字母的方法有所不同。

2025-05-12 16:28:55 3004

原创 Ubuntu 20.04 Server 使用命令行设置 IP 地址

按照对应的配置进行修改IP地址和网关。修改之前,把原来的文件备份。2、运行命令使其生效。

2024-01-29 19:47:47 1848

原创 labelsmoothing的理解

2022-10-17 17:18:57 1352

原创 ubuntu主机之间移植python环境并修改pip指向

2022-10-01 21:44:32 1955 1

转载 Python JoinableQueue控制进程之间同步

2022-09-22 15:43:06 404

原创 Ubuntu搭建DNS服务器-2

2022-09-18 13:28:56 740

转载 DNS-DNAME

2022-09-05 11:25:31 857

转载 pytorch 矩阵和向量乘法

2022-08-05 09:18:06 1689

转载 Linux shell中2>&1的含义解释 (全网最全,看完就懂)

参考:https://unix.stackexchange.com/questions/89386/what-is-symbol-and-in-unix-linuxhttps://superuser.com/questions/335396/what-is-the-difference-between-and-in-bash原文链接:https://blog.csdn.net/zhaominpro/article/details/82630528...

2022-04-15 10:54:48 453

原创 Linux安装GPU版本的pytorch

1. 各种版本的pytorch安装包: https://download.pytorch.org/whl/torch_stable.html实验在用的是: cu80/torch-0.4.1-cp35-cp35m-linux_x86_64.whl注意:https://pypi.org/ 中不是GPU版本的2. pytorch版本与cuda版本的对应关系CUDAToolkit版本 可用PyTorch版本 7.5 0.4.1 ,0.3.0, 0.2.0,0.1.12-0.1.6

2022-03-24 11:10:44 3916

原创 将标签转化为one-hot

import torch'''场景设定:有3个样本,5个类别分类器输出的预测结果为,shape为(3,5)标签值是整数序列:[2,0,3],表示第一个样本属于类别2,第二个样本属于类别0,第三个样本属于类别3现需要将标签转化为one-hot形式'''label = torch.Tensor([[2],[0],[3]]).long() #将label列表转化为列矩阵oh = torch.zeros(3,5).scatter_(1,label,1) #第一个参数表示按第1维度,即按列进行.

2022-03-23 11:47:19 2210

原创 Pytorch模型在GPU上训练的参数在CPU上移植

希望将训练好的模型加载到新的网络上。如上面题目所描述的,PyTorch在加载之前保存的模型参数的时候,遇到了问题。Unexpected key(s) in state_dict: "module.features. ...".,Expected ".features....". 直接原因是key值名字不对应。 表明了加载过程中,期望获得的key值为feature...,而不是module.features....。这是由模型保存过程中导致的,模型应该是在DataParallel模式下面,也就是..

2022-03-02 10:27:37 2436

原创 pyecharts官网

官网地址:pyecharts - A Python Echarts Plotting Library built with love.简介???? 概况Echarts是一个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。而 Python 是一门富有表达力的语言,很适合用于数据处理。当数据分析遇上数据可视化时,pyecharts诞生了。✨ 特性简洁的 API 设计,使用如丝滑般流畅,支持链式调用 囊括了 30+ 种常见图表,应有尽有 支持主流 Not

2022-01-10 15:15:29 5980

转载 gcc国内镜像

官方下载慢http://gcc.gnu.org/install/gcc的国内大学镜像:http://mirror.hust.edu.cn/gnu/gcc/http://mirrors.nju.edu.cn/gnu/gcc/http://mirrors.ustc.edu.cn/gnu/gcc/https://mirrors.tuna.tsinghua.edu.cn/gnu/gcc/国内知名镜像站点http://mirrors.163.com/http://mirrors.

2022-01-10 09:24:51 1773

转载 Latex数学公式-空格插入

Latex数学公式-空格插入_PzLu's Blog-CSDN博客

2021-10-19 19:14:38 688

原创 python可视化

1. 库import seaborn as sns2.使用方法:sns.heatmap(pd.DataFrame(np.round(a,2)), annot=True, vmax=vmax,vmin = vmin, xticklabels= True, yticklabels= True, square=True, cmap="YlGnBu")参数说明:seaborn.heatmap — seaborn 0.11.2 documentation3. 关闭科学计算法sns.heat.

2021-10-12 08:54:46 1498

转载 Latex 表格技巧 - 合并单元格

简介Latex的表格功能非常强大,但是在初学的过程中可能遇到很多棘手的问题,这里给出了如何合并单元格的几种做法,重点是合并多行多列的做法合并一行多列单元格合并1行多列可以使用\multicolumn{cols}{pos}{text}来实现\documentclass[a4paper,12pt]{report}\usepackage[UTF8,nopunct]{ctex}\begin{document}\begin{table} \centering \begin{tabular

2021-09-17 21:36:54 10923

转载 PyTorch中torch.nn.functional.pad函数使用详解

从上面的例子看出,之后后三个维度发生了扩增,因为我们输入的padding长度为6,只能影响后三个维度。原文:https://blog.csdn.net/qq_34914551/article/details/102940377

2021-09-02 19:15:44 358

转载 Pytorch中nn.Conv2d的dilation

No padding, no stride, dilation(Blue maps are inputs, and cyan maps are outputs)————————————————原文链接:https://blog.csdn.net/sunmingyang1987/article/details/115472959

2021-09-02 18:23:07 408

原创 Pytorch中BatchNorm中running_mean和running_var的计算方法

以下的过程中都是在train模式下进行的,并且没有进行损失计算和梯度更新,但这个过程中running_mean和running_var会进行更新,所以也验证了running_mean和running_var只受模型的模式(train模型或eval模型)的影响,与是否进行反向传播(loss.backward)和梯度更新(optimiter.step)没有关系。实验一:1. 标准库函数的参数设置为 torch.nn.BatchNorm1d(linear1_features,momentum=0.1..

2021-08-28 21:51:43 10130 1

一个简单的DNS查询报文原始数据,可用于测试

一个简单的DNS查询报文原始数据,可用于测试

2022-09-22

transformer的源码

transformer的源码,用于学习transformer的实现原理

2021-08-26

7YUV(YUV播放器)

yuv播放器,对于分析yuv数据非常适用,分享给大家。。

2018-08-11

机器学习文档(transformer, BERT, BP, SVD)

深入学习机器学习算法的学习文档

2021-08-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除