Проверил границу гашения по полосам, скорость менять не надо

This commit is contained in:
Данил Омелечко 2026-09-22 15:04:50 +03:00
parent 329df21fce
commit 852af35873

View file

@ -1630,3 +1630,63 @@ P@150 0.32), а на всём, что меньше, — заметно хуже:
Закрыть это можно только видимостью: накопление по кадрам не поможет, Закрыть это можно только видимостью: накопление по кадрам не поможет,
потому что за горизонтом прямой видимости данных нет ни в одном кадре. потому что за горизонтом прямой видимости данных нет ни в одном кадре.
### 12.8. Где именно знакомость перестаёт работать
Граница гашения (90 м) была выбрана по одному замеру на полосе 120–185 м.
Проверка по всем полосам, два бэга, вставленный человек против окружающих
кандидатов:
| полоса | наблюдений | знакомость, AUC | модель, AUC |
|---|---:|---:|---:|
| 35–55 м | 484 | 0.953 | 0.966 |
| 55–75 м | 1068 | 0.765 | 0.783 |
| 75–95 м | 1143 | 0.741 | 0.778 |
| 95–120 м | 793 | **0.621** | 0.758 |
| 120–150 м | 569 | **0.376** | 0.734 |
| 150–200 м | 293 | **0.352** | 0.712 |
Граница подтвердилась: до 95 м знакомость ещё различает (0.74), дальше
проваливается и за 120 м переворачивается. Обученное считывание держит
0.71–0.78 на всей дистанции — оно и остаётся единственным работающим
признаком в дальней зоне.
Отсюда напрашивалось гасить знакомость **быстрее**: сейчас её вклад
обнуляется только к 160 м, то есть на 120 м остаётся 57 % влияния признака,
который там уже перевёрнут. Проверено — и отвергнуто:
| вклад обнуляется к | ложных/км, знакомая | кадров | незнакомая |
|---|---:|---:|---:|
| **160 м (принято)** | **8.0** | **11.0 %** | 20.3 |
| 140 м | 8.0 | 13.8 % | 20.3 |
| 120 м | 9.5 | 16.4 % | 20.3 |
| 105 м | 9.5 | 17.2 % | 20.3 |
Урок тут методический. AUC мерит **ранжирование**: 0.376 означает, что среди
далёких кандидатов предмет получает новизну ниже, чем обстановка. Но в весе
улики знакомость стоит **множителем**, и, ранжируя неверно, она продолжает
давить обстановку с высокой новизной. Для решения важно второе, а не первое —
поэтому выбирать параметр надо по сквозному замеру, а не по AUC признака,
каким бы убедительным он ни выглядел.
На незнакомой линии скорость гашения не влияет вовсе (20.3 во всех четырёх
случаях): там памяти нет, и гасить нечего.
### 12.9. Оговорка о подборе порогов
Память тоннеля и считывание MBON проверяются leave-one-bag-out. Для **порогов**
(с какой дальности гасить знакомость и как быстро, сколько лучей образуют
кандидата вблизи и вдали, где разрешён разрез по контрасту) отдельной
отложенной выборки нет: они выбраны на тех же пяти бэгах, на которых и
измерены. Это надо называть вслух.
Что смягчает: каждый порог выбран по **независимому** замеру, а не перебором
ради лучшей итоговой цифры. Граница гашения — по разделяющей способности
знакомости по полосам (п. 12.8). Порог по лучам — по тому, сколько лучей
предмет физически даёт на этой дальности (п. 12.5). Запрет резать вблизи —
по тому, где предмет слипается с фоном (п. 12.7). Порогов немного, каждый
имеет физический смысл, и отвергнутых значений больше, чем принятых.
Что не смягчает ничего: на приватном тесте будет другая линия, и сами пороги
там могут оказаться не оптимальными. Поэтому все они вынесены в `Params`
одним местом и меняются без правки кода.