Ćwiczenie — przeprowadzanie regresji liniowej przy użyciu biblioteki Scikit Learn

Ukończone

Kolejną popularną biblioteką języka Python często używaną w badaniach naukowych jest biblioteka scikit-learn, która umożliwia opracowywanie modeli uczenia maszynowego w celu wyodrębniania określonych informacji z danych. W tym ćwiczeniu użyjesz biblioteki scikit-learn, która została już zaimportowana w lekcji 2, w celu obliczenia linii trendu na podstawie danych agencji NASA dotyczących klimatu.

  1. Umieść kursor w pustej komórce w dolnej części notesu. Zmień typ komórki na markdown i wprowadź tekst „Perform linear regression with scikit-learn” (Wykonywanie regresji liniowej za pomocą biblioteki scikit-learn).

  2. Dodaj komórkę code i wklej poniższy kod.

    # Pick the Linear Regression model and instantiate it
    model = LinearRegression(fit_intercept=True)
    
    # Fit/build the model
    model.fit(yearsBase[:, np.newaxis], meanBase)
    mean_predicted = model.predict(yearsBase[:, np.newaxis])
    
    # Generate a plot like the one in the previous exercise
    plt.scatter(yearsBase, meanBase)
    plt.plot(yearsBase, mean_predicted)
    plt.title('scatter plot of mean temp difference vs year')
    plt.xlabel('years', fontsize=12)
    plt.ylabel('mean temp difference', fontsize=12)
    plt.show()
    
    print(' y = {0} * x + {1}'.format(model.coef_[0], model.intercept_))
    
  3. Teraz uruchom komórkę, aby wyświetlić wykres punktowy z linią regresji.

    Wykres punktowy z linią regresji obliczoną przez sckikit-learn.

    Wykres punktowy z linią regresji obliczoną przez bibliotekę sckikit-learn

Dany wyjściowe są niemal takie same jak dane wyjściowe w poprzednim ćwiczeniu. Różnica polega na tym, że biblioteka scikit-learn wykonała więcej pracy. Nie musisz kodować funkcji liniowej, tak jak miało to miejsce w przypadku biblioteki NumPy — funkcja LinearRegression biblioteki scikit-learn zrobiła to za Ciebie. Biblioteka scikit-learn obsługuje wiele różnych rodzajów regresji, co jest przydatne podczas tworzenia zaawansowanych modeli uczenia maszynowego.