语言: 葡萄牙语
许可证: Apache-2.0
微件示例:
- 文本: "DI期货今早下跌20个基点"
示例标题: "示例1"
- 文本: "由于国际市场对金融科技情绪受挫,Nubank决定下调首次公开募股(IPO)的价格区间"
示例标题: "示例2"
- 文本: "Ibovespa指数随市场调整收于温和上涨"
示例标题: "示例3"
FinBERT-PT-BR:巴西葡萄牙语金融BERT
FinBERT-PT-BR是一个预训练的NLP模型,用于分析巴西葡萄牙语金融文本的情感。
该模型训练分为两个主要阶段:语言建模和情感建模。第一阶段使用超过140万条葡萄牙语金融新闻文本训练语言模型。基于此训练,仅需少量标注文本(500条)即可构建出收敛效果良好的情感分类器。
研究最后展示了与其他模型的对比分析及本模型的潜在应用场景。对比分析表明,该模型性能优于当前最先进模型。应用层面,该模型可用于构建情感指数、投资策略及宏观经济数据分析(如通胀指标)。
应用场景
情感指数

使用方法
BertForSequenceClassification
from transformers import AutoTokenizer, BertForSequenceClassification
import numpy as np
pred_mapper = {
0: "积极",
1: "消极",
2: "中性"
}
tokenizer = AutoTokenizer.from_pretrained("lucas-leme/FinBERT-PT-BR")
finbertptbr = BertForSequenceClassification.from_pretrained("lucas-leme/FinBERT-PT-BR")
tokens = tokenizer(["今天股市下跌", "今天股市上涨"], return_tensors="pt",
padding=True, truncation=True, max_length=512)
finbertptbr_outputs = finbertptbr(**tokens)
preds = [pred_mapper[np.argmax(pred)] for pred in finbertptbr_outputs.logits.cpu().detach().numpy()]
Pipeline
from transformers import (
AutoTokenizer,
BertForSequenceClassification,
pipeline,
)
finbert_pt_br_tokenizer = AutoTokenizer.from_pretrained("lucas-leme/FinBERT-PT-BR")
finbert_pt_br_model = BertForSequenceClassification.from_pretrained("lucas-leme/FinBERT-PT-BR")
finbert_pt_br_pipeline = pipeline(task='text-classification', model=finbert_pt_br_model, tokenizer=finbert_pt_br_tokenizer)
finbert_pt_br_pipeline(['今天股市下跌', '今天股市上涨'])
作者
- 卢卡斯·莱梅 - lucaslssantos99@gmail.com
引用
@inproceedings{santos2023finbert,
title={FinBERT-PT-BR:葡萄牙语金融市场文本情感分析},
author={桑托斯, 卢卡斯·L and 比安奇, 雷纳尔多·AC and 科斯塔, 安娜·HR},
booktitle={第二届巴西金融人工智能研讨会论文集},
pages={144--155},
year={2023},
organization={巴西计算机学会}
}
论文