## Лабораторная работа №7, ПИбд-42 Тепечин Кирилл

	
### Как запустить лабораторную работу:

Для запуска лабораторной работы необходимо запустить файл lab7.py

### Используемые технологии:

* Python 3.11
* numpy
* keras

### Что делает лабораторная работа:

Эта лабораторная работа создает и обучает рекуррентную нейронную сеть (RNN) на основе текста из файла, используя библиотеку Keras.

### Тесты:
Опытным путем была выбрана следующая архитектура:
````python
model = Sequential()
model.add(Embedding(total_words, 50, input_length=max_sequence_length - 1))
model.add(LSTM(512))
model.add(Dropout(0.2))
model.add(Dense(total_words, activation='softmax'))
````

Результат на 50 эпохах

![тест1](test1.png)

![тест1](test1_text.png)

Результат становится гораздо лучше при увеличении количества эпох 

Результат на 200 эпохах

![тест2](test2.png)

![тест2](test2_text.png)

На англоязычном тексте сеть работает хуже (50 эпох)

![тест3](test3.png)

Хоть и текст выглядит не так плохо 

![тест3](test3_text.png)

На 200 эпох результат практически не улучшается

![тест4](test4.png)

Но текст выглядит более осмысленно

![тест4](test4_text.png)

Последующие поиски компромиссной архитектуры не привели к появлению новой.

### Вывод:
Компромиссной архитектурой является ранее выбранная