33 lines
3.8 KiB
Markdown
33 lines
3.8 KiB
Markdown
|
# Лабораторная работа 7
|
|||
|
### Вариант 10
|
|||
|
|
|||
|
### Задание:
|
|||
|
- Выбрать художественный текст (четные варианты – русскоязычный, нечетные – англоязычный)и обучить на нем рекуррентную нейронную сеть для решения задачи генерации. Подобрать архитектуру и параметры так, чтобы приблизиться к максимально осмысленному результату.
|
|||
|
### Запуск
|
|||
|
- Запустить файл lab7.py (Для английского языка необходимо в коде выбрать соответсвующий файл и начальную строку)
|
|||
|
|
|||
|
### Технологии
|
|||
|
- Язык - 'Python'
|
|||
|
- Библиотеки numpy, keras, tensorflow
|
|||
|
|
|||
|
### Что делает
|
|||
|
- Программа читает текст из файла .txt
|
|||
|
- Программа использует `Tokenizer` с настройкой `char_level=True`, что позволяет упразднить использование `Embedding` слоя далее
|
|||
|
- Программа подготавливает исходный текст и последовательности для обучения модели
|
|||
|
- Далее строится последовательная рекуррентная нейронная сеть `Sequential` (использует LSTM-ячейки) с двумя слоями LSTM. `LSTM` (Long Short-Term Memory) является типом рекуррентной нейронной сети, который хорошо подходит для работы с последовательными данными, такими как текст. Использование двух слоев позволяет модели иметь больше гибкости и уловить более сложные зависимости в тексте. Слой `Dense` с функцией активации softmax используется для предсказания следующего слова
|
|||
|
- Модель компилируется с использованием функции потерь `sparse_categorical_crossentropy` и оптимизатора `Adam`.
|
|||
|
- После чего происходит обучение модели на 100 эпохах (оптимальный вариант)
|
|||
|
- После обучения программа, используя начальный текст генерирует текст размером 250 (по умолчанию) символами
|
|||
|
|
|||
|
### Пример работы
|
|||
|
Пример работы представлен в виде скриншотов:
|
|||
|
|
|||
|
Сгенерированный текст:
|
|||
|
- (RUS) Уходили в тайгу в середине октября, когда выпадал первый снег. это было чудесное время. за одну ночь природа преображалась: все вокруг светлело. остывший воздух становился упругим и звонким. всюду на снегу виднелись следы зверьков — так тайга перед человеком открыв
|
|||
|
- (ENG) I had last night. but was too drunk to remember to shut the popholes. with the ring of light from his lantern dancing from side to side, he lurched across the yard, kicked off his boots at the back door. when major saw that they should all meet in the bedroom went o
|
|||
|
|
|||
|
Скриншоты:
|
|||
|
![Console](console_rus.jpg)
|
|||
|
![Graphics](console_eng.jpg)
|
|||
|
|
|||
|
- В результате программа генерирует вполне себе осмысленный текст как на русском, так и на английском языках.
|