머신러닝 분야에서는 선형 회귀가 일반적으로 사용되는 방법입니다. 다변수 선형회귀는 하나 이상의 독립변수와 종속변수 사이의 선형 관계를 예측할 수 있는 방법으로, 일반적으로 부동산, 주가 등 시장 동향을 예측하는 데 사용됩니다.
Python은 배우고, 작성하고, 디버그하기 쉬운 매우 인기 있는 프로그래밍 언어입니다. Python에서는 Scikit-learn 라이브러리를 사용하여 다변수 선형 회귀 모델을 쉽게 구현할 수 있습니다.
이 기사에서는 주택 가격 예측의 예를 통해 Python의 다변수 선형 회귀를 소개합니다.
라이브러리 및 데이터 가져오기
다변수 선형 회귀 모델을 구현하려면 일부 Python 라이브러리를 가져와야 합니다.
import pandas as pd import numpy as np import matplotlib.pyplot as plt from sklearn.linear_model import LinearRegression from sklearn.model_selection import train_test_split from sklearn.metrics import mean_squared_error
여기에 사용된 데이터는 Kaggle 웹사이트의 Boston 부동산 데이터 세트에서 가져온 것입니다. Pandas 라이브러리의 read_csv 함수를 사용하여 데이터 파일에서 데이터를 읽을 수 있습니다.
data = pd.read_csv('Boston.csv')
데이터 탐색 및 시각화
모델을 구축하기 전에 데이터를 탐색하여 각 특성의 분포와 특성 간의 관계를 이해해야 합니다. 관계.
Pandas 라이브러리의 explain 함수와 corr 함수를 사용하면 데이터의 특성 분포와 특성 간의 상관 관계를 이해할 수 있습니다. 그 중 corr 함수는 각 특성과 다른 특성 간의 상관계수 행렬을 반환합니다.
print(data.describe()) print(data.corr())
Matplotlib 라이브러리를 사용하여 데이터를 시각화할 수도 있습니다. 예를 들어, 두 가지 특성 사이에 산점도를 그립니다.
plt.scatter(data['RM'], data['Price']) plt.title('House Price vs Number of Rooms') plt.xlabel('Number of Rooms') plt.ylabel('Price') plt.show()
데이터 전처리 및 모델 훈련
다변량 선형 회귀 모델을 훈련하려면 데이터를 훈련 세트와 테스트 세트의 두 부분으로 분할해야 합니다. Scikit-learn 라이브러리의 train_test_split 함수를 사용하여 데이터 세트를 훈련 세트와 테스트 세트로 무작위로 나눌 수 있습니다.
X = data.drop(['Price'], axis=1) y = data['Price'] X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
다음으로 Scikit-learn 라이브러리의 LinearRegression 함수를 사용하여 다변수 선형 회귀를 초기화할 수 있습니다. 모델을 사용하고 모델에 맞는 훈련 세트 사용:
model = LinearRegression() model.fit(X_train, y_train)
모델 평가 및 예측
모델 성능을 평가하기 위해 테스트 세트를 사용하여 주택 가격을 예측하고 평균 제곱 오차(MSE)를 사용하여 측정할 수 있습니다. 예측 결과와 결과 간의 실제 차이를 비교합니다. Scikit-learn 라이브러리의mean_squared_error 함수를 사용하여 예측 결과의 평균 분산을 계산할 수 있습니다.
y_pred = model.predict(X_test) mse = mean_squared_error(y_test, y_pred) print(mse)
평균 분산 값이 작으면 모델 예측 결과가 더 정확하다는 의미입니다.
마지막으로 모델을 사용하여 새 주택 가격을 예측할 수 있습니다. 예를 들어 방 6개, 욕실 2개가 있고 상업 지구에서 4.5마일 떨어진 집의 가격을 예측하려고 합니다. 이러한 특성의 값을 모델에 입력하고 모델의 예측 기능을 사용하여 집 가격을 예측할 수 있습니다.
new_data = np.array([[6, 2, 4.5, 0, 0.4, 6, 79, 6.1, 5, 331, 17, 385, 11.3]]) new_prediction = model.predict(new_data) print(new_prediction)
이 집의 예상 가격은 약 $239,000입니다.
요약
이 기사에서는 Scikit-learn 라이브러리의 LinearRegression 함수를 사용하여 Python에서 다변수 선형 회귀 모델을 구현하는 방법을 소개했습니다. 보스턴 부동산 데이터 세트를 예로 사용하여 데이터 가져오기, 탐색, 시각화, 전처리, 모델 교육, 평가 및 예측 단계를 설명합니다. 이 기사가 독자들이 Python의 다변수 선형 회귀 방법을 더 잘 익히는 데 도움이 되기를 바랍니다.
위 내용은 Python의 다변수 선형 회귀 예제의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!