logo

강의 핵심 요약

Python부터 기초 통계, 머신러닝, 강화학습, 시계열 분석까지 강의 순서에 따른 핵심 정리

빅데이터 프로그래밍

  • 파이썬(Python): 특정 분야에 한정되지 않는 범용 프로그래밍 언어. 데이터 분석·인공지능·업무 자동화·웹 개발 등에 활용
    • 간결한 문법으로 코드를 비교적 쉽게 읽고 작성할 수 있으며, 풍부한 라이브러리로 생산성이 높음
    • 세계적으로 널리 쓰이는 인기 언어. TIOBE 지수에서 2020년대 들어 주요 언어 중 가장 높은 인기를 기록
    • 통계 전용 언어가 아니며, 머신러닝과 인공지능 개발에도 널리 사용
  • 실행 과정: CPython은 소스 코드를 바이트코드로 컴파일한 뒤 Python 가상 머신에서 실행
  • 실행 환경: Miniforge는 Python과 패키지 환경을 관리하고, Jupyter와 Colab은 코드와 설명을 셀 단위로 작성·실행하는 노트북 환경을 제공
    • 셀의 화면상 위치보다 실제 실행 순서가 중요하며, 앞에서 만든 변수는 같은 실행 환경에서 유지
  • 변수와 함수: 변수는 객체에 연결한 이름이고, 함수는 입력(인자)을 받아 정해진 작업을 수행
  • 판다스(pandas): 행과 열로 구성된 표 데이터를 다루는 라이브러리
    • 열 선택: 분석에 필요한 변수 선택
    • 인덱스 기반 선택: 행의 이름이나 위치로 관측값 선택
    • 조건 검색: 비교 연산과 논리 조건으로 필요한 행 추출

탐색적 데이터분석

  • 탐색적 데이터 분석(EDA): 자료의 구조와 분포, 변수 사이의 관계를 살펴보며 특징과 추가 질문을 찾는 과정
    • 확인적 데이터 분석(CDA)은 미리 정한 가설을 데이터로 평가
  • 기술 통계(descriptive statistics): 수집한 자료의 특징을 수치와 그래프로 요약·설명
    • 예: 조사에 응답한 고객들의 평균 만족도와 응답 비율 정리
  • 변수의 종류: 수치형은 양이나 크기, 범주형은 집단이나 유형을 표현
    • 숫자로 저장된 값도 의미가 선박 종류나 등급이면 범주형일 수 있음
  • 중심경향치: 자료의 중심을 나타내는 값
    • 평균(mean): 모든 값을 더해 관측값 개수로 나눈 값. 극단적인 값의 영향을 받기 쉬움
    • 중간값(median): 크기순으로 정렬했을 때 가운데 위치의 값. 중앙값·중위수라고도 하며, 극단적인 값의 영향을 상대적으로 적게 받음
    • 최빈값(mode): 가장 자주 나타나는 값. 범주형 자료에도 적용 가능
  • 변산성: 자료가 얼마나 퍼져 있는지를 나타내는 성질
    • 범위(range): 최댓값에서 최솟값을 뺀 값
    • 분산(variance): 평균에서 떨어진 정도를 제곱해 요약한 값
    • 표준편차(standard deviation): 분산의 제곱근. 원래 변수와 같은 단위로 해석
  • 사분위수와 사분위범위: 자료를 정렬해 네 구간으로 나누는 경계와 가운데 구간의 폭
    • 제1사분위수 Q1​: 25백분위수
    • 제2사분위수 Q2​: 50백분위수, 즉 중간값
    • 제3사분위수 Q3​: 75백분위수
    • 사분위범위(interquartile range, IQR): IQR=Q3​−Q1​. 가운데 50% 자료의 퍼짐으로, 이상치에 강건한 척도
    • 예: Q1​=12, Q3​=30이면 IQR=18
  • 이상치 후보 식별
    • IQR 기준(Tukey 방법): Q1​−1.5IQR 미만 또는 Q3​+1.5IQR 초과
    • 3시그마 규칙: 평균에서 표준편차의 3배 이상 벗어난 값. 평균과 표준편차 자체가 이상치에 취약
  • 분포의 특성: 한 변수의 중심·퍼짐·비대칭성과 특이한 값을 확인
    • 왜도(skewness): 분포의 비대칭 정도. 양수면 오른쪽(큰 값 쪽) 꼬리, 음수면 왼쪽 꼬리의 영향이 큼
    • 첨도(kurtosis): 평균에서 멀리 떨어진 값의 영향. 정규분포의 첨도는 3, 초과 첨도(첨도 − 3)는 0
방법 핵심 용도
상자-수염 그림 중간값·사분위수·이상치 후보 등을 요약. 상자의 길이는 IQR
히스토그램 수치형 값을 구간으로 나누어 구간별 빈도를 막대로 표시
커널 밀도 추정 수치형 변수의 분포를 매끄러운 밀도 곡선으로 표현

추론 통계

  • 추론 통계(inferential statistics): 표본을 근거로 모집단의 특성을 추정하거나 가설을 검정
    • 기술 통계는 수집한 자료 자체를 요약하고, 추론 통계는 관측하지 않은 모집단으로 결론을 확장
  • 모집단과 표본: 모집단은 관심 대상 전체, 표본은 실제로 조사한 일부
    • 모수: 모집단의 특성을 나타내는 값. 예: 모평균
    • 통계량: 표본에서 계산한 값. 예: 표본평균
  • 추정: 통계량으로 모수를 추측하는 절차
    • 점 추정: 모수를 하나의 값으로 추정
    • 구간 추정: 모수가 포함될 것으로 기대하는 범위로 추정해 불확실성을 함께 표현
  • 표집 오차: 표본만 관찰하기 때문에 생기는 통계량과 모수의 차이
    • 같은 조건에서 표본이 커질수록 일반적으로 표집 오차 감소
    • 비표집 오차: 편향된 질문, 무응답, 입력 실수 등 설계·수집·처리 과정의 오류. 표본 수만 늘려도 해결되지 않음
  • 표집분포: 같은 크기의 표본을 반복해서 뽑아 계산한 통계량들이 이루는 분포
  • 신뢰구간: 표본의 불확실성을 반영해 모수를 추정하는 구간. 통계량 ± 오차범위
    • 신뢰수준이 높을수록, 자료의 변산성이 클수록 구간이 넓어지고, 표본이 클수록 좁아짐
    • 95% 신뢰수준: 같은 절차로 표본 추출과 구간 계산을 반복할 때, 만들어진 구간의 약 95%가 참 모수를 포함
    • 한 번 계산한 구간에 모수가 들어 있을 확률이 95%라는 뜻은 아님
  • 부트스트랩: 관측한 표본에서 복원추출을 반복해 통계량의 변동과 불확실성을 추정
  • 가설검정: 귀무가설을 기준으로 관측 결과가 얼마나 이례적인지 평가
    • 귀무가설(H0​): "차이가 없다", "영향이 없다"처럼 검정의 기준이 되는 가설
    • 대립가설(H1​): "차이가 있다"처럼 연구자가 입증하려는 가설
    • 유의확률(p-value): 귀무가설과 검정의 가정 아래에서 관측 결과만큼 또는 더 극단적인 결과가 나올 확률
    • 유의확률이 정한 유의수준(관례적으로 0.05)보다 작으면 귀무가설 기각
    • 기각하지 못한 결과는 귀무가설이 참이라는 증명이 아니라 기각할 근거가 부족하다는 의미
    • 1종 오류: 귀무가설이 참인데 기각하는 오류
    • 2종 오류: 귀무가설이 거짓인데 기각하지 못하는 오류
  • 독립표본 t 검정: 서로 독립인 두 집단의 평균 차이를 검정하는 방법

회귀 분석

  • 산점도(scatter plot): 두 연속형 변수의 값을 관측 대상별 한 점으로 표시해 관계를 확인
    • 예: 가로축에 선박 길이, 세로축에 선박 중량을 두고 선박별로 점 표시
  • 상관계수: 두 변수의 선형 관계의 방향과 강도를 −1부터 +1 사이의 값으로 요약
    • 양의 상관: 한 변수가 클수록 다른 변수도 큰 경향
    • 음의 상관: 한 변수가 클수록 다른 변수는 작은 경향
    • 강도는 절댓값으로 판단. 예: −0.8이 0.2보다 강한 선형 관계
    • 상관계수가 0에 가까워도 비선형 관계가 존재할 수 있음
  • 상관과 인과: 상관관계만으로 원인과 결과를 판단할 수 없음
    • 제3의 변인: 두 변수에 모두 영향을 주는 변수. 예: 인구가 범죄 건수와 종교 시설 수를 함께 늘림
    • 심슨의 역설: 집단별 관계와 전체를 합친 관계가 다르게 나타남
    • 벅슨의 역설: 표본이 선택된 기준 때문에 실제와 다른 상관이 나타남
  • 포트폴리오: 자산별 수익률과 위험(수익률의 표준편차)뿐 아니라 자산 사이의 상관관계도 전체 위험에 영향
    • 상관관계가 낮은 자산을 섞을수록 같은 기대 수익에서 위험을 낮출 수 있음
  • 선형 회귀: 독립변수와 종속변수의 관계를 계수와 절편으로 표현
    • 최소제곱법: 실제값과 예측값의 차이를 제곱한 합이 작아지도록 계수를 추정
    • 단순 회귀의 계수: 독립변수가 한 단위 증가할 때 종속변수 예측값의 변화량
    • 계수의 유의성 검정: 귀무가설 "회귀계수는 0"을 검정. 유의해도 인과관계가 성립하는 것은 아님
  • 다중 회귀: 여러 독립변수로 종속변수를 설명
    • 계수: 모형의 다른 독립변수가 같을 때(통계적 통제) 해당 변수 한 단위 증가에 따른 예측 변화량
    • P>|t|: 다른 변수를 통제했을 때 개별 회귀계수가 0인지 검정하는 유의확률
    • 표준화: 단위가 다른 독립변수의 계수 크기를 비교할 때 사용
  • 결정계수 R2: 평균만으로 예측하는 기준과 비교해 모형이 제곱 오차를 얼마나 줄이는지 나타내는 지표
    • "종속변수 분산의 R2×100%를 설명"으로 해석
    • 수정 결정계수: 불필요한 변수 추가에 패널티를 주어 모형 간 비교에 사용
  • 더미 코딩: 범주형 독립변수를 수치로 표현
    • 절편이 있는 일반적인 모형에서는 범주가 k개일 때 기준 범주를 제외한 k−1개 더미 변수 사용

지도학습: 회귀

  • 머신러닝: 데이터에서 패턴을 추출해 예측이나 판단에 활용하는 인공지능 기법
    • 인공지능 ⊃ 머신러닝 ⊃ 딥러닝. 딥러닝은 머신러닝의 한 가지 기법
    • 통계학은 데이터의 이해와 추론, 머신러닝은 예측과 의사결정에 더 중점
종류 학습에 쓰는 정보 대표 문제
지도학습 입력과 정답 회귀(연속적인 수치 예측), 분류(범주 예측)
비지도학습 정답 없는 입력 군집(비슷한 것끼리 묶기), 차원 축소(변수 요약)
강화학습 행동에 대한 보상 시행착오로 누적 보상이 커지는 정책 학습
  • 지도학습(supervised learning): 입력과 정답이 함께 있는 데이터로 입력과 결과의 관계를 학습
  • 회귀(regression): 연속적인 수치형 종속변수의 값을 예측하는 문제
    • 예: 선박 중량, 거래 가격, 배송 소요 시간 예측
  • 회귀나무: 입력 조건을 질문으로 나누고, 도착한 잎(leaf)에 모인 학습 사례의 정답 평균으로 수치를 예측
  • 선형 회귀 모형: 입력 변수에 계수를 곱해 합하고 절편을 더해 예측
  • 회귀 평가 지표
    • 평균 절대 오차(MAE): 오차의 절댓값을 평균. 원래 종속변수와 같은 단위
    • 평균 제곱근 오차(RMSE): 제곱 오차 평균의 제곱근. 큰 오차에 더 민감하며 원래 종속변수와 같은 단위
  • 하이퍼파라미터: 학습 전에 정하는 설정값. 예: 나무의 깊이 max_depth
  • 일반화와 과대적합: 일반화는 학습한 패턴을 새로운 사례에도 적용하는 능력
    • 과대적합: 학습 자료를 지나치게 따라가 학습 오차는 작지만 새 자료의 오차가 커지는 상태
  • 데이터 분할: 학습 데이터로 모형을 학습하고, 검증 데이터로 하이퍼파라미터 등 설정을 선택한 뒤, 테스트 데이터로 최종 성능 평가

지도학습: 분류

  • 분류(classification): 범주형 종속변수가 어느 범주에 속하는지 예측하는 문제
    • 예: 정상·불량, 지연·정상, 선박 유형 예측
    • 정답을 0·1·2로 저장해도 범주를 뜻한다면 분류 문제
  • 분류나무: 조건을 따라 나눈 집단의 범주 비율 등을 이용해 클래스와 확률을 예측
    • predict(): 최종 클래스, predict_proba(): 클래스별 확률
  • 로지스틱 회귀: 이름에 회귀가 있지만 분류에 사용하는 모형. 이진 분류에서는 로지스틱 함수로 입력의 선형 결합을 확률로 변환
  • 혼동행렬: 실제 범주와 예측 범주를 비교해 정답과 오류의 유형을 정리
    • 진양성(TP): 실제 양성을 양성으로 예측
    • 위양성(FP): 실제 음성을 양성으로 예측
    • 위음성(FN): 실제 양성을 음성으로 예측
    • 진음성(TN): 실제 음성을 음성으로 예측
  • 평가 지표: 어떤 오류의 비용이 큰지에 따라 선택
    • 정확도: 전체 중 맞힌 비율
    • 정밀도: 양성으로 예측한 것 중 실제 양성의 비율, TP/(TP+FP)
    • 재현도(민감도): 실제 양성 중 양성으로 찾아낸 비율, TP/(TP+FN)
    • 특이도: 실제 음성 중 음성으로 맞힌 비율, TN/(TN+FP). 위양성률은 1− 특이도
    • F1: 정밀도와 재현도의 조화평균
  • 문턱값: 양성 확률을 양성·음성으로 바꾸는 기준
    • 문턱값을 높이면 양성 예측이 줄어 정밀도·특이도는 높아지고 재현도는 낮아지는 경향
    • 문턱값을 낮추면 양성 예측이 늘어 재현도는 높아지고 정밀도·특이도는 낮아지는 경향
    • 문턱값은 검증 데이터로 선택하고 테스트 데이터로 최종 평가
  • ROC·PR 곡선: 문턱값에 따른 성능의 변화를 비교
    • ROC: 가로축 위양성률, 세로축 재현도. 곡선 아래 면적(AUC)이 0.5면 무작위 수준, 1이면 완전한 구분
    • PR: 가로축 재현도, 세로축 정밀도. 평균 정밀도(AP)로 곡선을 요약하며, 무작위 기준선은 양성 비율

앙상블

  • 앙상블(ensemble): 여러 모형의 예측을 결합하는 방법
    • 분류는 다수결이나 확률 평균, 회귀는 예측값의 평균으로 결합
    • 장점: 서로 다른 모형의 우연한 오류를 줄여 단일 모형보다 안정적
    • 단점: 학습 시간과 자원 증가, 예측 속도 저하, 예측 근거 해석의 어려움
  • 배깅: 복원추출한 데이터로 여러 모형을 독립적으로 학습하고 예측을 평균하거나 투표로 결합
    • 랜덤 포레스트: 데이터와 변수 선택의 무작위성을 활용하는 여러 의사결정나무의 결합
  • 부스팅: 앞선 모형의 오류를 보완하는 방향으로 모형을 순차적으로 추가
    • AdaBoost: 이전 모형이 잘못 분류한 사례에 가중치를 주어 다음 모형 학습
    • 경사 부스팅: 손실을 줄이는 방향으로 새 모형을 더해 남은 오류 보완. 예: XGBoost, LightGBM, CatBoost
  • 스태킹: 여러 모형의 예측을 입력으로 받아 최종 예측을 만드는 모형을 추가로 학습

비지도학습

  • 비지도학습(unsupervised learning): 정답 없이 데이터의 구조와 패턴을 탐색
    • 주요 활용: 군집분석, 차원 축소, 이상치 탐지
방법 핵심 목적 예시
군집분석(clustering) 비슷한 관측값끼리 집단 구성 구매 특성이 비슷한 고객 묶기
차원 축소(dimensionality reduction) 많은 변수를 더 적은 축으로 요약 센서 변수 50개를 2개 축으로 표현
  • 군집 방법의 종류
    • 파티션 방법: 수평적인 군집들로 나눔. 예: K-Means
    • 계층적 군집: 단계적으로 합치거나 나누며, 덴드로그램을 자르는 높이에 따라 군집 수 결정
    • 밀도 기반 군집(DBSCAN): 밀집 영역을 군집으로 찾음. 복잡한 모양의 군집과 이상치 탐지에 유용
  • K-Means: 관측값을 가까운 중심에 배정하고 중심을 갱신하며 군집 구성
    • 군집 수 K는 분석가가 미리 정함
    • 거리 기반 방법이므로 변수의 단위와 범위가 다르면 표준화 검토
  • 군집 평가
    • 관성(inertia): 각 관측값과 소속 군집 중심 사이의 거리 제곱합. 작을수록 조밀하지만 K를 늘리면 거의 항상 감소
    • 엘보우 방법: K에 따른 관성 그래프가 급하게 내려가다 완만해지는 지점을 후보로 선택
    • 실루엣 계수: 같은 군집에는 가깝고 다른 군집과는 먼 정도. −1부터 1 사이이며 클수록 잘 분리
  • 차원 축소의 목적: 시각화, 계산 효율 향상, 과적합 방지, 차원의 저주 완화, 노이즈 제거
  • 주성분 분석(PCA): 자료의 분산을 크게 담는 방향을 찾아 적은 수의 축으로 표현
    • 제1주성분(PC1): 데이터가 가장 크게 퍼지는 방향. 제2주성분은 PC1과 직교하며 남은 분산을 가장 많이 보존
    • 차원을 줄이면 일부 정보가 사라질 수 있으므로 분산 설명 비율 확인
    • t-SNE, UMAP: 시각화에 주로 쓰는 비선형 차원 축소 기법
  • 이상치(outlier): 자료의 일반적인 패턴에서 크게 벗어난 관측값
    • 결측치는 값이 없거나 기록되지 않은 상태로, 이상치와 구별
    • 입력 오류·측정 오류일 수도 있고 실제로 발생한 드문 사건일 수도 있음
    • 원본과 맥락을 확인한 뒤 수정·유지·제외 여부를 판단. 탐지 기준을 기계적으로 적용해 삭제하지 않음
    • 삭제하려면 객관적 이유가 필요하고, 삭제한 경우 결과 보고에 포함
  • 이상치 탐지 알고리즘
    • EllipticEnvelope: 정상 데이터를 하나의 타원형 분포로 보고 멀리 떨어진 점 탐지
    • OneClassSVM: 정상 데이터가 차지하는 영역의 경계를 학습
    • Isolation Forest: 무작위 분할 트리에서 적은 분할로 쉽게 고립되는 점을 이상치로 판단
    • LocalOutlierFactor(LOF): 관측값의 국소 밀도를 주변 이웃의 밀도와 비교

강화 학습

  • 강화학습(reinforcement learning): 행위자(agent)가 환경에서 행동을 선택하고 보상을 받아 시행착오로 전략을 개선하는 학습 방식
    • 상태: 현재 상황
    • 행동: 행위자가 선택하는 조작이나 결정
    • 보상: 행동 결과에 대해 환경에서 받는 평가 신호
    • 수익(return): 현재부터 미래까지 받을 보상의 누적
  • 지도학습과의 차이: 지도학습은 정답이 있는 데이터로 예측 오차를 줄이고, 강화학습은 시행착오로 보상을 최대화
    • 보상은 정답보다 적고 늦게 주어지므로, 어떤 행동이 보상에 기여했는지 판단(신용 할당)하고 보상을 얻을 행동을 직접 찾아야(탐색) 함
  • 정책(policy): 상태에 따라 행동을 선택하는 규칙
  • 가치(value): 정책을 계속 따를 때 기대되는 수익
    • 상태 가치: 현재 상태에서 정책을 따를 때의 기대 수익
    • 행동 가치: 특정 행동을 먼저 한 뒤 정책을 따를 때의 기대 수익
    • 이득(advantage): 행동 가치와 상태 가치의 차이
    • 벨만 방정식: 현재 가치 = 즉시 보상 + 다음 상태의 가치
  • 학습 목표: 당장의 보상뿐 아니라 이후 결과까지 고려해 기대 누적 보상이 커지는 정책 학습
    • 예: 물류 로봇이 충돌을 피하면서 목적지에 도달하는 이동 전략 학습
  • 실습 도구: Gymnasium은 환경과 상호작용하는 인터페이스를, Stable-Baselines3는 강화학습 알고리즘 구현을 제공
  • 사람의 피드백 활용(RLHF): 사람의 선호를 보상 신호로 활용해 언어 모델 등의 행동을 개선
    • 지도 미세 조정 → 보상 모델 학습 → 강화학습의 3단계
  • 주요 어려움: 많은 시행착오와 계산 비용, 보상 설계, 학습 안정성, 실제 환경에서의 안전한 탐색

시계열 데이터 분석

  • 시계열 데이터: 시간 순서에 따라 관측한 자료. 관측 순서와 시간 간격이 분석에서 중요
  • 시계열 분석의 종류: 예측(미래 값), 대치(누락된 값 채우기), 이상 탐지, 분류
개념 의미 예시
추세(trend) 장기적인 증가·감소 패턴 수년에 걸쳐 선박 운항량이 증가
계절성(seasonality) 달력과 관련된 일정한 간격으로 반복되는 패턴 매년 여름에 전력 사용량이 증가
주기성(cycle) 증가와 감소가 반복되지만 간격이 일정하지 않은 패턴. 대체로 계절성보다 간격이 긺 경기 확장과 침체에 따른 물동량 변동
자기상관(autocorrelation) 같은 시계열에서 일정한 시차(lag)만큼 떨어진 관측값 사이의 상관 이번 달 수요와 지난달 수요의 관계
정상성(stationarity) 평균·분산 등 통계적 특성이 관측 시점에 따라 달라지지 않는 성질 추세·계절성이 있으면 비정상
이상점(outlier) 패턴에서 벗어난 특이 사례 공장 화재 시점의 판매량 급감
  • 날짜 인덱스: 날짜·시간을 기준으로 정렬하고 원하는 기간을 선택
    • diff: 이전 관측값과의 차이, pct_change: 변화 비율
  • 간격 변경과 집계
    • resample: 시간 구간별 합계·평균 등 집계
    • asfreq: 지정한 간격의 날짜 값 선택. 빈 값은 ffill(이전 값)이나 bfill(이후 값)으로 채움
    • 그룹별 집계: 시간대·요일 등으로 묶어 평균을 비교해 반복 패턴 확인
  • 이동 평균: 인접한 일정 구간의 평균으로 단기 변동을 완화
  • 시계열 분해: 추세·계절 성분·나머지 성분으로 분리해 패턴을 해석
    • 덧셈 분해: 수준이 달라져도 계절 변동의 폭이 대체로 일정한 경우
    • 곱셈 분해: 수준이 높아질수록 계절 변동의 폭도 비례해 커지는 경우
    • 계절 조정: 원자료에서 계절 성분을 제거
    • STL: LOESS를 이용해 추세와 계절 성분을 추정하는 분해 방법
  • 자기상관함수(ACF): 여러 시차의 자기상관을 구해 정상성·계절성 등 구조 탐색
  • 차분: 일정 시차를 둔 관측값의 차이. 추세를 줄여 비정상 시계열을 정상 시계열에 가깝게 만드는 데 활용
    • 계절 차분: 같은 계절에 해당하는 이전 시점과의 차이 계산. 예: 전년 동월 대비 변화량
  • 단순 예측: 다른 모형과 비교할 기준으로 활용
    • 마지막 값: 모든 예측값을 마지막 관측값으로 지정
    • 평균: 과거 관측값의 평균으로 예측
    • 표류(drift): 과거의 평균 변화량을 미래에 적용
    • 계절성 반영: 같은 계절의 마지막 값이나 평균으로 예측
  • Prophetverse: Prophet 모형의 원리를 확장한 예측 라이브러리. 계절성을 추가해 반복 패턴을 반영