Skip to content

데이터사이언스개론

데이터 사이언스의 정의와 기반 개념

1. 데이터 사이언스의 의미

  • 데이터 사이언스(Data Science): 과학적 방법론을 활용하여 정형/비정형 데이터를 포함한 다양한 데이터로부터 통찰력 있는 정보를 도출하기 위한 기술
  • 수학, 컴퓨터공학, 통계학, 도메인 지식 등 다양한 분야의 기법을 종합하는 융합적 성격

핵심 용어

용어설명
정형 데이터 (Structured Data)구조화 되어있는 데이터
비정형 데이터 (Unstructured Data)구조화된 형태가 없고 연산이 불가능한 데이터
도메인 지식 (Domain Knowledge)특정 산업분야에서 널리 통용되는 기술적 지식

데이터 사이언스 발전과정

  • 1960년대: 데이터베이스 개념 도입
  • 1970년대: 분석예측 방법론 발전
  • 1980년대 이후: AI 기법 등의 적용
  • 최근: 빅데이터와 클라우드 컴퓨팅

분석의 난이도와 가치 (중요)

  1. 현황 분석 - 과거에 무슨 일이 일어났나?
  2. 진단(원인) 분석 - 과거에 왜 그런 일이 일어났나?
  3. 예측 분석 - 무슨 일이 일어날 것인가?
  4. 예측 최적화 분석 - 어떻게 원하는 결과가 일어나게 할 것인가?

2. 빅데이터의 5V (매우 중요)

특성영문설명
크기Volume대량의 데이터
속도Velocity데이터 생성 속도의 증가
다양성Variety이미지, 동영상, 음성까지 사용
정확성Veracity정확한 정보의 수집 필요
가치Value데이터 분석을 통해 가치 창조

3. 데이터 분석의 주요 방법론

종류정의예시
기술통계데이터가 가진 통계적 특성 분석평균, 표준편차, 빈도수, 비율, 최빈치
추론통계표본분석 기반으로 모집단 특성 추론평균/비율 차이, 회귀분석, 상관분석, 시계열분석
데이터 마이닝데이터를 분석하여 내재된 패턴과 규칙 도출군집, 연관, 분류, 예측분석, 텍스트마이닝

4. 데이터 사이언스 프로세스 (시험 출제 가능성 높음)

  1. 문제 정의 - 해결할 문제를 명확히 정의, 정량화 가능한 목표 설정
  2. 가설 수립 - 탐구할 만한 가치 있는 가설 세우기
  3. 데이터 수집 - 전체 과정의 70% 시간 소요, 누락/오류 파악
  4. 분석 구현 - 탐색적 데이터 분석, 통계적 추론, 다양한 분석기법
  5. 결과 도출 및 피드백 - 인과적 결론 도출, 시뮬레이션 검증

5. 통계학 기초 (매우 중요)

기술통계학 vs 추론통계학

구분기술통계학 (Descriptive)추론통계학 (Inferential)
목적수집된 데이터를 설명수집된 데이터 기반으로 추론
방법숫자 요약, 그래프모집단 추정, 가설 검정

자료의 종류

분류설명
정성적 자료비수치적 (성별, 상/중/하)
정량적 자료수치적 (키, 몸무게, 성적)

자료의 요약 (핵심 개념)

지표설명
(산술)평균 (Mean)모든 자료를 더해서 개수로 나눈 값. 극단적 값에 크게 영향
중앙값 (Median)크기 순 나열 시 가운데 값. 서열자료에 사용
최빈값 (Mode)빈도수가 가장 많은 자료. 명목자료의 대푯값
편차개별 자료 - 평균. 평균에서 떨어진 정도
분산편차 제곱의 합 / 변량의 개수
표준편차분산의 제곱근 (√분산)
4분위수데이터를 4등분하는 Q1, Q2(=중앙값), Q3

데이터의 종류 (특성에 따른 구분)

  • 범주형 데이터: 명목형(성별, 혈액형), 순서형(순서 관계 존재)
  • 수치형 데이터: 이산형(정수값, 출산횟수), 연속형(실수값, 신장, 체중)

독립변수 vs 종속변수 (중요)

독립변수종속변수
설명변수 (Explanatory)반응변수 (Response)
예측변수 (Predictor)결과변수 (Outcome)
위험인자 (Risk factor)표적변수 (Target)
종속변수에 영향을 주는 변수독립변수의 변화에 따라 변하는 변수

통계학 기본 개념과 파이썬 기초

1. 확률의 개념 (매우 중요)

  • 확률: 특정 결과가 일어날만한 정도
  • 추론: 표본을 통해 모집단의 특성을 과정하는 것

확률 법칙

  • 덧셈 법칙: P(A ∪ B) = P(A) + P(B) - P(A ∩ B)
  • 배반사건: 두 사건이 동시에 발생할 수 없는 사건 → P(A ∩ B) = 0
  • 조건부 확률: P(A|B) = P(A ∩ B) / P(B), 단 P(B) >= 0
독립사건종속사건
초기 사건이 다음 사건에 영향 X초기 사건이 다음 사건에 영향 O
P(A ∩ B) = P(A) · P(B)P(A ∩ B) = P(A) · P(B

2. 순열과 조합

구분순열 (Permutation)조합 (Combination)
순서고려함고려하지 않음
동일판단{a,b} ≠ {b,a}{a,b} = {b,a}
계산nPr = nCr × r!nCr = n! / (r!(n-r)!)

3. 확률변수와 확률분포 (핵심)

  • 확률변수: 일정한 확률을 가지고 발생하는 사건에 값을 부여한 변수

    • 이산확률변수: 특정 수치만으로 나타낼 수 있는 확률변수
    • 연속확률변수: 범위 내에서 연속적 값을 취하는 확률변수
  • 확률분포: 확률변수가 특정 값을 취할 확률을 제시하는 분포

  • 확률밀도함수:

    • 모든 x에 대하여 f(x) >= 0
    • 전체 적분 = 1
    • P(a < X < b) = ∫ₐᵇ f(x)dx

정규분포 & 표준정규분포

  • 정규분포: 좌우대칭의 종모양, 가우스분포
  • 표준화: Z = (X - μ) / σ
    • 다른 분포 비교 가능, 특정 현상에 대한 확률 예측

이산확률분포의 종류

분포설명
베르누이 분포베르누이 시행(성공/실패) 1회 수행 시의 확률분포
이항 분포베르누이 시행 n번 반복 시 성공 횟수의 확률분포
초기하 분포N개 중 m개 성공, n개 비복원추출 시 성공 개수
포아송 분포단위 시간/공간에서 성공 횟수에 대한 분포

4. 통계적 추론 (시험 핵심)

  • 추론통계학: 표본에서 모집단의 모수를 추정
  • 추정: 표본평균, 표본분산, 표본비율로 모집단 모수 분석

신뢰구간

  • P(X̄ - z_(α/2) · σ/√n ≤ μ ≤ X̄ + z_(α/2) · σ/√n) = 1 - α
  • 신뢰도 높을수록 → 신뢰구간 넓어짐 → 정보의 가치 줄어듦
  • 95% 신뢰수준: α = 0.05, 양쪽 각각 0.025

가설 검정 (매우 중요)

  • 귀무가설: 효과가 없다 (기존 주장)
  • 대립가설: 효과가 있다 (새로운 주장)
  • p-value: 귀무가설이 사실이라는 가정에서 현재와 같거나 더 극단적인 자료가 얻어질 확률
판단조건
귀무가설 기각p-value < α
귀무가설 채택p-value > α

5. 통계적 모델에 따른 분류

모수적 방법비모수적 방법
특정 분포(정규분포 등)를 전제분포 가정 없음
표본이 충분할 때표본수 적거나 정보 없을 때

6. 대표적 통계분석 방법 요약 (시험 핵심)

방법요점
빈도분석데이터가 빈도, 집단간 빈도차 검증
평균분석 (t-test)데이터가 점수, 두 집단간 평균점수차 검증
변량분석 (ANOVA)데이터가 점수, 세 집단 이상 평균점수차 검증, 가장 많이 사용
상관분석두 변수간 상관 정도 분석, 상관계수 -1~1
회귀분석독립변수가 종속변수에 미치는 인과관계 분석, 결정계수(R²)

7. 통계 분석 프로세스 요약

  1. 기술통계로 표본 특성 분석
  2. 확률과 확률분포 이해
  3. 표본수 결정 및 표본추출
  4. 추정 (표본 → 모수)
  5. 가설검정
  6. 통계분석방법 적용

데이터와 데이터베이스

1. 데이터의 계층 (중요)

개념설명
데이터 세트데이터 객체들의 집합. 파일 또는 DB에 해당
데이터 객체관찰 대상인 특정 실체 (레코드, 행, 벡터, 패턴)
데이터 속성관찰 대상의 유효한 특징 (열, 변수, 특징, 차원)

2. 데이터 품질 (시험 출제 가능)

데이터 품질을 떨어뜨리는 요인

  • 결측치 (Missing Values): 데이터가 비어 있는 경우 (NULL, NA)
  • 노이즈 (Noise): 데이터에 오류
  • 불일치 (Inconsistency): 데이터의 정합성이 없는 경우

데이터 품질 지표 (매우 중요)

지표설명
완전성필수 속성은 반드시 값이 채워져 있어야 함
유효성업무규칙을 준수하여 의미 있는 값
유일성동일 데이터는 중복 없이 하나로 관리
정합성관련 테이블/속성 간 데이터 값이 모순되지 않아야 함
일치성연계 받은 정보를 임의 삭제/수정 없이 활용
적시성업무적으로 적시에 제공되어 활용 가능

3. 데이터 전처리 과정 (핵심)

기법설명
데이터 정제 (Cleansing)결측치 채우기, 모순 데이터 수정
데이터 통합 (Integration)여러 출처의 데이터 결합
데이터 축소 (Reduction)샘플링, 차원 축소, 데이터 압축
데이터 변환 (Transformation)정규화, 그룹화 등 적절한 형태로 변환

4. 결측치 처리 기법 (시험 핵심)

  1. 해당 투플 무시 - 가장 쉬움, 너무 많으면 데이터 특성 저해
  2. 수작업으로 채우기 - 근거 약하고 시간 소모
  3. 특정 값(0)으로 채우기 - 결과 왜곡 가능
  4. 속성의 평균값으로 채우기 - 많이 사용, 왜곡 위험
  5. 같은 클래스의 평균값으로 채우기 - 4번보다 나은 방식
  6. 회귀분석/베이지안/의사결정트리로 예측 - 가장 정교하지만 복잡

5. ETT (Extraction, Transformation, Transportation) (중요)

단계내용
추출 (Extraction)원본에서 데이터 웨어하우스에 저장할 데이터 추출
가공 (Transformation)데이터 정제, 열/레코드 수준의 가공
전송/저장 (Transportation)선택된 데이터를 DW에 전송, 인덱스 작성

6. 데이터 웨어하우스 / 데이터 마트 / 데이터 레이크

개념설명
데이터 웨어하우스 (DW)기업 각 단위 데이터를 공통 형식으로 변환하여 일원적으로 관리하는 DB
데이터 마트 (DM)소규모 단일주제의 DW, 특정 부서의 의사결정 지원
데이터 레이크가공되지 않은 다양한 종류의 데이터(Raw Data)를 한 곳에 모아둔 저장소

데이터베이스

1. 파이썬 데이터 구조 (시험 출제 가능)

자료형저장 모델변경가능성접근방법
int, float, complex (수치형)LiteralImmutableDirect
str (문자열)LiteralImmutableSequence
tuple (튜플)ContainerImmutableSequence
list (리스트)ContainerMutableSequence
dict (딕셔너리)ContainerMutableMapping
set (집합)ContainerMutableSet

주요 자료형 비교

리스트튜플딕셔너리집합
[ ]로 둘러쌈( )로 둘러쌈{Key:Value }set([])
값 생성/삭제/수정 가능값 변경 불가Key로 Value 접근중복 불허, 순서 없음

2. JSON (JavaScript Object Notation)

  • 경량 데이터 교환 형식
  • 사람과 기계 모두 이해하기 쉬움
  • XML을 대체하여 데이터 전송에 많이 사용
  • 특정 언어에 종속되지 않음
  • 형식: {String key : String Value}

3. 관계형 데이터베이스 (매우 중요)

용어 비교

E.F.Codd 용어File 시스템 용어자주 사용되는 용어
릴레이션 (Relation)파일 (File)테이블 (Table)
속성 (Attribute)필드 (Field)열 (Column)
튜플 (Tuple)레코드 (Record)행 (Row)

키의 종류 (시험 핵심)

설명
후보키 (Candidate Key)각 튜플을 구별하는 기준이 되는 컬럼 집합
기본키 (Primary Key)튜플 식별 기준으로 사용할 키
대체키 (Alternate Key)기본키로 선택되지 않은 나머지 후보키
외래키 (Foreign Key)관련 테이블 간 데이터 일관성 보장 수단

4. 스키마 (Schema) 3계층 (중요)

계층관점설명
외부 스키마사용자 관점각 사용자가 보는 데이터의 논리적 구조
개념 스키마조직 전체 관점개체 간 관계, 접근권한, 보안, 무결성 규칙
내부 스키마저장 장치 관점물리적 저장 구조, 인덱스, 저장 데이터 항목 특성

5. 데이터베이스 관리시스템 (DBMS) (중요)

  • 파일 시스템의 데이터 종속성/중복성 문제 해결을 위해 제안

DBMS 장단점

장점단점
데이터 중복 통제비용이 많이 듦
데이터 독립성 확보백업/회복 방법 복잡
동시 공유 가능중앙 집중 관리 취약점
보안/무결성 향상

6. SQL의 세 가지 종류 (시험 핵심)

종류설명명령어
DDL (데이터 정의 언어)개체를 만들고 관리CREATE, ALTER, DROP
DML (데이터 처리 언어)CRUD 작업INSERT, UPDATE, DELETE, SELECT
DCL (데이터 제어 언어)보안, 무결성, 트랜잭션GRANT, BEGIN, COMMIT, ROLLBACK

데이터 분석과 관리

1. 대용량 데이터 관리기법 - 하둡 (Hadoop) (매우 중요)

  • 정의: 여러 컴퓨터를 통해 대용량 데이터를 분산 저장분산 처리하기 위한 오픈 소스 프레임워크

주요 구성요소

구성요소설명
HDFS (Hadoop Distributed File System)범용 하드웨어 클러스터에서 실행되는 분산 파일시스템
MapReduceMap/Reduce 방식으로 대용량 데이터를 분산 병렬처리하는 프레임워크

HDFS 구성요소

구성요소설명
Name Node파일시스템 Metadata 관리, 블록 배치정보 관리
Data Node실제 데이터를 저장 유지, 노드 간 데이터 복제로 신뢰성 유지
Secondary Name NodeName Node 백업, 지속적 copy
  • HDFS 파일 복제: 내부 랙 2개 노드 + 다른 랙 1개 노드에 복제

하둡 에코시스템 주요 구성요소

구성요소설명
Pig데이터 흐름 언어와 실행환경
Hive분산 데이터 웨어하우스, SQL 기반 쿼리
HBase분산 컬럼 지향 DB, HDFS 사용
ZooKeeper고가용성 조정 서비스, 분산 락 제공
Ambari관리(Management) 도구
HCatalog테이블 및 스키마 관리

2. HIVE (중요)

  • 하둡 에코시스템에서 데이터 웨어하우징용 솔루션
  • SQL on Hadoop으로 불림
  • HiveQL 쿼리로 데이터 조회
  • 내부적으로 Hadoop에 데이터 저장

HIVE 구성요소

구성요소설명
UI사용자 인터페이스
Driver쿼리 입력, JDBC/ODBC API 제공
Compiler메타스토어 참고, 쿼리 분석, 실행계획 생성
MetastoreDB, 테이블, 파티션 정보 저장
Execution Engine실행 계획 실행

3. 빅데이터 분석 기법

기법설명
텍스트 마이닝NLP 기반 정보 추출, 문서 분류/군집/요약
소셜 오피니언 마이닝긍정/부정/중립 선호도 판별, 평판분석
소셜 네트워크 분석연결구조/강도 기반 영향력 측정, Hub 사용자 발굴
군집 분석비슷한 특성의 Group 발굴

4. 확률분포 (매우 중요)

확률변수의 구분

이산확률변수연속확률변수
정수와 같이 명확한 값실수를 변수값으로 함
가질 수 있는 값의 수가 한정값의 개수를 셀 수 없음

정규분포 (Normal Distribution) (핵심)

  • 종모양, 좌우대칭
  • 평균 = 중앙치 = 최빈치
  • 모수: 평균(μ)과 분산(σ²)

누적분포함수 (CDF, Cumulative Distribution Function)

  • F(x) = P(X ≤ x)
  • 확률변수가 특정 값보다 작거나 같은 확률

중심극한정리 (Central Limit Theorem) (매우 중요)

  • X ~ N(μ, σ²)이면, X̄ ~ N(μ, σ²/n)
  • 표본의 크기 n이 충분히 클 때, 정규분포를 따르지 않는 모집단에서 나온 표본이라도 그 분포가 정규분포에 가까워짐

이항분포 (Binomial Distribution) (중요)

  • n번의 독립시행에서 사건 A가 일어나는 횟수 X의 분포
  • 확률질량함수: f(x) = nCx · p^x · (1-p)^(n-x)
  • nCx = n! / (x! · (n-x)!)
  • n=1이면 베르누이 분포
  • p=0.5이면 대칭형 종모양, 중심점 = n/2

카이제곱분포 (Chi-squared Distribution) (중요)

  • k개의 독립적인 표준정규 확률변수를 각각 제곱한 다음 합해서 얻는 분포
  • k = 자유도
  • 적합도 검정, 동질성 검정에 사용
  • (+)값만 존재, 좌우 비대칭

포아송 분포 (Poisson Distribution) (중요)

  • 단위 시간 안에 어떤 사건이 몇 번 발생할 것인지를 표현하는 이산 확률 분포
  • f(x) = (e^(-λ) · λ^x) / x!
    • λ = 평균 발생 횟수
    • e = 2.71828…
  • 이항분포에서 n이 대단히 크고 p가 대단히 작을 때 λ=np인 포아송 분포로 근사

데이터 분석 및 전처리

1. 맵리듀스 (MapReduce) (매우 중요)

개념

  • 대용량 데이터를 분산 병렬 처리하는 프레임워크
  • 데이터를 가져오지 않고 데이터가 있는 곳에서 처리
단계설명
Splitting대용량 파일을 적절한 크기로 분할
Mapping키-값을 읽어 필터링/변환, Key-Value 형태로 묶기
Shuffling맵 결과에서 중복 데이터 제거
Reducing새로운 키 기준으로 그룹화 후 집계연산 수행

맵리듀스 구성

구성요소설명
잡 트래커 (Job Tracker)master, Task Tracker에 작업 할당, 스케줄링
태스크 트래커 (Task Tracker)slave, 할당 받은 작업 처리 후 보고

맵리듀스 장단점

장점단점
단순하고 사용 편리고정된 단일 데이터 흐름
유연성 (특정 모델에 비의존)기존 DBMS보다 불편한 스키마/질의
저장 구조 독립성단순한 스케줄링
높은 확장성상대적으로 낮은 성능
데이터 복제 기반 내구성개발도구 불편

2. 아파치 스파크 (Apache Spark) (매우 중요)

  • 분석을 위한 프레임워크, 하둡 상에서나 단독으로 동작 가능
  • 빠른 처리속도, 반복학습, 알고리즘 구현 용이

스파크 핵심 개념: RDD (Resilient Distributed Dataset)

  • 읽기 전용의 분산 데이터셋 추상화 객체
  • 여러 서버에 분산, 다수 파티션으로 관리
  • 노드 장애 시 RDD 정보로 복구 가능 (내구성)
  • DAG(Directed Acyclic Graph)로 작업 표현

RDD 명령어

TransformationAction
filter, read 등first, show, head 등
어떻게 바꾸는지에 대한 정보만 기록실제 데이터 처리 실행
데이터셋은 읽기 전용, 새 RDD 생성Stage → Task 단위로 실행

Lineage

  • RDD 생성 과정을 기록
  • DAG 형태
  • 메모리에서 데이터 유실 시 Lineage 기록에 따라 RDD 재생성 가능

의존성 (Dependency)

좁은 의존성 (Narrow)넓은 의존성 (Wide)
하나의 파티션이 하나의 파티션에서만 사용하나의 파티션이 여러 파티션에서 사용
효율적, 데이터 교환 불필요비효율적, 셔플 발생
map 같은 연산groupByKey, join

하둡 vs 스파크 (시험 출제 가능)

구분하둡스파크
역할분산형 데이터 인프라스트럭처 (저장+처리)데이터 프로세싱
스토리지HDFS 포함자체 파일 관리 시스템 없음
처리 방식단계별 데이터 처리 (맵리듀스)전체 데이터셋을 한번에 다룸
장애 대응매 운영 후 결과를 디스크에 기록RDD로 메모리에 분산, 탄력성 보장

스파크 구성요소

구성요소설명
SparkSQLSQL 쿼리 처리
Spark Streaming실시간 스트리밍 처리 (IoT, SNS 등)
MLlib기계학습 라이브러리 (PCA, SVD 등)
GraphX그래프 계산 라이브러리

3. 데이터 전처리 기법 (매우 중요)

  • 전체 프로젝트 노력의 70% 소요
  • 프로젝트 성패를 가늠하는 대단히 중요한 과정

전처리 분류 요약

분류설명
데이터 여과 (Filtering)오류 발견, 보정, 삭제, 중복성 확인
데이터 변환 (Transformation)유형 변환, 정규화, 집합화, 요약
데이터 정제 (Cleansing)결측치 처리, 이상치 제거, 잡음 평활화
데이터 통합 (Integration)유사/연계 데이터 통합
데이터 축소 (Reduction)불필요 데이터 제거, 효율성 증대

데이터 변환 - Rescaling (중요)

  • Min-Max Scaling: X_new = (X - X_min) / (X_max - X_min) (0~1 범위)
  • 정규화 (Normalization): 평균 0, 분산 1이 되도록 선형 변환

scikit-learn 정규화 클래스

클래스설명
StandardScaler평균 0, 표준편차 1
MinMaxScaler최대 1, 최소 0
RobustScaler중앙값 0, IQR 1
MaxAbsScaler절대값 최대 1 또는 -1

데이터 정제 - 잡음 처리

방법설명
구간화 (Binning)구간별 대푯값(평균, Median)으로 대체
회귀값 적용 (Regression)추세 함수의 값 사용
군집화 (Clustering)클러스터 단위 묶기 후 outlier 제거

차원축소 기법 (중요)

방법설명
Feature Selection상관관계 분석으로 유용한 피처 선택
Feature Derivation기존 피처로 새로운 피처 생산
군집화비슷한 데이터 점들을 모아봄

PCA vs LDA (시험 핵심)

PCA (주성분 분석)LDA (선형 판별 분석)
데이터의 최적 표현 견지데이터의 최적 분류 견지
분산을 최대한 보존클래스 간 분별 정보 최대 유지
비지도학습지도학습
  • PCA: 변수의 수를 줄이는 차원 감소 기법, 분산 최대 보존, 다중공선성 해결

범주형 변수 처리 - One-Hot Encoding

  • 문자형 범주 데이터를 0/1 이진값으로 변환
  • 소형/중형/대형 → 소형여부(0/1), 중형여부(0/1), 대형여부(0/1)
  • 남자/여자처럼 2가지면 한 항목으로 0,1 표현 가능

데이터의 군집분석

1. 빅데이터 수집기술

수집기술내용
스플렁크 (Splunk)실시간 데이터 인덱싱, 검색, 분석, 시각화 처리. ‘Google for Machine Log’
플럼 (Flume)로그 데이터 수집. Source → Channel → Sink 구조. 신뢰성/확장성
척와 (Chukwa)확장성 우수, 대용량 처리, 분산 로그 분석
스크라이브 (Scribe)Facebook 개발, 대량 서버 실시간 로그 수집

Flume 주요 개념

구성요소설명
EventByte payload + set of string headers
Source이벤트 수집하여 채널로 전달
ChannelSource와 Sink 간 이벤트 전달 통로
SinkChannel로부터 받은 이벤트 저장/전달, Failover 대응

Apache Sqoop

  • Hadoop과 RDBMS 사이에 bulk data를 효율적으로 옮기는 도구
  • Sqoop1: Client-side Install, CLI 제공
  • Sqoop2: Server-side Install, Web/REST API 접속 가능, Oozie 연동 용이

수집 방법 분류

방법설명
로그수집기웹서버 로그, 트랜잭션 로그, DB 로그 수집
크롤링웹로봇으로 외부 소셜/인터넷 자료 수집
센싱각종 센서를 통한 데이터 수집
RSS, Open API웹 2.0 기술로 프로그래밍 수집

2. 군집분석 (Clustering Analysis) (매우 중요)

  • 정의: 관측 대상들을 유사성에 따라 그룹으로 나누어 분석하는 작업
  • 비예측성 분석, 분석 초기 단계에서 데이터 특성 파악에 활용
  • 텍스트마이닝(스팸메일 분류), 이미지처리(패턴인식) 등에 활용

군집분석의 두 가지 원리 (핵심)

  1. 군집 내 응집도 최대화 (같은 군집 내 유사성 최대)
  2. 군집 간 분리도 최대화 (다른 군집 간 거리 최대)

3. 군집 vs 분류 (시험 핵심)

구분군집 (Clustering)분류 (Classification)
학습 방식비지도학습 (Unsupervised)지도학습 (Supervised)
Label사전에 알려져 있지 않음사전에 알려져 있음
목적데이터 자체의 특성 파악새로운 데이터의 그룹 예측
방법유사도에 가까운 것부터 합쳐감기존 category 관계 파악 후 판별

4. 군집분석의 목적

  • 데이터에 내재된 구조 이해
  • 시장 세분화에 의한 마케팅 전략 수립
  • 데이터 축소 - 군집 대표값만 기억
  • 이상치 탐지 - 어떤 군집에도 속하지 않는 개체

5. 군집분석의 종류 (매우 중요)

계층적 군집 (Hierarchical Clustering)

유형방향설명
응집형 (Agglomerative)Bottom-up가장 가까운 대상부터 결합
분리형 (Divisive)Top-downDIANA 방법 등
  • 장점: 덴드로그램으로 군집 형성 과정 파악 가능
  • 단점: 자료 크기가 크면 분석 어려움
  • 군집 수를 사전에 정하지 않아도

분할적 군집 (Partitional/Non-Hierarchical Clustering)

  • 군집 수를 미리 정한 상태에서 중심에 가장 가까운 개체를 포함
  • 장점: 많은 자료를 빠르고 쉽게 분류
  • 단점: 군집 수를 미리 정해야 함, 초기값에 따라 결과 달라짐
  • 대표 알고리즘: K-means

6. 연결법 (Linkage Method) (시험 핵심)

방법설명
단일(최단) 연결법 (Single)거리의 최소값으로 측정, 고립된 군집 찾는데 중점
완전(최장) 연결법 (Complete)거리의 최대값으로 측정, 군집 내부 응집성에 중점
평균 연결법 (Average)모든 항목에 대한 거리 평균, 계산량 많을 수 있음
중심 연결법 (Centroid)두 군집의 중심 거리로 결합, 가중평균 사용
Ward 연결법군집 내 오차제곱합(ESS) 기초, 증가량이 가장 작아지는 방향으로 병합
  • 단일연결법 단점: 두 군집이 몇 개 개체로 연결된 ‘고리현상’ 발생 시 부적절

7. K-means 알고리즘 (매우 중요)

  • 주어진 데이터를 k개의 클러스터로 묶는 알고리즘
  • 각 클러스터와 거리 차이의 분산을 최소화하는 방식으로 동작
  • 자율학습(비지도학습), 레이블 없는 입력 데이터에 레이블을 부여
  • EM 알고리즘과 비슷한 구조

K-means 수행 과정

  1. k개의 초기 중심점(centroid) 설정
  2. 각 데이터 포인트를 가장 가까운 중심점의 클러스터에 할당 (Expectation)
  3. 각 클러스터의 중심점을 재계산 (Maximization)
  4. 2-3단계를 반복

종료 조건

  • E/M 스텝 반복 적용해도 결과가 바뀌지 않는 경우 (해가 수렴)
  • 사용자가 정한 반복 수를 채운 경우

8. 계층적 군집화 적용 예시 (시험 출제 가능)

  1. 모든 개체 간 거리 행렬 계산
  2. 가장 가까운 쌍을 하나의 군집으로 엮음
  3. 덴드로그램에 높이 = 관측치간 거리로 기록
  4. 거리행렬 업데이트 (4가지 거리 계산 방법 중 하나 선택: Min/Max/Average/Centroid)
  5. 반복하여 모든 개체가 하나의 군집이 될 때까지 진행
  6. 덴드로그램에서 원하는 높이에서 끊으면 해당 수의 군집 도출

핵심 공식 요약

공식수식
확률 덧셈법칙P(A ∪ B) = P(A) + P(B) - P(A ∩ B)
조건부 확률P(A|B) = P(A ∩ B) / P(B)
순열nPr = n! / (n-r)!
조합nCr = n! / (r!(n-r)!)
표준화Z = (X - μ) / σ
분산σ² = Σ(X - X̄)² / n
표준편차σ = √(분산)
신뢰구간X̄ ± z_(α/2) · σ / √n
이항분포 PMFf(x) = nCx · p^x · (1-p)^(n-x)
포아송분포 PMFf(x) = (e^(-λ) · λ^x) / x!
중심극한정리X̄ ~ N(μ, σ²/n)
Min-Max ScalingX_new = (X - X_min) / (X_max - X_min)

시험 대비 핵심 체크리스트

  1. 빅데이터 5V (Volume, Velocity, Variety, Veracity, Value) 각각의 의미
  2. 기술통계 vs 추론통계의 차이와 역할
  3. 확률법칙 (덧셈, 곱셈, 조건부확률, 독립/종속사건)
  4. 가설검정 절차 (귀무가설, 대립가설, p-value, α)
  5. 통계분석 방법 (빈도분석, t-test, ANOVA, 상관분석, 회귀분석) 구분
  6. 데이터 전처리 과정 (정제, 통합, 축소, 변환)과 결측치 처리 기법
  7. 데이터 품질 지표 (완전성, 유효성, 유일성, 정합성, 일치성, 적시성)
  8. ETT 프로세스 (추출-가공-전송)
  9. 데이터 웨어하우스 vs 데이터 마트 vs 데이터 레이크 구분
  10. 관계형 DB 용어 (릴레이션, 속성, 튜플, 기본키, 외래키)
  11. SQL 3종류 (DDL, DML, DCL)와 주요 명령어
  12. 스키마 3계층 (외부, 개념, 내부)
  13. 하둡 구조 (HDFS, MapReduce, Name/Data Node)
  14. 맵리듀스 과정 (Splitting → Mapping → Shuffling → Reducing)
  15. 스파크 개념 (RDD, Transformation/Action, Lineage, 의존성)
  16. 하둡 vs 스파크 차이점
  17. 확률분포 (정규, 이항, 카이제곱, 포아송)의 특성과 공식
  18. 중심극한정리의 의미
  19. 정규화/스케일링 방법 (StandardScaler, MinMaxScaler 등)
  20. PCA vs LDA 차이
  21. 군집분석 vs 분류 차이 (비지도 vs 지도, Label 유무)
  22. K-means 알고리즘 수행 과정 및 종료 조건
  23. 연결법 종류 (단일, 완전, 평균, 중심, Ward)와 각각의 특성
  24. 계층적 vs 분할적 군집 장단점 비교