ap.train¶
Модуль для поддержания работы с данными
- class ap.train.data_manager.ModelDataManager(data_dir: str, experiment_config: str)¶
Базовые классы:
objectКласс для поддержания работы с данными
- generate_background_batches()¶
- generate_batches_balanced_by_rubric()¶
Возвращает artm.BatchVectorizer, построенный на сбалансированных батчах.
Генерирует батчи, в которых документы сбалансированны относительно рубрик ГРНТИ. Из всего тренировочного датасета сэмплируются документы так, чтобы в обучении на эпохе участвовало одинаковое количество документов каждой рубрики ГРНТИ. Количество документов каждой рубрики равно average_rubric_size - среднему размеру рубрики ГРНТИ.
Если в конфиге для обучения модели self._config присутствует путь до батчей, построенных по википедии self._path_batches_wiki, то батчи будут использованы для обучения модели. Иначе в обучении будут принимать участие только батчи, сбалансированные относительно рубрик ГРНТИ.
Возвращает artm.BatchVectorizer, построенный на этих батчах.
- Результат
artm.BatchVectorizer, построенный на сбалансированных батчах.
- Тип результата
batch_vectorizer (artm.BatchVectorizer)
- get_modality_distribution() Dict[str, int]¶
Возвращает количество документов каждой модальности из self.class_ids для тренировочных данных.
Если в конфиге для обучения модели self.config передан путь до словаря, содержащего количество документов Wikipedia по модальностям, эти данные учитываются для оценки всего тренировочного датасета.
- Результат
словарь, ключ это модальность, значение это количество документов с такой модальностью
- Тип результата
modality_distribution_all (dict)
- load_train_data()¶
Загружает тренировочные данные.
- Создает два атрибута:
self.train_docs - словарь, где по doc_id содержиться документ в Vowpal Wabbit формате
- self._docs_of_rubrics - словарь, где по рубрике хранится
список всех doc_id с такой рубрикой из self.rubrics_train.
- update_config(config: str)¶
Обновляет конфиг, хранящийся по пути self._config_path.
- Параметры
config – конфиг обучаемой модели
- update_ds_metrics()¶
Обновляет метрики о датасете.
- write_new_docs(vw, docs: Dict[str, Dict[str, str]])¶
Сохраняет документы.
- Параметры
vw (VowpalWabbitBPE) – объект класса VowpalWabbitBPE для сохранения VW файлов.
docs (dict) – документы
- exception ap.train.data_manager.NoTranslationException¶
Базовые классы:
Exception
- async ap.train.metrics.handle(request)¶
REST обработчик
- Параметры
request – REST запрос
- Результат
REST ответ
- ap.train.metrics.inc_metric(key, value)¶
Инкрементирует значение метрики
- Параметры
key – ключ метрики
value – значение
- ap.train.metrics.run_metrics_server(config: Dict)¶
Запускает сервер метрик
- Параметры
config – конфиг эксперимента
- ap.train.metrics.send_metric(key, action, value)¶
Устанавливает значение метрики через REST сервис
- Параметры
key – ключ метрики
action – действие inc или set
value – значение
Returns:
- ap.train.metrics.set_metric(key, value)¶
Устанавливает значение метрики
- Параметры
key – Ключ метрики
value – Значение
- class ap.train.server.TopicModelTrainServiceImpl(train_conf: str, data_dir: str)¶
Базовые классы:
TopicModelTrainServiceServicer- AddDocumentsToModel(request: AddDocumentsToModelRequest, context) AddDocumentsToModelResponse¶
Добавляет документы в модель.
- Параметры
request (AddDocumentsToModelRequest) – запрос с документами
context – не используется
- Результат
Ответ
- Тип результата
(AddDocumentsToModelResponse)
- StartTrainTopicModel(request: StartTrainTopicModelRequest, context) StartTrainTopicModelResponse¶
Запускает обучение.
- Параметры
request (StartTrainTopicModelRequest) – запрос с типом обучения.
context – не используется.
- Результат
Статус запуска.
- Тип результата
(StartTrainTopicModelResponse)
- TrainTopicModelStatus(request: TrainTopicModelStatusRequest, context) TrainTopicModelStatusResponse¶
Возвращает статус текущей сессии обучения.
- Параметры
request (TrainTopicModelStatusRequest) – пустой запрос
context – контекст, не используется
- Returns
(TrainTopicModelStatusResponse): Статус
- UpdateModelConfiguration(request: UpdateModelConfigurationRequest, context) UpdateModelConfigurationResponse¶
Обновляет конфигурацию обучения
- Параметры
request – запрос, содержащий конфигурацию
context – не используется
- Результат
Статус - всегда ОК или исключение
- class ap.train.trainer.ModelTrainer(data_manager: ModelDataManager)¶
Базовые классы:
objectКласс для тренировки тематической модели.
- static generate_model_name() str¶
Генерирует новое имя для модели.
- Результат
Новое имя для модели
- property model_scores_value: dict¶
Возвращает значения всех скоров тематической модели на текущей эпохе
- Результат
значения всех скоров тематической модели на текущей эпохе
- Тип результата
scores_value (dict)
- set_metrics()¶
Задает основную информацию о модели.
- train_model(train_type: <google.protobuf.internal.enum_type_wrapper.EnumTypeWrapper object at 0x7fdc7409bf50>)¶
Функция обучения тематической модели.
- Параметры
train_type (StartTrainTopicModelRequest.TrainType) – full for full train from scratch, update to get the latest model and train it.