Scikit을 사용한 선형 회귀에 관한 모든 것

게시 됨: 2022-09-08

실제로 두 가지 기본 지도 머신 러닝 알고리즘이 있습니다. 1. 분류 및 2. 회귀 — 분류는 이산 출력을 예측하는 데 사용되는 반면 회귀는 연속 값 출력을 예측하는 데 사용됩니다.

대수학에서 선형성은 여러 변수 간의 직선 또는 선형 관계를 나타냅니다. 이 관계를 문자 그대로 표현하면 직선이 됩니다.

세계 최고의 대학에서 기계 학습 과정 에 등록하십시오 . 석사, 이그 제 큐 티브 PGP 또는 고급 인증 프로그램을 획득하여 경력을 빠르게 추적하십시오.

선형 회귀는 감독하에 실행되는 기계 학습 알고리즘입니다. 해당 플롯에서 사용할 수 있는 모든 데이터 포인트에 적합한 선을 찾고 매핑하는 프로세스입니다. 하나의 종속 변수와 하나의 독립 변수 사이의 값을 모두 직선의 도움으로 추정하는 데 도움이 되는 회귀 모델입니다.

선형 회귀 모델은 주어진 종속 변수를 기반으로 비용이 가장 낮은 이러한 독립 변수 간의 선형 관계를 구축하는 데 도움이 됩니다.

수학에서 선형 회귀 모델을 설명하는 데 사용되는 세 가지 방법이 있습니다. 다음과 같습니다(y는 종속 변수임).

  • y = 절편 + (기울기 x) + 오차
  • y = 상수 + (계수x) + 오차
  • y = a + bx + e

목차

선형 회귀가 필수적인 이유는 무엇입니까?

선형 회귀 모델은 비교적 간단하고 사용자 친화적입니다. 그것들은 예측을 생성할 수 있는 수학적 데이터/공식을 해석하는 과정을 비교적 간단하게 만듭니다. 선형 회귀는 다양한 분야(예: 학계 또는 비즈니스 연구)에서 유용할 수 있습니다.

선형 회귀 모델은 미래를 정확하게 예측하는 과학적으로 입증된 유일한 방법입니다. 그것은 환경, 행동, 사회 등 다양한 과학에서 사용됩니다.

이러한 모델의 속성은 매우 잘 이해되고 있으므로 오랫동안 확립된 통계 절차이기 때문에 쉽게 훈련할 수 있습니다. 또한 풍부한 원시 데이터 세트를 실행 가능한 정보로 쉽게 변환할 수 있습니다.

효과적인 선형 회귀의 주요 가정

  • 각 변수에 대해 유효한 케이스 수, 평균 및 표준 편차를 고려해야 합니다.
  • 각 모형 에 대해 : 회귀계수, 상관행렬, 부분상관 및 편상관, 추정치의 표준오차, 분산분석표, 예측값, 잔차가 고려되어야 한다.
  • 도표 : 산점도, 히스토그램, 부분 도표 및 정규 확률 도표가 고려됩니다.
  • 데이터 : 종속변수와 독립변수가 정량적이어야 합니다. 범주형 변수는 이진 변수나 더미 변수 또는 다른 유형의 대비 변수로 다시 코딩할 필요가 없습니다.
  • 기타 가정 : 주어진 독립 변수의 모든 값에 대해 종속 변수의 정규 분포가 필요합니다. 종속 변수의 주어진 분포의 분산도 모든 독립 변수 값에 대해 일정하게 유지되어야 합니다. 모든 종속 독립 변수 간의 관계는 선형이어야 합니다. 또한 모든 관찰은 독립적이어야 합니다.

다음은 단순 선형 회귀 의 기존 예입니다 .

예제의 데이터 세트에는 특정 기간 동안 매일의 전 세계 기상 상황에 대한 정보가 포함되어 있습니다. 이 자세한 정보 목록에는 강수량, 강설량, 온도, 풍속, 뇌우 또는 기타 가능한 기상 조건과 같은 요소가 포함됩니다.

이 문제는 최소 온도를 입력으로 사용하면서 최대 온도를 예측하기 위해 단순 선형 회귀 모델을 사용하는 것을 목표로 합니다.

먼저 모든 라이브러리를 가져와야 합니다.

pandas를 pd로 가져오기

numpy를 np로 가져오기

matplotlib.pyplot을 plt로 가져오기

seaborn을 seabornInstance로 가져오기

sklearn.model_selection import train_test_split에서

sklearn.linear_model에서 LinearRegression 가져오기

sklearn 가져오기 측정항목에서

%matplotlib 인라인

pandas를 사용하여 다음 데이터 세트를 가져오려면 다음 명령을 적용해야 합니다.

데이터 세트 = pd.read_csv('/Users/nageshsinghchauhan/Documents/projects/ML/ML_BLOG_LInearRegression/Weather.csv')

데이터를 탐색하기 위해 데이터 세트에 있는 행과 열의 수를 확인하려면 다음 명령을 적용해야 합니다.

데이터세트.모양

수신된 출력은 (119040, 31)이어야 합니다. 이는 데이터에 119040개의 행과 31개의 열이 포함되어 있음을 의미합니다.

데이터 세트의 통계적 세부 정보를 보려면 다음 명령을 사용할 수 있습니다.

설명하다():

데이터 세트.설명()

다음은 주어진 데이터 세트에 선형 회귀를 적용하는 데 사용되는 다양한 Python 라이브러리를 검색하고 사용할 수 있는 방법을 보여주는 또 다른 예 입니다.

1. 필요한 모든 라이브러리 가져오기

numpy를 np로 가져오기

pandas를 pd로 가져오기

씨본을 sns로 가져오기

matplotlib.pyplot을 plt로 가져오기

sklearn에서 가져오기 전처리, svm

sklearn.model_selection import train_test_split에서

sklearn.linear_model에서 LinearRegression 가져오기

2. 데이터 세트 읽기

cd C:\Users\Dev\Desktop\Kaggle\Salinity

# 파일 읽기 위치를 데이터셋 위치로 변경

df = pd.read_csv('bottle.csv')

df_binary = df[['짠맛', 'T_degC']]

# 데이터셋에서 선택된 두 개의 속성만 가져옴

df_binary.columns = ['샐', '온도']

# 코드를 더 쉽게 작성할 수 있도록 열 이름 바꾸기

df_binary.head()

# 열 이름과 함께 첫 번째 행만 표시

2. 데이터 분산 탐색

sns.lmplot(x = "Sal", y = "Temp", 데이터 = df_binary, 순서 = 2, ci = 없음)

# 데이터 분산 그리기

3. 데이터 정리

# NaN 제거 또는 누락된 입력 숫자

df_binary.fillna(메서드 = 'ffill', inplace = True)

4. 모델 훈련

X = np.array(df_binary['살']).reshape(-1, 1)

y = np.array(df_binary['온도']).reshape(-1, 1)

# 데이터를 독립변수와 종속변수로 분리

# 각 데이터 프레임을 numpy 배열로 변환

# 각 데이터 프레임에는 하나의 열만 포함되어 있기 때문에

df_binary.dropna(inplace = True)

# Nan 값이 있는 모든 행 삭제

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.25)

# 데이터를 학습 데이터와 테스트 데이터로 분할

regr = 선형회귀()

regr.fit(X_train, y_train)

print(regr.score(X_test, y_test))

5. 결과 탐색

y_pred = regr.predict(X_test)

plt.scatter(X_test, y_test, 색상 = 'b')

plt.plot(X_test, y_pred, 색상 = 'k')

plt.show()

# 예측값의 데이터 분산

6. 더 작은 데이터 세트로 작업하기

df_binary500 = df_binary[:][:500]

# 데이터의 첫 500행 선택

sns.lmplot(x = "샐", y = "온도", 데이터 = df_binary500,

주문 = 2, ci = 없음)

인기 있는 기계 학습 및 인공 지능 블로그

IoT: 역사, 현재 및 미래 기계 학습 자습서: ML 배우기 알고리즘이란 무엇입니까? 간단하고 쉬운
인도 로봇 공학 엔지니어 급여 : 모든 역할 기계 학습 엔지니어의 하루: 그들은 무엇을 하나요? 사물인터넷(IoT)이란
순열 대 조합: 순열과 조합의 차이점 인공 지능 및 기계 학습의 상위 7가지 트렌드 R을 사용한 기계 학습: 알아야 할 모든 것

본격적인 머신 러닝 학습에 관심이 있다면 Grad의 머신 러닝 및 AI 과학 석사에 합류하는 것이 좋습니다 . 20개월 프로그램은 IIT Bangalore 및 Liverpool John Moores University와 협력하여 제공됩니다. Python, Keras, Tensor Flow, MySql, Flask, Kubernetes 등과 같은 업계 관련 프로그래밍 언어, 도구 및 라이브러리에서 역량을 구축할 수 있도록 설계되었습니다 .

이 프로그램은 실습 경험과 기술 구축을 통해 고급 데이터 과학 개념을 에이스하는 데 도움이 될 수 있습니다. 또한 360° 직업 상담, 40,000명 이상의 유료 학습자 네트워킹 풀, 수많은 협업 기회를 통해 upGrad의 이점을 얻을 수 있습니다!

오늘 좌석을 예약하세요!

선형 회귀는 무엇에 사용됩니까?

이러한 종류의 분석은 일반적으로 알려진 다른 변수를 기반으로 한 변수의 값을 예측하는 데 사용됩니다. 다른 하나의 값을 찾는 데 사용되는 변수를 각각 종속 변수와 독립 변수라고 합니다.

scikit Learn을 설치하는 방법은 무엇입니까?

먼저 해당 운영체제나 Python 배포판에서 제공하는 Scikit Learn Linear Regression 버전이 설치되어 있어야 합니다. 이것은 이 옵션을 사용할 수 있는 사람들에게 가장 빠릅니다. 그런 다음 공식적으로 출시된 최신 업데이트 버전을 설치해야 합니다.

scikit은 어떻게 작동합니까?

Scikit 학습 선형 회귀는 항상 일관된 파이썬 인터페이스를 통해 지도 및 비지도 알고리즘의 범위를 제공합니다. 허용되는 BSD 라이선스에 따라 라이선스가 부여됩니다. 다양한 Linux 운영자에게 배포됩니다. 이러한 알고리즘의 사용은 비즈니스 및 교육 분야에서 널리 권장됩니다.