Тестирование стратегии на недетерминированное поведение - PullRequest
0 голосов
/ 21 июня 2019

Я хочу проверить недетерминированный алгоритм компьютерного зрения.

У меня есть две версии программного обеспечения: старая - предполагается, что она работает правильно, и новая - с существенными изменениями во всем, кроме основных алгоритмов. Алгоритмы являются недетерминированными, и данный видеофайл будет помечать некоторые кадры. Поскольку он не является детерминированным, кадры, которые он помечает, будут иметь небольшие изменения между запусками Например, если за один прогон он пометит номер кадра N в следующий раз, он может пометить номер кадра N + 1 или N-1 вместо этого или просто пометить совершенно новый кадр.

Алгоритмы ML не меняются между прогонами (не обучаются) и в обеих версиях программного обеспечения полностью идентичны.

Я хочу показать, что изменения не повлияли на производительность алгоритма.

Я сделал 30 запусков на одном и том же видео, агрегировал выходные данные и в обоих случаях нанес на график количество идентификаторов кадров (количество кадров относительно начала видео) обоих алгоритмов как категоричную линейную диаграмму. Это выглядит достаточно близко.

Вопрос в том, как я могу сделать заключение более математическим? Сейчас я склоняюсь к проверке статистических гипотез.

Есть ли альтернативы или предложения? Существует ли общая стратегия тестирования недетерминированного кода? Если проверка гипотез - это путь, каким будет правильный способ сделать это?

(в настоящее время я использую блокнот jupyter с python для построения графика данных и проверки гипотез, но могу выбрать любой другой инструмент, если предложен лучший вариант)

...