JP2005063470A - キーワード抽出装置 - Google Patents
キーワード抽出装置 Download PDFInfo
- Publication number
- JP2005063470A JP2005063470A JP2004352676A JP2004352676A JP2005063470A JP 2005063470 A JP2005063470 A JP 2005063470A JP 2004352676 A JP2004352676 A JP 2004352676A JP 2004352676 A JP2004352676 A JP 2004352676A JP 2005063470 A JP2005063470 A JP 2005063470A
- Authority
- JP
- Japan
- Prior art keywords
- keyword
- pattern
- unnecessary
- character string
- keyword candidate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】 キーワード抽出に関する情報の記述性、再利用性を向上させながら、精度よく効率的にキーワードを抽出するキーワード抽出装置を得ること
【解決手段】 本発明に係るキーワード抽出装置は、キーワードの構成要素となり得る文字列からなる正規表現で記述されたキーワード構成要素パターンを少なくとも有するパターン格納手段と、テキスト中の文字列とキーワード構成要素パターンとのマッチングを行い、テキストからキーワード構成要素パターンにマッチする互いにオーバーラップのないすべての文字列をキーワード構成要素として抽出するキーワード構成要素抽出手段と、各キーワード構成要素からキーワード候補集合を生成するキーワード候補集合生成手段と、キーワード候補集合の各キーワード候補をキーワードとして出力するキーワード出力手段とを備えたものである。
【選択図】 図1
【解決手段】 本発明に係るキーワード抽出装置は、キーワードの構成要素となり得る文字列からなる正規表現で記述されたキーワード構成要素パターンを少なくとも有するパターン格納手段と、テキスト中の文字列とキーワード構成要素パターンとのマッチングを行い、テキストからキーワード構成要素パターンにマッチする互いにオーバーラップのないすべての文字列をキーワード構成要素として抽出するキーワード構成要素抽出手段と、各キーワード構成要素からキーワード候補集合を生成するキーワード候補集合生成手段と、キーワード候補集合の各キーワード候補をキーワードとして出力するキーワード出力手段とを備えたものである。
【選択図】 図1
Description
この発明は、テキストからキーワードを抽出するキーワード抽出装置に関するものである。
図11は、たとえば特開平10−334102に示された従来のキーワード抽出装置を示す構成図である。図11において、1はデータベース、2は一次キーワード切出処理部、3は字種情報部、4は一次キーワード格納部、5は不要語除去処理部、6はキーワード情報格納部である。
つぎに、動作について説明する。キーワードとなる文字の種別を定めた字種情報部3の情報に基づき、一次キーワード切出処理部2はデータベース1から一次キーワードとなる文字列を抽出して一次キーワード格納部4に格納する。不要語除去処理部5は他の一次キーワードを結合したものと等しい一次キーワード(合成語)を不要語として除去し、残ったものをキーワード情報格納部に格納する。
また、不要語除去処理部5では1文字の一次キーワードを除去したり、あらかじめ格納された接頭語、接尾語を除いて不要語除去処理を行なったり、あらかじめ登録されているかあるいは頻出する合成語は除去しないなどといった処理も記載されている。
従来のキーワード抽出装置は字種情報をベースとしているので、複数の字種にまたがったキーワードを抽出することが困難であった。またキーワードとはなり得ないと同定できる部分に関してもキーワード抽出処理が行なわれるため、不要な処理の結果、誤ったキーワードを抽出する可能性もあった。さらにキーワードとなるべき合成語や不要な一次キーワード、接頭語、接尾語に関する情報が文字列もしくは単なる文字数として格納/規定されるため、記述の柔軟性、簡潔性に欠け、また本来は接頭語・接尾語ではない部分が誤って削除されたり、キーワードとなるべき1文字の文字列を抽出できないといった問題点もあった。またそれらの情報を分野・文書タイプなどに対応してモジュール化し、必要に応じて組み合わせて用いることも不可能であり、それらの情報の再利用性が乏しかった。
特開平10−334102号
この発明は、前記のような問題点を解決するためになされたものであり、キーワード抽出に関する情報の記述性、再利用性を向上させながら、精度よく効率的にキーワードを抽出するキーワード抽出装置を得ることを目的とするものである。
本発明に係るキーワード抽出装置は、テキストを入力するテキスト入力手段と、正規表現による文字列のマッチングを行うパターン処理手段と、キーワードの構成要素となり得る文字列からなる正規表現で記述されたキーワード構成要素パターンを少なくとも有するパターン格納手段と、パターン処理手段を用いて、テキスト中の文字列とキーワード構成要素パターンとのマッチングを行い、テキストからキーワード構成要素パターンにマッチする互いにオーバーラップのない文字列をキーワード構成要素として抽出するキーワード構成要素抽出手段と、各キーワード構成要素からキーワード候補集合を生成するキーワード候補集合生成手段と、キーワード候補集合の各キーワード候補をキーワードとして出力するキーワード出力手段とを備えたものである。
本発明に係るキーワード抽出装置は、テキストを入力するテキスト入力手段と、正規表現による文字列のマッチングを行うパターン処理手段と、キーワードの構成要素となり得る文字列からなる正規表現で記述されたキーワード構成要素パターンを少なくとも有するパターン格納手段と、パターン処理手段を用いて、テキスト中の文字列とキーワード構成要素パターンとのマッチングを行い、テキストからキーワード構成要素パターンにマッチする互いにオーバーラップのない文字列をキーワード構成要素として抽出するキーワード構成要素抽出手段と、各キーワード構成要素からキーワード候補集合を生成するキーワード候補集合生成手段と、キーワード候補集合の各キーワード候補をキーワードとして出力するキーワード出力手段とを備えているので、記述性の高い正規表現で記述されたパターンを用いて、字種にこだわらない柔軟なキーワード抽出を容易に実現することができる。
実施の形態1
図1は、この発明を実施するための実施の形態1によるキーワード抽出装置を説明するための図である。
図1は、この発明を実施するための実施の形態1によるキーワード抽出装置を説明するための図である。
図1において、10はテキスト入力手段、20はパターン処理手段、30はパターン格納手段、40はキーワード構成要素抽出手段、50はキーワード候補集合生成手段、60はキーワード出力手段である。
テキスト入力手段10はたとえばハードディスクなどに格納されたファイルなどから、必要に応じて日本語コードの変換などを行ないながらテキストデータを読み込む。
パターン処理手段20はテキストなどの文字列と、正規表現もしくは同等のパターンを与えられてマッチングを行ない、マッチした部分文字列とその位置を出力したり、与えられた別の文字列によってマッチした部分文字列の置換を行なう。また、あるパターンにマッチした部分の後続の文字列にそのパターンを再び適用することにより、ある文字列からそのパターンに互いにオーバーラップなくマッチするすべての部分文字列を検索し、置換することも可能である。
正規表現とは特定の文字列ではなく、文字列の一部を一般化して表現することを可能とするものであり、たとえば以下のように定義される。
・通常の文字は、それ自身とマッチする正規表現である。
例)正規表現“い”はテキスト「あいうえお」の「い」にマッチする。
・正規表現を連結したものは、各正規表現にマッチする文字列を連結した文字列にマッチする正規表現である。
例)“うえ”は「あいうえお」の「うえ」にマッチする。
・“^”は文字列の先頭にマッチする正規表現である。
例)“^あ”は「あいうえお」の「あ」にマッチする。
・“$”は文字列の末尾にマッチする正規表現である。
例)“お$”は「あいうえお」の「お」にマッチする。
・“[“と”]”の間に通常の文字を並べたものは、それらのいずれか1文字にマッチする正規表現である。“[A−Z]”というようにある範囲の文字を指定することも可能である。また“[“の直後に“^”を置くと、並べた文字以外の1文字とマッチする正規表現となる。
例)“[い−え]”は「あいうえお」の「い」「う」「え」のいずれかにマッチする。
“[^い−え]”は「あいうえお」の「あ」「お」のいずれかにマッチする。
・“(“と”)”で囲まれた正規表現は括弧内の正規表現と同等の正規表現である。
例)“(うえ)”は「あいうえお」の「うえ」にマッチする。
・“|”をはさんだ正規表現は、その前後の正規表現のいずれかにマッチする文字列にマッチする正規表現である(選択)。
例)“(い|うえ)”は「あいうえお」の「い」「うえ」のいずれかにマッチする。
・正規表現に“{m,n}”(m,nは0以上の整数、m≦n)が後置されたものは、その正規表現のm回以上n回以下の反復を表わす正規表現である。
例)“い{1,3}”は「あいいえお」の「いい」もしくはいずれかの「い」にマッチする。
・正規表現に“{m}”、“{m,}”、“*”、“+”、“?”が後置されたものはそれぞれ、その正規表現に“{m,m}”、“{m,∞}”、“{0,∞}”、“{1,∞}”、“{0,1}”が後置されたものと同等の正規表現である。
例)“い{2}”は「あいいえお」の「いい」にマッチする。
・通常の文字は、それ自身とマッチする正規表現である。
例)正規表現“い”はテキスト「あいうえお」の「い」にマッチする。
・正規表現を連結したものは、各正規表現にマッチする文字列を連結した文字列にマッチする正規表現である。
例)“うえ”は「あいうえお」の「うえ」にマッチする。
・“^”は文字列の先頭にマッチする正規表現である。
例)“^あ”は「あいうえお」の「あ」にマッチする。
・“$”は文字列の末尾にマッチする正規表現である。
例)“お$”は「あいうえお」の「お」にマッチする。
・“[“と”]”の間に通常の文字を並べたものは、それらのいずれか1文字にマッチする正規表現である。“[A−Z]”というようにある範囲の文字を指定することも可能である。また“[“の直後に“^”を置くと、並べた文字以外の1文字とマッチする正規表現となる。
例)“[い−え]”は「あいうえお」の「い」「う」「え」のいずれかにマッチする。
“[^い−え]”は「あいうえお」の「あ」「お」のいずれかにマッチする。
・“(“と”)”で囲まれた正規表現は括弧内の正規表現と同等の正規表現である。
例)“(うえ)”は「あいうえお」の「うえ」にマッチする。
・“|”をはさんだ正規表現は、その前後の正規表現のいずれかにマッチする文字列にマッチする正規表現である(選択)。
例)“(い|うえ)”は「あいうえお」の「い」「うえ」のいずれかにマッチする。
・正規表現に“{m,n}”(m,nは0以上の整数、m≦n)が後置されたものは、その正規表現のm回以上n回以下の反復を表わす正規表現である。
例)“い{1,3}”は「あいいえお」の「いい」もしくはいずれかの「い」にマッチする。
・正規表現に“{m}”、“{m,}”、“*”、“+”、“?”が後置されたものはそれぞれ、その正規表現に“{m,m}”、“{m,∞}”、“{0,∞}”、“{1,∞}”、“{0,1}”が後置されたものと同等の正規表現である。
例)“い{2}”は「あいいえお」の「いい」にマッチする。
“い+”は“い{1,}”と同等であり、「あいいえお」の「いい」もしくはいずれかの「い」にマッチする。
“い*え”は「あいいえお」の「いいえ」「いえ」「え」のいずれかにマッチする。
“い?え”は「あいいえお」の「いえ」「え」のいずれかにマッチする。
“い*え”は「あいいえお」の「いいえ」「いえ」「え」のいずれかにマッチする。
“い?え”は「あいいえお」の「いえ」「え」のいずれかにマッチする。
正規表現によるマッチングは非決定性有限状態オートマトンを用いて効率的に行なわれるが、この場合:
・文字列の複数の部分がマッチ可能な場合、文字列の先頭に近い部分がマッチする。
(C1)
・選択において複数の選択肢がマッチ可能な場合、左の選択肢が優先される。 (C2)
・反復を含む正規表現では、より多くの反復によるマッチが優先される。 (C3)
という点に注意が必要である。
・文字列の複数の部分がマッチ可能な場合、文字列の先頭に近い部分がマッチする。
(C1)
・選択において複数の選択肢がマッチ可能な場合、左の選択肢が優先される。 (C2)
・反復を含む正規表現では、より多くの反復によるマッチが優先される。 (C3)
という点に注意が必要である。
パターン格納手段30は、パターン処理手段20が処理可能な正規表現もしくは同等のパターンを格納しておくものである。以下、パターンは前述の正規表現で記述するものとする。
たとえば円相場情報などのテキストから、円相場の情勢を表わすキーワード構成要素を抽出したい場合には:
“([0−9]+[円銭]|(円|ドル)[高安])” (1)
などといったキーワード構成要素パターンを用意すればよい。
“([0−9]+[円銭]|(円|ドル)[高安])” (1)
などといったキーワード構成要素パターンを用意すればよい。
また技術系文書などでは、連続した漢字やカタカナの文字列をキーワード構成要素とすることが有用な場合が多い。ただし漢字1文字の場合は、「光」「熱」など分野によって意味があるものもあるが、多くの場合ひらがながあとに続いて動詞や形容詞となるため、一部の文字を除いてキーワード構成要素から除外した方がよい場合が多い。またカタカナ1文字をキーワード構成要素とすべき場合も極めて稀である。これらを考慮すると、たとえば以下のようなキーワード構成要素パターンを用いることが考えられる。
“([亜−瑤]{2,}|[ァ−ヶー−]{2,}|[光熱])” (2)
なお、“[亜−瑤]”はすべての漢字を、“[ァ−ヶー−]”はすべてのカタカナと長音符号を表わすパターンである。また、(C2)に示したようにマッチングでは左の選択肢が優先されるため、“[光熱]”のように短い文字列にマッチする選択肢は右の方に置き、パターン全体としてできるだけ長い文字列にマッチするようにしている。
“([亜−瑤]{2,}|[ァ−ヶー−]{2,}|[光熱])” (2)
なお、“[亜−瑤]”はすべての漢字を、“[ァ−ヶー−]”はすべてのカタカナと長音符号を表わすパターンである。また、(C2)に示したようにマッチングでは左の選択肢が優先されるため、“[光熱]”のように短い文字列にマッチする選択肢は右の方に置き、パターン全体としてできるだけ長い文字列にマッチするようにしている。
キーワード構成要素抽出手段40は、テキスト入力手段10で入力されたテキストに対し、パターン格納手段30に格納されたキーワード構成要素パターンを用いて、パターン処理手段20によりマッチングを行ない、互いに重複なくマッチするすべての文字列をキーワード構成要素として抽出する。
たとえば
「15日の東京外国為替市場の円相場は1ドル=106円11銭で、前日に比べ1円15銭円高となった。」 (3)
というテキストに対し、円相場情報に対応したキーワード構成要素パターン(1)を用いれば、
「106円」「11銭」「1円」「15銭」「円高」 (4)
といったキーワード構成要素が抽出される。
「15日の東京外国為替市場の円相場は1ドル=106円11銭で、前日に比べ1円15銭円高となった。」 (3)
というテキストに対し、円相場情報に対応したキーワード構成要素パターン(1)を用いれば、
「106円」「11銭」「1円」「15銭」「円高」 (4)
といったキーワード構成要素が抽出される。
また
「光デバイスを用いた通信装置を開発した。」 (5)
というテキストに対して技術系文書に対応したキーワード構成要素パターン(2)を用いれば、
「光」「デバイス」「通信装置」「開発」 (6)
というキーワード構成要素が抽出される。なお、「用いた」の「用」はこのパターンにマッチしないため、キーワード構成要素とはならない。
「光デバイスを用いた通信装置を開発した。」 (5)
というテキストに対して技術系文書に対応したキーワード構成要素パターン(2)を用いれば、
「光」「デバイス」「通信装置」「開発」 (6)
というキーワード構成要素が抽出される。なお、「用いた」の「用」はこのパターンにマッチしないため、キーワード構成要素とはならない。
キーワード候補集合生成手段50はキーワード構成要素抽出手段40が抽出したキーワード構成要素からキーワード候補集合を生成する。
最も単純なものは、各キーワード構成要素をそのままキーワード候補とするものである。この方式は要素概念を抽出しやすいものの、いくつかのキーワード構成要素からなる複合キーワードを抽出できないという側面を持つ。
また、テキスト上連続したキーワード構成要素は連結して1つのキーワード候補として、単独のキーワード構成要素はそのままキーワード候補として、キーワード候補集合を生成することも考えられる。前述の例では前二者と後三者がそれぞれ連続しているので、
「106円11銭」「1円15銭円高」 (7)
というキーワード候補集合が生成される。この方式は複合キーワードを抽出しやすいものの、要素概念を取り出しにくいという側面をもつ。
「106円11銭」「1円15銭円高」 (7)
というキーワード候補集合が生成される。この方式は複合キーワードを抽出しやすいものの、要素概念を取り出しにくいという側面をもつ。
さらに、テキスト上連続したキーワード構成要素はそれぞれを単独のキーワード候補とするとともに、前後のキーワード構成要素を連結したものもそれぞれキーワード候補とする一方、単独のキーワード構成要素はそのままキーワード候補として、キーワード候補集合を生成する方式も考えられる。この場合前述の例では、
「106円」「11銭」「1円」「15銭」「円高」「106円11銭」「1円15銭」
「15銭円高」「1円15銭円高」 (8)
というキーワード候補集合が生成される。この方式によるキーワード候補集合は前二者によるものを包含するものであり、要素概念も複合キーワードも抽出可能であるが、不完全な複合キーワードが抽出される場合もある。
「106円」「11銭」「1円」「15銭」「円高」「106円11銭」「1円15銭」
「15銭円高」「1円15銭円高」 (8)
というキーワード候補集合が生成される。この方式によるキーワード候補集合は前二者によるものを包含するものであり、要素概念も複合キーワードも抽出可能であるが、不完全な複合キーワードが抽出される場合もある。
なお、キーワード構成要素がテキスト上連続しているかどうかの判定は、たとえばつぎのように実現される。まずキーワード構成要素抽出手段40において、キーワード構成要素を抽出するとともに抽出位置をテキストの先頭からの文字数として記録しておく。たとえば、文字列長L1のキーワード構成要素E1が位置P1で抽出され、つぎにキーワード構成要素E2が位置P2で抽出されたとすると、P1+L1がP2に等しければE1とE2はテキスト上連続していると判定される。
また、後続処理における冗長性を回避するために、キーワード候補集合生成手段50は重複したキーワード候補を1つにまとめてもよい。
キーワード出力手段60は、キーワード候補集合の各キーワード候補をキーワードとしてファイルやプリンタ、ディスプレーなどに出力するものである。
このように実施の形態1によれば、記述性の高い正規表現もしくは同等のパターンを用いてキーワード構成要素を抽出するため、字種にこだわらない柔軟なキーワード抽出を容易に実現することが可能である。
実施の形態2
図2は、この発明を実施するための実施の形態2によるキーワード抽出装置を説明するための図である。
図2は、この発明を実施するための実施の形態2によるキーワード抽出装置を説明するための図である。
図2において、図1と同一の符号を付したものは、同一またはこれに相当するものである。
図2において、70は非キーワード候補除去手段である。またパターン格納手段30には、キーワードの候補となり得ない部分を表わす非キーワード候補パターンが追加して格納されている。
たとえば円相場情報で現在の円相場とは関係なく、単に円相場の動向だけをキーワードとして取り出したい場合、非キーワード候補パターンとして
“1ドル=[0−9]+円([0−9]+銭)?” (9)
といったパターンを格納しておけばよい。
“1ドル=[0−9]+円([0−9]+銭)?” (9)
といったパターンを格納しておけばよい。
非キーワード候補除去手段70はパターン処理手段20を用いて、パターン格納手段30に格納された非キーワード候補パターンにマッチする互いにオーバーラップ(同一の部分を有する)のない文字列をテキストからすべて検索し、どのパターンも決してそれを含む文字列にマッチしない特別な文字列に置換する。
たとえばどのパターンも決して半角文字を含む文字列にマッチすることがなければ、非キーワード候補パターンにマッチした文字列を、同じ文字数の半角の“###…”という文字列に置換する(“…”は繰返しの省略記号である)。前出の円相場情報の例文(3)は、
「15日の東京外国為替市場の円相場は###########で、前日に比べ1円15銭円高となった。」 (10)
というテキストに変換される。
「15日の東京外国為替市場の円相場は###########で、前日に比べ1円15銭円高となった。」 (10)
というテキストに変換される。
キーワード構成要素抽出手段40は、非キーワード候補除去手段70によって変換されたテキストからキーワード構成要素を抽出する。円相場情報の例では、前記(10)のテキストに対し、たとえば前述の円相場情報に対応したキーワード構成要素パターン(1)を用いることにより、
「1円」「15銭」「円高」 (11)
というキーワード構成要素が抽出される。
「1円」「15銭」「円高」 (11)
というキーワード構成要素が抽出される。
このように実施の形態2によれば、キーワードの候補となり得ない部分をあらかじめ除去してキーワード構成要素を抽出するので、不要なキーワード構成要素の抽出を防ぐことが可能となる。
実施の形態3
図3は、この発明を実施するための実施の形態3によるキーワード抽出装置を説明するための図である。
図3は、この発明を実施するための実施の形態3によるキーワード抽出装置を説明するための図である。
図3において、図1〜2と同一の符号を付したものは、同一またはこれに相当するものである。
図3において、80は例外キーワード構成要素抽出手段である。またパターン格納手段30には、キーワード構成要素パターンで網羅することが困難なキーワード構成要素を表わす例外キーワード構成要素パターンが追加して格納されている。
たとえば技術系文書の場合、キーワード構成要素パターン(2)では網羅できない、ひらがなの混在したキーワード構成要素を抽出するためのパターンを用意することが考えられる。
また技術系文書ではよく数値データが現れるが、これらを
“[0−9.−]+” (12)
というような非キーワード候補パターンとしておけば非キーワード候補除去手段70でこれらを除去することが可能である。しかしながらこのようにすると、数字を含んだキーワード構成要素をキーワード構成要素抽出手段40で抽出できなくなる。
“[0−9.−]+” (12)
というような非キーワード候補パターンとしておけば非キーワード候補除去手段70でこれらを除去することが可能である。しかしながらこのようにすると、数字を含んだキーワード構成要素をキーワード構成要素抽出手段40で抽出できなくなる。
これらのキーワード構成要素を抽出するためにはたとえば、
“(しきい値|割り込み|[0−9]+(進数|次元))” (13)
というような例外キーワード構成要素パターンを用意する。
“(しきい値|割り込み|[0−9]+(進数|次元))” (13)
というような例外キーワード構成要素パターンを用意する。
例外キーワード構成要素抽出手段80はパターン処理手段20を用いて、パターン格納手段30に格納された例外キーワード構成要素パターンにマッチする、互いにオーバーラップのないすべての文字列を例外キーワード構成要素として抽出し、その抽出位置を記録するとともに、どのパターンも決してそれを含む文字列にマッチしない特別な文字列に置換する。たとえばどのパターンも決して半角文字を含む文字列にマッチすることがなければ、抽出された文字列を同じ文字数の半角の“@@@…”という文字列に置換する。
たとえば
「受光素子を2次元に配列した。」 (14)
というテキストに対して例外キーワード構成要素パターン(13)を用いれば、
「2次元」 (15)
という例外キーワード構成要素が抽出されるとともに、もとのテキストは
「受光素子を@@@に配列した。」 (16)
というテキストに変換されて後の処理に移される。
「受光素子を2次元に配列した。」 (14)
というテキストに対して例外キーワード構成要素パターン(13)を用いれば、
「2次元」 (15)
という例外キーワード構成要素が抽出されるとともに、もとのテキストは
「受光素子を@@@に配列した。」 (16)
というテキストに変換されて後の処理に移される。
キーワード候補集合生成手段50は例外キーワード構成要素抽出手段80で抽出された例外キーワード構成要素と、キーワード構成要素抽出手段40で抽出されたキーワード構成要素からキーワード候補を生成する。
前出の例文(14)に対してキーワード構成要素パターン(2)を用いれば
「受光素子」「配列」 (17)
の2つのキーワード構成要素が抽出され、それらと(15)の例外キーワード構成要素から、たとえば実施の形態1で述べた方法のいずれかにより、キーワード候補が生成されることになる。
「受光素子」「配列」 (17)
の2つのキーワード構成要素が抽出され、それらと(15)の例外キーワード構成要素から、たとえば実施の形態1で述べた方法のいずれかにより、キーワード候補が生成されることになる。
なおキーワード候補集合生成手段50における、例外キーワード構成要素およびキーワード構成要素のテキスト上の連続性判定については、たとえば例外キーワード構成要素抽出手段80もしくは非キーワード候補除去手段70におけるテキストの置換において前述のようにテキストの文字数を変えないようにすることにより、実施の形態1で述べた方法を用いることができる。
このように実施の形態3によれば、キーワード構成要素パターンでは網羅することが困難な、あるいは非キーワード候補の除去に伴って抽出できなくなるキーワード構成要素をあらかじめ抽出することが可能となる。
実施の形態4
図4は、この発明を実施するための実施の形態4によるキーワード抽出装置を説明するための図である。
図4は、この発明を実施するための実施の形態4によるキーワード抽出装置を説明するための図である。
図4において、図1〜3と同一の符号を付したものは、同一またはこれに相当するものである。
図4において、90は不要語除去手段である。またパターン格納手段30には不要語を表わす不要語パターンが追加して格納されている。
たとえば技術系文書において「開発」「利用」などのような一般的な単語や、「同図」「次表」「前行」といった図表などの参照を示すものなどは、その文書で説明されている事物・アイデアなどの機能的な特徴を表わしているとは言えず、キーワードとすべきでない場合が多い。
このようなものを不要語とするには、たとえばつぎのような不要語パターンを用意しておく。
“^([同本次前後][図表式行頁]|開発|利用|…)$” (18)
不要語除去手段90はキーワード候補集合生成手段50が生成した各キーワード候補に対してパターン処理手段20を用い、文字列全体が不要語パターンにマッチするキーワード候補をキーワード候補集合から除去する。なお、パターン(18)の先頭の“^”と末尾の“$”は、各キーワード候補の文字列全体とのマッチングが行なわれることを表わす。
“^([同本次前後][図表式行頁]|開発|利用|…)$” (18)
不要語除去手段90はキーワード候補集合生成手段50が生成した各キーワード候補に対してパターン処理手段20を用い、文字列全体が不要語パターンにマッチするキーワード候補をキーワード候補集合から除去する。なお、パターン(18)の先頭の“^”と末尾の“$”は、各キーワード候補の文字列全体とのマッチングが行なわれることを表わす。
たとえば(6)のキーワード構成要素がキーワード候補集合生成手段50によってそのままキーワード候補となり、それに対して不要語除去手段90が(18)の不要語パターンを用いるとすれば、「開発」が不要語として除去され、
「光」「デバイス」「通信装置」 (19)
の3つがキーワード候補として残ることになる。
「光」「デバイス」「通信装置」 (19)
の3つがキーワード候補として残ることになる。
また、パターン格納手段30に必要語を表わす必要語パターンを追加して格納するとともに、不要語除去手段90において各キーワード候補に対してパターン処理手段20を用い、文字列全体が必要語パターンにマッチせず、不要語パターンにマッチするキーワード候補をキーワード候補集合から除去するように構成することにより、不要語パターンで誤って必要なキーワード候補が削除されることを防ぐことが可能である。
仮に「同行」が動詞としてキーワードとすべきにもかかわらず、(18)の不要語パターンを用いるとマッチしてしまう場合、必要語パターンとして、
“^(同行|…)$” (20)
を用いれば、「同行」はキーワード候補として残される。
“^(同行|…)$” (20)
を用いれば、「同行」はキーワード候補として残される。
このように実施の形態4によれば、不要なキーワード候補を除去するのに記述性の高いパターンを用いることが可能である。また必要語パターンを用意することにより、不要語パターンで誤ってキーワード候補が削除されることを防ぐことが可能である。
実施の形態5
図5は、この発明を実施するための実施の形態5によるキーワード抽出装置を説明するための図である。
図5は、この発明を実施するための実施の形態5によるキーワード抽出装置を説明するための図である。
図5において、図1〜4と同一の符号を付したものは、同一またはこれに相当するものである。
図5において、100は不要先頭文字列除去手段である。またパターン格納手段30には不要先頭文字列を表わす不要先頭パターンが追加して格納されている。ここで不要先頭文字列とは、「各」「約」などいわゆる接頭語で不要なものだけでなく、キーワード候補の先頭文字列としては不要な部分文字列を指す。
たとえばキーワード構成要素抽出手段40においてキーワード構成要素パターン(2)を用いる場合、
「電圧を加えた際発振する…」 (21)
というようなテキストにおいて、「際発振」というキーワード構成要素が抽出される。これがそのままキーワード候補となる場合、「際」という文字列を不要先頭文字列と考えることにより、「発振」だけをキーワード候補として残すことが可能である。その他、「実用上」「実際上」など漢字からなる副詞句なども不要先頭文字列として扱う場合、たとえばつぎのような不要先頭パターンが考えられる。
“^((実用|実際|事実|…)上|[各約際…])” (22)
「電圧を加えた際発振する…」 (21)
というようなテキストにおいて、「際発振」というキーワード構成要素が抽出される。これがそのままキーワード候補となる場合、「際」という文字列を不要先頭文字列と考えることにより、「発振」だけをキーワード候補として残すことが可能である。その他、「実用上」「実際上」など漢字からなる副詞句なども不要先頭文字列として扱う場合、たとえばつぎのような不要先頭パターンが考えられる。
“^((実用|実際|事実|…)上|[各約際…])” (22)
不要先頭文字列除去手段100は不要語除去手段90で除去されなかった各キーワード候補の先頭文字列に対してパターン処理手段20を用い、不要先頭パターンにマッチしたキーワード候補に対してはマッチした部分を除去し、その結果が空文字列であればもとのキーワード候補をキーワード候補集合から除去し、空文字列でなければそれをもとのキーワード候補と置換する。置換されたキーワード候補は不要語除去手段90に戻され、再び不要語除去処理、不要先頭文字列除去処理が行なわれる。なお、パターン(22)の先頭の“^”は、各キーワード候補の先頭文字列とのマッチングが行なわれることを表わす。
またパターン格納手段30に必要先頭文字列を表わす必要先頭パターンを追加して格納するとともに、不要先頭文字列除去手段100において、各キーワード候補の先頭文字列に対してパターン処理手段20を用い、必要先頭パターンにマッチせず不要先頭パターンにマッチしたキーワード候補に対しては、不要先頭パターンにマッチした部分を除去し、その結果が空文字列であればもとのキーワード候補をキーワード候補集合から除去し、空文字列でなければそれをもとのキーワード候補と置換するように構成することにより、必要な先頭文字列を誤って除去することを防ぐことが可能となる。
たとえば「約数」「約分」というキーワード候補に対して不要先頭パターン(22)によって「約」だけが誤って除去されないようにするためにはたとえば:
“^(約数|約分|…)” (23)
というような必要先頭パターンを用意すればよい。
“^(約数|約分|…)” (23)
というような必要先頭パターンを用意すればよい。
このように実施の形態5によれば、キーワード候補において不要な先頭文字列を除去するのに記述性の高いパターンを用いることが可能である。また必要先頭パターンを用意することにより、不要先頭パターンで誤ってキーワード候補の必要な先頭文字列が削除されることを防ぐことが可能である。
実施の形態6
図6は、この発明を実施するための実施の形態6によるキーワード抽出装置を説明するための図である。
図6は、この発明を実施するための実施の形態6によるキーワード抽出装置を説明するための図である。
図6において、図1〜5と同一の符号を付したものは、同一またはこれに相当するものである。
図6において、110は不要末尾文字列除去手段である。またパターン格納手段30には不要末尾文字列を表わす不要末尾パターンが追加して格納されている。ここで不要末尾文字列とは、「等」「群」などいわゆる接尾語で不要なものだけでなく、キーワード候補の末尾文字列としては不要な部分文字列を指す。
たとえばキーワード構成要素抽出手段40においてキーワード構成要素パターン(2)を用いた場合、
「共有メモリを有する並列計算機特に…」 (24)
というようなテキストにおいて、「並列計算機特」というキーワード構成要素が抽出される。これがそのままキーワード候補となる場合、「特」という文字列を不要末尾文字列と考えることにより、「並列計算機」だけをキーワード候補として残すことが可能である。その他、「装置」「手段」など漢字からなる一般的な名詞で、特に機能などの説明には不要な部分も不要末尾文字列として扱う場合、たとえばつぎのような不要末尾パターンが考えられる。
“(装置|手段|[等群特…])$” (25)
不要末尾文字列除去手段110は、不要語除去手段90で除去されず、不要先頭文字列除去手段100によっても変更のなかった各キーワード候補の末尾文字列に対してパターン処理手段20を用い、不要末尾パターンにマッチしたキーワード候補に対してはマッチした部分を除去し、その結果が空文字列であればもとのキーワード候補をキーワード候補集合から除去し、空文字列でなければそれをもとのキーワード候補と置換する。置換されたキーワード候補は不要語除去手段90に戻され、再び不要語除去処理、不要先頭文字列除去処理、不要末尾文字列除去処理が行なわれる。なお、(25)の末尾の“$”は、各キーワード候補の末尾文字列とのマッチングが行なわれることを表わす。
「共有メモリを有する並列計算機特に…」 (24)
というようなテキストにおいて、「並列計算機特」というキーワード構成要素が抽出される。これがそのままキーワード候補となる場合、「特」という文字列を不要末尾文字列と考えることにより、「並列計算機」だけをキーワード候補として残すことが可能である。その他、「装置」「手段」など漢字からなる一般的な名詞で、特に機能などの説明には不要な部分も不要末尾文字列として扱う場合、たとえばつぎのような不要末尾パターンが考えられる。
“(装置|手段|[等群特…])$” (25)
不要末尾文字列除去手段110は、不要語除去手段90で除去されず、不要先頭文字列除去手段100によっても変更のなかった各キーワード候補の末尾文字列に対してパターン処理手段20を用い、不要末尾パターンにマッチしたキーワード候補に対してはマッチした部分を除去し、その結果が空文字列であればもとのキーワード候補をキーワード候補集合から除去し、空文字列でなければそれをもとのキーワード候補と置換する。置換されたキーワード候補は不要語除去手段90に戻され、再び不要語除去処理、不要先頭文字列除去処理、不要末尾文字列除去処理が行なわれる。なお、(25)の末尾の“$”は、各キーワード候補の末尾文字列とのマッチングが行なわれることを表わす。
またパターン格納手段30に必要末尾文字列を表わす必要末尾パターンを追加して格納するとともに、不要末尾文字列除去手段110において、各キーワード候補の末尾文字列に対してパターン処理手段20を用い、必要末尾パターンにマッチせず不要末尾パターンにマッチしたキーワード候補に対しては、不要末尾パターンにマッチした部分を除去し、その結果が空文字列であればもとのキーワード候補をキーワード候補集合から除去し、空文字列でなければそれをもとのキーワード候補と置換するように構成することにより、必要な末尾文字列を誤って除去することを防ぐことが可能となる。
たとえば「○○症候群」というキーワード候補に対して不要末尾パターン(25)によって「群」だけが誤って除去されないようにするためにはたとえば:
“(症候群|…)$” (26)
というような必要末尾パターンを用意すればよい。
“(症候群|…)$” (26)
というような必要末尾パターンを用意すればよい。
このように実施の形態6によれば、キーワード候補において不要な末尾文字列を除去するのに記述性の高いパターンを用いることが可能である。また必要末尾パターンを用意することにより、不要末尾パターンで誤ってキーワード候補の末尾文字列が削除されることを防ぐことが可能である。
なお、実施の形態5または実施の形態6においては、あるキーワード候補に対して不要語除去処理、不要先頭文字列除去処理、不要末尾文字列除去処理のうち2つ以上を組み合わせて、もしくは不要先頭文字列除去処理、不要末尾文字列除去処理のいずれかを2回以上適用することによって、最終的にキーワード候補集合からあるキーワード候補が除去されることがある。1つの文書でそのような文字列を含むフレーズが複数回出現する場合、そのような文字列を不要語パターンの選択肢に付加することにより、冗長な処理を省くことが可能である。
これを実現するにはたとえば、キーワード候補集合生成手段50で各キーワード候補が生成されたときの文字列を、初期文字列として各キーワード候補に付与しておく。そして不要語除去処理、不要先頭文字列除去処理、不要末尾文字列除去処理のいずれかにおいて最終的にキーワード候補が除去されるとき、その直前の文字列が初期文字列と異なっていれば、初期文字列を不要語パターンの選択肢に付加する。
たとえば「利用手段」というキーワード候補にまず不要末尾パターン(25)が適用されて「利用」が残り、つぎに不要語パターン(18)が適用されてキーワード候補集合から最終的に除去されたとする。
このとき“利用手段”を不要語パターンの選択肢に加えておけば、つぎに「各利用手段」というキーワード候補に対して、不要先頭パターン(22)が適用されて「利用手段」が残ると、つぎには新たな不要語パターンを適用することにより、「利用手段」そのものがマッチして不要語として除去される。このようにして冗長な処理を回避することが可能となる。
このとき“利用手段”を不要語パターンの選択肢に加えておけば、つぎに「各利用手段」というキーワード候補に対して、不要先頭パターン(22)が適用されて「利用手段」が残ると、つぎには新たな不要語パターンを適用することにより、「利用手段」そのものがマッチして不要語として除去される。このようにして冗長な処理を回避することが可能となる。
実施の形態7
図7は、この発明を実施するための実施の形態7によるキーワード抽出装置を説明するための図である。
図7は、この発明を実施するための実施の形態7によるキーワード抽出装置を説明するための図である。
図7において、図1〜6と同一の符号を付したものは、同一またはこれに相当するものである。
図7において、30a〜30cはテキストのタイプや分野、格納パターンの種別などに対応した複数のパターン格納手段である。
各パターン格納手段は必ずしも同じ種類のパターンをそろえていなくてもよい。
各パターン格納手段は必ずしも同じ種類のパターンをそろえていなくてもよい。
たとえばモバイルコンピュータ関連のテキストに関してキーワード抽出を行なう場合、キーワード抽出のための情報としては、技術系文書全般に普遍的なもの、コンピュータ関係に一般に利用できるもの、そしてモバイルコンピュータに特有なものといったように、さまざまなレベルのものが考えられる。また同じモバイルコンピュータ関連のテキストにしても、たとえば特許の場合は「発明」「請求項」などの単語はそのテキストの特徴を表わしていないため、キーワードとして適さないといったように、テキストのタイプに応じた情報も考えられる。
そこで図8に示すように、そのようなキーワード抽出に関するさまざまなレベル、タイプの情報に対応したパターンを格納するパターン格納手段を各種用意し、対象とするテキストのタイプや分野などに応じてそれらを組み合わせて利用できるようにすれば、さまざまなテキストに対応したキーワード抽出が効率的に実現される。
パターン処理手段20は各種パターンを適用する際に、各パターン格納手段に格納された同種のパターンを並行して適用し、最も先頭でマッチしたもののうち、最長の文字列をマッチング結果とする。いずれもマッチしなければ、全体としてマッチングに失敗したものとする。
キーワード構成要素抽出手段40、非キーワード候補除去手段70、例外キーワード構成要素抽出手段80、不要語除去手段90、不要先頭文字列除去手段100、不要末尾文字列除去手段110は、それぞれの処理において必要なパターンをすべてのパターン格納手段から取り出し、パターン処理手段20に処理させる。
たとえば例外キーワード構成要素パターンとしてパターン格納手段30a、30b、30cにそれぞれ
“[0−9]次” (27a)
“[0−9]次元” (27b)
“(書き込み|読み込み)” (27c)
というパターンが格納されている場合、
「3次元データとして書き込みを行なう。」 (28)
というテキストに対しては、(27a)が「3次」にマッチし、(27b)が「3次元」にマッチする一方、(28)は「書き込み」にマッチするが、パターン処理手段20は最も先頭でマッチする最長の文字列を全体のマッチング結果とするので、まず「3次元」がマッチング結果となる。続いて残りの「データとして書き込みを行なう。」に対してマッチングを行なうと、(27c)だけが「書き込み」にマッチするので、「書き込み」がマッチング結果となる。残りの「を行なう。」にマッチするものはないため、結果的に例外キーワード構成要素抽出手段80は
「3次元」「書き込み」 (29)
を例外キーワード構成要素として抽出する。
“[0−9]次” (27a)
“[0−9]次元” (27b)
“(書き込み|読み込み)” (27c)
というパターンが格納されている場合、
「3次元データとして書き込みを行なう。」 (28)
というテキストに対しては、(27a)が「3次」にマッチし、(27b)が「3次元」にマッチする一方、(28)は「書き込み」にマッチするが、パターン処理手段20は最も先頭でマッチする最長の文字列を全体のマッチング結果とするので、まず「3次元」がマッチング結果となる。続いて残りの「データとして書き込みを行なう。」に対してマッチングを行なうと、(27c)だけが「書き込み」にマッチするので、「書き込み」がマッチング結果となる。残りの「を行なう。」にマッチするものはないため、結果的に例外キーワード構成要素抽出手段80は
「3次元」「書き込み」 (29)
を例外キーワード構成要素として抽出する。
あるパターン格納手段に格納された不要語パターンによって不要と判断されるキーワード候補を、あるテキストにおいてキーワードとすべき場合、そのパターン格納手段を用いるのをやめたり、あるいはその不要語パターンを修正することも考えられるが、そのキーワード候補とマッチする必要語パターンを格納するパターン格納手段を合わせて用いることも考えられる。不要先頭パターン、不要末尾パターンに関しても同様に、必要先頭パターン、必要末尾パターンを組み合わせて必要な先頭/末尾文字列が削除されることを防ぐことが可能である。またある非キーワード候補パターンによって削除される部分に含まれる、本来必要なキーワード構成要素に関しても、それにマッチする例外キーワード構成要素パターンを格納したパターン格納手段を合わせて用いることにより、抽出することが可能である。
また、不要語パターンおよび必要語パターンに関してはキーワード候補の文字列全体に対してマッチングが行なわれるため、いずれかのパターンでマッチすれば、他のパターンのマッチング結果は不要であるので、パターン処理手段20はそれらの適用を中止し、マッチした結果を返して、不要なパターン処理を回避してもよい。
このように実施の形態7によれば、テキストのタイプや分野、格納パターンの種別などに対応した各種パターン格納手段を組み合わせて用いることにより、キーワード抽出に用いる情報の再利用性を向上させ、さまざまなテキストに柔軟かつ効率的に対応させることが可能である。
実施の形態8
図9は、この発明を実施するための実施の形態8によるキーワード抽出装置を説明するための図である。
図9は、この発明を実施するための実施の形態8によるキーワード抽出装置を説明するための図である。
図9において、図1〜8と同一の符号を付したものは、同一またはこれに相当するものである。
図9において、120はパターン統合手段である。
またパターン処理手段20は、実施の形態7に示したような複数のパターンを並行して適用するものでなく、実施の形態1に示したものでよい。
パターン統合手段120は各パターン格納手段に格納された各種パターンを種別ごとに統合して出力する。ここで各パターンの統合においては、各パターンにマッチする可能性のある文字列のうち、最も先頭に近く最も長いものがマッチング結果となるよう、マッチングにおける(C2)の性質を考慮して統合パターンを構成する。すなわち、各パターンの構成要素における選択や連結、反復などを展開しながら、マッチする可能性のある文字列長が同じパターンをそろえ、それらを長いものから順に選択肢とする統合パターンを構成する。
キーワード構成要素抽出手段40、非キーワード候補除去手段70、例外キーワード構成要素抽出手段80、不要語除去手段90、不要先頭文字列除去手段100、不要末尾文字列除去手段110は、パターン統合手段120によって統合されたパターンを用いてそれぞれの処理を実行する。
以下、具体的に前記パターン統合処理について説明する。
説明を簡略化するため、マッチする可能性のある文字列長が同じパターンをそろえたもの(以下、整列パターンと呼ぶことにする)を、その文字列長を丸数字として先頭に付与したパターンの組で表現する。たとえば、
前記のパターン統合処理は、各パターンを選択肢とするパターンに対応した整列パターンを構成し、マッチする可能性のある文字列長が長いパターンから順に選択肢とする統合パターンを出力することにより実現される。たとえば(30)の整列パターンは最終的に
“((いう|えお)|あ)” (31)
という統合パターンとして出力される。
“((いう|えお)|あ)” (31)
という統合パターンとして出力される。
また、マッチする可能性のある文字列長に関して上限を設けて、それを超えるパターンは除去して統合パターンを構成することにより、マッチする可能性がないような極端に長いパターンを除外して統合パターンを短縮し、マッチングの効率を向上させることも可能である。入力テキストの文字列長は自明な上限の例であるが、実用的には20文字程度でも充分な場合が多い。
つぎに、あるパターンに対応する整列パターンは、以下のように求める。
・通常の文字が連続したパターンは、そのパターンをその文字列長に対応してもつ整列パターンとなる。
・通常の文字が連続したパターンは、そのパターンをその文字列長に対応してもつ整列パターンとなる。
・“^”や“$”はそれを長さ0に対応してもつ整列パターンとなる。
(例) “^” → “◎^”
・“[”と“]”、もしくは“[^”と“]”との間に通常の文字や文字範囲の並びをもつパターンは、そのパターンを長さ1に対応してもつ整列パターンとなる。
・パターンを連結したものは、各パターンに対応する整列パターンについて、それぞれ各長さの組合せに対応したパターンを必要に応じて括弧で囲みながら連結し、連結したパターンを選択肢とする新たなパターンを合計した長さに対応してもつ整列パターンとなる。
・パターンに“{m,n}”(m,nは0以上の整数)が後置されたものは、そのパターンに対応する整列パターンの各長さに対応するパターンを、必要に応じて括弧で囲みながら、“{p}”(m≦p≦n)をそれぞれ後置したものを選択肢とする新たなパターンを、そのパターンに対応する長さのp倍の長さに対応してそれぞれもつ整列パターンとなる。ただしp=0の場合は単に長さ0に対応して空文字列に対応するパターン(たとえば“()”)をもたせる。またp=1の場合は“{1}”の後置を省略できる。また長さ0に対応するパターンには“{p}”を後置しなくてもよい。
・パターンに“{m}”、“{m,}”、“*”、“+”、“?”が後置されたものは、それぞれそのパターンに“{m,m}”、“{m,∞}”、“{0,∞}”、“{1,∞}”、“{0,1}”が後置されたものに対応する整列パターンとなる(mは0以上の整数)。
ただし、前記のような反復においてnが非常に大きい、あるいは∞の場合、反復展開回数に上限を設け、それを超えるようなパターンの反復は、マッチする可能性がないものとして除外して、統合パターンが膨大なものとなることを防ぐことが考えられる。またそのような上限がない場合も、マッチする可能性のある文字列長に関して上限を設けて、それを超えるような反復展開を除去することも考えられる。これはパターンの連結を展開する場合なども同様である。
不要語パターンおよび必要語パターンに関しては、キーワード候補の文字列全体に対してマッチングが行なわれるため、前記のようなパターン統合処理を行なわず、単に各パターンを選択肢とする統合パターンを出力するだけでもよい。
このように実施の形態8によれば、テキストのタイプや分野、格納パターンの種別などに対応して各種パターン格納手段に格納された各種パターンの適用を、単一のパターン処理で実現することが可能である。さらにパターン統合手段による各パターンの統合においては、各パターンにマッチする可能性のある文字列のうち、最も先頭に近く最も長いものがマッチング結果となるよう、マッチングにおける(C2)の性質を考慮して統合パターンが構成されるため、各パターンの選択肢の記述においては(C2)の性質を考慮する必要がなくなり、より柔軟な記述が可能となる。
実施の形態9
図10は、この発明を実施するための実施の形態9によるキーワード抽出装置を説明するための図である。
図10は、この発明を実施するための実施の形態9によるキーワード抽出装置を説明するための図である。
図10において、図1〜9と同一の符号を付したものは、同一またはこれに相当するものである。
図10において品詞解析手段130は非キーワード候補除去手段70から入力されたテキストに対し、単語もしくは形態素を抽出して品詞を解析する。入力テキストから単語もしくは形態素を抽出して品詞を解析する手段として、例えば日本文テキストなら形態素解析、英文テキストならPart-of-speech Taggingを用いることができる。
キーワード候補集合生成手段50は、品詞解析手段130の出力から、キーワード候補とすべき品詞シーケンスとしてあらかじめ定められたものに対応した単語もしくは形態素のシーケンスをキーワード候補とする。
そのような品詞シーケンスの単純な例として、連続した名詞をキーワード候補とする場合、
「暗号装置を用いた」 (32)
というテキストを解析して、
「暗号<名詞>装置<名詞>を<助詞>用い<動詞>た<助動詞>」 (33)
という結果が得られれば、
「暗号装置」 (34)
がキーワード候補となる。ただし(33)では解析結果として各形態素の後に<>で品詞を示している。
「暗号装置を用いた」 (32)
というテキストを解析して、
「暗号<名詞>装置<名詞>を<助詞>用い<動詞>た<助動詞>」 (33)
という結果が得られれば、
「暗号装置」 (34)
がキーワード候補となる。ただし(33)では解析結果として各形態素の後に<>で品詞を示している。
ここで(34)のキーワード候補に対し、(25)のような不要末尾パターンが用意されていれば、「装置」の部分が不要と判断され、
「暗号」 (35)
が最終的なキーワード候補となる。
「暗号」 (35)
が最終的なキーワード候補となる。
同様に英文テキストにおいても、たとえば
“A cipher device is used ...” (36)
というテキストを解析して、
“A<冠詞> cipher<名詞> device<名詞> is<動詞> used<動詞> ...”
(37)
という結果が得られれば、“cipher device”がキーワード候補として生成される。
“A cipher device is used ...” (36)
というテキストを解析して、
“A<冠詞> cipher<名詞> device<名詞> is<動詞> used<動詞> ...”
(37)
という結果が得られれば、“cipher device”がキーワード候補として生成される。
ここで不要末尾パターンとしてたとえば
“ (device|method)(s|)$” (38)
が用意されていれば、
“cipher” (39)
が最終的なキーワード候補となる。なお(38)では、先頭に単語の区切りを示すスペースが入っているとともに、複数形にも対応したパターンが用いられていることに注意されたい。
“ (device|method)(s|)$” (38)
が用意されていれば、
“cipher” (39)
が最終的なキーワード候補となる。なお(38)では、先頭に単語の区切りを示すスペースが入っているとともに、複数形にも対応したパターンが用いられていることに注意されたい。
なおここで、キーワード候補とすべき品詞シーケンスとしてあらかじめ定められたものに対応した単語もしくは形態素のシーケンスを抽出する方法にはさまざまなものが考えられるが、1つの方法としてパターンを用いることが考えられる。
品詞解析手段130の出力が、(33)もしくは(37)のように、単語もしくは形態素のあとに品詞を<>で示されたものがスペースで区切られて出力され、かつ各単語もしくは形態素が“<”、“>”の文字を含まない場合、たとえば連続した名詞を取り出すにはパターン処理手段20を用いて、
“([^< > ]+<名詞> )+” (40)
というパターンにマッチした部分を抽出した上で、<>で囲まれた品詞の部分を削除し、言語に応じて区切りのスペースを適宜削除すればよい。
“([^< > ]+<名詞> )+” (40)
というパターンにマッチした部分を抽出した上で、<>で囲まれた品詞の部分を削除し、言語に応じて区切りのスペースを適宜削除すればよい。
このように実施の形態9によれば、品詞解析を行なって得られたキーワード候補に対しても、パターンを用いた柔軟な不要文字列処理が可能である。
Claims (5)
- テキストを入力するテキスト入力手段と、
正規表現による文字列のマッチングを行うパターン処理手段と、
キーワードの構成要素となり得る文字列からなる正規表現で記述されたキーワード構成要素パターンを少なくとも有するパターン格納手段と、
前記パターン処理手段を用いて、前記テキスト中の文字列と前記キーワード構成要素パターンとのマッチングを行い、前記テキストから前記キーワード構成要素パターンにマッチする互いにオーバーラップのない文字列をキーワード構成要素として抽出するキーワード構成要素抽出手段と、
各キーワード構成要素からキーワード候補集合を生成するキーワード候補集合生成手段と、
前記キーワード候補集合の各キーワード候補をキーワードとして出力するキーワード出力手段と、
を備えたことを特徴とするキーワード抽出装置。 - 前記パターン格納手段は、不要な先頭文字列を表わす文字列からなる正規表現で記述された不要先頭パターンを有し、
前記キーワード候補集合のキーワード候補と前記不要先頭パターンとのマッチングを行い、前記不要先頭パターンにマッチする部分を含むキーワード候補をマッチした部分が除去されたキーワード候補に置換する不要先頭文字列除去処理を行う不要先頭文字列除去手段を備え、
前記置換されたキーワード候補に対し再度前記不要先頭文字列除去処理を施すことを特徴とする請求項1に記載のキーワード抽出装置。 - 前記パターン格納手段は、不要語を表わす文字列からなる正規表現で記述された不要語パターン及び不要な先頭文字列を表わす文字列からなる正規表現で記述された不要先頭パターンを有し、
前記パターン処理手段を用いて、前記キーワード候補と前記不要語パターンとのマッチングを行い、前記不要語パターンにマッチするものを前記キーワード候補から除去する不要語除去処理を行う不要語除去手段と、
前記不要語除去処理が施されたキーワード候補と前記不要先頭パターンとのマッチングを行い、前記不要先頭パターンにマッチする部分を含むキーワード候補をマッチした部分が除去されたキーワード候補に置換する不要先頭文字列除去処理を行う不要先頭文字列除去手段を備え、
前記置換されたキーワード候補に対し再度前記不要語除去処理または前記不要先頭文字列除去処理を施すことを特徴とする請求項1に記載のキーワード抽出装置。 - 前記パターン格納手段は、不要な末尾文字を表わす文字列からなる正規表現で記述された不要末尾パターンを有し、
前記キーワード候補集合のキーワード候補と前記不要末尾パターンとのマッチングを行い、前記不要末尾パターンにマッチする部分を含むキーワード候補をマッチした部分が除去されたキーワード候補に置換する不要末尾文字列除去処理を行う不要末尾文字列除去手段を備え、
前記置換されたキーワード候補に対し再度前記不要末尾文字列除去処理を施すことを特徴とする請求項1に記載のキーワード抽出装置。 - 前記パターン格納手段は、不要語を表わす文字列からなる正規表現で記述された不要語パターン及び不要な末尾文字を表わす文字列からなる正規表現で記述された不要末尾パターンを有し、
前記パターン処理手段を用いて、前記キーワード候補と前記不要語パターンとのマッチングを行い、前記不要語パターンにマッチするものを前記キーワード候補から除去する不要語除去処理を行う不要語除去手段と、
前記不要語除去処理が施されたキーワード候補と前記不要末尾パターンとのマッチングを行い、前記不要末尾パターンにマッチする部分を含むキーワード候補をマッチした部分が除去されたキーワード候補に置換する不要末尾文字列除去処理を行う不要末尾文字列除去手段を備え、
前記置換されたキーワード候補に対し再度前記不要語除去処理または前記不要末尾文字列除去処理を施すことを特徴とする請求項1に記載のキーワード抽出装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004352676A JP2005063470A (ja) | 2000-01-05 | 2004-12-06 | キーワード抽出装置 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000000382 | 2000-01-05 | ||
JP2004352676A JP2005063470A (ja) | 2000-01-05 | 2004-12-06 | キーワード抽出装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001550633A Division JP4253152B2 (ja) | 2000-01-05 | 2000-08-14 | キーワード抽出装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005063470A true JP2005063470A (ja) | 2005-03-10 |
Family
ID=34379599
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004352676A Pending JP2005063470A (ja) | 2000-01-05 | 2004-12-06 | キーワード抽出装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005063470A (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006155535A (ja) * | 2004-11-08 | 2006-06-15 | Quality Kk | 個人情報探索プログラム,個人情報管理システムおよび個人情報管理機能付き情報処理装置 |
JP2006330818A (ja) * | 2005-05-23 | 2006-12-07 | Nec Corp | 漏洩源業務調査システム及び漏洩源業務調査方法 |
JP2010128660A (ja) * | 2008-11-26 | 2010-06-10 | Fujitsu Ltd | テキスト検索プログラム、テキスト検索装置及びテキスト検索方法 |
JP2011522308A (ja) * | 2008-05-09 | 2011-07-28 | マイクロソフト コーポレーション | オンライン検索および広告のためのキーワード表現言語 |
JP2013008304A (ja) * | 2011-06-27 | 2013-01-10 | Nec System Technologies Ltd | プログラム分析装置、プログラム分析方法、及びプログラム |
KR20160041273A (ko) * | 2014-10-07 | 2016-04-18 | 인포뱅크 주식회사 | 정보 검색 장치 및 방법 |
KR20160041267A (ko) * | 2014-10-07 | 2016-04-18 | 인포뱅크 주식회사 | 정보 검색 장치 및 방법 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08329108A (ja) * | 1995-06-01 | 1996-12-13 | Hitachi Ltd | テキストのハイパーテキスト化方法 |
-
2004
- 2004-12-06 JP JP2004352676A patent/JP2005063470A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08329108A (ja) * | 1995-06-01 | 1996-12-13 | Hitachi Ltd | テキストのハイパーテキスト化方法 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006155535A (ja) * | 2004-11-08 | 2006-06-15 | Quality Kk | 個人情報探索プログラム,個人情報管理システムおよび個人情報管理機能付き情報処理装置 |
JP2006330818A (ja) * | 2005-05-23 | 2006-12-07 | Nec Corp | 漏洩源業務調査システム及び漏洩源業務調査方法 |
JP4612469B2 (ja) * | 2005-05-23 | 2011-01-12 | Necビッグローブ株式会社 | 漏洩源業務調査システム及び漏洩源業務調査方法 |
JP2011522308A (ja) * | 2008-05-09 | 2011-07-28 | マイクロソフト コーポレーション | オンライン検索および広告のためのキーワード表現言語 |
US8751482B2 (en) | 2008-05-09 | 2014-06-10 | Microsoft Corporation | Keyword expression language for online search and advertising |
JP2010128660A (ja) * | 2008-11-26 | 2010-06-10 | Fujitsu Ltd | テキスト検索プログラム、テキスト検索装置及びテキスト検索方法 |
JP2013008304A (ja) * | 2011-06-27 | 2013-01-10 | Nec System Technologies Ltd | プログラム分析装置、プログラム分析方法、及びプログラム |
KR20160041273A (ko) * | 2014-10-07 | 2016-04-18 | 인포뱅크 주식회사 | 정보 검색 장치 및 방법 |
KR20160041267A (ko) * | 2014-10-07 | 2016-04-18 | 인포뱅크 주식회사 | 정보 검색 장치 및 방법 |
KR102274391B1 (ko) * | 2014-10-07 | 2021-07-26 | 인포뱅크 주식회사 | 정보 검색 장치 및 방법 |
KR102274381B1 (ko) * | 2014-10-07 | 2021-07-26 | 인포뱅크 주식회사 | 정보 검색 장치 및 방법 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4253152B2 (ja) | キーワード抽出装置 | |
Habash et al. | MAGEAD: A morphological analyzer and generator for the Arabic dialects | |
US8484238B2 (en) | Automatically generating regular expressions for relaxed matching of text patterns | |
US20060047500A1 (en) | Named entity recognition using compiler methods | |
JP2009534743A (ja) | 非構造化リソースの構文解析方法 | |
GB2449516A (en) | Transliteration of roman text to Arabic | |
JP2006252428A (ja) | マルチリンガル翻訳メモリ、翻訳方法および翻訳プログラム | |
Jabbar et al. | A survey on Urdu and Urdu like language stemmers and stemming techniques | |
Kulick et al. | Parsing the Arabic treebank: Analysis and improvements | |
JP7333933B2 (ja) | 翻訳装置、翻訳装置の制御プログラム、および翻訳装置を用いた翻訳方法 | |
JP2005063470A (ja) | キーワード抽出装置 | |
Nongmeikapam et al. | A transliteration of CRF based Manipuri POS tagging | |
Fisseha | Development of Stemming Algorithm for Tigrigna Text | |
JP7396608B2 (ja) | 翻訳装置、翻訳装置の制御プログラム、および翻訳装置を用いた翻訳方法 | |
Diewald | Matrix and double-array representations for efficient finite state tokenization | |
Goyal et al. | Forward-backward transliteration of punjabi gurmukhi script using n-gram language model | |
JP7247460B2 (ja) | 対応関係生成プログラム、対応関係生成装置、対応関係生成方法、及び翻訳プログラム | |
JP5380566B2 (ja) | 言語処理装置、プログラムおよび方法 | |
Kaur et al. | Named entity recognition for punjabi: A conditional random field approach | |
Bosch et al. | Memory-based morphological analysis and part-of-speech tagging of Arabic | |
Obrebski et al. | UAM Text Tools-a flexible NLP architecture. | |
Shokrollahi-Far | Self-Organizing Computational Efficiency in Quranic Grammar | |
Nongmeikapam et al. | Identification of reduplicated multiword expressions using CRF | |
Cheng et al. | MAG-Tagalog: A rule-based Tagalog morphological analyzer and generator | |
Maamouri et al. | Diacritic Annotation in the Arabic Treebank and its Impact on Parser Evaluation. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041206 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050517 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050715 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20051025 |