Перейти к содержанию

Линейная регрессия для больших данных (на весну 2025/26 тема занята)

Мотивировка

Линейная регрессия представляет собой классический метод анализа данных. Простота модели делает возможным её интерпретацию, что особенно востребовано в задачах, где нужно объяснить структуру данных и взаимодействие разных переменных (“признаков”). Например, линейную регрессию любят аналитические отделы банков. Оценка параметров линейной регрессии может быть осуществлена разными способами, в т.ч. алгоритмом градиентного спуска, каковой алгоритм (и/или его модификации) применяется повсеместно и вне контекста линейной регрессии.

Необходимую и достаточную теорию см. в этом документе.

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

  • выводить вычислительные формулы, фактически достраивая модель, а сами формулы записывать в виде, пригодном для эффективной реализации;
  • программировать итеративные оптимизационные процедуры;
  • в базовом виде “параллелить” вычисления;
  • в первом приближении анализировать поведение статистической модели;
  • а также усовершенствуете свои навыки программирования на R.

Задание

Оценить параметры линейной регрессии для большого набора данных, реализовав распараллеливание градиентного поиска с помощью языка R.

Баллы

2 курс – 50 баллов, 1 курс – 100 баллов (при реализации бонусных заданий).

В процессе работы по теме необходимо как минимум три раза созвониться с руководителем.

Необходимые навыки и подготовка

  • Знакомство с языком R.

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

Последовательность действий

Работаем в приватном репозитории на github.com, куда предварительно копируется базовый набор тиктов из этого репозитория: репозитории. Над тикетами работаете последовательно. Пишете код там же. Общаемся непосредственно в тикетах: вы просите что-нибудь объяснить, я, в случае чего, комментирую выкладки и прошу скорректировать реализацию. Работа продолжается, пока не закрыты все тикеты.

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

Удачи!

Руководитель

Зотиков Дмитрий