-
MIND: A Large-scale Dataset for News Recommendation 논문 한글 요약 - 1일상/학기 중 일기 2024. 5. 26. 19:09
졸업 프로젝트 준비로 뉴스 추천 시스템을 공부하고 있는데, MIND 데이터셋 관련 논문을 읽다가 한국말로 정리해보았다.
중간 부분까지 읽으면서 요약을 했고, 나머지 부분은 2편으로 만들어 올릴 예정이다.
MIND: A Large-scale Dataset for News Recommendation
https://msnews.github.io/assets/doc/ACL2020_MIND.pdf
개요
일반 유통이나, 영화 추천 시스템과 달리, 뉴스의 경우 높은 퀄리티의 벤치마크 데이터셋의 부족으로 많이 제한적이었음.
그래서 뉴스 추천 시스템을 위해 등장한 large-scale 데이터셋이 바로 MIND임.
이들의 실험 결과에 따르면, 추천시스템의 성능은 뉴스컨텐츠 이해의 수준과, user interest modeling에 크게 좌우됨.
1 소개
온라인 뉴스 서비스들의 특징은, 무수히 많은 수의 온라인 뉴스들이 생성된다는 것이고, 이것은 소비자로 하여금 관심있는 뉴스를 빨리 찾기 어렵게 만듬. 그래서 Personalized news recommendation은 이런 소비자의 부담을 줄이고, 뉴스를 읽는 경험을 상승시켜줌.
뉴스 추천시스템은 이 분야만의 특별한 어려운 문제점들이 있음. 첫째로, 너무 많이 뉴스가 생성되고, 기존의 뉴스들은 조금만 시간이 지나면 쓸모없게 되어버림. 그래서 cold-start problem이 매우 심각함.
둘째로 뉴스는 많은 텍스트 정보를 포함하고 있어서(제목, 본문에), 그 자체의 ID만을 가지고 나타내기에 한계가 있음. 그래서 텍스트를 통해 그 내용을 이해하는 것이 중요함.
셋째, 뉴스에는 영화처럼 평점을 메기지 않기 때문에, 클릭 정보등을 통해 유저들의 관심을 간접적으로 추론해야함.
Large-scale & high-quality 데이터셋은 연구에 매우 중요함. 그런데 다른 분야는 있는데, 뉴스만 없었음. 있다고 하더라도 소량이거나, 영어가 아니었음. 뉴스 추천시스템의 이러한 문제점을 해결하려고 내놓은 large-scale 데이터셋이 MIcrosoft News Dataset(MIND)임.
100만개의 유저정보와, 16만개의 영어 뉴스 기사와 그에 대한 클릭 히스토리들을 담고있음.
이들은 이 MIND 데이터셋을 가지고, 최신 뉴스 추천 알고리즘들의 성능을 비교하여, 벤치마크를 만들어 제공함. 실험 결과, 뉴스 추천을 위해서는 NLP 기술을 통해 뉴스 기사를 깊이 이해하는 것이 중요하다는 것을 보여줌.
그리고 실험 결과, 효과적인 텍스트 자료 표현 방법(text representation methods)과 pre-trained된 언어 모델이 뉴스 추천 시스템의 성능을 높이는데에 도움을 줌. 그리고 유저의 관심을 적절하게 모델링하는 것도 성능에 도움을 줌.
2 관련 연구
2.1 뉴스 추천 시스템
뉴스 추천시스템에는 두가지 중요한 문제가 있음. 하나는 많은 양의 텍스트 정보 덩어리인 뉴스 기사를 어떻게 표현할 것인지와, 두번째는 유저의 과거 행동 정보들을 바탕으로 뉴스에 대한 관심도를 어떻게 모델링 할 것인지이다.
기존에는 특성 공학(feature engineering)을 이용하여 뉴스 기사와 유저 관심도를 나타냈었음. 뉴스 기사에 대한 정보는 URL이나 카테고리 정보로 나타냈었음. 그리고 유저에 대한 정보는 그들의 인구 통계 정보나 지리적 정보, 그리고 야후 사이트의 소비 정보를 이용하여 추론된 행동 카테고리등을 통해 나타냈었음.
최근에는 딥러닝 기반의 추천 방식을 사용해, 뉴스 기사 내용들과 유저의 관심도를 end-to-end 방식(모델에서 나온 출력 정보만을 이용)으로 표현해내는 방법이 제안되었음.
일례로, 뉴스는 뉴스 내용을 denoising autoencoder 모델에 집어넣어 표현(represent)하고, 유저의 관심정보는 과거의 뉴스기사 클릭 정보를 GRU 모델에 넣어서 표현(represent)함. (Okura et al.)
딥러닝 모델을 통해 뉴스와 유저 정보를 표현하는 것은 뉴스 추천시스템에서 매우 매우 뛰어난 방법이라는 것이 확인됨.
그리고 이처럼 뉴스 기사의 여러 정보들을 모델에 집어넣어 뉴스 기사를 표현(represent)하는 방법들이 연구되었었지만, 이들은 모두 공개되지 않은 개인적인(사유의) 데이터셋을 이용해 개발되고 검증되었음. 그래서 다른 연구자들이 이들의 방법을 검증하고, 또 새로운 모델을 만드는데에 많은 어려움이 있었음.
뉴스 추천 시스템은 자연어 처리와 밀접한 관련이 있음.
첫째, 뉴스 기사 자체가 텍스트 베이스이기 때문에, CNN이나 Transformer처럼 텍스트 모델링 방법을 이용하여 뉴스 기사를 표현(represent)하는게 자연스러움.
둘째, 유저의 과거 뉴스 기사 클릭 정보들을 통해 유저의 관심도(representation)을 학습하는 것은 문서의 문장들을 이용해 문서의 표현(representation)을 학습하는 것과 유사함.
셋째, 뉴스 추천은 텍스트 매칭 문제의 특별한 케이스로 공식화 할 수 있음. (뉴스 읽기 관심 공간[news reading interest space]에서 후보 뉴스 기사와 이전에 클릭되었던 뉴스 기사들을 매칭하는 경우)
그래서 NLP 커뮤니티에서 뉴스 추천 시스템에 많은 관심을 가지게 됨.
2.2 기존의 데이터셋들
공개된 데이터셋들이 얼마 없었음.
대부분의 데이터셋들이 영어 데이터셋이 아니었고, 사이즈도 작았고, 뉴스 텍스트 정보도 부족했음. 그래서 이런 high-quality 데이터셋이 중요하다 뭐 이런 내용임.
<중요한 내용이 아니라고 판단해 간단하게 옮김.>
3 MIND 데이터셋
3.1 데이터셋 구조
MIND 데이터셋은 Microsoft News에서 유저 행동 로그들을 모아 만들었음.
2019년 10월 12일 부터 11월 22일까지 6주 동안, 5번 이상의 뉴스 클릭을 한 100만명의 유저들을 랜덤하게 뽑아 만들었음.
유저의 프라이버시를 위해, 어떤 유저 정보인지 알아낼 수 없게 처리를 함.
이 유저들의 이 기간 동안의 행동정보를 “impression logs”로 포맷팅함. Impression log는 해당 유저가 특정 시각에 뉴스 홈페이지에 방문했을 때, 그 유저에게 보여진 뉴스 기사들과 이들에 대한 클릭 정보들을 기록함. (내 생각: 결국 유저가 뉴스 홈페이지에 들어갈 때 impression log가 생성됨)
뉴스 추천시스템에서는 유저가 후보 뉴스를 클릭할지 말지를 예측 할 때, 그의 이전 행동 정보들을 바탕으로 추론된 개인 관심도(personal interest)를 바탕으로 함. 그래서 impression log에 유저의 뉴스 클릭 정보들을 추가함. 이를 통해 뉴스 추천 시스템 모델을 학습시키고 검증할 labeled samples를 만듬.
labeled sample의 형식은 다음과 같음. [uID, t, ClickHist, ImpLog]
uID는 유저의 익명아이디, t는 impression의 타임스탬프임.
ClickHist는 유저가 과거에 클릭했던 기사들의 ID의 리스트임.(클릭 시간 순으로 정렬됨)
ImpLog에는 이 impression(유저가 뉴스 홈페이지에 들어왔을 때) 상황에서 유저에게 보여진 뉴스 기사들의 ID들과 그 유저가 해당 기사를 클릭했는지에 대한 정보가 저장됨. 예시: [(nID_1, label_1), (nID_2, label_2), …]. nID는 뉴스기사의 ID, label은 클릭 여부를 의미함.(1은 클릭, 0은 클릭 안함)
마지막 주의 샘플들을 test를 위해 사용했고, 5주째의 샘플들을 train용으로 이용했음. Training set의 샘플들을 위해, 이들은 첫 4주동안의 클릭 정보들을 이용했음. 그리고 Test set의 샘플들을 위해서는 첫 5주동안의 클릭 기록들을 이용했음.
그리고 클릭 기록이 있는 샘플들만 남김. Validation set을 위해서는 training data 중 5번째 주의 마지막 날의 샘플들을 이용함.
MIND데이터셋에 있는 각각의 뉴스 기사 데이터에는 뉴스 ID, 제목, 요약, 본문, 그리고 ‘스포츠’등과 같은 카테고리가 붙어있다. 이 카테고리는 뉴스 편집자가 직접 태그로 추가한 부분임.
그리고 이러한 뉴스 텍스트에는 다양한 객체(entity)들이 포함되어 있는데, 예를 들어 “삼성 라이온즈의 이승엽, 두산 베어스의 감독이 되다”라는 뉴스 기사의 제목의 경우, “이승엽”은 사람 이름, “삼성 라이온즈”와 “두산 베어스”의 경우 KBO리그 팀의 이름임.
Knowledge-aware(지식 기반) 뉴스 추천 시스템을 잘 동작하게 하기 위해서, 뉴스의 제목, 요약문, 그리고 본문 내에 있는 객체(entity) 들을 뽑아내어 WikiData의 객체로 만들어버린 후 이들을 연결시켰음(link). 이 과정에서 internal NER(내부 객체명 인식)과 entity linking tool(객체 연결 도구)을 사용함.
그리고 이 WikiData에서 각 객체의 knowledge triple(3개짜리 순서쌍)을 추출하여 TransE라는 방법을 사용하여 객체들(entity)과 객체들의 관계(relation)에 대한 embedding을 학습시켰음.
MIND 데이터셋에는 앞서 설명했듯이, 각각의 객체(entity), knowledge triple, 그리고 entity and relation embedding이 들어있음.
3.2 데이터셋 분석
MIND 데이터셋의 자세한 통계는 아래와 같음.
100만개의 유저와 161,013개의 뉴스 기사 정보가 들어있음.
Training set에는 2,186,683개의 샘플들이 들어있고, Validation set에는 365,200개, 그리고 Test set에는 2,341,619개의 샘플들이 들어있음.
Fig 2(a), 2(b), 2(c)는 각각 뉴스 기사, 요약문, 그리고 본문의 길이에 대한 분포를 나타냄.
뉴스 제목의 경우 대개 매우 길이가 짧고, 평균 길이는 겨우 11.52단어임.
이에 반해, 요약문과 본문의 경우 훨씬 길고 뉴스 기사에 대한 훨씬 풍부한 정보들을 담고 있음.
그러므로 이 각각의 정보를 통합시키면, 뉴스 기사를 더 잘 이해할 수 있게 됨.
Fig 2(d)의 경우 뉴스 기사의 생존 시간의 분포를 나타냄. 뉴스의 생존시간은 데이터셋에서 마지막 등장한 시각과 처음 등장한 시각 사이의 간격을 통해 추정함. 84.5% 이상의 뉴스 기사들이 2일 미만의 생존 시간을 가진것을 발견할 수 있었음. 이것은 최신의 기사를 쫓는 뉴스의 특성 때문임.
그래서 이로 인해 cold-start problem은 뉴스 추천 시스템에서 흔히 발생하는 문제가 됨. 기존의 전통적인 ID 기반의 추천 시스템은 이러한 뉴스 추천 시스템을 구현하는 데에 적합하지 않음. 뉴스 기사의 텍스트 정보를 이용해서 뉴스 기사를 표현하는 것이 뉴스 추천 시스템에서 매우 크리티컬 함.
원문은 노션으로 작성됨 ↓ ↓
2부는 아래에서 확인 가능 ↓ ↓
'일상 > 학기 중 일기' 카테고리의 다른 글
MIND: A Large-scale Dataset for News Recommendation 논문 한글 요약 - 2 (0) 2024.06.04 0503 - 인스타그램을 지울 용기 (2) 2024.05.03 0310 - 어떻게 나한테 이럴 수 있어 (4) 2024.03.11 0307 - 고마움은 마음속에 묻지 말고 표현하라. (3) 2024.03.07 0306 - 하늘이 무너져도 솟아날 구멍은 있다. 다만.. (0) 2024.03.07