머신러닝에는 여러 종류가 있지만, 가장 기본이 되는 것은 회귀(Regression)이다. 숫자 데이터를 보고 그 사이의 규칙을 찾아내어, 새로운 숫자가 들어왔을 떄 결과를 맞히는 것이다.
데이터들을 가장 잘 설명하는 단 하나의 직선을 찾는 과정이다.
파이썬에서 머신러닝을 할 때 전 세계 엔지니어들이 가장 많이 사용하는 도구이다. 복잡한 수학 계산을 우리가 직접 할 필요 없이, 명령 몇 줄로 AI 모델을 만들 수 있게 해준다.
import pandas as pd
from sklearn.linear_model import LinearRegression
import numpy as np
class SimpleMLPredictor:
def __init__(self, file_path: str):
self.df = pd.read_csv(file_path)
self.model = LinearRegression()
def train(self):
# 머신러닝에서 X는 대문자(행렬), y는 소문자(벡터)로 쓰는 것이 관례이다.
X = self.df[['age']]
y = self.df['score']
self.model.fit(X, y)
print("AI 모델 학습이 완료되었습니다.")
def predict_score(self, new_age: int):
# 입력값도 2차원 배열 형태여야 한다.
prediction = self.model.predict([[new_age]])
return prediction[0]
# --- 실행부 ---
predictor = SimpleMLPredictor('test_data.csv')
predictor.train()
test_age = 30
predicted = predictor.predict_score(test_age)
print(f"나이가 {test_age}세인 사람의 예상 점수는 {predicted:.2f}점입니다.")
