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

Предположим, нам нужна система, способная прогнозировать время полета птицы с учетом ее возраста, веса, температуры воздуха, времени суток и широты.
Или предположим, что для решения задачи автоматической навигации мобильного робота , мы стремились определить угол поворота колес, чтобы избежать препятствий, в соответствии с такими измерениями, как скорость машины, ее вес, ее положение, предоставляемое GPS, и т. д. Проблемы регрессии - это такие проблемы, в которых выходной сигнал (здесь, потребляемая мощность или угол поворота) является цифровым, как правило, вектор действительных чисел, который, как предполагается, зависит от значения ряда входных факторов.

Они бывают двух типов:

  1. Простая линейная регрессия
  2. Множественная линейная регрессия

Простая линейная регрессия

Простая линейная регрессия - это простой, но эффективный метод обучения с учителем. Цель линейной регрессии - определить, как входная переменная (независимая переменная) влияет на выходную переменную (переменная ответа).

Простая линейная регрессия выполняет задачу прогнозирования значения зависимой переменной (y) на основе заданной независимой переменной (x). Итак, этот метод регрессии обнаруживает линейную зависимость между x (входом) и y (выходом). Следовательно, название - линейная регрессия.
На рисунке выше X (входные данные) - это опыт работы, а Y (выход) - это заработная плата человека. Линия регрессии лучше всего подходит для нашей модели.

Функция гипотезы для линейной регрессии:

Функция стоимости

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

Базовая реализация

Итак, в основном я написал небольшой код, используя библиотеку Scikit-learn, вы можете найти его на моем Github без дальнейших действий, давайте начнем.

Scikit-learn (ранее scikits.learn, также известный как S klearn) - это бесплатная библиотека машинного обучения для языка программирования Python. Он включает в себя различные алгоритмы классификации, регрессии и кластеризации, включая вспомогательные векторные машины, случайные леса, повышение градиента, k -средства и DBSCAN, и предназначен для взаимодействия с числовыми и научными библиотеками Python NumPy и SciPy.

Первым делом вам понадобится набор данных, который вы можете просто загрузить из моего репозитория Github или использовать данные, адаптированные для вас.

Вывод:

Вывод:

Множественная линейная регрессия

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

Базовая реализация

Вывод :

Что думают на YouTube:

Переоснащение:

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

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

Вывод :

Надеюсь, я смог немного прояснить это для вас. Линейная регрессия - один из основных алгоритмов, я буду применять гораздо больше объяснений алгоритмов, потому что почему бы и нет :)

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

Добро пожаловать на мою среднюю страницу

Github, LinkedIn, Захра Эльхамрауи, Upwork

Примечание от Plain English

Вы знали, что мы запустили канал на YouTube? Каждое видео, которое мы снимаем, будет направлено на то, чтобы научить вас чему-то новому. Проверьте нас, нажав здесь, и обязательно подпишитесь на канал 😎