H

Hello World:博客搭建记录

使用 Astro + Tailwind CSS 搭建个人技术博客的第一篇文章

6 分钟阅读

欢迎来到我的博客

这是我的第一篇技术博客文章,用来测试 Markdown 渲染效果。

代码高亮测试

下面是一段 JavaScript 代码:

function greet(name) {
  return `Hello, ${name}!`;
}

console.log(greet('World'));

Python 示例

def fibonacci(n):
    if n <= 1:
        return n
    return fibonacci(n - 1) + fibonacci(n - 2)

for i in range(10):
    print(fibonacci(i))

表格测试

技术栈版本用途
Astro6.x静态站点生成
Tailwind4.xCSS 框架
TypeScript5.x类型安全

列表测试

  • 无序列表项 1
  • 无序列表项 2
    • 嵌套项 2.1
    • 嵌套项 2.2
  1. 有序列表项 1
  2. 有序列表项 2

引用测试

这是一段引用文字。

可以跨越多行。

行内代码

这是一段 inline code 示例,以及一个链接 Astro 官网


粗体文本斜体文本 以及 删除线


PPO 算法数学公式测试

策略比率 (Policy Ratio)

rt(θ)=πθ(atst)πθold(atst)r_t(\theta) = \frac{\pi_\theta(a_t|s_t)}{\pi_{\theta_{old}}(a_t|s_t)}

PPO-Clip 目标函数

LCLIP(θ)=Et[min(rt(θ)A^t,  clip(rt(θ),1ϵ,1+ϵ)A^t)]L^{CLIP}(\theta) = \mathbb{E}_t \left[ \min \left( r_t(\theta) \hat{A}_t, \; \text{clip}(r_t(\theta), 1-\epsilon, 1+\epsilon) \hat{A}_t \right) \right]

优势函数 (Advantage Function)

A^t=δt+(γλ)δt+1++(γλ)Tt+1δT1\hat{A}_t = \delta_t + (\gamma \lambda) \delta_{t+1} + \cdots + (\gamma \lambda)^{T-t+1} \delta_{T-1}

其中 TD 残差:

δt=rt+γV(st+1)V(st)\delta_t = r_t + \gamma V(s_{t+1}) - V(s_t)

价值函数损失

LVF(θ)=Et[(Vθ(st)Vttarget)2]L^{VF}(\theta) = \mathbb{E}_t \left[ (V_\theta(s_t) - V_t^{target})^2 \right]

行内公式测试

PPO 的核心思想是限制策略更新幅度,通过裁剪系数 ϵ\epsilon(通常设为 0.10.10.20.2)来确保新策略 πθ\pi_\theta 不会偏离旧策略 πθold\pi_{\theta_{old}} 太远。

熵奖励 (Entropy Bonus)

LENT(θ)=Et[H(πθ(st))]L^{ENT}(\theta) = \mathbb{E}_t \left[ \mathcal{H}(\pi_\theta(\cdot|s_t)) \right]

综合损失函数

L(θ)=Et[LCLIP(θ)+c1LVF(θ)c2LENT(θ)]L(\theta) = \mathbb{E}_t \left[ -L^{CLIP}(\theta) + c_1 L^{VF}(\theta) - c_2 L^{ENT}(\theta) \right]

其中 c1c_1c2c_2 是超参数。

评论