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