링크 예측과 지식 그래프 완성
임베딩을 만들었다면 이제 ‘아직 없는 엣지 중 무엇이 있을 법한가’를 물을 수 있습니다. 후보에 점수를 매겨 순위를 만들고, 그 순위를 Hits@k와 MRR로 평가하는 법을 배웁니다.
이번 회차, 내 속도로.
기초를 더 짚거나 궁금한 주제로 잠깐 넓혀 보세요. 최대 3단계를 거쳐 DAY 79로 돌아옵니다.
난이도·관심 주제 고르기
1/2개 선택 · 새 보충·심화 수업과 본과정 다시 읽기를 선택할 수 있어요.
이렇게 다녀와요 1단계 · 약 12분
- 출발 · DAY 79링크 예측·순위 평가
- 1. 관심 주제원-핫·밀집 벡터·코사인 유사도추가 31 · 새 추가 수업
- 복귀 · DAY 79원래 회차 이어가기
- 원-핫·밀집 벡터·코사인 유사도 · DAY 76에서 노드 임베딩이 가까운 노드를 가까운 벡터로 만든다고 했는데, 출발점인 원-핫 표현과 비교하면 임베딩이 왜 필요한지 분명해집니다.
선택과 경로 기록은 이 브라우저에 저장됩니다. 본과정의 회차 완료와는 별도입니다.
핵심 개념
링크 예측(link prediction)은 아직 그래프에 없는 엣지 후보에 점수를 매겨 순위를 정하는 일입니다. 점수는 공통 이웃 수 같은 단순한 구조 지표일 수도 있고, 노드 임베딩의 유사도나 TransE의 −‖h+r−t‖ 같은 모델 점수일 수도 있습니다. 지식 그래프 완성(knowledge graph completion)은 이를 트리플에 적용해 (h, r, ?)나 (?, r, t)의 빈칸에 들어갈 엔티티를 추정하는 일입니다.
평가는 순위로 합니다. Bordes et al.(2013)의 방식에서는 테스트 트리플마다 머리(또는 꼬리)를 사전의 모든 엔티티로 바꿔 넣어 점수를 매기고 정렬한 뒤, 정답 엔티티가 몇 위인지 기록합니다. 이때 바꿔 넣은 후보 가운데 학습·검증·테스트 집합에 이미 있는 참 트리플은 빼는데, 이를 필터(filtered) 설정이라 합니다. 다른 정답을 오답처럼 세어 순위를 깎는 일을 막기 위해서입니다.
Hits@k는 정답이 k위 안에 든 질의의 비율입니다. MRR(mean reciprocal rank)은 정답 순위의 역수 1/순위를 평균한 값으로, 1위면 1, 2위면 0.5, 10위면 0.1을 받습니다. 그래서 MRR은 1위와 2위의 차이를 크게, 50위와 60위의 차이는 작게 반영합니다. TransE 논문은 평균 순위와 Hits@10을 보고했고, RotatE(2019) 같은 후속 연구는 평균 순위(MR)·MRR·Hits@N을 표준 지표로 함께 씁니다.
점수가 높은 링크는 사실이 아니라 ‘검토할 후보’입니다. 지식 그래프는 열린 세계(DAY 59)이므로 테스트 집합에 없는 링크가 거짓이라는 보장도 없습니다. 그래서 실무에서는 상위 후보를 출처 문서나 담당자 확인으로 검증한 뒤에 그래프에 넣고, 자동으로 추가한 링크에는 그 사실을 표시해 둡니다.
작은 예제로 따라가기
질의 세 개의 정답 순위가 1위, 3위, 6위로 나왔습니다(예: (서울, 수도이다, ?)의 정답 한국이 1위).
Hits@1 = 1/3 ≈ 0.33, Hits@3 = 2/3 ≈ 0.67, Hits@10 = 3/3 = 1입니다.
MRR = (1/1 + 1/3 + 1/6) / 3 = (6/6 + 2/6 + 1/6) / 3 = 0.5입니다.
직접 실험해 보기
정답을 공개하기 전에 후보 5개 중 정답이 몇 위일지 예상해 적고, 공개 버튼을 눌러 순위와 Hits@1·Hits@3·MRR이 어떻게 계산되는지 확인하세요.
후보 엣지에 점수를 매겨 순위로 평가하기
실선 = 관측된 엣지 9개(원래 11개 중 2개를 숨김) · 점선 = 후보. 먼저 숨겨진 엣지라고 생각하는 후보를 표에서 눌러 예측해 보세요.
| 순위 | 후보 (눌러 예측) | 점수 | 정답 |
|---|---|---|---|
| 1 | 2 (지아·서준) | ? | |
| 2 | 2 (민수·하린) | ? | |
| 3 | 1 (유나) | ? | |
| 4 | 1 (도윤) | ? | |
| 5 | 0 (없음) | ? |
이번에는 직접 풀어 보세요
정답을 보기 전에 계산과 이유를 적어 보세요. 해설과 비교하고 확인 표시를 남기면 완료할 수 있습니다.
힌트 보기
필터 설정에서는 정답이 아니지만 이미 참으로 알려진 후보를 목록에서 뺍니다.
풀이와 비교하기
원 순위는 2위이고 역수 순위는 0.5입니다. 서울은 학습 집합에 있는 참 트리플이므로 필터 설정에서 빼면 부산이 1위가 되어 역수 순위는 1입니다. 필터 설정이 없으면 다른 정답(서울) 때문에 모델이 부당하게 낮게 평가됩니다.
풀이와 확인 표시는 이 브라우저에 저장됩니다.
오늘 이해한 것과 다시 볼 것
계산이 달라진 이유, 헷갈린 개념, 다음에 확인할 질문을 남겨 보세요.
메모는 이 브라우저에 저장됩니다. 홈에서 전체 기록을 내려받을 수 있습니다.오늘의 이해 확인
세 질의의 정답 순위가 1위, 2위, 4위일 때 MRR은?
완료 조건: 확인 퀴즈 정답 · / 직접 풀기 0/1
더 깊이 읽기
예제와 실험 데이터는 이 과정을 위해 만든 것입니다. 원문은 선택 자료이며, 강의와 직접 풀기만으로도 다음 회차를 이어갈 수 있습니다.
Translating Embeddings for Modeling Multi-relational DataBordes et al. (2013)RotatE: Knowledge Graph Embedding by Relational Rotation in Complex SpaceSun et al. (2019)Knowledge GraphsHogan et al. (2021)이 자료는 개념 학습용입니다. 실제 데이터베이스·라이브러리·플랫폼의 동작과 설정은 제품과 버전마다 다를 수 있습니다.