| --- |
| 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 |
| |
| |