SOFTWARE MODEL OF A TRACEABLE VIDEO ANALYTICS PIPELINE WITH RESULT PROVENANCE CONTROL
Введение
Современный программный комплекс видеоаналитики формирует не только изображение, но и производные объекты: события, координаты, классы, траектории, оценки уверенности и операторские решения. В прикладной системе именно эти объекты запускают поиск в архиве, уведомления и регламент реагирования. Поэтому доверие к результату нельзя сводить к одной числовой оценке нейросетевой модели: необходимо знать происхождение данных, состояние программных компонентов и возможность последующей проверки. В российских исследованиях доверенного искусственного интеллекта эта проблема рассматривается как совокупность доверия к данным, модели, процедурам применения и цифровой среде [1; 2].
Практики эксплуатации моделей машинного обучения и программной инженерии требуют версионирования данных и моделей, автоматизированных проверок и наблюдаемости [3-5]. Рубрики готовности, паспорта моделей и механизмы обработки отказов добавляют сведения об области применения, метриках, ограничениях и деградации [6-8]. Однако их основной объект – модель или конвейер, а не отдельное событие, непосредственно передаваемое оператору или исполнительной подсистеме.
Для видеопотока особенно важна зависимость результата от качества входного кадра. Выбор пригодного кадра и формализация показателей качества позволяют сохранять связь результата с исходным изображением [9; 10]. Высокие средние показатели детекторов не устраняют зависимость от разрешения, освещенности, ракурса, перекрытий и порога принятия решения [11; 12].
В задачах обнаружения аномалий эта зависимость усиливается из-за редкости событий и неполноты выборок [13; 14]. Кроме того, численная уверенность нейронной сети может быть плохо откалибрована [15]. Поэтому высокая уверенность не должна компенсировать отсутствие сведений о модели, конфигурации, среде исполнения или архивной ссылке.
Происхождение данных и программных артефактов исследуется на нескольких уровнях. Модель PROV формализует сущности, действия, агентов и отношения порождения, использования и производности [16]. В российской MLOps-платформе НИУ ВШЭ объектная модель вычислительного эксперимента и язык его спецификации применяются для воспроизводимости и прослеживаемости распределенных вычислений [17]. GeneaLog связывает каждое выходное событие потоковой обработки с исходными данными посредством мелкозернистой provenance на уровне отдельных кортежей [18]. Проверяемые журналы обеспечивают обнаружение постфактум-изменений: в работе [19] для записей формируются доказательства существования и целостности, сохраняемые в блокчейне с ограниченным составом участников. Сопоставление этих подходов с предлагаемой моделью приведено в табл. 1.
Предлагаемая модель не заменяет перечисленные подходы, а задает их доменное применение. Объект rᵢ может быть представлен в PROV как Entity, сформированная Activity инференса; модель, конфигурация, кадр и архивный фрагмент – как связанные Entities, а детектор и оператор – как Agents [16]. Объектная модель MLOps-эксперимента может фиксировать структуру вычисления, конвейеры, наборы данных и выполненные операции [17]; GeneaLog – связывать отдельный выход потока с породившими его входными элементами [18]; проверяемый журнал – подтверждать отсутствие незаметной модификации аудиторских записей [19]. Новизна состоит в обязательной эксплуатационной семантике: описание происхождения само по себе не разрешает реакцию при G(rᵢ)=0, а отклоненный результат сохраняется для аудита.
Таблица 1
Сопоставление моделей происхождения и предлагаемого контура
|
Подход |
Базовая единица |
Используемые механизмы |
Недостающие свойства для допуска видеособытия |
|
PROV |
Entity – Activity – Agent |
Граф происхождения, ответственность и обмен метаданными |
Нет обязательных полей качества кадра, архива, подтверждения и блокировки реакции |
|
MLOps-платформа НИУ ВШЭ |
Вычислительный эксперимент |
Объектная модель, спецификация, интеграция конвейеров и данных |
Ориентация на эксперимент; нет контракта для каждого результата инференса |
|
GeneaLog |
Потоковый кортеж/событие |
Мелкозернистая связь выхода с исходными данными |
Нет проверки модели, конфигурации, кадра и политики реакции |
|
Проверяемый журнал |
Запись аудита |
Доказательства существования и целостности, распределенная проверка |
Защищает журнал, но не задает семантику результата и допуска к реакции |
|
Настоящая работа |
Отдельное событие rᵢ |
G(rᵢ), Q(rᵢ), архив, аудит и состояние подтверждения |
Доменный контракт; совместим с PROV, MLOps provenance, event-level lineage и tamper-evident logging |
Примечание: составлено автором по материалам [16-19].
Нерешенным остается построение исполняемого программного контракта, в котором результат видеоаналитики проверяется на всем пути от кадра до реакции. Рабочая гипотеза состоит в том, что обязательное включение происхождения, конфигурации, среды исполнения, качества входа, архивной ссылки и аудита повышает трассируемость и эксплуатационную пригодность события при неизменном аналитическом стеке.
Научная новизна заключается в сочетании формального объекта результата на уровне отдельного события, жестких предусловий, не компенсируемых высокой уверенностью, и двухуровневого критерия доверия, разделяющего техническую целостность и эксплуатационную допустимость. В отличие от универсальных моделей lineage, предложенная модель задает обязательные поля, состояние отказа и условие передачи события в контур реакции.
Цель исследования – разработать программную модель трассируемого контура видеоаналитики и проверить, повышает ли ее применение полноту происхождения результатов, управляемость конфигурации и операционную эффективность операторского подтверждения при неизменном составе и настройках аналитического стека.
Материал и методы исследования
Объектом исследования являлся программный конвейер обработки видеособытия, включающий источник, детектор, реестр моделей и конфигураций, среду исполнения, архив, журнал и рабочее место оператора. Единицей анализа выбран отдельный результат rᵢ, а не агрегированная запись о состоянии модели. Результат задается кортежем:
, (1)
где idᵢ – идентификатор события; tᵢ – временные метки источника и системы; sᵢ – источник; dᵢ – детектор; vᵢ – версия модели; hᵢᴹ и hᵢᶜ – контрольные суммы модели и конфигурации; qᵢᶠ – вектор показателей качества кадра; pᵢ – профиль среды исполнения; ρᵢ – оценка уверенности; aᵢ и jᵢ – ссылки на архив и аудит; oᵢ – состояние операторского подтверждения.
В модели различаются жесткие и мягкие условия. Жесткий предикат G(rᵢ) проверяет наличие и согласованность контекста. Индикаторы подтвержденности источника, модели, конфигурации, среды исполнения, времени, архивной ссылки и аудита обозначим через Sᵢ, Mᵢ, Cᵢ, Pᵢ, Tᵢ, Aᵢ и Jᵢ соответственно; тогда:
(2)
Если хотя бы одно условие ложно, событие не удаляется, а сохраняется со статусом недоверенного результата и машиночитаемой причиной. Это решение важно для диагностики: отсутствие архивной ссылки или несовпадение контрольной суммы само по себе является наблюдаемым отказом программного контура.
Мягкая оценка Q(rᵢ) объединяет качество кадра, состояние модели, конфигурации, вычислительной платформы и полноту аудита. Веса задаются эксплуатационной политикой и в сумме равны единице; способ их выбора относится к настройке конкретной системы и не является предметом настоящего исследования:
(3)
Итоговый статус определяется совместно жестким предикатом, порогом q_c и политикой подтверждения Hᵢ:
(4)
Значение Hᵢ равно единице автоматически только для событий, для которых это разрешено эксплуатационным регламентом. Для критических событий может требоваться подтверждение оператором либо вторым сенсором. Тем самым технически целый результат остается аналитической подсказкой, если установленная политика требует дополнительной верификации.
Программный контракт обработки реализован как последовательность «проверка предусловий – вычисление – связывание – аудит – реакция». До вычисления проверяются источник, версия модели и профиль среды. После вычисления результат связывается с контрольной суммой конфигурации, качеством кадра и архивом, затем формируется запись аудита с контролем целостности.
Таблица 2
Проверяемые элементы программного объекта результата видеоаналитики
|
Элемент результата |
Проверяемое условие |
Поведение при нарушении |
|
Источник и кадр |
Идентификатор источника, временная связность, показатели резкости, освещенности и потерь |
Сохранение события со статусом untrusted_input; автоматическая реакция запрещена |
|
Модель |
Версия, контрольная сумма, разрешенный паспорт модели и область применения |
Блокировка доверенной реакции; регистрация model_mismatch |
|
Конфигурация |
Контрольная сумма порогов и зон, полномочия субъекта изменения |
Изменение отклоняется до записи; формируется audit_fail |
|
Среда исполнения |
Профиль узла, версии библиотек, состояние времени и контроля целостности |
Статус untrusted_platform до восстановления профиля |
|
Архив и аудит |
Наличие archive_ref и audit_ref, соответствие источнику и временному интервалу |
Событие сохраняется, но не используется как доверенное основание |
|
Подтверждение |
Оператор или второй сенсор для событий, указанных эксплуатационным регламентом |
Результат остается подсказкой без исполнительной команды |
Примечание: составлено автором по результатам исследования.
Реакция разрешается только после вычисления итогового статуса. Повтор события с тем же идентификатором и номером последовательности идемпотентен и не создает вторую доверенную запись. Состав проверяемых элементов и реакции на нарушения приведены в табл. 2.
Экспериментальная проверка выполнена на 360 видеосценариях длительностью 655 камера-часов. Испытательный поток включал 1840 положительных событий и 9600 отрицательных временных окон от 27 камер. Рассматривались движение, пересечение линии, саботаж, оставленный предмет, скопление людей, распознавание государственного регистрационного знака и нахождение объекта в запрещенной зоне. Разрешение камер составляло 2 мегапикселя, частота – 25 кадров в секунду; освещенность изменялась от 80 до 500 люкс в помещениях и от 30 до 1000 люкс на открытых участках.
Сценарий представлял ограниченный по времени видеосегмент с идентификатором камеры, ожидаемым типом события и целевой временной отметкой. Положительным считалось событие, совпавшее со сценарным протоколом по типу и времени; отрицательным окном – интервал без целевого события. Ложной тревогой считалось срабатывание в отрицательном окне, а неверифицированной реакцией – его передача в контур реагирования без отметки оператора или второго сенсора. Распределение сценариев/событий: движение 64/368; пересечение линии 58/322; саботаж 42/154; оставленный предмет 44/176; скопление людей 46/201; ГРЗ 55/351; запрещенная зона 51/268. Разметку независимо выполняли два специалиста; 67 (3,6%) разногласий разрешал третий эксперт. Согласие до разрешения разногласий составило 96,4%, коэффициент κ Коэна – 0,957 [95% ДИ 0,946; 0,968]. Настроечные фрагменты не входили в оценочные 655 камера-часов. Два программных профиля обрабатывали одинаковые видеопотоки при неизменных составе и конфигурации аналитического стека, версиях модельных артефактов, порогах и среде исполнения. Единицей парного сопоставления являлось одно и то же событие или отрицательное окно, согласованное по идентификатору камеры, исходному времени и типу детектора. Базовый профиль сохранял прикладные журналы и допускал необязательную связь с архивом. Предлагаемый профиль требовал заполнения rᵢ, выполнения G(rᵢ), контроля версий и конфигурации, архивной и аудиторской ссылок и фиксации качества входа.
В операторском эксперименте участвовали 8 операторов со стажем 2-9 лет (медиана 4,5 года). Стратифицированно отобраны 560 событий (по 80 каждого типа). В рандомизированном перекрестном дизайне каждое событие оценивалось в обоих профилях разными операторами; каждый обработал по 70 событий на профиль. Получено 560 парных сопоставлений. Время подтверждения определялось от открытия карточки события до фиксации решения; автоматические решения в эту метрику не включались.
Для показателей полноты знаменателем служили 1840 положительных событий, для доли неверифицированных реакций – 9600 отрицательных окон. Дополнительно выполнялись 600 попыток подмены модельного артефакта или несанкционированного изменения порога и 300 сценариев отката версии или отсутствия архивной ссылки. Первичные признаки сохранялись на уровне события или окна вместе с идентификаторами камеры, сценария, оператора и сессии.
Статистический анализ задавался как парный и иерархический. Для каждого бинарного исхода вычисляли внутриобъектную разность yᵢ(предл.) – yᵢ(баз.) для одного и того же события или отрицательного окна. 95%-ный доверительный интервал средней парной разности оценивали двухступенчатым кластерным bootstrap с 10 000 повторов: камеры ресемплировали с возвращением, затем внутри выбранной камеры с возвращением ресемплировали сценарии при сохранении обеих профильных записей каждой пары. Нулевую гипотезу проверяли точным тестом Макнемара; отдельные доли сопровождали описательными интервалами Уилсона.
В анализе чувствительности бинарные исходы оценивали логистическими смешанными моделями с фиксированным эффектом профиля и случайными интерцептами события, сценария и камеры. Время подтверждения анализировали после логарифмирования в линейной смешанной модели с фиксированными эффектами профиля, периода и порядка предъявления и случайными интерцептами события, оператора и сессии. Эффект представляли как отношение геометрических средних; разность медиан и ее 95%-ный доверительный интервал дополнительно оценивали перекрестным кластерным bootstrap по событиям и операторам с 10 000 повторов. Все проверки были двусторонними, уровень значимости составлял 0,05. Расчеты выполнены в Python 3.12.7 с пакетами NumPy 2.2.2, SciPy 1.15.1 и statsmodels 0.14.4.
Результаты исследования и их обсуждение
При фиксированном аналитическом стеке анализ был направлен на программный жизненный цикл результата. Показатели наличия версии и конфигурации, архивной ссылки, качества кадра и совместного выполнения G(rᵢ)=1 являются мерами выполнения контракта, поэтому их рост демонстрирует принудительную полноту, но не изменение точности детектора. Операционный эффект оценивали по времени подтверждения и доле отрицательных окон, в которых неверифицированная ложная тревога дошла до реакции. Результаты парного кластерного анализа приведены в табл. 3.
Таблица 3
Влияние обязательной трассировки на эксплуатационные показатели
|
Показатель |
Базовый профиль, n/N; оценка [95% ДИ Уилсона] |
Предлагаемый профиль, n/N; оценка [95% ДИ Уилсона] |
Парная разность [кластерный 95% ДИ]; p |
|
Версия модели и контрольная сумма конфигурации |
810/1840; 0,440 [0,418; 0,463] |
1803/1840; 0,980 [0,972; 0,985] |
+0,540 [+0,507; +0,571]; p < 0,001 |
|
Архивная ссылка |
1214/1840; 0,660 [0,638; 0,681] |
1748/1840; 0,950 [0,939; 0,959] |
+0,290 [+0,253; +0,326]; p < 0,001 |
|
Зафиксированное качество кадра |
570/1840; 0,310 [0,289; 0,331] |
1711/1840; 0,930 [0,917; 0,941] |
+0,620 [+0,585; +0,653]; p < 0,001 |
|
Совместное выполнение жесткого предиката G(rᵢ)=1 |
424/1840; 0,230 [0,212; 0,250] |
1593/1840; 0,866 [0,849; 0,881] |
+0,635 [+0,595; +0,671]; p < 0,001 |
|
Время подтверждения оператором, с |
n = 560; 21,4; IQR 17,8-26,9 |
n = 560; 14,2; IQR 11,6-18,5 |
-7,2 с (-33,6%); [-8,6; -5,9]; p < 0,001 |
|
Отрицательные окна с неверифицированной реакцией |
1728/9600; 0,180 [0,172; 0,188] |
384/9600; 0,040 [0,036; 0,044] |
-0,140 [-0,158; -0,121]; p < 0,001 |
Примечание: IQR – межквартильный размах; 95% ДИ – 95%-ный доверительный интервал. Для бинарных исходов в последнем столбце приведена средняя парная разность с двухступенчатым кластерным bootstrap-интервалом и p-значением точного теста Макнемара; для времени – разность медиан с перекрестным кластерным bootstrap-интервалом.
Оценка производительности
Накладные расходы измеряли без повторного выполнения инференса, поскольку аналитический стек в профилях был одинаковым. На одном узле x86-64 с 8 вычислительными ядрами (AMD Zen4 3,6 ГГц), 32 ГБ оперативной памяти DDR5-5600 в двухканальном режиме и накопителем NVMe PCI-E 4.0 выполнено 30 прогонов по 100 000 событий после 10 000 прогревочных сообщений; контрольные суммы модели и конфигурации вычислялись при загрузке, а записи аудита объединялись в пакеты по 128. При нагрузке 512 событий/с медиана и 95-й процентиль задержки программной обработки составили соответственно 2,18 и 4,76 мс в базовом профиле и 2,55 и 5,34 мс в предлагаемом; абсолютные накладные расходы составили 0,37 и 0,58 мс. Предельная устойчивая пропускная способность снизилась с 3410 до 3110 событий/с (на 8,8%), загрузка процессора при целевой нагрузке выросла с 14,6 до 19,1%, а резидентная память – на 82 МБ. В 3,0 млн обработок потерь событий и расхождений между доверенным результатом и записью аудита не зарегистрировано. В испытанной конфигурации сохранялся более чем шестикратный запас по пропускной способности относительно нагрузки 512 событий/с. При переносе журнала в сетевое хранилище и изменении способа пакетирования требуется повторная нагрузочная проверка.
В парном анализе число дискордантных пар «базовый профиль: нет; предлагаемый: да» и «базовый: да; предлагаемый: нет» составило 1005/12 для версии модели и конфигурации, 556/22 для архивной ссылки, 1163/22 для качества кадра и 1183/14 для G(rᵢ)=1. Во всех сравнениях направление эффекта сохранялось после учета камеры и сценария (p < 0,001).
Наибольший прирост получен для фиксации качества входа и совместного выполнения жестких условий. Это ожидаемое следствие обязательной схемы: результат не мог получить доверенный статус без соответствующих полей. После учета события, оператора, сессии, периода и порядка предъявления отношение геометрических средних времени подтверждения составило 0,67 [95% ДИ 0,63; 0,72]; эффект порядка был незначим (p = 0,41), как и взаимодействие профиля с периодом (p = 0,58). Карточка события сразу содержала исходный фрагмент, версию стека, конфигурацию и причину понижения доверия, что уменьшало число переходов между интерфейсами. Поэтому сокращение времени следует интерпретировать как эффект интегрированного профиля, включавшего контракт трассируемости и измененную подачу контекста, а не как изолированный эффект одного механизма происхождения.
Отрицательные тесты подтвердили работу жестких предусловий. Подмена файла модели и изменение порога без разрешенной роли были заблокированы в 600 из 600 попыток; нижняя граница 95%-ного интервала Уилсона составила 99,4%. Откат модели и отсутствие архивной ссылки были корректно обнаружены в 300 из 300 сценариев; нижняя граница интервала составила 98,7%. При отсутствии архивной ссылки событие сохранялось со статусом untrusted_archive, что позволяло расследовать отказ без ложного признания результата доверенным. Полученные 100% относятся только к заданному набору интерфейсных и интеграционных тестов и не означают абсолютной защищенности программного комплекса.
Полученные результаты согласуются с практиками MLOps и паспортами моделей [3; 6; 7], но переносят контроль на уровень отдельного события. PROV предоставляет основу для обмена графом происхождения [16], объектные модели вычислительных экспериментов – для воспроизводимости и прослеживаемости MLOps-конвейеров [17], а GeneaLog показывает реализуемость мелкозернистой provenance на уровне выходных событий потоковой обработки [18]. Проверяемое журналирование усиливает обнаружение изменений аудиторских записей после их формирования [19]. Контракт концептуально не зависит от архитектуры распознавания, однако величина эффекта при смене стека требует отдельной проверки.
При межсистемной интеграции отображение выполняется без потери обязательной семантики. Идентификаторы idᵢ, tᵢ и sᵢ связываются с Entity и Activity модели PROV [16]; модель, конфигурация, конвейер и наборы данных представляются как элементы спецификации вычислительного эксперимента [17]; причинные связи между входными элементами потока и событием rᵢ фиксируются средствами мелкозернистой provenance [18]; запись jᵢ включается в проверяемую цепочку аудита с доказательствами существования и целостности [19]. Состояние oᵢ связывает решение с Agent оператора. При этом слой обмена обязан сохранять G(rᵢ), Q(rᵢ), Hᵢ, итоговый статус и машиночитаемую причину отказа. Иначе система сможет описать происхождение, но потеряет правило допуска к реакции. Тем самым существующие модели provenance и проверяемого журналирования отвечают на вопросы «как сформирован результат» и «сохранилась ли целостность его аудиторского следа», а предлагаемый контракт дополнительно отвечает на вопрос «может ли он инициировать реакцию при действующей эксплуатационной политике».
Практическая значимость состоит в реализации модели как схемы данных, слоя проверок и набора контрактных тестов. Ключевыми элементами являются структура объекта, семантика отказа, идемпотентность, управляемое версионирование и воспроизводимый расчет показателей. Контроль входа, модели и среды соответствует подходам к защите алгоритмов искусственного интеллекта в видеонаблюдении [20].
Ограничения связаны с внутренним стендом, одним аналитическим стеком, одним набором сценариев, 27 камерами, ограниченным операторским экспериментом и отсутствием независимой проверки. Иерархический анализ учитывает наблюдаемую кластеризацию, однако небольшое число верхнеуровневых кластеров ограничивает точность оценки случайных эффектов. В операторской части изменение программного контракта было связано с изменением карточки события, поэтому причинный вклад интерфейса и трассируемости полностью не разделен. При замене компонентов необходимы повторные интеграционная, статистическая и нагрузочная проверки.
Масштабируемость журнала аудита за пределами одного узла отдельно не исследовалась. Средний размер сериализованной записи rᵢ вместе с jᵢ составил 1,28 КБ; при нагрузочной интенсивности 512 событий/с это соответствует 56,6 ГБ/сут. и 1,70 ТБ за 30 сут. без учета индексов и резервных копий. Вынесение неизменяемых полей модели, конфигурации и профиля среды в версионируемые справочники с сохранением в событии ссылок и контрольных сумм уменьшало расчетный объем записи до 0,47 КБ, или 20,8 ГБ/сут. Для промышленной эксплуатации необходимы партиционирование и ротация по времени, хранение горячего журнала в течение ограниченного периода, сжатие закрытых разделов и выгрузка во внешнее неизменяемое или объектное хранилище с периодической проверкой контрольных сумм. Влияние такой схемы на задержку запросов, восстановление и стоимость хранения требует отдельного эксперимента.
Заключение
Разработана программная модель трассируемого контура видеоаналитики, в которой отдельный результат представлен версионируемым объектом, связывающим источник, модель, конфигурацию, качество кадра, среду исполнения, архив, аудит и операторское подтверждение. Введено разделение жестких предусловий и мягкой оценки доверия: неполнота происхождения не может быть компенсирована высокой уверенностью нейронной сети. На 360 видеосценариях доля событий с версией модели и конфигурации возросла с 0,44 до 0,98, с архивной ссылкой – с 0,66 до 0,95, с качеством входа – с 0,31 до 0,93. Доля событий, одновременно выполнивших G(rᵢ)=1, увеличилась с 0,230 до 0,866. Медиана времени операторского подтверждения снизилась на 33,6%, а доля отрицательных окон с неверифицированной реакцией – с 0,18 до 0,04. Контрактные тесты показали блокирование неподтвержденных изменений и понижение доверия при неполной архивной связности. Нагрузочная проверка показала увеличение медианы задержки на 0,37 мс и снижение предельной пропускной способности на 8,8% при сохранении более чем шестикратного запаса относительно нагрузки 512 событий/с.
Результаты согласуются с рабочей гипотезой в части трассируемости, управляемости и операционной эффективности результата в пределах испытанной конфигурации. При неизменном аналитическом стеке различия в полноте происхождения и доле неверифицированных реакций относятся к программному контракту, тогда как временной эффект характеризует интегрированный профиль вместе с интерфейсом карточки события. Перенос на другой стек требует интеграционной и нагрузочной проверки.
Модель может служить основой интерфейсов, схемы данных и программы испытаний видеоаналитики, отделяя качество распознавания от доказуемости происхождения и корректности программного жизненного цикла результата.
Conflict of Interest
Funding
Bibliographic Reference
URL: https://top-technologies.ru/en/article/view?id=40895 (accessed: 04/09/2026).
DOI: https://doi.org/10.17513/snt.40895
