Журнал / польза

Математика в Data Science: что подтянуть и какие книги читать

Высшая математика не каждому даётся легко. Но если есть цель и понимание, зачем в неё погружаться, разобраться будет гораздо проще. Рассказываем, что именно стоит подтянуть тем, кто планирует развиваться в Data Science, и как это сделать. А помогают нам Станислав Федотов, руководитель образовательных программ в Яндексе, кандидат физико-математических наук, и Влад Пимкин, куратор в Школе анализа данных

Какие знания нужны дата-сайентисту и где их получить

Линейная алгебра

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

Книги для базового уровня:

— «Введение в алгебру» А. И. Кострикина — одна из лучших книг по высшей алгебре, включая линейную.

— «Сборник задач по алгебре под редакцией А. И. Кострикина».

— «Задачи по линейной алгебре и геометрии» С. В. Смирнова, А. А. Гайфуллина и А. В. Пенского.

В этом списке два задачника по линейной алгебре с мехмата МГУ. В первом много примеров не только по линейной алгебре, он идеально дополняет учебник Кострикина. Второй позволяет погрузиться в основы линейной алгебры через призму аналитической геометрии.

Теория и задачи для продвинутого уровня:

— Лекции и задачи — «Линейная алгебра и геометрия» А. Л. Городенцева. Лаконичный курс, который автор оттачивал десятилетиями. Он рассчитан на подготовленного в математике читателя.

— «Теоремы и задачи по линейной алгебре» В. В. Прасолова. Книга подойдёт тем, кто уже знаком с линейной алгеброй. В ней есть всё, чтобы освоить дисциплину до «глубины всех глубин». Теория изложена максимально сжато. Большинство примеров взято из математических олимпиад для студентов технических вузов. Ко всем задачам есть решения.

Теория вероятности и статистика

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

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

Книги для базового уровня:

— «Курс теории вероятностей и математической статистики» Б. А. Севастьянова.

— «Теория вероятностей» А. А. Боровкова.

—«Наглядная математическая статистика» М. Б. Лагутина — идеальное введение в статистику.

— «Сборник задач по теории вероятностей» А. М. Зубкова и Б. А. Севастьянова.

Книги для продвинутого уровня:

— «Вероятность» А. Н. Ширяева — отличный учебник, но не для знакомства с теорвером.

— «Задачи по теории вероятностей» — дополнение к учебнику Ширяева.

Математический анализ

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

Книги для базового уровня:

— «Курс дифференциального и интегрального исчисления» Г. М. Фихтенгольца — классический и максимально подробный учебник. Подходит для первого знакомства с анализом.

— «Сборник задач и упражнений по математическому анализу» Б. П. Демидовича — всемирно известный задачник, выдержавший десятки редакций.

Теория для продвинутого уровня: «Математический анализ» В. А. Зорича — книга для тех, кто обладает некоторым уровнем математической культуры.

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

Если дата-сайентист столкнётся в работе со случайными процессами, у него должна быть возможность почитать профильную книжку, чтобы разобраться. А для этого нужна теоретико-вероятностная база, умение оперировать формулами и не бояться их.

Станислав Федотов, руководитель образовательных программ в Яндексе

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

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

Как морально настроиться на погружение в математику

Не всем будет легко. Поэтому вот три совета, как не бояться на старте.

Разберитесь, нужна ли вам математика. Если в данный момент вы можете обойтись без неё в жизни и в работе, всё в порядке. Заставлять себя учиться — провальный вариант. Мозгу нужно объяснение, зачем мы тратим кучу времени и сил на какое-либо занятие.

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

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

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

Поймите, зачем вам учиться. И сформулируйте конкретные цели.

❌«Хочу погрузиться в математику, потому что она нужна в Data Science».

✅ «Хочу читать и понимать современные научные статьи по генеративным моделям».

Я окончил хорошую школу без математического уклона. Но когда пришёл в университет на механико-математический факультет, мне было больно, особенно потому, что рядом со мной учились ребята из матшкол. Они приходили на экзамен и на ходу придумывали доказательства теорем. На первом курсе я чувствовал себя довольно тупым. А дальше втянулся: решил много задач, выучил много теорем, увидел большое количество доказательств и разобрался, как придумывать новые. С опытом становится легче.

Станислав Федотов, руководитель образовательных программ в Яндексе

Что ещё даёт математика

Если вам нужна дополнительная мотивация, вот почему ещё полезно изучать математику.

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

Учит аргументировать. При решении математических задач нужно в том числе логически обосновывать выводы или объяснять, почему утверждение не доказано. Этот навык пригодится и в жизни: например, чтобы разговаривать с командой без эмоций, когда вы не согласны с какими-либо решениями.

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