Co to jest regresja liniowa?
W naukach danych regresja liniowa jest nadzorowanym modelem uczenia maszynowego, który próbuje modelować liniowy związek między zmiennymi zależnymi (y) a zmiennymi niezależnymi (x). Każda oceniana obserwacja za pomocą modelu, faktyczna wartość docelowa (y) jest porównywana z przewidywaną wartością docelową (y), a główne różnice w tych wartościach nazywane są resztkami. Model regresji liniowej ma na celu zminimalizowanie sumy wszystkich kwadratowych resztek. Oto matematyczna reprezentacja regresji liniowej:
Y = a0+A1X+ ε
W powyższym równaniu:
Y = Zmienna zależna
X = Zmienna niezależna
A0 = Przechwycenie linii, która oferuje dodatkowy DOF lub stopień swobody.
A1 = Współczynnik regresji liniowej, który jest współczynnikiem skali do każdej wartości wejściowej.
ε = Losowy błąd
Pamiętaj, że wartości zmiennych x i y są szkolącymi zestawami danych dla modelu reprezentacji regresji liniowej.
Gdy użytkownik wdraża regresję liniową, algorytmy zaczynają znaleźć najlepszą linię dopasowania za pomocą A0 I A1. W taki sposób staje się bardziej dokładny dla rzeczywistych punktów danych; Ponieważ rozpoznajemy wartość A0 I A1, Możemy użyć modelu do przewidywania odpowiedzi.
Prosta regresja liniowa
Ten rodzaj regresji liniowej działa przy użyciu tradycyjnej formy przecięcia nachylenia, w której A i B są dwoma współczynnikami, które są opracowane „Ucz się” i znajdź dokładne prognozy. W poniższym równaniu X oznacza dane wejściowe, a Y oznacza przewidywanie.
Y = bx + a
Regresja wielowymiarowa
Regresja wielowymiarowa jest nieco bardziej złożona niż inne procedury. W poniższym równaniu 𝒘 oznacza wagi lub współczynnik, który wymaga opracowania. Wszystkie zmienne 𝑥1, 𝑥2, i 𝑥3 Atrybuty informacyjne obserwacji.
Prognozowanie cen domu za pomocą regresji liniowej
Teraz rozważmy każdy krok dla prognozy cen domu za pomocą regresji liniowej. Rozważ firmę nieruchomości z zestawami danych zawierających ceny nieruchomości określonego regionu. Cena nieruchomości opiera się na podstawowych czynnikach, takich jak sypialnie, obszary i parking. Głównie firma nieruchomości wymaga:
Poniżej znajduje się kod skonfigurowania środowiska, a my używamy scikit-learn do przewidywania ceny domu:
importować pandy jako PDNastępnie przeczytaj dane cenowe domu:
domy = PD.read_csv ("kc_house_data.CSV ”)Oto tabela z pełnymi szczegółami (zestawem danych) różnych domów:
Teraz przeprowadzimy oczyszczanie danych i analizę eksploracyjną za pomocą poniższego kodu:
#Sprawdź dla null w danychZgodnie z zestawem danych nie ma żadnych zerowych:
Out [3]: id 0Następnie budujemy model regresji liniowej. Przygotuj dane, które zdefiniują zmienną predyktora i odpowiedzi:
# Utwórz x i yMożemy podzielić dane na pociąg i testować; Podziel pociągu lub testu przedstawia dwa losowo utworzone podzbiory naszych danych. Te dane testowe/pociągu są wykorzystywane do dopasowania do algorytmu uczenia się, aby mógł nauczyć się przewidywać. Zestaw testów, którego użyliśmy do uzyskania pomysłu do pracy z nowymi danymi.
# Podziel dane na pociąg i testNastępnie dopasuj model na zestawie treningowym.
# instant, dopasujPo dopasowaniu modelu musimy wydrukować wszystkie współczynniki.
wydrukuj linreg.przechwycić_Wartość y będzie równa0 Gdy wartość x = 0; W takim przypadku będzie to cena domu, gdy sqft_living wynosi zero. A1 Współczynnik to zmiana w y podzielonej przez zmianę wartości w x. Przyrost jednego metra kwadratowego w wielkości domu jest powiązany z przyrostem ceny 282 dolarów.
Teraz możemy przewidzieć cenę Living House o powierzchni 1000 stóp kwadratowych za pomocą następującego modelu:
# ręczniePo zakończeniu powyższej procedury oblicz błąd RMSE lub średniej kwadratowej, jest to najczęściej stosowana metryka do oceny modelu regresji w zestawie testowym:
MSE = Mean_squared_error (Y_TEST, LINREG.przewidy (x_test))Jak to widać, otrzymaliśmy błąd kwadratowy w średnim punkcie kwadratowym 259163.48 Po przewidywaniu cen domu. Używamy jednej funkcji w powyższym modelu; Wynik był oczekiwany. Możesz jednak ulepszyć model, dodając więcej funkcji.
Wniosek
Mamy nadzieję, że nasz szczegółowy przewodnik na temat przewidywania cen domu za pomocą regresji liniowej był dla Ciebie pomocny. Jak wspomnialiśmy wcześniej, istnieje wiele regresji liniowej, takich jak prosta regresja i regresja wielowymiarowa. Przede wszystkim użyliśmy prostej regresji, aby łatwo przewidzieć cenę domu. Możesz jednak użyć regresji wielowymiarowej, aby dokładniej przewidzieć wyniki przy użyciu różnych zmiennych. Oprócz tego użyliśmy kompletnego zestawu danych, który zawiera dokładne informacje dotyczące domów. Głównie wszystkie powyższe kody i biblioteki, których użyliśmy.