본문 바로가기
개발/ALGOLIA

알고리아 Managing Results(3-30)

by dev_caleb 2022. 3. 5.
728x90

Filter Scoring

https://www.algolia.com/doc/guides/managing-results/refine-results/filtering/in-depth/filter-scoring/

 

Filter scoring | Algolia

Scoring filters by controlling their weight and therefore impact on searches.

www.algolia.com

 

As well as refining results, you can use filtering to rank records according to how well or how poorly they match a set of filters: this is called filter scoring. Scoring applies numerical settings to filter values, making some filter values more important than others. Records with the highest filter values sit at the top of the list of results.

Consider the case of stock portfolios in which companies are scored according to their monetary significance. Filter scoring can be used to rank Google higher than Facebook. For example:

결과를 세분화할 뿐만 아니라 필터링을 사용하여 필터 집합과 일치하거나 일치하지 않는 정도에 따라 레코드의 순위를 지정할 수 있습니다. 이를 필터 스코어링이라고 합니다. 스코어링은 필터 값에 숫자 설정을 적용하므로 일부 필터 값이 다른 값보다 중요합니다. 필터 값이 가장 높은 레코드는 결과 목록의 맨 위에 위치합니다.
기업이 금전적 의미에 따라 점수를 매기는 주식 포트폴리오의 경우를 생각해보자. 필터 스코어링은 구글이 페이스북보다 높은 순위를 매기는 데 사용될 수 있습니다. 예:

 

index.search('', {
  filters: "(company:Google<score=3> OR company:Amazon<score=2> OR company:Facebook<score=1>)",
});

The result is that records with Google stocks sit at the top of the list, higher than Amazon and Facebook.

How scoring is calculated

Filter scores are integer values from 0 to 65535.

 

Default scoring

In the preceding example, any portfolio containing all three companies (Google, Amazon, and Facebook) would score 3, as the total is based on the highest score. In other words, by default, there is no accumulation of the individual scores. 앞의 예에서, 세 회사(Google, Amazon, Facebook)를 모두 포함하는 모든 포트폴리오가 3점인데, 총점이 가장 높은 점수를 기준으로 하기 때문이다. 기본적으로 개인 점수가 누적되지 않는다는 얘기다.

Accumulating scores with sumOrFiltersScores(sumOrFiltersScores를 사용하여 점수 누적)

You accumulate scores by setting the sumOrFiltersScores parameter to true. In the preceding example, any record with all three companies would have a total score of 6 (3+2+1).

If sumOrFiltersScores is false, the default, the system uses the default scoring method: taking the highest score. Using the preceding example and a query filtered on Google and Amazon with sumOrFiltersScores = false returns a score of 3 (google(3) > amazon(2)).

sumOrFiltersScores 파라미터를 true로 설정하여 점수를 누적합니다. 위의 예에서, 세 회사 모두의 레코드는 총점 6(3+2+1)입니다.
sumOrFiltersScores가 기본값인 경우 시스템은 가장 높은 점수를 받는 기본 점수 매기기 방법을 사용합니다. 위의 예와 sumOrFiltersScores = false로 Google 및 Amazon에서 필터링된 쿼리를 사용하면 3점(Google (3) > amazon(2))이 반환됩니다.

 

index.search('', {
  filters: '(company:Google<score=3> OR company:Amazon<score=2> OR company:Facebook<score=1>)',
  sumOrFiltersScores: false
});

 

The same query with sumOrFiltersScores = true returns a score of 5 (google (3) + amazon(2)).

 

index.search('', {
  filters: "(company:Google<score=3> OR company:Amazon<score=2> OR company:Facebook<score=1>)",
  sumOrFiltersScores: true
});

 

Scoring ANDs and ORs

Use the OR operator when you want to weigh terms differently.

항 무게를 다르게 측정하려면 OR 연산자를 사용합니다.

  • When filtering with OR, the total score is based on the individual true value scores. If you have three filter values in your query and all three match, it will have a higher score than another record that matches only one filter value.
  • Filtering only with ANDs will remove the effect of scoring. With a group of ANDs, records are chosen only if all filters match: all records will have the same score.

-OR로 필터링할 경우 총 점수는 개별 참 값 점수를 기반으로 합니다. 쿼리에 필터 값이 세 개 있고 세 개 모두 일치하는 경우 필터 값 하나만 일치하는 다른 레코드보다 높은 점수를 가집니다.
-AND로만 필터링하면 스코어링 효과가 제거됩니다. AND 그룹에서 레코드는 모든 필터가 일치하는 경우에만 선택됩니다. 모든 레코드는 동일한 점수를 가집니다.

 

Scoring using numeric filters#

You can’t apply scores when using numeric filters (like >=, !=, >). Scoring can only be done on facet values, using the attribute:value<score=X> syntax.

숫자 필터 사용 시 점수를 적용할 수 없습니다(예: >=, !=, >). 점수 매김은 특성:value<score=X> 구문을 사용하여 패싯 값에 대해서만 수행할 수 있습니다.

728x90

'개발 > ALGOLIA' 카테고리의 다른 글

알고리아 Managing Results(3-32)  (0) 2022.03.05
알고리아 Managing Results(3-31)  (0) 2022.03.05
알고리아 Managing Results(3-29)  (0) 2022.03.05
알고리아 Managing Results(3-28)  (0) 2022.03.05
알고리아 Managing Results(3-27)  (0) 2022.03.05