선형 모델(Linear Model)은 입력 변수(feature)와 가중치(weight)들 간의 선형 조합(linear combination)으로 출력 변수(target)를 예측하는 모델을 말합니다. 즉, 입력 변수의 가중합과 편향(bias)을 계산하여 출력 변수를 예측합니다.
선형 모델은 다양한 머신 러닝 작업에 사용됩니다. 예를 들어, 회귀(regression) 문제에서는 입력 변수와 출력 변수 사이의 관계를 선형적으로 모델링하여 출력 변수의 값을 예측합니다. 분류(classification) 문제에서는 입력 변수와 출력 변수 사이의 결정 경계(decision boundary)를 선형으로 모델링하여 데이터를 분류합니다.
선형 모델에는 다양한 종류가 있습니다. 대표적으로는 선형 회귀(Linear Regression), 로지스틱 회귀(Logistic Regression), 서포트 벡터 머신(Support Vector Machine), 선형 판별 분석(Linear Discriminant Analysis) 등이 있습니다.
쉬운 예로, 학생들의 수학 성적을 예측하는 모델을 생각해볼 수 있습니다. 이때 학생들의 공부시간, 출석률, 퀴즈 점수 등의 정보를 입력 변수로 사용하고, 이들의 가중합과 편향을 계산하여 최종 수학 성적을 예측하는 모델을 선형 모델로 구현할 수 있습니다.
코랩에서 실행되는 간단한 코드 예시는 다음과 같습니다.
실행하기 #선형 모델(Linear Model)
import numpy as np from sklearn.linear_model import LinearRegression # 입력 변수와 출력 변수 정의 X = np.array([[1], [2], [3], [4], [5]]) y = np.array([[2], [4], [6], [8], [10]]) # 선형 회귀 모델 생성 및 학습 model = LinearRegression() model.fit(X, y) # 예측 y_pred = model.predict([[6]]) print(y_pred)
위 코드는 입력 변수 X와 출력 변수 y를 정의하고, 이들을 이용하여 선형 회귀 모델을 생성하고 학습시키는 예시입니다. 최종적으로 입력 변수 [[6]]을 이용하여 예측을 수행하고, 결과를 출력합니다.