Scholawrite Bert Classifier
模型简介
模型特点
模型能力
使用案例
🚀 学术写作BERT分类器模型卡片
本模型专为预测LaTeX学术论文中的下一步写作意图而设计,基于预训练的BERT模型微调,在特定数据集上展现出良好的性能,为学术写作提供了有力支持。
🚀 快速开始
以下是使用该模型的示例代码:
import os
from dotenv import load_dotenv
import torch
from transformers import BertTokenizer, BertForSequenceClassification, RobertaTokenizer, RobertaForSequenceClassification
from huggingface_hub import login
load_dotenv()
HUGGINGFACE_TOKEN = os.getenv("HUGGINGFACE_TOKEN")
login(token=HUGGINGFACE_TOKEN)
TOTAL_CLASSES = 15
tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
tokenizer.add_tokens("<INPUT>") # start input
tokenizer.add_tokens("</INPUT>") # end input
tokenizer.add_tokens("<BT>") # before text
tokenizer.add_tokens("</BT>") # before text
tokenizer.add_tokens("<PWA>") # start previous writing action
tokenizer.add_tokens("</PWA>") # end previous writing action
model = BertForSequenceClassification.from_pretrained('minnesotanlp/scholawrite-bert-classifier', num_labels=TOTAL_CLASSES)
before_text = "sample before text"
text = "<INPUT>" + "<BT>" + before_text + "</BF> " + "</INPUT>"
input = tokenizer(text, return_tensors="pt")
pred = model(input["input_ids"]).logits.argmax(1)
print("class:", pred)
✨ 主要特性
- 特定任务优化:专门针对LaTeX学术论文的下一步写作意图预测进行微调。
- 基于强大基础模型:基于
bert-base-uncased
模型微调,继承了BERT的强大语言理解能力。 - 经过严格测试:在特定数据集上进行了训练和测试,使用加权F1分数评估性能。
📦 安装指南
使用前请确保安装必要的库:
pip install transformers torch dotenv huggingface_hub
💻 使用示例
基础用法
import os
from dotenv import load_dotenv
import torch
from transformers import BertTokenizer, BertForSequenceClassification
from huggingface_hub import login
load_dotenv()
HUGGINGFACE_TOKEN = os.getenv("HUGGINGFACE_TOKEN")
login(token=HUGGINGFACE_TOKEN)
TOTAL_CLASSES = 15
tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
tokenizer.add_tokens("<INPUT>") # start input
tokenizer.add_tokens("</INPUT>") # end input
tokenizer.add_tokens("<BT>") # before text
tokenizer.add_tokens("</BT>") # before text
tokenizer.add_tokens("<PWA>") # start previous writing action
tokenizer.add_tokens("</PWA>") # end previous writing action
model = BertForSequenceClassification.from_pretrained('minnesotanlp/scholawrite-bert-classifier', num_labels=TOTAL_CLASSES)
before_text = "sample before text"
text = "<INPUT>" + "<BT>" + before_text + "</BF> " + "</INPUT>"
input = tokenizer(text, return_tensors="pt")
pred = model(input["input_ids"]).logits.argmax(1)
print("class:", pred)
📚 详细文档
模型详情
模型描述
该模型在论文中被称为BERT - SW - CLF,基于Hugging Face的bert-base-uncased
模型进行微调,使用了ScholaWrite数据集的train
分割。其唯一目的是根据LaTeX格式的学术写作预测下一步的写作意图。
- 开发者:Linghe Wang、Minhwa Lee、Ross Volkov、Luan Chau、Dongyeop Kang
- 语言:英语
- 微调基础模型:bert-base-uncased
模型来源
- 代码仓库:ScholaWrite Github仓库
- 论文:[待补充更多信息]
用途
直接使用
该模型旨在用于LaTeX论文草稿中的下一步写作意图预测。它将由特殊标记包装的“before”文本作为输入,并输出15个预定义标签之一作为下一步的写作意图。
非预期使用
该模型仅针对下一步写作意图预测进行微调,并在封闭环境中进行推理。其主要目的是检验数据集的有效性。它适用于学术用途,但不适用于生产环境、普通公众使用或面向消费者的服务。此外,在LaTeX论文草稿的下一步意图预测之外的任务上使用该模型可能效果不佳。
偏差和局限性
该模型的偏差和局限性主要源于其微调所使用的数据集(ScholaWrite)。
- 领域限制:ScholaWrite数据集目前仅限于计算机科学领域,因为LaTeX主要用于计算机科学期刊和会议。这种特定领域的数据集可能会限制模型在其他科学学科中的泛化能力。未来的工作可以通过收集更多不同领域(如人文学科或生物科学)的击键数据来解决这一限制。
- 参与者群体限制:所有参与者都是美国一所R1大学的早期职业研究人员(如博士生),这意味着模型可能无法学习到专家的专业写作行为和认知过程。扩大数据集以包括高级研究人员(如博士后研究员和教授)可以提供关于写作策略和修订行为如何随研究经验和专业知识发展的有价值见解。
- 语言限制:数据集仅包含英语写作,这限制了模型在多语言或非英语环境中预测下一步写作意图的能力。扩展到多语言环境可以揭示跨语言写作的独特认知和语言见解。
微调详情
微调数据
该模型在minnesotanlp/scholawrite数据集的train
分割上进行微调。这是一个端到端学术写作过程的击键日志,对每个击键背后的认知写作意图进行了详细注释。数据集未进行额外的数据预处理或过滤。
微调过程
模型通过将提示中的before_text
部分作为输入,并使用intention
作为真实数据进行微调。模型根据每个意图标签(1 - 15)输出一个整数。
微调超参数
属性 | 详情 |
---|---|
微调机制 | fp32 |
学习率 | 2e - 5 |
每个设备的训练批次大小 | 2 |
每个设备的评估批次大小 | 8 |
训练轮数 | 10 |
权重衰减 | 0.01 |
机器规格
属性 | 详情 |
---|---|
硬件 | 2 X Nvidia RTX A6000 |
使用时长 | 3.5小时 |
计算区域 | 明尼苏达州 |
测试过程
- 测试数据:minnesotanlp/scholawrite
- 指标:由于训练和测试数据分割中存在类别不平衡问题,使用加权F1分数来衡量性能。
- 结果: | | BERT | RoBERTa | LLama - 8B - Instruct | GPT - 4o | |------|------|------|------|------| | 基础模型 | 0.04 | 0.02 | 0.12 | 0.08 | | + SW | 0.64 | 0.64 | 0.13 | - |
总结:上表展示了基线模型和微调模型在预测写作意图时的加权F1分数。所有在ScholaWrite数据集上微调的模型与基线模型相比都有性能提升。BERT和RoBERTa取得了最大的提升,而LLama - 8B - Instruct在微调后也有适度提升。这些结果证明了ScholaWrite数据集在使语言模型与作者意图对齐方面的有效性。
📄 许可证
本模型使用Apache 2.0许可证。
🔧 技术细节
BibTeX引用
@misc{wang2025scholawritedatasetendtoendscholarly,
title={ScholaWrite: A Dataset of End-to-End Scholarly Writing Process},
author={Linghe Wang and Minhwa Lee and Ross Volkov and Luan Tuyen Chau and Dongyeop Kang},
year={2025},
eprint={2502.02904},
archivePrefix={arXiv},
primaryClass={cs.CL},
url={https://arxiv.org/abs/2502.02904},
}








