본문 바로가기

정보관리기술사/1교시(용어)

제137회 정보관리기술사 1교시 기출문제&참고답안

제137회 정보관리기술사 1교시 참고답안

제137회 정보관리기술사 1교시 참고답안

1. 동적 라우팅 프로토콜 (IGP와 EGP)

동적 라우팅 프로토콜은 라우터들이 서로 라우팅 정보를 자동으로 교환하여 최적의 경로를 설정하는 프로토콜입니다. 이는 관리자가 수동으로 경로를 설정하는 정적 라우팅과 대비되며, 네트워크 규모에 따라 자율 시스템(AS, Autonomous System)을 기준으로 IGP와 EGP로 구분됩니다.

구분 IGP (Interior Gateway Protocol) EGP (Exterior Gateway Protocol)
정의 하나의 자율 시스템(AS) 내부에서 사용되는 라우팅 프로토콜 서로 다른 자율 시스템(AS) 간에 라우팅 정보를 교환하기 위한 프로토콜
목적 AS 내부에서 가장 빠르고 효율적인 최적의 경로를 찾는 것 (성능 중시) AS 간의 정책(Policy) 기반으로 경로를 교환하고 도달 가능성을 보장하는 것 (정책 중시)
알고리즘 - 거리 벡터 (Distance Vector): RIP, IGRP
- 링크 상태 (Link State): OSPF, IS-IS
- (하이브리드: EIGRP)
- 경로 벡터 (Path Vector): BGP
대표 프로토콜 OSPF, RIP, EIGRP, IS-IS BGP (Border Gateway Protocol) (현재 유일하게 사용됨)
규모 AS 내부 (중소규모 네트워크) 인터넷과 같은 대규모 네트워크 (ISP 간)

2. 디지털 포렌식에서 아티팩트(Artifact)

디지털 포렌식에서 아티팩트(Artifact)란, 시스템이나 사용자의 행위에 의해 의도치 않게 생성되어 남아있는 증거적인 데이터 조각이나 흔적을 의미합니다. 이는 범죄 행위나 특정 이벤트를 재구성하고 증명하는 데 사용되는 핵심 '디지털 증거'입니다.

1. 아티팩트의 특징

  • 사용자가 직접 생성한 데이터(예: 문서, 이미지)가 아닌, 시스템이나 응용 프로그램이 자동으로 생성하는 메타데이터 또는 로그입니다.
  • 사용자가 데이터를 삭제하더라도 아티팩트는 시스템 영역(레지스트리, 로그파일, 비할당 영역 등)에 남아있는 경우가 많아 증거 수집에 결정적입니다.

2. 주요 아티팩트 유형

유형 설명 활용 예시
운영체제 아티팩트 - 레지스트리(Registry): 설치된 프로그램, 사용자 계정, 최근 사용 목록(MRU).
- 이벤트 로그(Event Log): 시스템 부팅, 로그온/오프, 서비스 실행 기록.
- 프리페치/슈퍼페치: 프로그램 실행 횟수 및 시간 추적.
- LNK 파일 (바로 가기): 원본 파일의 위치, 접근 시간.
- 불법 프로그램 설치 및 실행 여부
- 특정 시간대 사용자 접속 기록
파일 시스템 아티팩트 - MFT ($MFT): (NTFS) 파일의 생성/수정/접근 시간(MAC Time), 파일명.
- 휴지통 (Recycle Bin): 삭제된 파일 정보.
- 비할당 영역: 삭제된 파일의 데이터 조각.
- 파일 삭제 시점 및 원본 복원
웹 브라우저 아티팩트 - History: 방문한 웹사이트 URL 및 시간.
- Cache: 웹페이지의 이미지, 텍스트 조각.
- Cookies: 로그인 정보, 사용자 추적 데이터.
- 범죄 관련 사이트 접속 기록

3. MODBUS 프로토콜

MODBUS는 1979년 Modicon(現 슈나이더 일렉트릭)에서 개발한 산업용 자동화 기기를 위한 시리얼 통신 프로토콜입니다. PLC(Programmable Logic Controller)와 같은 제어 장치들이 서로 통신하기 위한 표준화된 메시지 구조를 제공하며, 현재는 산업 현장(SCADA, HMI, 스마트 팩토리)에서 가장 널리 사용되는 사실상의 표준(De facto Standard) 프로토콜입니다.

1. 주요 특징

  • 마스터-슬레이브 구조: 하나의 마스터(Master) 기기가 여러 슬레이브(Slave) 기기에게 1:N으로 요청(Query)을 보내고, 슬레이브는 이에 응답(Response)하는 구조입니다.
  • 단순성 및 개방성: 프로토콜 구조가 매우 간단하고 로열티가 없는 오픈 프로토콜이므로, 구현이 쉽고 다양한 제조사 장비 간 호환성이 높습니다.
  • 기능 코드(Function Code): 마스터가 슬레이브에게 원하는 동작(예: 코일 읽기, 레지스터 쓰기)을 지시하기 위해 기능 코드를 사용합니다.

2. MODBUS 프로토콜 종류

구분 MODBUS RTU / ASCII MODBUS TCP/IP
전송 매체 시리얼 통신 (RS-232, RS-422, RS-485) 이더넷 (Ethernet, TCP/IP)
데이터 형식 RTU: 8비트 바이너리
ASCII: 7비트 ASCII 문자
TCP/IP 패킷 내에 MODBUS 프레임 삽입
통신 방식 마스터/슬레이브 (1:N) 클라이언트/서버 (M:N)
특징 - 간단한 필드버스(Fieldbus) 환경에 적합.
- RTU가 ASCII보다 효율적.
- 기존 LAN/WAN 망을 활용할 수 있음.
- 더 빠르고 원격 통신에 유리.

4. 암호문 공격(Ciphertext Attack)

암호문 공격(Ciphertext-Only Attack, COA)은 암호 해독(Cryptanalysis)의 유형 중 하나로, 공격자가 오직 암호화된 메시지(암호문)만을 수집하여 원본 평문이나 암호화 키를 찾아내려는 공격 모델입니다.

1. 공격 모델의 가정

  • 공격자의 보유 정보: 오직 암호문(C). (C1, C2, C3...)
  • 공격자의 미보유 정보: 평문(P), 암호화 키(K), 암호화 알고리즘(알고리즘은 알고 있다고 가정할 수도 있음 - 케르크호프의 원리).
  • 공격 목표: 암호문으로부터 평문(P)을 유추하거나, 궁극적으로 암호화 키(K)를 찾아내는 것.

2. 주요 공격 기법

  • 통계적 분석: 암호문에 나타나는 문자의 빈도수, 패턴 등을 분석하여 평문의 통계적 특성(예: 영어에서 E가 가장 많이 쓰임)과 비교. (주로 고전 암호 해독에 사용됨)
  • 무차별 대입 공격 (Brute-force Attack): 가능한 모든 키(Key)를 하나씩 대입하여 암호문을 복호화해보고, 그 결과가 의미 있는 평문인지 확인하는 방식. (키 공간의 크기가 작을 때 유효)

3. 다른 공격 모델과의 비교

암호문 공격은 공격자에게 가장 불리한(가장 적은 정보를 가진) 조건의 공격 모델이며, 현대 암호 시스템은 최소한 이 공격에 대해 안전해야 합니다.

  • 기지 평문 공격 (Known-Plaintext Attack, KPA): 공격자가 일부 (평문, 암호문) 쌍을 알고 있음.
  • 선택 평문 공격 (Chosen-Plaintext Attack, CPA): 공격자가 원하는 평문을 선택하여 그에 대한 암호문을 얻을 수 있음. (더 강력함)
  • 선택 암호문 공격 (Chosen-Ciphertext Attack, CCA): 공격자가 원하는 암호문을 선택하여 그에 대한 평문을 얻을 수 있음. (가장 강력함)

5. GNN (Graph Neural Network)

GNN(그래프 신경망)은 그래프(Graph) 구조의 데이터를 처리하기 위해 특별히 설계된 딥러닝 모델입니다. 기존의 딥러닝 모델(CNN, RNN)이 정형화된 데이터(이미지, 텍스트, 시계열) 처리에 강점이 있는 반면, GNN은 복잡한 관계성을 가진 비정형적(Non-Euclidean) 데이터, 즉 노드(Node)와 엣지(Edge)로 구성된 그래프 데이터를 직접 학습할 수 있습니다.

1. 핵심 동작 원리: 메시지 패싱 (Message Passing)

GNN의 핵심 아이디어는 각 노드가 자신의 이웃 노드들로부터 정보를 수집하여 자신의 상태(표현)를 업데이트하는 것입니다. 이 과정은 다음과 같이 요약됩니다.

  1. 정보 수집 (Aggregation): 각 노드는 자신의 직접적인 이웃 노드들의 특징(Feature) 정보를 수집합니다.
  2. 정보 업데이트 (Update): 수집된 이웃 노드들의 정보와 노드 자신의 이전 상태 정보를 결합(예: 신경망 통과)하여, 해당 노드의 새로운 특징 벡터(Embedding)를 생성합니다.
  3. 반복 (Layering): 이 '수집 및 업데이트' 과정을 여러 레이어에 걸쳐 반복합니다. 1개 레이어를 거치면 1촌 이웃의 정보가, 2개 레이어를 거치면 2촌 이웃의 정보까지 반영되어, 점차 복잡하고 넓은 범위의 관계성을 학습합니다.

2. 주요 활용 분야

  • 소셜 네트워크 분석 (SNA): 사용자 간의 관계를 분석하여 영향력 있는 사용자(인플루언서)를 찾거나, 커뮤니티를 탐지합니다.
  • 추천 시스템: '사용자-아이템' 관계를 그래프로 모델링하여 사용자가 선호할 만한 아이템을 추천합니다.
  • 화학/생물학 (신약 개발): 분자 구조를 그래프로 표현하여, 분자의 특성(예: 독성, 약효)을 예측합니다.
  • 사기 탐지 (Fraud Detection): 금융 거래 네트워크에서 이상 거래 패턴(사기)을 탐지합니다.

6. AI 거버넌스 (Artificial Intelligence Governance)

AI 거버넌스란, 기업이나 조직이 AI 기술을 개발하고 운영, 활용하는 전 과정에서 발생할 수 있는 다양한 위험(Risk)을 관리하고, AI의 편익을 극대화하기 위해 필요한 전사적인 정책, 프로세스, 표준, 통제 체계를 수립하고 실행하는 활동을 의미합니다.

이는 AI 기술이 "블랙박스"처럼 동작하거나, 의도치 않은 편향(Bias)을 학습하여 차별적인 결과를 내놓거나, 법적/윤리적 문제를 야기하는 것을 방지하기 위해 필수적입니다.

1. AI 거버넌스의 핵심 목표 (필수 고려 원칙)

핵심 원칙 설명
공정성 (Fairness) - AI 모델이 특정 집단(성별, 인종, 연령 등)에 대해 편향(Bias)된 결정을 내리지 않도록 보장.
- 데이터 수집 및 학습 단계에서부터 편향성을 검토하고 완화.
투명성 및 설명가능성 (Transparency & Explainability) - AI가 특정 결정을 내린 이유와 과정을 사람이 이해할 수 있도록 설명(XAI)할 수 있어야 함.
- 의사결정 과정에 대한 로그 및 문서화.
책무성 (Accountability) - AI 시스템의 동작 및 결과에 대한 책임 소재를 명확히 하고, 문제 발생 시 대응할 수 있는 절차를 마련.
안전성 및 강건성 (Safety & Robustness) - AI 시스템이 예측 불가능한 상황이나 적대적 공격(Adversarial Attack)에도 안정적으로 동작(Robust)하도록 보장.
프라이버시 보호 (Privacy) - AI 학습 및 운영 과정에서 수집되는 개인정보를 관련 법규(예: GDPR, 개인정보보호법)에 따라 안전하게 보호.
인간 중심 (Human-centric) - AI는 궁극적으로 인간의 복지와 가치를 증진하는 방향으로 사용되어야 하며, 최종 결정은 인간이 통제할 수 있어야 함.

7. 트랜스포머(Transformer)와 MoE(Mixture of Experts)

1. 트랜스포머 (Transformer)

트랜스포머는 2017년 구글의 "Attention Is All You Need" 논문에서 제안된 딥러닝 모델 아키텍처입니다. 기존의 순환 신경망(RNN)이나 LSTM이 순차적으로 데이터를 처리하던 방식에서 벗어나, 오직 '어텐션(Attention)' 메커니즘, 특히 '셀프 어텐션(Self-Attention)'만을 사용하여 입력 시퀀스의 문맥과 관계를 파악합니다.

  • 핵심 구조 (셀프 어텐션): 입력된 문장(토큰 시퀀스) 내의 모든 단어들 간의 관계를 병렬적으로 한 번에 계산합니다. 이를 통해 어떤 단어가 문장 내 다른 단어들과 얼마나 중요한 관계를 맺고 있는지 학습합니다. (예: '그'라는 대명사가 '사과'를 가리키는지 '소년'을 가리키는지)
  • 특징:
    • 병렬 처리: RNN의 순차 처리 한계를 극복하여 GPU를 통한 병렬 연산이 가능해져 학습 속도가 매우 빠릅니다.
    • 장기 의존성 문제 해결: 문장이 길어져도 멀리 떨어진 단어 간의 관계를 효과적으로 학습합니다.
    • 기반 모델: BERT, GPT, T5 등 현재 대부분의 초거대 언어 모델(LLM)의 기반이 되는 아키텍처입니다.

2. MoE (Mixture of Experts)

MoE(전문가 혼합)는 초거대 모델을 효율적으로 확장하기 위한 신경망 아키텍처 기법입니다. 이는 트랜스포머 모델의 특정 계층(주로 FFN)을 수정하여 적용됩니다.

  • 핵심 구조:
    1. 전문가(Experts): 기존 트랜스포머의 FFN(Feed-Forward Network) 계층을 하나 대신, 여러 개의 독립적인 FFN(전문가 네트워크)으로 분할합니다. (예: 8개, 64개)
    2. 게이팅 네트워크 (Gating Network): '라우터'라고도 불리며, 입력되는 각 토큰(단어)의 특성을 분석하여 이 토큰을 처리하기에 가장 적합한 '전문가' 몇 명(예: 2명)을 동적으로 선택합니다.
  • 특징 (희소 활성화 - Sparse Activation):
    • 방대한 파라미터: 수십, 수백 개의 전문가를 둠으로써 모델의 총 파라미터(지식 용량)는 엄청나게(수천억~조 단위) 늘어납니다.
    • 효율적인 연산: 하지만 각 토큰은 오직 선택된 소수의 전문가(예: 2개)만 통과합니다. 즉, 모델 전체가 아닌 일부만 '희소하게(Sparsely)' 활성화됩니다.
    • 결과: 모델의 총 파라미터(용량)는 거대해지지만, 실제 추론/학습에 필요한 연산량(FLOPs)은 크게 증가하지 않아 매우 효율적으로 모델을 확장할 수 있습니다. (예: GPT-4, Mixtral)

8. AI 신뢰성 검인증 제도 (CAT)

AI 신뢰성 검인증 제도(CAT: Certified AI of Trust)는 AI 기술의 확산에 따라 발생하는 AI의 역기능(편향성, 안전성, 투명성 부족 등)을 해소하고, 사용자가 믿고 쓸 수 있는 AI 제품 및 서비스를 선별하기 위해 도입된 국내(한국)의 AI 인증 제도입니다.

이는 AI 제품이 신뢰성 확보를 위해 갖추어야 할 요구사항을 충족했는지 여부를 시험하고 인증하는 제도이며, 주로 한국정보통신기술협회(TTA) 등을 통해 시행됩니다.

1. 도입 배경

  • AI 모델의 '블랙박스' 특성으로 인한 의사결정 과정의 불투명성.
  • 학습 데이터의 편향(Bias)으로 인한 사회적 차별 및 불공정 문제 대두.
  • AI 시스템의 오작동, 적대적 공격 등으로 인한 안전(Safety) 및 강건성(Robustness) 문제.
  • 공공 및 민간 분야에서 신뢰할 수 있는 AI 도입을 위한 객관적인 기준 필요.

2. 주요 검증 항목 (신뢰성 4대 원칙)

CAT 인증은 AI 제품이 다음 4가지 핵심 신뢰성 영역에서 일정 수준 이상을 만족하는지 검증합니다.

검증 영역 주요 평가 내용
투명성 (Transparency) - AI 모델이 어떻게 학습되었는지, 어떤 데이터를 사용했는지 등에 대한 문서화 상태.
- (XAI) 모델의 예측 결과에 대한 근거를 제시할 수 있는지 여부.
공정성 (Fairness) - 학습 데이터의 편향성 여부.
- 특정 집단(성별, 연령 등)에 대해 통계적으로 불리한 결과를 내지 않는지(차별성) 검증.
안전성 (Safety) - AI 시스템이 의도된 동작 범위 내에서 안전하게 작동하는지 여부.
- 개인정보 등 민감 데이터의 비식별화 및 보안 조치.
강건성 (Robustness) - 예측하지 못한 입력값, 노이즈, 또는 적대적 공격(Adversarial Attack)에도 AI 모델이 오작동하지 않고 안정적인 성능을 유지하는지 검증.

9. A/B 테스팅

A/B 테스팅(A/B Testing)은 두 가지 이상의 변형(A와 B)을 무작위로 비교하여 어떤 변형이 더 나은 성과를 내는지 판단하는 통계적이고 실증적인 실험 기법입니다. 주로 웹사이트, 앱, 마케팅 캠페인 등에서 사용자의 반응을 측정하고 최적의 안을 선택하기 위해 사용됩니다.

1. A/B 테스팅의 목적

  • 데이터 기반 의사결정: '감'이나 '의견'이 아닌, 실제 사용자의 행동 데이터를 기반으로 객관적인 결정을 내릴 수 있습니다.
  • 사용자 경험(UX) 최적화: 버튼 색상, 문구(Copy), 레이아웃 등의 작은 변화가 사용자의 행동(예: 클릭률, 구매전환율)에 미치는 영향을 파악하여 서비스를 개선합니다.

2. A/B 테스팅 수행 절차

  1. 가설 설정: "파란색 버튼(A)보다 빨간색 버튼(B)이 클릭률이 더 높을 것이다"와 같이 검증할 가설을 명확히 정의합니다.
  2. 테스트 설계:
    • A안 (대조군, Control): 현재 사용 중인 기존 버전 (파란색 버튼)
    • B안 (실험군, Variant): 변경 사항을 적용한 새로운 버전 (빨간색 버튼)
  3. 트래픽 분할: 웹사이트 방문자 등 전체 사용자를 무작위(Random)로 두 그룹(A그룹, B그룹)으로 나눕니다.
  4. 테스트 수행: A그룹에게는 A안을, B그룹에게는 B안을 노출시키고 일정 기간 동안 데이터를 수집합니다.
  5. 결과 분석: 수집된 데이터(예: A그룹 클릭률 5%, B그룹 클릭률 7%)를 통계적으로 분석(예: t-test, p-value)하여 두 버전 간의 성과 차이가 통계적으로 유의미한지 확인합니다.
  6. 결론 도출: 통계적으로 유의미하게 B안이 우수하다면, B안(빨간색 버튼)을 전체 사용자에게 배포(적용)합니다.

(참고: 두 가지 이상(C, D...)을 비교하면 A/B/n 테스트 또는 다변량 테스트(MVT)라고도 합니다.)


10. 데이터 늪 (Data Swamp)

데이터 늪(Data Swamp)은 데이터 레이크(Data Lake)가 적절한 관리 및 거버넌스 없이 방치되어, 유용하고 가치 있는 데이터를 찾기 어려운 상태가 된 데이터 저장소를 비유적으로 이르는 용어입니다.

데이터 레이크는 원래 다양한 형태(정형, 비정형)의 원본 데이터를 그대로 저장하여 향후 유연하게 분석하려는 목적을 가졌지만, 관리가 부재하면 '호수'가 아닌 '늪'이 되어버립니다.

1. 데이터 늪의 발생 원인

  • 부실한 데이터 거버넌스: 데이터의 소유권, 접근 권한, 품질 기준, 폐기 정책 등이 명확하지 않음.
  • 메타데이터(Metadata) 관리 부재: 데이터가 무엇을 의미하는지(정의), 어디서 왔는지(출처), 어떻게 생성되었는지(Lineage)에 대한 설명(문서화)이 전혀 없음.
  • 무분별한 데이터 수집 (Data Hoarding): "일단 저장하고 보자"는 식으로 명확한 목적 없이 모든 데이터를 수집하여 적재함.
  • 데이터 품질 관리 실패: 중복 데이터, 오류 데이터, 불필요한 데이터가 정제(Cleansing)되지 않고 방치됨.

2. 데이터 늪으로 인한 문제점

  • 데이터 활용성 저하: 데이터 분석가나 현업 사용자가 원하는 데이터를 찾을 수 없거나(Discoverability), 찾아도 신뢰할 수 없어(Trust) 분석에 활용하지 못함.
  • 분석 시간 증가: 실제 분석보다 데이터를 찾고 정제하는 데(Data Wrangling) 대부분의 시간을 소모.
  • 저장 비용 낭비: 가치가 불분명한 '데이터 쓰레기(Garbage)'를 저장하는 데 불필요한 스토리지 비용이 지속적으로 발생.
  • 컴플라이언스 위반: 민감정보나 개인정보가 식별되지 않은 채 방치되어 법적(Privacy) 위험에 노출.

11. 소프트웨어 역공학과 재공학

소프트웨어 역공학(Reverse Engineering)과 재공학(Re-engineering)은 기존에 존재하는 소프트웨어(주로 레거시 시스템)를 다루는 유지보수 및 현대화 활동이지만, 그 목적과 범위에서 차이가 있습니다.

구분 소프트웨어 역공학 (Reverse Engineering) 소프트웨어 재공학 (Re-engineering)
정의 시스템을 분석하여 설계 및 구현 명세를 파악하는 과정. (결과물 → 분석) 기존 시스템을 분석(역공학)하고, 이를 개선하여 새로운 형태의 시스템으로 재구축하는 과정. (분석 → 재구축)
주요 목적 (Goal) - 이해 (Understanding)
- 소스코드나 문서가 없는 시스템의 기능, 구조, 동작 원리 파악.
- 보안 취약점 분석, 호환성 확보, 기능 복제.
- 개선 (Improvement)
- 레거시 시스템의 유지보수성, 성능, 품질, 보안성 향상.
- 새로운 기술(플랫폼)로의 마이그레이션(현대화).
주요 활동 (Input/Output) - 입력: 실행 코드(바이너리), 소스 코드, 데이터베이스 스키마
- 활동: 코드 분석, 디컴파일, 데이터 흐름 분석, 구조 파악
- 출력: 설계도, 명세서, 분석 보고서
- 입력: 기존 시스템, 역공학 분석 결과
- 활동: 역공학 → 리팩토링, 코드 재작성, 플랫폼 이전 → 순공학
- 출력: 개선된 새로운 시스템 (New System)
관계 재공학은 일반적으로 역공학 과정을 포함합니다. (이해 → 개선)
역공학은 재공학의 첫 단계로 활용될 수 있습니다.

12. 이진 탐색 트리 (Binary Search Tree, BST)

이진 탐색 트리(BST)는 데이터의 효율적인 검색, 삽입, 삭제를 위해 설계된 정렬된(Ordered) 이진 트리 자료구조입니다. 일반적인 이진 트리(Binary Tree)에 '탐색'을 위한 특별한 규칙이 추가된 형태입니다.

1. 이진 탐색 트리의 핵심 속성 (규칙)

이진 탐색 트리의 모든 노드(Node)는 다음 속성을 반드시 만족해야 합니다.

  • 각 노드는 하나의 키(Key) 값을 가집니다.
  • 임의의 노드 'P'가 있을 때,
  • 'P'왼쪽 서브트리(Left Subtree)에 있는 모든 노드의 키 값은 'P'의 키 값보다 작아야 합니다.
  • 'P'오른쪽 서브트리(Right Subtree)에 있는 모든 노드의 키 값은 'P'의 키 값보다 커야 합니다.
  • 왼쪽 서브트리와 오른쪽 서브트리 모두 이진 탐색 트리여야 합니다.
  • (일반적으로 중복된 키 값은 허용하지 않거나, 특정 규칙(예: 오른쪽에 저장)을 정합니다.)

2. 주요 연산 및 성능

  • 탐색 (Search):
    • 루트 노드에서 시작.
    • 찾는 값이 현재 노드 값보다 작으면 왼쪽으로, 크면 오른쪽으로 이동.
    • 같으면 탐색 성공. (트리의 높이만큼만 비교)
  • 삽입 (Insert):
    • 탐색 연산과 동일하게 값을 비교하며 내려가다가, 비어있는 위치(Leaf 노드 아래)에 값을 삽입.
  • 성능:
    • 트리가 균형(Balanced) 잡힌 경우 (높이 h가 log n에 비례), 탐색/삽입/삭제 연산은 평균 O(log n)의 매우 빠른 시간 복잡도를 가집니다.
    • 트리가 편향(Skewed)된 경우 (일렬로 늘어선 최악의 경우), 시간 복잡도는 O(n)으로 저하됩니다. (이를 해결하기 위해 AVL 트리, Red-Black 트리 등 자가 균형 BST를 사용)

13. 데이터마이닝의 연관 규칙 분석(Association Rule Analysis) 지표

연관 규칙 분석(일명 '장바구니 분석')은 대규모 데이터베이스에서 항목(Item)들 간의 유용한 연관성이나 상관관계를 찾는 데이터마이닝 기법입니다. 대표적으로 "만약 항목 A를 구매했다면(Antecedent), 항목 B를 구매할 것이다(Consequent)" (A → B) 형태의 규칙을 발견하는 데 사용됩니다.

이러한 규칙이 얼마나 '유용한지(Interesting)' 평가하기 위해 다음과 같은 3가지 핵심 지표가 사용됩니다.

지표 정의 산식 (A → B) 의미 (해석)
지지도 (Support) 전체 거래 중에서 항목 A와 B가 동시에 발생(구매)한 거래의 비율 Supp(A,B) = P(A ∩ B)
= (A와 B를 모두 포함한 거래 수) / (전체 거래 수)
- 얼마나 자주 발생하는가? (빈도)
- 지지도가 너무 낮으면(예: 0.01%) 우연한 규칙일 가능성이 높으므로, 최소 지지도(Min-Sup)를 설정하여 규칙을 필터링함.
신뢰도 (Confidence) 항목 A를 포함한 거래 중에서, 항목 B도 함께 포함한 거래의 비율 (조건부 확률) Conf(A→B) = P(B|A)
= P(A ∩ B) / P(A)
= Supp(A,B) / Supp(A)
- A가 발생했을 때 B가 발생할 확률은? (연관성)
- 신뢰도가 높을수록(예: 90%) A와 B의 연관성이 강함.
향상도 (Lift) A가 구매되지 않았을 때 B가 구매될 확률 대비, A가 구매되었을 때 B가 구매될 확률의 증가 비율 Lift(A→B) = P(B|A) / P(B)
= Conf(A→B) / Supp(B)
- 이 규칙이 얼마나 유용한가? (상관관계)
- Lift > 1: 양의 상관관계 (A가 B의 구매를 촉진, 유용한 규칙)
- Lift = 1: 독립 (A와 B는 관계없음)
- Lift < 1: 음의 상관관계 (A가 B의 구매를 억제)