[论文阅读]《CrossFormer: Cross-Segment Semantic Fusion for Document Segmentation》
- 现有方法因输入长度受限,常将文档拆分为固定长度的段落进行处理
- 预处理:先按句子(长度 ≤ L)拆分并截断,再将句子依次拼接成若干段落(长度 ≤ M)
- 每个段落以 [CLS] 开始,以 [SEP] 结束(见算法 1)
- ① 预训练语言模型(PLM)编码 —— “把每段话变成向量”
- ② Cross‑Segment Fusion Module (CSFM) —— “让这些段落彼此交流”
- 二者的差值 h_seg = h[CLS] − h[SEP] 可以看作“这一段从头到尾讲的变化”
- 把所有段落的 h_seg 做“最大池化”(MaxPooling)
- 从中挑出最显著的维度,得到一个全局语义向量 h_global
- ③ 和每个 [SENT] 向量拼接 —— “全局语义+局部语义=判断是否该分段”
- 现在有了每个 [SENT] 对应的向量(局部上下文的语义)
- 把这两者拼起来,让模型去判断这个点是不是“该换段”的点
- 拼接后的向量送进两个“全连接层”(就像神经网络里的判断器)
- 最后走一个线性分类器 + Softmax,输出两个概率:
- 用标准的交叉熵损失函数,计算“模型预测 vs 真实答案”的差距,指导模型不断优化,分段越来越准确
- 文档分句 & 截断:依据标点或行分隔,保证句长 ≤ L
- 段落拼接:将句子拼接成多段(长度 ≤ M、段数 ≤ K)
- PLM 编码:对每段并行编码,提取[CLS]、[SEP]、[SENT]向量
- RAG 递归切分 & 检索:将语义连贯的段落作为 chunk,并执行检索‑生成流程