File size: 1,770 Bytes
0c1fee1 700f47a 0c1fee1 700f47a 0c1fee1 700f47a 0c1fee1 700f47a 0c1fee1 700f47a 0c1fee1 700f47a 9560c0c 0c1fee1 700f47a 0c1fee1 700f47a 0c1fee1 700f47a 0c1fee1 700f47a 0c1fee1 700f47a 0c1fee1 700f47a 0c1fee1 700f47a 0c1fee1 700f47a 0c1fee1 700f47a 0c1fee1 | 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 53 | ---
language: ru
tags:
- summarization
- t5
- russian
- sentiment-analysis
license: mit
---
# RuT5-Base for Sentiment Summarization
## Описание
Модель для генеративной суммаризации отзывов на русском языке. Обучалась на датасете Kinopoisk с использованием дистилляции знаний от LLM.
## Задача
Создание кратких, информативных резюме отзывов с выделением ключевых плюсов и минусов.
## Метрики на тестовой выборке
| Модель | ROUGE-1 | ROUGE-2 | ROUGE-L |
|--------|---------|---------|---------|
| Baseline (TF-IDF) | 0.0331 | 0.0029 | 0.0291 |
| **ruT5-base** | **0.1337** | **0.0673** | **0.1337** |
## Использование
```python
from transformers import T5ForConditionalGeneration, T5Tokenizer
model = T5ForConditionalGeneration.from_pretrained("Auttar/RuT5SentimentSummarization")
tokenizer = T5Tokenizer.from_pretrained("Auttar/RuT5SentimentSummarization")
def summarize(review):
input_text = f"summarize: {review}"
inputs = tokenizer(input_text, return_tensors="pt", max_length=512, truncation=True)
outputs = model.generate(inputs.input_ids, max_length=128, num_beams=4)
return tokenizer.decode(outputs[0], skip_special_tokens=True)
# Пример
review = "Фильм отличный! Актеры играют великолепно, сюжет захватывает."
print(summarize(review))
# Обучение
- Базовая модель: sberbank-ai/ruT5-base
- Датасет: Kinopoisk с сгенерированными резюме
- Эпохи: 3
- Learning rate: 5e-5
- Batch size: 4
|