Skip to content

MNIST recognition system, research adversarial attacks (FSGM)

License

Notifications You must be signed in to change notification settings

lsd-maddrive/mnist_recognition

Repository files navigation

MNIST Recognition

PythonSupported Code style: black Pre-commit Bandit

Система распознавания рукописных цифр из датасета MNIST с исследованием влияния состязательных атак на качество работы моделей.

Подробное описание

Содержание

Начало работы

  1. Установка make

    • Windows

      Установить chocolatey, после чего установить make с помощью команды:

      choco install make
    • Linux

      sudo apt-get install build-essential
  2. Установка python 3.8

  3. Установка poetry

    • Windows

      Используйте официальные инструкции или команду powershell

      (Invoke-WebRequest -Uri https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py -UseBasicParsing).Content | python -
    • Linux

      make poetry-download
  4. Установка требуемых пакетов (библиотек) и инструментов с помощью команды

    make install
  5. Установка Git LFS с помощью команды

    git lfs install
  6. Скачать файлы из LFS

    git lfs pull

Содержание

Git Hook

При успешном выполнении команды make install будет установлен git hook, который будет автоматические добавлять в коммит имя ветки

То есть коммит в истории гита будет выглядить так:

[<branch_name>] <your commit message>

При этом имя ветки и скобки писать не нужно.

Содержание

Соглашение по именованию коммитов

Чтобы история гита была структурированной, принято использовать "маркеры", чтобы помечать изменения в коммите.

  • [NF] - New Functionality/Features: новый функционал
  • [CF] - Current Functionality: доработка существующего функционала
  • [BF] - Bug Fix: исправление ошибок
  • [RF] - ReFactoring: доработка кода, не затрагивающая бизнес-логику

Например, при рефакторинге кода коммит будет выглядеть следующим образом:

git commit -m "[RF]: minor refactoring of training script"

Содержание

FAQ

Как работать после установки poetry

  • Если хочется, чтобы для poetry работали автодополнения через Tab, то действуем по инструкции

  • Чтобы установить модуль библиотеки, используй команду:

poetry add <package_name> --dev
  • Чтобы удалить модуль библиотеки, используй команду:
poetry remove <package_name> --dev
  • Чтобы запустить скрипт есть 2 пути:
    • Первый способ:
      1. Запустить (активировать) виртуальное окружение poetry shell
      2. Запускать скрипты (внутри окружения) привычным способом python3 script.py
    • Второй способ - использовать команду poetry run python3 script.py

    (poetry сам свяжет с виртуальным окружением)

  • Чтобы деактивировать виртуальное окружение - poetry exit

Содержание