В своей недавней статье я рассказал о машинном обучении, типах моделей машинного обучения и о том, как обучать модель. В этой статье мы обучили модель, которая дает прогноз цен на дома с использованием линейной регрессии с множественными независимыми переменными. используемые библиотеки: pandas, Numpy и Sklearn.
Теперь для этой модели мы используем набор данных из Kaggle, который содержит такие наборы данных:
Цена будет зависимой переменной, а остальные 12 наборов данных — независимой переменной. Точность модели зависит от данных, поэтому перед обучением модели мы очищаем данные. в этом сценарии мы преобразуем строку в целые числа для вычислений.
после этого мы получим наши данные следующим образом:
После категоризации данных проверьте наличие нулевого значения. поскольку он использует математическую формулу, он всегда должен иметь какое-то значение. с помощью функции df.isnull().sum() мы видим наши нулевые значения в нашем наборе данных
Теперь наши данные чисты и подготовлены к разделению. мы разделим наши данные на две части; один для обучения и один для тестирования. после применения формулы линейной регрессии
перехват и коэффициент, который мы получаем из этого, таковы:
Теперь наша модель обучена на наших 70-процентных данных. теперь пришло время оценить нашу модель с 30-процентными данными.
это разброс прогнозируемой и фактической цены. мы оцениваем нашу модель по различным показателям. для этого используется среднеквадратичное значение.
Как правило, R-квадрат выше 0,6 делает модель достойной вашего внимания, хотя есть и другие вещи, которые следует учитывать: любая область, которая пытается предсказать человеческое поведение, например психология, обычно имеет значения R-квадрата ниже 0,5. для полного кода