技术方法

模型架构与实现细节

系统设计

双层模型架构

创新的双层架构设计,同时实现文本分类与边界定位

架构流程图

输入层

将原始文本转换为模型可处理的格式
原始文本分句处理Token编码

BERT编码层

利用BERT提取深层语义特征
预训练权重上下文编码语义表示

分类层

判断文本类型:人类/AI
全连接网络Softmax分类二分类输出

边界检测层

精确定位混合文本的边界位置
序列标注[SEP]标记边界定位

BERT编码器

采用BERT-wwm-ext中文预训练模型,通过全词掩码策略更好地理解中文语义。

  • 12层Transformer编码器
  • 768维隐藏层
  • 12个注意力头
  • 约1.1亿参数

核心创新

  • 1双层架构同时实现分类与边界定位
  • 2针对中文特点优化的分词策略
  • 3[SEP]标记机制精确标注边界位置
  • 4Temperature Scaling置信度校准
训练流程

数据治理与模型训练

V11c通过四阶段数据治理与精细微调达成最优性能

阶段一

数据风险审计

移除模板匹配和unknown来源样本

清除750条硬编码模板
移除1,767条unknown样本
V10→V11a: 62,980→60,456
阶段二

弱域数据增补

定向补充formal和LLaMA-405B弱域样本

formal风格+300条
LLaMA-405B+300条
V11a→V11b: 60,456→61,056
阶段三

长文AI边界修复

补充长文本AI样本恢复覆盖率

+2,131条256+字符AI样本
恢复V10级别长文覆盖
V11b→V11c: 61,056→63,187
阶段四

模型微调

基于bert_v7_improved单阶段精细微调

lr=1e-5, batch=8×4(有效32)
max_len=256, epochs=4(best@2)
Label Smoothing=0.05
开发工具

技术栈

PyTorch

深度学习框架

Transformers

预训练模型库

BERT-wwm

中文预训练模型

Scikit-learn

机器学习工具

Pandas

数据处理

NumPy

数值计算

实现细节

核心算法

文本分类算法

def classify_text(text):
    # 1. 分词和编码
    tokens = tokenizer(text)
    
    # 2. BERT编码
    embeddings = bert_encoder(tokens)
    
    # 3. 池化获取文本表示
    cls_embedding = embeddings[0]
    
    # 4. 分类预测
    logits = classifier(cls_embedding)
    
    # 5. 返回预测结果
    return softmax(logits)

边界检测算法

def detect_boundary(text):
    # 1. 分句处理
    sentences = split_sentences(text)

    # 2. 逐句BERT编码
    sent_embeddings = encode_sentences(
        sentences
    )

    # 3. Token级序列标注
    labels = token_classifier(sent_embeddings)

    # 4. [SEP]标记定位边界
    boundary = find_sep_boundary(labels)

    return boundary