Найти тему

Виды тестирования в ML.

Оглавление

На четвёртом этапе решения задач ML возникает вопрос какие же бывают виды тестирования моделей и что каждая из них представляет. Давайте кратко ознакомимся с видами тестирования.

Стандартные способы

Unit-тесты.

С помощью unit-тестов мы можем тестировать отдельные модули кода. Для каждой функции/метода пишется свой тест. Протестировать работоспособность модели значит выбрать подходящую архитектуру и взять готовые хорошие данные, убедиться, что полученные данные соответствую вашим требованиям.

Интеграционный тест.

Интеграционные тесты вступаю в работу после unit-тестов. Здесь проверяется взаимодействие между единицами функциональности. Другими словами это процесс обработки данных и обучения модели.

Нагрузочный тест.

Тестируем производительность. Собираем показатели и определяем производительность, время отклика системы/устройства на внешний запрос. Помогает найти слабые места в pipeline. Нагрузочный тест нужен для того, что выяснить какую часть pipeline оптимизировать.

Способы специфичные для ML

Валидация модели.

Используя такой тест мы известные правильные ответы и сравниваем с предсказанными моделью данными. Валидацию можно использовать как во время обучения, так и после. Тест нужен для понимания - а работает ли вообще модель.

Проверка данных.

Зачастую случается так, что данные которые нам дают и данные которые отправляем модели для обучения разнятся. Это связанно с тем, что перед подачей данных на вход программе, мы делаем предобработку данных, иногда исходные данные могут нам не подходить. Поэтому полезно проверять входные данные. Если данные на входе будут плохие, то и результат будет ошибочным.

P.S. Если, нашли ошибки, недочёты или хотите дополнить сказанное, всегда рада конструктивному мнению специалистов.