自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

我的AI笔记

主要记录大四毕设以来的学习内容

  • 博客(126)
  • 资源 (2)
  • 收藏
  • 关注

原创 信息熵、交叉熵、相对熵

2022-03-02 21:19:33 307

原创 多智能体强化学习论文——ASN(ICLR 2020)

文章目录论文:ACTION SEMANTICS NETWORK: CONSIDERING THE EFFECTS OF ACTIONS IN MULTIAGENT SYSTEMS存在的问题&研究动机&研究思路创新点算法框图实验some points论文:ACTION SEMANTICS NETWORK: CONSIDERING THE EFFECTS OF ACTIONS IN MULTIAGENT SYSTEMS存在的问题&研究动机&研究思路自然界中的多智能体协作任

2021-10-21 20:32:08 807

原创 StarCraft Multi-Agent Challenge (SMAC)——多智能体强化学习仿真benchmark

StarCraft包括Macromanagement和Micromanagement。其中macro包括宏观和微观的操作,是选手级别的,目的在于赢得完整的比赛胜利;而micro仅包含微观的操作,用于训练和验证marl算法。SMAC基于的是StarCraft II Learning Environment(PySC2)和StarCraft II 的API搭建的平台,PySC2和SMAC二者的区别为:SMAC平台的的相关信息:https://github.com/oxwhirl/smac/blob/ma.

2021-10-20 15:56:27 1940

原创 多智能体强化学习论文——RODE

文章目录论文:RODE: LEARNING ROLES TO DECOMPOSE MULTI-AGENT TASKS存在的问题&研究动机&研究思路创新点算法框图some points论文:RODE: LEARNING ROLES TO DECOMPOSE MULTI-AGENT TASKS存在的问题&研究动机&研究思路将复杂任务基于角色分解会有较好的scalable,但是角色如何学习(如何分组)是不好实现的。作者基于动作的效果将智能体进行分组,将动作空间分解。创

2021-10-13 21:01:06 702

原创 多智能体强化学习论文——ROMA

文章目录论文:ROMA: Multi-Agent Reinforcement Learning with Emergent Roles存在的问题&研究动机&研究思路创新点算法框图some points论文:ROMA: Multi-Agent Reinforcement Learning with Emergent Roles存在的问题&研究动机&研究思路ROMA提出智能体的策略是建立在智能体角色上的。智能体的角色是由智能体的局部观测值决定的随机变量,有相似职责的智能

2021-10-13 17:03:58 951 2

原创 多智能体强化学习论文——MAVEN

存在的问题&研究动机&研究思路Qmix的monotonic约束,导致算法得到局部最优解。文章给出了证明。在单体强化学习任务中,可以通过动态调整ϵ\epsilonϵ的大小使探索更充分,然而多体中无法使用。MAVEN为了解决探索问题,引入了分层控制的隐空间。创新点通过隐策略产生隐空间变量zzz,在一个episode固定相关参数θ\thetaθ,ϕ\phiϕ,ψ\psiψ,产生Wz,aW_{z,a}Wz,a​来增加每个智能体的探索。属于分层的控制。在每一个时间步t,最大化轨迹τ\

2021-10-13 14:23:04 779

原创 信息论:熵、相对熵、互信息、链式法则

文章目录Entropy熵的定义Joint EntropyConditional Entropy链式法则Zero EntropyRelative EntropyMutual Informationvenn图表示熵和互信息的关系熵的链式法则信息的链式法则Conditional Relative Entropy某些性质Entropy熵的定义二进制熵函数:熵还可以看作是以下的期望值:对于熵有以下性质:Joint Entropy联合熵的定义:联合熵与熵的结论:联合熵同样可以写为期望的形

2021-10-09 09:47:40 5169 1

原创 多智能体强化学习论文——LSC

存在的问题&研究动机&研究思路创新点算法框图实验some points

2021-10-08 15:13:00 279 1

原创 论文中画带标准差阴影的曲线图:seaborn.lineplot()

绘图以PPO算法在gym"BipedalWalker-v3"环境的reward曲线为例,绘制阴影图。# 导入库函数import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsplt.style.use('ggplot')plt.rcParams['font.sans-serif'] = ['SimHei']plt.rcParams['axes.unicode_minus']

2021-10-01 13:57:11 13180 7

原创 多智能体强化学习论文——DyMA-CL(AAAI 2020)

存在的问题&研究动机&研究思路创新点算法框图some points

2021-09-23 23:42:48 742

原创 多智能体强化学习论文——QPLEX

存在的问题&研究动机&研究思路对于CTDE框架下的多智能体值方法,joint greedy action应该等于每个个体的greedy action的集合,即IGM原则。VDN和QMIX提出的联合效用函数与单体效用函数的相加性和单调性。创新点提出了advantage-based IGM,将IGM的动作值函数一致性约束转化为优势函数的一致性约束。一致性约束的好处是,它可以通过限制优势函数的取值范围,直接实现其一致性约束。最终的QtotQ_{tot}Qtot​可以写为:等式

2021-09-23 11:03:18 676

原创 多智能体强化学习论文——G2ANet(AAAI 2020)

存在的问题&研究动机&研究思路创新点算法框图实验some points

2021-09-22 10:08:40 1268 1

原创 多智能体强化学习论文——ATOC(NIPS 2018)

存在的问题&研究动机&研究思路在多智能体协作任务中,智能体通信是一种有效方式。但是智能体数量很多的时候,对某个智能体来说,他很难确定哪些信息是有价值的,这使得通信效果大打折扣甚至起副作用。在真实世界中,通信需要消耗高带宽和计算复杂度。预先定义的通信机制有可能会限制通信的效果和抑制一些潜在的协作策略。创新点算法框图实验some points...

2021-09-17 16:01:33 1454 1

原创 多智能体强化学习论文——HAMA(AAAI 2020)

存在的问题&研究动机&研究思路目前的多智能体强化学习任务主要集中在得到一个分散式的协作的策略来最大化集体奖励。这样模型的可扩展性较差,不能用到更复杂的多智能体任务。目前多数模型用于纯协作或者纯竞争的环境,无法应用于混合式的环境。CTDE的框架有维度灾难*的问题,当智能体数量增加,critic的训练将会变得很难。最基本的问题还是,当前很多训练好的模型无法被迁移到 有不同数量的智能体,且不同智能体有不同的目标的任务。即可迁移性较差。创新点算法框图实验...

2021-09-13 23:12:43 1215 3

原创 多智能体强化学习论文——SEAC(NIPS 2020)

存在的问题&研究动机&研究思路在稀疏奖励的环境下,多智能体的exploration存在效率不足等问题。在IAC的基础上尝试加入重要性采样,使得每次更新智能体iii的参数时,不再仅仅使用智能体iii的数据,而是使用所有智能体的数据进行智能体iii数据的更新。对于原始的IAC算法是on-policy的,而SEAC则是off-poligy的。创新点在每个智能体iii的actoriactor_iactori​和criticicritic_icritici​的更新过程中,都加入了重要性

2021-09-12 17:23:03 992 2

原创 多智能体强化学习论文——SePS(ICML 2021)

存在的问题&研究动机&研究思路参数共享作为多智能体里面的基本范式,但是其效果依赖于环境和智能体的奖励,当这些项不同的时候,naive的参数共享就变得不那么有效。文章将每个智能体编码到新的嵌入空间中,然后将无监督聚类应用到嵌入空间中。创新点通过VAE,在RL训练之前,通过buffer里面的数据学习一个隐空间z。VAE的目的不是确保动态估计下一状态的观测值和奖励的准确性,而是使用学习到的隐空间z来做无监督的分组,得到一个静态的分组,组内使用参数共享。随后再进行强化学习训练。SeP

2021-09-11 10:54:47 490 4

原创 多智能体强化学习论文——MAAC

存在的问题&研究动机&研究思路多智能体值函数逼近,本质上来说是一个多任务回归问题。MAAC从当前策略中采样动作值,儿MADDPG从replay buffer中抽样更新(容易造成overgeneralization)。通过注意力计算的模型,可以使得每个智能体不需要相同的动作空间,也不需要全局的reward,并且动态的关注其他智能体(αi\alpha_iαi​动态变化)。这一切可以通过一个智能体iii的编码eie_iei​和其他智能体对智能体iii的影响xix_ixi​,concaten

2021-09-03 11:57:24 2890

原创 多智能体强化学习论文——COMA

存在的问题&研究动机&研究思路遵循CTDE框架。是大规模多智能体训练的常见的范式,训练过程可以使用模拟器的全局状态信息,但是执行过程每个智能体只能依赖于自身的动作-观测值历史(常用循环神经网络来处理history)。在协作的环境中,多智能体面临信誉分配的问题。联合动作产生的全局reward并不能让每个智能体很好的推断出自己对全局的贡献。为了解决信誉分配问题,提出了反事实基准:固定其他智能体的动作,边缘化某个智能体的动作。在agent之间传递梯度和参数共享,是两种常用于发挥集中式cr

2021-08-31 11:43:24 1471

原创 多智能体强化学习论文——QMIX

QMIX: Monotonic Value Function Factorisation for Deep Multi-Agent Reinforcement LearningDeep Multi-Agent Reinforcement Learning存在的问题&研究动机&研究思路利用额外状态信息学习联合动作价值的策略是一种attractive的方式,但分散式的策略尚不清晰,因此提出QMIX。在部分可观测的情况下,只能依靠每个智能体历史的局部观测信息进行决策。分散式的策略可以通

2021-08-18 14:27:59 941

原创 多智能体深度强化学习 经典算法框架(入门)

2021-08-17 10:41:55 3246

原创 基于图神经网络的多智能体深度强化学习

# 摘要在大规模的多智能体系统中,由于智能体数量大,智能体之间相互博弈的关系复杂,给策略学习带来了很大的困难。因此如何通过建模来简化多智能体的学习过程是一项重要的研究课题。在绝大多数的多智能体系统中,智能体之间的交互往往只发生在局部,因此不需要每个智能体一直与其他所有智能体都进行交互。传统的方法试图通过定义的规则来使得多智能体之间进行交互,但智能体之间的交互有时是非常复杂的,不能直接转化成规则。因此,近期有许多工作是将多智能体建模为图,通过图卷积等方法,在引入注意力机制的情况下,使得多个智能体能够很好的交

2021-08-12 18:44:17 4457 1

原创 pyspark中flatMapValues的用法

# flatMapValuesx = sc.parallelize([('A',(1,2,3)),('B',(4,5))])y = x.flatMapValues(lambda x: [i**2 for i in x]) # function is applied to entire value, then result is flattenedprint(x.collect())print(y.collect()) [('A', (1, 2, 3)), ('B', (4, 5))][('A'

2021-05-24 17:42:13 713

原创 pyspark:去掉rdd中空的项

rdd.filter(lambda x: x is not None)

2021-05-24 17:40:51 1601 1

原创 pyspark: rdd和dataframe相互转化

rdd转dataframefrom pyspark.sql import SparkSessionfrom pyspark.sql import Rowspark = SparkSession.builder.getOrCreate()sc = spark.sparkContextrdd= sc.parallelize([('John',30),('Mary',78)])dataframe=spark.createDataFrame(rdd,['name','age'])dataframe

2021-05-19 17:37:08 334

原创 python 保存list列表到本地

a = [(u'9000023330249', 1), (u'13142928', 1), (u'9000084906496', 1)]# 保存import numpy as npa=np.array(a)np.save('a.npy',a) # 保存为.npy格式# 读取b=np.load('a.npy')b=b.tolist()b

2021-05-19 17:27:59 5286 1

原创 pyspark rdd去重

对于pyspark中的rdd按照某一列进行去重的时候,可以使用reduceByKey()。需要将要去重的列作为key,其余作为value。rdd = rdd.reduceByKey(lambda x, y: x)

2021-05-19 15:20:25 1632

原创 Py4JJavaError: An error occurred while calling None.org.apache.spark.api.java.JavaSparkContext. :

服务器上使用pyspark报错:Py4JJavaError: An error occurred while calling None.org.apache.spark.api.java.JavaSparkContext.: java.lang.OutOfMemoryError: unable to create new native thread at java.lang.Thread.start0(Native Method) at java.lang.Thread.start(Thread.j

2021-05-11 11:47:24 6163 5

原创 rdd.foreach(print)报错SyntaxError: invalid syntax

解决方法:先运行from __future__ import print_function然后再运行rdd.foreach(print)

2021-04-26 14:35:31 1633

原创 滴滴出行 机器学习算法实习生 面试经验

文章目录一面二面HR沟通offer一面coding部分:(1)给定一个排序好的数组nums,给定一个目标数target。若nums中存在target则返回其下标;若nums中不存在target则插入到nums中,再返回其下标。经典二分法即可求解。若用排序方法求解复杂度是多少?(2)给定一个m∗nm*nm∗n的矩阵matrix,每一行从左到右为升序,每一列从上到下为升序,给定一个目标数target,返回矩阵matrix中是否含有target。剑指 Offer 04. 二维数组中的查找。复杂度是多

2021-04-19 15:51:12 1216 5

原创 算法岗实习面试经历(机器学习/强化学习岗实习生)

文章目录阿里巴巴-高德面试总结字节跳动面试阿里巴巴-高德机器学习方向算法实习岗面试闲聊,问专业背景。问研一刚上了半年课的感受。机器学习基础知识问答:(1) 常见的评价指标,以分类问题为例。(2) 详细解释分类问题中的,精度召回率等概念。(3) softmax是怎么做分类的?(4) 介绍一下ROC曲线,介绍一下AUC。为什么AUC越大代表模型越优?(5) 常见的损失函数有哪些?分类&回归。(6) 介绍一下GBDT、决策森林。(7) bagging和boosting的区别和优缺

2021-04-02 22:33:10 2263 2

原创 leetcode剑指 Offer 40. 最小的k个数

文章目录题目要求解题思路方法一方法二方法三题目要求输入整数数组 arr ,找出其中最小的 k 个数。例如,输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4。解题思路方法一排序后,返回最小的k个数。class Solution(object): def getLeastNumbers(self, arr, k): """ :type arr: List[int] :type k: int :rty

2021-03-21 14:02:30 74

原创 排序算法 python实现 leetcode原题

文章目录leetcode原题快速排序归并排序leetcode原题912. 排序数组快速排序class Solution(object): def sortArray(self, nums): """ :type nums: List[int] :rtype: List[int] """ self.random_select_sort(nums, 0, len(nums)-1) return num

2021-03-21 12:59:12 107

原创 PyTorch笔记(一):PyTorch入门

文章目录What is PyTorch?Autograd:自动求导神经网络定义网络计算损失反向传播更新权重模型保存和加载模型保存模型加载What is PyTorch?What is PyTorch?torch.Size本质上还是tuple,所以支持tuple的一切操作。任何一个in-place改变张量的操作后面都固定一个_。例如x.copy_(y)、x.t_()将更改x。也可以使用像标准的NumPy一样的各种索引操作。改变形状:如果想改变形状,可以使用torch.view。如果是仅包含一个

2021-03-18 19:17:09 329

原创 leetcode 剑指 Offer 61. 扑克牌中的顺子

文章目录题目要求解题思路方法一方法二题目要求从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。解题思路方法一首先判断是否有重复,有的话直接返回False。再判断是否max_num - min_num < 5。class Solution(object): def isStraight(self, nums): """

2021-03-17 16:08:21 46

原创 leetcode 剑指 Offer 50. 第一个只出现一次的字符

文章目录题目要求解题思路字典题目要求在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 s 只包含小写字母。解题思路字典class Solution(object): def firstUniqChar(self, s): """ :type s: str :rtype: str """ dic = {} # 字典保存键值对,字符:出现次数。 for s_ i

2021-03-17 14:45:24 57

原创 leetcode 剑指 Offer 29. 顺时针打印矩阵

文章目录题目要求解题思路题目要求输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。解题思路关键点:把当前矩阵的上下左右边界表示出来。class Solution(object): def spiralOrder(self, matrix): """ :type matrix: List[List[int]] :rtype: List[int] """ if not matrix:

2021-03-17 14:22:25 61

原创 leetcode 剑指 Offer 21. 调整数组顺序使奇数位于偶数前面

文章目录题目要求解题思路双指针题目要求输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。解题思路双指针class Solution(object): def exchange(self, nums): """ :type nums: List[int] :rtype: List[int] """ i, j = 0, len(nums) - 1

2021-03-15 21:36:22 59

原创 leetcode 剑指 Offer 58 - I. 翻转单词顺序

文章目录题目要求解题思路方法一:双指针方法二:python字符串操作知识点题目要求输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。为简单起见,标点符号和普通字母一样处理。例如输入字符串"I am a student. “,则输出"student. a am I”。解题思路方法一:双指针class Solution(object): def reverseWords(self, s): """ :type s: str :rty

2021-03-15 18:50:57 74

原创 leetcode 剑指 Offer 59 - I. 滑动窗口的最大值

文章目录题目要求解题思路滑动窗口题目要求给定一个数组 nums 和滑动窗口的大小 k,请找出所有滑动窗口里的最大值。解题思路滑动窗口class Solution(object): def maxSlidingWindow(self, nums, k): """ :type nums: List[int] :type k: int :rtype: List[int] """ if not nums

2021-03-14 14:01:31 52

原创 leetcode 剑指 Offer 57 - II. 和为s的连续正数序列

文章目录题目要求解题思路双指针题目要求输入一个正整数 target ,输出所有和为 target 的连续正整数序列(至少含有两个数)。序列内的数字由小到大排列,不同序列按照首个数字从小到大排列。解题思路双指针设置一个left和right两个边界,不断移动两边界。class Solution(object): def findContinuousSequence(self, target): """ :type target: int :r

2021-03-14 13:37:40 59

Pandas基础-数据集.zip

Pandas基础:文件读取与写入、Series和Dataframe、常用基本函数、排序对应的数据集。

2020-07-02

used_car_data.zip

阿里云天池比赛——二手车交易价格预测数据集,包含训练集和测试集B。用于入门机器学习数据挖掘的非常好的比赛。

2020-05-01

空空如也

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

TA关注的人

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