Тепловые карты вовлечённости и аналитика внимания

Автор: Николай СапуновОбновлено: август 202618 мин чтения
Содержание статьи +

Это инженерные рекомендации, а не юридическая консультация. Уточняйте детали у квалифицированного юриста.

Коротко

Показатель завершения сообщает, что учащийся дошёл до конца видео, а тепловая карта вовлечённости показывает, что он на самом деле смотрел, пропускал и пересматривал, с точностью до секунды. Часто это совсем разные картины. Дешёвый и бережный к приватности способ построить такую карту – агрегировать по всей когорте фрагменты, которые учащиеся проиграли (данные played-segments, уже стандартизованные в xAPI Video Profile). Тогда одна цветная полоса покажет пропущенное вступление, обрыв оттока и горячую зону повторов, которые прячет значок «100% пройдено». Аналитика внимания идёт дальше и пытается понять, был ли учащийся вообще у экрана. Здесь два пути: поведенческие косвенные признаки (потерял ли плеер фокус?) и биометрическое наблюдение (куда, судя по вебкамере, смотрят глаза?). Второй путь – это обработка изображения лица, которая быстро становится биометрией по ст. 11 152-ФЗ со всеми последствиями: письменное согласие, правила 572-ФЗ (Единая биометрическая система и аккредитация) и запрет отказывать в обучении тому, кто от камеры отказался. В статье – как читать тепловую карту, как построить её на стандартах и где проходит граница приватности, которую нужно знать до того, как направлять камеру на учащегося.

Почему это важно

Если вы делаете или развиваете обучающий продукт, ваш дашборд, скорее всего, показывает завершение и среднее время просмотра. Оба показателя могут выглядеть отлично, пока треть каждого урока никто не смотрит. Тепловая карта – самый дешёвый способ это увидеть, и она влияет на решения по монтажу и продукту, которые иначе принимались бы вслепую. Аналитика внимания – соседняя область, более заманчивая и более опасная. Как только вендор предлагает определять «внимательность» учащихся по камере, вы попадаете в режим биометрических персональных данных, где утечка обходится юрлицу в 15–20 млн ₽, а повторная – в 1–3% выручки. Статья написана для директора по обучению, продакт-менеджера или основателя, которому нужна диагностическая сила тепловой карты без претензий Роскомнадзора. Прочитайте её до выбора вендора аналитики и до первой строки кода трекинга внимания.

Что тепловая карта показывает, а число завершения скрывает

Начнём с разрыва, ради которого написана статья. Флаг завершения – один бит: дошёл до конца или нет. Среднее время просмотра – одно число: средняя доля проигранного видео. Оба показателя – сводки, и, как любые сводки, они скрывают, как именно шёл просмотр. Тепловая карта вовлечённости восстанавливает эту картину. Это цветная полоса вдоль шкалы времени видео, где каждый отрезок окрашен в зависимости от того, сколько учащихся его проиграли и сколько раз. Её можно сравнить со следами на снегу: где прошла толпа, тропа протоптана до темноты, где никто не ходил, снег нетронут.

Вся идея – в цветовой шкале, поэтому опишем её просто. Удобная схема идёт от бледного к тёплым цветам: бледный – отрезок, который не проигрывали; зелёный – проиграли примерно один раз; жёлтый – около двух раз; оранжевый и красный – фрагменты, которые учащиеся перематывали и смотрели снова и снова. Чем бледнее, тем ниже вовлечённость; чем горячее, тем больше повторов. Одна такая полоса показывает три вещи, которые число завершения показать в принципе не может.

Первая – пропущенное вступление. Если первые сорок пять секунд бледные, а дальше всё зелёное, учащиеся проматывают заставку и «в этом уроке мы…». Завершение всё равно покажет 100%, потому что до конца они дошли, а карта покажет, что начали они с сорок пятой секунды.

Вторая – обрыв оттока: точка, где цвет резко падает, скажем с зелёного на белый на шестой минуте десятиминутного видео. Среднее время просмотра может показать вполне приличные 70%, но карта говорит, где находятся недостающие 30%: они не размазаны равномерно, а сосредоточены в одном месте, на котором все остановились.

Третья и самая ценная для обучения – горячая зона повторов: оранжевый или красный участок, к которому учащиеся возвращались. В учебном контенте она важна своей двусмысленностью: этот фрагмент либо самый важный в уроке, либо самый запутанный [1][2]. Карта его отмечает, а что именно перед вами, вы решаете, сопоставив с результатами теста (к этому мы ещё вернёмся).

Рисунок 1. Что карта показывает, а завершение скрывает. Урок, по которому отчёт сообщает «100% пройдено», на карте показывает пропущенное вступление, обрыв оттока на шестой минуте и горячую зону повторов – три решения по монтажу, которых не видно в одном числе.

Покажем разницу на небольшом расчёте. Пусть 200 учащимся назначен 10-минутный (600-секундный) урок, и платформа сообщает 100% завершения у всех. Теперь посмотрим на карту, построенную по тому, что они на самом деле проиграли. Секунды 0–45 – в среднем 0,3 проигрывания на учащегося (большинство проматывает вступление). Секунды 45–360 – в среднем 1,0 (посмотрели один раз). Секунды 360–600 – лишь 0,5 (половина когорты ушла после шестой минуты). Реальная средняя доля просмотренного – примерно (0,3 × 45 + 1,0 × 315 + 0,5 × 240) ÷ 600 = (13,5 + 315 + 120) ÷ 600 ≈ 0,75, то есть 75%, а не 100%, как следует из флага. Разрыв в 25 пунктов (100 − 75 = 25) – это ровно тот контент, на который может указать карта, но не значок.

Две карты: выглядят одинаково, значат противоположное

Это развилка, от которой зависит вся ваша позиция по приватности, поэтому пройдите её осознанно. Одну и ту же цветную полосу можно построить двумя способами, и они не взаимозаменяемы.

Карта когорты собирает многих учащихся в одну полосу для одного видео. Она отвечает на вопрос о контенте: какие фрагменты аудитория пропускает, бросает, пересматривает? Личность учащегося для неё не нужна вовсе: вы суммируете анонимные счётчики проигрываний. Это безопасный и полезный вариант по умолчанию, с него и стоит начинать.

Индивидуальная карта показывает проигрывания одного конкретного учащегося на одном видео. Она отвечает на вопрос о человеке: посмотрела ли Мария инструктаж по безопасности и какие части пересматривала? Такие данные гораздо чувствительнее: это поведенческие данные, привязанные к идентифицируемому человеку, то есть персональные данные учащегося по 152-ФЗ; если учащийся несовершеннолетний, согласие на их обработку дают законные представители [14]. У индивидуальных карт есть законные применения (учащийся смотрит собственную историю; аудит того, что конкретный сотрудник прошёл обязательное обучение), но для каждого нужны правовое основание, уведомление учащихся и срок хранения. По умолчанию – карта когорты; индивидуальную собирайте только под конкретную, заранее названную цель.

Как строится тепловая карта

Формат карты изобретать не нужно: вы агрегируете данные, которые плеер уже отправляет. Самый удобный источник – xAPI Video Profile, стандарт сообщества версии 1.0, который описывает, как видеоплеер передаёт данные в Learning Record Store (LRS – база, где утверждения xAPI хранятся как фразы вроде «Мария проиграла видео 42») [3]. Нам важнее всего расширение played-segments: компактная запись того, какие диапазоны времени учащийся действительно проиграл за сессию, в виде 0.000[.]45.300[,]60.000[.]591.200, то есть «проиграл 0–45,3 с, затем 60–591,2 с» [3].

Агрегация механическая, поэтому хорошо масштабируется. Каждая сессия просмотра завершается утверждением terminated с итоговым значением played-segments для этой сессии. Чтобы построить карту когорты, слой аналитики берёт played-segments из каждой подходящей сессии, накладывает их на одну ось от 0 до длительности видео и считает, сколько сессий покрыли каждую секунду [3]. Секунды, покрытые многими сессиями, – горячие, немногими – холодные. Этот массив «просмотров на секунду» и есть тепловая карта, а цвета – лишь способ его нарисовать.

Вот одно из утверждений, из которых он складывается: учащийся ставит паузу на середине, и в утверждении – проигранные к этому моменту сегменты:

{
  "actor": { "account": { "homePage": "https://lms.example.org", "name": "u-48213" } },
  "verb": { "id": "https://w3id.org/xapi/video/verbs/paused",
            "display": { "ru-RU": "поставил на паузу" } },
  "object": { "id": "https://courses.example.org/video/42" },
  "result": {
    "extensions": {
      "https://w3id.org/xapi/video/extensions/played-segments": "0.000[.]45.300[,]60.000[.]188.900"
    }
  },
  "context": { "registration": "f1e2d3c4-0000-4a5b-8c9d-000000000001" }
}

Две практические детали. Утверждения с одинаковым registration относятся к одной попытке просмотра, поэтому LRS может склеить паузы и возобновления учащегося в одну запись о покрытии ещё до агрегации [3]. И открытые стандарты – не единственный путь. IMS Caliper Analytics (версия 1.2, 1EdTech) описывает управление видео как именованные media events и может давать те же посекундные счётчики [4]. Хостинговая видеоплатформа отдаст агрегатную статистику вообще без кода: Kinescope, например, считает время и «глубину» просмотра и выгружает их через REST API [6]. Но посекундной карты, привязанной к учащемуся и его тестам, так не получить, а данные и их схема останутся у платформы. Полный дизайн слоя трекинга от плеера до LRS разобран в статье Трекинг видео через xAPI: Video Profile и что отслеживать; здесь нам нужен лишь результат – число просмотров каждой секунды.

Рисунок 2. От плеера к карте. Каждая сессия отправляет свои played-segments; LRS накладывает все подходящие сессии на одну шкалу и считает проигрывания каждой секунды, а массив счётчиков превращается в цветную полосу.

Аналитика внимания: проиграно ещё не значит просмотрено

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

Первый способ – поведенческие прокси-метрики, то есть косвенные признаки внимания, и он бережен к приватности. Внимание выводят из сигналов, которые браузер и так отдаёт, без всякой камеры. Самый полезный из них – Page Visibility API, стандартная функция веб-платформы: когда учащийся переключает вкладку или сворачивает окно, браузер генерирует событие visibilitychange и устанавливает document.visibilityState в "hidden" [5]. Это чистый и честный сигнал того, что видео ушло с переднего плана. Хороший плеер в этот момент ещё и ставит воспроизведение на паузу: так сохраняется место, где учащийся остановился, и вы не засчитываете время просмотра вкладке, на которую никто не смотрит. Другие сигналы того же рода: попал ли плеер в видимую область экрана, сколько прошло с последнего действия (отслеживание простоя), ритм пауз, перемоток и заметок, разобранный в статье Частота взаимодействий и сигналы активного обучения. Периодический вопрос «вы ещё смотрите?» – самый прямой из этих сигналов, и он честен именно потому, что учащийся о нём знает.

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

// Бережный к приватности сигнал внимания: без камеры, только фокус вкладки.
let hiddenSince = null;
document.addEventListener("visibilitychange", () => {
  if (document.visibilityState === "hidden") {
    hiddenSince = Date.now();
    videoPlayer.pause();              // пауза, когда вкладка ушла в фон
  } else if (hiddenSince) {
    const awaySeconds = (Date.now() - hiddenSince) / 1000;
    track("attention_lapse", { awaySeconds }); // записываем перерыв, а не лицо
  }
});

Второй способ – физиологический и биометрический: вебкамера следит за лицом и глазами учащегося, чтобы определить направление взгляда, присутствие или эмоциональное состояние. Исследования показывают, что отслеживание взгляда через вебкамеру позволяет оценить, куда на экране направлено внимание, а вендоры продают на этой основе баллы «вовлечённости» или «настроения» [8][9]. Такая возможность реальна. Но она требует собирать самые чувствительные данные, к которым может прикоснуться обучающий продукт, и, как показывает следующий раздел, юридически обходится так дорого, что редко окупается, какой бы хорошей ни была модель.

Граница приватности, которую нельзя переходить

Большинство руководств по «аналитике вовлечённости» эту часть пропускают, а именно она определит вашу разработку. Данные о внимании лежат на шкале от явно допустимого до того, к чему лучше вообще не подходить, и границы на этой шкале задают три группы норм.

Лицо в камере, по которому узнают человека, – это биометрия. 152-ФЗ относит к биометрическим персональным данным сведения о физиологических и биологических особенностях человека, которые оператор использует для установления личности, и разрешает обрабатывать их только с письменного согласия субъекта [7]. Аналитика внимания по вебкамере почти неизбежно попадает в эту категорию: чтобы утверждать, что внимателен именно этот учащийся, система сопоставляет лицо в кадре с человеком. Дальше действует 572-ФЗ: с 01.06.2023 биометрия обрабатывается через Единую биометрическую систему (ЕБС), обработка вне её базы запрещена, а собирать биометрию могут только аккредитованные компании [10]. За работу без аккредитации грозит штраф до 2 млн ₽, за обработку без письменного согласия – 300–700 тыс. ₽ [11], за утечку биометрии – 15–20 млн ₽, за повторную – 1–3% выручки, а за незаконные получение или распространение биометрии и ПДн несовершеннолетних ст. 272.1 УК предусматривает до 5 лет лишения свободы [18]. Если личность действительно нужно подтвердить (на аттестации в вузе, колледже или в ДПО), легальный путь уже есть: идентификация через ЕСИА и ЕБС по правилам ПП 1678, в том числе силами сервиса прокторинга [13]. Собственная модель распознавания лиц в обход ЕБС – зона правового риска.

Биометрия добровольна, значит, нужен равноценный путь без камеры. Предоставление биометрических данных не может быть обязательным, и оператор не вправе отказать в обслуживании тому, кто их не дал [7]; с 30.05.2025 за такой отказ грозит штраф 200–500 тыс. ₽ по ч. 8 ст. 14.8 КоАП [11]. Для продукта это значит: курс должен проходиться целиком без камеры, а камера может быть только опцией. Выводы, которые модель делает по лицу («устал», «растерян», «скучает»), добавляют второй слой риска: оценка состояния человека может оказаться сведениями о здоровье, а это специальная категория ПДн с отдельными основаниями обработки [16]. Исследования показывают, что оценивать внимание по вебкамере технически возможно [8][9], но из этого не следует, что балл «вовлечённости» по лицу предсказывает обучение лучше, чем ответы на вопросы. Функция, которая оценивает «вовлечённость» учащихся по лицам, – красная зона; не проектируйте в эту сторону. И не забывайте про фон: камера в комнате учащегося снимает домашних, обстановку и документы на столе, то есть персональные данные людей, которые вам ничего не разрешали.

Данные о вовлечённости – персональные данные учащегося. Даже без камеры индивидуальная тепловая карта и журнал «потерь фокуса» – это ПДн по 152-ФЗ. Если обработка опирается на согласие, с 01.09.2025 его оформляют отдельно от других документов, а за несовершеннолетнего его дают законные представители [14]. Хранить такие данные можно только в российских базах: операции с ПДн граждан РФ с использованием баз данных за рубежом не допускаются [15], так что зарубежный SaaS аналитики или LRS не подходит. Объём данных должен соответствовать заявленным целям, а хранить их можно не дольше, чем этого требуют цели [17]. Если данные обрабатывает подрядчик (например, ваша SaaS-платформа для школы или работодателя), нужно поручение оператора с перечнем данных, действий, целей и требований к защите [19]. Утечка обычных ПДн обходится юрлицу от 3 млн ₽, повторная – оборотным штрафом [18].

Если сложить всё вместе, бережный к приватности путь становится очевидным, и к тому же он дешевле в разработке. Предпочитайте карту когорты индивидуальной. Предпочитайте поведенческие сигналы (фокус вкладки, простой, ритм взаимодействий) биометрии. Если у вас есть веская причина идентифицировать людей, получите правовое основание, ясно сообщите о нём, храните минимум данных и задайте срок хранения. Подробнее о согласии, биометрии и данных прокторинга – в статьях Данные прокторинга, приватность и правовой ландшафт в России и Онлайн-прокторинг: подходы, компромиссы и приватность; для аналитики правило одно: по умолчанию оставаться в зелёной зоне.

Рисунок 3. Граница приватности. Карты когорт и поведенческие сигналы находятся в безопасной зоне; индивидуальный биометрический сбор – высокий риск (ст. 11 152-ФЗ, 572-ФЗ), а ИИ-оценку эмоций по лицу учащегося лучше не проектировать вовсе.

Сравнение способов измерить внимание

Прежде чем обещать заказчику отчёт о «внимании», сопоставьте метод с тем, что он может доказать, и с тем, во что он обходится с точки зрения приватности и права. От метода зависят и сила выводов, и риск.

МетодЧто собираетСтандарт / APIРиск для приватности и правовой риск
Тепловая карта когортыКакие фрагменты когорта пропускает, бросает, повторяетxAPI Video Profile played-segments; CaliperНизкий – анонимно, агрегат [3][4]
Время просмотра на учащегосяСколько проиграл один человекxAPI Video Profile; SCORM session timeСредний – ПДн учащегося, 152-ФЗ [14][15]
Фокус вкладкиУшёл ли плеер с переднего планаPage Visibility API (visibilitychange)Низкий – без биометрии [5]
Простой / ритм взаимодействийБездействие и сигналы активного обученияГлаголы xAPI; события клиентаНизкий–средний – поведенческие данные [3]
Вопрос «вы ещё смотрите?»Подтверждённое присутствие в контрольной точкеУровень приложения, без стандартаНизкий – явно и с ведома учащегося
Взгляд с вебкамеры / eye-trackingКуда направлен взгляд, присутствие в кадреSDK вендора; сбор биометрииВысокий – биометрия: ст. 11 152-ФЗ, 572-ФЗ [7][10]
ИИ-оценка эмоций / «вовлечённости»Эмоциональное состояние, выведенное по лицуИИ-модель вендораКрасная зона – биометрия плюс выводы о состоянии, близкие к данным о здоровье [7][16]

Верхняя половина таблицы (карты когорт и поведенческие сигналы) даёт основную диагностическую ценность при низком риске и строится на открытых стандартах, которыми вы управляете сами. Нижняя половина даёт небольшой и спорный прирост информации по высокой и растущей юридической цене. Выбирая метод, вы выбираете риск; методы на стандартах и агрегатах – не компромисс, а просто хорошая инженерия.

Рисунок 4. Способы измерить внимание. Сравнение из таблицы в цвете риска: карта когорты и поведенческие сигналы – низкий риск, индивидуальные данные о просмотре – средний, взгляд с вебкамеры – высокий, а ИИ-оценку эмоций по лицу лучше не проектировать.

Как превратить карты и сигналы внимания в действия

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

Бледное пропущенное вступление нужно сократить: перенести суть урока в первые секунды и вырезать заставку. Обрыв оттока на определённой отметке – дефект контента: откройте видео на этом месте и найдите, что теряет людей, – затянутый фрагмент, трудное понятие, отсутствие главы. Часто решение – разбить урок на части, потому что у внимания есть известный потолок (о нём ниже); помогают и главы с поиском внутри видео, разобранные в статье Главы, транскрипты и поиск внутри видео. Горячая зона повторов двусмысленна, и разрешить её помогают результаты теста. Зона рядом с вопросом, на который большинство ответило верно, отмечает важный фрагмент, который стоит держать на виду; зона рядом с вопросом, на который большинство ответило неверно, отмечает путаницу, и фрагмент нужно перемонтировать [1][2]. Потери фокуса вкладки, собранные в одной точке, говорят, что контент перестал удерживать людей именно там. Этот сигнал сильнее одного времени просмотра, потому что ловит момент, когда учащийся отвлёкся.

У того, что отток и провалы внимания скапливаются в определённом месте, есть объяснение, подтверждённое исследованиями. В работе 2014 года на 6,9 млн видеосессий четырёх MOOC-курсов Guo, Kim и Rubin обнаружили, что медианное время вовлечённости выходит на плато около шести минут независимо от длины видео: дольше девяти минут учащиеся оставались редко, а из видео длиннее двенадцати минут смотрели меньше четверти [12]. Поэтому, когда карта показывает обрыв около шестой минуты, дело скорее не в плохом контенте, а в жёстком пределе внимания. Решение – разбить урок на более короткие части; принцип разбиения разобран в статье Педагогика видео: внимание и запоминание.

Рисунок 5. Почему обрывы случаются рано. Медианная вовлечённость выходит на плато около шести минут независимо от длины видео (Guo et al., 2014); холодный хвост длинного ролика – это предел внимания, а не дефект какой-то конкретной секунды.

Частые ошибки

Доверять завершению вместо карты. Значок «100%» может скрывать пропущенное вступление и брошенную последнюю треть. Смотрите на форму, а не только на флаг [3].

Считать горячую зону повторов заведомо хорошей. Горячая полоса означает повторы, а это либо важность, либо путаница. Прежде чем радоваться или перемонтировать, сверьтесь с результатами теста [1][2].

Собирать индивидуальные карты по умолчанию. Карта когорты отвечает на большинство вопросов о контенте без идентифицируемых данных. Собирайте данные о просмотрах по каждому учащемуся только под конкретную цель и с правовым основанием [14][17].

Покупать для образовательного продукта оценку «вовлечённости» или «эмоций» по вебкамере. Это обработка изображения лица, которая быстро становится биометрией с письменным согласием, ЕБС и аккредитацией [7][10], плюс выводы о состоянии, близкие к данным о здоровье [16]. А курс всё равно должен проходиться без камеры [7].

Путать «проиграно» и «просмотрено». Карта показывает воспроизведение, а беззвучная фоновая вкладка тоже воспроизводит. Прежде чем говорить о внимании, сопоставьте карту с данными о фокусе вкладки из Page Visibility API [5].

Хранить данные о внимании вечно. 152-ФЗ требует хранить ПДн не дольше, чем этого требуют цели обработки [17]. Решите, что и когда удаляете, ещё до начала сбора.

Где здесь Фора Софт

Фора Софт с 2005 года разрабатывает ПО для видеостриминга, real-time-связи на WebRTC и интерактивных плееров. В e-learning вопрос аналитики почти всегда сводится к тому, какие события собирать, и решать его нужно до появления дашборда. Выбор между «сделать» и «купить» обычно выглядит так. Хостинговая видеоплатформа сразу даёт агрегатную статистику просмотров, но данные остаются у неё, а детализация – на уровне ролика. Собственный плеер, отправляющий события xAPI Video Profile, позволяет владеть посекундными данными, связывать их с результатами тестов и, что важнее всего, осознанно выстраивать политику приватности, а не наследовать её у вендора. Мы помогаем командам строить слой аналитики на стандартах и по принципу «сначала агрегат»: он даёт диагностическую ценность тепловых карт и поведенческих сигналов внимания и при этом остаётся в рамках 152-ФЗ и 572-ФЗ – без биометрии, с данными в российском контуре. Тот же опыт в real-time-видео и интерактивных плеерах мы применяем в проектах видеоконференций, OTT, телемедицины и видеонаблюдения.

Ключевые выводы

  • Карта показывает пропущенные вступления, обрывы оттока и зоны повторов, которые скрывает значок завершения.
  • Стройте её, агрегируя xAPI played-segments по сессиям в посекундные счётчики.
  • По умолчанию – анонимная карта когорты; индивидуальная – только под конкретную цель.
  • Поведенческие сигналы (фокус вкладки, простой) измеряют внимание без камеры и биометрии.
  • Лицо с вебкамеры для идентификации – это биометрия: письменное согласие, 572-ФЗ, ЕБС и обязательный путь без камеры.
  • Горячую зону повторов проверяйте результатами теста: важность или путаница.

Что почитать дальше

Строите такую систему?

Подберём параметры кодирования под ваш контент и посчитаем стоимость доставки до старта разработки.