지난번 프로젝트에서 AI팀이 시계열 예측을 위한 통계적 모델을 사용하였다. 여기서 예측이란 무엇인가? 예측을 위해 데이터를 어떻게 분류하고 이것을 모델로 만드는지 궁금해졌다. 이번 포스팅에선 예측 분석에 대해 작성해보고자한다. 예측 분석이 무엇이고 예측 분석에는 어떤 데이터들이 사용되며 이 데이터들에 어떤 방식으로 접근해야하며 그 기법들에 대해서 알아보자
시간의 흐름에 따라 순차적으로 기록된 데이터
예시: 주식 시장 데이터, 기상 관측 데이터, 웹사이트 트래픽 기록
특정 시점에서 여러 대상에 대해 수집된 데이터
예시: 인구 조사 데이터, 각종 설문 조사 결과 등
시간적 요소와 대상에 대한 다차원적 특성을 모두 포함하는 데이터
예시: 동일한 대상에 대한 연간 수입 조사, 여러 시점에서의 건강 데이터 등
명확하게 정의된 형식과 필드를 가진 데이터로, 주로 데이터베이스에 저장
예시: 고객 정보 데이터베이스, 거래 기록 등
표준 형식이나 구조가 없는 데이터
예시: 텍스트 문서, 이미지, 비디오, 소셜 미디어 포스트 등
디지털 이미지 형식으로 존재하는 데이터
예시: 위성 이미지, 의료 이미지, 사진 컬렉션 등
문서, 단어, 문장 등으로 구성된 데이터
예시: 책, 기사, 소셜 미디어 게시물, 이메일 등
예시: 음성 명령, 음악 파일, 음성 기록 등
거래나 이벤트에 관한 정보를 포함하는 데이터
예시: 판매 데이터, 온라인 구매 기록, 금융 거래 등
데이터를 미리 정의된 범주나 클래스로 분류하는 방법
예시: 이메일 스팸 감지, 질병 진단, 고객 세분화 등
연속적인 값을 예측하는 방법, 선형 회귀나 비선형 회귀 등이 있음
예시: 주택 가격 예측, 온도 변화 예측, 매출 예측 등
유사한 특성을 가진 데이터 포인트들을 그룹화하여 예측하는 방법과 유사
예시: 고객 세분화, 유전자 클러스터링, 시장 세분화 등
사용자의 과거 행동이나 선호도에 기반하여 추첞을 제공하는 방법
예시: 온라인 쇼핑몰의 제품 추천, 영화 추천 서비스 등
상호작용을 통해 최적의 행동전략을 학습하는 방법
예시: 자율 주행 자동차의 경로 최적화, 게임 AI 개발 등
텍스트 데이터를 분석하여 감성 분석, 문장 생성, 기계 번영 등을 수행
예시: 챗봇, 감성 분석, 기계 번역 시스템
예시: 얼굴 인식, 객체 감지, 의료 영상 분석 등
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
# 데이터 로드
data = pd.read_csv('housing_data.csv')
# 데이터 탐색
print(data.head())
# 데이터 분할
X = data[['feature1', 'feature2']]
y = data['price']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 선형 회귀 모델 학습
model = LinearRegression()
model.fit(X_train, y_train)
# 예측 및 평가
y_pred = model.predict(X_test)
mse = mean_squared_error(y_test, y_pred)
print(f'Mean Squared Error: {mse}')
# 결과 시각화
plt.scatter(y_test, y_pred)
plt.xlabel('Actual Prices')
plt.ylabel('Predicted Prices')
plt.title('Actual vs Predicted House Prices')
plt.show()
예측 분석을 위해 가장 중요한 것은 '무엇을 예측할 것인지' 에 대해 정하는 것이다.
이를 정했으면 예측하기 위해 사용할 수 있는 '데이터'가 있는지 이 '데이터'는 어떻게 생성되고 어떤 속성을 가졌는지를 파악해 그 다음에 어떤 방식으로 분석할지를 정해야 하는 것이다.