В этом блоге мы изучим машинное обучение за 6 шагов. Мы также встретимся с некоторыми техническими терминами, используемыми в машинном обучении. Некоторые из этих шагов выполняются вручную (обычно это работа инженера по машинному обучению), а другие выполняются машиной (поэтому это называется машинным обучением). Если вы не знаете, что такое машинное обучение, загляните в мой предыдущий блог, прежде чем двигаться дальше.
При изучении этих шагов мы столкнемся с различными примерами. И, например, для первых двух шагов нужно определить, находится ли игрок с битой в ауте или нет. Я знаю, что сердцебиение фанатов крикета могло участиться после прочтения предыдущей строки. Пример с крикетом Aiila😂, wo bhi padhai me. Итак, давайте начнем с нашего первого шага, то есть Задачи.
Задачи в целом делятся на 2 категории
- Классификация. Задачи классификации — это задачи, выходные значения которых равны 0, 1. Как и наша текущая постановка задачи, определите, находится ли у игрока с битой вес или нет. И как получить результат, мы увидим в последующих шагах.
- Без классификации. Для задачи без классификации выходные значения могут быть набором значений в диапазоне от 0 до 1. Например, исходя из годовой зарплаты человека и размера членов семьи, укажите вероятность того, что человек купит автомобиль. Если результат стремится к 0, например 0,2, он/она вряд ли купит машину, и наоборот.
Шаг 2 – ДАННЫЕ
Для решения любой задачи в машинном обучении нам нужны некоторые данные. В этом случае наши данные могут быть
- Поданный мяч был не мячом или нет?
- Подброшенный мяч был на одной линии с пнями или нет?
- Ударил бы мяч по пням, если бы перед калиткой не было игроков с битой?
И еще кое-что, но вы, возможно, поняли, какие данные нам нужны для решения проблемы. Вы также можете соотнести это с нашим разумом. Когда мы видим поданный мяч, мы пытаемся предсказать, выбыл ли игрок с битой, основываясь на том, что мы видим. Нашему разуму также нужны некоторые данные, чтобы предсказать результат, и то же самое касается машинного обучения.
Данные должны быть связаны с проблемой. Это также работа инженера по машинному обучению для сбора соответствующих данных с помощью различных методов. После сбора данных мы делим их на 2 части: обучающие данные и тестовые данные. Его можно разделить на соотношение 9:1, где 9 для тренировок, а 1 для и т. д., или любое другое соотношение, с которым вы чувствуете себя комфортно.
Шаг 3 — Модель
Это самый сложный этап, так что постарайтесь вынести это вместе со мной, и нам также потребуются некоторые элементарные математические навыки, чтобы понять этот шаг. Там написаны тысячи моделей от простых до очень-очень сложных. Модель — это не что иное, как функция, удовлетворяющая всем возможным входным значениям. Задача инженера по машинному обучению — решить, какой из них использовать. Давайте возьмем пример, чтобы понять это.
Здесь у нас есть x как ряд значений входных обучающих данных и y как фактических выходных значений обучающих данных для соответствующих входных данных x.
Если мы построим график этих значений x и y и соединим их, это будет выглядеть так.
Таким образом, работа инженера по машинному обучению состоит в том, чтобы найти некоторое математическое отношение/функцию/модель через заданные x и y, чтобы предсказать новые значения y для нового x.
y в левой части — это предсказанные значения, а f(x) в правой части приведенного выше уравнения — это функция/некоторая модель, которая пытается предсказать y. Поэтому значения x вставляются в f(x), чтобы получить прогноз.
И 🤯 Саб упар се никал гья😂😂. Попробуем понять это, взяв несколько примеров.
Начнем с очень простой и базовой линейной функции, т.е.
y = mx + c
Если мы подставим значения x в приведенную выше функцию и получим значение y. После построения этих значений он будет выглядеть примерно так, как показано на графике ниже.
Мы можем ясно видеть, что наша функция (зеленая линия) не проходит через исходные входы или рядом с ними. Это означает, что наша функция неэффективна. Поэтому нам нужно попробовать еще один. Как я уже говорил выше, есть тысячи функций, из которых мы должны выбрать. А в реальном проблемном случае невозможно даже увидеть данные для визуализации функции, поэтому единственным методом поиска функции является вычислительная интуиция. Модель/функция, которая, вероятно, удовлетворит нашу проблему, приведена ниже.
А это графическое представление этой функции. Нам также нужно найти значения коэффициентов a, b…, чтобы получить наиболее эффективный результат. К счастью, это работа машины, нам это не нужно, и в 99,9% случаев мы не можем предсказать эти значения. Так что это работа, оставшаяся для машины.
Нам просто нужно найти функцию, похожую на ввод. Итак, теперь я думаю, что вы получили некоторый намек, что это за модель.
Примечание: - Могут быть и другие функции, которые могли бы решить нашу проблему более точно. Просто нам нужно найти их и установить некую планку точности, с которой мы можем жить.
Большинство из вас может подумать, что это функция. Вот и все с модельной частью. А теперь переходим к следующему
Шаг 4. Алгоритм обучения
После выбора модели нам нужно найти значения коэффициентов. А для этого нам нужны алгоритмы обучения. Эти алгоритмы могут быть такими же простыми, как грубая сила, в которой мы проверяем каждое значение, начиная с 0 и до того количества раз, которое вы установили для сложных алгоритмов. Но просто поймите, что основным мотивом алгоритма обучения является получение значений коэффициента, в которых находится самая высокая точность нашей модели. Различным примером алгоритмов обучения может быть грубая сила, алгоритм обучения персептрона и т. д.
Функция Step5-Loss
Во многих случаях нашему алгоритму обучения необходимо знать, какое изменение значений коэффициентов требуется для достижения желаемого результата. Здесь в игру вступает функция потерь. Функция потерь используется для проверки потерь, заданных нашим прогнозируемым выходом, по сравнению с фактическим выходом.
Если потеря очень меньше, скажем, 0,5, это означает, что нам нужно немного изменить коэффициенты, чтобы получить максимально точные результаты. А если убыток равен 1,5, значит, нам нужно изменить коэффициенты с гораздо большим количеством корректировок. Если потеря равна 0, это означает, что точность составляет 100%, и нам больше не нужны изменения. Но в идеальном сценарии шансов получить такую точность очень мало.
Трудно дать количественную оценку, просто взглянув на значения потерь и предсказав точность, поэтому для этого у нас есть еще один шаг точности. Функция потерь используется, чтобы получить некоторый намек на то, насколько наш алгоритм обучения должен внести коррективы в коэффициенты, чтобы достичь максимально возможной точности. Некоторыми примерами функций потерь могут быть квадратная функция потерь, квадратичная функция средних потерь и т. д.
Точность шага 6
Поскольку мы учимся целый год и даем тест в конце, чтобы оценить себя. Это тест нашей модели. Здесь вы увидите, насколько окупились ваши усилия. И, к счастью, один из самых простых. Мы можем проверить нашу точность, посмотрев, сколько прогнозов мы получили правильно. Допустим, мы получили 3 из 5 прогнозов, поэтому точность составляет 60%. Это означает, что нам нужно больше работать над нашей моделью.
Установка планки определяет, с какой точностью мы можем жить. Здесь следует отметить, что мы не проверяем точность обучающих данных. Так как это определенно обеспечит большую точность. Поэтому находим точность на тестовых данных. Существует несколько формул для определения точности модели, таких как R-квадрат, среднеквадратическая ошибка, оценка F1 и т. д.
Заключение
Выше мы прочитали 6 шагов процесса машинного обучения. Что начинается с размышления о задаче, сбора соответствующих данных задачи, разделения данных на 2 части, обучающих данных и тестовых данных, выбора модели на основе данных, применения алгоритма обучения для нахождения коэффициента модели, применения функции потерь для получения быстрых результатов. от алгоритма обучения и, наконец, применения этой модели к тестовым данным, чтобы выяснить, насколько точна наша модель.