После наблюдения за людьми, стремящимися к разуму, Бог приказал: «Да будет математика», и лампочки зажглись.

Итак, я наткнулся на множество разговоров, в которых многие люди утверждали, что «я чувствую, что машинное обучение полностью абстрактно». Я хотел бы прояснить это, если вы понимаете, что это поле совсем не абстрактное по своей природе. это происхождение или основы, это так же просто, как решение простых арифметических задач, а основы начинаются с «ЧИСТАЯ МАТЕМАТИКА !!»

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

Так что же такое машинное обучение и как математика играет в этой области? Машинное обучение - это не что иное, как причудливое название для «обучения методом грубой силы». В этом случае модель обучается настраивать параметры, чтобы приблизиться к реальным значениям, и как математика играет роль? Что ж, каждое вычисление, которое мы делаем в машинном обучении на самом базовом уровне, мы имеем дело с вектором / матрицей или, в компьютерной терминологии, манипулированием тензорами или арифметикой.

Итак, в сегодняшней теме я познакомлю вас всех с векторной арифметикой. Итак, приступим ...

1. Определение векторов, матриц и тензоров.

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

  • Матрицы: Матрица - это двумерный массив чисел, упорядоченный по строкам и столбцам. Размер матрицы определяется длиной ее строк и столбцов. Итак, допустим, у нас есть матрица A, которая имеет m строк и n столбцов, ее можно представить как прямоугольный объект, имеющий m x n элементов.

  • Тензоры. Тензоры - это многомерный массив чисел. Фактически векторы и матрицы являются 1-мерными и 2-мерными тензорами. В машинном обучении или глубоком обучении тензоры в основном используются для хранения и обработки данных.

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

2. Точечное произведение двух векторов.

Скалярное произведение двух векторов является суммой Произведения соответствующих компонентов, то есть по одному и тому же измерению, и может быть выражено как:

где соответствующие векторы следующие.

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

Умножение между θ и x на самом деле является скалярным произведением.

3. Линейная независимость векторов.

Говорят, что вектор линейно зависит от других векторов, если он может быть выражен как линейная комбинация других векторов. т.е. v₃ = 7v₁ + 5v₂, то v₁, v₂, v₃ не являются линейно независимыми.

Набор векторов v₁, v₂, v₃,…, vₙ называется линейно независимым, если он может быть выражен как a₁v₁ + a₂v₂ + a₃v₃ +… + aₙvₙ = 0. ⇒ aᵢ = 0 ∀ i ∈ {1,2,3…}.

Если a₁v₁ + a₂v₂ +…. + Aₙvₙ = 0 и не все aᵢ = 0 ∀ i ∊ {1,2,3,…, n}, то векторы не являются линейно независимыми.

Хорошо, теперь хватит концепции линейной независимости. Но где мы его используем в машинном обучении?

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

4. Норма вектора.

Норма вектора - это мера его величины. Есть несколько видов таких норм. Наиболее известна евклидова норма, определяемая как норма , которая определяется следующим образом:

||x||₂ = √(|x₁|₂+|x₂|₂+…..+|xₙ|₂) = √(x.x) = √(xᵗx)

Точно так же норма - это сумма абсолютных значений компонентов:

||x||₁=|x₁|+|x₂|+…..+|xₙ|

Где теперь применить эту концепцию в машинном обучении? Давайте ненадолго перейдем к линейной регрессии, функция стоимости этой модели выглядит следующим образом

C(Ө) = ||e||₂² = || XӨ — Y||₂²

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

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

5. Псевдообратная матрица.

Предположим, у нас есть уравнение Ax = b, где A - это матрица ℝ размера n × n, а x - вектор ℝ размера n × 1, тогда b - вектор ℝ размера n × 1. Чтобы найти x, мы можем преобразовать уравнение x = A⁻¹b теперь, поскольку A - квадрат, следовательно, A⁻¹ с учетом того факта, что A не является сингулярной матрицей.

А что, если A - прямоугольная матрица размера m × n, где m ›n, то A⁻¹ не существует. Следовательно, предварительное решение вышеуказанного уравнения невозможно. Следовательно, чтобы решить приведенное выше уравнение, нам потребуется обходной путь, который будет задан следующим образом:

x = (AᵗA)⁻¹Aᵗb

Значение (AᵗA) ⁻¹Aᵗ называется псевдообратным к матрице A, поскольку оно действует как обратное к A, чтобы обеспечить оптимальное решение уравнения.

Где мы можем найти его применение в машинном обучении? Если мы увидим наименьшую квадратичную ошибку в линейной регрессии, мы увидим, что уравнение для вычисления параметра параметра Ө задается как (XᵗX) ⁻¹XᵗY, поэтому термин (XᵗX) ⁻¹Xᵗ действует как псевдообратное к X, чтобы обеспечить оптимальное решение вышеуказанного уравнения.

6. Проекция вектора.

Проекция вектора v₁ в направлении v₂ является скалярным произведением v₁ с единичным вектором в направлении v₂ . Таким образом, уравнение можно записать как

||v₁₂|| = v₁.u₂ = v₁ᵗ.u₂ = v₁[v₂/√(v₂ᵗv₂)]

где || v₁₂ || - это проекция v₁ на v₂.

Проекцию вектора можно увидеть в этом уравнении (XӨ - Y), где и Y имеют разные размеры, а вектор ошибки (XӨ - Y) пытается минимизировать и преобразовать размер предсказанного значения в исходное значение, то есть и Y

7. Собственные векторы и значения.

Это наиболее фундаментальная часть машинного обучения. Собственные значения и векторы используются в различных областях машинного обучения.

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

Когда матрица A размером размера n × n работает с вектором x of ℝ размера n × 1, результатом является другой вектор Ax of ℝ размера n × 1. Как правило, величина и направление нового вектора отличаются от исходного вектора. Если в таком сценарии вновь сгенерированный вектор имеет то же направление или точно противоположное направление, что и исходный вектор, то любой такой вектор в этом направлении называется собственным вектором, а величина, на которую растягивается вектор, называется собственным значением. .

Уравнение для собственного вектора выглядит следующим образом:

Ax = λx

[где x - собственный вектор, а λ - собственное значение]

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

Спасибо за просмотр моего сообщения. Если вам понравился мой пост, нажмите кнопку хлопка слева.