PROGRESS
12 / 14
단원
데이터 구조화: AI 전처리 17
데이터의 규칙: 예측 로직 14
옷의 시너스: 판단 로직 1
예와 아니오: 판단 로직 6
닮은꼴 찾기: 관계 로직 7
최적의 경로: 강화 로직 7
층층이 지능: 신경망 로직 7
전체 목록
QUESTION 12 #339
사이킷런 입력 규격에 맞게 1차원 데이터를 2차원 행렬로 변환하고 모델에 학습시키는 과정을 완성하세요.
main.py
import numpy as np
from sklearn.linear_model import LinearRegression
data = np.array([100, 200, 300]) # 1차원
target = np.array([10, 20, 30])
# 사이킷런 입력을 위해 (3, 1) 형태로 변환
X_2d = data.(-1, )
model = LinearRegression()
model.fit(X_2d, target)
print(f"데이터 모양: {X_2d.shape}")
HINT
모양을 바꾸는 메서드명과 열의 크기를 지정하는 숫자를 입력하세요.
실행 결과 예시
reshape, 1
INTERACTIVE SHELL
Shift + Enter 로 즉시 실행
📐 데이터의 형태(Shape)가 중요한 이유
컴퓨터는 데이터의 개수와 특성의 개수를 구분해야 합니다.
[100, 200, 300]은 단순히 데이터가 3개 있다는 뜻이지만,[[100], [200], [300]]은 "1개의 특성을 가진 데이터가 3행(3개) 있다"는 명확한 행렬 구조를 가집니다.
데이터가 아무리 많아도 행렬 연산을 수행하는 머신러닝 알고리즘에서는 이와 같은 2차원 구조(N rows, M columns)가 필수적입니다.