Skip to main content

Electoral Data Standardization classes for the Selector project

Project description

Selector-standardizers

Модуль проекта Selector, реализующий основную логику обработки данных протоколов:

  • распознавание уровня выборов
  • распознавание уровня комиссии
  • подбор схемы данных
  • распознавание полей протокола
  • конвертирование в стандартный формат, соответствующий схеме
  • обучение ML-моделей распознавания.

Для работы тестов необходимо задать переменную окружения GOOGLE_APPLICATION_CREDENTIALS, указывающую путь к JSON файлу аутентификации Google Cloud Storage (GCS) проекта codeforrussia-selector.

PYTHONPATH=src GOOGLE_APPLICATION_CREDENTIALS=<path_to_google_credentials_json> pytest

Обучение модели распознавания полей протоколов

Обучение (точнее, fine-tuning) ML-модели осуществляется по текущей Avro схеме. Avro схема разрабатывается для выборов определенного уровня и типа. Pre-trained DeepPavlov RuBERT sentence encoder модель уже способна распознавать различные поля протоколов. Для улучшения ее качества используется fine-tuning модели по отношению к triplet loss на синтетических данных, сгенерированных из Avro схемы.

  1. Генерируются синтетические данные для обучения из имен и алиасов полей протоколов в схеме.
  2. Fine-tuning языковой модели по triplet loss.
  3. Экспорт модели в формат, принимаемый Sentence-BERT.

Пример команды тренировки:

PYTHONPATH=src python -m org.codeforrussia.selector.standardizer.recognizers.similarity.train --election-level REGIONAL --election-type PERSONAL --output-model-dir /tmp/codeforrussia-selector/ml-models/similarity-protocol-recognizer_1_0_0.zip

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

selector-standardizers-0.7.0.tar.gz (14.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

selector_standardizers-0.7.0-py3-none-any.whl (24.8 kB view details)

Uploaded Python 3

File details

Details for the file selector-standardizers-0.7.0.tar.gz.

File metadata

  • Download URL: selector-standardizers-0.7.0.tar.gz
  • Upload date:
  • Size: 14.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.3

File hashes

Hashes for selector-standardizers-0.7.0.tar.gz
Algorithm Hash digest
SHA256 547e978e8b0222e1c96901b092acbcf6c6373b3e398cce3d97e630cb87c63d43
MD5 11ad83ee3373aca018b7941b913ccd3b
BLAKE2b-256 fd6b4e3e6f11eb48f84b5c4d78f13df69aae6ecb560f17444eeb74a122f33659

See more details on using hashes here.

File details

Details for the file selector_standardizers-0.7.0-py3-none-any.whl.

File metadata

  • Download URL: selector_standardizers-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 24.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.3

File hashes

Hashes for selector_standardizers-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bb8fd670c036b99d668f2539b8fbadc0e594fafc911209d223d6e68d58ed48d5
MD5 390a44aede516de6eb6115eb74bb058e
BLAKE2b-256 010cdf814ea7a4438ffb3d25da7c9a9d80c0812b83a0aa36b95c13e67bde3b4d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page