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

Давайте сначала разберемся, что такое математика:

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

Теперь давайте посмотрим, что такое машинное обучение:

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

Различные перспективы изучения искусственного интеллекта/машинного обучения:

  1. Математическая или статистическая перспектива.
  2. Перспектива компьютерных наук.
  3. Биологическая или эволюционная перспектива.
  4. Психологическая перспектива.
  5. Этическая или политическая точка зрения.

В этой статье мы будем придерживаться только математической точки зрения:

Начнем с абстрактного мыслительного процесса. Представьте себе ребенка в возрасте, скажем, 3 лет. Родители начинают учить его числам, показывая ему, как каждая цифра выглядит на бумаге, или пытаются развить интуицию, выражая ее пальцами. Он хранит в своей памяти изображение цифры со связанной с ней меткой (8 как восемь). Через сутки ему показывают цифру 8. Он пытается ее вспомнить, но раз или два терпит неудачу. Ребенок узнает, что он делает ошибку, и пытается уменьшить ошибку. Скажем, в первый раз он говорит 1, затем 3 (что визуально больше похоже на 8), а затем тузы, угадав правильно. Давайте разберемся, что здесь происходит. Сначала малыш должен угадать 1 цифру из заданных 10 цифр. Вероятность =0,1. Вероятность ошибки 90%. Теперь он сокращает свою догадку до диапазона цифр, похожих на 8 (3,6,8,9). Теперь вероятность ошибки снижена до 1/4 = 25%. Теперь малыш сокращает спектр до двух цифр. Он уверен, что это цифра либо 8, либо 9. И при следующем угадывании он, очевидно, угадает правильную цифру. Это классический пример того, как обучается даже машина. Наша задача как раз и состоит в том, чтобы помочь машине лучше имитировать человека. Теперь давайте посмотрим на реальную математику, xD.

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

мин f(x); такое, что fi(x) ≤ bi, где i находится в диапазоне от 1 до m.

Где x — переменная оптимизации, f — целевая функция (угадайте правильную цифру в данном примере), а fi — связанные ограничения. Пусть x* обозначает оптимальное решение поставленной выше задачи. (8 в приведенном примере). Теперь давайте посмотрим, как математически решить такую ​​задачу оптимизации:

Решение проблем с оптимизацией:

Очень полезное наблюдение состоит в том, что если f — целевая функция, которая максимизируется или минимизируется в точке x, то касательная к графику в точке (x, f (x)) будет горизонтальной, так как в противном случае мы можем найти некоторое значение x, близкое к к x, для которого f(x ) больше. Это означает, что мы можем сузить поиск максимального и минимального значений f, взглянув только на значения f(x), для которых f(x) = 0. В зависимости от типа целевой функции и ограничений существует два общих основные способы решения задачи оптимизации

  1. Выпуклость:данное выпуклое множество C (множество всех точек a, b, принадлежащих C, отрезок, соединяющий любые две заданные точки, лежит в одном и том же множестве C), локальные минимумы множества будут глобальные минимумы. Отсюда оптимальное решение.

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

F(x,y) = 2x + 10y − x² + 2xy − 3y²

Этот вектор производной обычно называют градиентом функции F в точке (x, y) и записывают как ∇F(x, y). В векторной записи (запись x для (x, y) и h для (h, k)) приближение к F вблизи (x, y) равно

F(x + h) ≈ F(x) + h ·∇F.

Таким образом, ∇F указывает направление, в котором F увеличивается наиболее быстро, если вы начинаете с x, а величина ∇F представляет собой наклон «графика» F в этом направлении. Компоненты a и b градиента можно рассчитать с помощью частичного дифференцирования. Число а говорит нам, как быстро изменяется F(x,y) при изменении x при фиксированном y:

a = ∂F(x,y) /∂x = 2 − 2x + 2y. (1)

Сходным образом,

b = ∂F(x,y)/∂y = 10 + 2x − 6y. (2)

После решения двух вышеупомянутых одновременных уравнений (1 и 2) мы получаем x = 4 и y = 3. Это наше оптимальное решение.

3. Лагранжиан: это лучший метод решения задачи оптимизации с ограничениями. Потому что лагранжиан преобразует задачу с ограничениями в задачу без ограничений. Например:

Целевая функция: максимизировать F(x,y) = 4y-x (3)

Ограничения: G(x,y) = x²-xy+y²-x+y-4=0 (4)

Важно отметить, что оптимизирующая линия касается кривой: прямая и кривая параллельны в своей общей точке. Линия была выбрана как контур функции F. Кривая также является контуром: 0-контуром G. Мы знаем, что эти контуры перпендикулярны градиентам F и G соответственно (в рассматриваемой точке). Таким образом, два вектора градиента параллельны друг другу и, следовательно, кратны друг другу:

∇F(x,y) = λ∇G(x,y) , G(x,y) = 0 (5)

Из уравнений 3 и 4 получаем:

x = 2 + λ/3λ ,

y= 7 − λ/3λ (6)

Подставляя эти значения в уравнение G(x,y) = 0, получаем

13(1- λ²)/3λ² = 0

что дает нам два решения λ = 1 и λ = -1. Если в (6) подставить λ=1, получим точку (1,2), в которой F максимальна. Принимая λ = -1 на другой стороне, мы получаем точку, в которой F минимальна. Здесь число λ называется множителем Лагранжа. Переформулировка лагранжиана дает нам:

L(x,y, λ) = F(x,y) − λG(x,y)

.Объединяя приведенные выше уравнения (5) в одно уравнение:

∇L = 0.

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

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

Я надеюсь, что читатель, по крайней мере, получил интуитивное представление о том, как работает математика, стоящая за машинным обучением. Спасибо!