写作组件与学习图例

这里是本站真实可用的写作组件,也是写生信笔记、Linux 教程与深度学习文章时的随手参考。组件展示与可复制写法放在一起;公式和流程图仅在出现它们的页面加载本地渲染资源。

1. 数学公式:解释一个真实训练目标

对于互斥的多类别分类,假设样本标签为 one-hot 编码、模型输出为类别概率,交叉熵可以写为:

\mathcal{L}=-\frac{1}{N}\sum_{i=1}^{N}\sum_{c=1}^{C}y_{ic}\log p_{ic}

这里的 N 是样本数,C 是类别数。PyTorch 的 CrossEntropyLoss 通常接收未归一化 logits,而不是先手动做 softmax 的概率。参阅 PyTorch 官方定义。

1
2
3
4
5
{% perry_math %}
\mathcal{L}=-\frac{1}{N}\sum_{i=1}^{N}\sum_{c=1}^{C}y_{ic}\log p_{ic}
{% endperry_math %}

{% perry_math inline %}N{% endperry_math %}

普通正文也支持 $x$ 和 $$x$$;有反斜杠、下划线或较长公式时,建议用 perry_math 标签,避免 Markdown 先修改 LaTeX 源码。代码块内的 $HOME 不会被当作公式。

2. 流程图:先设计,再训练

flowchart LR
  A[定义任务与指标] --> B[按个体划分数据]
  B --> C[仅用训练集拟合预处理]
  C --> D[训练并在验证集选模型]
  D --> E[锁定方案后评估测试集]

这是一条防止数据泄漏的通用阅读路线,不是替代具体实验设计的标准答案。

1
2
3
4
5
6
{% perry_mermaid 训练流程 %}
flowchart LR
A[定义任务与指标] --> B[划分数据]
B --> C[训练]
C --> D[验证]
{% endperry_mermaid %}

流程图启用 Mermaid 的 strict 安全模式,不允许图中执行脚本或点击回调。加载或语法失败时保留原文并显示提示。

3. 标签页:同一份小练习,两种语言

1
2
counts = [12, 0, 4]
print(sum(counts)) # 16
1
2
counts <- c(12, 0, 4)
sum(counts) # 16
1
2
3
4
5
6
7
8
{% tabs 一个不重复的名称 %}
<!-- tab Python -->
第一页的 Markdown 内容。
<!-- endtab -->
<!-- tab R -->
第二页的 Markdown 内容。
<!-- endtab -->
{% endtabs %}

每个标签页组使用不同的名称,避免同一篇文章里的 DOM ID 重复。

4. 资源区:从解释走向复现

相关工具与官方资料

正式文章可以在 front matter 中维护资源,不需要在每篇文章里手写布局:

1
2
3
4
resources:
- title: PyTorch 官方训练教程
url: https://docs.pytorch.org/tutorials/beginner/basics/optimization_tutorial.html
description: 训练与评估循环的完整说明

5. 图片轮播:温和的学习插画

1
2
3
4
{% perry_carousel 图组名称 %}
/img/cartoon-linux-files.jpg | 图注 | 无障碍替代文字
/img/cartoon-bio-fastq.jpg | 第二张图注 | 第二张替代文字
{% endperry_carousel %}

轮播可以触屏横滑或用键盘、按钮切换,不自动播放。以上图片来自本站已有插画资源,图注不是实验结果。

6. 文件树:可折叠的 Linux 练习目录

  • rnaseq-practice/
    • README.md
    • data/
      • raw/
        • sample_R1.fastq.gz
        • sample_R2.fastq.gz
      • reference/
        • genome.fa
        • genes.gtf
    • scripts/
      • 01_qc.sh
      • 02_align.sh
    • results/
      • qc/
        • counts/
        • environment.yml

      这是一份可按需建立的目录示例,不表示本站提供这些数据文件。原始数据与结果分开,脚本保留步骤编号,环境另存一份说明。

      1
      2
      3
      4
      5
      6
      {% perry_filetree 目录名称 %}
      project/
      README.md
      scripts/
      analyze.py
      {% endperry_filetree %}

      使用两个空格表示一层缩进,以 / 结尾表示目录。

      7. 窗口与按需嵌入

      终端 · 安全查看文件
      1
      2
      3
      pwd
      ls -lh
      head -n 8 data/raw/sample_R1.fastq

      这个窗口只是命令展示,不会执行命令。压缩的 .fastq.gz 应使用 gzip -cd 文件名 | head -n 8 预览。

      嵌入内容在你点击后才加载。这个示例来自本站,无第三方跟踪,也不开放 iframe 的脚本执行权限。

      1
      2
      3
      4
      5
      {% perry_frame 窗口标题 %}
      这里放 Markdown 内容或代码块。
      {% endperry_frame %}

      {% perry_embed /components/demo.html | 本地示例 %}

      8. 对话气泡:问题与解释各有位置

      可以先把全部样本做标准化,再划分训练集和测试集吗?

      如果预处理需要从数据估计参数,应只在训练集上拟合,再把同一转换应用于验证集和测试集,避免评估信息泄漏。

      1
      2
      3
      4
      {% perry_dialogue 问答标题 %}
      读者 | 一个具体的问题?
      笔记 | 用 Markdown 写回答,第二行会显示为回答气泡。
      {% endperry_dialogue %}

      9. 诗笺、纸张与卷轴

      离骚·节选

      屈原

      路漫漫其修远兮,

      吾将上下而求索。

      一张方法笔记

      读完一个方法后,我希望能回答三件事:

      1. 它解决的具体问题是什么?
      2. 它成立需要哪些假设?
      3. 用什么检查来判断结果是否可信?

      一段学习摘记

      从一个能复现的小例子出发,再逐步增加复杂度。记下输入、环境和输出,比只保留一张好看的结果图更有用。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      {% perry_poetry 标题 | 作者 %}
      每一行是一行诗。
      {% endperry_poetry %}

      {% perry_paper 笔记标题 %}
      支持 **Markdown** 的正文。
      {% endperry_paper %}

      {% perry_reel 摘记标题 %}
      支持 Markdown 的正文。
      {% endperry_reel %}

      诗句使用古典公版原文;这些样式只是排版方式,不会强迫文章都采用装饰性布局。

      10. 按键、标记与点击揭晓

      在终端里,Ctrl + C 常用于请求停止当前前台进程;它并不等于撤销已经写入磁盘的操作。注意 先检查路径,再执行命令。

      小问题:做监督学习时,预处理统计量应该在哪个数据集上拟合?

      1
      2
      3
      {% perry_kbd Ctrl + C %}
      {% perry_mark 一句需要关注的话 %}
      {% perry_reveal 查看答案 | 答案内容 %}

      按钮支持键盘操作,再点击一次会收起答案。组件标签只接受 http://、https:// 或本站 / 开头的资源地址,不接受 javascript: 等执行型 URL。

      引用到评论
      随便逛逛博客分类文章标签
      复制地址关闭热评深色模式轉為繁體