이해 쿼리

Query understanding

질의 이해는 검색자의 키워드에서 의미적 의미를 추출해 검색엔진 사용자의 의도를 유추하는 과정이다.[1]질의 이해 방법은 일반적으로 검색 엔진이 결과를 검색하고 순위를 매기기 전에 이루어진다.자연어 처리와 관련이 있지만 구체적으로 검색 질의의 이해에 초점을 맞췄다.질의 이해는 애플시리인 아마존 알렉사와 같은 기술의 핵심이다.[2][3]구글 어시스턴트,[4] IBM왓슨,[5] 마이크로소프트코르타나.[6]null

방법들

토큰화

토큰화텍스트 문자열을 단어 또는 토큰이라고 불리는 다른 의미 있는 요소로 분해하는 과정이다.일반적으로 토큰화는 단어 수준에서 발생한다.그러나, "단어"가 의미하는 바를 정의하기가 어려울 때가 있다.토큰라이저는 문장 부호나 공백 문자에 따라 문자열을 분할하는 것과 같은 단순한 경험에 의존하는 경우가 많다.중국어, 일본어처럼 단어 사이에 공간이 없는 언어에서는 토큰화가 더 어렵다.이러한 언어로 텍스트를 토큰화하려면 단어 분할 알고리즘을 사용해야 한다.[7]null

철자수정

철자 수정은 검색 질의에서 철자 오류를 자동으로 감지하고 수정하는 과정이다.대부분의 철자 보정 알고리즘은 의도된 쿼리의 선험 확률을 결정하는 언어 모델과 의도된 쿼리가 주어졌을 때 특정 오식 확률을 결정하는 오류 모델(일반적으로 시끄러운 채널 모델)을 기반으로 한다.[8]null

발생 및 레미화

많은, 그러나 전부는 아니지만, 언어는 단어들이 등장할 때 그들의 역할을 반영하기 위해 단어를 번창한다: *care*와 같은 단어는 기본 형태 외에 다른 형태로 나타날 수 있다. *cares*, *cared*, *caring*, *caring* 등.단어의 다양한 형태 사이의 변화는 검색 시스템에 관련된 비교적 거친 의미의 모델에는 별로 중요하지 않을 것 같고, 이러한 이유로 단어의 다양한 형태를 혼동하는 작업은 검색 시스템의 리콜을 증가시키는 데 잠재적으로 유용한 기술이다.[9]null

세계의 언어는 그들이 얼마나 많은 형태학적 변화를 보이는가에 따라 다양하며, 어떤 언어의 경우, 그것의 보조정리뿌리 형태 또는 줄기에 질의에 있어서 단어를 줄일 수 있는 간단한 방법이 있다.일부 다른 언어의 경우, 이 작업은 비종교 문자열 처리를 포함한다.영어 명사는 일반적으로 네 가지 변형으로 나타난다: *cat* *cats* *cats* 또는 *child* *children* *children* *children* *children* *children* *children* *children** *children's*.다른 언어들은 더 다양하다.핀란드어, 를 들어, 명사에 대해 잠재적으로 약 5000개의 형식을 나타낼 수 있으며,[10] 많은 언어의 경우 변곡형 형태는 붙이는 것에 국한되지 않고 단어 자체의 핵심을 바꾼다.null

스템머라고도 알려진 파생 알고리즘은 언어의 변곡 규칙을 모델링하기 위한 접미사를 제거하기 위해 일반적으로 간단한 규칙 집합을 사용한다.[11]null

보다 진보된 방법, 레마티화 방법, 언어의 일부분 또는 어휘 데이터베이스의 기록에 기초하여 더욱 복잡한 규칙 집합을 통해 한 단어의 변형된 형태를 한데 묶어서 조회 또는 일련의 변환을 통해 그 보조기법으로 변형시킨다.오랜 시간 동안, 형태학적 정상화가 크게 검색 성능에 도움이 되지 않는다는 것이 증명되었다.[12]null

일단 정보검색 분야의 관심이 영어가 아닌 다른 언어로 옮겨가면, 일부 언어의 경우 명백한 이득이 있다는 것을 알게 되었다.[13]null

엔티티 인식

엔티티 인식은 텍스트 문자열 내에서 엔티티를 찾고 분류하는 과정이다.지명-엔티 인식은 특히 사람, 장소 및 조직의 이름과 같은 명명된 실체에 초점을 맞춘다.또한 기업 인식은 다중 단어 구문으로 표현될 수 있는 질의에서 개념을 식별하는 것을 포함한다.기업 인식 시스템은 일반적으로 문법에 기초한 언어 기술이나 통계적 기계 학습 모델을 사용한다.[14]null

다시 쓰기 쿼리

쿼리 재작성이란 검색 질의의 의도를 보다 정확하게 포착하기 위해 자동으로 재구성하는 과정이다.쿼리 확장은 더 많은 문서를 검색하여 리콜을 증가시키기 위해 동의어와 같은 쿼리 용어를 추가한다.질의 완화는 질의어에 부합하는 문서에 대한 요구사항을 줄이기 위해 질의어를 제거하여 리콜을 증가시키기도 한다.연속된 쿼리 용어를 자동으로 문구로 변환하고 쿼리 용어를 특정 필드로 제한하는 등 다른 형식의 쿼리 다시 쓰기는 정밀도를 높이는 것을 목표로 한다.Apache Lucene 검색 엔진은 query rewrite를 사용하여 와일드카드를 사용한 식(예: [16]quer*)과 같은 복잡한 쿼리를 보다 원시적인 쿼리로 변환한다(쿼리 OR 쿼리 등).null

참고 항목

참조

  1. ^ "Association of Computing Machinery (ACM) Special Interest Group on Information Retrieval (SIGIR) 2010 Workshop on Query Representation and Understanding" (PDF).
  2. ^ "Amazon AI - Artificial Intelligence".
  3. ^ "iOS - Siri - Apple".
  4. ^ "How Google uses machine learning in its search algorithms".
  5. ^ "When Watson met Siri: Apple's IBM deal could make Siri a lot smarter".
  6. ^ "The story of Cortana, Microsoft's Siri killer".
  7. ^ "Tokenization".
  8. ^ "How to Write a Spelling Corrector".
  9. ^ Lowe, Thomas; Roberts, David; Kurtz, Peterdate=1973. Additional Text Processing for On-Line Retrieval (The RADCOL System). Volume 1. DTIC Document. Lennon, Martin; Peirce, David; Tarry, Brian D; Willett, Peter (1981). "An evaluation of some conflation algorithms for information retrieval". Information Scientist. SAGE. 3 (4).
  10. ^ Karlsson, Fred (2008). Finnish: an essential grammar. Routledge.
  11. ^ Lovins, Julie (1968). Development of a stemming algorithm. MIT Information Processing Group.
  12. ^ Harman, Donna (1991). "How Effective is Suffixing?". Journal of the American Society for Information Science. 42 (1): 7–15. doi:10.1002/(SICI)1097-4571(199101)42:1<7::AID-ASI2>3.0.CO;2-P.
  13. ^ Popovic, Mirkoc; Willett, Peter (1981). "The effectiveness of stemming for natural-language access to Slovene textual data". Information Scientist. SAGE. 3 (4).
  14. ^ "A Survey of Named Entity Recognition and Classification" (PDF).
  15. ^ "Apache Lucene".
  16. ^ "Query in Lucene 6.4.1 API documentation".