NL-182, Query Sub-intent Mining by Incorporating Search Results with Query Logs for Information Retrieval, ICBDA 2023

◼ Comment

  • 이 논문은 관련연구로 읽어보기 좋았다.
  • 노벨티나 이런것보다 전반적으로 정리를 잘한 논문이라고 생각한다.
    • 아마 노벨티가 좀만 더 있었으면 더 좋은 학회에 됐을듯?
  • 이 논문의 노벨티는 query log를 사용했다는 점으로 생각된다.
    • 입력으로 query+search result+query log 3개가 들어간다.
    • search result는 이전 연구와 비슷하게 스닙펫을 사용했고
    • query log는 아마 MIMICS-Bing-API의 related queries을 사용한게 아닐까 싶다. (이거말곤 딱히 없는듯)
    • 이 논문은 또한 Bing-API을 직접 찔러서 데이터를 받은 거 같다.
    • 보통 다른 연구에서는 API dump한 결과를 사용했기 때문에 이 부분에서 데이터 차이가 있을 수 있다.
    • 하지만 이 논문은 데이터나 코드를 공개안했기 때문에 데이터를 사용할 수가 없는게 아쉽다.
    • 하지만 핵심은 search result 와 query log을 사용하면 성능이 향상된다는 것이다.
    • search result가 query log보다 좀 더 중요하다고 실험에서 보여준다.
    • 둘 다 썼을 때, 꽤나 의미있는 향상이라고 간주된다.
  • 아키텍쳐는 BART에 조금 변형한거 같다.
    • BART encoder로 초기화된 두 개의 encoder 을 사용한다.
    • 즉 search result encoder와 query log encoder 모두 BART encoder로 초기화 되고, 이를 통해 벡터를 뽑는다.
    • 그리고 이 두 벡터를 concat한게 BART decoder의 입력으로 들어간다.
    • 디코더에서 attention이 이뤄지기 때문에 이러한 것이 짬뽕되면서 facet(sub-intents)가 생성된다.
    • 조금 색다른건 query는 입력으로 안들어가는 점?

Abstract

  • 마이닝 쿼리 하위 의도 또는 하위 주제는 정보 검색에서 중요한 작업 중 하나입니다. 
  • 사용자의 가능한 검색 의도를 탐색할 수 있는 몇 가지 잠재적 쿼리를 사용자에게 제공합니다. 
  • 빅 데이터 및 자연 언어 처리의 개발로 강력한 쿼리 하위 의도를 마이닝하기 위해 다양한 텍스트 리소스의 복잡한 의미 체계 정보를 모델링하기 위해 사전 훈련된 언어 모델이 적용되었습니다. 
  • 이러한 연구는 일반적으로 검색 결과와 쿼리 로그를 쿼리 하위 의도를 생성하는 두 가지 중요한 리소스로 독립적으로 활용합니다. 
    • 그러나 검색 결과에 포함된 컨텍스트 정보와 쿼리 로그에 포함된 사용자 관심 정보를 함께 통합하여 사용자 하위 의도 마이닝의 효율성을 높이고 두 리소스의 장점을 극대화할 수 있다고 생각합니다. 
    • 고품질의 sub-intents를 생성하기 위해 쿼리 로그에서 추출한 query suggestions와 search result texts을 입력으로 받아들이고 generated sub-intent phrases을 출력하는 sequence-to-sequence PLM을 설계합니다. 
  • 검색 결과와 쿼리 로그 간의 관계를 모델링하기 위해 두 개의 정보 인코더와 디코더 부분에 새로운 어텐션 메커니즘을 설계합니다. 
    • 각 디코딩 단계에서 모델은 input search results와 query logs 사이의 주의에 가중치를 부여하여 출력 토큰을 결정합니다. 
  • MIMICS 데이터 세트에 대한 실험 결과는 거의 모든 평가 지표에서 강력한 기준선 방법을 능가하여 제안된 방법의 효과를 보여줍니다. 
  • 또한 검색 결과 및 쿼리 로그의 유효성을 개별적으로 증명하기 위한 제거 연구를 수행한 다음 하위 의도의 다른 세대 패러다임을 실험과 비교 연구하고 있습니다. 
  • 마지막으로 생성된 하위 의도의 품질을 직접 설명하기 위해 몇 가지 생성된 예제를 보여줍니다.

I. INTRODUCTION

  • Information retrieval은 컴퓨터 분야의 중요한 연구 주제 중 하나입니다. 
  • 빅 데이터 기술과 장비의 지속적인 발전으로 키워드를 기반으로 한 전통적인 정보 검색은 개인화 검색 [1]-[3], 추천 검색 [4], [5], 대화형 검색 [6], [7] 등과 같은 점점 더 많은 새로운 검색 패러다임으로 대체되고 있습니다. 
  • 많은 검색 엔진은 사용자의 검색 경험을 풍부하게 하고 검색 엔진의 상업적, 사회적 가치를 향상시키기 위해 인터페이스에 사용자와의 다양한 상호 작용 요소를 추가합니다[8]. 
  • 쿼리의 의도를 이해하는 것은 오랫동안 정보 검색 시스템의 중요한 부분으로 여겨져 왔습니다. 
  • 웹 검색 엔진이 널리 사용됨에 따라 이 연구 문제는 그 어느 때보다 중요하지만 어려운 과제가 되었습니다. 
  • 웹 검색 쿼리는 일반적으로 6자 미만의 쿼리가 전체 쿼리의 90% 이상을 차지할 정도로 짧기 때문에 이해하기 어렵기 때문입니다[9].
  • intelligent information retrieval의 맥락에서 사용자 쿼리 하위 의도 마이닝 또는 하위 주제 마이닝은 중요한 연구 방향이 되었습니다. 
  • 하위 의도 또는 하위 주제는 사용자의 쿼리와 관련된 용어 그룹 또는 여러 그룹을 의미합니다. 
    • 예를 들어, '조던 신발'이라는 사용자의 쿼리에 대해 가능한 하위 주제 그룹 중 하나는 [농구, 배구, 테니스, 탁구](신발 종류)이고, 다른 하위 주제 그룹은 [남자, 여자, 소년, 소녀](적용 가능한 그룹)입니다. 
  • 이러한 하위 주제는 사용자의 검색어에 포함된 정보를 표시하고 사용자가 다음에 검색할 수 있는 내용으로 연결됩니다. 
    • 이러한 하위 주제를 검색 엔진에 명시함으로써 검색 엔진은 사용자에게 검색 콘텐츠를 더욱 효과적으로 제시할 수 있으며, 하위 주제를 기반으로 검색 결과를 추가로 처리할 수 있습니다. 
    • 이해하기 어려운 쿼리의 경우, 하위 주제를 마이닝하면 검색 엔진이 사용자 쿼리를 더 잘 이해하고 더 나은 검색 결과를 반환하는 데 도움이 됩니다[16]. 
    • 즉, 처음 질의말고, 하위 주제를 가진 질의를 (블록명, 의도, 패싯 등) 검색에 날리면, 검색엔진이 질의를 더 잘 이해하고 좋은 결과를 보여줄 것이다.
  • 동시에 개인화 검색, 추천, 대화형 검색 등과 같은 정보 검색의 추가 적용에 큰 역할을 하며, 이는 중요한 연구 이슈입니다 [10].
  • 이 논문에서는 그림 1과 같이 사용자의 쿼리를 기반으로 가장 관련성이 높은 하위 인텐트 세트를 제공하는 데 중점을 둡니다. 
  • 최근 몇 년 동안 기존 방식은 검색 결과와 쿼리 로그를 하위 인텐트를 생성하는 두 가지 주요 소스로 사용하는 경향이 있었습니다. 
    • 기존 방식: 검색 결과 + 쿼리 로그 => 하위 의도
    • 검색 결과는 검색 엔진에 쿼리가 제출된 후 반환되는 HTML 웹 페이지의 목록입니다. 
    • 일반적으로 각 페이지에는 전체 페이지의 콘텐츠를 요약하는 스니펫이 있으며, 이는 일반적으로 전체 페이지의 콘텐츠를 나타내는 데 사용됩니다. 
    • 쿼리 로그는 검색 엔진에서 사용자 쿼리에 대한 기록으로, 예를 들어 사용자가 먼저 "조던 신발"이라는 쿼리를 제출한 다음 "조던 농구화"라는 쿼리를 제출하는 경우입니다. 
  • 최근 Zamora [11]는 쿼리 로그에서 연관성이 높은 하위 주제 세트를 추출하여 다운스트림 작업에 대한 쿼리의 의도로 사용했습니다. 
    • [11]: Query Intent Detection Based on Query Log Mining
  • Hashemi[12]는 검색 결과에서 스니펫 텍스트를 입력으로 받아 사전 학습된 언어 모델을 적용하여 일련의 사용자 하위 의도를 생성합니다. 
    • [12]: Learning Multiple Intent Representations for Search Queries
  • 이 두 논문은 쿼리 로그와 검색 결과를 사용하여 쿼리 하위 인텐트를 개별적으로 마이닝합니다.
    • 내 생각은 원래, 쿼리 + 검색결과 => 하위 의도 였는데, 쿼리 로그를 사용하면 당연 더 좋을 거 같기는 한데..
  • 이러한 노력으로 traditional statistics-based methods에 비해 양질의 query sub-intents를 생성할 수 있었고, 
    • search results나 query logs를 개별적으로 사용하는 것이 query sub-intent mining에 도움이 되는 것으로 입증되었지만, 
    • 여전히 search results 혹은 query logs를 개별적으로 사용하는 것이 최적은 아니며 서로 보완되어야 한다고 생각합니다.
    • 쿼리로만 하위 의도를 근데 생성할 수 있을거 같은데..
    • 왜냐하면 큰 모델은 다양한 코퍼스로부터 학습이 되었기 때문에?
    • 아니면 추가 분류기나 그런거 활용하면 가능할거 같음
  • search results에는 potential sub-intents를 포함할 수 있는 쿼리의 풍부한 문맥 정보가 포함되어 있습니다. 
    • 예를 들어, "Jordan Shoes: Buy a basketball and volleyball shoes"는 쿼리 "조던 신발"의 스니펫에서 추출된 문장이며, [농구, 배구]는 고품질의 하위 인텐트 집합일 수 있습니다. 
    • 따라서 이러한 정보는 하위 인텐트를 생성하기 위해 인코딩하는 데 유용합니다.
    • 즉, 검색결과의 스니펫에 하위 의도라고 간주될만한 정보를 포함한다는 것이다.
  • 반면에 query logs는 사용자 검색 행동 관점에서 쿼리 의도를 보여줍니다: 
    • 사용자가 '조던 신발'을 검색한 후 '소년용 조던 신발'이라는 또 다른 검색어를 입력했다면, '소년'은 '조던 신발'이라는 쿼리에 대한 좋은 하위 의도가 될 수 있습니다. 
    • search results 와 query logs를 개별적으로 활용하면 중요한 정보를 잃게 됩니다.
    • 즉, 이를 같이 사용해야한다고 주장함 (일반적으로 그럴듯)
  • 위의 연구 현황에 따라 query sub-intents 생성을 위한 Seq2Seq 생성 모델을 제안한다.
    • 쿼리 로그에서 추출한 search result texts와 query suggestion items을 각각 2개의 인코더로 인코딩합니다.
    • search result encoder는 user query와 search result snippets을 special token과 concat하는 문자열을 입력하는 BERT 모델입니다.
    • query log items은 weight-shared BERT 모델을 사용하여 인코딩되고 그 결과는 2차원 행렬로 연결됩니다. 
    • 트랜스포머 디코더를 기반으로 각 디코딩 단계에서 search result texts와 query log items에 대한 attention 메커니즘이 동시에 수행되며, attention 결과는 두 입력에 가중치를 부여하여 생성됩니다. 
    • 따라서 디코딩은 현재 디코딩 단계에서 두 인코더에서 얻은 정보 중 어느 부분이 더 중요한지 결정하고 디코딩 할 때 검색 결과와 쿼리 로그의 융합을 실현합니다.
    • 여기서 search result는 스닙펫을 말하고, query suggestion은 연관검색어를 의미하는 것으로 보이고, 이 데이터는 MIMICS에 있다.
  • 우리의 방법을 훈련하고 평가하기 위해 MIMICS 데이터 세트[13]를 사용합니다. 
  • MIMICS는 주로 두 가지 유형의 데이터를 포함합니다:
    • MIMICS-click data and MIMICS-manual data. 
  • MIMICS-click 데이터의 양은 상대적으로 많으며, 상용 검색 엔진에 의해 온라인에 공개된 데이터입니다. 
  • MIMICS-Manual은 일반적으로 평가에 사용되는 수동 주석이 달린 데이터입니다. 
  • 본 논문에서는 학습에는 MIMICS-Click 데이터를, 평가에는 MIMICS-Manual을 사용하였습니다. 
  • 실험 결과, 쿼리 sub-intent generation에 대한 선행 연구의 기준선과 비교했을 때 search results와 query logs를 결합한 제안된 네트워크 프레임워크가 더 높은 품질의 하위 의도를 생성할 수 있음을 보여주었습니다. 
  • 또한, 생성 단계에서 검색 결과와 쿼리 로그의 역할이 각각 다르다는 것을 입증하기 위해 두 가지 제거 실험을 수행했습니다. 
  • 빔 검색, 샘플링 등 생성 모델을 사용하여 생성하는 방법에는 여러 가지가 있으므로 다양한 생성 방법이 실험 결과에 미치는 영향도 살펴봤습니다.

II. RELATED WORK

A. The Definition of Query Sub-intent Mining

  • 일반적으로 하위 의도는 사용자의 쿼리와 관련된 단어 또는 구문 목록인 병렬 하위 주제[11]를 의미합니다. 
  • 특히, 일반적으로 사용자 쿼리의 관련 잠재적 의도 그룹을 나타냅니다. 
  • 쿼리를 검색해서 그대로 보여주지 말고, 하위의도를 알면 검색결과에 도움이 되는 이유
  • 병렬 하위 의도의 정의에 따라 하위 주제 마이닝은 입력 사용자 쿼리로 공식화되어 병렬 단어나 구의 집합을 출력할 수 있습니다. 
  • 하위 의도의 또 다른 정의는 쿼리 패싯입니다[14]. 
  • 즉 이 연구에서 하위의도라고도 패싯이라고도 부르기도 하는 듯
  • 병렬 하위 주제와 달리 쿼리 패싯 마이닝은 여러 개의 병렬 단어 또는 구문 그룹을 마이닝하는 것을 말합니다. 
  • 예를 들어, "시계" 쿼리의 경우 쿼리 패싯 마이닝은 다음과 같은 여러 개의 관련 단어 또는 구문 그룹을 동시에 제공합니다: 
    • [카시오, 시티즌, 까르띠에, 웨스트 아이언 시티], [남성, 여성, 어린이], [검정, 흰색, 파란색, 빨간색] 등이며, 이러한 하위 주제 자체의 중요도는 서로 다릅니다. 
    • 이렇게 뽑힌 하위의도(쿼리 패싯 마이닝)은 중요도가 다르다는 것
  • parallel sub-intents 및 query facets 외에도 하위 주제는 Query Suggestion (Query AutoCompletion)[15], 즉 현재 쿼리를 기반으로 사용자에게 가능한 다음 쿼리를 추천하는 형태로도 표시될 수 있습니다.
    • MIMICS의 연관검색어 필드, 실제 데이터에서 검색어 밑에 주르륵뜨는 연관검색어 등도 어떻게 보면 하위 주제라는 것

B. Query Sub-intent Mining Methods

  • 사용자 쿼리 하위 토픽 마이닝에 대한 연구는 21세기 초에 시작되었습니다. 
  • Dou [14], [18]는 2011년에 rule-based multi-group sub-topic extraction 방법을 제안했습니다. 
  • 여러 그룹의 정규 표현식 규칙을 통해 검색 결과 웹 페이지에서 병렬 구조 정보를 추출하고, 추출된 콘텐츠를 목록으로 취한 다음 규칙 기반 방식으로 이러한 목록을 정리하고 클러스터링하여 최종 여러 그룹의 하위 토픽을 얻습니다. 
  • Hu [19]는 쿼리 로그에서 하위 주제를 추출합니다. 
  • 쿼리 로그는 사용자 쿼리 행동에 대한 기록으로, 사용자의 풍부한 하위 의도를 담고 있습니다.
  • 예를 들어, 많은 사용자가 먼저 '시계'를 검색하고 '남성 시계'를 검색하면 '남성'이 시계의 하위 주제가 될 가능성이 높습니다. 
    • 검색 결과와 비교할 때 쿼리 로그는 입수하기가 쉽지 않고 정보 cocoon 문제가 발생하기 쉽습니다.
    • 쿼리로그가 MIMICS의 연관어를 의미하는 거겠지?
    • 일반 다른 연구에서는 쿼리로그를 딱히 쓴적이 없긴함
  • 또한 저자는 연구 중에 두 가지 현상을 발견했습니다.
    • (1) One Subtopic Per Search: 사용자가 쿼리에서 여러 URL을 클릭하는 경우 이러한 URL은 동일한 의미 또는 측면을 나타내는 경향이 있습니다.
    • (2) Sub-topic Clarification by Keyword: 사용자는 일반적으로 검색 의도를 명확히 하기 위해 검색어를 확장하기 위해 하나 이상의 추가 키워드를 추가합니다.
    • Wang [20]은 텍스트에서 쿼리 하위 주제를 추출하고 검색 결과에서 목록 구조 외에도 많은 수의 반구조화된 텍스트에도 풍부한 하위 주제 정보가 포함되어 있다고 설명했습니다.
    • 즉, 목록 구조 외에도 일반 텍스트 구조도 검색 결과에서 사용할 가치가 있는 리소스 중 하나입니다.
  • 머신러닝 기반의 알고리즘에서 Kong [21], [22]은 하위 주제 마이닝을 모델링하기 위해 확률 그래프 모델을 도입하고 지도 학습을 수행하여 규칙 기반의 이전 비지도 학습 방식을 뛰어 넘었습니다.
    • 그의 작업은 하위 주제 마이닝을 위한 지도 학습 모델의 중요성을 더 잘 보여줍니다.
  • Jiang [23]은 추가 지식 그래프를 도입하고 지식 그래프에서 추출한 내용을 산출된 결과에 추가하여 하위 주제의 다양성과 포괄성을 크게 높이고 지식의 중요성을 입증했습니다.
  • 최근에는 컴퓨팅 장비의 발달로 일부 대규모 파라미터 모델을 학습할 수 있게 되었습니다.
  • 딥 러닝은 일반적으로 심층 신경망 모델을 기반으로 한 학습 과정을 말합니다.
  • 최근 몇 년 동안 Sordoni[24]는 2015년 초에 쿼리 추천을 위한 계층적 인코더-디코더 모델을 설계했습니다.
  • Ahmad [25]는 쿼리 추천 및 문서 순위의 멀티태스크 학습을 통해 쿼리 추천의 효과를 개선했습니다.
  • Mustar[26]는 쿼리 추천을 수행하기 위해 사전 학습된 두 가지 언어 모델인 BERT와 BART를 사용하여 쿼리 완성 과정을 학습하였는데, 이는 하위 주제 마이닝 또는 쿼리 추천 분야에서 사전 학습된 언어 모델의 초기 작업이라고 할 수 있습니다. 
  • Imani [35]는 쿼리 확장을 위해 심층 신경망을 훈련하기 위해 단어 벡터를 사용했습니다.
  • 사전 훈련된 언어 모델이 더욱 발전함에 따라 BERT [28], ERNIE [29], BART [30] 및 GPT-2 [31] 등과 같은 많은 사전 훈련된 언어 모델이 학계에 등장하기 시작했습니다.
  • 쿼리 하위 토픽 마이닝에 몇 가지 새로운 작업이 적용되었습니다. 
    • 예를 들어, Hashemi [12]가 제안한 표현 학습 프레임워크는 각 쿼리에 해당하는 하위 주제에 대한 벡터 표현을 학습하고 학습된 표현을 사용하여 사용자 쿼리 하위 주제 마이닝 및 검색 엔진과 사용자 간의 상호 작용 프로세스에서 명확한 질문 생성을 포함한 여러 다운스트림 작업을 해결할 수 있습니다. 
    • 2021년에 MacAvaney[32]는 사전 학습된 모델 T5를 도입하여 하위 주제를 생성한 다음, 생성된 하위 주제를 명시적 검색 다변화에 사용했습니다. 
    • 이는 사전 학습된 언어 모델을 사용하여 하위 토픽을 생성하는 최신 작업이지만, 사용하는 리소스는 사용자 쿼리뿐이며, 사용된 ORCAS 데이터 세트는 수백만 개의 사용자 쿼리로 구성된 컬렉션입니다. 
    • 실제로 많은 롱테일 쿼리의 경우 프롬프트가 부족하여 모델이 고품질 쿼리 하위 주제를 생성하지 못하므로 그 효율성을 개선해야 합니다.

C. Relation Among Query Sub-intent Mining, Query Suggestion, and Query Facets Mining

  • 정의 관점에서 query suggestion (or query auto-completion)은 쿼리 제안이 쿼리와 관련된 쿼리만 생성하고 생성된 결과 간의 관계를 고려하지 않는다는 점에서 query sub-intent mining과 다릅니다[25].
    • query suggestion  != query sub-intent mining
    • 지금 내가 하려고 하는건 query sub-intent mining 쪽임
  • Query facets mining은 related sub-intents의 여러 그룹을 생성하는 것을 고려합니다.
    • Query facets mining쪽이라고 생각할 수도 있음
    • sub-intent mining은 시계 => 남성용 시계, 카시오 시계, 아동용 시계... 를 의미하고
    • facet mining은 시계 => [남성, 여성], [카시오, 롤렉스], [전기, 자동, 수동] 처럼 집합단위를 생성하는 것을 의미한다.
  • 하위 의도의 각 그룹은 높은 상관 관계가 있으며 쿼리와 관련된 개념 그룹에 해당합니다[14].
  • 그러나 query sub-intent mining은 사용자가 가장 관심을 가질만한 sub-intents 집합만을 생성하는 데 중점을 둡니다 [12].
    • 예를 들어, "시계"라는 검색어에 대해 검색어 제안 결과는 [남성용 시계, 카시오 시계, 전자 시계, 아동용 시계 등]일 수 있으며, 여기서는 주어진 항목 간에 상호 관계가 없습니다.
  • Query facets mining은 [남성, 여성], [Casio, Citizen, Lorex], [전기, 자동, 수동]],
  • 그러나 query sub-intent mining은 사용자가 가장 관심을 가질만한 항목 집합 생성만을 고려하므로, 특히 추천 및 광고와 같은 일부 특정 도메인에서 사용되는 경우 다른 많은 검색 시나리오에 적용하는 것이 더 편리합니다.

III. METHOD

A. Overall Architecture

  • 검색 결과는 사용자 쿼리가 검색 엔진에 제출되었을 때 반환되는 문서 목록을 의미합니다.
    • 각 문서에는 title, URL, and snippet의 세 가지 주요 정보가 포함되어 있습니다.
    • title은 문서의 내용을 간략하게 요약한 것입니다,
    • URL은 Web page (HTML file)에 해당되고
    • snippet은 웹 페이지의 내용을 요약한 것으로, 일반적으로 제목보다 더 깁니다.
    • HTML 문서는 너무 길기 때문에 기존 작업에서는 일반적으로 스니펫을 사용하여 웹 페이지의 콘텐츠를 표현합니다[12]. 
    • 제목이든, 스니펫이든, HTML 문서이든, 여기에는 쿼리 관련 컨텍스트 정보가 많이 포함되어 있으며, 여기에는 쿼리 하위 인텐트가 포함될 가능성이 높습니다. 
    • 따라서 검색 결과는 하위 인텐트를 마이닝하는 데 좋은 리소스라고 생각합니다.
  • Query logs는 사용자의 search behavior에 대한 기록으로, 사용자가 서로 다른 시간에 검색한 수많은 다양한 쿼리를 기록합니다.
    • 그 중 query sub-intent mining에서 가장 중요한 behavior은 query specification, 즉 사용자가 먼저 쿼리 q를 입력한 후 쿼리 qq' 또는 q'q를 입력하는 것인데, 여기서 q'는 쿼리 q의 확장입니다. 
    • 특정 질의보다 먼저 추가된 부분 or 나중 추가된 부분이 하위 의도와 연관이 깊을 것이다.
    • 예를 들어, 많은 사용자가 "시계"를 검색한 다음 "카시오 시계"를 검색합니다. 
    • 이 상황에서는 일반적으로 "카시오"가 "시계"의 좋은 subintent라고 간주합니다. 
    • 따라서 쿼리 로그에는 사용자가 인터넷에서 검색할 때 풍부한 사용자 관심 정보가 포함되어 있으며, 이는 query sub-intent를 마이닝하는 데에도 중요한 역할을 합니다.
  • 요약하자면, 검색 결과에는 쿼리에 대한 풍부한 컨텍스트 정보가 포함되어 있지만 사용자 관심사 정보는 포함되어 있지 않습니다. 
  • 반면에 쿼리 로그에는 사용자 관심사에 대한 정보는 포함되어 있지만 쿼리 컨텍스트는 포함되어 있지 않습니다. 
  • 따라서 이 백서에서는 이 두 가지 리소스를 더 잘 결합하여 더 높은 품질의 쿼리 하위 의도를 마이닝해야 한다고 생각합니다.
    • 사실 이 논문의 중요 기여는 이것이라고 생각
  • 이를 위해 본 논문에서는 'encoder-decoder' 아키텍처를 기반으로 한 구조를 제안합니다. 
  • 두 종류의 인코더를 설계했습니다:
    • search result encoder and query log encoder를 사용하여 검색 결과와 쿼리 로그 정보를 각각 인코딩한 다음 디코더를 사용하여 쿼리 하위 인텐트를 생성합니다.
  • The overall framework is shown in Figure 2.

B. Search Result Encoder

  • 제안한 알고리즘의 공정성을 보장하기 위해 이전 작업과 일관성을 유지하기 위해 HTML 문서의 제목이나 detailed content가 아닌 검색 결과 문서에 해당하는 스니펫을 사용하여 문서 자체를 표현합니다. 
    • 스니펫은 D = {d1, d2, ..., d|D|}로 표시됩니다.
    • 참고: 스니펫은 여러 문장으로 구성되어 있음
  • user query q와 snippets D에 대한 동시 발생 정보를 얻기 위해, 이 두 쿼리를 토큰 "[SEP]"로 연결합니다:
    • pre-trained language models을 미세 조정하는 일반적인 작업입니다.
  • 연결된 텍스트를 벡터로 인코딩하기 위해 BART 모델[30]에서 사전 학습된 Transformer 인코더를 적용합니다. 
  • 트랜스포머 인코더는 다음과 같이 공식화할 수 있는 self-attention mechanism으로 숨겨진 벡터 표현을 계산합니다:
    • 여기서 H는 계산된 hidden layer vector result를 나타내고, dk는 dimension of the hidden layer word vector을 나타내며, Q, K, V는 각각 세 개의 가중치 행렬 WQ, W K, WV를 적용한 input word vector의 결과를 나타냅니다:
  • Transformer 네트워크의 self-attention 메커니즘에 대한 자세한 내용은 논문을 읽어보시기 바랍니다. 
  • 다중 레이어 트랜스포머 인코딩 후 입력 텍스트의 각 토큰은 문서 표현으로 사용되는 컨텍스트 관련 숨겨진 레이어 벡터로 점진적으로 인코딩됩니다. 
  • Transformer 인코더에 N개의 레이어가 있다고 가정하면, 마지막 숨겨진 레이어의 출력 벡터 H^N_R(여기서 R은 검색 결과를 나타냄)을 모든 검색 결과의 벡터 표현으로 사용할 수 있습니다.
    • 즉 검색결과(스닙펫)에 대하 각각 인코더의 결과 벡터를 사용한다.

C. Query Log Encoder

  • 쿼리 로그는 대량의 데이터를 담고 있는 경우가 많기 때문에 직접 활용할 수 없습니다. 
  • 대신, 그림 3과 같이 Bing 검색 엔진에서 제공하는 쿼리 제안 API를 사용하여 쿼리 로그에서 user’s query specification behaviours을 표현합니다. 
  • 이렇게 returned suggestions은 쿼리 로그에서 추출한 빈도를 기반으로 얻어지므로 쿼리 로그를 제대로 표현할 수 있습니다. 
  • 검색 결과 텍스트와 달리 쿼리 로그에 포함된 정보는 긴 문장이 아닌 짧은 구문인 경우가 많습니다. 
  • 이러한 종류의 데이터는 노이즈가 발생하지 않도록 개별적으로 인코딩해야 합니다. 
  • 따라서 우리는 이러한 제안을 동시에 인코딩하는 대신 그림 2와 같이 미리 학습된 하나의 Transformer 인코더를 사용하여 개별적으로 인코딩합니다. 
  • 출력 벡터의 수는 query suggestion 수와 같으며, 쿼리 로그 인코더의 출력 표현은 H^N_L로 표시됩니다(여기서 L은 쿼리 로그를 나타냄).
    • 즉, 쿼리 로그들에 대해 각각 인코더의 결과 벡터들을 사용한다.

D. Decoder

  • 두 인코더는 search results와 query logs를 각각 H^N_R과 H^N_L로 표현하므로, 디코더는 각 디코딩 단계에서 두 리소스 간의 중요도에 가중치를 부여해야 합니다. 
  • 이를 위해 먼저 H^N_R과 H^N_L을 H_LR로 concat 합니다. 
    • H^N_R과 H^N_L의 모양이 각각 (T_R, d) 및 (T_L, d)라고 가정할 때, 여기서 T는 토큰 길이를 나타내고 d는 단어 벡터의 차원을 나타내면 H_LR의 모양은 (T_R + T_L, d)가 됩니다. 
  • 각 디코딩 단계에서 attention는 cross attention로 계산됩니다. 
  • 방정식 2와 유사하게, Q는 현재 디코더 입력에서 구하고 K와 V는 H_LR로 대체합니다. 
    • 이 경우 디코더는 검색 결과와 쿼리 로그 간의 중요도에 자동으로 가중치를 부여할 수 있습니다. 
  • 학습을 위해 모든 ground truth intents를 연결하기 위해 특수 토큰 "[ISEP]"를 사용합니다.
  • 스닙펫과 쿼리로그의 인코딩 결과를 cross attention 하면서 디코딩한다는 것이다.
    • 뭔가 그림하고 설명하고 매칭이 잘 안되는데..
    • 이해하기론, 스닙펫과 쿼리로그 인코딩 결과를 concat하고, 이것이 K, V의 역할을 한다.
    • Q는 facet1 [ISEP] facet2 [ISEP] ... 이 담당하는 것으로 보여진다. 

IV. EXPERIMENTS

  • 이 섹션은 주로 실험적인 부분을 설명합니다.
  • 4.1 실험에 필요한 훈련 및 평가 데이터를 소개하고,
  • 4.2는 비교해야 할 기존 쿼리 하위 의도 마이닝과 관련된 기준선을 소개합니다.
  • 4.3 하위 의도의 평가 지표를 소개합니다.
  • 4.4는 주로 실험적 설정을 소개합니다. 특히 모델의 세부 매개변수 설정입니다.
  • 4.5절에서는 주요 실험 결과와 2차 실험 결과를 보여주고 실험 결과를 분석한다.

A. Data

  • 초창기에는 UserQ나 RandQ와 같은 소규모 하위 의도 데이터셋을 제안한 연구도 있었지만, 이러한 소규모 데이터셋으로는 딥러닝 모델을 훈련하고 평가하기에 충분하지 않았습니다. 
  • 최근에는 query sub-intent mining에 MIMICS 데이터셋이 점차적으로 적용되고 있습니다.
  • The MIMICS dataset contains three subsets: 
    • MIMICSClick, Mimics-ClickExplore, and Mimics-manual.
  • MIMICS-Click과 MIMICS-ClickExplore는 더 크지만 수동 라벨링 없이 온라인으로 수집된 user feedback 데이터만 있습니다.
  • MIMICS-Manual에는 sub-intents의 품질에 대한 사용자 주석이 포함되어 있습니다.
  • 이 백서에서는 40만 개 이상의 쿼리가 포함된 MIMICS-Click 데이터셋을 학습에 사용하여 이전 작업과 일관성을 유지하려고 합니다.
  • 약 2800개의 쿼리가 포함된 MIMICS-Manual 데이터 세트에서 하위 의도 품질이 Good or Fair으로 레이블이 지정된 데이터(나쁨으로 레이블이 지정된 데이터 대신)가 평가에 사용됩니다.
    • 학습에는 MIMICS-Click을 사용했고, 테스트에는 MIMICS-Manual을 사용함
    • MIMICS-Manual의 레이블중에 데이터 품질을 표현하는게 있는데, 이게 Good(2) or Fair(1)인 것에 대해서만 테스트했다는 것
  • 각 쿼리 q에 대해 Bing에서 제공하는 검색 API v7을 사용하여 search results와 해당 query suggestion results를 가져옵니다.
    • 이전 연구에서는 이미 이를 덤프해둔 결과를 사용했다
    • http://ciir.cs.umass.edu/downloads/mimics-serp/MIMICS-BingAPI-results.zip
    • 근데 API을 찔러서 결과를 사용한거 보면.. 이전 연구들과 다른 메타정보들일 수 있겠는데?

B. Baselines

  • 두 그룹의 기준선을 설계합니다.
  • 첫 번째 그룹은 QDist[34], QFI[21], QFJ[22] 및 QDMiner[14]를 포함하는 전통적인 규칙 기반 또는 기계 학습 알고리즘입니다.
  • 두 번째 그룹은 NMIR [12], BART 및 BART의 세 가지 변형을 포함하여 딥 러닝 및 사전 훈련된 언어 모델을 기반으로 최근 제안된 방법으로 구성됩니다.
  • 모든 기본 모델의 실험 결과는 표 1의 맨 위에 표시됩니다.

C. Evaluation Metrics

  • 이전의 작업[27]에 이어 다음 네 가지 평가 메트릭 세트를 사용하여 제안된 방법을 평가하고 모델을 기준선과 비교합니다.
  • (1) Term overlap between the generated sub-intents and ground truth sub-intents. 
    • 이 메트릭의 Precision, Recall 및 F1 점수를 계산합니다.
  • (2) Exact match between the generated sub-intents and ground truth sub-intents, which also includes Precision, Recall, and F1 score. 
  • (3) Set BLEU score: measuring the ngram similarity between the generated results and the ground truths. 
  • (4) Set BERT score: The former three groups of metrics only evaluate the results from lexical perspectives. 
    • Set BERT는 의미론적 관점에서 유사성, 즉 생성된 결과의 표현과 BERT에서 계산된 ground truth 간의 벡터 유사성을 평가합니다.
  • 논문[12]은 이러한 메트릭의 보다 자세한 구현을 보여줍니다.

D. Implementation Details

  • 이 모델은 검색 결과 인코더와 쿼리 로그 인코더가 모두 6계층 트랜스포머 인코더인 트랜스포머 구조를 채택하고 있습니다. 
  • 그리고 디코더는 6계층 트랜스포머 디코더 구조를 채택합니다. 
  • input vector dimension, hidden layer vector dimension, thesaurus setting은 사전 학습된 언어 모델 BART와 일치합니다. 
  • 또한 사전 학습된 BART 인코더의 파라미터로 search result encoder와 query log encoder를 초기화하고, BART 디코더의 파라미터로 디코더를 초기화하며, 모델은 사전 학습되지 않은 모델보다 더 나은 성능을 얻기 위해 일반 언어 능력을 갖추고 있습니다. 
  • 모델을 구현하기 위해 Transformers 라이브러리를 사용합니다. 
  • 훈련 과정에서 AdamW 옵티마이저를 사용하고 파라미터를 기본 파라미터로 설정하고 손실 함수로 교차 엔트로피를 선택했습니다. 
  • 훈련 데이터의 10%를 검증 데이터로 사용했습니다. 
    • 훈련의 각 에포크가 끝나면 검증 데이터에 대해 손실 함수를 계산합니다. 
    • 손실이 감소하지 않으면 학습이 중지됩니다.

E. Experimental Results

  • 실험 결과는 표 1에 나와 있습니다. 
  • 이 결과를 통해 다음과 같은 결론과 분석을 도출할 수 있습니다:
  • (1) 기존의 규칙 기반 또는 기계 학습 방법(QDist, QFI, QFJ, QDMiner)과 비교하여 최근 제안된 딥러닝 기반 알고리즘(NMIR, BART 등)은 훨씬 더 나은 결과를 얻을 수 있습니다.
    • 반면, 기존 기준선과 비교했을 때, 제안한 모델은 모든 평가 지표에서 유의미한 개선이 있었습니다. 
    • 특히 Term overlap, Exact Match, and Set BLEU Score의 세 가지 평가 지표에서 각각 평균 0.69, 0.01, 0.59로 최적 기준선을 초과하여 매우 유의미한 개선이 이루어졌음을 알 수 있습니다. 
    • 이러한 결과는 앞서 제안한 알고리즘과 비교했을 때, 우리가 제안한 알고리즘이 더 높은 품질의 하위 인텐트를 생성할 수 있으며, 생성된 결과가 MIMICS 평가 데이터 세트의 기준 진실과 더 유사하다는 것을 보여줍니다. 
    • 처음 세 가지 평가 지표는 이러한 유사성을 측정하기 때문에 세 가지 지표가 모두 개선됩니다. 
    • Set BERT Score의 평가 지표의 경우 개선이 명확하지 않습니다. 
    • 이는 이 지표가 생성된 결과와 실제 결과 간의 의미적 유사성을 측정하는 것이지 결과의 품질을 나타내는 것이 아니기 때문입니다.
  • (2) 기존 딥러닝 방식에서 생성된 결과의 Precision 값보다 Recall 값이 현저히 높은 반면, 기존 방식과 제안하는 방식은 기본적으로 Precision and Recall이 일치합니다.
    • 이는 최근 딥러닝 알고리즘이 생성되는 인텐트의 개수를 제한하지 않고, MIMICS 데이터셋의 각 기준값에는 보통 2~5개의 인텐트만 포함되기 때문에 생성되는 결과의 커버리지가 넓지만 정확도가 낮기 때문입니다. 
    • 하지만 우리가 제안한 모델을 학습하기 위한 라벨링 데이터는 여러 개의 인텐트를 특수 태그 기호와 함께 출력으로 연결하기 때문에 암묵적으로 출력 인텐트의 수를 제한합니다. 
    • 따라서 보통 2~5개의 인텐트만 생성되어 기존 알고리즘의 정확도를 개선할 수 있습니다.
  • (3) 표 1에서 “Without Query Log” and “ Without Search Result” 으로 표시된 쿼리 로그 인코더와 검색 결과 인코더를 각각 제거한 두 그룹의 제거 연구를 수행했습니다.
    • 실험 결과에 따르면 두 리소스를 각각 제거했을 때 평가 지표가 모두 다른 정도의 감소를 보였습니다. 
    • search results 인코더를 제거하면 query log 인코더를 제거할 때보다 평가 감소가 더 뚜렷하게 나타납니다. 
    • 이는 search results에 많은 문맥 정보가 포함되어 있기 때문에 search results에 포함된 정보가 더 중요하다는 것을 시사합니다. 
    • search results에는 많은 정보가 포함되어 있기 때문에 search results를 보완하는 쿼리 로그는 사용자 관심 정보를 더 잘 마이닝할 수 있어 디코딩 시 검색 결과에서 더 유용한 정보에 주의를 기울일 수 있습니다.
    • 개인적으로는 사실 이것이 이 논문만의 novelty?라고 여겨짐. 왜냐하면 다른 논문은 query log을 사용안했기 때문
    • query log보다는 search results가 더 중요하다고 하다.
  • (4) Transformer 디코더는 일반적으로 자동 회귀 방식으로 결과를 생성합니다. 즉, 첫 번째 토큰이 생성된 다음 두 번째 토큰이 생성되고 terminator가 생성될 때까지 반복해서 생성됩니다.
    • 생성 과정에서 greedy generation, beam search, Top-K sampling, and Top-p sampling 등 연구할 만한 가치가 있는 생성 방법이 많이 있습니다. 
    • 본 논문에서는 auto-regressive generation에 기본적으로 greedy search을 채택하고 있지만, 이 방법은 일반적으로 최적이 아닙니다. 
    • 따라서 본 논문에서는 위의 다양한 생성 방법을 비교합니다. 
    • 빔 탐색의 경우, 탐색 빔 크기를 3, 5, 10으로 설정합니다. 샘플링의 경우 Top-K 샘플링과 Top-p 샘플링을 비교합니다. 
    • 실험 결과는 표 1의 하단에 나와 있습니다. 
    • beam search과 샘플링 생성 방법 모두 결과에 긍정적인 영향을 미친다는 것을 알 수 있습니다. 
    • beam search의 경우 빔 크기가 클수록 생성된 결과의 품질이 높아지지만, 빔 크기가 커질수록 개선율은 점점 작아지는 것을 확인할 수 있습니다. 
    • 샘플링의 경우 두 샘플링 방법은 거의 동일하게 결과를 개선하며, 빔 크기가 5인 경우 기본적으로 beam search 결과와 동일합니다.
    • Top-p or Top-k 샘플링하거나 빔서치 태우면 결과가 좀 더 좋아진다.
  • To illustrate the effectiveness of our proposed method intuitively, we select several generated cases and show them in Table 2

V. CONCLUSION

  • Query sub-intent mining은 자연어 처리 및 정보 검색의 중요한 연구 주제가 되었습니다.
  • 빅데이터 환경에서 고품질의 query sub-intents은 사용자가 검색 엔진에서 보다 만족스러운 결과를 찾는 데 도움이 됩니다. 
  • 본 논문에서는 쿼리의 풍부한 문맥 정보가 포함된 검색 결과와 실제 사용자의 관심사를 드러내는 쿼리 로그의 장점을 통합하는 것이 중요하다는 점을 강조합니다. 
  • 이를 위해 새로운 Seq2Seq 아키텍처를 설계합니다. 
  • 검색 결과 인코더와 쿼리 로그 인코더를 도입한 후, 입력된 검색 결과와 쿼리 로그 정보를 동시에 처리하는 디코딩 단계를 도입하여 이들의 동시 발생을 얻습니다. 
  • 실험 결과, 기존의 규칙 기반 방법, 기계 학습 기반 방법, 그리고 최근 제안된 심층 언어 모델 기반 방법과 비교했을 때 제안한 방법이 거의 모든 종류의 평가 지표에서 유의미한 개선을 달성할 수 있음을 보여줍니다. 
  • 제거 연구를 통해 모델에서 각 구성 요소의 효과를 더욱 잘 보여줍니다. 
  • 또한 디코딩 구문에서 다양한 생성 전략을 살펴보고 제안한 방법으로 생성된 예제를 보여줍니다. 
  • 제안한 방법과 아키텍처는 특히 빅 데이터의 맥락에서 검색 엔진이 정보 검색을 위해 잠재적인 사용자 관심사를 마이닝하는 데 유용합니다.

Reference

댓글