XYlab/计算机资料库

COMPUTER SCIENCE

踏实扎实

来源于互联网的公开资料,由小组成员共同维护,定期更新,学习路线仅供参考。(仍在更新整理中)

计算机科研入门线路

科研学习需要决心和毅力。是一件需要投入大量精力的事情。需要 时间 需要 自驱力。自然不存在速成的方法。但是如果你想了解计算机科研,可以此作为你学习的开始。

  1. 计算机基础知识(包括编程语言算法数据结构等基础) https://cs50.harvard.edu/x/2024/ 

  2. 基础强化 (微积分  线性代数   数据结构   Python )  https://leetcode.cn/     [通过刷题掌握编程技能和数学基础知识(默认掌握的情况可以直接进阶)]

  3. 人工智能基础概念和算法 https://cs50.harvard.edu/ai/2024/ 

  4. 进阶ML学习 [这一个阶段默认已经掌握基本的CS和AI的基础知识]

机器学习核心课程学习 吴恩达机器学习公开课 (了解ML)  吴恩达CS229[难度较高需要基础(高数概率论Python)]  CS229 Notes (数学原理及科研)

深度学习核心课程学习 李宏毅机器学习[涵盖深度学习的绝大多数领域]  (尽快上手可以暂时跳过机器学习核心课程的学习,但确实不能不知道相关的内容)

  1. 从进阶的ML学习中找到自己的兴趣点深入学习(根据各种课程的相关代码以及实验可以找寻自己喜欢的方向 [学习都很痛苦不如找一个喜欢的])

  2. 掌握科研技能 (文档编辑 overleaf [Latex])(阅读查找文献 Scholar Dblp)(查找代码 Github paperwithcode)(寻找目标  CCF 会议期刊推荐)

  3. 以本学习小组兴趣点强化学习为例  这几门课程各有优势时间充分可以都看一遍  周博磊强化学习纲要  赵世钰强化学习的数学原理 王树森深度强化学习 

  4. 阅读论文 (其实这个过程应该伴随着整个学习的过程)(但同样可以了解全貌之后再开始论文的阅读)

  5. 写作 (不断的去写总结 Idea paper...)(Writing and Reading 同样重要)(学习顶会的思维方式写作技巧 多读 多写 多分析 多探讨 )

注:关于视频课程的学习。给自己规划清晰的课程安排很重要, 不要追求看的快,按照自我规划去学习课程。关于科研技能的掌握。不需要单独的时间去研究,在学习的过程中穿插学习。不会就再去看一眼。关于论文。这是一个循序渐进的过程,阅读的前期是痛苦的,但是会逐渐看的越来越快。(找到Motivation  看懂Method  发掘Idea)当你真的有一个小方向需要去做,那么首先你需要去找到这个领域近期的综述,了解该领域的全貌,然后看完在3年内所有发表在顶会上面的文章,找到自己的idea,开始写作,当然这些过程都是需要不断的去探索,去积累的。所以请保持热情,利用时间,自我驱动。

数学基础

线性代数

  • MIT 18.06 Gilbert Strang - Linear Mathematics

同样也出自Gilbert Strang教授,可以说是目前最好的线性代数课程了。

英文原版 双语字幕版

高等数学 (微积分)

  • MIT Gilbert Strang - Calculus

来自MIT的Gilbert Strang教授的著名微积分课程,由浅入深。

英文原版 双语字幕版

概率论

  • MIT 6.431 John Tsitsiklis - Probabilistic Systems Analysis and Applied Probability

来自MIT的John Tsitsiklis教授,内容没有很复杂,但是思考过程让人大开眼界,非常有启发性。

英文原版 双语字幕版

离散数学

  • 中国慕课网 电子科技大学

来自电子科技大学的王丽杰教授 (代数系统部分在课件)

中文

计算机基础

代码语言

C/C++

Python

计算机基础

数据结构与算法  (必学)

计算机网络原理

计算机操作系统

计算机组成原理

人工智能基础

视频课程

  • CS50.3  Introduction to Artificial Intelligence With Python· 2020

       哈佛大学的公开课,详细介绍了数个经典AI算法,案例十分经典,宏观展示了AI的基本要素。

       双语字幕 

  • 吴恩达:神经网络与深度学习

深度学习界权威Andrew Ng作为斯坦福大学计算机科学教授与人工智能实验室主任,课程内容清晰易懂,面面俱到,是学习的一手材料。

中英字幕  | 课后作业 

  • 李宏毅:机器学习

台大李宏毅教授最新版机器学习教程。知识点更加模块化,很适合初学者自学。

项目官网 | B站2021/22版课程 | B站2023版课程 | 21-23PPT作业资料 提取码:h8wr

  • CS 285 at UC Berkeley : Deep Reinforcement Learning

伯克利2021年秋季最新深度学习课程,涵盖了Policy Gradients、Actor Critic、Q-functions等多个强化学习基础算法(Lecture 1 - Lecture 14),学习这门课程有助于理解这些基本的算法;也有如Model-Based RL、Meta RL和离线学习等进阶算法(Lecture 15- Lecture 23),他们可以作为李宏毅老师强化学习课程的进阶扩展。网站也有配套习题供练习。

课程视频  | 课后作业 

  • 李沐:《动手学深度学习(PyTorch版)》

前9课讲授较为基础的神经网络知识,第10课至第29课讲解了深度学习的核心基础知识,第29课至73课更倾向于强化学习的模型具体应用。

大量的Kaggle的实例演示是本教程的亮点,可作为李宏毅老师机器学习课程的补充。

项目官网 | B站中文 

      初学者可以学习至第九章,同时整本书也可以作为深度学习的参考书回看查阅,是深度学习的“圣经”。

 电子书 

  • Elad Hazan :《在线凸优化导论(Introduction to Online Convex Optimization)(Second Edition)》

在线凸优化作为获得凸函数最佳解决方案的方法,在大规模优化和机器学习中的可扩展性而得到了广泛的普及。本书以在线凸优化 (OCO) 框架为例,讲解了 OCO 建模和解决的实际问题,涵盖严格的定义、背景和算法。

电子书 

教材

  • 《深度学习中的数学》

本书通俗易懂的展示了神经网络的数学细节,并使用EXCEL实现,容易上手操作,内容易懂。该书没有开源,故此处不放置链接。

  • 《深度学习》

Lan Goodfellow 传奇般的“花书”《深度学习》,简明扼要的概括了大部分主题。

电子书 

  • 《Convex optimization》Author: Stephen Boyd & Lieven Vandenberghe

本书由理论、应用、算法三部分构成,通过阅读本书,读者能够对凸优化理论和方法建立完整的认识

电子书

  • 《Numerical optimization》Author: Jorge Norcedal & Stephen J. Wright

本书十分透彻地讲述了各种经典优化算法的原理,是学习优化学习必读的入门书籍

电子书

  • 《Convex Optimization: Algorithms and Complexity》Author: Sébastien Bubeck

 本书从凸性的基本概念开始介绍,把常用的一阶算法都做了系统的介绍,简单易懂,适合入门

电子书

  • Lecture notes: Optimization for Machine Learning, lectured by Elad Hazan

来自普林斯顿计算机系的教授Elad Hazan的优化学习的讲座笔记,内容由深入浅

电子书

  • 《A Survey of Optimization Methods from a Machine Learning Perspective》Author: Shiliang Sun, Zehui Cao, Han Zhu, and Jing Zhao

本论文对一些优化算法进行了总结,包括SGD及其momentum、adaptive变体,以及两种重要的凸优化算法

电子书

本页面主要介绍了常见种类的梯度下降优化算法以及是如何如何实现的,如Momentum, Adagrad, 和Adam

人工智能科研基础

  1. Latex

Overleaf  : 在线版的latex,推荐使用。

mathpix : 一款数学公式识别小工具,latex必备搭档。

tablesgenerator:  一款生成latex表格的在线小工具。

一款记录实验结果的在线工具。

  • Linux

Slurm:一个开源、高度可扩展的集群管理和作业调度系统,适用于大型和小型Linux集群。中文文档

鸟哥的Linux私房菜:非常经典的Linux入门教程,内容全面而易懂,非常适合初学者学习。

Tmux:  一个终端复用器,属于常用的开发工具。 

  • Tools

Github: A developer platform that allows developers to create, store, manage, and share their code.

dblp:它提供了计算机领域科学文献的搜索服务,收录的期刊和会议论文质量较高,很好地反映了国外学术研究的方向 。

Papers with code:它将 ArXiv 上面的机器学习论文与 Github 上的代码对应起来,能够让读者找到论文算法实现的代码。

CatalyzeX:同样也是一个可以让读者很快找到ArXiv上对应的Github代码的网站。

Google dataset research:由谷歌开发的数据集检索引擎,可以很方便地搜索到需要的数据集。

CS conference ranking:对于目前的计算机相关会议的一个非官方性的排名,能够让读者了解到各个会议的含金量。

Best paper awards in CS:它列出了由布朗大学的Jeff Huang教授整理出来的各大会议每年最好的一些论文,具有相当的参考和学习价值。

Paper connected:它可以比较方便的找到paper相关的其他文献。

强化学习基础

  • 经典基础算法

Q-Learning | DQN |Policy Gradient |Reinforce |Actor-Critic | Soft Q - Learning 

DPG |DDPG  | MADDPG 

TRPO |PPO | GAE |TD3

强化学习进阶

 单智能体强化学习

  • intrinsic reward 系列

RND (ICLR2019) 论文链接  |Never give up (ICLR2020) 论文链接  

  • graph prior 系列

PKG Net (Intel AI Lab) 论文链接 |NERVENET (ICLR2018) 论文链接|SMP(ICML2020)论文链接 |AMORPHEUS(ICLR2021)论文链接 

  • meta RL系列

Nav(ICLR2017)论文链接 |LSTMA2C(DeepMind2016)论文链接 |GradientDescent(NIPS2016)论文链接 

多智能体强化学习

  • mean-field 系列

mean-field MARL  (ICML 2018)  论文链接  |Multi Type MFMARL   (AAMAS 2020)    论文链接  |Partially Observable MFMARL  (AAMAS 2021)  论文链接

  • StarCraft 系列

VDN  (AAMAS 2018) 论文链接 | QMIX (ICML 2018) 论文链接|RMC (NIPS 2018) 论文链接 |COMA (AAAI 2018) 论文链接|QTRAN (ICML 2019) 论文链接 | ROMA (ICML 2020) 论文链接 | WQMIX (NIPS 2020) 论文链接 | LICA (NIPS 2020) 论文链接 | VMIX (AAAI 2021) 论文链接 | DOP (ICLR 2021) 论文链接 | QPLEX  (ICLR 2021) 论文链接 | RODE (ICLR 2021) 论文链接 |Qatten 论文链接

  • communication 系列

CommNet (NIPS 2016)论文链接  | DIAL  (NIPS 2016)论文链接  | IC3Net (ICLR 2019)论文链接  | TarMAC (ICML 2019)论文链接  | MAAC (ICML 2019)论文链接  | ATOC (NIPS 2019)论文链接  | SchedNet (ICLR 2019)论文链接  | GA-Comm (AAAI 2020) 论文链接 | NeurComm (ICLR 2020)论文链接  | meets Natural Language (ACL 2020) 论文链接 |  Pragmatic  (NIPS 2020) 论文链接 | Dynamic population-based meta-learning (未中)论文链接

  • graph 系列

DGN (ICLR 2020)论文链接 | HAMA (AAAI 2020)论文链接 | G2ANet (AAAI 2020)论文链接 |  Flowcomm (AAMAS 2021)论文链接|MAGIC (AAMAS 2021)论文链接 |MAGnet 论文链接 | Transfer (AAMAS 2020) 论文链接

  • grouping 系列

LSC(未中)  论文链接|SePS  (ICML 2021)论文链接 

  • Baselines 系列

IQL  (ICML 1993)论文链接| IA2C (ICML 2016)论文链接|MADDPG (NIPS 2017) 论文链接| MAA2C  (ICML 2019) 论文链接|MAPPO (未中) 论文链接 | IPPO (未中)论文链接

  • Survey 系列

Benchmarking in Cooperative Tasks 链接 | 

  • Behavioral Diversity 系列

FCP  (NeurlPS 2021) 论文链接  | Investigating Partner Diversification Methods in Cooperative MARL  (ICONIP 2020) 论文链接 |Maximum Entropy Population Based Training for Zero-Shot Human-AI Coordination (ICLR在投 2022) 论文链接  |  SOV and SP in Mixed-Motive RL   (AAMAS 2020) 论文链接      |TrajeDi (AAMAS 2021) 论文链接 | Learning to Cooperate with Unseen Agent via Meta-Reinforcement Learning  (ArXiv 2021) 论文链接 

  • Zero-sum 系列

Nash-VI (ICML2021) 论文链接 | VI-ULCB (ICML2021) 论文链接 | Near-Optimal Reinforcement Learning with Self-Play (NIPS2020) 论文链接

  • General-sum 系列

CE-V-Learning (未中) 论文链接 | V-learning OMD (未中) 论文链接 | When Can We Learn General-Sum Markov Games with a Large Number of Players Sample-Efficiently (未中) 论文链接

V-learning SGD (未中) 论文链接

  • Competitive RL 系列

Independent Policy Gradient Methods for Competitive Reinforcement Learning (NIPS 2020) 论文链接

  • Coordination Graphs  系列

      Using the Max-Plus Algorithm for Multiagent Decision Making in Coordination Graphs (RoboCup 2005) 论文链接  |  DICG (AAMAS 2021) 论文链接 |DCG(ICML 2020 )           论文链接 

因果强化学习

  •  Generalised Policy Learning系列

Transfer learning in multi-armed bandits: A causal approach(IJCAI2017)论文链接

  • Interventions - When and Where系列

Structrual casual bandits:Where to intervene?(NeurIPS2018)论文链接 

  • Counterfactual Decision Making系列

Counterfactual Data-Fusion for Online Reinforcement Learners(ICML2017)论文链接 

离线强化学习

  •  Model-free系列

CQL(NIPS2020)论文链接 |BCQ(ICML2019)论文链接 |PLAS(NIPS2020)论文链接 |CRR(NIPS2020)论文链接 |PLOFF论文链接 |OPAL(ICLR2021)论文链接 

  • Model-based系列

MOPO(NIPS2020)论文链接 |COMBO(未中论文链接 )|RepBM(ICLR2021)论文链接 |DeepAveragers论文链接 | GrBAL  (ICLR 2019)  论文链接 | MBPO (NIPS 2019) 论文链接

  • Benchmark

RLUnplugged(NIPS2020)论文链接 |NeoRL(未中)论文链接 |D4RL(未中)论文链接 

零样本学习

  • Without Any Labels系列

CURL(未中)论文链接  |  DrQ(CoRL2021)论文链接  |  DBC(未中)论文链接  |  SECANT(ICML2021)论文链接 

  • With Labels Only in Training Set系列

AugWM(ICML2021)论文链接  |  PAD(未中)论文链接 

  • With Labels in Both Training and Testing Sets系列

Morphological HRL(IWSLT2019)论文链接 

知识蒸馏 

Distilling the Knowledge in a Neural Network (2015 未中 最早的)论文链接 |  Reinforced Multi-Teacher Selection for Knowledge Distillation (AAAI 2021) 论文链接

对比学习

survey (2020) 论文链接 | CURL (ICML 2020) 论文链接 | Fair Contrastive Learning for Facial Attribute Classification (CVPR 2022) 论文链接 | Robust Contrastive Learning Using Negative Samples with Diminished Semantics (NeurIPS 2021) 论文链接 | CLINE (ACL 2021) 论文链接 | Selective particle attention: Rapidly and flexibly selecting features for deep reinforcement learning 论文链接 | Generalizing Reinforcement Learning through Fusing Self-Supervised Learning into Intrinsic Motivation (AAAI 2022) 论文链接 | Divide and Contrast: Self-Supervised Learning From Uncurated Data (ICCV 2021) 论文链接

图神经网络

Streaming Graph Neural Networks (2020)论文链接|Inductive Matrix Completion Using Graph Autoencoder (2021)论文链接

强化学习资料库

重要网站

OpenAI维护的强化学习的网站,介绍了经典算法并有配套的code。

由UCL汪军老师等大咖发起的强化学习民间学术组织。每年暑假组织RL夏令营在线课程,邀请前沿学者系统分享相关知识和科研进展。

教材材料

  • 《Reinforcement Learning: An Introduction》

官方网站|PDF链接

强化学习经典入门必读书,作者是Sutton,很多后来的学习资料大多数可以追溯到这本书。

  • 《动手学习强化学习》

官方网站

上海交通大学APEX 数据和知识管理实验室强化学习小组出品,内容在不断完善中。

重要博客

视频课程

  • 李宏毅老师《强化学习》

Youtube

  • 周博磊老师 《强化学习》

Github |B站

常用框架

  • RLLIB

  • Stable-Baselines

  • TianShou

  • EPYMARL

常用环境

  • GYM

包含 Atari | Mujoco | Box2D |Classic control | Robotics |Toy text |Third Party Environment

包含 Atari |Butterfly | Classic | MAgent | MPE |SISL

RLenvs是一个强化学习环境搜索引擎。