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

1. Функции

Математические функции по существу отображают входные данные в выходные.

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

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

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

Итак, скажем, ось X, которая будет функцией, а затем ось Y, которая будет меткой, и взаимодействие между тем, как эти функции связаны с метками, может быть простым, как прямая линия, или это может быть что-то более сложное, или что-то среднее, что может быть непрерывным или прерывистым.

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

2. Матричные операции

Чтобы продемонстрировать важность матриц и матричных операций, давайте рассмотрим пример с машинным обучением.

Итак, у меня есть модель здесь, в центре, которую я просто назову моделью «Много задержек», и эта модель поможет нам предсказать, будет ли рейс задержан… очевидно!

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

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

Данные обучения для этих функций и этой метки могут быть сохранены в матрицах, таких как матрица какого-нибудь рейса Delta две недели назад, где 57% прошлых рейсов были задержаны, а днем ​​вылета была суббота, которая была выходным днем, и, конечно же, отложенный!

Аналогично, для другого рейса American Airlines с 31% прошлых задержек рейсов и днем ​​вылета понедельник — рабочий день, и он не был задержан!

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

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

3. Случайные величины

Теперь мысль о введении здесь случайных величин звучит немного… случайно! Не каламбур.

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

Итак, давайте рассмотрим это понятие конкретно. Случайные величины — это, по сути, функции с входом и выходом. Входные данные — это некоторый результат происходящего события, а выходные данные — количественная оценка этого результата.

Допустим, нас интересует конкретный рейс Delta, DL9471. Мы определим несколько случайных величин, W1, X1 и Y1.

W1 представляет собой процент прошлых задержек рейсов, X1 указывает, вылетел ли рейс Delta в праздничный день или нет, а Y1 представляет, был ли рейс Delta задержан.

Допустим, W1 выдает результат 0,57, X1 выдает результат 1, а Y1 выдает результат 1. Эти числа можно использовать для обучения модели, где они закодированы как функции и метки. Мы также можем использовать функции распределения вероятностей, чтобы лучше понять поведение задержек рейсов, праздников и задержек в целом.

4. Функции распределения вероятностей.

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

Теперь давайте посмотрим на несколько примеров, основанных на тематическом исследовании, которое мы видели и обсуждали до сих пор, но я собираюсь начать с X1, потому что это довольно просто и глупо!

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

И давайте просто предположим, что многие рейсы действительно вылетают в праздничные дни, поэтому, скажем, это немного большая полоса, и вы увидите что-то вроде 0,6, тогда как те рейсы, которые не вылетают в праздничные дни, — это 0,4.

Теперь аналогичным образом давайте сделаем то же самое для Y1, где опять же, поскольку он будет представлять, задержан ли рейс, он имеет два значения, то есть [0 = не задержан] и [1 = задержан].

И допустим, что большинство рейсов не задерживаются, так что это будет около 0,91, а другое будет 0,09.

Теперь давайте перейдем к случайной величине W1, которая немного интереснее, поскольку принимает значения от 0 до 1. Например, в наших примерах мы использовали 0,57 для 57% задержек рейсов, но это могло быть и 56,3287. % задержек рейсов или любое произвольное число между ними, и поскольку оно может принимать почти бесконечное число значений, которые можно измерить в этом диапазоне, мы называем W1 непрерывной случайной величиной.

Когда мы рисуем это на графике, мы не можем просто рисовать столбцы вот так; это просто не имеет смысла, и поэтому получится что-то вроде плавной кривой, и допустим, что распределение будет выглядеть примерно так: это как американские горки вероятностей!

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

Сейчас это вроде 9%. Технически дистрибутив сам по себе является ярлыком, поэтому модель не знает этого и должна учиться самостоятельно. Когда он узнает распределение, максимально близкое к этому, он может начать делать прогнозы самостоятельно.

5. Вероятность

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

Возьмем простой пример: нарисуем двухмерную линейную регрессию, где ось x — это некоторая функция, а ось y — некоторая метка интереса.

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

Теперь предположим, что у нас есть еще одна модель, похожая на синюю, а затем у нас есть третья модель, похожая на зеленую. Как определить, что лучше других?

Это именно то, что вероятность будет количественно.

Например, возьмем красную модель и скажем, что вероятность имеет некоторое значение 0,81. Теперь давайте запишем вероятность для зеленой модели, и она будет равна 3,28. И третья модель будет 0,19. Так что из этого имеет более высокую вероятность? Это лучше соответствует данным, и в этом случае, поскольку эта зеленая модель имеет самое высокое значение правдоподобия, она лучше всего соответствует данным.

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

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

6. Расчет

Исчисление, веселая концепция математики!

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

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

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

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

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

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

Итак, давайте приступим к работе и посмотрим, насколько интересной мы можем сделать нашу модель!

Заключение

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

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

Так что, если вы хотите продвинуться вперед, освежите свои математические знания!