Zing은 다음 세 가지 구성요소를 사용하여 문서 점수를 계산합니다
Zing 검색 엔진은 문서에서 검색어의 빈도, 순서 및 가중치를 기준으로 문서 점수를 계산합니다.
문서 점수
- 빈도: 검색어가 문서에 나타나는 빈도입니다.
- Sequence: 검색어가 검색 쿼리와 동일한 순서로 표시되는 빈도입니다.
- 가중치: 검색어가 나타나는 소스 필드의 가중치입니다.
주파수 포인트
Zing은 검색어가 문서의 아무 곳에나 나타날 때마다 1점을 부여합니다. 예를 들어, 분산 데이터베이스 서버를 검색할 때 분산 3회, 데이터베이스 5회, 서버 17회를 포함하는 문서는 25개의 빈도 지점을 갖습니다.
문서에서 더 자주 나타나지만 문서 집합 역 문서 빈도(IDF)로 검색어 점수 매기기에서는 덜 자주 나타나는 검색어의 검색 결과 점수를 높이려면 . TF-IDF가 활성화되면 용어 빈도 점수에 역 문서 빈도 점수를 곱하여 검색어 점수가 계산됩니다. TF-IDF를 활성화하면 덜 일반적인 검색어의 가중치가 증가하기 때문에 해당 테이블의 검색 결과가 관련성이 높을 수 있습니다. 예를 들어 분산 데이터베이스 서버를 검색할 때 분산 이라는 용어가 한 문서에서는 자주 나타나지만 전체 문서 집합에서는 덜 자주 나타나는 경우 서버 보다 높은 점수를 받을 수 있습니다.
Zing은 검색어가 나타나는 필드의 ts_weight 속성 값에 따라 빈도 포인트에 승수를 적용합니다. 텍스트 검색 점수 가중치가 30(ts_weight=30)인 필드는 검색어를 포함할 때마다 30점을 추가합니다.
시퀀스 포인트
Zing은 검색어가 입력된 순서와 동일한 순서로 문서에 포함되어 있는 경우 문서에 더 많은 점수를 부여합니다. 순서대로 검색어가 많을수록 점수가 기하급수적으로 높아집니다. Zing은 시퀀스 포인트를 10^x로 부여하며, 여기서 x는 순서대로 나타나는 검색어의 수입니다.
분산 데이터베이스 서버 검색 예제에서 Zing은 2개 용어 문자열 데이터베이스 서버를 포함할 때마다 문서 100(10^2) 시퀀스 포인트를 부여합니다. 마찬가지로, Zing은 3개의 문자열로 된 분산 데이터베이스 서버를 포함할 때마다 문서 1000(10^3) 시퀀스 포인트를 부여합니다.
Zing은 시퀀스가 나타나는 필드의 ts_weight 속성 값을 기준으로 시퀀스 포인트에 승수를 적용합니다. 시퀀스 포인트는 계산(10^x * 필드 ts_weight 속성)을 사용합니다.
필드 점수 가중치
- kb_knowledge.number = 50
- kb_knowledge.short_description = 10
- kb_knowledge.meta = 10
- task.number = 50
- task.short_description = 10
다른 모든 필드의 기본 ts_weight 속성은 1입니다. 가능한 최대 가중치 값은 255입니다.