KR100309062B1 - 특징문자열 추출 방법 및 장치와, 이를 이용한 유사문서 검색 방법 및 장치와, 특징문자열 추출 프로그램을 격납한 기억매체 및 유사문서 검색 프로그램을 격납한 기억매체 - Google Patents
특징문자열 추출 방법 및 장치와, 이를 이용한 유사문서 검색 방법 및 장치와, 특징문자열 추출 프로그램을 격납한 기억매체 및 유사문서 검색 프로그램을 격납한 기억매체 Download PDFInfo
- Publication number
- KR100309062B1 KR100309062B1 KR1019990019596A KR19990019596A KR100309062B1 KR 100309062 B1 KR100309062 B1 KR 100309062B1 KR 1019990019596 A KR1019990019596 A KR 1019990019596A KR 19990019596 A KR19990019596 A KR 19990019596A KR 100309062 B1 KR100309062 B1 KR 100309062B1
- Authority
- KR
- South Korea
- Prior art keywords
- string
- document
- text
- feature
- character
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 115
- 238000000605 extraction Methods 0.000 claims description 56
- 238000004364 calculation method Methods 0.000 claims description 48
- 238000001514 detection method Methods 0.000 claims description 2
- 238000005192 partition Methods 0.000 claims 5
- 238000010586 diagram Methods 0.000 description 45
- 239000000284 extract Substances 0.000 description 14
- 238000004458 analytical method Methods 0.000 description 6
- 230000000877 morphologic effect Effects 0.000 description 3
- CIWBSHSKHKDKBQ-JLAZNSOCSA-N Ascorbic acid Chemical compound OC[C@H](O)[C@H]1OC(=O)C(O)=C1O CIWBSHSKHKDKBQ-JLAZNSOCSA-N 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 150000001875 compounds Chemical class 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- ZZZCUOFIHGPKAK-UHFFFAOYSA-N D-erythro-ascorbic acid Natural products OCC1OC(=O)C(O)=C1O ZZZCUOFIHGPKAK-UHFFFAOYSA-N 0.000 description 1
- 229930003268 Vitamin C Natural products 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 235000019154 vitamin C Nutrition 0.000 description 1
- 239000011718 vitamin C Substances 0.000 description 1
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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
- Y10S707/99935—Query augmenting and refining, e.g. inexact access
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
- Y10S707/99945—Object-oriented database structure processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
Abstract
본 발명은 문서에 기술된 내용의 특징을 나타내는 문자열을 추출하는 방법 및 장치와, 문자열 추출 프로그램을 격납한 기억매체와, 이 방법 및 장치를 이용하여, 사용자가 지정한 문서에 기술되어 있는 내용과 유사한 내용을 포함하는 문서를 문서 데이터베이스 중에서 검출하는 방법 및 장치와, 검색 프로그램을 격납한 기억매체에 관한 것이다.
본 발명은, 텍스트 데이터베이스중의 텍스트(150)에 존재하는 문자열이 그 텍스트(150)에서 단어의 경계에 출현하는 확률을 출현확률파일(152)로서 격납하는 스텝과, 텍스트(150)에 존재하는 문자열의 출현횟수를 출현횟수파일(153)으로서 격납하는 스텝과, 출현확률파일(152)를 이용하여 사용자가 지정한 텍스트로부터 특징문자열을 추출하는 스텝과, 사용자가 지정한 텍스트에서의 특징문자열의 출현횟수를 계수하는 스텝을 가지며, 출현횟수파일(153)과 사용자가 지정한 텍스트에 있어서의 출현횟수를 이용하여 사용자가 지정한 텍스트에 대한 유사도를 산출한다.
이로써, 본 발명에 의하면, 단어사전을 이용하지 않고 문서에 기술된 내용의 특징을 추출하는 방법과, 이 방법을 이용하여 고속이고 고정도인 유사문서 검색 시스템을 제공할 수 있다.
Description
본 발명은, 문서에 기술된 내용의 특징을 나타내는 문자열을 추출하는 방법 및 장치와, 문자열 추출 프로그램을 격납한 기억매체와, 이 방법 및 장치를 이용하여, 사용자가 지정한 문서에 기술되어 있는 내용과 유사한 내용을 포함하는 문서를 문서 데이타 베이스 중에서 검출하는 방법 및 장치와 검색 프로그램을 격납한 기억매체에 관한 것이다.
최근, 퍼스널컴퓨터나 인터넷 등의 보급에 따라, 전자화 문서가 폭발적으로 증가하고 있으며, 앞으로도 가속적으로 증대되어 나갈 것으로 예상된다. 이와 같은 상황에 있어서, 사용자가 원하는 정보를 포함한 문서를 고속으로 또한 효율적으로 검색하고자 하는 요구가 높아지고 있다.
이러한 요구에 부응하는 기술로서 전문 검색이 있다. 전문검색에서는, 검색대상문서를 텍스트로서 계산기 시스템에 등록하여 데이타 베이스화하고, 이 중에서 사용자가 지정한 검색문자열(이하, 「검색 터엄(term)」이라 한다)을 포함하는 문서를 검색한다. 이와 같이 전문검색에서는, 문서중의 문자열 그 자체를 대상으로 하여 검색을 행하기 때문에, 미리 키워드를 부여하고 이 키워드를 단서로 검색하는 종래의 키워드 검색 시스템과는 다르고, 어떠한 말이라도 검색할 수 있다고 하는장점이 있다.
그러나, 사용자가 원하는 정보를 포함한 문서를 정확하게 검색하기 위해서는, 사용자의 검색의도를 정확하게 나타내는 복잡한 검색조건식을 작성하고, 입력할 필요가 있다. 이것은 정보검색의 전문가가 아닌 일반 사용자에게 있어서 용이한 일이 아니다.
이 번잡함을 해소하기 위해, 사용자가 자신이 원하는 내용을 포함한 문서(이하, 「종문서(種文書)」라고 한다)를 예시하고, 이 문서와 유사한 문서를 검색하는 유사문서 검색기술이 주목받고 있다.
유사문서검색의 방법으로서는, 예를 들어, 「일본국 특개평8-335222호 공보」에, 형태소(形態素) 해석에 의해 종문서 중에 포함되는 단어를 추출하고, 이것을 이용하여 유사문서를 검색하는 기술(이하, 「종래기술 1」이라 한다)이 개시되어 있다.
종래기술 1에서는, 형태소 해석에 의해 종문서 중에 표함되는 단어를 추출하고, 이 단어를 포함하는 문서를 유사문서로서 검색한다. 예를 들어, 문서 1「…. 携帶電話の使用時のマナ-が問題になる. …」를 종문서로 하는 경우, 형태소 분석에 의해 단어사전을 참조하여 「携帶電話」 「マナ-」 「問題」등의 단어를 추출한다. 이 결과, 「携帶電話」를 포함하는 문서 2「…. 電車內での携帶電話の使用は禁止されている.…」(전차내에서의 휴대전화의 사용은 금지되어 있다)를 유사문서로서 검색할 수 있다.
그러나, 종래기술 1에서는, 단어의 추출에 단어사전을 이용하기 때문에, 다음과 같은 2가지의 문제가 있다.
먼저, 단어사전에 게재되어 있지 않은 단어가 문서의 본질적인 내용(이하, 「중심개념」이라 한다)을 나타내는 경우, 이 단어가 종문서에서 검색용 단어로서 추출되지 않기 때문에, 다른 단어에 의해 유사검색이 행해졌다 하더라도, 문서의 중심개념이 정확히 검색되지 않을 우려가 있다. 즉, 사용자가 원하는 정보가 신어(新語)로 표현되는 경우, 이것이 단어사전에 포함되어 있지 않으면, 목적으로 하는 중심개념에서 벗어난 문서가 검색되어 버린다고 하는 문제가 있다.
다음, 사용자가 원하는 정보를 나타내는 말이 단어사전에 게재되어 있는 경우라도, 단어의 추출방법에 따라서는 검색의 대상이 되는 중심개념이 어긋나버린다고 하는 문제가 있다. 예를 들어, 상기의 문서 1「…. 携帶電話の使用時のマナ-が問題になる. …」라고 하는 종문서로부터는 「携帶電話」「マナ-」「問題」등의 단어가 추출된다. 그러나, 「電話」라고 하는 단어가 추출되지 않기 때문에 문서 3「…. 電話での話し方について注意された. …」(전화로 이야기하는 법에 대해 주의받았다)라고 하는 문서의 유사도가 낮게 추출되어 버릴 우려가 있다.
이것들은 모두, 단어사전을 이용하여 검색용의 단어를 추출하는 방법을 이용하고 있는 것에서 기인한다.
이상이 종래기술 1의 문제점이다.
이 문제를 해결하기 위해, 「일본국 특원평9-309078호」에서, 단어사전을 이용하지 않고, 종문서 중에서 한자나 가타카나 등의 문자종별로 연속하는 n문자의 문자열(이하, 「n-gram」이라 한다)을 한자나 가타카나 등의 문자종별로 기계적으로 추출하고, 이것을 이용하여 유사문서를 검색하는 기술(이하, 「종래기술 2」라 한다)을 제안하였다.
종래기술 2에서는, 문자종류별로 n-gram의 추출방법을 바꾸고, 의미의 정리를 갖는 n-gram(이하, 「특징문자열」이라 한다)을 추출한다. 예를 들어, 한자로 구성되는 문자열(이하, 「한자문자열」이라 한다)로부터는 기계적으로 2-gram을 추출하고, 가타카나로 구성되는 문자열(이하, 「가타카나 문자열」이라 한다)로부터는 가타카나로 구성되는 최장(最長)의 문자열(이하, 「가타카나 최장문자열」이라 한다), 즉 가타카나 문자열 그자체를 추출한다. 이 경우, 상기의 문서 1「…. 携帶電話の使用時のマナ-が問題になる. …」라고 하는 종문서로부터는, 「携帶(휴대)」「帶電(대전)」「電話(전화)」「使用(사용)」「マナ-(매너)」「問題(문제)」등이라고 하는 특징문자열이 추출된다. 즉, 「電話」라고 하는 문자열도 빠짐없이 추출되기 때문에, 종래기술 1에서는 낮은 유사도가 산출되어 버리는 문서 3「…. 電話での話し方について注意された. …」에 대해서도 정확하게 유사도가 산출되게 된다.
그러나, 종래기술 2에서는, 복합어를 구성할 가능성이 있는 한자문자열 등으로부터는, 단어사이에 걸쳐지는 n-gram도 추출할 가능성이 있다. 이 때문에, 이를 검색에 이용하면, 내용이 유사하지 않는 문서에 대해서까지도 유사도가 산출되고, 그 결과, 연관이 없는 문서가 유사문서로서 검색된다고 하는 문제가 발생한다. 예를 들어, 상기의 문서 1「…. 携帶電話の使用時のマナ-が問題になる. …」라고 하는 종문서로부터 추출된 「帶電(대전)」이라고 하는 특징문자열에 의해 유사도(類似度)가 산출되고, 문서 4「…. 電荷の帶電を防ぐために, 接地しなくてはならない. …」(전하의 대전을 막기 위해, 접지하지 않으면 안된다)라고 하는 문서가 유사문서로서 잘못 검색되어 버린다고 하는 문제가 있다.
이 문제를 해결하기 위한 기술로서, 일본국의 「정보처리학회 논문지 pp.2286 ~ 2297, Vol.38, No.11, Nov.1997」에 1-gram의 총계정보를 이용하여 특징문자열을 추출하는 기술(이하, 「종래기술 3」이라 한다)이 제안되어 있다.
종래기술 3에서는, 문서 등록시에 등록 문서중에 출현하는 각 1-gram에 대해, 단어의 선두(先頭)일 확률(이하, 「선두확률」이라 한다)과 말미(末尾)일 확률(이하, 「말미확률」이라 한다)을 산출해 둔다. 여기서는, 단어를 한자(漢字)나 가타카나 등의 문자종(文字種) 경계로 구분되고, 단일 문자종으로 구성되는 문자열(이하, 「단일 문자종 문자열」이라 한다)로 하고, 문자종 경계의 직후에 위치하는 1-gram을 단어의 선두에 있는 1-gram으로 하고, 문자종 경계의 직전에 위치하는 1-gram을 단어 말미에 있는 1-gram으로 하고 있다.
예를 들어, 상기 문서 1「…. 携帶電話の使用時のマナ-が問題になる. …」로부터 문자종 경계로 추출한 “使用”이라고 하는 한자문자열에서는 “使”가 단어의 선두에 있는 1-gram이고, “用”이 단어의 말미에 있는 1-gram이 된다.
유사문서 검색시에는, 먼저 지정된 종문서로부터 단일 문자종 문자열을 추출한다. 이어, 단일 문자종 문자열 내의 연속하는 2개의 1-gram에 있어서 전방의 1-gram의 말미확률과 후방의 1-gram의 선두확률로부터, 이들의 1-gram사이에서 단일 문자종 문자열이 분할될 확률(이하, 「분할확률」이라 한다)을 산출하고, 이 값이 소정의 값(이하, 「분할 한계값」이라 한다)을 넘고 있는 경우에는 여기서 단일 문자종 문자열을 분할한다고 하는 처리를 행한다.
이하, 분할 한계값을 0.050으로 하여, 종래기술 3의 구체적인 처리방법에 대해 설명하기로 한다.
먼저, 문서 등록시에는 모든 등록대상 문서중에 출현하는 각 1-gram에 대해, 출현횟수, 단어의 선두에 출현하는 횟수(이하, 「선두횟수」라 한다) 및 말미에 출현하는 횟수(이하, 「말미횟수」라 한다)를 세어, 출현정보파일에 격납한다. 예를 들어, 상기의 문서 1에서는 “携(휴)”의 출현회수는 1회, 선두횟수는 1회 및 말미횟수는 0회라고 하는 출현정보를 얻을 수 있다. 도 2에서 출현정보파일의 예를 나타낸다.
그 후, 상기 출현정보파일을 참조하여, 각 1-gram에 대해 각각 선두확률과 말미확률을 산출하고, 출현확률파일에 격납한다. 예를 들어, 1-gram“携(휴)”의 선두확률은 768/4,740=0.16, 말미확률은 492/4,740=0.10이 된다. 도 3에서 출현확률파일의 예를 나타낸다.
이어, 단일 문자종 문자열「携帶電話(휴대전화)」를 예로 하여, 종래기술 3의 문서검색방법을 설명하기로 한다.
먼저, 단일 문자종 문자열「携帶電話」중에서 1-gram의 2개조로서, (“携”, “帶”), (“帶”, “電”) 및 (“電”, “話”)의 3개를 추출한다. 이어, 각 1-gram의 조에 있어서, 전방의 1-gram의 말미확률과 후방의 1-gram의 선두확률을, 등록시에 작성한 출현확률파일로부터 취득하여, 분할확률을 산출한다.
도 4에서, 「携帶電話(휴대전화)」에서 추출한 3개의 1-gram 조에 있어서의 분할확률의 산출과정을 나타낸다. 본예에서는, (“携”, “帶”), (“帶”, “電”) 및 (“電”, “話”)의 분할확률로서, 각각 0.011, 0.054 및 0.005가 산출되고, 이들의 분할확률 중, (“帶”, “電”)의 0.054가 분할한계값 0.050보다 크기 때문에, “帶”와 “電”사이에서 분할된다. 한편, (“携”, “帶”) 및 (“電”, “話”)의 분할확률은 각각 0.011 및 0.005로, 이들은 분할한계값 0.050보다 작기 때문에, 이들의 1-gram사이에서는 분할되지 않는다. 그 결과, 「携帶電話」가 “帶”와 “電”의 사이에서 분할되고, 「携帶」와 「電話」의 2개의 특징문자열이 추출되게 된다.
이상이, 종래기술 3의 구체적인 처리방법이다. 이와 같이 종래기술 3에서는, 1-gram의 통계정보를 이용하여 특징문자열을 추출함으로써, 단어사이에 걸쳐지는 부적절한 특징문자열을 추출하지 않도록 하고, 내용이 유사하지 않은 문서가 검색되는 일이 없도록 배려하고 있다.
그러나, 종래기술 3에서는, 분할확률의 절대값으로 분할의 가부를 판단하기 때문에, 단어로서의 특징문자열의 추출정도(抽出精度)가 낮다고 하는 문제가 있다. 예를 들어, 단일 문자종 문자열「帶電」에 대해서는, 1-gram의 조(“帶”, “電”)이 추출되고, 이 1-gram사이의 분할확률로서 0.054가 산출된다.
이 값은 분할한계값 0.050보다 크기 때문에, 「帶電」이 「帶」와 「電」과 같이 잘못 분할(이하, 「오분할(誤分割)」이라 한다)되어버려, 부적절한 2개의 특징문자열이 추출되어 버린다. 이 결과, 「帶」에 관계있는 문서 등도 유사문서로서 검색되어 버리고, 검색 잡음이 혼입하여, 목적으로 하는 중심개념이 어긋난 문서가 유사문서로서 검색되어 버린다고 하는 문제가 있다.
이상에서 설명한 바와 같이, 종래기술 1과 같이 단어사전을 이용하여 단어를 추출하는 방법에서는, 단어사전에 게재되어 있지 않은 단어가 종문서의 중심개념을 나타내는 경우에는, 중심개념에서 벗어난 문서가 검색되어 버린다고 하는 문제가 있다.
또, 종래기술 2와 같이 단일 문자종 문자열에서 문자종류별로 단순히 n-gram을 추출하는 방법에서는, 복합어를 구성할 가능성이 있는 한자 문자열 등에서 단어사이에 걸쳐지는 n-gram을 추출해 버림으로써, 관련이 없는 문서가 유사문서로서 검색되어 버린다고 하는 문제가 있다.
또한, 종래기술 3과 같이, 1-gram의 총계정보를 이용하여 분할확률을 산출하고, 이 값의 절대값으로 분할의 가부를 판단하는 방법에 있어서도, 단어로서의 특징문자열의 추출정도가 낮기 때문에, 검색 잡음이 혼입하여 목적으로 하는 중심개념이 어긋난 문서가 유사문서로서 검색되어 버린다고 하는 문제가 있다.
본 발명은 이러한 종래기술의 문제를 해결하기 위해 이루어진 것으로, 본 발명은, 오분할(誤分割)이 적어지도록 특징문자열을 추출하는 방법 및 장치를 제공하는 것을 목적으로 한다.
또, 오분할이 적어지도록 특징문자열을 추출하는 것에 의해 검색 잡음을 적게 함으로써, 중심개념이 어긋나는 것을 저감시킨 유사문서검색을 행할 수 있는 방법 및 장치를 제공하는 것을 목적으로 한다.
상기 과제을 해결하기 위해, 본 발명에 의한 특징문자열 추출방법에서는, 이하에서 나타내는 공정으로 이루어지는 처리에 의해 종문서로부터 특징문자열의 추출을 행한다.
즉, 본 발명에 의한 특징문자열 추출방법에서는, 문서의 등록처리로서,
(스텝 1) 등록대상 문서를 읽어들이는 문서 읽어들임 스텝,
(스텝 2) 상기 문서 읽어들임 스텝에서 읽어들인 등록대상 문서 중의 문자열을 한자나 가타카나 등의 문자종 경계로 분할하고, 단일문자종문자열로서 추출하는 단일문자종문자열 추출 스텝,
(스텝 3) 상기 단일문자종문자열 추출 스텝에서 추출된 단일문자종문자열에 대해 그 문자종을 판정하고, 한자나 가타카나이면 미리 정해진 길이의 n-gram에 대해 등록문서에 있어서의 출현횟수, 단어의 선두에 출현하는 횟수(이하, 「선두횟수」라고 한다)와 말미에 출현하는 횟수(이하, 「말미횟수」라고 한다) 및 n-gram 그 자체가 단어로서 출현하는 횟수(이하, 「단독횟수」라고 한다)를 계수하는 출현정보 계수(計數) 스텝,
(스텝 4) 상기 출현정보 계수 스텝에서 계수된 n-gram의 출현정보를 이미 데이터 베이스에 등록되어 있는 문서에 관한 n-gram의 출현정보에 가산함으로써, 데이터 베이스 전체의 출현정보를 산출하고, 해당하는 출현정보파일에 격납하는 출현정보파일 작성등록 스텝,
(스텝 5) 상기 출현정보 계수 스텝에서 출현정보가 계수된 n-gram에 관해,해당하는 출현정보파일로부터 데이터 베이스 전체에 있어서의 출현정보를 취득하고, 단어의 선두일 확률(이하, 「선두확률」이라 한다)과 말미일 확률(이하, 「말미확률」이라 한다) 및 n-gram 그 자체가 단어로서 출현할 확률(이하, 「단독확률」이라 한다)을 산출하고, 해당하는 출현확률파일에 격납하는 출현확률파일 작성등록 스텝,
(스텝 6) 상기 단일문자종문자열 추출 스텝에서 추출된 단일문자종문자열로부터 미리 정해진 길이의 n-gram을 추출하고, 등록대상문서 중에 있어서의 출현횟수를 계수하는 출현횟수 계수 스텝,
(스텝 7) 상기 출현횟수 계수 스텝에서 계수된 출현횟수를 해당하는 출현횟수파일에 격납하는 출현횟수파일 작성등록 스텝을 가지며,
종문서(種文書 : query document)로부터 특징문자열을 추출하는 처리로서,
(스텝 8) 종문서를 읽어들이는 종문서 읽어들임 스텝,
(스텝 9) 상기 종문서 읽어들임 스텝에 있어서 읽어들여진 종문서 중의 문자열을 문자종 경계로 분할하고, 단일문자종문자열로서 추출하는 검색용 단일문자종문자열 추출 스텝,
(스텝 10) 상기 검색용 단일문자종문자열 추출 스텝에서 추출된 단일 문자종문자열에 관해, 그 문자종을 판정하고,
한자나 가타카나이면, 상기 출현확률파일을 읽어들여, 단일문자종문자열의 선두에서 제 i번째 문자까지의 문자열의 단독확률, 제 (i+1)번째 문자까지의 문자열의 단독확률, 제 (i+1)번째 문자의 선두확률 및 제 (i+2)번째 문자의 선두확률을취득하고,
제 i번째 문자에서 단일문자종문자열이 분할되는 확률(이하, 「분할확률」이라 한다)을 제 i번째 문자까지의 문자열의 단독확률과 제 (i+1)번째 문자의 선두확률의 적(積)으로서 산출하고,
제 (i+1)번째 문자에서의 분할확률을 제 (i+1)번째 문자까지의 문자열의 단독확률과 제 (i+2)번째 문자의 선두확률의 적으로서 산출하고,
이들 제 i번째 문자와 제 (i+1)번째 문자의 분할확률을 비교하여, 값이 큰 쪽을 단일문자종문자열이 분할되는 점(이하, 「분할점」이라 한다)으로 하고, 선두에서 분할점까지의 문자열을 특징문자열로서 추출하고,
한자나 가타카나 이외이면, 단일문자종문자열 그 자체를 특징문자열로서 추출하고,
추출된 특징문자열을 제외한 나머지 문자열에 대해, 동일한 처리를 반복함으로써 특징문자열을 추출하는 특징문자열 추출 스텝을 갖는다.
또, 상술한 과제를 해결하기 위해, 본 발명에 의한 유사문서 검색방법에서는, 상기 스텝에서 이루어지는 처리에 의해 종문서와 유사한 문서를 검색하기 위한 특징문자열을 추출하고, 이를 이용하여 유사문서검색을 행한다.
즉, 본 발명에 의한 유사문서 검색방법에서는, 문서의 등록처리로서,
(스텝 1) 등록대상문서를 읽어들이는 문서 읽어들임 스텝,
(스텝 2) 상기 문서읽어들임 스텝에서 읽어들인 등록대상문서중의 문서열을 한자나 가타카나 등의 문자종 경계로 분할하고, 단일문자종문자열로서 추출하는 단일문자종문자열 추출 스텝,
(스텝 3) 상기 단일문자종문자열 추출 스텝에서 추출된 단일문자종문자열에 대해, 그 문자종을 판정하고, 한자나 가타카나이면 미리 정해진 길이의 n-gram에 대해 등록문서에 있어서의 출현횟수, 단어의 선두에 출현하는 횟수(이하, 「선두확률」이라 한다)와 말미에 출현하는 횟수(이하, 「말미횟수」라 한다) 및 n-gram 그 자체가 단어로서 출현하는 횟수(이하, 「단독횟수」라 한다)를 계수하는 출현정보 계수 스텝,
(스텝 4) 상기 출현정보 계수 스텝에서 계수된 n-gram의 출현정보를 미리 데이터 베이스에 등록되어 있는 문서에 관한 이 n-gram의 출현정보에 가산함으로써, 데이터 베이스 전체의 출현정보를 산출하고, 해당하는 출현정보파일에 격납하는 출현정보파일 작성등록 스텝,
(스텝 5) 상기 출현정보 계수 스텝에서 출현정보가 계수된 n-gram에 관해, 해당하는 출현정보파일로부터 데이터 베이스 전체에 있어서의 출현정보를 취득하고, 단어의 선두일 확률(이하, 「선두확률」이라 한다)과 말미일 확률(이하, 「말미확률」이라 한다) 및 n-gram 그 자체가 단어로서 출현할 확률(이하, 「단독확률」이라 한다)을 산출하고, 해당하는 출현확률파일에 격납하는 출현확률파일 작성등록 스텝,
(스텝 6) 상기 단일문자종문자열 추출 스텝에서 추출된 단일문자종문자열로부터 미리 정해진 길이의 n-gram을 추출하고, 등록대상문서 중에 있어서의 출현횟수를 계수하는 출현횟수 계수 스텝,
(스텝 7) 상기 출현횟수 계수 스텝에서 계수된 출현횟수를 해당하는 출현횟수파일에 격납하는 출현횟수파일 작성등록 스텝을 가지며,
종문서에 유사한 문서의 검색처리로서,
(스텝 8) 종문서를 읽어들이는 종문서 읽어들임 스텝,
(스텝 9) 상기 종문서 읽어들임 스텝에 있어서 읽어들여진 종문서중의 문자열을 문자종 경계로 분할하고, 단일문자종문자열로서 추출하는 검색용 단일문자종문자열 추출 스텝,
(스텝 10) 상기 검색용 단일문자종문자열 추출 스텝에서 추출된 단일 문자종문자열에 관해, 그 문자종을 판정하고,
한자나 가타카나이면, 상기 출현확률파일을 읽어들여, 단일문자종문자열의 선두에서 제 i번째 문자까지의 문자열의 단독확률, 제 (i+1)번째 문자까지의 문자열의 단독확률, 제 (i+1)번째 문자의 선두확률 및 제 (i+2)번째 문자의 선두확률을 취득하고,
제 i번째 문자에서 단일문자종문자열이 분할될 확률(이하, 「분할확률」이라 한다)을 제 i번째 문자까지의 문자열의 단독확률과 제 (i+1)번째 문자의 선두확률의 적(積)으로서 산출하고,
제 (i+1)번째 문자에서의 분할확률을 제 (i+1)번째 문자까지의 문자열의 단독확률과 제 (i+2)번째 문자의 선두확률의 적으로서 산출하고,
이들 제 i번째 문자와 제 (i+1)번째 문자의 분할확률을 비교하여, 값이 큰 쪽을 단일문자종문자열이 분할되는 점(이하, 「분할점」이라 한다)으로 하여, 선두에서 분할점까지의 문자열을 특징문자열로서 추출하고,
한자나 가타카나 이외이면, 단일문자종문자열 그 자체를 특징문자열로서 추출하고,
추출된 특징문자열을 제외한 나머지 문자열에 대해, 동일한 처리를 반복함으로써 특징문자열을 추출하는 특징문자열 추출 스텝,
(스텝 11) 상기 특징문자열 추출 스텝에서 추출된 모든 특징문자열에 대해, 종문서내에 있어서의 출현횟수를 계수하는 종문서내 출현횟수 계수 스텝,
(스텝 12) 상기 특징문자열 추출 스텝에서 추출된 모든 특징문자열에 대해, 상기 출현횟수파일을 읽어들여, 데이터 베이스내의 각 문서에 있어서의 해당 특징문자열의 출현횟수를 취득하는 데이터 베이스내 출현횟수 취득 스텝,
(스텝 13) 상기 특징문자열 추출 스텝에서 추출된 특징문자열에 대해, 상기 종문서내 출현횟수 계수 스텝에서 계수된 종문서내의 출현횟수와, 상기 데이터 베이스내 출현횟수 취득 스텝에서 취득된 데이터 베이스내의 각 문서에 있어서의 출현횟수를 이용하여, 미리 정해진 산출식에 기초하여 종문서와 데이터 베이스내의 각 문서와의 유사도를 산출하는 유사도 산출 스텝,
(스텝 14) 상기 유사도 산출 스텝에서 산출된 유사도에 기초하여, 검색결과를 출력하는 검색결과 출력 스텝을 갖는다.
상기 문서검색방법을 이용한 본 발명의 원리를 이하에서 설명하기로 한다.
본 발명에서는 문서를 등록할 시에, (스텝 1) ~ (스텝 7)을 실행한다.
먼저, 문서 읽어들임 스텝(스텝 1)에 있어서. 등록대상이 되는 문서를 읽어들인다.
이어, 단일문자종문자열 추출 스텝(스텝 2)에 있어서, 상기 문서 읽어들임 스텝(스텝 1)에서 읽어들여진 등록대상문서중의 문자열을 한자나 가타카나 등의 문자종 경계로 분할하여, 단일문자종으로 이루어지는 문자열을 추출한다. 예를 들어, 상술한 문서 2「…. 電車內での携帶電話の使用は禁止されている.…」라고 하는 문서로부터는 「電車內」「での」「携帶電話」「の」「使用」「は」「禁止」「されている」 등의 단일문자종문자열이 추출된다.
이어, 출현정보 계수 스텝(스텝 3)에 있어서, 단일문자종문자열 추출 스텝(스텝 2)에서 추출된 상기 각 단일문자종문자열에 대해 그 문자종을 판정하여, 한자나 가타카나이면 미리 정해진 길이 n의 n-gram의 등록대상문서중의 출현횟수, 선두횟수, 말미횟수 및 단독횟수를 계수한다. 예를 들어, 한자 문자열과 가타카나 문자열로부터 1-gram 및 2-gram의 출현횟수, 선두횟수 및 말미횟수를 계수하는 것으로 정해져 있는 경우에는, 상기 단일문자종문자열 추출 스텝(스텝 2)에서 추출된 단일문자종문자열에 대해, “携”의 출현횟수는 1회, 그 중 선두횟수는 1회, 말미횟수는 0회, 단독회수는 0회이고, “携帶”의 출현횟수는 1회, 그 중 선두회수는 1회, 말미횟수는 0회, 단독횟수는 0회로 계수된다.
이어, 출현정보파일 작성등록 스텝(스텝 4)에 있어서, 먼저 출현정보 계수 스텝(스텝 3)에서 추출된 n-gram의 출현정보를 이미 데이터 베이스에 등록되어 있는 문서에 관한 출현정보에 가산하고, 누적정보로서의 출현정보를 해당하는 출현정보파일에 격납한다. 도 5에서 출현정보파일의 예를 나타낸다. 본 도면에서 나타낸 출현정보파일은, 상기 출현정보 계수 스텝(스텝 3)에 있어서 추출된 출현정보를 격납한 경우의 예이다. 본 도면에서 나타낸 출현정보파일은 상술한 1-gram “携”에 관해서는 출현횟수 4,740회, 선두횟수 768회, 말미횟수 492회 및 단독횟수 42회라고 하는 정보를 격납하고, 2-gram “携帶”에 관해서는 출현횟수 462회, 선두횟수 419회, 말미횟수 52회 및 단독횟수 48회라고 하는 정보를 격납하고 있는 것을 나타낸다.
이어, 출현확률파일 작성등록 스텝(스텝 5)에 있어서, 출현정보파일 작성등록 스텝(스텝 4)에서 출현정보가 격납된 n-gram에 대해, 각각 출현확률을 산출하고, 해당하는 출현확률파일에 격납한다. 예를 들어, 도 5에서 나타내는 바와 같이, 1-gram “携”에 관해서는 출현횟수 4,740회, 선두횟수 768회, 말미횟수 492회 및 단독횟수 42회이기 때문에, 선두확률은 768/4,740=0.16, 말미확률은 492/4,740=0.10, 단독확률은 42/4,740=0.01로 계산된다. 도 6에서 출현확률파일의 예를 나타낸다. 본 도면에서 나타낸 출현확률파일은 상기 출현정보 계수 스텝(스텝 3)에 있어서 추출된 출현확률을 격납한 경우의 예로서, 상술한 1-gram “携”에 관해서는 선두확률 0.16, 말미확률 0.10 및 단독확률 0.01이라고 하는 정보가 격납되고, 2-gram “携帶”에 관해서는 선두확률 0.90, 말미확률 0.11 및 단독확률 0.10이라고 하는 정보가 격납되어 있는 것을 나타낸다.
이어, 출현횟수 계수 스텝(스텝 6)에 있어서, 단일문자종문자열 추출 스텝(스텝 2)에서 추출된 모든 단일문자종문자열로부터 미리 정해진 길이의 n-gram을 추출하고, 등록대상문서중에 있어서의 출현횟수를 계수한다. 그리고, 출현횟수파일작성등록 스텝(스텝 7)에 있어서, 상기 출현횟수 계수 스텝(스텝 6)에서 추출된 각 n-gram의 출현횟수를 해당하는 출현횟수파일에 격납한다.
도 24에서, 상술한 문서 2「…. 電車內での携帶電話の使用は禁止されている.…」를 예로 하여 출현횟수파일 작성처리의 순서를 나타낸다.
먼저, 단일문자종문자열 추출 스텝(스텝 2)에서 등록대상문서인 문서 2로부터 모든 단일문자종문자열을 추출한다.
이어, 출현횟수 계수 스텝(스텝 6)에서, 상기 단일문자종문자열 추출 스텝(스텝 2)에서 추출된 모든 단일문자종문자열로부터 미리 정해진 길이의 n-gram을 추출하고, 등록대상문서내의 출현횟수를 계수한다. 본 도면에서 나타내는 예에서는, 단일문자종문자열로부터 길이가 3인 n-gram까지를 추출하는 것으로 하고, 단일문자종문자열(2404)에 포함되는 「電車內」에서 길이가 1인 “電”, “車”, “內”, 길이가 2인 “電車”, “車內” 및 길이가 3인 “電車內”가 추출되고, 문서 2에 있어서의 출현횟수가 계수된다. 이 결과, “電”은 문서 2중에 2회 출현하고, “車”는 문서 2중에 1회 출현하고 있다고 계수된다.
그리고, 출현횟수파일 작성등록 스텝(스텝 7)에서, 출현횟수 계수 스텝(스텝 6)에서 추출된 각 n-gram의 출현횟수를 해당하는 출현횟수파일에 격납한다. 이 결과, 문서 2로부터는 1-gram “電”(2, 2), “車”(2, 1), “內”(2, 1), 2-gram “電車”(2, 1), “車內”(2, 1), 3-gram “電車內”(2, 1)과 같이 각 n-gram의 등록대상문서의 식별번호와 출현횟수가 조(組)로서 격납된다. 여기서, “車內”(2, 1)은 2-gram “車內”가 문서번호 2의 문서에 1회 출현한다고 하는 것을 나타내고 있다.
검색시에는 (스텝 8) ~ (스텝 14)를 실행한다.
먼저, 종문서 읽어들임 스텝(스텝 8)에 있어서, 종문서로서 문서 1을 읽어들인다.
이어, 검색용 단일문자종문자열 추출 스텝(스텝 9)에 있어서, 상기 종문서 읽어들임 스텝(스텝 8)에서 읽어들여진 종문서(문서 1)중의 문자열을 문자종 경계로 분할하고, 단일문자종문자열을 추출한다.
이어, 특징문자열 추출 스텝(스텝 10)에 있어서, 상기 검색용 단일문자종문자열 추출 스텝(스텝 9)에서 추출된 단일문자종문자열에 대해 그 문자종을 판정한다.
이 문자종이 한자나 가타카나이면, 상술한 출현확률파일을 읽어들여, 단일문자종문자열의 선두에서 제 i번째 문자까지의 문자열의 단독확률, 제 (i+1)번째 문자까지의 문자열의 단독확률, 제 (i+1)번째 문자의 선두확률 및 제 (i+2)번째 문자의 선두확률을 취득한다. 그리고, 제 i번째 문자에서의 분할확률을 제 i번째 문자까지의 문자열의 단독확률과 제 (i+1)번째 문자의 선두확률의 적으로서 산출하고, 제 (i+1)번째 문자에서의 분할확률을 제 (i+1)번째 문자까지의 문자열의 단독확률과 제 (i+2)번째 문자의 선두확률의 적으로서 산출한다. 그리고, 이들의 제 i번째 문자와 제 (i+1)번째 문자의 분할확률을 비교하고, 값이 큰 쪽을 분할점으로 하여, 선두에서 이 분할점까지의 문자열을 특징문자열로서 추출된다.
또, 그 문자종이 한자나 가타카나가 아니면, 단일문자종문자열 그 자체를 특징문자열로서 추출하고, 이하, 동일한 처리를 반복함으로써 특징문자열을 추출한다.
도 8에서, 문서 1에서 추출한 단일문자종문자열「携帶電話」로부터 특징문자열을 추출하는 예를 나타낸다. 먼저, 「携帶電話」에 있어서 제 1번째 문자에서의 분할확률은 「携」의 단독확률 0.01과 「帶」의 선두확률 0.11의 적으로서 0.001이 산출되고, 제 2번째 문자에서의 분할확률은 「携帶」의 단독확률 0.10과 「電」의 선두확률 0.36의 적으로서 0.036이 산출된다. 이어, 이들의 분할확률을 비교하여, 값이 큰 쪽에서 단일문자종문자열을 분할한다. 이 경우, 제 2번째 문자의 분할확률 0.036 쪽이 크기 때문에, 단일문자종문자열「携帶電話」는 「携帶」와 「電話」로 분할된다.
또, 도 9에서, 종래기술 3에서는 적절하게 분할되지 않는 단일문자종문자열「帶電」의 예에 대해 본 발명의 분할처리를 나타낸다. 먼저, 「帶電」에 있어서 제 1번째 문자에서의 분할확률은 「帶」의 단독확률 0.01과 「電」의 단독확률 0.01의 적으로서 0.0001로 산출된다. 또, 제 2번째 문자에서의 분할확률, 즉 「帶電」이 단일문자종문자열 그 자체로서 출현할 확률은 「帶電」의 단독확률 0.10으로 산출된다. 이들의 값을 비교하여, 값이 큰 쪽에서 단일문자종문자열로 분할된다 이 경우, 「帶電」의 단독확률 0.10 쪽이 크기 때문에, 「帶電」은 제 2번째 문자에서 분할되게 되어, 결과적으로 단일문자종문자열「帶電」은 분할되지 않고, 한 덩어리의 문자열로서 추출되게 된다.
이와 같이 분할확률을 비교하여 단일문자종문자열을 분할함으로써, 데이터베이스중에서의 실제의 출현상황을 정확하게 반영한 단어 분할을 행할 수 있기 때문에, 분할확률의 절대값으로 분할하는 상술한 종래기술 3에 비해, 부적절한 분할을 대폭으로 삭감하는 것이 가능하게 된다.
이어, 종문서내 출현횟수 계수 스텝(스텝 11)에 있어서, 상기 특징문자열 추출 스텝(스텝 10)에서 추출된 특징문자열의 종문서내에서의 출현횟수를 계수한다.
그리고, 데이터 베이스내 출현횟수 취득 스텝(스텝 12)에 있어서, 상기 특징문자열 추출 스텝(스텝 10)에서 추출된 특징문자열에 대해, 상술한 출현횟수파일을 참조하여 데이터 베이스내의 각 문서에 있어서의 출현횟수를 취득한다.
그리고, 유사도 산출 스텝(스텝 13)에 있어서, 상기 특징문자열 추출 스텝(스텝 10)에서 추출된 특징문자열에 대해, 상기 종문서내 출현횟수 계수 스텝(스텝 11)과 데이터 베이스내 출현횟수 취득 스텝(스텝 12)에서 계수된 종문서내에서의 출현횟수와, 데이터 베이스내의 각 문서에서의 출현횟수를 기초로, 유사도가 산출된다.
유사도의 산출에는 예를 들어 「일본국 특개평6-110948호 공보」에 개시되어 있는 이하의 유사도 산출식(1)을 이용해도 좋다.
여기서, U(j)는 종문서내의 j번째의 n-gram의 정규화 웨이트를 나타내고, 각 n-gram의 종문서내 출현횟수로부터 산출된다. R(j)는 데이터 베이스중 문서의 j번째의 n-gram의 정규화 웨이트를 나타내고, 각 n-gram의 데이터 베이스내의 각 문서에 있어서의 출현횟수로부터 산출된다 . 정규화 웨이트란, 데이터 베이스에 있어서의 n-gram의 출현 편향을 나타내고, 이 값이 큰 n-gram일수록 어느 특정 문서에 치우쳐 출현한다는 것을 의미한다. 이 정규화 웨이트의 산출방법에 대해서는, 「일본국 특개평6-110948호 공보」에 설명되어 있기 때문에, 여기서는 설명을 생략한다. 또, n은 데이터 베이스중의 전(全)문서 수를 나타낸다.
이 유사도 산출식(1)을 이용하여, 문서 1이 종문서로서 지정된 경우의 문서(i)의 유사도 S(i)를 산출하면, 다음과 같이 된다.
S(1) = 1.0
S(2) = 0.262
S(3) = 0.048
S(4) = 0.0
이 결과, 검색결과 출력 스텝(스텝 14)에서, 문서를 유사도가 높은 순으로 정렬하면, 문서 1, 문서 2, 및 문서 3의 순으로 표시된다. 유사도가 0인 문서 4는 검색결과로서는 출력되지 않는다.
이상에서 설명한 바와 같이, 본 발명의 특징문자열 추출방법을 이용한 유사문서 검색방법에 의하면, 종래기술 1과 같이 단어사전을 이용하지 않고 단일문자종문자열로부터 문자열을 기계적으로 추출할 수 있기 때문에, 어떠한 단어에 대해서도 빠짐없이 검색할 수 있어, 종문서가 나타내는 개념을 정확하게 검색하는 것이가능하게 된다.
또, 종래기술 2와 같이 단일문자종문자열에서 문자종별로 단순히 n-gram을 추출하는 것이 아니라, 통계정보를 이용하여 의미가 정리된 n-gram을 추출함으로써, 종문서가 나타내는 개념을 보다 정확하게 검색하는 것이 가능하게 된다.
또한, 종래기술 3과 같이 분할확률의 절대값으로 분할하는 것이 아니라, 분할확률을 비교하여 그 값이 큰 쪽에서 분할함으로써, 데이터 베이스중에서의 실제의 출현상황을 정확하게 반영한 단어 분할이 가능하게 되어, 부적절한 단어 분할을 대폭으로 삭감하는 것이 가능하게 된다. 따라서, 종래기술 3에 비해 부적절한 특징문자열이 검색되지 않기 때문에, 종문서가 나타내는 개념을 적절하게 검색할 수 있음과 동시에, 고속으로 유사문서를 검색하는 것이 가능하게 된다.
도 1은 본 발명에 의한 유사문서 검색 시스템의 제 1 실시예의 전체구성을 나타내는 도면이다.
도 2는 종래기술 3에 있어서의 출현정보파일의 예를 나타내는 도면이다.
도 3은 종래기술 3에 있어서의 출현확률파일의 예를 나타내는 도면이다.
도 4는 종래기술 3에 있어서의 특징문자열 추출 방법의 예를 나타내는 도면이다.
도 5는 본 발명에 의한 출현정보파일의 예를 나타내는 도면이다.
도 6은 본 발명에 의한 출현확률파일의 예를 나타내는 도면이다.
도 7은 본 발명의 제 3 실시예에 있어서의 n-gram 인덱스의 예를 나타내는 도면이다.
도 8은 본 발명의 제 1 실시예에 있어서의 분할확률비교 특징문자열 추출 프로그램을 한자 문자열에 적용한 경우의 처리예를 나타내는 도면이다.
도 9는 본 발명에 의한 특징문자열의 추출방법의 예를 나타내는 도면이다.
도 10은 본 발명의 제 1 실시예에 있어서의 시스템 제어 프로그램(110)의 처리순서를 나타내는 PAD도이다.
도 11은 본 발명의 제 1 실시예에 있어서의 문서등록 제어 프로그램(111)의 처리순서를 나타내는 PAD도이다.
도 12는 본 발명의 제 1 실시예에 있어서의 출현정보파일 작성등록 프로그램(121)의 처리순서를 나타내는 PAD도이다.
도 13은 본 발명의 제 1 실시예에 있어서의 검색 제어 프로그램(112)의 처리순서를 나타내는 PAD도이다.
도 14는 본 발명의 제 1 실시예에 있어서의 유사문서 검색 프로그램(131)의 처리순서를 나타내는 PAD도이다.
도 15는 본 발명의 제 3 실시예에 있어서의 출현횟수 취득의 예를 나타내는도면이다.
도 16은 본 발명의 제 1 실시예에 있어서의 출현확률파일 작성등록 프로그램(124)의 처리순서를 나타내는 PAD도이다.
도 17은 본 발명의 제 1 실시예에 있어서의 특징문자열 추출 프로그램(141)의 처리순서를 나타내는 PAD도이다.
도 18은 본 발명의 제 1 실시예에 있어서의 분할확률비교 특징문자열 추출 프로그램(142)의 처리순서를 나타내는 PAD도이다.
도 19는 본 발명의 제 1 실시예에 있어서의 분할확률 산출 프로그램(143)의 처리순서를 나타내는 PAD도이다.
도 20은 본 발명의 제 1 실시예에 있어서의 분할확률비교 특징문자열 추출 프로그램(142)를 가타카나 문자열에 적용한 경우의 처리예를 나타내는 도면이다.
도 21은 본 발명의 제 2 실시예에 있어서의 분할확률비교 특징문자열 추출 프로그램(142a)의 처리순서를 나타내는 PAD도이다.
도 22는 본 발명의 제 1 실시예에 있어서의 분할확률비교 특징문자열 추출 프로그램(142)의 처리예를 나타내는 도면이다.
도 23은 본 발명의 제 2 실시예에 있어서의 분할확률비교 특징문자열 추출 프로그램(142a)의 처리예를 나타내는 도면이다.
도 24는 본 발명에 의한 출현횟수파일 작성처리의 순서를 나타내는 도면이다.
도 25는 본 발명의 제 1 실시예에 있어서의 출현횟수파일 작성등록 프로그램(127)의 처리순서를 나타내는 PAD도이다.
도 26은 본 발명의 제 1 실시예에 있어서의 출현횟수 취득 프로그램(146)의 처리순서를 나타내는 PAD도이다.
도 27은 본 발명의 제 1 실시예에 있어서의 특징문자열 추출 프로그램(141)의 처리예를 나타내는 도면이다.
도 28은 본 발명의 제 1 실시예에 있어서의 분할확률 산출의 처리예를 나타내는 도면이다.
도 29는 본 발명의 제 3 실시예에 있어서의 유사문서 검색 프로그램(131)의 구성을 나타내는 도면이다.
도 30은 본 발명의 제 3 실시예에 있어서의 출현횟수 취득 프로그램(146a)의 처리순서를 나타내는 도면이다.
도 31은 본 발명의 제 4 실시예에 있어서의 특징문자열 추출 프로그램(141a)의 구성을 나타내는 도면이다.
도 32는 본 발명의 제 4 실시예에 있어서의 특징문자열 추출 프로그램(141a)의 처리순서를 나타내는 PAD도이다.
도 33은 본 발명의 제 4 실시예에 있어서의 특징문자열 추출 프로그램(141a)의 처리예를 나타내는 도면이다.
〈도면의 주요부분에 대한 부호의 설명〉
100 : 디스플레이 101 : 키보드
102 : 중앙연산장치 103 : 플로피디스크 드라이브
104 : 플로피디스크 105 : 자기디스크 장치
106 : 주메모리 107 : 버스
110 : 시스텝 제어 프로그램 111 : 문서등록 제어 프로그램
112 : 검색 제어 프로그램 120 : 텍스트 등록 프로그램
121 : 출현정보파일 작성등록 프로그램 122 : 출현정보 계수 프로그램
123 : 출현정보파일 작성 프로그램
124 : 출현확률파일 작성등록 프로그램 125 : 출현확률 산출 프로그램
126 : 출현확률파일 작성 프로그램
127 : 출현횟수파일 작성등록 프로그램 128 : 출현횟수 계수 프로그램
129 : 출현횟수파일 작성 프로그램 130 : 검색조건식 해석 프로그램
131 : 유사문서 검색 프로그램 132 : 검색결과 출력 프로그램
140 : 종문서 읽어들임 프로그램
141, 141a : 특징문자열 추출 프로그램
142 : 분할확률비교 특징문자열 추출 프로그램
143 : 분할확률 산출 프로그램
144 : 출현확률파일 읽어들임 프로그램
145 : 종문서내 출현횟수 계수 프로그램 146 : 출현횟수 취득 프로그램
147 : 출현횟수파일 읽어들임 프로그램 148 : 유사도 산출 프로그램
150 : 텍스트 151 : 출현정보파일
152 : 출현확률파일 153 : 출현횟수파일
160 : 공유 라이브러리
161 : 단일문자종문자열 추출 프로그램 170 : 워크 에리어
200 : 종래기술 3에 있어서의 출현정보파일의 예
300 : 종래기술 3에 있어서의 출현확률파일의 예
500 : 본 발명에 의한 출현정보파일의 예
600 : 본 발명에 의한 출현확률파일의 예
700 : 본 발명의 제 3 실시예에 있어서의 n-gram 인덱스의 예
701 : 문서 1의 유사문서(문서 2, 문서3, 문서 4)
702 : n-gram 인덱스 작성등록 스텝
본 발명의 제 1 실시예에 대해 도 1을 이용하여 설명하기로 한다.
본 발명을 적용한 유사문서검색 시스템의 제 1 실시예는, 디스플레이(100), 키보드(101), 중앙연산처리장치(CPU : 102), 자기디스크장치(105), 플로피디스크 드라이브(FDD : 103), 주메모리(106) 및 이들을 잇는 버스(107)로 구성된다.
자기디스크장치(105)에는 텍스트(150), 출현정보파일(151), 출현확률파일(152) 및 출현횟수파일(153)이 격납된다. FDD(103)을 매개로 하여 플로피디스크(104)에 격납되어 있는 등록문서나 종문서(種文書) 등의 정보가 주메모리(106)내에 확보된 워크 에리어(170) 또는 자기디스크장치(105)에 읽어들여진다.
주메모리(106)에는, 시스템 제어 프로그램(110), 문서등록 제어 프로그램(111), 공유(共有) 라이브러리(160), 텍스트 등록 프로그램(120), 출현정보파일 작성등록 프로그램(121), 출현확률파일 작성등록 프로그램(124), 출현횟수파일 작성등록 프로그램(127), 검색 제어 프로그램(112), 검색조건식 해석 프로그램(130), 유사문서 검색 프로그램(131) 및 검색결과 출력 프로그램(132)가 격납됨과 동시에 워크 에리어(170)이 확보된다.
이들 프로그램은 플로피 디스크(104)나 CD-ROM(도 1에서는 도시하지 않음) 등 운반가능한 기억매체에 격납되고, 이 기억매체로부터 출력되어, 자기디스크장치(105)에 인스톨된다. 이들 프로그램은, 본 유사문서 검색 시스템 기동시에, 시스템 제어 프로그램(110)에 의해 자기디스크장치(105)로부터 출력되어, 주메모리(106)에 격납된다.
공유 라이브러리(160)은 단일문자종문자열 추출 프로그램(161)로 구성된다.
출현정보파일 작성등록 프로그램(121)은 출현정보 계수 프로그램(122)와 출현정보파일 작성 프로그램(123)으로 구성됨과 동시에, 후술하는 바와 같이 공유 라이브러리(160)으로부터 단일문자종문자열 추출 프로그램(161)을 호출하는 구성을 취한다.
출현확률파일 작성등록 프로그램(124)는 출현확률 산출 프로그램(125)와 출현확률파일 작성 프로그램(126)으로 구성된다.
출현횟수파일 작성등록 프로그램(127)은 출현횟수 계수 프로그램(128)과 출현횟수파일 작성 프로그램(129)로 구성된다.
유사문서 검색 프로그램(131)은 종문서 읽어들임 프로그램(140), 특징문자열 추출 프로그램(141), 종문서내 출현횟수 계수 프로그램(145), 출현횟수 취득 프로그램(146) 및 유사도 산출 프로그램(148)로 구성됨과 동시에, 후술하는 바와 같이 공유 라이브러리(160)에서 단일문자종문자열 추출 프로그램(161)을 호출하는 구성을 취한다.
특징문자열 추출 프로그램(141)은 분할확률비교 특징문자열 추출 프로그램(142)를 호출하는 구성을 취한다. 분할확률비교 특징문자열 추출 프로그램(142)는 분할확률 산출 프로그램(143)을 호출하는 구성을 취한다. 분할확률 산출 프로그램(143)은 출현확률파일 읽어들임 프로그램(144)를 호출하는 구성을 취한다.
출현횟수 취득 프로그램(146)은 출현횟수파일 읽어들임 프로그램(147)을 호출하는 구성을 취한다.
문서등록 제어 프로그램(111) 및 검색 제어 프로그램(112)는 사용자에 의한 키보드(101)로부터의 지시에 응하여 시스템 제어 프로그램(110)에 의해 기동되고, 각각 텍스트 등록 프로그램(120), 출현정보파일 작성등록 프로그램(121), 출현확률파일 작성등록 프로그램(124) 및 출현횟수파일 작성등록 프로그램(127)의 제어와, 검색조건식 해석 프로그램(130), 유사문서 검색 프로그램(131) 및 검색결과 출력 프로그램(132)의 제어를 행한다.
이하, 본 실시예에 있어서 유사문서 검색 시스템의 처리순서에 대해 설명하기로 한다.
먼저, 시스템 제어 프로그램(110)의 처리순서에 대해 도 10의 PAD(Problem Analysis Diagram)도를 이용하여 설명하기로 한다.
시스템 제어 프로그램(110)에서는, 먼저 스텝(1000)에서, 키보드(101)로부터 입력된 명령을 해석한다.
이어, 스텝(1001)에서 이 해석결과가 등록실행의 명령이라고 판정된 경우에는, 스텝(1002)에서 문서등록 제어 프로그램(111)을 기동하고, 문서의 등록을 행한다.
또, 스텝(1003)에서 검색실행의 명령이라고 판정된 경우에는, 스텝(1004)에서 검색 제어 프로그램(112)를 기동하고, 유사문서의 검색을 행한다.
이상이, 시스템 제어 프로그램(110)의 처리순서이다.
이어, 도 10에서 도시한 스텝(1002)에서 시스템 제어 프로그램(110)에 의해 기동되는 문서등록 제어 프로그램(111)의 처리순서에 대해, 도 11의 PAD도를 이용하여 설명하기로 한다.
문서등록 제어 프로그램(111)에서는, 먼저 스텝(1100)에서 텍스트 등록 프로그램(120)을 기동하여, FDD(103)에 삽입된 플로피 디스크(104)로부터 등록할 문서의 텍스트 데이터를 워크 에리어(170)에 읽어들이고, 이를 텍스트(150)으로서 자기 디스크장치(105)에 격납한다. 덱스트 데이터는 플로피 디스크(104)를 이용하여 입력되는 것에 한정하지 않고, 통신회선(도 1에서는 도시하지 않음)이나 CD-ROM장치(도 1에서는 도시하고 있지 않다) 등을 이용하여 다른 장치로부터 입력하는 구성을 취하는 것도 가능하다.
이어, 스텝(1101)에서 출현정보파일 작성등록 프로그램(121)을 기동하여, 워크 에리어(170)에 격납되어 있는 텍스트(150)을 독출하고, 그 중의 각 n-gram에 대한 출현정보파일(151)을 작성하여, 자기디스크장치(105)에 격납한다.
이어, 스텝(1102)에서 출현확률파일 작성등록 프로그램(124)를 기동하여, 워크 에리어(170)에 격납되어 있는 텍스트(150)중의 각 n-gram에 대한 출현확률을 산출하고, 해당하는 출현확률파일(152)로서 자기디스크장치(105)에 격납한다.
이어, 스텝(1103)에서 출현횟수파일 작성등록 프로그램(127)을 기동하여, 워크 에리어(170)에 격납되어 있는 텍스트(150)을 독출하고, 그 중의 각 문서에 있어서 모든 n-gram에 대한 출현횟수를 계수하여, 해당하는 출현횟수(153)으로서 자기디스크장치(105)에 격납한다.
이상이, 문서등록 제어 프로그램(111)의 처리순서이다.
이어, 도 11에서 도시한 스텝(1101)에서 문서등록 제어 프로그램(111)에 의해 기동되는 출현정보파일 작성등록 프로그램(121)의 처리순서에 대해, 도 12의 PAD도를 이용하여 설명하기로 한다.
출현정보파일 작성등록 프로그램(121)에서는, 먼저 스텝(1200)에서 단일문자종문자열 추출 프로그램(161)을 기동하여, 텍스트(150)의 문자열을 문자종 경계로 분할함으로써 단일문자종문자열을 추출하고, 워크 에리어(170)에 격납한다.
이어, 스텝(1201)에 있어서, 출현정보 계수 프로그램(122)를 기동하여, 텍스트(150)에서 미리 정해진 길이의 n-gram의 출현횟수와, 워크 에리어(170)에 격납되어 있는 단일문자종문자열의 선두횟수, 말미횟수 및 단독횟수를 계수하고, 동일하게 워크 에리어(170)에 격납한다.
그리고, 스텝(1202)에 있어서, 출현정보파일 작성 프로그램(123)을 기동하여, 워크 에리어(170)에 격납되어 있는 텍스트(150)에 있어서의 n-gram의 출현횟수, 선두횟수, 말미횟수 및 단독횟수를 각각 출현정보파일(151)에 격납되어 있는 해당 n-gram의 출현횟수, 선두횟수, 말미횟수 및 단독횟수에 가산하여, 워크 에리어(170)에 격납함과 동시에 출현정보파일(151)로서 자기디스크장치(105)에 격납한다.
이상이, 출현정보파일 작성등록 프로그램(121)의 처리순서이다.
이어, 도 11에서 도시한 스텝(1102)에서 문서등록 제어 프로그램(111)에 의해 기동되는 출현확률파일 작성등록 프로그램(124)의 처리순서에 대해, 도 16의 PAD도를 이용하여 설명하기로 한다.
출현확률파일 작성등록 프로그램(124)에서는, 먼저 스텝(1600)에서 출현확률 산출 프로그램(125)를 기동하여, 워크 에리어(170)에 격납되어 있는 각 n-gram의 출현정보로부터 각 n-gram의 단독확률, 선두확률 및 말미확률을 산출하고, 워크 에리어(170)에 격납한다.
이어, 스텝(1601)에 있어서, 출현확률파일 작성 프로그램(126)을 기동하여, 워크 에리어(170)에 격납되어 있는 각 n-gram의 단독확률, 선두확률 및 말미확률을 출현확률파일(152)로서 자기디스크장치(105)에 격납한다.
이상이, 출현확률파일 작성등록 프로그램(124)의 처리순서이다.
이어, 도 11에서 도시한 스텝(1103)에서 문서등록 제어 프로그램(111)에 의해 기동되는 출현횟수파일 작성등록 프로그램(127)의 처리순서에 대해, 도 25에서 나타내는 PAD도를 이용하여 설명하기로 한다.
출현횟수파일 작성등록 프로그램(127)에서는, 먼저 스텝(2500)에서 출현횟수 계수 프로그램(128)을 기동하여, 도 12의 스텝(1200)에서 워크 에리어(170)에 격납한 모든 단일문서종문서열 중에서, 길이가 1에서 단일문자종문자열 자체의 길이 m까지의 n-gram을 추출하고, 등록대상문서에 있어서의 그들의 출현횟수를 계수하여, 워크 에리어(170)에 격납한다.
이어, 스텝(2501)에 있어서, 출현횟수파일 작성 프로그램(129)를 기동하여, 스텝(2500)에서 계수한 각 n-gram의 출현횟수를 등록대상문서의 식별번호(이하, 「문서번호」라 한다)와 함께 출현횟수파일(153)으로서 자기디스크장치(105)에 격납한다.
이어, 도 10에서 도시한 스텝(1004)에서 시스템 제어 프로그램(110)에 의해 기동되는 검색 제어 프로그램(112)에 의한 유사문서검색의 처리순서에 대해, 도 13의 PAD도를 이용하여 설명하기로 한다.
검색제어프로그램(112)에서는, 먼저 스텝(1300)에서 검색조건식 해석 프로그램(130)을 기동하여, 키보드(101)로부터 입력된 검색조건식을 해석하고, 검색조건식의 패러미터로서 지정된 종문서의 문서번호를 추출한다.
이어, 스텝(1301)에서 유사문서 검색 프로그램(131)을 기동하여, 상기 검색조건식 해석 프로그램(130)에 의해 추출된 문서번호의 종문서에 대해, 자기디스크장치(105)에 격납되어 있는 텍스트(150)중의 각 문서의 유사도를 산출한다.
마지막으로, 스텝(1302)에 있어서, 검출결과 출력 프로그램(132)를 기동하고, 상기 유사문서 검색 프로그램(131)에서 산출된 각 문서의 유사도에 기초하여, 검색결과를 출력한다.
이상이, 검색 제어 프로그램(112)에 의한 문서검색의 처리순서이다.
이어, 도 13에서 도시한 스텝(1301)에서 검색 제어 프로그램(112)에 의해 기동되는 유사문서 검색 프로그램(131)의 처리순서에 대해, 도 14의 PAD도를 이용하여 설명하기로 한다.
유사문서 검색 프로그램(131)에서는, 먼저 스텝(1400)에서 종문서 읽어들임 프로그램(140)을 기동하여, 검색조건식 해석 프로그램(130)에 의해 검색조건식으로부터 추출된 문서번호의 종문서를 자기디스크장치(105)중의 텍스트(150)으로부터 워크 에리어(170)에 읽어들인다.
여기서, 종문서는, 텍스트(150)중에 격납되어 있는 문서를 읽어들일 뿐만 아니라, 키보드(101)로부터 직접 입력하는 것도 가능하고, 플로피 디스크(104), CD-ROM장치(도 1에서는 도시하고 있지 않다)나 통신회선(도 1에서는 도시하고 있지 않다) 등을 이용하여, 다른 장치로부터 입력하는 장치를 취하는 것도 가능하며, 또, 전문검색 시스템 등에 의한 검색결과로부터 입력하는 구성을 취하는 것도 가능하고, 또한, 검색결과 출력 프로그램(132)의 출력으로부터 종문서를 선택하는 구성을 취하는 것도 가능하다.
이어, 스텝(1401)에 있어서, 공유 라이브러리(160)의 단일문자종문자열 추출 프로그램(161)을 기동하여, 상기 종문서 읽어들임 프로그램(140)에서 읽어들인 종문서의 텍스트를 문자종 경계로 분할하여 단일문자종문자열을 취득하고, 워크 에리어(170)에 격납한다.
그리고, 스텝(1402)에 있어서, 후술하는 특징문자열 추출 프로그램(141)을 기동하여, 상기 단일문자종문자열 추출 프로그램(161)을 취득한 단일문자종문자열로부터 특징문자열을 추출한다.,
이어, 스텝(1403)에 있어서, 종문서내 출현횟수 계수 프로그램(145)를 기동하여, 상기 특징문자열 추출 프로그램(141)에서 취득한 특징문자열의, 종문서내에서의 출현횟수를 계수한다.
이어, 스텝(1404)에 있어서, 출현횟수 취득 프로그램(146)을 기동하여, 상기 특징문자열 추출 프로그램(141)에서 취득한 특징문자열의 텍스트(150)중의 각 문서에 있어서의 출현횟수를 취득한다.
마지막으로, 스텝(1405)에 있어서, 유사도 산출 프로그램(148)을 기동하여, 상기 특징문자열 추출 프로그램(141)에서 취득한 각 특징문자열에 대한, 상기 종문서내 출현횟수 취득 프로그램(145)에서 취득한 종문서내 출현횟수와, 상기 출현횟수 취득 프로그램(146)에서 취득한 텍스트(150)중의 각 문서에 있어서의 출현횟수로부터, 종문서와 텍스트(150)내의 각 문서와의 유사도를 산출한다.
본 실시예에서는, 유사도의 산출에, 상술한 유사도 산출식(1)을 이용하나, 다른 방법을 이용해도 무관하다. 이 유사도 산출식(1)을 이용하여, 상술한 문서1「…. 携帶電話の使用時のマナ-が問題になる. …」가 종문서로서 지정된 경우의 문서i의 유사도 S(i)를 산출하면, 다음과 같이 된다.
S(1) = 1.0
S(2) = 0.262
S(3) = 0.048
S(4) = 0.0
이상이, 유사문서 검색 프로그램(131)의 처리순서이다.
이어, 도 14에서 도시한 스텝(1402)에 있어서, 유사문서 검색 프로그램(131)에 의해 기동되는 특징문자열 추출 프로그램(141)의 처리순서에 대해, 도 17의 PAD도를 이용하여 설명하기로 한다.
특징문자열 추출 프로그램(141)에서는, 스텝(1700)에 있어서, 도 14에서 나타낸 스텝(1401)에 있어서의 단일문자종문자열 추출 프로그램(161)에 의해, 워크 에리어(170)에 격납되어 있는 모든 단일문자종문자열을 취득한다.
이어, 스텝(1701)에 있어서, 상기 스텝(1700)에서 취득한 모든 단일문자종문자열에 대해, 다음의 스텝(1702 ~ 1704)를 반복 실행한다.
즉, 스텝(1702)에서는, 스텝(1700)에서 취득한 단일문자종문자열의 문자종을 판정하고, 이 문자종이 한자(漢字)나 가타카나인 경우에는 스텝(1703)을 실행하고, 한자나 가타카나 이외인 경우에는 스텝(1704)를 실행한다.
스텝(1703)에서는, 후술하는 분할확률비교 특징문자열 추출 프로그램(142)를 기동하여, 한자나 가타카나의 단일문자종으로부터 특징문자열을 추출한다.
스텝(1704)에서는, 한자나 가타카나 이외의 단일문자종문자열 그 자체를 특징문자열로서 추출한다.
그리고, 마지막으로, 스텝(1705)에 있어서, 상기 스텝(1702)나 스텝(1703)에서 추출된 특징문자열을 워크 에리어(170)에 격납한다.
이상이, 특징문자열 추출 프로그램(141)의 처리순서이다.
이하, 도 14에서 나타낸 특징문자열 추출 프로그램(141)의 처리순서에 대해 구체예를 이용하여 설명하기로 한다.
도 27에서, 상술한 문서1「…. 携帶電話の使用時のマナ-が問題になる. …」로부터 특징문자열을 추출하는 예를 나타낸다.
먼저, 문서 1로부터 단일문자종문자열「…」「.」「携帶電話」「の」「使用時」「の」「マナ-」「が」「問題」「になる」「.」「…」를 추출한다.
이어, 이들 단일문자종문자열의 문자종을 판정하고, 한자문자열「携帶電話」, 「使用時」 및 「問題」와 가타카나 문자열 「マナ-」에 대해 분할확률비교 특징문자열 추출 프로그램(142)에 의해 특징문자열을 추출하고, 한자문자열과 가타카나 문자열 이외의 문자열 「の」「の」「が」「になる」「.」로부터는 단일문자종문자열 그 자체를 특징문자열로서 추출한다.
이상이, 특징문자열 추출 프로그램(141)의 구체적인 처리예이다.
이어, 도 14에서 도시한 스텝(1404)에 있어서 유사문서 검색 프로그램(131)에 의해 기동되는 출현횟수 취득 프로그램(146)의 처리순서를 도 26의 PAD도를 이용하여 설명하기로 한다.
출현횟수 취득 프로그램(146)에서는, 도 14에서 도시한 스텝(1402)에 있어서 워크 에리어(170)에 격납한 특징문자열을 취득한다 (스텝 2600).
그리고, 워크 에리어(170)에 격납되어 있는 모든 특징문자열에 대해, 스텝(2602)를 실행한다 (스텝 2601).
스텝(2602)에서는, 출현횟수파일 읽어들임 프로그램(147)을 기동하여, 텍스트(150)내의 각 문서에 있어서의 특징문자열의 출현횟수를 취득하고, 워크 에리어(170)에 격납한다.
이상이, 출현횟수 취득 프로그램(146)의 처리순서이다.
이어, 도 17에서 나타낸 스텝(1703)에 있어서 특징문자열 추출 프로그램(141)에 의해 기동되는 분할확률비교 특징문자열 추출 프로그램(142)의 처리순서에 대해, 도 18의 PAD도를 이용하여 설명하기로 한다.
분할확률비교 특징문자열 추출 프로그램(142)는, 스텝(1800)에 있어서, 마지막에 특징문자열이 추출된 말미의 문자위치(이하, 「최신분할점」이라 한다)(LS)의 초기값을 0으로 설정한다.
그리고, 도 17에서 나타낸 스텝(1703)에 있어서, 입력된 단일문자종문자열의 문자열 길이가 미리 정해진 길이 이상일 때, 다음 스텝(1802 ~ 1809)까지를 반복 실행한다 (스텝 1801).
스텝(1802)에서는, 후술하는 분할확률 산출 프로그램(143)을 기동하여, 단일문자종문자열의 선두에서 i문자째의 분할확률 P(i)와, (i+1)문자째의 분할확률 P(i+1)을 산출한다.
이어, 스텝(1803)에 있어서, 상기 분할확률 산출 프로그램(143)에서 산출한 P(i)와 P(i+1)의 값을 비교하여, P(i)가 P(i+1)보다도 큰 경우에는 스텝(1804)를실행하고, P(i)가 P(i+1)보다도 작은 경우에는 스텝(1806)을 실행하고, P(i)와 P(i+1)이 동등한 경우에는 스텝(1808)을 실행한다.
스텝(1804)에서는, 단일문자종문자열의 선두에서 i문자째까지의 문자열을 특징문자열로서 산출한다. 그리고, 스텝(1805)에 있어서, 최신분할점(LS)를 i로 설정하고, i의 값을 1가산한다.
스텝(1806)에서는, 단일문자종문자열의 선두 (i+1)문자째까지의 문자열을 특징문자열로서 추출한다. 그리고, 스텝(1807)에 있어서, 최신분할점(LS)를 (i+1)로 설정하고, i의 값을 2가산한다.
스텝(1808)에서는, 각각 단일문자종문자열의 선두에서 i문자째까지의 문자열과 (i+1)문자째까지의 문자열을 특징문자열로서 추출한다. 그리고, 스텝(1809)에 있어서, 최신분할점(LS)를 (i+1)로 설정하고, i의 값을 2가산한다.
이상이, 분할확률비교 특징문자열 추출 프로그램(142)의 처리순서이다.
이하, 도 18에서 나타낸 분할확률비교 특징문자열 추출 프로그램(142)의 처리순서에 대해 구체예를 이용하여 설명하기로 한다.
도 8에서, 상술한 문서1「…. 携帶電話の使用時のマナ-が問題になる. …」에서 추출된 단일문자종문자열「携帶電話(휴대전화)」로부터 특징문자열을 추출하는 예를 나타낸다.
먼저, 「携帶電話」에서 제 1번째 문자에서의 분할확률 P(1)은 「携」의 단독확률 0.01과 「帶」의 선두확률 0.11의 적(積)으로서 0.001이 산출되고, 제 2번째 문자에서의 분할확률 P(2)는 「携帶」의 단독확률 0.10과 「電」의 선두확률0.36의 적으로서 0.036이 산출된다. 이어, 이들의 분할확률을 비교하여, 값이 큰 쪽에서 단일문자종문자열 「携帶電話」를 분할한다. 이 경우, 제 1번째 문자의 분할확률 P(1)(=0.000)보다도 제 2번째 문자의 분할확률 P(2)(=0.036)쪽이 크기 때문에, 단일문자종문자열「携帶電話」는 「携帶」와 「電話」로 분할된다.
또, 도 20에서, 상기 문서1로부터 추출한 단일문자종문자열「マナ-」로부터 특징문자열을 추출하는 예를 나타낸다. 먼저, 「マナ-」에서 제 2번째 문자에서의 분할확률 P(2)는 「マナ」의 단독확률 0.00과 「-」의 단독확률 0.00의 적으로서 0.00으로 산출된다. 이어, 제 3번째 문자에서의 분할확률 P(3), 즉 「マナ-」가 단일문자종문자열 그자체로서 출현할 확률은 「ナ-」의 말미확률 0.79와 1.0의 적으로서 0.79로 산출된다. 이들의 값을 비교하여, 값이 큰 쪽에서 단일문자종문자열로 분할된다. 이 경우, 「マナ-」의 제 2번째 문자에서의 분할확률 P(2)(=0.00)보다도 제 3번째 문자에서의 분할확률 P(3)(=0.79)쪽이 크기 때문에, 제 3번째 문자에서 분할되게 되어, 결과적으로 단일문자종문자열 「マナ-」는 분할되지 않게 된다.
이상이, 분할확률비교 특징문자열 추출 프로그램(142)의 구체적인 처리순서이다.
이어, 도 18에서 나타낸 스텝(1801)에 있어서 분할확률비교 특징문자열 추출 프로그램(142)에 의해 기동되는 분할확률 산출 프로그램(143)의 처리순서에 대해, 도 19의 PAD도를 이용하여 설명하기로 한다.
분할확률 산출 프로그램(143)은, 스텝(1900)에 있어서, 도 18에서 나타낸 스텝(1801)에 있어서 지정되는 분할확률의 산출위치(i) 및 최신분할점(LS)를 취득한다.
이어, 산출위치(i)에 있어서의 분할확률 P(i)를 산출하기 위해, 스텝(1901 ~ 1906)을 실행하여, 각 출현확률을 취득한다.
먼저, 스텝(1901)에 있어서, 도 12에서 나타낸 스텝(1201)에서 추출된 n-gram의 길이(n)과 분할확률의 산출위치(i)를 비교하여, (i-LS)가 n이하인 경우에는 스텝(1902)를 실행하고, (i-LS)가 n보다도 큰 경우에는 스텝(1903)을 실행한다.
스텝(1902)에서는, 출현확률파일 읽어들임 프로그램(144)를 기동하여, 최신분할점(LS)로부터 제 i 번째 문자까지의 문자열의 단독확률을 취득하고, 분할확률 산출위치(i)의 전방의 문자열의 출현확률 Pre(i)로 한다.
스텝(1903)에서는, 출현확률파일 읽어들임 프로그램(144)를 기동하여, 최신분할점(LS)로부터 제 i 번째 문자까지의 문자열의 후방의 n-gram의 말미확률을 취득하고, 분할확률 산출위치(i)의 전방의 문자열의 출현확률 Pre(i)로 한다.
이어, 스텝(1904)에 있어서, 단일문자종문자열의 문자열 길이(Ln)과 분할확률 산출위치(i)를 비교하여, Ln이 (i+1)보다도 큰 경우에는 스텝(1905)를 실행하고, Ln이 (i+1)과 동등한 경우에는 스텝(1906)을 실행한다.
스텝(1905)에서는, 출현확률파일 읽어들임 프로그램(144)를 기동하여, 제 (i+1)번째 문자의 1-gram의 선두확률을 취득하고, 분할확률 산출위치(i)의 후방의 문자열의 출현확률 Post(i)로 한다.
스텝(1906)에서는, 출현확률파일 읽어들임 프로그램(144)를 기동하여, 제(i+1)번째 문자의 1-gram의 단독확률을 취득하고, 분할확률 산출위치(i)의 후방의 문자열의 출현확률 Post(i)로 한다.
이어, 산출위치(i+1)에 있어서의 분할확률 P(i+1)을 산출하기 위해, 스텝(1907 ~ 1913)을 실행하여, 각 출현확률을 취득한다.
먼저, 스텝(1907)에 있어서, 도 12에서 나타낸 스텝(1201)에서 추출된 n-gram의 길이(n)과 분할확률의 산출위치(i)를 비교하여, ((i+1)-LS)가 n이하인 경우에는 스텝(1908)을 실행하고, ((i+1)-LS)가 n보다도 큰 경우에는 스텝(1909)를 실행한다.
스텝(1908)에서는, 출현확률파일 읽어들임 프로그램(144)를 기동하여, 최신분할점(LS)로부터 제 (i+1)번째 문자까지의 문자열의 단독확률을 취득하고, 분할확률 산출위치(i+1)의 전방의 문자열의 산출확률 Pre(i+1)로 한다.
스텝(1909)에서는, 출현확률파일 읽어들임 프로그램(144)를 기동하여, 최신분할점(LS)로부터 제 (i+1)번째 문자까지의 문자열의 후방의 n-gram의 말미확률을 취득하고, 분할확률 산출위치(i+1)의 후방의 문자열의 출현확률 Pre(i+1)로 한다.
이어, 스텝(1910)에 있어서는, 단일문자종문자열의 문자열 길이(Ln)과 분할확률 산출위치(i)를 비교하여, Ln이 (i+2)보다도 큰 경우에는 스텝(1911)을 실행하고, Ln이 (i+2)과 동등한 경우에는 스텝(1912)를 실행하고, Ln이 (i+1)과 동등한 경우에는 스텝(1913)을 실행한다.
스텝(1911)에서는, 출현확률파일 읽어들임 프로그램(144)를 기동하여, 제 (i+2)번째 문자의 1gram의 선두확률을 취득하고, 분할확률 산출위치(i+1)의 후방의문자열의 출현확률 Post(i+1)로 한다.
스텝(1912)에서는, 출현확률파일 읽어들임 프로그램(144)를 기동하여, 제 (i+2)번째 문자의 1-gram의 단독확률을 취득하고, 분할확률 산출위치(i+1)의 후방의 문자열의 출현확률 Post(i+1)로 한다.
스텝(1913)에서는, 분할확률 산출위치(i+1)의 후방의 문자열의 출현확률 Post(i+1)=1로 한다.
이어, 스텝(1914)에 있어서, 상기 스텝(1901 ~ 1903)에서 취득한 Pre(i)와 상기 스텝(1904 ~ 1906)에서 취득한 Post(i)의 적을 산출위치(i)에 있어서의 분할확률 P(i)로 하고, 상기 스텝(1907 ~ 1909)에서 취득한 Pre(i+1)과 상기 스텝(1910 ~ 1913)에서 취득한 Post(i+1)의 적을 산출위치(i+1)에 있어서의 분할확률 P(i+1)로 하여, 각각 워크 에리어(170)에 격납한다.
이상이, 분할확륙 산출 프로그램(143)의 처리순서이다.
이하, 도 19에서 나타낸 분할확률 산출 프로그램(143)의 처리순서에 대해 구체예를 이용하여 설명하기로 한다.
도 28에서, 상술한 문서1「…. 携帶電話の使用時のマナ-が問題になる. …」로부터 추출된 단일문자종문자열「携帶電話」의 분할확률을 산출하는 예를 나타낸다. 또, 본 도면에서 나타내는 예에서는, 출현확률파일(152)에 격납되어 있는 n-gram길이를 2로 하고, 분할확률을 산출하는 제 i번째 문자를 제 1번째 문자로 한다. 즉, 제 1번째 문자에서의 분할확률 P(1) 및 제 2번째 문자에서의 분할확률 P(2)을 산출하는 것으로서, 이하의 설명을 행한다.
먼저, 분할확률의 산출위치인 제 1번째 문자까지의 문자열의 단독확률이 출현확률파일(600)에 격납되어 있는지의 여부를 확인하기 위해, 출현확률파일 (600)에 격납되어 있는 n-gram길이 2와 분할확률 산출위치 1을 비교한다. 그 결과, 격납되어 있는 n-gram길이 쪽이 크기 때문에, 제 1번째 문자까지의 문자열「携」의 단독확률 0.01을 출현확률파일(600)에서 취득한다.
이어, 분할확률의 산출위치의 후방에 몇 문자가 존재하는지를 확인하기 위해, 단일문자종문자열「携帶電話」의 문자열길이 4와 분할확률 산출위치 1을 비교한다. 그 결과, 2문자 이상의 문자열「帶電話」가 존재하기 때문에, 「帶」의 선두확률 0.11을 출현확률파일(600)으로부터 취득한다. 그리고, 「携」의 단독확률 0.01과 「帶」의 선두확률 0.11의 적을 산출하여, 제 1번째 문자에서의 분할확률 P(1)=0.001을 얻는다.
동일하게, 분할확률의 산출위치인 제 2번째 문자까지의 문자열의 단독확률이 출현확률파일(600)에 격납되어 있는지를 확인하기 위해, 출현확률파일(600)에 격납되어 있는 n-gram길이 2와 분할확률 산출위치2를 비교한다. 그 결과, 격납되어 있는 n-gram길이와 산출위치가 동등하기 때문에, 제 2번째 문자까지의 문자열「携帶」의 단독확률 0.10을 출현확률파일(600)에서 취득한다.
이어, 분할확률의 산출위치의 후방에 몇 문자가 존재하는지를 확인하기 위해, 단일문자종문자열「携帶電話」의 문자열 길이 4와 분할확률 산출위치 2를 비교한다. 그 결과, 2문자 이상의 문자열「電話」가 존재하기 때문에, 「電」의 선두확률 0.36을 출현확률파일(600)으로부터 취득한다. 그리고, 「携帶」의 단독확륙 0.10과 「帶」의 선두확률 0.36의 적을 산출하여, 제 2번째 문자까지의 분할확률 P(2)=0.036을 얻는다.
이상이, 분할확률 산출 프로그램(143)의 구체적인 처리순서이다.
이상이, 본 발명의 제 1 실시예이다.
본 실시예에서는, 출현정보파일(151)과 출현확률파일(152)에 격납하는 n-gram의 길이로서 2를 이용하여 특징문자열 추출 프로그램(143)의 처리순서를 설명하였으나, 이 길이로서 1이나 3 등의 고정값을 이용해도 좋고, 데이터 베이스 중의 출현횟수 등의 정보에 기초하여 가변 길이로 해도 좋고, 단일문자종문자열 자체의 길이 m으로 해도 좋고, 또한, 이들의 조합이라도, 동일하게 특징문자열 추출의 처리를 행할 수 있음은 분명하다.
또, 본 실시예에서는, 종문서의 내용에 유사한 문서를 검색하는 것으로서 특징문자열 추출 프로그램(143)의 처리순서를 설명하였으나, 이 종문서 대신에, 문장이 지정되었다 하더라도 동일하게 특징문자열을 추출할 수 있고, 유사문서 검색을 행할 수 있음은 분명하다.
또, 분 실시예에서는, 단일문자종문자열의 선두에서 제 n번째 문자까지의 분할확률과 제 (n+1)번째 문자까지의 분할확률을 비교함으로써 특징문자열을 추출하는 예를 이용하여, 분할확률비교 특징문자열 추출 프로그램(142)의 처리순서를 설명하였으나, 단일문자종문자열의 말미로부터, 각각 제 n번째 문자까지의 분할확률과 제 (n+1)번째 문자까지의 분할확률을 비교해도, 또한, 단일문자종문자열 중의 m문자(m은 1이상의 정수)와 n문자의 분할확률을 비교해도, 동일하게, 문서의 특징을나타내는 특징문자열의 추출을 행할 수 있음은 분명하다.
또한, 본 실시예에 있어서는, 한자나 가타카나의 단일문자종문자열에 대한 분할확률비교 특징문자열 추출 프로그램(142)를 포함하는 구성으로 하여 설명하였으나, 한자 또는 가타카나를 포함하지 않는 데이터 베이스를 대상으로 하는 경우 등에는, 대응하는 분할확률비교 특징문자열 추출 프로그램(142)를 포함하지 않는 구성으로 해도 좋고, 한자나 가타카나 이외에 대응하는 분할확률비교 특징문자열 추출 프로그램(142)를 포함하는 구성으로 해도 좋고, 종래기술 2에서 나타낸 바와 같이, 각 문자종에 대응하는 특징문자열 추출 프로그램을 포함하는 구성이라도 좋다.
또, 본 실시예에 있어서는, 단일문자종문자열로부터 특징문자열을 추출하는 구성으로 하였으나, 특정의 문자종 간을 경계로 하여 전후에 걸쳐지는 부분 문자열로부터 특징문자열을 추출함으로써, 예를 들어, 「F1」이나 「비타민C」, 「W배」, 「규소」 등의 문자열을 검색에 이용할 수 있고, 또한, 고정도(高精度)인 유사문서검색을 실현하는 것도 가능하게 된다.
또, 본 실시예에 있어서의 출현정보파일 작성등록 프로그램(121)에서는, 문자종 경계를 단어의 경계로 보고, 각 n-gram의 선두횟수, 말미횟수 및 단독횟수를 계수하였으나, 부속어, 즉 조사나 조동사 등을 단어 경계의 후보로 보고, 각 n-gram의 선두횟수, 말미횟수 및 단독횟수를 계수해도 좋다.
또한, 본 실시예에 있어서는, 출현정보파일(151)을 도 5에서 나타낸 표형식으로 작성하였으나, 이 방법에서는, 대상으로 하는 n-gram 길이가 증대함에 따라n-gram 종류가 증가하기 때문에, 분할확률파일 작성등록 프로그램(124)의 처리에 장대한 시간을 요하게 된다. 이 문제는 특징문자열에 대해 검색용의 인덱스를 부가함으로써 해결할 수 있다. 이로써, n-gram 종류가 증가해도 고속으로 등록처리를 실현할 수 있다. 이 특징문자열에 대한 검색용 인덱스로서는, 전문(全文)검색용 인덱스(153)을 이용해도 좋고, 「특개평 8-329112호 공보」등에 개시되어 것과 같은 단어 인덱스 방식을 이용해도 좋다. 이 문제는 출현확률파일(152) 및 출현횟수파일(153)에 있어서도 발생하나, 동일하게 검색용의 인덱스를 부가하는 것으로 해결할 수 있다.
또한, 본 실시예에 있어서는, 문서 등록시에 출현확률파일 작성등록 프로그램(124)를 기동하여 출현확률파일(152)를 작성하는 구성으로 하였으나, 유사문서 검색시의 분할확률비교 특징문자열 추출 프로그램(142) 실행시에, 출현정보파일(151)에 격납되어 있는 각 n-gram의 출현정보로부터 해당하는 출현확률을 산출함으로써, 자기디스크(105)에 격납하는 파일을 삭감하는 것도 가능하다.
또, 본 실시예에 있어서는, 특징문자열 추출 프로그램(141)에 의해 추출된 특징문자열을 이용한 유사문서 검색 시스템에 대해 설명하였으나, 종문서로부터 특징문자열을 추출하는 특징문자열 추출 시스템으로서 이용하는 것도 가능하고, 「특개평8-153121호 공보」에서 나타내는 것과 같은 형태소 해석에 의해 문서중에 포함되는 단어를 추출하고, 이를 이용하여 문서를 자동적으로 분류하는 시스템에 이용하는 것도 가능하다.
단, 제 1 실시예에 있어서의 분할확률비교 특징문자열 추출 프로그램 (142)는 제 i번째 문자에서의 분할확률 P(i)와 제 (i+1)번째 문자에서의 분할확률 P(i+1)을 비교하여, 그 값이 큰 쪽에서 분할하기 때문에, 모든 단일문자종문자열로부터 (i+1)문자 이하의 특징문자열이 추출되어 버려, (i+1)문자보다 긴 단어가 잘못 분할되어 버린다고 하는 문제가 있다.
이하, 제 1 실시예에서 (i+1)문자보다 긴 단어가 잘못 분할되어 버리는 문제가 발생하는 예를 도 22에서 나타내는 구체예를 이용하여 설명하기로 한다. 본 도면에서는, 한자로 구성되는 단일문자종문자열「北海道(북해도)」를 대상으로 하고, 분할확률 산출위치 i의 초기값을 1로 한다.
분할확률비교 특징문자열 추출 프로그램(142)에서는, 먼저 스텝(2200)에 있어서, 상술한 분할확률 산출 프로그램(143)을 기동하여, 제 1번째 문자의 분할확률 P(1)과 제 2번째 문자의 분할확률 P(2)를 산출한다. 본 도면에서 나타낸 예에서는, 단일문자종문자열「北海道」의 제 1번째 문자에서 「北」과 「海道」로 분할될 확률은, 1-gram「北」의 단독확률 0.03과 2-gram「海道」의 단독확률 0.00의 적으로서 P(1)=0.000으로 산출된다. 동일하게, 제 2번째 문자에서 「北海」와 「道」로 분할될 확률은, 2-gram「北海」의 단독확률 0.03과 1-gram「道」의 단독확률 0.12의 적 P(2)=0.004로서 산출된다.
이어, 스텝(2201)에 있어서, 상기 스텝(2200)에서 산출된 P(1)과 P(2) 중 값이 큰 쪽을 분할점으로 하여, 단일문자종문자열의 선두에서 분할점까지의 문자열을 특징문자열로서 추출한다. 본 도면에서 나타낸 예에서는, P(2)쪽이 P(1)보다도 크기 때문에, 제 2번째 문자에서 단일문자종문자열「北海道」를 분할하고, 제 2번째문자까지의 문자열 “北海”를 특징문자예로서 추출한다.
이어, 스텝(2202)에 있어서, 최후에 특징문자열이 추출된 말미의 문자위치(이하, 「최신분할점」이라 한다)(LS)를 2로 설정하고, 최신분할점 이후의 단일문자종문자열「道」를 대상으로 특징문자열 추출처리를 계속한다.
이어, 스텝(2203)에 있어서, 단일문자종문자열「道」의 문자열 길이 1은 미리 정해진 길이 2 미만이기 때문에, 문자열 “道”가 특징문자열로서 추출된다. 이 결과, 「…. 道の驛と呼ばれるサ-ビスエリアが國道沿いに建設されることになった.…」(미치노 에키라 불리는 서비스 에리어가 국도를 따라 건설되게 되었다.)등이라고 하는 문서가 유사문서로서 잘못 검색되어 버리게 된다.
이상이, 제 1 실시예에 있어서의 분할확률비교 특징문자열 추출 프로그램(142)의 처리예이다. 본 도면에서 나타낸 예에서는, 제 1번째 문자와 제 2번째 문자의 분할확률 P(1)과 P(2)를 비교하여, 값이 큰 쪽을 분할점으로 하기 때문에, 단일문자종문자열「北海道」(북해도)로부터 “北海”와 “道”가 특징문자열로서 추출되어 버리고, 종문서의 중심개념에서 어긋난 문서가 유사문서로서 검색되어 버린다.
이 때문에, 본 발명을 적용한 유사문사 검색 시스템의 제 2 실시예에서는, 단일문자종문자열로부터 특징문자열을 추출할 시에 산출된 분할확률이 소정값(이하, 「분할한계값」이라 한다)보다도 높은 경우에만 비교처리를 행함으로써, (i+1)문자보다 긴 특징문자열을 추출할 수 있게 한다.
본 실시예는, 제 1 실시예(도 1)와 거의 동일한 구성을 취하나, 분할확률비교 특징문자열 추출 프로그램(142)의 처리순서가 다르고, 도 21의 PAD도에서 나타내듯이, 스텝(2100 ~2104)가 추가된다.
이하, 제 2 실시예에 있어서의 분할확률비교 특징문자열 추출 프로그램 (142a)의 처리순서에 대해 도 21의 PAD도를 이용하여 설명하기로 한다.
분할확률비교 특징문자열 추출 프로그램(142a)에서는, 스텝(1800)에 있어서, 최신분할점(LS)의 초기값을 0으로 설정한다.
그리고, 특징문자열의 추출대상이 되는 단일문자종문자열의 문자열 길이가 미리 정해진 길이 이상일 때, 다음 스텝(1802 ~1807), 스텝(2101 ~ 2103)까지를 반복 실행한다 (스텝 2100).
스텝(1802)에서는, 분할확률 산출 프로그램(143)을 기동하여, 단일문자종문자열의 선두에서 제 i번째 문자의 분할확률 P(i)와, 제 (i+1)번째 문자의 분할확률 P(i+1)을 산출한다.
이어, 스텝(2100)에 있어서, 상기 분할확률 산출 프로그램(143)에서 산출된 분할확률 P(i), P(i+1)의 값 및 미리 정해진 분할한계값(Th)의 값을 비교하여, 최대의 것을 추출한다. 이 결과, 분할확률 P(i)가 추출되었다면 스텝(1804)를 실행하고, 분할확률 P(i+1)이 추출된 경우에는 스텝(1806)을 실행하고, 분할한계값(Th)가 추출된 경우에는 스텝(2101)을 실행한다.
스텝(1804)에서는, 단일문자종문자열의 선두에서 제 i번째 문자의 문자열을 특징문자열로서 추출한다. 그리고, 스텝(1805)에 있어서, 최신분할점 (LS)를 i로 설정하고, i의 값을 1가산한다.
스텝(1806)에서는, 단일문자종문자열의 선두에서 제 (i+1)번째 문자의 문자열을 특징문자열로서 추출한다. 그리고, 스텝(1807)에 있어서, 최신분할점(LS)를 (i+1)로 설정하고, i의 값을 2가산한다.
스텝(2101)에서는, 분할확률의 산출위치(i)와 단일문자종문자열의 문자열 길이(Ln)을 비교하여, (i+1)이 문자열 길이(Ln)보다도 작은 경우에는 스텝 (2102)를 실행하고, (i+1)이 문자열 길이(Ln) 이상이라면 스텝(2103)을 실행한다.
스텝(2102)에서는 분할확률의 가산위치(i)의 값을 1가산한다.
스텝(2103)에서는, 단일문자종문자열 그 자체를 특징문자열로서 추출한다. 그리고, 스텝(2104)에 있어서, 최신분할점(LS)를 문자열 길이(Ln)으로 설정하고, i의 값을 1가산한다.
이상이, 분할확률비교 특징문자열 추출 프로그램(142a)의 처리순서이다.
이하, 제 2 실시예에 있어서의 분할확률비교 특징문자열 추출 프로그램 (142a)의 처리순서를 각각 도 23에서 나타낸 구체예로 설명하기로 한다. 또한, 본 도면에서는, 한자로 구성되는 단일문자종문자열「北海道」를 대상으로 하여, 분할한계값(Th)를 0.050으로 하고, 분할확률 산출위치(i)의 초기값을 1로 하여 분할확률비교 특징문자열 추출 프로그램(142a)의 처리순서를 설명한다.
분할확률비교 특징문자열 추출 프로그램(142a)에서는, 먼저, 스텝(2200)에 있어서, 상술한 분할확률 산출 프로그램(143)을 기동하여, 제 1번째 문자의 분할확률 P(1)과 제 2번째 문자의 분할확률 P(2)를 산출하고, P(1)=0.000 및 P(2)=0.004를 얻는다.
이어, 스텝(2301)에 있어서, 상기 스텝(2200)에서 산출한 분할확률 P(1), P(2) 및 분할한계값(Th)중, 최대의 것을 추출한다. 이 결과, 분할한계값(Th)가 최대이기 때문에, 스텝(2302)에 있어서, 분할확률의 산출위치 i(=1)와 단일문자종문자열「北海道」의 문자열 길이 Ln(=3)을 비교한다. 이 결과, 분할확률의 산출위치 i쪽이 작기 때문에, i의 값을 1가산한다.
그리고, 스텝(2304)에 있어서, 제 2번째 문자에서의 분할확률 P(2)과 제 3번째 문자에서의 분할확률 P(3)을 산출한다. 이 예에서는, 제 2번째 문자에서 「地海」와 「道」로 분할될 확률은 2-gram「北海」의 단독확률 0.03과 1-gram「道」의 단독확률 0.12의 적 P(2)=0.004로서 산출되고, 제 3번째 문자까지의 「北海道」로서 출현할 확률은 2-gram「北海」의 선두확률과 2-gram「海道」의 말미확률의 적 P(3)=0.465로서 산출된다.
이어, 스텝(2305)에 있어서, 상기 스텝(2304)에서 산출한 분할확률 P(2), P(3) 및 분할한계값(Th) 중, 최대의 것을 추출한다. 이 결과, P(3)이 최대이기 때문에, 제 3번째 문자 「北海道」까지가 특징문자열로서 추출된다.
이상 설명한 바와 같이, 본 실시예에 의하면, 분할확률이 분할한계값보다도 높은 경우에만 비교처리를 행하도록 함으로써, 본래 분할되는 일이 없는 위치에서의 분할을 삭감할 수 있다. 이 때문에, 제 1 실시예에서 추출되어 있던 부적절한 특징문자열을 대폭으로 삭감하는 것이 가능하게 된다. 따라서, 종문서가 나타내는 개념을 적적하게 검색할 수 있음과 동시에, 고속으로 유사문서를 검색할 수 있게 된다.
이어, 본 발명의 제 3 실시예에 대해 도 29를 이용하여 설명하기로 한다.
제 1 실시예 및 제 2 실시예에 있어서는, 특징문자열로서 추출될 가능성이 있는 모든 문자열을 출현횟수파일(153)중에 격납해 둘 필요가 있기 때문에, 문자열의 종류가 증가함에 따라, 데이터 베이스내 각 문서에 있어서의 출현횟수의 취득에 장대한 시간을 요함과 동시에, 필요한 자기디스크용량이 증가해 버린다.
본 발명을 적용한 유사문서 검색 시스템의 제 3 실시예는, 종문서로부터 추출된 특징문자열에 대한 데이터 베이스내 각 문서에 있어서의 출현횟수의 취득에, 출현횟수파일(153)을 이용하지 않고, 전문검색용 인덱스를 이용함으로써 상기 필요한 자기디스크용량을 저감시키는 방식이다.
즉, 본 실시예에 의하면, 제 1 실시예에서 데이터 베이스내의 각 문서에 있어서의 출현횟수의 취득에 전문 검색 시스템을 이용함으로써, 문자열의 종류수가 많은 데이터 베이스에 대해서도 고속의 유사문서검색을 실현하는 것이 가능하게 된다. 또한, 출현횟수파일(153)을 전문검색용 인덱스로 대용하기 때문에, 본 유사문서 검색 시스템을 전문검색 시스템과 조합시켜 실현한 경우에는, 제 1 실시예에 비해 필요로 하는 자기디스크용량을 삭감할 수 있게 된다.
본 실시예는, 제 1 실시예(도 1)와 거의 동일한 구성을 취하나, 유사문사 검색 프로그램(131)중의 출현횟수 취득 프로그램(146)을 구성하는 출현횟수파일 읽어들임 프로그램(147)이 다르다. 이 프로그램 대신에, 도 29에서 나타내는 바와 같이 전문검색 프로그램(2902)가 이용된다.
이하, 본 실시예에 있어서의 처리순서 중, 제 1 실시예와는 다른 출현횟수취득 프로그램(146a)의 처리순서에 대해, 도 30을 이용하여 설명하기로 한다.
여기서, 제 1 실시예에서의 출현횟수 취득 프로그램(146)(도 26)과 다른 점은, 출현횟수 취득 스텝(3000)뿐이다. 다른 처리 스텝의 처리순서는 제 1 실시예에서 설명한 대로이다.
출현횟수 취득 스텝(3000)에서는, 특징문자열 추출 프로그램(141)에 의해 워크 에리어(170)에 격납된 특징문자열을 전문검색 프로그램(2902)에서 검색함으로써, 텍스트(150)내 각 문서에 있어서의 이 특징문자열의 출현횟수를 취득한다.
본 실시예의 출현횟수 취득 스텝(3000)에서 이용하는 전문검색 프로그램(2902)로서는 어떠한 방식을 적용해도 무관하다. 예를 들어, 「일본국 특개소 64-35627호 공보」(이하, 「종래기술 4」라 한다)에서 개시되어 있는 바와 같은 n-gram 인덱스방식을 이용하는 것도 가능하다.
이 종래기술 4에 의한 n-gram 인덱스방식에서는, 도 29에서 나타내는 바와 같이, 문서 등록시 데이터 베이스에 등록하는 문서의 텍스트 데이터로부터 n-gram과 이 n-gram의 텍스트중에 있어서의 출현위치를 추출하고, 전문검색용 인덱스(2901)로서 자기디스크장치(2900)에 격납해 둔다. 검색시에는 지정된 검색 터엄 중에 출현하는 n-gram을 추출하고, 이들에 대응하는 인덱스를 상기 자기디스크장치(2900)중의 전문검색용 인덱스(2901)로부터 읽어들이고, 인덱스 중의 n-gram의 출현위치를 비교하여, 검색 터엄에서 추출한 n-gram의 위치관계와 인덱스중의 n-gram의 위치관계가 동등한지의 여부를 판정함으로써, 지정된 검색 터엄이 출현하는 문서를 고속으로 검색한다.
이 방법을 이용하여, 특징문자열을 검색 터엄으로서 전문검색 프로그램(2902)에 입력하고, 이 특징문자열의 출현문서와 그 위치정보를 취득함으로써, 이 특징문자열의 각 문서에 있어서의 출현횟수를 취득하는 것이 가능하게 된다.
이하, 이 종래기술 4를 이용한 출현횟수의 취득방법을 도 7과 도 15를 이용하여 구체적으로 설명하기로 한다. 또, 본 도면에서는 n-gram의 n의 값을 1로 하고 있다.
먼저, 문서 등록시의 처리순서를 도 7을 이용하여 구체적으로 설명한다. 데이터 베이스에 등록하는 텍스트(701)이 n-gram 인덱스 작성등록스텝(702)에 읽어들여져, n-gram 인덱스(700)이 작성된다. 이 n-gram 인덱스(700)에는, 텍스트(701)에 출현하는 모든 1-gram과 텍스트(701)에 있어서의 1-gram의 출현위치가 격납된다.
본 도면에서 나타내는 텍스트(701)에서는, 「携(휴)」라고 하는 1-gram은 텍스트(701)내의 문서번호 2의 제 26 문자에 나타나기 때문에, n-gram 인덱스(700)에는 1-gram「携」와 이에 대응한 형태로, 출현위치 (2, 26)이 격납된다. 여기서, 예를 들어, (2, 26)은 문서번호 2의 제 26 문자에 출현한다고 하는 것을 나타내고 있다.
이어, 검색시의 처리순서를 도 15를 이용하여 구체적으로 설명한다. 본 도면에서는, 상술한 문서1「…. 携帶電話の使用時のマナ-が問題になる. …」로부터추출된 특징문자열 「電話」의 출현횟수를 상술한 n-gram 인덱스(700)으로부터 취득하는 예에 대해 나타낸다.
먼저, 검색대상이 되는 특징문자열이 n-gram 추출부(1500)에 입력되고, 특징문자열중에 출현하는 모든 n-gram과 그 n-gram의 특징문자열에 있어서의 출현위치가 추출된다. 이어, 추출된 n-gram과 이에 대응하는 n-gram의 특징문자열에 있어서의 출현위치가 인덱스 검색부(1501)에 입력된다. 인덱스 검색부(1501)에서는, 특징문자열로부터 추출된 n-gram에 대응하는 인덱스가 n-gram 인덱스(700)으로부터 읽어들여지고, 이들 인덱스 중에서 문서번호가 일치하고 특징문자열중의 위치관계와 동일한 위치관계를 갖는 것이 추출되어, 검색결과로서 출력된다.
특징문자열로서 「電話」가 입력된 본 도면의 경우, 먼저, n-gram 추출부(1500)에 있어서, (1-gram「電」, 1-gram「1」)과 (1-gram「話」, 1-gram「2」)가 추출된다. 여기서, n-gram위치「1」은 검색 터엄의 선두, n-gram위치「2」는 그 다음의 문자위치를 나타낸다.
이어, 인덱스 검색부(1501)에 있어서, n-gram 인덱스(700)으로부터 1-gram「電」과 「話」에 대응하는 인덱스가 읽어들여진다. 이들의 인덱스에 있어서의 출현문서번호가 동등하고, 출현위치가 n-gram위치「1」과 n-gram위치「2」와 같이 연속하는 것이, 즉 인접하는 것이 추출되어 검색결과로서 출력된다.
본 도면에서는, 1-gram「電」의 출현위치 (2, 28)과 1-gram「話」의 출현위치 (2, 29)가 문서번호가 동일하고 위치가 「28」과 「29」로 인접하기 때문에, n-gram「電話」가 문자열로서 존재하는 것을 알 수 있고, 문서 2중에 검색 터엄「電話」가 출현하는 것이 검출된다. 그러나, 1-gram「電」의 (3, 11)과 1-gram「話」의 (3, 15)는 인접하고 있지 않기 때문에, 이 위치에는 특징문자열「電話」가 출현하지 않음을 알 수 있다.
그리고, 상기 인덱스 검색부(1501)로부터 검색결과로서 출력되는 출현위치를 계수함으로써, 해당 특징문자열의 출현횟수를 얻는다.
이상 설명한 바와 같이, 본 실시예에 의하면, 출현횟수파일의 특징문자열 검색용 인덱스와 출현횟수파일대신에 전문검색용 인덱스를 이용함으로써, 여분의 파일을 늘리지 않고, 고속으로 유사문서검색을 실현하는 것이 가능하게 된다.
이어, 본 발명의 제 4 실시예에 대해 도 31을 이용하여 설명하기로 한다.
제 1, 제 2 및 제 3 실시예에 있어서는, 종문서로부터 추출된 단일문자종문자열의 선두에서 제 n번째 문자에서의 분할확률과 제 (n+1)번째 문자에서의 분할확률을 비교함으로써 특징문자열을 추출하였으나, 출현정보파일(151)과 출현확률파일(152)를 보지할 필요가 있기 때문에, 문자열의 종류가 증가함에 따라 필요한 자기디스크용량이 증가해 버린다.
본 발명을 적용한 유사문서 검색 시스템의 제 4 실시예는, 출현정보파일(151)과 출현확률파일(152)를 이용하지 않고, 출현횟수파일(153)을 이용함으로써, 상기 필요한 자기디스크용량을 저감시키는 방식이다.
본 발명을 적용시킨 제 4 실시예는 제 1 실시예(도 1)와 거의 동일한 구성을 취하나, 유사문서 검색 프로그램(131)을 구성하는 특징문자열 추출 프로그램(141)이 다르고, n-gram 추출 프로그램(3100)과 상술한 출현횟수 취득 프로그램(146)으로 구성된다.
이하, 본 실시예에 있어서의 처리순서 중, 제 1 실시예와는 다른 특징문자열 추출 프로그램(141a)의 처리순서에 대해, 도 32를 이용하여 설명하기로 한다.
특징문자열 추출 프로그램(141a)는, 먼저 스텝(3200)에 있어서, 상술한 단일문자종문자열 추출 프로그램(161)에 의해 워크 에리어(170)에 격납되어 있는 모든 단일문자종문자열을 취득한다.
이어, 스텝(3201)에서, 상기 스텝(3200)에서 취득한 모든 단일문서종문자열에 대해, 다음 스텝(3202 ~ 3205)를 반복 실행한다.
즉, 스텝(3202)에서는, n-gram 추출 프로그램(3100)을 기동하여, 스텝(3200)에서 취득한 단일문자종문자열부터, 미리 정해진 길이 n(n은 1이상의 정수)의 n-gram을 선두에서부터 1문자씩 어긋나게 하면서, 모든 n-gram을 추출한다.
그리고, 스텝(3203)에 있어서, 상기 n-gram 추출 프로그램(3100)에 의해 추출된 모든 n-gram에 대해, 다음 스텝(3204)를 반복 실행한다. 즉, 스텝(3204)에서는, 출현횟수 취득 프로그램(146)을 기동하고, 상기 n-gram 추출 프로그램(3100)에 의해 추출된 n-gram의 출현횟수를 취득한다.
그리고, 스텝(3205)에 있어서, 상기 스텝(3204)에서 취득한 각 n-gram의 출현횟수가 높은 순으로 분류하고, 상위부터 미리 정해진 개수의 n-gram을 특징문자열로서 추출한다.
이상이, 특징문자열 추출 프로그램(141a)의 처리순서이다.
이하, 도 32에서 나타낸 특징문자열 추출 프로그램(141a)의 처리순서에 대해구체예를 이용하여 설명하기로 한다.
도 33에서, 상술한 문서1「…. 携帶電話の使用時のマナ-が問題になる. …」로부터 특징문자열을 추출하는 예를 나타낸다. 본 도면에서 나타내는 예에서는 n-gram의 n의 값을 2로 하고, 각 단일문자종문자열로부터 2개의 2-gram을 특징 n-gram으로서 추출한다.
먼저, 문서1로부터 단일문자종문자열「…」「.」「携帶電話」「の」「使用時」「の」「マナ-」「が」「問題」「になる「.」「…」을 추출한다.
이어, 이들의 단일문자종문자열의 선두에서 1문자씩 밀리게 하면서 모든 2-gram을 추출하고, 각 2-gram의 출현횟수가 높은 순으로 분류한다. 예를 들어, 단일문자종문자열「携帶電話」로부터는 “携帶”“帶電”“電話”3개의 2-gram을 추출하고, 각각 데이터 베이스내의 출현횟수를 취득한다. 이 결과, (電話, 5,283), (携帶, 462), (帶電, 269)가 얻어진다. 여기서 (電話, 5,283)은 2-gram “電話”의 데이터 베이스내에 있어서의 출현횟수가 5,283회임을 나타낸다.
이어, 각 단일문자종문자열에 있어서, 상위 2개의 2-gram을 특징 n-gram으로서 추출한다.
이 결과, 단일문자종문자열「携帶電話」에서는 (電話, 5,283), (携帶, 462)가 상위 2개이기 때문에, “電話”및 “携帶”가 특징문자열로서 추출된다.
이상이, 특징문자열 추출 프로그램(141a)의 구체적인 처리예이다.
이상에서 설명한 바와 같이, 본 실시예에 의하면, 출현정보파일(151)과 출현확률파일(152)를 이용하지 않고, 출현횟수파일(153)을 이용함으로써, 데이터 베이스중에서의 실제의 출현상황을 정확하게 반영한 특징문자열을 추출하는 것이 가능하게 된다.
또, 본 실시예에서는, 단일문자종문자열의 선두에서 1문자씩 밀리게 하여 미리 정해진 길이 n의 n-gram을 전부 추출하는 것으로 하여, n-gram 추출 프로그램(3100)의 처리순서를 설명하였으나, 단일문자종문자열 중의 임의의 n-gram을 추출해도 좋고, 또한, 단일문자종문자열 중의 m-gram(m은 1이상의 정수)과 n-gram을 추출해도 좋다. 게다가, 추출하는 n-gram의 길이 n을 미리 정해진 것으로 하였으나, 단일문자종문자열의 길이에 의해 추출하는 n의 값을 변경해도 좋고, 단일문자종문자열의 문자종에 의해 변경해도 좋다. 또, 본 발명의 n-gram 추출수법은, 문서의 특징을 나타내는 n-gram을 추출하는 것이 가능하기 때문에, n-gram을 이용한 문서의 특징을 나타내는 벡터의 산출이나 n-gram을 이용한 문서의 분류에도 적용가능하다.
본 발명에 의하면, 오분할(誤分割)이 적어지도록 특징문자열을 추출할 수 있게 된다. 이로써, 단어사전을 참조하지 않고 유사문서검색을 행한 경우라도, 의미가 정리된 문자열을 이용하여 검색을 행할 수 있기 때문에, 중심개념의 어긋남을 저감시킨 유사문서검색을 실현할 수 있다.
Claims (11)
- 텍스트를 포함하는 문서로부터 특징을 나타내는 문자열(특징문자열이라 한다)을 추출하는 특징문자열 추출방법에 있어서,단어간의 구획되는 곳을 경계로 하여 단어의 후보가 되는 문자열을 상기 텍스트로부터 추출하는 문자열 추출 스텝과,상기 문자열 추출 스텝에서 추출된 문자열 중의 길이가 n(n은 1이상의 정수)인 연속하는 문자열(n-gram이라 한다)에 관한 텍스트 데이터베이스 내에서의 출현횟수를 참조하여, 이 출현횟수가 최대인 n-gram을 특징문자열로서 추출하는 특징n-gram 추출 스텝을 갖는 것을 특징으로 하는 특징문자열 추출방법.
- 청구항 1에 있어서, 상기 문자열 추출 스텝으로서,소정의 문자종이 변하는 곳을 경계로 하여 텍스트로부터 단어의 후보가 되는 문자열을 추출하는 문자열 추출 스텝을 갖는 것을 특징으로 하는 특징문자열 추출방법.
- 청구항 1에 있어서, 상기 특징n-gram 추출 스텝으로서,상기 문자열 추출 스텝에서 단어의 후보로서 추출된 문자열로부터 m-gram(m은 1이상의 정수)과 n-gram(n은 1이상의 정수)을 추출하고,이 m-gram과 n-gram에 관한 텍스트 데이터베이스 내에서의 출현횟수를 참조하여, 양자 중 출현횟수가 많은 쪽을 특징문자열로서 추출하는 특징n-gram 추출 스텝을 갖는 것을 특징으로 하는 특징문자열 추출방법.
- 청구항 1에 있어서, 텍스트 데이터베이스로의 문서등록시의 처리로서,텍스트로부터 단어의 구획되는 곳을 추출하고, 이것을 경계로 하여 단어의 후보가 되는 문자열을 추출하는 등록용 문자열 추출 스텝과,상기 등록용 문자열 추출 스텝에서 추출된 문자열(추출문자열이라 한다)에 관해, 텍스트 데이터베이스 중에서의 출현횟수를 계수하여, 텍스트 데이터베이스 중의 모든 추출문자열의 출현횟수에 대한 비율로부터 출현확률을 산출하는 출현확률 산출 스텝을 가짐과 동시에,상기 특징n-gram 추출 스텝에 있어서, 출현횟수 대신에 해당하는 출현확률을 참조하고, 상기 문자열 추출 스텝에서 추출된 문자열 중의 n-gram의 출현확률을 참조하여, 이 출현확률이 최대인 n-gram을 특징문자열로서 추출하는 특징n-gram 추출 스텝을 갖는 것을 특징으로 하는 특징문자열 추출방법.
- 문자정보를 코드 데이터로서 축적한 텍스트 데이터베이스를 대상으로 하여, 사용자가 지정한 문장 또는 문서(이후, 합쳐서 문서라 한다)와 유사한 문서를 검색하는 유사문서 검색방법에 있어서,사용자가 지정한 문서의 텍스트(지정 텍스트라 한다)로부터, 단어간의 구획되는 곳을 추출하고, 이것을 경계로 하여 단어의 후보가 되는 문자열을 추출하는문자열 추출 스텝과,상기 문자열 추출 스텝에서 추출된 문자열 중에서, 길이가 n(n은 1이상의 정수)인 연속하는 문자열(n-gram이라 한다)에 관한 텍스트 데이터베이스 내에서의 출현횟수를 참조하여, 이 출현횟수가 최대인 n-gram을 특징문자열로서 추출하는 특징n-gram 추출 스텝과,상기 특징n-gram 추출 스텝에서 추출된 특징문자열에 대해, 지정 텍스트 내의 출현횟수를 계수하는 지정 텍스트내 출현횟수 계수 스텝과,상기 특징n-gram 추출 스텝에서 추출된 특징문자열에 대해, 텍스트 데이터베이스내의 각 문서에 있어서의 출현횟수를 취득하는 텍스트 데이터베이스내 출현횟수 취득 스텝과,상기 지정 텍스트내 출현횟수 계수 스텝에서 계수한 이 특징문자열의 지정 텍스트내의 출현횟수와, 상기 텍스트 데이터베이스내 출현횟수 취득 스텝에서 취득한 이 특징문자열의 텍스트 데이터베이스내의 각 문서에 있어서의 출현횟수를 이용하여, 지정 텍스트와 텍스트 데이터베이스내의 각 문서의 유사도를 산출하는 유사도 산출 스텝과,상기 유사도 산출 스텝에서 산출된 텍스트 데이터베이스내의 각 문서의 지정 텍스트에 대한 유사도를, 검색결과로서 출력하는 검색결과 출력 스텝을 갖는 것을 특징으로 하는 유사문서 검색방법.
- 청구항 5에 있어서, 텍스트 데이터베이스로의 문서등록처리로서,텍스트로부터 단어의 구획되는 곳을 추출하고, 이것을 경계로 하여 단어의 후보가 되는 문자열을 추출하는 등록용 문자열 추출 스텝과,상기 등록용 문자열 추출 스텝에서 추출된 문자열로부터, 길이가 1부터 이 문자열 자체의 길이 m까지의 모든 n-gram을 추출하고, 이 등록문서의 식별번호와 이 등록문서의 텍스트에 있어서의 출현횟수를 조(組)로 하여, 이것을 해당하는 출현횟수파일에 격납하는 출현횟수파일 작성 스텝을 가짐과 동시에,상기 텍스트 데이터베이스내 출현횟수 취득 스텝으로서,상기 특징n-gram 추출 스텝에서 추출된 특징문자열에 대해, 해당하는 상기 출현횟수파일을 참조하여, 특징문자열의 텍스트 데이터베이스내의 각 문서에 있어서의 이 특징문자열의 출현횟수를 취득하는 텍스트 데이터베이스내 출현횟수 취득 스텝을 갖는 유사문서 검색방법.
- 청구항 6에 있어서, 상기 문자열 추출 스텝으로서,소정의 문자종이 변하는 곳을 경계로 하여 텍스트로부터 단어의 후보가 되는 문자열을 추출하는 문자열 추출스텝을 갖는 것을 특징으로 하는 유사문서 검색방법.
- 텍스트를 포함하는 문서의 특징을 나타내는 문자열(특징문자열이라 한다)을 추출하는 특징문자열 추출 장치에 있어서,단어간의 구획되는 곳을 경계로 하여 단어의 후보가 되는 문자열을 상기 텍스트로부터 추출하는 문자열 추출수단과,상기 문자열 추출수단에서 추출된 문자열 중의 길이가 n(n은 1이상의 정수)인 연속하는 문자열(n-gram이라 한다)에 관한 텍스트 데이터베이스 내에서의 출현횟수를 참조하여, 이 출현횟수가 최대인 n-gram을 특징문자열로서 추출하는 특징n-gram 추출수단을 구비하는 것을 특징으로 하는 특징문자열 추출장치.
- 문자정보를 코드 데이터로서 축적한 텍스트 데이터베이스를 대상으로 하여, 사용자가 지정한 문장 또는 문서(이후, 합쳐서 문서라 한다)와 유사한 문서를 검색하는 유사문서 검색장치에 있어서,사용자가 지정한 문서의 텍스트(지정 텍스트라 한다)로부터, 단어간의 구획되는 곳을 검출하고, 이것을 경계로 하여 단어의 후보가 되는 문자열을 검출하는 문자열 검출수단과,상기 문자열 검출수단에서 검출된 문자열 중에서, 길이가 n(n은 1이상의 정수)인 연속하는 문자열(n-gram이라 한다)에 관한 텍스트 데이터베이스 내에서의 출현횟수를 참조하여, 이 출현횟수가 최대인 n-gram을 특징문자열로서 검출하는 특징n-gram 검출수단과,상기 특징n-gram 검출수단에서 검출된 특징문자열에 대해, 지정 텍스트 내의 출현횟수를 계수하는 지정 텍스트내 출현횟수 계수수단과,상기 특징n-gram 검출수단에서 검출된 특징문자열에 대해, 텍스트 데이터베이스내의 각 문서에 있어서의 출현횟수를 취득하는 텍스트 데이터베이스내 출현횟수 취득수단과,상기 지정 텍스트내 출현횟수 계수수단에서 계수한 이 특징문자열의 지정 텍스트내의 출현횟수와, 상기 텍스트 데이터베이스내 출현횟수 취득수단에서 취득한 이 특징문자열의 텍스트 데이터베이스내의 각 문서에 있어서의 출현횟수를 이용하여, 지정 텍스트와 텍스트 데이터베이스내의 각 문서의 유사도를 산출하는 유사도 산출수단과,상기 유사도 산출수단에서 산출된 텍스트 데이터베이스내의 각 문서의 지정 텍스트에 대한 유사도를, 검색결과로서 출력하는 검색결과 출력수단을 구비한 것을 특징으로 하는 유사문서 검색장치.
- 텍스트를 포함하는 문서의 특징을 나타내는 문자열(특징문자열이라 한다)을 추출하는 특징문자열 추출 프로그램을 격납하는 기억매체에 있어서,단어간의 구획되는 곳을 경계로 하여 단어의 후보가 되는 문자열을 상기 텍스트로부터 추출하는 문자열 추출 스텝과,상기 문자열 추출 스텝에서 추출된 문자열 중의 길이가 n(n은 1이상의 정수)인 연속하는 문자열(n-gram이라 한다)에 관한 텍스트 데이터베이스 내에서의 출현횟수를 참조하여, 이 출현횟수가 최대인 n-gram을 특징문자열로서 추출하는 특징n-gram 추출 스텝을 갖는 특징문자열 추출 프로그램을 격납하는 것을 특징으로 하는 기억매체.
- 문자정보를 코드 데이터로서 축적한 텍스트 데이터베이스를 대상으로 하여, 사용자가 지정한 문장 또는 문서(이후, 합쳐서 문서라 한다)와 유사한 문서를 검색하는 유사문서 검색 프로그램을 격납하는 기억매체에 있어서,사용자가 지정한 문서의 텍스트(지정 텍스트라 한다)로부터, 단어간의 구획되는 곳을 검출하여, 이것을 경계로 하여 단어의 후보가 되는 문자열을 추출하는 문자열 추출 스텝과,상기 문자열 추출 스텝에서 추출된 문자열 중에서, 길이가 n(n은 1이상의 정수)인 연속하는 문자열(n-gram이라 한다)에 관한 텍스트 데이터베이스 내에서의 출현횟수를 참조하여, 이 출현횟수가 최대인 n-gram을 특징문자열로서 추출하는 특징n-gram 추출 스텝과,상기 특징n-gram 추출 스텝에서 추출된 특징문자열에 대해, 지정 텍스트 내의 출현횟수를 계수하는 지정 텍스트내 출현횟수 계수 스텝과,상기 특징n-gram 추출 스텝에서 추출된 특징문자열에 대해, 텍스트 데이터베이스내의 각 문서에 있어서의 출현횟수를 취득하는 텍스트 데이터베이스내 출현횟수 취득 스텝과,상기 지정 텍스트내 출현횟수 계수 스텝에서 계수한 이 특징문자열의 지정 텍스트내의 출현횟수와, 상기 텍스트 데이터베이스내 출현횟수 취득 스텝에서 취득한 이 특징문자열의 텍스트 데이터베이스내의 각 문서에 있어서의 출현횟수를 이용하여, 지정 텍스트와 텍스트 데이터베이스내의 각 문서의 유사도를 산출하는 유사도 산출 스텝과,상기 유사도 산출 스텝에서 산출된 텍스트 데이터베이스내의 각 문서의 지정 텍스트에 대한 유사도를, 검색결과로서 출력하는 검색결과 출력 스텝을 갖는 유사문서 검색 프로그램을 격납하는 것을 특징으로 하는 기억매체.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP98-148721 | 1998-05-29 | ||
JP14872198A JP3622503B2 (ja) | 1998-05-29 | 1998-05-29 | 特徴文字列抽出方法および装置とこれを用いた類似文書検索方法および装置並びに特徴文字列抽出プログラムを格納した記憶媒体および類似文書検索プログラムを格納した記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990088678A KR19990088678A (ko) | 1999-12-27 |
KR100309062B1 true KR100309062B1 (ko) | 2001-09-26 |
Family
ID=15459127
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019990019596A KR100309062B1 (ko) | 1998-05-29 | 1999-05-29 | 특징문자열 추출 방법 및 장치와, 이를 이용한 유사문서 검색 방법 및 장치와, 특징문자열 추출 프로그램을 격납한 기억매체 및 유사문서 검색 프로그램을 격납한 기억매체 |
Country Status (4)
Country | Link |
---|---|
US (1) | US6473754B1 (ko) |
JP (1) | JP3622503B2 (ko) |
KR (1) | KR100309062B1 (ko) |
CN (1) | CN1151456C (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020003701A (ko) * | 2000-06-27 | 2002-01-15 | 쳉 유엔시엔 | 디지털 문서의 키워드를 자동으로 추출하는 방법 |
Families Citing this family (114)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000285140A (ja) * | 1998-12-24 | 2000-10-13 | Ricoh Co Ltd | 文書処理装置、文書分類装置、文書処理方法、文書分類方法およびそれらの方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体 |
US7013300B1 (en) | 1999-08-03 | 2006-03-14 | Taylor David C | Locating, filtering, matching macro-context from indexed database for searching context where micro-context relevant to textual input by user |
US7219073B1 (en) * | 1999-08-03 | 2007-05-15 | Brandnamestores.Com | Method for extracting information utilizing a user-context-based search engine |
US6845369B1 (en) * | 2000-01-14 | 2005-01-18 | Relevant Software Inc. | System, apparatus and method for using and managing digital information |
US7333983B2 (en) | 2000-02-03 | 2008-02-19 | Hitachi, Ltd. | Method of and an apparatus for retrieving and delivering documents and a recording media on which a program for retrieving and delivering documents are stored |
EP1122651B1 (en) | 2000-02-03 | 2010-05-19 | Hitachi, Ltd. | Method and apparatus for retrieving and delivering documents, and recording media storing a program therefor |
JP2001256253A (ja) * | 2000-03-13 | 2001-09-21 | Kddi Corp | 文書フィルタリング方法および装置 |
US6883001B2 (en) * | 2000-05-26 | 2005-04-19 | Fujitsu Limited | Document information search apparatus and method and recording medium storing document information search program therein |
JP2002157270A (ja) * | 2000-11-17 | 2002-05-31 | Mitsubishi Space Software Kk | 興味記事配信システム及び興味記事配信方法 |
US20020091671A1 (en) * | 2000-11-23 | 2002-07-11 | Andreas Prokoph | Method and system for data retrieval in large collections of data |
JP2002189747A (ja) * | 2000-12-19 | 2002-07-05 | Hitachi Ltd | 文書情報の検索方法 |
JP4136316B2 (ja) * | 2001-01-24 | 2008-08-20 | 富士通株式会社 | 文字列認識装置 |
CA2373568C (en) | 2001-04-26 | 2008-06-17 | Hitachi, Ltd. | Method of searching similar document, system for performing the same and program for processing the same |
US7269546B2 (en) | 2001-05-09 | 2007-09-11 | International Business Machines Corporation | System and method of finding documents related to other documents and of finding related words in response to a query to refine a search |
US6925433B2 (en) | 2001-05-09 | 2005-08-02 | International Business Machines Corporation | System and method for context-dependent probabilistic modeling of words and documents |
EP1429258A4 (en) * | 2001-07-26 | 2007-08-29 | Ibm | DATA PROCESSING, DATA PROCESSING SYSTEM AND PROGRAM |
IES20010724A2 (en) * | 2001-07-30 | 2003-02-05 | Univ Dublin | Data processing system and method |
US7610189B2 (en) * | 2001-10-18 | 2009-10-27 | Nuance Communications, Inc. | Method and apparatus for efficient segmentation of compound words using probabilistic breakpoint traversal |
JP2003150602A (ja) * | 2001-11-15 | 2003-05-23 | Hitachi Ltd | 文書情報管理方法および装置 |
JP3918531B2 (ja) * | 2001-11-29 | 2007-05-23 | 株式会社日立製作所 | 類似文書検索方法およびシステム |
JP4003468B2 (ja) * | 2002-02-05 | 2007-11-07 | 株式会社日立製作所 | 適合性フィードバックによる類似データ検索方法および装置 |
CA2374298A1 (en) * | 2002-03-01 | 2003-09-01 | Ibm Canada Limited-Ibm Canada Limitee | Computation of frequent data values |
US7010522B1 (en) * | 2002-06-17 | 2006-03-07 | At&T Corp. | Method of performing approximate substring indexing |
EP1602039A2 (en) * | 2003-03-03 | 2005-12-07 | Koninklijke Philips Electronics N.V. | Method and arrangement for searching for strings |
JP2004348241A (ja) * | 2003-05-20 | 2004-12-09 | Hitachi Ltd | 情報提供方法、サーバ及びプログラム |
JP4378131B2 (ja) * | 2003-08-12 | 2009-12-02 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 情報処理装置、情報処理システムおよびデータベースの検索方法並びにプログラム |
JP4292922B2 (ja) * | 2003-09-09 | 2009-07-08 | 株式会社日立製作所 | 文書検索システムおよび方法 |
JP2005115628A (ja) * | 2003-10-07 | 2005-04-28 | Hewlett-Packard Development Co Lp | 定型表現を用いた文書分類装置・方法・プログラム |
JP2005216173A (ja) * | 2004-01-30 | 2005-08-11 | Kyocera Corp | データ検索装置及び方法 |
US20050187782A1 (en) * | 2004-02-24 | 2005-08-25 | First Data Corporation | System for maintaining account and presentation instrument data |
US7478081B2 (en) * | 2004-11-05 | 2009-01-13 | International Business Machines Corporation | Selection of a set of optimal n-grams for indexing string data in a DBMS system under space constraints introduced by the system |
JP4549839B2 (ja) * | 2004-12-20 | 2010-09-22 | 大日本印刷株式会社 | 検索装置および方法 |
JP4314204B2 (ja) * | 2005-03-11 | 2009-08-12 | 株式会社東芝 | 文書管理方法、システム及びプログラム |
JP4524640B2 (ja) * | 2005-03-31 | 2010-08-18 | ソニー株式会社 | 情報処理装置および方法、並びにプログラム |
KR100622129B1 (ko) * | 2005-04-14 | 2006-09-19 | 한국전자통신연구원 | 동적으로 변화하는 웹 페이지의 변조 점검 시스템 및 방법 |
US8429167B2 (en) * | 2005-08-08 | 2013-04-23 | Google Inc. | User-context-based search engine |
US8027876B2 (en) * | 2005-08-08 | 2011-09-27 | Yoogli, Inc. | Online advertising valuation apparatus and method |
US8677377B2 (en) | 2005-09-08 | 2014-03-18 | Apple Inc. | Method and apparatus for building an intelligent automated assistant |
US7698128B2 (en) * | 2006-01-13 | 2010-04-13 | Research In Motion Limited | Handheld electronic device and method for disambiguation of compound text input and that employs N-gram data to limit generation of low-probability compound language solutions |
JP4251652B2 (ja) * | 2006-06-09 | 2009-04-08 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 検索装置、検索プログラムおよび検索方法 |
US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
JP2008077543A (ja) * | 2006-09-25 | 2008-04-03 | Fujitsu Ltd | レポート引用元情報取得装置、レポート引用元情報取得方法及びレポート引用元情報取得プログラム |
JP5010885B2 (ja) * | 2006-09-29 | 2012-08-29 | 株式会社ジャストシステム | 文書検索装置、文書検索方法および文書検索プログラム |
JP5141560B2 (ja) * | 2007-01-24 | 2013-02-13 | 富士通株式会社 | 情報検索プログラム、該プログラムを記録した記録媒体、情報検索装置、および情報検索方法 |
US7792786B2 (en) * | 2007-02-13 | 2010-09-07 | International Business Machines Corporation | Methodologies and analytics tools for locating experts with specific sets of expertise |
KR100877697B1 (ko) * | 2007-05-04 | 2009-01-08 | 건국대학교 산학협력단 | 글짓기 검사모듈 및 검사방법 |
US8364485B2 (en) * | 2007-08-27 | 2013-01-29 | International Business Machines Corporation | Method for automatically identifying sentence boundaries in noisy conversational data |
US8996376B2 (en) | 2008-04-05 | 2015-03-31 | Apple Inc. | Intelligent text-to-speech conversion |
JP5391583B2 (ja) * | 2008-05-29 | 2014-01-15 | 富士通株式会社 | 検索装置、生成装置、プログラム、検索方法および生成方法 |
US20110106814A1 (en) * | 2008-10-14 | 2011-05-05 | Yohei Okato | Search device, search index creating device, and search system |
KR101255557B1 (ko) * | 2008-12-22 | 2013-04-17 | 한국전자통신연구원 | 음절 분리에 기반한 문자열 검색 시스템 및 그 방법 |
US10241644B2 (en) | 2011-06-03 | 2019-03-26 | Apple Inc. | Actionable reminder entries |
US10241752B2 (en) | 2011-09-30 | 2019-03-26 | Apple Inc. | Interface for a virtual digital assistant |
US9431006B2 (en) | 2009-07-02 | 2016-08-30 | Apple Inc. | Methods and apparatuses for automatic speech recognition |
JP5418218B2 (ja) * | 2009-12-25 | 2014-02-19 | 富士通株式会社 | 情報処理プログラム、情報検索プログラム、情報処理装置、および情報検索装置 |
US8682667B2 (en) | 2010-02-25 | 2014-03-25 | Apple Inc. | User profiling for selecting user specific voice input processing information |
US8345978B2 (en) * | 2010-03-30 | 2013-01-01 | Microsoft Corporation | Detecting position of word breaks in a textual line image |
US8375021B2 (en) * | 2010-04-26 | 2013-02-12 | Microsoft Corporation | Search engine data structure |
CN101894160B (zh) * | 2010-07-21 | 2012-02-08 | 同方知网(北京)技术有限公司 | 一种智能检索方法 |
US9703871B1 (en) * | 2010-07-30 | 2017-07-11 | Google Inc. | Generating query refinements using query components |
WO2012120560A1 (ja) * | 2011-03-07 | 2012-09-13 | 株式会社日立製作所 | 検索装置及び検索方法 |
KR101414492B1 (ko) * | 2011-06-21 | 2014-07-04 | 한국전자통신연구원 | 유사문장 검색장치 및 그 검색방법 |
US20130110499A1 (en) * | 2011-10-27 | 2013-05-02 | Casio Computer Co., Ltd. | Information processing device, information processing method and information recording medium |
JP5834772B2 (ja) * | 2011-10-27 | 2015-12-24 | カシオ計算機株式会社 | 情報処理装置及びプログラム |
US20130173610A1 (en) * | 2011-12-29 | 2013-07-04 | Microsoft Corporation | Extracting Search-Focused Key N-Grams and/or Phrases for Relevance Rankings in Searches |
US9280610B2 (en) | 2012-05-14 | 2016-03-08 | Apple Inc. | Crowd sourcing information to fulfill user requests |
US9721563B2 (en) | 2012-06-08 | 2017-08-01 | Apple Inc. | Name recognition system |
US9547647B2 (en) | 2012-09-19 | 2017-01-17 | Apple Inc. | Voice-based media searching |
WO2014197334A2 (en) | 2013-06-07 | 2014-12-11 | Apple Inc. | System and method for user-specified pronunciation of words for speech synthesis and recognition |
US9886950B2 (en) * | 2013-09-08 | 2018-02-06 | Intel Corporation | Automatic generation of domain models for virtual personal assistants |
CN103514284B (zh) * | 2013-09-29 | 2017-05-10 | 北大医疗信息技术有限公司 | 数据显示系统和数据显示方法 |
US9996508B2 (en) * | 2013-11-25 | 2018-06-12 | Nec Solution Innovators, Ltd. | Input assistance device, input assistance method and storage medium |
CN103810251B (zh) * | 2014-01-21 | 2017-05-10 | 南京财经大学 | 一种文本提取方法及装置 |
US9430463B2 (en) | 2014-05-30 | 2016-08-30 | Apple Inc. | Exemplar-based natural language processing |
US9785630B2 (en) * | 2014-05-30 | 2017-10-10 | Apple Inc. | Text prediction using combined word N-gram and unigram language models |
US9338493B2 (en) | 2014-06-30 | 2016-05-10 | Apple Inc. | Intelligent automated assistant for TV user interactions |
US9668121B2 (en) | 2014-09-30 | 2017-05-30 | Apple Inc. | Social reminders |
US9535883B2 (en) | 2014-10-24 | 2017-01-03 | Dropbox, Inc. | Modifying native document comments in a preview |
JP6507657B2 (ja) * | 2015-01-15 | 2019-05-08 | 富士通株式会社 | 類似性判定装置、類似性判定方法および類似性判定プログラム |
US10567477B2 (en) | 2015-03-08 | 2020-02-18 | Apple Inc. | Virtual assistant continuity |
US9578173B2 (en) | 2015-06-05 | 2017-02-21 | Apple Inc. | Virtual assistant aided communication with 3rd party service in a communication session |
US10671428B2 (en) | 2015-09-08 | 2020-06-02 | Apple Inc. | Distributed personal assistant |
US10747498B2 (en) | 2015-09-08 | 2020-08-18 | Apple Inc. | Zero latency digital assistant |
US10366158B2 (en) | 2015-09-29 | 2019-07-30 | Apple Inc. | Efficient word encoding for recurrent neural network language models |
US11010550B2 (en) | 2015-09-29 | 2021-05-18 | Apple Inc. | Unified language modeling framework for word prediction, auto-completion and auto-correction |
US11587559B2 (en) | 2015-09-30 | 2023-02-21 | Apple Inc. | Intelligent device identification |
US10691473B2 (en) | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
US10049668B2 (en) | 2015-12-02 | 2018-08-14 | Apple Inc. | Applying neural network language models to weighted finite state transducers for automatic speech recognition |
US10223066B2 (en) | 2015-12-23 | 2019-03-05 | Apple Inc. | Proactive assistance based on dialog communication between devices |
US10446143B2 (en) | 2016-03-14 | 2019-10-15 | Apple Inc. | Identification of voice inputs providing credentials |
US9934775B2 (en) | 2016-05-26 | 2018-04-03 | Apple Inc. | Unit-selection text-to-speech synthesis based on predicted concatenation parameters |
US9972304B2 (en) | 2016-06-03 | 2018-05-15 | Apple Inc. | Privacy preserving distributed evaluation framework for embedded personalized systems |
US10249300B2 (en) | 2016-06-06 | 2019-04-02 | Apple Inc. | Intelligent list reading |
US10049663B2 (en) | 2016-06-08 | 2018-08-14 | Apple, Inc. | Intelligent automated assistant for media exploration |
DK179588B1 (en) | 2016-06-09 | 2019-02-22 | Apple Inc. | INTELLIGENT AUTOMATED ASSISTANT IN A HOME ENVIRONMENT |
US10509862B2 (en) | 2016-06-10 | 2019-12-17 | Apple Inc. | Dynamic phrase expansion of language input |
US10490187B2 (en) | 2016-06-10 | 2019-11-26 | Apple Inc. | Digital assistant providing automated status report |
US10192552B2 (en) | 2016-06-10 | 2019-01-29 | Apple Inc. | Digital assistant providing whispered speech |
US10586535B2 (en) | 2016-06-10 | 2020-03-10 | Apple Inc. | Intelligent digital assistant in a multi-tasking environment |
US10067938B2 (en) | 2016-06-10 | 2018-09-04 | Apple Inc. | Multilingual word prediction |
DK179415B1 (en) | 2016-06-11 | 2018-06-14 | Apple Inc | Intelligent device arbitration and control |
DK201670540A1 (en) | 2016-06-11 | 2018-01-08 | Apple Inc | Application integration with a digital assistant |
DK179343B1 (en) | 2016-06-11 | 2018-05-14 | Apple Inc | Intelligent task discovery |
DK179049B1 (en) | 2016-06-11 | 2017-09-18 | Apple Inc | Data driven natural language event detection and classification |
US10043516B2 (en) | 2016-09-23 | 2018-08-07 | Apple Inc. | Intelligent automated assistant |
US10593346B2 (en) | 2016-12-22 | 2020-03-17 | Apple Inc. | Rank-reduced token representation for automatic speech recognition |
DK201770439A1 (en) | 2017-05-11 | 2018-12-13 | Apple Inc. | Offline personal assistant |
DK179496B1 (en) | 2017-05-12 | 2019-01-15 | Apple Inc. | USER-SPECIFIC Acoustic Models |
DK179745B1 (en) | 2017-05-12 | 2019-05-01 | Apple Inc. | SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT |
DK201770432A1 (en) | 2017-05-15 | 2018-12-21 | Apple Inc. | Hierarchical belief states for digital assistants |
DK201770431A1 (en) | 2017-05-15 | 2018-12-20 | Apple Inc. | Optimizing dialogue policy decisions for digital assistants using implicit feedback |
DK179549B1 (en) | 2017-05-16 | 2019-02-12 | Apple Inc. | FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES |
CN111353301B (zh) * | 2020-02-24 | 2023-07-21 | 成都网安科技发展有限公司 | 辅助定密方法及装置 |
CN116737871B (zh) * | 2022-09-20 | 2024-05-07 | 荣耀终端有限公司 | 一种字符串的识别方法及系统 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6435627A (en) * | 1987-07-31 | 1989-02-06 | Fujitsu Ltd | Data retrieving system |
GB9220404D0 (en) | 1992-08-20 | 1992-11-11 | Nat Security Agency | Method of identifying,retrieving and sorting documents |
JP3220885B2 (ja) | 1993-06-18 | 2001-10-22 | 株式会社日立製作所 | キーワード付与システム |
JP2758826B2 (ja) * | 1994-03-02 | 1998-05-28 | 株式会社リコー | 文書検索装置 |
JPH07319882A (ja) | 1994-05-20 | 1995-12-08 | Nec Corp | キーワードの判定方法 |
US5745745A (en) * | 1994-06-29 | 1998-04-28 | Hitachi, Ltd. | Text search method and apparatus for structured documents |
JP3464055B2 (ja) | 1994-09-29 | 2003-11-05 | 株式会社リコー | キーワード抽出装置 |
JP3669016B2 (ja) | 1994-09-30 | 2005-07-06 | 株式会社日立製作所 | 文書情報分類装置 |
JPH08202737A (ja) | 1995-01-26 | 1996-08-09 | N T T Data Tsushin Kk | キーワード自動抽出装置およびキーワード自動抽出方法 |
JP3416918B2 (ja) * | 1995-05-25 | 2003-06-16 | 日本電信電話株式会社 | キーワード自動抽出方法および装置 |
JP3514874B2 (ja) | 1995-06-06 | 2004-03-31 | 富士通株式会社 | フリーテキスト検索システム |
JPH08335222A (ja) * | 1995-06-08 | 1996-12-17 | Fuji Electric Co Ltd | 類似文章及び文書検索機能付コンピュータ装置 |
JP3040945B2 (ja) * | 1995-11-29 | 2000-05-15 | 松下電器産業株式会社 | 文書検索装置 |
JP3113814B2 (ja) * | 1996-04-17 | 2000-12-04 | インターナショナル・ビジネス・マシーンズ・コーポレ−ション | 情報検索方法及び情報検索装置 |
JP3573572B2 (ja) | 1996-05-23 | 2004-10-06 | 株式会社リコー | キーワード抽出装置及びキーワード表示装置 |
JPH11143902A (ja) * | 1997-11-11 | 1999-05-28 | Hitachi Ltd | n−gramを用いた類似文書検索方法 |
JP3531468B2 (ja) * | 1998-03-30 | 2004-05-31 | 株式会社日立製作所 | 文書処理装置及び方法 |
-
1998
- 1998-05-29 JP JP14872198A patent/JP3622503B2/ja not_active Expired - Fee Related
-
1999
- 1999-05-27 CN CNB991070895A patent/CN1151456C/zh not_active Expired - Fee Related
- 1999-05-27 US US09/320,558 patent/US6473754B1/en not_active Expired - Lifetime
- 1999-05-29 KR KR1019990019596A patent/KR100309062B1/ko not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020003701A (ko) * | 2000-06-27 | 2002-01-15 | 쳉 유엔시엔 | 디지털 문서의 키워드를 자동으로 추출하는 방법 |
Also Published As
Publication number | Publication date |
---|---|
CN1151456C (zh) | 2004-05-26 |
US6473754B1 (en) | 2002-10-29 |
KR19990088678A (ko) | 1999-12-27 |
CN1237738A (zh) | 1999-12-08 |
JPH11338883A (ja) | 1999-12-10 |
JP3622503B2 (ja) | 2005-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100309062B1 (ko) | 특징문자열 추출 방법 및 장치와, 이를 이용한 유사문서 검색 방법 및 장치와, 특징문자열 추출 프로그램을 격납한 기억매체 및 유사문서 검색 프로그램을 격납한 기억매체 | |
KR101201037B1 (ko) | 키워드와 웹 사이트 콘텐츠 사이의 관련성 검증 | |
US8892420B2 (en) | Text segmentation with multiple granularity levels | |
US6816830B1 (en) | Finite state data structures with paths representing paired strings of tags and tag combinations | |
US7424421B2 (en) | Word collection method and system for use in word-breaking | |
US7200587B2 (en) | Method of searching similar document, system for performing the same and program for processing the same | |
US5768451A (en) | Character recognition method and apparatus | |
US20020154817A1 (en) | Apparatus for searching document images using a result of character recognition | |
Peng et al. | Self-supervised Chinese word segmentation | |
US8060494B2 (en) | Indexing and searching audio using text indexers | |
JP2002215619A (ja) | 翻訳文書からの翻訳文抽出方法 | |
EP1617409A1 (en) | Multimodal method to provide input to a computing device | |
US7475005B2 (en) | Translation system, dictionary updating server, translation method, and program and recording medium for use therein | |
JP2010538374A (ja) | 曖昧感応自然言語処理システムにおける同一指示解決 | |
CN110888946A (zh) | 一种基于知识驱动的查询的实体链接方法 | |
JP3361563B2 (ja) | 形態素解析装置及びキーワード抽出装置 | |
JP2011008784A (ja) | ローマ字変換を用いる日本語自動推薦システムおよび方法 | |
CN113330430B (zh) | 语句结构向量化装置、语句结构向量化方法及记录有语句结构向量化程序的记录介质 | |
JP2001175661A (ja) | 全文検索装置及び全文検索方法 | |
US20230229683A1 (en) | Document search device, document search system, document search program, and document search method | |
JPH11143902A (ja) | n−gramを用いた類似文書検索方法 | |
JPH11328318A (ja) | 確率テーブル作成装置、確率方式言語処理装置、認識装置、及び、記録媒体 | |
KR20020054254A (ko) | 사전구조를 이용한 한국어 형태소 분석방법 | |
JPH06124305A (ja) | 文書検索方法 | |
CN110807322A (zh) | 基于信息熵识别新词的方法、装置、服务器及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120821 Year of fee payment: 12 |
|
FPAY | Annual fee payment |
Payment date: 20130819 Year of fee payment: 13 |
|
FPAY | Annual fee payment |
Payment date: 20140826 Year of fee payment: 14 |
|
LAPS | Lapse due to unpaid annual fee |