2.X/2. Search in Depth

2-4. Proximity Matching

drscg 2017. 9. 24. 22:00

Standard full-text search with TF/IDF treats documents, or at least each field within a document, as a big bag of words. The match query can tell us whether that bag contains our search terms, but that is only part of the story. It can’t tell us anything about the relationship between words.

TF/IDF를 가진 표준 full-text 검색은, document나, 최소한 document내의 각각의 filed를, 단어가 들어 있는 큰 가방(bag of words) 으로 생각한다. 그 가방이 검색어를 포함하는지 여부를 match query로 알 수 있다. 그러나 일부일뿐이다. match query는 단어 사이의 관계에 대해서는 아무 것도 알 수 없다.

Consider the difference between these sentences:

아래 문장 사이의 차이점에 대해 생각해 보자.

  • Sue ate the alligator.
  • The alligator ate Sue.
  • Sue never goes anywhere without her alligator-skin purse.

match query for sue alligator would match all three documents, but it doesn’t tell us whether the two words form part of the same idea, or even the same paragraph.

sue alligator 에 대한 match query는 세 개의 document 모두에 일치할 것이다. 그러나 두 단어가 동일한 생각, 심지어 동일한 단락의 일부를 구성하는지는 알지 못한다.

Understanding how words relate to each other is a complicated problem, and we can’t solve it by just using another type of query, but we can at least find words that appear to be related because they appear near each other or even right next to each other.

단어들이 서로 어떤 관련이 있는지를 이해하는 것은 복잡한 문제이고, 단지 다른 형태의 query를 사용하여, 그것을 해결할 수는 없다. 그러나, 단어들이 서로 가까이 있거나, 심지어 바로 옆에 있기 때문에, 최소한 관련이 있는 것으로 보이는 단어를 찾을 수는 있다.

Each document may be much longer than the examples we have presented: Sue and alligator may be separated by paragraphs of other text. Perhaps we still want to return these documents in which the words are widely separated, but we want to give documents in which the words are close together a higher relevance score.

각 document는 위에서 제시한 예보다 훨씬 길 수 있다. Sue 와 alligator 는 다른 문장(text)의 단락에 의해 구분되어 있을 수 있다. 아마 단어들이 멀리 떨어져 있는 경우에도, 이들 document를 반환해 주기를 원할 것이다. 그러나, 단어들이 서로 근접해 있는 document에 더 높은 relevance score를 주려 할 것이다.

This is the province of phrase matching, or proximity matching.

이것이 구문 일치(phrase matching) 나 근접 일치(proximity matching) 의 관심 분야이다.

Tip

In this chapter, we are using the same example documents that we used for the matchquery.

이번 장에서는, match query에서 사용했던 것과, 동일한 예제 document를 사용할 것이다.


'2.X > 2. Search in Depth' 카테고리의 다른 글

2-3-10. cross-fields Queries  (0) 2017.09.28
2-3-11. Exact-Value Fields  (0) 2017.09.28
2-4-1. Phrase Matching  (0) 2017.09.24
2-4-2. Mixing It Up  (0) 2017.09.24
2-4-3. Multivalue Fields  (0) 2017.09.24