自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(134)
  • 收藏
  • 关注

原创 FGSM算法原理

学习博客:https://www.jianshu.com/p/a366e984f74c。

2024-08-21 22:53:50 90

原创 不同随机数生成的含义

random.seed(all_args.seed): 设置Python内置的随机数生成器的种子,影响Python中的随机数生成。: 设置PyTorch在所有CUDA设备上的随机种子,以确保多GPU环境下的一致性。: 设置PyTorch在CUDA上的随机种子,用于GPU加速的随机数生成。: 设置PyTorch的随机种子,用于生成随机数,以确保实验的可重复性。: 设置NumPy的随机种子,用于NumPy库中的随机数生成。

2024-08-07 23:23:30 196

原创 数学和计算领域中病态(ill-conditioned)的含义

ill-conditioned 表示一个问题或系统在数值计算中具有不稳定性或敏感性,即使输入数据有轻微的变化,也可能导致输出结果的显著变化。这种情况下,算法可能会产生不准确的结果,甚至无法收敛到正确的解决方案。病态(ill-conditioned),在数学和计算领域中,病态问题通常指的是输入数据的微小变化可能导致输出结果的剧烈变化,这会使得问题的求解变得困难或不稳定。

2024-07-24 10:55:24 128

原创 $\mathcal{S} \rightarrow \Delta(\mathcal{A})$这里的$\Delta(\mathcal{A}$是什么含义

2024-07-24 09:13:41 120

原创 策略迭代算法的收敛性证明

分为策略评估和策略改进两个部分。

2024-06-12 16:46:17 262

原创 策略迭代和值迭代的定义和区别

总的来说,策略迭代和值迭代都是解决MDP中最优策略的经典方法,它们在迭代方式和更新策略的顺序上有所不同。策略迭代(Policy Iteration)和值迭代(Value Iteration)是强化学习中常用的两种经典算法,用于解决马尔可夫决策过程(MDP)中的最优策略。策略迭代是一种交替进行策略评估和策略改进的方法。在每次迭代中,首先进行策略评估,估计当前策略的价值函数;然后进行策略改进,根据估计的价值函数更新策略。在每次迭代中,根据当前的价值函数进行贪婪策略改进,然后更新价值函数以获得更准确的估计。

2024-06-12 15:44:16 435

原创 nn.GRU和nn.GRUCell区别

nn.GRU是一个完整的GRU层,它接受一个3D输入张量(batch_size, seq_length, input_size),输出也是一个3D张量(batch_size, seq_length, hidden_size)。nn.GRUCell是GRU的单个单元,它接受一个2D输入张量(batch_size, input_size),输出也是一个2D张量(batch_size, hidden_size)。总的来说,nn.GRU更适合处理整个序列,而nn.GRUCell更适合需要灵活控制的场景。

2024-06-04 15:21:10 824

原创 ValueError: Reference at ‘refs/heads/master‘ does not exist

【代码】ValueError: Reference at ‘refs/heads/master‘ does not exist。

2024-05-21 19:33:59 156

原创 pycharm运行正常,但命令行执行提示module不存在的多种解决方式

在PyCharm设置了Sources Root,向系统变量增加了当前目录的根目录,所以PyCharm运行时能找到自定义包的。但Pyhton命令行执行时少了添加根目录路径的步骤,导致找不到包了。os.path.dirname获取目录,此处就是获取目录的父目录。如果目录层级更多,就需要多加一层 os.path.dirname。

2024-05-07 15:04:36 649

原创 Pytorch中的nn.Embedding()

Embedding.weight(Tensor)–形状模块(num_embeddings,Embedding_dim)的可学习权重,初始化自(0,1)。也就是说,pytorch的nn.Embedding()是可以自动学习每个词向量对应的w权重的。模块的输入是一个索引列表,输出是相应的词嵌入。

2024-04-06 23:18:13 375

原创 点积,哈大马积,向量外积,矩阵乘法

例如,如果有两个矩阵 A = torch.tensor([[1, 2], [3, 4]]) 和 B = torch.tensor([[5, 6], [7, 8]]),它们的矩阵乘法为 torch.matmul(A, B),结果为 [[1。例如,如果有两个张量 A = torch.tensor([[1, 2], [3, 4]]) 和 B = torch.tensor([[5, 6], [7, 8]]),它们的哈达马积为 A * B = [[1。哈达马积是指两个具有相同形状的张量的对应位置元素相乘。

2024-04-03 15:16:48 510

原创 einops中的rearrange的使用方法

在 einops 中,rearrange 函数用于对张量进行重排操作,即重新排列张量的维度顺序或形状。‘b’、‘h’、‘w’ 等:表示具体的维度名称,也可以使用数字表示索引。这个操作会将张量的维度按照指定的顺序进行重新排列。pattern:用于指定重排规则的模式字符串。einops中的rearrange的使用方法。‘->’:表示重排后的维度顺序。tensor:要重排的张量。’:表示连续的任意维度。

2024-04-03 11:26:50 493

原创 oracle value function in RL

oracle就是一个函数,这个函数知道每个状态的价值函数的真实值。我们寻找近似函数去拟合这个真值函数,并以这两个函数的差的平方为损失函数,最小化损失函数以此来寻找最佳近似函数。

2024-03-30 12:16:19 147

原创 markov potential games

马尔可夫潜在博弈主要关注多智能体系统中的非合作决策制定,每个智能体都追求最大化其个体长期奖励。在这种情况下,智能体的决策会影响环境的状态转移概率,从而影响其他智能体的奖励。因此,马尔可夫潜在博弈更侧重于描述多智能体系统中的竞争和相互影响。合作博弈则更侧重于描述多智能体系统中的合作与协调。在合作博弈中,智能体之间通常会合作以达成共同的目标,并分享合作所产生的收益。合作博弈的研究通常涉及如何分配收益以激励智能体之间的合作,以及如何形成合作联盟以实现共同利益。

2024-03-30 10:56:38 104

原创 变分信息瓶颈

变分信息瓶颈和互信息的定义1 变分信息瓶颈定义:变分信息瓶颈(Variational Information Bottleneck)是一种用于学习数据表示的方法,它旨在通过最小化输入和表示之间的互信息来实现数据的压缩和表示学习。这种方法通常用于无监督学习中,通过在训练过程中限制表示和输入之间的信息流,从而学习到更加紧凑和具有信息量的数据表示。

2024-03-29 21:32:00 496

原创 最大似然=最小化KL散度

证明来源于李宏毅讲解的课件:

2024-03-19 21:50:38 118

原创 从github上下载的软件进行安装

【代码】从github上下载的软件进行安装。

2024-03-15 20:46:10 892

原创 运行pycharm中的project的时候出现:ValueError: Reference at ‘refs/heads/master‘ does not exist

【代码】运行pycharm中的project的时候出现:ValueError: Reference at ‘refs/heads/master‘ does not exist。

2024-03-05 22:34:49 564

原创 policy-space response oracles (PSRO)含义

Algorithm 1 维护了一个所有玩家策略的策略池。然后循环地选定玩家,然后从他的策略集中选择出一个策略,固定其它所有玩家此时的策略,然后不断地训练这个策略使得该策略成为一个在别的玩家策略不变的情况下、近似的best respond。然后将其加入策略集合中。

2024-03-05 14:34:25 446

原创 Nash equilibrium(纳什均衡)中的“exploitability“(可利用性)

在博弈论中,Nash equilibrium(纳什均衡)中的"exploitability"(可利用性)指的是在给定的策略配置下,某个玩家可以通过改变自己的策略来获得更高的收益或者改进自己的情况。如果一个纳什均衡点具有低可利用性,意味着在该点附近,没有玩家能够通过改变自己的策略来显著提高自己的收益。相反,如果一个纳什均衡点具有高可利用性,那么至少有一个玩家可以通过调整策略来获得更好的结果,从而使当前的均衡状态不稳定。

2024-03-04 16:14:50 368

原创 在 Ubuntu 中为文件夹创建快捷方式

在 Ubuntu 中,你可以使用 ln 命令来创建文件夹的快捷方式,也称为符号链接。创建成功后,你会在当前目录下看到一个名为 shortcut 的文件,它指向了 /path/to/target_folder。其中,/path/to/target_folder 是目标文件夹的路径,shortcut 是你想要创建的快捷方式的名称。通过这种方式,你就可以在 Ubuntu 中为文件夹创建快捷方式了。

2024-03-02 20:28:59 1268

原创 策略梯度算法

在策略梯度算法中,可以将策略梯度写成如下的形式:

2024-03-01 10:52:00 343

原创 最小二乘法

2024-02-28 15:14:47 348

原创 python中的参数parse的使用方法

总体而言,使用 – 前缀的参数通常是可选参数,而没有前缀的参数通常是位置参数。可选参数可以在命令行中以任意顺序出现,而位置参数必须按照定义的顺序提供。示例:python script.py --base_directory /path/to/directory。使用了前缀 --,表示这是一个可选参数,可以在命令行中使用 --base_directory 指定参数值。没有前缀 --,表示这是一个位置参数,必须在命令行中按照顺序提供参数值。parse方法使用灵活,在次记录,从而备忘。

2024-01-20 14:23:32 1260

原创 拼接函数(numpy and torch)

都属于扩张再拼接:会构造新的维度,然后对数据进行拼接.

2024-01-11 10:20:14 375

原创 Python导入自定义模块时ModuleNotFoundError问题

sys.path中是不包括当前这个module所在的目录的,因此要手动添加根目录。

2024-01-10 10:57:48 526

原创 conda pack进行环境迁移

注释:对于复制拷贝都按照文档的中的方法来。

2024-01-01 22:58:42 413

原创 在采用sftp的时候显示主机密钥认证失败

输在主机端(注意不是被连接的服务器)输入以下代码即可。

2024-01-01 10:29:36 634

原创 神经网络输出的logstd?

神经网络输出的 logstd 通常是指预测的标准差(standard deviation)的对数值,在一些深度学习中,特别是在连续动作空间的强化学习任务中,通过神经网络输出动作的均值(mean)和标准差来表示一个分布,通常是高斯分布。那为什么不直接输出标准差std呢?由于标准差是非负的,为了使神经网络的输出在任意范围内都有效,通常会输出标准差的对数值而不是标准差本身。logstd 可以保证输出是实数域上的,而不会受到标准差必须是正数的限制。在实际使用中,可以通过指数运算来将 logstd 转换为标准差

2023-12-28 21:31:29 438

原创 数学符号[-1,1]^{5}符号的含义是什么呢

记录一下:

2023-12-15 15:24:55 395

原创 ubuntu添加多个环境变量用英文符号冒号进行隔开

记录一下:ubuntu添加多个环境变量用英文符号冒号进行隔开。

2023-12-12 19:48:31 489

原创 if-elif-else

具体来说,当 if 或 elif 中的条件成立时,将执行对应的代码块,然后整个 if-elif-else 结构终止,不再执行其他分支。在这个例子中,如果 a 的值是 15,那么只有第一个条件 a > 10 成立,因此将执行相应的代码块,而不会执行 elif 和 else 中的代码块。如果 a 的值是 10,那么第一个条件 a > 10 不成立,但是第二个条件 a == 10 成立,因此将执行第二个条件对应的代码块。总的来说,只有满足第一个成立的条件,相应的代码块才会执行,而后面的条件不会再被检查。

2023-12-11 17:12:56 475

原创 python中星号(*)的作用

在上面的例子中,*numbers 将列表 [1, 2, 3, 4, 5] 拆包成独立的参数,传递给 add_numbers 函数。args 表示接受任意数量的参数,并将它们收集到一个元组中。的作用取决于它的上下文,是拆包还是扩展参数。

2023-12-09 10:47:03 386

原创 将元组列表进行拆解

【代码】将元组列表进行拆解。

2023-12-07 22:17:46 399

原创 python中的map函数

在这个例子中,square 函数被应用于 numbers 列表中的每个元素,得到了平方的结果。注意,map() 返回的是一个迭代器,我们通过 list() 转换为列表以查看结果。需要注意的是,在 Python 3 中,map() 返回的是一个迭代器对象,而不是列表。map() 是一个内建函数,用于对一个可迭代对象的每个元素应用指定的函数,返回一个新的可迭代对象(通常是一个 map 对象或列表)。map() 将 function 应用于 iterable 中的每个元素,并返回一个包含结果的新可迭代对象。

2023-12-07 22:06:51 423

原创 .sh文件(shell脚本)

在这个例子中,sc2 将被赋给 ENV,而 cuda_0 将被赋给 CUDA。在Shell脚本中,echo 是一个用于在终端输出文本的命令。这样的脚本可以通过命令行传递参数,以便在不同的场景下执行不同的操作。其中,字符串 是你希望输出的文本内容。

2023-12-07 15:25:25 363

原创 Python 的 argparse模块

action='store_true’含义:你运行脚本时指定了 --verbose 这个参数,args.verbose 将被设置为 True,并且会打印 “Verbose mode activated!如果没有指定该参数,则 args.verbose 将保持为默认的 False。-o 或 --output 是一个可选参数,表示输出文件的路径,默认值为 ‘output.txt’。input_file 是一个必需的参数,表示输入文件的路径。–verbose 是一个标志参数,表示是否启用详细模式。

2023-12-07 15:09:26 375

原创 pytorch中的loss.backward()和optimizer.step()中的使用的梯度方向问题

在这个例子中,loss.backward() 计算的梯度方向是损失函数上升的方向,而 optimizer.step() 则使用了梯度的负方向来更新模型参数。

2023-12-05 11:11:58 603

原创 A.requires_grad_(),设置为TRUE,则更新一次,A的值将被更新一次.

【代码】A.requires_grad_(),设置为TRUE,则更新一次,A的值将被更新一次.。

2023-12-04 23:24:34 442

原创 子类和父类存在同名函数的时候。

【代码】子类和父类存在同名函数的时候。

2023-10-27 12:24:41 261

空空如也

空空如也

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

TA关注的人

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