
Я исследую искусственный интеллект и получаю довольно много писем, где меня спрашивают, насколько важно знание математики для работы с ИИ.
Не буду врать: ИИ – это много математики.
И это одна из причин, почему многие новички в сфере ИИ отсеиваются на ранних стадиях. В этой статье я расскажу, что именно из математики вам понадобится. Я составил ее, исследовав эту тему самостоятельно и пообщавшись с ветеранами отрасли.
Концепции, о которых пойдет речь, обычно изучаются в течение нескольких семестров в колледже. Я же свел их к основным принципам, на которых можно сфокусироваться.
Это руководство – настоящий спасательный круг для новичков: вы узнаете, какие именно темы важнее всего, и сможете их изучить. Но еще большую ценность статья представляет для практикующих разработчиков вроде меня самого – для тех, кому нужно просто по-быстрому повторить эти концепции.
Примечание. Чтобы получить первую работу в сфере ИИ, вам не обязательно знать все изложенные здесь концепции. Все, что для этого нужно, – крепкое знание основ. Сфокусируйтесь на основах, а затем наращивайте новые знания.
Примечание редакции Techrocks: по всем темам автор дает ссылки на обучающие материалы на английском языке.
1. Алгебра
Знание алгебры, пожалуй, основа математических знаний в целом. Помимо математических операций типа сложения, вычитания, умножения и деления, вам нужно знать следующие темы:
2. Линейная алгебра
Линейная алгебра – основной инструмент математических вычислений в сфере ИИ и во многих других сферах науки и инженерии. В этом разделе вам нужно разобраться в четырех основных математических объектах и их свойствах:
- скаляр – одиночное число (действительное или натуральное)
- вектор – список чисел, расставленных по порядку. Их можно представить как точки в пространстве, где каждый элемент представляет координаты вдоль оси
- матрица – двумерный массив чисел, где каждое число идентифицируется двумя индексами
- тензоры – N-мерный массив (N>2) чисел, выстроенных в обычной сетке с N-осями. Тензоры важны в машинном обучении, глубоком обучении и компьютерном зрении.
- собственный вектор и собственное значение – особые векторы и соответствующие им скалярные величины. Важно понимать их смысл и уметь их находить
- сингулярное разложение – разложение матрицы на три матрицы. Разберитесь в свойствах и применении
- метод главных компонент – важно понять суть, знать свойства и применение.
Также будет полезно знать такие свойства, как скалярное произведение, векторное произведение и произведение Адамара.
3. Анализ
Анализ связан с изменениями в параметрах, функциями, ошибками и приближениями. Без рабочих знаний многомерного анализа в сфере ИИ не обойтись.
Наиболее важные концепции в области анализа (список не исчерпывающий):
- производные – правила (сложение, умножение, цепное правило и т.д.), гиперболические производные (гиперболический тангенс, косинус и т. д.), частные производные
- векторное/матричное исчисление – дифференциальные операторы производных
- градиентные алгоритмы – локальный/глобальный максимум и минимум, седловые точки, выпуклые функции, батчи и мини-батчи, стохастический градиентный спуск и сравнение производительности.
От редакции Techrocks. Также рекомендуем статьи:
- “Нужны ли программисту математика, английский язык, теория алгоритмов и паттерны проектирования?”
- “Математика: от ненависти к любви”.
4. Статистика и вероятность
Изучение этих тем, скорее всего, займет много времени. Хорошие новости: эти концепции не сложные, так что вы наверняка их освоите.
- базовая статистика – среднее значение, медиана, мода, дисперсия, ковариация и т. д.
- основные правила вероятности – события (зависимые и независимые), выборочные пространства, условная вероятность
- случайные величины – непрерывные и дискретные, математическое ожидание, дисперсия, распределения (совместные и условные).
- теорема Байеса – вычисление обоснованности убеждений. Байесовское программное обеспечение помогает машинам распознавать закономерности и принимать решения
- метод максимального правдоподобия (MLE) – оценка параметров. Требуется знание фундаментальных концепций вероятности (совместная вероятность и независимость событий).
- основные распределения – биномиальное, пуассоновское, бернуллиевское, гауссовское, экспоненциальное.
5. Теория информации
Это важная область знаний, имеющая большое значение в ИИ и глубоком обучении. Несмотря на важность, не так много специалистов ее изучают. Можно сказать, что это слияние анализа, статистики и вероятности. Здесь сосредоточьтесь на следующих темах:
- энтропия (также энтропия Шеннона). Используется для измерения неопределенности в эксперименте
- перекрестная энтропия – сравнивает два распределения вероятности и говорит, насколько они похожи
- расстояние Кульбака – Лейблера – еще одна мера того, насколько схожи два распределения вероятности
- алгоритм Витерби – широко используется в обработке естественного языка (NLP) и речи
- Encoder-Decoder – используется в машинном переводе с использованием RNN и других моделях.
Математика – это интересно!
Если вас пугает одно лишь упоминание слова “математика”, работа в сфере искусственного интеллекта вам, вероятно, не понравится.
Но если вы готовы посвятить время изучению принципов анализа, линейной алгебры, статистики и вероятности, ничто – даже математика – не помешает вам заняться ИИ.
PS: Математика и правда интересная. По мере изучения и углубления в математические концепции вы увидите их красоту и то, как они влияют на все вокруг.
Совет: изучайте математические концепции по мере знакомства с ними. Видите новый термин – открывайте справочник и смотрите, что это такое.
Перевод статьи «All the Math You Need to Know in Artificial Intelligence».
[customscript]techrocks_custom_after_post_html[/customscript]
[customscript]techrocks_custom_script[/customscript]