TEXTSIMILARITY

적용 대상:계산 열계산 테이블측정값시각적 계산

열의 텍스트가 검색 문자열과 얼마나 일치하는지 나타내는 부동 소수점 관련성 점수를 반환합니다.

Syntax

TEXTSIMILARITY(<within_text_column>, <search_text>[, <match_mode>])

Parameters

기간 Definition
within_text_column 검색할 텍스트 값이 들어 있는 열입니다. 열에는 문자열 데이터 형식이 있어야 합니다.
search_text 검색 조건을 정의하는 텍스트 문자열입니다.
match_mode (선택 사항) 사용할 일치 동작입니다. 지원되는 값은 TEXTMATCHING, FUZZYMATCHING및 PHRASEMATCHING. 기본값은 TEXTMATCHING입니다.

반환 값

부동 소수점 어휘 관련성 점수입니다. 한 평가에서 높은 점수는 더 강한 일치를 나타내고 0은 일치하는 항목이 없음을 나타냅니다.

점수는 백분율, 확률 또는 정규화된 유사성 측정값이 아닌 불투명 순위 값입니다. 동일한 검색 컨텍스트 내에서만 점수를 비교합니다.

점수는 별도의 쿼리 실행, 검색 문자열, 열, 필터 컨텍스트, 데이터 원본 또는 스토리지 모드, 인덱스 콘텐츠 또는 세대 또는 실행 계획에서 비교되거나 안정적으로 보장되지 않습니다. 이러한 요소는 표시되는 텍스트 값이 변경되지 않은 경우에도 점수 매기기 모음 또는 채점 구현을 변경할 수 있습니다.

일치 모드

모드 작동 방식
TEXTMATCHING 모든 검색 토큰과 search_text 일치하는 텍스트를 토큰화하고 점수를 매깁니다.
FUZZYMATCHING 작은 편집 거리 내의 검색 토큰과 유사한 점수 토큰입니다. 이 모드는 오타 내성 일치를 지원합니다.
PHRASEMATCHING 분석된 토큰이 나란히 지정된 순서로 나타나면 텍스트의 점수를 매깁니다. 문장 부호는 토큰 시퀀스에 영향을 주지 않습니다.

비고

  • 검색은 대/소문자를 구분하지 않습니다.
  • 이 함수는 모델 문화권에 따라 언어별 형태소 분석 및 중지 단어 제거를 적용합니다. 예를 들어 형태소 분석에서는 검색 run 을 통해 일치 running, runs및 runner. 중지 단어 제거는 , andof, 및 in. 같은 the일반적인 필러 단어를 무시합니다.
  • 열별 데이터 정렬은 분석기 언어를 제어하지 않습니다. 모델 문화권이 이를 제어합니다. Power BI Desktop에서 파일>옵션 및 설정>옵션>현재 파일>국가별 설정>모델 언어를 선택하여 모델 언어를 설정합니다. 자세한 내용은 FORMAT를 참조하세요.
  • 지원되는 모델 문화권은 다음과 같습니다.
    • 영어(en)
    • 프랑스어(fr)
    • 독일어(de)
    • 스페인어(es)
    • 포르투갈어(pt)
    • 러시아어(ru)
    • 아랍어(ar)
    • 터키어(tr)
    • 덴마크어(da)
    • 네덜란드어(nl)
    • 핀란드어(fi)
    • 그리스어(el)
    • 헝가리어(hu)
    • 이탈리아어(it)
    • 노르웨이어(no, nb및 nn)
    • 루마니아어(ro)
    • 스웨덴어(sv)
    • 타밀어(ta)
  • 지원되지 않는 문화권 TEXTSIMILARITY 의 경우 형태소 분석 또는 중지 단어 제거 없이 일반 소문자 토큰 변환기를 사용합니다.
  • 강조 접는 기능은 지원되지 않습니다. 예를 들어 café는 cafe과 같지 않습니다.
  • 이 함수에는 .에 대한 지속형 전체 텍스트 인덱스가 within_text_column필요합니다. 가져오기, 이중 및 Direct Lake 스토리지 모드에 대해 지원됩니다. 다른 스토리지 모드는 오류를 반환합니다.
  • 함수는 행별로 계산됩니다. 매우 큰 테이블의 계산 열에서 사용하기 전에 대표적인 워크로드를 사용하여 성능을 테스트합니다.
  • 관련성 점수 대신 부울 일치 결과가 필요한 경우 TEXTCONTAINS 를 사용합니다.

예제

가장 관련성이 큰 행 반환

다음 쿼리는 관련성 점수가 가장 높은 5개의 리뷰를 반환합니다 great refrigerator.

EVALUATE
TOPN (
    5,
    FactReviews,
    TEXTSIMILARITY ( FactReviews[Text], "great refrigerator" ), DESC
)
예시 텍스트 점수
This is a great refrigerator, keeps everything cold and quiet. 3.42
Fantastic fridge! Great cooling performance and very spacious. 2.98
Our old refrigerator broke and this new one works great. 2.54
Refrigerator is decent, not great but gets the job done. 1.72
The refrigerator section is large, freezer is okay. 1.10

행 필터링 및 순위 지정

다음 쿼리는 일치하는 리뷰 refrigerator로 결과를 제한한 다음 관련성에 따라 great refrigerator순위를 지정합니다.

EVALUATE
TOPN (
    5,
    FILTER (
        FactReviews,
        TEXTCONTAINS ( FactReviews[Text], "refrigerator" )
    ),
    TEXTSIMILARITY ( FactReviews[Text], "great refrigerator" ), DESC
)

TEXTCONTAINS 독립적으로 TEXTSIMILARITY 실행합니다. 행을 필터링해 TEXTCONTAINS 도 점수를 계산 TEXTSIMILARITY 하는 데 사용되는 인덱스 범위는 변경되지 않습니다.

예시 텍스트 점수
This is a great refrigerator - quiet, spacious, and keeps food fresh. 3.42
Fantastic fridge. Cooling performance is excellent and build quality is great. 3.01
Our old refrigerator died, but this new one works great and runs silently. 2.67
The refrigerator section is huge. Would be great if the freezer were larger. 1.94
Solid refrigerator. Not the best, but overall a great value for the price. 1.65

관련성 점수 표시

다음 쿼리는 각 제품 설명의 관련성 점수를 결과에 추가합니다.

EVALUATE
ADDCOLUMNS (
    Products,
    "Relevance score", TEXTSIMILARITY ( Products[Description], "wireless bluetooth" )
)
예시 텍스트 점수
Wireless headphones with Bluetooth 2.35
Wired headphones 0