Метрики сложности образовательных курсов

О проекте

«Сириус.Курсы» – это платформа онлайн-образования для школьников. На данный момент на ней доступно более 20 курсов по 6 областям знаний.

Курсы, которые реализуются на платформе, постоянно дорабатываются экспертами. Один из принципов, согласно которым модифицируются курсы, — поиск и изменение мест, которые могут вызывать у учеников сложности.

Чтобы помочь экспертам находить подобные места, необходимо разработать метрики для оценки сложности образовательных курсов.


Цель


Отсюда формируется цель нашего проекта - разработать набор метрик и создать отчет, с помощью которого можно находить сложные места в курсах. Но что мы имеем в виду под сложными местами?




Сложные места


Сложные места в курсах делятся на 2 типа:

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

Сложные по форме изложения. Как пример - задачи, для решения которых не хватает теоретического материала, в которых не понятна формулировка задания или в которых есть большое количество подзадач. И именно с этими сложными местами мы и работаем.


Система курсов


Стоит уделить внимание системе курсов.


Сам курс представлен в виде графа модулей. Изначально не все модули доступны ученику. Каждый модуль, кроме первого, открывается по завершению предыдущих ведущих к нему.


Модуль же состоит из элементов. Они делятся на теоретические и практические.


Теоретические:

  • Видео-лекция
  • Лекция

Практические:

  • Задачи
  • Задачи с повышенной сложностью


Этапы проекта
Разработка метрик сложности
  • создание метрик
  • поиск интересных результатов

Нашей команде были предоставлены данные о том, как ученики «Сириус.Курсов» решают каждую задачу. На основе информации в них нужно было сформировать гипотезы о поведении учеников и формализировать их в численную метрику.
Создание отчета
  • дизайн отчета
  • разработка отчета

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

Соединение обеих частей в цельное приложение
  • создание приложения, которое по данным о курсе вычисляет метрики и строит отчет по ним

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

Описание этапов

Разработка метрик сложности


В создании метрики есть свои 3 подэтапа:
  • создание гипотез о сложности
  • формализация поведения в виде метрик
  • оценка качества метрик


Создание гипотез о сложности


Для создания метрики первом делом нужно выдвинуть гипотезы о том, что в данных может отражать сложность у учеников. Так мы выдвинули 11 гипотез - 4 для курса, 3 для модуля и 4 для элемента.

Формализация поведения в виде метрик


Этот этап проходит по следующему порядку:
  1. Составляем формулу для гипотезы
  2. Переводим формулу в код
  3. Прогоняем данные через код
  4. Вычисляем метрику

Таким образом мы реализовали 11 метрик. 5 для элементов, 5 для модулей и 1 для курсов.

Корреляция метрик


После этого этапа мы решили посмотреть насколько наши метрики могут пересекаться между собой.

Данная таблица корреляции отражает информацию по метрикам модулей. Мы заметили, что есть несколько метрик, которые близки по предсказаниям между собой. Поэтому некоторые из метрик мы не включили в отчет.


Оценка качества метрик


Валидация метрик тоже проходила в несколько этапов:
  1. Разметка данных
  2. Прогон данные через код
  3. Вычисление метрик Точность и Полнота

На этапе разметки данных мы проходились по набору задач и отмечали какие сложности могут возникать у ученика, решая то или иное задание.

Точность и полнота


Это график значений метрики по элементам. Зеленые + желтые - задачи, которые размечены сложными. Красная линия - порог выбросов, то есть все, что левее нее, алгоритм обозначил сложным. мы видим, что 2 задачи наш алгоритм отгадал (желтые) и они попали в порог. Полнота обозначает какую часть из действительно сложных задач алгоритм смог найти. Но мы видим, что наш алгоритм обозначил еще 2 задачи сложными (оранжевые). Точность - какая часть из выбросов приходится на реально сложные задачи.

Таким образом мы прогнали данные о курсах по информатике и математике. Всего размеченных в них 534. Из них сложных - 26.

Тогда мы вычислили наши метрики и получили полноту равную 50%, а точность - 10%.

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

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

Создание отчета


В отчете первое, что мы видим, - название курса. Ниже следует таблица со сведениями об этом курсе и значения метрик по этому курсу.

Далее представлена таблица значений метрик по модулям. Они раскрашены по следующему принципу:

  • Красный - модуль сложный;
  • Желтый - модуль может быть сложным;
  • Зеленый - сложных мест нет.

Большую часть страницы занимает граф курса. Перед тем, как увидеть его раскраску, нужно выбрать метрику в отведенном для этого блоке. Раскрашивается граф по тому же принципу.


Выбирая какой-либо модуль нас переносит на блок с описанием элементов модуля.

Вверху мы видим название модуля и ссылку на него, сведения о модуле и таблицу с значениями метрик по этому модулю. Также рядом представлен "мини" граф курса, по которому тоже можно переходить на другие модули.

Далее представлена таблица значений метрик по элементам курса. Раскрашены они по тому же принципу.

Ниже представлен набор гистограмм по каждой метрике элементов.

А теперь посмотрим как он работает в реальности.

Приложение


Заключительная часть нашего проекта - создание приложения.

Работает оно по следующему принципу. На вход подаются данные о курсе и при нажатии одной магической кнопки генерирует отчет. Также стоит отметить, что система поддерживает легкое внедрение новой метрики в отчет.

Результаты

  1. Разработали метрики сложности
  2. Произвели оценку качества предложенных метрик
  3. Создали отчет по метрикам
  4. Создали приложение для генерации отчета по полученным данным

Наше приложение передано платформе «Сириус.Курсы». Мы надеемся, что в дальнейшем оно будет использоваться для нахождения сложных мест в курсах.

Контакты
Афанасьев Никита
Разработчик-исследователь
tg: @sbknnn
Бычков Илья
Аналитик-исследователь
tg: @chto_ya_cdelal
Герасимов Максим
Аналитик-исследователь
tg: @Cucu_LaPraline
Лаптев Сергей
Аналитик-исследователь
tg: @Cepuu2
Муравлева Арина
Аналитик-исследователь
tg: @amrvlv
Садовников Александр
Руководитель
tg: @alexkanerus
© Большие Вызовы, 2022