Setfit Absa Bge Small En V1.5 Restaurants Aspect
模型简介
该模型用于识别餐厅评论中的方面术语(如食物、服务等),是方面级情感分析系统的组成部分。
模型特点
高效小样本学习
采用SetFit框架,通过对比学习和分类头训练实现高效的小样本学习
ABSA系统集成
作为完整ABSA流程的一部分,与spaCy模型和极性分类模型协同工作
高准确率
在SemEval 2014餐厅数据集上达到86.23%的准确率
模型能力
方面术语识别
文本分类
小样本学习
使用案例
情感分析
餐厅评论分析
从餐厅评论中识别评价对象(如食物、服务等)
准确识别86.23%的方面术语
🚀 SetFit方面模型:基于BAAI/bge-small-en-v1.5处理SemEval 2014任务4(餐厅)
本项目是基于SemEval 2014任务4(餐厅)数据集训练的SetFit模型,可用于基于方面的情感分析(ABSA)。该SetFit模型采用BAAI/bge-small-en-v1.5作为句子嵌入模型,并使用LogisticRegression实例进行分类。特别地,此模型负责筛选可能的方面跨度候选。
该模型运用高效的少样本学习技术进行训练,具体步骤如下:
- 通过对比学习对Sentence Transformer进行微调。
- 利用微调后的Sentence Transformer提取的特征训练分类头。
此模型是在一个更大的ABSA系统中进行训练的,该系统的工作流程如下:
- 使用spaCy模型选择可能的方面跨度候选。
- 使用此SetFit模型筛选这些可能的方面跨度候选。
- 使用SetFit模型对筛选后的方面跨度候选进行分类。
🚀 快速开始
安装SetFit库
pip install setfit
加载模型并进行推理
from setfit import AbsaModel
# 从🤗 Hub下载模型
model = AbsaModel.from_pretrained(
"tomaarsen/setfit-absa-bge-small-en-v1.5-restaurants-aspect",
"tomaarsen/setfit-absa-bge-small-en-v1.5-restaurants-polarity",
)
# 进行推理
preds = model("The food was great, but the venue is just way too busy.")
✨ 主要特性
- 高效少样本学习:采用高效的少样本学习技术,无需大量数据即可进行训练。
- 准确筛选方面跨度:能够准确筛选可能的方面跨度候选,为后续的情感分类提供高质量的数据。
📦 安装指南
要使用此模型,首先需要安装SetFit库:
pip install setfit
💻 使用示例
基础用法
from setfit import AbsaModel
# 从🤗 Hub下载模型
model = AbsaModel.from_pretrained(
"tomaarsen/setfit-absa-bge-small-en-v1.5-restaurants-aspect",
"tomaarsen/setfit-absa-bge-small-en-v1.5-restaurants-polarity",
)
# 进行推理
preds = model("The food was great, but the venue is just way too busy.")
📚 详细文档
模型详情
模型描述
属性 | 详情 |
---|---|
模型类型 | SetFit |
句子Transformer主体 | BAAI/bge-small-en-v1.5 |
分类头 | LogisticRegression实例 |
spaCy模型 | en_core_web_lg |
SetFitABSA方面模型 | tomaarsen/setfit-absa-bge-small-en-v1.5-restaurants-aspect |
SetFitABSA极性模型 | tomaarsen/setfit-absa-bge-small-en-v1.5-restaurants-polarity |
最大序列长度 | 512个标记 |
类别数量 | 2类 |
训练数据集 | SemEval 2014任务4(餐厅) |
语言 | 英语 |
许可证 | apache-2.0 |
模型来源
- 仓库:GitHub上的SetFit
- 论文:Efficient Few-Shot Learning Without Prompts
- 博客文章:SetFit: Efficient Few-Shot Learning Without Prompts
模型标签
标签 | 示例 |
---|---|
aspect |
|
no aspect |
|
评估
指标
标签 | 准确率 |
---|---|
all | 0.8623 |
训练详情
训练集指标
训练集 | 最小值 | 中位数 | 最大值 |
---|---|---|---|
单词计数 | 4 | 19.3576 | 45 |
标签 | 训练样本数量 |
---|---|
no aspect | 170 |
aspect | 255 |
训练超参数
- 批量大小:(256, 256)
- 训练轮数:(5, 5)
- 最大步数:5000
- 采样策略:过采样
- 主体学习率:(2e-05, 1e-05)
- 头部学习率:0.01
- 损失函数:CosineSimilarityLoss
- 距离度量:余弦距离
- 边界值:0.25
- 端到端:False
- 使用混合精度训练:True
- 热身比例:0.1
- 随机种子:42
- 评估最大步数:-1
- 训练结束时加载最佳模型:True
训练结果
轮数 | 步数 | 训练损失 | 验证损失 |
---|---|---|---|
0.0027 | 1 | 0.2498 | - |
0.1355 | 50 | 0.2442 | - |
0.2710 | 100 | 0.2462 | 0.2496 |
0.4065 | 150 | 0.2282 | - |
0.5420 | 200 | 0.0752 | 0.1686 |
0.6775 | 250 | 0.0124 | - |
0.8130 | 300 | 0.0128 | 0.1884 |
0.9485 | 350 | 0.0062 | - |
1.0840 | 400 | 0.0012 | 0.183 |
1.2195 | 450 | 0.0009 | - |
1.3550 | 500 | 0.0008 | 0.2072 |
1.4905 | 550 | 0.0031 | - |
1.6260 | 600 | 0.0006 | 0.1716 |
1.7615 | 650 | 0.0005 | - |
1.8970 | 700 | 0.0005 | 0.1666 |
2.0325 | 750 | 0.0005 | - |
2.1680 | 800 | 0.0004 | 0.2086 |
2.3035 | 850 | 0.0005 | - |
2.4390 | 900 | 0.0004 | 0.183 |
2.5745 | 950 | 0.0004 | - |
2.7100 | 1000 | 0.0036 | 0.1725 |
2.8455 | 1050 | 0.0004 | - |
2.9810 | 1100 | 0.0003 | 0.1816 |
3.1165 | 1150 | 0.0004 | - |
3.2520 | 1200 | 0.0003 | 0.1802 |
- 加粗行表示保存的检查点。
环境影响
使用CodeCarbon测量碳排放:
- 碳排放:0.018千克二氧化碳
- 使用时长:0.303小时
训练硬件
- 是否使用云服务:否
- GPU型号:1 x NVIDIA GeForce RTX 3090
- CPU型号:13th Gen Intel(R) Core(TM) i7-13700K
- 内存大小:31.78 GB
框架版本
- Python:3.9.16
- SetFit:1.0.0.dev0
- Sentence Transformers:2.2.2
- spaCy:3.7.2
- Transformers:4.29.0
- PyTorch:1.13.1+cu117
- Datasets:2.15.0
- Tokenizers:0.13.3
🔧 技术细节
该模型采用高效的少样本学习技术,结合对比学习和特征提取,能够在少量数据的情况下进行准确的方面跨度筛选。具体来说,模型首先使用对比学习对Sentence Transformer进行微调,然后利用微调后的模型提取特征,最后使用LogisticRegression进行分类。
📄 许可证
本模型采用apache-2.0许可证。
📖 引用
BibTeX
@article{https://doi.org/10.48550/arxiv.2209.11055,
doi = {10.48550/ARXIV.2209.11055},
url = {https://arxiv.org/abs/2209.11055},
author = {Tunstall, Lewis and Reimers, Nils and Jo, Unso Eun Seo and Bates, Luke and Korat, Daniel and Wasserblat, Moshe and Pereg, Oren},
keywords = {Computation and Language (cs.CL), FOS: Computer and information sciences, FOS: Computer and information sciences},
title = {Efficient Few-Shot Learning Without Prompts},
publisher = {arXiv},
year = {2022},
copyright = {Creative Commons Attribution 4.0 International}
}
Distilbert Base Uncased Finetuned Sst 2 English
Apache-2.0
基于DistilBERT-base-uncased在SST-2情感分析数据集上微调的文本分类模型,准确率91.3%
文本分类 英语
D
distilbert
5.2M
746
Xlm Roberta Base Language Detection
MIT
基于XLM-RoBERTa的多语言检测模型,支持20种语言的文本分类
文本分类
Transformers 支持多种语言

X
papluca
2.7M
333
Roberta Hate Speech Dynabench R4 Target
该模型通过动态生成数据集来改进在线仇恨检测,专注于从最差案例中学习以提高检测效果。
文本分类
Transformers 英语

R
facebook
2.0M
80
Bert Base Multilingual Uncased Sentiment
MIT
基于bert-base-multilingual-uncased微调的多语言情感分析模型,支持6种语言的商品评论情感分析
文本分类 支持多种语言
B
nlptown
1.8M
371
Emotion English Distilroberta Base
基于DistilRoBERTa-base微调的英文文本情感分类模型,可预测埃克曼六种基本情绪及中性类别。
文本分类
Transformers 英语

E
j-hartmann
1.1M
402
Robertuito Sentiment Analysis
基于RoBERTuito的西班牙语推文情感分析模型,支持POS(积极)/NEG(消极)/NEU(中性)三类情感分类
文本分类 西班牙语
R
pysentimiento
1.0M
88
Finbert Tone
FinBERT是一款基于金融通讯文本预训练的BERT模型,专注于金融自然语言处理领域。finbert-tone是其微调版本,用于金融情感分析任务。
文本分类
Transformers 英语

F
yiyanghkust
998.46k
178
Roberta Base Go Emotions
MIT
基于RoBERTa-base的多标签情感分类模型,在go_emotions数据集上训练,支持28种情感标签识别。
文本分类
Transformers 英语

R
SamLowe
848.12k
565
Xlm Emo T
XLM-EMO是一个基于XLM-T模型微调的多语言情感分析模型,支持19种语言,专门针对社交媒体文本的情感预测。
文本分类
Transformers 其他

X
MilaNLProc
692.30k
7
Deberta V3 Base Mnli Fever Anli
MIT
基于MultiNLI、Fever-NLI和ANLI数据集训练的DeBERTa-v3模型,擅长零样本分类和自然语言推理任务
文本分类
Transformers 英语

D
MoritzLaurer
613.93k
204
精选推荐AI模型
Llama 3 Typhoon V1.5x 8b Instruct
专为泰语设计的80亿参数指令模型,性能媲美GPT-3.5-turbo,优化了应用场景、检索增强生成、受限生成和推理任务
大型语言模型
Transformers 支持多种语言

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-Tiny是一个基于SODA数据集训练的超小型对话模型,专为边缘设备推理设计,体积仅为Cosmo-3B模型的2%左右。
对话系统
Transformers 英语

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
基于RoBERTa架构的中文抽取式问答模型,适用于从给定文本中提取答案的任务。
问答系统 中文
R
uer
2,694
98