惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
阮一峰的网络日志
阮一峰的网络日志
S
Secure Thoughts
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
C
Cyber Attacks, Cyber Crime and Cyber Security
T
Threat Research - Cisco Blogs
P
Privacy & Cybersecurity Law Blog
The Hacker News
The Hacker News
H
Heimdal Security Blog
W
WeLiveSecurity
L
LINUX DO - 热门话题
Hacker News: Ask HN
Hacker News: Ask HN
WordPress大学
WordPress大学
The Last Watchdog
The Last Watchdog
Hugging Face - Blog
Hugging Face - Blog
博客园 - 【当耐特】
D
DataBreaches.Net
I
Intezer
Webroot Blog
Webroot Blog
C
Cisco Blogs
AWS News Blog
AWS News Blog
博客园 - 聂微东
T
The Blog of Author Tim Ferriss
V
Vulnerabilities – Threatpost
罗磊的独立博客
Google DeepMind News
Google DeepMind News
N
Netflix TechBlog - Medium
Schneier on Security
Schneier on Security
宝玉的分享
宝玉的分享
博客园 - 叶小钗
PCI Perspectives
PCI Perspectives
D
Docker
Scott Helme
Scott Helme
NISL@THU
NISL@THU
J
Java Code Geeks
B
Blog RSS Feed
Google Online Security Blog
Google Online Security Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
T
The Exploit Database - CXSecurity.com
AI
AI
美团技术团队
Cloudbric
Cloudbric
月光博客
月光博客
P
Proofpoint News Feed
T
Tailwind CSS Blog
Google DeepMind News
Google DeepMind News
小众软件
小众软件
www.infosecurity-magazine.com
www.infosecurity-magazine.com
The Cloudflare Blog
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org

Benson's blog

Enjoy life Internship AI on academic research How AI Will Change the Mobile Ecosystem Look ahead Goodbye 2025 Hacker News to Kindle Another project How to imporve english Introduction of Fraud detection PopTranslate Last day in netease Better idea between Copilot-typed and CLI-typed assistant Gemini-cli LLM Post-Training experience Papers I readed recently about LLM application Difference between LLMs and traditional computer technology GRPO Weekly-#26 AI Application Weekly-#25 AI infra and application Weekly-#24 First week as LLM inference engineer Weekly-#23 seeking job Weekly-#22 2025 New Year AutoSwitch Translate Goodbye 2024 Weekly-#20 Breaking of glass Cross Entropy Loss of Triton Weekly-#18 Cross Entropy Loss of Triton Weekly-#17 Triton Puzzles Weekly-#16 AutoBuilder Weekly-#15 Starting of tanble tennis Weekly-#14 Accident in life Weekly-#13 Trying of xiaohongshu Weekly-#12 summary of LLM acceleration Outline of LLM acceleration Weekly-#11 Copilot-type products Weekly-#10 Preparation for next journey Weekly-#9 Startup of YouTube Notes of flash-attention How to learn knowledge in new fields? Weekly-#8 Start Reading Notes of LoRA Acceleration of LLM - Matrix Multiplication Weekly-#8 Summary for two month Weekly-#7 Staying home Weekly-#6 Cost of PopTranslate Weekly-#5 Updating of PopTranslate Validated example of LLM acceleration Weekly-#4 First insight of LLM accelerate Weekly-#3 PopTranslate Weekly-#2 The fail of first product Weekly-#1 First week of indie develop slack迁移discord 雅思备考 2024Q3 中文博客合集 English Diary in May 五一游记 开始休假 离职前的状态 2024-01-01 duckdb 看懂的第一个PR learning english in October learning english in September learning english in August top hack news 收集 大模型调研 自动驾驶的小玩具 旅游 扬州+苏州 small talk of learning english 新年新气象-碎碎念 刷剧 感染新冠 神经网络解释性 全局的模型无关解释方法合集 社区发现算法概览 图神经网络入门(GNN) 我的第一款 iOS APP AtCoder Beginner Contest 268 人的信息输入方式对比 重叠社区检测 人穷极一生到底在追求什么 重拾生活规划 社区发现算法 - Louvain 《幸福的方法》 读《人类简史》有感 妙峰山骑行 黑客帝国 特征交互 特征工程 累计局部效应图 模型解释性-PDP 模型解释性 Web3 入门科普 总结 2022.4 孪生网络做 query 相似度任务 学习 2022.4 Imagen DeBERTa 读论文 用CNN做query相似度任务
强化学习简介
Benson · 2022-11-16 · via Benson's blog

概念

强化学习是机器学习的一个分支,指模型输出结果后从环境中获取反馈,从而优化自身的一种学习方法。

人类的学习过程就是学习知识,然后根据环境的反馈不断提升自己。最典型的比如开车,可以通过现实的反馈得知当前操作是否合理。再比如数学推理,人类本身就可以证明某个数学结果的真伪,当然这个证明过程或许比较长,但至少是可证明的。

最著名的案例是 DeepMind 的 AlphaGo 击败围棋世界冠军李世石,生成对抗网络GAN也属于强化学习的一种。

Q-learning

Q-learning 是不断维护一个 Q[status][action]=value 的二维数据表,value 代表当前 status 下执行 action 能获取到的奖励。

通过不断地学习、试错,来更新这个Q表,使得Q表的取值越来越合理,这样无论对于任意一种状态,都能选择到Q值最大的action进行操作。

实际的更新过程中,会认为当前action的收益 + 下次status的Q值是当前 status-action 的实际Q值,以此作为基准来不断更新当前的预测值,即当前的 Q[status][action],具体逻辑可以参考莫烦大佬的样例。个人理解这种更新逻辑不一定最好,只是为了得到最合理的Q表的一种手段。

Saras

Saras 和 Q-learning 比较类似,区别在于,Q-learning 计算实际Q值时,取的是使value最大的action,但实际执行时,下次动作不一定是这个action(因为要保证探索性,下次action有一定的随机性),而对于 Saras,选择的是下次实际动作的action,而不是最大的action,这样就能更好地保证随机性,对需要结果多样性的场景来说更加合适。

Sarsa(lambda)

默认的场景里,当前的状态离最优状态都很远,只有等第一次遇到最优态的时候才能获取到收益,才能真正更新Q值,那么这时候要更新前面多少步的status对应的Q值呢?lambda 就是起这个作用的,lambda 范围[0, 1],取0时只更新当前步骤的Q值,取1时更新从初始状态到当前状态的所有Q值,当然距离当前状态越远,更新的权值就越小。

Deep Q Network

现实很多情况中 status 的状态是无法枚举的,于是就有了 DQN,使用隐式向量作为 status 的表征,Q 表用神经网络模型来替换,从而把Q-learning 和 神经网络融合在一起,解决了 status 无法枚举的问题。DQN 主要有两点值得提一下,1)历史的 Q 表学习样本可以累积,也可以重复使用,累积一段时间之后再去更新模型。2)DQN 造了两个结构一样的模型,分别叫做估计模型和现实模型,估计模型参数不断更新,现实模型隔一段时间会同步估计模型的参数。现实模型的输入的是下一步的status,占有先机,因此不需要持续更新也能创造比较准确率的Q值。原文中交替更新的两个相同结构的模型是DQN的一大亮点,但我还无法理解。。总觉得一起更新的话效果会更好一点。

Double DQN:使用 Q_max_predict (s, a) 来替代 Q_max_target (s, a) ,防止实际结果过大,加快收敛速度。ps:这不就是说明 predict 模型要比 target 模型更好嘛!

Prioritized Experience Replay (DQN):跟 Sarsa(lambda) 的作用比较类似,能获取到收益的步骤很少,因此要高效利用这个步骤,DQN中,会根据误差(Q预估-Q收益)对样本进行带权采样,当前步骤获取到收益时,预估的误差会很大,那被采样的概率就很高。

Dueling DQN:把Q值分成两部分,status 本身固有的值 和 action-status 的增益。目的是为了让Q值更加符合实际的场景。

Policy Gradients

Q-learning 中 action 取值都是离散型的,Policy Gradients 就是适配 action 是连续取值的情况。

这样每次的学习目标就不再是误差,而是每个action对应的 收益了。

进阶

Actor Critic:将环境反馈也用神经网络替代,解决 Policy Gradients 只能回合更新,而不能单步更新的问题。

soft-Actor Critic:让Q模型不只关注收益,也关注输出值的熵,提高模型的探索能力。

已经越来越像生成对抗网络了。

很有意思的案例,回头再搞一搞: https://github.com/Farama-Foundation/Gymnasium

总结

强化学习的优势在于,面对业务场景,只要能把场景的状态和验证机制描述清楚,就能利用多次交互来获得最优的模型效果。比如 AlphaGo。还有其他可行的场景吗?比如自动驾驶、机器人、游戏、数学推理。很值得探索。

这也特别贴合人的学习过程。现在文本、视觉、语音等各个小模块的效果已经比较成熟,缺点是解释性不够,用一个无法解释的模型来达成AGI几乎是不现实的,一个可能的解决办法是,用一个可解释、可控的框架把不同的功能模型组合起来,从而达成AGI。这个可解释的框架,会是强化学习吗?

参考

莫烦教程

推理 sota

Soft Actor-Critic论文笔记

rl-book-Applications