读paper4-多智能体强化学习入手与论文集
多智能体强化学习入手与论文集 TODO List [x] 先把RL复习一下:马尔可夫与蒙特卡洛部分 [x] 2019.10的一篇nature:Grandmaster level in StarCraft II using multi-agent reinforcement learning。https://www.nature.com/articles/s41586-019-1724-z。https://mp.weixin.qq.com/s/R4RXxLan7H2sCbBrKqyH6w [x] 多智能体强化学习算法【一】【MAPPO、MADDPG、QMIX】 [ ] 新型多智能体 Transformer(MAT,Multi-Agent Transformer)架构,该架构可以有效地将协作 MARL 问题转化为序列模型问题,其任务是将智能体的观测序列映射到智能体的最优动作序列。https://arxiv.org/pdf/2205.14953.pdf [x] 多智能体强化学习大模型初探https://mp.weixin.qq.com/s/C_bNa42FdR5xLRcbSLXSCg [x ...
cs224w-图机器学习1
cs224w-图机器学习1 Introduction 选择图的原因:图是用于描述并分析有关联 / 互动的实体的一种普适语言。它不将实体视为一系列孤立的点,而认为其互相之间有关系。它是一种很好的描述领域知识的方式。 网络与图的分类 networks / natural graphs:自然表示为图 Social networks: Society is a collection of 7+ billion individuals Communication and transactions: Electronic devices, phone calls, financial transactions Biomedicine: Interactions between genes/proteins regulate life(大概是基因或蛋白质之间互动从而调节生理活动的过程) Brain connections: Our thoughts are hidden in the connections between billions of neurons graphs:作为一种表示方 ...
读paper3-Katana_Dual_Slicing-Based_Context_for_Learning_Bug_Fixes
读paper3-Katana: Dual Slicing-Based Context for Learning Bug Fixes 提出了一种基于程序切片的方法,其不是任意地将代码作为上下文包含进来,而是分析对错误语句具有控制或数据依赖关系的语句。利用代码的上下文和修复版本的上下文来捕获相关的修复要素。这里修复版本的上下文并不是指错误代码区的代码前缀与后缀,而是指的是与错误代码直接关联的代码块,无论是控制流还是数据流。 思路上还是基于变形的AST+图神经网络,同时通过上下文的切分尽可能减少冗余信息,通过修复版本的上下文为神经网络的学习提供更多信息。 项目开源在https://github.com/saltlab/Katana 问题引入 当前最先进的基于学习的程序修复方法以各种方式利用上下文,并且其中许多方法使用基于序列和树/图的源代码表示来学习程序修复。这些方法使用包含buggy语句的包围类、包围函数、buggy子树或整个文件来捕获buggy语句的上下文。然而,所有这些方法都对处理buggy语句设置了一个界限限制。基于序列的方法使用最大标记数限制(例如,1,000个标记),在这个范围内 ...
读paper2-基于LLM的缺陷修复
读paper2-基于LLM的缺陷修复 A Deep Dive into Large Language Models for Automated Bug Localization and Repair 来自 Proceedings of the ACM on Software Engineering 。用作启发思路吧,水水的,一二区里没见这刊。反正成果也没开源,全靠几张图。。。 研究概述 现有的工作探索了将整个有错误的函数输入到LLMs中,并使用注释来指导LLMs生成修复好的函数的方法。然而,让LLMs生成整个函数是多余的,因为原有有错误的函数中并不是所有的代码都是错误的。有可能有错误的代码及其相应的修复代码共享一些非错误的前缀和后缀。例如,在图1中,蓝色和棕色的代码是有错误和修复函数共享的前缀和后缀代码。通常,只有少部分有错误的代码需要修改。在给定的例子中,只需要将 “getProperty” 替换为 “get” 就可以生成修复代码。要求LLMs生成这之外的其他代码可能会导致更多的错误,并降低整体的错误修复能力。 问题根源还是在于细粒度,所以该文提出了一种基于token的缺陷定位与修 ...
深度学习-LogSumExp技巧
深度学习-LogSumExp技巧 引言 今天来学习下 LogSumExp(LSE)技巧,主要解决计算 Softmax 或 CrossEntropy时出现的上溢 (overflow) 或下溢 (underflow) 问题。 我们知道编程语言中的数值都有一个表示范围的,如果数值过大,超过最大的范围,就是上溢;如果过小,超过最小的范围,就是下溢。 什么是 LSE LSE 被定义为参数指数之和的对数: logSumExp(x1…xn)=log(∑i=1nexi)=log(∑i=1nexi−beb)=log(eb∑i=1nexi−b)=log(∑i=1nexi−b)+log(eb)=log(∑i=1nexi−b)+b\begin{aligned}\operatorname{logSumExp}\left(x_{1} \ldots x_{n}\right) &=\log \left(\sum_{i=1}^{n} e^{x_{i}}\right) \\ &=\log \left(\sum_{i=1}^{n} e^{x_{i}-b} e^{b}\right) \\ & ...
jupyter踩坑记录
jupyter踩坑记录 VSCode安装完成后无法在命令行使用 无法将“jupyter”项识别为 cmdlet、函数、脚本文件或可运行程序的名称 ‘jupyter’ 不是内部或外部命令,也不是可运行的程序 首先要确认环境变量: D:\IDE-Extends\Python3\Lib\site-packages D:\IDE-Extends\Python3\Scripts D:\IDE-Extends\Python3 理论上第三个不需要,我只是保险起见 保险起见我直接把环境变量用户PATH与系统PATH都来了一份 其次:D:\IDE-Extends\Python3\Scripts,类似的,这个文件夹内,其实你发现根本没有 jupyter.exe 所以执行类似:jupyter nbconvert --to markdown '文件名.ipynb'命令会报错 一种可以在当前目录下复制 jupyter-notebook.exe 重命名为 jupyter.exe 另一种是直接使用 jupyter-notebook 替换命令中的 jupyter VSCode下ipynb转md https:/ ...
吴恩达深度学习笔记汇编4-3:序列模型
吴恩达深度学习笔记汇编4-3:序列模型(Sequence Models) 这部分知识是我在学习吴恩达的深度学习课程时对其笔记的汇总与编注。 内容上,原笔记是视频课程的字幕整合,我对原笔记一些无关紧要的内容进行了删减,以达到精炼的目的,并增加了一些个人见解、语义上的补充以及一部分中英对照和公式推导,以对吴老师的课程内容理解提供更充分的辅助,有一些使用了引用来加以区分,不过大部分并未进行标注(主要是没有观感很好的标注方法)。 我对原文有一些改动,主要是原文有一些地方翻译的不尽人意(这是因为视频课程中吴老师语句也并不会像课本一样做到非常条理清晰),所以我对那些词不达意、逻辑或语句结构混乱的地方进行了删改,以更清晰地表达出吴老师的原意。(这部分改动基本没有标注) 以及一些加粗,也是我自己认为相对重点的地方,带有一定主观性,见谅。 又,每节课程开始都会有简短的引言,不过看上去可能有些废话,但我认为也是必不可少的,所以用引用进行标注,可以选择性阅读 课程地址:【[双语字幕]吴恩达深度学习deeplearning.ai】 https://www.bilibili.com/video/BV1FT4y ...
吴恩达深度学习笔记汇编4-2:序列模型
吴恩达深度学习笔记汇编4-2:序列模型(Sequence Models) 这部分知识是我在学习吴恩达的深度学习课程时对其笔记的汇总与编注。 内容上,原笔记是视频课程的字幕整合,我对原笔记一些无关紧要的内容进行了删减,以达到精炼的目的,并增加了一些个人见解、语义上的补充以及一部分中英对照和公式推导,以对吴老师的课程内容理解提供更充分的辅助,有一些使用了引用来加以区分,不过大部分并未进行标注(主要是没有观感很好的标注方法)。 我对原文有一些改动,主要是原文有一些地方翻译的不尽人意(这是因为视频课程中吴老师语句也并不会像课本一样做到非常条理清晰),所以我对那些词不达意、逻辑或语句结构混乱的地方进行了删改,以更清晰地表达出吴老师的原意。(这部分改动基本没有标注) 以及一些加粗,也是我自己认为相对重点的地方,带有一定主观性,见谅。 又,每节课程开始都会有简短的引言,不过看上去可能有些废话,但我认为也是必不可少的,所以用引用进行标注,可以选择性阅读 课程地址:【[双语字幕]吴恩达深度学习deeplearning.ai】 https://www.bilibili.com/video/BV1FT4y ...
吴恩达深度学习笔记汇编4-1:序列模型
吴恩达深度学习笔记汇编4-1:序列模型(Sequence Models) 这部分知识是我在学习吴恩达的深度学习课程时对其笔记的汇总与编注。 内容上,原笔记是视频课程的字幕整合,我对原笔记一些无关紧要的内容进行了删减,以达到精炼的目的,并增加了一些个人见解、语义上的补充以及一部分中英对照和公式推导,以对吴老师的课程内容理解提供更充分的辅助,有一些使用了引用来加以区分,不过大部分并未进行标注(主要是没有观感很好的标注方法)。 我对原文有一些改动,主要是原文有一些地方翻译的不尽人意(这是因为视频课程中吴老师语句也并不会像课本一样做到非常条理清晰),所以我对那些词不达意、逻辑或语句结构混乱的地方进行了删改,以更清晰地表达出吴老师的原意。(这部分改动基本没有标注) 以及一些加粗,也是我自己认为相对重点的地方,带有一定主观性,见谅。 又,每节课程开始都会有简短的引言,不过看上去可能有些废话,但我认为也是必不可少的,所以用引用进行标注,可以选择性阅读 课程地址:【[双语字幕]吴恩达深度学习deeplearning.ai】 https://www.bilibili.com/video/BV1FT4y ...
吴恩达深度学习笔记汇编3-2:结构化机器学习项目
吴恩达深度学习笔记汇编3-2:结构化机器学习项目 (Structuring Machine Learning Projects) 这部分知识是我在学习吴恩达的深度学习课程时对其笔记的汇总与编注。 这一部分内容并没有很多需要推导的数学知识或者很深奥的思想(除了最后几节),大部分都是经验性知识,更侧重于理解与思考,所以我对原文尽量没有改动,以免产生歧义。 当然,有一些加粗,是我自己认为相对重点的地方,带有一定主观性,见谅。 课程地址:【[双语字幕]吴恩达深度学习deeplearning.ai】 https://www.bilibili.com/video/BV1FT4y1E74V 笔记链接:https://github.com/fengdu78/deeplearning_ai_books 笔记在线阅读:http://www.ai-start.com/dl2017/ 机器学习策略(2)(ML Strategy (2)) 进行误差分析(Carrying out error analysis) 你好,欢迎回来,如果你希望让学习算法能够胜任人类能做的任务,但你的学习算法还没有达到人类的表现,那 ...
吴恩达深度学习笔记汇编3-1:结构化机器学习项目
吴恩达深度学习笔记汇编3-1:结构化机器学习项目 (Structuring Machine Learning Projects) 这部分知识是我在学习吴恩达的深度学习课程时对其笔记的汇总与编注。 这一部分内容并没有很多需要推导的数学知识或者很深奥的思想(除了最后几节),大部分都是经验性知识,更侧重于理解与思考,所以我对原文尽量没有改动,以免产生歧义。 当然,有一些加粗,是我自己认为相对重点的地方,带有一定主观性,见谅。 课程地址:【[双语字幕]吴恩达深度学习deeplearning.ai】 https://www.bilibili.com/video/BV1FT4y1E74V 笔记链接:https://github.com/fengdu78/deeplearning_ai_books 笔记在线阅读:http://www.ai-start.com/dl2017/ 机器学习(ML)策略(1)(ML strategy(1)) 为什么是ML策略?(Why ML Strategy?) 什么是机器学习策略呢?我们从一个启发性的例子开始讲,假设你正在调试你的猫分类器,经过一段时间的调整,你的系统 ...
吴恩达深度学习笔记汇编2-2:改善深层神经网络
吴恩达深度学习笔记汇编2-2:改善深层神经网络:超参数调试、正则化以及优化(Improving Deep Neural Networks:Hyperparameter tuning, Regularization and Optimization) 这部分知识是我在学习吴恩达的深度学习课程时对其笔记的汇总与编注。 这节笔记内容上基本没有什么问题,解释的也都很清楚,也没有很难的公式推导,所以基本就照搬了原笔记,只有一部分小改动 课程地址:【[双语字幕]吴恩达深度学习deeplearning.ai】 https://www.bilibili.com/video/BV1FT4y1E74V 笔记链接:https://github.com/fengdu78/deeplearning_ai_books 笔记在线阅读:http://www.ai-start.com/dl2017/ 优化算法 (Optimization algorithms) Mini-batch 梯度下降(Mini-batch gradient descent) 本周将学习优化算法,这能让你的神经网络运行得更快。机器学习的应用是 ...
吴恩达深度学习笔记汇编2-1:改善深层神经网络
吴恩达深度学习笔记汇编2-1:改善深层神经网络:超参数调试、正则化以及优化(Improving Deep Neural Networks:Hyperparameter tuning, Regularization and Optimization) 这部分知识是我在学习吴恩达的深度学习课程时对其笔记的汇总与编注。 这节笔记内容上基本没有什么问题,解释的也都很清楚,也没有很难的公式推导,所以基本就照搬了原笔记,只有一部分小改动 课程地址:【[双语字幕]吴恩达深度学习deeplearning.ai】 https://www.bilibili.com/video/BV1FT4y1E74V 笔记链接:https://github.com/fengdu78/deeplearning_ai_books 笔记在线阅读:http://www.ai-start.com/dl2017/ 深度学习的实用层面(Practical aspects of Deep Learning) 训练,验证,测试集(Train / Dev / Test sets) 大家可能已经了解了,那么本周,我们将继续学习如何有效运 ...
跨考991之软工复习见解
跨考991之软工复习见解 我自己的一些想法,但请不要将我的想法上升到复习指导这种层次,我没有研究过到底该如何在不接触实际开发的情况下学软工,所以这里这只能是一些想法,或者说建议。此外我也不是做题家,我也不喜欢当做题家,但是991就是一个应试性很强的专业课,我也没有精力年年关注991动向,也没人给我钱做这个,还会抢人家机构饭碗,出力不讨好,所以,且行且珍惜吧。991并不算难,多一份努力就多一分回报。 此外,软工见仁见智,所以你在读的时候最好已经复习过一遍,有了大致的了解和自己的一些看法,再来批判地看,最好不要被别人的思想先入为主。其次,我这里也不一定全对,所以,一定要有你自己的想法。 最后,在没有实践经历的前提下裸学本身就是一种非常别扭的方式,所以如果你还很轻松的话,找点项目自己玩一玩看一看,会好很多。 在我看来软件工程这门课几乎是跨考生备考991最大的阻碍,事实也基本如此,无论是全日制跨考,还是对于非计算机专业想考非全的同学来说,这门课如同天书。虽然在软工人看来,这门课几乎没有任何技术难度,纯纯背诵课程,但如果没有工程经验或者软工专业素养,这门课也并不那么好理解,就算能背熟也很难做到 ...
吴恩达深度学习笔记汇编1-2:神经网络和深度学习
吴恩达深度学习笔记汇编1-2:神经网络和深度学习(Neural Networks and Deep Learning) 这部分知识是我在学习吴恩达的深度学习课程时对其笔记的汇总与编注。 内容上,原笔记是视频课程的字幕整合,我对原笔记一些无关紧要的内容进行了删减,以达到精炼的目的,并增加了一些个人见解、语义上的补充以及一部分中英对照和公式推导,以对吴老师的课程内容理解提供更充分的辅助,有一些使用了引用来加以区分,不过大部分并未进行标注(主要是没有观感很好的标注方法)。 我对原文有一些改动,主要是原文有一些地方翻译的不尽人意(这是因为视频课程中吴老师语句也并不会像课本一样做到非常条理清晰),所以我对那些词不达意、逻辑或语句结构混乱的地方进行了删改,以更清晰地表达出吴老师的原意。(这部分改动基本没有标注) 以及一些加粗,也是我自己认为相对重点的地方,带有一定主观性,见谅。 又,每节课程开始都会有简短的引言,不过看上去可能有些废话,但我认为也是必不可少的,所以用引用进行标注,可以选择性阅读 课程地址:【[双语字幕]吴恩达深度学习deeplearning.ai】 https://www.bil ...
吴恩达深度学习笔记汇编1-1:神经网络和深度学习
吴恩达深度学习笔记汇编1-1:神经网络和深度学习(Neural Networks and Deep Learning) 这部分知识是我在学习吴恩达的深度学习课程时对其笔记的汇总与编注。 内容上,原笔记是视频课程的字幕整合,我对原笔记一些无关紧要的内容进行了删减,以达到精炼的目的,并增加了一些个人见解、语义上的补充以及一部分中英对照和公式推导,以对吴老师的课程内容理解提供更充分的辅助,有一些使用了引用来加以区分,不过大部分并未进行标注(主要是没有观感很好的标注方法)。 我对原文有一些改动,主要是原文有一些地方翻译的不尽人意(这是因为视频课程中吴老师语句也并不会像课本一样做到非常条理清晰),所以我对那些词不达意、逻辑或语句结构混乱的地方进行了删改,以更清晰地表达出吴老师的原意。(这部分改动基本没有标注) 以及一些加粗,也是我自己认为相对重点的地方,带有一定主观性,见谅。 又,每节课程开始都会有简短的引言,不过看上去可能有些废话,但我认为也是必不可少的,所以用引用进行标注,可以选择性阅读 课程地址:【[双语字幕]吴恩达深度学习deeplearning.ai】 https://www.bil ...
读paper1-针对DL的缺陷分类与修复
读paper1-针对DL的缺陷分类与修复 缺陷分类:An Empirical Study on TensorFlow Program Bugs 与传统程序的比较 与传统应用程序的编程范式相比,DL应用程序的编程范式存在显著差异。在传统应用程序中,程序是直接编写解决目标问题的模型。 然而,DL应用程序的程序并不直接编码问题解决模型。相反,DL应用程序的程序编码了一个理想的DL模型的网络结构,以及利用大量数据进行训练的过程。网络结构和训练过程都需仔细设置超参数。DL应用程序的开发往往面临着开发传统应用程序中很少遇到的任务,例如配置由节点层组成的复杂网络结构(也称为计算图)。此外,训练过程包含着依赖于超参数调整的计算密集型循环,如学习率和丢弃率的调整。 出现Bug的几个原因 错误的模型参数或结构(IPS) 不恰当的模型参数(如学习率)或错误的模型结构(如缺失节点或层) 或者说是模型本身就是有问题或者是将模型编码为代码时出现错误(比如少打了一个参数或者忘记平方) 不对齐的张量(UT) 输入张量的形状与预期的形状不匹配 与TensorFlow计算模型的混淆(CCM) 当Te ...
2024BUAA软院专硕考研tips
2024-BUAA软院专硕考研Tips 省流: 991难度小于408,出题不确定性不一定小于408 可以跟着王道复习,别跟着王道练习 数据结构课后题真不错 保证心态 2024.4.1,跟老师谈好了导师意向,坐高铁回济南,思绪万千,开始写这篇经验贴。 犹然记得,以前看罗翔老师说过,人生在世,努力固然重要,但更多的是我们的运气,我们的出生、成长、求学、工作。作为一名党员,我并非唯心主义者,也并不相信唯命运论,我始终坚信奋斗者终将有所得,但或许就在我辗转反侧最终决定报考北航的时候,命运的齿轮开始了转动。 首先,例行劝退,尤其是对于非科班出身的同学来说,我并不认为考软院是一个很好的选择,你要确定你至少对软件工程的思想有一定的把握,同时能够接受c语言的机试(虽然机试梯度分明,不过是后话),能够对复试的编译原理有一定悦纳。(很巧,这三样我都不差) 你要知道,选择大于努力,今年buaa软工学硕310分的院线都直接没招满,最初20的名额,只有18人上线,最后18人进复试,18人全部录取。同样的,也有370进不了初试,400+复试被刷(不是说buaa。 所以,不如仔细想想,buaa真的适合 ...