멀티모달 entity linking은 문장과 이미지 속 mention을 knowledge base의 실제 entity에 연결한다. 대부분의 연구는 mention의 text와 image에서 더 좋은 feature를 뽑는 데 집중했다. DIM은 시선을 반대편으로 돌린다. 링크의 실패가 feature 부족뿐 아니라 낡거나 모호한 entity representation에서 생길 수 있다면, candidate entity 쪽 표현도 함께 바뀌어야 한다.
저자들은 ChatGPT로 Wikimel, Richpedia, Wikidiverse의 entity description을 새로 수집해 Wiki+, Rich+, Diverse+를 만들고, BLIP-2를 image expert로 사용해 caption과 identity-oriented answer를 생성한다. CLIP이 text·image·entity를 encode하고, expert feature가 text/image와 각각 multi-head attention으로 상호작용한 뒤 fused feature를 만든다. 최종적으로 이 feature와 candidate entity representation의 cosine similarity로 rank한다.
좋은 mention feature가 있어도 상대편 entity description이 틀리면 링크는 빗나간다
논문은 MEL의 병목을 ambiguous entity representation과 limited image understanding이라는 두 축으로 정의한다.
자연어의 “Taylor”를 knowledge base의 “Taylor Alison Swift”로
Figure 1에서 사용자는 “This is why Taylor is my celebrity crush”라는 text와 이미지를 표현한다. MEL은 mention Taylor을 knowledge base의 Taylor Alison Swift와 연결해, 시스템이 추가 지식을 가져오고 문장의 의미를 더 구체화하게 한다. 저자들은 이 연결을 human cognition과 structured knowledge base를 잇는 과정으로 설명한다.
이 framing은 search engine, recommendation, information retrieval, knowledge graph construction에 MEL이 왜 필요한지를 설명한다. entity가 resolve되면 semantic ambiguity를 줄이고, 추가 relation과 attribute를 KB에 연결하거나 확장할 수 있다.
entity representation이 entity 자체를 충분히 대표하지 못한다
기존 방법은 KB entity의 textual description이나 attribute를 representation으로 사용하고 mention feature와 similarity를 계산한다. 저자들은 이 representation이 모호하면, mention feature를 아무리 잘 학습해도 의미적으로 잘못된 entity에 가까워질 수 있다고 주장한다.
문제는 representation이 수동 수집된 snapshot이라는 점이다. 사람에 대한 사회적 이해와 public role은 사건과 시간에 따라 바뀌지만 dataset의 entity description은 고정되어 있다. 논문은 2023년의 Donald Trump를 “current President”처럼 고정적으로 표현하는 경우를 예로 들며, 새로운 entity가 dataset에 없을 때 representation 자체가 없다는 open-world 문제도 지적한다.
image encoder는 외형을 보지만 identity를 말하지 못할 수 있다
GHMFC나 MMEL 같은 기존 multimodal model은 image를 encode해 entity linking에 활용한다. 그러나 논문은 generic visual encoder가 “white female, blue dress” 같은 외형 feature는 추출해도 “누구인가”, “무슨 사건의 장면인가” 같은 identity-bearing information을 충분히 이해하지 못한다고 본다.
지식베이스의 entity 설명을 고정된 snapshot에서 생성형 description으로 바꾼다
Wiki+, Rich+, Diverse+는 ChatGPT가 생성한 entity representation을 기존 MEL benchmark에 주입한 enhanced datasets이다.
Joe Biden 하나만 놓고 봐도 dataset마다 “대표 문장”이 다르다
Wikimel과 Richpedia는 Wikidata의 concise attribute를 사용한다. Wikiperson은 더 간단한 category-level description을 쓴다. Weibo 계열은 user-authored personal bio를 사용해 bias와 오류 가능성이 있고, Wikidiverse는 Wikipedia image/text에 의존해 시점과 angle에 따라 representation이 달라질 수 있다고 저자들은 설명한다.
Joe Biden representation 예시
| Dataset | Representation shown in the paper | Author interpretation |
|---|---|---|
| Wikimel | Sex, birth, religion, occupation, spouse, languages, alma mater 등 Wikidata-style attributes | 많은 entity가 비슷한 attribute를 공유해 대표성이 약할 수 있음 |
| Wikiperson | “President of the United States” | 동일 role을 가진 여러 사람이 존재하므로 지나치게 단순함 |
| Weibo-style | “Husband to @DrBiden, proud father and grandfather...” | user-authored bio는 bias/error 가능성이 있음 |
| Wikidiverse | 2020 Democratic nomination을 중심으로 한 Wikipedia-style description | 특정 시점의 context에 고정될 수 있음 |
| Wiki+ (Ours) | “Joe Biden is an American politician who served as the 46th president...”로 시작하는 더 긴 생성 description | 저자들은 public understanding과 inherent semantics에 더 가깝다고 주장 |
논문은 Weibo가 중국 celebrity 중심이라 international figure Joe Biden을 직접 포함하지 않는다는 점도 명시한다. 표의 시각적 비교를 위해 Weibo 정의를 따라 관련 entity의 Twitter profile을 저자들이 수동 수집했다.
candidate entity를 질문하고 응답을 새 representation으로 저장한다
저자들은 ChatGPT interface에 candidate entity를 넣고 You are a helpful assistant designed to give a comprehensive introduction about people. Who is this one?라는 prompt를 사용한다. 생성 response를 dataset에 저장해 이후 실험에서 entity representation으로 사용한다.
논문은 Wikimel, Richpedia, Wikidiverse에 대해 각각 17,391, 17,804, 57,007 entities의 representation을 구성했다고 보고하고, 이를 Wiki+, Rich+, Diverse+라고 부른다.
None, Sorry, Guess, Further, Fictional
Wikimel 사례에서 원문은 17,474 entities를 조사했다고 설명한다. 131개는 결과가 없었고, 220개는 소개할 수 없다는 응답, 462개는 이름의 문화·지역적 cue를 이용한 추측, 2,997개는 추가 정보가 필요하다는 응답, 599개는 fictional name으로 추측된 경우라고 제시한다. 이런 entity에는 원래 representation을 계속 사용한다.
Figure 2는 ChatGPT로 enhancement하지 못한 entity를 다섯 범주로 나누며 총량을 Richpedia 5,615, Wikimel 5,517, Wikidiverse 28,112로 표시한다.
CLIP이 표현하고 BLIP-2가 설명하며 attention이 필요한 정보만 고른다
Figure 3은 dynamic entity representation branch와 expert-guided multimodal mention branch가 cosine match에서 만나는 구조를 보여준다.
text, mention, entity, image를 CLIP space에 놓는다
sentence \(x_t\), mention \(x_m\), Wikipedia/entity description \(x_e\)를 CLIP text encoder로 처리해 sentence representation \(t\in\mathbb R^{N\times d}\), mention representation \(m\in\mathbb R^{N\times d}\), candidate entity representation \(e\in\mathbb R^{N_e\times d}\)를 얻는다. image는 CLIP visual encoder로 \(v\in\mathbb R^{N\times d}\)를 얻는다.
entity side에서는 candidate entity를 ChatGPT에 질의해 만든 dynamic text representation을 CLIP text encoder로 encode한다. 과도하게 긴 entity description을 막기 위해 text length limit도 둔다.
BLIP-2를 두 번 쓴다: captioning과 prompt inquiry
Image Captioning
이미지에서 “A man and a woman on the red carpet” 같은 caption \(c_1\)을 추출한다.
Prompt-based Inquiry
Question: Who are the characters in the picture? Answer:처럼 identity-oriented question을 주어 detailed information \(c_2\)를 얻는다.
두 결과를 \(c=[CLS]c_1[SEP]c_2\)로 합치고 CLIP text encoder를 통과시켜 expert feature \(f_c\)를 만든다. Figure 3의 예에서는 Donald Trump와 Melania Trump의 wedding context 같은 정보가 mention feature를 보강한다.
expert feature를 query처럼 써서 text와 image에서 필요한 부분을 선택한다
expert feature \(f_c\)는 text feature \(t\)와 image feature \(v\)에 각각 multi-head attention으로 상호작용한다. 논문 식 (1)과 (2)는 다음과 같다.
projection matrices는 random initialization하며 \(d_q=d_k=d_v=d/h\)로 둔다. 이렇게 얻은 expert-conditioned text/image feature에 expert feature 자체를 더해 fused representation을 만든다.
이 설계의 의미는 BLIP-2 output을 단순 concatenation하는 데 있지 않다. expert-generated evidence가 text와 image에서 무엇을 살릴지 selection signal로 작동하게 한다.
fused mention feature와 candidate entity text를 cosine으로 rank한다
fused feature \(g\)와 \(N_e\) candidate entity representation \(e\)의 cosine similarity를 계산한다. gold entity가 가장 높으면 T@1, 상위 5개 안이면 T@5 성공이다. 같은 방식으로 T@10과 T@20을 평가한다.
N-pair loss로 positive는 가깝게, negative는 멀게
저자들은 Sohn(2016)의 N-pair loss를 optimization objective로 사용한다. paper에 제시된 식을 그대로 옮기면 다음과 같다.
여기서 \(g_i\)는 i번째 sample의 fused feature, \(p_i\)는 positive representation, \(n_j\)는 negative representation이며 \(\operatorname{sim}\)은 보통 cosine similarity다.
세 benchmark, 100 candidates, 네 개 top-k metric으로 original과 enhanced를 나눠 본다
실험은 Richpedia, WikiMEL, Wikidiverse와 그 ChatGPT-enhanced counterparts를 대상으로 한다.
Enhanced dataset statistics
| Dataset | Sample | Entity | Mention | Text | ER |
|---|---|---|---|---|---|
| Wiki+ | 18,880 | 17,391 | 25,846 | 8.2 | 1,318 |
| Rich+ | 17,805 | 17,804 | 18,752 | 13.6 | 1,274 |
| Diverse+ | 13,765 | 57,007 | 16,097 | 10.1 | 902 |
원문은 Text와 ER를 각각 text와 entity representation의 length라고 정의한다. 단위나 tokenization 기준은 이 표 주변에서 더 구체적으로 설명하지 않는다.
text-only, multimodal attention, CLIP 계열까지 11종
T@1, T@5, T@10, T@20
모든 평가는 100 candidate entities 사이에서 gold entity의 cosine-similarity rank가 top-k에 들어가는 비율을 본다. DWE 정의를 따라 원문은 다음 식을 제시한다.
\(g_t\)는 ground-truth entity, \(C_e\)는 candidate set이며 \(I\)는 gold similarity의 rank를 계산한다.
RTX 3090, GPT-3.5-turbo, CLIP ViT-B/16, 300 epochs
Hardware / stack
RTX 3090, PyTorch 2.0.
Models
ChatGPT GPT-3.5-turbo, CLIP ViT-base-patch16-224-in21, BLIP-2 expert.
Training
300 epochs, hidden/output dimension 512, AdamW, learning rate 5e-5, batch size 64.
enhanced datasets에서는 mention과 유사한 100 candidate를 만들기 위해 fuzzy matching technology를 사용하며, footnote는 fuzzywuzzy repository를 가리킨다.
DIM은 Richpedia와 Wikidiverse에서 강하고, WikiMEL에서는 MMEL보다 T@1이 낮다
“대부분의 기존 방법을 앞선다”는 논문 표현은 Table 3 전체를 보면 정확한 뉘앙스다. 모든 dataset·metric에서 1위라는 뜻은 아니다.
Dynamic enhancement 이전 original datasets
| Model | Richpedia | WikiMEL | Wikidiverse | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| T@1 | T@5 | T@10 | T@20 | T@1 | T@5 | T@10 | T@20 | T@1 | T@5 | T@10 | T@20 | |
| BLINK | 30.8 | 38.8 | 44.5 | 53.6 | 30.8 | 44.6 | 56.7 | 66.4 | - | 71.2 | - | - |
| DZMNED | 29.5 | 41.6 | 45.8 | 55.2 | 30.9 | 50.7 | 56.9 | 65.1 | - | 39.1 | - | - |
| JMEL | 29.6 | 42.3 | 46.6 | 54.1 | 31.3 | 49.4 | 57.9 | 64.8 | 21.9 | 54.5 | 69.9 | 76.3 |
| BERT | 31.6 | 42.0 | 47.6 | 57.3 | 31.7 | 48.8 | 57.8 | 70.3 | 22.2 | 53.8 | 69.8 | 82.8 |
| ARNN | 31.2 | 39.3 | 45.9 | 54.5 | 32.0 | 45.8 | 56.6 | 65.0 | 22.4 | 50.5 | 68.4 | 76.6 |
| MEL-HI | 34.9 | 43.1 | 50.6 | 58.4 | 38.7 | 55.1 | 65.2 | 75.7 | 27.1 | 60.7 | 78.7 | 89.2 |
| HieCoAtt | 37.2 | 46.8 | 54.2 | 62.4 | 40.5 | 57.6 | 69.6 | 78.6 | 28.4 | 63.5 | 84.0 | 92.6 |
| GHMFC | 38.7 | 50.9 | 58.5 | 66.7 | 43.6 | 64.0 | 74.4 | 85.8 | - | - | - | - |
| MMEL | - | - | - | - | 71.5 | 91.7 | 96.3 | 98.0 | - | - | - | - |
| CLIP | 60.4 | 96.1 | 98.3 | 99.2 | 36.1 | 81.3 | 92.8 | 98.3 | 42.4 | 80.5 | 91.7 | 96.6 |
| DIM | 66.1 | 97.5 | 98.9 | 99.6 | 64.6 | 97.6 | 99.1 | 99.8 | 52.7 | 94.5 | 98.4 | 99.5 |
CLIP 대비 T@1 +5.7, +28.5, +10.3
저자들은 DIM의 T@1이 CLIP 대비 Richpedia에서 60.4→66.1, WikiMEL에서 36.1→64.6, Wikidiverse에서 42.4→52.7로 올라 각각 5.7, 28.5, 10.3의 개선을 보였다고 설명한다. 이는 image expert information이 identity-related visual information을 더 잘 포착한다는 근거로 해석한다.
하지만 WikiMEL T@1에서는 MMEL이 71.5로 DIM 64.6보다 높다. DIM의 강점은 “모든 비교에서 최고”가 아니라, CLIP-based backbone을 크게 끌어올리고 대부분의 available baseline/metric에서 경쟁력 있는 성능을 보인다는 데 있다.
entity representation을 바꾸면 BERT·GHMFC·CLIP도 움직이고 DIM은 다시 그 위에 올라선다
Table 4는 Wiki+, Rich+, Diverse+에서 BERT, GHMFC, CLIP을 재현해 DIM과 비교한다.
Dynamic enhancement 이후
| Model | Rich+ | Wiki+ | Diverse+ | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| T@1 | T@5 | T@10 | T@20 | T@1 | T@5 | T@10 | T@20 | T@1 | T@5 | T@10 | T@20 | |
| BERT | 35.5 | 77.7 | 87.8 | 94.3 | 32.0 | 75.7 | 88.2 | 95.5 | 10.3 | 23.9 | 33.8 | 47.3 |
| GHMFC | 34.6 | 77.0 | 87.1 | 93.8 | 33.3 | 75.9 | 88.4 | 95.0 | 14.8 | 29.9 | 39.3 | 53.8 |
| CLIP | 63.5 | 95.4 | 97.5 | 98.6 | 63.0 | 96.2 | 98.6 | 99.6 | 45.7 | 88.9 | 96.4 | 99.3 |
| DIM | 65.1 | 96.6 | 98.3 | 99.5 | 68.1 | 98.4 | 99.5 | 99.9 | 53.4 | 95.5 | 99.2 | 99.7 |
Table 4 원문 header는 family 이름인 Richpedia, WikiMEL, Wikidiverse로 표시되지만 caption과 본문은 dynamic enhancement가 적용된 Rich+, Wiki+, Diverse+의 결과라고 설명한다. 본 글에서는 혼동을 줄이기 위해 enhanced 이름으로 표시했다.
dynamic entity representation이 semantic consistency를 높였다는 저자들의 주장
enhanced dataset에서 DIM은 세 dataset의 모든 보고 metric에서 BERT, GHMFC, CLIP보다 높다. 저자들은 ChatGPT로 만든 entity representation이 KB entity의 의미와 더 coherent하게 정렬되어 semantic consistency가 개선됐다고 해석한다.
특히 original dataset의 CLIP과 enhanced dataset의 CLIP 자체도 일부 task에서 크게 달라진다. 이는 backbone만이 아니라 비교 대상 entity text가 무엇인가가 similarity landscape를 바꾼다는 사실을 보여준다.
enhanced dataset은 개선 대상이자 평가 환경이다
dynamic이라는 이름은 가능성을 열지만, 그만큼 provenance와 reproducibility 문제도 연다
논문은 결론에서 ChatGPT hallucination과 unavailability에 따른 bias·omission을 직접 한계로 인정한다.
ChatGPT가 틀리거나 답하지 않으면 dataset도 그 영향을 받는다
저자들은 collected dataset이 ChatGPT의 knowledge-base/world understanding에 의존한다고 적는다. 이것이 dynamic entity information linking을 가능하게 하지만, hallucination 또는 unavailability 때문에 data collection에 bias나 omission이 생길 수 있다고 명시한다. future work는 large model 기반 entity data collection의 accuracy와 completeness를 높이는 방향이다.
DIM 다음 단계는 “생성”보다 “검증 가능한 갱신”에 가깝다
Temporal grounding
entity representation이 언제의 사실을 반영하는지 timestamp와 provenance를 어떻게 붙일 것인가.
Hallucination control
LLM-generated description을 KB evidence와 교차검증하고 abstention을 어떻게 설계할 것인가.
Identity-aware vision
caption과 QA를 넘어 face/object/event evidence를 structured constraint로 연결할 수 있는가.
entity linking을 양쪽 representation의 공동 설계 문제로 바꾼다
DIM은 mention side에서 BLIP-2로 image를 설명하고 question-answering을 통해 identity signal을 만든다. 동시에 KB side에서는 ChatGPT로 entity description을 다시 만든다. 양쪽을 CLIP space에 놓고 attention과 cosine similarity로 연결한다.
이 때문에 논문의 가장 흥미로운 점은 특정 T@1 숫자만이 아니다. retrieval/query의 입력 representation을 고정된 benchmark artifact로 보지 않고, 모델이 동적으로 재구성할 수 있는 대상으로 취급했다는 데 있다. 데이터 시스템 관점에서는 entity representation 자체가 learned/generated index key처럼 움직이기 시작한 셈이다.
“dynamic”은 더 많은 정보를 뜻하지 않는다. 더 적절한 시점·문맥·근거로 representation을 다시 만드는 일이다
논문은 original datasets에서 DIM이 대부분의 기존 method를 앞서고, enhanced datasets에서는 비교한 BERT·GHMFC·CLIP보다 높은 성능을 보인다고 보고한다. 동시에 generated entity representations의 hallucination과 availability 문제를 한계로 인정한다.