Данный сервис состоит из нескольких частей:
static
.templates
Данные папки содержат данные, которые нжны для работы сервиса, CSS
файлы, favicon.ico
, Jinja2
-шаблоны HTML
страниц.
trainers
Данный пакет содержит скрипты, которые обучают модели над данных которые находятся в папке data
.
settings.json
Я использую такие настройки приложения.
{
"test-data-path": "data/test.json", // Путь к данным.
"chunk-size": 1000, // размер единицы, о обработке которой система будет уведомлять логами.
"vectors-path": "data/glove.w2v.6B.300d.txt" // Путь к модели эмбеддингов.
}
Стоит заметить, чтоя я использовал уже обученную модель GloVe для обработки своих данных. Могла использоваться любая другая модель, просто данная модельбыла выбрана как золотая середина между более сложными: FastText, ELMo --- и более простыми: Word2vec.
Характеристики этой модели:
- Вектор размерности 300.
- 400.000 слов в словаре.
- Обучено на 6 миллиардах слов.
Для зупуска приложения сначала трубется обучить данные:
$ train-everything.sh
После запустить сервис:
$ pip install -r requirements.txt && python app.py
Как выглядит приложение: