KR101663453B1 - 문장 순서 및 구조 변경을 이용한 문장 유사도 산출 장치 및 그 방법 - Google Patents

문장 순서 및 구조 변경을 이용한 문장 유사도 산출 장치 및 그 방법 Download PDF

Info

Publication number
KR101663453B1
KR101663453B1 KR1020160098919A KR20160098919A KR101663453B1 KR 101663453 B1 KR101663453 B1 KR 101663453B1 KR 1020160098919 A KR1020160098919 A KR 1020160098919A KR 20160098919 A KR20160098919 A KR 20160098919A KR 101663453 B1 KR101663453 B1 KR 101663453B1
Authority
KR
South Korea
Prior art keywords
sentence
morpheme
type
similarity
morphemes
Prior art date
Application number
KR1020160098919A
Other languages
English (en)
Inventor
이재청
이상우
이성근
Original Assignee
주식회사 비욘드테크
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 비욘드테크 filed Critical 주식회사 비욘드테크
Priority to KR1020160098919A priority Critical patent/KR101663453B1/ko
Application granted granted Critical
Publication of KR101663453B1 publication Critical patent/KR101663453B1/ko

Links

Images

Classifications

    • G06F17/2705
    • G06F17/2755
    • G06F17/2795

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 문장 순서 및 구조 변경을 이용한 문장 유사도 산출 장치 및 그 방법에 관한 것이다. 본 발명에 따르면, 문장 유사도 산출 장치를 이용한 문장 유사도 산출 방법에 있어서, 비교 대상 문장으로부터 복수의 형태소를 추출하는 단계, 상기 추출된 복수의 형태소 각각의 문자코드값 및 위치코드값을 이용하여 상기 비교 대상 문장의 해시값을 생성하는 단계, 상기 비교 대상 문장의 해시값과 기 저장된 원본 문장의 해시값을 비교하여 상기 비교 대상 문장의 형태소 변형 유형을 판단하는 단계, 그리고 상기 형태소 변형 유형을 이용하여 상기 비교 대상 문장과 상기 원본 문장 사이의 유사도를 산출하는 단계를 포함하며, 상기 형태소 변형 유형은, 비교 대상 문장 내 형태소의 내용이 변경되는 제1 유형, 비교 대상 문장 내 형태소의 배치가 변경되는 제2 유형 및 비교 대상 문장 내 형태소가 누락되는 제3 유형을 포함한다.
이와 같이 본 발명에 따르면, 형태소 변형 유형에 따라 문장의 유사도를 산출하므로 문장간의 유사도를 정확히 파악할 수 있다. 뿐만 아니라 변형된 형태소 사이의 거리나 문장의 중심으로부터 변형된 형태소와의 거리 등을 고려하여 유사도를 산출하므로 단순한 패턴 비교를 통한 유사도 산출보다 높은 정확도의 유사도를 산출할 수 있는 장점이 있다.

Description

문장 순서 및 구조 변경을 이용한 문장 유사도 산출 장치 및 그 방법{APPARATUS OF SENTENCE SIMILARITY CALCULATION USING MORPHEME TRANSFORM TYPE AND METHOD THEREOF}
본 발명은 문장 순서 및 구조 변경을 이용한 문장 유사도 산출 장치 및 그 방법에 관한 것으로서, 더욱 상세하게는 문장 내의 형태소 변경 정보를 통해 문장간 유사도 산출의 정확성을 높이기 위한 문장 순서 및 구조 변경을 이용한 문장 유사도 산출 장치 및 그 방법에 관한 것이다.
광범위한 인터넷의 보급 등으로 인해 최근 타인의 저작물 등을 무단으로 도용하는 사안이 빈번히 발생하고 있다. 이에 따라, 표절이나 저작권 침해와 같이 타인의 권리를 침해하는 행위가 사회적으로 문제시 되고 있다. 이러한 행위는 타인의 문학작품이나 논문 등의 일부 또는 전부를 베끼거나 모방하여 마치 자신의 창작물처럼 공표하는 행위 등으로 나타나게 되는데, 저작물이나 창작물의 수가 매우 많고 그 판단 방법이 까다로워 판단이 쉽지 않은 실정이다.
특히, 문서의 경우, 문장의 일부 단어를 변경하거나 단어의 순서를 변경하는 방식을 통해 표절이나 저작권 침해 행위가 발생하므로 기타 저작물에 비해 표절이나 저작물 침해를 판단하기 어렵다. 더군다나, 문서는 많은 수의 문장으로 구성되어 있을 뿐만 아니라 문서의 수도 매우 많으므로 사람이 수작업으로 도용 여부를 판단하는 것은 불가능하다.
이에 따라, 문서 유사도 산출 알고리즘을 통해 문서의 표절이나 저작권 침해를 판단하는 방법이 연구되고 있다. 하지만, 기존의 문서 유사도를 산출하는 알고리즘은 단순히 문장의 패턴이나 단어를 비교하여 유사도를 산출하므로 정확성이 떨어지고, 문장 내에서 단어의 순서를 바꾸는 등의 방법을 통해 타인의 문서를 도용하는 경우 유사 문서를 검출하지 못하는 문제점이 있다.
본 발명의 배경이 되는 기술은 한국등록특허 제10-1626247호(2016.06.01.공고)에 개시되어 있다.
본 발명이 이루고자 하는 기술적 과제는 문장 내의 형태소 변경 정보를 통해 문장간 유사도 산출의 정확성을 높이기 위한 문장 순서 및 구조 변경을 이용한 문장 유사도 산출 장치 및 그 방법을 제공하기 위한 것이다.
이러한 기술적 과제를 이루기 위한 본 발명의 실시예에 따르면, 문장 유사도 산출 장치를 이용한 문장 유사도 산출 방법에 있어서, 비교 대상 문장으로부터 복수의 형태소를 추출하는 단계, 상기 추출된 복수의 형태소 각각의 문자코드값 및 위치코드값을 이용하여 상기 비교 대상 문장의 해시값을 생성하는 단계, 상기 비교 대상 문장의 해시값과 기 저장된 원본 문장의 해시값을 비교하여 상기 비교 대상 문장의 형태소 변형 유형을 판단하는 단계, 그리고 상기 형태소 변형 유형을 이용하여 상기 비교 대상 문장과 상기 원본 문장 사이의 유사도를 산출하는 단계를 포함하며, 상기 형태소 변형 유형은, 비교 대상 문장 내 형태소의 내용이 변경되는 제1 유형, 비교 대상 문장 내 형태소의 배치가 변경되는 제2 유형 및 비교 대상 문장 내 형태소가 누락되는 제3 유형을 포함하고, 상기 유사도를 산출하는 단계는, 상기 제1 유형으로 판단된 경우 아래의 수학식을 이용하여 상기 유사도(S)를 산출한다.
Figure 112016075553758-pat00001
여기서, Ltn은 원본 문장의 형태소의 총 개수, Aln은 비교 대상 문장의 형태소와 원본 문장의 형태소의 일치 개수, Cn은 상기 원본 문장의 중심과 상기 비교 대상 문장에서 변경된 형태소 사이에 위치하는 형태소의 개수, α는 가중치를 의미한다.
상기 제1 유형으로 판단된 경우, 기 저장된 유의어 데이터 베이스 및 반의어 데이터 베이스를 이용하여 상기 변경된 비교 대상 문장의 형태소가 대응하는 원본 문장의 형태소와 유의어 관계인지 반의어 관계인지를 판단하는 단계를 더 포함할 수 있다.
상기 가중치(α)는, 상기 유의어 관계로 판단되면 1로 설정되고, 상기 반의어 관계로 판단되면 -1로 설정될 수 있다.
상기 유사도를 산출하는 단계는, 상기 제2 유형으로 판단된 경우 아래의 수학식을 이용하여 상기 유사도(S)를 산출할 수 있다.
Figure 112016075553758-pat00002
여기서, Cd는 배치가 변경된 형태소들 사이에 위치하는 형태소의 개수를 의미한다.
상기 유사도를 산출하는 단계는, 상기 제3 유형으로 판단된 경우 아래의 수학식을 이용하여 상기 유사도(S)를 산출할 수 있다.
Figure 112016075553758-pat00003
여기서, Cc는 상기 원본 문장의 중심과 상기 비교 대상 문장에서 누락된 형태소 사이에 위치하는 형태소의 개수를 의미한다.
본 발명의 다른 실시예에 따른 문장 유사도 산출 장치는 비교 대상 문장으로부터 복수의 형태소를 추출하는 추출부, 상기 추출된 복수의 형태소 각각의 문자코드값 및 위치코드값을 이용하여 상기 비교 대상 문장의 해시값을 생성하는 생성부, 상기 비교 대상 문장의 해시값과 기 저장된 원본 문장의 해시값을 비교하여 상기 비교 대상 문장의 형태소 변형 유형을 판단하는 판단부, 그리고 상기 형태소 변형 유형을 이용하여 상기 비교 대상 문장과 상기 원본 문장 사이의 유사도를 산출하는 산출부를 포함하며, 상기 형태소 변형 유형은, 비교 대상 문장 내 형태소의 내용이 변경되는 제1 유형, 비교 대상 문장 내 형태소의 배치가 변경되는 제2 유형 및 비교 대상 문장 내 형태소가 누락되는 제3 유형을 포함하고, 상기 산출부는, 상기 제1 유형으로 판단된 경우 아래의 수학식을 이용하여 상기 유사도(S)를 산출한다.
Figure 112016075553758-pat00004
여기서, Ltn은 원본 문장의 형태소의 총 개수, Aln은 비교 대상 문장의 형태소와 원본 문장의 형태소의 일치 개수, Cn은 상기 원본 문장의 중심과 상기 비교 대상 문장에서 변경된 형태소 사이에 위치하는 형태소의 개수, α는 가중치를 의미한다.
이와 같이 본 발명에 따르면, 형태소 변형 유형에 따라 문장의 유사도를 산출하므로 문장간의 유사도를 정확히 파악할 수 있다. 뿐만 아니라 변형된 형태소 사이의 거리나 문장의 중심으로부터 변형된 형태소와의 거리 등을 고려하여 유사도를 산출하므로 단순한 패턴 비교를 통한 유사도 산출보다 높은 정확도의 유사도를 산출할 수 있는 장점이 있다.
도 1은 본 발명의 실시예에 따른 문장 유사도 산출 장치의 구성도이다.
도 2는 본 발명의 실시예에 따른 문장 유사도 산출 방법에 대한 순서도이다.
도 3은 도 2의 S220 단계를 구체적으로 설명하기 위한 도면이다.
도 4는 본 발명의 실시예에 따른 제1 유형의 판단 방법을 설명하기 위한 도면이다.
도 5는 본 발명의 실시예에 따른 제2 유형의 판단 방법을 설명하기 위한 도면이다.
도 6은 본 발명의 실시예에 따른 제3 유형의 판단 방법을 설명하기 위한 도면이다.
도 7은 본 발명의 실시예에 따른 원본 문장의 중심을 설명하기 위한 도면이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다.
그러면 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다.
우선, 도 1을 통해 본 발명의 실시예에 따른 문장 유사도 산출 장치(100)에 대하여 살펴본다. 도 1은 본 발명의 실시예에 따른 문장 유사도 산출 장치의 구성도이다.
도 1에 도시된 바와 같이, 본 발명의 실시예에 따른 문장 유사도 산출 장치(100)는 추출부(110), 생성부(120), 판단부(130) 및 산출부(140)를 포함한다.
먼저, 추출부(110)는 비교 대상 문장으로부터 복수의 형태소를 추출한다. 이때, 비교 대상 문장은 통신 연결된 사용자 단말이나 서버로부터 입력받을 수 있다.
그리고, 생성부(120)는 추출된 복수의 형태소 각각의 문자코드값 및 위치코드값을 이용하여 비교 대상 문장의 해시값을 생성한다.
다음으로, 판단부(130)는 비교 대상 문장의 해시값과 기 저장된 원본 문장의 해시값을 비교하여 비교 대상 문장의 형태소 변형 유형을 판단한다.
여기서, 형태소 변형 유형은 비교 대상 문장 내 형태소의 내용이 변경되는 제1 유형, 비교 대상 문장 내 형태소의 배치가 변경되는 제2 유형 및 비교 대상 문장 내 형태소가 누락되는 제3 유형을 포함한다.
한편, 비교 대상 문장의 형태소 변형 유형이 제1 유형으로 판단된 경우, 판단부(130)는 기 저장된 유의어 데이터 베이스 및 반의어 데이터 베이스를 이용하여 변경된 비교 대상 문장의 형태소가 대응하는 원본 문장의 형태소와 유의어 관계인지 반의어 관계인지를 판단한다.
다음으로, 산출부(140)는 형태소 변형 유형을 이용하여 비교 대상 문장과 원본 문장 사이의 유사도를 산출한다. 구체적으로, 산출부(140)는 각 형태소 변형 유형 별로 기 설정된 수학식을 이용하여 비교 대상 문장과 원본 문장 사이의 유사도를 산출한다.
다음으로, 도 2 내지 도 6을 통해 본 발명의 실시예에 따른 문장 유사도 산출 장치(100)를 이용한 문장 유사도 산출 방법에 대하여 살펴본다. 도 2는 본 발명의 실시예에 따른 문장 유사도 산출 방법에 대한 순서도이다.
우선, 추출부(110)는 비교 대상 문장으로부터 복수의 형태소를 추출한다(S210).
예를 들어, 비교 대상 문장이 "산에 꽃이 가득 피었다."라고 가정한다. 그러면, 추출부(110)는 비교 대상 문장으로부터 "산", "에", "꽃", "이", "가득", "피?,"었?,"다"의 8개 형태소를 추출할 수 있다.
그러면, 생성부(120)는 추출된 복수의 형태소 각각의 문자코드값 및 위치코드값을 이용하여 비교 대상 문장의 해시값을 생성한다(S220). 도 3은 도 2의 S220 단계를 구체적으로 설명하기 위한 도면이다.
구체적으로, 생성부(120)는 도 3에 도시된 문자코드표로부터 형태소의 문자코드값을 추출하고 문장 내에 형태소의 위치로부터 위치코드값을 추출할 수 있다.
예를 들어, "강"이라는 형태소가 비교 대상 문장의 4번째에 위치한다고 가정한다. 도 3을 참조하면, 생성부(120)는 "강"의 문자코드값으로 "B0AD"를 추출하고, 비교 대상 문장의 4번째에 위치하므로 위치코드값으로 "04"가 추출할 수 있다. 그러면, 생성부(120)는 형태소 "강"의 해시값으로 "B0AD04"를 생성한다.
즉, 생성부(120)는 상기 예시와 같이 복수의 형태소 각각에 대응하는 해시값을 배열하여 비교 대상 문장의 해시값을 생성할 수 있다.
다음으로, 판단부(130)는 비교 대상 문장의 해시값과 기 저장된 원본 문장의 해시값을 비교한다(S230). 구체적으로, 판단부(130)는 비교 대상 문장의 해시값과 기 저장된 원본 문장의 해시값 중 서로 상이한 해시값이 존재하는지를 판단한다.
여기서, 원본 문장의 해시값은 S220 단계의 비교 대상 문장 해시값 생성과 같은 방법으로 생성되어 본 발명의 실시예에 따른 문장 유사도 산출 장치(100)에 저장된다.
그러면, 판단부(130)는 비교 대상 문장의 형태소 변형 유형을 판단한다(S240).
이때, 형태소 변형 유형은, 비교 대상 문장 내 형태소의 내용이 변경되는 제1 유형, 비교 대상 문장 내 형태소의 배치가 변경되는 제2 유형 및 비교 대상 문장 내 형태소가 누락되는 제3 유형을 포함한다.
그러면, 도 4 내지 도 6을 통해 본 발명의 실시예에 따른 판단부(130)가 제1 내지 제3 유형을 판단하는 방법에 대해 구체적으로 살펴본다. 도 4는 본 발명의 실시예에 따른 제1 유형의 판단 방법을 설명하기 위한 도면이고, 도 5는 본 발명의 실시예에 따른 제2 유형의 판단 방법을 설명하기 위한 도면이고, 도 6은 본 발명의 실시예에 따른 제3 유형의 판단 방법을 설명하기 위한 도면이다.
우선, 판단부(130)는 S230 단계의 비교 결과, 비교 대상 문장과 원본 문장의 해시값 중 위치코드값은 동일하나 문자코드값이 상이한 형태소의 해시값이 존재한다고 판단되면, 비교 대상 문장의 형태소 변형 유형을 제1 유형으로 판단한다.
예를 들어, 도 4의 (a) 및 (b)에 도시된 바와 같이, 원본 문장의 경우 A 내지 G의 형태소가 순서대로 나열되어 있다고 가정한다. 이때, 도 4의 (a)의 비교 대상 문장은 4번째 배열의 형태소가 K이고, 도 4의 (b)의 비교 대상 문장은 1번째에 배열된 형태소가 K임을 알 수 있다.
즉, 도 4의 (a)의 4번째 형태소 및 (b)의 1번째 형태소의 해시값 중 문자코드값이 이에 대응하는 원본 문장의 해시값과 상이하다. 이와 같은 경우, 판단부(130)는 비교 대상 문장들의 형태소 변형 유형을 제1 유형으로 판단한다.
다음으로, 판단부(130)는 S230 단계의 비교 결과, 비교 대상 문장과 원본 문장의 해시값 중 문자코드값은 동일하나 위치코드값이 상이한 형태소의 해시값이 존재한다고 판단되면, 비교 대상 문장의 형태소 변형 유형을 제2 유형으로 판단한다.
예를 들어, 도 5의 (a) 및 (b)에 도시된 바와 같이, 원본 문장의 경우 A 내지 G의 형태소가 순서대로 나열되어 있다고 가정한다. 도 5의 (a)의 경우, 원본 문장에는 C가 3번째, D가 4번째에 위치하는 반면, 비교 대상 문장에는 C가 4번째, D가 3번째에 위치시키고 있다. 또한, 도 5의 (b)의 경우, 원본 문장에는 A가 1번째, F가 6번째에 위치하는 반면, 비교 대상 문장에는 A가 6번째, F가 1번째에 위치하고 있다.
즉, 도 5의 (a) 및 (b)의 형태소 중 어느 두 개의 형태소의 해시값 중 위치코드값이 이에 대응하는 원본 문장의 해시값과 상이하다. 이와 같은 경우, 판단부(130)는 도 5에 도시된 비교 대상 문장들의 형태소 변형 유형을 제2 유형으로 판단한다.
다음으로, 판단부(130)는 S230 단계의 비교 결과, 원본 문장의 해시값 중 어느 하나가 비교 대상 문장에 존재하지 않는다고 판단되면, 비교 대상 문장의 형태소 변형 유형을 제3 유형으로 판단한다.
예를 들어, 도 6의 (a) 및 (b)에 도시된 바와 같이, 원본 문장의 경우 A 내지 G의 형태소가 순서대로 나열되어 있다고 가정한다. 하지만, 도 6의 (a)의 경우, 비교 대상 문장에는 원본 문장의 5번째에 위치하는 형태소 E가 존재하지 않으며, 도 6의 (b)의 경우, 비교 대상 문장에는 원본 문장의 7번째에 위치하는 형태소 G가 존재하지 않는다.
즉, 비교 대상 문장에는 원본 문장의 7개의 형태소 중 어느 하나의 형태소의 해시값이 누락되어 있다. 이와 같은 경우, 판단부(130)는 도 6에 도시된 비교 대상 문장의 형태소 변형 유형을 제3 유형으로 판단한다.
한편, 판단부(130)는 비교 대상 문장의 형태소 변형 유형을 제1 유형으로 판단한 경우, 기 저장된 유의어 데이터 베이스 및 반의어 데이터 베이스를 이용하여 변경된 비교 대상 문장의 형태소가 대응하는 원본 문장의 형태소와 유의어 관계인지 반의어 관계인지를 판단한다(S250).
구체적으로, 판단부(130)는 원본 문장 및 비교 대상 문장의 문자코드값을 기 저장된 유의어 데이터 베이스 및 반의어 데이터 베이스와 비교한다. 그리고, 판단부(130)는 양 문자코드값이 유의어 데이터 베이스에 존재하는 경우 유의어 관계로 판단하고, 양 문자코드값이 반의어 데이터 베이스에 존재하는 경우 반의어 관계로 판단할 수 있다.
이때, 유의어 데이터 베이스 및 반의어 데이터 베이스는 본 발명의 실시예에 따른 문장 유사도 산출 장치(100)에 기 저장될 수 있다.
그러면, 산출부(140)는 형태소 변형 유형을 이용하여 비교 대상 문장과 원본 문장 사이의 유사도를 산출한다(S260).
우선, 제1 유형으로 판단된 경우, 산출부(140)는 아래의 수학식 1을 이용하여 유사도(S)를 산출한다.
Figure 112016075553758-pat00005
여기서, Ltn은 원본 문장의 형태소의 총 개수, Aln은 비교 대상 문장의 형태소와 원본 문장의 형태소의 일치 개수, Cn은 원본 문장의 중심과 비교 대상 문장에서 변경된 형태소 사이에 위치하는 형태소의 개수, α는 가중치를 의미한다.
이때, 산출부(140)는 S250단계에서 유의어 관계로 판단된 경우, 가중치(α)를 1로 설정하고, 반의어 관계로 판단된 경우, 가중치(α)를 -1로 설정한다.
예를 들어, 원본 문장의 "수입"이라는 단어를 비교대상문장에서는 "지출"라는 단어로 변경한 경우, 다른 모든 형태소가 동일하다고 하더라도 유의어 가중치(α)는 -1로 설정된다.
도 7은 본 발명의 실시예에 따른 원본 문장의 중심을 설명하기 위한 도면이다. 도 7의 (a)는 형태소의 개수가 홀수인 경우 원본 문장의 중심을 설명하기 위한 도면이고, 도 7의 (b)는 형태소의 개수가 짝수인 경우 원본 문장의 중심을 설명하기 위한 도면이다.
예를 들어, 원본 문장이 도 7의 (a)와 같은 경우, 형태소의 개수는 7개가 된다. 그러면, 원본 문장의 중심은 4번째 형태소인 "은"이 된다. 이 경우, 산출부(140)는 5번째 형태소인 "고가"와 원본 문장의 중심 사이에 위치하는 형태소의 개수를 0.5개로 산출하며, 6번째 형태소인 "이"와 원본 문장의 중심 사이에 위치하는 형태소의 개수를 1.5개로 산출한다.
반면, 원본 문장이 도 7의 (b)와 같은 경우, 형태소의 개수는 8개가 된다. 그러면, 원본 문장의 중심은 4번째 형태소인 "제품"과 5번째 형태소인 "이"사이가 된다. 이 경우, 산출부(140)는 6번째 형태소인 "출시"와 원본 문장의 중심 사이에 위치하는 형태소의 개수를 1개로 산출한다.
그리고, 비교 대상 문장의 형태소와 원본 문장의 형태소의 일치 개수는 문자코드값 및 위치코드값이 모두 일치하는 형태소의 개수를 말한다. 예를 들어, 원본 문장의 형태소 해시값이 B0AD04이고, 비교 대상 문장의 형태소 해시값이 B0AD01인 경우, 두 형태소의 문자코드값은 일치하나 위치코드값이 불일치하므로, 해당 형태소는 비교 대상 문장의 형태소와 원본 문장의 형태소의 일치 개수(Aln)에 카운팅되지 않는다.
그러면, 제1 유형으로 판단된 경우 유사도 산출 과정을 도 4를 통해 살펴보도록 한다.
도 4의 (a)에서 형태소 D와 K가 서로 유의어 관계라고 가정한다. 그러면, 원본 문장의 형태소의 총 개수(Ltn)은 7, 비교 대상 문장의 형태소와 원본 문장의 형태소의 일치 개수(Aln)는 6, 원본 문장의 중심과 비교 대상 문장에서 변경된 형태소 사이에 위치하는 형태소의 개수(Cn)는 0, 가중치(α)는 1이 된다. 따라서, 유사도는 약 83.67%가 된다.
반면, 도 4의 (b)에서 형태소 D와 K가 서로 유의어 관계라고 가정한다. 그러면, 원본 문장의 형태소의 총 개수(Ltn)은 7, 비교 대상 문장의 형태소와 원본 문장의 형태소의 일치 개수(Aln)는 6, 가중치(α)는 1이 된다. 이때, 원본 문장의 중심이 4번째 형태소가 되므로, 형태소 D를 0.5개로 판단하여 원본 문장의 중심과 비교 대상 문장에서 변경된 형태소 사이에 위치하는 형태소의 개수(Cn)는 2.5가 된다. 따라서, 유사도는 약 75.51%가 된다.
즉, 변경된 형태소가 문장의 중심으로부터 멀어질수록 유사도는 떨어진다.
다음으로, 제2 유형으로 판단된 경우, 산출부(140)는 아래의 수학식 2를 이용하여 유사도(S)를 산출한다.
Figure 112016075553758-pat00006
여기서, Cd는 배치가 변경된 형태소들 사이에 위치하는 형태소의 개수를 의미한다.
그러면, 제1 유형으로 판단된 경우 유사도 산출 과정을 도 5를 통해 살펴보도록 한다. 도 5의 (a)에서, 원본 문장의 형태소의 총 개수(Ltn)은 7, 비교 대상 문장의 형태소와 원본 문장의 형태소의 일치 개수(Aln)는 6, 배치가 변경된 형태소들 사이에 위치하는 형태소의 개수(Cd)는 0, 가중치(α)는 1이 된다. 따라서, 유사도는 약 68.03%가 된다.
반면, 도 5의 (b)에서 원본 문장의 형태소의 총 개수(Ltn)은 7, 비교 대상 문장의 형태소와 원본 문장의 형태소의 일치 개수(Aln)는 6, 배치가 변경된 형태소들 사이에 위치하는 형태소의 개수(Cd)는 4, 가중치(α)는 1이 된다. 따라서, 유사도는 약 54.42%가 된다.
즉, 배치가 변경된 형태소 사이가 멀어질수록 유사도는 떨어진다.
그리고, 제3 유형으로 판단된 경우, 산출부(140)는 아래의 수학식 3을 이용하여 유사도(S)를 산출한다.
Figure 112016075553758-pat00007
여기서, Cc는 원본 문장의 중심과 상기 비교 대상 문장에서 누락된 형태소 사이에 위치하는 형태소의 개수를 의미한다.
그러면, 제3 유형으로 판단된 경우 유사도 산출 과정을 도 6을 통해 살펴보도록 한다. 도 6의 (a)에서, 원본 문장의 형태소의 총 개수(Ltn)은 7, 비교 대상 문장의 형태소와 원본 문장의 형태소의 일치 개수(Aln)는 6이 된다. 이때, 원본 문장의 중심이 4번째 형태소가 되므로, 형태소 D를 0.5개로 판단하여 원본 문장의 중심과 비교 대상 문장에서 누락된 형태소 사이에 위치하는 형태소의 개수(Cc)는 0.5가 된다. 따라서, 유사도는 약 81.63%가 된다.
반면, 도 6의 (b)에서, 원본 문장의 형태소의 총 개수(Ltn)은 7, 비교 대상 문장의 형태소와 원본 문장의 형태소의 일치 개수(Aln)는 6이 된다. 이때, 원본 문장의 중심이 4번째 형태소가 되므로, 형태소 D를 0.5개로 판단하여 원본 문장의 중심과 비교 대상 문장에서 누락된 형태소 사이에 위치하는 형태소의 개수(Cc)는 2.5가 된다. 따라서, 유사도는 약 73.47%가 된다.
즉, 누락된 형태소가 문장의 중심으로부터 멀어질수록 유사도는 떨어진다.
본 발명의 실시예에 따르면, 상기의 문장 유사도 산출 방법을 문장마다 반복하으로써 문서 전체의 유사도를 판단할 수 있다. 그리고, 본 발명의 실시예에 따른 문장 유사도 산출 장치(100)는 문장 유사도 산출 방법을 실행하는 프로그램이 기록된 컴퓨터 판독이 가능한 기록매체로 구현될 수 있다.
본 발명의 실시예에 따르면, 형태소 변형 유형에 따라 문장의 유사도를 산출하므로 문장간의 유사도를 정확히 파악할 수 있다. 뿐만 아니라 변형된 형태소 사이의 거리나 문장의 중심으로부터 변형된 형태소와의 거리 등을 고려하여 유사도를 산출하므로 단순한 패턴 비교를 통한 유사도 산출보다 높은 정확도의 유사도를 산출할 수 있는 장점이 있다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다.
100 : 문장 유사도 산출 장치 110 : 추출부
120 : 생성부 130 : 판단부
140 : 산출부

Claims (10)

  1. 문장 유사도 산출 장치를 이용한 문장 유사도 산출 방법에 있어서,
    비교 대상 문장으로부터 복수의 형태소를 추출하는 단계,
    상기 추출된 복수의 형태소 각각의 문자코드값 및 위치코드값을 이용하여 상기 비교 대상 문장의 해시값을 생성하는 단계,
    상기 비교 대상 문장의 해시값과 기 저장된 원본 문장의 해시값을 비교하여 상기 비교 대상 문장의 형태소 변형 유형을 판단하는 단계, 그리고
    상기 형태소 변형 유형을 이용하여 상기 비교 대상 문장과 상기 원본 문장 사이의 유사도를 산출하는 단계를 포함하며,
    상기 형태소 변형 유형은,
    비교 대상 문장 내 형태소의 내용이 변경되는 제1 유형, 비교 대상 문장 내 형태소의 배치가 변경되는 제2 유형 및 비교 대상 문장 내 형태소가 누락되는 제3 유형을 포함하고,
    상기 제1 유형으로 판단된 경우,
    기 저장된 유의어 데이터 베이스 및 반의어 데이터 베이스를 이용하여 상기 변경된 비교 대상 문장의 형태소가 대응하는 원본 문장의 형태소와 유의어 관계인지 반의어 관계인지를 판단하는 단계를 더 포함하며,
    상기 유사도를 산출하는 단계는,
    상기 제1 유형으로 판단된 경우 아래의 수학식을 이용하여 상기 유사도(S)를 산출하는 문장 유사도 산출 방법:
    Figure 112016087306353-pat00008

    여기서, Ltn은 원본 문장의 형태소의 총 개수, Aln은 비교 대상 문장의 형태소와 원본 문장의 형태소의 일치 개수, Cn은 상기 원본 문장의 중심과 상기 비교 대상 문장에서 변경된 형태소 사이에 위치하는 형태소의 개수, α는 가중치를 의미하고, 상기 가중치(α)는, 상기 유의어 관계로 판단되면 1로 설정되고, 상기 반의어 관계로 판단되면 -1로 설정된다.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    상기 유사도를 산출하는 단계는,
    상기 제2 유형으로 판단된 경우 아래의 수학식을 이용하여 상기 유사도(S)를 산출하는 문장 유사도 산출 방법:
    Figure 112016075553758-pat00009

    여기서, Cd는 배치가 변경된 형태소들 사이에 위치하는 형태소의 개수를 의미한다.
  5. 제1항에 있어서,
    상기 유사도를 산출하는 단계는,
    상기 제3 유형으로 판단된 경우 아래의 수학식을 이용하여 상기 유사도(S)를 산출하는 문장 유사도 산출 방법:
    Figure 112016075553758-pat00010

    여기서, Cc는 상기 원본 문장의 중심과 상기 비교 대상 문장에서 누락된 형태소 사이에 위치하는 형태소의 개수를 의미한다.
  6. 비교 대상 문장으로부터 복수의 형태소를 추출하는 추출부,
    상기 추출된 복수의 형태소 각각의 문자코드값 및 위치코드값을 이용하여 상기 비교 대상 문장의 해시값을 생성하는 생성부,
    상기 비교 대상 문장의 해시값과 기 저장된 원본 문장의 해시값을 비교하여 상기 비교 대상 문장의 형태소 변형 유형을 판단하는 판단부, 그리고
    상기 형태소 변형 유형을 이용하여 상기 비교 대상 문장과 상기 원본 문장 사이의 유사도를 산출하는 산출부를 포함하며,
    상기 형태소 변형 유형은,
    비교 대상 문장 내 형태소의 내용이 변경되는 제1 유형, 비교 대상 문장 내 형태소의 배치가 변경되는 제2 유형 및 비교 대상 문장 내 형태소가 누락되는 제3 유형을 포함하고,
    상기 판단부는,
    상기 제1 유형으로 판단된 경우, 기 저장된 유의어 데이터 베이스 및 반의어 데이터 베이스를 이용하여 상기 변경된 비교 대상 문장의 형태소가 대응하는 원본 문장의 형태소와 유의어 관계인지 반의어 관계인지를 판단하며,
    상기 산출부는,
    상기 제1 유형으로 판단된 경우 아래의 수학식을 이용하여 상기 유사도(S)를 산출하는 문장 유사도 산출 장치:
    Figure 112016087306353-pat00011

    여기서, Ltn은 원본 문장의 형태소의 총 개수, Aln은 비교 대상 문장의 형태소와 원본 문장의 형태소의 일치 개수, Cn은 상기 원본 문장의 중심과 상기 비교 대상 문장에서 변경된 형태소 사이에 위치하는 형태소의 개수, α는 가중치를 의미하고, 상기 가중치(α)는, 상기 유의어 관계로 판단되면 1로 설정되고, 상기 반의어 관계로 판단되면 -1로 설정된다.
  7. 삭제
  8. 삭제
  9. 제6항에 있어서,
    상기 산출부는,
    상기 제2 유형으로 판단된 경우 아래의 수학식을 이용하여 상기 유사도(S)를 산출하는 문장 유사도 산출 장치:
    Figure 112016075553758-pat00012

    여기서, Cd는 배치가 변경된 형태소들 사이에 위치하는 형태소의 개수를 의미한다.
  10. 제6항에 있어서,
    상기 산출부는,
    상기 제3 유형으로 판단된 경우 아래의 수학식을 이용하여 상기 유사도(S)를 산출하는 문장 유사도 산출 장치:
    Figure 112016075553758-pat00013

    여기서, Cc는 상기 원본 문장의 중심과 상기 비교 대상 문장에서 누락된 형태소 사이에 위치하는 형태소의 개수를 의미한다.
KR1020160098919A 2016-08-03 2016-08-03 문장 순서 및 구조 변경을 이용한 문장 유사도 산출 장치 및 그 방법 KR101663453B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160098919A KR101663453B1 (ko) 2016-08-03 2016-08-03 문장 순서 및 구조 변경을 이용한 문장 유사도 산출 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160098919A KR101663453B1 (ko) 2016-08-03 2016-08-03 문장 순서 및 구조 변경을 이용한 문장 유사도 산출 장치 및 그 방법

Publications (1)

Publication Number Publication Date
KR101663453B1 true KR101663453B1 (ko) 2016-10-07

Family

ID=57145605

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160098919A KR101663453B1 (ko) 2016-08-03 2016-08-03 문장 순서 및 구조 변경을 이용한 문장 유사도 산출 장치 및 그 방법

Country Status (1)

Country Link
KR (1) KR101663453B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100835706B1 (ko) * 2007-07-09 2008-06-05 한국과학기술정보연구원 자동 색인을 위한 한국어 형태소 분석 시스템 및 그 방법
KR20100071287A (ko) * 2008-12-19 2010-06-29 테크놀러지리딩퓨처(주) 문서 표절 탐색 방법 및 장치
KR20120001053A (ko) * 2010-06-29 2012-01-04 (주)워드워즈 문서 감성 분석 시스템 및 그 방법
KR101626247B1 (ko) * 2015-01-06 2016-06-01 인하대학교 산학협력단 온라인 서비스 가능한 유의어 사전 기반의 표절문서 탐색 시스템

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100835706B1 (ko) * 2007-07-09 2008-06-05 한국과학기술정보연구원 자동 색인을 위한 한국어 형태소 분석 시스템 및 그 방법
KR20100071287A (ko) * 2008-12-19 2010-06-29 테크놀러지리딩퓨처(주) 문서 표절 탐색 방법 및 장치
KR20120001053A (ko) * 2010-06-29 2012-01-04 (주)워드워즈 문서 감성 분석 시스템 및 그 방법
KR101626247B1 (ko) * 2015-01-06 2016-06-01 인하대학교 산학협력단 온라인 서비스 가능한 유의어 사전 기반의 표절문서 탐색 시스템

Similar Documents

Publication Publication Date Title
Lee et al. An abusive text detection system based on enhanced abusive and non-abusive word lists
KR101663454B1 (ko) 키워드 가중치를 이용한 문장 유사도 산출 장치 및 그 방법
Van Der Goot et al. Bleaching text: Abstract features for cross-lingual gender prediction
US7269544B2 (en) System and method for identifying special word usage in a document
Taleby Ahvanooey et al. A comparative analysis of information hiding techniques for copyright protection of text documents
JP5387870B2 (ja) テキスト含意判定装置、テキスト含意判定方法、及びプログラム
US9805025B2 (en) Standard exact clause detection
Chang et al. Practical linguistic steganography using contextual synonym substitution and a novel vertex coding method
JP7251181B2 (ja) 対訳処理方法および対訳処理プログラム
Kanerva et al. Syntactic n-gram collection from a large-scale corpus of internet finnish
CN104866478B (zh) 恶意文本的检测识别方法及装置
WO2019037258A1 (zh) 信息推荐的装置、方法、系统及计算机可读存储介质
Büchler et al. Towards a historical text re-use detection
CN106649749B (zh) 一种基于汉语音位特征的文本查重方法
WO2020134626A1 (zh) 基于区块链的作品存证方法、系统、装置及设备
Bellaachia et al. Hg-rank: A hypergraph-based keyphrase extraction for short documents in dynamic genre
Gupta et al. Plagiarism detection in text documents using sentence bounded stop word n-grams
Dubuisson Duplessis et al. Utterance retrieval based on recurrent surface text patterns
US20080040352A1 (en) Method for creating a disambiguation database
Barteld Detecting spelling variants in non-standard texts
WO2019163642A1 (ja) 要約評価装置、方法、プログラム、及び記憶媒体
US20190042568A1 (en) Method, apparatus, and computer-readable medium for determining a data domain associated with data
Kiperwasser et al. Semi-supervised dependency parsing using bilexical contextual features from auto-parsed data
KR101663453B1 (ko) 문장 순서 및 구조 변경을 이용한 문장 유사도 산출 장치 및 그 방법
Yahya et al. Arabic text categorization based on Arabic Wikipedia

Legal Events

Date Code Title Description
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190717

Year of fee payment: 4