Skip to content
Урок 7. Ловушка тепловых карт

Урок 7. Ловушка тепловых карт

Урок 7. Ловушка тепловых карт: плотность ≠ сила сигнала

Паспорт урока

ПараметрЗначение
Место в модулеWarWalk, урок 7 из 7 — финал модуля и курса
Длительность45 мин
Возраст14–16
Оборудованиеwarwalk_csv2map.py --heatmap, учебный лог
Предварительные знанияУроки 1–6; RFCurtain урок 5 (принципы визуализации)
ПредметИнформатика (визуализация данных), методология

Образовательные цели

ЦельБлумМиллерЧем доказывается
7.1Выявлять артефакты визуализациианализироватьпоказывает какДемонстрация фальшивого пятна и его устранение
7.2Называть ограничения метода на защитеоцениватьпоказывает какОтвет: почему изолиния сквозь здание — артефакт
7.3Различать данные и способ их представленияанализироватьзнает какРазбор: те же данные, разные выводы
7.4Обосновывать выбор уровня визуализации под задачуоцениватьзнает какТри уровня и их применимость

Сценарий занятия (45 минут)

ВремяБлокЧто делает педагогЧто делают ученики
0–5RetrievalМини-квиз по уроку 6Пишут, разбор
5–15Демонстрация ловушкиСтроит heatmap «в лоб»Обнаруживают фальшивое пятно
15–25ТеорияТри уровня визуализацииРазбирают каждый
25–35ИнтерполяцияАртефакты «взрослых» картФормулируют ограничения
35–42ПрактикаЗадачиРешают
42–45Итог курсаФинал модуля и курсаЗаписывают

Блок 1. Демонстрация ловушки (5–15 мин)

Подготовка

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

Демонстрация

Построить тепловую карту «в лоб», по сырым точкам:

python3 warwalk_csv2map.py --heatmap лог.csv

Что увидят ученики

Там, где бригада топталась, вспыхивает яркое «горячее» пятно — хотя сигнал в этой точке был слабым.

Вопрос классу

«Мы стояли там, где сигнал плохой. На карте это место выглядит как зона отличного покрытия. Данные не подделаны — все измерения настоящие. Что произошло?»

Разбор

ГипотезаОбсуждение
«Ошибка в данных»Нет, проверим лог: там честные слабые значения
«Ошибка в программе»Нет, программа работает как задумано
«Карта показывает не то, что мы думаем»Верно

Суть ловушки. folium.HeatMap и heatmap-слои систем визуализации — это карты плотности точек, а не значений. Чем больше измерений попало в область, тем «горячее» она отображается — независимо от того, какие это значения.

Постояли на месте минуту — получили сотню точек в одном месте — получили фальшивое яркое пятно.

Лечение

Построить heatmap не по сырым точкам, а по сетке с медианой (урок 6):

python3 warwalk_csv2map.py --heatmap --grid лог.csv

Пятно исчезает: в ячейке теперь одно значение — медиана, и число посещений на цвет не влияет.

«Одни и те же данные. Два способа показа. Противоположные выводы.»


Блок 2. Три уровня визуализации (15–25 мин)

Уровень 1. Облако точек

Что этоКаждое измерение — точка, цвет = RSSI, чёрные точки = дыры
Плюссамый честный вид: видны и данные, и их отсутствие, никакой обработки
Минуспри тысячах точек нечитаемо, перекрытия
Когда применятьпервый разбор с учениками — только этот вид

Уровень 2. Тепловой слой по сетке

Что этоСетка ~10 м, в ячейке медиана, цвет по медиане
Плюсчитаемо, плотность посещения не влияет на цвет
Минусдетали внутри ячейки теряются
Когда применятьобзорная карта района

Уровень 3. Интерполяция поля

Что этоВосстановление непрерывного поля между измерениями (IDW, кригинг в ГИС)
Плюс«карта как у взрослых», красиво и наглядно
Минусвыдумывает значения там, где не измеряли
Когда применятьпрезентация, но с обязательной оговоркой

Главное ограничение интерполяции. Алгоритм не знает о стенах, зданиях и препятствиях. Он просто плавно соединяет соседние измерения.

Поэтому изолиния, проведённая сквозь здание, есть артефакт метода, а не физический результат: с одной стороны здания сигнал сильный, с другой слабый, и алгоритм рисует плавный переход через стену, где на самом деле резкий обрыв.

Умение сказать это вслух на защите дороже красивой картинки.


Блок 3. Данные против представления (25–35 мин)

Обобщение ловушки

«Мы столкнулись с ситуацией, где все цифры правдивы, а вывод ложный. Виновата не запись данных, а способ их показа.»

Каталог приёмов, искажающих без лжи

ПриёмКак обманываетКак проверить
Heatmap по плотности«горячо» там, где много измеренийспросить: что кодирует цвет?
Обрезанная осьмалое различие выглядит драматическимпосмотреть на начало оси
Выбранный периодпоказан удачный отрезокспросить: почему именно этот период?
Интерполяция без оговоркивыдуманные значения выглядят как измеренныеспросить: где реальные точки?
Отсутствие дырошибка выжившего (урок 5)спросить: а где не было связи?
Сглаживание без сырьяскрыт разбросспросить: какой был шум?

Связь с принципами RFCurtain

Все пять принципов честной визуализации (RFCurtain, урок 5) работают и здесь:

  1. Показывать сырьё и обработку вместе → уровень 1 наряду с уровнем 2;
  2. Порог рядом с признаком → шкала цветов с явными границами;
  3. Разные классы — разные цвета → чёрные точки для дыр;
  4. Ground truth поверх всего → отметки MARK на карте;
  5. Не скрывать неудобное → дыры покрытия обязательно на карте.

Блок 4. Практические задачи (35–42 мин)

Уровень A (14 лет)

A1. Почему на тепловой карте появилось яркое пятно там, где сигнал слабый?

Ответ

Потому что обычная тепловая карта показывает плотность точек, а не их значения. Бригада постояла на месте, накопилось много измерений в одном месте — и алгоритм отобразил это как «горячую» зону, хотя сигнал там был плохой.

A2. Как исправили эту ошибку?

Ответ

Стали строить карту не по сырым точкам, а по сетке: территория делится на ячейки около 10 м, в каждой берётся медиана. Теперь ячейка даёт одно значение независимо от того, сколько раз её посетили.

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

Ответ

Потому что облако точек — самый честный вид: видны реальные измерения и места, где их нет. Никакой обработки, которая могла бы что-то исказить или додумать.

Уровень B (14–15 лет)

B1. Объясните, почему изолиния, проведённая через здание, является артефактом метода.

Ответ

Интерполяция плавно соединяет ближайшие измеренные точки, не зная о препятствиях. С одной стороны здания сигнал сильный, с другой — слабый. Алгоритм рисует плавный переход сквозь стену, хотя в действительности там резкий обрыв: стена глушит сигнал.

Линия на карте отражает работу алгоритма, а не физику распространения.

B2. Три уровня визуализации: назовите плюс и минус каждого.

Ответ
УровеньПлюсМинус
Облако точекмаксимально честно, видны дырынечитаемо при большом числе точек
Сетка с медианойчитаемо, плотность не влияеттеряются детали внутри ячейки
Интерполяциянаглядно, «как у взрослых»выдумывает значения между измерениями

B3. Все цифры в отчёте правдивы, а вывод ложный. Как такое возможно?

Ответ

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

Поэтому проверять надо не только цифры, но и то, что именно кодирует картинка.

Уровень C (15–16 лет)

C1. Что важнее на защите проекта: красивая карта или умение назвать её ограничения?

Разбор

Умение назвать ограничения — и это не риторика, а практическое требование.

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

Первый вопрос жюри почти всегда: «а насколько этому можно верить?» Ответ «интерполяция между измерениями выдумана, реальные точки вот здесь, а изолинии сквозь здания — артефакт» демонстрирует владение материалом.

Ответ «карта показывает покрытие» — не демонстрирует ничего.

Это прямое требование рубрики Б (документ 2 экспертизы), критерий «Границы и ограничения», обязательный для конкурсного уровня.

C2. Предложите способ показать на карте, где данные измерены, а где интерполированы.

Разбор

Возможные решения:

  1. Наложить точки измерений поверх интерполированного поля — зритель видит и результат, и его основу;
  2. Прозрачность по удалённости от измерений: чем дальше от реальной точки, тем бледнее заливка;
  3. Маска достоверности: области дальше некоторого радиуса от измерений вообще не закрашивать;
  4. Отдельная карта плотности измерений рядом с картой поля.

Лучшее решение — комбинация 1 и 3: поле показывается только там, где есть данные поблизости, а сами точки видны поверх.

Это прямое применение первого принципа честной визуализации: показывать сырьё и обработку вместе.

C3. Постройте перечень ограничений вашей карты покрытия для защиты проекта.

Ориентир для педагога

Сильный перечень включает:

  1. Карта отражает состояние на момент измерения: транспорт, листва, погода меняют картину;
  2. Измерения сделаны на высоте около 1,5 м — на другой высоте картина иная;
  3. Тень собственного тела вносит систематическую погрешность (компенсируется проходом в обе стороны);
  4. Точки за пределами маршрута отсутствуют — белое поле означает «не измеряли», а не «нет связи»;
  5. Дыры покрытия зафиксированы с точностью до шага выборки (2,8 м);
  6. Интерполяция между точками выдумана и не учитывает препятствия;
  7. RSSI измеряется с погрешностью ±2–3 дБ; сравнивать значения, отличающиеся на 2 дБ, бессмысленно;
  8. Выше примерно −50 дБм начинается компрессия: вблизи маячка цифры перестают расти.

Критерий качества: пункты, которые невозможно назвать, не поработав с системой.


Блок 5. Итог модуля и курса (42–45 мин)

Что дал модуль WarWalk

«Вы превратили невидимое радиополе в карту, которую можно потрогать ногами. На этой карте по очереди проступили темы четырёх дисциплин:

ДисциплинаЧто проявилось
Физикадецибельная арифметика, затухание, дифракция
Математикалог-дистанционная модель, аппроксимация
Статистикамедиана, цензура, выборка
Информатикапротокол, конвейер данных, визуализация

Главный результат

Разница между предсказанием модели и картой из поля — не ошибка, а самый ценный результат проекта. Симулятор показал, откуда возьмутся тени и дыры; реальная прогулка добавила то, чего модели не знали: отражения, волновод улицы, шум города.

Умение назвать эту разницу вслух дороже любой красивой картинки.


Ответы на вопросы, которые прозвучат

Вопрос ученикаКак отвечать
«Значит, тепловые карты вообще нельзя использовать?»Можно — если строить их по агрегированным данным и понимать, что кодирует цвет. Опасна не карта, а её бездумное применение
«Как проверить чужую тепловую карту?»Спросить: что кодирует цвет — значения или плотность? Где реальные точки измерений? Есть ли места, где не измеряли?
«Зачем тогда интерполяция, если она выдумывает?»Она полезна для наглядного представления и оценки тенденций. Проблема не в ней, а в подаче результата как измеренного
«А профессионалы делают такие ошибки?»Регулярно. Ловушка heatmap по плотности — одна из самых распространённых в дата-журналистике и корпоративной аналитике
«Что показать на защите — все три уровня?»Уровень 1 как доказательство честности, уровень 2 как основной результат, уровень 3 — при желании, с оговоркой

Раздаточный лист (для печати)

Урок 7. Ловушка тепловых карт

Демонстрация:

Способ построенияЧто показала карта в месте стоянки
По сырым точкам
По сетке с медианой

Реальный сигнал в этом месте был: ____________

Что на самом деле кодирует обычная heatmap? ________________

Три уровня визуализации:

УровеньЧто этоПлюсМинусКогда применять
1. Облако точек
2. Сетка с медианой
3. Интерполяция

Почему изолиния сквозь здание — артефакт?

_________________________________________________

Приёмы, искажающие без единой ложной цифры:

ПриёмКак проверить
Heatmap по плотности
Обрезанная ось
Выбранный период
Отсутствие дыр

ОГРАНИЧЕНИЯ НАШЕЙ КАРТЫ (для защиты, не менее пяти):

  1. ________________________________________
  2. ________________________________________
  3. ________________________________________
  4. ________________________________________
  5. ________________________________________

Что важнее на защите — красивая карта или названные ограничения?

________________________________________________


Домашнее задание

Обязательная часть

Врайтап по рубрике А, итоговый за модуль. Обязательный пункт: опишите ловушку heatmap своими словами и способ её обхода.

Уровень A

Найти в интернете тепловую карту (пробки, погода, статистика) и определить, что кодирует цвет: значения или плотность.

Уровень B

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

Уровень C

Составить раздел «ограничения» для защиты проекта: не менее семи пунктов, каждый с объяснением механизма возникновения.


Итог урока: что записать в журнал

Вывод урока 7 и модуля

  1. Обычная тепловая карта кодирует плотность точек, а не их значения: где топтались — там «горячо».
  2. Лечение — строить по сетке с медианой: число посещений перестаёт влиять на цвет.
  3. Три уровня визуализации: облако точек (честно) → сетка (читаемо) → интерполяция (наглядно, но выдумывает).
  4. Изолиния сквозь здание — артефакт метода: алгоритм не знает о стенах.
  5. Визуализация может исказить вывод без единой ложной цифры.
  6. На защите умение назвать ограничения карты дороже самой карты.
  7. Разница между моделью и полем — не ошибка, а главный результат проекта.

Связь с курсом

Что родилось на этом урокеГде станет инструментом
Артефакты визуализацииВсе защиты и конкурсные работы
Три уровня представленияОформление результатов исследования
«Назвать ограничения»Рубрика Б, критерий обязателен для конкурса
Модель против измеренияВся исследовательская деятельность

Чек-лист педагога перед уроком

  • Подготовлен учебный лог с «топтанием на месте» в зоне слабого сигнала
  • Проверено: heatmap по сырым точкам даёт фальшивое пятно, по сетке — не даёт
  • Готов пример интерполяции с изолинией через здание (или его описание)
  • Раздаточный лист распечатан
  • Заложено время на составление перечня ограничений — это выход на защиту проекта