KGKnowledge Graphs & LLMsChapter 6 · Korean Field Notes
Part 3 · Building Knowledge Graphs from Text

기록의 층위를 넘어
관계의 지도를 세우다

오래된 타자 문서는 말이 없지만, 그 안의 인물과 기관과 연구 주제는 서로를 가리키며 움직인다. 제6장은 LLM이 건져 올린 이름과 관계를 그대로 믿지 않는다. 먼저 문서층·메타그래프층·최종 KG층으로 나누어 출처를 보존하고, 이름을 씻고, 동일 인물을 묶은 뒤, 그래프 분석으로 과학사의 영향망을 읽는다.

10,000+전체 프로젝트의 역사 문서 페이지
150사례 분석에 사용한 Warren Weaver 일지 페이지
3 LayersDocument → Metagraph → Final KG
1939표본 문서가 작성된 시기
01 / END-TO-END PATH

스캔한 종이에서 질문 가능한 지식까지

제6장의 정신 모형은 단순한 OCR 파이프라인이 아니다. 문서를 읽을 수 있게 만드는 단계, 의미 단위를 추출하는 단계, 동일한 대상을 합치는 단계, 그리고 관계망에서 패턴을 발견하는 단계가 서로 다른 책임으로 나뉜다.

STEP 01

Digitization

OCR, 표 추출, 이미지 분류와 객체 탐지로 아날로그 문서를 디지털 자료로 바꾼다.

STEP 02

NER

사람·기관·직함·연구 분야 같은 도메인 개체를 찾는다.

STEP 03

Relation Extraction

누가 누구와 대화했고, 어디에서 일했으며, 무엇을 연구했는지 추출한다.

STEP 04

KG Creation

모델링, 정규화, 정제, 개체 해소를 거쳐 최종 지식그래프를 만든다.

STEP 05

Graph Data Science

중심성, 커뮤니티, 경로 패턴, 그래프 ML로 구조를 분석한다.

STEP 06

Insight

시각화, 패턴 발견, 질의응답으로 기록을 의사결정 가능한 지식으로 전환한다.

기록은 한 장씩 읽히지만, 영향은 한 장 안에 머물지 않는다. 그래서 문서 처리는 순서의 기술이고, 지식그래프는 연결의 기술이다.제6장의 논지를 답사기적 문장으로 재구성
02 / ARCHIVE REALITY

역사 문서는 데이터가 아니라 사연 많은 현장이다

RAC 자료는 현대의 정제된 데이터셋과 다르다. 종이는 낡고, 표기는 줄어들고, 연구 분야는 사라졌으며, 한 인물은 여러 이름으로 나타난다. 이 장은 이러한 불편을 제거하지 않고, 설계 조건으로 받아들인다.

01

아날로그 타자 문서

스캔과 OCR이 선행되어야 한다. Amazon·Microsoft 계열 서비스나 오픈소스 Tesseract 같은 선택지가 있지만, 역사 문서의 오탈자는 다음 단계까지 이어진다.

02

사라진 연구 분야

현재의 사전이나 지식베이스만으로는 과거 자연과학의 명칭을 포괄하기 어렵다. 완전한 NER 사전을 미리 만드는 전략은 현실성이 낮다.

03

비표준 약칭과 개인 문체

S., U.Cal.처럼 당시 작성자만의 축약이 등장한다. 범용 상호참조 모델은 실패했지만, GPT는 프롬프트 문맥에서 일부 약칭을 암묵적으로 복원했다.

04

도메인 특화 Occupation

연구 분야·기술·치료법·질병을 하나의 도메인 개체군으로 다룬다. 세분성 차이가 커서 추후 의미 기반 군집화가 필요하다.

05

높은 관계 밀도

한 페이지에 수십 개 관계가 존재할 수 있다. 관계 스키마가 느슨하면 쓸모없는 관계가 늘고, 너무 좁으면 중요한 연결이 사라진다.

06

정규화·정제·해소·모호성 해소

이름 변형, 여러 대화 참여자, 유사하지만 다른 주제, 수개월·수년간 이어지는 대화 사슬을 다뤄야 한다.

07

비정형 출처 간 연결

프로그램 담당자 일지와 이사회 회의록을 하나의 KG에서 맞추면, 어떤 대화가 어떤 연구비 지원으로 이어졌는지 추적할 수 있다. 이 장에서는 범위를 영향 네트워크에 한정하지만, 장기 목표는 자료 간 인과적 선행 패턴을 탐색하는 데 있다.

LLM 시대의 실무적 이점

과거에는 각 난점을 위해 별도의 NER·RE·상호참조 모델과 대규모 라벨 데이터를 마련해야 했다. 이 장은 적절한 지식표현, LLM 선택, 프롬프트 설계가 초기 진입비용을 크게 낮춘다는 입장을 취한다. 다만 이후의 정규화와 개체 해소까지 사라지는 것은 아니다.

03 / GRAPH MODELING

좋은 KG는 한 번에 만들어지지 않는다

LLM 출력은 최종 지식이 아니라 원재료다. 제6장은 원문과 추출 흔적을 남긴 채, 정제된 지식으로 올라가는 세 개의 층을 설계한다. 이 층위가 있어야 잘못 합쳐진 개체를 되돌리고, 최종 그래프를 다시 만들 수 있다.

문서층: 원자료의 자리를 보존한다

각 일지 파일은 File 노드가 되고, OCR로 얻은 각 면은 Page 노드가 된다. 파일명·위치·작성자와 정제된 페이지 텍스트가 이 층에 남는다.

핵심 노드 File, Page
핵심 관계 CONTAINS_PAGE
설계 목적 출처·원문·재처리 기반 유지
Filefilename · location · authorCONTAINS_PAGEPageOCR text · page numberoriginal evidence anchor

메타그래프층: 합치기 전에 흔적을 쌓는다

페이지마다 발견된 개체 언급은 모두 별도 Entity 노드로 만든다. 같은 이름처럼 보여도 먼저 병합하지 않는다. 추출 관계는 RELATED_TO_ENTITY에 관계 타입을 속성으로 남긴다.

핵심 원칙 create, not merge
보존 대상 페이지별 개체 언급과 관계의 출처
설계 목적 정규화·개체 해소·오류 추적의 작업대
PageEntity AEntity BEntity CRelationtype property

최종 KG층: 의미가 정돈된 세계

정규화·정제·개체 해소가 끝난 결과는 Person, Title, Organization, Occupation 같은 도메인 노드와 WORKS_ON, WORKS_FOR 같은 의미 관계로 재구성된다.

핵심 노드 Person, Title, Organization, Occupation
핵심 관계 WORKS_FOR, WORKS_ON, TALKED_WITH 등
설계 목적 효율적 질의·시각화·그래프 분석
PersonTitleOrganizationOccupationPersonHAS_TITLEWORKS_FORWORKS_ONTALKED_WITH

왜 LLM 출력에서 곧바로 최종 KG를 만들지 않는가

LLM은 원하는 형식에 최대한 맞추지만, 같은 인물을 여러 이름으로 내놓고 관계를 잘못 연결할 수 있다. 중간층이 없으면 오류의 원문을 찾기 어렵고, 정제 규칙을 바꿨을 때 전체 그래프를 안전하게 재생성하기도 어렵다.

04 / METAGRAPH & PROVENANCE

합치지 않는 용기가 설명 가능성을 만든다

긴 문서는 토큰 한계와 품질 저하 때문에 청킹이 필요하다. 이 장의 가장 단순한 예는 페이지 단위 분할이다. 각 페이지의 언급을 별도 노드로 남기면 최종 지식이 어디에서 왔는지 거꾸로 추적할 수 있다.

01

Page chunk

150쪽의 표본을 페이지별로 처리한다.

02

Entity mentions

발견한 모든 언급을 병합하지 않고 생성한다.

03

Relation mentions

관계 타입을 속성으로 저장하고 페이지와 연결한다.

04

Resolve & aggregate

정규화와 개체 해소 후 여러 페이지의 지식을 합친다.

05

Rebuildable KG

규칙이 바뀌면 메타그래프에서 최종 KG를 다시 만든다.

사용자에게 주는 설명 가능성

시각화에서 노드나 관계를 선택하면, 그 지식이 추출된 원문 조각을 다시 보여줄 수 있다. 결과만 제시하는 것이 아니라 근거가 놓인 페이지를 함께 제시한다.

운영자에게 주는 유지보수성

데이터 과학자는 어떤 언급이 잘못 합쳐졌는지 추적하고, 개체 해소 규칙을 조정한 뒤 최종 그래프를 재생성할 수 있다.

정규화와 정제의 두 가지 예

메타그래프의 상위 개체·관계 통계를 살핀 뒤, 그래프 연결성을 해치는 표현 차이를 먼저 고친다.

PERSON NORMALIZATION · CONCEPTUAL CYPHER
// 사람 이름 앞의 직함을 제거하고 정규화 이름을 저장
MATCH (e:Entity {label: "Person"})
WITH e, removeLeadingTitle(e.name) AS normalized
SET e.name_normalized = normalized
OCCUPATION NORMALIZATION · CONCEPTUAL CYPHER
// 대소문자가 의미를 바꾸지 않는 연구 분야는 소문자로 통일
MATCH (e:Entity {label: "Occupation"})
SET e.name_normalized = toLower(e.name)

위 코드는 원문 Listing 6.1의 목적을 짧게 재구성한 개념 예시다. 핵심은 원본 name을 덮어쓰지 않고 name_normalized를 별도 속성으로 두는 데 있다.

05 / GRAPH-BASED ENTITY RESOLUTION

같은 이름을 찾는 일은 철자보다 삶의 궤적을 보는 일이다

Eleanor SmithE. Smith가 같은 사람인지 판단하려면 문자열만으로는 부족하다. 같은 대학에 속하고, 같은 연구를 다루고, 같은 대화 공동체에 등장한다면 신호가 겹친다. 그래프는 이 겹침을 경로로 보여준다.

문자열 규칙

성은 같고 이름 또는 이니셜이 호환되는지 본다. 성만 같다는 이유로 합치면 오탐이 늘어난다.

관계 기반 신호

같은 기관의 WORKS_FOR, 유사 연구의 WORKS_ON 같은 주변 관계를 함께 본다.

구조·의미 신호

Louvain 커뮤니티 소속, 임베딩 기반 Occupation 유사도, 계층적 군집을 추가 신호로 사용할 수 있다.

개체 해소 신호 믹서

Ernest Lawrence의 세 가지 언급을 하나로 묶는 사고 과정을 체험하는 교육용 도구다.

개념적 병합 근거 강도강함

문자열·기관·주제 신호가 겹치므로 동일 인물 후보를 하나의 연결 성분으로 묶을 근거가 충분하다.

실제 확률이나 원문 실험 점수가 아니다. 제6장이 설명한 다중 신호 결합 논리를 시각화한 것이다.
세 개의 언급, 하나의 인물 후보 Ernest OrlandoLawrencepage 26 Ernest O.Lawrencepage 99 Lawrencepage 126 University of CaliforniaWORKS_FOR cyclotron / high-voltage cyclotronWORKS_ON + semantic similarity WCC group → canonical name가장 긴 이름을 대표값으로 선택

기본 해소 절차

1. META_SIMILAR

문자열과 관계 조건을 만족하는 언급 사이에 유사 관계를 만든다.

2. WCC

약하게 연결된 성분을 찾아 같은 실체 후보군을 만든다.

3. Canonical name

후보군에서 가장 긴 이름을 대표 이름으로 선택한다.

4. Final nodes

해소된 개체와 관계로 최종 KG층을 생성한다.

기관명에서 Foundation처럼 흔한 단어는 유사도 판단을 흐릴 수 있으므로 도메인별 stopword 설계가 필요하다.

06 / INTELLECTUAL NETWORK ANALYSIS

그래프는 이름의 목록을 영향의 풍경으로 바꾼다

최종 KG가 만들어지면 질문은 “무엇이 들어 있는가”에서 “누가 연결을 만들었는가”로 이동한다. 제6장은 과학자 사이의 TALKED_ABOUT, TALKED_WITH, WORKS_WITH, STUDENT_OF를 하나의 지적 네트워크로 보고 중심성과 경로를 분석한다.

Niels Bohr E. Lawrence D. Wrinch I. Langmuir J. B. Conant Bernal H. Shapley 교육용 개념도: 원문 수치가 아니라 각 중심성의 해석 차이를 보여준다.

가장 큰 연결 성분

노드 크기를 betweenness 중심성으로 표현하면, 서로 떨어진 연구자 집단을 잇는 인물이 두드러진다. Niels Bohr와 Ernest Lawrence뿐 아니라 덜 알려진 연결자도 조사 대상으로 떠오른다.

사이클로트론 영향망

연구 주제에서 최대 2-hop까지 확장하고 전역 PageRank로 인물 크기를 조정한다. Lawrence, Bohr, Harlow Shapley, James B. Conant가 가까운 영향권에 나타난다.

두 대학을 잇는 조언자

Johns Hopkins와 Harvard의 연구자 사이를 최대 3-hop으로 탐색하면 Irving Langmuir가 유력한 연결자로 보인다. 관계의 sentiment까지 살피면 균형 있는 인터뷰 대상을 고를 수 있다.

LISTING 6.2의 질의 의도 · PSEUDO-CYPHER
// 특정 Occupation과 연결된 사람에서 시작해 영향 관계를 1~2 hop 확장
MATCH path = (topic: Occupation)<-[:WORKS_ON]-(person: Person)
              -[:TALKED_ABOUT|TALKED_WITH|WORKS_WITH|STUDENT_OF*1..2]-
              (neighbor: Person)
WHERE topic.name = $occupation
RETURN path
!

Laurence Irving 오류가 남긴 교훈

사이클로트론 주변 그래프에 비교생리학자 Laurence Irving이 등장했다. 같은 페이지의 Ernest Lawrence 때문에 LLM이 이름을 Lawrence Irving으로 혼동하고 관계 추출까지 잘못 연결한 사례다. 그래프가 정교해 보여도 원자료를 잘못 읽으면 구조화된 오류가 된다. 따라서 분석자가 노드와 관계를 승인·기각할 수 있는 피드백 루프가 필수다.

중복 노드도 분석 단서다

Irving LangmuirLangmuir가 별도 노드로 남은 이유는, 성만 기록된 페이지에 추가 관계가 부족해 개체 해소가 실패했기 때문이다. 중복은 단순 결함이 아니라 어떤 증거가 부족했는지 알려주는 운영 신호다.

관계 속성의 가치

TALKED_ABOUT에 sentiment를 담으면, Bernal이 Dorothy Wrinch에 부정적이고 Langmuir가 Bernal에 부정적이라는 맥락을 읽을 수 있다. 연결 유무를 넘어 관계의 태도까지 의사결정에 사용한다.

07 / PRODUCTION ROADMAP

150쪽의 가능성을 10,000쪽의 체계로 키우는 법

표본 그래프는 방향을 보여줬지만, 생산 수준의 시스템은 더 긴 문서, 더 많은 개체 유형, 다른 자료군, 대화의 연속성까지 다뤄야 한다.

01

지식 추출 품질 향상

프롬프트를 반복 개선하거나 LLM을 fine-tuning하여 개체·관계 정확도를 높인다.

02

다중 페이지 문서 처리

RAC 프로젝트에서는 ChatGPT-3.5-Turbo로 일지 항목의 경계를 식별했다. 일반적으로 한 항목은 3쪽 미만이어서 관련 페이지를 함께 처리할 수 있었다.

03

개체 해소와 외부 지식 연결

기본 규칙을 다른 개체 유형으로 확장하고, Wikidata 같은 지식베이스와의 entity disambiguation을 결합한다.

04

연구비 지원 정보 통합

이사회 회의록에서 grant를 추출해 일지의 대화와 연결하면, 영향력 있는 과학자나 기존 수혜자의 추천이 지원 결정에 선행했는지 분석할 수 있다.

05

Occupation 의미 해소

nuclear physics, isotopes, heavy nitrogen처럼 세분성이 다른 주제를 연결한다. SentenceBERT 또는 GPT 임베딩과 agglomerative hierarchical clustering이 유용한 결과를 보였다.

06

Conversation 노드 생성

날짜·인터뷰어·인터뷰이·주제를 묶어 대화를 독립 노드로 만들고, 후속 대화 사슬과 grant를 연결한다. 이를 위해 고품질 RE와 비지도 Occupation 해소가 필요하다.

08 / WHY KG IN THE LLM ERA

강력한 LLM이 있어도, 왜 굳이 그래프를 만드는가

제6장의 결론은 LLM과 KG를 경쟁 관계로 보지 않는다. LLM은 문서를 읽고, KG는 읽은 결과를 검증 가능한 구조로 남긴다. 비싼 언어 모델을 한 번 사용해 오래 활용할 수 있는 지식 자산을 만드는 것이 핵심이다.

01

설명 가능성

노드·관계·원문 근거를 추적하고, 충돌하는 출처와 추론 경로를 사용자가 직접 검사할 수 있다.

02

블랙박스 해체

LLM을 그대로 fine-tuning해 질문만 던지는 방식보다, 사실을 추출해 KG로 남기면 무엇이 포함되고 누락됐는지 점검할 수 있다.

03

민주화

거대한 모델을 계속 호출하거나 재학습하지 않고, 한 번 만든 KG를 장기간 분석과 서비스에 활용한다. 업데이트는 비교적 저렴한 배치 작업으로 수행할 수 있다.

04

탐색 가능성

전체 구조에서 세부 경로까지 오가며 가설을 세우고, 시각적으로 확인하거나 반박할 수 있다.

05

고급 분석

그래프 알고리즘과 ML을 이용해 패턴을 분석하면서, 질문에 대한 답이 만들어지는 과정을 분석자가 통제한다.

LLM이 기록의 문장을 읽는 눈이라면, 지식그래프는 그 눈이 본 것을 다시 확인할 수 있도록 길과 표지판을 세우는 지도다.
09 / CHAPTER SYNTHESIS

제6장의 핵심은 모델보다 구조에 있다

문서에서 개체와 관계를 잘 추출하는 것만으로는 충분하지 않다. 출처를 보존하는 중간층, 정규화 가능한 이름, 다중 신호에 기반한 개체 해소, 검증 가능한 분석 루프가 함께 있어야 지식그래프가 조직의 자산이 된다.

핵심 명제

01

그래프 모델링은 사용 사례에 맞게 정보를 저장하는 설계 행위다. 좋은 스키마는 생성·정제·정규화·개체 해소와 후속 분석을 단순하게 만든다.

02

고품질 관계 추출은 비지도 그래프 기반 개체 해소를 가능하게 한다. 주변 관계는 이름 문자열만으로 알 수 없는 동일성 단서를 제공한다.

03

그래프 데이터 과학과 그래프 ML은 LLM 블랙박스에 지나치게 의존하지 않고도 영향, 연결, 커뮤니티, 경로 패턴을 분석하게 한다.

04

오류는 피할 수 없으므로, 사용자가 원문으로 돌아가 관계를 승인·기각하는 피드백 루프를 시스템 설계에 포함해야 한다.

원문 구성 지도

항목내용
Fig. 6.1비정형 문서 → 디지털화 → NER/RE → KG → Graph Data Science → 인사이트
Fig. 6.2Document, Metagraph, Final KG의 3계층 스키마
Listing 6.1사람 이름의 직함 제거와 Occupation 소문자 정규화
Fig. 6.3Ernest Lawrence의 세 언급을 관계 신호로 해소하는 예
Fig. 6.4Betweenness로 스타일링한 지적 영향 네트워크
Listing 6.2사이클로트론 연구 주변 영향망을 찾는 수-hop 질의
Fig. 6.5사이클로트론 2-hop 영향망과 PageRank 기반 노드 크기
Fig. 6.6Johns Hopkins–Harvard 사이의 최대 3-hop 물리학 영향망
이 웹페이지는 Knowledge Graphs and LLMs in Action 제6장, 인쇄면 115~128쪽의 논지·용어·구성을 바탕으로 한국어로 재구성했다. 코드와 도식은 학습을 위해 축약·재도식화했으며, 상호작용 점수는 원문 실험 수치가 아닌 개념 설명용 표현이다.