File size: 1,835 Bytes
434fd93 3d506d1 e01dfb0 672f2ed e01dfb0 672f2ed e01dfb0 672f2ed e01dfb0 2e669de 672f2ed e01dfb0 2e669de 672f2ed |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
---
license: apache-2.0
datasets:
- takala/financial_phrasebank
language:
- en
base_model:
- answerdotai/ModernBERT-base
pipeline_tag: text-classification
metrics:
- f1
- value: 0.9755
tags:
- finance
---
# Modern-FinBERT: Financial Sentiment Analysis
`Modern-FinBERT` is a **pre-trained NLP model** designed for **financial sentiment analysis**. It extends the [`ModernBERT-large`](https://huggingface.co/answerdotai/ModernBERT-large) language model by further training it on a **large financial corpus**, making it highly specialized for **financial text classification**.
For fine-tuning, the model leverages the **[Financial PhraseBank](https://www.researchgate.net/publication/251231107_Good_Debt_or_Bad_Debt_Detecting_Semantic_Orientations_in_Economic_Texts)** by Malo et al. (2014), a widely recognized benchmark dataset for financial sentiment analysis.
### Sentiment Labels
The model generates a **softmax probability distribution** across three sentiment categories:
- โ
**Positive**
- โ **Negative**
- โ **Neutral**
For more technical insights on `ModernBERT`, check out the research paper:
๐ **[ModernBERT Technical Details](https://arxiv.org/abs/2412.13663)**
# How to use
You can use this model with Transformers pipeline for sentiment analysis.
```bash
pip install -U transformers
```
```python
from transformers import AutoTokenizer, AutoModelForSequenceClassification, pipeline
# Load the pre-trained model and tokenizer
model = AutoModelForSequenceClassification.from_pretrained('beethogedeon/Modern-FinBERT', num_labels=3)
tokenizer = AutoTokenizer.from_pretrained('answerdotai/ModernBERT')
# Initialize the NLP pipeline
nlp = pipeline("text-classification", model=model, tokenizer=tokenizer)
sentence = "Stocks rallied and the British pound gained."
print(nlp(sentence))
``` |