데이터 마이닝에서 신뢰할 수 있는 분석 결과를 얻기 위해서는 무엇보다 데이터 자체의 품질이 중요합니다. 실제 현장에서 수집되는 원시 데이터(raw data)는 대부분 불완전하고, 잡음이 섞여 있으며, 일관성이 떨어지는 경우가 많습니다. 이러한 문제를 사전에 해결하는 과정이 바로 데이터 전처리(Data Preprocessing)입니다.데이터 전처리는 크게 네 가지 핵심 단계로 구성됩니다. 바로 데이터 정제(Data Cleaning), 데이터 통합(Data Integration), 데이터 축소(Data Reduction), 그리고 데이
순차 패턴 마이닝이란?순차 패턴 마이닝(Sequential Pattern Mining)은 데이터 안에서 자주 반복해서 나타나는 일련의 사건(event)이나 부분 수열(subsequence)을 패턴으로 발굴하는 데이터 마이닝 기법입니다. 가장 대표적인 예가 바로 캐논 디지털 카메라를 구매한 고객은 한 달 이내에 HP 컬러 프린터를 구매한다는 행동 패턴입니다.왜 중요할까? 주요 활용 분야소매 유통 업계에서는 순차 패턴을 활용해 상품 진열대 배치와 프로모션 전략을 최적화할 수 있습니다. 이 밖에도 통신 산업을 비롯한 다양한 비즈니스 분야
GSP(Generalised Sequential Patterns)의 정의GSP는 일반화 순차 패턴(Generalised Sequential Patterns)의 약자로, 1996년 Srikant와 Agrawal이 제안한 대표적인 순차 패턴 마이닝(sequential pattern mining) 기법입니다. GSP는 두 연구자가 이전에 발표한 연관 항목집합(itemset) 마이닝의 핵심 알고리즘인 Apriori를 순차 데이터에 맞게 확장한 것으로, 순차 패턴이 지니는 하향 폐쇄성(downward-closure) 속성을 활용하고 여러 번
서열 정렬(Alignment)의 기본 원리서열 정렬은 모든 생명체가 진화적으로 서로 연결되어 있다는 사실에 기반합니다. 즉, 진화 계통상 서로 가까운 종일수록 뉴클레오티드(DNA, RNA) 서열과 단백질 서열에서 더 높은 유사성을 보인다는 점을 활용하는 것입니다.서열 정렬이란 여러 서열을 나란히 배열하여 최대한의 일치도(identity)를 얻는 과정을 말하며, 이 일치도가 곧 서열 간의 유사도를 결정합니다. 두 서열이 공통 조상을 공유한다면, 그 두 서열은 상동(homologous) 관계에 있다고 말합니다.서열 정렬로 알 수 있는
BLAST 알고리즘의 탄생 배경BLAST(Basic Local Alignment Search Tool) 알고리즘은 1990년경 미국 국립생물공학정보센터(NCBI)의 Altschul, Gish, Miller 등에 의해 개발되었습니다. BLAST는 서열 간의 기능적·진화적 관계를 도출하고, 유전자 패밀리(family)의 구성원을 식별하는 데 널리 활용되는 대표적인 생물정보학 도구입니다.NCBI가 제공하는 BLAST 데이터베이스NCBI 웹사이트에는 여러 표준 BLAST 데이터베이스가 마련되어 있습니다. 데이터 성격에 따라 핵산(nucle
튜플 ID 전파의 기본 개념튜플 ID 전파(Tuple ID Propagation)는 가상 조인(virtual join)을 구현하는 방식으로, 다중 관계 분류(multirelational classification)의 효율성을 크게 향상시키는 핵심 기술입니다. 물리적으로 관계(relation)를 직접 조인하지 않고도, 대상 튜플(target tuple)의 ID를 비대상 관계(non-target relation)의 튜플과 연결함으로써 두 관계를 가상으로 결합할 수 있습니다.이 방식에서는 마치 실제 물리적 조인을 수행한 것처럼 술어(pr
다중 관계형 클러스터링(Multirelational Clustering)의 개념다중 관계형 클러스터링은 여러 개의 관계(relation)에 분산되어 있는 데이터를 활용하여, 데이터 객체들을 유사도에 기반해 여러 클러스터로 나누는 기법입니다. 단일 테이블만으로 분석하는 기존의 클러스터링과 달리, 관계형 데이터베이스 전반에 흩어져 있는 정보를 종합적으로 활용한다는 점이 특징입니다.CrossClus: 사용자 가이던스 기반의 다중 관계형 클러스터링 알고리즘CrossClus는 Cross-relational Clustering with use
집합 값 속성(Set-valued Attribute)의 일반화집합 값 속성은 동질적(homogeneous) 유형일 수도 있고 이질적(heterogeneous) 유형일 수도 있습니다. 일반적으로 집합 형태의 정보는 다음과 같은 방식으로 일반화할 수 있습니다.상위 개념으로의 치환: 집합에 포함된 모든 값을 그에 해당하는 더 높은 수준의 개념으로 일반화합니다.집합의 전형적인 행위 도출: 집합 내 원소의 개수, 원소들의 유형이나 값 범위, 통계 데이터의 가중 평균, 집합이 형성하는 주요 클러스터 등 집합이 나타내는 일반적인 특성을 추출합니
공간 데이터 분석과 통계 기법통계적 공간 데이터 분석은 공간 데이터를 탐색하고 지리 데이터를 분석하는 데 널리 활용되어 온 대표적인 기법입니다. 지리통계학(Geostatistics)이라는 용어는 연속적인 지리 공간을 다루는 반면, 공간 통계(Spatial Statistics)는 이산적인 공간을 다룹니다.공간 데이터의 상호 의존성비공간 데이터를 다루는 통계 모델에서는 일반적으로 서로 다른 데이터 영역 간의 통계적 독립성을 가정합니다. 그러나 전통적인 데이터셋과 달리, 공간적으로 분포된 데이터에는 이러한 독립성이 존재하지 않습니다. 실
자동 문서 분류(automated document classification)는 텍스트 마이닝에서 필수적인 서비스입니다. 온라인상에 존재하는 방대한 양의 문서를 감안할 때, 이러한 기록들을 자동으로 특정 클래스로 정리하는 능력은 문서 검색과 후속 분석을 지원하는 데 매우 중요합니다.자동 문서 분류의 주요 활용 분야문서 분류는 다음과 같은 다양한 용도로 활용되고 있습니다.자동 주제 태깅: 문서에 라벨을 자동으로 부여주제 디렉터리 구성: 문서를 주제별로 체계적으로 정리작성 스타일 식별: 문서의 글쓰기 스타일 판별하이퍼링크 목적 정의:
문서 클러스터링(Document Clustering)은 비지도 학습(unsupervised learning) 방식으로 대량의 문서를 체계적으로 조직화하는 핵심 기술입니다. 문서를 용어 벡터(term vector) 형태로 표현하면 다양한 클러스터링 기법을 적용할 수 있으며, 문서 공간은 일반적으로 수백에서 수천에 이르는 높은 차원을 가집니다. 차원의 저주와 저차원 임베딩의 필요성 문서 공간의 차원이 지나치게 높으면 차원의 저주(curse of dimensionality)로 인해 클러스터링 성능이 크게 저하됩니다. 따라서 본격적인 클
통계 정보를 활용한 쿼리 응답 처리 과정STING(STatistical INformation Grid)과 같은 그리드 기반 방식에서 통계 파라미터는 다음과 같은 상향식(top-down) 절차를 통해 쿼리 응답에 활용됩니다.먼저, 쿼리 응답 절차를 시작할 계층 구조 내의 레이어를 결정합니다. 이 레이어는 일반적으로 소수의 셀(cell)로 구성됩니다. 현재 레이어의 각 셀에 대해 해당 셀이 주어진 쿼리와 얼마나 관련이 있는지를 나타내는 신뢰 구간(confidence interval), 즉 확률의 추정 범위를 계산합니다.상위 레벨 셀의
COBWEB 알고리즘이란?COBWEB은 개념 군집화(conceptual clustering)에 사용되는 대표적인 증분 학습(incremental learning) 알고리즘입니다. 이 알고리즘은 객체들을 하나씩 분류 트리(classification tree)에 점진적으로 삽입하면서 군집 구조를 형성합니다.새로운 객체가 들어오면 COBWEB은 트리를 따라 내려가는 경로를 따라 이동하면서 지나가는 노드들의 카운트 값을 갱신하고, 해당 객체를 수용할 최적 호스트(best host), 즉 가장 적합한 노드를 탐색합니다.최적 배치 위치를 결정
CLIQUE란 무엇인가?CLIQUE는 고차원 데이터 공간에서 차원 증가(dimension-growth) 방식의 부분 공간 클러스터링을 위해 최초로 제안된 알고리즘입니다. 차원 증가 방식의 부분 공간 클러스터링에서는 클러스터링 과정이 1차원 부분 공간에서 시작하여 점차 더 높은 차원의 공간으로 확장되어 나갑니다.CLIQUE는 각 차원을 격자(grid) 구조처럼 분할하고, 셀(cell)에 포함된 데이터 포인트의 수를 기준으로 해당 셀이 밀집(dense) 상태인지 여부를 판단합니다. 이러한 특성 때문에 CLIQUE는 밀도 기반 클러스터링
PROCLUS의 개요PROCLUS는 Projected Clustering(투영 클러스터링)의 약자로, 널리 사용되는 차원 축소 기반 부분공간(subspace) 클러스터링 기법입니다. 개별 저차원 공간에서 출발하는 대신, 고차원 속성 공간 전체에서 클러스터의 초기 근사치를 먼저 찾는 것이 특징입니다.각 클러스터에는 차원별 가중치가 부여되며, 갱신된 가중치는 다음 반복 단계에서 클러스터를 재구성하는 데 활용됩니다. 이러한 방식 덕분에 적절한 차원 수를 가진 모든 부분공간에서 밀집 영역을 탐색할 수 있고, 낮은 차원의 투영 공간에서 과도
데이터 마이닝에서 장애물(obstacle)이 존재하는 공간에서의 클러스터링은 흔히 간과되지만 매우 중요한 문제입니다. 예를 들어 도시 시설 입지를 분석할 때 강이나 호수 같은 지리적 장애물을 고려하지 않으면 현실성 없는 결과가 나올 수 있습니다. 이 글에서는 장애물이 있는 클러스터링 문제를 효율적으로 해결하는 접근 방식을 살펴봅니다.왜 k-medoids 방법인가?분할 기반 클러스터링(partitioning clustering) 방법은 데이터 집합과 클러스터 중심 간의 거리를 최소화하기 때문에 바람직한 선택입니다. 그러나 k-평균(k
순차 예외 기법(Sequential Exception Technique)이란? 순차 예외 기법은 인간이 겉보기에 유사한 객체들의 나열 속에서 비정상적인 집합을 직관적으로 구별해 내는 과정을 모방한 이상치(outlier) 탐지 기법입니다. 이 기법은 데이터에 내재된 암묵적 중복성을 활용하여 전체 데이터 집합에서 벗어나는 객체들, 즉 예외 집합을 효과적으로 찾아냅니다. 기본 원리 n개의 객체로 구성된 데이터 집합 D가 주어지면, 이 기법은 2 ≤ m ≤ n 조건을 만족하는 부분 집합들의 수열 {D₁, D₂, ..., Dₘ}을 구성합니
무작위 알고리즘(Randomized Algorithms)무작위 알고리즘은 무작위 표본 추출(random sampling)과 스케칭(sketching) 기법의 형태로, 대규모 고차원 데이터 스트림을 처리하는 데 활용됩니다. 무작위성을 도입하면 기존의 결정론적(deterministic) 알고리즘보다 더 단순하면서도 효율적인 알고리즘을 설계할 수 있다는 점이 큰 장점입니다.무작위 알고리즘은 항상 올바른 답을 반환하지만 실행 시간이 매번 달라지는 경우 라스베가스(Las Vegas) 알고리즘이라고 합니다. 반면 몬테카를로(Monte Carl
손실 계산(Lossy Counting) 알고리즘이란?손실 계산 알고리즘은 끝없이 흘러 들어오는 데이터 스트림에서 빈발 항목(frequent items)을 근사적으로 찾아내는 대표적인 기법입니다. 전체 데이터를 저장하지 않고도 제한된 메모리 안에서 높은 정확도를 유지할 수 있다는 점이 가장 큰 특징입니다.입력 매개변수와 버킷 분할알고리즘은 두 가지 입력 매개변수를 받습니다. 하나는 최소 지지도 임계값(minimum support threshold) σ이고, 다른 하나는 오차 한계(error bound) ε입니다. 들어오는 스트림은 이
데이터 스트림 클러스터링이란 무엇인가?데이터 스트림 클러스터링(Data Stream Clustering)은 전화 데이터, 멀티미디어 데이터, 금융 거래 정보처럼 끊임없이 연속적으로 발생하는 데이터를 군집화하는 기법을 의미합니다. 이 기법은 일반적으로 스트리밍 알고리즘으로 처리되며, 주어진 데이터 포인트의 시퀀스에 대해 제한된 메모리와 짧은 처리 시간 안에 최적의 클러스터링 결과를 도출하는 것을 목표로 합니다.일부 응용 분야에서는 이렇게 유입되는 데이터를 유사도에 따라 자동으로 그룹화하는 기능이 필수적입니다. 대표적인 활용 사례로는