지식 그래프
지식 그래프가 복잡한 관계를 모델링하여 AI에 혁신을 가져오고, 시맨틱 검색, 개인 맞춤형 추천 등을 가능하게 하는 방법을 알아보세요.
지식 그래프는 다양한 소스의 정보를 구성하고 연결하여 특정 도메인에 대한 지식을 구조화되고 인간과 유사한 방식으로 표현하는 모델입니다. 데이터를 테이블에 저장하는 기존 데이터베이스와 달리 지식 그래프는 엔터티(실제 객체, 이벤트, 상황 또는 추상적 개념)와 그들 간의 관계 네트워크로 정보를 캡처합니다. 이러한 구조를 통해 AI 시스템은 단순히 키워드를 일치시키는 것보다 효과적으로 컨텍스트를 이해하고, 추론을 도출하고, 복잡한 질문에 답변할 수 있습니다. 이 개념은 인터넷 데이터를 기계가 읽을 수 있도록 하는 것을 목표로 하는 시맨틱 웹의 핵심 구성 요소입니다.
지식 그래프의 구조는 노드(개체), 엣지(관계) 및 속성(개체를 설명하는 속성)으로 구성됩니다. 예를 들어 영화에 대한 그래프에서 "레오나르도 디카프리오"는 개체 노드가 되고, "출연"은 관계 엣지가 되며, "타이타닉"은 또 다른 개체 노드가 됩니다. "레오나르도 디카프리오" 노드에는 "생년월일"과 같은 속성도 있을 수 있습니다. 주요 공용 지식 그래프에는 Google의 지식 그래프와 DBpedia와 같은 오픈 소스 프로젝트가 있습니다.
AI 및 머신러닝 분야에서의 응용
지식 그래프는 수많은 지능형 애플리케이션에 필수적입니다.
- 시맨틱 검색: 검색 엔진은 지식 그래프를 사용하여 쿼리 뒤에 숨겨진 의도를 파악하고 단순한 키워드 일치 이상의 관련성 높은 문맥 결과를 제공합니다. 이를 통해 그래프를 탐색하여 "Apple의 CEO는 누구입니까?"와 같은 직접적인 질문에 답변할 수 있습니다.
- 추천 시스템: 사용자, 항목 및 해당 속성 간의 관계를 모델링함으로써 지식 그래프는 소매업의 AI 및 콘텐츠 스트리밍과 같은 영역에서 더욱 정교하고 개인화된 추천을 가능하게 합니다.
- 질의 응답 및 챗봇: 지식 그래프는 엔터티 관계를 탐색하여 AI 시스템이 복잡한 질문에 답변할 수 있도록 하는 구조화된 지식을 제공하여 대화형 AI의 기능을 향상시킵니다.
- 데이터 통합: 지식 그래프는 분산된 소스의 데이터를 통합하여 조직 전체에서 일관되고 상호 연결된 정보 보기를 만들 수 있습니다. 이는 빅 데이터 분석에 매우 중요하며 SPARQL과 같은 언어를 사용하여 자주 쿼리됩니다.
- 다른 AI 모델 개선: 지식 그래프는 다른 AI 작업에 대한 상황적 배경 지식을 제공할 수 있습니다. 예를 들어 컴퓨터 비전(CV)에서 그래프는 Ultralytics YOLO11과 같은 모델에서 식별된 객체를 해당 속성 또는 기능에 대한 정보에 연결하여 더욱 풍부한 장면 이해를 가능하게 합니다. Ultralytics HUB와 같은 플랫폼은 이러한 구조화된 지식을 활용할 수 있는 데이터 세트 및 모델을 관리합니다.
실제 사례
- 전자 상거래 개인화: 온라인 소매업체는 고객, 제품, 브랜드, 카테고리, 조회 기록 및 구매 데이터를 연결하는 지식 그래프를 사용합니다. 사용자가 "운동화"를 검색하면 그래프는 시스템이 관련 개념(예: "마라톤", "트레일 러닝")과 사용자 선호도를 이해하여 매우 개인화된 결과와 보완 제품에 대한 추천을 제공하는 데 도움이 됩니다. 이는 전반적인 고객 경험을 향상시킵니다.
- 헬스케어 분야의 AI 솔루션: 의료 연구 기관은 PubMed와 같은 소스의 질병, 증상, 유전자, 약물 및 연구 간행물을 연결하는 지식 그래프를 구축합니다. 이를 통해 연구원은 "단백질 X를 표적으로 하고 질병 Y를 치료하는 데 사용되는 약물을 찾으십시오."와 같은 복잡한 관계를 쿼리하여 신약 개발을 가속화하고 의료 영상 분석에 대한 진단 지원을 개선할 수 있습니다.
지식 그래프 vs. 관련 개념
- 데이터베이스(Database): 기존 관계형 데이터베이스는 데이터를 행과 열이 있는 사전 정의된 고정 테이블에 저장합니다. 지식 그래프는 복잡하고 진화하는 관계를 나타내고 새로운 연결을 추론하는 데 더 적합한 유연한 그래프 구조(노드 및 에지)를 사용합니다. Neo4j와 같은 최신 그래프 데이터베이스는 이 구조를 관리하도록 특별히 설계되었습니다.
- 벡터 검색: 이는 벡터 임베딩의 근접성을 기반으로 유사한 항목을 찾는 방법입니다. 벡터 데이터베이스는 유사성 검색에 매우 효율적이지만 지식 그래프처럼 관계를 명시적으로 저장하지는 않습니다. 지식 그래프는 명시적인 연결을 정의하는 반면, 벡터 검색은 학습된 특징을 기반으로 암시적인 연결을 찾습니다.
- 대규모 언어 모델(LLM): LLM은 방대한 양의 텍스트로 훈련된 후 해당 파라미터에 지식을 암묵적으로 저장합니다. 지식 그래프는 지식을 명시적이고 검증 가능하게 저장합니다. 이들은 함께 사용될 수 있습니다. LLM은 환각을 줄이고 정확성을 보장하기 위해 먼저 지식 그래프에서 사실 정보를 검색하여 쿼리에 응답할 수 있습니다. 이는 검색 증강 생성(RAG)의 핵심 기술입니다.