KR101414492B1 - 유사문장 검색장치 및 그 검색방법 - Google Patents

유사문장 검색장치 및 그 검색방법 Download PDF

Info

Publication number
KR101414492B1
KR101414492B1 KR1020110060206A KR20110060206A KR101414492B1 KR 101414492 B1 KR101414492 B1 KR 101414492B1 KR 1020110060206 A KR1020110060206 A KR 1020110060206A KR 20110060206 A KR20110060206 A KR 20110060206A KR 101414492 B1 KR101414492 B1 KR 101414492B1
Authority
KR
South Korea
Prior art keywords
sentence
similarity
unit
sentences
input
Prior art date
Application number
KR1020110060206A
Other languages
English (en)
Other versions
KR20130000448A (ko
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 KR1020110060206A priority Critical patent/KR101414492B1/ko
Publication of KR20130000448A publication Critical patent/KR20130000448A/ko
Application granted granted Critical
Publication of KR101414492B1 publication Critical patent/KR101414492B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

유사문장 검색장치 및 그 검색방법이 개시된다. 본 발명의 실시예에 따른 유사문장 검색장치는, 사용자로부터 문장을 입력받는 입력부; 말뭉치를 데이터베이스로 저장하는 말뭉치 데이터베이스부; 입력부를 통해 입력된 문장에 대하여 유사도 계산을 위한 언어처리를 수행하는 언어 처리부; 말뭉치 데이터베이스부에 저장된 후보 말뭉치들에 대해 언어 처리부에 의해 언어처리된 문장과의 유사도를 검색하여 유사도가 일정값 이상인 문장을 추출하는 유사도 검색부; 및 유사도 검색부에 의해 추출된 문장이 다수인 경우, 추출된 문장들의 순위를 결정하는 순위 결정부를 포함하는 것을 특징으로 한다.

Description

유사문장 검색장치 및 그 검색방법{Apparatus and Method for Searching Similar Sentence}
본 발명은 유사문장 검색장치 및 그 검색방법에 관한 것이다. 보다 상세하게는 사용자로부터 입력받은 문장에 대응하여 데이터베이스에 저장된 말뭉치로부터 유사한 문장들을 검색하고, 검색된 문장들에 대한 문장 순위를 재조정하여 출력할 수 있는 유사문장 검색장치 및 그 검색방법에 관한 것이다.
일반적인 기계 번역 시스템의 경우, 현재로서는 자연스러운 번역 품질을 얻을 수 없다. 그 이유는 원시 언어 분석 기술이 아직 완벽하지 않으며, 원시언어를 목표언어로 변환하는 변환 기술 또한 현재로서는 미흡한 실정이기 때문이다.
이에 대하여 번역 지원 시스템은, 완전 자동 번역 기능은 제공하지는 못하지만, 사용자가 번역하려는 문장과 가장 유사한 문장을 데이터베이스에서 검색하여 제시함으로써 사용자가 번역을 하는데 많은 도움을 준다는 점에서 현재의 기계 번역 시스템보다 훨씬 실용성이 높다고 할 수 있다.
하지만, 일반적인 번역 지원 시스템은, 단순하게 입력 원문에 나타나는 단어들에 대한 스트링 매칭 기법만을 사용하므로, 표면적으로 매칭되는 문장만을 출력할 수밖에 없다는 단점을 여전히 지니고 있다.
최근에는, 이와 같은 문제점을 해결하고, 문장의 구조적, 문법적인 성분을 고려하여 보다 양질의 결과를 실현시키기 위하여 단순히 표층 단어 위주의 매칭뿐만 아니라, 형태소 분석 결과 및 품사에 따라 상이한 가중치 등을 적용하여 유사 문장을 추출하는 방법이 개발되었다.
그런데, 이와 같은 유사문장 검색방법에서는 유사도가 설정값 이상인 문장들 즉, 유사한 것으로 판단되는 문장들이 다수 발생할 수 있다. 사용자에 의해 입력된 문장과 유사한 것으로 판단되는 문장이 하나인 경우에는 해당 문장을 출력하면 되지만, 유사도가 설정된 값 이상인 문장들이 다수인 경우 즉, 유사도가 일정 확률 이상인 문장들이 다수인 경우에는 어느 문장을 최우선 순위로 하여 출력하여야 하는지가 문제될 수 있다.
본 발명은 상기와 같은 문제점을 해결하기 위하여 창안된 것으로서, 입력된 문장과 유사한 문장이 다수인 경우, 문장간 유사도 측정 시 검색된 문장들의 순위를 재조정하여 입력문장에 가장 유사한 문장을 상위에 출력함으로써 유사문장 검색 기술의 성능을 향상시킬 수 있는 유사문장 검색장치 및 그 검색방법을 제공하는 것을 목적으로 한다.
그러나 본 발명의 목적은 상기에 언급된 사항으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상기 목적들을 달성하기 위하여, 본 발명의 한 관점에 따른 유사문장 검색장치는 사용자로부터 문장을 입력받는 입력부; 말뭉치를 데이터베이스로 저장하는 말뭉치 데이터베이스부; 입력부를 통해 입력된 문장에 대하여 유사도 계산을 위한 언어처리를 수행하는 언어 처리부; 말뭉치 데이터베이스부에 저장된 후보 말뭉치들에 대해 언어 처리부에 의해 언어처리된 문장과의 유사도를 검색하여 유사도가 일정값 이상인 문장을 추출하는 유사도 검색부; 및 유사도 검색부에 의해 추출된 문장이 다수인 경우, 추출된 문장들의 순위를 결정하는 순위 결정부를 포함하는 것을 특징으로 한다.
바람직하게, 상기 언어 처리부는, 입력부를 통해 입력된 문장에 대해 의미가 없는 단어들을 제거하는 가비지(garbage) 제거부; 가비지 제거부에 의해 가비지가 제거된 문장에 대해 형태소 품사 태거를 수행하는 형태소 품사 태거부; 상기 문장의 문형 및 시제를 확인하는 문형 및 시제 확인부; 상기 형태소 품사태거가 수행된 문장에 대해 키워드를 추출하는 키워드 추출부; 상기 문장에 대해 용언의 기본형을 검색하는 용언 기본형 검색부; 및 상기 문장에 포함된 고유명사에 대해 클래스 태깅을 수행하는 클래스 태깅부를 포함할 수 있다.
바람직하게, 상기 유사도 검색부는, 상기 언어처리된 문장과 말뭉치 데이터베이스부의 후보 말뭉치들들에 대해 유사도를 계산하는 유사도 계산부; 상기 후보 말뭉치들 중 유사도 계산부에 의해 계산된 유사도가 일정값 이상인 문장을 추출하는 문장 추출부; 및 상기 추출된 문장의 클래스에 대해 입력부를 통해 입력된 문장에서의 클래스 엔트리로 복원하는 클래스 복원부를 포함할 수 있다.
바람직하게, 상기 순위 결정부는, 계산된 상기 유사도의 확률과 추출된 상기 문장의 빈도, n-gram 확률값, 상기 입력된 문장의 n-gram, 추출된 상기 문장의 n-gram의 유사도 중 적어도 하나에 기초하여 상기 추출된 문장들의 순위를 결정할 수 있다.
바람직하게, 상기 순위 결정부는, 추출된 상기 문장들 사이의 유사도를 측정하여 측정된 상기 유사도가 일정값 이상인 문장들을 제거한 후 그룹화하는 그룹핑부를 더 포함할 수도 있다.
본 발명의 다른 한 관점에 따른 유사문장 검색방법은 사용자로부터 문장을 입력받는 단계; 입력된 상기 문장에 대하여 유사도 계산을 위한 언어처리를 수행하는 단계; 말뭉치 데이터베이스부에 저장된 후보 말뭉치들에 대해 상기 언어처리가 수행된 문장과의 유사도를 검색하여 유사도가 일정값 이상인 문장을 추출하는 단계; 및 추출된 상기 문장이 다수인 경우, 추출된 문장들의 순위를 결정하는 단계를 포함하는 것을 특징으로 한다.
바람직하게, 상기 언어 처리단계는, 입력된 상기 문장에 대해 가비지를 제거하는 단계; 상기 가비지가 제거된 문장에 대해 형태소 품사 태거를 수행하는 단계; 상기 문장의 문형 및 시제를 확인하는 단계; 상기 형태소 품사 태거가 수행된 문장에 대해 키워드를 추출하는 단계; 상기 문장에 대해 용언의 기본형을 검색하는 단계; 및 상기 문장에 포함된 고유명사에 대해 클래스 태깅을 수행하는 단계를 포함할 수 있다.
바람직하게, 상기 유사도 검색단계는, 상기 언어처리가 수행된 문장과 후보 말뭉치들에 대해 유사도를 계산하는 단계; 상기 후보 말뭉치들 중 계산된 유사도가 일정값 이상인 문장을 추출하는 단계; 및 상기 추출된 문장의 클래스에 대해 상기 입력된 문장에서의 클래스 엔트리로 복원하는 단계를 포함할 수 있다.
바람직하게, 상기 순위 결정단계는, 계산된 유사도의 확률과 추출된 문장의 빈도, n-gram 확률값, 입력된 문장의 n-gram, 추출된 문장의 n-gram의 유사도 중 적어도 하나에 기초하여 추출된 문장들의 순위를 결정할 수 있다.
바람직하게, 상기 순위 결정단계는, 추출된 문장들 사이의 유사도를 측정하여 측정된 유사도가 일정값 이상인 문장들을 제거한 후 그룹화하는 단계를 더 포함할 수도 있다.
본 발명의 실시예에 따른 유사문장 검색장치 및 그 검색방법은, 문장간 유사도 측정 시 검색된 문장들의 순위를 재조정하여 입력문장과 좀더 유사한 의도의 문장을 상위에 보여줌으로써, 유사문장검색 기술의 성능을 향상시킬 수 있는 효과가 있다.
또한, 본 발명의 실시예에 따른 유사문장 검색장치 및 그 검색방법은, 유사문장검색결과의 문장에 대해 유사도계산공식을 적용하여 같은 값을 가진 문장은 그룹핑함으로써, 다양한 문장을 사용자에게 보여줄 수 있는 효과가 있다.
도 1은 본 발명의 실시예에 따른 유사문장 검색장치를 개략적으로 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 유사문장 검색방법을 나타낸 흐름도이다.
도 3은 본 발명의 다른 실시예에 따른 유사문장 검색방법을 나타낸 흐름도이다.
이하에서는, 본 발명의 실시예에 따른 유사문장 검색장치 및 그 검색방법을 첨부한 도 1 내지 도 3을 참조하여 설명한다. 본 발명에 따른 동작 및 작용을 이해하는데 필요한 부분을 중심으로 상세히 설명한다. 명세서 전체를 통하여 각 도면에서 제시된 동일한 참조 부호는 동일한 구성 요소를 나타낸다.
도 1은 본 발명의 실시예에 따른 유사문장 검색장치를 개략적으로 도시한 도면이다.
도면을 참조하면, 본 발명의 실시예에 따른 유사문장 검색장치는, 입력부(100), 말뭉치 데이터베이스부(200), 언어 처리부(300), 유사도 검색부(400) 및 순위 결정부(500)를 포함할 수 있다.
입력부(100)는 사용자로부터 문장을 입력받는다. 이때, 사용자로부터 입력되는 문장은 키보드, 키패드, 터치패널 등과 같은 입력수단을 통해 입력된 문자이거나 음성인식 결과에 의해 변환된 문자일 수 있다.
말뭉치 데이터베이스부(200)는 말뭉치 데이터베이스를 저장한다. 여기서, 말뭉치 데이터베이스는 본 발명의 실시예에 이용되는 후보 문장들에 대한 데이터베이스로서, 이와 같은 말뭉치 데이터베이스는 가비지(garbage) 제거, 형태소 품사 태거, 문형 및 시제 확인, 키워드 추출, 용언 기본형 변환 등의 언어처리를 통해 데이터베이스로 저장될 수 있다.
언어 처리부(300)는 입력부(100)를 통해 입력된 문장에 대하여 유사도를 계산하기 위한 언어처리를 수행한다. 여기서, 언어 처리부(300)는 가비지 제거부(310), 형태소 품사 태거부(320), 문형 및 시제 확인부(330), 키워드 추출부(340), 용언 기본형 검색부(350) 및 클래스 태깅부(360)를 구비할 수 있다.
가비지 제거부(310)는 입력부(100)를 통해 입력된 문장에 대해 의미가 없는 단어들을 제거한다. 예를 들면, 입력된 문장 중에서 "음~, 와우~" 등과 같은 감탄사들은 의미가 없는 가비지로 판단하여 제거될 수 있다.
형태소 품사 태거부(320)는 가비지 제거부(310)에 의해 가비지가 제거된 입력문장에 대해 형태소 및 구문을 분석한다. 형태소는 국어에서 뜻을 가지고 있는 가장 작은 단위의 말을 의미하며, 구문은 문법을 구성하는 글의 짜임을 의미한다.
문형 및 시제 확인부(330)는 입력되는 문장에 대하여 평서형, 명령형, 청유형, 의문형 등의 문형을 확인하고, 또한 입력되는 문장에 대해 과거, 현재 또는 미래의 시제를 확인한다. 입력되는 문장의 문형 및 시제는 유사도 판단에 따라 삭제 여부 또는 그룹화 여부의 판단에 이용될 수 있다.
키워드 추출부(340)는 형태소 품사태거가 수행된 문장에 대해 키워드를 추출한다. 예를 들어, 형태소 품사 태거부(320)에 의해 형태소 품사 태거가 수행된 문장에서 조사와 어미를 제외한 나머지를 키워드로 사용할 수 있다. 이와 같은 키워드는 유사 문장의 검색에 있어 반드시 일치해야 하는 문장의 내용어로 선택될 수 있다.
용언 기본형 검색부(350)는 입력문장에 대해 용언의 기본형을 검색한다. 즉, 용언의 다양한 활용형들에 대해 기본형을 검색하고, 해당 활용형을 검색된 기본형으로 변환할 수 있다. 또한, 용언 기본형 검색부(350)는 핸드폰, 휴대폰 등과 같은 동일하거나 유사한 단어들을 하나로 통일하여 변환할 수도 있다.
클래스 태킹부(360)는 입력문장의 인명, 지명, 호텔명 등과 같은 고유명사에 대해서 클래스 태깅을 수행하며, 단순 단어매칭에서부터 다양한 알고리즘을 활용할 수 있다.
유사도 검색부(400)는 말뭉치 데이터베이스부(200)에 저장된 후보 말뭉치에 대해 언어 처리부(300)에 의해 언어 처리된 문장과의 유사도를 검색한다. 이를 위해, 유사도 검색부(400)는 유사도 계산부(410), 문장 추출부(420) 및 클래스 복원부(430)를 구비할 수 있다.
유사도 계산부(410)는 언어 처리부(300)에 의해 언어 처리된 문장과 말뭉치 데이터베이스(200)에 저장된 후보 말뭉치(후보 문장들)에 대해 다음의 [수학식 1]과 같이 각각의 키워드에 대한 유사도를 계산한다.
[수학식 1]
Figure 112011047155659-pat00001
여기서 S1은 입력문장, S2는 후보문장, e1 ,i는 입력문장의 i번째 요소, e2 ,i는 후보문장의 i번째 요소, fi는 i번째 요소에 대한 유사도 함수, wi는 fi의 가중치이다. 이때, 품사별 키워드를 하나의 요소로 하여 계산할 수 있다.
문장 추출부(420)는 말뭉치 데이터베이스(200)의 후보 문장들 중 유사도 계산부(410)에 의해 유사도가 일정값 이상인 문장을 추출한다. 즉, 유사도 계산부(410)에 의해 계산된 유사도가 기준치에 미치지 못할 경우, 해당 기준치 이상의 문장들만 추출한다. 이때, 기준치는 메모리 또는 버퍼의 저장량을 조절하여 변화시킬 수 있다.
클래스 복원부(430)는 말뭉치 데이터베이스(200)로부터 추출된 문장의 클래스에 대해 입력된 문장에서의 클래스 엔트리로 복원한다.
순위 결정부(500)는 유사도 검색부(400)에 의해 추출된 문장이 다수인 경우, 추출된 문장들에 대한 순위를 결정한다. 이때, 순위 결정부(500)는 계산된 유사도의 확률과 추출된 문장의 빈도, n-gram 확률값, 입력문장의 n-gram, 추출된 문장의 n-gram의 유사도 중 적어도 하나에 기초하여 추출된 문장들의 순위를 결정할 수 있다. 예를 들어, 순위 결정부(500)는 말뭉치 데이터베이스부(200)로부터 추출된 문장들에 대해 유사도 계산부(410)의 유사도 계산공식을 한번 더 적용하여 각각의 문장들에 대한 유사도를 계산할 수 있다. 이에 사용되는 요소로는 입력문장에 대한 n-gram과 추출된 문장에 대한 n-gram을 요소로 하여 계산될 수 있다. 또는, 순위 결정부(500)는 수학식 2와 같이 각각에 가중치를 부여하여 순위를 결정할 수도 있다.
[수학식 2]
순위 재조정값 = 유사도 계산부(410)에 의한 계산공식×A + 검색된 문장의 빈도×B + 검색된 문장의 n-gram 확률×C + n-gram 유사도×D
여기서, A, B, C, 및 D는 가중치로서, A, B, C, 및 D의 합은 1이다.
한편, 순위 결정부(500)는, 말뭉치 데이터베이스(200)로부터 추출된 문장들 사이의 유사도를 측정하며, 측정된 유사도가 일정값 이상인 문장들을 제거한 후 그룹화하는 그룹핑부(510)를 포함할 수 있다. 즉, 그룹핑부(510)는 순위 결정부(500)의 결과에 대해 문장끼리의 유사도를 측정하여 동일한 문장들을 축소시키며, 그에 따라 다양한 문장들을 그룹화하여 출력될 수 있도록 한다. 추출된 문장들에 대해 유사문장 검색을 하면 유사도 점수가 다양한 문장들이 나타난다. 예를 들면, 입력문장이 “버스는 어디서 타나요?”일 경우, 다음과 같은 검색결과가 나타날 수 있다.
0 100 버스는 어디서 타나요?
1 100 버스는 어디서 타요?
2 100 버스는 어디서 타죠?
3 100 버스는 어디서 탑니까?
여기서, 0,...,3는 순서이고 100은 유사도 값이다. 검색결과를 보면 어미의 활용형만 다르지 전부 같은 문장들이다. 그룹핑부(510)는 이러한 문장들을 없애고 다양한 문장들을 보여주기 위하여 그룹핑을 한다. 그룹핑부(510)는 검색된 한 문장을 기준으로 다른 문장들에 대해 유사도 계산부(410)의 공식을 재적용하여 다른 문장들과의 유사도를 계산한다. 여기서 기준값을 넘게되면 유사하다고 판단하고 시제와 문형이 같은지 확인한다. 시제와 문형까지 같으면 유사한 문장으로 판단하여 해당 문장은 없앤다. 그에 따라 다음과 같은 결과가 나타날 수 있다.
0 버스는 어디서 타나요?
1 공항 버스 어디서 타요?
2 관광 버스는 어디에서 타요?
3 리무진 버스는 어디서 타죠
4 버스 타는 곳은 어디에요?
이와 같이, 순위 결정부(500)에 의해 순위가 결정되고 그룹핑부(510)에 의해 그룹화된 문장들이 화면에 출력될 수 있다.
도 2는 본 발명의 일 실시예에 따른 유사문장 검색방법을 나타낸 흐름도이다.
도 1 및 도 2를 참조하면, 입력부(100)는 사용자로부터 문장을 입력받는다(S210). 이때, 사용자로부터 입력되는 문장은 키보드, 키패드, 터치패널 등과 같은 입력수단을 통해 입력된 문자이거나 음성인식 결과에 의해 변환된 문자일 수 있다.
언어 처리부(300)는 입력부(100)를 통해 입력된 문장에 대하여 유사도를 계산하기 위한 언어처리를 수행한다(S220). 이때, 가비지 제거부(310)는 도 3에 나타낸 바와 같이, 입력부(100)를 통해 입력된 문장에 대해 의미가 없는 단어들을 제거한다(S221). 예를 들면, 입력된 문장 중에서 "음~, 와우~" 등과 같은 감탄사들은 의미가 없는 가비지로 판단하여 제거될 수 있다.
또한, 형태소 품사 태거부(320)는 가비지 제거부(310)에 의해 가비지가 제거된 입력문장에 대해 형태소 및 구문을 분석한다(S222).
문형 및 시제 확인부(330)는 입력되는 문장에 대하여 평서형, 명령형, 청유형, 의문형 등의 문형을 확인하고, 또한 입력되는 문장에 대해 과거, 현재 또는 미래의 시제를 확인할 수 있다(S223). 입력되는 문장의 문형 및 시제는 유사도 판단에 따라 삭제 여부 또는 그룹화 여부의 판단에 이용될 수 있다.
키워드 추출부(340)는 형태소 품사태거가 수행된 문장에 대해 키워드를 추출한다(S224). 예를 들어, 형태소 품사 태거부(320)에 의해 형태소 품사 태거가 수행된 문장에서 조사와 어미를 제외한 나머지를 키워드로 사용할 수 있다.
용언 기본형 검색부(350)는 입력문장에 대해 용언의 기본형을 검색할 수 있다(S225). 즉, 용언의 다양한 활용형들에 대해 기본형을 검색하고, 해당 활용형을 검색된 기본형으로 변환할 수 있다. 또한, 용언 기본형 검색부(350)는 핸드폰, 휴대폰 등과 같은 동일하거나 유사한 단어들을 하나로 통일하여 변환할 수도 있다.
클래스 태킹부(360)는 입력문장의 인명, 지명, 호텔명 등과 같은 고유명사에 대해서 클래스 태깅을 수행하며, 단순 단어매칭에서부터 다양한 알고리즘을 활용할 수 있다(S226).
유사도 검색부(400)는 말뭉치 데이터베이스부(200)에 저장된 후보 말뭉치에 대해 언어 처리부(300)에 의해 언어 처리된 문장과의 유사도를 검색한다(S230). 이때, 유사도 계산부(410)는 언어 처리부(300)에 의해 언어 처리된 문장과 말뭉치 데이터베이스(200)에 저장된 후보 말뭉치(후보 문장들)에 대해 수학식 1과 같이 각각의 키워드에 대한 유사도를 계산할 수 있다(S232).
또한, 문장 추출부(420)는 말뭉치 데이터베이스(200)의 후보 문장들 중 유사도 계산부(410)에 의해 유사도가 일정값 이상인 문장을 추출할 수 있다(S234). 즉, 유사도 계산부(410)에 의해 계산된 유사도가 기준치에 미치지 못할 경우, 해당 기준치 이상의 문장들만 추출한다. 이때, 기준치는 메모리 또는 버퍼의 저장량을 조절하여 변화시킬 수 있다.
클래스 복원부(430)는 말뭉치 데이터베이스(200)로부터 추출된 문장의 클래스에 대해 입력된 문장에서의 클래스 엔트리로 복원한다(S236).
순위 결정부(500)는 유사도 검색부(400)에 의해 추출된 문장이 다수인 경우, 추출된 문장들에 대한 순위를 결정하여 출력한다(S240). 이때, 순위 결정부(500)는 계산된 유사도의 확률과 추출된 문장의 빈도, n-gram 확률값, 입력문장의 n-gram, 추출된 문장의 n-gram의 유사도 중 적어도 하나에 기초하여 추출된 문장들의 순위를 결정할 수 있다.
그룹핑부(510)는 순위 결정부(500)의 결과에 대해 문장끼리의 유사도를 측정하여 동일한 문장들을 축소시키며, 그에 따라 다양한 문장들이 출력될 수 있도록 한다(S250).
이로써, 본 발명의 실시예에 따른 유사문장 검색장치 및 그 검색방법은, 입력된 문장과 유사한 문장이 다수인 경우, 문장간 유사도 측정 시 검색된 문장들의 순위를 재조정하여 입력문장에 가장 유사한 문장을 상위에 출력함으로써 유사문장 검색 기술의 성능을 향상시킬 수 있게 된다.
본 발명에 의한 유사문장 검색장치 및 그 검색방법이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100: 입력부
200: 말뭉치 데이터베이스부
300: 언어 처리부
400: 유사도 검색부
500: 순위 결정부

Claims (10)

  1. 사용자로부터 문장을 입력받는 입력부;
    말뭉치를 데이터베이스로 저장하는 말뭉치 데이터베이스부;
    상기 입력부를 통해 입력된 문장에 대하여 유사도 계산을 위한 언어처리를 수행하는 언어 처리부;
    상기 말뭉치 데이터베이스부에 저장된 후보 말뭉치들에 대해 상기 언어 처리부에 의해 언어처리된 문장과의 유사도를 검색하여 유사도가 일정값 이상인 문장을 추출하는 유사도 검색부; 및
    상기 유사도 검색부에 의해 추출된 문장이 다수인 경우, 추출된 문장들의 순위를 결정하는 순위 결정부;
    를 포함하되, 상기 순위 결정부는 상기 순위가 결정되면, 동일한 문장을 축소시키기 위하여 순위가 결정된 상기 문장들 사이의 유사도를 측정하여 측정된 상기 유사도가 일정값 이상인 문장들을 제거한 후 나머지 문장들을 그룹화하는 그룹핑부를 포함하고,
    상기 순위는 다음의 수학식 (순위 재조정값 = 유사도A + 검색된 문장의 빈도B + 검색된 문장의 n-gram 확률C + n-gram 유사도D)에 의해 구하되 여기서, A, B, C, 및 D는 가중치로서, A, B, C, 및 D의 합은 1이며,
    상기 유사도는 다음의 수학식
    Figure 112013105890562-pat00005
    에 의해 구하되, 여기서 S1은 입력문장, S2는 후보문장, e1,i는 입력문장의 i번째 요소, e2,i는 후보문장의 i번째 요소, fi는 i번째 요소에 대한 유사도 함수, wi는 fi의 가중치인 것을 특징으로 하는 유사문장 검색장치.
  2. 제1 항에 있어서,
    상기 언어 처리부는,
    상기 입력부를 통해 입력된 문장에 대해 의미가 없는 단어들을 제거하는 가비지(garbage) 제거부;
    상기 가비지 제거부에 의해 가비지가 제거된 문장에 대해 형태소 품사 태거를 수행하는 형태소 품사 태거부;
    상기 문장의 문형 및 시제를 확인하는 문형 및 시제 확인부;
    상기 형태소 품사태거가 수행된 문장에 대해 키워드를 추출하는 키워드 추출부;
    상기 문장에 대해 용언의 기본형을 검색하는 용언 기본형 검색부; 및
    상기 문장에 포함된 고유명사에 대해 클래스 태깅을 수행하는 클래스 태깅부;
    를 포함하는 것을 특징으로 하는 유사문장 검색장치.
  3. 제1 항에 있어서,
    상기 유사도 검색부는,
    상기 언어처리된 문장과 말뭉치 데이터베이스부의 후보 말뭉치들에 대해 유사도를 계산하는 유사도 계산부;
    상기 후보 말뭉치들 중 유사도 계산부에 의해 계산된 유사도가 일정값 이상인 문장을 추출하는 문장 추출부; 및
    상기 추출된 문장의 클래스에 대해 상기 입력부를 통해 입력된 문장의 클래스로 복원하는 클래스 복원부;
    를 포함하는 것을 특징으로 하는 유사문장 검색장치.
  4. 제1 항에 있어서,
    상기 순위 결정부는,
    계산된 상기 유사도의 확률과 추출된 상기 문장의 빈도, n-gram 확률값, 상기 입력된 문장의 n-gram, 추출된 상기 문장의 n-gram의 유사도 중 적어도 하나에 기초하여 상기 추출된 문장들의 순위를 결정하는 것을 특징으로 하는 유사문장 검색장치.
  5. 삭제
  6. 사용자로부터 문장을 입력받는 단계;
    입력된 상기 문장에 대하여 유사도 계산을 위한 언어처리를 수행하는 단계;
    말뭉치 데이터베이스부에 저장된 후보 말뭉치들에 대해 상기 언어처리가 수행된 문장과의 유사도를 검색하여 유사도가 일정값 이상인 문장을 추출하는 단계; 및
    추출된 상기 문장이 다수인 경우, 추출된 문장들의 순위를 결정하는 단계;
    를 포함하되, 상기 결정하는 단계는 상기 순위가 결정되면, 동일한 문장을 축소시키기 위하여 순위가 결정된 상기 문장들 사이의 유사도를 측정하여 측정된 상기 유사도가 일정값 이상인 문장들을 제거한 후 나머지 문장들을 그룹화하는 단계를 포함하고,
    상기 순위는 다음의 수학식 (순위 재조정값 = 유사도A + 검색된 문장의 빈도B + 검색된 문장의 n-gram 확률C + n-gram 유사도D)에 의해 구하되 여기서, A, B, C, 및 D는 가중치로서, A, B, C, 및 D의 합은 1이며,
    상기 유사도는 다음의 수학식
    Figure 112013105890562-pat00006
    에 의해 구하되, 여기서 S1은 입력문장, S2는 후보문장, e1,i는 입력문장의 i번째 요소, e2,i는 후보문장의 i번째 요소, fi는 i번째 요소에 대한 유사도 함수, wi는 fi의 가중치인 것을 특징으로 하는 유사문장 검색방법.
  7. 제6 항에 있어서,
    상기 언어 처리단계는,
    입력된 상기 문장에 대해 가비지를 제거하는 단계;
    상기 가비지가 제거된 문장에 대해 형태소 품사 태거를 수행하는 단계;
    상기 문장의 문형 및 시제를 확인하는 단계;
    상기 형태소 품사 태거가 수행된 문장에 대해 키워드를 추출하는 단계;
    상기 문장에 대해 용언의 기본형을 검색하는 단계; 및
    상기 문장에 포함된 고유명사에 대해 클래스 태깅을 수행하는 단계;
    를 포함하는 것을 특징으로 하는 유사문장 검색방법.
  8. 제6 항에 있어서,
    상기 문장 추출단계는,
    상기 언어처리가 수행된 문장과 후보 말뭉치들에 대해 유사도를 계산하는 단계;
    상기 후보 말뭉치들 중 계산된 유사도가 일정값 이상인 문장을 추출하는 단계; 및
    상기 추출된 문장의 클래스에 대해 상기 입력된 문장의 클래스로 복원하는 단계;
    를 포함하는 것을 특징으로 하는 유사문장 검색방법.
  9. 제6 항에 있어서,
    상기 순위 결정단계는,
    계산된 유사도의 확률과 추출된 문장의 빈도, n-gram 확률값, 입력된 문장의 n-gram, 추출된 문장의 n-gram의 유사도 중 적어도 하나에 기초하여 추출된 문장들의 순위를 결정하는 것을 특징으로 하는 유사문장 검색방법.
  10. 삭제
KR1020110060206A 2011-06-21 2011-06-21 유사문장 검색장치 및 그 검색방법 KR101414492B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110060206A KR101414492B1 (ko) 2011-06-21 2011-06-21 유사문장 검색장치 및 그 검색방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110060206A KR101414492B1 (ko) 2011-06-21 2011-06-21 유사문장 검색장치 및 그 검색방법

Publications (2)

Publication Number Publication Date
KR20130000448A KR20130000448A (ko) 2013-01-03
KR101414492B1 true KR101414492B1 (ko) 2014-07-04

Family

ID=47833947

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110060206A KR101414492B1 (ko) 2011-06-21 2011-06-21 유사문장 검색장치 및 그 검색방법

Country Status (1)

Country Link
KR (1) KR101414492B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022025410A1 (ko) * 2020-07-29 2022-02-03 삼성전자주식회사 제공되는 컨텐츠를 기반으로 검색어를 추천하는 전자 장치 및 그 제어 방법
KR20220067130A (ko) * 2020-11-17 2022-05-24 주식회사 한글과컴퓨터 Bleu 스코어를 기초로 유사 문장에 대한 검색을 수행하는 전자 장치 및 그 동작 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104216968A (zh) * 2014-08-25 2014-12-17 华中科技大学 一种基于文件相似度的排重方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990088678A (ko) * 1998-05-29 1999-12-27 가나이 쓰토무 특징문자열추출방법및장치와,이를이용한유사문서검색방법및장치와,특징문자열추출프로그램을격납한기억매체및유사문서검색프로그램을격납한기억매체
KR20020017076A (ko) * 2000-08-28 2002-03-07 인소란, 최정자 지식 기반 맞춤 정보 제공 시스템 및 그 서비스 방법
KR20050032937A (ko) * 2003-10-02 2005-04-08 한국전자통신연구원 언어분석 기반 자동 질문/정답 색인 방법과 그 질의응답방법 및 시스템
KR20100006361A (ko) * 2008-07-09 2010-01-19 에스케이 텔레콤주식회사 유사 문장 검색 장치, 검색 방법, 저장 매체, 자동 대화서비스 시스템 및 서비스 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990088678A (ko) * 1998-05-29 1999-12-27 가나이 쓰토무 특징문자열추출방법및장치와,이를이용한유사문서검색방법및장치와,특징문자열추출프로그램을격납한기억매체및유사문서검색프로그램을격납한기억매체
KR20020017076A (ko) * 2000-08-28 2002-03-07 인소란, 최정자 지식 기반 맞춤 정보 제공 시스템 및 그 서비스 방법
KR20050032937A (ko) * 2003-10-02 2005-04-08 한국전자통신연구원 언어분석 기반 자동 질문/정답 색인 방법과 그 질의응답방법 및 시스템
KR20100006361A (ko) * 2008-07-09 2010-01-19 에스케이 텔레콤주식회사 유사 문장 검색 장치, 검색 방법, 저장 매체, 자동 대화서비스 시스템 및 서비스 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022025410A1 (ko) * 2020-07-29 2022-02-03 삼성전자주식회사 제공되는 컨텐츠를 기반으로 검색어를 추천하는 전자 장치 및 그 제어 방법
KR20220067130A (ko) * 2020-11-17 2022-05-24 주식회사 한글과컴퓨터 Bleu 스코어를 기초로 유사 문장에 대한 검색을 수행하는 전자 장치 및 그 동작 방법
KR102523767B1 (ko) * 2020-11-17 2023-04-21 주식회사 한글과컴퓨터 Bleu 스코어를 기초로 유사 문장에 대한 검색을 수행하는 전자 장치 및 그 동작 방법

Also Published As

Publication number Publication date
KR20130000448A (ko) 2013-01-03

Similar Documents

Publication Publication Date Title
EP2269148B1 (en) Intra-language statistical machine translation
KR101500617B1 (ko) 한국어 어휘 의미망을 이용한 문맥 철자오류 교정 장치 및 방법
KR20160060247A (ko) 자연어 질의응답 시스템과 방법 및 패러프라이즈 모듈
KR20030056655A (ko) 번역 지원 시스템에서의 유사 문장 검색 방법
KR101508070B1 (ko) 어휘지도를 이용한 용언의 다의어 의미 분석 방법
US9600469B2 (en) Method for detecting grammatical errors, error detection device for same and computer-readable recording medium having method recorded thereon
Huang et al. An approach on Chinese microblog entity linking combining baidu encyclopaedia and word2vec
KR20040032355A (ko) 문서에서 이벤트 문장을 추출하는 장치 및 그 방법
Yusuf et al. Query expansion method for quran search using semantic search and lucene ranking
CN111428031A (zh) 一种融合浅层语义信息的图模型过滤方法
KR101414492B1 (ko) 유사문장 검색장치 및 그 검색방법
CN113743090A (zh) 一种关键词提取方法及装置
Saad et al. Cross-lingual semantic similarity measure for comparable articles
KR101616031B1 (ko) 위키피디아의 언어자원과 병렬 코퍼스를 이용한 교차언어 검색기의 질의어 번역 시스템 및 방법
KR20100073163A (ko) 복합 명사 인식 장치 및 그 방법
KR20020036059A (ko) 사전 뜻풀이말에서 추출된 의미정보를 기반으로하는 의미중의성 해결 방법
Leidig et al. Automatic detection of anglicisms for the pronunciation dictionary generation: a case study on our German IT corpus.
KR20200073524A (ko) 특허 문서의 키프레이즈 추출 장치 및 방법
KR20190050180A (ko) 과학문서의 핵심어구 추출방법 및 장치
Govilkar et al. Part of speech tagger for Marathi language
Iswarya et al. Speech and text query based Tamil-English Cross Language Information Retrieval system
Argaw et al. Dictionary-based Amharic-French information retrieval
KR101092355B1 (ko) 대용어 복원 방법
Ababneh et al. Arabic information retrieval: a relevancy assessment survey
JP5860861B2 (ja) 焦点推定装置、モデル学習装置、方法、及びプログラム

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170529

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180529

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190604

Year of fee payment: 6