setfit-paraphrase-multilingual-MiniLM-L12-v2
模型描述
这是一个基于 SetFit 方法微调的中文文本二分类模型,用于区分有用和无用的文本内容。
模型架构
- 基础模型:
paraphrase-multilingual-MiniLM-L12-v2
- 微调方法: SetFit (Sentence Transformer Fine-tuning)
- 分类器: 神经网络分类器
- 任务类型: 二分类 (有用文本 vs 无用文本)
训练数据
- 数据集: finetuning_samples_rectify.csv
- 类别分布:
- Useless (0): ~87.9%
- Useful (1-5): ~12.1%
- 训练样本数: 10,135
- 验证样本数: 2,172
- 测试样本数: 2,172
性能指标
基于测试集的性能评估:
微调模型性能
- Accuracy: 0.8250
- F1-Score (macro): 0.7078
- F1-Score (weighted): 0.8481
- Precision (macro): 0.6783
- Recall (macro): 0.8103
与原始模型对比
- F1-Score 提升: +0.0149
- Accuracy 提升: +0.0134
使用方法
加载模型
from sentence_transformers import SentenceTransformer
# 加载微调后的模型
model = SentenceTransformer("lyingbarrelhome/setfit-paraphrase-multilingual-MiniLM-L12-v2")
# 编码文本
texts = ["这是一个示例文本", "另一个示例"]
embeddings = model.encode(texts)
配合分类器使用
import torch
import json
from sklearn.linear_model import LogisticRegression
# 加载模型和分类器
model = SentenceTransformer("lyingbarrelhome/setfit-paraphrase-multilingual-MiniLM-L12-v2")
# 训练逻辑回归分类器(推荐方式)
# 或者加载预训练的神经网络分类器(如果可用)
# 预测
def predict_text(text):
embedding = model.encode([text])
prediction = classifier.predict(embedding)
probability = classifier.predict_proba(embedding)
return prediction[0], probability[0]
训练配置
- LoRA配置: r=16, alpha=32, dropout=0.1
- 目标模块: query, key, value, dense
- 训练轮数: 1
- 批次大小: 32
- 学习率: 0.0005
- 损失函数: TripletLoss
限制和注意事项
- 模型主要针对中文文本进行优化
- 适用于教育培训领域的文本分类任务
- 建议在相似领域的数据上进行进一步微调
引用
如果您使用这个模型,请引用:
@misc{setfit-hierarchical-binary-classifier,
author = {Claire Liu},
title = {SetFit Hierarchical Binary Classifier},
year = {2025},
url = {https://huggingface.co/lyingbarrelhome/setfit-paraphrase-multilingual-MiniLM-L12-v2}
}
许可证
MIT License
模型创建时间: 2025-06-27 03:41:25
- Downloads last month
- 4
Inference Providers
NEW
This model isn't deployed by any Inference Provider.
🙋
Ask for provider support