Yihua's Blog

Work hard and keep simple.

DeepSeek-R1 Dissection: Understanding PPO & GRPO Without Any Prior Reinforcement Learning Knowledge [En/中]

DeepSeek-R1 技术剖析:没有强化学习基础也能看懂的 PPO & GRPO


Why Cache 32 Heads When One Latent Variable Suffices? A Theory-to-Code Guide to DeepSeek’s MLA for KV-Cache [En/中]

从多头共享到潜变量:DeepSeek的MLA在低秩投影与按需解压中重新定义 KV-Cache


From Zero to Reasoning Hero: How DeepSeek-R1 Leverages Reinforcement Learning to Master Complex Reasoning [En/中]

千呼万唤始出来:DeepSeek-R1 如何通过强化学习实现复杂推理


A Review on the Evolvement of Load Balancing Strategy in MoE LLMs: Pitfalls and Lessons [En/中]

关于 MoE 大模型负载均衡策略演进的回顾:坑点与经验教训


Patching the Foundation Models: Pitfalls and Pains in Machine Unlearning [En/中]

给大模型打打补丁:机器反学习方法中的陷阱与痛点


读书笔记——重述《Effective C++》[中/En]

Reading Notes - Talk about Effective C++ in My Own Words


漫谈C++——C++17中的constexpr

C++学习笔记

C++17中的constexpr 在一段时间以前,我曾经写过编译期常量和constexpr,那么在这篇文章的上半部分,我们的目光会放在C++17中和constepxr有关的新特性;在文章的后半部分,我们将综合这四篇文章所涉及到的知识点,在编译期解决FizzBuzz问题,我会着重于介绍我在处理编译期问题的过程和思路,而不是简单的把示例代码罗列出来。如果你对编译期常量和constexpr还一无所...

漫谈C++——const真理大讨论之 const的线程安全

C++学习笔记

const真理大讨论之 const的线程安全 有时我们会听到const就一定线程安全这样的说法,但是事实可能没那么简单。 线程安全的const 有时候人们好像认为只要加一个const就能自动地给一个变量附上一个“线程安全”的属性,因而在多线程环境中就可以随意地访问。 一般而言,不可变 的数据可以在不考虑线程安全的情况下被访问。这是因为数据如果不可变,那么我们就不会去写它,无论什么时候...

漫谈C++——const真理大讨论之 mutable

C++学习笔记

const真理大讨论之mutable 接着上篇文章说,当我们还在语义const和语法const的实现效果不一致中苦苦挣扎的时候,我们实际需要特殊声明变量在封装内部为一种“可变的”状态,但对外提供表现出来的应该是const属性。mutable是在C++中被讨论相对较少的一个关键字。但是它却十分有用,而且在你想写出const正确的代码时几乎不可避免。 我们的核心观点在于,在外部表现为cons...

漫谈C++——const真理大讨论之 语法和语义const

C++学习笔记

const真理大讨论之“语法和语义const” 在接下来我准备花三篇文章的篇幅讨论我们的老朋友const。我曾经在一篇文章里提到了有关指针和引用的顶/底层const,但是在这三篇文章中我想跳出const的语法,讨论一下在使用const时需要特别注意的其他事项,包括const正确性、mutable以及在使用const时的线程安全。这大概构成了这三篇文章的主题,我愿统一称他们为”const的真...