KR20210048368A - 유사 문장 검색 시스템 및 이를 이용한 유사 문장 검색 방법 - Google Patents
유사 문장 검색 시스템 및 이를 이용한 유사 문장 검색 방법 Download PDFInfo
- Publication number
- KR20210048368A KR20210048368A KR1020190132572A KR20190132572A KR20210048368A KR 20210048368 A KR20210048368 A KR 20210048368A KR 1020190132572 A KR1020190132572 A KR 1020190132572A KR 20190132572 A KR20190132572 A KR 20190132572A KR 20210048368 A KR20210048368 A KR 20210048368A
- Authority
- KR
- South Korea
- Prior art keywords
- sentence
- morpheme
- compared
- analyzed
- similar
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/338—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/268—Morphological analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 발명은 유사 문장 검색 시스템 및 이를 이용한 유사 문장 검색 방법에 관한 것으로서, 상기 유사 문장 검색 시스템은 사용자로부터 분석 대상 문장을 입력받는 입력모듈과, 다수의 비교 대상 문장이 저장된 데이터 베이스와, 상기 입력모듈 및 데이터 베이스에서 제공되는 상기 분석 대상 문장 또는 비교 대상 문장의 형태소를 분석하는 정렬모듈과, 상기 정렬모듈에서 제공되는 분석정보를 토대로 형태소를 기준으로 상기 분석 대상 문장과 비교 대상 문장들의 상호 유사도를 분석하여 가장 높은 유사도를 갖는 상기 비교 대상 문장을 선정하는 패턴 분석 모듈을 구비한다.
본 발명에 따른 유사 문장 검색 시스템 및 이를 이용한 유사 문장 검색 방법은 문장의 형태소를 기준으로 문장패턴을 분석하여 분석 대상 문장과 유사한 비교 대상 문장을 선정하므로 사용자가 입력한 문장과 유사율이 비교적 높은 문장을 선정할 수 있다는 장점이 있다.
본 발명에 따른 유사 문장 검색 시스템 및 이를 이용한 유사 문장 검색 방법은 문장의 형태소를 기준으로 문장패턴을 분석하여 분석 대상 문장과 유사한 비교 대상 문장을 선정하므로 사용자가 입력한 문장과 유사율이 비교적 높은 문장을 선정할 수 있다는 장점이 있다.
Description
본 발명은 유사 문장 검색 시스템 및 이를 이용한 유사 문장 검색 방법에 관한 것으로서, 더욱 상세하게는 형태소를 기준으로 문장패턴을 분석하여 분석 대상 문장과 유사한 비교 대상 문장을 선정하는 유사 문장 검색 시스템 및 이를 이용한 유사 문장 검색 방법에 관한 것이다.
사용자가 입력한 문장에 대해 적절한 응답을 하는 대화 모델은 크게 검색 기반과 생성 기반으로 나뉠 수 있다. 그 중 검색을 기반으로하는 대화 모델의 경우, 분석 대상 문장과 가장 유사한 발화를 검색하는 방법이 대화 모델의 성능과 직결된다.
효과적인 응답 생성을 위해 유사 문장을 검색하는 기술 중 하나는 어휘적으로 비슷한 문장을 찾는 것이다. 이러한 방법으로 두 문장이 동일하게 가지고 있는 n-gram의 수를 측정하는 방법인 ‘BLEU(Bilingual Evaluation Understudy)’와 색인 기반의 검색엔진 ‘Lucene’ 등이 있다. 하지만 이러한 방법은 짧은 문장에 비정상적으로 높은 점수가 부여되는 문제와 재현율이 낮더라도 유사도가 높다고 계산되는 문제가 존재한다.
다른 기술로는 의미적으로 비슷한 문장을 찾는 것인데, ‘Semantic Roles’가 이에 해당한다. 두 문장에 대해 ‘Semantic Role’을 생성하여 얼마나 유사한지 측정하는 방식이지만 ‘Semantic Role’의 한국어에 대한 표준 기술이 없고 성능이 매우 낮다는 문제가 존재한다.
또 다른 기술로는 구조적으로 비슷한 문장을 찾는 것인데, 두 문장에 각각에 대한 구문 트리를 생성하고, 구문 트리 커널을 통해 트리 간 유사도를 측정하는 방식이다. 하지만 이 방법을 통해선 의미적 유사도가 고려되지 않아 대화 모델의 성능이 낮다는 문제가 존재한다.
본 발명은 상기한 문제점을 해결하기 위해 창안된 것으로서, 형태소를 기준으로 문장패턴을 분석하여 분석 대상 문장과 유사한 비교 대상 문장을 선정하는 유사 문장 검색 시스템 및 이를 이용한 유사 문장 검색 방법을 제공하는데 그 목적이 있다.
상기 목적을 달성하기 위한 본 발명에 따른 유사 문장 검색 시스템은 사용자로부터 분석 대상 문장을 입력받는 입력모듈과, 다수의 비교 대상 문장이 저장된 데이터 베이스와, 상기 입력모듈 및 데이터 베이스에서 제공되는 상기 분석 대상 문장 또는 비교 대상 문장의 형태소를 분석하는 정렬모듈과, 상기 정렬모듈에서 제공되는 분석정보를 토대로 형태소를 기준으로 상기 분석 대상 문장과 비교 대상 문장들의 상호 유사도를 분석하여 가장 높은 유사도를 갖는 상기 비교 대상 문장을 선정하는 패턴 분석 모듈을 구비한다.
상기 정렬모듈은 상기 비교 대상 문장에 포함된 형태소들 중 상기 분석 대상 문장의 형태소와 동일한 형태소의 유무를 분석하고, 분석 결과에 따라 상기 분석 대상 문장 및 비교 대상 문장들을 정렬한다.
상기 정렬모듈은 상기 비교 대상 문장에 포함된 형태소들 중 상기 분석 대상 문장의 형태소와 동일한 형태소에 대응되게 가산점을 산출하고, 상기 비교 대상 문장에 포함된 형태소들 중 상기 분석 대상 문장의 형태소와 불일치하는 형태소에 대응되게 패널티 점수를 산출하되, 상기 가산점 및 패널티 점수를 토대로 상기 비교 대상 문장들을 정렬한다.
상기 패턴 분석 모듈은 상기 비교 대상 문장에 포함된 어휘 또는 형태소들 중 상기 분석 대상 문장의 어휘 또는 형태소와 일치하는 어휘 및 형태소의 갯수에 따라 가산점을 부여하고, 부여된 가산점을 합산하여 해당 비교 대상 문장의 유사도를 산출한다.
상기 패턴 분석 모듈은 상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치할 경우, 해당 형태소가 어말어미 또는 선어말어미이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출할 수도 있다.
상기 패턴 분석 모듈은 상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치할 경우, 해당 형태소가 접미사이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출할 수도 있다.
상기 패턴 분석 모듈은 상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치할 경우, 해당 형태소가 주격 조사, 보격 조사, 관형격 조사, 목적격 조사, 부사격 조사, 호격 조사 또는 인용격 조사이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출할 수도 있다.
상기 패턴 분석 모듈은 상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치하고, 상기 비교 대상 문장의 어휘가 상기 분석 대상 문장의 어휘와 일치할 경우, 해당 형태소가 보조사이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출할 수도 있다.
한편, 본 발명에 따른 유사 문장 검색 방법은 사용자에 의해 입력모듈에 입력된 분석 대상 문장과, 데이터 베이스에 저장된 비교 대상 문장의 형태소를 분석하는 정렬단계와, 상기 정렬단계에서 분석정보를 토대로 형태소를 기준으로 상기 분석 대상 문장과 비교 대상 문장들의 상호 유사도를 분석하여 가장 높은 유사도를 갖는 상기 비교 대상 문장을 선정하는 패턴 분석 단계를 포함한다.
상기 정렬단계에서는, 상기 비교 대상 문장에 포함된 형태소들 중 상기 분석 대상 문장의 형태소와 동일한 형태소의 유무를 분석하고, 분석 결과에 따라 상기 분석 대상 문장 및 비교 대상 문장들을 정렬한다.
상기 정렬단계에서는, 상기 비교 대상 문장에 포함된 형태소들 중 상기 분석 대상 문장의 형태소와 동일한 형태소에 대응되게 가산점을 산출하고, 상기 비교 대상 문장에 포함된 형태소들 중 상기 분석 대상 문장의 형태소와 불일치하는 형태소에 대응되게 패널티 점수를 산출하되, 상기 가산점 및 패널티 점수를 토대로 상기 비교 대상 문장들을 정렬할 수 있다.
상기 패턴 분석 단계에서는, 상기 비교 대상 문장에 포함된 어휘 및 형태소들 중 상기 분석 대상 문장의 어휘 및 형태소와 일치하는 어휘 및 형태소의 갯수에 따라 가산점을 부여하고, 부여된 가산점을 합산하여 해당 비교 대상 문장의 유사도를 산출할 수 있다.
상기 패턴 분석 단계에서, 상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치할 경우, 해당 형태소가 어말어미 또는 선어말어미이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출할 수도 있다.
상기 패턴 분석 단계에서, 상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치할 경우, 해당 형태소가 접미사이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출할 수도 있다.
상기 패턴 분석 단계에서, 상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치하고, 상기 비교 대상 문장의 어휘가 상기 분석 대상 문장의 어휘와 일치할 경우, 해당 형태소가 보조사이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출할 수도 있다.
상기 패턴 분석 단계에서, 상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치할 경우, 해당 형태소가 주격 조사, 보격 조사, 관형격 조사, 목적격 조사, 부사격 조사, 호격 조사 또는 인용격 조사이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출할 수도 있다.
본 발명에 따른 유사 문장 검색 시스템 및 이를 이용한 유사 문장 검색 방법은 문장의 형태소를 기준으로 문장패턴을 분석하여 분석 대상 문장과 유사한 비교 대상 문장을 선정하므로 사용자가 입력한 문장과 유사율이 비교적 높은 문장을 선정할 수 있다는 장점이 있다.
도 1은 본 발명에 따른 유사 문장 검색 시스템에 대한 블럭도이고,
도 2는 본 발명에 따른 유사 문장 검색 방법에 대한 순서도이다.
도 2는 본 발명에 따른 유사 문장 검색 방법에 대한 순서도이다.
이하, 첨부한 도면을 참조하여 본 발명의 실시예에 따른 유사 문장 검색 시스템 및 이를 이용한 유사 문장 검색 방법에 대해 설명한다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. 첨부된 도면에 있어서, 구조물들의 치수는 본 발명의 명확성을 기하기 위하여 실제보다 확대하여 도시한 것이다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1에는 본 발명에 따른 유사 문장 검색 시스템(100)이 도시되어 있다.
도면을 참조하면, 상기 유사 문장 검색 시스템(100)은 사용자로부터 분석 대상 문장을 입력받는 입력모듈(110)과, 다수의 비교 대상 문장이 저장된 데이터 베이스(120)와, 상기 입력모듈(110) 및 데이터 베이스(120)에서 제공되는 상기 분석 대상 문장 또는 비교 대상 문장의 형태소를 분석하는 정렬모듈(130)과, 상기 정렬모듈(130)에서 제공되는 분석정보를 토대로 형태소를 기준으로 상기 분석 대상 문장과 비교 대상 문장들의 상호 유사도를 분석하여 가장 높은 유사도를 갖는 상기 비교 대상 문장을 선정하는 패턴 분석 모듈(140)을 구비한다.
입력모듈(110)은 사용자로부터 분석 대상 문장을 입력받는 것으로서, 키보드, 키패드, 터치패널 등과 같은 입력수단이거나 사용자의 음성을 인식하여 해당 음성에 포함된 문장을 입력받는 음성인식수단이 적용될 수 있다.
데이터 베이스(120)는 다수의 비교 대상 문장이 저장되어 있다. 상기 비교 대상 문장은 가비지(garbage) 제거, 문형 및 시제 확인, 키워드 추출, 용언 기본형 변환 등의 언어처리를 통해 데이터 베이스(120)로 저장될 수 있다.
정렬모듈(130)은 입력모듈(110)에서 입력된 분석 대상 문장과, 데이터 베이스(120)에 저장된 비교 대상 문장들의 형태소를 분석한다. 여기서, 형태소는 국어에서 뜻을 가지고 있는 가장 작은 단위의 말을 의미한다. 이때, 정렬모듈(130)은 분석 대상 문장과 비교 대상 문장들에 형태소 태거를 수행한다. 여기서, 정렬모듈(130)은 형태소 태거가 완료된 비교 대상 문장들을 데이터 베이스(120)나 별도의 저장수단에 저장할 수 있다.
한편, 정렬모듈(130)은 상기 비교 대상 문장에 포함된 형태소들 중 상기 분석 대상 문장의 형태소와 동일한 형태소의 유무를 분석하고, 분석 결과에 따라 상기 분석 대상 문장 및 비교 대상 문장들을 정렬한다.
즉, 상기 정렬모듈(130)은 비교 대상 문장에 포함된 형태소들 중 분석 대상 문장의 형태소와 동일한 형태소가 존재한 경우, 상기 동일한 형태소의 갯수에 따라 가산점을 부여하고, 분석 대상 문장의 형태소와 일치하지 않은 형태소의 갯수에 따라 패널티 점수를 부여한다. 이때, 정렬모듈(130)은 상기 가산점 및 패널티 점수를 토대로 상기 비교 대상 문장들을 정렬한다. 즉, 정렬모듈(130)은 해당 비교 대상 문장에 부여된 가산점에 패널티 점수를 감산하여 총점수를 산출하고, 산출된 총점수 순으로 상기 비교 대상 문장들을 정렬한다. 여기서, 정렬모듈(130)은 상술된 가산점, 패널티 점수 산출방식을 'Needleman-Wunsch Alignment Algorithm'에 적용하여 분석 대상 문장과 비교 대상 문장들을 정렬한다. 상술된 바와 같이 정렬모듈(130)은 비교 대상 문장들을 분석 대상 문장과의 형태소 일치여부에 따라 정렬하므로 보다 유사 문장을 선정하는데 있어서 정확성 및 신속성을 향상시킬 수 있다.
패턴 분석 모듈(140)은 상기 정렬모듈(130)에서 제공되는 분석정보를 토대로 형태소를 기준으로 상기 분석 대상 문장과 비교 대상 문장들의 상호 유사도를 분석하여 가장 높은 유사도를 갖는 상기 비교 대상 문장을 선정한다.
여기서, 패턴 분석 모듈(140)은 상기 비교 대상 문장에 포함된 어휘 또는 형태소들 중 상기 분석 대상 문장의 어휘 또는 형태소와 일치하는 어휘 및 형태소의 갯수에 따라 가산점을 부여하고, 부여된 가산점을 합산하여 해당 비교 대상 문장의 유사도를 산출한다. 일예로, 비교 대상 문장이 분석 대상 문장에 포함된 어휘 또는 형태소와 일치한 어휘 또는 형태소의 갯수가 3개일 경우, 해당 비교 대상 문장은 3점의 가산점이 부여되고, 3 점의 유사도를 갖는다.
한편, 패턴 분석 모듈(140)은 상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치할 경우, 해당 형태소가 어말어미 또는 선어말어미이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출한다. 여기서, 어말어미는 용언 어간의 가장 뒤에 오는 형태소이고, 선어말어미는 용언의 어간과 어말어미(語末語尾) 사이에 나타나는 문법형태소이다. 일예로, 비교 대상 문장이 분석 대상 문장과 일치한 형태소의 갯수가 3이고, 일치한 형태소 중 어말어미가 2개 일 경우, 부여된 3점에 추가로 2점을 부여하여 해당 비교 대상 문장은 총 5점의 유사도를 갖는다.
또한, 패턴 분석 모듈(140)은 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치할 경우, 해당 형태소가 접미사이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출한다. 여기서, 접미사는 접사(接辭)의 하나로 낱말의 끝에 붙어 의미를 첨가하여 다른 낱말을 이루는 말이다. 일예로, 비교 대상 문장이 분석 대상 문장과 일치한 형태소의 갯수가 3이고, 일치한 형태소 중 접미사가 1개 일 경우, 부여된 3점에 추가로 1점을 부여하여 해당 비교 대상 문장은 총 4점의 유사도를 갖는다.
그리고, 패턴 분석 모듈(140)은 상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치할 경우, 해당 형태소가 주격 조사, 보격 조사, 관형격 조사, 목적격 조사, 부사격 조사, 호격 조사 또는 인용격 조사이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출한다. 일예로, 비교 대상 문장이 분석 대상 문장과 일치한 형태소의 갯수가 3이고, 일치한 형태소 중 호격 조사가 1개, 인용격 조사가 1개일 경우, 부여된 3점에 추가로 2점을 부여하여 해당 비교 대상 문장은 총 5점의 유사도를 갖는다.
또한, 패턴 분석 모듈(140)은 상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치하고, 상기 비교 대상 문장의 어휘가 상기 분석 대상 문장의 어휘와 일치할 경우, 해당 형태소가 보조사이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출한다. 여기서, 보조사는 체언이 어떤 문장성분으로 쓰이는 데에 구별없이 그 체언에 어떤 뜻을 첨가하여 주는 조사의 하나이다. 일예로, 비교 대상 문장이 분석 대상 문장과 일치한 형태소의 갯수가 3이고, 일치한 형태소 중 보조사가 1개일 경우, 보조사의 어휘가 분석 대상 문장의 어휘와 일치한지 파악하고, 해당 보조사의 어휘가 상호 일치한다면, 부여된 3점에 추가로 1점을 부여하여 해당 비교 대상 문장은 총 4점의 유사도를 갖는다.
여기서, 패턴 분석 모듈(140)은 기학습된 'Maximum Entropy Model'을 이용하여 상술된 바와 같이 데이터 베이스(120)에 저장된 비교 대상 문장들의 유사도를 계산하고, 가장 유사도가 높은 비교 대상 문장을 선정한다.
상술된 바와 같이 구성된 본 발명에 따른 유사 문장 검색 시스템(100)은 문장의 형태소를 기준으로 문장패턴을 분석하여 분석 대상 문장과 유사한 비교 대상 문장을 선정하므로 사용자가 입력한 문장과 유사율이 비교적 높은 문장을 선정할 수 있다는 장점이 있다.
한편, 도 2에는 본 발명에 따른 유사 문장 검색 시스템(100)을 이용한 유사 문장 검색 방법에 대한 순서도가 도시되어 있다.
도면을 참조하면, 상기 유사 문장 검색 방법은 정렬단계(S110) 및 패턴 분석 단계(S120)를 포함한다.
상기 정렬단계(S110)는 사용자에 의해 입력모듈(110)에 입력된 분석 대상 문장과, 데이터 베이스(120)에 저장된 비교 대상 문장의 형태소를 분석하는 단계이다. 정렬모듈(130)은 분석 대상 문장과 비교 대상 문장들에 형태소 태거를 수행한다.
또한, 상술된 바와 같이 정렬모듈(130)은 상기 비교 대상 문장에 포함된 형태소들 중 상기 분석 대상 문장의 형태소와 동일한 형태소의 유무를 분석하고, 분석 결과에 따라 상기 분석 대상 문장 및 비교 대상 문장들을 정렬하는데, 비교 대상 문장에 포함된 형태소들 중 분석 대상 문장의 형태소와 동일한 형태소가 존재한 경우, 상기 동일한 형태소의 갯수에 따라 가산점을 부여하고, 분석 대상 문장의 형태소와 일치하지 않은 형태소의 갯수에 따라 패널티 점수를 부여하고, 상기 가산점 및 패널티 점수를 토대로 상기 비교 대상 문장들을 정렬한다.
패턴 분석 단계(S120)는 정렬단계(S110)에서 분석정보를 토대로 형태소를 기준으로 상기 분석 대상 문장과 비교 대상 문장들의 상호 유사도를 분석하여 가장 높은 유사도를 갖는 상기 비교 대상 문장을 선정하는 단계이다.
여기서, 패턴 분석 모듈(140)은 상술된 바와 같이 상기 비교 대상 문장에 포함된 어휘 또는 형태소들 중 상기 분석 대상 문장의 어휘 또는 형태소와 일치하는 어휘 및 형태소의 갯수에 따라 가산점을 부여하고, 부여된 가산점을 합산하여 해당 비교 대상 문장의 유사도를 산출한다.
또한, 패턴 분석 모듈(140)은 상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치할 경우, 비교 대상 문장과 분석 대상 문장의 상호 일치하는 해당 형태소가 어말어미, 선어말어미, 접미사, 주격 조사, 보격 조사, 관형격 조사, 목적격 조사, 부사격 조사, 호격 조사, 인용격 조사 또는 접미사이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출한다. 한편, 패턴 분석 모듈(140)은 상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치하고, 상기 비교 대상 문장의 어휘가 상기 분석 대상 문장의 어휘와 일치할 경우, 해당 형태소가 보조사이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출한다.
제시된 실시 예들에 대한 설명은 임의의 본 발명의 기술분야에서 통상의 지식을 가진 자가 본 발명을 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이며, 여기에 정의된 일반적인 원리들은 본 발명의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 발명은 여기에 제시된 실시예들로 한정되는 것이 아니라, 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다.
100: 유사 문장 검색 시스템
110: 입력모듈
120: 데이터 베이스
130: 정렬모듈
140: 패턴 분석 모듈
110: 입력모듈
120: 데이터 베이스
130: 정렬모듈
140: 패턴 분석 모듈
Claims (16)
- 사용자로부터 분석 대상 문장을 입력받는 입력모듈;
다수의 비교 대상 문장이 저장된 데이터 베이스;
상기 입력모듈 및 데이터 베이스에서 제공되는 상기 분석 대상 문장 또는 비교 대상 문장의 형태소를 분석하는 정렬모듈; 및
상기 정렬모듈에서 제공되는 분석정보를 토대로 형태소를 기준으로 상기 분석 대상 문장과 비교 대상 문장들의 상호 유사도를 분석하여 가장 높은 유사도를 갖는 상기 비교 대상 문장을 선정하는 패턴 분석 모듈;을 구비하는,
유사문장 검색 시스템.
- 제1항에 있어서,
상기 정렬모듈은 상기 비교 대상 문장에 포함된 형태소들 중 상기 분석 대상 문장의 형태소와 동일한 형태소의 유무를 분석하고, 분석 결과에 따라 상기 분석 대상 문장 및 비교 대상 문장들을 정렬하는,
유사문장 검색 시스템.
- 제2항에 있어서,
상기 정렬모듈은
상기 비교 대상 문장에 포함된 형태소들 중 상기 분석 대상 문장의 형태소와 동일한 형태소에 대응되게 가산점을 산출하고, 상기 비교 대상 문장에 포함된 형태소들 중 상기 분석 대상 문장의 형태소와 불일치하는 형태소에 대응되게 패널티 점수를 산출하되, 상기 가산점 및 패널티 점수를 토대로 상기 비교 대상 문장들을 정렬하는,
유사문장 검색 시스템.
- 제1항에 있어서,
상기 패턴 분석 모듈은
상기 비교 대상 문장에 포함된 어휘 또는 형태소들 중 상기 분석 대상 문장의 어휘 또는 형태소와 일치하는 어휘 및 형태소의 갯수에 따라 가산점을 부여하고, 부여된 가산점을 합산하여 해당 비교 대상 문장의 유사도를 산출하는,
유사문장 검색 시스템.
- 제4항에 있어서,
상기 패턴 분석 모듈은
상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치할 경우, 해당 형태소가 어말어미 또는 선어말어미이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출하는,
유사문장 검색 시스템.
- 제4항에 있어서,
상기 패턴 분석 모듈은
상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치할 경우, 해당 형태소가 접미사이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출하는,
유사 문장 검색 시스템.
- 제4항에 있어서,
상기 패턴 분석 모듈은
상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치할 경우, 해당 형태소가 주격 조사, 보격 조사, 관형격 조사, 목적격 조사, 부사격 조사, 호격 조사 또는 인용격 조사이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출하는,
유사 문장 검색 시스템.
- 제4항에 있어서,
상기 패턴 분석 모듈은
상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치하고, 상기 비교 대상 문장의 어휘가 상기 분석 대상 문장의 어휘와 일치할 경우, 해당 형태소가 보조사이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출하는,
유사 문장 검색 시스템.
- 사용자에 의해 입력모듈에 입력된 분석 대상 문장과, 데이터 베이스에 저장된 비교 대상 문장의 형태소를 분석하는 정렬단계; 및
상기 정렬단계에서 분석정보를 토대로 형태소를 기준으로 상기 분석 대상 문장과 비교 대상 문장들의 상호 유사도를 분석하여 가장 높은 유사도를 갖는 상기 비교 대상 문장을 선정하는 패턴 분석 단계;를 포함하는,
유사 문장 검색 방법.
- 제9항에 있어서,
상기 정렬단계에서는, 상기 비교 대상 문장에 포함된 형태소들 중 상기 분석 대상 문장의 형태소와 동일한 형태소의 유무를 분석하고, 분석 결과에 따라 상기 분석 대상 문장 및 비교 대상 문장들을 정렬하는,
유사 문장 검색 방법.
- 제10항에 있어서,
상기 정렬단계에서는, 상기 비교 대상 문장에 포함된 형태소들 중 상기 분석 대상 문장의 형태소와 동일한 형태소에 대응되게 가산점을 산출하고, 상기 비교 대상 문장에 포함된 형태소들 중 상기 분석 대상 문장의 형태소와 불일치하는 형태소에 대응되게 패널티 점수를 산출하되, 상기 가산점 및 패널티 점수를 토대로 상기 비교 대상 문장들을 정렬하는,
유사 문장 검색 방법.
- 제9항에 있어서,
상기 패턴 분석 단계에서는, 상기 비교 대상 문장에 포함된 어휘 및 형태소들 중 상기 분석 대상 문장의 어휘 및 형태소와 일치하는 어휘 및 형태소의 갯수에 따라 가산점을 부여하고, 부여된 가산점을 합산하여 해당 비교 대상 문장의 유사도를 산출하는,
유사 문장 검색 방법.
- 제12항에 있어서,
상기 패턴 분석 단계에서, 상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치할 경우, 해당 형태소가 어말어미 또는 선어말어미이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출하는,
유사 문장 검색 방법.
- 제12항에 있어서,
상기 패턴 분석 단계에서, 상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치할 경우, 해당 형태소가 접미사이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출하는,
유사 문장 검색 방법.
- 제12항에 있어서,
상기 패턴 분석 단계에서, 상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치하고, 상기 비교 대상 문장의 어휘가 상기 분석 대상 문장의 어휘와 일치할 경우, 해당 형태소가 보조사이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출하는,
유사 문장 검색 방법.
- 제12항에 있어서,
상기 패턴 분석 단계에서, 상기 비교 대상 문장의 형태소가 상기 분석 대상 문장의 형태소와 일치할 경우 해당 형태소가 주격 조사, 보격 조사, 관형격 조사, 목적격 조사, 부사격 조사, 호격 조사 또는 인용격 조사이면, 추가로 가산점을 부여하여 해당 비교 대상 문장의 유사도를 산출하는,
유사 문장 검색 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190132572A KR20210048368A (ko) | 2019-10-23 | 2019-10-23 | 유사 문장 검색 시스템 및 이를 이용한 유사 문장 검색 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190132572A KR20210048368A (ko) | 2019-10-23 | 2019-10-23 | 유사 문장 검색 시스템 및 이를 이용한 유사 문장 검색 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20210048368A true KR20210048368A (ko) | 2021-05-03 |
Family
ID=75910779
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190132572A KR20210048368A (ko) | 2019-10-23 | 2019-10-23 | 유사 문장 검색 시스템 및 이를 이용한 유사 문장 검색 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20210048368A (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11880421B2 (en) | 2021-09-29 | 2024-01-23 | Electronics And Telecommunications Research Institute | Apparatus and method for providing indexing and search service based on important sentence |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101224660B1 (ko) | 2008-07-09 | 2013-01-21 | 고려대학교 산학협력단 | 유사 문장 검색 장치, 검색 방법, 저장 매체, 자동 대화서비스 시스템 및 서비스 방법 |
-
2019
- 2019-10-23 KR KR1020190132572A patent/KR20210048368A/ko not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101224660B1 (ko) | 2008-07-09 | 2013-01-21 | 고려대학교 산학협력단 | 유사 문장 검색 장치, 검색 방법, 저장 매체, 자동 대화서비스 시스템 및 서비스 방법 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11880421B2 (en) | 2021-09-29 | 2024-01-23 | Electronics And Telecommunications Research Institute | Apparatus and method for providing indexing and search service based on important sentence |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110162627B (zh) | 数据增量方法、装置、计算机设备及存储介质 | |
US10503828B2 (en) | System and method for answering natural language question | |
US8019748B1 (en) | Web search refinement | |
JP3429184B2 (ja) | テキスト構造解析装置および抄録装置、並びにプログラム記録媒体 | |
US20150255064A1 (en) | Intention estimating device and intention estimating method | |
US8521516B2 (en) | Linguistic key normalization | |
US20130018650A1 (en) | Selection of Language Model Training Data | |
US9600469B2 (en) | Method for detecting grammatical errors, error detection device for same and computer-readable recording medium having method recorded thereon | |
KR20130042839A (ko) | 유사문장 검색 장치 및 방법, 유사문장 검색 방법을 실행시키기 위한 프로그램이 기록된 기록매체 | |
JP2002215619A (ja) | 翻訳文書からの翻訳文抽出方法 | |
JPWO2007099812A1 (ja) | 質問回答装置、質問回答方法および質問回答用プログラム | |
KR100835172B1 (ko) | 동의어를 이용한 정보 검색 시스템 및 그 방법 | |
CN112231451B (zh) | 指代词恢复方法、装置、对话机器人及存储介质 | |
KR20100006361A (ko) | 유사 문장 검색 장치, 검색 방법, 저장 매체, 자동 대화서비스 시스템 및 서비스 방법 | |
Zitouni et al. | Mention detection crossing the language barrier | |
Lipczak et al. | Tulip: Lightweight entity recognition and disambiguation using wikipedia-based topic centroids | |
KR20210048368A (ko) | 유사 문장 검색 시스템 및 이를 이용한 유사 문장 검색 방법 | |
US20050086214A1 (en) | Computer system and method for multilingual associative searching | |
KR101757222B1 (ko) | 한글 문장에 대한 의역 문장 생성 방법 | |
US10964313B2 (en) | Word score calculation device, word score calculation method, and computer program product | |
KR20200073524A (ko) | 특허 문서의 키프레이즈 추출 장치 및 방법 | |
Liang et al. | An efficient error correction interface for speech recognition on mobile touchscreen devices | |
US10528661B2 (en) | Evaluating parse trees in linguistic analysis | |
Torunoglu-Selamet et al. | Exploring spelling correction approaches for turkish | |
JP2004046775A (ja) | 固有表現抽出装置及び方法並びに固有表現抽出プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AMND | Amendment | ||
E601 | Decision to refuse application | ||
X091 | Application refused [patent] | ||
AMND | Amendment | ||
X601 | Decision of rejection after re-examination |