텍스트 유사성 검사기
실제 n-gram Jaccard 유사성과 단어 수준 LCS 중첩 점수를 사용하여 두 텍스트를 비교하고 일치하는 구절을 나란히 강조 표시합니다.
결과
이 도구는 모호한 "유사해 보이는" 휴리스틱이 아닌 두 개의 독립적이고 실제이며 잘 문서화된 알고리즘을 사용하여 붙여넣은 두 개의 텍스트를 비교합니다. 첫 번째는 n-gram Jaccard 유사성입니다. 각 텍스트는 단어로 토큰화된 다음 n개의 연속 단어가 겹치는 부분으로 분할됩니다(n-gram; 기본값은 n=3, trigram이며 1에서 5까지 조정할 수 있습니다). 두 결과 n-gram 세트의 Jaccard 인덱스(교집합 크기를 합집합 크기로 나눈 값)는 정보 검색 및 거의 중복 감지에 사용되는 표준 세트 기반 유사성 측정값입니다. n이 높을수록 더 긴 공유 문구를 포착하고 정확한 문구에 대해 더 엄격합니다. n이 낮을수록 더 관대하고 구조가 다른 문장 사이에서도 느슨한 단어 중복을 포착합니다.
두 번째 알고리즘은 두 단어 시퀀스에 대한 실제 O(n·m) 동적 프로그래밍 테이블로 계산된 실제 단어 수준 LCS(Longest Common Subsequence)입니다. 이는 근사치가 아닌 diff 도구에서 사용하는 것과 동일한 교과서 알고리즘입니다. N-gram 점수와 달리 LCS는 일치하는 단어가 연속될 것을 요구하지 않으므로 공유된 구문 사이에서 문장의 순서가 변경되거나 가볍게 편집된 경우에도 중복을 캡처합니다. 중복 비율은 두 텍스트의 평균 길이를 기준으로 LCS 길이에서 파생됩니다. 그런 다음 DP 테이블을 역추적하여 각 텍스트의 어떤 단어가 가장 긴 공통 순서에 포함되었는지 정확하게 식별합니다. 이는 눈에 띄는 기능입니다. 해당 단어는 원래 간격, 줄 바꿈 및 구두점을 그대로 유지하면서 원본 텍스트에 다시 매핑되고 강조 표시된 범위로 나란히 렌더링되므로 단순한 숫자를 신뢰하는 대신 어떤 구절이 겹치는지 정확하게 확인할 수 있습니다.
여기서는 범위와 정직성이 중요합니다. 이는 표절 탐지기가 아닌 두 텍스트 비교 도구입니다. 인터넷 연결도 없고, 검색 색인도 없으며, 확인할 다른 사람의 콘텐츠에 대한 데이터베이스도 없습니다. 붙여넣은 두 텍스트가 서로 얼마나 유사한지 알려줄 수 있을 뿐입니다. 따라서 초안 개정판을 비교하고, 의역이나 재작성이 실제로 얼마나 변경되었는지 확인하거나, 자신의 페이지에서 거의 중복된 콘텐츠를 찾아내는 데 매우 적합합니다. 단어 일치는 대소문자를 구분하지 않으며 O(n·m) LCS 테이블은 수백만 단어 쌍 셀로 제한됩니다. 매우 큰 텍스트(대략 수천 단어를 합친 것)의 경우 정확한 LCS 및 강조 표시 단계는 일반 언어 메모로 건너뛰는 반면, 선형 시간만 소요되는 n-gram Jaccard 점수는 항상 전체 텍스트에 대해 계산됩니다. 모든 것이 브라우저에서 로컬로 실행됩니다. 어떤 텍스트도 기기 밖으로 나가지 않습니다.