| --- |
| language: vi |
| license: mit |
| tags: |
| - text-classification |
| - sentiment-analysis |
| - vietnamese |
| - finance |
| - phobert |
| base_model: vinai/phobert-base-v2 |
| --- |
| |
| # FiNTA Sentiment Model |
|
|
| **Task:** Sentiment Analysis — Vietnamese Financial News |
| **Base model:** `vinai/phobert-base-v2` |
| **Accuracy:** N/A | **Macro F1:** N/A |
|
|
| ## Labels (sentiment chính 3-class) |
|
|
| | ID | Label | Mô tả | Score range | |
| |----|-------|-------|-------------| |
| | 0 | Bullish | Lạc quan, tích cực | +0.5 → +1.0 | |
| | 1 | Bearish | Bi quan, tiêu cực | -1.0 → -0.5 | |
| | 2 | Uncertainty | Không rõ xu hướng | -0.2 → +0.2 | |
|
|
| Raw LLM labels are merged for the primary model: |
|
|
| - Hype/FOMO -> Bullish |
| - Panic -> Bearish |
| - Contrarian -> Uncertainty |
|
|
| ## Usage |
|
|
| ```python |
| from transformers import AutoTokenizer, AutoModelForSequenceClassification |
| import torch |
| |
| tokenizer = AutoTokenizer.from_pretrained("Marky12345/BigData_2026") |
| model = AutoModelForSequenceClassification.from_pretrained("Marky12345/BigData_2026") |
| |
| text = "Cổ phiếu VNM tăng mạnh, nhà đầu tư lạc quan về triển vọng quý 4" |
| inputs = tokenizer(text, return_tensors="pt", max_length=256, |
| truncation=True, padding="max_length") |
| |
| with torch.no_grad(): |
| logits = model(**inputs).logits |
| pred_id = logits.argmax().item() |
| |
| labels = ["Bullish", "Bearish", "Uncertainty"] |
| print(labels[pred_id]) |
| ``` |
|
|
| ## Training |
|
|
| Fine-tuned on Vietnamese financial news articles labeled by LLM silver labels. |
| The model predicts the primary 3-class sentiment. Rare market-tone labels are |
| kept in the dataset for audit and should be handled as separate tags when enough |
| examples are available. |
|
|